From 18645d21979372b4897c5324e248b3b98798f7a3 Mon Sep 17 00:00:00 2001 From: Aditya Akash Date: Fri, 21 Aug 2026 17:35:52 +0530 Subject: [PATCH] feat(realfi-partner-sdk): vendor RealFi partner SDK as BitGo fork Add @bitgo/realfi-partner-sdk@2.14.0 under modules/realfi-partner-sdk (Babylon-style) so WP can consume via @bitgo-beta without third-party GitHub Packages. Ships prebuilt dist; private until npm package create; engines relaxed and ignore-engines set for Node 20 CI. TICKET: SI-1292 Co-authored-by: Cursor --- .eslintignore | 3 +- .prettierignore | 1 + .yarnrc | 1 + modules/realfi-partner-sdk/.gitignore | 10 + modules/realfi-partner-sdk/CHANGELOG.md | 479 + modules/realfi-partner-sdk/README.md | 9 + modules/realfi-partner-sdk/UPSTREAM.md | 42 + .../realfi-partner-sdk/dist/build-info.json | 5 + .../dist/cjs/admin/index.js | 17 + .../dist/cjs/admin/index.js.map | 1 + .../dist/cjs/admin/settings/index.js | 39 + .../dist/cjs/admin/settings/index.js.map | 1 + .../cjs/admin/settings/protocol-settings.js | 17 + .../admin/settings/protocol-settings.js.map | 1 + .../dist/cjs/admin/settings/types.js | 6 + .../dist/cjs/admin/settings/types.js.map | 1 + .../dist/cjs/admin/settings/utils.js | 138 + .../dist/cjs/admin/settings/utils.js.map | 1 + .../dist/cjs/admin/settings/v1_1_rc1.js | 587 + .../dist/cjs/admin/settings/v1_1_rc1.js.map | 1 + .../realfi-partner-sdk/dist/cjs/api/client.js | 86 + .../dist/cjs/api/client.js.map | 1 + .../realfi-partner-sdk/dist/cjs/api/index.js | 20 + .../dist/cjs/api/index.js.map | 1 + .../dist/cjs/api/partner-config.js | 73 + .../dist/cjs/api/partner-config.js.map | 1 + .../dist/cjs/api/queries.js | 19 + .../dist/cjs/api/queries.js.map | 1 + .../dist/cjs/api/realfi-api.js | 426 + .../dist/cjs/api/realfi-api.js.map | 1 + .../dist/cjs/api/registry.js | 26 + .../dist/cjs/api/registry.js.map | 1 + .../realfi-partner-sdk/dist/cjs/api/types.js | 6 + .../dist/cjs/api/types.js.map | 1 + .../dist/cjs/generated-types/base/index.js | 52 + .../cjs/generated-types/base/index.js.map | 1 + .../dist/cjs/generated-types/index.js | 27 + .../dist/cjs/generated-types/index.js.map | 1 + .../dist/cjs/generated-types/v0/index.js | 30 + .../dist/cjs/generated-types/v0/index.js.map | 1 + .../dist/cjs/generated-types/v0_1/index.js | 146 + .../cjs/generated-types/v0_1/index.js.map | 1 + .../dist/cjs/generated-types/v0_2/index.js | 121 + .../cjs/generated-types/v0_2/index.js.map | 1 + .../dist/cjs/generated-types/v0_3/index.js | 323 + .../cjs/generated-types/v0_3/index.js.map | 1 + .../dist/cjs/generated-types/v0_4/index.js | 470 + .../cjs/generated-types/v0_4/index.js.map | 1 + .../dist/cjs/generated-types/v1_0/index.js | 3 + .../cjs/generated-types/v1_0/index.js.map | 1 + .../cjs/generated-types/v1_0_rc1/index.js | 3 + .../cjs/generated-types/v1_0_rc1/index.js.map | 1 + .../cjs/generated-types/v1_1_rc1/index.js | 3 + .../cjs/generated-types/v1_1_rc1/index.js.map | 1 + modules/realfi-partner-sdk/dist/cjs/index.js | 139 + .../realfi-partner-sdk/dist/cjs/index.js.map | 1 + .../realfi-partner-sdk/dist/cjs/package.json | 1 + .../realfi-partner-sdk/dist/cjs/sdk/index.js | 276 + .../dist/cjs/sdk/index.js.map | 1 + .../dist/cjs/sdk/partner-dispatcher.js | 248 + .../dist/cjs/sdk/partner-dispatcher.js.map | 1 + .../dist/cjs/sdk/partner.js | 6 + .../dist/cjs/sdk/partner.js.map | 1 + .../dist/cjs/sdk/shared/base.js | 516 + .../dist/cjs/sdk/shared/base.js.map | 1 + .../dist/cjs/sdk/shared/cancel.js | 110 + .../dist/cjs/sdk/shared/cancel.js.map | 1 + .../dist/cjs/sdk/shared/client-id.js | 14 + .../dist/cjs/sdk/shared/client-id.js.map | 1 + .../dist/cjs/sdk/shared/detect-params.js | 566 + .../dist/cjs/sdk/shared/detect-params.js.map | 1 + .../dist/cjs/sdk/shared/errors.js | 62 + .../dist/cjs/sdk/shared/errors.js.map | 1 + .../dist/cjs/sdk/shared/index.js | 116 + .../dist/cjs/sdk/shared/index.js.map | 1 + .../dist/cjs/sdk/shared/network-registry.js | 84 + .../cjs/sdk/shared/network-registry.js.map | 1 + .../dist/cjs/sdk/shared/public.js | 75 + .../dist/cjs/sdk/shared/public.js.map | 1 + .../dist/cjs/sdk/shared/reserve-assets.js | 99 + .../dist/cjs/sdk/shared/reserve-assets.js.map | 1 + .../dist/cjs/sdk/shared/slots.js | 71 + .../dist/cjs/sdk/shared/slots.js.map | 1 + .../dist/cjs/sdk/shared/timelock.js | 235 + .../dist/cjs/sdk/shared/timelock.js.map | 1 + .../dist/cjs/sdk/shared/types.js | 6 + .../dist/cjs/sdk/shared/types.js.map | 1 + .../dist/cjs/sdk/shared/utils.js | 1411 ++ .../dist/cjs/sdk/shared/utils.js.map | 1 + .../dist/cjs/sdk/v0/index.js | 264 + .../dist/cjs/sdk/v0/index.js.map | 1 + .../dist/cjs/sdk/v0_1/index.js | 442 + .../dist/cjs/sdk/v0_1/index.js.map | 1 + .../dist/cjs/sdk/v0_2/index.js | 600 + .../dist/cjs/sdk/v0_2/index.js.map | 1 + .../dist/cjs/sdk/v0_3/index.js | 1205 ++ .../dist/cjs/sdk/v0_3/index.js.map | 1 + .../dist/cjs/sdk/v0_4/index.js | 2117 ++ .../dist/cjs/sdk/v0_4/index.js.map | 1 + .../dist/cjs/sdk/v1/family.js | 3774 ++++ .../dist/cjs/sdk/v1/family.js.map | 1 + .../dist/cjs/sdk/v1/order-sanity.js | 225 + .../dist/cjs/sdk/v1/order-sanity.js.map | 1 + .../dist/cjs/sdk/v1/types.js | 6 + .../dist/cjs/sdk/v1/types.js.map | 1 + .../dist/cjs/sdk/v1_0/index.js | 166 + .../dist/cjs/sdk/v1_0/index.js.map | 1 + .../dist/cjs/sdk/v1_0_rc1/index.js | 1518 ++ .../dist/cjs/sdk/v1_0_rc1/index.js.map | 1 + .../dist/cjs/sdk/v1_1_rc1/diffusion.js | 134 + .../dist/cjs/sdk/v1_1_rc1/diffusion.js.map | 1 + .../dist/cjs/sdk/v1_1_rc1/index.js | 1023 + .../dist/cjs/sdk/v1_1_rc1/index.js.map | 1 + .../dist/cjs/sundae/discovery.js | 210 + .../dist/cjs/sundae/discovery.js.map | 1 + .../dist/cjs/sundae/index.js | 644 + .../dist/cjs/sundae/index.js.map | 1 + .../dist/cjs/sundae/support.js | 90 + .../dist/cjs/sundae/support.js.map | 1 + .../dist/cjs/sundae/v4-curve.js | 154 + .../dist/cjs/sundae/v4-curve.js.map | 1 + .../dist/cjs/tx-builder/destination.js | 177 + .../dist/cjs/tx-builder/destination.js.map | 1 + .../dist/cjs/tx-builder/flow.js | 190 + .../dist/cjs/tx-builder/flow.js.map | 1 + .../dist/cjs/tx-builder/index.js | 39 + .../dist/cjs/tx-builder/index.js.map | 1 + .../dist/cjs/tx-builder/registry.js | 180 + .../dist/cjs/tx-builder/registry.js.map | 1 + .../dist/esm/admin/index.js | 2 + .../dist/esm/admin/index.js.map | 1 + .../dist/esm/admin/settings/index.js | 4 + .../dist/esm/admin/settings/index.js.map | 1 + .../esm/admin/settings/protocol-settings.js | 4 + .../admin/settings/protocol-settings.js.map | 1 + .../dist/esm/admin/settings/types.js | 2 + .../dist/esm/admin/settings/types.js.map | 1 + .../dist/esm/admin/settings/utils.js | 114 + .../dist/esm/admin/settings/utils.js.map | 1 + .../dist/esm/admin/settings/v1_1_rc1.js | 336 + .../dist/esm/admin/settings/v1_1_rc1.js.map | 1 + .../realfi-partner-sdk/dist/esm/api/client.js | 41 + .../dist/esm/api/client.js.map | 1 + .../realfi-partner-sdk/dist/esm/api/index.js | 5 + .../dist/esm/api/index.js.map | 1 + .../dist/esm/api/partner-config.js | 56 + .../dist/esm/api/partner-config.js.map | 1 + .../dist/esm/api/queries.js | 65 + .../dist/esm/api/queries.js.map | 1 + .../dist/esm/api/realfi-api.js | 173 + .../dist/esm/api/realfi-api.js.map | 1 + .../dist/esm/api/registry.js | 20 + .../dist/esm/api/registry.js.map | 1 + .../realfi-partner-sdk/dist/esm/api/types.js | 2 + .../dist/esm/api/types.js.map | 1 + .../dist/esm/generated-types/base/index.js | 44 + .../esm/generated-types/base/index.js.map | 1 + .../dist/esm/generated-types/index.js | 10 + .../dist/esm/generated-types/index.js.map | 1 + .../dist/esm/generated-types/v0/index.js | 22 + .../dist/esm/generated-types/v0/index.js.map | 1 + .../dist/esm/generated-types/v0_1/index.js | 138 + .../esm/generated-types/v0_1/index.js.map | 1 + .../dist/esm/generated-types/v0_2/index.js | 113 + .../esm/generated-types/v0_2/index.js.map | 1 + .../dist/esm/generated-types/v0_3/index.js | 315 + .../esm/generated-types/v0_3/index.js.map | 1 + .../dist/esm/generated-types/v0_4/index.js | 462 + .../esm/generated-types/v0_4/index.js.map | 1 + .../dist/esm/generated-types/v1_0/index.js | 3 + .../esm/generated-types/v1_0/index.js.map | 1 + .../esm/generated-types/v1_0_rc1/index.js | 3 + .../esm/generated-types/v1_0_rc1/index.js.map | 1 + .../esm/generated-types/v1_1_rc1/index.js | 3 + .../esm/generated-types/v1_1_rc1/index.js.map | 1 + modules/realfi-partner-sdk/dist/esm/index.js | 65 + .../realfi-partner-sdk/dist/esm/index.js.map | 1 + .../realfi-partner-sdk/dist/esm/sdk/index.js | 158 + .../dist/esm/sdk/index.js.map | 1 + .../dist/esm/sdk/partner-dispatcher.js | 165 + .../dist/esm/sdk/partner-dispatcher.js.map | 1 + .../dist/esm/sdk/partner.js | 2 + .../dist/esm/sdk/partner.js.map | 1 + .../dist/esm/sdk/shared/base.js | 329 + .../dist/esm/sdk/shared/base.js.map | 1 + .../dist/esm/sdk/shared/cancel.js | 65 + .../dist/esm/sdk/shared/cancel.js.map | 1 + .../dist/esm/sdk/shared/client-id.js | 8 + .../dist/esm/sdk/shared/client-id.js.map | 1 + .../dist/esm/sdk/shared/detect-params.js | 431 + .../dist/esm/sdk/shared/detect-params.js.map | 1 + .../dist/esm/sdk/shared/errors.js | 37 + .../dist/esm/sdk/shared/errors.js.map | 1 + .../dist/esm/sdk/shared/index.js | 11 + .../dist/esm/sdk/shared/index.js.map | 1 + .../dist/esm/sdk/shared/network-registry.js | 72 + .../esm/sdk/shared/network-registry.js.map | 1 + .../dist/esm/sdk/shared/public.js | 5 + .../dist/esm/sdk/shared/public.js.map | 1 + .../dist/esm/sdk/shared/reserve-assets.js | 54 + .../dist/esm/sdk/shared/reserve-assets.js.map | 1 + .../dist/esm/sdk/shared/slots.js | 65 + .../dist/esm/sdk/shared/slots.js.map | 1 + .../dist/esm/sdk/shared/timelock.js | 215 + .../dist/esm/sdk/shared/timelock.js.map | 1 + .../dist/esm/sdk/shared/types.js | 2 + .../dist/esm/sdk/shared/types.js.map | 1 + .../dist/esm/sdk/shared/utils.js | 1022 + .../dist/esm/sdk/shared/utils.js.map | 1 + .../dist/esm/sdk/v0/index.js | 161 + .../dist/esm/sdk/v0/index.js.map | 1 + .../dist/esm/sdk/v0_1/index.js | 260 + .../dist/esm/sdk/v0_1/index.js.map | 1 + .../dist/esm/sdk/v0_2/index.js | 342 + .../dist/esm/sdk/v0_2/index.js.map | 1 + .../dist/esm/sdk/v0_3/index.js | 783 + .../dist/esm/sdk/v0_3/index.js.map | 1 + .../dist/esm/sdk/v0_4/index.js | 1390 ++ .../dist/esm/sdk/v0_4/index.js.map | 1 + .../dist/esm/sdk/v1/family.js | 2517 +++ .../dist/esm/sdk/v1/family.js.map | 1 + .../dist/esm/sdk/v1/order-sanity.js | 216 + .../dist/esm/sdk/v1/order-sanity.js.map | 1 + .../dist/esm/sdk/v1/types.js | 2 + .../dist/esm/sdk/v1/types.js.map | 1 + .../dist/esm/sdk/v1_0/index.js | 127 + .../dist/esm/sdk/v1_0/index.js.map | 1 + .../dist/esm/sdk/v1_0_rc1/index.js | 1099 + .../dist/esm/sdk/v1_0_rc1/index.js.map | 1 + .../dist/esm/sdk/v1_1_rc1/diffusion.js | 125 + .../dist/esm/sdk/v1_1_rc1/diffusion.js.map | 1 + .../dist/esm/sdk/v1_1_rc1/index.js | 776 + .../dist/esm/sdk/v1_1_rc1/index.js.map | 1 + .../dist/esm/sundae/discovery.js | 121 + .../dist/esm/sundae/discovery.js.map | 1 + .../dist/esm/sundae/index.js | 497 + .../dist/esm/sundae/index.js.map | 1 + .../dist/esm/sundae/support.js | 80 + .../dist/esm/sundae/support.js.map | 1 + .../dist/esm/sundae/v4-curve.js | 104 + .../dist/esm/sundae/v4-curve.js.map | 1 + .../dist/esm/tx-builder/destination.js | 162 + .../dist/esm/tx-builder/destination.js.map | 1 + .../dist/esm/tx-builder/flow.js | 173 + .../dist/esm/tx-builder/flow.js.map | 1 + .../dist/esm/tx-builder/index.js | 4 + .../dist/esm/tx-builder/index.js.map | 1 + .../dist/esm/tx-builder/registry.js | 144 + .../dist/esm/tx-builder/registry.js.map | 1 + .../dist/types/admin/index.d.ts | 2 + .../dist/types/admin/index.d.ts.map | 1 + .../dist/types/admin/settings/index.d.ts | 4 + .../dist/types/admin/settings/index.d.ts.map | 1 + .../admin/settings/protocol-settings.d.ts | 2 + .../admin/settings/protocol-settings.d.ts.map | 1 + .../dist/types/admin/settings/types.d.ts | 111 + .../dist/types/admin/settings/types.d.ts.map | 1 + .../dist/types/admin/settings/utils.d.ts | 38 + .../dist/types/admin/settings/utils.d.ts.map | 1 + .../dist/types/admin/settings/v1_1_rc1.d.ts | 82 + .../types/admin/settings/v1_1_rc1.d.ts.map | 1 + .../dist/types/api/client.d.ts | 8 + .../dist/types/api/client.d.ts.map | 1 + .../dist/types/api/index.d.ts | 5 + .../dist/types/api/index.d.ts.map | 1 + .../dist/types/api/partner-config.d.ts | 4 + .../dist/types/api/partner-config.d.ts.map | 1 + .../dist/types/api/queries.d.ts | 94 + .../dist/types/api/queries.d.ts.map | 1 + .../dist/types/api/realfi-api.d.ts | 52 + .../dist/types/api/realfi-api.d.ts.map | 1 + .../dist/types/api/registry.d.ts | 15 + .../dist/types/api/registry.d.ts.map | 1 + .../dist/types/api/types.d.ts | 80 + .../dist/types/api/types.d.ts.map | 1 + .../types/generated-types/base/index.d.ts | 23 + .../types/generated-types/base/index.d.ts.map | 1 + .../dist/types/generated-types/index.d.ts | 10 + .../dist/types/generated-types/index.d.ts.map | 1 + .../dist/types/generated-types/v0/index.d.ts | 10 + .../types/generated-types/v0/index.d.ts.map | 1 + .../types/generated-types/v0_1/index.d.ts | 392 + .../types/generated-types/v0_1/index.d.ts.map | 1 + .../types/generated-types/v0_2/index.d.ts | 365 + .../types/generated-types/v0_2/index.d.ts.map | 1 + .../types/generated-types/v0_3/index.d.ts | 3463 ++++ .../types/generated-types/v0_3/index.d.ts.map | 1 + .../types/generated-types/v0_4/index.d.ts | 5820 ++++++ .../types/generated-types/v0_4/index.d.ts.map | 1 + .../types/generated-types/v1_0/index.d.ts | 7880 ++++++++ .../types/generated-types/v1_0/index.d.ts.map | 1 + .../types/generated-types/v1_0_rc1/index.d.ts | 6667 +++++++ .../generated-types/v1_0_rc1/index.d.ts.map | 1 + .../types/generated-types/v1_1_rc1/index.d.ts | 16622 ++++++++++++++++ .../generated-types/v1_1_rc1/index.d.ts.map | 1 + .../realfi-partner-sdk/dist/types/index.d.ts | 28 + .../dist/types/index.d.ts.map | 1 + .../dist/types/sdk/index.d.ts | 111 + .../dist/types/sdk/index.d.ts.map | 1 + .../dist/types/sdk/partner-dispatcher.d.ts | 38 + .../types/sdk/partner-dispatcher.d.ts.map | 1 + .../dist/types/sdk/partner.d.ts | 81 + .../dist/types/sdk/partner.d.ts.map | 1 + .../dist/types/sdk/shared/base.d.ts | 185 + .../dist/types/sdk/shared/base.d.ts.map | 1 + .../dist/types/sdk/shared/cancel.d.ts | 13 + .../dist/types/sdk/shared/cancel.d.ts.map | 1 + .../dist/types/sdk/shared/client-id.d.ts | 4 + .../dist/types/sdk/shared/client-id.d.ts.map | 1 + .../dist/types/sdk/shared/detect-params.d.ts | 170 + .../types/sdk/shared/detect-params.d.ts.map | 1 + .../dist/types/sdk/shared/errors.d.ts | 31 + .../dist/types/sdk/shared/errors.d.ts.map | 1 + .../dist/types/sdk/shared/index.d.ts | 11 + .../dist/types/sdk/shared/index.d.ts.map | 1 + .../types/sdk/shared/network-registry.d.ts | 4 + .../sdk/shared/network-registry.d.ts.map | 1 + .../dist/types/sdk/shared/public.d.ts | 4 + .../dist/types/sdk/shared/public.d.ts.map | 1 + .../dist/types/sdk/shared/reserve-assets.d.ts | 30 + .../types/sdk/shared/reserve-assets.d.ts.map | 1 + .../dist/types/sdk/shared/slots.d.ts | 58 + .../dist/types/sdk/shared/slots.d.ts.map | 1 + .../dist/types/sdk/shared/timelock.d.ts | 102 + .../dist/types/sdk/shared/timelock.d.ts.map | 1 + .../dist/types/sdk/shared/types.d.ts | 137 + .../dist/types/sdk/shared/types.d.ts.map | 1 + .../dist/types/sdk/shared/utils.d.ts | 274 + .../dist/types/sdk/shared/utils.d.ts.map | 1 + .../dist/types/sdk/v0/index.d.ts | 79 + .../dist/types/sdk/v0/index.d.ts.map | 1 + .../dist/types/sdk/v0_1/index.d.ts | 98 + .../dist/types/sdk/v0_1/index.d.ts.map | 1 + .../dist/types/sdk/v0_2/index.d.ts | 109 + .../dist/types/sdk/v0_2/index.d.ts.map | 1 + .../dist/types/sdk/v0_3/index.d.ts | 198 + .../dist/types/sdk/v0_3/index.d.ts.map | 1 + .../dist/types/sdk/v0_4/index.d.ts | 276 + .../dist/types/sdk/v0_4/index.d.ts.map | 1 + .../dist/types/sdk/v1/family.d.ts | 813 + .../dist/types/sdk/v1/family.d.ts.map | 1 + .../dist/types/sdk/v1/order-sanity.d.ts | 147 + .../dist/types/sdk/v1/order-sanity.d.ts.map | 1 + .../dist/types/sdk/v1/types.d.ts | 116 + .../dist/types/sdk/v1/types.d.ts.map | 1 + .../dist/types/sdk/v1_0/index.d.ts | 92 + .../dist/types/sdk/v1_0/index.d.ts.map | 1 + .../dist/types/sdk/v1_0_rc1/index.d.ts | 273 + .../dist/types/sdk/v1_0_rc1/index.d.ts.map | 1 + .../dist/types/sdk/v1_1_rc1/diffusion.d.ts | 72 + .../types/sdk/v1_1_rc1/diffusion.d.ts.map | 1 + .../dist/types/sdk/v1_1_rc1/index.d.ts | 331 + .../dist/types/sdk/v1_1_rc1/index.d.ts.map | 1 + .../dist/types/sundae/discovery.d.ts | 39 + .../dist/types/sundae/discovery.d.ts.map | 1 + .../dist/types/sundae/index.d.ts | 149 + .../dist/types/sundae/index.d.ts.map | 1 + .../dist/types/sundae/support.d.ts | 74 + .../dist/types/sundae/support.d.ts.map | 1 + .../dist/types/sundae/v4-curve.d.ts | 9 + .../dist/types/sundae/v4-curve.d.ts.map | 1 + .../dist/types/tx-builder/destination.d.ts | 64 + .../types/tx-builder/destination.d.ts.map | 1 + .../dist/types/tx-builder/flow.d.ts | 95 + .../dist/types/tx-builder/flow.d.ts.map | 1 + .../dist/types/tx-builder/index.d.ts | 4 + .../dist/types/tx-builder/index.d.ts.map | 1 + .../dist/types/tx-builder/registry.d.ts | 113 + .../dist/types/tx-builder/registry.d.ts.map | 1 + modules/realfi-partner-sdk/package.json | 69 + modules/realfi-partner-sdk/src/admin/index.ts | 1 + .../src/admin/settings/index.ts | 3 + .../src/admin/settings/protocol-settings.ts | 3 + .../src/admin/settings/types.ts | 145 + .../src/admin/settings/utils.ts | 176 + .../src/admin/settings/v1_1_rc1.ts | 504 + modules/realfi-partner-sdk/src/api/client.ts | 50 + modules/realfi-partner-sdk/src/api/index.ts | 18 + .../src/api/partner-config.ts | 82 + modules/realfi-partner-sdk/src/api/queries.ts | 154 + .../realfi-partner-sdk/src/api/realfi-api.ts | 290 + .../realfi-partner-sdk/src/api/registry.ts | 36 + modules/realfi-partner-sdk/src/api/types.ts | 105 + .../src/generated-types/base/index.ts | 118 + .../src/generated-types/index.ts | 9 + .../src/generated-types/v0/index.ts | 46 + .../src/generated-types/v0_1/index.ts | 237 + .../src/generated-types/v0_2/index.ts | 154 + .../src/generated-types/v0_3/index.ts | 409 + .../src/generated-types/v0_4/index.ts | 619 + .../src/generated-types/v1_0/index.ts | 1101 + .../src/generated-types/v1_0_rc1/index.ts | 1046 + .../src/generated-types/v1_1_rc1/index.ts | 1559 ++ modules/realfi-partner-sdk/src/index.ts | 136 + modules/realfi-partner-sdk/src/sdk/index.ts | 242 + .../src/sdk/partner-dispatcher.ts | 241 + modules/realfi-partner-sdk/src/sdk/partner.ts | 196 + .../realfi-partner-sdk/src/sdk/shared/base.ts | 551 + .../src/sdk/shared/cancel.ts | 75 + .../src/sdk/shared/client-id.ts | 9 + .../src/sdk/shared/detect-params.ts | 677 + .../src/sdk/shared/errors.ts | 42 + .../src/sdk/shared/index.ts | 10 + .../src/sdk/shared/network-registry.ts | 102 + .../src/sdk/shared/public.ts | 16 + .../src/sdk/shared/reserve-assets.ts | 86 + .../src/sdk/shared/slots.ts | 73 + .../src/sdk/shared/timelock.ts | 376 + .../src/sdk/shared/types.ts | 142 + .../src/sdk/shared/utils.ts | 1319 ++ .../realfi-partner-sdk/src/sdk/v0/index.ts | 269 + .../realfi-partner-sdk/src/sdk/v0_1/index.ts | 451 + .../realfi-partner-sdk/src/sdk/v0_2/index.ts | 581 + .../realfi-partner-sdk/src/sdk/v0_3/index.ts | 1150 ++ .../realfi-partner-sdk/src/sdk/v0_4/index.ts | 2127 ++ .../realfi-partner-sdk/src/sdk/v1/family.ts | 3763 ++++ .../src/sdk/v1/order-sanity.ts | 313 + .../realfi-partner-sdk/src/sdk/v1/types.ts | 135 + .../realfi-partner-sdk/src/sdk/v1_0/index.ts | 268 + .../src/sdk/v1_0_rc1/index.ts | 1708 ++ .../src/sdk/v1_1_rc1/diffusion.ts | 144 + .../src/sdk/v1_1_rc1/index.ts | 1281 ++ .../src/sundae/discovery.ts | 195 + .../realfi-partner-sdk/src/sundae/index.ts | 808 + .../realfi-partner-sdk/src/sundae/support.ts | 101 + .../realfi-partner-sdk/src/sundae/v4-curve.ts | 125 + .../src/tx-builder/README.md | 164 + .../src/tx-builder/destination.ts | 214 + .../realfi-partner-sdk/src/tx-builder/flow.ts | 284 + .../src/tx-builder/index.ts | 3 + .../src/tx-builder/registry.ts | 259 + yarn.lock | 604 +- 432 files changed, 106634 insertions(+), 8 deletions(-) create mode 100644 modules/realfi-partner-sdk/.gitignore create mode 100644 modules/realfi-partner-sdk/CHANGELOG.md create mode 100644 modules/realfi-partner-sdk/README.md create mode 100644 modules/realfi-partner-sdk/UPSTREAM.md create mode 100644 modules/realfi-partner-sdk/dist/build-info.json create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/settings/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/settings/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/settings/protocol-settings.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/settings/protocol-settings.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/settings/types.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/settings/types.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/settings/utils.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/settings/utils.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/settings/v1_1_rc1.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/admin/settings/v1_1_rc1.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/client.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/client.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/partner-config.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/partner-config.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/queries.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/queries.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/realfi-api.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/realfi-api.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/registry.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/registry.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/types.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/api/types.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/base/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/base/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v0/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v0/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v0_1/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v0_1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v0_2/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v0_2/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v0_3/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v0_3/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v0_4/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v0_4/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0_rc1/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0_rc1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v1_1_rc1/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/generated-types/v1_1_rc1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/package.json create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/partner-dispatcher.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/partner-dispatcher.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/partner.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/partner.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/base.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/base.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/cancel.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/cancel.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/client-id.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/client-id.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/detect-params.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/detect-params.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/errors.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/errors.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/network-registry.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/network-registry.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/public.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/public.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/reserve-assets.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/reserve-assets.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/slots.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/slots.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/timelock.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/timelock.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/types.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/types.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/utils.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/shared/utils.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v0/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v0/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v0_1/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v0_1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v0_2/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v0_2/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v0_3/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v0_3/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v0_4/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v0_4/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1/family.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1/family.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1/order-sanity.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1/order-sanity.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1/types.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1/types.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1_0/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1_0/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1_0_rc1/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1_0_rc1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/diffusion.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/diffusion.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sundae/discovery.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sundae/discovery.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sundae/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sundae/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sundae/support.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sundae/support.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/sundae/v4-curve.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/sundae/v4-curve.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/tx-builder/destination.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/tx-builder/destination.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/tx-builder/flow.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/tx-builder/flow.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/tx-builder/index.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/tx-builder/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/cjs/tx-builder/registry.js create mode 100644 modules/realfi-partner-sdk/dist/cjs/tx-builder/registry.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/settings/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/settings/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/settings/protocol-settings.js create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/settings/protocol-settings.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/settings/types.js create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/settings/types.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/settings/utils.js create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/settings/utils.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/settings/v1_1_rc1.js create mode 100644 modules/realfi-partner-sdk/dist/esm/admin/settings/v1_1_rc1.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/api/client.js create mode 100644 modules/realfi-partner-sdk/dist/esm/api/client.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/api/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/api/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/api/partner-config.js create mode 100644 modules/realfi-partner-sdk/dist/esm/api/partner-config.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/api/queries.js create mode 100644 modules/realfi-partner-sdk/dist/esm/api/queries.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/api/realfi-api.js create mode 100644 modules/realfi-partner-sdk/dist/esm/api/realfi-api.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/api/registry.js create mode 100644 modules/realfi-partner-sdk/dist/esm/api/registry.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/api/types.js create mode 100644 modules/realfi-partner-sdk/dist/esm/api/types.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/base/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/base/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v0/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v0/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v0_1/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v0_1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v0_2/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v0_2/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v0_3/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v0_3/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v0_4/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v0_4/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v1_0/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v1_0/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v1_0_rc1/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v1_0_rc1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v1_1_rc1/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/generated-types/v1_1_rc1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/partner-dispatcher.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/partner-dispatcher.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/partner.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/partner.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/base.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/base.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/cancel.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/cancel.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/client-id.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/client-id.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/detect-params.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/detect-params.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/errors.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/errors.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/network-registry.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/network-registry.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/public.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/public.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/reserve-assets.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/reserve-assets.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/slots.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/slots.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/timelock.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/timelock.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/types.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/types.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/utils.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/shared/utils.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v0/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v0/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v0_1/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v0_1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v0_2/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v0_2/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v0_3/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v0_3/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v0_4/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v0_4/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1/family.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1/family.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1/order-sanity.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1/order-sanity.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1/types.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1/types.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1_0/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1_0/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1_0_rc1/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1_0_rc1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/diffusion.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/diffusion.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sundae/discovery.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sundae/discovery.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sundae/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sundae/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sundae/support.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sundae/support.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/sundae/v4-curve.js create mode 100644 modules/realfi-partner-sdk/dist/esm/sundae/v4-curve.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/tx-builder/destination.js create mode 100644 modules/realfi-partner-sdk/dist/esm/tx-builder/destination.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/tx-builder/flow.js create mode 100644 modules/realfi-partner-sdk/dist/esm/tx-builder/flow.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/tx-builder/index.js create mode 100644 modules/realfi-partner-sdk/dist/esm/tx-builder/index.js.map create mode 100644 modules/realfi-partner-sdk/dist/esm/tx-builder/registry.js create mode 100644 modules/realfi-partner-sdk/dist/esm/tx-builder/registry.js.map create mode 100644 modules/realfi-partner-sdk/dist/types/admin/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/admin/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/admin/settings/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/admin/settings/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/admin/settings/protocol-settings.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/admin/settings/protocol-settings.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/admin/settings/types.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/admin/settings/types.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/admin/settings/utils.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/admin/settings/utils.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/admin/settings/v1_1_rc1.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/admin/settings/v1_1_rc1.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/api/client.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/api/client.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/api/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/api/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/api/partner-config.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/api/partner-config.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/api/queries.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/api/queries.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/api/realfi-api.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/api/realfi-api.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/api/registry.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/api/registry.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/api/types.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/api/types.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/base/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/base/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v0/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v0/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v0_1/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v0_1/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v0_2/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v0_2/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v0_3/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v0_3/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v0_4/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v0_4/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v1_0/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v1_0/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v1_0_rc1/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v1_0_rc1/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v1_1_rc1/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/generated-types/v1_1_rc1/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/partner-dispatcher.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/partner-dispatcher.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/partner.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/partner.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/base.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/base.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/cancel.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/cancel.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/client-id.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/client-id.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/detect-params.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/detect-params.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/errors.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/errors.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/network-registry.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/network-registry.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/public.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/public.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/reserve-assets.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/reserve-assets.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/slots.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/slots.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/timelock.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/timelock.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/types.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/types.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/utils.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/shared/utils.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v0/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v0/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v0_1/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v0_1/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v0_2/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v0_2/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v0_3/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v0_3/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v0_4/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v0_4/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1/family.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1/family.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1/order-sanity.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1/order-sanity.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1/types.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1/types.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1_0/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1_0/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1_0_rc1/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1_0_rc1/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/diffusion.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/diffusion.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sundae/discovery.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sundae/discovery.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sundae/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sundae/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sundae/support.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sundae/support.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/sundae/v4-curve.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/sundae/v4-curve.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/tx-builder/destination.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/tx-builder/destination.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/tx-builder/flow.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/tx-builder/flow.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/tx-builder/index.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/tx-builder/index.d.ts.map create mode 100644 modules/realfi-partner-sdk/dist/types/tx-builder/registry.d.ts create mode 100644 modules/realfi-partner-sdk/dist/types/tx-builder/registry.d.ts.map create mode 100644 modules/realfi-partner-sdk/package.json create mode 100644 modules/realfi-partner-sdk/src/admin/index.ts create mode 100644 modules/realfi-partner-sdk/src/admin/settings/index.ts create mode 100644 modules/realfi-partner-sdk/src/admin/settings/protocol-settings.ts create mode 100644 modules/realfi-partner-sdk/src/admin/settings/types.ts create mode 100644 modules/realfi-partner-sdk/src/admin/settings/utils.ts create mode 100644 modules/realfi-partner-sdk/src/admin/settings/v1_1_rc1.ts create mode 100644 modules/realfi-partner-sdk/src/api/client.ts create mode 100644 modules/realfi-partner-sdk/src/api/index.ts create mode 100644 modules/realfi-partner-sdk/src/api/partner-config.ts create mode 100644 modules/realfi-partner-sdk/src/api/queries.ts create mode 100644 modules/realfi-partner-sdk/src/api/realfi-api.ts create mode 100644 modules/realfi-partner-sdk/src/api/registry.ts create mode 100644 modules/realfi-partner-sdk/src/api/types.ts create mode 100644 modules/realfi-partner-sdk/src/generated-types/base/index.ts create mode 100644 modules/realfi-partner-sdk/src/generated-types/index.ts create mode 100644 modules/realfi-partner-sdk/src/generated-types/v0/index.ts create mode 100644 modules/realfi-partner-sdk/src/generated-types/v0_1/index.ts create mode 100644 modules/realfi-partner-sdk/src/generated-types/v0_2/index.ts create mode 100644 modules/realfi-partner-sdk/src/generated-types/v0_3/index.ts create mode 100644 modules/realfi-partner-sdk/src/generated-types/v0_4/index.ts create mode 100644 modules/realfi-partner-sdk/src/generated-types/v1_0/index.ts create mode 100644 modules/realfi-partner-sdk/src/generated-types/v1_0_rc1/index.ts create mode 100644 modules/realfi-partner-sdk/src/generated-types/v1_1_rc1/index.ts create mode 100644 modules/realfi-partner-sdk/src/index.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/index.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/partner-dispatcher.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/partner.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/base.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/cancel.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/client-id.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/detect-params.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/errors.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/index.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/network-registry.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/public.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/reserve-assets.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/slots.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/timelock.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/types.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/shared/utils.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v0/index.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v0_1/index.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v0_2/index.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v0_3/index.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v0_4/index.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v1/family.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v1/order-sanity.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v1/types.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v1_0/index.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v1_0_rc1/index.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v1_1_rc1/diffusion.ts create mode 100644 modules/realfi-partner-sdk/src/sdk/v1_1_rc1/index.ts create mode 100644 modules/realfi-partner-sdk/src/sundae/discovery.ts create mode 100644 modules/realfi-partner-sdk/src/sundae/index.ts create mode 100644 modules/realfi-partner-sdk/src/sundae/support.ts create mode 100644 modules/realfi-partner-sdk/src/sundae/v4-curve.ts create mode 100644 modules/realfi-partner-sdk/src/tx-builder/README.md create mode 100644 modules/realfi-partner-sdk/src/tx-builder/destination.ts create mode 100644 modules/realfi-partner-sdk/src/tx-builder/flow.ts create mode 100644 modules/realfi-partner-sdk/src/tx-builder/index.ts create mode 100644 modules/realfi-partner-sdk/src/tx-builder/registry.ts diff --git a/.eslintignore b/.eslintignore index 47bab751c9..0ff323b53a 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1 +1,2 @@ -modules/babylonlabs-io-btc-staking-ts \ No newline at end of file +modules/babylonlabs-io-btc-staking-ts +modules/realfi-partner-sdk \ No newline at end of file diff --git a/.prettierignore b/.prettierignore index 4b01fe035d..0fb41359b9 100644 --- a/.prettierignore +++ b/.prettierignore @@ -8,4 +8,5 @@ CHANGELOG.md flake.lock modules/babylonlabs-io-btc-staking-ts/ +modules/realfi-partner-sdk/ /.nx/workspace-data \ No newline at end of file diff --git a/.yarnrc b/.yarnrc index 142dad8170..0e372126f3 100644 --- a/.yarnrc +++ b/.yarnrc @@ -1 +1,2 @@ registry "https://registry.npmjs.org" +ignore-engines true diff --git a/modules/realfi-partner-sdk/.gitignore b/modules/realfi-partner-sdk/.gitignore new file mode 100644 index 0000000000..92b972cb08 --- /dev/null +++ b/modules/realfi-partner-sdk/.gitignore @@ -0,0 +1,10 @@ +node_modules/ +*.tsbuildinfo +.nyc_output +coverage +*.log +.env +.DS_Store + +# Dist is vendored from upstream prebuild (see UPSTREAM.md). Root gitignore +# ignores modules/**/dist/ — force-add dist when updating the pin. diff --git a/modules/realfi-partner-sdk/CHANGELOG.md b/modules/realfi-partner-sdk/CHANGELOG.md new file mode 100644 index 0000000000..238890b97d --- /dev/null +++ b/modules/realfi-partner-sdk/CHANGELOG.md @@ -0,0 +1,479 @@ +# @realfi-co/realfi-partner-sdk + +## 2.14.0 + +### Minor Changes + +- Support SundaeSwap V4 swaps on equal-weight constant-sum pools. + + `quoteSwap` now accepts those V4 pools alongside V3 and Stableswaps, so callers + no longer branch on `pool.version` to quote. A constant-sum pool holds its price + whatever the order size, so the quote is exact and `priceImpact` is `0`. Other + V4 curves are not priced — see below. + + The V4 quote cannot go through `SundaeUtils.getSwapOutput`, which dispatches on + `pool.curve` — a field the Sundae API never populates, so it falls through to + `Unsupported v4 pool curve: undefined`. Instead we run `ConstantSumPool`'s + arithmetic from `@sundaeswap/math` directly, carrying the pool's shared price + weight through the fee and the quotient rather than dividing it out (the two + roundings only collapse at a weight of `1`). Two settlements captured live from + `api.preview.sundae.fi` pin it to what Sundae's engine actually produces. + + A V4 pool's swap math follows its invariant module, not its contract version, so + "V4" does not by itself mean constant-sum. The quote refuses any pool it cannot + confirm is constant-sum with equal price weights — including one whose `curve` + or `prices` are simply absent, since absent means unasked rather than 1:1. The + error names pool discovery, which supplies both. + + `slippage` is validated and then ignored on the V4 path. A linear pool has no + price movement to buffer, and the surplus above a V4 order's `min_received` is + unbound on chain: the scooper keeps whatever the fill clears the floor by. Slack + in the floor is therefore not a safety margin, it is skimmable, so + `minReceived` sits exactly at `estimatedReceived`. For the same reason the quote + does not cap its output at the quoted pool's reserve, though `ConstantSumPool` + does — a V4 order is bound to no pool, so capping would silently lower the + owner's only guarantee. + + New `quoteSwapInput` is the inverse of `quoteSwap`: it returns the smallest + supply that still yields a wanted output. A swap form needs this direction when + the user edits the receive field rather than the pay field, and + `SundaeUtils.getSwapInput` fails on a V4 pool for the same missing-`curve` + reason as `getSwapOutput`. Like the forward direction it is version-aware, so + callers use one function for all supported pools. + + New `buildSwapIntentTx` places a V4 swap. It takes no pool, because a V4 order + names none: it is an offer and a floor, and the scooper decides how to fill it. + It routes through `swapIntent` rather than `swap`, since `TxBuilderV4.swap` + throws by design — a swap order carries the route constraint, which is outside + the audited launch surface. `buildSwapOrderTx` now rejects V4 with a pointer to + it rather than the misleading "unsupported version". + + Version support becomes a table keyed by every Sundae contract version, with a + column per question: `swap` (can we quote it and place an order) and + `buildAgainstPool` (does the order name the pool). A new Sundae version now + fails to compile until both are answered, rather than defaulting to unsupported + because nobody remembered a second list. `isSupportedSundaeSwapVersion` reads + the second column and still excludes V4; the new + `isSwappableSundaeSwapVersion` reads the first and includes it. + + Pool discovery's `buildable` scope now uses the first column, so a V4 pool is + discoverable through `buildable` and `curated` rather than only through `all`. + `buildable` means "the SDK can build an order for this pool", and for V4 that + order is a pool-less intent. The operational pool-selection scripts are + unaffected: they re-check `isSupportedSundaeSwapVersion` themselves, so they + still resolve exactly one pool per pair. + + Pool discovery now fills in `curve` and `prices` itself. Sundae's own pool + query selects neither, so every v4 pool arrived with both undefined and anything + downstream had to assume the curve rather than check it. A small second request + supplies them, and it only runs for pools that are missing the fields — so the + day Sundae selects them upstream the request stops firing on its own and the + module is pure cleanup to delete. + + Weights are only mapped when they can be mapped safely: a v4 pool may hold up to + 16 assets while `IPoolData.prices` is a two-tuple, so an unequal set that cannot + be aligned to the pair is left unset rather than guessed at. + + New `selectV4QuotePool` picks which V4 pool's fee should quote a swap. It takes + a mixed candidate list, ignores every non-V4 pool and every V4 pool the quote + would refuse, and returns the cheapest of what is left — or undefined, meaning + the caller should fall back to another version. Cheapest is the safe rule as + well as the best rate: a pool overstating its fee would lower `min_received`, + so a hostile pool can only win by genuinely being the cheapest. + + It exists so the eligibility rules have one home. A caller choosing its own V4 + pool has to reproduce all of them — curve, price weights, decimals, fee, usable + reserves — and gets no error until quoting, by which point it has already + skipped the working Stableswap pool it could have used instead. Checking only + the curve is the easy version of that mistake, and it is not enough: discovery + reads the curve from the invariant module but leaves `prices` unset when the + weights cannot be aligned to the pair, so a pool can carry a constant-sum curve + and still be unpriceable. Selection is deliberately a little stricter than the + quote — it requires both reserves, where a single quote only checks the side it + pays out, because a swap form trades in both directions against one pool. + + Requires `@sundaeswap/core` 2.13.1, which is where V4 lands. + +## 2.13.1 + +### Patch Changes + +- Fix transaction building around timelocks and protocol settings: + - Resolve the native-script shape from a timelock UTxO's locking address, allowing claims from both retail and treasury/multisig unstake flows. + - Retry transient not-found responses when reading singleton NFT UTxOs, including the protocol settings proxy, while preserving the provider error if the retry budget is exhausted. + - Reserve the required minimum ADA before re-locking a V1.1 settings datum, so settings updates remain balanced when the datum grows. + +## 2.13.0 + +### Minor Changes + +- Let `protocolValidators` carry more than one generation of a deployment, so a + consumer can span a script cutover instead of failing closed across it. + + A cutover changes the proxy datum's `logic` hash on chain, and consumers learn + the new hashes from config, which cannot land in the same instant. With a + single generation, every consumer is failing closed for the width of a deploy — + observed as a full transaction outage on preprod. + + Pass an array of blueprint maps and detection selects the generation whose + protocol orchestrator matches the deployed `logic` hash, applying that + generation whole. Passing a single map behaves exactly as before, and when no + generation matches, detection still fails closed rather than guessing. + + Listing both generations in one map cannot work and is unsafe: the override + reads exact keys, so one generation's hashes would be applied regardless of + which matched, and the SDK would build against addresses the chain is not + using. The array is what keeps version and script hashes from different + generations from ever being mixed. + +## 2.12.3 + +### Patch Changes + +- Resolve deployed reference scripts when a provider omits script metadata from address-level UTxO responses. Reference-script lookup failures other than an unused address (rate limits, outages, malformed responses) now surface to the caller instead of being reported as a missing deployment. +- Reattach an NFT singleton's datum inline when a provider reports it as a datum + hash. A lagging `inline_datum` on the proxy, treasury or staking-vault read + previously left the UTxO unusable: a vault or treasury read failed batch + execution with `addInput: When spending datum hash, must provide datum (3rd +arg)`, and a proxy read failed every batch with `No proxy datum found`. Every + singleton read now goes through one repair, so this covers all versions from + V0_1 to V1_1_Rc1. + +## 2.12.2 + +### Patch Changes + +- Identify a deployment by the validators it runs, not by the artifacts this + package bundles. + + `detectParams` accepts an optional `protocolValidators` map, keyed as in + `backend/config/env/.protocol.yaml`. When supplied it decides the protocol + version and, more importantly, overrides the script hashes and addresses the SDK + would otherwise derive — including the order address funds are locked at. Every + identity was previously computed from the bundled Plutus artifacts, which is + correct only while those bytes match the ones on chain; where they do not, an + order transaction (metadata plus `lockAssets`, with no on-chain validation) + would build, sign and submit into an address nothing watches. + + Omitted, behaviour is unchanged. + +- Allow current V1 SDK instances to recover signature-owned orders from a + superseded same-schema order validator by resolving the reference scripts from + the supplied order UTxOs. + +## 2.12.1 + +### Patch Changes + +- Require Sundae Core 2.13.1 or newer so clean SDK installations avoid the + incompatible Core 2.13.0 and Sundae Math 0.2.2 pairing. + +## 2.12.0 + +### Minor Changes + +- Add a version-neutral Sundae swap-to-stake composer that selects V3 or + Stableswaps from the supplied pool, uses Sundae's guaranteed USDr output for + the RealFi stake continuation, and preserves cancellation and excess-output + destinations. Deprecate the lower-level, V3-only + `createTxFlowBuilder().sundaeV3SwapToStake` helper in favor of the new composer. +- Expose the decimal price impact on Sundae swap quotes. +- Add network-scoped Sundae pool discovery with a runtime-configured curated + default, every pool supported by the installed builders, and the complete raw + discovery set. +- Expose diffusion-aware sUSDr exchange-rate inputs, unstake claim transaction hashes, and `InvalidMinReceived` orders through the partner API. +- Add `RealfiSDK.api.getPartnerConfig()` for the authoritative USDr asset ID, + validated runtime swap asset lists, and non-negative integer mint/redeem UX + limits shared with each deployed RealFi environment. Asset IDs use Sundae's + dotted `policyId.assetName` representation so they can be passed directly to + the SDK's Sundae discovery and builder APIs. +- Add a version-neutral partner API for quoting and building standalone Sundae V3 and Stableswaps orders. Large swap minimums retain bigint precision, and the public `SundaeSwap` namespace exports the construction values and types partners need. + +### Patch Changes + +- Ship the patched V1.0 validators that reject unsigned treasury reserve outflows + during mint and withdraw operations. + +## 2.11.1 + +### Patch Changes + +- Upgrade `@cardano-sdk/core` to 0.46.15, removing the obsolete Ogmios client and + its vulnerable transitive NanoID dependency. This resolves + [GHSA-28wg-ghj8-5hjv](https://github.com/advisories/GHSA-28wg-ghj8-5hjv) and + [GHSA-2v37-7h3g-55p8](https://github.com/advisories/GHSA-2v37-7h3g-55p8). + +## 2.11.0 + +### Minor Changes + +- Add an SDK-backed Sundae V3 swap-to-stake continuation flow for RealFi V1.0 + and V1.1. The helper validates the swap's guaranteed USDr output, derives the + live request address and exchange rate, and computes the RealFi stake floor. + +## 2.10.0 + +### Minor Changes + +- Add the V1.1 deposit-batch alpha signing helpers. Batch creators can identify + whether alpha is required with `batchNeedsAlpha`, compute it once with + `computeDepositAlpha`, and pass the creator-selected value to + `getSignedPayloadFromOrderInputs` so every co-signer signs the batch's stored + alpha. First-party consumers can also import `IYieldSplitAlpha` from the + internal SDK entry point. + +## 2.9.0 + +### Minor Changes + +- Refuse to create or package an order that would crash the batch it joins + (WTB-1764). Every v1-family validator predicate that reads `min_received` + requires it to be strictly positive, and those predicates run inside a + `zip_fold` that `expect`s each request in turn — so one order with a zero floor + crashes the ENTIRE execution transaction, killing every valid order bundled + alongside it. Order creation is permissionless and has no on-chain gate, which + made this a cheap, repeatable denial-of-service against the execution pipeline + (738 Stake batch failures in 72h on preprod, all traced to a single order). + + `buildMintOrderTx`, `buildRedeemOrderTx`, `buildStakeOrderTx` and + `buildUnstakeOrderTx` now throw on a non-positive `min_received`, whether it was + passed explicitly or computed. That closes two paths the SDK itself could take: + a dust stake whose floor rounds to zero at a high vault rate, and a full-forfeit + unstake, which `computeUnstakeMinReceived` nets to zero (`unstake.ak`'s own + comment defers that case to `min_received > 0`, i.e. the batch-wide crash). + `computeStakeMinReceivedFromVaultRatio` in the tx-builder flow throws on the + same condition. + + New `screenOrderAction` on the internal entry is the off-chain mirror of the + validators' per-request predicates, so a candidate order can be screened before + it is batched. `getSignedPayloadFromOrderInputs` applies it and reports which + order ref is unexecutable, instead of letting the batch reach the validator and + fail with an opaque crash. + + The screen covers two kinds of abort, because the datum alone cannot detect + both. `screenOrderAction` handles the `process_*_requests` per-request + predicates. `screenOrderUtxoFacts` handles the value-dependent ones: an order + UTxO locking less of the consumed asset than its datum claims + (`utilities.ak:416`, and the equivalent inside mint/burn's `and {}`), and a + `min_received` above the deliverability ceiling `validate_destination_value` + enforces (`utilities.ak:594`). The first is the cheapest batch-killer of all — + min-ADA and none of the consumed asset. `screenOrderForExecution` on the SDK + family runs both and is what consumers should call; it reads settings for the + mint/burn reserve multiplier, off the memoised proxy datum. + +### Patch Changes + +- Route every time→slot conversion through one shared helper so slot alignment + cannot silently no-op. `provider.unixToSlot` does not floor — it returns a + fractional slot for any time that is not exactly on a slot boundary, which makes + the natural "snap to slot" round-trip `slotToUnix(unixToSlot(t))` the identity on + `t`, and lets a fractional slot reach the tx builder where CBOR truncates it + silently. That divergence crashed a v1_1_rc1 windowed deposit on preview: the + vault output's `diffusion_start` kept the sub-slot remainder while the tx's + validity lower bound was floored, so `validate_deposit_diffusion`'s + `diffusion_start == now` check failed. `slotFloor` and `slotAlignedTimeMs` (new, + on the internal entry's `Utils`) are now the only place `unixToSlot` is called, + and v1_1_rc1's execution validity bounds plus the order-creation scripts go + through them. + +## 2.8.0 + +### Minor Changes + +- `detectParams` (and `detectSDKParams`) accept a network name (`"mainnet"`, `"preprod"`, `"preview"`) in place of an explicit config — partners can now target a network by name (`RealfiSDK.cardano.detectParams(provider, "preprod")`) without sourcing bootstrap references themselves. Explicit configuration remains available for custom deployments. The built-in presets are exported as `NETWORK_REGISTRY`. + +### Patch Changes + +- COSE (CIP-8) signature handling reads the COSE_Sign1 with the CBOR primitives already in the dependency tree, including indefinite-length encodings of the array, maps, and byte strings. The Emurgo WASM message-signing packages and their environment-conditional (`typeof window`) dynamic import are removed, so the SDK loads in runtimes without WASM-bundled dependencies (e.g. React Native / Lace mobile). The unused internal utility `stripCborBstrWrapper` is removed. +- Export `RealfiSDKV1Family` (value) and the `IVaultDatumLike` type from the `/internal` entry, so first-party consumers can narrow a detected SDK to the V1 protocol family structurally with `instanceof` instead of matching version strings. +- Surface diffusion-window shortfalls when executing a v1_1_rc1 deposit. A deposit + order's `diffusion_end` is absolute and fixed at order creation, so delay before + the execute lands (batching, cold/multisig signing) eats the window — and once it + is gone the validator collapses it, settling the staked yield instantly. That is a + valid on-chain outcome, so nothing used to report it. The SDK now warns (naming + `diffusion_end`, the execution time, and the consequence) when a deposit execution + would collapse a window, including the case where an unwindowed deposit clears a + window that is still live. Two new optional params tune it: + `diffusionShortfallThresholdMs` also flags a window that survives execution with + almost nothing left, and `throwOnDiffusionWindowShortfall` refuses the build + instead of warning. + +## 2.7.0 + +### Minor Changes + +- Additive API surface for operating a v1_1_rc1 protocol. + - The `/internal` barrel now exports the diffusion and yield-split maths so + first-party consumers can reproduce on-chain figures instead of re-deriving + them: `pendingRemaining` and `settledBacking` (verbatim ports of the + `utilities.ak` helpers) and `calculateYieldShares`. + - `yieldOracleBootstrap` is now **optional** in the V1_1_Rc1 params. A + deployment that defers the yield oracle can omit the seed entirely, and both + `create()` and version detection fall back to + `YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER` — a permanently un-consumable + `OutputReference` (all-zeros tx hash) now exported from the root barrel. The + orchestrator hash stays real, deterministic and reproducible by every + consumer, and no bootstrap UTxO has to be reserved and protected from fee + selection. Supplying a real seed continues to override it. The placeholder is + frozen, since it is shared by reference across every omitted-seed + reconstruction in the process. + - The V1 family gained batched bootstrap helpers, so a fresh protocol's script + deployments and stake registrations can be submitted as a few batched + transactions rather than one per script, while staying under the 16 KB + transaction limit. + +- Add public version-agnostic accessors on the V1 SDK family: `getSettingsConfig()` + reads the shared settings config (`reserve_assets`, `unstaked_yield_pot`) across + v1_0 and v1_1 datum layouts, `classifyOrderUtxo()` decodes and classifies a single + open-order UTxO with the active version's order schema (no same-action-type + constraint, for scanning mixed batches), and `parseOrders()` is the public + same-type batch wrapper over the order parser. The supporting types + (`IOnChainOrderInfo`, `IClassifiedOrderAction`, `IClassifiedOrderUtxo`, + `TV1SettingsConfig`) are exported from the internal entry. + +### Patch Changes + +- Fix two v1_1_rc1 execution-timing defects that only reproduce against a real + network — the emulator's injected clock is already slot-aligned, so neither + appeared in the emulator suite. + - **Slot-align the pinned execution time.** `provider.unixToSlot` does not floor: + for a wall-clock time off a slot boundary it returns a _fractional_ slot, so + `slotToUnix(unixToSlot(now))` round-tripped back to the raw millisecond. + The transaction body stores `invalid_before` as an **integer** slot, so + on-chain the validator reads `slotToUnix(floor(slot))` while the vault output's + `diffusion_start` kept the sub-slot remainder. `validate_deposit_diffusion` + requires `diffusion_start == now`, so a **windowed deposit crashed the + orchestrator at `Withdraw[0]`**. The slot is now floored when pinning the + execution time. + - **Open a vault-touching execution's validity interval slightly in the past.** + A submitter whose clock runs a few seconds fast produced a premature + transaction, rejected by the node with `OutsideValidityIntervalUTxO`. The + back-off is **execution-scoped** rather than a global clock shift: `now` + remains real wall-clock time, so duration-based diffusion windows keep their + requested length, and the forward `validUntil` bound is not shifted. Because + the validator welds `diffusion_start` to the validity lower bound, all three + values continue to derive from the same pinned instant. An injected clock + (emulator and tests) disables the back-off entirely, so deterministic time + assertions still hold. + + Because the back-off widens the effective validity span, the constructor now + rejects a configuration where the back-off plus `executionValidityWindowMs` + would exceed one hour (`MAX_DIFFUSION_RATE_SPAN_MS`) — previously such a span + was accepted here and only failed later on-chain, inside `diffusion_rate_time`. + + Also clarifies that a deposit's diffusion window is measured from **order + creation**, not execution: `buildDepositOrderTx` resolves `diffusionDurationMs` + against the order-creation time and writes an absolute `diffusion_end` into the + order datum, so any delay before the execute lands shortens the effective + window, and a window that fully elapses beforehand collapses the deposit to + instant on-chain. + +- Expose the v1_1_rc1 diffusion-aware sUSDr exchange-rate helper from the SDK and + normalize nested v1_1 proxy settings through `getSettings()`. First-party + frontends can now compute `susdrExchangeRateInputs` with the same linear + pending-yield diffusion math used by the validators instead of reimplementing it + locally. + +## 2.6.0 + +### Minor Changes + +- Add the in-place v1_0 → v1_1_rc1 protocol upgrade to `RealfiSDKV1_1Rc1`: `create()` wires the protocol-migration withdraw validator (registry-gated, exposed as `migrationScriptHash`), with `deployMigration()` and `registerMigrationStake()` for setup, `getMigrateStatePayload()` for the signed `MigrateState` authorization, and `buildMigrateStateTx()` to migrate the staking-vault datum in place — the vault is re-locked at the same address and value with the v1_1 datum shape, preserving `circulating_susdr`. The treasury, staking-vault, and USDr-policy scripts are hash-identical across the two versions, so no funds move during the upgrade. + +### Patch Changes + +- Resolve datums by hash when an NFT-located UTxO carries a datum hash instead of an inline datum: `getDatumFromNFT` falls back to the provider's datum resolution, so datum reads no longer fail for outputs created with hashed datums. +- Complete the partner-facing type surface for V1_1_Rc1: `IRealfiCardanoSDKV1_1Rc1`, a `TRealfiCardanoSDK` union member, and a `create` overload resolving to the narrowed instance type. The V1_1_Rc1 partner method set matches V1_0/V1_0_Rc1 — `create` and version detection already dispatched to V1_1_Rc1 correctly, but the class was missing from the curated partner types. +- Reconcile `RealfiSDKV1_1Rc1` with the audited v1_1 contracts: regenerated v1_1_rc1 types; the orchestrator withdraw redeemer is wrapped in `ExecuteOrders`; deposit execution signs and echoes the exact `alpha` staked-yield share the vault applies; `create()` wires the yield-oracle validator hash into the orchestrator (exposed as `yieldOracleScriptHash`); settings datums gain the migration registry and permission fields; version detection recomputes the orchestrator hash accordingly. + +## 2.5.0 + +### Minor Changes + +- Add `RealfiSDKV1_1Rc1` — order execution (mint, redeem, stake, unstake, deposit, withdraw, direct mint/burn) for the v1*1_rc1 protocol, including **time-diffused yield**. Deposited staked yield releases into the staking-vault exchange rate linearly over a window (`diffusion_start`→`diffusion_end`) instead of instantly, so stake/unstake rates are quoted against \_settled* backing (balance minus the not-yet-diffused `pending_yield`). + + The class extends the shared `RealfiSDKV1Family` and reuses its V1_0-semantics tx-builders, overriding only the diffusion seams: the four-field vault datum, the nested settings adapters, `settledVaultBacking`, the `diffusion_end` treasury request, the deposit vault-window update, the `diffusion_end` deposit-order parameter, and the execution validity bounds. The deposit-order builder gains optional `diffusionEnd` / `diffusionDurationMs` parameters (default: instant), preserving call-compatibility with V1_0's deposit builder. `V1_1_Rc1` is wired into version detection (matched first), the create facade, cancel, and the normalized version map. + +### Patch Changes + +- Attach the required unstake indexer metadata (label 55534472) when building treasury-managed unstake order transactions. Previously only the retail unstake builder attached it, so treasury unstake orders were never indexed. + +## 2.4.2 + +### Patch Changes + +- Apply the configured slippage tolerance to default V1 unstake `min_received` values. +- Build payment outputs directly instead of using Blaze payment helpers. + +## 2.4.1 + +### Patch Changes + +- Fix batch execution failing with "assertPaymentsAddress: address payment credential cannot be a script hash" when the protocol's unstaked_yield_pot is a script address. Deposit-yield and unstake-forfeit pot payments are now built as direct outputs (like order payouts) instead of routing through Blaze's payAssets, which rejects script payment credentials. + +## 2.4.0 + +### Minor Changes + +- Attach provenance metadata (label 55534473) to every built order transaction, identifying the SDK source ("partner-sdk" or "internal-sdk") and version. Unstake orders carry both this label and the existing timelock label (55534472) in a single auxiliary-data write. +- API calls now carry a client identifier in the GraphQL request body (`extensions.clientId`), set to `"/"` (e.g. `"partner-sdk/2.3.0"` or `"internal-sdk/2.3.0"`). The RealFi API records the identifier as a structured `clientId` field in request logs. +- Automatic protocol-version detection at order build on the partner facade: every `build*Tx` call re-resolves the live protocol version (~1 provider lookup per build, following the proxy's one-shot NFT) and dispatches to the matching version instance, so the same call keeps building the right version's order across an on-chain protocol upgrade with no re-init. `create` accepts an optional `{ versionDetection?: "per-build" | "at-init", onVersionChange?: (previous, next) => void }` — `"at-init"` opts out and freezes the instance at the version it was created with. Read helpers (`get*`) never re-detect. + +## 2.3.1 + +### Patch Changes + +- Internal refactor: extract a shared `RealfiSDKV1Family` base class from `RealfiSDKV1_0` and `RealfiSDKV1_0Rc1`. The family is generic over the settings and vault-datum statics, with version-overridable seams for vault datum construction (`buildInitialVaultDatum`/`buildUpdatedVaultDatum`), settings access (`settingsConfig`/`settingsRegistry`), and execution validity bounds (`applyExecutionValidityBounds`, no-op today) — groundwork for the upcoming `v1_1_rc1` execution SDK with its 4-field yield-diffusion vault. No public API or behavior change. + +## 2.3.0 + +### Minor Changes + +- The unsupported `./internal` entry is not part of the published package: importing `@realfi-co/realfi-partner-sdk/internal` fails to resolve. The supported surface is the package root and `./tx-builder`. + +## 2.2.0 + +### Minor Changes + +- Add `v1_1_rc1` generated types and a protocol settings admin SDK. `RealfiProtocolSettingsAdmin` (exposed via the `./internal` entry) builds and authorizes governance changes to the on-chain protocol settings — change permissions, config, or logic/registry; shutdown and restore; and migrate to another settings validator — using COSE (CIP-8) signed redeemers collected out-of-band (two-phase: `getSettingsAuthPayloadHash` then `buildChangeX({ signatures })`). + +## 2.1.0 + +### Minor Changes + +- Partner Cardano SDK instances expose their `version` (`"V0_4" | "V1_0" | "V1_0_Rc1"`), making `TRealfiCardanoSDK` a discriminated union — a held instance now narrows to its version-specific surface, replacing 1.x `instanceof` checks. + +## 2.0.4 + +### Patch Changes + +- Export `IRawProxyDatumResult` — the declared return type of `getRawProxyDatum` — from the public entry point. + +## 2.0.3 + +### Patch Changes + +- Preserve surplus order UTxO value in V1.0 execution destination outputs. + +## 2.0.2 + +### Patch Changes + +- Automatically attach required unstake order metadata when building retail unstake order transactions. + +## 2.0.1 + +### Patch Changes + +- Ship `CHANGELOG.md` in the published package. + +## 2.0.0 + +### Major Changes + +- `@realfi-co/realfi-partner-sdk` succeeds `@realfi-co/realfi-sdk` 1.x as the curated partner surface. Deployment, operator, and signing APIs are not exposed; the public entry is the partner facade (`RealfiSDK.cardano` + `RealfiSDK.api`). Also not carried over from 1.x: the direct mint/burn order builders (use the standard mint/redeem order flow), the superseded `V0`–`V0_3` protocol versions and their types, and the root-level shared helpers (the kept set lives under `Utils`). + +### Minor Changes + +- `buildClaimTimelockTx` accepts optional `owner` and `destination`, so a custodian holding a user's key can claim the user's unstaked USDr and deliver it — including accrued yield — to the user. Both default to the connected wallet; funds route to `owner` when only an owner is given. +- Add `RealfiSDK.api` — off-chain GraphQL reads with per-network endpoints built in: order status (`getOrdersByOwner`), stake times and the unstake cooldown slot, yield breakdown, order fees, points balance, and referral reads. No Blaze instance required. diff --git a/modules/realfi-partner-sdk/README.md b/modules/realfi-partner-sdk/README.md new file mode 100644 index 0000000000..ad77a45d9a --- /dev/null +++ b/modules/realfi-partner-sdk/README.md @@ -0,0 +1,9 @@ +# @bitgo/realfi-partner-sdk + +BitGo fork of [`@realfi-co/realfi-partner-sdk`](https://github.com/realfi-co/realfi-partner-sdk) **v2.14.0** +(`latest` / `preview` dist-tag; commit `1a8d3c0605f383e1180f8405075c08e14689ac47`). + +Used by Wallet Platform to build RealFi sUSDr Plutus order transactions on Cardano. +BitGoJS `sdk-coin-ada` only pledge-signs the resulting CBOR — it does not depend on this package. + +See `UPSTREAM.md` for rebase notes. Ticket: SI-1292. diff --git a/modules/realfi-partner-sdk/UPSTREAM.md b/modules/realfi-partner-sdk/UPSTREAM.md new file mode 100644 index 0000000000..8af66d0a54 --- /dev/null +++ b/modules/realfi-partner-sdk/UPSTREAM.md @@ -0,0 +1,42 @@ +# Upstream tracking + +| Field | Value | +| --- | --- | +| Upstream package | `@realfi-co/realfi-partner-sdk` | +| Upstream version | `2.14.0` (`latest` / `preview` dist-tag) | +| Upstream commit | `1a8d3c0605f383e1180f8405075c08e14689ac47` | +| Built at | `2026-08-19T13:16:56.044Z` (from `dist/build-info.json`) | +| BitGo package | `@bitgo/realfi-partner-sdk` (`private: true` until first npm create + publish) | +| Ticket | [SI-1292](https://linear.app/bitgo/issue/SI-1292) | + +CI notes: +- `engines.node` is `>=20` to match BitGoJS (upstream / `@cardano-sdk/core` want `>=22`; WP runtime is 22). +- Root `.yarnrc` sets `ignore-engines true` so Node 20 CI can install those transitive deps (same class of issue as shipping Cardano SDK into this monorepo). +- `private: true` skips `verify-npm-packages` until the package is created on npm; unset before first publish. + +## Related dist-tags (at pin time) + +| Tag | Version | +| --- | --- | +| latest / preview | 2.14.0 | +| mainnet | 2.13.0 | +| preprod | 2.12.3 | + +## Why a fork + +BitGo does not install third-party packages from GitHub Packages into Wallet Platform CI. +This module vendors a pinned RealFi SDK snapshot under `@bitgo/*` (Babylon-style) for npm beta / WP consumption. + +## Rebase checklist + +1. `npm view @realfi-co/realfi-partner-sdk dist-tags --registry=https://npm.pkg.github.com` +2. `npm pack @realfi-co/realfi-partner-sdk@ --registry=https://npm.pkg.github.com` +3. Replace `src/` + `dist/` + upstream `CHANGELOG.md`; refresh this file + `package.json` version/deps. +4. Smoke: construct SDK for preprod, read vault rate, build a stake order tx. +5. PR → merge → publish `@bitgo-beta` → bump WP. + +## Build note + +This snapshot ships **prebuilt** `dist/` from upstream (Babel dual CJS/ESM). Full upstream +build tooling is not in the published tarball; porting a BitGo-native build is follow-up if +we need to patch source frequently. diff --git a/modules/realfi-partner-sdk/dist/build-info.json b/modules/realfi-partner-sdk/dist/build-info.json new file mode 100644 index 0000000000..9ff110c819 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/build-info.json @@ -0,0 +1,5 @@ +{ + "version": "2.14.0", + "commit": "1a8d3c0605f383e1180f8405075c08e14689ac47", + "builtAt": "2026-08-19T13:16:56.044Z" +} diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/index.js b/modules/realfi-partner-sdk/dist/cjs/admin/index.js new file mode 100644 index 0000000000..4cc99bc28a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/index.js @@ -0,0 +1,17 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +var _index = require("./settings/index.js"); +Object.keys(_index).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _index[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _index[key]; + } + }); +}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/index.js.map b/modules/realfi-partner-sdk/dist/cjs/admin/index.js.map new file mode 100644 index 0000000000..f0a34087d7 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_index","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/admin/index.ts"],"sourcesContent":["export * from \"./settings/index.js\";\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,MAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/settings/index.js b/modules/realfi-partner-sdk/dist/cjs/admin/settings/index.js new file mode 100644 index 0000000000..dda8e7409e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/settings/index.js @@ -0,0 +1,39 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +var _types = require("./types.js"); +Object.keys(_types).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _types[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _types[key]; + } + }); +}); +var _utils = require("./utils.js"); +Object.keys(_utils).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _utils[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _utils[key]; + } + }); +}); +var _protocolSettings = require("./protocol-settings.js"); +Object.keys(_protocolSettings).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _protocolSettings[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _protocolSettings[key]; + } + }); +}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/settings/index.js.map b/modules/realfi-partner-sdk/dist/cjs/admin/settings/index.js.map new file mode 100644 index 0000000000..4313b3252d --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/settings/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_types","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_utils","_protocolSettings"],"sources":["../../../../src/admin/settings/index.ts"],"sourcesContent":["export * from \"./types.js\";\nexport * from \"./utils.js\";\nexport * from \"./protocol-settings.js\";\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,MAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,MAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,MAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,MAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAC,MAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,iBAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,iBAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,iBAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAE,iBAAA,CAAAN,GAAA;IAAA;EAAA;AAAA","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/settings/protocol-settings.js b/modules/realfi-partner-sdk/dist/cjs/admin/settings/protocol-settings.js new file mode 100644 index 0000000000..2e1b6b5635 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/settings/protocol-settings.js @@ -0,0 +1,17 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +var _v1_1_rc = require("./v1_1_rc1.js"); +Object.keys(_v1_1_rc).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _v1_1_rc[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _v1_1_rc[key]; + } + }); +}); +//# sourceMappingURL=protocol-settings.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/settings/protocol-settings.js.map b/modules/realfi-partner-sdk/dist/cjs/admin/settings/protocol-settings.js.map new file mode 100644 index 0000000000..9313716223 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/settings/protocol-settings.js.map @@ -0,0 +1 @@ +{"version":3,"file":"protocol-settings.js","names":["_v1_1_rc","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../src/admin/settings/protocol-settings.ts"],"sourcesContent":["// Version-neutral public entrypoint for the protocol settings admin SDK.\n// The current implementation targets the v1.1-era settings shape internally.\nexport * from \"./v1_1_rc1.js\";\n"],"mappings":";;;;;AAEA,IAAAA,QAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,QAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/settings/types.js b/modules/realfi-partner-sdk/dist/cjs/admin/settings/types.js new file mode 100644 index 0000000000..239667a3d0 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/settings/types.js @@ -0,0 +1,6 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/settings/types.js.map b/modules/realfi-partner-sdk/dist/cjs/admin/settings/types.js.map new file mode 100644 index 0000000000..fa96ab6443 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/settings/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","names":[],"sources":["../../../../src/admin/settings/types.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport type { Blaze, Core, TxBuilder, Wallet } from \"@blaze-cardano/sdk\";\n\nimport type {\n GovernanceConfig,\n MultisigScript,\n Permissions,\n ProtocolConfig,\n RegistryV1,\n SettingsV1,\n Tuple_VerificationKey_COSESign1,\n} from \"../../generated-types/v1_1_rc1/index.js\";\n\n/**\n * COSE (CIP-8) signatures authorizing a settings change — `(VerificationKey,\n * COSESign1)` tuples over the auth-payload hash from `getSettingsAuthPayloadHash`.\n * Collected out-of-band (e.g. from hardware wallets), then passed to the build\n * method — mirroring the orchestrator's `buildExecuteOrdersTx({ signatures })`.\n */\nexport type TSettingsSignatures = Tuple_VerificationKey_COSESign1[];\n\nexport interface IProtocolSettingsAdminParams {\n proxyPolicyId: Core.PolicyId;\n governanceConfig: GovernanceConfig;\n enableTrace?: boolean;\n referenceInputs?: {\n settingsRefInput?: Core.TransactionUnspentOutput;\n };\n}\n\nexport interface IProtocolSettingsAdminSource<\n P extends Provider,\n W extends Wallet,\n> {\n readonly blaze: Blaze;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly enableTrace: boolean;\n}\n\nexport interface IProtocolSettingsState {\n proxyUtxo: Core.TransactionUnspentOutput;\n proxyDatum: Core.PlutusData;\n proxyAddress: Core.Address;\n logicHash: Core.ScriptHash;\n settingsData: Core.PlutusData;\n liveSettings?: SettingsV1;\n paymentCredentialHash: string;\n isFrozen: boolean;\n isGovernedByThisValidator: boolean;\n}\n\nexport interface IBuildChangePermissionsTxParams {\n nextPermissions: Permissions;\n signatures: TSettingsSignatures;\n}\n\nexport interface IBuildChangeConfigTxParams {\n nextConfig: ProtocolConfig;\n signatures: TSettingsSignatures;\n}\n\nexport interface IBuildChangeLogicTxParams {\n nextLogicHash?: Core.ScriptHash;\n nextRegistry?: RegistryV1;\n signatures: TSettingsSignatures;\n}\n\n/**\n * A settings change resolved against the current on-chain state — the shared\n * intermediate used to both compute the auth-payload hash and build the tx, so\n * the signed message and the submitted tx always agree.\n */\nexport interface IResolvedSettingsChange {\n redeemer:\n | \"ChangeLogic\"\n | \"ChangePermissions\"\n | \"ChangeConfig\"\n | \"Shutdown\"\n | \"Restore\"\n | \"Migrate\";\n nextLogicHash: Core.ScriptHash;\n nextSettingsData: Core.PlutusData;\n receiverAddress: Core.Address;\n coValidateWith?: {\n rewardAccount: Core.RewardAccount;\n applyWitness(tx: TxBuilder): Promise;\n };\n}\n\nexport interface IBuildMigrateTxParams

{\n destination: IProtocolSettingsAdminInstance;\n /** COSE signatures satisfying this (source) validator's `migrate` permission. */\n signatures: TSettingsSignatures;\n /** COSE signatures satisfying the destination validator's `migrate` permission. */\n destinationSignatures: TSettingsSignatures;\n}\n\n/**\n * The change to authorize, passed to both `getSettingsAuthPayloadHash` (to get\n * the hash to sign) and the matching build method — mirroring how the\n * orchestrator passes the same order inputs to `getSignedPayloadFromOrderInputs`\n * and `buildExecuteOrdersTx`.\n */\nexport type TSettingsChange

=\n | { type: \"ChangePermissions\"; nextPermissions: Permissions }\n | { type: \"ChangeConfig\"; nextConfig: ProtocolConfig }\n | {\n type: \"ChangeLogic\";\n nextLogicHash?: Core.ScriptHash;\n nextRegistry?: RegistryV1;\n }\n | { type: \"Shutdown\" }\n | { type: \"Restore\" }\n | { type: \"Migrate\"; destination: IProtocolSettingsAdminInstance };\n\nexport interface IProtocolSettingsAdminInstance<\n P extends Provider,\n W extends Wallet,\n> {\n readonly blaze: Blaze;\n readonly proxyPolicyId: Core.PolicyId;\n readonly governanceConfig: GovernanceConfig;\n readonly settingsScriptHash: Core.ScriptHash;\n readonly settingsValidatorAddress: Core.Address;\n readonly settingsRewardAccount: Core.RewardAccount;\n readonly enableTrace: boolean;\n\n getSettingsState(): Promise;\n applySettingsWitness(tx: TxBuilder): Promise;\n}\n\nexport type TGovernancePermissionKey =\n | \"logic_change\"\n | \"permission_change\"\n | \"config_change\"\n | \"shutdown\"\n | \"restore\"\n | \"migrate\";\n\nexport interface IParsedProxyDatum {\n logicHash: Core.ScriptHash;\n settingsData: Core.PlutusData;\n}\n\nexport type TPermissionedScript = MultisigScript;\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/settings/utils.js b/modules/realfi-partner-sdk/dist/cjs/admin/settings/utils.js new file mode 100644 index 0000000000..6a3c3c8540 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/settings/utils.js @@ -0,0 +1,138 @@ +"use strict"; + +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.SETTINGS_FROZEN_CONSTR = void 0; +exports.buildRawProxyDatum = buildRawProxyDatum; +exports.buildSettingsAuthPayload = buildSettingsAuthPayload; +exports.createSettingsValidatorAddress = createSettingsValidatorAddress; +exports.createSettingsValidatorScript = createSettingsValidatorScript; +exports.freezeSettingsData = freezeSettingsData; +exports.getSettingsAlternative = getSettingsAlternative; +exports.hashSettingsAuthPayload = hashSettingsAuthPayload; +exports.isFrozenSettingsData = isFrozenSettingsData; +exports.parseLiveSettings = parseLiveSettings; +exports.parseProxyDatumRaw = parseProxyDatumRaw; +exports.serializeSettings = serializeSettings; +exports.serializeSettingsRedeemer = serializeSettingsRedeemer; +exports.serializeSettingsSignedRedeemer = serializeSettingsSignedRedeemer; +exports.unwrapFrozenSettingsData = unwrapFrozenSettingsData; +var _core = require("@blaze-cardano/core"); +var _data = _interopRequireWildcard(require("@blaze-cardano/data")); +var Data = _data; +var _sdk = require("@blaze-cardano/sdk"); +var V1_1Rc1Types = _interopRequireWildcard(require("../../generated-types/v1_1_rc1/index.js")); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } +var SETTINGS_FROZEN_CONSTR = exports.SETTINGS_FROZEN_CONSTR = 1n; +function createSettingsValidatorScript(proxyPolicyId, governanceConfig) { + var enableTrace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + return new V1_1Rc1Types.SettingsProtocolSettingsProtocolSettingsWithdraw(proxyPolicyId, governanceConfig, enableTrace).Script; +} +function createSettingsValidatorAddress(network, proxyPolicyId, governanceConfig) { + var enableTrace = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; + var script = createSettingsValidatorScript(proxyPolicyId, governanceConfig, enableTrace); + return (0, _core.addressFromValidator)(network, script); +} +function parseProxyDatumRaw(datum) { + var constr = datum.asConstrPlutusData(); + if (!constr) { + throw new Error("Proxy datum is not constructor PlutusData"); + } + var fields = constr.getData(); + var logicBytes = fields.get(0).asBoundedBytes(); + if (!logicBytes) { + throw new Error("Proxy datum logic field is not bytes"); + } + return { + logicHash: Buffer.from(logicBytes).toString("hex"), + settingsData: fields.get(1) + }; +} +function buildRawProxyDatum(logicHash, settingsData) { + var fields = new _sdk.Core.PlutusList(); + fields.add(_sdk.Core.PlutusData.newBytes(Buffer.from(logicHash, "hex"))); + fields.add(settingsData); + return _sdk.Core.PlutusData.newConstrPlutusData(new _sdk.Core.ConstrPlutusData(0n, fields)); +} +function getSettingsAlternative(settingsData) { + var constr = settingsData.asConstrPlutusData(); + if (!constr) { + throw new Error("Settings data is not constructor PlutusData"); + } + return constr.getAlternative(); +} +function isFrozenSettingsData(settingsData) { + return getSettingsAlternative(settingsData) === SETTINGS_FROZEN_CONSTR; +} +function freezeSettingsData(settingsData) { + var fields = new _sdk.Core.PlutusList(); + fields.add(settingsData); + return _sdk.Core.PlutusData.newConstrPlutusData(new _sdk.Core.ConstrPlutusData(SETTINGS_FROZEN_CONSTR, fields)); +} +function unwrapFrozenSettingsData(settingsData) { + var constr = settingsData.asConstrPlutusData(); + if (!constr || constr.getAlternative() !== SETTINGS_FROZEN_CONSTR) { + throw new Error("Settings data is not frozen"); + } + return constr.getData().get(0); +} +function parseLiveSettings(settingsData) { + if (isFrozenSettingsData(settingsData)) { + return undefined; + } + return (0, _data.parse)(V1_1Rc1Types.SettingsV1, settingsData); +} +function serializeSettings(settings) { + return Data.serialize(V1_1Rc1Types.SettingsV1, settings); +} +function serializeSettingsRedeemer(redeemer) { + return Data.serialize(V1_1Rc1Types.SettingsRedeemer, redeemer); +} + +/** + * Serialize the `SettingsAuthPayload` the on-chain validator reconstructs from + * the proxy in/out and hashes. `datum` is the resulting proxy output datum + * (`{ logic, settings }`); `nonce` is the proxy input's `OutputReference`. + * + * The `SettingsAuthPayload` schema is emitted into the blueprint via the + * `documentation` validator (see `validators/v1_1_rc1/documentation.ak`), so we + * serialize against the generated type rather than hand-building PlutusData. + */ +function buildSettingsAuthPayload(change, destinationScriptHash, nextLogicHash, nextSettingsData, nonce) { + var payload = { + change: change, + destination: destinationScriptHash, + datum: { + logic: nextLogicHash, + settings: nextSettingsData + }, + nonce: { + transaction_id: nonce.transactionId().toString(), + output_index: nonce.index() + } + }; + return Data.serialize(V1_1Rc1Types.SettingsAuthPayload, payload); +} + +/** + * blake2b-256 of the auth payload's CBOR — the 32-byte message each governance + * signer COSE-signs (CIP-8). Mirrors the on-chain + * `blake2b_256(cbor.serialise(payload))` and the orchestrator's payload hashing. + */ +function hashSettingsAuthPayload(payload) { + return (0, _core.blake2b_256)((0, _core.HexBlob)(payload.toCbor())); +} + +/** + * The withdraw-handler redeemer: the change-class selector plus the COSE + * signatures authorizing it (the payload itself is reconstructed on-chain). + */ +function serializeSettingsSignedRedeemer(change, signatures) { + return Data.serialize(V1_1Rc1Types.SettingsSignedRedeemer, { + change: change, + signatures: signatures + }); +} +//# sourceMappingURL=utils.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/settings/utils.js.map b/modules/realfi-partner-sdk/dist/cjs/admin/settings/utils.js.map new file mode 100644 index 0000000000..058ac7d0ca --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/settings/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","names":["_core","require","_data","_interopRequireWildcard","Data","_sdk","V1_1Rc1Types","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SETTINGS_FROZEN_CONSTR","exports","createSettingsValidatorScript","proxyPolicyId","governanceConfig","enableTrace","arguments","length","undefined","SettingsProtocolSettingsProtocolSettingsWithdraw","Script","createSettingsValidatorAddress","network","script","addressFromValidator","parseProxyDatumRaw","datum","constr","asConstrPlutusData","Error","fields","getData","logicBytes","asBoundedBytes","logicHash","Buffer","from","toString","settingsData","buildRawProxyDatum","Core","PlutusList","add","PlutusData","newBytes","newConstrPlutusData","ConstrPlutusData","getSettingsAlternative","getAlternative","isFrozenSettingsData","freezeSettingsData","unwrapFrozenSettingsData","parseLiveSettings","parse","SettingsV1","serializeSettings","settings","serialize","serializeSettingsRedeemer","redeemer","SettingsRedeemer","buildSettingsAuthPayload","change","destinationScriptHash","nextLogicHash","nextSettingsData","nonce","payload","destination","logic","transaction_id","transactionId","output_index","index","SettingsAuthPayload","hashSettingsAuthPayload","blake2b_256","HexBlob","toCbor","serializeSettingsSignedRedeemer","signatures","SettingsSignedRedeemer"],"sources":["../../../../src/admin/settings/utils.ts"],"sourcesContent":["import {\n addressFromValidator,\n blake2b_256,\n HexBlob,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse } from \"@blaze-cardano/data\";\nimport { Core } from \"@blaze-cardano/sdk\";\n\nimport * as V1_1Rc1Types from \"../../generated-types/v1_1_rc1/index.js\";\nimport type {\n GovernanceConfig,\n SettingsV1,\n Tuple_VerificationKey_COSESign1,\n} from \"../../generated-types/v1_1_rc1/index.js\";\nimport type { IParsedProxyDatum } from \"./types.js\";\n\nexport const SETTINGS_FROZEN_CONSTR = 1n;\n\nexport function createSettingsValidatorScript(\n proxyPolicyId: Core.PolicyId,\n governanceConfig: GovernanceConfig,\n enableTrace = false,\n): Core.Script {\n return new V1_1Rc1Types.SettingsProtocolSettingsProtocolSettingsWithdraw(\n proxyPolicyId,\n governanceConfig,\n enableTrace,\n ).Script;\n}\n\nexport function createSettingsValidatorAddress(\n network: Core.NetworkId,\n proxyPolicyId: Core.PolicyId,\n governanceConfig: GovernanceConfig,\n enableTrace = false,\n): Core.Address {\n const script = createSettingsValidatorScript(\n proxyPolicyId,\n governanceConfig,\n enableTrace,\n );\n return addressFromValidator(network, script);\n}\n\nexport function parseProxyDatumRaw(datum: Core.PlutusData): IParsedProxyDatum {\n const constr = datum.asConstrPlutusData();\n if (!constr) {\n throw new Error(\"Proxy datum is not constructor PlutusData\");\n }\n\n const fields = constr.getData();\n const logicBytes = fields.get(0).asBoundedBytes();\n if (!logicBytes) {\n throw new Error(\"Proxy datum logic field is not bytes\");\n }\n\n return {\n logicHash: Buffer.from(logicBytes).toString(\"hex\") as Core.ScriptHash,\n settingsData: fields.get(1),\n };\n}\n\nexport function buildRawProxyDatum(\n logicHash: Core.ScriptHash,\n settingsData: Core.PlutusData,\n): Core.PlutusData {\n const fields = new Core.PlutusList();\n fields.add(Core.PlutusData.newBytes(Buffer.from(logicHash, \"hex\")));\n fields.add(settingsData);\n return Core.PlutusData.newConstrPlutusData(\n new Core.ConstrPlutusData(0n, fields),\n );\n}\n\nexport function getSettingsAlternative(settingsData: Core.PlutusData): bigint {\n const constr = settingsData.asConstrPlutusData();\n if (!constr) {\n throw new Error(\"Settings data is not constructor PlutusData\");\n }\n return constr.getAlternative();\n}\n\nexport function isFrozenSettingsData(settingsData: Core.PlutusData): boolean {\n return getSettingsAlternative(settingsData) === SETTINGS_FROZEN_CONSTR;\n}\n\nexport function freezeSettingsData(\n settingsData: Core.PlutusData,\n): Core.PlutusData {\n const fields = new Core.PlutusList();\n fields.add(settingsData);\n return Core.PlutusData.newConstrPlutusData(\n new Core.ConstrPlutusData(SETTINGS_FROZEN_CONSTR, fields),\n );\n}\n\nexport function unwrapFrozenSettingsData(\n settingsData: Core.PlutusData,\n): Core.PlutusData {\n const constr = settingsData.asConstrPlutusData();\n if (!constr || constr.getAlternative() !== SETTINGS_FROZEN_CONSTR) {\n throw new Error(\"Settings data is not frozen\");\n }\n return constr.getData().get(0);\n}\n\nexport function parseLiveSettings(\n settingsData: Core.PlutusData,\n): SettingsV1 | undefined {\n if (isFrozenSettingsData(settingsData)) {\n return undefined;\n }\n return parse(V1_1Rc1Types.SettingsV1, settingsData) as SettingsV1;\n}\n\nexport function serializeSettings(settings: SettingsV1): Core.PlutusData {\n return Data.serialize(V1_1Rc1Types.SettingsV1, settings);\n}\n\nexport function serializeSettingsRedeemer(\n redeemer: V1_1Rc1Types.SettingsRedeemer,\n): Core.PlutusData {\n return Data.serialize(V1_1Rc1Types.SettingsRedeemer, redeemer);\n}\n\n/**\n * Serialize the `SettingsAuthPayload` the on-chain validator reconstructs from\n * the proxy in/out and hashes. `datum` is the resulting proxy output datum\n * (`{ logic, settings }`); `nonce` is the proxy input's `OutputReference`.\n *\n * The `SettingsAuthPayload` schema is emitted into the blueprint via the\n * `documentation` validator (see `validators/v1_1_rc1/documentation.ak`), so we\n * serialize against the generated type rather than hand-building PlutusData.\n */\nexport function buildSettingsAuthPayload(\n change: V1_1Rc1Types.SettingsRedeemer,\n destinationScriptHash: Core.ScriptHash,\n nextLogicHash: Core.ScriptHash,\n nextSettingsData: Core.PlutusData,\n nonce: Core.TransactionInput,\n): Core.PlutusData {\n const payload: V1_1Rc1Types.SettingsAuthPayload = {\n change,\n destination: destinationScriptHash,\n datum: { logic: nextLogicHash, settings: nextSettingsData },\n nonce: {\n transaction_id: nonce.transactionId().toString(),\n output_index: nonce.index(),\n },\n };\n return Data.serialize(V1_1Rc1Types.SettingsAuthPayload, payload);\n}\n\n/**\n * blake2b-256 of the auth payload's CBOR — the 32-byte message each governance\n * signer COSE-signs (CIP-8). Mirrors the on-chain\n * `blake2b_256(cbor.serialise(payload))` and the orchestrator's payload hashing.\n */\nexport function hashSettingsAuthPayload(payload: Core.PlutusData): string {\n return blake2b_256(HexBlob(payload.toCbor()));\n}\n\n/**\n * The withdraw-handler redeemer: the change-class selector plus the COSE\n * signatures authorizing it (the payload itself is reconstructed on-chain).\n */\nexport function serializeSettingsSignedRedeemer(\n change: V1_1Rc1Types.SettingsRedeemer,\n signatures: Tuple_VerificationKey_COSESign1[],\n): Core.PlutusData {\n return Data.serialize(V1_1Rc1Types.SettingsSignedRedeemer, {\n change,\n signatures,\n });\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/settings/v1_1_rc1.js b/modules/realfi-partner-sdk/dist/cjs/admin/settings/v1_1_rc1.js new file mode 100644 index 0000000000..69a7f04910 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/settings/v1_1_rc1.js @@ -0,0 +1,587 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.RealfiProtocolSettingsAdmin = void 0; +var _core = require("@blaze-cardano/core"); +var Data = _interopRequireWildcard(require("@blaze-cardano/data")); +var _sdk = require("@blaze-cardano/sdk"); +var _index = require("../../sdk/shared/index.js"); +var _utils = require("./utils.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +// Internal implementation for the current v1.1-era settings layout. +// Public consumers should import the version-neutral RealfiProtocolSettingsAdmin +// from admin/settings or the package root. +var RealfiProtocolSettingsAdmin = exports.RealfiProtocolSettingsAdmin = /*#__PURE__*/function () { + function RealfiProtocolSettingsAdmin(blaze, params) { + var _params$enableTrace, _params$referenceInpu; + _classCallCheck(this, RealfiProtocolSettingsAdmin); + _defineProperty(this, "blaze", void 0); + _defineProperty(this, "proxyPolicyId", void 0); + _defineProperty(this, "governanceConfig", void 0); + _defineProperty(this, "settingsScript", void 0); + _defineProperty(this, "settingsScriptHash", void 0); + _defineProperty(this, "settingsValidatorAddress", void 0); + _defineProperty(this, "settingsRewardAccount", void 0); + _defineProperty(this, "enableTrace", void 0); + _defineProperty(this, "settingsRefInput", void 0); + this.blaze = blaze; + this.proxyPolicyId = params.proxyPolicyId; + this.governanceConfig = params.governanceConfig; + this.enableTrace = (_params$enableTrace = params.enableTrace) !== null && _params$enableTrace !== void 0 ? _params$enableTrace : false; + this.settingsRefInput = (_params$referenceInpu = params.referenceInputs) === null || _params$referenceInpu === void 0 ? void 0 : _params$referenceInpu.settingsRefInput; + this.settingsScript = (0, _utils.createSettingsValidatorScript)(this.proxyPolicyId, this.governanceConfig, this.enableTrace); + this.settingsScriptHash = this.settingsScript.hash(); + this.settingsValidatorAddress = (0, _core.addressFromValidator)(this.blaze.provider.network, this.settingsScript); + this.settingsRewardAccount = (0, _index.rewardAccountFromScript)(this.settingsScript, this.blaze.provider.network); + } + return _createClass(RealfiProtocolSettingsAdmin, [{ + key: "deploySettingsValidator", + value: function () { + var _deploySettingsValidator = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + return _context.a(2, (0, _index.deployScript)(this.blaze, this.settingsScript)); + } + }, _callee, this); + })); + function deploySettingsValidator() { + return _deploySettingsValidator.apply(this, arguments); + } + return deploySettingsValidator; + }() + }, { + key: "registerSettingsStake", + value: function registerSettingsStake() { + return this.blaze.newTransaction().addRegisterStake((0, _index.credentialFromScript)(this.settingsScript)); + } + }, { + key: "getSettingsState", + value: function () { + var _getSettingsState = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() { + var _proxyAddress$getProp; + var proxyAssetId, _yield$readSingletonD, proxyUtxo, proxyDatum, _parseProxyDatumRaw, logicHash, settingsData, proxyAddress, paymentCredentialHash, isFrozen; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + proxyAssetId = _sdk.Core.AssetId(this.proxyPolicyId); + _context2.n = 1; + return (0, _index.readSingletonDatum)(this.blaze.provider, proxyAssetId); + case 1: + _yield$readSingletonD = _context2.v; + proxyUtxo = _yield$readSingletonD.utxo; + proxyDatum = _yield$readSingletonD.datum; + _parseProxyDatumRaw = (0, _utils.parseProxyDatumRaw)(proxyDatum), logicHash = _parseProxyDatumRaw.logicHash, settingsData = _parseProxyDatumRaw.settingsData; + proxyAddress = proxyUtxo.output().address(); + paymentCredentialHash = (_proxyAddress$getProp = proxyAddress.getProps().paymentPart) === null || _proxyAddress$getProp === void 0 ? void 0 : _proxyAddress$getProp.hash; + if (paymentCredentialHash) { + _context2.n = 2; + break; + } + throw new Error("Proxy UTxO address has no payment credential"); + case 2: + isFrozen = (0, _utils.isFrozenSettingsData)(settingsData); + return _context2.a(2, { + proxyUtxo: proxyUtxo, + proxyDatum: proxyDatum, + proxyAddress: proxyAddress, + logicHash: logicHash, + settingsData: settingsData, + liveSettings: isFrozen ? undefined : (0, _utils.parseLiveSettings)(settingsData), + paymentCredentialHash: paymentCredentialHash, + isFrozen: isFrozen, + isGovernedByThisValidator: paymentCredentialHash === this.settingsScriptHash + }); + } + }, _callee2, this); + })); + function getSettingsState() { + return _getSettingsState.apply(this, arguments); + } + return getSettingsState; + }() + }, { + key: "buildDepositProxyTx", + value: function () { + var _buildDepositProxyTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() { + var _state$proxyAddress$g; + var state; + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + _context3.n = 1; + return this.getSettingsState(); + case 1: + state = _context3.v; + if (!state.isGovernedByThisValidator) { + _context3.n = 2; + break; + } + throw new Error("Proxy NFT is already locked at this settings validator"); + case 2: + if (!(((_state$proxyAddress$g = state.proxyAddress.getProps().paymentPart) === null || _state$proxyAddress$g === void 0 ? void 0 : _state$proxyAddress$g.type) === _sdk.Core.CredentialType.ScriptHash)) { + _context3.n = 3; + break; + } + throw new Error("Proxy NFT is currently held by another script. Move it with the current controller before depositing into protocol settings."); + case 3: + return _context3.a(2, (0, _index.lockOrPayAssets)(this.blaze.newTransaction().addInput(state.proxyUtxo), this.settingsValidatorAddress, + // Same datum, but a script address is wider than the wallet address the + // proxy is moving from, so the floor can still rise here. + this.valueWithDatumMinAda(this.settingsValidatorAddress, state.proxyUtxo.output().amount(), state.proxyDatum), state.proxyDatum)); + } + }, _callee3, this); + })); + function buildDepositProxyTx() { + return _buildDepositProxyTx.apply(this, arguments); + } + return buildDepositProxyTx; + }() + /** + * Compute the 32-byte auth-payload hash the governance keys must COSE-sign for + * `change`, against the current on-chain proxy state. Two-phase, mirroring the + * orchestrator's `getSignedPayloadFromOrderInputs`: get this hash, collect the + * signatures out-of-band, then pass them to the matching build method. The + * proxy UTxO must be unchanged between the two calls (it is the nonce). + */ + }, { + key: "getSettingsAuthPayloadHash", + value: (function () { + var _getSettingsAuthPayloadHash = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(change) { + var state, resolved; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.n) { + case 0: + _context4.n = 1; + return this.requireGovernedState(); + case 1: + state = _context4.v; + resolved = this.resolveChange(state, change); + return _context4.a(2, (0, _utils.hashSettingsAuthPayload)((0, _utils.buildSettingsAuthPayload)(resolved.redeemer, this.scriptHashOfAddress(resolved.receiverAddress), resolved.nextLogicHash, resolved.nextSettingsData, state.proxyUtxo.input()))); + } + }, _callee4, this); + })); + function getSettingsAuthPayloadHash(_x) { + return _getSettingsAuthPayloadHash.apply(this, arguments); + } + return getSettingsAuthPayloadHash; + }()) + }, { + key: "buildChangePermissionsTx", + value: function () { + var _buildChangePermissionsTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(params) { + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + return _context5.a(2, this.buildChange({ + type: "ChangePermissions", + nextPermissions: params.nextPermissions + }, params.signatures)); + } + }, _callee5, this); + })); + function buildChangePermissionsTx(_x2) { + return _buildChangePermissionsTx.apply(this, arguments); + } + return buildChangePermissionsTx; + }() + }, { + key: "buildChangeConfigTx", + value: function () { + var _buildChangeConfigTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(params) { + return _regenerator().w(function (_context6) { + while (1) switch (_context6.n) { + case 0: + return _context6.a(2, this.buildChange({ + type: "ChangeConfig", + nextConfig: params.nextConfig + }, params.signatures)); + } + }, _callee6, this); + })); + function buildChangeConfigTx(_x3) { + return _buildChangeConfigTx.apply(this, arguments); + } + return buildChangeConfigTx; + }() + }, { + key: "buildChangeLogicTx", + value: function () { + var _buildChangeLogicTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(params) { + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + return _context7.a(2, this.buildChange({ + type: "ChangeLogic", + nextLogicHash: params.nextLogicHash, + nextRegistry: params.nextRegistry + }, params.signatures)); + } + }, _callee7, this); + })); + function buildChangeLogicTx(_x4) { + return _buildChangeLogicTx.apply(this, arguments); + } + return buildChangeLogicTx; + }() + }, { + key: "buildShutdownTx", + value: function () { + var _buildShutdownTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(params) { + return _regenerator().w(function (_context8) { + while (1) switch (_context8.n) { + case 0: + return _context8.a(2, this.buildChange({ + type: "Shutdown" + }, params.signatures)); + } + }, _callee8, this); + })); + function buildShutdownTx(_x5) { + return _buildShutdownTx.apply(this, arguments); + } + return buildShutdownTx; + }() + }, { + key: "buildRestoreTx", + value: function () { + var _buildRestoreTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(params) { + return _regenerator().w(function (_context9) { + while (1) switch (_context9.n) { + case 0: + return _context9.a(2, this.buildChange({ + type: "Restore" + }, params.signatures)); + } + }, _callee9, this); + })); + function buildRestoreTx(_x6) { + return _buildRestoreTx.apply(this, arguments); + } + return buildRestoreTx; + }() + }, { + key: "buildMigrateTx", + value: function () { + var _buildMigrateTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(params) { + return _regenerator().w(function (_context0) { + while (1) switch (_context0.n) { + case 0: + return _context0.a(2, this.buildChange({ + type: "Migrate", + destination: params.destination + }, params.signatures, params.destinationSignatures)); + } + }, _callee0, this); + })); + function buildMigrateTx(_x7) { + return _buildMigrateTx.apply(this, arguments); + } + return buildMigrateTx; + }() + /** + * Resolve a change against the current state into the concrete redeemer + + * resulting proxy output (logic, canonical settings, destination). Shared by + * `getSettingsAuthPayloadHash` and `buildChange` so the signed hash and the + * submitted tx always describe the same resulting state. Settings read from + * chain are canonicalized through the typed schema (see `canonicalizeSettings`) + * so blaze's encoding matches the validator's `cbor.serialise`. + */ + }, { + key: "resolveChange", + value: function resolveChange(state, change) { + var here = this.settingsValidatorAddress; + switch (change.type) { + case "ChangePermissions": + { + var current = this.requireLive(state); + var next = _objectSpread(_objectSpread({}, current), {}, { + permissions: change.nextPermissions + }); + return { + redeemer: "ChangePermissions", + nextLogicHash: state.logicHash, + nextSettingsData: (0, _utils.serializeSettings)(next), + receiverAddress: here + }; + } + case "ChangeConfig": + { + var _current = this.requireLive(state); + var _next2 = _objectSpread(_objectSpread({}, _current), {}, { + config: change.nextConfig + }); + return { + redeemer: "ChangeConfig", + nextLogicHash: state.logicHash, + nextSettingsData: (0, _utils.serializeSettings)(_next2), + receiverAddress: here + }; + } + case "ChangeLogic": + { + var _change$nextLogicHash, _change$nextRegistry; + var _current2 = this.requireLive(state); + var nextLogicHash = (_change$nextLogicHash = change.nextLogicHash) !== null && _change$nextLogicHash !== void 0 ? _change$nextLogicHash : state.logicHash; + var nextRegistry = (_change$nextRegistry = change.nextRegistry) !== null && _change$nextRegistry !== void 0 ? _change$nextRegistry : _current2.registry; + if (nextLogicHash === state.logicHash && JSON.stringify(nextRegistry) === JSON.stringify(_current2.registry)) { + throw new Error("ChangeLogic requires a logic or registry change"); + } + return { + redeemer: "ChangeLogic", + nextLogicHash: nextLogicHash, + nextSettingsData: (0, _utils.serializeSettings)(_objectSpread(_objectSpread({}, _current2), {}, { + registry: nextRegistry + })), + receiverAddress: here + }; + } + case "Shutdown": + { + if (state.isFrozen) { + throw new Error("Settings are already frozen"); + } + return { + redeemer: "Shutdown", + nextLogicHash: state.logicHash, + nextSettingsData: (0, _utils.freezeSettingsData)(state.settingsData), + receiverAddress: here + }; + } + case "Restore": + { + if (!state.isFrozen) { + throw new Error("Settings are not frozen"); + } + return { + redeemer: "Restore", + nextLogicHash: state.logicHash, + nextSettingsData: this.canonicalizeSettings((0, _utils.unwrapFrozenSettingsData)(state.settingsData)), + receiverAddress: here + }; + } + case "Migrate": + { + var destination = change.destination; + if (destination.settingsScriptHash === this.settingsScriptHash) { + throw new Error("Migrate requires a different destination settings validator"); + } + return { + redeemer: "Migrate", + nextLogicHash: state.logicHash, + nextSettingsData: this.canonicalizeSettings(state.settingsData), + receiverAddress: destination.settingsValidatorAddress, + coValidateWith: { + rewardAccount: destination.settingsRewardAccount, + applyWitness: destination.applySettingsWitness.bind(destination) + } + }; + } + } + } + }, { + key: "requireLive", + value: function requireLive(state) { + if (state.isFrozen || !state.liveSettings) { + throw new Error("Settings are not in a live state"); + } + return state.liveSettings; + } + + /** + * Re-serialize live settings through the typed schema so the CBOR matches the + * validator's `cbor.serialise` of the parsed output datum. Settings read from + * chain and re-embedded opaquely (Restore's unwrap, Migrate's passthrough) + * otherwise don't. Frozen settings aren't a `SettingsV1`, so pass through. + */ + }, { + key: "canonicalizeSettings", + value: function canonicalizeSettings(settingsData) { + var live = (0, _utils.parseLiveSettings)(settingsData); + return live ? (0, _utils.serializeSettings)(live) : settingsData; + } + }, { + key: "buildChange", + value: function () { + var _buildChange = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(change, signatures, destinationSignatures) { + var state, resolved, tx, nextDatum; + return _regenerator().w(function (_context1) { + while (1) switch (_context1.n) { + case 0: + _context1.n = 1; + return this.requireGovernedState(); + case 1: + state = _context1.v; + resolved = this.resolveChange(state, change); + tx = this.blaze.newTransaction(); + tx.addInput(state.proxyUtxo, Data.Void()); + tx.addWithdrawal(this.settingsRewardAccount, 0n, (0, _utils.serializeSettingsSignedRedeemer)(resolved.redeemer, signatures)); + _context1.n = 2; + return this.applySettingsWitness(tx); + case 2: + if (!resolved.coValidateWith) { + _context1.n = 4; + break; + } + if (destinationSignatures) { + _context1.n = 3; + break; + } + throw new Error("Migrate requires destinationSignatures for the destination validator"); + case 3: + // The destination validator independently verifies signatures over the + // same auth-payload hash against its own governance config. + tx.addWithdrawal(resolved.coValidateWith.rewardAccount, 0n, (0, _utils.serializeSettingsSignedRedeemer)("Migrate", destinationSignatures)); + _context1.n = 4; + return resolved.coValidateWith.applyWitness(tx); + case 4: + nextDatum = (0, _utils.buildRawProxyDatum)(resolved.nextLogicHash, resolved.nextSettingsData); + return _context1.a(2, (0, _index.lockOrPayAssets)(tx, resolved.receiverAddress, this.valueWithDatumMinAda(resolved.receiverAddress, state.proxyUtxo.output().amount(), nextDatum), nextDatum)); + } + }, _callee1, this); + })); + function buildChange(_x8, _x9, _x0) { + return _buildChange.apply(this, arguments); + } + return buildChange; + }() + /** + * The value to put on a settings output carrying `datum`, topped up to the + * min-ADA floor for that datum when the incoming coin no longer covers it. + * + * A settings edit can grow the datum (appending a reserve asset, a larger + * registry), and the coin comes from the UTxO being spent, which was sized + * for the *previous* datum. `TxBuilder` would raise an under-funded output to + * the floor on its way out, but that happens after balancing has already + * decided what to draw from the wallet, so the bump is never funded and the + * built transaction is short by exactly that amount. Reserving it here means + * `complete()` treats the growth as an ordinary larger payment from the first + * iteration. + * + * The floor is recomputed after each raise: a larger coin is itself a few + * bytes wider on the wire, which can lift the floor again. + */ + }, { + key: "valueWithDatumMinAda", + value: function valueWithDatumMinAda(address, value, datum) { + var result = value; + // Converges in one or two passes; the bound just refuses to spin. + for (var i = 0; i < 4; i++) { + var output = new _sdk.Core.TransactionOutput(address, result); + output.setDatum(_sdk.Core.Datum.newInlineData(datum)); + var floor = (0, _sdk.calculateMinAda)(output, this.blaze.params.coinsPerUtxoByte); + if (result.coin() >= floor) return result; + result = new _sdk.Core.Value(floor, result.multiasset()); + } + return result; + } + + /** The payment-credential script hash of a settings validator address. */ + }, { + key: "scriptHashOfAddress", + value: function scriptHashOfAddress(address) { + var paymentPart = address.getProps().paymentPart; + if (!paymentPart || paymentPart.type !== _sdk.Core.CredentialType.ScriptHash) { + throw new Error("Governed settings output must be locked at a script (validator) address"); + } + return paymentPart.hash; + } + }, { + key: "requireGovernedState", + value: function () { + var _requireGovernedState = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10() { + var state; + return _regenerator().w(function (_context10) { + while (1) switch (_context10.n) { + case 0: + _context10.n = 1; + return this.getSettingsState(); + case 1: + state = _context10.v; + if (state.isGovernedByThisValidator) { + _context10.n = 2; + break; + } + throw new Error("Proxy NFT is not currently governed by this settings validator. Deposit it first."); + case 2: + return _context10.a(2, state); + } + }, _callee10, this); + })); + function requireGovernedState() { + return _requireGovernedState.apply(this, arguments); + } + return requireGovernedState; + }() + }, { + key: "applySettingsWitness", + value: function () { + var _applySettingsWitness = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(tx) { + var refInput; + return _regenerator().w(function (_context11) { + while (1) switch (_context11.n) { + case 0: + if (!this.settingsRefInput) { + _context11.n = 1; + break; + } + tx.addReferenceInput(this.settingsRefInput); + return _context11.a(2); + case 1: + _context11.n = 2; + return this.blaze.provider.resolveScriptRef(this.settingsScriptHash); + case 2: + refInput = _context11.v; + if (!refInput) { + _context11.n = 3; + break; + } + this.settingsRefInput = refInput; + tx.addReferenceInput(refInput); + return _context11.a(2); + case 3: + tx.provideScript(this.settingsScript); + case 4: + return _context11.a(2); + } + }, _callee11, this); + })); + function applySettingsWitness(_x1) { + return _applySettingsWitness.apply(this, arguments); + } + return applySettingsWitness; + }() + }], [{ + key: "create", + value: function create(blaze, params) { + return new RealfiProtocolSettingsAdmin(blaze, params); + } + }, { + key: "fromProtocolSdk", + value: function fromProtocolSdk(sdk, params) { + var _params$enableTrace2; + return new RealfiProtocolSettingsAdmin(sdk.blaze, { + proxyPolicyId: sdk.oneShotPolicyId, + governanceConfig: params.governanceConfig, + enableTrace: (_params$enableTrace2 = params.enableTrace) !== null && _params$enableTrace2 !== void 0 ? _params$enableTrace2 : sdk.enableTrace, + referenceInputs: params.referenceInputs + }); + } + }]); +}(); +//# sourceMappingURL=v1_1_rc1.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/admin/settings/v1_1_rc1.js.map b/modules/realfi-partner-sdk/dist/cjs/admin/settings/v1_1_rc1.js.map new file mode 100644 index 0000000000..185dc9ef4a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/admin/settings/v1_1_rc1.js.map @@ -0,0 +1 @@ +{"version":3,"file":"v1_1_rc1.js","names":["_core","require","Data","_interopRequireWildcard","_sdk","_index","_utils","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Symbol","iterator","constructor","prototype","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_regenerator","toStringTag","c","Generator","u","create","_regeneratorDefine2","p","y","G","v","a","d","bind","l","TypeError","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_toPrimitive","toPrimitive","String","Number","RealfiProtocolSettingsAdmin","exports","blaze","params","_params$enableTrace","_params$referenceInpu","proxyPolicyId","governanceConfig","enableTrace","settingsRefInput","referenceInputs","settingsScript","createSettingsValidatorScript","settingsScriptHash","hash","settingsValidatorAddress","addressFromValidator","provider","network","settingsRewardAccount","rewardAccountFromScript","_deploySettingsValidator","_callee","_context","deployScript","deploySettingsValidator","registerSettingsStake","newTransaction","addRegisterStake","credentialFromScript","_getSettingsState","_callee2","_proxyAddress$getProp","proxyAssetId","_yield$readSingletonD","proxyUtxo","proxyDatum","_parseProxyDatumRaw","logicHash","settingsData","proxyAddress","paymentCredentialHash","isFrozen","_context2","Core","AssetId","readSingletonDatum","utxo","datum","parseProxyDatumRaw","output","address","getProps","paymentPart","Error","isFrozenSettingsData","liveSettings","undefined","parseLiveSettings","isGovernedByThisValidator","getSettingsState","_buildDepositProxyTx","_callee3","_state$proxyAddress$g","state","_context3","type","CredentialType","ScriptHash","lockOrPayAssets","addInput","valueWithDatumMinAda","amount","buildDepositProxyTx","_getSettingsAuthPayloadHash","_callee4","change","resolved","_context4","requireGovernedState","resolveChange","hashSettingsAuthPayload","buildSettingsAuthPayload","redeemer","scriptHashOfAddress","receiverAddress","nextLogicHash","nextSettingsData","input","getSettingsAuthPayloadHash","_x","_buildChangePermissionsTx","_callee5","_context5","buildChange","nextPermissions","signatures","buildChangePermissionsTx","_x2","_buildChangeConfigTx","_callee6","_context6","nextConfig","buildChangeConfigTx","_x3","_buildChangeLogicTx","_callee7","_context7","nextRegistry","buildChangeLogicTx","_x4","_buildShutdownTx","_callee8","_context8","buildShutdownTx","_x5","_buildRestoreTx","_callee9","_context9","buildRestoreTx","_x6","_buildMigrateTx","_callee0","_context0","destination","destinationSignatures","buildMigrateTx","_x7","here","current","requireLive","next","permissions","serializeSettings","config","_change$nextLogicHash","_change$nextRegistry","registry","JSON","stringify","freezeSettingsData","canonicalizeSettings","unwrapFrozenSettingsData","coValidateWith","rewardAccount","applyWitness","applySettingsWitness","live","_buildChange","_callee1","tx","nextDatum","_context1","Void","addWithdrawal","serializeSettingsSignedRedeemer","buildRawProxyDatum","_x8","_x9","_x0","result","TransactionOutput","setDatum","Datum","newInlineData","floor","calculateMinAda","coinsPerUtxoByte","coin","Value","multiasset","_requireGovernedState","_callee10","_context10","_applySettingsWitness","_callee11","refInput","_context11","addReferenceInput","resolveScriptRef","provideScript","_x1","fromProtocolSdk","sdk","_params$enableTrace2","oneShotPolicyId"],"sources":["../../../../src/admin/settings/v1_1_rc1.ts"],"sourcesContent":["import { addressFromValidator } from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n calculateMinAda,\n Core,\n type TxBuilder,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport type {\n GovernanceConfig,\n SettingsV1,\n} from \"../../generated-types/v1_1_rc1/index.js\";\nimport {\n credentialFromScript,\n deployScript,\n lockOrPayAssets,\n readSingletonDatum,\n rewardAccountFromScript,\n} from \"../../sdk/shared/index.js\";\nimport type {\n IBuildChangeConfigTxParams,\n IBuildChangeLogicTxParams,\n IBuildChangePermissionsTxParams,\n IBuildMigrateTxParams,\n IProtocolSettingsAdminInstance,\n IProtocolSettingsAdminParams,\n IProtocolSettingsAdminSource,\n IProtocolSettingsState,\n IResolvedSettingsChange,\n TSettingsChange,\n TSettingsSignatures,\n} from \"./types.js\";\nimport {\n buildRawProxyDatum,\n buildSettingsAuthPayload,\n createSettingsValidatorScript,\n freezeSettingsData,\n hashSettingsAuthPayload,\n isFrozenSettingsData,\n parseLiveSettings,\n parseProxyDatumRaw,\n serializeSettings,\n serializeSettingsSignedRedeemer,\n unwrapFrozenSettingsData,\n} from \"./utils.js\";\n\n// Internal implementation for the current v1.1-era settings layout.\n// Public consumers should import the version-neutral RealfiProtocolSettingsAdmin\n// from admin/settings or the package root.\nexport class RealfiProtocolSettingsAdmin<\n P extends Provider,\n W extends Wallet,\n> implements IProtocolSettingsAdminInstance {\n readonly blaze: Blaze;\n readonly proxyPolicyId: Core.PolicyId;\n readonly governanceConfig: GovernanceConfig;\n readonly settingsScript: Core.Script;\n readonly settingsScriptHash: Core.ScriptHash;\n readonly settingsValidatorAddress: Core.Address;\n readonly settingsRewardAccount: Core.RewardAccount;\n readonly enableTrace: boolean;\n\n private settingsRefInput?: Core.TransactionUnspentOutput;\n\n private constructor(\n blaze: Blaze,\n params: IProtocolSettingsAdminParams,\n ) {\n this.blaze = blaze;\n this.proxyPolicyId = params.proxyPolicyId;\n this.governanceConfig = params.governanceConfig;\n this.enableTrace = params.enableTrace ?? false;\n this.settingsRefInput = params.referenceInputs?.settingsRefInput;\n\n this.settingsScript = createSettingsValidatorScript(\n this.proxyPolicyId,\n this.governanceConfig,\n this.enableTrace,\n );\n this.settingsScriptHash = this.settingsScript.hash();\n this.settingsValidatorAddress = addressFromValidator(\n this.blaze.provider.network,\n this.settingsScript,\n );\n this.settingsRewardAccount = rewardAccountFromScript(\n this.settingsScript,\n this.blaze.provider.network,\n );\n }\n\n static create

(\n blaze: Blaze,\n params: IProtocolSettingsAdminParams,\n ): RealfiProtocolSettingsAdmin {\n return new RealfiProtocolSettingsAdmin(blaze, params);\n }\n\n static fromProtocolSdk

(\n sdk: IProtocolSettingsAdminSource,\n params: Omit<\n IProtocolSettingsAdminParams,\n \"proxyPolicyId\" | \"enableTrace\"\n > & {\n enableTrace?: boolean;\n },\n ): RealfiProtocolSettingsAdmin {\n return new RealfiProtocolSettingsAdmin(sdk.blaze, {\n proxyPolicyId: sdk.oneShotPolicyId,\n governanceConfig: params.governanceConfig,\n enableTrace: params.enableTrace ?? sdk.enableTrace,\n referenceInputs: params.referenceInputs,\n });\n }\n\n async deploySettingsValidator(): Promise {\n return deployScript(this.blaze, this.settingsScript);\n }\n\n registerSettingsStake(): TxBuilder {\n return this.blaze\n .newTransaction()\n .addRegisterStake(credentialFromScript(this.settingsScript));\n }\n\n async getSettingsState(): Promise {\n const proxyAssetId = Core.AssetId(this.proxyPolicyId);\n const { utxo: proxyUtxo, datum: proxyDatum } = await readSingletonDatum(\n this.blaze.provider,\n proxyAssetId,\n );\n\n const { logicHash, settingsData } = parseProxyDatumRaw(proxyDatum);\n const proxyAddress = proxyUtxo.output().address();\n const paymentCredentialHash = proxyAddress.getProps().paymentPart?.hash;\n if (!paymentCredentialHash) {\n throw new Error(\"Proxy UTxO address has no payment credential\");\n }\n\n const isFrozen = isFrozenSettingsData(settingsData);\n return {\n proxyUtxo,\n proxyDatum,\n proxyAddress,\n logicHash,\n settingsData,\n liveSettings: isFrozen ? undefined : parseLiveSettings(settingsData),\n paymentCredentialHash,\n isFrozen,\n isGovernedByThisValidator:\n paymentCredentialHash === this.settingsScriptHash,\n };\n }\n\n async buildDepositProxyTx(): Promise {\n const state = await this.getSettingsState();\n\n if (state.isGovernedByThisValidator) {\n throw new Error(\"Proxy NFT is already locked at this settings validator\");\n }\n\n if (\n state.proxyAddress.getProps().paymentPart?.type ===\n Core.CredentialType.ScriptHash\n ) {\n throw new Error(\n \"Proxy NFT is currently held by another script. Move it with the current controller before depositing into protocol settings.\",\n );\n }\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(state.proxyUtxo),\n this.settingsValidatorAddress,\n // Same datum, but a script address is wider than the wallet address the\n // proxy is moving from, so the floor can still rise here.\n this.valueWithDatumMinAda(\n this.settingsValidatorAddress,\n state.proxyUtxo.output().amount(),\n state.proxyDatum,\n ),\n state.proxyDatum,\n );\n }\n\n /**\n * Compute the 32-byte auth-payload hash the governance keys must COSE-sign for\n * `change`, against the current on-chain proxy state. Two-phase, mirroring the\n * orchestrator's `getSignedPayloadFromOrderInputs`: get this hash, collect the\n * signatures out-of-band, then pass them to the matching build method. The\n * proxy UTxO must be unchanged between the two calls (it is the nonce).\n */\n async getSettingsAuthPayloadHash(\n change: TSettingsChange,\n ): Promise {\n const state = await this.requireGovernedState();\n const resolved = this.resolveChange(state, change);\n return hashSettingsAuthPayload(\n buildSettingsAuthPayload(\n resolved.redeemer,\n this.scriptHashOfAddress(resolved.receiverAddress),\n resolved.nextLogicHash,\n resolved.nextSettingsData,\n state.proxyUtxo.input(),\n ),\n );\n }\n\n async buildChangePermissionsTx(\n params: IBuildChangePermissionsTxParams,\n ): Promise {\n return this.buildChange(\n { type: \"ChangePermissions\", nextPermissions: params.nextPermissions },\n params.signatures,\n );\n }\n\n async buildChangeConfigTx(\n params: IBuildChangeConfigTxParams,\n ): Promise {\n return this.buildChange(\n { type: \"ChangeConfig\", nextConfig: params.nextConfig },\n params.signatures,\n );\n }\n\n async buildChangeLogicTx(\n params: IBuildChangeLogicTxParams,\n ): Promise {\n return this.buildChange(\n {\n type: \"ChangeLogic\",\n nextLogicHash: params.nextLogicHash,\n nextRegistry: params.nextRegistry,\n },\n params.signatures,\n );\n }\n\n async buildShutdownTx(params: {\n signatures: TSettingsSignatures;\n }): Promise {\n return this.buildChange({ type: \"Shutdown\" }, params.signatures);\n }\n\n async buildRestoreTx(params: {\n signatures: TSettingsSignatures;\n }): Promise {\n return this.buildChange({ type: \"Restore\" }, params.signatures);\n }\n\n async buildMigrateTx(\n params: IBuildMigrateTxParams,\n ): Promise {\n return this.buildChange(\n { type: \"Migrate\", destination: params.destination },\n params.signatures,\n params.destinationSignatures,\n );\n }\n\n /**\n * Resolve a change against the current state into the concrete redeemer +\n * resulting proxy output (logic, canonical settings, destination). Shared by\n * `getSettingsAuthPayloadHash` and `buildChange` so the signed hash and the\n * submitted tx always describe the same resulting state. Settings read from\n * chain are canonicalized through the typed schema (see `canonicalizeSettings`)\n * so blaze's encoding matches the validator's `cbor.serialise`.\n */\n private resolveChange(\n state: IProtocolSettingsState,\n change: TSettingsChange,\n ): IResolvedSettingsChange {\n const here = this.settingsValidatorAddress;\n switch (change.type) {\n case \"ChangePermissions\": {\n const current = this.requireLive(state);\n const next: SettingsV1 = {\n ...current,\n permissions: change.nextPermissions,\n };\n return {\n redeemer: \"ChangePermissions\",\n nextLogicHash: state.logicHash,\n nextSettingsData: serializeSettings(next),\n receiverAddress: here,\n };\n }\n case \"ChangeConfig\": {\n const current = this.requireLive(state);\n const next: SettingsV1 = { ...current, config: change.nextConfig };\n return {\n redeemer: \"ChangeConfig\",\n nextLogicHash: state.logicHash,\n nextSettingsData: serializeSettings(next),\n receiverAddress: here,\n };\n }\n case \"ChangeLogic\": {\n const current = this.requireLive(state);\n const nextLogicHash = change.nextLogicHash ?? state.logicHash;\n const nextRegistry = change.nextRegistry ?? current.registry;\n if (\n nextLogicHash === state.logicHash &&\n JSON.stringify(nextRegistry) === JSON.stringify(current.registry)\n ) {\n throw new Error(\"ChangeLogic requires a logic or registry change\");\n }\n return {\n redeemer: \"ChangeLogic\",\n nextLogicHash,\n nextSettingsData: serializeSettings({\n ...current,\n registry: nextRegistry,\n }),\n receiverAddress: here,\n };\n }\n case \"Shutdown\": {\n if (state.isFrozen) {\n throw new Error(\"Settings are already frozen\");\n }\n return {\n redeemer: \"Shutdown\",\n nextLogicHash: state.logicHash,\n nextSettingsData: freezeSettingsData(state.settingsData),\n receiverAddress: here,\n };\n }\n case \"Restore\": {\n if (!state.isFrozen) {\n throw new Error(\"Settings are not frozen\");\n }\n return {\n redeemer: \"Restore\",\n nextLogicHash: state.logicHash,\n nextSettingsData: this.canonicalizeSettings(\n unwrapFrozenSettingsData(state.settingsData),\n ),\n receiverAddress: here,\n };\n }\n case \"Migrate\": {\n const destination = change.destination;\n if (destination.settingsScriptHash === this.settingsScriptHash) {\n throw new Error(\n \"Migrate requires a different destination settings validator\",\n );\n }\n return {\n redeemer: \"Migrate\",\n nextLogicHash: state.logicHash,\n nextSettingsData: this.canonicalizeSettings(state.settingsData),\n receiverAddress: destination.settingsValidatorAddress,\n coValidateWith: {\n rewardAccount: destination.settingsRewardAccount,\n applyWitness: destination.applySettingsWitness.bind(destination),\n },\n };\n }\n }\n }\n\n private requireLive(state: IProtocolSettingsState): SettingsV1 {\n if (state.isFrozen || !state.liveSettings) {\n throw new Error(\"Settings are not in a live state\");\n }\n return state.liveSettings;\n }\n\n /**\n * Re-serialize live settings through the typed schema so the CBOR matches the\n * validator's `cbor.serialise` of the parsed output datum. Settings read from\n * chain and re-embedded opaquely (Restore's unwrap, Migrate's passthrough)\n * otherwise don't. Frozen settings aren't a `SettingsV1`, so pass through.\n */\n private canonicalizeSettings(settingsData: Core.PlutusData): Core.PlutusData {\n const live = parseLiveSettings(settingsData);\n return live ? serializeSettings(live) : settingsData;\n }\n\n private async buildChange(\n change: TSettingsChange,\n signatures: TSettingsSignatures,\n destinationSignatures?: TSettingsSignatures,\n ): Promise {\n const state = await this.requireGovernedState();\n const resolved = this.resolveChange(state, change);\n\n const tx = this.blaze.newTransaction();\n tx.addInput(state.proxyUtxo, Data.Void());\n tx.addWithdrawal(\n this.settingsRewardAccount,\n 0n,\n serializeSettingsSignedRedeemer(resolved.redeemer, signatures),\n );\n\n await this.applySettingsWitness(tx);\n\n if (resolved.coValidateWith) {\n if (!destinationSignatures) {\n throw new Error(\n \"Migrate requires destinationSignatures for the destination validator\",\n );\n }\n // The destination validator independently verifies signatures over the\n // same auth-payload hash against its own governance config.\n tx.addWithdrawal(\n resolved.coValidateWith.rewardAccount,\n 0n,\n serializeSettingsSignedRedeemer(\"Migrate\", destinationSignatures),\n );\n await resolved.coValidateWith.applyWitness(tx);\n }\n\n const nextDatum = buildRawProxyDatum(\n resolved.nextLogicHash,\n resolved.nextSettingsData,\n );\n return lockOrPayAssets(\n tx,\n resolved.receiverAddress,\n this.valueWithDatumMinAda(\n resolved.receiverAddress,\n state.proxyUtxo.output().amount(),\n nextDatum,\n ),\n nextDatum,\n );\n }\n\n /**\n * The value to put on a settings output carrying `datum`, topped up to the\n * min-ADA floor for that datum when the incoming coin no longer covers it.\n *\n * A settings edit can grow the datum (appending a reserve asset, a larger\n * registry), and the coin comes from the UTxO being spent, which was sized\n * for the *previous* datum. `TxBuilder` would raise an under-funded output to\n * the floor on its way out, but that happens after balancing has already\n * decided what to draw from the wallet, so the bump is never funded and the\n * built transaction is short by exactly that amount. Reserving it here means\n * `complete()` treats the growth as an ordinary larger payment from the first\n * iteration.\n *\n * The floor is recomputed after each raise: a larger coin is itself a few\n * bytes wider on the wire, which can lift the floor again.\n */\n private valueWithDatumMinAda(\n address: Core.Address,\n value: Core.Value,\n datum: Core.PlutusData,\n ): Core.Value {\n let result = value;\n // Converges in one or two passes; the bound just refuses to spin.\n for (let i = 0; i < 4; i++) {\n const output = new Core.TransactionOutput(address, result);\n output.setDatum(Core.Datum.newInlineData(datum));\n const floor = calculateMinAda(output, this.blaze.params.coinsPerUtxoByte);\n if (result.coin() >= floor) return result;\n result = new Core.Value(floor, result.multiasset());\n }\n return result;\n }\n\n /** The payment-credential script hash of a settings validator address. */\n private scriptHashOfAddress(address: Core.Address): Core.ScriptHash {\n const paymentPart = address.getProps().paymentPart;\n if (!paymentPart || paymentPart.type !== Core.CredentialType.ScriptHash) {\n throw new Error(\n \"Governed settings output must be locked at a script (validator) address\",\n );\n }\n return paymentPart.hash as Core.ScriptHash;\n }\n\n private async requireGovernedState(): Promise {\n const state = await this.getSettingsState();\n if (!state.isGovernedByThisValidator) {\n throw new Error(\n \"Proxy NFT is not currently governed by this settings validator. Deposit it first.\",\n );\n }\n return state;\n }\n\n async applySettingsWitness(tx: TxBuilder): Promise {\n if (this.settingsRefInput) {\n tx.addReferenceInput(this.settingsRefInput);\n return;\n }\n\n const refInput = await this.blaze.provider.resolveScriptRef(\n this.settingsScriptHash,\n );\n if (refInput) {\n this.settingsRefInput = refInput;\n tx.addReferenceInput(refInput);\n return;\n }\n\n tx.provideScript(this.settingsScript);\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/client.js b/modules/realfi-partner-sdk/dist/cjs/api/client.js new file mode 100644 index 0000000000..1a5ecdfa40 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/client.js @@ -0,0 +1,86 @@ +"use strict"; + +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.gqlRequest = gqlRequest; +exports.ownerKeyHashes = ownerKeyHashes; +var Core = _interopRequireWildcard(require("@blaze-cardano/core")); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +/** POST a GraphQL query and return its `data`, throwing on HTTP or GraphQL errors. */ +function gqlRequest(_x, _x2, _x3, _x4) { + return _gqlRequest.apply(this, arguments); +} +/** + * Derive the payment (and stake, when present) key hashes from a bech32 address. + * Wallet-keyed queries match on any supplied hash. + */ +function _gqlRequest() { + _gqlRequest = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(url, query, variables, clientId) { + var _body$errors; + var payload, response, body; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + payload = { + query: query, + variables: variables + }; + if (clientId) { + payload.extensions = { + clientId: clientId + }; + } + _context.n = 1; + return fetch(url, { + method: "POST", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(payload) + }); + case 1: + response = _context.v; + if (response.ok) { + _context.n = 2; + break; + } + throw new Error("RealFi API request failed: ".concat(response.status, " ").concat(response.statusText)); + case 2: + _context.n = 3; + return response.json(); + case 3: + body = _context.v; + if (!((_body$errors = body.errors) !== null && _body$errors !== void 0 && _body$errors.length)) { + _context.n = 4; + break; + } + throw new Error("RealFi API error: ".concat(body.errors.map(function (error) { + return error.message; + }).join("; "))); + case 4: + if (!(body.data == null)) { + _context.n = 5; + break; + } + throw new Error("RealFi API returned no data"); + case 5: + return _context.a(2, body.data); + } + }, _callee); + })); + return _gqlRequest.apply(this, arguments); +} +function ownerKeyHashes(address) { + var _props$paymentPart, _props$delegationPart; + var props = Core.Address.fromBech32(address).getProps(); + return [(_props$paymentPart = props.paymentPart) === null || _props$paymentPart === void 0 ? void 0 : _props$paymentPart.hash, (_props$delegationPart = props.delegationPart) === null || _props$delegationPart === void 0 ? void 0 : _props$delegationPart.hash].filter(function (hash) { + return Boolean(hash); + }); +} +//# sourceMappingURL=client.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/client.js.map b/modules/realfi-partner-sdk/dist/cjs/api/client.js.map new file mode 100644 index 0000000000..2b32058783 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/client.js.map @@ -0,0 +1 @@ +{"version":3,"file":"client.js","names":["Core","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_regenerator","Symbol","iterator","toStringTag","c","prototype","Generator","u","create","_regeneratorDefine2","p","y","G","v","a","d","bind","length","l","TypeError","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","gqlRequest","_x","_x2","_x3","_x4","_gqlRequest","_callee","url","query","variables","clientId","_body$errors","payload","response","body","_context","extensions","fetch","method","headers","JSON","stringify","ok","Error","concat","status","statusText","json","errors","map","error","message","join","data","ownerKeyHashes","address","_props$paymentPart","_props$delegationPart","props","Address","fromBech32","getProps","paymentPart","hash","delegationPart","filter","Boolean"],"sources":["../../../src/api/client.ts"],"sourcesContent":["import * as Core from \"@blaze-cardano/core\";\n\ninterface IGraphQLResponse {\n data?: T;\n errors?: { message: string }[];\n}\n\n/** POST a GraphQL query and return its `data`, throwing on HTTP or GraphQL errors. */\nexport async function gqlRequest(\n url: string,\n query: string,\n variables?: Record,\n clientId?: string,\n): Promise {\n const payload: Record = { query, variables };\n if (clientId) {\n payload.extensions = { clientId };\n }\n const response = await fetch(url, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify(payload),\n });\n if (!response.ok) {\n throw new Error(\n `RealFi API request failed: ${response.status} ${response.statusText}`,\n );\n }\n const body = (await response.json()) as IGraphQLResponse;\n if (body.errors?.length) {\n throw new Error(\n `RealFi API error: ${body.errors.map((error) => error.message).join(\"; \")}`,\n );\n }\n if (body.data == null) {\n throw new Error(\"RealFi API returned no data\");\n }\n return body.data;\n}\n\n/**\n * Derive the payment (and stake, when present) key hashes from a bech32 address.\n * Wallet-keyed queries match on any supplied hash.\n */\nexport function ownerKeyHashes(address: string): string[] {\n const props = Core.Address.fromBech32(address).getProps();\n return [props.paymentPart?.hash, props.delegationPart?.hash].filter(\n (hash): hash is string => Boolean(hash),\n );\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/index.js b/modules/realfi-partner-sdk/dist/cjs/api/index.js new file mode 100644 index 0000000000..5d3356879a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/index.js @@ -0,0 +1,20 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "API_REGISTRY", { + enumerable: true, + get: function get() { + return _registry.API_REGISTRY; + } +}); +Object.defineProperty(exports, "RealfiApi", { + enumerable: true, + get: function get() { + return _realfiApi.RealfiApi; + } +}); +var _realfiApi = require("./realfi-api.js"); +var _registry = require("./registry.js"); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/index.js.map b/modules/realfi-partner-sdk/dist/cjs/api/index.js.map new file mode 100644 index 0000000000..b9f5cfc1e2 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_realfiApi","require","_registry"],"sources":["../../../src/api/index.ts"],"sourcesContent":["// Off-chain RealFi API part of the SDK.\n\nexport { RealfiApi, type IRealfiApiSDK } from \"./realfi-api.js\";\nexport { API_REGISTRY } from \"./registry.js\";\nexport type { IApiEndpoints, TApiNetwork } from \"./registry.js\";\nexport type {\n IApiOrderUtxo,\n IOrderFees,\n IOrderInfo,\n IPartnerConfig,\n IPartnerLimits,\n IPointsBalance,\n IReferrerCode,\n IStakeTimes,\n IYieldBreakdown,\n TOrderAction,\n TOrderStatus,\n} from \"./types.js\";\n"],"mappings":";;;;;;;;;;;;;;;;;AAEA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/partner-config.js b/modules/realfi-partner-sdk/dist/cjs/api/partner-config.js new file mode 100644 index 0000000000..72ffdb1f03 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/partner-config.js @@ -0,0 +1,73 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.parsePartnerConfig = parsePartnerConfig; +function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); } +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); } +function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function isRecord(value) { + return _typeof(value) === "object" && value !== null && !Array.isArray(value); +} + +// Cardano native asset names are 0-32 bytes, so the canonical dotted form may +// legitimately end after the separator. Policy IDs and byte strings are +// lowercase hex; ADA is Sundae's single canonical non-native sentinel. +var PARTNER_ASSET_ID = /^(?:ada\.lovelace|[0-9a-f]{56}\.(?:[0-9a-f]{2}){0,32})$/; +function readAssetList(source, key) { + var value = source[key]; + if (!Array.isArray(value) || !value.every(function (asset) { + return typeof asset === "string" && PARTNER_ASSET_ID.test(asset); + })) { + throw new Error("invalid partner configuration: ".concat(key, " must be an asset ID array")); + } + return _toConsumableArray(value); +} +function readLimit(source, key) { + var value = source[key]; + if (typeof value !== "number" || !Number.isSafeInteger(value) || value < 0) { + throw new Error("invalid partner configuration: limits.".concat(key, " must be a non-negative safe integer")); + } + return value; +} +function readStablecoinAssetId(source) { + var assetId = source.stablecoinAssetId; + if (typeof assetId !== "string" || !/^[0-9a-f]{56}\.(?:[0-9a-f]{2}){1,32}$/.test(assetId)) { + throw new Error("invalid partner configuration: stablecoinAssetId must be a canonical Sundae asset ID"); + } + return assetId; +} + +/** Validate untrusted JSON and return fresh partner-owned values. */ +function parsePartnerConfig(value) { + if (!isRecord(value)) { + throw new Error("invalid partner configuration: expected an object"); + } + var swapCounterpartAssets = readAssetList(value, "swapCounterpartAssets"); + var swapOrderHistoryAssets = readAssetList(value, "swapOrderHistoryAssets"); + var history = new Set(swapOrderHistoryAssets); + var omittedLiveAsset = swapCounterpartAssets.find(function (asset) { + return !history.has(asset); + }); + if (omittedLiveAsset !== undefined) { + throw new Error("invalid partner configuration: history list omits live swap asset ".concat(omittedLiveAsset)); + } + if (!isRecord(value.limits)) { + throw new Error("invalid partner configuration: limits must be an object"); + } + return { + stablecoinAssetId: readStablecoinAssetId(value), + swapCounterpartAssets: swapCounterpartAssets, + swapOrderHistoryAssets: swapOrderHistoryAssets, + limits: { + mintMinUsd: readLimit(value.limits, "mintMinUsd"), + redeemMinUsd: readLimit(value.limits, "redeemMinUsd") + } + }; +} +//# sourceMappingURL=partner-config.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/partner-config.js.map b/modules/realfi-partner-sdk/dist/cjs/api/partner-config.js.map new file mode 100644 index 0000000000..1823f20839 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/partner-config.js.map @@ -0,0 +1 @@ +{"version":3,"file":"partner-config.js","names":["isRecord","value","_typeof","Array","isArray","PARTNER_ASSET_ID","readAssetList","source","key","every","asset","test","Error","concat","_toConsumableArray","readLimit","Number","isSafeInteger","readStablecoinAssetId","assetId","stablecoinAssetId","parsePartnerConfig","swapCounterpartAssets","swapOrderHistoryAssets","history","Set","omittedLiveAsset","find","has","undefined","limits","mintMinUsd","redeemMinUsd"],"sources":["../../../src/api/partner-config.ts"],"sourcesContent":["import type { IPartnerConfig } from \"./types.js\";\n\nfunction isRecord(value: unknown): value is Record {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\n// Cardano native asset names are 0-32 bytes, so the canonical dotted form may\n// legitimately end after the separator. Policy IDs and byte strings are\n// lowercase hex; ADA is Sundae's single canonical non-native sentinel.\nconst PARTNER_ASSET_ID =\n /^(?:ada\\.lovelace|[0-9a-f]{56}\\.(?:[0-9a-f]{2}){0,32})$/;\n\nfunction readAssetList(source: Record, key: string): string[] {\n const value = source[key];\n if (\n !Array.isArray(value) ||\n !value.every(\n (asset) => typeof asset === \"string\" && PARTNER_ASSET_ID.test(asset),\n )\n ) {\n throw new Error(\n `invalid partner configuration: ${key} must be an asset ID array`,\n );\n }\n return [...value];\n}\n\nfunction readLimit(source: Record, key: string): number {\n const value = source[key];\n if (typeof value !== \"number\" || !Number.isSafeInteger(value) || value < 0) {\n throw new Error(\n `invalid partner configuration: limits.${key} must be a non-negative safe integer`,\n );\n }\n return value;\n}\n\nfunction readStablecoinAssetId(source: Record): string {\n const assetId = source.stablecoinAssetId;\n if (\n typeof assetId !== \"string\" ||\n !/^[0-9a-f]{56}\\.(?:[0-9a-f]{2}){1,32}$/.test(assetId)\n ) {\n throw new Error(\n \"invalid partner configuration: stablecoinAssetId must be a canonical Sundae asset ID\",\n );\n }\n return assetId;\n}\n\n/** Validate untrusted JSON and return fresh partner-owned values. */\nexport function parsePartnerConfig(value: unknown): IPartnerConfig {\n if (!isRecord(value)) {\n throw new Error(\"invalid partner configuration: expected an object\");\n }\n\n const swapCounterpartAssets = readAssetList(value, \"swapCounterpartAssets\");\n const swapOrderHistoryAssets = readAssetList(value, \"swapOrderHistoryAssets\");\n const history = new Set(swapOrderHistoryAssets);\n const omittedLiveAsset = swapCounterpartAssets.find(\n (asset) => !history.has(asset),\n );\n if (omittedLiveAsset !== undefined) {\n throw new Error(\n `invalid partner configuration: history list omits live swap asset ${omittedLiveAsset}`,\n );\n }\n\n if (!isRecord(value.limits)) {\n throw new Error(\"invalid partner configuration: limits must be an object\");\n }\n\n return {\n stablecoinAssetId: readStablecoinAssetId(value),\n swapCounterpartAssets,\n swapOrderHistoryAssets,\n limits: {\n mintMinUsd: readLimit(value.limits, \"mintMinUsd\"),\n redeemMinUsd: readLimit(value.limits, \"redeemMinUsd\"),\n },\n };\n}\n"],"mappings":";;;;;;;;;;;;;AAEA,SAASA,QAAQA,CAACC,KAAc,EAAoC;EAClE,OAAOC,OAAA,CAAOD,KAAK,MAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,IAAI,CAACE,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC;AAC7E;;AAEA;AACA;AACA;AACA,IAAMI,gBAAgB,GACpB,yDAAyD;AAE3D,SAASC,aAAaA,CAACC,MAA+B,EAAEC,GAAW,EAAY;EAC7E,IAAMP,KAAK,GAAGM,MAAM,CAACC,GAAG,CAAC;EACzB,IACE,CAACL,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,IACrB,CAACA,KAAK,CAACQ,KAAK,CACV,UAACC,KAAK;IAAA,OAAK,OAAOA,KAAK,KAAK,QAAQ,IAAIL,gBAAgB,CAACM,IAAI,CAACD,KAAK,CAAC;EAAA,CACtE,CAAC,EACD;IACA,MAAM,IAAIE,KAAK,mCAAAC,MAAA,CACqBL,GAAG,+BACvC,CAAC;EACH;EACA,OAAAM,kBAAA,CAAWb,KAAK;AAClB;AAEA,SAASc,SAASA,CAACR,MAA+B,EAAEC,GAAW,EAAU;EACvE,IAAMP,KAAK,GAAGM,MAAM,CAACC,GAAG,CAAC;EACzB,IAAI,OAAOP,KAAK,KAAK,QAAQ,IAAI,CAACe,MAAM,CAACC,aAAa,CAAChB,KAAK,CAAC,IAAIA,KAAK,GAAG,CAAC,EAAE;IAC1E,MAAM,IAAIW,KAAK,0CAAAC,MAAA,CAC4BL,GAAG,yCAC9C,CAAC;EACH;EACA,OAAOP,KAAK;AACd;AAEA,SAASiB,qBAAqBA,CAACX,MAA+B,EAAU;EACtE,IAAMY,OAAO,GAAGZ,MAAM,CAACa,iBAAiB;EACxC,IACE,OAAOD,OAAO,KAAK,QAAQ,IAC3B,CAAC,uCAAuC,CAACR,IAAI,CAACQ,OAAO,CAAC,EACtD;IACA,MAAM,IAAIP,KAAK,CACb,sFACF,CAAC;EACH;EACA,OAAOO,OAAO;AAChB;;AAEA;AACO,SAASE,kBAAkBA,CAACpB,KAAc,EAAkB;EACjE,IAAI,CAACD,QAAQ,CAACC,KAAK,CAAC,EAAE;IACpB,MAAM,IAAIW,KAAK,CAAC,mDAAmD,CAAC;EACtE;EAEA,IAAMU,qBAAqB,GAAGhB,aAAa,CAACL,KAAK,EAAE,uBAAuB,CAAC;EAC3E,IAAMsB,sBAAsB,GAAGjB,aAAa,CAACL,KAAK,EAAE,wBAAwB,CAAC;EAC7E,IAAMuB,OAAO,GAAG,IAAIC,GAAG,CAACF,sBAAsB,CAAC;EAC/C,IAAMG,gBAAgB,GAAGJ,qBAAqB,CAACK,IAAI,CACjD,UAACjB,KAAK;IAAA,OAAK,CAACc,OAAO,CAACI,GAAG,CAAClB,KAAK,CAAC;EAAA,CAChC,CAAC;EACD,IAAIgB,gBAAgB,KAAKG,SAAS,EAAE;IAClC,MAAM,IAAIjB,KAAK,sEAAAC,MAAA,CACwDa,gBAAgB,CACvF,CAAC;EACH;EAEA,IAAI,CAAC1B,QAAQ,CAACC,KAAK,CAAC6B,MAAM,CAAC,EAAE;IAC3B,MAAM,IAAIlB,KAAK,CAAC,yDAAyD,CAAC;EAC5E;EAEA,OAAO;IACLQ,iBAAiB,EAAEF,qBAAqB,CAACjB,KAAK,CAAC;IAC/CqB,qBAAqB,EAArBA,qBAAqB;IACrBC,sBAAsB,EAAtBA,sBAAsB;IACtBO,MAAM,EAAE;MACNC,UAAU,EAAEhB,SAAS,CAACd,KAAK,CAAC6B,MAAM,EAAE,YAAY,CAAC;MACjDE,YAAY,EAAEjB,SAAS,CAACd,KAAK,CAAC6B,MAAM,EAAE,cAAc;IACtD;EACF,CAAC;AACH","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/queries.js b/modules/realfi-partner-sdk/dist/cjs/api/queries.js new file mode 100644 index 0000000000..fa14e4adef --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/queries.js @@ -0,0 +1,19 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.YIELD_BREAKDOWN_QUERY = exports.SUSDR_EXCHANGE_RATE_INPUTS_QUERY = exports.STAKE_TIMES_QUERY = exports.REFERRER_CODE_QUERY = exports.REFERRAL_REWARDS_QUERY = exports.POINTS_BALANCE_QUERY = exports.ORDER_FEES_QUERY = exports.ORDERS_BY_OWNER_QUERY = exports.INVITED_COUNT_QUERY = void 0; +// GraphQL operations + their raw response shapes (field names match the schema). +// The clean SDK-facing types live in ./types; the API class maps raw -> clean. + +var STAKE_TIMES_QUERY = exports.STAKE_TIMES_QUERY = "{\n stakeTimes {\n CurrentCooldownPeriodEnd { slot }\n NextCooldownPeriodEnd { slot }\n }\n}"; +var ORDER_FEES_QUERY = exports.ORDER_FEES_QUERY = "{ orderFees { mintBps redeemBps } }"; +var SUSDR_EXCHANGE_RATE_INPUTS_QUERY = exports.SUSDR_EXCHANGE_RATE_INPUTS_QUERY = "{\n susdrExchangeRateInputs {\n circulatingSusdr\n vaultUsdr\n pendingYield\n diffusionStartUnixMilli\n diffusionEndUnixMilli\n }\n}"; +var YIELD_BREAKDOWN_QUERY = exports.YIELD_BREAKDOWN_QUERY = "query ($owner: String!) {\n susdrYieldBreakdown(owner: $owner) {\n totalSUSDr\n totalUSDrValue\n principal\n yield\n yieldPercent\n }\n}"; +var ORDERS_BY_OWNER_QUERY = exports.ORDERS_BY_OWNER_QUERY = "query ($owner: String!, $status: OrderStatus!) {\n ordersByOwner(owner: $owner, status: $status) {\n status\n order {\n Owner\n Action\n Amount\n Principal\n Yield\n Slot\n Forfeit\n UnlockSlot\n MatureSlot\n ClaimTxHash\n Version\n utxo { txHash index }\n resultUtxo { txHash index }\n }\n }\n}"; +var POINTS_BALANCE_QUERY = exports.POINTS_BALANCE_QUERY = "query ($value: String!) {\n V_WALLET_POINTS_BALANCE(\n filters: [{ field: \"WALLET_ADDRESS\", operator: IN, value: $value }]\n ) {\n nodes { WALLET_POINTS_BALANCE }\n }\n}"; +var REFERRER_CODE_QUERY = exports.REFERRER_CODE_QUERY = "query ($walletAddress: String!) {\n referrerCode(walletAddress: $walletAddress) { code createdAt }\n}"; +var REFERRAL_REWARDS_QUERY = exports.REFERRAL_REWARDS_QUERY = "query ($walletAddress: String!) {\n referralRewards(walletAddress: $walletAddress)\n}"; +var INVITED_COUNT_QUERY = exports.INVITED_COUNT_QUERY = "query ($walletAddress: String!) {\n invitedCount(walletAddress: $walletAddress)\n}"; +//# sourceMappingURL=queries.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/queries.js.map b/modules/realfi-partner-sdk/dist/cjs/api/queries.js.map new file mode 100644 index 0000000000..33e2733b4a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/queries.js.map @@ -0,0 +1 @@ +{"version":3,"file":"queries.js","names":["STAKE_TIMES_QUERY","exports","ORDER_FEES_QUERY","SUSDR_EXCHANGE_RATE_INPUTS_QUERY","YIELD_BREAKDOWN_QUERY","ORDERS_BY_OWNER_QUERY","POINTS_BALANCE_QUERY","REFERRER_CODE_QUERY","REFERRAL_REWARDS_QUERY","INVITED_COUNT_QUERY"],"sources":["../../../src/api/queries.ts"],"sourcesContent":["// GraphQL operations + their raw response shapes (field names match the schema).\n// The clean SDK-facing types live in ./types; the API class maps raw -> clean.\n\nimport type { TOrderAction, TOrderStatus } from \"./types.js\";\n\nexport const STAKE_TIMES_QUERY = `{\n stakeTimes {\n CurrentCooldownPeriodEnd { slot }\n NextCooldownPeriodEnd { slot }\n }\n}`;\n\nexport interface IRawStakeTimes {\n stakeTimes: {\n CurrentCooldownPeriodEnd: { slot: number };\n NextCooldownPeriodEnd: { slot: number };\n };\n}\n\nexport const ORDER_FEES_QUERY = `{ orderFees { mintBps redeemBps } }`;\n\nexport interface IRawOrderFees {\n orderFees: { mintBps: number; redeemBps: number };\n}\n\nexport const SUSDR_EXCHANGE_RATE_INPUTS_QUERY = `{\n susdrExchangeRateInputs {\n circulatingSusdr\n vaultUsdr\n pendingYield\n diffusionStartUnixMilli\n diffusionEndUnixMilli\n }\n}`;\n\nexport interface IRawSusdrExchangeRateInputs {\n susdrExchangeRateInputs: {\n circulatingSusdr: string;\n vaultUsdr: string;\n pendingYield: string;\n diffusionStartUnixMilli: string;\n diffusionEndUnixMilli: string;\n };\n}\n\nexport const YIELD_BREAKDOWN_QUERY = `query ($owner: String!) {\n susdrYieldBreakdown(owner: $owner) {\n totalSUSDr\n totalUSDrValue\n principal\n yield\n yieldPercent\n }\n}`;\n\nexport interface IRawYieldBreakdown {\n susdrYieldBreakdown: {\n totalSUSDr: string;\n totalUSDrValue: string;\n principal: string;\n yield: string;\n yieldPercent: number;\n };\n}\n\nexport const ORDERS_BY_OWNER_QUERY = `query ($owner: String!, $status: OrderStatus!) {\n ordersByOwner(owner: $owner, status: $status) {\n status\n order {\n Owner\n Action\n Amount\n Principal\n Yield\n Slot\n Forfeit\n UnlockSlot\n MatureSlot\n ClaimTxHash\n Version\n utxo { txHash index }\n resultUtxo { txHash index }\n }\n }\n}`;\n\nexport interface IRawUtxo {\n txHash: string;\n index: number;\n}\n\nexport interface IRawOrder {\n Owner: string;\n Action: TOrderAction;\n Amount: string;\n Principal: string | null;\n Yield: string | null;\n Slot: string;\n Forfeit: string;\n UnlockSlot: string | null;\n MatureSlot: string | null;\n ClaimTxHash: string | null;\n Version: string;\n utxo: IRawUtxo;\n resultUtxo: IRawUtxo | null;\n}\n\nexport interface IRawOrdersByOwner {\n ordersByOwner: { status: TOrderStatus; order: IRawOrder }[];\n}\n\nexport const POINTS_BALANCE_QUERY = `query ($value: String!) {\n V_WALLET_POINTS_BALANCE(\n filters: [{ field: \"WALLET_ADDRESS\", operator: IN, value: $value }]\n ) {\n nodes { WALLET_POINTS_BALANCE }\n }\n}`;\n\nexport interface IRawPointsBalance {\n V_WALLET_POINTS_BALANCE: {\n nodes: { WALLET_POINTS_BALANCE: string | null }[];\n };\n}\n\nexport interface IRawPointsBalanceData {\n current_balance?: number;\n potential_points?: number;\n day_multiplier?: number;\n}\n\nexport const REFERRER_CODE_QUERY = `query ($walletAddress: String!) {\n referrerCode(walletAddress: $walletAddress) { code createdAt }\n}`;\n\nexport interface IRawReferrerCode {\n referrerCode: { code: string; createdAt: string } | null;\n}\n\nexport const REFERRAL_REWARDS_QUERY = `query ($walletAddress: String!) {\n referralRewards(walletAddress: $walletAddress)\n}`;\n\nexport interface IRawReferralRewards {\n referralRewards: number | null;\n}\n\nexport const INVITED_COUNT_QUERY = `query ($walletAddress: String!) {\n invitedCount(walletAddress: $walletAddress)\n}`;\n\nexport interface IRawInvitedCount {\n invitedCount: number | null;\n}\n"],"mappings":";;;;;;AAAA;AACA;;AAIO,IAAMA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,yGAK5B;AASK,IAAME,gBAAgB,GAAAD,OAAA,CAAAC,gBAAA,wCAAwC;AAM9D,IAAMC,gCAAgC,GAAAF,OAAA,CAAAE,gCAAA,0JAQ3C;AAYK,IAAMC,qBAAqB,GAAAH,OAAA,CAAAG,qBAAA,8JAQhC;AAYK,IAAMC,qBAAqB,GAAAJ,OAAA,CAAAI,qBAAA,wXAmBhC;AA2BK,IAAMC,oBAAoB,GAAAL,OAAA,CAAAK,oBAAA,yLAM/B;AAcK,IAAMC,mBAAmB,GAAAN,OAAA,CAAAM,mBAAA,2GAE9B;AAMK,IAAMC,sBAAsB,GAAAP,OAAA,CAAAO,sBAAA,2FAEjC;AAMK,IAAMC,mBAAmB,GAAAR,OAAA,CAAAQ,mBAAA,wFAE9B","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/realfi-api.js b/modules/realfi-partner-sdk/dist/cjs/api/realfi-api.js new file mode 100644 index 0000000000..d85f1ec3ff --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/realfi-api.js @@ -0,0 +1,426 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.RealfiApi = void 0; +var _clientId = require("../sdk/shared/client-id.js"); +var _client = require("./client.js"); +var _partnerConfig = require("./partner-config.js"); +var _queries = require("./queries.js"); +var _registry = require("./registry.js"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } +function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +var DEFAULT_ORDER_STATUSES = ["Open", "Validating", "Canceled", "Executed", "Invalidated", "InvalidMinReceived"]; + +/** Off-chain RealFi data: order status, stake times, yield, fees, points, referrals. */ + +function mapOrder(status, order) { + var _order$ClaimTxHash; + return { + owner: order.Owner, + action: order.Action, + status: status, + amount: BigInt(order.Amount), + slot: BigInt(order.Slot), + forfeit: BigInt(order.Forfeit), + version: order.Version, + utxo: { + txHash: order.utxo.txHash, + outputIndex: order.utxo.index + }, + resultUtxo: order.resultUtxo ? { + txHash: order.resultUtxo.txHash, + outputIndex: order.resultUtxo.index + } : undefined, + unlockSlot: order.UnlockSlot == null ? undefined : BigInt(order.UnlockSlot), + matureSlot: order.MatureSlot == null ? undefined : BigInt(order.MatureSlot), + principal: order.Principal == null ? undefined : BigInt(order.Principal), + "yield": order.Yield == null ? undefined : BigInt(order.Yield), + claimTxHash: (_order$ClaimTxHash = order.ClaimTxHash) !== null && _order$ClaimTxHash !== void 0 ? _order$ClaimTxHash : undefined + }; +} + +/** + * Off-chain GraphQL reads. Construct with {@link RealfiApi.forNetwork} or + * {@link RealfiApi.create}; no Blaze instance required. + */ +var RealfiApi = exports.RealfiApi = /*#__PURE__*/function () { + function RealfiApi(endpoints) { + var clientId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "".concat(_clientId.DEFAULT_CLIENT_SOURCE, "/").concat(_clientId.SDK_VERSION); + _classCallCheck(this, RealfiApi); + this.endpoints = endpoints; + this.clientId = clientId; + } + return _createClass(RealfiApi, [{ + key: "request", + value: function request(url, query, variables) { + return (0, _client.gqlRequest)(url, query, variables, this.clientId); + } + }, { + key: "getPartnerConfig", + value: function () { + var _getPartnerConfig = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { + var url, response, body, _t; + return _regenerator().w(function (_context) { + while (1) switch (_context.p = _context.n) { + case 0: + url = this.endpoints.partnerConfigUrl; + if (url) { + _context.n = 1; + break; + } + throw new Error("partnerConfigUrl is required to read partner runtime configuration"); + case 1: + _context.n = 2; + return fetch(url, { + method: "GET", + headers: { + Accept: "application/json" + }, + cache: "no-store" + }); + case 2: + response = _context.v; + if (response.ok) { + _context.n = 3; + break; + } + throw new Error("Partner configuration request failed: ".concat(response.status, " ").concat(response.statusText)); + case 3: + _context.p = 3; + _context.n = 4; + return response.json(); + case 4: + body = _context.v; + _context.n = 6; + break; + case 5: + _context.p = 5; + _t = _context.v; + throw new Error("invalid partner configuration: response is not JSON", { + cause: _t + }); + case 6: + return _context.a(2, (0, _partnerConfig.parsePartnerConfig)(body)); + } + }, _callee, this, [[3, 5]]); + })); + function getPartnerConfig() { + return _getPartnerConfig.apply(this, arguments); + } + return getPartnerConfig; + }() + }, { + key: "getStakeTimes", + value: function () { + var _getStakeTimes = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() { + var data; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + _context2.n = 1; + return this.request(this.endpoints.realfiUrl, _queries.STAKE_TIMES_QUERY); + case 1: + data = _context2.v; + return _context2.a(2, { + currentCooldownSlot: BigInt(data.stakeTimes.CurrentCooldownPeriodEnd.slot), + nextCooldownSlot: BigInt(data.stakeTimes.NextCooldownPeriodEnd.slot) + }); + } + }, _callee2, this); + })); + function getStakeTimes() { + return _getStakeTimes.apply(this, arguments); + } + return getStakeTimes; + }() + }, { + key: "getCooldownUnlockSlot", + value: function () { + var _getCooldownUnlockSlot = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() { + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + _context3.n = 1; + return this.getStakeTimes(); + case 1: + return _context3.a(2, _context3.v.nextCooldownSlot); + } + }, _callee3, this); + })); + function getCooldownUnlockSlot() { + return _getCooldownUnlockSlot.apply(this, arguments); + } + return getCooldownUnlockSlot; + }() + }, { + key: "getOrdersByOwner", + value: function () { + var _getOrdersByOwner = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(address) { + var _this = this; + var statuses, + owners, + batches, + seen, + _args4 = arguments; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.n) { + case 0: + statuses = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : DEFAULT_ORDER_STATUSES; + owners = (0, _client.ownerKeyHashes)(address); + _context4.n = 1; + return Promise.all(owners.flatMap(function (owner) { + return statuses.map(function (status) { + return _this.request(_this.endpoints.realfiUrl, _queries.ORDERS_BY_OWNER_QUERY, { + owner: owner, + status: status + }).then(function (data) { + return data.ordersByOwner; + }); + }); + })); + case 1: + batches = _context4.v; + seen = new Set(); + return _context4.a(2, batches.flat().map(function (result) { + return mapOrder(result.status, result.order); + }).filter(function (order) { + var key = "".concat(order.utxo.txHash, "#").concat(order.utxo.outputIndex); + if (seen.has(key)) return false; + seen.add(key); + return true; + }).sort(function (a, b) { + return Number(b.slot - a.slot); + })); + } + }, _callee4); + })); + function getOrdersByOwner(_x) { + return _getOrdersByOwner.apply(this, arguments); + } + return getOrdersByOwner; + }() + }, { + key: "getOrderFees", + value: function () { + var _getOrderFees = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() { + var data; + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + _context5.n = 1; + return this.request(this.endpoints.realfiUrl, _queries.ORDER_FEES_QUERY); + case 1: + data = _context5.v; + return _context5.a(2, data.orderFees); + } + }, _callee5, this); + })); + function getOrderFees() { + return _getOrderFees.apply(this, arguments); + } + return getOrderFees; + }() + }, { + key: "getSusdrExchangeRateInputs", + value: function () { + var _getSusdrExchangeRateInputs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() { + var data, inputs; + return _regenerator().w(function (_context6) { + while (1) switch (_context6.n) { + case 0: + _context6.n = 1; + return this.request(this.endpoints.realfiUrl, _queries.SUSDR_EXCHANGE_RATE_INPUTS_QUERY); + case 1: + data = _context6.v; + inputs = data.susdrExchangeRateInputs; + return _context6.a(2, { + circulatingSusdr: BigInt(inputs.circulatingSusdr), + vaultUsdr: BigInt(inputs.vaultUsdr), + pendingYield: BigInt(inputs.pendingYield), + diffusionStartUnixMilli: BigInt(inputs.diffusionStartUnixMilli), + diffusionEndUnixMilli: BigInt(inputs.diffusionEndUnixMilli) + }); + } + }, _callee6, this); + })); + function getSusdrExchangeRateInputs() { + return _getSusdrExchangeRateInputs.apply(this, arguments); + } + return getSusdrExchangeRateInputs; + }() + }, { + key: "getYieldBreakdown", + value: function () { + var _getYieldBreakdown = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(address) { + var _ownerKeyHashes, _ownerKeyHashes2, owner, data, breakdown; + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + _ownerKeyHashes = (0, _client.ownerKeyHashes)(address), _ownerKeyHashes2 = _slicedToArray(_ownerKeyHashes, 1), owner = _ownerKeyHashes2[0]; + if (owner) { + _context7.n = 1; + break; + } + throw new Error("address has no payment credential"); + case 1: + _context7.n = 2; + return this.request(this.endpoints.realfiUrl, _queries.YIELD_BREAKDOWN_QUERY, { + owner: owner + }); + case 2: + data = _context7.v; + breakdown = data.susdrYieldBreakdown; + return _context7.a(2, { + totalSUSDr: BigInt(breakdown.totalSUSDr), + totalUSDrValue: BigInt(breakdown.totalUSDrValue), + principal: BigInt(breakdown.principal), + "yield": BigInt(breakdown["yield"]), + yieldPercent: breakdown.yieldPercent + }); + } + }, _callee7, this); + })); + function getYieldBreakdown(_x2) { + return _getYieldBreakdown.apply(this, arguments); + } + return getYieldBreakdown; + }() + }, { + key: "getPointsBalance", + value: function () { + var _getPointsBalance = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(address) { + var _data$V_WALLET_POINTS, _parsed$current_balan, _parsed$potential_poi, _parsed$day_multiplie; + var value, data, raw, parsed; + return _regenerator().w(function (_context8) { + while (1) switch (_context8.n) { + case 0: + value = (0, _client.ownerKeyHashes)(address).join(","); + _context8.n = 1; + return this.request(this.endpoints.assetTransparencyUrl, _queries.POINTS_BALANCE_QUERY, { + value: value + }); + case 1: + data = _context8.v; + raw = (_data$V_WALLET_POINTS = data.V_WALLET_POINTS_BALANCE.nodes[0]) === null || _data$V_WALLET_POINTS === void 0 ? void 0 : _data$V_WALLET_POINTS.WALLET_POINTS_BALANCE; + if (raw) { + _context8.n = 2; + break; + } + return _context8.a(2, { + pointsBalance: null, + potentialPoints: null, + multiplier: null + }); + case 2: + parsed = JSON.parse(raw); + return _context8.a(2, { + pointsBalance: (_parsed$current_balan = parsed.current_balance) !== null && _parsed$current_balan !== void 0 ? _parsed$current_balan : null, + potentialPoints: (_parsed$potential_poi = parsed.potential_points) !== null && _parsed$potential_poi !== void 0 ? _parsed$potential_poi : null, + multiplier: (_parsed$day_multiplie = parsed.day_multiplier) !== null && _parsed$day_multiplie !== void 0 ? _parsed$day_multiplie : null + }); + } + }, _callee8, this); + })); + function getPointsBalance(_x3) { + return _getPointsBalance.apply(this, arguments); + } + return getPointsBalance; + }() + }, { + key: "getReferrerCode", + value: function () { + var _getReferrerCode = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(address) { + var data; + return _regenerator().w(function (_context9) { + while (1) switch (_context9.n) { + case 0: + _context9.n = 1; + return this.request(this.endpoints.assetTransparencyUrl, _queries.REFERRER_CODE_QUERY, { + walletAddress: (0, _client.ownerKeyHashes)(address).join(",") + }); + case 1: + data = _context9.v; + return _context9.a(2, data.referrerCode); + } + }, _callee9, this); + })); + function getReferrerCode(_x4) { + return _getReferrerCode.apply(this, arguments); + } + return getReferrerCode; + }() + }, { + key: "getReferralRewards", + value: function () { + var _getReferralRewards = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(address) { + var data; + return _regenerator().w(function (_context0) { + while (1) switch (_context0.n) { + case 0: + _context0.n = 1; + return this.request(this.endpoints.assetTransparencyUrl, _queries.REFERRAL_REWARDS_QUERY, { + walletAddress: (0, _client.ownerKeyHashes)(address).join(",") + }); + case 1: + data = _context0.v; + return _context0.a(2, data.referralRewards); + } + }, _callee0, this); + })); + function getReferralRewards(_x5) { + return _getReferralRewards.apply(this, arguments); + } + return getReferralRewards; + }() + }, { + key: "getInvitedCount", + value: function () { + var _getInvitedCount = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(address) { + var data; + return _regenerator().w(function (_context1) { + while (1) switch (_context1.n) { + case 0: + _context1.n = 1; + return this.request(this.endpoints.assetTransparencyUrl, _queries.INVITED_COUNT_QUERY, { + walletAddress: (0, _client.ownerKeyHashes)(address).join(",") + }); + case 1: + data = _context1.v; + return _context1.a(2, data.invitedCount); + } + }, _callee1, this); + })); + function getInvitedCount(_x6) { + return _getInvitedCount.apply(this, arguments); + } + return getInvitedCount; + }() + }], [{ + key: "forNetwork", + value: function forNetwork(network, clientId) { + return new RealfiApi(_registry.API_REGISTRY[network], clientId); + } + }, { + key: "create", + value: function create(endpoints, clientId) { + return new RealfiApi(endpoints, clientId); + } + }]); +}(); +//# sourceMappingURL=realfi-api.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/realfi-api.js.map b/modules/realfi-partner-sdk/dist/cjs/api/realfi-api.js.map new file mode 100644 index 0000000000..704c18f6e1 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/realfi-api.js.map @@ -0,0 +1 @@ +{"version":3,"file":"realfi-api.js","names":["_clientId","require","_client","_partnerConfig","_queries","_registry","_typeof","o","Symbol","iterator","constructor","prototype","_slicedToArray","r","e","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","t","toString","call","slice","name","Array","from","test","length","n","l","i","u","f","next","Object","done","push","value","isArray","_regenerator","toStringTag","c","Generator","create","_regeneratorDefine2","p","y","G","v","d","bind","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_toPrimitive","toPrimitive","String","Number","DEFAULT_ORDER_STATUSES","mapOrder","status","order","_order$ClaimTxHash","owner","Owner","action","Action","amount","BigInt","Amount","slot","Slot","forfeit","Forfeit","version","Version","utxo","txHash","outputIndex","index","resultUtxo","undefined","unlockSlot","UnlockSlot","matureSlot","MatureSlot","principal","Principal","Yield","claimTxHash","ClaimTxHash","RealfiApi","exports","endpoints","clientId","concat","DEFAULT_CLIENT_SOURCE","SDK_VERSION","request","url","query","variables","gqlRequest","_getPartnerConfig","_callee","response","body","_t","_context","partnerConfigUrl","Error","fetch","method","headers","Accept","cache","ok","statusText","json","cause","parsePartnerConfig","getPartnerConfig","_getStakeTimes","_callee2","data","_context2","realfiUrl","STAKE_TIMES_QUERY","currentCooldownSlot","stakeTimes","CurrentCooldownPeriodEnd","nextCooldownSlot","NextCooldownPeriodEnd","getStakeTimes","_getCooldownUnlockSlot","_callee3","_context3","getCooldownUnlockSlot","_getOrdersByOwner","_callee4","address","_this","statuses","owners","batches","seen","_args4","_context4","ownerKeyHashes","all","flatMap","map","ORDERS_BY_OWNER_QUERY","ordersByOwner","Set","flat","result","filter","has","add","sort","b","getOrdersByOwner","_x","_getOrderFees","_callee5","_context5","ORDER_FEES_QUERY","orderFees","getOrderFees","_getSusdrExchangeRateInputs","_callee6","inputs","_context6","SUSDR_EXCHANGE_RATE_INPUTS_QUERY","susdrExchangeRateInputs","circulatingSusdr","vaultUsdr","pendingYield","diffusionStartUnixMilli","diffusionEndUnixMilli","getSusdrExchangeRateInputs","_getYieldBreakdown","_callee7","_ownerKeyHashes","_ownerKeyHashes2","breakdown","_context7","YIELD_BREAKDOWN_QUERY","susdrYieldBreakdown","totalSUSDr","totalUSDrValue","yieldPercent","getYieldBreakdown","_x2","_getPointsBalance","_callee8","_data$V_WALLET_POINTS","_parsed$current_balan","_parsed$potential_poi","_parsed$day_multiplie","raw","parsed","_context8","join","assetTransparencyUrl","POINTS_BALANCE_QUERY","V_WALLET_POINTS_BALANCE","nodes","WALLET_POINTS_BALANCE","pointsBalance","potentialPoints","multiplier","JSON","parse","current_balance","potential_points","day_multiplier","getPointsBalance","_x3","_getReferrerCode","_callee9","_context9","REFERRER_CODE_QUERY","walletAddress","referrerCode","getReferrerCode","_x4","_getReferralRewards","_callee0","_context0","REFERRAL_REWARDS_QUERY","referralRewards","getReferralRewards","_x5","_getInvitedCount","_callee1","_context1","INVITED_COUNT_QUERY","invitedCount","getInvitedCount","_x6","forNetwork","network","API_REGISTRY"],"sources":["../../../src/api/realfi-api.ts"],"sourcesContent":["import { DEFAULT_CLIENT_SOURCE, SDK_VERSION } from \"../sdk/shared/client-id.js\";\nimport type { ISusdrExchangeRateInputs } from \"../sdk/v1_1_rc1/diffusion.js\";\nimport { gqlRequest, ownerKeyHashes } from \"./client.js\";\nimport { parsePartnerConfig } from \"./partner-config.js\";\nimport {\n INVITED_COUNT_QUERY,\n ORDER_FEES_QUERY,\n ORDERS_BY_OWNER_QUERY,\n POINTS_BALANCE_QUERY,\n REFERRAL_REWARDS_QUERY,\n REFERRER_CODE_QUERY,\n STAKE_TIMES_QUERY,\n SUSDR_EXCHANGE_RATE_INPUTS_QUERY,\n YIELD_BREAKDOWN_QUERY,\n type IRawInvitedCount,\n type IRawOrder,\n type IRawOrderFees,\n type IRawOrdersByOwner,\n type IRawPointsBalance,\n type IRawPointsBalanceData,\n type IRawReferralRewards,\n type IRawReferrerCode,\n type IRawStakeTimes,\n type IRawSusdrExchangeRateInputs,\n type IRawYieldBreakdown,\n} from \"./queries.js\";\nimport {\n API_REGISTRY,\n type IApiEndpoints,\n type TApiNetwork,\n} from \"./registry.js\";\nimport type {\n IOrderFees,\n IOrderInfo,\n IPartnerConfig,\n IPointsBalance,\n IReferrerCode,\n IStakeTimes,\n IYieldBreakdown,\n TOrderStatus,\n} from \"./types.js\";\n\nconst DEFAULT_ORDER_STATUSES: TOrderStatus[] = [\n \"Open\",\n \"Validating\",\n \"Canceled\",\n \"Executed\",\n \"Invalidated\",\n \"InvalidMinReceived\",\n];\n\n/** Off-chain RealFi data: order status, stake times, yield, fees, points, referrals. */\nexport interface IRealfiApiSDK {\n /** Product-curated swap lists and USD UX limits from deployed runtime config. */\n getPartnerConfig(): Promise;\n /** Cooldown boundary slots for unstaking. */\n getStakeTimes(): Promise;\n /** The slot to pass as an unstake `unlockSlot` (the next cooldown boundary). */\n getCooldownUnlockSlot(): Promise;\n /** Orders owned by `address` across the given statuses (default: all tracked). */\n getOrdersByOwner(\n address: string,\n statuses?: TOrderStatus[],\n ): Promise;\n /** Per-action minimum-fee policy (basis points). */\n getOrderFees(): Promise;\n /** Inputs for calculating the diffusion-aware USDr-per-sUSDr rate. */\n getSusdrExchangeRateInputs(): Promise;\n /** Yield owed on a wallet's sUSDr holdings. */\n getYieldBreakdown(address: string): Promise;\n /** A wallet's points balance. */\n getPointsBalance(address: string): Promise;\n /** A wallet's referral code, or null if none. */\n getReferrerCode(address: string): Promise;\n /** Cumulative referral-bonus points credited to a wallet. */\n getReferralRewards(address: string): Promise;\n /** Number of referees a wallet has invited. */\n getInvitedCount(address: string): Promise;\n}\n\nfunction mapOrder(status: TOrderStatus, order: IRawOrder): IOrderInfo {\n return {\n owner: order.Owner,\n action: order.Action,\n status,\n amount: BigInt(order.Amount),\n slot: BigInt(order.Slot),\n forfeit: BigInt(order.Forfeit),\n version: order.Version,\n utxo: { txHash: order.utxo.txHash, outputIndex: order.utxo.index },\n resultUtxo: order.resultUtxo\n ? { txHash: order.resultUtxo.txHash, outputIndex: order.resultUtxo.index }\n : undefined,\n unlockSlot: order.UnlockSlot == null ? undefined : BigInt(order.UnlockSlot),\n matureSlot: order.MatureSlot == null ? undefined : BigInt(order.MatureSlot),\n principal: order.Principal == null ? undefined : BigInt(order.Principal),\n yield: order.Yield == null ? undefined : BigInt(order.Yield),\n claimTxHash: order.ClaimTxHash ?? undefined,\n };\n}\n\n/**\n * Off-chain GraphQL reads. Construct with {@link RealfiApi.forNetwork} or\n * {@link RealfiApi.create}; no Blaze instance required.\n */\nexport class RealfiApi implements IRealfiApiSDK {\n private constructor(\n private readonly endpoints: IApiEndpoints,\n private readonly clientId: string = `${DEFAULT_CLIENT_SOURCE}/${SDK_VERSION}`,\n ) {}\n\n private request(\n url: string,\n query: string,\n variables?: Record,\n ): Promise {\n return gqlRequest(url, query, variables, this.clientId);\n }\n\n static forNetwork(network: TApiNetwork, clientId?: string): IRealfiApiSDK {\n return new RealfiApi(API_REGISTRY[network], clientId);\n }\n\n static create(endpoints: IApiEndpoints, clientId?: string): IRealfiApiSDK {\n return new RealfiApi(endpoints, clientId);\n }\n\n async getPartnerConfig(): Promise {\n const url = this.endpoints.partnerConfigUrl;\n if (!url) {\n throw new Error(\n \"partnerConfigUrl is required to read partner runtime configuration\",\n );\n }\n const response = await fetch(url, {\n method: \"GET\",\n headers: { Accept: \"application/json\" },\n cache: \"no-store\",\n });\n if (!response.ok) {\n throw new Error(\n `Partner configuration request failed: ${response.status} ${response.statusText}`,\n );\n }\n let body: unknown;\n try {\n body = await response.json();\n } catch (error) {\n throw new Error(\"invalid partner configuration: response is not JSON\", {\n cause: error,\n });\n }\n return parsePartnerConfig(body);\n }\n\n async getStakeTimes(): Promise {\n const data = await this.request(\n this.endpoints.realfiUrl,\n STAKE_TIMES_QUERY,\n );\n return {\n currentCooldownSlot: BigInt(\n data.stakeTimes.CurrentCooldownPeriodEnd.slot,\n ),\n nextCooldownSlot: BigInt(data.stakeTimes.NextCooldownPeriodEnd.slot),\n };\n }\n\n async getCooldownUnlockSlot(): Promise {\n return (await this.getStakeTimes()).nextCooldownSlot;\n }\n\n async getOrdersByOwner(\n address: string,\n statuses: TOrderStatus[] = DEFAULT_ORDER_STATUSES,\n ): Promise {\n const owners = ownerKeyHashes(address);\n const batches = await Promise.all(\n owners.flatMap((owner) =>\n statuses.map((status) =>\n this.request(\n this.endpoints.realfiUrl,\n ORDERS_BY_OWNER_QUERY,\n { owner, status },\n ).then((data) => data.ordersByOwner),\n ),\n ),\n );\n const seen = new Set();\n return batches\n .flat()\n .map((result) => mapOrder(result.status, result.order))\n .filter((order) => {\n const key = `${order.utxo.txHash}#${order.utxo.outputIndex}`;\n if (seen.has(key)) return false;\n seen.add(key);\n return true;\n })\n .sort((a, b) => Number(b.slot - a.slot));\n }\n\n async getOrderFees(): Promise {\n const data = await this.request(\n this.endpoints.realfiUrl,\n ORDER_FEES_QUERY,\n );\n return data.orderFees;\n }\n\n async getSusdrExchangeRateInputs(): Promise {\n const data = await this.request(\n this.endpoints.realfiUrl,\n SUSDR_EXCHANGE_RATE_INPUTS_QUERY,\n );\n const inputs = data.susdrExchangeRateInputs;\n return {\n circulatingSusdr: BigInt(inputs.circulatingSusdr),\n vaultUsdr: BigInt(inputs.vaultUsdr),\n pendingYield: BigInt(inputs.pendingYield),\n diffusionStartUnixMilli: BigInt(inputs.diffusionStartUnixMilli),\n diffusionEndUnixMilli: BigInt(inputs.diffusionEndUnixMilli),\n };\n }\n\n async getYieldBreakdown(address: string): Promise {\n const [owner] = ownerKeyHashes(address);\n if (!owner) {\n throw new Error(\"address has no payment credential\");\n }\n const data = await this.request(\n this.endpoints.realfiUrl,\n YIELD_BREAKDOWN_QUERY,\n { owner },\n );\n const breakdown = data.susdrYieldBreakdown;\n return {\n totalSUSDr: BigInt(breakdown.totalSUSDr),\n totalUSDrValue: BigInt(breakdown.totalUSDrValue),\n principal: BigInt(breakdown.principal),\n yield: BigInt(breakdown.yield),\n yieldPercent: breakdown.yieldPercent,\n };\n }\n\n async getPointsBalance(address: string): Promise {\n const value = ownerKeyHashes(address).join(\",\");\n const data = await this.request(\n this.endpoints.assetTransparencyUrl,\n POINTS_BALANCE_QUERY,\n { value },\n );\n const raw = data.V_WALLET_POINTS_BALANCE.nodes[0]?.WALLET_POINTS_BALANCE;\n if (!raw) {\n return { pointsBalance: null, potentialPoints: null, multiplier: null };\n }\n const parsed = JSON.parse(raw) as IRawPointsBalanceData;\n return {\n pointsBalance: parsed.current_balance ?? null,\n potentialPoints: parsed.potential_points ?? null,\n multiplier: parsed.day_multiplier ?? null,\n };\n }\n\n async getReferrerCode(address: string): Promise {\n const data = await this.request(\n this.endpoints.assetTransparencyUrl,\n REFERRER_CODE_QUERY,\n { walletAddress: ownerKeyHashes(address).join(\",\") },\n );\n return data.referrerCode;\n }\n\n async getReferralRewards(address: string): Promise {\n const data = await this.request(\n this.endpoints.assetTransparencyUrl,\n REFERRAL_REWARDS_QUERY,\n { walletAddress: ownerKeyHashes(address).join(\",\") },\n );\n return data.referralRewards;\n }\n\n async getInvitedCount(address: string): Promise {\n const data = await this.request(\n this.endpoints.assetTransparencyUrl,\n INVITED_COUNT_QUERY,\n { walletAddress: ownerKeyHashes(address).join(\",\") },\n );\n return data.invitedCount;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/registry.js b/modules/realfi-partner-sdk/dist/cjs/api/registry.js new file mode 100644 index 0000000000..2b68cf2c21 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/registry.js @@ -0,0 +1,26 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.API_REGISTRY = void 0; +// Per-network GraphQL endpoints for the RealFi off-chain API. + +var API_REGISTRY = exports.API_REGISTRY = { + mainnet: { + realfiUrl: "https://api.app.realfi.co/graphql", + assetTransparencyUrl: "https://api.app.realfi.co/api/v1/asset-transparency", + partnerConfigUrl: "https://app.realfi.co/partner-config.json" + }, + preprod: { + realfiUrl: "https://api.preprod.realfi.co/graphql", + assetTransparencyUrl: "https://api.preprod.realfi.co/api/v1/asset-transparency", + partnerConfigUrl: "https://preprod.realfi.co/partner-config.json" + }, + preview: { + realfiUrl: "https://api.preview.realfi.co/graphql", + assetTransparencyUrl: "https://api.preview.realfi.co/api/v1/asset-transparency", + partnerConfigUrl: "https://preview.realfi.co/partner-config.json" + } +}; +//# sourceMappingURL=registry.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/registry.js.map b/modules/realfi-partner-sdk/dist/cjs/api/registry.js.map new file mode 100644 index 0000000000..5d402ed1d8 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/registry.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry.js","names":["API_REGISTRY","exports","mainnet","realfiUrl","assetTransparencyUrl","partnerConfigUrl","preprod","preview"],"sources":["../../../src/api/registry.ts"],"sourcesContent":["// Per-network GraphQL endpoints for the RealFi off-chain API.\n\nexport type TApiNetwork = \"mainnet\" | \"preprod\" | \"preview\";\n\nexport interface IApiEndpoints {\n /** Main RealFi GraphQL API — orders, stake times, yield, fees, wallet status. */\n realfiUrl: string;\n /** Asset-transparency GraphQL API — points and referral reads. */\n assetTransparencyUrl: string;\n /**\n * Sanitized partner runtime configuration. Optional only for backwards\n * compatibility with custom endpoint objects created before this read was\n * added; `getPartnerConfig()` requires it.\n */\n partnerConfigUrl?: string;\n}\n\nexport const API_REGISTRY: Record = {\n mainnet: {\n realfiUrl: \"https://api.app.realfi.co/graphql\",\n assetTransparencyUrl: \"https://api.app.realfi.co/api/v1/asset-transparency\",\n partnerConfigUrl: \"https://app.realfi.co/partner-config.json\",\n },\n preprod: {\n realfiUrl: \"https://api.preprod.realfi.co/graphql\",\n assetTransparencyUrl:\n \"https://api.preprod.realfi.co/api/v1/asset-transparency\",\n partnerConfigUrl: \"https://preprod.realfi.co/partner-config.json\",\n },\n preview: {\n realfiUrl: \"https://api.preview.realfi.co/graphql\",\n assetTransparencyUrl:\n \"https://api.preview.realfi.co/api/v1/asset-transparency\",\n partnerConfigUrl: \"https://preview.realfi.co/partner-config.json\",\n },\n};\n"],"mappings":";;;;;;AAAA;;AAiBO,IAAMA,YAAgD,GAAAC,OAAA,CAAAD,YAAA,GAAG;EAC9DE,OAAO,EAAE;IACPC,SAAS,EAAE,mCAAmC;IAC9CC,oBAAoB,EAAE,qDAAqD;IAC3EC,gBAAgB,EAAE;EACpB,CAAC;EACDC,OAAO,EAAE;IACPH,SAAS,EAAE,uCAAuC;IAClDC,oBAAoB,EAClB,yDAAyD;IAC3DC,gBAAgB,EAAE;EACpB,CAAC;EACDE,OAAO,EAAE;IACPJ,SAAS,EAAE,uCAAuC;IAClDC,oBAAoB,EAClB,yDAAyD;IAC3DC,gBAAgB,EAAE;EACpB;AACF,CAAC","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/types.js b/modules/realfi-partner-sdk/dist/cjs/api/types.js new file mode 100644 index 0000000000..239667a3d0 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/types.js @@ -0,0 +1,6 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/api/types.js.map b/modules/realfi-partner-sdk/dist/cjs/api/types.js.map new file mode 100644 index 0000000000..80245c7f89 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/api/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","names":[],"sources":["../../../src/api/types.ts"],"sourcesContent":["// Clean, partner-facing result types for the off-chain API.\n\nexport type TOrderStatus =\n | \"Open\"\n | \"Validating\"\n | \"Canceled\"\n | \"Executed\"\n | \"Invalidated\"\n | \"InvalidMinReceived\";\n\nexport type TOrderAction =\n | \"Mint\"\n | \"Redeem\"\n | \"Deposit\"\n | \"Withdraw\"\n | \"Stake\"\n | \"Unstake\"\n | \"DirectMint\"\n | \"DirectBurn\";\n\nexport interface IApiOrderUtxo {\n txHash: string;\n outputIndex: number;\n}\n\nexport interface IOrderInfo {\n owner: string;\n action: TOrderAction;\n status: TOrderStatus;\n amount: bigint;\n slot: bigint;\n forfeit: bigint;\n version: string;\n utxo: IApiOrderUtxo;\n /** Output produced once the order is Executed or Canceled. */\n resultUtxo?: IApiOrderUtxo;\n /** Timelock unlock slot (Unstake only). */\n unlockSlot?: bigint;\n /** Cooldown maturity slot (Unstake only). */\n matureSlot?: bigint;\n /** Populated for Deposit orders. */\n principal?: bigint;\n /** Populated for Deposit orders. */\n yield?: bigint;\n /** Transaction that claimed an Unstake order's cooldown output. */\n claimTxHash?: string;\n}\n\nexport interface IStakeTimes {\n currentCooldownSlot: bigint;\n nextCooldownSlot: bigint;\n}\n\nexport interface IOrderFees {\n mintBps: number;\n redeemBps: number;\n}\n\nexport interface IYieldBreakdown {\n totalSUSDr: bigint;\n totalUSDrValue: bigint;\n principal: bigint;\n yield: bigint;\n yieldPercent: number;\n}\n\nexport interface IPointsBalance {\n pointsBalance: number | null;\n potentialPoints: number | null;\n multiplier: number | null;\n}\n\nexport interface IReferrerCode {\n code: string;\n createdAt: string;\n}\n\n/**\n * Non-negative safe-integer USD UX/business minimums; not protocol\n * `min_received` or fees.\n */\nexport interface IPartnerLimits {\n readonly mintMinUsd: number;\n readonly redeemMinUsd: number;\n}\n\n/**\n * Environment runtime configuration shared with the deployed RealFi dapp.\n *\n * `swapCounterpartAssets` is the product-curated live swap list.\n * `swapOrderHistoryAssets` is its superset for historical and in-flight orders,\n * including disabled pairs. The deploy artifact falls back to the live list\n * when the dapp source leaves the history list unset.\n * Every asset identifier uses Sundae's canonical dotted form\n * (`policyId.assetName`, or `ada.lovelace`), not Cardano Core's concatenated\n * `Core.AssetId` representation. The values can be passed directly to\n * `RealfiSDK.sundae` discovery and builder APIs.\n */\nexport interface IPartnerConfig {\n /** Authoritative USDr ID in Sundae's dotted `policyId.assetName` form. */\n readonly stablecoinAssetId: string;\n readonly swapCounterpartAssets: readonly string[];\n readonly swapOrderHistoryAssets: readonly string[];\n readonly limits: IPartnerLimits;\n}\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/base/index.js b/modules/realfi-partner-sdk/dist/cjs/generated-types/base/index.js new file mode 100644 index 0000000000..9752af2ad9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/base/index.js @@ -0,0 +1,52 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.BaseOneshotOneshotMint = exports.BaseOneshotOneshotElse = exports.BaseMintProxyMintProxyMint = exports.BaseMintProxyMintProxyElse = void 0; +var _uplc = require("@blaze-cardano/uplc"); +var _data = require("@blaze-cardano/data"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable */ // @ts-nocheck +var PolicyId = _data.Type.String(); +var Contracts = _data.Type.Module({}); +var BaseMintProxyMintProxyMint = exports.BaseMintProxyMintProxyMint = /*#__PURE__*/_createClass(function BaseMintProxyMintProxyMint(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, BaseMintProxyMintProxyMint); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" : "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var BaseMintProxyMintProxyElse = exports.BaseMintProxyMintProxyElse = /*#__PURE__*/_createClass(function BaseMintProxyMintProxyElse(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, BaseMintProxyMintProxyElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" : "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var BaseOneshotOneshotMint = exports.BaseOneshotOneshotMint = /*#__PURE__*/_createClass(function BaseOneshotOneshotMint(utxoRef) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, BaseOneshotOneshotMint); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "59031f010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd718098019bae3013001899b87375a6026602800290014528201a30133758602400319800801cc04c00a6026002801a294100c2020404114a3153300a491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" : "5901a3010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d159800992cc004cdc79bae3012003375c602400313370e6eb4c048c04c00520028a50403460246eb0c0440063300100398090014c04800500345282018403c807a29462c804a2c8048dd7180618049baa00359800980118041baa0048acc004c024dd500245268b20148b200e8b200e180400098019baa0088a4d1365640041", _data.Type.Tuple([_data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + })]), [utxoRef]), "PlutusV3"); +}); +var BaseOneshotOneshotElse = exports.BaseOneshotOneshotElse = /*#__PURE__*/_createClass(function BaseOneshotOneshotElse(utxoRef) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, BaseOneshotOneshotElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "59031f010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd718098019bae3013001899b87375a6026602800290014528201a30133758602400319800801cc04c00a6026002801a294100c2020404114a3153300a491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" : "5901a3010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d159800992cc004cdc79bae3012003375c602400313370e6eb4c048c04c00520028a50403460246eb0c0440063300100398090014c04800500345282018403c807a29462c804a2c8048dd7180618049baa00359800980118041baa0048acc004c024dd500245268b20148b200e8b200e180400098019baa0088a4d1365640041", _data.Type.Tuple([_data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + })]), [utxoRef]), "PlutusV3"); +}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/base/index.js.map b/modules/realfi-partner-sdk/dist/cjs/generated-types/base/index.js.map new file mode 100644 index 0000000000..e9351d7c20 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/base/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_uplc","require","_data","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","a","n","TypeError","_defineProperty","value","i","_toPrimitive","toPrimitive","call","String","Number","PolicyId","Type","Contracts","Module","BaseMintProxyMintProxyMint","exports","proxyPolicyId","trace","arguments","undefined","Script","cborToScript","applyParamsToScript","Tuple","BaseMintProxyMintProxyElse","BaseOneshotOneshotMint","utxoRef","transaction_id","output_index","BigInt","ctor","BaseOneshotOneshotElse"],"sources":["../../../../src/generated-types/base/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\nimport { type PlutusData } from \"@blaze-cardano/core\";\ntype Data = PlutusData;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n});\n\n\nexport class BaseMintProxyMintProxyMint {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class BaseMintProxyMintProxyElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class BaseOneshotOneshotMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59031f010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd718098019bae3013001899b87375a6026602800290014528201a30133758602400319800801cc04c00a6026002801a294100c2020404114a3153300a491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"5901a3010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d159800992cc004cdc79bae3012003375c602400313370e6eb4c048c04c00520028a50403460246eb0c0440063300100398090014c04800500345282018403c807a29462c804a2c8048dd7180618049baa00359800980118041baa0048acc004c024dd500245268b20148b200e8b200e180400098019baa0088a4d1365640041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ]),\n [\n utxoRef,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class BaseOneshotOneshotElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59031f010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd718098019bae3013001899b87375a6026602800290014528201a30133758602400319800801cc04c00a6026002801a294100c2020404114a3153300a491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"5901a3010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d159800992cc004cdc79bae3012003375c602400313370e6eb4c048c04c00520028a50403460246eb0c0440063300100398090014c04800500345282018403c807a29462c804a2c8048dd7180618049baa00359800980118041baa0048acc004c024dd500245268b20148b200e8b200e180400098019baa0088a4d1365640041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ]),\n [\n utxoRef,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/index.js b/modules/realfi-partner-sdk/dist/cjs/generated-types/index.js new file mode 100644 index 0000000000..85ce301985 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/index.js @@ -0,0 +1,27 @@ +"use strict"; + +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.V1_1Rc1Types = exports.V1_0Types = exports.V1_0Rc1Types = exports.V0_4Types = exports.V0_3Types = exports.V0_2Types = exports.V0_1Types = exports.V0Types = exports.BaseTypes = void 0; +var _BaseTypes = _interopRequireWildcard(require("./base/index.js")); +exports.BaseTypes = _BaseTypes; +var _V0Types = _interopRequireWildcard(require("./v0/index.js")); +exports.V0Types = _V0Types; +var _V0_1Types = _interopRequireWildcard(require("./v0_1/index.js")); +exports.V0_1Types = _V0_1Types; +var _V0_2Types = _interopRequireWildcard(require("./v0_2/index.js")); +exports.V0_2Types = _V0_2Types; +var _V0_3Types = _interopRequireWildcard(require("./v0_3/index.js")); +exports.V0_3Types = _V0_3Types; +var _V0_4Types = _interopRequireWildcard(require("./v0_4/index.js")); +exports.V0_4Types = _V0_4Types; +var _V1_0Types = _interopRequireWildcard(require("./v1_0/index.js")); +exports.V1_0Types = _V1_0Types; +var _V1_0Rc1Types = _interopRequireWildcard(require("./v1_0_rc1/index.js")); +exports.V1_0Rc1Types = _V1_0Rc1Types; +var _V1_1Rc1Types = _interopRequireWildcard(require("./v1_1_rc1/index.js")); +exports.V1_1Rc1Types = _V1_1Rc1Types; +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/index.js.map b/modules/realfi-partner-sdk/dist/cjs/generated-types/index.js.map new file mode 100644 index 0000000000..b1c4236552 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":[],"sources":["../../../src/generated-types/index.ts"],"sourcesContent":["export * as BaseTypes from \"./base/index.js\";\nexport * as V0Types from \"./v0/index.js\";\nexport * as V0_1Types from \"./v0_1/index.js\";\nexport * as V0_2Types from \"./v0_2/index.js\";\nexport * as V0_3Types from \"./v0_3/index.js\";\nexport * as V0_4Types from \"./v0_4/index.js\";\nexport * as V1_0Types from \"./v1_0/index.js\";\nexport * as V1_0Rc1Types from \"./v1_0_rc1/index.js\";\nexport * as V1_1Rc1Types from \"./v1_1_rc1/index.js\";\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v0/index.js b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0/index.js new file mode 100644 index 0000000000..5a682e028f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0/index.js @@ -0,0 +1,30 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.V0ProtocolProtocolWithdraw = exports.V0ProtocolProtocolElse = void 0; +var _uplc = require("@blaze-cardano/uplc"); +var _data = require("@blaze-cardano/data"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable */ // @ts-nocheck +var PolicyId = _data.Type.String(); +var Contracts = _data.Type.Module({}); +var V0ProtocolProtocolWithdraw = exports.V0ProtocolProtocolWithdraw = /*#__PURE__*/_createClass(function V0ProtocolProtocolWithdraw() { + var trace = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; + _classCallCheck(this, V0ProtocolProtocolWithdraw); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)(trace ? "58b601010029800aba4aba2aba1aab9faab9eaab9dab9cab9a488888888c96600264653001300900198049805000cc0240092225980099b8748010c024dd500144c96600200915980099b8748000c028dd5002456600260166ea8012294600e806200e804200f007803c01d00f180618051baa0028b200e180480098029baa00a8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" : "587401010029800aba2aba1aab9faab9eaab9dab9a48888896600264653001300700198039804000cc01c0092225980099b8748010c01cdd500144cc8928980518041baa0025980099b8748000c01cdd5001c56600260106ea800e2934590094590064590060c01c004c00cdd5003c52689b2b200201", "PlutusV3"); +}); +var V0ProtocolProtocolElse = exports.V0ProtocolProtocolElse = /*#__PURE__*/_createClass(function V0ProtocolProtocolElse() { + var trace = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; + _classCallCheck(this, V0ProtocolProtocolElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)(trace ? "58b601010029800aba4aba2aba1aab9faab9eaab9dab9cab9a488888888c96600264653001300900198049805000cc0240092225980099b8748010c024dd500144c96600200915980099b8748000c028dd5002456600260166ea8012294600e806200e804200f007803c01d00f180618051baa0028b200e180480098029baa00a8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" : "587401010029800aba2aba1aab9faab9eaab9dab9a48888896600264653001300700198039804000cc01c0092225980099b8748010c01cdd500144cc8928980518041baa0025980099b8748000c01cdd5001c56600260106ea800e2934590094590064590060c01c004c00cdd5003c52689b2b200201", "PlutusV3"); +}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v0/index.js.map b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0/index.js.map new file mode 100644 index 0000000000..80f9f247cd --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_uplc","require","_data","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","a","n","TypeError","_defineProperty","value","i","_toPrimitive","toPrimitive","call","String","Number","PolicyId","Type","Contracts","Module","V0ProtocolProtocolWithdraw","exports","trace","arguments","undefined","Script","cborToScript","V0ProtocolProtocolElse"],"sources":["../../../../src/generated-types/v0/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\nimport { type PlutusData } from \"@blaze-cardano/core\";\ntype Data = PlutusData;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n});\n\n\nexport class V0ProtocolProtocolWithdraw {\n public Script: Script\n constructor(\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n trace\n ?\n \"58b601010029800aba4aba2aba1aab9faab9eaab9dab9cab9a488888888c96600264653001300900198049805000cc0240092225980099b8748010c024dd500144c96600200915980099b8748000c028dd5002456600260166ea8012294600e806200e804200f007803c01d00f180618051baa0028b200e180480098029baa00a8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"587401010029800aba2aba1aab9faab9eaab9dab9a48888896600264653001300700198039804000cc01c0092225980099b8748010c01cdd500144cc8928980518041baa0025980099b8748000c01cdd5001c56600260106ea800e2934590094590064590060c01c004c00cdd5003c52689b2b200201\",\n \"PlutusV3\"\n );\n }\n}\nexport class V0ProtocolProtocolElse {\n public Script: Script\n constructor(\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n trace\n ?\n \"58b601010029800aba4aba2aba1aab9faab9eaab9dab9cab9a488888888c96600264653001300900198049805000cc0240092225980099b8748010c024dd500144c96600200915980099b8748000c028dd5002456600260166ea8012294600e806200e804200f007803c01d00f180618051baa0028b200e180480098029baa00a8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"587401010029800aba2aba1aab9faab9eaab9dab9a48888896600264653001300700198039804000cc01c0092225980099b8748010c01cdd500144cc8928980518041baa0025980099b8748000c01cdd5001c56600260106ea800e2934590094590064590060c01c004c00cdd5003c52689b2b200201\",\n \"PlutusV3\"\n );\n }\n}"],"mappings":";;;;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AAA+D,SAAAE,QAAAC,CAAA,sCAAAD,OAAA,wBAAAE,MAAA,uBAAAA,MAAA,CAAAC,QAAA,aAAAF,CAAA,kBAAAA,CAAA,gBAAAA,CAAA,WAAAA,CAAA,yBAAAC,MAAA,IAAAD,CAAA,CAAAG,WAAA,KAAAF,MAAA,IAAAD,CAAA,KAAAC,MAAA,CAAAG,SAAA,qBAAAJ,CAAA,KAAAD,OAAA,CAAAC,CAAA;AAAA,SAAAK,kBAAAC,CAAA,EAAAC,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAD,CAAA,CAAAE,MAAA,EAAAD,CAAA,UAAAR,CAAA,GAAAO,CAAA,CAAAC,CAAA,GAAAR,CAAA,CAAAU,UAAA,GAAAV,CAAA,CAAAU,UAAA,QAAAV,CAAA,CAAAW,YAAA,kBAAAX,CAAA,KAAAA,CAAA,CAAAY,QAAA,QAAAC,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAS,cAAA,CAAAf,CAAA,CAAAgB,GAAA,GAAAhB,CAAA;AAAA,SAAAiB,aAAAX,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,IAAAF,iBAAA,CAAAC,CAAA,CAAAF,SAAA,EAAAG,CAAA,GAAAC,CAAA,IAAAH,iBAAA,CAAAC,CAAA,EAAAE,CAAA,GAAAK,MAAA,CAAAC,cAAA,CAAAR,CAAA,iBAAAM,QAAA,SAAAN,CAAA;AAAA,SAAAY,gBAAAC,CAAA,EAAAC,CAAA,UAAAD,CAAA,YAAAC,CAAA,aAAAC,SAAA;AAAA,SAAAC,gBAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAQ,cAAA,CAAAR,CAAA,MAAAD,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAC,CAAA,IAAAgB,KAAA,EAAAf,CAAA,EAAAE,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAN,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAS,eAAAP,CAAA,QAAAgB,CAAA,GAAAC,YAAA,CAAAjB,CAAA,gCAAAT,OAAA,CAAAyB,CAAA,IAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAjB,CAAA,EAAAD,CAAA,oBAAAR,OAAA,CAAAS,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAP,MAAA,CAAAyB,WAAA,kBAAApB,CAAA,QAAAkB,CAAA,GAAAlB,CAAA,CAAAqB,IAAA,CAAAnB,CAAA,EAAAD,CAAA,gCAAAR,OAAA,CAAAyB,CAAA,UAAAA,CAAA,YAAAH,SAAA,yEAAAd,CAAA,GAAAqB,MAAA,GAAAC,MAAA,EAAArB,CAAA,KAJ/D,qBACA;AAQA,IAAMsB,QAAQ,GAAGC,UAAI,CAACH,MAAM,CAAC,CAAC;AAG9B,IAAMI,SAAS,GAAGD,UAAI,CAACE,MAAM,CAAC,CAC9B,CAAC,CAAC;AAAC,IAGUC,0BAA0B,GAAAC,OAAA,CAAAD,0BAAA,gBAAAjB,YAAA,CAErC,SAAAiB,2BAAA,EAEE;EAAA,IADAE,KAAe,GAAAC,SAAA,CAAA5B,MAAA,QAAA4B,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,KAAK;EAAAnB,eAAA,OAAAgB,0BAAA;EAAAZ,eAAA;EAEvB,IAAI,CAACiB,MAAM,GAAG,IAAAC,kBAAY,EACxBJ,KAAK,GAEH,kXAAkX,GAElX,8OAA8O,EAChP,UACF,CAAC;AACH,CAAC;AAAA,IAEUK,sBAAsB,GAAAN,OAAA,CAAAM,sBAAA,gBAAAxB,YAAA,CAEjC,SAAAwB,uBAAA,EAEE;EAAA,IADAL,KAAe,GAAAC,SAAA,CAAA5B,MAAA,QAAA4B,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,KAAK;EAAAnB,eAAA,OAAAuB,sBAAA;EAAAnB,eAAA;EAEvB,IAAI,CAACiB,MAAM,GAAG,IAAAC,kBAAY,EACxBJ,KAAK,GAEH,kXAAkX,GAElX,8OAA8O,EAChP,UACF,CAAC;AACH,CAAC","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_1/index.js b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_1/index.js new file mode 100644 index 0000000000..e883071337 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_1/index.js @@ -0,0 +1,146 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.V0_1TreasuryTreasurySpend = exports.V0_1TreasuryTreasuryMint = exports.V0_1TreasuryTreasuryElse = exports.V0_1ProtocolProtocolWithdraw = exports.V0_1ProtocolProtocolElse = exports.TreasuryDatum = exports.Settings = exports.Registry = exports.ProxyDatum = exports.ProtocolRedeemer = exports.MultisigScript = exports.Asset = void 0; +var _uplc = require("@blaze-cardano/uplc"); +var _data = require("@blaze-cardano/data"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable */ // @ts-nocheck +var PolicyId = _data.Type.String(); +var Contracts = _data.Type.Module({ + MultisigScript: _data.Type.Union([_data.Type.Object({ + Signature: _data.Type.Object({ + key_hash: _data.Type.String() + }, { + ctor: 0n + }) + }), _data.Type.Object({ + AllOf: _data.Type.Object({ + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 1n + }) + }), _data.Type.Object({ + AnyOf: _data.Type.Object({ + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 2n + }) + }), _data.Type.Object({ + AtLeast: _data.Type.Object({ + required: _data.Type.BigInt(), + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 3n + }) + }), _data.Type.Object({ + Before: _data.Type.Object({ + time: _data.Type.BigInt() + }, { + ctor: 4n + }) + }), _data.Type.Object({ + After: _data.Type.Object({ + time: _data.Type.BigInt() + }, { + ctor: 5n + }) + }), _data.Type.Object({ + Script: _data.Type.Object({ + script_hash: _data.Type.String() + }, { + ctor: 6n + }) + })]), + Asset: _data.Type.Tuple([_data.Type.String(), _data.Type.String()]), + ProtocolRedeemer: _data.Type.Union([_data.Type.Literal("Mint", { + ctor: 0n + }), _data.Type.Literal("Burn", { + ctor: 1n + })]), + ProxyDatum: _data.Type.Object({ + logic: _data.Type.String(), + settings: _data.Type.Ref("Settings") + }, { + ctor: 0n + }), + Registry: _data.Type.Object({ + treasury: _data.Type.String(), + usdr: _data.Type.String() + }, { + ctor: 0n + }), + Settings: _data.Type.Object({ + mint_permission: _data.Type.Ref("MultisigScript"), + burn_permission: _data.Type.Ref("MultisigScript"), + registry: _data.Type.Ref("Registry"), + reserve_token: _data.Type.Ref("Asset") + }, { + ctor: 0n + }), + TreasuryDatum: _data.Type.Object({ + circulating_supply: _data.Type.BigInt() + }, { + ctor: 0n + }) +}); +var MultisigScript = exports.MultisigScript = Contracts.Import("MultisigScript"); +var Asset = exports.Asset = Contracts.Import("Asset"); +var ProtocolRedeemer = exports.ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +var ProxyDatum = exports.ProxyDatum = Contracts.Import("ProxyDatum"); +var Registry = exports.Registry = Contracts.Import("Registry"); +var Settings = exports.Settings = Contracts.Import("Settings"); +var TreasuryDatum = exports.TreasuryDatum = Contracts.Import("TreasuryDatum"); +var V0_1ProtocolProtocolWithdraw = exports.V0_1ProtocolProtocolWithdraw = /*#__PURE__*/_createClass(function V0_1ProtocolProtocolWithdraw(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_1ProtocolProtocolWithdraw); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "5914b1010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692015e657870656374205b50616972286e616d652c206d696e745f616d6f756e74295d203d0a2020202074782e6d696e74207c3e20746f6b656e732873657474696e67732e72656769737472792e7573647229207c3e20746f5f7061697273282900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488896600264653001300e00198071807800cdc3a4009300e00248889660026004601c6ea800e264b30010058999119912cc004c00c0062b300130143754013002806202a8acc004c0100062b300130143754013002806202a80620224044330012259800800c52f5c1133016301330170013300200230180014055374a900048c058c05c00644646600200200644b30010018a508acc004cdc79bae30190010038a51899801001180d000a026405d2301630173017001488888c8cc88c8c96600200313232598009806980e9baa0038992cc00400603113259800800c4c96600200301a8992cc004006264b300100180e44c96600200313259800800c07a264b300100180fc07e264b3001302b0038cc004022330010068acc004c058c098dd500244c9660020030218992cc004006045022811408a26644b300100181244c966002003025812c09604b132598009818801c56600200f0268992cc00400604f027813c09e26644b3001001814c4c96600200302a81540aa05513259800981b001c660026e9520029181b181b981b981b981b981b981b981b981b800c8c0d8c0dcc0dcc0dcc0dcc0dcc0dcc0dc0064606c606e606e606e606e606e606e002911119912cc004c09cc0dcdd5016c5660033001303b3038375403b3758600a60706ea80aa600860706ea80aa6eacc00cc0e0dd50152004899b8848000cc0040740aa2a6606c9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d5159800cc004c090c0e0dd500ecdd61802981c1baa02a9802181c1baa02a9bab3003303837540548012266e20cc0040740a920008a9981b2481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d481a88888c8cc00400401488c9660026058003133028006375c6080607a6ea800a2b3001302d001899198008009bac3041303e375400644b30010018a518acc004cc014014c108006266004004608600314a081e1040456600260600031323300100137586082607c6ea800c896600200314a1159800998028029821000c528c4cc008008c10c00503c20808acc004cdc3a400c003132337126eb4c104004c8cc004004dd618211821801112cc0040062900044cc89660026601001000513370000290014400503f1821800998010011822000a082303d375400515980099b874802000626644b3001302f303e3754003132598009818181f9baa302c30403754605860806ea8022266e2400400e266e2000400d03d1bad3042303f375400314a081e0dd69820181e9baa0023040303d37546052607a6ea80162b30013370e9005000c4cc8966002605e607c6ea8006264b30013030303f3754605860806ea8c10cc100dd500444cdc4801800c4cdc4001800a07a375a6084607e6ea8006294103c1bad3040303d37540046080607a6ea8c100c0f4dd5002c4c8c8cc004004018896600200314a115980099baf003303f30430018a518998010011822000a07a410460166607e6080607a6ea80092f5c081d103a207440e881d103a181d9baa001223259800800c0d2264b3001303e0028992cc004cdc79bae303a00248810455534472008992cc004cc896600200314a11329800992cc004c0bcc0fcdd5000c4dd6982018219bab30433040375400314800103d1821000cdd798211821800cdd58012444b30010018acc004c008016266e2520000038a5040fd1325980099baf30420014c10140008acc004cdc49bad304330463756608600200913003374c608e00514a082022b300133712900000244c00c01a294104020803045001410c329800800c00e4466086004660866e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1040066eacc108006608c0069112cc004cdc8a441000038acc004cdc7a441000038998029819198239ba60024bd70000c4cc015300103d87a8000006410919800803c006446600e0046609266ec0dd48029ba6004001401c82106088004821229422942294104319192cc004c0b4c0f4dd5000c4c96600266ebcc108c0fcdd51821181f9baa302b303f3754002601a660826ea400d2f5c1132598009817981f9baa0018992cc004cdd7982218209baa304430413754002601e660866ea40152f5c11329800800cdd5981718211baa00299198008009bab302f30433754605e60866ea8014896600200314bd6f7b63044c8cc11ccdd818220009ba632330010013756608c00444b30010018a5eb7bdb1822646609466ec0c11c004dd419b8148000dd698240009980180198260011825000a09033003003304900230470014114800888966002005100189919914c00401a609600b32330010010052259800800c4cc12ccdd81ba9004374c00697adef6c608994c004dd71824800cdd59825000cc1380092225980099b9000800389982799bb037520106e9801c0162b30013371e01000713259800981e98269baa00189982819bb0375201260a2609c6ea800400a20048258c966002b30010018a518a50413d14c0103d87a80008981d998281ba60014bd702096329800800c022006800888966002005100189919914c00401a60ae00b32330010010052259800800c4cc15ccdd81ba9004375000697adef6c608994c004dd7182a800cdd6982b000cc1680092225980099b9000800389982d99bb037520106ea001c0162b30013371e010007132598009824982c9baa00189982e19bb0375201260ba60b46ea800400a200482b8c966002609200314c0103d87a8000898239982e1ba80014bd7020ae3370000e00513305b337606ea400cdd400119803003000a0ac4158305800141588030dd718280009bad30510013053002414513304f337606ea400cdd300119803003000a0944128304c00141288030dd718220009bab304500130470024115153303f49013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f8608660806ea80062a6607c92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c2073637269707429001640f46604c6eb0c0a4c0fcdd500411981598141bab302c30403754002009153303d49014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f06082607c6ea8006297adef6c6040ec660466eb0c100c0f4dd50030009bae303f303c3754604c60786ea8018dd31981f19bb0303f001374c6607c66ec0c0fcc100004dd400125eb7bdb1812f5bded8c110028a9981d2481786578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612c0a2020202020205b5061697228726573657276655f706f6c6963792c205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74295d295d2c0a2020202020203e3d2c0a2020202029001640e46eb0c0f8c0fcc0fcc0fcc0ecdd5002c54cc0e5240113657870656374206e616d65203d3d2075736472001640e06eb4c0e800606a81d8c0f000503a1991192cc004c0acc0e8dd5000c52f5bded8c113756607c60766ea80050381919800800801912cc0040062980103d87a8000899192cc004cdc8802800c56600266e3c0140062605666080607c00497ae08a60103d87a800040ed133004004304200340ec6eb8c0f0004c0fc00503d1bab303b303c303c303c303c303837540026eb8c090c0e0dd51811181c1baa00240ad0331bae00140d860660028188dd700098190042066303000740b902640b86eb80050311817000a058375c002605a0048170c0ac00502918139baa0048102048810201481020148102050375800301f80fa05630280014098605000501d80ec07603a8148c0980050241813001406e03701b80da04e30240014088604800501980cc0660328128c088005020180f1baa00380ba036222329800800c0120068008888c966002602600313259800800c01a264b3001001803c01e00f0078992cc004c0ac00e00b00840a06eb800502b1814000a04c30243754007159800980a000c4c9660020030068992cc00400600f0078992cc004c0ac00e26601600244b3001002803c4c96600200319800805400626004605c006805201700b805c02d02f1816001205480420503758003007803a0563028001409860486ea800e2b300130170018992cc00400600d13259800800c01e00f132598009815801c4cc02c00489660020050078992cc0040063300100a800c4c008c0b800d00a402e01700b805a05e302c00240a900840a06eb000600f00740ac60500028130c090dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817001c4cc038004896600200500a8992cc0040063300100d800c4c008c0c400d00d403a01d00e8072064302f00240b500b40ac6eb000601500a40b860560028148dd68009815001401d02b1814000a04c3024375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302b003802c0210281bad001803a0563028001409860486ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260560070058042050375a00300740ac60500028130c090dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260560070058042050375c0028158c0a000502618121baa003802a04240848109021204240848108c088dd500111191980080080191198018009801001405602b01580aa0423007301b375464646644646644a6604066e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea407922010013259800980918111baa00189929981119b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980c18121baa0018992cc0040062b300130153025375400313259800800c086264b3001001811408a045022899912cc0040060491325980098178014401a04a8160c0b400502b1bae001302c00240b460540028140c098dd5000c08102340820410208102056302830253754003153302349013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164088601c60486ea8c040c090dd5000981318119baa0018a99810a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640806601000203c60020026eb0c030c080dd5009111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920505980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81110221bac3025002375a60460026466ec0dd418118009ba73024001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6050003337149101023a200098008054c0a400600a805100a181580144ca6002015302800199b8a489023a200098008054c0a4006600e66008008004805100a18158012052302b00140a066e29220102207d0000340946eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006204a3758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc40012402914818229037204e3371666e000056600266e2000520148a40c11481b9027002200c33706002901019b8600148080cdc70020012048375c0068140dc5245022c200022323300100100322598009808000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407880f08888c8cc004004014896600200310058992cc004006266008604e00400d1330053027002330030030014094604e0028120c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901b111980180111980418029bab3009301d37546012603a6ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146603e00297ae089980180198108012034301f0014074600a00a3011375400e6e1d2002370e90004022011008804202a3012300f3754007164030300e0013009375401f149a2a6600e92011856616c696461746f722072657475726e65642066616c7365001365640181" : "590b64010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a4001300937540089111192cc004c00c00a2b3001300f37540130018b20208acc004c01000a2b3001300f37540130018b20208b201a4034330012259800800c52f5c1133012300f30130013300200230140014045374a900048c048c04c00644646600200200644b30010018a508acc004cdc79bae30150010038a51899801001180b000a020404d230123013301300191191980080080191198018009801001244444466446644646644b3001300f301a375400513232323298009bac30220019811001cc08800922259800981300244cc020c09401c4cc020008566002602c60426ea8006264646644b3001302a00389919912cc004c0b400e33001374a900148c0b4c0b8c0b8c0b8c0b8c0b8c0b8c0b8c0b80064605a605c605c605c605c605c605c605c0032302d302e302e302e302e302e302e00148888cc89660026046605c6ea80a62b30019800981918179baa0169bac3005302f375404d3004302f375404d37566006605e6ea809900244cdc4240006600202c04d1640b5159800cc004c07cc0bcdd500b4dd6180298179baa026980218179baa0269bab3003302f375404c8012266e20cc00405809920008b205a40b44444646600200200a4464b300130280018998118031bae3037303437540051598009814800c4c8cc004004dd6181c181a9baa0032259800800c528c5660026600a00a6072003133002002303a0018a5040d081ba2b3001302c001899198008009bac30383035375400644b30010018a508acc004cc014014c0e40062946266004004607400281a1037456600266e1d200600189919b89375a607000264660020026eb0c0e4c0e8008896600200314800226644b300133008008002899b800014800a200281b8c0e8004cc008008c0ec005038181a1baa0028acc004cdc3a401000313322598009815981a9baa0018992cc004c0b0c0d8dd51813981b9baa30273037375401113371200200713371000200681a8dd6981c981b1baa0018a5040d06eb4c0dcc0d0dd5001181b981a1baa30243034375400b15980099b874802800626644b3001302b30353754003132598009816181b1baa3027303737546074606e6ea8022266e2400c006266e2000c0050351bad30393036375400314a081a0dd6981b981a1baa002303730343754606e60686ea8016264646600200200c44b30010018a508acc004cdd7801981b181d000c528c4cc008008c0ec0050352070300b3303630373034375400497ae040c88191032206440c88190c0c8dd500091192cc004c0d000626464b30013371e6eb8c0c40092210455534472008992cc004cc896600200314a11329800992cc004c0acc0d8dd5000c4dd6981b981d1bab303a30373754003148001035181c800cdd7981c981d000cdd58012444b30010018acc004c008016266e2520000038a5040dd1325980099baf30390014c10140008acc004cdc49bad303a303d3756607400200913003374c607c00514a081c22b300133712900000244c00c01a29410382070303c00140e8329800800c00e4466074004660746e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c0e00066eacc0e4006607a0069112cc004cdc8a441000038acc004cdc7a4410000389980298169981f1ba60024bd70000c4cc015300103d87a800000640e919800803c006446600e0046608066ec0dd48029ba6004001401c81d0607600481ca29422942294103a19192cc004c0a4c0d0dd5000c4c96600266ebcc0e4c0d8dd5181c981b1baa302630363754002601a660706ea400d2f5c1132598009815981b1baa0018992cc004cdd7981d981c1baa303b30383754002601e660746ea40152f5c11329800800cdd59814981c9baa00299198008009bab302a303a3754605460746ea8014896600200314bd6f7b63044c8cc0f8cdd8181d8009ba632330010013756607a00444b30010018a5eb7bdb1822646608266ec0c0f8004dd419b8148000dd6981f8009980180198218011820800a07e330030033040002303e00140f0800888966002005100189919914c00401a608400b32330010010052259800800c4cc108cdd81ba9004374c00697adef6c608994c004dd71820000cdd59820800cc1140092225980099b9000800389982319bb037520106e9801c0162b30013371e01000713259800981c98221baa00189982399bb037520126090608a6ea800400a20048218c966002b30010018a518a50411914c0103d87a80008981b198239ba60014bd702086329800800c022006800888966002005100189919914c00401a609c00b32330010010052259800800c4cc138cdd81ba9004375000697adef6c608994c004dd71826000cdd69826800cc1440092225980099b9000800389982919bb037520106ea001c0162b30013371e01000713259800982298281baa00189982999bb0375201260a860a26ea800400a20048278c966002608a00314c0103d87a800089821198299ba80014bd70209e3370000e005133052337606ea400cdd400119803003000a09c4138304f00141348030dd718238009bad3048001304a0024121133046337606ea400cdd300119803003000a0844108304300141048030dd7181d8009bab303c001303e00240f11640d86074606e6ea80062c81a8cc07cdd61812181b1baa00823302630213756604e606e6ea80040122c81a0c0e0c0d4dd5000c52f5bded8c08198cc070dd6181b981a1baa006001375c606c60666ea8c084c0ccdd50031ba63303533760606c0026e98cc0d4cdd8181b181b8009ba80024bd6f7b63025eb7bdb18220051640c46eb0c0d4c0d8c0d8c0d8c0c8dd5002c590301bad303100130330018b206233223259800981398189baa0018a5eb7bdb18226eacc0d4c0c8dd5000a06032330010010032259800800c5300103d87a8000899192cc004cdc8802800c56600266e3c0140062604c6606e606a00497ae08a60103d87a800040cd133004004303900340cc6eb8c0cc004c0d80050341bab30323033303330333033302f37540026eb8c07cc0bcdd5180e98179baa00245902a1bae302a001375c6054010605400f16409c6eb8c09c004dd71813801181380098111baa0018b20408b2046181100098108009810000980d9baa0028b203230093019375464b3001300e30193754003132598009809980d1baa0018992cc004c040c06cdd5000c4c8c8cc8966002604800710058b20423021001375c6042004604200260386ea80062c80d0c078c06cdd5000c590191804180d1baa300a301a3754603a60346ea80062c80c0cc004dd61804980c9baa0100163004004223300300223300a30053756601660366ea8c02cc06cdd500080111801800911919800800801912cc0040062980103d87a80008992cc004c010006260186603a00297ae0899801801980f8012032301d001406c600c00c44464b3001300c001899192cc004c07800a00916406c6eb8c070004c060dd5001c566002601a00313259800980e800c4cc018dd6180e000912cc00400a00b19800803cc07800a26002603e004803901c45901a180c1baa0038acc004c040006264b3001301d0018998031bac301c0012259800801401633001007980f00144c004c07c00900720388b20343018375400715980099b87480180062646644b3001301f0018998041bac301e0012259800801401e33001009981000144c004c084009009203c8b2038375a6038002603a00260306ea800e2b30013370e9004000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9005000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9006000c4c8c966002603c0050048b2036375c603800260306ea800e2c80b1016202c405880b1016202c301637540044590080c024004c010dd5005452689b2b20041", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var V0_1ProtocolProtocolElse = exports.V0_1ProtocolProtocolElse = /*#__PURE__*/_createClass(function V0_1ProtocolProtocolElse(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_1ProtocolProtocolElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "5914b1010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692015e657870656374205b50616972286e616d652c206d696e745f616d6f756e74295d203d0a2020202074782e6d696e74207c3e20746f6b656e732873657474696e67732e72656769737472792e7573647229207c3e20746f5f7061697273282900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488896600264653001300e00198071807800cdc3a4009300e00248889660026004601c6ea800e264b30010058999119912cc004c00c0062b300130143754013002806202a8acc004c0100062b300130143754013002806202a80620224044330012259800800c52f5c1133016301330170013300200230180014055374a900048c058c05c00644646600200200644b30010018a508acc004cdc79bae30190010038a51899801001180d000a026405d2301630173017001488888c8cc88c8c96600200313232598009806980e9baa0038992cc00400603113259800800c4c96600200301a8992cc004006264b300100180e44c96600200313259800800c07a264b300100180fc07e264b3001302b0038cc004022330010068acc004c058c098dd500244c9660020030218992cc004006045022811408a26644b300100181244c966002003025812c09604b132598009818801c56600200f0268992cc00400604f027813c09e26644b3001001814c4c96600200302a81540aa05513259800981b001c660026e9520029181b181b981b981b981b981b981b981b981b800c8c0d8c0dcc0dcc0dcc0dcc0dcc0dcc0dc0064606c606e606e606e606e606e606e002911119912cc004c09cc0dcdd5016c5660033001303b3038375403b3758600a60706ea80aa600860706ea80aa6eacc00cc0e0dd50152004899b8848000cc0040740aa2a6606c9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d5159800cc004c090c0e0dd500ecdd61802981c1baa02a9802181c1baa02a9bab3003303837540548012266e20cc0040740a920008a9981b2481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d481a88888c8cc00400401488c9660026058003133028006375c6080607a6ea800a2b3001302d001899198008009bac3041303e375400644b30010018a518acc004cc014014c108006266004004608600314a081e1040456600260600031323300100137586082607c6ea800c896600200314a1159800998028029821000c528c4cc008008c10c00503c20808acc004cdc3a400c003132337126eb4c104004c8cc004004dd618211821801112cc0040062900044cc89660026601001000513370000290014400503f1821800998010011822000a082303d375400515980099b874802000626644b3001302f303e3754003132598009818181f9baa302c30403754605860806ea8022266e2400400e266e2000400d03d1bad3042303f375400314a081e0dd69820181e9baa0023040303d37546052607a6ea80162b30013370e9005000c4cc8966002605e607c6ea8006264b30013030303f3754605860806ea8c10cc100dd500444cdc4801800c4cdc4001800a07a375a6084607e6ea8006294103c1bad3040303d37540046080607a6ea8c100c0f4dd5002c4c8c8cc004004018896600200314a115980099baf003303f30430018a518998010011822000a07a410460166607e6080607a6ea80092f5c081d103a207440e881d103a181d9baa001223259800800c0d2264b3001303e0028992cc004cdc79bae303a00248810455534472008992cc004cc896600200314a11329800992cc004c0bcc0fcdd5000c4dd6982018219bab30433040375400314800103d1821000cdd798211821800cdd58012444b30010018acc004c008016266e2520000038a5040fd1325980099baf30420014c10140008acc004cdc49bad304330463756608600200913003374c608e00514a082022b300133712900000244c00c01a294104020803045001410c329800800c00e4466086004660866e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1040066eacc108006608c0069112cc004cdc8a441000038acc004cdc7a441000038998029819198239ba60024bd70000c4cc015300103d87a8000006410919800803c006446600e0046609266ec0dd48029ba6004001401c82106088004821229422942294104319192cc004c0b4c0f4dd5000c4c96600266ebcc108c0fcdd51821181f9baa302b303f3754002601a660826ea400d2f5c1132598009817981f9baa0018992cc004cdd7982218209baa304430413754002601e660866ea40152f5c11329800800cdd5981718211baa00299198008009bab302f30433754605e60866ea8014896600200314bd6f7b63044c8cc11ccdd818220009ba632330010013756608c00444b30010018a5eb7bdb1822646609466ec0c11c004dd419b8148000dd698240009980180198260011825000a09033003003304900230470014114800888966002005100189919914c00401a609600b32330010010052259800800c4cc12ccdd81ba9004374c00697adef6c608994c004dd71824800cdd59825000cc1380092225980099b9000800389982799bb037520106e9801c0162b30013371e01000713259800981e98269baa00189982819bb0375201260a2609c6ea800400a20048258c966002b30010018a518a50413d14c0103d87a80008981d998281ba60014bd702096329800800c022006800888966002005100189919914c00401a60ae00b32330010010052259800800c4cc15ccdd81ba9004375000697adef6c608994c004dd7182a800cdd6982b000cc1680092225980099b9000800389982d99bb037520106ea001c0162b30013371e010007132598009824982c9baa00189982e19bb0375201260ba60b46ea800400a200482b8c966002609200314c0103d87a8000898239982e1ba80014bd7020ae3370000e00513305b337606ea400cdd400119803003000a0ac4158305800141588030dd718280009bad30510013053002414513304f337606ea400cdd300119803003000a0944128304c00141288030dd718220009bab304500130470024115153303f49013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f8608660806ea80062a6607c92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c2073637269707429001640f46604c6eb0c0a4c0fcdd500411981598141bab302c30403754002009153303d49014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f06082607c6ea8006297adef6c6040ec660466eb0c100c0f4dd50030009bae303f303c3754604c60786ea8018dd31981f19bb0303f001374c6607c66ec0c0fcc100004dd400125eb7bdb1812f5bded8c110028a9981d2481786578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612c0a2020202020205b5061697228726573657276655f706f6c6963792c205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74295d295d2c0a2020202020203e3d2c0a2020202029001640e46eb0c0f8c0fcc0fcc0fcc0ecdd5002c54cc0e5240113657870656374206e616d65203d3d2075736472001640e06eb4c0e800606a81d8c0f000503a1991192cc004c0acc0e8dd5000c52f5bded8c113756607c60766ea80050381919800800801912cc0040062980103d87a8000899192cc004cdc8802800c56600266e3c0140062605666080607c00497ae08a60103d87a800040ed133004004304200340ec6eb8c0f0004c0fc00503d1bab303b303c303c303c303c303837540026eb8c090c0e0dd51811181c1baa00240ad0331bae00140d860660028188dd700098190042066303000740b902640b86eb80050311817000a058375c002605a0048170c0ac00502918139baa0048102048810201481020148102050375800301f80fa05630280014098605000501d80ec07603a8148c0980050241813001406e03701b80da04e30240014088604800501980cc0660328128c088005020180f1baa00380ba036222329800800c0120068008888c966002602600313259800800c01a264b3001001803c01e00f0078992cc004c0ac00e00b00840a06eb800502b1814000a04c30243754007159800980a000c4c9660020030068992cc00400600f0078992cc004c0ac00e26601600244b3001002803c4c96600200319800805400626004605c006805201700b805c02d02f1816001205480420503758003007803a0563028001409860486ea800e2b300130170018992cc00400600d13259800800c01e00f132598009815801c4cc02c00489660020050078992cc0040063300100a800c4c008c0b800d00a402e01700b805a05e302c00240a900840a06eb000600f00740ac60500028130c090dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817001c4cc038004896600200500a8992cc0040063300100d800c4c008c0c400d00d403a01d00e8072064302f00240b500b40ac6eb000601500a40b860560028148dd68009815001401d02b1814000a04c3024375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302b003802c0210281bad001803a0563028001409860486ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260560070058042050375a00300740ac60500028130c090dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260560070058042050375c0028158c0a000502618121baa003802a04240848109021204240848108c088dd500111191980080080191198018009801001405602b01580aa0423007301b375464646644646644a6604066e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea407922010013259800980918111baa00189929981119b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980c18121baa0018992cc0040062b300130153025375400313259800800c086264b3001001811408a045022899912cc0040060491325980098178014401a04a8160c0b400502b1bae001302c00240b460540028140c098dd5000c08102340820410208102056302830253754003153302349013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164088601c60486ea8c040c090dd5000981318119baa0018a99810a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640806601000203c60020026eb0c030c080dd5009111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920505980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81110221bac3025002375a60460026466ec0dd418118009ba73024001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6050003337149101023a200098008054c0a400600a805100a181580144ca6002015302800199b8a489023a200098008054c0a4006600e66008008004805100a18158012052302b00140a066e29220102207d0000340946eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006204a3758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc40012402914818229037204e3371666e000056600266e2000520148a40c11481b9027002200c33706002901019b8600148080cdc70020012048375c0068140dc5245022c200022323300100100322598009808000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407880f08888c8cc004004014896600200310058992cc004006266008604e00400d1330053027002330030030014094604e0028120c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901b111980180111980418029bab3009301d37546012603a6ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146603e00297ae089980180198108012034301f0014074600a00a3011375400e6e1d2002370e90004022011008804202a3012300f3754007164030300e0013009375401f149a2a6600e92011856616c696461746f722072657475726e65642066616c7365001365640181" : "590b64010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a4001300937540089111192cc004c00c00a2b3001300f37540130018b20208acc004c01000a2b3001300f37540130018b20208b201a4034330012259800800c52f5c1133012300f30130013300200230140014045374a900048c048c04c00644646600200200644b30010018a508acc004cdc79bae30150010038a51899801001180b000a020404d230123013301300191191980080080191198018009801001244444466446644646644b3001300f301a375400513232323298009bac30220019811001cc08800922259800981300244cc020c09401c4cc020008566002602c60426ea8006264646644b3001302a00389919912cc004c0b400e33001374a900148c0b4c0b8c0b8c0b8c0b8c0b8c0b8c0b8c0b80064605a605c605c605c605c605c605c605c0032302d302e302e302e302e302e302e00148888cc89660026046605c6ea80a62b30019800981918179baa0169bac3005302f375404d3004302f375404d37566006605e6ea809900244cdc4240006600202c04d1640b5159800cc004c07cc0bcdd500b4dd6180298179baa026980218179baa0269bab3003302f375404c8012266e20cc00405809920008b205a40b44444646600200200a4464b300130280018998118031bae3037303437540051598009814800c4c8cc004004dd6181c181a9baa0032259800800c528c5660026600a00a6072003133002002303a0018a5040d081ba2b3001302c001899198008009bac30383035375400644b30010018a508acc004cc014014c0e40062946266004004607400281a1037456600266e1d200600189919b89375a607000264660020026eb0c0e4c0e8008896600200314800226644b300133008008002899b800014800a200281b8c0e8004cc008008c0ec005038181a1baa0028acc004cdc3a401000313322598009815981a9baa0018992cc004c0b0c0d8dd51813981b9baa30273037375401113371200200713371000200681a8dd6981c981b1baa0018a5040d06eb4c0dcc0d0dd5001181b981a1baa30243034375400b15980099b874802800626644b3001302b30353754003132598009816181b1baa3027303737546074606e6ea8022266e2400c006266e2000c0050351bad30393036375400314a081a0dd6981b981a1baa002303730343754606e60686ea8016264646600200200c44b30010018a508acc004cdd7801981b181d000c528c4cc008008c0ec0050352070300b3303630373034375400497ae040c88191032206440c88190c0c8dd500091192cc004c0d000626464b30013371e6eb8c0c40092210455534472008992cc004cc896600200314a11329800992cc004c0acc0d8dd5000c4dd6981b981d1bab303a30373754003148001035181c800cdd7981c981d000cdd58012444b30010018acc004c008016266e2520000038a5040dd1325980099baf30390014c10140008acc004cdc49bad303a303d3756607400200913003374c607c00514a081c22b300133712900000244c00c01a29410382070303c00140e8329800800c00e4466074004660746e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c0e00066eacc0e4006607a0069112cc004cdc8a441000038acc004cdc7a4410000389980298169981f1ba60024bd70000c4cc015300103d87a800000640e919800803c006446600e0046608066ec0dd48029ba6004001401c81d0607600481ca29422942294103a19192cc004c0a4c0d0dd5000c4c96600266ebcc0e4c0d8dd5181c981b1baa302630363754002601a660706ea400d2f5c1132598009815981b1baa0018992cc004cdd7981d981c1baa303b30383754002601e660746ea40152f5c11329800800cdd59814981c9baa00299198008009bab302a303a3754605460746ea8014896600200314bd6f7b63044c8cc0f8cdd8181d8009ba632330010013756607a00444b30010018a5eb7bdb1822646608266ec0c0f8004dd419b8148000dd6981f8009980180198218011820800a07e330030033040002303e00140f0800888966002005100189919914c00401a608400b32330010010052259800800c4cc108cdd81ba9004374c00697adef6c608994c004dd71820000cdd59820800cc1140092225980099b9000800389982319bb037520106e9801c0162b30013371e01000713259800981c98221baa00189982399bb037520126090608a6ea800400a20048218c966002b30010018a518a50411914c0103d87a80008981b198239ba60014bd702086329800800c022006800888966002005100189919914c00401a609c00b32330010010052259800800c4cc138cdd81ba9004375000697adef6c608994c004dd71826000cdd69826800cc1440092225980099b9000800389982919bb037520106ea001c0162b30013371e01000713259800982298281baa00189982999bb0375201260a860a26ea800400a20048278c966002608a00314c0103d87a800089821198299ba80014bd70209e3370000e005133052337606ea400cdd400119803003000a09c4138304f00141348030dd718238009bad3048001304a0024121133046337606ea400cdd300119803003000a0844108304300141048030dd7181d8009bab303c001303e00240f11640d86074606e6ea80062c81a8cc07cdd61812181b1baa00823302630213756604e606e6ea80040122c81a0c0e0c0d4dd5000c52f5bded8c08198cc070dd6181b981a1baa006001375c606c60666ea8c084c0ccdd50031ba63303533760606c0026e98cc0d4cdd8181b181b8009ba80024bd6f7b63025eb7bdb18220051640c46eb0c0d4c0d8c0d8c0d8c0c8dd5002c590301bad303100130330018b206233223259800981398189baa0018a5eb7bdb18226eacc0d4c0c8dd5000a06032330010010032259800800c5300103d87a8000899192cc004cdc8802800c56600266e3c0140062604c6606e606a00497ae08a60103d87a800040cd133004004303900340cc6eb8c0cc004c0d80050341bab30323033303330333033302f37540026eb8c07cc0bcdd5180e98179baa00245902a1bae302a001375c6054010605400f16409c6eb8c09c004dd71813801181380098111baa0018b20408b2046181100098108009810000980d9baa0028b203230093019375464b3001300e30193754003132598009809980d1baa0018992cc004c040c06cdd5000c4c8c8cc8966002604800710058b20423021001375c6042004604200260386ea80062c80d0c078c06cdd5000c590191804180d1baa300a301a3754603a60346ea80062c80c0cc004dd61804980c9baa0100163004004223300300223300a30053756601660366ea8c02cc06cdd500080111801800911919800800801912cc0040062980103d87a80008992cc004c010006260186603a00297ae0899801801980f8012032301d001406c600c00c44464b3001300c001899192cc004c07800a00916406c6eb8c070004c060dd5001c566002601a00313259800980e800c4cc018dd6180e000912cc00400a00b19800803cc07800a26002603e004803901c45901a180c1baa0038acc004c040006264b3001301d0018998031bac301c0012259800801401633001007980f00144c004c07c00900720388b20343018375400715980099b87480180062646644b3001301f0018998041bac301e0012259800801401e33001009981000144c004c084009009203c8b2038375a6038002603a00260306ea800e2b30013370e9004000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9005000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9006000c4c8c966002603c0050048b2036375c603800260306ea800e2c80b1016202c405880b1016202c301637540044590080c024004c010dd5005452689b2b20041", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var V0_1TreasuryTreasuryMint = exports.V0_1TreasuryTreasuryMint = /*#__PURE__*/_createClass(function V0_1TreasuryTreasuryMint(utxoRef, proxyPolicyId) { + var trace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + _classCallCheck(this, V0_1TreasuryTreasuryMint); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" : "5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201", _data.Type.Tuple([_data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); +}); +var V0_1TreasuryTreasurySpend = exports.V0_1TreasuryTreasurySpend = /*#__PURE__*/_createClass(function V0_1TreasuryTreasurySpend(utxoRef, proxyPolicyId) { + var trace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + _classCallCheck(this, V0_1TreasuryTreasurySpend); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" : "5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201", _data.Type.Tuple([_data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); +}); +var V0_1TreasuryTreasuryElse = exports.V0_1TreasuryTreasuryElse = /*#__PURE__*/_createClass(function V0_1TreasuryTreasuryElse(utxoRef, proxyPolicyId) { + var trace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + _classCallCheck(this, V0_1TreasuryTreasuryElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" : "5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201", _data.Type.Tuple([_data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); +}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_1/index.js.map b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_1/index.js.map new file mode 100644 index 0000000000..04ed77c345 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_uplc","require","_data","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","a","n","TypeError","_defineProperty","value","i","_toPrimitive","toPrimitive","call","String","Number","PolicyId","Type","Contracts","Module","MultisigScript","Union","Signature","key_hash","ctor","AllOf","scripts","Array","Ref","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Tuple","ProtocolRedeemer","Literal","ProxyDatum","logic","settings","Registry","treasury","usdr","Settings","mint_permission","burn_permission","registry","reserve_token","TreasuryDatum","circulating_supply","exports","Import","V0_1ProtocolProtocolWithdraw","proxyPolicyId","trace","arguments","undefined","cborToScript","applyParamsToScript","V0_1ProtocolProtocolElse","V0_1TreasuryTreasuryMint","utxoRef","transaction_id","output_index","V0_1TreasuryTreasurySpend","V0_1TreasuryTreasuryElse"],"sources":["../../../../src/generated-types/v0_1/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\nimport { type PlutusData } from \"@blaze-cardano/core\";\ntype Data = PlutusData;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object({\n key_hash: Type.String(),\n }, { ctor: 0n })\n }),\n Type.Object({\n AllOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n AnyOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n AtLeast: Type.Object({\n required: Type.BigInt(),\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Before: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n After: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n Script: Type.Object({\n script_hash: Type.String(),\n }, { ctor: 6n })\n }),\n ]),\n Asset: Type.Tuple([\n Type.String(),\n Type.String(),\n ]),\n ProtocolRedeemer: Type.Union([\n Type.Literal(\"Mint\", { ctor: 0n }),\n Type.Literal(\"Burn\", { ctor: 1n }),\n ]),\n ProxyDatum: Type.Object({\n logic: Type.String(),\n settings: Type.Ref(\"Settings\"),\n }, { ctor: 0n }),\n Registry: Type.Object({\n treasury: Type.String(),\n usdr: Type.String(),\n }, { ctor: 0n }),\n Settings: Type.Object({\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"Registry\"),\n reserve_token: Type.Ref(\"Asset\"),\n }, { ctor: 0n }),\n TreasuryDatum: Type.Object({\n circulating_supply: Type.BigInt(),\n }, { ctor: 0n }),\n});\n\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const ProtocolRedeemer = Contracts.Import(\"ProtocolRedeemer\");\nexport type ProtocolRedeemer = Exact;\nexport const ProxyDatum = Contracts.Import(\"ProxyDatum\");\nexport type ProxyDatum = Exact;\nexport const Registry = Contracts.Import(\"Registry\");\nexport type Registry = Exact;\nexport const Settings = Contracts.Import(\"Settings\");\nexport type Settings = Exact;\nexport const TreasuryDatum = Contracts.Import(\"TreasuryDatum\");\nexport type TreasuryDatum = Exact;\n\nexport class V0_1ProtocolProtocolWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5914b1010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692015e657870656374205b50616972286e616d652c206d696e745f616d6f756e74295d203d0a2020202074782e6d696e74207c3e20746f6b656e732873657474696e67732e72656769737472792e7573647229207c3e20746f5f7061697273282900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488896600264653001300e00198071807800cdc3a4009300e00248889660026004601c6ea800e264b30010058999119912cc004c00c0062b300130143754013002806202a8acc004c0100062b300130143754013002806202a80620224044330012259800800c52f5c1133016301330170013300200230180014055374a900048c058c05c00644646600200200644b30010018a508acc004cdc79bae30190010038a51899801001180d000a026405d2301630173017001488888c8cc88c8c96600200313232598009806980e9baa0038992cc00400603113259800800c4c96600200301a8992cc004006264b300100180e44c96600200313259800800c07a264b300100180fc07e264b3001302b0038cc004022330010068acc004c058c098dd500244c9660020030218992cc004006045022811408a26644b300100181244c966002003025812c09604b132598009818801c56600200f0268992cc00400604f027813c09e26644b3001001814c4c96600200302a81540aa05513259800981b001c660026e9520029181b181b981b981b981b981b981b981b981b800c8c0d8c0dcc0dcc0dcc0dcc0dcc0dcc0dc0064606c606e606e606e606e606e606e002911119912cc004c09cc0dcdd5016c5660033001303b3038375403b3758600a60706ea80aa600860706ea80aa6eacc00cc0e0dd50152004899b8848000cc0040740aa2a6606c9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d5159800cc004c090c0e0dd500ecdd61802981c1baa02a9802181c1baa02a9bab3003303837540548012266e20cc0040740a920008a9981b2481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d481a88888c8cc00400401488c9660026058003133028006375c6080607a6ea800a2b3001302d001899198008009bac3041303e375400644b30010018a518acc004cc014014c108006266004004608600314a081e1040456600260600031323300100137586082607c6ea800c896600200314a1159800998028029821000c528c4cc008008c10c00503c20808acc004cdc3a400c003132337126eb4c104004c8cc004004dd618211821801112cc0040062900044cc89660026601001000513370000290014400503f1821800998010011822000a082303d375400515980099b874802000626644b3001302f303e3754003132598009818181f9baa302c30403754605860806ea8022266e2400400e266e2000400d03d1bad3042303f375400314a081e0dd69820181e9baa0023040303d37546052607a6ea80162b30013370e9005000c4cc8966002605e607c6ea8006264b30013030303f3754605860806ea8c10cc100dd500444cdc4801800c4cdc4001800a07a375a6084607e6ea8006294103c1bad3040303d37540046080607a6ea8c100c0f4dd5002c4c8c8cc004004018896600200314a115980099baf003303f30430018a518998010011822000a07a410460166607e6080607a6ea80092f5c081d103a207440e881d103a181d9baa001223259800800c0d2264b3001303e0028992cc004cdc79bae303a00248810455534472008992cc004cc896600200314a11329800992cc004c0bcc0fcdd5000c4dd6982018219bab30433040375400314800103d1821000cdd798211821800cdd58012444b30010018acc004c008016266e2520000038a5040fd1325980099baf30420014c10140008acc004cdc49bad304330463756608600200913003374c608e00514a082022b300133712900000244c00c01a294104020803045001410c329800800c00e4466086004660866e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1040066eacc108006608c0069112cc004cdc8a441000038acc004cdc7a441000038998029819198239ba60024bd70000c4cc015300103d87a8000006410919800803c006446600e0046609266ec0dd48029ba6004001401c82106088004821229422942294104319192cc004c0b4c0f4dd5000c4c96600266ebcc108c0fcdd51821181f9baa302b303f3754002601a660826ea400d2f5c1132598009817981f9baa0018992cc004cdd7982218209baa304430413754002601e660866ea40152f5c11329800800cdd5981718211baa00299198008009bab302f30433754605e60866ea8014896600200314bd6f7b63044c8cc11ccdd818220009ba632330010013756608c00444b30010018a5eb7bdb1822646609466ec0c11c004dd419b8148000dd698240009980180198260011825000a09033003003304900230470014114800888966002005100189919914c00401a609600b32330010010052259800800c4cc12ccdd81ba9004374c00697adef6c608994c004dd71824800cdd59825000cc1380092225980099b9000800389982799bb037520106e9801c0162b30013371e01000713259800981e98269baa00189982819bb0375201260a2609c6ea800400a20048258c966002b30010018a518a50413d14c0103d87a80008981d998281ba60014bd702096329800800c022006800888966002005100189919914c00401a60ae00b32330010010052259800800c4cc15ccdd81ba9004375000697adef6c608994c004dd7182a800cdd6982b000cc1680092225980099b9000800389982d99bb037520106ea001c0162b30013371e010007132598009824982c9baa00189982e19bb0375201260ba60b46ea800400a200482b8c966002609200314c0103d87a8000898239982e1ba80014bd7020ae3370000e00513305b337606ea400cdd400119803003000a0ac4158305800141588030dd718280009bad30510013053002414513304f337606ea400cdd300119803003000a0944128304c00141288030dd718220009bab304500130470024115153303f49013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f8608660806ea80062a6607c92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c2073637269707429001640f46604c6eb0c0a4c0fcdd500411981598141bab302c30403754002009153303d49014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f06082607c6ea8006297adef6c6040ec660466eb0c100c0f4dd50030009bae303f303c3754604c60786ea8018dd31981f19bb0303f001374c6607c66ec0c0fcc100004dd400125eb7bdb1812f5bded8c110028a9981d2481786578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612c0a2020202020205b5061697228726573657276655f706f6c6963792c205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74295d295d2c0a2020202020203e3d2c0a2020202029001640e46eb0c0f8c0fcc0fcc0fcc0ecdd5002c54cc0e5240113657870656374206e616d65203d3d2075736472001640e06eb4c0e800606a81d8c0f000503a1991192cc004c0acc0e8dd5000c52f5bded8c113756607c60766ea80050381919800800801912cc0040062980103d87a8000899192cc004cdc8802800c56600266e3c0140062605666080607c00497ae08a60103d87a800040ed133004004304200340ec6eb8c0f0004c0fc00503d1bab303b303c303c303c303c303837540026eb8c090c0e0dd51811181c1baa00240ad0331bae00140d860660028188dd700098190042066303000740b902640b86eb80050311817000a058375c002605a0048170c0ac00502918139baa0048102048810201481020148102050375800301f80fa05630280014098605000501d80ec07603a8148c0980050241813001406e03701b80da04e30240014088604800501980cc0660328128c088005020180f1baa00380ba036222329800800c0120068008888c966002602600313259800800c01a264b3001001803c01e00f0078992cc004c0ac00e00b00840a06eb800502b1814000a04c30243754007159800980a000c4c9660020030068992cc00400600f0078992cc004c0ac00e26601600244b3001002803c4c96600200319800805400626004605c006805201700b805c02d02f1816001205480420503758003007803a0563028001409860486ea800e2b300130170018992cc00400600d13259800800c01e00f132598009815801c4cc02c00489660020050078992cc0040063300100a800c4c008c0b800d00a402e01700b805a05e302c00240a900840a06eb000600f00740ac60500028130c090dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817001c4cc038004896600200500a8992cc0040063300100d800c4c008c0c400d00d403a01d00e8072064302f00240b500b40ac6eb000601500a40b860560028148dd68009815001401d02b1814000a04c3024375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302b003802c0210281bad001803a0563028001409860486ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260560070058042050375a00300740ac60500028130c090dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260560070058042050375c0028158c0a000502618121baa003802a04240848109021204240848108c088dd500111191980080080191198018009801001405602b01580aa0423007301b375464646644646644a6604066e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea407922010013259800980918111baa00189929981119b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980c18121baa0018992cc0040062b300130153025375400313259800800c086264b3001001811408a045022899912cc0040060491325980098178014401a04a8160c0b400502b1bae001302c00240b460540028140c098dd5000c08102340820410208102056302830253754003153302349013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164088601c60486ea8c040c090dd5000981318119baa0018a99810a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640806601000203c60020026eb0c030c080dd5009111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920505980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81110221bac3025002375a60460026466ec0dd418118009ba73024001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6050003337149101023a200098008054c0a400600a805100a181580144ca6002015302800199b8a489023a200098008054c0a4006600e66008008004805100a18158012052302b00140a066e29220102207d0000340946eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006204a3758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc40012402914818229037204e3371666e000056600266e2000520148a40c11481b9027002200c33706002901019b8600148080cdc70020012048375c0068140dc5245022c200022323300100100322598009808000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407880f08888c8cc004004014896600200310058992cc004006266008604e00400d1330053027002330030030014094604e0028120c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901b111980180111980418029bab3009301d37546012603a6ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146603e00297ae089980180198108012034301f0014074600a00a3011375400e6e1d2002370e90004022011008804202a3012300f3754007164030300e0013009375401f149a2a6600e92011856616c696461746f722072657475726e65642066616c7365001365640181\"\n :\n \"590b64010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a4001300937540089111192cc004c00c00a2b3001300f37540130018b20208acc004c01000a2b3001300f37540130018b20208b201a4034330012259800800c52f5c1133012300f30130013300200230140014045374a900048c048c04c00644646600200200644b30010018a508acc004cdc79bae30150010038a51899801001180b000a020404d230123013301300191191980080080191198018009801001244444466446644646644b3001300f301a375400513232323298009bac30220019811001cc08800922259800981300244cc020c09401c4cc020008566002602c60426ea8006264646644b3001302a00389919912cc004c0b400e33001374a900148c0b4c0b8c0b8c0b8c0b8c0b8c0b8c0b8c0b80064605a605c605c605c605c605c605c605c0032302d302e302e302e302e302e302e00148888cc89660026046605c6ea80a62b30019800981918179baa0169bac3005302f375404d3004302f375404d37566006605e6ea809900244cdc4240006600202c04d1640b5159800cc004c07cc0bcdd500b4dd6180298179baa026980218179baa0269bab3003302f375404c8012266e20cc00405809920008b205a40b44444646600200200a4464b300130280018998118031bae3037303437540051598009814800c4c8cc004004dd6181c181a9baa0032259800800c528c5660026600a00a6072003133002002303a0018a5040d081ba2b3001302c001899198008009bac30383035375400644b30010018a508acc004cc014014c0e40062946266004004607400281a1037456600266e1d200600189919b89375a607000264660020026eb0c0e4c0e8008896600200314800226644b300133008008002899b800014800a200281b8c0e8004cc008008c0ec005038181a1baa0028acc004cdc3a401000313322598009815981a9baa0018992cc004c0b0c0d8dd51813981b9baa30273037375401113371200200713371000200681a8dd6981c981b1baa0018a5040d06eb4c0dcc0d0dd5001181b981a1baa30243034375400b15980099b874802800626644b3001302b30353754003132598009816181b1baa3027303737546074606e6ea8022266e2400c006266e2000c0050351bad30393036375400314a081a0dd6981b981a1baa002303730343754606e60686ea8016264646600200200c44b30010018a508acc004cdd7801981b181d000c528c4cc008008c0ec0050352070300b3303630373034375400497ae040c88191032206440c88190c0c8dd500091192cc004c0d000626464b30013371e6eb8c0c40092210455534472008992cc004cc896600200314a11329800992cc004c0acc0d8dd5000c4dd6981b981d1bab303a30373754003148001035181c800cdd7981c981d000cdd58012444b30010018acc004c008016266e2520000038a5040dd1325980099baf30390014c10140008acc004cdc49bad303a303d3756607400200913003374c607c00514a081c22b300133712900000244c00c01a29410382070303c00140e8329800800c00e4466074004660746e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c0e00066eacc0e4006607a0069112cc004cdc8a441000038acc004cdc7a4410000389980298169981f1ba60024bd70000c4cc015300103d87a800000640e919800803c006446600e0046608066ec0dd48029ba6004001401c81d0607600481ca29422942294103a19192cc004c0a4c0d0dd5000c4c96600266ebcc0e4c0d8dd5181c981b1baa302630363754002601a660706ea400d2f5c1132598009815981b1baa0018992cc004cdd7981d981c1baa303b30383754002601e660746ea40152f5c11329800800cdd59814981c9baa00299198008009bab302a303a3754605460746ea8014896600200314bd6f7b63044c8cc0f8cdd8181d8009ba632330010013756607a00444b30010018a5eb7bdb1822646608266ec0c0f8004dd419b8148000dd6981f8009980180198218011820800a07e330030033040002303e00140f0800888966002005100189919914c00401a608400b32330010010052259800800c4cc108cdd81ba9004374c00697adef6c608994c004dd71820000cdd59820800cc1140092225980099b9000800389982319bb037520106e9801c0162b30013371e01000713259800981c98221baa00189982399bb037520126090608a6ea800400a20048218c966002b30010018a518a50411914c0103d87a80008981b198239ba60014bd702086329800800c022006800888966002005100189919914c00401a609c00b32330010010052259800800c4cc138cdd81ba9004375000697adef6c608994c004dd71826000cdd69826800cc1440092225980099b9000800389982919bb037520106ea001c0162b30013371e01000713259800982298281baa00189982999bb0375201260a860a26ea800400a20048278c966002608a00314c0103d87a800089821198299ba80014bd70209e3370000e005133052337606ea400cdd400119803003000a09c4138304f00141348030dd718238009bad3048001304a0024121133046337606ea400cdd300119803003000a0844108304300141048030dd7181d8009bab303c001303e00240f11640d86074606e6ea80062c81a8cc07cdd61812181b1baa00823302630213756604e606e6ea80040122c81a0c0e0c0d4dd5000c52f5bded8c08198cc070dd6181b981a1baa006001375c606c60666ea8c084c0ccdd50031ba63303533760606c0026e98cc0d4cdd8181b181b8009ba80024bd6f7b63025eb7bdb18220051640c46eb0c0d4c0d8c0d8c0d8c0c8dd5002c590301bad303100130330018b206233223259800981398189baa0018a5eb7bdb18226eacc0d4c0c8dd5000a06032330010010032259800800c5300103d87a8000899192cc004cdc8802800c56600266e3c0140062604c6606e606a00497ae08a60103d87a800040cd133004004303900340cc6eb8c0cc004c0d80050341bab30323033303330333033302f37540026eb8c07cc0bcdd5180e98179baa00245902a1bae302a001375c6054010605400f16409c6eb8c09c004dd71813801181380098111baa0018b20408b2046181100098108009810000980d9baa0028b203230093019375464b3001300e30193754003132598009809980d1baa0018992cc004c040c06cdd5000c4c8c8cc8966002604800710058b20423021001375c6042004604200260386ea80062c80d0c078c06cdd5000c590191804180d1baa300a301a3754603a60346ea80062c80c0cc004dd61804980c9baa0100163004004223300300223300a30053756601660366ea8c02cc06cdd500080111801800911919800800801912cc0040062980103d87a80008992cc004c010006260186603a00297ae0899801801980f8012032301d001406c600c00c44464b3001300c001899192cc004c07800a00916406c6eb8c070004c060dd5001c566002601a00313259800980e800c4cc018dd6180e000912cc00400a00b19800803cc07800a26002603e004803901c45901a180c1baa0038acc004c040006264b3001301d0018998031bac301c0012259800801401633001007980f00144c004c07c00900720388b20343018375400715980099b87480180062646644b3001301f0018998041bac301e0012259800801401e33001009981000144c004c084009009203c8b2038375a6038002603a00260306ea800e2b30013370e9004000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9005000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9006000c4c8c966002603c0050048b2036375c603800260306ea800e2c80b1016202c405880b1016202c301637540044590080c024004c010dd5005452689b2b20041\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_1ProtocolProtocolElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5914b1010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692015e657870656374205b50616972286e616d652c206d696e745f616d6f756e74295d203d0a2020202074782e6d696e74207c3e20746f6b656e732873657474696e67732e72656769737472792e7573647229207c3e20746f5f7061697273282900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488896600264653001300e00198071807800cdc3a4009300e00248889660026004601c6ea800e264b30010058999119912cc004c00c0062b300130143754013002806202a8acc004c0100062b300130143754013002806202a80620224044330012259800800c52f5c1133016301330170013300200230180014055374a900048c058c05c00644646600200200644b30010018a508acc004cdc79bae30190010038a51899801001180d000a026405d2301630173017001488888c8cc88c8c96600200313232598009806980e9baa0038992cc00400603113259800800c4c96600200301a8992cc004006264b300100180e44c96600200313259800800c07a264b300100180fc07e264b3001302b0038cc004022330010068acc004c058c098dd500244c9660020030218992cc004006045022811408a26644b300100181244c966002003025812c09604b132598009818801c56600200f0268992cc00400604f027813c09e26644b3001001814c4c96600200302a81540aa05513259800981b001c660026e9520029181b181b981b981b981b981b981b981b981b800c8c0d8c0dcc0dcc0dcc0dcc0dcc0dcc0dc0064606c606e606e606e606e606e606e002911119912cc004c09cc0dcdd5016c5660033001303b3038375403b3758600a60706ea80aa600860706ea80aa6eacc00cc0e0dd50152004899b8848000cc0040740aa2a6606c9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d5159800cc004c090c0e0dd500ecdd61802981c1baa02a9802181c1baa02a9bab3003303837540548012266e20cc0040740a920008a9981b2481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d481a88888c8cc00400401488c9660026058003133028006375c6080607a6ea800a2b3001302d001899198008009bac3041303e375400644b30010018a518acc004cc014014c108006266004004608600314a081e1040456600260600031323300100137586082607c6ea800c896600200314a1159800998028029821000c528c4cc008008c10c00503c20808acc004cdc3a400c003132337126eb4c104004c8cc004004dd618211821801112cc0040062900044cc89660026601001000513370000290014400503f1821800998010011822000a082303d375400515980099b874802000626644b3001302f303e3754003132598009818181f9baa302c30403754605860806ea8022266e2400400e266e2000400d03d1bad3042303f375400314a081e0dd69820181e9baa0023040303d37546052607a6ea80162b30013370e9005000c4cc8966002605e607c6ea8006264b30013030303f3754605860806ea8c10cc100dd500444cdc4801800c4cdc4001800a07a375a6084607e6ea8006294103c1bad3040303d37540046080607a6ea8c100c0f4dd5002c4c8c8cc004004018896600200314a115980099baf003303f30430018a518998010011822000a07a410460166607e6080607a6ea80092f5c081d103a207440e881d103a181d9baa001223259800800c0d2264b3001303e0028992cc004cdc79bae303a00248810455534472008992cc004cc896600200314a11329800992cc004c0bcc0fcdd5000c4dd6982018219bab30433040375400314800103d1821000cdd798211821800cdd58012444b30010018acc004c008016266e2520000038a5040fd1325980099baf30420014c10140008acc004cdc49bad304330463756608600200913003374c608e00514a082022b300133712900000244c00c01a294104020803045001410c329800800c00e4466086004660866e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1040066eacc108006608c0069112cc004cdc8a441000038acc004cdc7a441000038998029819198239ba60024bd70000c4cc015300103d87a8000006410919800803c006446600e0046609266ec0dd48029ba6004001401c82106088004821229422942294104319192cc004c0b4c0f4dd5000c4c96600266ebcc108c0fcdd51821181f9baa302b303f3754002601a660826ea400d2f5c1132598009817981f9baa0018992cc004cdd7982218209baa304430413754002601e660866ea40152f5c11329800800cdd5981718211baa00299198008009bab302f30433754605e60866ea8014896600200314bd6f7b63044c8cc11ccdd818220009ba632330010013756608c00444b30010018a5eb7bdb1822646609466ec0c11c004dd419b8148000dd698240009980180198260011825000a09033003003304900230470014114800888966002005100189919914c00401a609600b32330010010052259800800c4cc12ccdd81ba9004374c00697adef6c608994c004dd71824800cdd59825000cc1380092225980099b9000800389982799bb037520106e9801c0162b30013371e01000713259800981e98269baa00189982819bb0375201260a2609c6ea800400a20048258c966002b30010018a518a50413d14c0103d87a80008981d998281ba60014bd702096329800800c022006800888966002005100189919914c00401a60ae00b32330010010052259800800c4cc15ccdd81ba9004375000697adef6c608994c004dd7182a800cdd6982b000cc1680092225980099b9000800389982d99bb037520106ea001c0162b30013371e010007132598009824982c9baa00189982e19bb0375201260ba60b46ea800400a200482b8c966002609200314c0103d87a8000898239982e1ba80014bd7020ae3370000e00513305b337606ea400cdd400119803003000a0ac4158305800141588030dd718280009bad30510013053002414513304f337606ea400cdd300119803003000a0944128304c00141288030dd718220009bab304500130470024115153303f49013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f8608660806ea80062a6607c92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c2073637269707429001640f46604c6eb0c0a4c0fcdd500411981598141bab302c30403754002009153303d49014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f06082607c6ea8006297adef6c6040ec660466eb0c100c0f4dd50030009bae303f303c3754604c60786ea8018dd31981f19bb0303f001374c6607c66ec0c0fcc100004dd400125eb7bdb1812f5bded8c110028a9981d2481786578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612c0a2020202020205b5061697228726573657276655f706f6c6963792c205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74295d295d2c0a2020202020203e3d2c0a2020202029001640e46eb0c0f8c0fcc0fcc0fcc0ecdd5002c54cc0e5240113657870656374206e616d65203d3d2075736472001640e06eb4c0e800606a81d8c0f000503a1991192cc004c0acc0e8dd5000c52f5bded8c113756607c60766ea80050381919800800801912cc0040062980103d87a8000899192cc004cdc8802800c56600266e3c0140062605666080607c00497ae08a60103d87a800040ed133004004304200340ec6eb8c0f0004c0fc00503d1bab303b303c303c303c303c303837540026eb8c090c0e0dd51811181c1baa00240ad0331bae00140d860660028188dd700098190042066303000740b902640b86eb80050311817000a058375c002605a0048170c0ac00502918139baa0048102048810201481020148102050375800301f80fa05630280014098605000501d80ec07603a8148c0980050241813001406e03701b80da04e30240014088604800501980cc0660328128c088005020180f1baa00380ba036222329800800c0120068008888c966002602600313259800800c01a264b3001001803c01e00f0078992cc004c0ac00e00b00840a06eb800502b1814000a04c30243754007159800980a000c4c9660020030068992cc00400600f0078992cc004c0ac00e26601600244b3001002803c4c96600200319800805400626004605c006805201700b805c02d02f1816001205480420503758003007803a0563028001409860486ea800e2b300130170018992cc00400600d13259800800c01e00f132598009815801c4cc02c00489660020050078992cc0040063300100a800c4c008c0b800d00a402e01700b805a05e302c00240a900840a06eb000600f00740ac60500028130c090dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817001c4cc038004896600200500a8992cc0040063300100d800c4c008c0c400d00d403a01d00e8072064302f00240b500b40ac6eb000601500a40b860560028148dd68009815001401d02b1814000a04c3024375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302b003802c0210281bad001803a0563028001409860486ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260560070058042050375a00300740ac60500028130c090dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260560070058042050375c0028158c0a000502618121baa003802a04240848109021204240848108c088dd500111191980080080191198018009801001405602b01580aa0423007301b375464646644646644a6604066e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea407922010013259800980918111baa00189929981119b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980c18121baa0018992cc0040062b300130153025375400313259800800c086264b3001001811408a045022899912cc0040060491325980098178014401a04a8160c0b400502b1bae001302c00240b460540028140c098dd5000c08102340820410208102056302830253754003153302349013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164088601c60486ea8c040c090dd5000981318119baa0018a99810a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640806601000203c60020026eb0c030c080dd5009111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920505980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81110221bac3025002375a60460026466ec0dd418118009ba73024001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6050003337149101023a200098008054c0a400600a805100a181580144ca6002015302800199b8a489023a200098008054c0a4006600e66008008004805100a18158012052302b00140a066e29220102207d0000340946eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006204a3758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc40012402914818229037204e3371666e000056600266e2000520148a40c11481b9027002200c33706002901019b8600148080cdc70020012048375c0068140dc5245022c200022323300100100322598009808000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407880f08888c8cc004004014896600200310058992cc004006266008604e00400d1330053027002330030030014094604e0028120c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901b111980180111980418029bab3009301d37546012603a6ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146603e00297ae089980180198108012034301f0014074600a00a3011375400e6e1d2002370e90004022011008804202a3012300f3754007164030300e0013009375401f149a2a6600e92011856616c696461746f722072657475726e65642066616c7365001365640181\"\n :\n \"590b64010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a4001300937540089111192cc004c00c00a2b3001300f37540130018b20208acc004c01000a2b3001300f37540130018b20208b201a4034330012259800800c52f5c1133012300f30130013300200230140014045374a900048c048c04c00644646600200200644b30010018a508acc004cdc79bae30150010038a51899801001180b000a020404d230123013301300191191980080080191198018009801001244444466446644646644b3001300f301a375400513232323298009bac30220019811001cc08800922259800981300244cc020c09401c4cc020008566002602c60426ea8006264646644b3001302a00389919912cc004c0b400e33001374a900148c0b4c0b8c0b8c0b8c0b8c0b8c0b8c0b8c0b80064605a605c605c605c605c605c605c605c0032302d302e302e302e302e302e302e00148888cc89660026046605c6ea80a62b30019800981918179baa0169bac3005302f375404d3004302f375404d37566006605e6ea809900244cdc4240006600202c04d1640b5159800cc004c07cc0bcdd500b4dd6180298179baa026980218179baa0269bab3003302f375404c8012266e20cc00405809920008b205a40b44444646600200200a4464b300130280018998118031bae3037303437540051598009814800c4c8cc004004dd6181c181a9baa0032259800800c528c5660026600a00a6072003133002002303a0018a5040d081ba2b3001302c001899198008009bac30383035375400644b30010018a508acc004cc014014c0e40062946266004004607400281a1037456600266e1d200600189919b89375a607000264660020026eb0c0e4c0e8008896600200314800226644b300133008008002899b800014800a200281b8c0e8004cc008008c0ec005038181a1baa0028acc004cdc3a401000313322598009815981a9baa0018992cc004c0b0c0d8dd51813981b9baa30273037375401113371200200713371000200681a8dd6981c981b1baa0018a5040d06eb4c0dcc0d0dd5001181b981a1baa30243034375400b15980099b874802800626644b3001302b30353754003132598009816181b1baa3027303737546074606e6ea8022266e2400c006266e2000c0050351bad30393036375400314a081a0dd6981b981a1baa002303730343754606e60686ea8016264646600200200c44b30010018a508acc004cdd7801981b181d000c528c4cc008008c0ec0050352070300b3303630373034375400497ae040c88191032206440c88190c0c8dd500091192cc004c0d000626464b30013371e6eb8c0c40092210455534472008992cc004cc896600200314a11329800992cc004c0acc0d8dd5000c4dd6981b981d1bab303a30373754003148001035181c800cdd7981c981d000cdd58012444b30010018acc004c008016266e2520000038a5040dd1325980099baf30390014c10140008acc004cdc49bad303a303d3756607400200913003374c607c00514a081c22b300133712900000244c00c01a29410382070303c00140e8329800800c00e4466074004660746e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c0e00066eacc0e4006607a0069112cc004cdc8a441000038acc004cdc7a4410000389980298169981f1ba60024bd70000c4cc015300103d87a800000640e919800803c006446600e0046608066ec0dd48029ba6004001401c81d0607600481ca29422942294103a19192cc004c0a4c0d0dd5000c4c96600266ebcc0e4c0d8dd5181c981b1baa302630363754002601a660706ea400d2f5c1132598009815981b1baa0018992cc004cdd7981d981c1baa303b30383754002601e660746ea40152f5c11329800800cdd59814981c9baa00299198008009bab302a303a3754605460746ea8014896600200314bd6f7b63044c8cc0f8cdd8181d8009ba632330010013756607a00444b30010018a5eb7bdb1822646608266ec0c0f8004dd419b8148000dd6981f8009980180198218011820800a07e330030033040002303e00140f0800888966002005100189919914c00401a608400b32330010010052259800800c4cc108cdd81ba9004374c00697adef6c608994c004dd71820000cdd59820800cc1140092225980099b9000800389982319bb037520106e9801c0162b30013371e01000713259800981c98221baa00189982399bb037520126090608a6ea800400a20048218c966002b30010018a518a50411914c0103d87a80008981b198239ba60014bd702086329800800c022006800888966002005100189919914c00401a609c00b32330010010052259800800c4cc138cdd81ba9004375000697adef6c608994c004dd71826000cdd69826800cc1440092225980099b9000800389982919bb037520106ea001c0162b30013371e01000713259800982298281baa00189982999bb0375201260a860a26ea800400a20048278c966002608a00314c0103d87a800089821198299ba80014bd70209e3370000e005133052337606ea400cdd400119803003000a09c4138304f00141348030dd718238009bad3048001304a0024121133046337606ea400cdd300119803003000a0844108304300141048030dd7181d8009bab303c001303e00240f11640d86074606e6ea80062c81a8cc07cdd61812181b1baa00823302630213756604e606e6ea80040122c81a0c0e0c0d4dd5000c52f5bded8c08198cc070dd6181b981a1baa006001375c606c60666ea8c084c0ccdd50031ba63303533760606c0026e98cc0d4cdd8181b181b8009ba80024bd6f7b63025eb7bdb18220051640c46eb0c0d4c0d8c0d8c0d8c0c8dd5002c590301bad303100130330018b206233223259800981398189baa0018a5eb7bdb18226eacc0d4c0c8dd5000a06032330010010032259800800c5300103d87a8000899192cc004cdc8802800c56600266e3c0140062604c6606e606a00497ae08a60103d87a800040cd133004004303900340cc6eb8c0cc004c0d80050341bab30323033303330333033302f37540026eb8c07cc0bcdd5180e98179baa00245902a1bae302a001375c6054010605400f16409c6eb8c09c004dd71813801181380098111baa0018b20408b2046181100098108009810000980d9baa0028b203230093019375464b3001300e30193754003132598009809980d1baa0018992cc004c040c06cdd5000c4c8c8cc8966002604800710058b20423021001375c6042004604200260386ea80062c80d0c078c06cdd5000c590191804180d1baa300a301a3754603a60346ea80062c80c0cc004dd61804980c9baa0100163004004223300300223300a30053756601660366ea8c02cc06cdd500080111801800911919800800801912cc0040062980103d87a80008992cc004c010006260186603a00297ae0899801801980f8012032301d001406c600c00c44464b3001300c001899192cc004c07800a00916406c6eb8c070004c060dd5001c566002601a00313259800980e800c4cc018dd6180e000912cc00400a00b19800803cc07800a26002603e004803901c45901a180c1baa0038acc004c040006264b3001301d0018998031bac301c0012259800801401633001007980f00144c004c07c00900720388b20343018375400715980099b87480180062646644b3001301f0018998041bac301e0012259800801401e33001009981000144c004c084009009203c8b2038375a6038002603a00260306ea800e2b30013370e9004000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9005000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9006000c4c8c966002603c0050048b2036375c603800260306ea800e2c80b1016202c405880b1016202c301637540044590080c024004c010dd5005452689b2b20041\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_1TreasuryTreasuryMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_1TreasuryTreasurySpend {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_1TreasuryTreasuryElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_2/index.js b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_2/index.js new file mode 100644 index 0000000000..d582a0050b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_2/index.js @@ -0,0 +1,121 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.V0_2ProtocolProtocolWithdraw = exports.V0_2ProtocolProtocolElse = exports.Settings = exports.Registry = exports.ProxyDatum = exports.ProtocolRedeemer = exports.MultisigScript = exports.Asset = void 0; +var _uplc = require("@blaze-cardano/uplc"); +var _data = require("@blaze-cardano/data"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable */ // @ts-nocheck +var PolicyId = _data.Type.String(); +var Contracts = _data.Type.Module({ + MultisigScript: _data.Type.Union([_data.Type.Object({ + Signature: _data.Type.Object({ + key_hash: _data.Type.String() + }, { + ctor: 0n + }) + }), _data.Type.Object({ + AllOf: _data.Type.Object({ + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 1n + }) + }), _data.Type.Object({ + AnyOf: _data.Type.Object({ + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 2n + }) + }), _data.Type.Object({ + AtLeast: _data.Type.Object({ + required: _data.Type.BigInt(), + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 3n + }) + }), _data.Type.Object({ + Before: _data.Type.Object({ + time: _data.Type.BigInt() + }, { + ctor: 4n + }) + }), _data.Type.Object({ + After: _data.Type.Object({ + time: _data.Type.BigInt() + }, { + ctor: 5n + }) + }), _data.Type.Object({ + Script: _data.Type.Object({ + script_hash: _data.Type.String() + }, { + ctor: 6n + }) + })]), + Asset: _data.Type.Tuple([_data.Type.String(), _data.Type.String()]), + Registry: _data.Type.Object({ + treasury: _data.Type.String(), + usdr: _data.Type.String() + }, { + ctor: 0n + }), + ProtocolRedeemer: _data.Type.Union([_data.Type.Literal("Mint", { + ctor: 0n + }), _data.Type.Literal("Burn", { + ctor: 1n + }), _data.Type.Object({ + Withdraw: _data.Type.Object({ + withdraw_amount: _data.Type.BigInt() + }, { + ctor: 2n + }) + }), _data.Type.Object({ + Deposit: _data.Type.Object({ + deposit_amount: _data.Type.BigInt() + }, { + ctor: 3n + }) + })]), + ProxyDatum: _data.Type.Object({ + logic: _data.Type.String(), + settings: _data.Type.Ref("Settings") + }, { + ctor: 0n + }), + Settings: _data.Type.Object({ + mint_permission: _data.Type.Ref("MultisigScript"), + burn_permission: _data.Type.Ref("MultisigScript"), + withdraw_permission: _data.Type.Ref("MultisigScript"), + deposit_permission: _data.Type.Ref("MultisigScript"), + registry: _data.Type.Ref("Registry"), + reserve_token: _data.Type.Ref("Asset") + }, { + ctor: 0n + }) +}); +var MultisigScript = exports.MultisigScript = Contracts.Import("MultisigScript"); +var Asset = exports.Asset = Contracts.Import("Asset"); +var Registry = exports.Registry = Contracts.Import("Registry"); +var ProtocolRedeemer = exports.ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +var ProxyDatum = exports.ProxyDatum = Contracts.Import("ProxyDatum"); +var Settings = exports.Settings = Contracts.Import("Settings"); +var V0_2ProtocolProtocolWithdraw = exports.V0_2ProtocolProtocolWithdraw = /*#__PURE__*/_createClass(function V0_2ProtocolProtocolWithdraw(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_2ProtocolProtocolWithdraw); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "591944010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920130657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488888896600264653001301100198089809000cdc3a400930110024888966002600460226ea800e264b30010058cc004dc3a4005370e90034dc3a40013012375400a9111192cc004c00c00a2b300130183754015001806a0328acc004c01400a2b300130183754015001806a0328acc004c02000a264b300100180744c96600200300f807c03e264b3001301f003802404101c1bad001807a03e301c001406860306ea802a2b300130040028992cc00400601d13259800800c03e01f00f8992cc004c07c00e00901040706eb400601e80f8c07000501a180c1baa00a806a02a405480a90150cc004896600200314bd7044cc06cc060c070004cc008008c07400501a4dd2a40012301b301c001911919800800801912cc00400629422b30013371e6eb8c07800400e2946266004004603e00280c101c48c06cc070c07000522222323322323259800800c4c8c966002601c60446ea800e264b300100180d44c96600200313259800800c072264b30010018992cc00400603d13259800800c4c9660020030208992cc004006264b300100181144c96600200313259800800c092264b3001001812c096264b300130340038cc0040323300100a8cc004022330010068acc004c06cc0bcdd500244c9660020030278992cc00400605102881440a226644b300100181544c96600200302b815c0ae05713259800981d001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c206113259800981f801c660026e9520029181f98201820182018201820182018201820000c8c0fcc100c100c100c100c100c100c1000064607e608060806080608060806080003222598009814981e9baa0038992cc00400600513259800800c00e0070038992cc004c11400e00b00441086eb40060068228c108005040181f1baa003800a0769181f9820182018201820000c8966002003148002266e01200233002002304100140f9303a375405b371090002444444444646644b300130320058acc00660026094608e6ea809e6eb0c02cc11cdd501b4c028c11cdd501b4dd5980498239baa0364005130049800813c0da900020048a99822a481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981a002c5660033001302e3047375404f37586016608e6ea80da6014608e6ea80da6eacc024c11cdd501b2002899b889800813c0da90002004480022a6608a9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981b802c4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bc005003454cc1192411a6578706563742077697468647261775f616d6f756e74203e20300016411504041146eb4c128c11cdd501cc4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bccdc1000a4002801a2a6608c920119657870656374206465706f7369745f616d6f756e74203e20300016411504041146eb4c128c11cdd501ca08841108220888c8cc896600266e1cdd6982700080144c9660026644b30010018a508994c004c9660026076609e6ea800626eb4c140c14cdd5982998281baa0018a40008268c1480066ebcc148c14c0066eac00922259800800c566002600400b1337129000001c528209e8992cc004cdd79829000a6010140008acc004cdc49bad30533056375660a600200913003374c60ae00514a082822b300133712900000244c00c01a294105020a03055001414c329800800c00e44660a6004660a66e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1440066eacc14800660ac0069112cc004cdc8a441000038acc004cdc7a44100003899802981e9982b9ba60024bd70000c4cc015300103d87a8000006414919800803c006446600e004660b266ec0dd48029ba6004001401c829060a800482922942294229410531bab3033002374c6609c66ec0c13c004dd31982719bb0304f3050001375066e0400c0152f5bded8c097adef6c608801c54cc1292401be6578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a2020202029001641246eb0c138c13cc13cc13cc13cc13cc12cdd5003454cc1252401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e7400164120b3001303430050018a4001159800800c10a264b3001304e0028acc004cdc79bae3049001488104555344720089bad304a0018a998242491d657870656374206e616d65203d3d20636f6e7374616e74732e757364720016411d043412c6098002825104619192cc004c0d8c128dd5000c4c96600266ebcc13cc130dd5182798261baa3033304c375400260226609c6ea400d2f5c113259800981e98261baa0018992cc004006330010018992cc004c0e8c138dd5000c4c96600266ebcc14cc140dd5182998281baa001301533052375200e97ae08992cc004c104c140dd5000c4c96600200319800800c4cc150dd419b81375a60aa60a46ea8004dd6982a98291baa00533054374c6530010019bab303a3053375400932330010013756607660a86ea8c0ecc150dd5004912cc004006297adef6c608991982c19bb03055001374c64660020026eacc15c008896600200314bd6f7b63044c8cc16ccdd8182c0009ba83370290001bad305900133003003305d002305b00141646600600660b400460b000282b10011112cc00400a2003132332298008034c170016646600200200a44b300100189982e19bb037520086e9800d2f5bded8c113298009bae305a0019bab305b001982f8012444b300133720010007133060337606ea4020dd3003802c56600266e3c02000e264b3001304a305e3754003133061337606ea4024c188c17cdd50008014400905c192cc0056600200314a314a083022980103d87a800089823998309ba60014bd7020b8329800800c022006800888966002005100189919914c00401a60d000b32330010010052259800800c4cc1a0cdd81ba9004375000697adef6c608994c004dd71833000cdd69833800cc1ac0092225980099b9000800389983619bb037520106ea001c0162b30013371e01000713259800982b18351baa00189983699bb0375201260dc60d66ea800400a20048340c96600260ac00314c0103d87a800089829998369ba80014bd7020d03370000e00513306c337606ea400cdd400119803003000a0ce419c3069001419c8030dd718308009bad306200130640024189133060337606ea400cdd300119803003000a0b6416c305d001416c8030dd7182a8009bab30560013058002415897ae0826a026826c13609b04d415c60a860a26ea80062a6609e92012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d00164138606a60a06ea80062a6609c92013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016413460a4609e6ea80062a6609a92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c207363726970742900164130660606eb0c0ccc138dd500411981a98191bab3036304f375400200d048403d04882441220908298c140c134dd5000c54cc12d2413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d00164128606260986ea8c0ccc130dd5000c54cc12924014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287363726970742900164124609c60966ea8006297ae110100008101a00020903302b3758609a60946ea8010004dd7182618249baa300930493754008664464b30013038304a375400314bd6f7b63044dd5982718259baa0014120646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606c660a0609c00497ae08a60103d87a8000412d1330040043052003412c6eb8c130004c13c00504d1bab3008304837540046eb8c0bcc120dd5180418241baa00322223233001001005223259800981b800c4cc0c8018dd7182798261baa0028acc004c0e4006264660020026eb0c140c134dd5001912cc00400629462b30013300500530510018998010011829000c5282096413d159800981e000c4c8cc004004dd6182818269baa0032259800800c52845660026600a00a60a200314a31330020023052001412c827a2b3001303800189919b89375a60a000264660020026eb0c144c148008896600200314800226644b300133008008002899b800014800a20028270c148004cc008008c14c00505018261baa0028acc004cdc3a40100031332259800981d98269baa0018992cc004c0f0c138dd5181b18279baa3036304f37540111337120020071337100020068260dd6982898271baa0018a50412c6eb4c13cc130dd5001182798261baa3033304c375400b15980099b874802800626644b3001303b304d375400313259800981e18271baa3036304f375460a4609e6ea8022266e2400c006266e2000c00504c1bad3051304e375400314a08258dd6982798261baa002304f304c3754609e60986ea8016264646600200200c44b30010018a508acc004cdd780198271829000c528c4cc008008c14c00504c20a030113304e304f304c375400497ae041248249049209241248248c128dd50009801801a06281e0dd7000a07e303c00140e86eb8004c0ec02103c181c803a06e816206e375c00281d0c0dc0050351bae001303600240dc60680028190c0c0dd5002409902d409900e409900e409900e409900e40990311bac001812c0950341818800a05e3031002811c08e04702340c8605e0028168c0bc00a043021810c0850301816800a056302d00280fc07e03f01f40b860560028148c0ac00a03b01d80ec07502c1814800a04e302900280dc06e03701b40a8604e0028128c08cdd5001c065020111194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c058006264b300100180344c966002003007803c4c966002606000713300b0012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0c000e26601600244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b300130150018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009819801c4cc038004896600200500a8992cc0040063300100d800c4c008c0d800d00d403a01d00e807206e303400240c900b40c06eb000601500a40cc60600028170dd68009817801401d0301816800a0563029375400715980099b8748020006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c9660026060007005804205a375a00300740c0605a0028158c0a4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa003802a04c40988131026204c40988130c09cdd500111191980080080191198018009801001405e02f01780ba04c30073020375464646644646644a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea408d22010013259800980998139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980d18149baa0018992cc0040062b30013016302a375400313259800800c08e264b30010018124092049024899912cc00400604d13259800981a0014401a04e8188c0c80050301bae001303100240c8605e0028168c0acdd5000c089028408a0450228112060302d302a3754003153302849013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601c60526ea8c040c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601000204660020026eb0c030c094dd500a111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051009205a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81390271bac302a002375a60500026466ec0dd418140009ba73029001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a605a003337149101023a200098008054c0b800600a805100a181800144ca6002015302d00199b8a489023a200098008054c0b8006600e66008008004805100a1818001205c303000140b466e29220102207d0000340a86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900620543758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720583371666e000056600266e2000520148a40c11481b902c002200c33706002901019b8600148080cdc70020012052375c0068168dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003408c81188888c8cc004004014896600200310058992cc004006266008605800400d133005302c0023300300300140a860580028148c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c00028019020111980180111980418029bab300930223754601260446ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146604800297ae08998018019813001203e30240014088600a00a4022011008804203030153012375400716403c3011001300c3754025149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241" : "590d5b010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a400d370e90004c024dd500224444464b300130030028acc004c040dd500540062c808a2b300130050028acc004c040dd500540062c808a2b30013008002899192cc004c05800a00716404c6eb4c050004c040dd5005456600260080051323259800980b001400e2c8098dd6980a00098081baa00a8b201c4038807100e0cc004896600200314bd7044cc04cc040c050004cc008008c0540050124dd2a4001230133014001911919800800801912cc00400629422b30013371e6eb8c05800400e2946266004004602e002808901448c04cc050c05000644646600200200644660060026004004911111199119911919912cc004c03cc06cdd500144c8c8c8c8c8ca60026eb0c094006604a00b30250049812801cc0940092222259800981580344cc030c0a802c4cc0300104cc03000c4cc0300085660026034604c6ea8006264646644b3001302f00389919912cc004c0c800e33001374a900148c0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc00646064606660666066606660666066606600323032303330333033303330333033001912cc004c08cc0bcdd500144c8c966002606c0050038b2066375a606800260606ea800a2c81724606460666066606660660032259800800c52000899b8048008cc008008c0d00050314c0b4dd50144dc4240009111111111919912cc004c0b40162b30019800981e981d1baa0209bac300b303a3754063300a303a37540633756601260746ea80c500144c0126002041031a400080122c81c22b3001302f0058acc0066002605260746ea80826eb0c02cc0e8dd5018cc028c0e8dd5018cdd59804981d1baa03140051337113001020818d2000400890004590384566002606400b13259800cc004c0a0c0ecdd5010cdd61806181d9baa0329805981d9baa0329bab300a303b375406480122b30013005001898174c004086065001400d1640e51640e46eb4c0f4c0e8dd501a44c96600330013028303b37540433758601860766ea80ca601660766ea80ca6eacc028c0ecdd501920048acc004c0140062605d30010218194cdc1000a4002801a2c81ca2c81c8dd6981e981d1baa03440e081c10381111919912cc004cdc39bad30410010028992cc004cc896600200314a11329800992cc004c0d8c108dd5000c4dd6982198231bab3046304337540031480010411822800cdd798229823000cdd58012444b30010018acc004c008016266e2520000038a50410d1325980099baf30450014c010140008acc004cdc49bad304630493756608c00200913003374c609400514a082222b300133712900000244c00c01a2941044208830480014118329800800c00e446608c0046608c6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1100066eacc11400660920069112cc004cdc8a441000038acc004cdc7a44100003899802981c198251ba60024bd70000c4cc015300103d87a8000006411919800803c006446600e0046609866ec0dd48029ba6004001401c8230608e004822a2942294229410461bab302e002374c6608266ec0c108004dd31982099bb030423043001375066e0400c0152f5bded8c097adef6c608801c5903d1bac304130423042304230423042303e375400d1640f0b3001302f30050018a40011598009820000c4c96600266e3cdd7181e000a44104555344720089bad303d0018b2076303f0018b207a40e86464b30013031303d37540031325980099baf3042303f37546084607e6ea8c0b8c0fcdd50009808998209ba90034bd7044c9660026070607e6ea80062646601e002264b30013035304137540031325980099baf304630433754608c60866ea8004c054cc114dd4803a5eb82264b3001303c3043375400313233013001133047375066e04dd6982418229baa001375a6090608a6ea8014cc11cdd3194c0040066eacc0d4c118dd50024c8cc004004dd5981b18239baa30363047375401244b30010018a5eb7bdb1822646609666ec0c120004dd319198008009bab304a0022259800800c52f5bded8c11323304e3376060960026ea0cdc0a40006eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0924004444b30010028800c4c8cc8a600200d304f0059919800800802912cc00400626609e66ec0dd48021ba60034bd6f7b63044ca60026eb8c1340066eacc13800660a40049112cc004cdc8004001c4cc14ccdd81ba9008374c00e00b15980099b8f0080038992cc004c114c144dd5000c4cc150cdd81ba90093055305237540020051002414064b300159800800c528c52820a68a6103d87a8000898211982a1ba60014bd7020a0329800800c022006800888966002005100189919914c00401a60b600b32330010010052259800800c4cc16ccdd81ba9004375000697adef6c608994c004dd7182c800cdd6982d000cc1780092225980099b9000800389982f99bb037520106ea001c0162b30013371e010007132598009828982e9baa00189983019bb0375201260c260bc6ea800400a200482e0c96600260a200314c0103d87a800089827198301ba80014bd7020b83370000e00513305f337606ea400cdd400119803003000a0b6416c305c00141688030dd7182a0009bad305500130570024155133053337606ea400cdd300119803003000a09e413c305000141388030dd718240009bab3049001304b002412497ae0304730443754003164108606060866ea80062c8208c114c108dd5000c59040198149bac302e3041375401046606060566eacc0c4c108dd5000803182198201baa0018b207c302c303f3754605c607e6ea80062c81e8c104c0f8dd5000c52f5c30100008101a00020783302437586080607a6ea8010004dd7181f981e1baa3009303c3754008664464b30013033303d375400314bd6f7b63044dd59820981f1baa00140f0646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606266086608200497ae08a60103d87a800040fd133004004304500340fc6eb8c0fc004c1080050401bab3008303b37540046eb8c0a8c0ecdd51804181d9baa003222232330010010052232598009819000c4cc0b4018dd71821181f9baa0028acc004c0d0006264660020026eb0c10cc100dd5001912cc00400629462b30013300500530440018998010011822800c528207e4109159800981b800c4c8cc004004dd6182198201baa0032259800800c52845660026600a00a608800314a3133002002304500140fc82122b3001303300189919b89375a608600264660020026eb0c110c114008896600200314800226644b300133008008002899b800014800a20028210c114004cc008008c118005043181f9baa0028acc004cdc3a40100031332259800981b18201baa0018992cc004c0dcc104dd5181898211baa3031304237540111337120020071337100020068200dd6982218209baa0018a5040fc6eb4c108c0fcdd50011821181f9baa302e303f375400b15980099b874802800626644b300130363040375400313259800981b98209baa303130423754608a60846ea8022266e2400c006266e2000c0050401bad30443041375400314a081f8dd69821181f9baa0023042303f37546084607e6ea8016264646600200200c44b30010018a508acc004cdd780198209822800c528c4cc008008c11800504020863011330413042303f375400497ae040f481e903d207a40f481e8c0f4dd50009801801a2c8178dd718178009bae302f00a302f0098b2058375c60580026eb8c0b0008c0b0004c09cdd5000c590254590280c094004c090004c08c004c088004c084004c070dd500145901a1804980d1baa32598009807180d1baa0018992cc004c050c06cdd5000c4c966002602060386ea8006264646644b300130250038802c5902218110009bae30220023022001301d375400316406c603e60386ea80062c80d0c020c06cdd51805180d9baa301e301b3754003164064660026eb0c024c068dd500880b9802002111980180111980518029bab300b301c3754601660386ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c010006260186603c00297ae089980180198100012034301e0014070600c00c44464b3001300c001899192cc004c07c00a0091640706eb8c074004c064dd5001c566002601c00313259800980f000c4cc018dd6180e800912cc00400a00b19800803cc07c00a260026040004803901d45901b180c9baa0038acc004c044006264b3001301e0018998031bac301d0012259800801401633001007980f80144c004c080009007203a8b2036301937540071598009806800c4c8cc896600260400031330083758603e00244b3001002803c6600201330210028980098110012012407d1640746eb4c074004c078004c064dd5001c56600266e1d2008001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200a001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200c001899192cc004c07c00a0091640706eb8c074004c064dd5001c59017202e405c80b9017202e405c602e6ea80088b2010180480098021baa00a8a4d13656400801", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var V0_2ProtocolProtocolElse = exports.V0_2ProtocolProtocolElse = /*#__PURE__*/_createClass(function V0_2ProtocolProtocolElse(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_2ProtocolProtocolElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "591944010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920130657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488888896600264653001301100198089809000cdc3a400930110024888966002600460226ea800e264b30010058cc004dc3a4005370e90034dc3a40013012375400a9111192cc004c00c00a2b300130183754015001806a0328acc004c01400a2b300130183754015001806a0328acc004c02000a264b300100180744c96600200300f807c03e264b3001301f003802404101c1bad001807a03e301c001406860306ea802a2b300130040028992cc00400601d13259800800c03e01f00f8992cc004c07c00e00901040706eb400601e80f8c07000501a180c1baa00a806a02a405480a90150cc004896600200314bd7044cc06cc060c070004cc008008c07400501a4dd2a40012301b301c001911919800800801912cc00400629422b30013371e6eb8c07800400e2946266004004603e00280c101c48c06cc070c07000522222323322323259800800c4c8c966002601c60446ea800e264b300100180d44c96600200313259800800c072264b30010018992cc00400603d13259800800c4c9660020030208992cc004006264b300100181144c96600200313259800800c092264b3001001812c096264b300130340038cc0040323300100a8cc004022330010068acc004c06cc0bcdd500244c9660020030278992cc00400605102881440a226644b300100181544c96600200302b815c0ae05713259800981d001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c206113259800981f801c660026e9520029181f98201820182018201820182018201820000c8c0fcc100c100c100c100c100c100c1000064607e608060806080608060806080003222598009814981e9baa0038992cc00400600513259800800c00e0070038992cc004c11400e00b00441086eb40060068228c108005040181f1baa003800a0769181f9820182018201820000c8966002003148002266e01200233002002304100140f9303a375405b371090002444444444646644b300130320058acc00660026094608e6ea809e6eb0c02cc11cdd501b4c028c11cdd501b4dd5980498239baa0364005130049800813c0da900020048a99822a481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981a002c5660033001302e3047375404f37586016608e6ea80da6014608e6ea80da6eacc024c11cdd501b2002899b889800813c0da90002004480022a6608a9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981b802c4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bc005003454cc1192411a6578706563742077697468647261775f616d6f756e74203e20300016411504041146eb4c128c11cdd501cc4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bccdc1000a4002801a2a6608c920119657870656374206465706f7369745f616d6f756e74203e20300016411504041146eb4c128c11cdd501ca08841108220888c8cc896600266e1cdd6982700080144c9660026644b30010018a508994c004c9660026076609e6ea800626eb4c140c14cdd5982998281baa0018a40008268c1480066ebcc148c14c0066eac00922259800800c566002600400b1337129000001c528209e8992cc004cdd79829000a6010140008acc004cdc49bad30533056375660a600200913003374c60ae00514a082822b300133712900000244c00c01a294105020a03055001414c329800800c00e44660a6004660a66e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1440066eacc14800660ac0069112cc004cdc8a441000038acc004cdc7a44100003899802981e9982b9ba60024bd70000c4cc015300103d87a8000006414919800803c006446600e004660b266ec0dd48029ba6004001401c829060a800482922942294229410531bab3033002374c6609c66ec0c13c004dd31982719bb0304f3050001375066e0400c0152f5bded8c097adef6c608801c54cc1292401be6578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a2020202029001641246eb0c138c13cc13cc13cc13cc13cc12cdd5003454cc1252401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e7400164120b3001303430050018a4001159800800c10a264b3001304e0028acc004cdc79bae3049001488104555344720089bad304a0018a998242491d657870656374206e616d65203d3d20636f6e7374616e74732e757364720016411d043412c6098002825104619192cc004c0d8c128dd5000c4c96600266ebcc13cc130dd5182798261baa3033304c375400260226609c6ea400d2f5c113259800981e98261baa0018992cc004006330010018992cc004c0e8c138dd5000c4c96600266ebcc14cc140dd5182998281baa001301533052375200e97ae08992cc004c104c140dd5000c4c96600200319800800c4cc150dd419b81375a60aa60a46ea8004dd6982a98291baa00533054374c6530010019bab303a3053375400932330010013756607660a86ea8c0ecc150dd5004912cc004006297adef6c608991982c19bb03055001374c64660020026eacc15c008896600200314bd6f7b63044c8cc16ccdd8182c0009ba83370290001bad305900133003003305d002305b00141646600600660b400460b000282b10011112cc00400a2003132332298008034c170016646600200200a44b300100189982e19bb037520086e9800d2f5bded8c113298009bae305a0019bab305b001982f8012444b300133720010007133060337606ea4020dd3003802c56600266e3c02000e264b3001304a305e3754003133061337606ea4024c188c17cdd50008014400905c192cc0056600200314a314a083022980103d87a800089823998309ba60014bd7020b8329800800c022006800888966002005100189919914c00401a60d000b32330010010052259800800c4cc1a0cdd81ba9004375000697adef6c608994c004dd71833000cdd69833800cc1ac0092225980099b9000800389983619bb037520106ea001c0162b30013371e01000713259800982b18351baa00189983699bb0375201260dc60d66ea800400a20048340c96600260ac00314c0103d87a800089829998369ba80014bd7020d03370000e00513306c337606ea400cdd400119803003000a0ce419c3069001419c8030dd718308009bad306200130640024189133060337606ea400cdd300119803003000a0b6416c305d001416c8030dd7182a8009bab30560013058002415897ae0826a026826c13609b04d415c60a860a26ea80062a6609e92012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d00164138606a60a06ea80062a6609c92013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016413460a4609e6ea80062a6609a92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c207363726970742900164130660606eb0c0ccc138dd500411981a98191bab3036304f375400200d048403d04882441220908298c140c134dd5000c54cc12d2413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d00164128606260986ea8c0ccc130dd5000c54cc12924014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287363726970742900164124609c60966ea8006297ae110100008101a00020903302b3758609a60946ea8010004dd7182618249baa300930493754008664464b30013038304a375400314bd6f7b63044dd5982718259baa0014120646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606c660a0609c00497ae08a60103d87a8000412d1330040043052003412c6eb8c130004c13c00504d1bab3008304837540046eb8c0bcc120dd5180418241baa00322223233001001005223259800981b800c4cc0c8018dd7182798261baa0028acc004c0e4006264660020026eb0c140c134dd5001912cc00400629462b30013300500530510018998010011829000c5282096413d159800981e000c4c8cc004004dd6182818269baa0032259800800c52845660026600a00a60a200314a31330020023052001412c827a2b3001303800189919b89375a60a000264660020026eb0c144c148008896600200314800226644b300133008008002899b800014800a20028270c148004cc008008c14c00505018261baa0028acc004cdc3a40100031332259800981d98269baa0018992cc004c0f0c138dd5181b18279baa3036304f37540111337120020071337100020068260dd6982898271baa0018a50412c6eb4c13cc130dd5001182798261baa3033304c375400b15980099b874802800626644b3001303b304d375400313259800981e18271baa3036304f375460a4609e6ea8022266e2400c006266e2000c00504c1bad3051304e375400314a08258dd6982798261baa002304f304c3754609e60986ea8016264646600200200c44b30010018a508acc004cdd780198271829000c528c4cc008008c14c00504c20a030113304e304f304c375400497ae041248249049209241248248c128dd50009801801a06281e0dd7000a07e303c00140e86eb8004c0ec02103c181c803a06e816206e375c00281d0c0dc0050351bae001303600240dc60680028190c0c0dd5002409902d409900e409900e409900e409900e40990311bac001812c0950341818800a05e3031002811c08e04702340c8605e0028168c0bc00a043021810c0850301816800a056302d00280fc07e03f01f40b860560028148c0ac00a03b01d80ec07502c1814800a04e302900280dc06e03701b40a8604e0028128c08cdd5001c065020111194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c058006264b300100180344c966002003007803c4c966002606000713300b0012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0c000e26601600244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b300130150018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009819801c4cc038004896600200500a8992cc0040063300100d800c4c008c0d800d00d403a01d00e807206e303400240c900b40c06eb000601500a40cc60600028170dd68009817801401d0301816800a0563029375400715980099b8748020006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c9660026060007005804205a375a00300740c0605a0028158c0a4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa003802a04c40988131026204c40988130c09cdd500111191980080080191198018009801001405e02f01780ba04c30073020375464646644646644a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea408d22010013259800980998139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980d18149baa0018992cc0040062b30013016302a375400313259800800c08e264b30010018124092049024899912cc00400604d13259800981a0014401a04e8188c0c80050301bae001303100240c8605e0028168c0acdd5000c089028408a0450228112060302d302a3754003153302849013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601c60526ea8c040c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601000204660020026eb0c030c094dd500a111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051009205a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81390271bac302a002375a60500026466ec0dd418140009ba73029001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a605a003337149101023a200098008054c0b800600a805100a181800144ca6002015302d00199b8a489023a200098008054c0b8006600e66008008004805100a1818001205c303000140b466e29220102207d0000340a86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900620543758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720583371666e000056600266e2000520148a40c11481b902c002200c33706002901019b8600148080cdc70020012052375c0068168dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003408c81188888c8cc004004014896600200310058992cc004006266008605800400d133005302c0023300300300140a860580028148c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c00028019020111980180111980418029bab300930223754601260446ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146604800297ae08998018019813001203e30240014088600a00a4022011008804203030153012375400716403c3011001300c3754025149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241" : "590d5b010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a400d370e90004c024dd500224444464b300130030028acc004c040dd500540062c808a2b300130050028acc004c040dd500540062c808a2b30013008002899192cc004c05800a00716404c6eb4c050004c040dd5005456600260080051323259800980b001400e2c8098dd6980a00098081baa00a8b201c4038807100e0cc004896600200314bd7044cc04cc040c050004cc008008c0540050124dd2a4001230133014001911919800800801912cc00400629422b30013371e6eb8c05800400e2946266004004602e002808901448c04cc050c05000644646600200200644660060026004004911111199119911919912cc004c03cc06cdd500144c8c8c8c8c8ca60026eb0c094006604a00b30250049812801cc0940092222259800981580344cc030c0a802c4cc0300104cc03000c4cc0300085660026034604c6ea8006264646644b3001302f00389919912cc004c0c800e33001374a900148c0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc00646064606660666066606660666066606600323032303330333033303330333033001912cc004c08cc0bcdd500144c8c966002606c0050038b2066375a606800260606ea800a2c81724606460666066606660660032259800800c52000899b8048008cc008008c0d00050314c0b4dd50144dc4240009111111111919912cc004c0b40162b30019800981e981d1baa0209bac300b303a3754063300a303a37540633756601260746ea80c500144c0126002041031a400080122c81c22b3001302f0058acc0066002605260746ea80826eb0c02cc0e8dd5018cc028c0e8dd5018cdd59804981d1baa03140051337113001020818d2000400890004590384566002606400b13259800cc004c0a0c0ecdd5010cdd61806181d9baa0329805981d9baa0329bab300a303b375406480122b30013005001898174c004086065001400d1640e51640e46eb4c0f4c0e8dd501a44c96600330013028303b37540433758601860766ea80ca601660766ea80ca6eacc028c0ecdd501920048acc004c0140062605d30010218194cdc1000a4002801a2c81ca2c81c8dd6981e981d1baa03440e081c10381111919912cc004cdc39bad30410010028992cc004cc896600200314a11329800992cc004c0d8c108dd5000c4dd6982198231bab3046304337540031480010411822800cdd798229823000cdd58012444b30010018acc004c008016266e2520000038a50410d1325980099baf30450014c010140008acc004cdc49bad304630493756608c00200913003374c609400514a082222b300133712900000244c00c01a2941044208830480014118329800800c00e446608c0046608c6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1100066eacc11400660920069112cc004cdc8a441000038acc004cdc7a44100003899802981c198251ba60024bd70000c4cc015300103d87a8000006411919800803c006446600e0046609866ec0dd48029ba6004001401c8230608e004822a2942294229410461bab302e002374c6608266ec0c108004dd31982099bb030423043001375066e0400c0152f5bded8c097adef6c608801c5903d1bac304130423042304230423042303e375400d1640f0b3001302f30050018a40011598009820000c4c96600266e3cdd7181e000a44104555344720089bad303d0018b2076303f0018b207a40e86464b30013031303d37540031325980099baf3042303f37546084607e6ea8c0b8c0fcdd50009808998209ba90034bd7044c9660026070607e6ea80062646601e002264b30013035304137540031325980099baf304630433754608c60866ea8004c054cc114dd4803a5eb82264b3001303c3043375400313233013001133047375066e04dd6982418229baa001375a6090608a6ea8014cc11cdd3194c0040066eacc0d4c118dd50024c8cc004004dd5981b18239baa30363047375401244b30010018a5eb7bdb1822646609666ec0c120004dd319198008009bab304a0022259800800c52f5bded8c11323304e3376060960026ea0cdc0a40006eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0924004444b30010028800c4c8cc8a600200d304f0059919800800802912cc00400626609e66ec0dd48021ba60034bd6f7b63044ca60026eb8c1340066eacc13800660a40049112cc004cdc8004001c4cc14ccdd81ba9008374c00e00b15980099b8f0080038992cc004c114c144dd5000c4cc150cdd81ba90093055305237540020051002414064b300159800800c528c52820a68a6103d87a8000898211982a1ba60014bd7020a0329800800c022006800888966002005100189919914c00401a60b600b32330010010052259800800c4cc16ccdd81ba9004375000697adef6c608994c004dd7182c800cdd6982d000cc1780092225980099b9000800389982f99bb037520106ea001c0162b30013371e010007132598009828982e9baa00189983019bb0375201260c260bc6ea800400a200482e0c96600260a200314c0103d87a800089827198301ba80014bd7020b83370000e00513305f337606ea400cdd400119803003000a0b6416c305c00141688030dd7182a0009bad305500130570024155133053337606ea400cdd300119803003000a09e413c305000141388030dd718240009bab3049001304b002412497ae0304730443754003164108606060866ea80062c8208c114c108dd5000c59040198149bac302e3041375401046606060566eacc0c4c108dd5000803182198201baa0018b207c302c303f3754605c607e6ea80062c81e8c104c0f8dd5000c52f5c30100008101a00020783302437586080607a6ea8010004dd7181f981e1baa3009303c3754008664464b30013033303d375400314bd6f7b63044dd59820981f1baa00140f0646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606266086608200497ae08a60103d87a800040fd133004004304500340fc6eb8c0fc004c1080050401bab3008303b37540046eb8c0a8c0ecdd51804181d9baa003222232330010010052232598009819000c4cc0b4018dd71821181f9baa0028acc004c0d0006264660020026eb0c10cc100dd5001912cc00400629462b30013300500530440018998010011822800c528207e4109159800981b800c4c8cc004004dd6182198201baa0032259800800c52845660026600a00a608800314a3133002002304500140fc82122b3001303300189919b89375a608600264660020026eb0c110c114008896600200314800226644b300133008008002899b800014800a20028210c114004cc008008c118005043181f9baa0028acc004cdc3a40100031332259800981b18201baa0018992cc004c0dcc104dd5181898211baa3031304237540111337120020071337100020068200dd6982218209baa0018a5040fc6eb4c108c0fcdd50011821181f9baa302e303f375400b15980099b874802800626644b300130363040375400313259800981b98209baa303130423754608a60846ea8022266e2400c006266e2000c0050401bad30443041375400314a081f8dd69821181f9baa0023042303f37546084607e6ea8016264646600200200c44b30010018a508acc004cdd780198209822800c528c4cc008008c11800504020863011330413042303f375400497ae040f481e903d207a40f481e8c0f4dd50009801801a2c8178dd718178009bae302f00a302f0098b2058375c60580026eb8c0b0008c0b0004c09cdd5000c590254590280c094004c090004c08c004c088004c084004c070dd500145901a1804980d1baa32598009807180d1baa0018992cc004c050c06cdd5000c4c966002602060386ea8006264646644b300130250038802c5902218110009bae30220023022001301d375400316406c603e60386ea80062c80d0c020c06cdd51805180d9baa301e301b3754003164064660026eb0c024c068dd500880b9802002111980180111980518029bab300b301c3754601660386ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c010006260186603c00297ae089980180198100012034301e0014070600c00c44464b3001300c001899192cc004c07c00a0091640706eb8c074004c064dd5001c566002601c00313259800980f000c4cc018dd6180e800912cc00400a00b19800803cc07c00a260026040004803901d45901b180c9baa0038acc004c044006264b3001301e0018998031bac301d0012259800801401633001007980f80144c004c080009007203a8b2036301937540071598009806800c4c8cc896600260400031330083758603e00244b3001002803c6600201330210028980098110012012407d1640746eb4c074004c078004c064dd5001c56600266e1d2008001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200a001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200c001899192cc004c07c00a0091640706eb8c074004c064dd5001c59017202e405c80b9017202e405c602e6ea80088b2010180480098021baa00a8a4d13656400801", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_2/index.js.map b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_2/index.js.map new file mode 100644 index 0000000000..854ededa7e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_2/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_uplc","require","_data","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","a","n","TypeError","_defineProperty","value","i","_toPrimitive","toPrimitive","call","String","Number","PolicyId","Type","Contracts","Module","MultisigScript","Union","Signature","key_hash","ctor","AllOf","scripts","Array","Ref","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Tuple","Registry","treasury","usdr","ProtocolRedeemer","Literal","Withdraw","withdraw_amount","Deposit","deposit_amount","ProxyDatum","logic","settings","Settings","mint_permission","burn_permission","withdraw_permission","deposit_permission","registry","reserve_token","exports","Import","V0_2ProtocolProtocolWithdraw","proxyPolicyId","trace","arguments","undefined","cborToScript","applyParamsToScript","V0_2ProtocolProtocolElse"],"sources":["../../../../src/generated-types/v0_2/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\nimport { type PlutusData } from \"@blaze-cardano/core\";\ntype Data = PlutusData;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object({\n key_hash: Type.String(),\n }, { ctor: 0n })\n }),\n Type.Object({\n AllOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n AnyOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n AtLeast: Type.Object({\n required: Type.BigInt(),\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Before: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n After: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n Script: Type.Object({\n script_hash: Type.String(),\n }, { ctor: 6n })\n }),\n ]),\n Asset: Type.Tuple([\n Type.String(),\n Type.String(),\n ]),\n Registry: Type.Object({\n treasury: Type.String(),\n usdr: Type.String(),\n }, { ctor: 0n }),\n ProtocolRedeemer: Type.Union([\n Type.Literal(\"Mint\", { ctor: 0n }),\n Type.Literal(\"Burn\", { ctor: 1n }),\n Type.Object({\n Withdraw: Type.Object({\n withdraw_amount: Type.BigInt(),\n }, { ctor: 2n })\n }),\n Type.Object({\n Deposit: Type.Object({\n deposit_amount: Type.BigInt(),\n }, { ctor: 3n })\n }),\n ]),\n ProxyDatum: Type.Object({\n logic: Type.String(),\n settings: Type.Ref(\"Settings\"),\n }, { ctor: 0n }),\n Settings: Type.Object({\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n withdraw_permission: Type.Ref(\"MultisigScript\"),\n deposit_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"Registry\"),\n reserve_token: Type.Ref(\"Asset\"),\n }, { ctor: 0n }),\n});\n\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Registry = Contracts.Import(\"Registry\");\nexport type Registry = Exact;\nexport const ProtocolRedeemer = Contracts.Import(\"ProtocolRedeemer\");\nexport type ProtocolRedeemer = Exact;\nexport const ProxyDatum = Contracts.Import(\"ProxyDatum\");\nexport type ProxyDatum = Exact;\nexport const Settings = Contracts.Import(\"Settings\");\nexport type Settings = Exact;\n\nexport class V0_2ProtocolProtocolWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"591944010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920130657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488888896600264653001301100198089809000cdc3a400930110024888966002600460226ea800e264b30010058cc004dc3a4005370e90034dc3a40013012375400a9111192cc004c00c00a2b300130183754015001806a0328acc004c01400a2b300130183754015001806a0328acc004c02000a264b300100180744c96600200300f807c03e264b3001301f003802404101c1bad001807a03e301c001406860306ea802a2b300130040028992cc00400601d13259800800c03e01f00f8992cc004c07c00e00901040706eb400601e80f8c07000501a180c1baa00a806a02a405480a90150cc004896600200314bd7044cc06cc060c070004cc008008c07400501a4dd2a40012301b301c001911919800800801912cc00400629422b30013371e6eb8c07800400e2946266004004603e00280c101c48c06cc070c07000522222323322323259800800c4c8c966002601c60446ea800e264b300100180d44c96600200313259800800c072264b30010018992cc00400603d13259800800c4c9660020030208992cc004006264b300100181144c96600200313259800800c092264b3001001812c096264b300130340038cc0040323300100a8cc004022330010068acc004c06cc0bcdd500244c9660020030278992cc00400605102881440a226644b300100181544c96600200302b815c0ae05713259800981d001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c206113259800981f801c660026e9520029181f98201820182018201820182018201820000c8c0fcc100c100c100c100c100c100c1000064607e608060806080608060806080003222598009814981e9baa0038992cc00400600513259800800c00e0070038992cc004c11400e00b00441086eb40060068228c108005040181f1baa003800a0769181f9820182018201820000c8966002003148002266e01200233002002304100140f9303a375405b371090002444444444646644b300130320058acc00660026094608e6ea809e6eb0c02cc11cdd501b4c028c11cdd501b4dd5980498239baa0364005130049800813c0da900020048a99822a481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981a002c5660033001302e3047375404f37586016608e6ea80da6014608e6ea80da6eacc024c11cdd501b2002899b889800813c0da90002004480022a6608a9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981b802c4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bc005003454cc1192411a6578706563742077697468647261775f616d6f756e74203e20300016411504041146eb4c128c11cdd501cc4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bccdc1000a4002801a2a6608c920119657870656374206465706f7369745f616d6f756e74203e20300016411504041146eb4c128c11cdd501ca08841108220888c8cc896600266e1cdd6982700080144c9660026644b30010018a508994c004c9660026076609e6ea800626eb4c140c14cdd5982998281baa0018a40008268c1480066ebcc148c14c0066eac00922259800800c566002600400b1337129000001c528209e8992cc004cdd79829000a6010140008acc004cdc49bad30533056375660a600200913003374c60ae00514a082822b300133712900000244c00c01a294105020a03055001414c329800800c00e44660a6004660a66e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1440066eacc14800660ac0069112cc004cdc8a441000038acc004cdc7a44100003899802981e9982b9ba60024bd70000c4cc015300103d87a8000006414919800803c006446600e004660b266ec0dd48029ba6004001401c829060a800482922942294229410531bab3033002374c6609c66ec0c13c004dd31982719bb0304f3050001375066e0400c0152f5bded8c097adef6c608801c54cc1292401be6578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a2020202029001641246eb0c138c13cc13cc13cc13cc13cc12cdd5003454cc1252401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e7400164120b3001303430050018a4001159800800c10a264b3001304e0028acc004cdc79bae3049001488104555344720089bad304a0018a998242491d657870656374206e616d65203d3d20636f6e7374616e74732e757364720016411d043412c6098002825104619192cc004c0d8c128dd5000c4c96600266ebcc13cc130dd5182798261baa3033304c375400260226609c6ea400d2f5c113259800981e98261baa0018992cc004006330010018992cc004c0e8c138dd5000c4c96600266ebcc14cc140dd5182998281baa001301533052375200e97ae08992cc004c104c140dd5000c4c96600200319800800c4cc150dd419b81375a60aa60a46ea8004dd6982a98291baa00533054374c6530010019bab303a3053375400932330010013756607660a86ea8c0ecc150dd5004912cc004006297adef6c608991982c19bb03055001374c64660020026eacc15c008896600200314bd6f7b63044c8cc16ccdd8182c0009ba83370290001bad305900133003003305d002305b00141646600600660b400460b000282b10011112cc00400a2003132332298008034c170016646600200200a44b300100189982e19bb037520086e9800d2f5bded8c113298009bae305a0019bab305b001982f8012444b300133720010007133060337606ea4020dd3003802c56600266e3c02000e264b3001304a305e3754003133061337606ea4024c188c17cdd50008014400905c192cc0056600200314a314a083022980103d87a800089823998309ba60014bd7020b8329800800c022006800888966002005100189919914c00401a60d000b32330010010052259800800c4cc1a0cdd81ba9004375000697adef6c608994c004dd71833000cdd69833800cc1ac0092225980099b9000800389983619bb037520106ea001c0162b30013371e01000713259800982b18351baa00189983699bb0375201260dc60d66ea800400a20048340c96600260ac00314c0103d87a800089829998369ba80014bd7020d03370000e00513306c337606ea400cdd400119803003000a0ce419c3069001419c8030dd718308009bad306200130640024189133060337606ea400cdd300119803003000a0b6416c305d001416c8030dd7182a8009bab30560013058002415897ae0826a026826c13609b04d415c60a860a26ea80062a6609e92012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d00164138606a60a06ea80062a6609c92013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016413460a4609e6ea80062a6609a92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c207363726970742900164130660606eb0c0ccc138dd500411981a98191bab3036304f375400200d048403d04882441220908298c140c134dd5000c54cc12d2413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d00164128606260986ea8c0ccc130dd5000c54cc12924014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287363726970742900164124609c60966ea8006297ae110100008101a00020903302b3758609a60946ea8010004dd7182618249baa300930493754008664464b30013038304a375400314bd6f7b63044dd5982718259baa0014120646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606c660a0609c00497ae08a60103d87a8000412d1330040043052003412c6eb8c130004c13c00504d1bab3008304837540046eb8c0bcc120dd5180418241baa00322223233001001005223259800981b800c4cc0c8018dd7182798261baa0028acc004c0e4006264660020026eb0c140c134dd5001912cc00400629462b30013300500530510018998010011829000c5282096413d159800981e000c4c8cc004004dd6182818269baa0032259800800c52845660026600a00a60a200314a31330020023052001412c827a2b3001303800189919b89375a60a000264660020026eb0c144c148008896600200314800226644b300133008008002899b800014800a20028270c148004cc008008c14c00505018261baa0028acc004cdc3a40100031332259800981d98269baa0018992cc004c0f0c138dd5181b18279baa3036304f37540111337120020071337100020068260dd6982898271baa0018a50412c6eb4c13cc130dd5001182798261baa3033304c375400b15980099b874802800626644b3001303b304d375400313259800981e18271baa3036304f375460a4609e6ea8022266e2400c006266e2000c00504c1bad3051304e375400314a08258dd6982798261baa002304f304c3754609e60986ea8016264646600200200c44b30010018a508acc004cdd780198271829000c528c4cc008008c14c00504c20a030113304e304f304c375400497ae041248249049209241248248c128dd50009801801a06281e0dd7000a07e303c00140e86eb8004c0ec02103c181c803a06e816206e375c00281d0c0dc0050351bae001303600240dc60680028190c0c0dd5002409902d409900e409900e409900e409900e40990311bac001812c0950341818800a05e3031002811c08e04702340c8605e0028168c0bc00a043021810c0850301816800a056302d00280fc07e03f01f40b860560028148c0ac00a03b01d80ec07502c1814800a04e302900280dc06e03701b40a8604e0028128c08cdd5001c065020111194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c058006264b300100180344c966002003007803c4c966002606000713300b0012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0c000e26601600244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b300130150018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009819801c4cc038004896600200500a8992cc0040063300100d800c4c008c0d800d00d403a01d00e807206e303400240c900b40c06eb000601500a40cc60600028170dd68009817801401d0301816800a0563029375400715980099b8748020006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c9660026060007005804205a375a00300740c0605a0028158c0a4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa003802a04c40988131026204c40988130c09cdd500111191980080080191198018009801001405e02f01780ba04c30073020375464646644646644a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea408d22010013259800980998139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980d18149baa0018992cc0040062b30013016302a375400313259800800c08e264b30010018124092049024899912cc00400604d13259800981a0014401a04e8188c0c80050301bae001303100240c8605e0028168c0acdd5000c089028408a0450228112060302d302a3754003153302849013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601c60526ea8c040c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601000204660020026eb0c030c094dd500a111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051009205a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81390271bac302a002375a60500026466ec0dd418140009ba73029001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a605a003337149101023a200098008054c0b800600a805100a181800144ca6002015302d00199b8a489023a200098008054c0b8006600e66008008004805100a1818001205c303000140b466e29220102207d0000340a86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900620543758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720583371666e000056600266e2000520148a40c11481b902c002200c33706002901019b8600148080cdc70020012052375c0068168dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003408c81188888c8cc004004014896600200310058992cc004006266008605800400d133005302c0023300300300140a860580028148c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c00028019020111980180111980418029bab300930223754601260446ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146604800297ae08998018019813001203e30240014088600a00a4022011008804203030153012375400716403c3011001300c3754025149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n :\n \"590d5b010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a400d370e90004c024dd500224444464b300130030028acc004c040dd500540062c808a2b300130050028acc004c040dd500540062c808a2b30013008002899192cc004c05800a00716404c6eb4c050004c040dd5005456600260080051323259800980b001400e2c8098dd6980a00098081baa00a8b201c4038807100e0cc004896600200314bd7044cc04cc040c050004cc008008c0540050124dd2a4001230133014001911919800800801912cc00400629422b30013371e6eb8c05800400e2946266004004602e002808901448c04cc050c05000644646600200200644660060026004004911111199119911919912cc004c03cc06cdd500144c8c8c8c8c8ca60026eb0c094006604a00b30250049812801cc0940092222259800981580344cc030c0a802c4cc0300104cc03000c4cc0300085660026034604c6ea8006264646644b3001302f00389919912cc004c0c800e33001374a900148c0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc00646064606660666066606660666066606600323032303330333033303330333033001912cc004c08cc0bcdd500144c8c966002606c0050038b2066375a606800260606ea800a2c81724606460666066606660660032259800800c52000899b8048008cc008008c0d00050314c0b4dd50144dc4240009111111111919912cc004c0b40162b30019800981e981d1baa0209bac300b303a3754063300a303a37540633756601260746ea80c500144c0126002041031a400080122c81c22b3001302f0058acc0066002605260746ea80826eb0c02cc0e8dd5018cc028c0e8dd5018cdd59804981d1baa03140051337113001020818d2000400890004590384566002606400b13259800cc004c0a0c0ecdd5010cdd61806181d9baa0329805981d9baa0329bab300a303b375406480122b30013005001898174c004086065001400d1640e51640e46eb4c0f4c0e8dd501a44c96600330013028303b37540433758601860766ea80ca601660766ea80ca6eacc028c0ecdd501920048acc004c0140062605d30010218194cdc1000a4002801a2c81ca2c81c8dd6981e981d1baa03440e081c10381111919912cc004cdc39bad30410010028992cc004cc896600200314a11329800992cc004c0d8c108dd5000c4dd6982198231bab3046304337540031480010411822800cdd798229823000cdd58012444b30010018acc004c008016266e2520000038a50410d1325980099baf30450014c010140008acc004cdc49bad304630493756608c00200913003374c609400514a082222b300133712900000244c00c01a2941044208830480014118329800800c00e446608c0046608c6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1100066eacc11400660920069112cc004cdc8a441000038acc004cdc7a44100003899802981c198251ba60024bd70000c4cc015300103d87a8000006411919800803c006446600e0046609866ec0dd48029ba6004001401c8230608e004822a2942294229410461bab302e002374c6608266ec0c108004dd31982099bb030423043001375066e0400c0152f5bded8c097adef6c608801c5903d1bac304130423042304230423042303e375400d1640f0b3001302f30050018a40011598009820000c4c96600266e3cdd7181e000a44104555344720089bad303d0018b2076303f0018b207a40e86464b30013031303d37540031325980099baf3042303f37546084607e6ea8c0b8c0fcdd50009808998209ba90034bd7044c9660026070607e6ea80062646601e002264b30013035304137540031325980099baf304630433754608c60866ea8004c054cc114dd4803a5eb82264b3001303c3043375400313233013001133047375066e04dd6982418229baa001375a6090608a6ea8014cc11cdd3194c0040066eacc0d4c118dd50024c8cc004004dd5981b18239baa30363047375401244b30010018a5eb7bdb1822646609666ec0c120004dd319198008009bab304a0022259800800c52f5bded8c11323304e3376060960026ea0cdc0a40006eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0924004444b30010028800c4c8cc8a600200d304f0059919800800802912cc00400626609e66ec0dd48021ba60034bd6f7b63044ca60026eb8c1340066eacc13800660a40049112cc004cdc8004001c4cc14ccdd81ba9008374c00e00b15980099b8f0080038992cc004c114c144dd5000c4cc150cdd81ba90093055305237540020051002414064b300159800800c528c52820a68a6103d87a8000898211982a1ba60014bd7020a0329800800c022006800888966002005100189919914c00401a60b600b32330010010052259800800c4cc16ccdd81ba9004375000697adef6c608994c004dd7182c800cdd6982d000cc1780092225980099b9000800389982f99bb037520106ea001c0162b30013371e010007132598009828982e9baa00189983019bb0375201260c260bc6ea800400a200482e0c96600260a200314c0103d87a800089827198301ba80014bd7020b83370000e00513305f337606ea400cdd400119803003000a0b6416c305c00141688030dd7182a0009bad305500130570024155133053337606ea400cdd300119803003000a09e413c305000141388030dd718240009bab3049001304b002412497ae0304730443754003164108606060866ea80062c8208c114c108dd5000c59040198149bac302e3041375401046606060566eacc0c4c108dd5000803182198201baa0018b207c302c303f3754605c607e6ea80062c81e8c104c0f8dd5000c52f5c30100008101a00020783302437586080607a6ea8010004dd7181f981e1baa3009303c3754008664464b30013033303d375400314bd6f7b63044dd59820981f1baa00140f0646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606266086608200497ae08a60103d87a800040fd133004004304500340fc6eb8c0fc004c1080050401bab3008303b37540046eb8c0a8c0ecdd51804181d9baa003222232330010010052232598009819000c4cc0b4018dd71821181f9baa0028acc004c0d0006264660020026eb0c10cc100dd5001912cc00400629462b30013300500530440018998010011822800c528207e4109159800981b800c4c8cc004004dd6182198201baa0032259800800c52845660026600a00a608800314a3133002002304500140fc82122b3001303300189919b89375a608600264660020026eb0c110c114008896600200314800226644b300133008008002899b800014800a20028210c114004cc008008c118005043181f9baa0028acc004cdc3a40100031332259800981b18201baa0018992cc004c0dcc104dd5181898211baa3031304237540111337120020071337100020068200dd6982218209baa0018a5040fc6eb4c108c0fcdd50011821181f9baa302e303f375400b15980099b874802800626644b300130363040375400313259800981b98209baa303130423754608a60846ea8022266e2400c006266e2000c0050401bad30443041375400314a081f8dd69821181f9baa0023042303f37546084607e6ea8016264646600200200c44b30010018a508acc004cdd780198209822800c528c4cc008008c11800504020863011330413042303f375400497ae040f481e903d207a40f481e8c0f4dd50009801801a2c8178dd718178009bae302f00a302f0098b2058375c60580026eb8c0b0008c0b0004c09cdd5000c590254590280c094004c090004c08c004c088004c084004c070dd500145901a1804980d1baa32598009807180d1baa0018992cc004c050c06cdd5000c4c966002602060386ea8006264646644b300130250038802c5902218110009bae30220023022001301d375400316406c603e60386ea80062c80d0c020c06cdd51805180d9baa301e301b3754003164064660026eb0c024c068dd500880b9802002111980180111980518029bab300b301c3754601660386ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c010006260186603c00297ae089980180198100012034301e0014070600c00c44464b3001300c001899192cc004c07c00a0091640706eb8c074004c064dd5001c566002601c00313259800980f000c4cc018dd6180e800912cc00400a00b19800803cc07c00a260026040004803901d45901b180c9baa0038acc004c044006264b3001301e0018998031bac301d0012259800801401633001007980f80144c004c080009007203a8b2036301937540071598009806800c4c8cc896600260400031330083758603e00244b3001002803c6600201330210028980098110012012407d1640746eb4c074004c078004c064dd5001c56600266e1d2008001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200a001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200c001899192cc004c07c00a0091640706eb8c074004c064dd5001c59017202e405c80b9017202e405c602e6ea80088b2010180480098021baa00a8a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_2ProtocolProtocolElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"591944010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920130657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488888896600264653001301100198089809000cdc3a400930110024888966002600460226ea800e264b30010058cc004dc3a4005370e90034dc3a40013012375400a9111192cc004c00c00a2b300130183754015001806a0328acc004c01400a2b300130183754015001806a0328acc004c02000a264b300100180744c96600200300f807c03e264b3001301f003802404101c1bad001807a03e301c001406860306ea802a2b300130040028992cc00400601d13259800800c03e01f00f8992cc004c07c00e00901040706eb400601e80f8c07000501a180c1baa00a806a02a405480a90150cc004896600200314bd7044cc06cc060c070004cc008008c07400501a4dd2a40012301b301c001911919800800801912cc00400629422b30013371e6eb8c07800400e2946266004004603e00280c101c48c06cc070c07000522222323322323259800800c4c8c966002601c60446ea800e264b300100180d44c96600200313259800800c072264b30010018992cc00400603d13259800800c4c9660020030208992cc004006264b300100181144c96600200313259800800c092264b3001001812c096264b300130340038cc0040323300100a8cc004022330010068acc004c06cc0bcdd500244c9660020030278992cc00400605102881440a226644b300100181544c96600200302b815c0ae05713259800981d001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c206113259800981f801c660026e9520029181f98201820182018201820182018201820000c8c0fcc100c100c100c100c100c100c1000064607e608060806080608060806080003222598009814981e9baa0038992cc00400600513259800800c00e0070038992cc004c11400e00b00441086eb40060068228c108005040181f1baa003800a0769181f9820182018201820000c8966002003148002266e01200233002002304100140f9303a375405b371090002444444444646644b300130320058acc00660026094608e6ea809e6eb0c02cc11cdd501b4c028c11cdd501b4dd5980498239baa0364005130049800813c0da900020048a99822a481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981a002c5660033001302e3047375404f37586016608e6ea80da6014608e6ea80da6eacc024c11cdd501b2002899b889800813c0da90002004480022a6608a9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981b802c4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bc005003454cc1192411a6578706563742077697468647261775f616d6f756e74203e20300016411504041146eb4c128c11cdd501cc4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bccdc1000a4002801a2a6608c920119657870656374206465706f7369745f616d6f756e74203e20300016411504041146eb4c128c11cdd501ca08841108220888c8cc896600266e1cdd6982700080144c9660026644b30010018a508994c004c9660026076609e6ea800626eb4c140c14cdd5982998281baa0018a40008268c1480066ebcc148c14c0066eac00922259800800c566002600400b1337129000001c528209e8992cc004cdd79829000a6010140008acc004cdc49bad30533056375660a600200913003374c60ae00514a082822b300133712900000244c00c01a294105020a03055001414c329800800c00e44660a6004660a66e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1440066eacc14800660ac0069112cc004cdc8a441000038acc004cdc7a44100003899802981e9982b9ba60024bd70000c4cc015300103d87a8000006414919800803c006446600e004660b266ec0dd48029ba6004001401c829060a800482922942294229410531bab3033002374c6609c66ec0c13c004dd31982719bb0304f3050001375066e0400c0152f5bded8c097adef6c608801c54cc1292401be6578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a2020202029001641246eb0c138c13cc13cc13cc13cc13cc12cdd5003454cc1252401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e7400164120b3001303430050018a4001159800800c10a264b3001304e0028acc004cdc79bae3049001488104555344720089bad304a0018a998242491d657870656374206e616d65203d3d20636f6e7374616e74732e757364720016411d043412c6098002825104619192cc004c0d8c128dd5000c4c96600266ebcc13cc130dd5182798261baa3033304c375400260226609c6ea400d2f5c113259800981e98261baa0018992cc004006330010018992cc004c0e8c138dd5000c4c96600266ebcc14cc140dd5182998281baa001301533052375200e97ae08992cc004c104c140dd5000c4c96600200319800800c4cc150dd419b81375a60aa60a46ea8004dd6982a98291baa00533054374c6530010019bab303a3053375400932330010013756607660a86ea8c0ecc150dd5004912cc004006297adef6c608991982c19bb03055001374c64660020026eacc15c008896600200314bd6f7b63044c8cc16ccdd8182c0009ba83370290001bad305900133003003305d002305b00141646600600660b400460b000282b10011112cc00400a2003132332298008034c170016646600200200a44b300100189982e19bb037520086e9800d2f5bded8c113298009bae305a0019bab305b001982f8012444b300133720010007133060337606ea4020dd3003802c56600266e3c02000e264b3001304a305e3754003133061337606ea4024c188c17cdd50008014400905c192cc0056600200314a314a083022980103d87a800089823998309ba60014bd7020b8329800800c022006800888966002005100189919914c00401a60d000b32330010010052259800800c4cc1a0cdd81ba9004375000697adef6c608994c004dd71833000cdd69833800cc1ac0092225980099b9000800389983619bb037520106ea001c0162b30013371e01000713259800982b18351baa00189983699bb0375201260dc60d66ea800400a20048340c96600260ac00314c0103d87a800089829998369ba80014bd7020d03370000e00513306c337606ea400cdd400119803003000a0ce419c3069001419c8030dd718308009bad306200130640024189133060337606ea400cdd300119803003000a0b6416c305d001416c8030dd7182a8009bab30560013058002415897ae0826a026826c13609b04d415c60a860a26ea80062a6609e92012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d00164138606a60a06ea80062a6609c92013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016413460a4609e6ea80062a6609a92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c207363726970742900164130660606eb0c0ccc138dd500411981a98191bab3036304f375400200d048403d04882441220908298c140c134dd5000c54cc12d2413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d00164128606260986ea8c0ccc130dd5000c54cc12924014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287363726970742900164124609c60966ea8006297ae110100008101a00020903302b3758609a60946ea8010004dd7182618249baa300930493754008664464b30013038304a375400314bd6f7b63044dd5982718259baa0014120646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606c660a0609c00497ae08a60103d87a8000412d1330040043052003412c6eb8c130004c13c00504d1bab3008304837540046eb8c0bcc120dd5180418241baa00322223233001001005223259800981b800c4cc0c8018dd7182798261baa0028acc004c0e4006264660020026eb0c140c134dd5001912cc00400629462b30013300500530510018998010011829000c5282096413d159800981e000c4c8cc004004dd6182818269baa0032259800800c52845660026600a00a60a200314a31330020023052001412c827a2b3001303800189919b89375a60a000264660020026eb0c144c148008896600200314800226644b300133008008002899b800014800a20028270c148004cc008008c14c00505018261baa0028acc004cdc3a40100031332259800981d98269baa0018992cc004c0f0c138dd5181b18279baa3036304f37540111337120020071337100020068260dd6982898271baa0018a50412c6eb4c13cc130dd5001182798261baa3033304c375400b15980099b874802800626644b3001303b304d375400313259800981e18271baa3036304f375460a4609e6ea8022266e2400c006266e2000c00504c1bad3051304e375400314a08258dd6982798261baa002304f304c3754609e60986ea8016264646600200200c44b30010018a508acc004cdd780198271829000c528c4cc008008c14c00504c20a030113304e304f304c375400497ae041248249049209241248248c128dd50009801801a06281e0dd7000a07e303c00140e86eb8004c0ec02103c181c803a06e816206e375c00281d0c0dc0050351bae001303600240dc60680028190c0c0dd5002409902d409900e409900e409900e409900e40990311bac001812c0950341818800a05e3031002811c08e04702340c8605e0028168c0bc00a043021810c0850301816800a056302d00280fc07e03f01f40b860560028148c0ac00a03b01d80ec07502c1814800a04e302900280dc06e03701b40a8604e0028128c08cdd5001c065020111194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c058006264b300100180344c966002003007803c4c966002606000713300b0012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0c000e26601600244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b300130150018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009819801c4cc038004896600200500a8992cc0040063300100d800c4c008c0d800d00d403a01d00e807206e303400240c900b40c06eb000601500a40cc60600028170dd68009817801401d0301816800a0563029375400715980099b8748020006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c9660026060007005804205a375a00300740c0605a0028158c0a4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa003802a04c40988131026204c40988130c09cdd500111191980080080191198018009801001405e02f01780ba04c30073020375464646644646644a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea408d22010013259800980998139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980d18149baa0018992cc0040062b30013016302a375400313259800800c08e264b30010018124092049024899912cc00400604d13259800981a0014401a04e8188c0c80050301bae001303100240c8605e0028168c0acdd5000c089028408a0450228112060302d302a3754003153302849013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601c60526ea8c040c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601000204660020026eb0c030c094dd500a111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051009205a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81390271bac302a002375a60500026466ec0dd418140009ba73029001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a605a003337149101023a200098008054c0b800600a805100a181800144ca6002015302d00199b8a489023a200098008054c0b8006600e66008008004805100a1818001205c303000140b466e29220102207d0000340a86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900620543758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720583371666e000056600266e2000520148a40c11481b902c002200c33706002901019b8600148080cdc70020012052375c0068168dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003408c81188888c8cc004004014896600200310058992cc004006266008605800400d133005302c0023300300300140a860580028148c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c00028019020111980180111980418029bab300930223754601260446ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146604800297ae08998018019813001203e30240014088600a00a4022011008804203030153012375400716403c3011001300c3754025149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n :\n \"590d5b010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a400d370e90004c024dd500224444464b300130030028acc004c040dd500540062c808a2b300130050028acc004c040dd500540062c808a2b30013008002899192cc004c05800a00716404c6eb4c050004c040dd5005456600260080051323259800980b001400e2c8098dd6980a00098081baa00a8b201c4038807100e0cc004896600200314bd7044cc04cc040c050004cc008008c0540050124dd2a4001230133014001911919800800801912cc00400629422b30013371e6eb8c05800400e2946266004004602e002808901448c04cc050c05000644646600200200644660060026004004911111199119911919912cc004c03cc06cdd500144c8c8c8c8c8ca60026eb0c094006604a00b30250049812801cc0940092222259800981580344cc030c0a802c4cc0300104cc03000c4cc0300085660026034604c6ea8006264646644b3001302f00389919912cc004c0c800e33001374a900148c0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc00646064606660666066606660666066606600323032303330333033303330333033001912cc004c08cc0bcdd500144c8c966002606c0050038b2066375a606800260606ea800a2c81724606460666066606660660032259800800c52000899b8048008cc008008c0d00050314c0b4dd50144dc4240009111111111919912cc004c0b40162b30019800981e981d1baa0209bac300b303a3754063300a303a37540633756601260746ea80c500144c0126002041031a400080122c81c22b3001302f0058acc0066002605260746ea80826eb0c02cc0e8dd5018cc028c0e8dd5018cdd59804981d1baa03140051337113001020818d2000400890004590384566002606400b13259800cc004c0a0c0ecdd5010cdd61806181d9baa0329805981d9baa0329bab300a303b375406480122b30013005001898174c004086065001400d1640e51640e46eb4c0f4c0e8dd501a44c96600330013028303b37540433758601860766ea80ca601660766ea80ca6eacc028c0ecdd501920048acc004c0140062605d30010218194cdc1000a4002801a2c81ca2c81c8dd6981e981d1baa03440e081c10381111919912cc004cdc39bad30410010028992cc004cc896600200314a11329800992cc004c0d8c108dd5000c4dd6982198231bab3046304337540031480010411822800cdd798229823000cdd58012444b30010018acc004c008016266e2520000038a50410d1325980099baf30450014c010140008acc004cdc49bad304630493756608c00200913003374c609400514a082222b300133712900000244c00c01a2941044208830480014118329800800c00e446608c0046608c6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1100066eacc11400660920069112cc004cdc8a441000038acc004cdc7a44100003899802981c198251ba60024bd70000c4cc015300103d87a8000006411919800803c006446600e0046609866ec0dd48029ba6004001401c8230608e004822a2942294229410461bab302e002374c6608266ec0c108004dd31982099bb030423043001375066e0400c0152f5bded8c097adef6c608801c5903d1bac304130423042304230423042303e375400d1640f0b3001302f30050018a40011598009820000c4c96600266e3cdd7181e000a44104555344720089bad303d0018b2076303f0018b207a40e86464b30013031303d37540031325980099baf3042303f37546084607e6ea8c0b8c0fcdd50009808998209ba90034bd7044c9660026070607e6ea80062646601e002264b30013035304137540031325980099baf304630433754608c60866ea8004c054cc114dd4803a5eb82264b3001303c3043375400313233013001133047375066e04dd6982418229baa001375a6090608a6ea8014cc11cdd3194c0040066eacc0d4c118dd50024c8cc004004dd5981b18239baa30363047375401244b30010018a5eb7bdb1822646609666ec0c120004dd319198008009bab304a0022259800800c52f5bded8c11323304e3376060960026ea0cdc0a40006eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0924004444b30010028800c4c8cc8a600200d304f0059919800800802912cc00400626609e66ec0dd48021ba60034bd6f7b63044ca60026eb8c1340066eacc13800660a40049112cc004cdc8004001c4cc14ccdd81ba9008374c00e00b15980099b8f0080038992cc004c114c144dd5000c4cc150cdd81ba90093055305237540020051002414064b300159800800c528c52820a68a6103d87a8000898211982a1ba60014bd7020a0329800800c022006800888966002005100189919914c00401a60b600b32330010010052259800800c4cc16ccdd81ba9004375000697adef6c608994c004dd7182c800cdd6982d000cc1780092225980099b9000800389982f99bb037520106ea001c0162b30013371e010007132598009828982e9baa00189983019bb0375201260c260bc6ea800400a200482e0c96600260a200314c0103d87a800089827198301ba80014bd7020b83370000e00513305f337606ea400cdd400119803003000a0b6416c305c00141688030dd7182a0009bad305500130570024155133053337606ea400cdd300119803003000a09e413c305000141388030dd718240009bab3049001304b002412497ae0304730443754003164108606060866ea80062c8208c114c108dd5000c59040198149bac302e3041375401046606060566eacc0c4c108dd5000803182198201baa0018b207c302c303f3754605c607e6ea80062c81e8c104c0f8dd5000c52f5c30100008101a00020783302437586080607a6ea8010004dd7181f981e1baa3009303c3754008664464b30013033303d375400314bd6f7b63044dd59820981f1baa00140f0646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606266086608200497ae08a60103d87a800040fd133004004304500340fc6eb8c0fc004c1080050401bab3008303b37540046eb8c0a8c0ecdd51804181d9baa003222232330010010052232598009819000c4cc0b4018dd71821181f9baa0028acc004c0d0006264660020026eb0c10cc100dd5001912cc00400629462b30013300500530440018998010011822800c528207e4109159800981b800c4c8cc004004dd6182198201baa0032259800800c52845660026600a00a608800314a3133002002304500140fc82122b3001303300189919b89375a608600264660020026eb0c110c114008896600200314800226644b300133008008002899b800014800a20028210c114004cc008008c118005043181f9baa0028acc004cdc3a40100031332259800981b18201baa0018992cc004c0dcc104dd5181898211baa3031304237540111337120020071337100020068200dd6982218209baa0018a5040fc6eb4c108c0fcdd50011821181f9baa302e303f375400b15980099b874802800626644b300130363040375400313259800981b98209baa303130423754608a60846ea8022266e2400c006266e2000c0050401bad30443041375400314a081f8dd69821181f9baa0023042303f37546084607e6ea8016264646600200200c44b30010018a508acc004cdd780198209822800c528c4cc008008c11800504020863011330413042303f375400497ae040f481e903d207a40f481e8c0f4dd50009801801a2c8178dd718178009bae302f00a302f0098b2058375c60580026eb8c0b0008c0b0004c09cdd5000c590254590280c094004c090004c08c004c088004c084004c070dd500145901a1804980d1baa32598009807180d1baa0018992cc004c050c06cdd5000c4c966002602060386ea8006264646644b300130250038802c5902218110009bae30220023022001301d375400316406c603e60386ea80062c80d0c020c06cdd51805180d9baa301e301b3754003164064660026eb0c024c068dd500880b9802002111980180111980518029bab300b301c3754601660386ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c010006260186603c00297ae089980180198100012034301e0014070600c00c44464b3001300c001899192cc004c07c00a0091640706eb8c074004c064dd5001c566002601c00313259800980f000c4cc018dd6180e800912cc00400a00b19800803cc07c00a260026040004803901d45901b180c9baa0038acc004c044006264b3001301e0018998031bac301d0012259800801401633001007980f80144c004c080009007203a8b2036301937540071598009806800c4c8cc896600260400031330083758603e00244b3001002803c6600201330210028980098110012012407d1640746eb4c074004c078004c064dd5001c56600266e1d2008001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200a001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200c001899192cc004c07c00a0091640706eb8c074004c064dd5001c59017202e405c80b9017202e405c602e6ea80088b2010180480098021baa00a8a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_3/index.js b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_3/index.js new file mode 100644 index 0000000000..1f16496744 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_3/index.js @@ -0,0 +1,323 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.V0_3ProtocolProtocolWithdraw = exports.V0_3ProtocolProtocolElse = exports.V0_3OrderOrderSpend = exports.V0_3OrderOrderElse = exports.SignedRedeemer_ExtraProtocolRedeemer = exports.SignedPayload_ProtocolRedeemer = exports.SignatureList = exports.SigWithKey = exports.Settings = exports.Request = exports.Registry = exports.ProxyDatum = exports.ProtocolRedeemer = exports.OrderRedeemer = exports.OrderDatum = exports.OrderAction = exports.Nonce = exports.MultisigScript = exports.Headers = exports.HeaderMap = exports.ExtraProtocolRedeemer = exports.Destination = exports.COSESign1 = exports.Bool = exports.Asset = void 0; +var _uplc = require("@blaze-cardano/uplc"); +var _data = require("@blaze-cardano/data"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable */ // @ts-nocheck +var PolicyId = _data.Type.String(); +var Contracts = _data.Type.Module({ + Bool: _data.Type.Boolean(), + COSESign1: _data.Type.Object({ + headers: _data.Type.Ref("Headers"), + payload: _data.Type.Optional(_data.Type.String()), + signature: _data.Type.String() + }, { + ctor: 0n + }), + HeaderMap: _data.Type.String(), + Headers: _data.Type.Object({ + "protected": _data.Type.Ref("HeaderMap"), + unprotected: _data.Type.Ref("HeaderMap") + }, { + ctor: 0n + }), + MultisigScript: _data.Type.Union([_data.Type.Object({ + Signature: _data.Type.Object({ + key_hash: _data.Type.String() + }, { + ctor: 0n + }) + }), _data.Type.Object({ + AllOf: _data.Type.Object({ + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 1n + }) + }), _data.Type.Object({ + AnyOf: _data.Type.Object({ + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 2n + }) + }), _data.Type.Object({ + AtLeast: _data.Type.Object({ + required: _data.Type.BigInt(), + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 3n + }) + }), _data.Type.Object({ + Before: _data.Type.Object({ + time: _data.Type.BigInt() + }, { + ctor: 4n + }) + }), _data.Type.Object({ + After: _data.Type.Object({ + time: _data.Type.BigInt() + }, { + ctor: 5n + }) + }), _data.Type.Object({ + Script: _data.Type.Object({ + script_hash: _data.Type.String() + }, { + ctor: 6n + }) + })]), + Asset: _data.Type.Tuple([_data.Type.String(), _data.Type.String()]), + Destination: _data.Type.Object({ + address: _data.Type.Object({ + payment_credential: _data.Type.Union([_data.Type.Object({ + VerificationKey: _data.Type.Tuple([_data.Type.String()], { + ctor: 0n + }) + }), _data.Type.Object({ + Script: _data.Type.Tuple([_data.Type.String()], { + ctor: 1n + }) + })]), + stake_credential: _data.Type.Optional(_data.Type.Union([_data.Type.Object({ + Inline: _data.Type.Tuple([_data.Type.Union([_data.Type.Object({ + VerificationKey: _data.Type.Tuple([_data.Type.String()], { + ctor: 0n + }) + }), _data.Type.Object({ + Script: _data.Type.Tuple([_data.Type.String()], { + ctor: 1n + }) + })])], { + ctor: 0n + }) + }), _data.Type.Object({ + Pointer: _data.Type.Object({ + slot_number: _data.Type.BigInt(), + transaction_index: _data.Type.BigInt(), + certificate_index: _data.Type.BigInt() + }, { + ctor: 1n + }) + })])) + }, { + ctor: 0n + }), + datum: _data.Type.Union([_data.Type.Literal("NoDatum", { + ctor: 0n + }), _data.Type.Object({ + DatumHash: _data.Type.Tuple([_data.Type.String()], { + ctor: 1n + }) + }), _data.Type.Object({ + InlineDatum: _data.Type.Tuple([_data.TPlutusData], { + ctor: 2n + }) + })]) + }, { + ctor: 0n + }), + ExtraProtocolRedeemer: _data.Type.Object({ + request_to_outputs: _data.Type.Record(_data.Type.Number(), _data.Type.BigInt()) + }, { + ctor: 0n + }), + Nonce: _data.Type.Union([_data.Type.Object({ + UTxO: _data.Type.Tuple([_data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + })], { + ctor: 0n + }) + }), _data.Type.Object({ + Validity: _data.Type.Tuple([_data.Type.Object({ + lower_bound: _data.Type.Object({ + bound_type: _data.Type.Union([_data.Type.Literal("NegativeInfinity", { + ctor: 0n + }), _data.Type.Object({ + Finite: _data.Type.Tuple([_data.Type.BigInt()], { + ctor: 1n + }) + }), _data.Type.Literal("PositiveInfinity", { + ctor: 2n + })]), + is_inclusive: _data.Type.Ref("Bool") + }, { + ctor: 0n + }), + upper_bound: _data.Type.Object({ + bound_type: _data.Type.Union([_data.Type.Literal("NegativeInfinity", { + ctor: 0n + }), _data.Type.Object({ + Finite: _data.Type.Tuple([_data.Type.BigInt()], { + ctor: 1n + }) + }), _data.Type.Literal("PositiveInfinity", { + ctor: 2n + })]), + is_inclusive: _data.Type.Ref("Bool") + }, { + ctor: 0n + }) + }, { + ctor: 0n + })], { + ctor: 1n + }) + }), _data.Type.Object({ + Nullifier: _data.Type.Tuple([_data.Type.String()], { + ctor: 2n + }) + })]), + OrderAction: _data.Type.Union([_data.Type.Object({ + OMint: _data.Type.Object({ + amount: _data.Type.BigInt() + }, { + ctor: 0n + }) + }), _data.Type.Object({ + ORedeem: _data.Type.Object({ + amount: _data.Type.BigInt() + }, { + ctor: 1n + }) + })]), + OrderDatum: _data.Type.Object({ + owner: _data.Type.Ref("MultisigScript"), + destination: _data.Type.Ref("Destination"), + action: _data.Type.Ref("OrderAction"), + data: _data.TPlutusData + }, { + ctor: 0n + }), + OrderRedeemer: _data.Type.Union([_data.Type.Literal("Execute", { + ctor: 0n + }), _data.Type.Literal("Cancel", { + ctor: 1n + })]), + ProtocolRedeemer: _data.Type.Union([_data.Type.Object({ + Mint: _data.Type.Object({ + requests: _data.Type.Array(_data.Type.Ref("Request")) + }, { + ctor: 0n + }) + }), _data.Type.Object({ + Burn: _data.Type.Object({ + requests: _data.Type.Array(_data.Type.Ref("Request")) + }, { + ctor: 1n + }) + }), _data.Type.Object({ + Withdraw: _data.Type.Object({ + withdraw_amount: _data.Type.BigInt() + }, { + ctor: 2n + }) + }), _data.Type.Object({ + Deposit: _data.Type.Object({ + deposit_amount: _data.Type.BigInt() + }, { + ctor: 3n + }) + })]), + ProxyDatum: _data.Type.Object({ + logic: _data.Type.String(), + settings: _data.Type.Ref("Settings") + }, { + ctor: 0n + }), + Registry: _data.Type.Object({ + treasury: _data.Type.String(), + usdr: _data.Type.String(), + order: _data.Type.String() + }, { + ctor: 0n + }), + Request: _data.Type.Object({ + destination: _data.Type.Ref("Destination"), + amount: _data.Type.BigInt(), + origin: _data.Type.Optional(_data.Type.String()) + }, { + ctor: 0n + }), + Settings: _data.Type.Object({ + mint_permission: _data.Type.Ref("MultisigScript"), + burn_permission: _data.Type.Ref("MultisigScript"), + withdraw_permission: _data.Type.Ref("MultisigScript"), + deposit_permission: _data.Type.Ref("MultisigScript"), + registry: _data.Type.Ref("Registry"), + reserve_token: _data.Type.Ref("Asset") + }, { + ctor: 0n + }), + SigWithKey: _data.Type.Tuple([_data.Type.String(), _data.Type.Ref("COSESign1")]), + SignatureList: _data.Type.Array(_data.Type.Ref("SigWithKey")), + SignedPayload_ProtocolRedeemer: _data.Type.Object({ + action: _data.Type.Ref("ProtocolRedeemer"), + nonce: _data.Type.Ref("Nonce") + }, { + ctor: 0n + }), + SignedRedeemer_ExtraProtocolRedeemer: _data.Type.Object({ + extra: _data.Type.Ref("ExtraProtocolRedeemer"), + payload: _data.Type.String(), + signatures: _data.Type.Ref("SignatureList") + }, { + ctor: 0n + }) +}); +var Bool = exports.Bool = Contracts.Import("Bool"); +var COSESign1 = exports.COSESign1 = Contracts.Import("COSESign1"); +var HeaderMap = exports.HeaderMap = Contracts.Import("HeaderMap"); +var Headers = exports.Headers = Contracts.Import("Headers"); +var MultisigScript = exports.MultisigScript = Contracts.Import("MultisigScript"); +var Asset = exports.Asset = Contracts.Import("Asset"); +var Destination = exports.Destination = Contracts.Import("Destination"); +var ExtraProtocolRedeemer = exports.ExtraProtocolRedeemer = Contracts.Import("ExtraProtocolRedeemer"); +var Nonce = exports.Nonce = Contracts.Import("Nonce"); +var OrderAction = exports.OrderAction = Contracts.Import("OrderAction"); +var OrderDatum = exports.OrderDatum = Contracts.Import("OrderDatum"); +var OrderRedeemer = exports.OrderRedeemer = Contracts.Import("OrderRedeemer"); +var ProtocolRedeemer = exports.ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +var ProxyDatum = exports.ProxyDatum = Contracts.Import("ProxyDatum"); +var Registry = exports.Registry = Contracts.Import("Registry"); +var Request = exports.Request = Contracts.Import("Request"); +var Settings = exports.Settings = Contracts.Import("Settings"); +var SigWithKey = exports.SigWithKey = Contracts.Import("SigWithKey"); +var SignatureList = exports.SignatureList = Contracts.Import("SignatureList"); +var SignedPayload_ProtocolRedeemer = exports.SignedPayload_ProtocolRedeemer = Contracts.Import("SignedPayload_ProtocolRedeemer"); +var SignedRedeemer_ExtraProtocolRedeemer = exports.SignedRedeemer_ExtraProtocolRedeemer = Contracts.Import("SignedRedeemer_ExtraProtocolRedeemer"); +var V0_3OrderOrderSpend = exports.V0_3OrderOrderSpend = /*#__PURE__*/_createClass(function V0_3OrderOrderSpend(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_3OrderOrderSpend); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "590e80010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004896600200314bd7044cc068c05cc06c004cc008008c070005019488c8cc00400400c88cc00c004c00800a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80b24444646600200200a44b30010018802c4c9660020031330043020002006899802981000119801801800a03c302000140752232330010010032259800800c5300103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444453001300600698020024888ca6002003004801a00222232598009809800c4c9660020030068992cc00400600f007803c01e264b3001302a003802c0210271bae00140a8604e0028128c08cdd5001c566002603000313259800800c01a264b3001001803c01e264b3001302a003899807800912cc00400a00f13259800800c66002015001898011816801a014805c02e01700b40b86056004814a0108138dd6000c01e00e8150c09c00502518119baa0038acc004c038006264b300100180344c966002003007803c4c966002605400713300f0012259800801401e264b30010018cc00402a00313002302d003402900b805c02e0168170c0ac00902940210271bac001803c01d02a1813800a04a3023375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605a0071330120012259800801402a264b30010018cc004036003130023030003403500e807403a01c8188c0b800902c402d02a1bac001805402902d1815000a050375a002605200500740a8604e0028128c08cdd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0a800e00b008409c6eb400600e8150c09c00502518119baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815001c0160108138dd6800c01d02a1813800a04a3023375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815001c0160108138dd7000a0543027001409460466ea800e00a8101020204040808101020204030213754005330023758603e60386ea80408cdd79810180e9baa00100f48888c8c8cc88c966002602a60486ea801a264b3001301b3025375400315980099b8f375c6052604c6ea8004dd7180598131baa3029302a302a302a302a302637546026604c6ea8c96600200319800800c40060448022045022811408902c198011bac30133026375403404513233225330273372c92010d63726564656e7469616c3a3a200037326600e0049101001330170010023374a9001198149ba90014bd701bab3016302737540366eb8c0a4c098dd5198011bac301330263754034045153302449013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016408d153302449132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f637265640016408c6050604a6ea8c0a0c094dd5180918129baa30283025375400d15330234913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408844a6604866e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980b98131baa00189929981319b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a18141baa0018992cc004006330010018800c095007409604b025812a05e302c3029375400315330274913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601a60506ea8c054c0a0dd5000981518139baa0018a99812a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640906601800446602660166eacc050c09cdd5180a18139baa001002300100122259800980a98121baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302e0028acc004c068c0a4dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200301280944c9660026076007198008064660020151980080446600200d1598009813981b1baa0048992cc00400602913259800800c05602b01580ac4cc89660020030178992cc00400603101880c406226644b300100180d44c96600200301b80dc06e037132598009822001c56600201501c8992cc00400603b01d80ec07626644b300100180fc4c9660020030208104082041132598009824801c08a0428230dd7000a092304600141106eb8004c11402d0461821805208280e2082375c0028220c10400503f1bae00130400024104607c00281e0dd7000981e801207c303b00140e4606e6ea801202681a202680ca02680ca02680ca02680ca02681c0dd6000c04a02481d8c0e0005036181c00140420210108082072303600140d0606c00500e807403a01c81b8c0d0005032181a001403201900c806206a303200140c0606400500a805402a0148198c0c000502e181800140220110088042062302e00140b060546ea800600c813a00c815a00d006803401902f1816000a054375c00260560048160c0a400502718129baa003800a0442223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020545980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81210241bac3027002375a604a0026466ec0dd418128009ba73026001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6054003337149101023a200098008054c0ac00600a805100a181680144ca6002015302a00199b8a489023a200098008054c0ac006600e66008008004805100a18168012056302d00140a866e29220102207d00003409c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d204e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720523371666e000056600266e2000520148a40c11481b9029002200c33706002901019b8600148080cdc7002001204c375c0068150dc5245022c20002232330010010032259800980a000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408481088acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" : "5906f2010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc004896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a60103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a4444646466446644b30013010301c375400313259800980b180e9baa0018acc004cdc79bae3021301e37540026eb8c020c078dd518109811181118111811180f1baa300e301e3754646600c0022002660066eb0c038c078dd500a80dc4cc03cdd59808180f1baa0153374a9001198101810980f1baa330033758601c603c6ea805406d2f5c11640711640706040603a6ea8c080c074dd51806980e9baa3020301d375400316406c4464b30013011301d3754003132598009806980f1baa0018991980380088009811180f9baa0018b203a3008301e3754601c603c6ea8c084c078dd5000c5901c1980400111980698021bab300e301e3754601c603c6ea8004008cc018dd6180f180d9baa01223375e603e60386ea80040448966002601c60346ea800a2646644b300130220018992cc004c048c078dd5000c4c8c8c8c8c8ca60026eb0c0a0006605000b30280049814001cc0a00092222259800981700344cc048c0b402c4cc0480104cc04800c4cc048008566002603a60526ea800626464653001375c6060003375c6060007375c60600049112cc004c0d00122646644b3001303700380cc590341bae3034001375c606801860680171640c43030001302f001302a37540031640a11640ac30280013027001302600130250013024001301f3754003164074604200316407c6eb8c07c004c080004c06cdd500145901918030031800800911192cc004c03800626464b3001302100280245901e1bae301f001301b37540071598009809800c4c96600260400031330083758603e00244b3001002802c6600200f3021002898009811001200e407d16407460366ea800e2b300130090018992cc004c0800062660106eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c56600266e1d200600189919912cc004c0880062660146eb0c08400489660020050078cc00402660460051300130240024024810a2c80f8dd6980f8009810000980d9baa0038acc004cdc3a40100031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40140031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40180031323259800981080140122c80f0dd7180f800980d9baa0038b2032406480c90192032406480c8c064dd500122b300130063012375400f19800980b18099baa30163013375400f3758602c602e602e602e602e602e602e602e602e60266ea802a602c602e602e602e602e602e602e602e60266ea802a6eacc014c04cdd500524444646600200200a4464b3001300d0018998048031bae301d301a37540051598009809000c4c8cc004004dd6180f180d9baa0032259800800c528c5660026600a00a603e00313300200230200018a50406880ea2b30013008001899198008009bac301e301b375400644b30010018a508acc004cc014014c07c0062946266004004604000280d101d456600266e1d200600189919b89375a603c00264660020026eb0c07cc080008896600200314800226644b300133008008002899b800014800a200280e8c080004cc008008c08400501e180d1baa0028acc004cdc3a4010003132332259800980a980e1baa0028acc004c054c070dd518101810801c4cdc49bad3020301d37540040031337106eb4c080c074dd5001000a0368a50406c603c0026eb4c078c06cdd5001980d1baa300a301a375400b15980099b87480280062646644b30013015301c3754005159800980a980e1baa30203021003899b89001375a6040603a6ea800a266e20004dd69810180e9baa002406d14a080d8c078004dd6980f180d9baa003301a3754603a60346ea801626601600866e9520023301c301d301a375400497ae0406080c10182030406080c0c060dd5000a2c80890110c034dd50040c028dd5001c590080c024004c010dd5004c52689b2b200401", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var V0_3OrderOrderElse = exports.V0_3OrderOrderElse = /*#__PURE__*/_createClass(function V0_3OrderOrderElse(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_3OrderOrderElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "590e80010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004896600200314bd7044cc068c05cc06c004cc008008c070005019488c8cc00400400c88cc00c004c00800a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80b24444646600200200a44b30010018802c4c9660020031330043020002006899802981000119801801800a03c302000140752232330010010032259800800c5300103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444453001300600698020024888ca6002003004801a00222232598009809800c4c9660020030068992cc00400600f007803c01e264b3001302a003802c0210271bae00140a8604e0028128c08cdd5001c566002603000313259800800c01a264b3001001803c01e264b3001302a003899807800912cc00400a00f13259800800c66002015001898011816801a014805c02e01700b40b86056004814a0108138dd6000c01e00e8150c09c00502518119baa0038acc004c038006264b300100180344c966002003007803c4c966002605400713300f0012259800801401e264b30010018cc00402a00313002302d003402900b805c02e0168170c0ac00902940210271bac001803c01d02a1813800a04a3023375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605a0071330120012259800801402a264b30010018cc004036003130023030003403500e807403a01c8188c0b800902c402d02a1bac001805402902d1815000a050375a002605200500740a8604e0028128c08cdd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0a800e00b008409c6eb400600e8150c09c00502518119baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815001c0160108138dd6800c01d02a1813800a04a3023375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815001c0160108138dd7000a0543027001409460466ea800e00a8101020204040808101020204030213754005330023758603e60386ea80408cdd79810180e9baa00100f48888c8c8cc88c966002602a60486ea801a264b3001301b3025375400315980099b8f375c6052604c6ea8004dd7180598131baa3029302a302a302a302a302637546026604c6ea8c96600200319800800c40060448022045022811408902c198011bac30133026375403404513233225330273372c92010d63726564656e7469616c3a3a200037326600e0049101001330170010023374a9001198149ba90014bd701bab3016302737540366eb8c0a4c098dd5198011bac301330263754034045153302449013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016408d153302449132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f637265640016408c6050604a6ea8c0a0c094dd5180918129baa30283025375400d15330234913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408844a6604866e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980b98131baa00189929981319b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a18141baa0018992cc004006330010018800c095007409604b025812a05e302c3029375400315330274913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601a60506ea8c054c0a0dd5000981518139baa0018a99812a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640906601800446602660166eacc050c09cdd5180a18139baa001002300100122259800980a98121baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302e0028acc004c068c0a4dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200301280944c9660026076007198008064660020151980080446600200d1598009813981b1baa0048992cc00400602913259800800c05602b01580ac4cc89660020030178992cc00400603101880c406226644b300100180d44c96600200301b80dc06e037132598009822001c56600201501c8992cc00400603b01d80ec07626644b300100180fc4c9660020030208104082041132598009824801c08a0428230dd7000a092304600141106eb8004c11402d0461821805208280e2082375c0028220c10400503f1bae00130400024104607c00281e0dd7000981e801207c303b00140e4606e6ea801202681a202680ca02680ca02680ca02680ca02681c0dd6000c04a02481d8c0e0005036181c00140420210108082072303600140d0606c00500e807403a01c81b8c0d0005032181a001403201900c806206a303200140c0606400500a805402a0148198c0c000502e181800140220110088042062302e00140b060546ea800600c813a00c815a00d006803401902f1816000a054375c00260560048160c0a400502718129baa003800a0442223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020545980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81210241bac3027002375a604a0026466ec0dd418128009ba73026001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6054003337149101023a200098008054c0ac00600a805100a181680144ca6002015302a00199b8a489023a200098008054c0ac006600e66008008004805100a18168012056302d00140a866e29220102207d00003409c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d204e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720523371666e000056600266e2000520148a40c11481b9029002200c33706002901019b8600148080cdc7002001204c375c0068150dc5245022c20002232330010010032259800980a000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408481088acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" : "5906f2010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc004896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a60103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a4444646466446644b30013010301c375400313259800980b180e9baa0018acc004cdc79bae3021301e37540026eb8c020c078dd518109811181118111811180f1baa300e301e3754646600c0022002660066eb0c038c078dd500a80dc4cc03cdd59808180f1baa0153374a9001198101810980f1baa330033758601c603c6ea805406d2f5c11640711640706040603a6ea8c080c074dd51806980e9baa3020301d375400316406c4464b30013011301d3754003132598009806980f1baa0018991980380088009811180f9baa0018b203a3008301e3754601c603c6ea8c084c078dd5000c5901c1980400111980698021bab300e301e3754601c603c6ea8004008cc018dd6180f180d9baa01223375e603e60386ea80040448966002601c60346ea800a2646644b300130220018992cc004c048c078dd5000c4c8c8c8c8c8ca60026eb0c0a0006605000b30280049814001cc0a00092222259800981700344cc048c0b402c4cc0480104cc04800c4cc048008566002603a60526ea800626464653001375c6060003375c6060007375c60600049112cc004c0d00122646644b3001303700380cc590341bae3034001375c606801860680171640c43030001302f001302a37540031640a11640ac30280013027001302600130250013024001301f3754003164074604200316407c6eb8c07c004c080004c06cdd500145901918030031800800911192cc004c03800626464b3001302100280245901e1bae301f001301b37540071598009809800c4c96600260400031330083758603e00244b3001002802c6600200f3021002898009811001200e407d16407460366ea800e2b300130090018992cc004c0800062660106eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c56600266e1d200600189919912cc004c0880062660146eb0c08400489660020050078cc00402660460051300130240024024810a2c80f8dd6980f8009810000980d9baa0038acc004cdc3a40100031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40140031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40180031323259800981080140122c80f0dd7180f800980d9baa0038b2032406480c90192032406480c8c064dd500122b300130063012375400f19800980b18099baa30163013375400f3758602c602e602e602e602e602e602e602e602e60266ea802a602c602e602e602e602e602e602e602e60266ea802a6eacc014c04cdd500524444646600200200a4464b3001300d0018998048031bae301d301a37540051598009809000c4c8cc004004dd6180f180d9baa0032259800800c528c5660026600a00a603e00313300200230200018a50406880ea2b30013008001899198008009bac301e301b375400644b30010018a508acc004cc014014c07c0062946266004004604000280d101d456600266e1d200600189919b89375a603c00264660020026eb0c07cc080008896600200314800226644b300133008008002899b800014800a200280e8c080004cc008008c08400501e180d1baa0028acc004cdc3a4010003132332259800980a980e1baa0028acc004c054c070dd518101810801c4cdc49bad3020301d37540040031337106eb4c080c074dd5001000a0368a50406c603c0026eb4c078c06cdd5001980d1baa300a301a375400b15980099b87480280062646644b30013015301c3754005159800980a980e1baa30203021003899b89001375a6040603a6ea800a266e20004dd69810180e9baa002406d14a080d8c078004dd6980f180d9baa003301a3754603a60346ea801626601600866e9520023301c301d301a375400497ae0406080c10182030406080c0c060dd5000a2c80890110c034dd50040c028dd5001c590080c024004c010dd5004c52689b2b200401", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var V0_3ProtocolProtocolWithdraw = exports.V0_3ProtocolProtocolWithdraw = /*#__PURE__*/_createClass(function V0_3ProtocolProtocolWithdraw(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_3ProtocolProtocolWithdraw); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "5948aa010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013a657870656374206d61746368696e675f6f75747075745f6964783a20496e74203d206d61746368696e675f6f75747075745f6964785f6461746100168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a494c657870656374207369676e65645f7061796c6f61643a205369676e65645061796c6f61643c50726f746f636f6c52656465656d65723e203d207369676e65645f7061796c6f61645f6461746100168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888966002646530013014001980a180a800cdc3a400930140024888966002600460286ea800e264b30010058999119912cc004c010c064dd5004c4c96600200300d8992cc004006264b3001001807c4c96600200301080840420211332259800800c04a264b3001001809c04e264b300130260038acc004c030c084dd5003c4c9660020030158992cc00400602d132598009814801c4cc030004896600200513300e0062259800801466002444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c814a6e05200091111919800800802912cc004006200b13259800800c4cc010c0cc00801a26600a6066004660060060028188c0cc0050304dc0240032259800800c52f5c113302d302a302e00133002002302f00140b1374a900048c0b4c0b800644646600200200644b30010018a508acc004cdc79bae30300010038a518998010011818800a05440b92302d302e302e0014888888888cc8a600244646600200200644b30013022001899b8a4890130000038acc004cdc4000a40011337149101012d0033002002300e00189980319b8400148050cdc599b803370a002900a240c000681a903548c00800644646600200200644b30010018a6103d87a80008992cc004c010006260166607600297ae0899801801981e801206c303b00140e4911191991192cc00400633001370e90034dc3a4011370e9005244464b30013029303e375400b13259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c0fa07d132598009828001c6600201919800805466002011198008034566002606c60966ea8012264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4c96600260b20071598008054122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260bc0071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc724503020408003370000490189180119bca4a2003124bded8c101400001012000416c82d905b488888ca600200300380120022225980099b89002480022600297ae08919194c00401a607200b23005330680020019bad3065002401860c60033001009804400500720be9b87483f80e6e0120029119bb00023750002911111991191919192cc004c13cc190dd5000c4c9660020031323298009112cc004c154c1a8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800983b00146600200d19800800c02601082d2010805a010839a0110088044021077183a000a0e4375a00260e600500541d060e20028378c1c400a007003801c00d0721837800a0da306b375400700141a11325330673372c9211c5b70726f746f636f6c5d20566572696679696e67206e6f6e63653a2000373266062607460d26ea801122010019800918369837183718371837183718371837000c89660020031480022601c6600400460de002836244646600200200644b30010018a508acc004c00cc1c0006294626600400460e2002835106e4dd2a40049111191929983699b964901205b70726f746f636f6c5d207665726966795f6e6f6e636520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041b0910100159800800c6600260e460de6ea802a44646600200200644b30010018a40011332259800980280144c06000620028390c1d8004cc008008c1dc005074488c8cc00400400c896600200314a115980099baf003307230760018a51899801001183b800a0e041d12232330010010032259800800c528c566002600660ec00313300200230770018a5041c083a2460e660e860e860e860e860e860e860e860e8003230733074307430743074307430740019112cc004c170c1c4dd5001c4c9660020030028992cc004006007003801c4c96600260f200700580220ec375a00300341e460ec00283a0c1c8dd5001c00506f48c1ccc1d0c1d0c1d0c1d00064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e8899802802983d80220e8375c60e80026eacc1d4004c1dc0050750a5eb7bdb18244b30010018a40011301433002002307500141c923073307430743074307430740019112cc00400a298103d87a80008acc004c17000626088660e860ea00497ae08cc00400e60ec0053046001400c837907348966002003148002260286600400460ea002839244b30010018a5eb82264660e86ea0004cc00c00cc8cc004004c1dc00c896600200314bd7044cc896600330013370e00400b4a14a2839a2660f06ea0008cc0100100062660080080028398dd6983b800983c000a0ea375a60e80028392444646600200200844b300100189983b19bb037520086ea000d2f5bded8c113298009bae30740019bad3075001983c8012444b30013372001000713307a337606ea4020dd4003802c56600266e3c02000e2660f466ec0dd48041ba800700189983d19bb037520066ea0008cc01801800507520ea183b800a0ea911919800800801912cc004006297ae0899912cc004cdd7983c183a9baa307830753754608c60ea6ea8008c024cc1dcdd4802a5eb822660ee0046600800800313300400400141c860ec00260ee00283a244b30010018a40011301433002002307500141c93710900024444444444444444453001222232330010010052232598009839000c4cc160018dd71845809844009baa0028acc004c1c400626602c6eb0c22c04c22004dd5001119802002000c56600260ea00313301d37586116026110026ea80088cc0100100062b3001304d00189919b89375a611802002660326eb0c23004c234040048cc014014004c22004dd500145660026098003132332259800983a1845009baa0028acc004c1d0c22804dd5184700984780801c4cdc49bad308e01308b0137540040031337106eb4c23804c22c04dd5001000a110028a504220046118020026eb4c23004c22404dd50019844009baa3059308801375400b1598009825800c4c8cc896600260e86114026ea800a2b30013074308a013754611c02611e020071337120026eb4c23804c22c04dd500144cdc40009bad308e01308b01375400484400a2941088011846008009bad308c0130890137540066110026ea8c22c04c22004dd5002c4cc05c010c070cc22804c22c04c22004dd500125eb8108501210a0242140484280908501210a02308601375400330090099840009baa0129111191980080080291192cc004c1c8006264a6610e0266e59240121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660a26ea400522010013259800983a1844809baa001899194c004dd7184780800cdd7184780984800800cdd71847808012444a6611a029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308d013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660ae6ea4005220100153308d013372c9201187665726966795f65643235353139207061796c6f61643a20003732660ae6ea4009220100153308d013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660ae6ea400d22010013253308e013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660b13001001a60103d87a8000a60103d879800042340491010010019800800c00a006b950c23c04004dd61846809845009baa0018a998440099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660a46ea400922010014a0843808c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c611e020020091305e3308e01374e00297ae08998018019848008012112023758611c02002846008dd71845809844009baa0028acc004c1c4006264a6610e0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416c6c4f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301700123300500500137586116026110026ea800a2b300130750018992998438099b96490122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416e794f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301e00123300500500137586116026110026ea800a2b3001304d00189919912998448099b96490112436865636b696e672041744c656173743a20003732660a66ea000922010013253308a013372c92011941744c656173742073617469736669656420636f756e743a20003732660a86ea000522010013253308b013372c92011041744c6561737420726573756c743a20003732660ab3001001a60103d87a8000a60103d87980004228049101001001337120060026603600246600e00e0026eb4c23004004dd61846009846808009844009baa0028acc004c130006264a6610e0266e5924111436865636b696e67204265666f72653a20003732660a26ea0005220100132533088013372c92010f4265666f726520726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc49bad308e01308b0137540020071337106eb4c23804c22c04dd5000801a110028a50422004611a020026112026ea8c168c22404dd50031bad308b0130880137540051598009825800c4c94cc21c04cdcb24910436865636b696e672041667465723a20003732660a26ea0005220100132533088013372c92010e416674657220726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc48019bad308e01308b0137540031337100066eb4c23804c22c04dd5000a110028a50422004611a020026112026ea8c23004c22404dd50031bad308b013088013754005132533087013372c920111436865636b696e67205363726970743a20003732660a26ea4005220100132533088013372c92010f53637269707420726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c04910100100133018005301d3308b01375200297ae0375c6116026110026ea800908501210a0242140484280908501210a023086013754003300700798030034c0140164446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803210e02899802802984700802210e02375c610e020026eb4c22004004c2280400508801198070020018a400130020024888888888ca6002444b30013370e60180046010600e646600200200644b30010018a5eb8226612402611e026126020026600400461280200284880a2646600200200644b30010018a5eb8410100008101a0008101a00044c8c8c8cc896600260fe6128026ea800a264b3001300900189984c009ba8337006eb4c26404008dd69833984b009baa0013309801374c64b300130800130960137540031375660d000713756613402612e026ea800509401192cc004c20004c25804dd5000c530103d87a8000898349984c809ba698009bab30680039bae309a013097013754003005406897ae042500460ca612c026ea8004cc26004dd34c004dd598328014dd9984c80984d00802c01101925eb822a66128029211a6578706563742076616c69646174696f6e2872657175657374290016424c04613002612a026ea800a2a661260292012f65787065637420536f6d65287265717565737429203d206c6973742e61742874612c20726571756573745f696478290016424804660120100026600a00a612e020086eb4c25404004cc24c04c24004004cc24c04c244040052f5c061260200284880a2a66118029201886578706563740a202020206c6973742e6c656e67746828726571756573745f746f5f6f75747075747329203d3d206c6973742e6c656e677468280a2020202020206c6973742e756e69717565286c6973742e6d617028726571756573745f746f5f6f7574707574732c20666e286974656d29207b206974656d2e317374207d29292c0a20202020290016422c0522225980099b873022004302200389980e8021192cc004c1ecc24004dd5000c4c96600260f86122026ea800626644b3001308101309301375400313259800800c4c966002610002612a026ea800a264b300100184880c4c96600200313259800800c24c06264b30010018992cc00400612a0313259800800c4c966002003097018992cc004c2880400a330010078cc004016264b30013089010018992cc0040061340313259800800c26c061360309b018992cc004c2980400e01b09c01428c046eb400613602853008c28c040050a101184f809baa0048acc004c22004006264b300100184d00c4c96600200309b0184d80c26c06264b300130a601003806c270050a3011bad00184d80a14c0230a301001428404613e026ea80121320284e00909c01184e809baa00384c00a06e84c00a0c084c00a13e0230a0010014278046140020050960184b00c2580612c02850808c2780400509c01184f00801425006128030940184a00a13e02309c010014268046138020050920184900c248061240284e808c2680400509801184b009baa00284800a1260215980099baf30663095013754002613002612a026ea800e2b3001337126eb4c198c25404dd5001cc004dd59833184a809baa3066309501375400d375c61300200f375c60cc00e806a264b3001308001309501375400313370e6eb4c26404c25804dd50009bad3067309601375400913370e6eb4c26404c25804dd50009bad30673096013754008849808c190c25404dd5000c54cc24c05241666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400164248051533093014913865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001642480508f0184780c23c0611e0284d008c25c04c25004dd5000c54cc248052413365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d0016424404612a026124026ea8004c184c24804dd518319849009baa0038a9984800a4814765787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c206d61746368696e675f726571756573745f696478290016423c046600e00a6eb4c25004c24404dd5000c54cc23c0524016565787065637420536f6d65286d61746368696e675f726571756573745f69647829203d0a2020202020202020646963742e676574286d617070696e672c2063626f722e73657269616c69736528696e7075742e6f75747075745f7265666572656e6365292900164238046644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130693309901375000297ae0803212802899802802984d80802212802375c6128020026eb4c25404004c25c04005095011bb330930130900137540022980103d87a80008a9984680a4933657870656374206c6973742e6c656e67746828696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016423005222253308d0149012d5b76616c69646174655f6f7574707574735d205374617274696e67206f75747075742076616c69646174696f6e0015980099b87300600230220038994c004006900040110011112cc004006294626644a661240266e59241305b76616c69646174655f6f7574707574735d2056616c69646174696e67207265717565737420617420696e6465783a20003732660b86ea001122010013259800983f984a009baa0018992cc004c20004c25404dd5000c4c9660020030920184900c2480626464b300130830130980137540031325980099baf309d01309a013754002613a026134026ea8c27404c26804dd5004456600266ebcc1a4c26804dd50009835984d009baa309d01309a0137540111533098013372c92012d5b76616c69646174655f6f7574707574735d20436865636b696e67206f757470757420617420696e6465783a20003732660c46ea000d2201001533098013372c9201245b76616c69646174655f6f7574707574735d20457870656374656420616d6f756e743a20003732660c460d66134026ea80212201001533098013372c9201225b76616c69646174655f6f7574707574735d2041637475616c20616d6f756e743a20003732660c46ea260026eacc1acc26804dd5000cdd7184e808064dd71835806202448900159800803c4cdc3cc004dd59835984d009baa0019bae309d0100c9bae306b00c404864b300133710002900044c1c4006200284c008dd69835984d009baa0088a50425c0515330980149139657870656374206d61746368696e675f6f75747075742e646174756d203d3d20726571756573742e64657374696e6174696f6e2e646174756d0016425c051533098014913d657870656374206d61746368696e675f6f75747075742e61646472657373203d3d20726571756573742e64657374696e6174696f6e2e616464726573730016425c046138026132026ea80062a6612e0292014465787065637420536f6d65286d61746368696e675f6f757470757429203d206c6973742e6174286f7574707574732c206d61746368696e675f6f75747075745f6964782900164258046601c01a0026eb40061240284e008c26404c25804dd5000c54cc250052415b65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f6461746129203d0a202020202020202063626f722e646573657269616c697365286d61746368696e675f6f75747075745f6964785f6279746573290016424c0460646eb8c26004c25404dd5000c54cc24c0524013e65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f627974657329203d20646963742e66696e64286d617070696e672c2069290016424804646600200201044b30010018a60103d87a80008992cc004cdc38039bad309701001898349984c80984b00800a5eb8226600600661360200484a008c2640400509701184a80800cc00400e606a005309601001400c84980a2a6611a0292013265787065637420646963742e73697a65286d617070696e6729203d3d206c6973742e6c656e6774682872657175657374732900164230052223233225980099b87375a6128020020051325980099912cc004006294226530013259800984000984a809baa00189bad3096013099013756613202612c026ea8006290002126023098010019baf3098013099010019bab0024889660020031598009801002c4cdc4a400000714a084a80a264b30013375e61300200298010140008acc004cdc49bad309901309c01375661320200200913003374c613a0200514a084b00a2b300133712900000244c00c01a294109601212c02309b01001426404329800800c00e44661320200466132026e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c25c040066eacc260040066138020069112cc004cdc8a441000038acc004cdc7a4410000389980298369984e809ba60024bd70000c4cc015300103d87a800000642600519800803c006446600e0046613e0266ec0dd48029ba6004001401c84c00861340200484c00a294229422941099011bab3063002374c661280266ec0c25404004dd31984a0099bb0309501309601001375066e0400c0152f5bded8c097adef6c608801c54cc240052401c56578706563740a202020206173736574732e6d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a20202020290016423c046eb0c060c24404dd5003454cc23c052401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e740016423804b30013079300d0018a4001159800800c21806264b30013094010028acc004cdc79bae308f01001488104555344720089bad3090010018a9984700a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200164234050870142440461240200284800908c0119192cc004c1ecc24004dd5000c4c96600266ebcc25404c24804dd5184a809849009baa30633092013754002604c66128026ea400d2f5c1132598009840009849009baa0018992cc004006330010018992cc004c1fcc25004dd5000c4c96600266ebcc26404c25804dd5184c80984b009baa001302a3309801375200e97ae08992cc004c21004c25804dd5000c4c96600200319800800c4cc26804dd419b81375a6136026130026ea8004dd6984d80984c009baa0053309a01374c6530010019bab306a30990137540093233001001375660d66134026ea8c1acc26804dd5004912cc004006297adef6c608991984f0099bb0309b01001374c64660020026eacc27404008896600200314bd6f7b63044c8cc28404cdd8184f008009ba83075375a613e020026600600661460200461420200284f808cc00c00cc28004008c2780400509c012002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd3001a5eb7bdb1822653001375c614002003375661420200330a50100248896600266e4002000e26614c0266ec0dd48041ba60070058acc004cdc7804001c4c966002b30010018a518a5042980510028998538099bb037520126e980040090a201194c0040060110034004444b30010028800c4c8cc8a600200d30ae010059919800800802912cc00400626615c0266ec0dd48021ba80034bd6f7b63044ca60026eb8c2b0040066eb4c2b4040066162020049112cc004cdc8004001c4cc2c804cdd81ba9008375000e00b15980099b8f0080038992cc004c26c0400620051330b301337606ea4024dd4000801215c023370000e0051330b201337606ea400cdd400119803003000a15a0242b40430af0100142b4048030dd71853808009bad30a80100130aa0100242a0051330a601337606ea400cdd300119803003000a1420242840430a3010014284048030dd7184d808009bab309c01001309e0100242700497ae084880a04684880c244061220309101427404613402612e026ea80062a6612a0292012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642500460ca612c026ea80062a661280292013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016424c04613002612a026ea80062a661260292013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c20736372697074290016424804660bc6eb0c18cc25004dd500411983298301bab3066309501375400200d08c01407d08c0184600c230061180284c808c25804c24c04dd5000c54cc244052413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642400460c26124026ea8c18cc24804dd5000c54cc2400524014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016423c046128026122026ea8006297ae110100008101a000211c023305737586126026120026ea8010004dd71849009847809baa3019308f0137540086602e6eacc060c23804dd50011bae305f308e0137546030611c026ea800d222259800983c80644cc894cc23c052411f5b6d696e745d205374617274696e67206d696e742076616c69646174696f6e00159800cc004c25004c24404dd502bc0a660506122026ea81f66eacc074c24404dd503ea01a8a9984780a49205b6d696e745d207361746973666965645f7061796c6f61647320706173736564001323298009bab3096010019bab3096013097010019bad30960100248894cc25004cdcb24812f5b6d696e745d2070726f636573735f7265717565737473207061737365642c2073756d6d65645f616d6f756e743a20003732660bc6ea0005220100132533095013372c92011b5b6d696e745d206f726465725f696e7075747320636f756e743a20003732660be6ea0c0a8005220100159800cc0040060110049bac301e30970137540ba805a2a6612a0292011d5b6d696e745d2076616c69646174655f696e707574732070617373656400159800cc004dd61833184b809baa08301804400e661320260d0612e026ea8c084c25c04dd502e9984c80a601054455534472004bd7020148a9984a80a4811e5b6d696e745d2076616c69646174655f6f7574707574732070617373656400132533096013372c9201215b6d696e745d206d61696e7461696e5f747265617375727920726573756c743a20003732660c13001001a60103d87a8000a60103d879800042540491010010013370f300105d84180d200040240051533095014901816578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a202020202900164250051533095014917a6578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f726967696e5f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016425004660306eb0c26404c25804dd5041009bae306530960137546040612c026ea8170612c020033001002800c8c048dd698319849009baa0014019153308f014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164238046eb0c24804c23c04dd50101bab309201308f013754612402611e026ea81fa2b3001307800c8992cc006600260c26120026ea815a051302730900137540f9375660386120026ea81f100c44c8c9660033001330143758612a026124026ea81f8dd718309849009baa301c30920137540b10039bab3095010019984a0098319849009baa301c30920137540b066128029801054455534472004bd70200c8acc00660026eb0c184c24804dd503f400e6eacc25404c258040066eb0c064c24804dd502c200a899b87980082c41fa90002008375a612a020051533090014901796578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f75747075745f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016423c05153309001491826578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f726967696e5f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a20202020290016423c04612a0200330010019bab30930130900137546126026120026ea81fe466e20dd698311848809baa00148001005454cc23805241856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164234046eb0c24804c23c04dd5010456600260f801913259800cc004c17cc24004dd502b4dd6180e9848009baa07c98139848009baa07c9bab301c30900137540f8807a2b300130100018983d4c00415a0f90014009153308e014911a6578706563742077697468647261775f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501044c9660033001305f30900137540ad3758603a6120026ea81f2604e6120026ea81f26eacc070c24004dd503e201e8acc004c040006260f5300105683e4cdc1000a400280122a6611c02920119657870656374206465706f7369745f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501021180242300484600844b300133710002900045300103d87a8000899803801000a1120222a660da920113657870656374206e6f6e63655f726573756c74001641b0653001306e37540032323232332259800982f8014528456600260c40051980099baf30783075375400298103d87b8000a50a5141c913233225980098310014528c56600260c200513322598009831983c9baa304b307a375400d13371000400313371200400283b8dd6983d983c1baa003598009830983b9baa30493078375400f10018980d800a0ea8a5041d483a8c1d4dd50009bad30793076375400860f060ea6ea800507220e43072375400260ec60ee00660ea60e46ea8004c1d0004c1c0dd5000c888c8cc896600260be005159800982f983a1baa0018a6103d87a80008a6103d879800041c91598009831001456600260c460e86ea80062980103d87a80008a6103d87b800041c913322598009830800c530103d87b80008acc004c180006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041d483a8dd6983d183b9baa0038a6103d879800041d083a0dd6983c183a9baa00330743754002839107218391baa0013002003300100348896600260b80071325330713372c921215b7665726966795f6e6f6e63655d204c6f6f6b696e6720666f72206f7265663a200037326607600291010015330713372c9201215b7665726966795f6e6f6e63655d204e756d626572206f6620696e707574733a20003732660766ea0c018dd6183b18399baa05f48900133008375860ec60e66ea817c94cc1c8cdcb24811f5b7665726966795f6e6f6e63655d20436865636b696e6720696e7075743a200037326607860ee60e86ea80052201001325330733372c9201185b7665726966795f6e6f6e63655d204d6174636865733a200037326607b3001001a60103d87a8000a60103d879800041c891010010013375e60ee60e86ea8004008c1d4c1c8dd5002456600260b600713322598009802000c528c566002600800514a1159800cc004cdd7cc004c1dcc1d0dd50014c1dcc1d0dd5000c8c8c96600260c060ec6ea8c1e8c1ec00a2003132598009830800c4c030cc1e8dd4180d9bad307b3078375400497ae08acc004c1880062005100241d483a8c1d8dd5000a0e83079001307537540028019300103d87b8000a50a5141c51980099baf98009822983a1baa0029822983a1baa001919192cc004c180c1d8dd5183d183d80144006264b30013061001898061983d1ba8304c375a60f660f06ea80092f5c11598009831000c400a200483a9075183b1baa00141d060f200260ea6ea8005003260103d8798000a50a5141c514a0838907120e2307530723754008601260e46ea817a294106f20de181f98371baa009300300319198008009bac3038306937540b044b30010018a5eb822660d86e9cc8c8cc1b8c1bc008cc1b8c0ecc1b0dd5000998371ba9980091838183898389838800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004835906b1b8d001981f198372610b4a5369676e617475726531003306e306f306c375460de60d86ea8004cc1b93010140003306e303d306c37540b697ae048894cc1b4cdcb249165369675374727563747572652e636f6e746578743a200037326606e60e460de6ea8005220100153306d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e608060de6ea8005220100153306d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607c60de6ea8005220100153306d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e600660de6ea800522010013253306e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b88370dc68009bae3072306f375400266e28c008dd7182018379baa0013371460046eb8c0f8c1bcdd500098011bae3003306f37540024bd70183718378009bac306d00133002002306e00141ad22259800982a98351baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130700018acc004cdc4a400860de0030068992cc004c1d4012264b3001305c0018acc004c1c8dd50034026010839a2b3001305b0018992cc00400601313259800800c02a01500a8992cc004c1e400e01900b41d86eb400601483c8c1d800507418391baa0068acc004c17c0062b30013072375400d00980420e680420de41bc8378c1c0dd5002c01d072182c9837800a0da80320e23754003005802c01600a83a0c1c400506f1838801400e007003801a0e4306f00141b460d66ea800e002834122259800982a98351baa0068992cc0040060c113259800800c4c9660020030628992cc0040062b30013073002899912cc004c16c006264b300100183344c966002003067833c4c96600260f000713305b0012259800801401e264b30010018cc0040062600460f600706b403d06b835c1ae0d683e0c1e400907741a10751bac001833c19d078183a800a0e63071375400b159800982d000c4c9660020030668992cc0040060cf0678992cc004c1e000e2660b600244b3001002803c4c96600200319800800c4c008c1ec00e0d6807a0d706b835c1ad07c183c80120ee83420ea3758003067833a0f0307500141cc60e26ea80162b3001305e0018992cc0040060cd13259800800c19e0cf0678992cc004c1e000e00b06841d46eb40060ce83c0c1d400507318389baa0058acc004c0d8006264b300100183344c966002003067833c19e264b30013078003802c1a10751bad001833a0f0307500141cc60e26ea80160ca837106e20dc41b8264b3001305a0018992cc0040060cb13259800800c56600260ec005159800982e18389baa0018992cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c4c96600260f800700f83620f2375a00306b41f060f200283b8dd7000983c00120f2307600141d060e46ea80060cc837a0cc839a0cd0668334199077183a000a0e430703754005159800982c800c4c9660020030658992cc0040062b300130760028acc004c170c1c4dd5000c4c9660020030678992cc004006264b3001001834c4c966002003159800983d00146600200719800800c0360d480620d480620d483ba0d506a83541a907b183c000a0ec307800283441a20d106841e460ec00283a0c1c8dd5000c19906f4199073419a0cd06683320ee307400141c860e06ea800a2b3001305d0018992cc0040060cb13259800800c19a0cd06683344c96600260ee00700a833a0e8375c00283b8c1d000507218381baa00283220da41b48368c1b8dd500098371baa003831a0e0831c18e0c706341d060e20028378c1c400a0c3061830c1850721837800a0da306b375400d05f41a022259800982a18349baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130720028992cc004c164c1b8dd500244c9660020030078992cc004006264b3001001804c4c966002003159800983b80146600200713259800982f000c4c96600200300c8992cc0040062b3001307a0028992cc004c184006264b3001001807c4c966002003159800983e80146600200300b808202680820f4808404202101041f860f600283c8c1dcdd5001456600260c000313259800800c03e264b300100180840420211332259800800c04a264b3001001809c04e0271332259800800c056264b300100180b405a02d13259800984200801c04a02e840808dd6800c05908401184080800a0fe375a00261000200501342040460fc00283e0dd6800983e801404107e183d800a0f23077375400500e41d083a0c1d4dd5000c035077403601b00d806a0f6307800141d860e86ea800a2b3001305d0018acc004c1d0dd5001401a01683aa016838907118391baa001805201a80520e8805402a01500a41e060ea0028398c1d400a01100880440210761839800a0e2306f375400900641b0264b300130590018acc004c1bcdd5001401e00c83822b300130580018992cc00400600f13259800800c02201100880444c96600260ec00700a804a0e6375c00283b0c1cc00507118379baa0028acc004c170006264b3001001803c4c96600260ea00500980420e4307300141c460de6ea800a00c836106c20d8306d375400300541bd005802c01600a8398c1c000506e1838001400e007003801a0e2306e00141b060d46ea800e0028338888c96600260a800313259800800c00e264b300100180240120090048992cc004c1c400e00d00541b86eb80050711837000a0d8306a37540091598009829800c4c9660020030038992cc0040060090048024012264b30013071003803401506e1bae00141c460dc0028360c1a8dd5002400906720ce3068375400705a82d416a0b48358c1a0c194dd5000c54cc18d24014565787065637420536f6d65287369676e65645f7061796c6f61645f6461746129203d2063626f722e646573657269616c6973652872656465656d65722e7061796c6f6164290016418860026eb8c0d4c190dd50299192cc004c13c006298103d87a80008992cc006600260a06eb4c1980069429450634530103d87a80008981c198341832800a5eb810634c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d06548896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b810010034195001400c8310dc680098008009119800911191919bb032374e660d660d0002660d660d200297ae03376060ce00460ce00260d0003300100691000c012007375a60ce0028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130510018cc004012007002918051ba800140351598009828000c6600200900399b80002480fe460146ea0c0f0c0f800500d456600266e1c00920be0189919800800918059ba9001223300648008966002601c00313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014419d19800802400e66e00009207f918051ba9001401c832106420c88acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300d3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180719ba5003001404080810672cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014198833100d4566002605600315980099b87002482f80a33001004801ccc01801888006460146e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300b374e002806900d20c88acc004c0a80062b30013370e004907f0144c8c8cc0040048c030dd30009119803a40044b3001300f0018980125eb7bdb18224646530010069180319838801000cdd69837001200c323376060e200260e260e40026eb0c1b000660020130089807800a00a41a06600c00c4400519800802400e66e0000920bf02919194c0040060072300d374c00280088896600266e24009200089800a5eb7bdb18224646530010069821802c8c014cc1c80080066eb4c1bc0090061919bb0307200130723073001375860da003300100a804c00500520d23300700722002403483222497bdb181014000010120004190832106420c8337060029020111119198008008011119803240044b3001300a0018980125eb8224646530010069180319836001000cdd69834801200c30670019800804401e6014002803106311114c00401200700291980200091801800a012413505b1bae001417860b600282c8dd7000982d005a0b6305800a415904841586eb8005059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500240fd04940fd00e40fd00e40fd00e40fd00e40fd04d1bac00181f40f90501826800a096304d00281e40f207903c413860960028248c12c00a07503a81d40e904c1824800a08e304900281c40e20710384128608e0028228c11c00a06d03681b40d90481822800a086304500281a40d2069034411860860028208c0fcdd5002c0c903c111194c004006009003400444464b3001302f0018992cc00400600d13259800800c01e00f007803c4c96600260980070058042092375c0028260c12400504718229baa0038acc004c0b8006264b300100180344c966002003007803c4c966002609800713302f0012259800801401e264b30010018cc00402a00313002304f003402900b805c02e0168280c13400904b40210491bac001803c01d04c1824800a08e304537540071598009819000c4c9660020030068992cc00400600f0078992cc004c13000e26605e00244b3001002803c4c96600200319800805400626004609e006805201700b805c02d0501826801209680420923758003007803a0983049001411c608a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009827801c4cc0c8004896600200500a8992cc0040063300100d800c4c008c14800d00d403a01d00e80720a63050002413900b41306eb000601500a413c60980028250dd68009825801401d04c1824800a08e304537540071598009804800c4c9660020030068992cc00400600f007803c4c96600260980070058042092375a003007413060920028238c114dd5001c566002601000313259800800c01a264b3001001803c01e00f132598009826001c0160108248dd6800c01d04c1824800a08e3045375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009826001c0160108248dd7000a0983049001411c608a6ea800e00a821104220844108821104220843043375400481740ba05d02e4100601660746ea8c94cc0e4cdcb24812467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea40dd220100132598009813181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a200037326600a002910100132598009815981e9baa0018992cc0040062b30013029303e375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098240014401a0728228c1180050441bae0013045002411860860028208c0fcdd5000c0d103c40d206903481a20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec6018607a6ea8c038c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46600400206e6eb0c02cc0e8dd50131800800911980200111980598031bab300c303b3754601860766ea8004008888c9660020071323233223300b0023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420805980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d103a1bac303d002375a60760026466ec0dd4181d8009ba7303c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6080003337149101023a200098008054c10400600a805100a182180144ca6002015304000199b8a489023a200098008054c104006600e66008008004805100a182180120823043001410066e29220102207d0000340f46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039011207a3758007133007375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40fc66e2ccdc0000acc004cdc4000a402914818229037207e004401866e0c00520203370c002901019b8e00400240f06eb800d0401b8a4881022c200018048049802802a264b300100180e4072264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0cc00a2b30013019302e375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc00400604f027813c09e264b3001303a0038acc004c080c0d4dd500344c9660020030298992cc00400605502a81540aa26644b300100181644c96600200302d816c0b605b132598009820001c660020151301430400158172048817207a375c0028200c0f400503b1bae001303c00240f4607400281c0c0d8dd500340a103340a10371bae00140e8606e00281a8c0dc00a04b025812c095038181a800a0663035002811c08e04702340d860660028188c0bcdd5000c08502c40850304086043021810a068303100140bc6eb8004c0c00090311817000a058375800301c80e205e302c00240a91323259800800c06e03701b899912cc00400603b01d80ec4c8c018c0c001cdd6800c0750301bad001302900280da05c3027001302a00240a101740986eac00602d01680b20523026001409060446ea801e02880fa0288118dd6000c04e0268130c08c0050211bae0013022002408c604000280f0c08000a01d00e8074039021180f000a038301a375401300c405c44464b300130060018992cc00400600713259800800c01200900480244c9660026046007006802a040375c0028118c08000501e180e1baa0048acc004c0140062b3001301c3754009003801203a8012032406460346ea800c88c8cc00400400c88cc00c004c008008dc3a40006e1d20028044022011008406c6030602a6ea800e2c80906028002601e6ea8056293454cc0352411856616c696461746f722072657475726e65642066616c7365001365640301" : "592497010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a40052232330010010032233003001300200248888c9660026008601c6ea802626464646644b300130180038992cc004c028c050dd5000c4c96600260340031330093756603200244b3001002899805803112cc00400a330012259800800c52f5c113301e301b301f0013300200230200014075374a900048c078c07c00644646600200200644b30010018a508acc004cdc79bae30210010038a518998010011811000a038407d2301e301f301f0019b874801a6e1d20089b8748029222222223322332232332259800980f18141baa00289919191919194c004dd61819000cc0c8016606400930320039819001244444b30013038006899806181b8058998060020998060018998060010acc004c0a4c0ccdd5000c4c8c8ca60026eb8c0e80066eb8c0e800e6eb8c0e800922259800981f00244c8cc896600260820071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc7244103020408003370000490189180119bca4a2003124bded8c10140000101200040fc81f903f4dc024003370e907f01cdc02400522337600046ea00066e052000488888a600244444653001001801c0090011112cc004cdc480124001130014bd70448c8ca600200d30100059180299828801000cdd69827001200c304c0019800804c022002803904948888c8cc00400400888cc01920022598009805800c4c0092f5c1123232980080348c018cc1400080066eb4c1340090061825800cc00402200f300b0014018824244453001004801c00a4660080024600600280512223232323259800981f98249baa00189919914c00489660026088609c6ea800a26464646644b30013058003899804982b802899823001003459055182a8009bad305500230550013054001304f37540051641351980099198008009bac3030304e375409044b30010018a5eb822660a26e9cc8c8cc14cc150008cc14cc0ccc144dd5000998299ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002414c8298dc68009bae30563053375400266e28c008dd7181b98299baa0013371460046eb8c0d4c14cdd500098011bae305630573057305730533754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241448288dc6800981b19829a610b4a5369676e617475726531003305330543051375460a860a26ea8004cc14d3010140003305330353051375409697ae04bd701829982a0009bac30520013300200230530014141230513052305230523052305230523052001911919800800801912cc00400629422b3001300330540018a51899801001182a800a09e4149374a900124444b300132980098289baa001919191919912cc004c13400a29422b300130500028cc004cdd7982d982c1baa0014c103d87b8000a50a51415913233225980098280014528c566002609e00513322598009828982e1baa3041305d375400d13371000400313371200400282d8dd6982f182d9baa003598009827982d1baa303f305b375400f10018980d800a0b28a50416482c8c160dd50009bad305c3059375400860b660b06ea800505620ac3055375400260b260b400660b060aa6ea8004c15c004c14cdd5000c888c8cc8966002609a0051598009826982b9baa0018a6103d87a80008a6103d879800041591598009828001456600260a060ae6ea80062980103d87a80008a6103d87b8000415913322598009827800c530103d87b80008acc004c138006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000416482c8dd6982e982d1baa0038a6103d8798000416082c0dd6982d982c1baa0033057375400282b1056182a9baa00130020033001003488966002609400713233007375860b260ac6ea81348cdd7982d182b9baa0010023058305537540091598009824801c4cc8966002600800314a315980098020014528456600330013375f3001305a30573754005305a3057375400323232598009827182c9baa305d305e0028800c4c966002609e0031300b3305d375060366eb4c178c16cdd500125eb822b3001305000188014400905920b23059375400282c0c170004c160dd5000a0064c0103d87b8000a50a5141551980099baf9800981d982b9baa002981d982b9baa001919192cc004c138c164dd5182e982f00144006264b3001304f001898059982e9ba8301d375a60bc60b66ea80092f5c11598009828000c400a200482c9059182c9baa001416060b800260b06ea8005003260103d8798000a50a51415514a082a905520aa305830553754008600e60aa6ea8132294105320a6181a98289baa0058cc004c150c144dd5002c88c8cc00400400c896600200314800226644b300130050028980b800c4005055182c00099801001182c800a0ac911919800800801912cc00400629422b30013375e00660a860b000314a31330020023059001414c82b244646600200200644b30010018a518acc004c00cc16000626600400460b200314a0829905648c154c158c158c158c158c158c158c158c158006460aa60ac60ac60ac60ac60ac60ac0032259800982418291baa002899192cc004c16400a0071641586eb4c15c004c14cdd500145905148c154c158c158c158c1580064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320ae899802802982e80220ae375c60ac0026eacc15c004c1640050570a5eb7bdb18244b30010018a400113013330020023057001415123055305630563056305630560019112cc00400a2980103d87a80008acc004c12400626072660ac60ae00497ae08cc00400e60b00053016001400c829105548966002003148002260266600400460ae00282a244b30010018a5eb82264660ac6ea0004cc00c00cc8cc004004c16400c896600200314bd7044cc896600330013370e00400b4a14a282b22660b46ea0008cc01001000626600800800282b0dd6982c800982d000a0ae375a60ac00282a2444646600200200844b300100189982c19bb037520086ea000d2f5bded8c113298009bae30560019bad3057001982d8012444b30013372001000713305c337606ea4020dd4003802c56600266e3c02000e2660b866ec0dd48041ba800700189982e19bb037520066ea0008cc01801800505820b0182c800a0ae911919800800801912cc004006297ae0899912cc004cdd7982d182b9baa305a30573754607660ae6ea8008c01ccc164dd4802a5eb822660b200466008008003133004004001415460b000260b200282b244b30010018a40011301333002002305700141512259800800c520008980999801001182b800a0a89b8848001222222222222222222298009111191980080080291192cc004c18000626609c00c6eb8c1b8c1acdd5001456600260be003133017375860dc60d66ea80088cc0100100062b3001306300189980e1bac306e306b37540044660080080031598009826000c4c8cdc49bad306f0013301a375860de60e000246600a00a00260d66ea800a2b3001304b00189919912cc004c188c1b4dd5001456600260c460da6ea8c1c4c1c800e266e24dd6983898371baa002001899b88375a60e260dc6ea800800506c452820d8306f001375a60de60d86ea800cc1acdd5182798359baa0058acc004c1280062646644b30013062306d3754005159800983118369baa30713072003899b89001375a60e260dc6ea800a266e20004dd6983898371baa00241b114a08360c1bc004dd6983798361baa003306b375460dc60d66ea80162660300086036660da60dc60d66ea80092f5c0834906920d241a4834906918349baa00198050054c18cdd5009c8888c8cc00400401488c96600260c00031323259800983118361baa001899194c004dd718390014dd718391839800cdd71839000ae5460e40026eb0c1c0c1b4dd5000c52820d632330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60e40020091305433071374e00297ae0899801801983980120da375860e20028378dd7183718359baa0028acc004c17c00626602e6eb0c1b8c1acdd5001119802002000c56600260c600313301c375860dc60d66ea80088cc0100100062b3001304c00189919b89375a60de002660346eb0c1bcc1c00048cc014014004c1acdd500145660026096003132332259800983118369baa0028acc004c188c1b4dd518389839001c4cdc49bad3071306e37540040031337106eb4c1c4c1b8dd5001000a0d88a5041b060de0026eb4c1bcc1b0dd500198359baa304f306b375400b1598009825000c4c8cc896600260c460da6ea800a2b30013062306d375460e260e40071337120026eb4c1c4c1b8dd500144cdc40009bad3071306e37540048362294106c18378009bad306f306c375400660d66ea8c1b8c1acdd5002c4cc060010c06ccc1b4c1b8c1acdd500125eb8106920d241a4834906920d23069375400330080089803803cc01801a6006007222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906b44cc014014c1c401106b1bae306a001375a60d600260da0028358cc03c01000c520009801001244444444446530012225980099b87300d0023009300832330010010032259800800c52f5c11330763073307700133002002307800141d5132330010010032259800800c52f5c30100008101a0008101a00044c8c8c8cc896600260dc60f06ea800a264b3001300900189983e1ba8337006eb4c1f4008dd6982f183d1baa0013307c374c64b3001306f307a37540031375660be0071375660fc60f66ea8005079192cc004c1bcc1e8dd5000c530103d87a8000898301983e9ba698009bab305f0039bae307e307b3754003005407097ae041e460b860f46ea8004cc1f0dd34c004dd5982e0014dd9983e983f002c01101b25eb822c83c0c1f0c1e4dd50014590771980480400099802802983d8021bad30790013307730740013307730750014bd70183b800a0ea8b20e091112cc004cdc398040021804001c4cc07c0108c96600260d460e86ea8006264b3001306b3075375400313322598009838183b9baa001899192cc004c1bcc1e4dd500144c8c8c8ca60026102020033081010039840808012444b300130850100489982c98420080389981b0010992cc004c1dc00626464b3001308801002805c59085011bad3086010013082013754005159800983b000c4c8c96600261100200500b8b210a02375a610c020026104026ea800a2c840009080011840009baa0018b210402184080800984000800983f800983d1baa0028b20f015980099baf305d3079375400260f860f26ea800e2b3001337126eb4c174c1e4dd5001cc004dd5982e983c9baa305d3079375400d375c60f800f375c60ba00e806a264b3001306f3079375400313370e6eb4c1f4c1e8dd50009bad305e307a375400913370e6eb4c1f4c1e8dd50009bad305e307a375400883c0c16cc1e4dd5000c59077459077183d983c1baa0018b20ec30793076375400260b060ec6ea8c168c1d8dd5001c59074198038029bad3078307537540031641cc6644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130603307d375000297ae080320f2899802802983f80220f2375c60f00026eb4c1e4004c1ec0050791bb3307730743754002298103d87a80008b20e291112cc004cdc398030011804001c4ca60020034800200880088896600200314a313322598009836983b9baa0018992cc004c1b8c1e0dd5000c4c96600260de60f26ea8006264b30013375e60fc60f66ea8004c1f8c1ecdd5183f183d9baa0058acc004cdd7982e983d9baa001305f307b375460fc60f66ea80162b300198008044c0ec01e60fe00c8042266e1e60026eacc17cc1ecdd5000cdd7183f004cdd7182f804a01e325980099b880014800226074003100141e86eb4c17cc1ecdd5002c52820f28b20f28b20f2307d307a37540031641e0660160146eb4c1f0c1e4dd5000c5907718181bae307b307837540031641d860f2002646600200200c44b30010018a60103d87a80008992cc004cdc38029bad30790018982f1983d983c000a5eb8226600600660fa00483b8c1ec00507920ee8b20e29111919912cc004cdc39bad30780010028992cc004cc896600200314a11329800992cc004c1bcc1e4dd5000c4dd6983d183e9bab307d307a3754003148001078183e000cdd7983e183e800cdd58012444b30010018acc004c008016266e2520000038a5041e91325980099baf307c0014c010140008acc004cdc49bad307d308001375660fa00200913003374c61020200514a083da2b300133712900000244c00c01a294107b20f6307f00141f4329800800c00e44660fa004660fa6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1ec0066eacc1f00066100020069112cc004cdc8a441000038acc004cdc7a44100003899802983219840809ba60024bd70000c4cc015300103d87a800000641f519800803c006446600e004661060266ec0dd48029ba6004001401c83e860fc00483e229422942294107d1bab305a002374c660f066ec0c1e4004dd31983c19bb03079307a001375066e0400c0152f5bded8c097adef6c608801c590741bac301a3075375400d1641ccb30013068300e0018a4001159800983b800c4c96600266e3cdd71839800a44104555344720089bad30740018b20e430760018b20e841c46464b3001306a307437540031325980099baf30793076375460f260ec6ea8c168c1d8dd500098131983c1ba90034bd7044c96600260de60ec6ea800626466042002264b3001306e307837540031325980099baf307d307a375460fa60f46ea8004c0a8cc1f0dd4803a5eb82264b30013073307a37540031323302500113307e375066e04dd6983f983e1baa001375a60fe60f86ea8014cc1f8dd3194c0040066eacc184c1f4dd50024c8cc004004dd59831183f1baa3062307e375401244b30010018a5eb7bdb182264661040266ec0c1fc004dd319198008009bab3081010022259800800c52f5bded8c11323308501337606104020026ea0c104dd698418080099801801984380801184280800a1060233003003308401002308201001420004800888966002005100189919914c00401a610c0200b32330010010052259800800c4cc21804cdd81ba9004374c00697adef6c608994c004dd7184200800cdd5984280800cc224040092225980099b900080038998450099bb037520106e9801c0162b30013371e01000713259800acc0040062946294108a014400a2661160266ec0dd48049ba6001002421c04653001001804400d0011112cc00400a2003132332298008034c24804016646600200200a44b30010018998490099bb037520086ea000d2f5bded8c113298009bae3090010019bad309101001984a808012444b30013372001000713309601337606ea4020dd4003802c56600266e3c02000e264b3001308a01001880144cc25c04cdd81ba90093750002004849808cdc000380144cc25804cdd81ba900337500046600c00c002849009092010c24c0400509101200c375c6116020026eb4c23004004c2380400908c0144cc22804cdd81ba9003374c0046600c00c002843009086010c21c0400508501200c375c60fe0026eacc20004004c208040090800125eb80c1f8c1ecdd5000c59079182e183d1baa0018b20f0307c307937540031641dc660a66eb0c168c1e0dd500411982e182a9bab305d3079375400200c60f460ee6ea80062c83a8c160c1d8dd5182d183b1baa0018b20e830783075375400314bd7090100008101a00020e63304e375860ee60e86ea8010004dd7183b18399baa301b30733754008660326eacc068c1c8dd50011bae305630723754603460e46ea800d2222598009834006c4c966003300130773074375409b0279813183a1baa06b9bab301e307437540d6806a26464b300198009980b1bac3079307637540da6eb8c160c1d8dd5180f183b1baa04f801cdd5983c800cdd6180d983b1baa04f4019159800cc004dd6182c183b1baa06d801cdd5983c983d000ccc1e0c168c1d8dd5180f183b1baa04f330784c1054455534472004bd70200a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba460246eb4c164c1d4dd5000a00a8b20e4375860ec60e66ea808a2b3001306700d8992cc006600260b060e86ea813604f3026307437540d73756603c60e86ea81ad00d44c8c966003300133016375860f260ec6ea81b4dd7182c183b1baa301e3076375409f0039bab30790019983c182d183b1baa301e3076375409e660f0981054455534472004bd70200c8acc00660026eb0c160c1d8dd5036c00e6eacc1e4c1e80066eb0c06cc1d8dd5027a00a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba466e20dd6982c983a9baa001480010054590721bac3076307337540451598009835806c4c966003300130563074375409b3758603e60e86ea81ae604c60e86ea81ae6eacc078c1d0dd5035a0208acc004c044006260d3300104d835c0050024590724590721bad30763073375404513259800cc004c158c1d0dd5026cdd6180f983a1baa06b9813183a1baa06b9bab301e307437540d680822b3001301100189834cc0041360d7337040029000a0048b20e48b20e4375a60ec60e66ea808907120e241c4225980099b8800148002298103d87a8000899804001000a0dc22c82792259800982218271baa00289919192cc004c15800a26464b300130490018acc004c150dd5001401a2c82aa2b30013048001899192cc004c16800a01116415c6eb4c160004c150dd500145660026098003159800982a1baa00280345905545905220a4414860a46ea8004c15400e2c8298c96600260a400315980099b8948010c1440062d130463051001414116414c6ea8c150004c150004c13cdd500145904d2444b30013045304f3754009132323259800982b80144c8cc8966002609600513259800982d800c4cc128dd6182d000912cc00400a00913300c305c00213001305d002416916416060ac6ea800e2b3001304a0028992cc004c16c0062660946eb0c1680048966002005004899806182e00109800982e80120b48b20b030563754007159800982700144c8c96600260b80050038b20b2375a60b400260ac6ea800e2b30013037002899192cc004c17000a0071641646eb4c168004c158dd5001c5905420a8415082a0c14cdd50008992cc004c128006264b3001305a0018992cc004c130c158dd5000c4c8c8cc896600260be00700d8b20b8375a60b80026eb8c170008c170004c15cdd5000c59055182c800c59057182a9baa0038acc004c124006264b3001305a0018992cc004c130c158dd5000c4c8c8c96600260bc00513300b305d00313300b00100c8b20b6305c001305c0013057375400316415460b200316415c60aa6ea800e2b3001304d001899192cc004c16c00a0131641606eb8c164004c154dd5001c5905320a6414c60a66ea8008c15800e2c82a0c154004c154004c140dd500245904e08966002608460986ea800a2646464b30013054002899912cc004c11cc144dd500144c8c8c96600260b200513300b3058003132598009825800c4c96600260b600313232598009827000c4c96600260bc003133010305d0010098b20b6305937540051598009826800c4c8c8ca60026eb4c17c0066eb4c17c00e6eb4c17c009222598009831802403a2c830060be00260bc00260b26ea800a2c82b9057182b9baa001305a0018b20b0305637540051598009825000c56600260ac6ea800a00b16415d16415082a0c150dd5000c59056182b800982b80098291baa0028b20a03053003132598009823000c56600260a26ea800a00b1641491598009822800c4c8c96600260ae0050078b20a8375c60aa00260a26ea800a2b30013049001899192cc004c15c00a00f16415060aa00260a26ea800a2c827904f209e304f375400316414460a400260a4002609a6ea800a2c8258c138c12cdd500111192cc004c10800626464b300130530028024590501bae3051001304d37540071598009820800c4c8c96600260a60050048b20a0375c60a2002609a6ea800e2c825904b18259baa0028b20903001375c605a60926ea810c8c966002607e00314c103d87a80008992cc006600260806eb4c12c0069429450494530103d87a800089818198269825000a5eb810494c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d04b48896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b81001003412d001400c8240dc680098008009119800911191919bb032374e660a0609a002660a0609c00297ae03376060980046098002609a003300100691000c012007375a60980028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130410018cc004012007002918061ba8001403d1598009820000c6600200900399b80002480fe460186ea0c03cc02c00500f456600266e1c00920be0189919800800918069ba9001223300648008966002602000313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014413519800802400e66e00009207f918061ba9001401c825104a20948acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300f3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180819ba50030014034809104d2cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014130826100f4566002605800315980099b87002482f80a33001004801ccc01801888006460186e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300d374e002805100f20948acc004c0ac0062b30013370e004907f0144c8c8cc0040048c038dd30009119803a40044b300130110018980125eb7bdb1822464653001006918031982b001000cdd69829801200c323376060ac00260ac60ae0026eb0c14400660020130089808800a00a41386600c00c4400519800802400e66e0000920bf02919194c0040060072300f374c00280088896600266e24009200089800a5eb7bdb1822464653001006980b002c8c014cc15c0080066eb4c1500090061919bb0305700130573058001375860a4003300100a804c005005209e3300700722002403c82522497bdb181014000010120004128825104a209433706002902011640f86eb8c0f8004dd7181f006181f005c5903b0c0e8004c0e4004c0d0dd5000c590324590350c0c8004c0c4004c0c0004c0bc004c0b8004c0a4dd5001459027180598139baa3259800980e98139baa0018992cc004c084c0a0dd5000c4c966002603e60526ea8006264646644b300130320038802c5902f18178009bae302f002302f001302a37540031640a0605860526ea80062c8138c028c0a0dd5180618141baa302b30283754003164098660026eb0c02cc09cdd500f0121802002111980180111980618029bab300d30293754601a60526ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c0100062601c6605600297ae08998018019816801204e302b00140a4601001044464b3001301b001899192cc004c0b000a0091640a46eb8c0a8004c098dd5001c5660026034003132598009815800c4cc068dd61815000912cc00400a00b19800803cc0b000a26002605a004803902a45902818131baa0038acc004c078006264b3001302b00189980d1bac302a0012259800801401633001007981600144c004c0b400900720548b2050302637540071598009803800c4c8cc8966002605a00313301c3758605800244b3001002803c66002013302e002898009817801201240b11640a86eb4c0a8004c0ac004c098dd5001c566002600c0031323259800981600140122c8148dd6981500098131baa0038acc004c01400626464b3001302c0028024590291bad302a0013026375400715980099b874803000626464b3001302c0028024590291bae302a00130263754007164090812102420484090812102418121baa00244c8cc89660026042003132598009809980e9baa0018991919192cc004c09800a264b3001301830223754003132323322598009815801c4cc064c0a80204c038c0ac03e2c8140dd718140009bae3028002302800130233754003164084604a00916408c6eb8c090004c090004c08c004c078dd5000c5901c1810000c5901e1bae301e001301f0013758603a00480da26466446008603e00a6eb4c060004dd6980c800980d80120328b202e3015375400316404c602e00b1640546eb0c054004dd7180a801180a800980a00098079baa0098b201a2232598009803000c4c8c966002602e0050048b2028375c602a00260226ea800e2b300130050018acc004c044dd5001c00a2c80922c807900f18079baa0024590080c024004c010dd5005452689b2b200401", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var V0_3ProtocolProtocolElse = exports.V0_3ProtocolProtocolElse = /*#__PURE__*/_createClass(function V0_3ProtocolProtocolElse(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_3ProtocolProtocolElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "5948aa010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013a657870656374206d61746368696e675f6f75747075745f6964783a20496e74203d206d61746368696e675f6f75747075745f6964785f6461746100168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a494c657870656374207369676e65645f7061796c6f61643a205369676e65645061796c6f61643c50726f746f636f6c52656465656d65723e203d207369676e65645f7061796c6f61645f6461746100168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888966002646530013014001980a180a800cdc3a400930140024888966002600460286ea800e264b30010058999119912cc004c010c064dd5004c4c96600200300d8992cc004006264b3001001807c4c96600200301080840420211332259800800c04a264b3001001809c04e264b300130260038acc004c030c084dd5003c4c9660020030158992cc00400602d132598009814801c4cc030004896600200513300e0062259800801466002444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c814a6e05200091111919800800802912cc004006200b13259800800c4cc010c0cc00801a26600a6066004660060060028188c0cc0050304dc0240032259800800c52f5c113302d302a302e00133002002302f00140b1374a900048c0b4c0b800644646600200200644b30010018a508acc004cdc79bae30300010038a518998010011818800a05440b92302d302e302e0014888888888cc8a600244646600200200644b30013022001899b8a4890130000038acc004cdc4000a40011337149101012d0033002002300e00189980319b8400148050cdc599b803370a002900a240c000681a903548c00800644646600200200644b30010018a6103d87a80008992cc004c010006260166607600297ae0899801801981e801206c303b00140e4911191991192cc00400633001370e90034dc3a4011370e9005244464b30013029303e375400b13259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c0fa07d132598009828001c6600201919800805466002011198008034566002606c60966ea8012264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4c96600260b20071598008054122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260bc0071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc724503020408003370000490189180119bca4a2003124bded8c101400001012000416c82d905b488888ca600200300380120022225980099b89002480022600297ae08919194c00401a607200b23005330680020019bad3065002401860c60033001009804400500720be9b87483f80e6e0120029119bb00023750002911111991191919192cc004c13cc190dd5000c4c9660020031323298009112cc004c154c1a8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800983b00146600200d19800800c02601082d2010805a010839a0110088044021077183a000a0e4375a00260e600500541d060e20028378c1c400a007003801c00d0721837800a0da306b375400700141a11325330673372c9211c5b70726f746f636f6c5d20566572696679696e67206e6f6e63653a2000373266062607460d26ea801122010019800918369837183718371837183718371837000c89660020031480022601c6600400460de002836244646600200200644b30010018a508acc004c00cc1c0006294626600400460e2002835106e4dd2a40049111191929983699b964901205b70726f746f636f6c5d207665726966795f6e6f6e636520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041b0910100159800800c6600260e460de6ea802a44646600200200644b30010018a40011332259800980280144c06000620028390c1d8004cc008008c1dc005074488c8cc00400400c896600200314a115980099baf003307230760018a51899801001183b800a0e041d12232330010010032259800800c528c566002600660ec00313300200230770018a5041c083a2460e660e860e860e860e860e860e860e860e8003230733074307430743074307430740019112cc004c170c1c4dd5001c4c9660020030028992cc004006007003801c4c96600260f200700580220ec375a00300341e460ec00283a0c1c8dd5001c00506f48c1ccc1d0c1d0c1d0c1d00064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e8899802802983d80220e8375c60e80026eacc1d4004c1dc0050750a5eb7bdb18244b30010018a40011301433002002307500141c923073307430743074307430740019112cc00400a298103d87a80008acc004c17000626088660e860ea00497ae08cc00400e60ec0053046001400c837907348966002003148002260286600400460ea002839244b30010018a5eb82264660e86ea0004cc00c00cc8cc004004c1dc00c896600200314bd7044cc896600330013370e00400b4a14a2839a2660f06ea0008cc0100100062660080080028398dd6983b800983c000a0ea375a60e80028392444646600200200844b300100189983b19bb037520086ea000d2f5bded8c113298009bae30740019bad3075001983c8012444b30013372001000713307a337606ea4020dd4003802c56600266e3c02000e2660f466ec0dd48041ba800700189983d19bb037520066ea0008cc01801800507520ea183b800a0ea911919800800801912cc004006297ae0899912cc004cdd7983c183a9baa307830753754608c60ea6ea8008c024cc1dcdd4802a5eb822660ee0046600800800313300400400141c860ec00260ee00283a244b30010018a40011301433002002307500141c93710900024444444444444444453001222232330010010052232598009839000c4cc160018dd71845809844009baa0028acc004c1c400626602c6eb0c22c04c22004dd5001119802002000c56600260ea00313301d37586116026110026ea80088cc0100100062b3001304d00189919b89375a611802002660326eb0c23004c234040048cc014014004c22004dd500145660026098003132332259800983a1845009baa0028acc004c1d0c22804dd5184700984780801c4cdc49bad308e01308b0137540040031337106eb4c23804c22c04dd5001000a110028a504220046118020026eb4c23004c22404dd50019844009baa3059308801375400b1598009825800c4c8cc896600260e86114026ea800a2b30013074308a013754611c02611e020071337120026eb4c23804c22c04dd500144cdc40009bad308e01308b01375400484400a2941088011846008009bad308c0130890137540066110026ea8c22c04c22004dd5002c4cc05c010c070cc22804c22c04c22004dd500125eb8108501210a0242140484280908501210a02308601375400330090099840009baa0129111191980080080291192cc004c1c8006264a6610e0266e59240121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660a26ea400522010013259800983a1844809baa001899194c004dd7184780800cdd7184780984800800cdd71847808012444a6611a029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308d013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660ae6ea4005220100153308d013372c9201187665726966795f65643235353139207061796c6f61643a20003732660ae6ea4009220100153308d013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660ae6ea400d22010013253308e013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660b13001001a60103d87a8000a60103d879800042340491010010019800800c00a006b950c23c04004dd61846809845009baa0018a998440099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660a46ea400922010014a0843808c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c611e020020091305e3308e01374e00297ae08998018019848008012112023758611c02002846008dd71845809844009baa0028acc004c1c4006264a6610e0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416c6c4f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301700123300500500137586116026110026ea800a2b300130750018992998438099b96490122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416e794f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301e00123300500500137586116026110026ea800a2b3001304d00189919912998448099b96490112436865636b696e672041744c656173743a20003732660a66ea000922010013253308a013372c92011941744c656173742073617469736669656420636f756e743a20003732660a86ea000522010013253308b013372c92011041744c6561737420726573756c743a20003732660ab3001001a60103d87a8000a60103d87980004228049101001001337120060026603600246600e00e0026eb4c23004004dd61846009846808009844009baa0028acc004c130006264a6610e0266e5924111436865636b696e67204265666f72653a20003732660a26ea0005220100132533088013372c92010f4265666f726520726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc49bad308e01308b0137540020071337106eb4c23804c22c04dd5000801a110028a50422004611a020026112026ea8c168c22404dd50031bad308b0130880137540051598009825800c4c94cc21c04cdcb24910436865636b696e672041667465723a20003732660a26ea0005220100132533088013372c92010e416674657220726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc48019bad308e01308b0137540031337100066eb4c23804c22c04dd5000a110028a50422004611a020026112026ea8c23004c22404dd50031bad308b013088013754005132533087013372c920111436865636b696e67205363726970743a20003732660a26ea4005220100132533088013372c92010f53637269707420726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c04910100100133018005301d3308b01375200297ae0375c6116026110026ea800908501210a0242140484280908501210a023086013754003300700798030034c0140164446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803210e02899802802984700802210e02375c610e020026eb4c22004004c2280400508801198070020018a400130020024888888888ca6002444b30013370e60180046010600e646600200200644b30010018a5eb8226612402611e026126020026600400461280200284880a2646600200200644b30010018a5eb8410100008101a0008101a00044c8c8c8cc896600260fe6128026ea800a264b3001300900189984c009ba8337006eb4c26404008dd69833984b009baa0013309801374c64b300130800130960137540031375660d000713756613402612e026ea800509401192cc004c20004c25804dd5000c530103d87a8000898349984c809ba698009bab30680039bae309a013097013754003005406897ae042500460ca612c026ea8004cc26004dd34c004dd598328014dd9984c80984d00802c01101925eb822a66128029211a6578706563742076616c69646174696f6e2872657175657374290016424c04613002612a026ea800a2a661260292012f65787065637420536f6d65287265717565737429203d206c6973742e61742874612c20726571756573745f696478290016424804660120100026600a00a612e020086eb4c25404004cc24c04c24004004cc24c04c244040052f5c061260200284880a2a66118029201886578706563740a202020206c6973742e6c656e67746828726571756573745f746f5f6f75747075747329203d3d206c6973742e6c656e677468280a2020202020206c6973742e756e69717565286c6973742e6d617028726571756573745f746f5f6f7574707574732c20666e286974656d29207b206974656d2e317374207d29292c0a20202020290016422c0522225980099b873022004302200389980e8021192cc004c1ecc24004dd5000c4c96600260f86122026ea800626644b3001308101309301375400313259800800c4c966002610002612a026ea800a264b300100184880c4c96600200313259800800c24c06264b30010018992cc00400612a0313259800800c4c966002003097018992cc004c2880400a330010078cc004016264b30013089010018992cc0040061340313259800800c26c061360309b018992cc004c2980400e01b09c01428c046eb400613602853008c28c040050a101184f809baa0048acc004c22004006264b300100184d00c4c96600200309b0184d80c26c06264b300130a601003806c270050a3011bad00184d80a14c0230a301001428404613e026ea80121320284e00909c01184e809baa00384c00a06e84c00a0c084c00a13e0230a0010014278046140020050960184b00c2580612c02850808c2780400509c01184f00801425006128030940184a00a13e02309c010014268046138020050920184900c248061240284e808c2680400509801184b009baa00284800a1260215980099baf30663095013754002613002612a026ea800e2b3001337126eb4c198c25404dd5001cc004dd59833184a809baa3066309501375400d375c61300200f375c60cc00e806a264b3001308001309501375400313370e6eb4c26404c25804dd50009bad3067309601375400913370e6eb4c26404c25804dd50009bad30673096013754008849808c190c25404dd5000c54cc24c05241666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400164248051533093014913865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001642480508f0184780c23c0611e0284d008c25c04c25004dd5000c54cc248052413365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d0016424404612a026124026ea8004c184c24804dd518319849009baa0038a9984800a4814765787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c206d61746368696e675f726571756573745f696478290016423c046600e00a6eb4c25004c24404dd5000c54cc23c0524016565787065637420536f6d65286d61746368696e675f726571756573745f69647829203d0a2020202020202020646963742e676574286d617070696e672c2063626f722e73657269616c69736528696e7075742e6f75747075745f7265666572656e6365292900164238046644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130693309901375000297ae0803212802899802802984d80802212802375c6128020026eb4c25404004c25c04005095011bb330930130900137540022980103d87a80008a9984680a4933657870656374206c6973742e6c656e67746828696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016423005222253308d0149012d5b76616c69646174655f6f7574707574735d205374617274696e67206f75747075742076616c69646174696f6e0015980099b87300600230220038994c004006900040110011112cc004006294626644a661240266e59241305b76616c69646174655f6f7574707574735d2056616c69646174696e67207265717565737420617420696e6465783a20003732660b86ea001122010013259800983f984a009baa0018992cc004c20004c25404dd5000c4c9660020030920184900c2480626464b300130830130980137540031325980099baf309d01309a013754002613a026134026ea8c27404c26804dd5004456600266ebcc1a4c26804dd50009835984d009baa309d01309a0137540111533098013372c92012d5b76616c69646174655f6f7574707574735d20436865636b696e67206f757470757420617420696e6465783a20003732660c46ea000d2201001533098013372c9201245b76616c69646174655f6f7574707574735d20457870656374656420616d6f756e743a20003732660c460d66134026ea80212201001533098013372c9201225b76616c69646174655f6f7574707574735d2041637475616c20616d6f756e743a20003732660c46ea260026eacc1acc26804dd5000cdd7184e808064dd71835806202448900159800803c4cdc3cc004dd59835984d009baa0019bae309d0100c9bae306b00c404864b300133710002900044c1c4006200284c008dd69835984d009baa0088a50425c0515330980149139657870656374206d61746368696e675f6f75747075742e646174756d203d3d20726571756573742e64657374696e6174696f6e2e646174756d0016425c051533098014913d657870656374206d61746368696e675f6f75747075742e61646472657373203d3d20726571756573742e64657374696e6174696f6e2e616464726573730016425c046138026132026ea80062a6612e0292014465787065637420536f6d65286d61746368696e675f6f757470757429203d206c6973742e6174286f7574707574732c206d61746368696e675f6f75747075745f6964782900164258046601c01a0026eb40061240284e008c26404c25804dd5000c54cc250052415b65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f6461746129203d0a202020202020202063626f722e646573657269616c697365286d61746368696e675f6f75747075745f6964785f6279746573290016424c0460646eb8c26004c25404dd5000c54cc24c0524013e65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f627974657329203d20646963742e66696e64286d617070696e672c2069290016424804646600200201044b30010018a60103d87a80008992cc004cdc38039bad309701001898349984c80984b00800a5eb8226600600661360200484a008c2640400509701184a80800cc00400e606a005309601001400c84980a2a6611a0292013265787065637420646963742e73697a65286d617070696e6729203d3d206c6973742e6c656e6774682872657175657374732900164230052223233225980099b87375a6128020020051325980099912cc004006294226530013259800984000984a809baa00189bad3096013099013756613202612c026ea8006290002126023098010019baf3098013099010019bab0024889660020031598009801002c4cdc4a400000714a084a80a264b30013375e61300200298010140008acc004cdc49bad309901309c01375661320200200913003374c613a0200514a084b00a2b300133712900000244c00c01a294109601212c02309b01001426404329800800c00e44661320200466132026e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c25c040066eacc260040066138020069112cc004cdc8a441000038acc004cdc7a4410000389980298369984e809ba60024bd70000c4cc015300103d87a800000642600519800803c006446600e0046613e0266ec0dd48029ba6004001401c84c00861340200484c00a294229422941099011bab3063002374c661280266ec0c25404004dd31984a0099bb0309501309601001375066e0400c0152f5bded8c097adef6c608801c54cc240052401c56578706563740a202020206173736574732e6d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a20202020290016423c046eb0c060c24404dd5003454cc23c052401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e740016423804b30013079300d0018a4001159800800c21806264b30013094010028acc004cdc79bae308f01001488104555344720089bad3090010018a9984700a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200164234050870142440461240200284800908c0119192cc004c1ecc24004dd5000c4c96600266ebcc25404c24804dd5184a809849009baa30633092013754002604c66128026ea400d2f5c1132598009840009849009baa0018992cc004006330010018992cc004c1fcc25004dd5000c4c96600266ebcc26404c25804dd5184c80984b009baa001302a3309801375200e97ae08992cc004c21004c25804dd5000c4c96600200319800800c4cc26804dd419b81375a6136026130026ea8004dd6984d80984c009baa0053309a01374c6530010019bab306a30990137540093233001001375660d66134026ea8c1acc26804dd5004912cc004006297adef6c608991984f0099bb0309b01001374c64660020026eacc27404008896600200314bd6f7b63044c8cc28404cdd8184f008009ba83075375a613e020026600600661460200461420200284f808cc00c00cc28004008c2780400509c012002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd3001a5eb7bdb1822653001375c614002003375661420200330a50100248896600266e4002000e26614c0266ec0dd48041ba60070058acc004cdc7804001c4c966002b30010018a518a5042980510028998538099bb037520126e980040090a201194c0040060110034004444b30010028800c4c8cc8a600200d30ae010059919800800802912cc00400626615c0266ec0dd48021ba80034bd6f7b63044ca60026eb8c2b0040066eb4c2b4040066162020049112cc004cdc8004001c4cc2c804cdd81ba9008375000e00b15980099b8f0080038992cc004c26c0400620051330b301337606ea4024dd4000801215c023370000e0051330b201337606ea400cdd400119803003000a15a0242b40430af0100142b4048030dd71853808009bad30a80100130aa0100242a0051330a601337606ea400cdd300119803003000a1420242840430a3010014284048030dd7184d808009bab309c01001309e0100242700497ae084880a04684880c244061220309101427404613402612e026ea80062a6612a0292012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642500460ca612c026ea80062a661280292013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016424c04613002612a026ea80062a661260292013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c20736372697074290016424804660bc6eb0c18cc25004dd500411983298301bab3066309501375400200d08c01407d08c0184600c230061180284c808c25804c24c04dd5000c54cc244052413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642400460c26124026ea8c18cc24804dd5000c54cc2400524014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016423c046128026122026ea8006297ae110100008101a000211c023305737586126026120026ea8010004dd71849009847809baa3019308f0137540086602e6eacc060c23804dd50011bae305f308e0137546030611c026ea800d222259800983c80644cc894cc23c052411f5b6d696e745d205374617274696e67206d696e742076616c69646174696f6e00159800cc004c25004c24404dd502bc0a660506122026ea81f66eacc074c24404dd503ea01a8a9984780a49205b6d696e745d207361746973666965645f7061796c6f61647320706173736564001323298009bab3096010019bab3096013097010019bad30960100248894cc25004cdcb24812f5b6d696e745d2070726f636573735f7265717565737473207061737365642c2073756d6d65645f616d6f756e743a20003732660bc6ea0005220100132533095013372c92011b5b6d696e745d206f726465725f696e7075747320636f756e743a20003732660be6ea0c0a8005220100159800cc0040060110049bac301e30970137540ba805a2a6612a0292011d5b6d696e745d2076616c69646174655f696e707574732070617373656400159800cc004dd61833184b809baa08301804400e661320260d0612e026ea8c084c25c04dd502e9984c80a601054455534472004bd7020148a9984a80a4811e5b6d696e745d2076616c69646174655f6f7574707574732070617373656400132533096013372c9201215b6d696e745d206d61696e7461696e5f747265617375727920726573756c743a20003732660c13001001a60103d87a8000a60103d879800042540491010010013370f300105d84180d200040240051533095014901816578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a202020202900164250051533095014917a6578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f726967696e5f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016425004660306eb0c26404c25804dd5041009bae306530960137546040612c026ea8170612c020033001002800c8c048dd698319849009baa0014019153308f014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164238046eb0c24804c23c04dd50101bab309201308f013754612402611e026ea81fa2b3001307800c8992cc006600260c26120026ea815a051302730900137540f9375660386120026ea81f100c44c8c9660033001330143758612a026124026ea81f8dd718309849009baa301c30920137540b10039bab3095010019984a0098319849009baa301c30920137540b066128029801054455534472004bd70200c8acc00660026eb0c184c24804dd503f400e6eacc25404c258040066eb0c064c24804dd502c200a899b87980082c41fa90002008375a612a020051533090014901796578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f75747075745f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016423c05153309001491826578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f726967696e5f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a20202020290016423c04612a0200330010019bab30930130900137546126026120026ea81fe466e20dd698311848809baa00148001005454cc23805241856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164234046eb0c24804c23c04dd5010456600260f801913259800cc004c17cc24004dd502b4dd6180e9848009baa07c98139848009baa07c9bab301c30900137540f8807a2b300130100018983d4c00415a0f90014009153308e014911a6578706563742077697468647261775f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501044c9660033001305f30900137540ad3758603a6120026ea81f2604e6120026ea81f26eacc070c24004dd503e201e8acc004c040006260f5300105683e4cdc1000a400280122a6611c02920119657870656374206465706f7369745f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501021180242300484600844b300133710002900045300103d87a8000899803801000a1120222a660da920113657870656374206e6f6e63655f726573756c74001641b0653001306e37540032323232332259800982f8014528456600260c40051980099baf30783075375400298103d87b8000a50a5141c913233225980098310014528c56600260c200513322598009831983c9baa304b307a375400d13371000400313371200400283b8dd6983d983c1baa003598009830983b9baa30493078375400f10018980d800a0ea8a5041d483a8c1d4dd50009bad30793076375400860f060ea6ea800507220e43072375400260ec60ee00660ea60e46ea8004c1d0004c1c0dd5000c888c8cc896600260be005159800982f983a1baa0018a6103d87a80008a6103d879800041c91598009831001456600260c460e86ea80062980103d87a80008a6103d87b800041c913322598009830800c530103d87b80008acc004c180006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041d483a8dd6983d183b9baa0038a6103d879800041d083a0dd6983c183a9baa00330743754002839107218391baa0013002003300100348896600260b80071325330713372c921215b7665726966795f6e6f6e63655d204c6f6f6b696e6720666f72206f7265663a200037326607600291010015330713372c9201215b7665726966795f6e6f6e63655d204e756d626572206f6620696e707574733a20003732660766ea0c018dd6183b18399baa05f48900133008375860ec60e66ea817c94cc1c8cdcb24811f5b7665726966795f6e6f6e63655d20436865636b696e6720696e7075743a200037326607860ee60e86ea80052201001325330733372c9201185b7665726966795f6e6f6e63655d204d6174636865733a200037326607b3001001a60103d87a8000a60103d879800041c891010010013375e60ee60e86ea8004008c1d4c1c8dd5002456600260b600713322598009802000c528c566002600800514a1159800cc004cdd7cc004c1dcc1d0dd50014c1dcc1d0dd5000c8c8c96600260c060ec6ea8c1e8c1ec00a2003132598009830800c4c030cc1e8dd4180d9bad307b3078375400497ae08acc004c1880062005100241d483a8c1d8dd5000a0e83079001307537540028019300103d87b8000a50a5141c51980099baf98009822983a1baa0029822983a1baa001919192cc004c180c1d8dd5183d183d80144006264b30013061001898061983d1ba8304c375a60f660f06ea80092f5c11598009831000c400a200483a9075183b1baa00141d060f200260ea6ea8005003260103d8798000a50a5141c514a0838907120e2307530723754008601260e46ea817a294106f20de181f98371baa009300300319198008009bac3038306937540b044b30010018a5eb822660d86e9cc8c8cc1b8c1bc008cc1b8c0ecc1b0dd5000998371ba9980091838183898389838800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004835906b1b8d001981f198372610b4a5369676e617475726531003306e306f306c375460de60d86ea8004cc1b93010140003306e303d306c37540b697ae048894cc1b4cdcb249165369675374727563747572652e636f6e746578743a200037326606e60e460de6ea8005220100153306d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e608060de6ea8005220100153306d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607c60de6ea8005220100153306d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e600660de6ea800522010013253306e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b88370dc68009bae3072306f375400266e28c008dd7182018379baa0013371460046eb8c0f8c1bcdd500098011bae3003306f37540024bd70183718378009bac306d00133002002306e00141ad22259800982a98351baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130700018acc004cdc4a400860de0030068992cc004c1d4012264b3001305c0018acc004c1c8dd50034026010839a2b3001305b0018992cc00400601313259800800c02a01500a8992cc004c1e400e01900b41d86eb400601483c8c1d800507418391baa0068acc004c17c0062b30013072375400d00980420e680420de41bc8378c1c0dd5002c01d072182c9837800a0da80320e23754003005802c01600a83a0c1c400506f1838801400e007003801a0e4306f00141b460d66ea800e002834122259800982a98351baa0068992cc0040060c113259800800c4c9660020030628992cc0040062b30013073002899912cc004c16c006264b300100183344c966002003067833c4c96600260f000713305b0012259800801401e264b30010018cc0040062600460f600706b403d06b835c1ae0d683e0c1e400907741a10751bac001833c19d078183a800a0e63071375400b159800982d000c4c9660020030668992cc0040060cf0678992cc004c1e000e2660b600244b3001002803c4c96600200319800800c4c008c1ec00e0d6807a0d706b835c1ad07c183c80120ee83420ea3758003067833a0f0307500141cc60e26ea80162b3001305e0018992cc0040060cd13259800800c19e0cf0678992cc004c1e000e00b06841d46eb40060ce83c0c1d400507318389baa0058acc004c0d8006264b300100183344c966002003067833c19e264b30013078003802c1a10751bad001833a0f0307500141cc60e26ea80160ca837106e20dc41b8264b3001305a0018992cc0040060cb13259800800c56600260ec005159800982e18389baa0018992cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c4c96600260f800700f83620f2375a00306b41f060f200283b8dd7000983c00120f2307600141d060e46ea80060cc837a0cc839a0cd0668334199077183a000a0e430703754005159800982c800c4c9660020030658992cc0040062b300130760028acc004c170c1c4dd5000c4c9660020030678992cc004006264b3001001834c4c966002003159800983d00146600200719800800c0360d480620d480620d483ba0d506a83541a907b183c000a0ec307800283441a20d106841e460ec00283a0c1c8dd5000c19906f4199073419a0cd06683320ee307400141c860e06ea800a2b3001305d0018992cc0040060cb13259800800c19a0cd06683344c96600260ee00700a833a0e8375c00283b8c1d000507218381baa00283220da41b48368c1b8dd500098371baa003831a0e0831c18e0c706341d060e20028378c1c400a0c3061830c1850721837800a0da306b375400d05f41a022259800982a18349baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130720028992cc004c164c1b8dd500244c9660020030078992cc004006264b3001001804c4c966002003159800983b80146600200713259800982f000c4c96600200300c8992cc0040062b3001307a0028992cc004c184006264b3001001807c4c966002003159800983e80146600200300b808202680820f4808404202101041f860f600283c8c1dcdd5001456600260c000313259800800c03e264b300100180840420211332259800800c04a264b3001001809c04e0271332259800800c056264b300100180b405a02d13259800984200801c04a02e840808dd6800c05908401184080800a0fe375a00261000200501342040460fc00283e0dd6800983e801404107e183d800a0f23077375400500e41d083a0c1d4dd5000c035077403601b00d806a0f6307800141d860e86ea800a2b3001305d0018acc004c1d0dd5001401a01683aa016838907118391baa001805201a80520e8805402a01500a41e060ea0028398c1d400a01100880440210761839800a0e2306f375400900641b0264b300130590018acc004c1bcdd5001401e00c83822b300130580018992cc00400600f13259800800c02201100880444c96600260ec00700a804a0e6375c00283b0c1cc00507118379baa0028acc004c170006264b3001001803c4c96600260ea00500980420e4307300141c460de6ea800a00c836106c20d8306d375400300541bd005802c01600a8398c1c000506e1838001400e007003801a0e2306e00141b060d46ea800e0028338888c96600260a800313259800800c00e264b300100180240120090048992cc004c1c400e00d00541b86eb80050711837000a0d8306a37540091598009829800c4c9660020030038992cc0040060090048024012264b30013071003803401506e1bae00141c460dc0028360c1a8dd5002400906720ce3068375400705a82d416a0b48358c1a0c194dd5000c54cc18d24014565787065637420536f6d65287369676e65645f7061796c6f61645f6461746129203d2063626f722e646573657269616c6973652872656465656d65722e7061796c6f6164290016418860026eb8c0d4c190dd50299192cc004c13c006298103d87a80008992cc006600260a06eb4c1980069429450634530103d87a80008981c198341832800a5eb810634c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d06548896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b810010034195001400c8310dc680098008009119800911191919bb032374e660d660d0002660d660d200297ae03376060ce00460ce00260d0003300100691000c012007375a60ce0028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130510018cc004012007002918051ba800140351598009828000c6600200900399b80002480fe460146ea0c0f0c0f800500d456600266e1c00920be0189919800800918059ba9001223300648008966002601c00313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014419d19800802400e66e00009207f918051ba9001401c832106420c88acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300d3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180719ba5003001404080810672cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014198833100d4566002605600315980099b87002482f80a33001004801ccc01801888006460146e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300b374e002806900d20c88acc004c0a80062b30013370e004907f0144c8c8cc0040048c030dd30009119803a40044b3001300f0018980125eb7bdb18224646530010069180319838801000cdd69837001200c323376060e200260e260e40026eb0c1b000660020130089807800a00a41a06600c00c4400519800802400e66e0000920bf02919194c0040060072300d374c00280088896600266e24009200089800a5eb7bdb18224646530010069821802c8c014cc1c80080066eb4c1bc0090061919bb0307200130723073001375860da003300100a804c00500520d23300700722002403483222497bdb181014000010120004190832106420c8337060029020111119198008008011119803240044b3001300a0018980125eb8224646530010069180319836001000cdd69834801200c30670019800804401e6014002803106311114c00401200700291980200091801800a012413505b1bae001417860b600282c8dd7000982d005a0b6305800a415904841586eb8005059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500240fd04940fd00e40fd00e40fd00e40fd00e40fd04d1bac00181f40f90501826800a096304d00281e40f207903c413860960028248c12c00a07503a81d40e904c1824800a08e304900281c40e20710384128608e0028228c11c00a06d03681b40d90481822800a086304500281a40d2069034411860860028208c0fcdd5002c0c903c111194c004006009003400444464b3001302f0018992cc00400600d13259800800c01e00f007803c4c96600260980070058042092375c0028260c12400504718229baa0038acc004c0b8006264b300100180344c966002003007803c4c966002609800713302f0012259800801401e264b30010018cc00402a00313002304f003402900b805c02e0168280c13400904b40210491bac001803c01d04c1824800a08e304537540071598009819000c4c9660020030068992cc00400600f0078992cc004c13000e26605e00244b3001002803c4c96600200319800805400626004609e006805201700b805c02d0501826801209680420923758003007803a0983049001411c608a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009827801c4cc0c8004896600200500a8992cc0040063300100d800c4c008c14800d00d403a01d00e80720a63050002413900b41306eb000601500a413c60980028250dd68009825801401d04c1824800a08e304537540071598009804800c4c9660020030068992cc00400600f007803c4c96600260980070058042092375a003007413060920028238c114dd5001c566002601000313259800800c01a264b3001001803c01e00f132598009826001c0160108248dd6800c01d04c1824800a08e3045375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009826001c0160108248dd7000a0983049001411c608a6ea800e00a821104220844108821104220843043375400481740ba05d02e4100601660746ea8c94cc0e4cdcb24812467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea40dd220100132598009813181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a200037326600a002910100132598009815981e9baa0018992cc0040062b30013029303e375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098240014401a0728228c1180050441bae0013045002411860860028208c0fcdd5000c0d103c40d206903481a20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec6018607a6ea8c038c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46600400206e6eb0c02cc0e8dd50131800800911980200111980598031bab300c303b3754601860766ea8004008888c9660020071323233223300b0023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420805980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d103a1bac303d002375a60760026466ec0dd4181d8009ba7303c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6080003337149101023a200098008054c10400600a805100a182180144ca6002015304000199b8a489023a200098008054c104006600e66008008004805100a182180120823043001410066e29220102207d0000340f46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039011207a3758007133007375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40fc66e2ccdc0000acc004cdc4000a402914818229037207e004401866e0c00520203370c002901019b8e00400240f06eb800d0401b8a4881022c200018048049802802a264b300100180e4072264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0cc00a2b30013019302e375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc00400604f027813c09e264b3001303a0038acc004c080c0d4dd500344c9660020030298992cc00400605502a81540aa26644b300100181644c96600200302d816c0b605b132598009820001c660020151301430400158172048817207a375c0028200c0f400503b1bae001303c00240f4607400281c0c0d8dd500340a103340a10371bae00140e8606e00281a8c0dc00a04b025812c095038181a800a0663035002811c08e04702340d860660028188c0bcdd5000c08502c40850304086043021810a068303100140bc6eb8004c0c00090311817000a058375800301c80e205e302c00240a91323259800800c06e03701b899912cc00400603b01d80ec4c8c018c0c001cdd6800c0750301bad001302900280da05c3027001302a00240a101740986eac00602d01680b20523026001409060446ea801e02880fa0288118dd6000c04e0268130c08c0050211bae0013022002408c604000280f0c08000a01d00e8074039021180f000a038301a375401300c405c44464b300130060018992cc00400600713259800800c01200900480244c9660026046007006802a040375c0028118c08000501e180e1baa0048acc004c0140062b3001301c3754009003801203a8012032406460346ea800c88c8cc00400400c88cc00c004c008008dc3a40006e1d20028044022011008406c6030602a6ea800e2c80906028002601e6ea8056293454cc0352411856616c696461746f722072657475726e65642066616c7365001365640301" : "592497010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a40052232330010010032233003001300200248888c9660026008601c6ea802626464646644b300130180038992cc004c028c050dd5000c4c96600260340031330093756603200244b3001002899805803112cc00400a330012259800800c52f5c113301e301b301f0013300200230200014075374a900048c078c07c00644646600200200644b30010018a508acc004cdc79bae30210010038a518998010011811000a038407d2301e301f301f0019b874801a6e1d20089b8748029222222223322332232332259800980f18141baa00289919191919194c004dd61819000cc0c8016606400930320039819001244444b30013038006899806181b8058998060020998060018998060010acc004c0a4c0ccdd5000c4c8c8ca60026eb8c0e80066eb8c0e800e6eb8c0e800922259800981f00244c8cc896600260820071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc7244103020408003370000490189180119bca4a2003124bded8c10140000101200040fc81f903f4dc024003370e907f01cdc02400522337600046ea00066e052000488888a600244444653001001801c0090011112cc004cdc480124001130014bd70448c8ca600200d30100059180299828801000cdd69827001200c304c0019800804c022002803904948888c8cc00400400888cc01920022598009805800c4c0092f5c1123232980080348c018cc1400080066eb4c1340090061825800cc00402200f300b0014018824244453001004801c00a4660080024600600280512223232323259800981f98249baa00189919914c00489660026088609c6ea800a26464646644b30013058003899804982b802899823001003459055182a8009bad305500230550013054001304f37540051641351980099198008009bac3030304e375409044b30010018a5eb822660a26e9cc8c8cc14cc150008cc14cc0ccc144dd5000998299ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002414c8298dc68009bae30563053375400266e28c008dd7181b98299baa0013371460046eb8c0d4c14cdd500098011bae305630573057305730533754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241448288dc6800981b19829a610b4a5369676e617475726531003305330543051375460a860a26ea8004cc14d3010140003305330353051375409697ae04bd701829982a0009bac30520013300200230530014141230513052305230523052305230523052001911919800800801912cc00400629422b3001300330540018a51899801001182a800a09e4149374a900124444b300132980098289baa001919191919912cc004c13400a29422b300130500028cc004cdd7982d982c1baa0014c103d87b8000a50a51415913233225980098280014528c566002609e00513322598009828982e1baa3041305d375400d13371000400313371200400282d8dd6982f182d9baa003598009827982d1baa303f305b375400f10018980d800a0b28a50416482c8c160dd50009bad305c3059375400860b660b06ea800505620ac3055375400260b260b400660b060aa6ea8004c15c004c14cdd5000c888c8cc8966002609a0051598009826982b9baa0018a6103d87a80008a6103d879800041591598009828001456600260a060ae6ea80062980103d87a80008a6103d87b8000415913322598009827800c530103d87b80008acc004c138006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000416482c8dd6982e982d1baa0038a6103d8798000416082c0dd6982d982c1baa0033057375400282b1056182a9baa00130020033001003488966002609400713233007375860b260ac6ea81348cdd7982d182b9baa0010023058305537540091598009824801c4cc8966002600800314a315980098020014528456600330013375f3001305a30573754005305a3057375400323232598009827182c9baa305d305e0028800c4c966002609e0031300b3305d375060366eb4c178c16cdd500125eb822b3001305000188014400905920b23059375400282c0c170004c160dd5000a0064c0103d87b8000a50a5141551980099baf9800981d982b9baa002981d982b9baa001919192cc004c138c164dd5182e982f00144006264b3001304f001898059982e9ba8301d375a60bc60b66ea80092f5c11598009828000c400a200482c9059182c9baa001416060b800260b06ea8005003260103d8798000a50a51415514a082a905520aa305830553754008600e60aa6ea8132294105320a6181a98289baa0058cc004c150c144dd5002c88c8cc00400400c896600200314800226644b300130050028980b800c4005055182c00099801001182c800a0ac911919800800801912cc00400629422b30013375e00660a860b000314a31330020023059001414c82b244646600200200644b30010018a518acc004c00cc16000626600400460b200314a0829905648c154c158c158c158c158c158c158c158c158006460aa60ac60ac60ac60ac60ac60ac0032259800982418291baa002899192cc004c16400a0071641586eb4c15c004c14cdd500145905148c154c158c158c158c1580064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320ae899802802982e80220ae375c60ac0026eacc15c004c1640050570a5eb7bdb18244b30010018a400113013330020023057001415123055305630563056305630560019112cc00400a2980103d87a80008acc004c12400626072660ac60ae00497ae08cc00400e60b00053016001400c829105548966002003148002260266600400460ae00282a244b30010018a5eb82264660ac6ea0004cc00c00cc8cc004004c16400c896600200314bd7044cc896600330013370e00400b4a14a282b22660b46ea0008cc01001000626600800800282b0dd6982c800982d000a0ae375a60ac00282a2444646600200200844b300100189982c19bb037520086ea000d2f5bded8c113298009bae30560019bad3057001982d8012444b30013372001000713305c337606ea4020dd4003802c56600266e3c02000e2660b866ec0dd48041ba800700189982e19bb037520066ea0008cc01801800505820b0182c800a0ae911919800800801912cc004006297ae0899912cc004cdd7982d182b9baa305a30573754607660ae6ea8008c01ccc164dd4802a5eb822660b200466008008003133004004001415460b000260b200282b244b30010018a40011301333002002305700141512259800800c520008980999801001182b800a0a89b8848001222222222222222222298009111191980080080291192cc004c18000626609c00c6eb8c1b8c1acdd5001456600260be003133017375860dc60d66ea80088cc0100100062b3001306300189980e1bac306e306b37540044660080080031598009826000c4c8cdc49bad306f0013301a375860de60e000246600a00a00260d66ea800a2b3001304b00189919912cc004c188c1b4dd5001456600260c460da6ea8c1c4c1c800e266e24dd6983898371baa002001899b88375a60e260dc6ea800800506c452820d8306f001375a60de60d86ea800cc1acdd5182798359baa0058acc004c1280062646644b30013062306d3754005159800983118369baa30713072003899b89001375a60e260dc6ea800a266e20004dd6983898371baa00241b114a08360c1bc004dd6983798361baa003306b375460dc60d66ea80162660300086036660da60dc60d66ea80092f5c0834906920d241a4834906918349baa00198050054c18cdd5009c8888c8cc00400401488c96600260c00031323259800983118361baa001899194c004dd718390014dd718391839800cdd71839000ae5460e40026eb0c1c0c1b4dd5000c52820d632330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60e40020091305433071374e00297ae0899801801983980120da375860e20028378dd7183718359baa0028acc004c17c00626602e6eb0c1b8c1acdd5001119802002000c56600260c600313301c375860dc60d66ea80088cc0100100062b3001304c00189919b89375a60de002660346eb0c1bcc1c00048cc014014004c1acdd500145660026096003132332259800983118369baa0028acc004c188c1b4dd518389839001c4cdc49bad3071306e37540040031337106eb4c1c4c1b8dd5001000a0d88a5041b060de0026eb4c1bcc1b0dd500198359baa304f306b375400b1598009825000c4c8cc896600260c460da6ea800a2b30013062306d375460e260e40071337120026eb4c1c4c1b8dd500144cdc40009bad3071306e37540048362294106c18378009bad306f306c375400660d66ea8c1b8c1acdd5002c4cc060010c06ccc1b4c1b8c1acdd500125eb8106920d241a4834906920d23069375400330080089803803cc01801a6006007222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906b44cc014014c1c401106b1bae306a001375a60d600260da0028358cc03c01000c520009801001244444444446530012225980099b87300d0023009300832330010010032259800800c52f5c11330763073307700133002002307800141d5132330010010032259800800c52f5c30100008101a0008101a00044c8c8c8cc896600260dc60f06ea800a264b3001300900189983e1ba8337006eb4c1f4008dd6982f183d1baa0013307c374c64b3001306f307a37540031375660be0071375660fc60f66ea8005079192cc004c1bcc1e8dd5000c530103d87a8000898301983e9ba698009bab305f0039bae307e307b3754003005407097ae041e460b860f46ea8004cc1f0dd34c004dd5982e0014dd9983e983f002c01101b25eb822c83c0c1f0c1e4dd50014590771980480400099802802983d8021bad30790013307730740013307730750014bd70183b800a0ea8b20e091112cc004cdc398040021804001c4cc07c0108c96600260d460e86ea8006264b3001306b3075375400313322598009838183b9baa001899192cc004c1bcc1e4dd500144c8c8c8ca60026102020033081010039840808012444b300130850100489982c98420080389981b0010992cc004c1dc00626464b3001308801002805c59085011bad3086010013082013754005159800983b000c4c8c96600261100200500b8b210a02375a610c020026104026ea800a2c840009080011840009baa0018b210402184080800984000800983f800983d1baa0028b20f015980099baf305d3079375400260f860f26ea800e2b3001337126eb4c174c1e4dd5001cc004dd5982e983c9baa305d3079375400d375c60f800f375c60ba00e806a264b3001306f3079375400313370e6eb4c1f4c1e8dd50009bad305e307a375400913370e6eb4c1f4c1e8dd50009bad305e307a375400883c0c16cc1e4dd5000c59077459077183d983c1baa0018b20ec30793076375400260b060ec6ea8c168c1d8dd5001c59074198038029bad3078307537540031641cc6644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130603307d375000297ae080320f2899802802983f80220f2375c60f00026eb4c1e4004c1ec0050791bb3307730743754002298103d87a80008b20e291112cc004cdc398030011804001c4ca60020034800200880088896600200314a313322598009836983b9baa0018992cc004c1b8c1e0dd5000c4c96600260de60f26ea8006264b30013375e60fc60f66ea8004c1f8c1ecdd5183f183d9baa0058acc004cdd7982e983d9baa001305f307b375460fc60f66ea80162b300198008044c0ec01e60fe00c8042266e1e60026eacc17cc1ecdd5000cdd7183f004cdd7182f804a01e325980099b880014800226074003100141e86eb4c17cc1ecdd5002c52820f28b20f28b20f2307d307a37540031641e0660160146eb4c1f0c1e4dd5000c5907718181bae307b307837540031641d860f2002646600200200c44b30010018a60103d87a80008992cc004cdc38029bad30790018982f1983d983c000a5eb8226600600660fa00483b8c1ec00507920ee8b20e29111919912cc004cdc39bad30780010028992cc004cc896600200314a11329800992cc004c1bcc1e4dd5000c4dd6983d183e9bab307d307a3754003148001078183e000cdd7983e183e800cdd58012444b30010018acc004c008016266e2520000038a5041e91325980099baf307c0014c010140008acc004cdc49bad307d308001375660fa00200913003374c61020200514a083da2b300133712900000244c00c01a294107b20f6307f00141f4329800800c00e44660fa004660fa6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1ec0066eacc1f00066100020069112cc004cdc8a441000038acc004cdc7a44100003899802983219840809ba60024bd70000c4cc015300103d87a800000641f519800803c006446600e004661060266ec0dd48029ba6004001401c83e860fc00483e229422942294107d1bab305a002374c660f066ec0c1e4004dd31983c19bb03079307a001375066e0400c0152f5bded8c097adef6c608801c590741bac301a3075375400d1641ccb30013068300e0018a4001159800983b800c4c96600266e3cdd71839800a44104555344720089bad30740018b20e430760018b20e841c46464b3001306a307437540031325980099baf30793076375460f260ec6ea8c168c1d8dd500098131983c1ba90034bd7044c96600260de60ec6ea800626466042002264b3001306e307837540031325980099baf307d307a375460fa60f46ea8004c0a8cc1f0dd4803a5eb82264b30013073307a37540031323302500113307e375066e04dd6983f983e1baa001375a60fe60f86ea8014cc1f8dd3194c0040066eacc184c1f4dd50024c8cc004004dd59831183f1baa3062307e375401244b30010018a5eb7bdb182264661040266ec0c1fc004dd319198008009bab3081010022259800800c52f5bded8c11323308501337606104020026ea0c104dd698418080099801801984380801184280800a1060233003003308401002308201001420004800888966002005100189919914c00401a610c0200b32330010010052259800800c4cc21804cdd81ba9004374c00697adef6c608994c004dd7184200800cdd5984280800cc224040092225980099b900080038998450099bb037520106e9801c0162b30013371e01000713259800acc0040062946294108a014400a2661160266ec0dd48049ba6001002421c04653001001804400d0011112cc00400a2003132332298008034c24804016646600200200a44b30010018998490099bb037520086ea000d2f5bded8c113298009bae3090010019bad309101001984a808012444b30013372001000713309601337606ea4020dd4003802c56600266e3c02000e264b3001308a01001880144cc25c04cdd81ba90093750002004849808cdc000380144cc25804cdd81ba900337500046600c00c002849009092010c24c0400509101200c375c6116020026eb4c23004004c2380400908c0144cc22804cdd81ba9003374c0046600c00c002843009086010c21c0400508501200c375c60fe0026eacc20004004c208040090800125eb80c1f8c1ecdd5000c59079182e183d1baa0018b20f0307c307937540031641dc660a66eb0c168c1e0dd500411982e182a9bab305d3079375400200c60f460ee6ea80062c83a8c160c1d8dd5182d183b1baa0018b20e830783075375400314bd7090100008101a00020e63304e375860ee60e86ea8010004dd7183b18399baa301b30733754008660326eacc068c1c8dd50011bae305630723754603460e46ea800d2222598009834006c4c966003300130773074375409b0279813183a1baa06b9bab301e307437540d6806a26464b300198009980b1bac3079307637540da6eb8c160c1d8dd5180f183b1baa04f801cdd5983c800cdd6180d983b1baa04f4019159800cc004dd6182c183b1baa06d801cdd5983c983d000ccc1e0c168c1d8dd5180f183b1baa04f330784c1054455534472004bd70200a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba460246eb4c164c1d4dd5000a00a8b20e4375860ec60e66ea808a2b3001306700d8992cc006600260b060e86ea813604f3026307437540d73756603c60e86ea81ad00d44c8c966003300133016375860f260ec6ea81b4dd7182c183b1baa301e3076375409f0039bab30790019983c182d183b1baa301e3076375409e660f0981054455534472004bd70200c8acc00660026eb0c160c1d8dd5036c00e6eacc1e4c1e80066eb0c06cc1d8dd5027a00a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba466e20dd6982c983a9baa001480010054590721bac3076307337540451598009835806c4c966003300130563074375409b3758603e60e86ea81ae604c60e86ea81ae6eacc078c1d0dd5035a0208acc004c044006260d3300104d835c0050024590724590721bad30763073375404513259800cc004c158c1d0dd5026cdd6180f983a1baa06b9813183a1baa06b9bab301e307437540d680822b3001301100189834cc0041360d7337040029000a0048b20e48b20e4375a60ec60e66ea808907120e241c4225980099b8800148002298103d87a8000899804001000a0dc22c82792259800982218271baa00289919192cc004c15800a26464b300130490018acc004c150dd5001401a2c82aa2b30013048001899192cc004c16800a01116415c6eb4c160004c150dd500145660026098003159800982a1baa00280345905545905220a4414860a46ea8004c15400e2c8298c96600260a400315980099b8948010c1440062d130463051001414116414c6ea8c150004c150004c13cdd500145904d2444b30013045304f3754009132323259800982b80144c8cc8966002609600513259800982d800c4cc128dd6182d000912cc00400a00913300c305c00213001305d002416916416060ac6ea800e2b3001304a0028992cc004c16c0062660946eb0c1680048966002005004899806182e00109800982e80120b48b20b030563754007159800982700144c8c96600260b80050038b20b2375a60b400260ac6ea800e2b30013037002899192cc004c17000a0071641646eb4c168004c158dd5001c5905420a8415082a0c14cdd50008992cc004c128006264b3001305a0018992cc004c130c158dd5000c4c8c8cc896600260be00700d8b20b8375a60b80026eb8c170008c170004c15cdd5000c59055182c800c59057182a9baa0038acc004c124006264b3001305a0018992cc004c130c158dd5000c4c8c8c96600260bc00513300b305d00313300b00100c8b20b6305c001305c0013057375400316415460b200316415c60aa6ea800e2b3001304d001899192cc004c16c00a0131641606eb8c164004c154dd5001c5905320a6414c60a66ea8008c15800e2c82a0c154004c154004c140dd500245904e08966002608460986ea800a2646464b30013054002899912cc004c11cc144dd500144c8c8c96600260b200513300b3058003132598009825800c4c96600260b600313232598009827000c4c96600260bc003133010305d0010098b20b6305937540051598009826800c4c8c8ca60026eb4c17c0066eb4c17c00e6eb4c17c009222598009831802403a2c830060be00260bc00260b26ea800a2c82b9057182b9baa001305a0018b20b0305637540051598009825000c56600260ac6ea800a00b16415d16415082a0c150dd5000c59056182b800982b80098291baa0028b20a03053003132598009823000c56600260a26ea800a00b1641491598009822800c4c8c96600260ae0050078b20a8375c60aa00260a26ea800a2b30013049001899192cc004c15c00a00f16415060aa00260a26ea800a2c827904f209e304f375400316414460a400260a4002609a6ea800a2c8258c138c12cdd500111192cc004c10800626464b300130530028024590501bae3051001304d37540071598009820800c4c8c96600260a60050048b20a0375c60a2002609a6ea800e2c825904b18259baa0028b20903001375c605a60926ea810c8c966002607e00314c103d87a80008992cc006600260806eb4c12c0069429450494530103d87a800089818198269825000a5eb810494c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d04b48896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b81001003412d001400c8240dc680098008009119800911191919bb032374e660a0609a002660a0609c00297ae03376060980046098002609a003300100691000c012007375a60980028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130410018cc004012007002918061ba8001403d1598009820000c6600200900399b80002480fe460186ea0c03cc02c00500f456600266e1c00920be0189919800800918069ba9001223300648008966002602000313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014413519800802400e66e00009207f918061ba9001401c825104a20948acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300f3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180819ba50030014034809104d2cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014130826100f4566002605800315980099b87002482f80a33001004801ccc01801888006460186e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300d374e002805100f20948acc004c0ac0062b30013370e004907f0144c8c8cc0040048c038dd30009119803a40044b300130110018980125eb7bdb1822464653001006918031982b001000cdd69829801200c323376060ac00260ac60ae0026eb0c14400660020130089808800a00a41386600c00c4400519800802400e66e0000920bf02919194c0040060072300f374c00280088896600266e24009200089800a5eb7bdb1822464653001006980b002c8c014cc15c0080066eb4c1500090061919bb0305700130573058001375860a4003300100a804c005005209e3300700722002403c82522497bdb181014000010120004128825104a209433706002902011640f86eb8c0f8004dd7181f006181f005c5903b0c0e8004c0e4004c0d0dd5000c590324590350c0c8004c0c4004c0c0004c0bc004c0b8004c0a4dd5001459027180598139baa3259800980e98139baa0018992cc004c084c0a0dd5000c4c966002603e60526ea8006264646644b300130320038802c5902f18178009bae302f002302f001302a37540031640a0605860526ea80062c8138c028c0a0dd5180618141baa302b30283754003164098660026eb0c02cc09cdd500f0121802002111980180111980618029bab300d30293754601a60526ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c0100062601c6605600297ae08998018019816801204e302b00140a4601001044464b3001301b001899192cc004c0b000a0091640a46eb8c0a8004c098dd5001c5660026034003132598009815800c4cc068dd61815000912cc00400a00b19800803cc0b000a26002605a004803902a45902818131baa0038acc004c078006264b3001302b00189980d1bac302a0012259800801401633001007981600144c004c0b400900720548b2050302637540071598009803800c4c8cc8966002605a00313301c3758605800244b3001002803c66002013302e002898009817801201240b11640a86eb4c0a8004c0ac004c098dd5001c566002600c0031323259800981600140122c8148dd6981500098131baa0038acc004c01400626464b3001302c0028024590291bad302a0013026375400715980099b874803000626464b3001302c0028024590291bae302a00130263754007164090812102420484090812102418121baa00244c8cc89660026042003132598009809980e9baa0018991919192cc004c09800a264b3001301830223754003132323322598009815801c4cc064c0a80204c038c0ac03e2c8140dd718140009bae3028002302800130233754003164084604a00916408c6eb8c090004c090004c08c004c078dd5000c5901c1810000c5901e1bae301e001301f0013758603a00480da26466446008603e00a6eb4c060004dd6980c800980d80120328b202e3015375400316404c602e00b1640546eb0c054004dd7180a801180a800980a00098079baa0098b201a2232598009803000c4c8c966002602e0050048b2028375c602a00260226ea800e2b300130050018acc004c044dd5001c00a2c80922c807900f18079baa0024590080c024004c010dd5005452689b2b200401", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_3/index.js.map b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_3/index.js.map new file mode 100644 index 0000000000..d3f1466f7e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_3/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_uplc","require","_data","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","a","n","TypeError","_defineProperty","value","i","_toPrimitive","toPrimitive","call","String","Number","PolicyId","Type","Contracts","Module","Bool","Boolean","COSESign1","headers","Ref","payload","Optional","signature","ctor","HeaderMap","Headers","unprotected","MultisigScript","Union","Signature","key_hash","AllOf","scripts","Array","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Tuple","Destination","address","payment_credential","VerificationKey","stake_credential","Inline","Pointer","slot_number","transaction_index","certificate_index","datum","Literal","DatumHash","InlineDatum","TPlutusData","ExtraProtocolRedeemer","request_to_outputs","Record","Nonce","UTxO","transaction_id","output_index","Validity","lower_bound","bound_type","Finite","is_inclusive","upper_bound","Nullifier","OrderAction","OMint","amount","ORedeem","OrderDatum","owner","destination","action","data","OrderRedeemer","ProtocolRedeemer","Mint","requests","Burn","Withdraw","withdraw_amount","Deposit","deposit_amount","ProxyDatum","logic","settings","Registry","treasury","usdr","order","Request","origin","Settings","mint_permission","burn_permission","withdraw_permission","deposit_permission","registry","reserve_token","SigWithKey","SignatureList","SignedPayload_ProtocolRedeemer","nonce","SignedRedeemer_ExtraProtocolRedeemer","extra","signatures","exports","Import","V0_3OrderOrderSpend","proxyPolicyId","trace","arguments","undefined","cborToScript","applyParamsToScript","V0_3OrderOrderElse","V0_3ProtocolProtocolWithdraw","V0_3ProtocolProtocolElse"],"sources":["../../../../src/generated-types/v0_3/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\ntype Data = Exact;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n Bool: Type.Boolean(),\n COSESign1: Type.Object({\n headers: Type.Ref(\"Headers\"),\n payload: Type.Optional(\n Type.String()\n ),\n signature: Type.String(),\n }, { ctor: 0n }),\n HeaderMap: Type.String(),\n Headers: Type.Object({\n protected: Type.Ref(\"HeaderMap\"),\n unprotected: Type.Ref(\"HeaderMap\"),\n }, { ctor: 0n }),\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object({\n key_hash: Type.String(),\n }, { ctor: 0n })\n }),\n Type.Object({\n AllOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n AnyOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n AtLeast: Type.Object({\n required: Type.BigInt(),\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Before: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n After: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n Script: Type.Object({\n script_hash: Type.String(),\n }, { ctor: 6n })\n }),\n ]),\n Asset: Type.Tuple([\n Type.String(),\n Type.String(),\n ]),\n Destination: Type.Object({\n address: Type.Object({\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple([\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n ], { ctor: 0n })\n }),\n Type.Object({\n Pointer: Type.Object({\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ])\n ),\n }, { ctor: 0n }),\n datum: Type.Union([\n Type.Literal(\"NoDatum\", { ctor: 0n }),\n Type.Object({\n DatumHash: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n Type.Object({\n InlineDatum: Type.Tuple([\n TPlutusData,\n ], { ctor: 2n })\n }),\n ]),\n }, { ctor: 0n }),\n ExtraProtocolRedeemer: Type.Object({\n request_to_outputs: Type.Record(\n Type.Number(),\n Type.BigInt(),\n ),\n }, { ctor: 0n }),\n Nonce: Type.Union([\n Type.Object({\n UTxO: Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ], { ctor: 0n })\n }),\n Type.Object({\n Validity: Type.Tuple([\n Type.Object({\n lower_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n upper_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n ], { ctor: 1n })\n }),\n Type.Object({\n Nullifier: Type.Tuple([\n Type.String(),\n ], { ctor: 2n })\n }),\n ]),\n OrderAction: Type.Union([\n Type.Object({\n OMint: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 0n })\n }),\n Type.Object({\n ORedeem: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ]),\n OrderDatum: Type.Object({\n owner: Type.Ref(\"MultisigScript\"),\n destination: Type.Ref(\"Destination\"),\n action: Type.Ref(\"OrderAction\"),\n data: TPlutusData,\n }, { ctor: 0n }),\n OrderRedeemer: Type.Union([\n Type.Literal(\"Execute\", { ctor: 0n }),\n Type.Literal(\"Cancel\", { ctor: 1n }),\n ]),\n ProtocolRedeemer: Type.Union([\n Type.Object({\n Mint: Type.Object({\n requests: Type.Array(\n Type.Ref(\"Request\")\n ),\n }, { ctor: 0n })\n }),\n Type.Object({\n Burn: Type.Object({\n requests: Type.Array(\n Type.Ref(\"Request\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n Withdraw: Type.Object({\n withdraw_amount: Type.BigInt(),\n }, { ctor: 2n })\n }),\n Type.Object({\n Deposit: Type.Object({\n deposit_amount: Type.BigInt(),\n }, { ctor: 3n })\n }),\n ]),\n ProxyDatum: Type.Object({\n logic: Type.String(),\n settings: Type.Ref(\"Settings\"),\n }, { ctor: 0n }),\n Registry: Type.Object({\n treasury: Type.String(),\n usdr: Type.String(),\n order: Type.String(),\n }, { ctor: 0n }),\n Request: Type.Object({\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n origin: Type.Optional(\n Type.String()\n ),\n }, { ctor: 0n }),\n Settings: Type.Object({\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n withdraw_permission: Type.Ref(\"MultisigScript\"),\n deposit_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"Registry\"),\n reserve_token: Type.Ref(\"Asset\"),\n }, { ctor: 0n }),\n SigWithKey: Type.Tuple([\n Type.String(),\n Type.Ref(\"COSESign1\"),\n ]),\n SignatureList: Type.Array(\n Type.Ref(\"SigWithKey\")\n ),\n SignedPayload_ProtocolRedeemer: Type.Object({\n action: Type.Ref(\"ProtocolRedeemer\"),\n nonce: Type.Ref(\"Nonce\"),\n }, { ctor: 0n }),\n SignedRedeemer_ExtraProtocolRedeemer: Type.Object({\n extra: Type.Ref(\"ExtraProtocolRedeemer\"),\n payload: Type.String(),\n signatures: Type.Ref(\"SignatureList\"),\n }, { ctor: 0n }),\n});\n\nexport const Bool = Contracts.Import(\"Bool\");\nexport type Bool = Exact;\nexport const COSESign1 = Contracts.Import(\"COSESign1\");\nexport type COSESign1 = Exact;\nexport const HeaderMap = Contracts.Import(\"HeaderMap\");\nexport type HeaderMap = Exact;\nexport const Headers = Contracts.Import(\"Headers\");\nexport type Headers = Exact;\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Destination = Contracts.Import(\"Destination\");\nexport type Destination = Exact;\nexport const ExtraProtocolRedeemer = Contracts.Import(\"ExtraProtocolRedeemer\");\nexport type ExtraProtocolRedeemer = Exact;\nexport const Nonce = Contracts.Import(\"Nonce\");\nexport type Nonce = Exact;\nexport const OrderAction = Contracts.Import(\"OrderAction\");\nexport type OrderAction = Exact;\nexport const OrderDatum = Contracts.Import(\"OrderDatum\");\nexport type OrderDatum = Exact;\nexport const OrderRedeemer = Contracts.Import(\"OrderRedeemer\");\nexport type OrderRedeemer = Exact;\nexport const ProtocolRedeemer = Contracts.Import(\"ProtocolRedeemer\");\nexport type ProtocolRedeemer = Exact;\nexport const ProxyDatum = Contracts.Import(\"ProxyDatum\");\nexport type ProxyDatum = Exact;\nexport const Registry = Contracts.Import(\"Registry\");\nexport type Registry = Exact;\nexport const Request = Contracts.Import(\"Request\");\nexport type Request = Exact;\nexport const Settings = Contracts.Import(\"Settings\");\nexport type Settings = Exact;\nexport const SigWithKey = Contracts.Import(\"SigWithKey\");\nexport type SigWithKey = Exact;\nexport const SignatureList = Contracts.Import(\"SignatureList\");\nexport type SignatureList = Exact;\nexport const SignedPayload_ProtocolRedeemer = Contracts.Import(\"SignedPayload_ProtocolRedeemer\");\nexport type SignedPayload_ProtocolRedeemer = Exact;\nexport const SignedRedeemer_ExtraProtocolRedeemer = Contracts.Import(\"SignedRedeemer_ExtraProtocolRedeemer\");\nexport type SignedRedeemer_ExtraProtocolRedeemer = Exact;\n\nexport class V0_3OrderOrderSpend {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590e80010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004896600200314bd7044cc068c05cc06c004cc008008c070005019488c8cc00400400c88cc00c004c00800a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80b24444646600200200a44b30010018802c4c9660020031330043020002006899802981000119801801800a03c302000140752232330010010032259800800c5300103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444453001300600698020024888ca6002003004801a00222232598009809800c4c9660020030068992cc00400600f007803c01e264b3001302a003802c0210271bae00140a8604e0028128c08cdd5001c566002603000313259800800c01a264b3001001803c01e264b3001302a003899807800912cc00400a00f13259800800c66002015001898011816801a014805c02e01700b40b86056004814a0108138dd6000c01e00e8150c09c00502518119baa0038acc004c038006264b300100180344c966002003007803c4c966002605400713300f0012259800801401e264b30010018cc00402a00313002302d003402900b805c02e0168170c0ac00902940210271bac001803c01d02a1813800a04a3023375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605a0071330120012259800801402a264b30010018cc004036003130023030003403500e807403a01c8188c0b800902c402d02a1bac001805402902d1815000a050375a002605200500740a8604e0028128c08cdd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0a800e00b008409c6eb400600e8150c09c00502518119baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815001c0160108138dd6800c01d02a1813800a04a3023375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815001c0160108138dd7000a0543027001409460466ea800e00a8101020204040808101020204030213754005330023758603e60386ea80408cdd79810180e9baa00100f48888c8c8cc88c966002602a60486ea801a264b3001301b3025375400315980099b8f375c6052604c6ea8004dd7180598131baa3029302a302a302a302a302637546026604c6ea8c96600200319800800c40060448022045022811408902c198011bac30133026375403404513233225330273372c92010d63726564656e7469616c3a3a200037326600e0049101001330170010023374a9001198149ba90014bd701bab3016302737540366eb8c0a4c098dd5198011bac301330263754034045153302449013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016408d153302449132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f637265640016408c6050604a6ea8c0a0c094dd5180918129baa30283025375400d15330234913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408844a6604866e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980b98131baa00189929981319b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a18141baa0018992cc004006330010018800c095007409604b025812a05e302c3029375400315330274913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601a60506ea8c054c0a0dd5000981518139baa0018a99812a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640906601800446602660166eacc050c09cdd5180a18139baa001002300100122259800980a98121baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302e0028acc004c068c0a4dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200301280944c9660026076007198008064660020151980080446600200d1598009813981b1baa0048992cc00400602913259800800c05602b01580ac4cc89660020030178992cc00400603101880c406226644b300100180d44c96600200301b80dc06e037132598009822001c56600201501c8992cc00400603b01d80ec07626644b300100180fc4c9660020030208104082041132598009824801c08a0428230dd7000a092304600141106eb8004c11402d0461821805208280e2082375c0028220c10400503f1bae00130400024104607c00281e0dd7000981e801207c303b00140e4606e6ea801202681a202680ca02680ca02680ca02680ca02681c0dd6000c04a02481d8c0e0005036181c00140420210108082072303600140d0606c00500e807403a01c81b8c0d0005032181a001403201900c806206a303200140c0606400500a805402a0148198c0c000502e181800140220110088042062302e00140b060546ea800600c813a00c815a00d006803401902f1816000a054375c00260560048160c0a400502718129baa003800a0442223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020545980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81210241bac3027002375a604a0026466ec0dd418128009ba73026001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6054003337149101023a200098008054c0ac00600a805100a181680144ca6002015302a00199b8a489023a200098008054c0ac006600e66008008004805100a18168012056302d00140a866e29220102207d00003409c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d204e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720523371666e000056600266e2000520148a40c11481b9029002200c33706002901019b8600148080cdc7002001204c375c0068150dc5245022c20002232330010010032259800980a000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408481088acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601\"\n :\n \"5906f2010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc004896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a60103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a4444646466446644b30013010301c375400313259800980b180e9baa0018acc004cdc79bae3021301e37540026eb8c020c078dd518109811181118111811180f1baa300e301e3754646600c0022002660066eb0c038c078dd500a80dc4cc03cdd59808180f1baa0153374a9001198101810980f1baa330033758601c603c6ea805406d2f5c11640711640706040603a6ea8c080c074dd51806980e9baa3020301d375400316406c4464b30013011301d3754003132598009806980f1baa0018991980380088009811180f9baa0018b203a3008301e3754601c603c6ea8c084c078dd5000c5901c1980400111980698021bab300e301e3754601c603c6ea8004008cc018dd6180f180d9baa01223375e603e60386ea80040448966002601c60346ea800a2646644b300130220018992cc004c048c078dd5000c4c8c8c8c8c8ca60026eb0c0a0006605000b30280049814001cc0a00092222259800981700344cc048c0b402c4cc0480104cc04800c4cc048008566002603a60526ea800626464653001375c6060003375c6060007375c60600049112cc004c0d00122646644b3001303700380cc590341bae3034001375c606801860680171640c43030001302f001302a37540031640a11640ac30280013027001302600130250013024001301f3754003164074604200316407c6eb8c07c004c080004c06cdd500145901918030031800800911192cc004c03800626464b3001302100280245901e1bae301f001301b37540071598009809800c4c96600260400031330083758603e00244b3001002802c6600200f3021002898009811001200e407d16407460366ea800e2b300130090018992cc004c0800062660106eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c56600266e1d200600189919912cc004c0880062660146eb0c08400489660020050078cc00402660460051300130240024024810a2c80f8dd6980f8009810000980d9baa0038acc004cdc3a40100031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40140031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40180031323259800981080140122c80f0dd7180f800980d9baa0038b2032406480c90192032406480c8c064dd500122b300130063012375400f19800980b18099baa30163013375400f3758602c602e602e602e602e602e602e602e602e60266ea802a602c602e602e602e602e602e602e602e60266ea802a6eacc014c04cdd500524444646600200200a4464b3001300d0018998048031bae301d301a37540051598009809000c4c8cc004004dd6180f180d9baa0032259800800c528c5660026600a00a603e00313300200230200018a50406880ea2b30013008001899198008009bac301e301b375400644b30010018a508acc004cc014014c07c0062946266004004604000280d101d456600266e1d200600189919b89375a603c00264660020026eb0c07cc080008896600200314800226644b300133008008002899b800014800a200280e8c080004cc008008c08400501e180d1baa0028acc004cdc3a4010003132332259800980a980e1baa0028acc004c054c070dd518101810801c4cdc49bad3020301d37540040031337106eb4c080c074dd5001000a0368a50406c603c0026eb4c078c06cdd5001980d1baa300a301a375400b15980099b87480280062646644b30013015301c3754005159800980a980e1baa30203021003899b89001375a6040603a6ea800a266e20004dd69810180e9baa002406d14a080d8c078004dd6980f180d9baa003301a3754603a60346ea801626601600866e9520023301c301d301a375400497ae0406080c10182030406080c0c060dd5000a2c80890110c034dd50040c028dd5001c590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_3OrderOrderElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590e80010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004896600200314bd7044cc068c05cc06c004cc008008c070005019488c8cc00400400c88cc00c004c00800a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80b24444646600200200a44b30010018802c4c9660020031330043020002006899802981000119801801800a03c302000140752232330010010032259800800c5300103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444453001300600698020024888ca6002003004801a00222232598009809800c4c9660020030068992cc00400600f007803c01e264b3001302a003802c0210271bae00140a8604e0028128c08cdd5001c566002603000313259800800c01a264b3001001803c01e264b3001302a003899807800912cc00400a00f13259800800c66002015001898011816801a014805c02e01700b40b86056004814a0108138dd6000c01e00e8150c09c00502518119baa0038acc004c038006264b300100180344c966002003007803c4c966002605400713300f0012259800801401e264b30010018cc00402a00313002302d003402900b805c02e0168170c0ac00902940210271bac001803c01d02a1813800a04a3023375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605a0071330120012259800801402a264b30010018cc004036003130023030003403500e807403a01c8188c0b800902c402d02a1bac001805402902d1815000a050375a002605200500740a8604e0028128c08cdd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0a800e00b008409c6eb400600e8150c09c00502518119baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815001c0160108138dd6800c01d02a1813800a04a3023375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815001c0160108138dd7000a0543027001409460466ea800e00a8101020204040808101020204030213754005330023758603e60386ea80408cdd79810180e9baa00100f48888c8c8cc88c966002602a60486ea801a264b3001301b3025375400315980099b8f375c6052604c6ea8004dd7180598131baa3029302a302a302a302a302637546026604c6ea8c96600200319800800c40060448022045022811408902c198011bac30133026375403404513233225330273372c92010d63726564656e7469616c3a3a200037326600e0049101001330170010023374a9001198149ba90014bd701bab3016302737540366eb8c0a4c098dd5198011bac301330263754034045153302449013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016408d153302449132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f637265640016408c6050604a6ea8c0a0c094dd5180918129baa30283025375400d15330234913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408844a6604866e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980b98131baa00189929981319b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a18141baa0018992cc004006330010018800c095007409604b025812a05e302c3029375400315330274913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601a60506ea8c054c0a0dd5000981518139baa0018a99812a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640906601800446602660166eacc050c09cdd5180a18139baa001002300100122259800980a98121baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302e0028acc004c068c0a4dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200301280944c9660026076007198008064660020151980080446600200d1598009813981b1baa0048992cc00400602913259800800c05602b01580ac4cc89660020030178992cc00400603101880c406226644b300100180d44c96600200301b80dc06e037132598009822001c56600201501c8992cc00400603b01d80ec07626644b300100180fc4c9660020030208104082041132598009824801c08a0428230dd7000a092304600141106eb8004c11402d0461821805208280e2082375c0028220c10400503f1bae00130400024104607c00281e0dd7000981e801207c303b00140e4606e6ea801202681a202680ca02680ca02680ca02680ca02681c0dd6000c04a02481d8c0e0005036181c00140420210108082072303600140d0606c00500e807403a01c81b8c0d0005032181a001403201900c806206a303200140c0606400500a805402a0148198c0c000502e181800140220110088042062302e00140b060546ea800600c813a00c815a00d006803401902f1816000a054375c00260560048160c0a400502718129baa003800a0442223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020545980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81210241bac3027002375a604a0026466ec0dd418128009ba73026001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6054003337149101023a200098008054c0ac00600a805100a181680144ca6002015302a00199b8a489023a200098008054c0ac006600e66008008004805100a18168012056302d00140a866e29220102207d00003409c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d204e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720523371666e000056600266e2000520148a40c11481b9029002200c33706002901019b8600148080cdc7002001204c375c0068150dc5245022c20002232330010010032259800980a000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408481088acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601\"\n :\n \"5906f2010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc004896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a60103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a4444646466446644b30013010301c375400313259800980b180e9baa0018acc004cdc79bae3021301e37540026eb8c020c078dd518109811181118111811180f1baa300e301e3754646600c0022002660066eb0c038c078dd500a80dc4cc03cdd59808180f1baa0153374a9001198101810980f1baa330033758601c603c6ea805406d2f5c11640711640706040603a6ea8c080c074dd51806980e9baa3020301d375400316406c4464b30013011301d3754003132598009806980f1baa0018991980380088009811180f9baa0018b203a3008301e3754601c603c6ea8c084c078dd5000c5901c1980400111980698021bab300e301e3754601c603c6ea8004008cc018dd6180f180d9baa01223375e603e60386ea80040448966002601c60346ea800a2646644b300130220018992cc004c048c078dd5000c4c8c8c8c8c8ca60026eb0c0a0006605000b30280049814001cc0a00092222259800981700344cc048c0b402c4cc0480104cc04800c4cc048008566002603a60526ea800626464653001375c6060003375c6060007375c60600049112cc004c0d00122646644b3001303700380cc590341bae3034001375c606801860680171640c43030001302f001302a37540031640a11640ac30280013027001302600130250013024001301f3754003164074604200316407c6eb8c07c004c080004c06cdd500145901918030031800800911192cc004c03800626464b3001302100280245901e1bae301f001301b37540071598009809800c4c96600260400031330083758603e00244b3001002802c6600200f3021002898009811001200e407d16407460366ea800e2b300130090018992cc004c0800062660106eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c56600266e1d200600189919912cc004c0880062660146eb0c08400489660020050078cc00402660460051300130240024024810a2c80f8dd6980f8009810000980d9baa0038acc004cdc3a40100031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40140031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40180031323259800981080140122c80f0dd7180f800980d9baa0038b2032406480c90192032406480c8c064dd500122b300130063012375400f19800980b18099baa30163013375400f3758602c602e602e602e602e602e602e602e602e60266ea802a602c602e602e602e602e602e602e602e60266ea802a6eacc014c04cdd500524444646600200200a4464b3001300d0018998048031bae301d301a37540051598009809000c4c8cc004004dd6180f180d9baa0032259800800c528c5660026600a00a603e00313300200230200018a50406880ea2b30013008001899198008009bac301e301b375400644b30010018a508acc004cc014014c07c0062946266004004604000280d101d456600266e1d200600189919b89375a603c00264660020026eb0c07cc080008896600200314800226644b300133008008002899b800014800a200280e8c080004cc008008c08400501e180d1baa0028acc004cdc3a4010003132332259800980a980e1baa0028acc004c054c070dd518101810801c4cdc49bad3020301d37540040031337106eb4c080c074dd5001000a0368a50406c603c0026eb4c078c06cdd5001980d1baa300a301a375400b15980099b87480280062646644b30013015301c3754005159800980a980e1baa30203021003899b89001375a6040603a6ea800a266e20004dd69810180e9baa002406d14a080d8c078004dd6980f180d9baa003301a3754603a60346ea801626601600866e9520023301c301d301a375400497ae0406080c10182030406080c0c060dd5000a2c80890110c034dd50040c028dd5001c590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_3ProtocolProtocolWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5948aa010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013a657870656374206d61746368696e675f6f75747075745f6964783a20496e74203d206d61746368696e675f6f75747075745f6964785f6461746100168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a494c657870656374207369676e65645f7061796c6f61643a205369676e65645061796c6f61643c50726f746f636f6c52656465656d65723e203d207369676e65645f7061796c6f61645f6461746100168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888966002646530013014001980a180a800cdc3a400930140024888966002600460286ea800e264b30010058999119912cc004c010c064dd5004c4c96600200300d8992cc004006264b3001001807c4c96600200301080840420211332259800800c04a264b3001001809c04e264b300130260038acc004c030c084dd5003c4c9660020030158992cc00400602d132598009814801c4cc030004896600200513300e0062259800801466002444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c814a6e05200091111919800800802912cc004006200b13259800800c4cc010c0cc00801a26600a6066004660060060028188c0cc0050304dc0240032259800800c52f5c113302d302a302e00133002002302f00140b1374a900048c0b4c0b800644646600200200644b30010018a508acc004cdc79bae30300010038a518998010011818800a05440b92302d302e302e0014888888888cc8a600244646600200200644b30013022001899b8a4890130000038acc004cdc4000a40011337149101012d0033002002300e00189980319b8400148050cdc599b803370a002900a240c000681a903548c00800644646600200200644b30010018a6103d87a80008992cc004c010006260166607600297ae0899801801981e801206c303b00140e4911191991192cc00400633001370e90034dc3a4011370e9005244464b30013029303e375400b13259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c0fa07d132598009828001c6600201919800805466002011198008034566002606c60966ea8012264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4c96600260b20071598008054122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260bc0071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc724503020408003370000490189180119bca4a2003124bded8c101400001012000416c82d905b488888ca600200300380120022225980099b89002480022600297ae08919194c00401a607200b23005330680020019bad3065002401860c60033001009804400500720be9b87483f80e6e0120029119bb00023750002911111991191919192cc004c13cc190dd5000c4c9660020031323298009112cc004c154c1a8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800983b00146600200d19800800c02601082d2010805a010839a0110088044021077183a000a0e4375a00260e600500541d060e20028378c1c400a007003801c00d0721837800a0da306b375400700141a11325330673372c9211c5b70726f746f636f6c5d20566572696679696e67206e6f6e63653a2000373266062607460d26ea801122010019800918369837183718371837183718371837000c89660020031480022601c6600400460de002836244646600200200644b30010018a508acc004c00cc1c0006294626600400460e2002835106e4dd2a40049111191929983699b964901205b70726f746f636f6c5d207665726966795f6e6f6e636520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041b0910100159800800c6600260e460de6ea802a44646600200200644b30010018a40011332259800980280144c06000620028390c1d8004cc008008c1dc005074488c8cc00400400c896600200314a115980099baf003307230760018a51899801001183b800a0e041d12232330010010032259800800c528c566002600660ec00313300200230770018a5041c083a2460e660e860e860e860e860e860e860e860e8003230733074307430743074307430740019112cc004c170c1c4dd5001c4c9660020030028992cc004006007003801c4c96600260f200700580220ec375a00300341e460ec00283a0c1c8dd5001c00506f48c1ccc1d0c1d0c1d0c1d00064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e8899802802983d80220e8375c60e80026eacc1d4004c1dc0050750a5eb7bdb18244b30010018a40011301433002002307500141c923073307430743074307430740019112cc00400a298103d87a80008acc004c17000626088660e860ea00497ae08cc00400e60ec0053046001400c837907348966002003148002260286600400460ea002839244b30010018a5eb82264660e86ea0004cc00c00cc8cc004004c1dc00c896600200314bd7044cc896600330013370e00400b4a14a2839a2660f06ea0008cc0100100062660080080028398dd6983b800983c000a0ea375a60e80028392444646600200200844b300100189983b19bb037520086ea000d2f5bded8c113298009bae30740019bad3075001983c8012444b30013372001000713307a337606ea4020dd4003802c56600266e3c02000e2660f466ec0dd48041ba800700189983d19bb037520066ea0008cc01801800507520ea183b800a0ea911919800800801912cc004006297ae0899912cc004cdd7983c183a9baa307830753754608c60ea6ea8008c024cc1dcdd4802a5eb822660ee0046600800800313300400400141c860ec00260ee00283a244b30010018a40011301433002002307500141c93710900024444444444444444453001222232330010010052232598009839000c4cc160018dd71845809844009baa0028acc004c1c400626602c6eb0c22c04c22004dd5001119802002000c56600260ea00313301d37586116026110026ea80088cc0100100062b3001304d00189919b89375a611802002660326eb0c23004c234040048cc014014004c22004dd500145660026098003132332259800983a1845009baa0028acc004c1d0c22804dd5184700984780801c4cdc49bad308e01308b0137540040031337106eb4c23804c22c04dd5001000a110028a504220046118020026eb4c23004c22404dd50019844009baa3059308801375400b1598009825800c4c8cc896600260e86114026ea800a2b30013074308a013754611c02611e020071337120026eb4c23804c22c04dd500144cdc40009bad308e01308b01375400484400a2941088011846008009bad308c0130890137540066110026ea8c22c04c22004dd5002c4cc05c010c070cc22804c22c04c22004dd500125eb8108501210a0242140484280908501210a02308601375400330090099840009baa0129111191980080080291192cc004c1c8006264a6610e0266e59240121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660a26ea400522010013259800983a1844809baa001899194c004dd7184780800cdd7184780984800800cdd71847808012444a6611a029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308d013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660ae6ea4005220100153308d013372c9201187665726966795f65643235353139207061796c6f61643a20003732660ae6ea4009220100153308d013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660ae6ea400d22010013253308e013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660b13001001a60103d87a8000a60103d879800042340491010010019800800c00a006b950c23c04004dd61846809845009baa0018a998440099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660a46ea400922010014a0843808c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c611e020020091305e3308e01374e00297ae08998018019848008012112023758611c02002846008dd71845809844009baa0028acc004c1c4006264a6610e0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416c6c4f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301700123300500500137586116026110026ea800a2b300130750018992998438099b96490122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416e794f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301e00123300500500137586116026110026ea800a2b3001304d00189919912998448099b96490112436865636b696e672041744c656173743a20003732660a66ea000922010013253308a013372c92011941744c656173742073617469736669656420636f756e743a20003732660a86ea000522010013253308b013372c92011041744c6561737420726573756c743a20003732660ab3001001a60103d87a8000a60103d87980004228049101001001337120060026603600246600e00e0026eb4c23004004dd61846009846808009844009baa0028acc004c130006264a6610e0266e5924111436865636b696e67204265666f72653a20003732660a26ea0005220100132533088013372c92010f4265666f726520726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc49bad308e01308b0137540020071337106eb4c23804c22c04dd5000801a110028a50422004611a020026112026ea8c168c22404dd50031bad308b0130880137540051598009825800c4c94cc21c04cdcb24910436865636b696e672041667465723a20003732660a26ea0005220100132533088013372c92010e416674657220726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc48019bad308e01308b0137540031337100066eb4c23804c22c04dd5000a110028a50422004611a020026112026ea8c23004c22404dd50031bad308b013088013754005132533087013372c920111436865636b696e67205363726970743a20003732660a26ea4005220100132533088013372c92010f53637269707420726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c04910100100133018005301d3308b01375200297ae0375c6116026110026ea800908501210a0242140484280908501210a023086013754003300700798030034c0140164446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803210e02899802802984700802210e02375c610e020026eb4c22004004c2280400508801198070020018a400130020024888888888ca6002444b30013370e60180046010600e646600200200644b30010018a5eb8226612402611e026126020026600400461280200284880a2646600200200644b30010018a5eb8410100008101a0008101a00044c8c8c8cc896600260fe6128026ea800a264b3001300900189984c009ba8337006eb4c26404008dd69833984b009baa0013309801374c64b300130800130960137540031375660d000713756613402612e026ea800509401192cc004c20004c25804dd5000c530103d87a8000898349984c809ba698009bab30680039bae309a013097013754003005406897ae042500460ca612c026ea8004cc26004dd34c004dd598328014dd9984c80984d00802c01101925eb822a66128029211a6578706563742076616c69646174696f6e2872657175657374290016424c04613002612a026ea800a2a661260292012f65787065637420536f6d65287265717565737429203d206c6973742e61742874612c20726571756573745f696478290016424804660120100026600a00a612e020086eb4c25404004cc24c04c24004004cc24c04c244040052f5c061260200284880a2a66118029201886578706563740a202020206c6973742e6c656e67746828726571756573745f746f5f6f75747075747329203d3d206c6973742e6c656e677468280a2020202020206c6973742e756e69717565286c6973742e6d617028726571756573745f746f5f6f7574707574732c20666e286974656d29207b206974656d2e317374207d29292c0a20202020290016422c0522225980099b873022004302200389980e8021192cc004c1ecc24004dd5000c4c96600260f86122026ea800626644b3001308101309301375400313259800800c4c966002610002612a026ea800a264b300100184880c4c96600200313259800800c24c06264b30010018992cc00400612a0313259800800c4c966002003097018992cc004c2880400a330010078cc004016264b30013089010018992cc0040061340313259800800c26c061360309b018992cc004c2980400e01b09c01428c046eb400613602853008c28c040050a101184f809baa0048acc004c22004006264b300100184d00c4c96600200309b0184d80c26c06264b300130a601003806c270050a3011bad00184d80a14c0230a301001428404613e026ea80121320284e00909c01184e809baa00384c00a06e84c00a0c084c00a13e0230a0010014278046140020050960184b00c2580612c02850808c2780400509c01184f00801425006128030940184a00a13e02309c010014268046138020050920184900c248061240284e808c2680400509801184b009baa00284800a1260215980099baf30663095013754002613002612a026ea800e2b3001337126eb4c198c25404dd5001cc004dd59833184a809baa3066309501375400d375c61300200f375c60cc00e806a264b3001308001309501375400313370e6eb4c26404c25804dd50009bad3067309601375400913370e6eb4c26404c25804dd50009bad30673096013754008849808c190c25404dd5000c54cc24c05241666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400164248051533093014913865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001642480508f0184780c23c0611e0284d008c25c04c25004dd5000c54cc248052413365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d0016424404612a026124026ea8004c184c24804dd518319849009baa0038a9984800a4814765787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c206d61746368696e675f726571756573745f696478290016423c046600e00a6eb4c25004c24404dd5000c54cc23c0524016565787065637420536f6d65286d61746368696e675f726571756573745f69647829203d0a2020202020202020646963742e676574286d617070696e672c2063626f722e73657269616c69736528696e7075742e6f75747075745f7265666572656e6365292900164238046644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130693309901375000297ae0803212802899802802984d80802212802375c6128020026eb4c25404004c25c04005095011bb330930130900137540022980103d87a80008a9984680a4933657870656374206c6973742e6c656e67746828696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016423005222253308d0149012d5b76616c69646174655f6f7574707574735d205374617274696e67206f75747075742076616c69646174696f6e0015980099b87300600230220038994c004006900040110011112cc004006294626644a661240266e59241305b76616c69646174655f6f7574707574735d2056616c69646174696e67207265717565737420617420696e6465783a20003732660b86ea001122010013259800983f984a009baa0018992cc004c20004c25404dd5000c4c9660020030920184900c2480626464b300130830130980137540031325980099baf309d01309a013754002613a026134026ea8c27404c26804dd5004456600266ebcc1a4c26804dd50009835984d009baa309d01309a0137540111533098013372c92012d5b76616c69646174655f6f7574707574735d20436865636b696e67206f757470757420617420696e6465783a20003732660c46ea000d2201001533098013372c9201245b76616c69646174655f6f7574707574735d20457870656374656420616d6f756e743a20003732660c460d66134026ea80212201001533098013372c9201225b76616c69646174655f6f7574707574735d2041637475616c20616d6f756e743a20003732660c46ea260026eacc1acc26804dd5000cdd7184e808064dd71835806202448900159800803c4cdc3cc004dd59835984d009baa0019bae309d0100c9bae306b00c404864b300133710002900044c1c4006200284c008dd69835984d009baa0088a50425c0515330980149139657870656374206d61746368696e675f6f75747075742e646174756d203d3d20726571756573742e64657374696e6174696f6e2e646174756d0016425c051533098014913d657870656374206d61746368696e675f6f75747075742e61646472657373203d3d20726571756573742e64657374696e6174696f6e2e616464726573730016425c046138026132026ea80062a6612e0292014465787065637420536f6d65286d61746368696e675f6f757470757429203d206c6973742e6174286f7574707574732c206d61746368696e675f6f75747075745f6964782900164258046601c01a0026eb40061240284e008c26404c25804dd5000c54cc250052415b65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f6461746129203d0a202020202020202063626f722e646573657269616c697365286d61746368696e675f6f75747075745f6964785f6279746573290016424c0460646eb8c26004c25404dd5000c54cc24c0524013e65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f627974657329203d20646963742e66696e64286d617070696e672c2069290016424804646600200201044b30010018a60103d87a80008992cc004cdc38039bad309701001898349984c80984b00800a5eb8226600600661360200484a008c2640400509701184a80800cc00400e606a005309601001400c84980a2a6611a0292013265787065637420646963742e73697a65286d617070696e6729203d3d206c6973742e6c656e6774682872657175657374732900164230052223233225980099b87375a6128020020051325980099912cc004006294226530013259800984000984a809baa00189bad3096013099013756613202612c026ea8006290002126023098010019baf3098013099010019bab0024889660020031598009801002c4cdc4a400000714a084a80a264b30013375e61300200298010140008acc004cdc49bad309901309c01375661320200200913003374c613a0200514a084b00a2b300133712900000244c00c01a294109601212c02309b01001426404329800800c00e44661320200466132026e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c25c040066eacc260040066138020069112cc004cdc8a441000038acc004cdc7a4410000389980298369984e809ba60024bd70000c4cc015300103d87a800000642600519800803c006446600e0046613e0266ec0dd48029ba6004001401c84c00861340200484c00a294229422941099011bab3063002374c661280266ec0c25404004dd31984a0099bb0309501309601001375066e0400c0152f5bded8c097adef6c608801c54cc240052401c56578706563740a202020206173736574732e6d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a20202020290016423c046eb0c060c24404dd5003454cc23c052401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e740016423804b30013079300d0018a4001159800800c21806264b30013094010028acc004cdc79bae308f01001488104555344720089bad3090010018a9984700a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200164234050870142440461240200284800908c0119192cc004c1ecc24004dd5000c4c96600266ebcc25404c24804dd5184a809849009baa30633092013754002604c66128026ea400d2f5c1132598009840009849009baa0018992cc004006330010018992cc004c1fcc25004dd5000c4c96600266ebcc26404c25804dd5184c80984b009baa001302a3309801375200e97ae08992cc004c21004c25804dd5000c4c96600200319800800c4cc26804dd419b81375a6136026130026ea8004dd6984d80984c009baa0053309a01374c6530010019bab306a30990137540093233001001375660d66134026ea8c1acc26804dd5004912cc004006297adef6c608991984f0099bb0309b01001374c64660020026eacc27404008896600200314bd6f7b63044c8cc28404cdd8184f008009ba83075375a613e020026600600661460200461420200284f808cc00c00cc28004008c2780400509c012002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd3001a5eb7bdb1822653001375c614002003375661420200330a50100248896600266e4002000e26614c0266ec0dd48041ba60070058acc004cdc7804001c4c966002b30010018a518a5042980510028998538099bb037520126e980040090a201194c0040060110034004444b30010028800c4c8cc8a600200d30ae010059919800800802912cc00400626615c0266ec0dd48021ba80034bd6f7b63044ca60026eb8c2b0040066eb4c2b4040066162020049112cc004cdc8004001c4cc2c804cdd81ba9008375000e00b15980099b8f0080038992cc004c26c0400620051330b301337606ea4024dd4000801215c023370000e0051330b201337606ea400cdd400119803003000a15a0242b40430af0100142b4048030dd71853808009bad30a80100130aa0100242a0051330a601337606ea400cdd300119803003000a1420242840430a3010014284048030dd7184d808009bab309c01001309e0100242700497ae084880a04684880c244061220309101427404613402612e026ea80062a6612a0292012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642500460ca612c026ea80062a661280292013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016424c04613002612a026ea80062a661260292013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c20736372697074290016424804660bc6eb0c18cc25004dd500411983298301bab3066309501375400200d08c01407d08c0184600c230061180284c808c25804c24c04dd5000c54cc244052413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642400460c26124026ea8c18cc24804dd5000c54cc2400524014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016423c046128026122026ea8006297ae110100008101a000211c023305737586126026120026ea8010004dd71849009847809baa3019308f0137540086602e6eacc060c23804dd50011bae305f308e0137546030611c026ea800d222259800983c80644cc894cc23c052411f5b6d696e745d205374617274696e67206d696e742076616c69646174696f6e00159800cc004c25004c24404dd502bc0a660506122026ea81f66eacc074c24404dd503ea01a8a9984780a49205b6d696e745d207361746973666965645f7061796c6f61647320706173736564001323298009bab3096010019bab3096013097010019bad30960100248894cc25004cdcb24812f5b6d696e745d2070726f636573735f7265717565737473207061737365642c2073756d6d65645f616d6f756e743a20003732660bc6ea0005220100132533095013372c92011b5b6d696e745d206f726465725f696e7075747320636f756e743a20003732660be6ea0c0a8005220100159800cc0040060110049bac301e30970137540ba805a2a6612a0292011d5b6d696e745d2076616c69646174655f696e707574732070617373656400159800cc004dd61833184b809baa08301804400e661320260d0612e026ea8c084c25c04dd502e9984c80a601054455534472004bd7020148a9984a80a4811e5b6d696e745d2076616c69646174655f6f7574707574732070617373656400132533096013372c9201215b6d696e745d206d61696e7461696e5f747265617375727920726573756c743a20003732660c13001001a60103d87a8000a60103d879800042540491010010013370f300105d84180d200040240051533095014901816578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a202020202900164250051533095014917a6578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f726967696e5f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016425004660306eb0c26404c25804dd5041009bae306530960137546040612c026ea8170612c020033001002800c8c048dd698319849009baa0014019153308f014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164238046eb0c24804c23c04dd50101bab309201308f013754612402611e026ea81fa2b3001307800c8992cc006600260c26120026ea815a051302730900137540f9375660386120026ea81f100c44c8c9660033001330143758612a026124026ea81f8dd718309849009baa301c30920137540b10039bab3095010019984a0098319849009baa301c30920137540b066128029801054455534472004bd70200c8acc00660026eb0c184c24804dd503f400e6eacc25404c258040066eb0c064c24804dd502c200a899b87980082c41fa90002008375a612a020051533090014901796578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f75747075745f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016423c05153309001491826578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f726967696e5f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a20202020290016423c04612a0200330010019bab30930130900137546126026120026ea81fe466e20dd698311848809baa00148001005454cc23805241856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164234046eb0c24804c23c04dd5010456600260f801913259800cc004c17cc24004dd502b4dd6180e9848009baa07c98139848009baa07c9bab301c30900137540f8807a2b300130100018983d4c00415a0f90014009153308e014911a6578706563742077697468647261775f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501044c9660033001305f30900137540ad3758603a6120026ea81f2604e6120026ea81f26eacc070c24004dd503e201e8acc004c040006260f5300105683e4cdc1000a400280122a6611c02920119657870656374206465706f7369745f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501021180242300484600844b300133710002900045300103d87a8000899803801000a1120222a660da920113657870656374206e6f6e63655f726573756c74001641b0653001306e37540032323232332259800982f8014528456600260c40051980099baf30783075375400298103d87b8000a50a5141c913233225980098310014528c56600260c200513322598009831983c9baa304b307a375400d13371000400313371200400283b8dd6983d983c1baa003598009830983b9baa30493078375400f10018980d800a0ea8a5041d483a8c1d4dd50009bad30793076375400860f060ea6ea800507220e43072375400260ec60ee00660ea60e46ea8004c1d0004c1c0dd5000c888c8cc896600260be005159800982f983a1baa0018a6103d87a80008a6103d879800041c91598009831001456600260c460e86ea80062980103d87a80008a6103d87b800041c913322598009830800c530103d87b80008acc004c180006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041d483a8dd6983d183b9baa0038a6103d879800041d083a0dd6983c183a9baa00330743754002839107218391baa0013002003300100348896600260b80071325330713372c921215b7665726966795f6e6f6e63655d204c6f6f6b696e6720666f72206f7265663a200037326607600291010015330713372c9201215b7665726966795f6e6f6e63655d204e756d626572206f6620696e707574733a20003732660766ea0c018dd6183b18399baa05f48900133008375860ec60e66ea817c94cc1c8cdcb24811f5b7665726966795f6e6f6e63655d20436865636b696e6720696e7075743a200037326607860ee60e86ea80052201001325330733372c9201185b7665726966795f6e6f6e63655d204d6174636865733a200037326607b3001001a60103d87a8000a60103d879800041c891010010013375e60ee60e86ea8004008c1d4c1c8dd5002456600260b600713322598009802000c528c566002600800514a1159800cc004cdd7cc004c1dcc1d0dd50014c1dcc1d0dd5000c8c8c96600260c060ec6ea8c1e8c1ec00a2003132598009830800c4c030cc1e8dd4180d9bad307b3078375400497ae08acc004c1880062005100241d483a8c1d8dd5000a0e83079001307537540028019300103d87b8000a50a5141c51980099baf98009822983a1baa0029822983a1baa001919192cc004c180c1d8dd5183d183d80144006264b30013061001898061983d1ba8304c375a60f660f06ea80092f5c11598009831000c400a200483a9075183b1baa00141d060f200260ea6ea8005003260103d8798000a50a5141c514a0838907120e2307530723754008601260e46ea817a294106f20de181f98371baa009300300319198008009bac3038306937540b044b30010018a5eb822660d86e9cc8c8cc1b8c1bc008cc1b8c0ecc1b0dd5000998371ba9980091838183898389838800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004835906b1b8d001981f198372610b4a5369676e617475726531003306e306f306c375460de60d86ea8004cc1b93010140003306e303d306c37540b697ae048894cc1b4cdcb249165369675374727563747572652e636f6e746578743a200037326606e60e460de6ea8005220100153306d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e608060de6ea8005220100153306d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607c60de6ea8005220100153306d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e600660de6ea800522010013253306e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b88370dc68009bae3072306f375400266e28c008dd7182018379baa0013371460046eb8c0f8c1bcdd500098011bae3003306f37540024bd70183718378009bac306d00133002002306e00141ad22259800982a98351baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130700018acc004cdc4a400860de0030068992cc004c1d4012264b3001305c0018acc004c1c8dd50034026010839a2b3001305b0018992cc00400601313259800800c02a01500a8992cc004c1e400e01900b41d86eb400601483c8c1d800507418391baa0068acc004c17c0062b30013072375400d00980420e680420de41bc8378c1c0dd5002c01d072182c9837800a0da80320e23754003005802c01600a83a0c1c400506f1838801400e007003801a0e4306f00141b460d66ea800e002834122259800982a98351baa0068992cc0040060c113259800800c4c9660020030628992cc0040062b30013073002899912cc004c16c006264b300100183344c966002003067833c4c96600260f000713305b0012259800801401e264b30010018cc0040062600460f600706b403d06b835c1ae0d683e0c1e400907741a10751bac001833c19d078183a800a0e63071375400b159800982d000c4c9660020030668992cc0040060cf0678992cc004c1e000e2660b600244b3001002803c4c96600200319800800c4c008c1ec00e0d6807a0d706b835c1ad07c183c80120ee83420ea3758003067833a0f0307500141cc60e26ea80162b3001305e0018992cc0040060cd13259800800c19e0cf0678992cc004c1e000e00b06841d46eb40060ce83c0c1d400507318389baa0058acc004c0d8006264b300100183344c966002003067833c19e264b30013078003802c1a10751bad001833a0f0307500141cc60e26ea80160ca837106e20dc41b8264b3001305a0018992cc0040060cb13259800800c56600260ec005159800982e18389baa0018992cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c4c96600260f800700f83620f2375a00306b41f060f200283b8dd7000983c00120f2307600141d060e46ea80060cc837a0cc839a0cd0668334199077183a000a0e430703754005159800982c800c4c9660020030658992cc0040062b300130760028acc004c170c1c4dd5000c4c9660020030678992cc004006264b3001001834c4c966002003159800983d00146600200719800800c0360d480620d480620d483ba0d506a83541a907b183c000a0ec307800283441a20d106841e460ec00283a0c1c8dd5000c19906f4199073419a0cd06683320ee307400141c860e06ea800a2b3001305d0018992cc0040060cb13259800800c19a0cd06683344c96600260ee00700a833a0e8375c00283b8c1d000507218381baa00283220da41b48368c1b8dd500098371baa003831a0e0831c18e0c706341d060e20028378c1c400a0c3061830c1850721837800a0da306b375400d05f41a022259800982a18349baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130720028992cc004c164c1b8dd500244c9660020030078992cc004006264b3001001804c4c966002003159800983b80146600200713259800982f000c4c96600200300c8992cc0040062b3001307a0028992cc004c184006264b3001001807c4c966002003159800983e80146600200300b808202680820f4808404202101041f860f600283c8c1dcdd5001456600260c000313259800800c03e264b300100180840420211332259800800c04a264b3001001809c04e0271332259800800c056264b300100180b405a02d13259800984200801c04a02e840808dd6800c05908401184080800a0fe375a00261000200501342040460fc00283e0dd6800983e801404107e183d800a0f23077375400500e41d083a0c1d4dd5000c035077403601b00d806a0f6307800141d860e86ea800a2b3001305d0018acc004c1d0dd5001401a01683aa016838907118391baa001805201a80520e8805402a01500a41e060ea0028398c1d400a01100880440210761839800a0e2306f375400900641b0264b300130590018acc004c1bcdd5001401e00c83822b300130580018992cc00400600f13259800800c02201100880444c96600260ec00700a804a0e6375c00283b0c1cc00507118379baa0028acc004c170006264b3001001803c4c96600260ea00500980420e4307300141c460de6ea800a00c836106c20d8306d375400300541bd005802c01600a8398c1c000506e1838001400e007003801a0e2306e00141b060d46ea800e0028338888c96600260a800313259800800c00e264b300100180240120090048992cc004c1c400e00d00541b86eb80050711837000a0d8306a37540091598009829800c4c9660020030038992cc0040060090048024012264b30013071003803401506e1bae00141c460dc0028360c1a8dd5002400906720ce3068375400705a82d416a0b48358c1a0c194dd5000c54cc18d24014565787065637420536f6d65287369676e65645f7061796c6f61645f6461746129203d2063626f722e646573657269616c6973652872656465656d65722e7061796c6f6164290016418860026eb8c0d4c190dd50299192cc004c13c006298103d87a80008992cc006600260a06eb4c1980069429450634530103d87a80008981c198341832800a5eb810634c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d06548896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b810010034195001400c8310dc680098008009119800911191919bb032374e660d660d0002660d660d200297ae03376060ce00460ce00260d0003300100691000c012007375a60ce0028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130510018cc004012007002918051ba800140351598009828000c6600200900399b80002480fe460146ea0c0f0c0f800500d456600266e1c00920be0189919800800918059ba9001223300648008966002601c00313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014419d19800802400e66e00009207f918051ba9001401c832106420c88acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300d3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180719ba5003001404080810672cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014198833100d4566002605600315980099b87002482f80a33001004801ccc01801888006460146e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300b374e002806900d20c88acc004c0a80062b30013370e004907f0144c8c8cc0040048c030dd30009119803a40044b3001300f0018980125eb7bdb18224646530010069180319838801000cdd69837001200c323376060e200260e260e40026eb0c1b000660020130089807800a00a41a06600c00c4400519800802400e66e0000920bf02919194c0040060072300d374c00280088896600266e24009200089800a5eb7bdb18224646530010069821802c8c014cc1c80080066eb4c1bc0090061919bb0307200130723073001375860da003300100a804c00500520d23300700722002403483222497bdb181014000010120004190832106420c8337060029020111119198008008011119803240044b3001300a0018980125eb8224646530010069180319836001000cdd69834801200c30670019800804401e6014002803106311114c00401200700291980200091801800a012413505b1bae001417860b600282c8dd7000982d005a0b6305800a415904841586eb8005059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500240fd04940fd00e40fd00e40fd00e40fd00e40fd04d1bac00181f40f90501826800a096304d00281e40f207903c413860960028248c12c00a07503a81d40e904c1824800a08e304900281c40e20710384128608e0028228c11c00a06d03681b40d90481822800a086304500281a40d2069034411860860028208c0fcdd5002c0c903c111194c004006009003400444464b3001302f0018992cc00400600d13259800800c01e00f007803c4c96600260980070058042092375c0028260c12400504718229baa0038acc004c0b8006264b300100180344c966002003007803c4c966002609800713302f0012259800801401e264b30010018cc00402a00313002304f003402900b805c02e0168280c13400904b40210491bac001803c01d04c1824800a08e304537540071598009819000c4c9660020030068992cc00400600f0078992cc004c13000e26605e00244b3001002803c4c96600200319800805400626004609e006805201700b805c02d0501826801209680420923758003007803a0983049001411c608a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009827801c4cc0c8004896600200500a8992cc0040063300100d800c4c008c14800d00d403a01d00e80720a63050002413900b41306eb000601500a413c60980028250dd68009825801401d04c1824800a08e304537540071598009804800c4c9660020030068992cc00400600f007803c4c96600260980070058042092375a003007413060920028238c114dd5001c566002601000313259800800c01a264b3001001803c01e00f132598009826001c0160108248dd6800c01d04c1824800a08e3045375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009826001c0160108248dd7000a0983049001411c608a6ea800e00a821104220844108821104220843043375400481740ba05d02e4100601660746ea8c94cc0e4cdcb24812467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea40dd220100132598009813181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a200037326600a002910100132598009815981e9baa0018992cc0040062b30013029303e375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098240014401a0728228c1180050441bae0013045002411860860028208c0fcdd5000c0d103c40d206903481a20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec6018607a6ea8c038c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46600400206e6eb0c02cc0e8dd50131800800911980200111980598031bab300c303b3754601860766ea8004008888c9660020071323233223300b0023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420805980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d103a1bac303d002375a60760026466ec0dd4181d8009ba7303c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6080003337149101023a200098008054c10400600a805100a182180144ca6002015304000199b8a489023a200098008054c104006600e66008008004805100a182180120823043001410066e29220102207d0000340f46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039011207a3758007133007375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40fc66e2ccdc0000acc004cdc4000a402914818229037207e004401866e0c00520203370c002901019b8e00400240f06eb800d0401b8a4881022c200018048049802802a264b300100180e4072264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0cc00a2b30013019302e375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc00400604f027813c09e264b3001303a0038acc004c080c0d4dd500344c9660020030298992cc00400605502a81540aa26644b300100181644c96600200302d816c0b605b132598009820001c660020151301430400158172048817207a375c0028200c0f400503b1bae001303c00240f4607400281c0c0d8dd500340a103340a10371bae00140e8606e00281a8c0dc00a04b025812c095038181a800a0663035002811c08e04702340d860660028188c0bcdd5000c08502c40850304086043021810a068303100140bc6eb8004c0c00090311817000a058375800301c80e205e302c00240a91323259800800c06e03701b899912cc00400603b01d80ec4c8c018c0c001cdd6800c0750301bad001302900280da05c3027001302a00240a101740986eac00602d01680b20523026001409060446ea801e02880fa0288118dd6000c04e0268130c08c0050211bae0013022002408c604000280f0c08000a01d00e8074039021180f000a038301a375401300c405c44464b300130060018992cc00400600713259800800c01200900480244c9660026046007006802a040375c0028118c08000501e180e1baa0048acc004c0140062b3001301c3754009003801203a8012032406460346ea800c88c8cc00400400c88cc00c004c008008dc3a40006e1d20028044022011008406c6030602a6ea800e2c80906028002601e6ea8056293454cc0352411856616c696461746f722072657475726e65642066616c7365001365640301\"\n :\n \"592497010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a40052232330010010032233003001300200248888c9660026008601c6ea802626464646644b300130180038992cc004c028c050dd5000c4c96600260340031330093756603200244b3001002899805803112cc00400a330012259800800c52f5c113301e301b301f0013300200230200014075374a900048c078c07c00644646600200200644b30010018a508acc004cdc79bae30210010038a518998010011811000a038407d2301e301f301f0019b874801a6e1d20089b8748029222222223322332232332259800980f18141baa00289919191919194c004dd61819000cc0c8016606400930320039819001244444b30013038006899806181b8058998060020998060018998060010acc004c0a4c0ccdd5000c4c8c8ca60026eb8c0e80066eb8c0e800e6eb8c0e800922259800981f00244c8cc896600260820071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc7244103020408003370000490189180119bca4a2003124bded8c10140000101200040fc81f903f4dc024003370e907f01cdc02400522337600046ea00066e052000488888a600244444653001001801c0090011112cc004cdc480124001130014bd70448c8ca600200d30100059180299828801000cdd69827001200c304c0019800804c022002803904948888c8cc00400400888cc01920022598009805800c4c0092f5c1123232980080348c018cc1400080066eb4c1340090061825800cc00402200f300b0014018824244453001004801c00a4660080024600600280512223232323259800981f98249baa00189919914c00489660026088609c6ea800a26464646644b30013058003899804982b802899823001003459055182a8009bad305500230550013054001304f37540051641351980099198008009bac3030304e375409044b30010018a5eb822660a26e9cc8c8cc14cc150008cc14cc0ccc144dd5000998299ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002414c8298dc68009bae30563053375400266e28c008dd7181b98299baa0013371460046eb8c0d4c14cdd500098011bae305630573057305730533754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241448288dc6800981b19829a610b4a5369676e617475726531003305330543051375460a860a26ea8004cc14d3010140003305330353051375409697ae04bd701829982a0009bac30520013300200230530014141230513052305230523052305230523052001911919800800801912cc00400629422b3001300330540018a51899801001182a800a09e4149374a900124444b300132980098289baa001919191919912cc004c13400a29422b300130500028cc004cdd7982d982c1baa0014c103d87b8000a50a51415913233225980098280014528c566002609e00513322598009828982e1baa3041305d375400d13371000400313371200400282d8dd6982f182d9baa003598009827982d1baa303f305b375400f10018980d800a0b28a50416482c8c160dd50009bad305c3059375400860b660b06ea800505620ac3055375400260b260b400660b060aa6ea8004c15c004c14cdd5000c888c8cc8966002609a0051598009826982b9baa0018a6103d87a80008a6103d879800041591598009828001456600260a060ae6ea80062980103d87a80008a6103d87b8000415913322598009827800c530103d87b80008acc004c138006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000416482c8dd6982e982d1baa0038a6103d8798000416082c0dd6982d982c1baa0033057375400282b1056182a9baa00130020033001003488966002609400713233007375860b260ac6ea81348cdd7982d182b9baa0010023058305537540091598009824801c4cc8966002600800314a315980098020014528456600330013375f3001305a30573754005305a3057375400323232598009827182c9baa305d305e0028800c4c966002609e0031300b3305d375060366eb4c178c16cdd500125eb822b3001305000188014400905920b23059375400282c0c170004c160dd5000a0064c0103d87b8000a50a5141551980099baf9800981d982b9baa002981d982b9baa001919192cc004c138c164dd5182e982f00144006264b3001304f001898059982e9ba8301d375a60bc60b66ea80092f5c11598009828000c400a200482c9059182c9baa001416060b800260b06ea8005003260103d8798000a50a51415514a082a905520aa305830553754008600e60aa6ea8132294105320a6181a98289baa0058cc004c150c144dd5002c88c8cc00400400c896600200314800226644b300130050028980b800c4005055182c00099801001182c800a0ac911919800800801912cc00400629422b30013375e00660a860b000314a31330020023059001414c82b244646600200200644b30010018a518acc004c00cc16000626600400460b200314a0829905648c154c158c158c158c158c158c158c158c158006460aa60ac60ac60ac60ac60ac60ac0032259800982418291baa002899192cc004c16400a0071641586eb4c15c004c14cdd500145905148c154c158c158c158c1580064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320ae899802802982e80220ae375c60ac0026eacc15c004c1640050570a5eb7bdb18244b30010018a400113013330020023057001415123055305630563056305630560019112cc00400a2980103d87a80008acc004c12400626072660ac60ae00497ae08cc00400e60b00053016001400c829105548966002003148002260266600400460ae00282a244b30010018a5eb82264660ac6ea0004cc00c00cc8cc004004c16400c896600200314bd7044cc896600330013370e00400b4a14a282b22660b46ea0008cc01001000626600800800282b0dd6982c800982d000a0ae375a60ac00282a2444646600200200844b300100189982c19bb037520086ea000d2f5bded8c113298009bae30560019bad3057001982d8012444b30013372001000713305c337606ea4020dd4003802c56600266e3c02000e2660b866ec0dd48041ba800700189982e19bb037520066ea0008cc01801800505820b0182c800a0ae911919800800801912cc004006297ae0899912cc004cdd7982d182b9baa305a30573754607660ae6ea8008c01ccc164dd4802a5eb822660b200466008008003133004004001415460b000260b200282b244b30010018a40011301333002002305700141512259800800c520008980999801001182b800a0a89b8848001222222222222222222298009111191980080080291192cc004c18000626609c00c6eb8c1b8c1acdd5001456600260be003133017375860dc60d66ea80088cc0100100062b3001306300189980e1bac306e306b37540044660080080031598009826000c4c8cdc49bad306f0013301a375860de60e000246600a00a00260d66ea800a2b3001304b00189919912cc004c188c1b4dd5001456600260c460da6ea8c1c4c1c800e266e24dd6983898371baa002001899b88375a60e260dc6ea800800506c452820d8306f001375a60de60d86ea800cc1acdd5182798359baa0058acc004c1280062646644b30013062306d3754005159800983118369baa30713072003899b89001375a60e260dc6ea800a266e20004dd6983898371baa00241b114a08360c1bc004dd6983798361baa003306b375460dc60d66ea80162660300086036660da60dc60d66ea80092f5c0834906920d241a4834906918349baa00198050054c18cdd5009c8888c8cc00400401488c96600260c00031323259800983118361baa001899194c004dd718390014dd718391839800cdd71839000ae5460e40026eb0c1c0c1b4dd5000c52820d632330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60e40020091305433071374e00297ae0899801801983980120da375860e20028378dd7183718359baa0028acc004c17c00626602e6eb0c1b8c1acdd5001119802002000c56600260c600313301c375860dc60d66ea80088cc0100100062b3001304c00189919b89375a60de002660346eb0c1bcc1c00048cc014014004c1acdd500145660026096003132332259800983118369baa0028acc004c188c1b4dd518389839001c4cdc49bad3071306e37540040031337106eb4c1c4c1b8dd5001000a0d88a5041b060de0026eb4c1bcc1b0dd500198359baa304f306b375400b1598009825000c4c8cc896600260c460da6ea800a2b30013062306d375460e260e40071337120026eb4c1c4c1b8dd500144cdc40009bad3071306e37540048362294106c18378009bad306f306c375400660d66ea8c1b8c1acdd5002c4cc060010c06ccc1b4c1b8c1acdd500125eb8106920d241a4834906920d23069375400330080089803803cc01801a6006007222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906b44cc014014c1c401106b1bae306a001375a60d600260da0028358cc03c01000c520009801001244444444446530012225980099b87300d0023009300832330010010032259800800c52f5c11330763073307700133002002307800141d5132330010010032259800800c52f5c30100008101a0008101a00044c8c8c8cc896600260dc60f06ea800a264b3001300900189983e1ba8337006eb4c1f4008dd6982f183d1baa0013307c374c64b3001306f307a37540031375660be0071375660fc60f66ea8005079192cc004c1bcc1e8dd5000c530103d87a8000898301983e9ba698009bab305f0039bae307e307b3754003005407097ae041e460b860f46ea8004cc1f0dd34c004dd5982e0014dd9983e983f002c01101b25eb822c83c0c1f0c1e4dd50014590771980480400099802802983d8021bad30790013307730740013307730750014bd70183b800a0ea8b20e091112cc004cdc398040021804001c4cc07c0108c96600260d460e86ea8006264b3001306b3075375400313322598009838183b9baa001899192cc004c1bcc1e4dd500144c8c8c8ca60026102020033081010039840808012444b300130850100489982c98420080389981b0010992cc004c1dc00626464b3001308801002805c59085011bad3086010013082013754005159800983b000c4c8c96600261100200500b8b210a02375a610c020026104026ea800a2c840009080011840009baa0018b210402184080800984000800983f800983d1baa0028b20f015980099baf305d3079375400260f860f26ea800e2b3001337126eb4c174c1e4dd5001cc004dd5982e983c9baa305d3079375400d375c60f800f375c60ba00e806a264b3001306f3079375400313370e6eb4c1f4c1e8dd50009bad305e307a375400913370e6eb4c1f4c1e8dd50009bad305e307a375400883c0c16cc1e4dd5000c59077459077183d983c1baa0018b20ec30793076375400260b060ec6ea8c168c1d8dd5001c59074198038029bad3078307537540031641cc6644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130603307d375000297ae080320f2899802802983f80220f2375c60f00026eb4c1e4004c1ec0050791bb3307730743754002298103d87a80008b20e291112cc004cdc398030011804001c4ca60020034800200880088896600200314a313322598009836983b9baa0018992cc004c1b8c1e0dd5000c4c96600260de60f26ea8006264b30013375e60fc60f66ea8004c1f8c1ecdd5183f183d9baa0058acc004cdd7982e983d9baa001305f307b375460fc60f66ea80162b300198008044c0ec01e60fe00c8042266e1e60026eacc17cc1ecdd5000cdd7183f004cdd7182f804a01e325980099b880014800226074003100141e86eb4c17cc1ecdd5002c52820f28b20f28b20f2307d307a37540031641e0660160146eb4c1f0c1e4dd5000c5907718181bae307b307837540031641d860f2002646600200200c44b30010018a60103d87a80008992cc004cdc38029bad30790018982f1983d983c000a5eb8226600600660fa00483b8c1ec00507920ee8b20e29111919912cc004cdc39bad30780010028992cc004cc896600200314a11329800992cc004c1bcc1e4dd5000c4dd6983d183e9bab307d307a3754003148001078183e000cdd7983e183e800cdd58012444b30010018acc004c008016266e2520000038a5041e91325980099baf307c0014c010140008acc004cdc49bad307d308001375660fa00200913003374c61020200514a083da2b300133712900000244c00c01a294107b20f6307f00141f4329800800c00e44660fa004660fa6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1ec0066eacc1f00066100020069112cc004cdc8a441000038acc004cdc7a44100003899802983219840809ba60024bd70000c4cc015300103d87a800000641f519800803c006446600e004661060266ec0dd48029ba6004001401c83e860fc00483e229422942294107d1bab305a002374c660f066ec0c1e4004dd31983c19bb03079307a001375066e0400c0152f5bded8c097adef6c608801c590741bac301a3075375400d1641ccb30013068300e0018a4001159800983b800c4c96600266e3cdd71839800a44104555344720089bad30740018b20e430760018b20e841c46464b3001306a307437540031325980099baf30793076375460f260ec6ea8c168c1d8dd500098131983c1ba90034bd7044c96600260de60ec6ea800626466042002264b3001306e307837540031325980099baf307d307a375460fa60f46ea8004c0a8cc1f0dd4803a5eb82264b30013073307a37540031323302500113307e375066e04dd6983f983e1baa001375a60fe60f86ea8014cc1f8dd3194c0040066eacc184c1f4dd50024c8cc004004dd59831183f1baa3062307e375401244b30010018a5eb7bdb182264661040266ec0c1fc004dd319198008009bab3081010022259800800c52f5bded8c11323308501337606104020026ea0c104dd698418080099801801984380801184280800a1060233003003308401002308201001420004800888966002005100189919914c00401a610c0200b32330010010052259800800c4cc21804cdd81ba9004374c00697adef6c608994c004dd7184200800cdd5984280800cc224040092225980099b900080038998450099bb037520106e9801c0162b30013371e01000713259800acc0040062946294108a014400a2661160266ec0dd48049ba6001002421c04653001001804400d0011112cc00400a2003132332298008034c24804016646600200200a44b30010018998490099bb037520086ea000d2f5bded8c113298009bae3090010019bad309101001984a808012444b30013372001000713309601337606ea4020dd4003802c56600266e3c02000e264b3001308a01001880144cc25c04cdd81ba90093750002004849808cdc000380144cc25804cdd81ba900337500046600c00c002849009092010c24c0400509101200c375c6116020026eb4c23004004c2380400908c0144cc22804cdd81ba9003374c0046600c00c002843009086010c21c0400508501200c375c60fe0026eacc20004004c208040090800125eb80c1f8c1ecdd5000c59079182e183d1baa0018b20f0307c307937540031641dc660a66eb0c168c1e0dd500411982e182a9bab305d3079375400200c60f460ee6ea80062c83a8c160c1d8dd5182d183b1baa0018b20e830783075375400314bd7090100008101a00020e63304e375860ee60e86ea8010004dd7183b18399baa301b30733754008660326eacc068c1c8dd50011bae305630723754603460e46ea800d2222598009834006c4c966003300130773074375409b0279813183a1baa06b9bab301e307437540d6806a26464b300198009980b1bac3079307637540da6eb8c160c1d8dd5180f183b1baa04f801cdd5983c800cdd6180d983b1baa04f4019159800cc004dd6182c183b1baa06d801cdd5983c983d000ccc1e0c168c1d8dd5180f183b1baa04f330784c1054455534472004bd70200a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba460246eb4c164c1d4dd5000a00a8b20e4375860ec60e66ea808a2b3001306700d8992cc006600260b060e86ea813604f3026307437540d73756603c60e86ea81ad00d44c8c966003300133016375860f260ec6ea81b4dd7182c183b1baa301e3076375409f0039bab30790019983c182d183b1baa301e3076375409e660f0981054455534472004bd70200c8acc00660026eb0c160c1d8dd5036c00e6eacc1e4c1e80066eb0c06cc1d8dd5027a00a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba466e20dd6982c983a9baa001480010054590721bac3076307337540451598009835806c4c966003300130563074375409b3758603e60e86ea81ae604c60e86ea81ae6eacc078c1d0dd5035a0208acc004c044006260d3300104d835c0050024590724590721bad30763073375404513259800cc004c158c1d0dd5026cdd6180f983a1baa06b9813183a1baa06b9bab301e307437540d680822b3001301100189834cc0041360d7337040029000a0048b20e48b20e4375a60ec60e66ea808907120e241c4225980099b8800148002298103d87a8000899804001000a0dc22c82792259800982218271baa00289919192cc004c15800a26464b300130490018acc004c150dd5001401a2c82aa2b30013048001899192cc004c16800a01116415c6eb4c160004c150dd500145660026098003159800982a1baa00280345905545905220a4414860a46ea8004c15400e2c8298c96600260a400315980099b8948010c1440062d130463051001414116414c6ea8c150004c150004c13cdd500145904d2444b30013045304f3754009132323259800982b80144c8cc8966002609600513259800982d800c4cc128dd6182d000912cc00400a00913300c305c00213001305d002416916416060ac6ea800e2b3001304a0028992cc004c16c0062660946eb0c1680048966002005004899806182e00109800982e80120b48b20b030563754007159800982700144c8c96600260b80050038b20b2375a60b400260ac6ea800e2b30013037002899192cc004c17000a0071641646eb4c168004c158dd5001c5905420a8415082a0c14cdd50008992cc004c128006264b3001305a0018992cc004c130c158dd5000c4c8c8cc896600260be00700d8b20b8375a60b80026eb8c170008c170004c15cdd5000c59055182c800c59057182a9baa0038acc004c124006264b3001305a0018992cc004c130c158dd5000c4c8c8c96600260bc00513300b305d00313300b00100c8b20b6305c001305c0013057375400316415460b200316415c60aa6ea800e2b3001304d001899192cc004c16c00a0131641606eb8c164004c154dd5001c5905320a6414c60a66ea8008c15800e2c82a0c154004c154004c140dd500245904e08966002608460986ea800a2646464b30013054002899912cc004c11cc144dd500144c8c8c96600260b200513300b3058003132598009825800c4c96600260b600313232598009827000c4c96600260bc003133010305d0010098b20b6305937540051598009826800c4c8c8ca60026eb4c17c0066eb4c17c00e6eb4c17c009222598009831802403a2c830060be00260bc00260b26ea800a2c82b9057182b9baa001305a0018b20b0305637540051598009825000c56600260ac6ea800a00b16415d16415082a0c150dd5000c59056182b800982b80098291baa0028b20a03053003132598009823000c56600260a26ea800a00b1641491598009822800c4c8c96600260ae0050078b20a8375c60aa00260a26ea800a2b30013049001899192cc004c15c00a00f16415060aa00260a26ea800a2c827904f209e304f375400316414460a400260a4002609a6ea800a2c8258c138c12cdd500111192cc004c10800626464b300130530028024590501bae3051001304d37540071598009820800c4c8c96600260a60050048b20a0375c60a2002609a6ea800e2c825904b18259baa0028b20903001375c605a60926ea810c8c966002607e00314c103d87a80008992cc006600260806eb4c12c0069429450494530103d87a800089818198269825000a5eb810494c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d04b48896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b81001003412d001400c8240dc680098008009119800911191919bb032374e660a0609a002660a0609c00297ae03376060980046098002609a003300100691000c012007375a60980028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130410018cc004012007002918061ba8001403d1598009820000c6600200900399b80002480fe460186ea0c03cc02c00500f456600266e1c00920be0189919800800918069ba9001223300648008966002602000313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014413519800802400e66e00009207f918061ba9001401c825104a20948acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300f3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180819ba50030014034809104d2cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014130826100f4566002605800315980099b87002482f80a33001004801ccc01801888006460186e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300d374e002805100f20948acc004c0ac0062b30013370e004907f0144c8c8cc0040048c038dd30009119803a40044b300130110018980125eb7bdb1822464653001006918031982b001000cdd69829801200c323376060ac00260ac60ae0026eb0c14400660020130089808800a00a41386600c00c4400519800802400e66e0000920bf02919194c0040060072300f374c00280088896600266e24009200089800a5eb7bdb1822464653001006980b002c8c014cc15c0080066eb4c1500090061919bb0305700130573058001375860a4003300100a804c005005209e3300700722002403c82522497bdb181014000010120004128825104a209433706002902011640f86eb8c0f8004dd7181f006181f005c5903b0c0e8004c0e4004c0d0dd5000c590324590350c0c8004c0c4004c0c0004c0bc004c0b8004c0a4dd5001459027180598139baa3259800980e98139baa0018992cc004c084c0a0dd5000c4c966002603e60526ea8006264646644b300130320038802c5902f18178009bae302f002302f001302a37540031640a0605860526ea80062c8138c028c0a0dd5180618141baa302b30283754003164098660026eb0c02cc09cdd500f0121802002111980180111980618029bab300d30293754601a60526ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c0100062601c6605600297ae08998018019816801204e302b00140a4601001044464b3001301b001899192cc004c0b000a0091640a46eb8c0a8004c098dd5001c5660026034003132598009815800c4cc068dd61815000912cc00400a00b19800803cc0b000a26002605a004803902a45902818131baa0038acc004c078006264b3001302b00189980d1bac302a0012259800801401633001007981600144c004c0b400900720548b2050302637540071598009803800c4c8cc8966002605a00313301c3758605800244b3001002803c66002013302e002898009817801201240b11640a86eb4c0a8004c0ac004c098dd5001c566002600c0031323259800981600140122c8148dd6981500098131baa0038acc004c01400626464b3001302c0028024590291bad302a0013026375400715980099b874803000626464b3001302c0028024590291bae302a00130263754007164090812102420484090812102418121baa00244c8cc89660026042003132598009809980e9baa0018991919192cc004c09800a264b3001301830223754003132323322598009815801c4cc064c0a80204c038c0ac03e2c8140dd718140009bae3028002302800130233754003164084604a00916408c6eb8c090004c090004c08c004c078dd5000c5901c1810000c5901e1bae301e001301f0013758603a00480da26466446008603e00a6eb4c060004dd6980c800980d80120328b202e3015375400316404c602e00b1640546eb0c054004dd7180a801180a800980a00098079baa0098b201a2232598009803000c4c8c966002602e0050048b2028375c602a00260226ea800e2b300130050018acc004c044dd5001c00a2c80922c807900f18079baa0024590080c024004c010dd5005452689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_3ProtocolProtocolElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5948aa010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013a657870656374206d61746368696e675f6f75747075745f6964783a20496e74203d206d61746368696e675f6f75747075745f6964785f6461746100168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a494c657870656374207369676e65645f7061796c6f61643a205369676e65645061796c6f61643c50726f746f636f6c52656465656d65723e203d207369676e65645f7061796c6f61645f6461746100168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888966002646530013014001980a180a800cdc3a400930140024888966002600460286ea800e264b30010058999119912cc004c010c064dd5004c4c96600200300d8992cc004006264b3001001807c4c96600200301080840420211332259800800c04a264b3001001809c04e264b300130260038acc004c030c084dd5003c4c9660020030158992cc00400602d132598009814801c4cc030004896600200513300e0062259800801466002444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c814a6e05200091111919800800802912cc004006200b13259800800c4cc010c0cc00801a26600a6066004660060060028188c0cc0050304dc0240032259800800c52f5c113302d302a302e00133002002302f00140b1374a900048c0b4c0b800644646600200200644b30010018a508acc004cdc79bae30300010038a518998010011818800a05440b92302d302e302e0014888888888cc8a600244646600200200644b30013022001899b8a4890130000038acc004cdc4000a40011337149101012d0033002002300e00189980319b8400148050cdc599b803370a002900a240c000681a903548c00800644646600200200644b30010018a6103d87a80008992cc004c010006260166607600297ae0899801801981e801206c303b00140e4911191991192cc00400633001370e90034dc3a4011370e9005244464b30013029303e375400b13259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c0fa07d132598009828001c6600201919800805466002011198008034566002606c60966ea8012264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4c96600260b20071598008054122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260bc0071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc724503020408003370000490189180119bca4a2003124bded8c101400001012000416c82d905b488888ca600200300380120022225980099b89002480022600297ae08919194c00401a607200b23005330680020019bad3065002401860c60033001009804400500720be9b87483f80e6e0120029119bb00023750002911111991191919192cc004c13cc190dd5000c4c9660020031323298009112cc004c154c1a8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800983b00146600200d19800800c02601082d2010805a010839a0110088044021077183a000a0e4375a00260e600500541d060e20028378c1c400a007003801c00d0721837800a0da306b375400700141a11325330673372c9211c5b70726f746f636f6c5d20566572696679696e67206e6f6e63653a2000373266062607460d26ea801122010019800918369837183718371837183718371837000c89660020031480022601c6600400460de002836244646600200200644b30010018a508acc004c00cc1c0006294626600400460e2002835106e4dd2a40049111191929983699b964901205b70726f746f636f6c5d207665726966795f6e6f6e636520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041b0910100159800800c6600260e460de6ea802a44646600200200644b30010018a40011332259800980280144c06000620028390c1d8004cc008008c1dc005074488c8cc00400400c896600200314a115980099baf003307230760018a51899801001183b800a0e041d12232330010010032259800800c528c566002600660ec00313300200230770018a5041c083a2460e660e860e860e860e860e860e860e860e8003230733074307430743074307430740019112cc004c170c1c4dd5001c4c9660020030028992cc004006007003801c4c96600260f200700580220ec375a00300341e460ec00283a0c1c8dd5001c00506f48c1ccc1d0c1d0c1d0c1d00064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e8899802802983d80220e8375c60e80026eacc1d4004c1dc0050750a5eb7bdb18244b30010018a40011301433002002307500141c923073307430743074307430740019112cc00400a298103d87a80008acc004c17000626088660e860ea00497ae08cc00400e60ec0053046001400c837907348966002003148002260286600400460ea002839244b30010018a5eb82264660e86ea0004cc00c00cc8cc004004c1dc00c896600200314bd7044cc896600330013370e00400b4a14a2839a2660f06ea0008cc0100100062660080080028398dd6983b800983c000a0ea375a60e80028392444646600200200844b300100189983b19bb037520086ea000d2f5bded8c113298009bae30740019bad3075001983c8012444b30013372001000713307a337606ea4020dd4003802c56600266e3c02000e2660f466ec0dd48041ba800700189983d19bb037520066ea0008cc01801800507520ea183b800a0ea911919800800801912cc004006297ae0899912cc004cdd7983c183a9baa307830753754608c60ea6ea8008c024cc1dcdd4802a5eb822660ee0046600800800313300400400141c860ec00260ee00283a244b30010018a40011301433002002307500141c93710900024444444444444444453001222232330010010052232598009839000c4cc160018dd71845809844009baa0028acc004c1c400626602c6eb0c22c04c22004dd5001119802002000c56600260ea00313301d37586116026110026ea80088cc0100100062b3001304d00189919b89375a611802002660326eb0c23004c234040048cc014014004c22004dd500145660026098003132332259800983a1845009baa0028acc004c1d0c22804dd5184700984780801c4cdc49bad308e01308b0137540040031337106eb4c23804c22c04dd5001000a110028a504220046118020026eb4c23004c22404dd50019844009baa3059308801375400b1598009825800c4c8cc896600260e86114026ea800a2b30013074308a013754611c02611e020071337120026eb4c23804c22c04dd500144cdc40009bad308e01308b01375400484400a2941088011846008009bad308c0130890137540066110026ea8c22c04c22004dd5002c4cc05c010c070cc22804c22c04c22004dd500125eb8108501210a0242140484280908501210a02308601375400330090099840009baa0129111191980080080291192cc004c1c8006264a6610e0266e59240121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660a26ea400522010013259800983a1844809baa001899194c004dd7184780800cdd7184780984800800cdd71847808012444a6611a029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308d013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660ae6ea4005220100153308d013372c9201187665726966795f65643235353139207061796c6f61643a20003732660ae6ea4009220100153308d013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660ae6ea400d22010013253308e013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660b13001001a60103d87a8000a60103d879800042340491010010019800800c00a006b950c23c04004dd61846809845009baa0018a998440099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660a46ea400922010014a0843808c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c611e020020091305e3308e01374e00297ae08998018019848008012112023758611c02002846008dd71845809844009baa0028acc004c1c4006264a6610e0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416c6c4f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301700123300500500137586116026110026ea800a2b300130750018992998438099b96490122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416e794f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301e00123300500500137586116026110026ea800a2b3001304d00189919912998448099b96490112436865636b696e672041744c656173743a20003732660a66ea000922010013253308a013372c92011941744c656173742073617469736669656420636f756e743a20003732660a86ea000522010013253308b013372c92011041744c6561737420726573756c743a20003732660ab3001001a60103d87a8000a60103d87980004228049101001001337120060026603600246600e00e0026eb4c23004004dd61846009846808009844009baa0028acc004c130006264a6610e0266e5924111436865636b696e67204265666f72653a20003732660a26ea0005220100132533088013372c92010f4265666f726520726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc49bad308e01308b0137540020071337106eb4c23804c22c04dd5000801a110028a50422004611a020026112026ea8c168c22404dd50031bad308b0130880137540051598009825800c4c94cc21c04cdcb24910436865636b696e672041667465723a20003732660a26ea0005220100132533088013372c92010e416674657220726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc48019bad308e01308b0137540031337100066eb4c23804c22c04dd5000a110028a50422004611a020026112026ea8c23004c22404dd50031bad308b013088013754005132533087013372c920111436865636b696e67205363726970743a20003732660a26ea4005220100132533088013372c92010f53637269707420726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c04910100100133018005301d3308b01375200297ae0375c6116026110026ea800908501210a0242140484280908501210a023086013754003300700798030034c0140164446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803210e02899802802984700802210e02375c610e020026eb4c22004004c2280400508801198070020018a400130020024888888888ca6002444b30013370e60180046010600e646600200200644b30010018a5eb8226612402611e026126020026600400461280200284880a2646600200200644b30010018a5eb8410100008101a0008101a00044c8c8c8cc896600260fe6128026ea800a264b3001300900189984c009ba8337006eb4c26404008dd69833984b009baa0013309801374c64b300130800130960137540031375660d000713756613402612e026ea800509401192cc004c20004c25804dd5000c530103d87a8000898349984c809ba698009bab30680039bae309a013097013754003005406897ae042500460ca612c026ea8004cc26004dd34c004dd598328014dd9984c80984d00802c01101925eb822a66128029211a6578706563742076616c69646174696f6e2872657175657374290016424c04613002612a026ea800a2a661260292012f65787065637420536f6d65287265717565737429203d206c6973742e61742874612c20726571756573745f696478290016424804660120100026600a00a612e020086eb4c25404004cc24c04c24004004cc24c04c244040052f5c061260200284880a2a66118029201886578706563740a202020206c6973742e6c656e67746828726571756573745f746f5f6f75747075747329203d3d206c6973742e6c656e677468280a2020202020206c6973742e756e69717565286c6973742e6d617028726571756573745f746f5f6f7574707574732c20666e286974656d29207b206974656d2e317374207d29292c0a20202020290016422c0522225980099b873022004302200389980e8021192cc004c1ecc24004dd5000c4c96600260f86122026ea800626644b3001308101309301375400313259800800c4c966002610002612a026ea800a264b300100184880c4c96600200313259800800c24c06264b30010018992cc00400612a0313259800800c4c966002003097018992cc004c2880400a330010078cc004016264b30013089010018992cc0040061340313259800800c26c061360309b018992cc004c2980400e01b09c01428c046eb400613602853008c28c040050a101184f809baa0048acc004c22004006264b300100184d00c4c96600200309b0184d80c26c06264b300130a601003806c270050a3011bad00184d80a14c0230a301001428404613e026ea80121320284e00909c01184e809baa00384c00a06e84c00a0c084c00a13e0230a0010014278046140020050960184b00c2580612c02850808c2780400509c01184f00801425006128030940184a00a13e02309c010014268046138020050920184900c248061240284e808c2680400509801184b009baa00284800a1260215980099baf30663095013754002613002612a026ea800e2b3001337126eb4c198c25404dd5001cc004dd59833184a809baa3066309501375400d375c61300200f375c60cc00e806a264b3001308001309501375400313370e6eb4c26404c25804dd50009bad3067309601375400913370e6eb4c26404c25804dd50009bad30673096013754008849808c190c25404dd5000c54cc24c05241666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400164248051533093014913865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001642480508f0184780c23c0611e0284d008c25c04c25004dd5000c54cc248052413365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d0016424404612a026124026ea8004c184c24804dd518319849009baa0038a9984800a4814765787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c206d61746368696e675f726571756573745f696478290016423c046600e00a6eb4c25004c24404dd5000c54cc23c0524016565787065637420536f6d65286d61746368696e675f726571756573745f69647829203d0a2020202020202020646963742e676574286d617070696e672c2063626f722e73657269616c69736528696e7075742e6f75747075745f7265666572656e6365292900164238046644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130693309901375000297ae0803212802899802802984d80802212802375c6128020026eb4c25404004c25c04005095011bb330930130900137540022980103d87a80008a9984680a4933657870656374206c6973742e6c656e67746828696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016423005222253308d0149012d5b76616c69646174655f6f7574707574735d205374617274696e67206f75747075742076616c69646174696f6e0015980099b87300600230220038994c004006900040110011112cc004006294626644a661240266e59241305b76616c69646174655f6f7574707574735d2056616c69646174696e67207265717565737420617420696e6465783a20003732660b86ea001122010013259800983f984a009baa0018992cc004c20004c25404dd5000c4c9660020030920184900c2480626464b300130830130980137540031325980099baf309d01309a013754002613a026134026ea8c27404c26804dd5004456600266ebcc1a4c26804dd50009835984d009baa309d01309a0137540111533098013372c92012d5b76616c69646174655f6f7574707574735d20436865636b696e67206f757470757420617420696e6465783a20003732660c46ea000d2201001533098013372c9201245b76616c69646174655f6f7574707574735d20457870656374656420616d6f756e743a20003732660c460d66134026ea80212201001533098013372c9201225b76616c69646174655f6f7574707574735d2041637475616c20616d6f756e743a20003732660c46ea260026eacc1acc26804dd5000cdd7184e808064dd71835806202448900159800803c4cdc3cc004dd59835984d009baa0019bae309d0100c9bae306b00c404864b300133710002900044c1c4006200284c008dd69835984d009baa0088a50425c0515330980149139657870656374206d61746368696e675f6f75747075742e646174756d203d3d20726571756573742e64657374696e6174696f6e2e646174756d0016425c051533098014913d657870656374206d61746368696e675f6f75747075742e61646472657373203d3d20726571756573742e64657374696e6174696f6e2e616464726573730016425c046138026132026ea80062a6612e0292014465787065637420536f6d65286d61746368696e675f6f757470757429203d206c6973742e6174286f7574707574732c206d61746368696e675f6f75747075745f6964782900164258046601c01a0026eb40061240284e008c26404c25804dd5000c54cc250052415b65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f6461746129203d0a202020202020202063626f722e646573657269616c697365286d61746368696e675f6f75747075745f6964785f6279746573290016424c0460646eb8c26004c25404dd5000c54cc24c0524013e65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f627974657329203d20646963742e66696e64286d617070696e672c2069290016424804646600200201044b30010018a60103d87a80008992cc004cdc38039bad309701001898349984c80984b00800a5eb8226600600661360200484a008c2640400509701184a80800cc00400e606a005309601001400c84980a2a6611a0292013265787065637420646963742e73697a65286d617070696e6729203d3d206c6973742e6c656e6774682872657175657374732900164230052223233225980099b87375a6128020020051325980099912cc004006294226530013259800984000984a809baa00189bad3096013099013756613202612c026ea8006290002126023098010019baf3098013099010019bab0024889660020031598009801002c4cdc4a400000714a084a80a264b30013375e61300200298010140008acc004cdc49bad309901309c01375661320200200913003374c613a0200514a084b00a2b300133712900000244c00c01a294109601212c02309b01001426404329800800c00e44661320200466132026e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c25c040066eacc260040066138020069112cc004cdc8a441000038acc004cdc7a4410000389980298369984e809ba60024bd70000c4cc015300103d87a800000642600519800803c006446600e0046613e0266ec0dd48029ba6004001401c84c00861340200484c00a294229422941099011bab3063002374c661280266ec0c25404004dd31984a0099bb0309501309601001375066e0400c0152f5bded8c097adef6c608801c54cc240052401c56578706563740a202020206173736574732e6d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a20202020290016423c046eb0c060c24404dd5003454cc23c052401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e740016423804b30013079300d0018a4001159800800c21806264b30013094010028acc004cdc79bae308f01001488104555344720089bad3090010018a9984700a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200164234050870142440461240200284800908c0119192cc004c1ecc24004dd5000c4c96600266ebcc25404c24804dd5184a809849009baa30633092013754002604c66128026ea400d2f5c1132598009840009849009baa0018992cc004006330010018992cc004c1fcc25004dd5000c4c96600266ebcc26404c25804dd5184c80984b009baa001302a3309801375200e97ae08992cc004c21004c25804dd5000c4c96600200319800800c4cc26804dd419b81375a6136026130026ea8004dd6984d80984c009baa0053309a01374c6530010019bab306a30990137540093233001001375660d66134026ea8c1acc26804dd5004912cc004006297adef6c608991984f0099bb0309b01001374c64660020026eacc27404008896600200314bd6f7b63044c8cc28404cdd8184f008009ba83075375a613e020026600600661460200461420200284f808cc00c00cc28004008c2780400509c012002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd3001a5eb7bdb1822653001375c614002003375661420200330a50100248896600266e4002000e26614c0266ec0dd48041ba60070058acc004cdc7804001c4c966002b30010018a518a5042980510028998538099bb037520126e980040090a201194c0040060110034004444b30010028800c4c8cc8a600200d30ae010059919800800802912cc00400626615c0266ec0dd48021ba80034bd6f7b63044ca60026eb8c2b0040066eb4c2b4040066162020049112cc004cdc8004001c4cc2c804cdd81ba9008375000e00b15980099b8f0080038992cc004c26c0400620051330b301337606ea4024dd4000801215c023370000e0051330b201337606ea400cdd400119803003000a15a0242b40430af0100142b4048030dd71853808009bad30a80100130aa0100242a0051330a601337606ea400cdd300119803003000a1420242840430a3010014284048030dd7184d808009bab309c01001309e0100242700497ae084880a04684880c244061220309101427404613402612e026ea80062a6612a0292012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642500460ca612c026ea80062a661280292013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016424c04613002612a026ea80062a661260292013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c20736372697074290016424804660bc6eb0c18cc25004dd500411983298301bab3066309501375400200d08c01407d08c0184600c230061180284c808c25804c24c04dd5000c54cc244052413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642400460c26124026ea8c18cc24804dd5000c54cc2400524014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016423c046128026122026ea8006297ae110100008101a000211c023305737586126026120026ea8010004dd71849009847809baa3019308f0137540086602e6eacc060c23804dd50011bae305f308e0137546030611c026ea800d222259800983c80644cc894cc23c052411f5b6d696e745d205374617274696e67206d696e742076616c69646174696f6e00159800cc004c25004c24404dd502bc0a660506122026ea81f66eacc074c24404dd503ea01a8a9984780a49205b6d696e745d207361746973666965645f7061796c6f61647320706173736564001323298009bab3096010019bab3096013097010019bad30960100248894cc25004cdcb24812f5b6d696e745d2070726f636573735f7265717565737473207061737365642c2073756d6d65645f616d6f756e743a20003732660bc6ea0005220100132533095013372c92011b5b6d696e745d206f726465725f696e7075747320636f756e743a20003732660be6ea0c0a8005220100159800cc0040060110049bac301e30970137540ba805a2a6612a0292011d5b6d696e745d2076616c69646174655f696e707574732070617373656400159800cc004dd61833184b809baa08301804400e661320260d0612e026ea8c084c25c04dd502e9984c80a601054455534472004bd7020148a9984a80a4811e5b6d696e745d2076616c69646174655f6f7574707574732070617373656400132533096013372c9201215b6d696e745d206d61696e7461696e5f747265617375727920726573756c743a20003732660c13001001a60103d87a8000a60103d879800042540491010010013370f300105d84180d200040240051533095014901816578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a202020202900164250051533095014917a6578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f726967696e5f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016425004660306eb0c26404c25804dd5041009bae306530960137546040612c026ea8170612c020033001002800c8c048dd698319849009baa0014019153308f014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164238046eb0c24804c23c04dd50101bab309201308f013754612402611e026ea81fa2b3001307800c8992cc006600260c26120026ea815a051302730900137540f9375660386120026ea81f100c44c8c9660033001330143758612a026124026ea81f8dd718309849009baa301c30920137540b10039bab3095010019984a0098319849009baa301c30920137540b066128029801054455534472004bd70200c8acc00660026eb0c184c24804dd503f400e6eacc25404c258040066eb0c064c24804dd502c200a899b87980082c41fa90002008375a612a020051533090014901796578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f75747075745f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016423c05153309001491826578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f726967696e5f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a20202020290016423c04612a0200330010019bab30930130900137546126026120026ea81fe466e20dd698311848809baa00148001005454cc23805241856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164234046eb0c24804c23c04dd5010456600260f801913259800cc004c17cc24004dd502b4dd6180e9848009baa07c98139848009baa07c9bab301c30900137540f8807a2b300130100018983d4c00415a0f90014009153308e014911a6578706563742077697468647261775f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501044c9660033001305f30900137540ad3758603a6120026ea81f2604e6120026ea81f26eacc070c24004dd503e201e8acc004c040006260f5300105683e4cdc1000a400280122a6611c02920119657870656374206465706f7369745f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501021180242300484600844b300133710002900045300103d87a8000899803801000a1120222a660da920113657870656374206e6f6e63655f726573756c74001641b0653001306e37540032323232332259800982f8014528456600260c40051980099baf30783075375400298103d87b8000a50a5141c913233225980098310014528c56600260c200513322598009831983c9baa304b307a375400d13371000400313371200400283b8dd6983d983c1baa003598009830983b9baa30493078375400f10018980d800a0ea8a5041d483a8c1d4dd50009bad30793076375400860f060ea6ea800507220e43072375400260ec60ee00660ea60e46ea8004c1d0004c1c0dd5000c888c8cc896600260be005159800982f983a1baa0018a6103d87a80008a6103d879800041c91598009831001456600260c460e86ea80062980103d87a80008a6103d87b800041c913322598009830800c530103d87b80008acc004c180006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041d483a8dd6983d183b9baa0038a6103d879800041d083a0dd6983c183a9baa00330743754002839107218391baa0013002003300100348896600260b80071325330713372c921215b7665726966795f6e6f6e63655d204c6f6f6b696e6720666f72206f7265663a200037326607600291010015330713372c9201215b7665726966795f6e6f6e63655d204e756d626572206f6620696e707574733a20003732660766ea0c018dd6183b18399baa05f48900133008375860ec60e66ea817c94cc1c8cdcb24811f5b7665726966795f6e6f6e63655d20436865636b696e6720696e7075743a200037326607860ee60e86ea80052201001325330733372c9201185b7665726966795f6e6f6e63655d204d6174636865733a200037326607b3001001a60103d87a8000a60103d879800041c891010010013375e60ee60e86ea8004008c1d4c1c8dd5002456600260b600713322598009802000c528c566002600800514a1159800cc004cdd7cc004c1dcc1d0dd50014c1dcc1d0dd5000c8c8c96600260c060ec6ea8c1e8c1ec00a2003132598009830800c4c030cc1e8dd4180d9bad307b3078375400497ae08acc004c1880062005100241d483a8c1d8dd5000a0e83079001307537540028019300103d87b8000a50a5141c51980099baf98009822983a1baa0029822983a1baa001919192cc004c180c1d8dd5183d183d80144006264b30013061001898061983d1ba8304c375a60f660f06ea80092f5c11598009831000c400a200483a9075183b1baa00141d060f200260ea6ea8005003260103d8798000a50a5141c514a0838907120e2307530723754008601260e46ea817a294106f20de181f98371baa009300300319198008009bac3038306937540b044b30010018a5eb822660d86e9cc8c8cc1b8c1bc008cc1b8c0ecc1b0dd5000998371ba9980091838183898389838800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004835906b1b8d001981f198372610b4a5369676e617475726531003306e306f306c375460de60d86ea8004cc1b93010140003306e303d306c37540b697ae048894cc1b4cdcb249165369675374727563747572652e636f6e746578743a200037326606e60e460de6ea8005220100153306d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e608060de6ea8005220100153306d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607c60de6ea8005220100153306d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e600660de6ea800522010013253306e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b88370dc68009bae3072306f375400266e28c008dd7182018379baa0013371460046eb8c0f8c1bcdd500098011bae3003306f37540024bd70183718378009bac306d00133002002306e00141ad22259800982a98351baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130700018acc004cdc4a400860de0030068992cc004c1d4012264b3001305c0018acc004c1c8dd50034026010839a2b3001305b0018992cc00400601313259800800c02a01500a8992cc004c1e400e01900b41d86eb400601483c8c1d800507418391baa0068acc004c17c0062b30013072375400d00980420e680420de41bc8378c1c0dd5002c01d072182c9837800a0da80320e23754003005802c01600a83a0c1c400506f1838801400e007003801a0e4306f00141b460d66ea800e002834122259800982a98351baa0068992cc0040060c113259800800c4c9660020030628992cc0040062b30013073002899912cc004c16c006264b300100183344c966002003067833c4c96600260f000713305b0012259800801401e264b30010018cc0040062600460f600706b403d06b835c1ae0d683e0c1e400907741a10751bac001833c19d078183a800a0e63071375400b159800982d000c4c9660020030668992cc0040060cf0678992cc004c1e000e2660b600244b3001002803c4c96600200319800800c4c008c1ec00e0d6807a0d706b835c1ad07c183c80120ee83420ea3758003067833a0f0307500141cc60e26ea80162b3001305e0018992cc0040060cd13259800800c19e0cf0678992cc004c1e000e00b06841d46eb40060ce83c0c1d400507318389baa0058acc004c0d8006264b300100183344c966002003067833c19e264b30013078003802c1a10751bad001833a0f0307500141cc60e26ea80160ca837106e20dc41b8264b3001305a0018992cc0040060cb13259800800c56600260ec005159800982e18389baa0018992cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c4c96600260f800700f83620f2375a00306b41f060f200283b8dd7000983c00120f2307600141d060e46ea80060cc837a0cc839a0cd0668334199077183a000a0e430703754005159800982c800c4c9660020030658992cc0040062b300130760028acc004c170c1c4dd5000c4c9660020030678992cc004006264b3001001834c4c966002003159800983d00146600200719800800c0360d480620d480620d483ba0d506a83541a907b183c000a0ec307800283441a20d106841e460ec00283a0c1c8dd5000c19906f4199073419a0cd06683320ee307400141c860e06ea800a2b3001305d0018992cc0040060cb13259800800c19a0cd06683344c96600260ee00700a833a0e8375c00283b8c1d000507218381baa00283220da41b48368c1b8dd500098371baa003831a0e0831c18e0c706341d060e20028378c1c400a0c3061830c1850721837800a0da306b375400d05f41a022259800982a18349baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130720028992cc004c164c1b8dd500244c9660020030078992cc004006264b3001001804c4c966002003159800983b80146600200713259800982f000c4c96600200300c8992cc0040062b3001307a0028992cc004c184006264b3001001807c4c966002003159800983e80146600200300b808202680820f4808404202101041f860f600283c8c1dcdd5001456600260c000313259800800c03e264b300100180840420211332259800800c04a264b3001001809c04e0271332259800800c056264b300100180b405a02d13259800984200801c04a02e840808dd6800c05908401184080800a0fe375a00261000200501342040460fc00283e0dd6800983e801404107e183d800a0f23077375400500e41d083a0c1d4dd5000c035077403601b00d806a0f6307800141d860e86ea800a2b3001305d0018acc004c1d0dd5001401a01683aa016838907118391baa001805201a80520e8805402a01500a41e060ea0028398c1d400a01100880440210761839800a0e2306f375400900641b0264b300130590018acc004c1bcdd5001401e00c83822b300130580018992cc00400600f13259800800c02201100880444c96600260ec00700a804a0e6375c00283b0c1cc00507118379baa0028acc004c170006264b3001001803c4c96600260ea00500980420e4307300141c460de6ea800a00c836106c20d8306d375400300541bd005802c01600a8398c1c000506e1838001400e007003801a0e2306e00141b060d46ea800e0028338888c96600260a800313259800800c00e264b300100180240120090048992cc004c1c400e00d00541b86eb80050711837000a0d8306a37540091598009829800c4c9660020030038992cc0040060090048024012264b30013071003803401506e1bae00141c460dc0028360c1a8dd5002400906720ce3068375400705a82d416a0b48358c1a0c194dd5000c54cc18d24014565787065637420536f6d65287369676e65645f7061796c6f61645f6461746129203d2063626f722e646573657269616c6973652872656465656d65722e7061796c6f6164290016418860026eb8c0d4c190dd50299192cc004c13c006298103d87a80008992cc006600260a06eb4c1980069429450634530103d87a80008981c198341832800a5eb810634c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d06548896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b810010034195001400c8310dc680098008009119800911191919bb032374e660d660d0002660d660d200297ae03376060ce00460ce00260d0003300100691000c012007375a60ce0028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130510018cc004012007002918051ba800140351598009828000c6600200900399b80002480fe460146ea0c0f0c0f800500d456600266e1c00920be0189919800800918059ba9001223300648008966002601c00313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014419d19800802400e66e00009207f918051ba9001401c832106420c88acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300d3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180719ba5003001404080810672cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014198833100d4566002605600315980099b87002482f80a33001004801ccc01801888006460146e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300b374e002806900d20c88acc004c0a80062b30013370e004907f0144c8c8cc0040048c030dd30009119803a40044b3001300f0018980125eb7bdb18224646530010069180319838801000cdd69837001200c323376060e200260e260e40026eb0c1b000660020130089807800a00a41a06600c00c4400519800802400e66e0000920bf02919194c0040060072300d374c00280088896600266e24009200089800a5eb7bdb18224646530010069821802c8c014cc1c80080066eb4c1bc0090061919bb0307200130723073001375860da003300100a804c00500520d23300700722002403483222497bdb181014000010120004190832106420c8337060029020111119198008008011119803240044b3001300a0018980125eb8224646530010069180319836001000cdd69834801200c30670019800804401e6014002803106311114c00401200700291980200091801800a012413505b1bae001417860b600282c8dd7000982d005a0b6305800a415904841586eb8005059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500240fd04940fd00e40fd00e40fd00e40fd00e40fd04d1bac00181f40f90501826800a096304d00281e40f207903c413860960028248c12c00a07503a81d40e904c1824800a08e304900281c40e20710384128608e0028228c11c00a06d03681b40d90481822800a086304500281a40d2069034411860860028208c0fcdd5002c0c903c111194c004006009003400444464b3001302f0018992cc00400600d13259800800c01e00f007803c4c96600260980070058042092375c0028260c12400504718229baa0038acc004c0b8006264b300100180344c966002003007803c4c966002609800713302f0012259800801401e264b30010018cc00402a00313002304f003402900b805c02e0168280c13400904b40210491bac001803c01d04c1824800a08e304537540071598009819000c4c9660020030068992cc00400600f0078992cc004c13000e26605e00244b3001002803c4c96600200319800805400626004609e006805201700b805c02d0501826801209680420923758003007803a0983049001411c608a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009827801c4cc0c8004896600200500a8992cc0040063300100d800c4c008c14800d00d403a01d00e80720a63050002413900b41306eb000601500a413c60980028250dd68009825801401d04c1824800a08e304537540071598009804800c4c9660020030068992cc00400600f007803c4c96600260980070058042092375a003007413060920028238c114dd5001c566002601000313259800800c01a264b3001001803c01e00f132598009826001c0160108248dd6800c01d04c1824800a08e3045375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009826001c0160108248dd7000a0983049001411c608a6ea800e00a821104220844108821104220843043375400481740ba05d02e4100601660746ea8c94cc0e4cdcb24812467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea40dd220100132598009813181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a200037326600a002910100132598009815981e9baa0018992cc0040062b30013029303e375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098240014401a0728228c1180050441bae0013045002411860860028208c0fcdd5000c0d103c40d206903481a20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec6018607a6ea8c038c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46600400206e6eb0c02cc0e8dd50131800800911980200111980598031bab300c303b3754601860766ea8004008888c9660020071323233223300b0023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420805980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d103a1bac303d002375a60760026466ec0dd4181d8009ba7303c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6080003337149101023a200098008054c10400600a805100a182180144ca6002015304000199b8a489023a200098008054c104006600e66008008004805100a182180120823043001410066e29220102207d0000340f46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039011207a3758007133007375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40fc66e2ccdc0000acc004cdc4000a402914818229037207e004401866e0c00520203370c002901019b8e00400240f06eb800d0401b8a4881022c200018048049802802a264b300100180e4072264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0cc00a2b30013019302e375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc00400604f027813c09e264b3001303a0038acc004c080c0d4dd500344c9660020030298992cc00400605502a81540aa26644b300100181644c96600200302d816c0b605b132598009820001c660020151301430400158172048817207a375c0028200c0f400503b1bae001303c00240f4607400281c0c0d8dd500340a103340a10371bae00140e8606e00281a8c0dc00a04b025812c095038181a800a0663035002811c08e04702340d860660028188c0bcdd5000c08502c40850304086043021810a068303100140bc6eb8004c0c00090311817000a058375800301c80e205e302c00240a91323259800800c06e03701b899912cc00400603b01d80ec4c8c018c0c001cdd6800c0750301bad001302900280da05c3027001302a00240a101740986eac00602d01680b20523026001409060446ea801e02880fa0288118dd6000c04e0268130c08c0050211bae0013022002408c604000280f0c08000a01d00e8074039021180f000a038301a375401300c405c44464b300130060018992cc00400600713259800800c01200900480244c9660026046007006802a040375c0028118c08000501e180e1baa0048acc004c0140062b3001301c3754009003801203a8012032406460346ea800c88c8cc00400400c88cc00c004c008008dc3a40006e1d20028044022011008406c6030602a6ea800e2c80906028002601e6ea8056293454cc0352411856616c696461746f722072657475726e65642066616c7365001365640301\"\n :\n \"592497010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a40052232330010010032233003001300200248888c9660026008601c6ea802626464646644b300130180038992cc004c028c050dd5000c4c96600260340031330093756603200244b3001002899805803112cc00400a330012259800800c52f5c113301e301b301f0013300200230200014075374a900048c078c07c00644646600200200644b30010018a508acc004cdc79bae30210010038a518998010011811000a038407d2301e301f301f0019b874801a6e1d20089b8748029222222223322332232332259800980f18141baa00289919191919194c004dd61819000cc0c8016606400930320039819001244444b30013038006899806181b8058998060020998060018998060010acc004c0a4c0ccdd5000c4c8c8ca60026eb8c0e80066eb8c0e800e6eb8c0e800922259800981f00244c8cc896600260820071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc7244103020408003370000490189180119bca4a2003124bded8c10140000101200040fc81f903f4dc024003370e907f01cdc02400522337600046ea00066e052000488888a600244444653001001801c0090011112cc004cdc480124001130014bd70448c8ca600200d30100059180299828801000cdd69827001200c304c0019800804c022002803904948888c8cc00400400888cc01920022598009805800c4c0092f5c1123232980080348c018cc1400080066eb4c1340090061825800cc00402200f300b0014018824244453001004801c00a4660080024600600280512223232323259800981f98249baa00189919914c00489660026088609c6ea800a26464646644b30013058003899804982b802899823001003459055182a8009bad305500230550013054001304f37540051641351980099198008009bac3030304e375409044b30010018a5eb822660a26e9cc8c8cc14cc150008cc14cc0ccc144dd5000998299ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002414c8298dc68009bae30563053375400266e28c008dd7181b98299baa0013371460046eb8c0d4c14cdd500098011bae305630573057305730533754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241448288dc6800981b19829a610b4a5369676e617475726531003305330543051375460a860a26ea8004cc14d3010140003305330353051375409697ae04bd701829982a0009bac30520013300200230530014141230513052305230523052305230523052001911919800800801912cc00400629422b3001300330540018a51899801001182a800a09e4149374a900124444b300132980098289baa001919191919912cc004c13400a29422b300130500028cc004cdd7982d982c1baa0014c103d87b8000a50a51415913233225980098280014528c566002609e00513322598009828982e1baa3041305d375400d13371000400313371200400282d8dd6982f182d9baa003598009827982d1baa303f305b375400f10018980d800a0b28a50416482c8c160dd50009bad305c3059375400860b660b06ea800505620ac3055375400260b260b400660b060aa6ea8004c15c004c14cdd5000c888c8cc8966002609a0051598009826982b9baa0018a6103d87a80008a6103d879800041591598009828001456600260a060ae6ea80062980103d87a80008a6103d87b8000415913322598009827800c530103d87b80008acc004c138006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000416482c8dd6982e982d1baa0038a6103d8798000416082c0dd6982d982c1baa0033057375400282b1056182a9baa00130020033001003488966002609400713233007375860b260ac6ea81348cdd7982d182b9baa0010023058305537540091598009824801c4cc8966002600800314a315980098020014528456600330013375f3001305a30573754005305a3057375400323232598009827182c9baa305d305e0028800c4c966002609e0031300b3305d375060366eb4c178c16cdd500125eb822b3001305000188014400905920b23059375400282c0c170004c160dd5000a0064c0103d87b8000a50a5141551980099baf9800981d982b9baa002981d982b9baa001919192cc004c138c164dd5182e982f00144006264b3001304f001898059982e9ba8301d375a60bc60b66ea80092f5c11598009828000c400a200482c9059182c9baa001416060b800260b06ea8005003260103d8798000a50a51415514a082a905520aa305830553754008600e60aa6ea8132294105320a6181a98289baa0058cc004c150c144dd5002c88c8cc00400400c896600200314800226644b300130050028980b800c4005055182c00099801001182c800a0ac911919800800801912cc00400629422b30013375e00660a860b000314a31330020023059001414c82b244646600200200644b30010018a518acc004c00cc16000626600400460b200314a0829905648c154c158c158c158c158c158c158c158c158006460aa60ac60ac60ac60ac60ac60ac0032259800982418291baa002899192cc004c16400a0071641586eb4c15c004c14cdd500145905148c154c158c158c158c1580064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320ae899802802982e80220ae375c60ac0026eacc15c004c1640050570a5eb7bdb18244b30010018a400113013330020023057001415123055305630563056305630560019112cc00400a2980103d87a80008acc004c12400626072660ac60ae00497ae08cc00400e60b00053016001400c829105548966002003148002260266600400460ae00282a244b30010018a5eb82264660ac6ea0004cc00c00cc8cc004004c16400c896600200314bd7044cc896600330013370e00400b4a14a282b22660b46ea0008cc01001000626600800800282b0dd6982c800982d000a0ae375a60ac00282a2444646600200200844b300100189982c19bb037520086ea000d2f5bded8c113298009bae30560019bad3057001982d8012444b30013372001000713305c337606ea4020dd4003802c56600266e3c02000e2660b866ec0dd48041ba800700189982e19bb037520066ea0008cc01801800505820b0182c800a0ae911919800800801912cc004006297ae0899912cc004cdd7982d182b9baa305a30573754607660ae6ea8008c01ccc164dd4802a5eb822660b200466008008003133004004001415460b000260b200282b244b30010018a40011301333002002305700141512259800800c520008980999801001182b800a0a89b8848001222222222222222222298009111191980080080291192cc004c18000626609c00c6eb8c1b8c1acdd5001456600260be003133017375860dc60d66ea80088cc0100100062b3001306300189980e1bac306e306b37540044660080080031598009826000c4c8cdc49bad306f0013301a375860de60e000246600a00a00260d66ea800a2b3001304b00189919912cc004c188c1b4dd5001456600260c460da6ea8c1c4c1c800e266e24dd6983898371baa002001899b88375a60e260dc6ea800800506c452820d8306f001375a60de60d86ea800cc1acdd5182798359baa0058acc004c1280062646644b30013062306d3754005159800983118369baa30713072003899b89001375a60e260dc6ea800a266e20004dd6983898371baa00241b114a08360c1bc004dd6983798361baa003306b375460dc60d66ea80162660300086036660da60dc60d66ea80092f5c0834906920d241a4834906918349baa00198050054c18cdd5009c8888c8cc00400401488c96600260c00031323259800983118361baa001899194c004dd718390014dd718391839800cdd71839000ae5460e40026eb0c1c0c1b4dd5000c52820d632330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60e40020091305433071374e00297ae0899801801983980120da375860e20028378dd7183718359baa0028acc004c17c00626602e6eb0c1b8c1acdd5001119802002000c56600260c600313301c375860dc60d66ea80088cc0100100062b3001304c00189919b89375a60de002660346eb0c1bcc1c00048cc014014004c1acdd500145660026096003132332259800983118369baa0028acc004c188c1b4dd518389839001c4cdc49bad3071306e37540040031337106eb4c1c4c1b8dd5001000a0d88a5041b060de0026eb4c1bcc1b0dd500198359baa304f306b375400b1598009825000c4c8cc896600260c460da6ea800a2b30013062306d375460e260e40071337120026eb4c1c4c1b8dd500144cdc40009bad3071306e37540048362294106c18378009bad306f306c375400660d66ea8c1b8c1acdd5002c4cc060010c06ccc1b4c1b8c1acdd500125eb8106920d241a4834906920d23069375400330080089803803cc01801a6006007222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906b44cc014014c1c401106b1bae306a001375a60d600260da0028358cc03c01000c520009801001244444444446530012225980099b87300d0023009300832330010010032259800800c52f5c11330763073307700133002002307800141d5132330010010032259800800c52f5c30100008101a0008101a00044c8c8c8cc896600260dc60f06ea800a264b3001300900189983e1ba8337006eb4c1f4008dd6982f183d1baa0013307c374c64b3001306f307a37540031375660be0071375660fc60f66ea8005079192cc004c1bcc1e8dd5000c530103d87a8000898301983e9ba698009bab305f0039bae307e307b3754003005407097ae041e460b860f46ea8004cc1f0dd34c004dd5982e0014dd9983e983f002c01101b25eb822c83c0c1f0c1e4dd50014590771980480400099802802983d8021bad30790013307730740013307730750014bd70183b800a0ea8b20e091112cc004cdc398040021804001c4cc07c0108c96600260d460e86ea8006264b3001306b3075375400313322598009838183b9baa001899192cc004c1bcc1e4dd500144c8c8c8ca60026102020033081010039840808012444b300130850100489982c98420080389981b0010992cc004c1dc00626464b3001308801002805c59085011bad3086010013082013754005159800983b000c4c8c96600261100200500b8b210a02375a610c020026104026ea800a2c840009080011840009baa0018b210402184080800984000800983f800983d1baa0028b20f015980099baf305d3079375400260f860f26ea800e2b3001337126eb4c174c1e4dd5001cc004dd5982e983c9baa305d3079375400d375c60f800f375c60ba00e806a264b3001306f3079375400313370e6eb4c1f4c1e8dd50009bad305e307a375400913370e6eb4c1f4c1e8dd50009bad305e307a375400883c0c16cc1e4dd5000c59077459077183d983c1baa0018b20ec30793076375400260b060ec6ea8c168c1d8dd5001c59074198038029bad3078307537540031641cc6644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130603307d375000297ae080320f2899802802983f80220f2375c60f00026eb4c1e4004c1ec0050791bb3307730743754002298103d87a80008b20e291112cc004cdc398030011804001c4ca60020034800200880088896600200314a313322598009836983b9baa0018992cc004c1b8c1e0dd5000c4c96600260de60f26ea8006264b30013375e60fc60f66ea8004c1f8c1ecdd5183f183d9baa0058acc004cdd7982e983d9baa001305f307b375460fc60f66ea80162b300198008044c0ec01e60fe00c8042266e1e60026eacc17cc1ecdd5000cdd7183f004cdd7182f804a01e325980099b880014800226074003100141e86eb4c17cc1ecdd5002c52820f28b20f28b20f2307d307a37540031641e0660160146eb4c1f0c1e4dd5000c5907718181bae307b307837540031641d860f2002646600200200c44b30010018a60103d87a80008992cc004cdc38029bad30790018982f1983d983c000a5eb8226600600660fa00483b8c1ec00507920ee8b20e29111919912cc004cdc39bad30780010028992cc004cc896600200314a11329800992cc004c1bcc1e4dd5000c4dd6983d183e9bab307d307a3754003148001078183e000cdd7983e183e800cdd58012444b30010018acc004c008016266e2520000038a5041e91325980099baf307c0014c010140008acc004cdc49bad307d308001375660fa00200913003374c61020200514a083da2b300133712900000244c00c01a294107b20f6307f00141f4329800800c00e44660fa004660fa6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1ec0066eacc1f00066100020069112cc004cdc8a441000038acc004cdc7a44100003899802983219840809ba60024bd70000c4cc015300103d87a800000641f519800803c006446600e004661060266ec0dd48029ba6004001401c83e860fc00483e229422942294107d1bab305a002374c660f066ec0c1e4004dd31983c19bb03079307a001375066e0400c0152f5bded8c097adef6c608801c590741bac301a3075375400d1641ccb30013068300e0018a4001159800983b800c4c96600266e3cdd71839800a44104555344720089bad30740018b20e430760018b20e841c46464b3001306a307437540031325980099baf30793076375460f260ec6ea8c168c1d8dd500098131983c1ba90034bd7044c96600260de60ec6ea800626466042002264b3001306e307837540031325980099baf307d307a375460fa60f46ea8004c0a8cc1f0dd4803a5eb82264b30013073307a37540031323302500113307e375066e04dd6983f983e1baa001375a60fe60f86ea8014cc1f8dd3194c0040066eacc184c1f4dd50024c8cc004004dd59831183f1baa3062307e375401244b30010018a5eb7bdb182264661040266ec0c1fc004dd319198008009bab3081010022259800800c52f5bded8c11323308501337606104020026ea0c104dd698418080099801801984380801184280800a1060233003003308401002308201001420004800888966002005100189919914c00401a610c0200b32330010010052259800800c4cc21804cdd81ba9004374c00697adef6c608994c004dd7184200800cdd5984280800cc224040092225980099b900080038998450099bb037520106e9801c0162b30013371e01000713259800acc0040062946294108a014400a2661160266ec0dd48049ba6001002421c04653001001804400d0011112cc00400a2003132332298008034c24804016646600200200a44b30010018998490099bb037520086ea000d2f5bded8c113298009bae3090010019bad309101001984a808012444b30013372001000713309601337606ea4020dd4003802c56600266e3c02000e264b3001308a01001880144cc25c04cdd81ba90093750002004849808cdc000380144cc25804cdd81ba900337500046600c00c002849009092010c24c0400509101200c375c6116020026eb4c23004004c2380400908c0144cc22804cdd81ba9003374c0046600c00c002843009086010c21c0400508501200c375c60fe0026eacc20004004c208040090800125eb80c1f8c1ecdd5000c59079182e183d1baa0018b20f0307c307937540031641dc660a66eb0c168c1e0dd500411982e182a9bab305d3079375400200c60f460ee6ea80062c83a8c160c1d8dd5182d183b1baa0018b20e830783075375400314bd7090100008101a00020e63304e375860ee60e86ea8010004dd7183b18399baa301b30733754008660326eacc068c1c8dd50011bae305630723754603460e46ea800d2222598009834006c4c966003300130773074375409b0279813183a1baa06b9bab301e307437540d6806a26464b300198009980b1bac3079307637540da6eb8c160c1d8dd5180f183b1baa04f801cdd5983c800cdd6180d983b1baa04f4019159800cc004dd6182c183b1baa06d801cdd5983c983d000ccc1e0c168c1d8dd5180f183b1baa04f330784c1054455534472004bd70200a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba460246eb4c164c1d4dd5000a00a8b20e4375860ec60e66ea808a2b3001306700d8992cc006600260b060e86ea813604f3026307437540d73756603c60e86ea81ad00d44c8c966003300133016375860f260ec6ea81b4dd7182c183b1baa301e3076375409f0039bab30790019983c182d183b1baa301e3076375409e660f0981054455534472004bd70200c8acc00660026eb0c160c1d8dd5036c00e6eacc1e4c1e80066eb0c06cc1d8dd5027a00a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba466e20dd6982c983a9baa001480010054590721bac3076307337540451598009835806c4c966003300130563074375409b3758603e60e86ea81ae604c60e86ea81ae6eacc078c1d0dd5035a0208acc004c044006260d3300104d835c0050024590724590721bad30763073375404513259800cc004c158c1d0dd5026cdd6180f983a1baa06b9813183a1baa06b9bab301e307437540d680822b3001301100189834cc0041360d7337040029000a0048b20e48b20e4375a60ec60e66ea808907120e241c4225980099b8800148002298103d87a8000899804001000a0dc22c82792259800982218271baa00289919192cc004c15800a26464b300130490018acc004c150dd5001401a2c82aa2b30013048001899192cc004c16800a01116415c6eb4c160004c150dd500145660026098003159800982a1baa00280345905545905220a4414860a46ea8004c15400e2c8298c96600260a400315980099b8948010c1440062d130463051001414116414c6ea8c150004c150004c13cdd500145904d2444b30013045304f3754009132323259800982b80144c8cc8966002609600513259800982d800c4cc128dd6182d000912cc00400a00913300c305c00213001305d002416916416060ac6ea800e2b3001304a0028992cc004c16c0062660946eb0c1680048966002005004899806182e00109800982e80120b48b20b030563754007159800982700144c8c96600260b80050038b20b2375a60b400260ac6ea800e2b30013037002899192cc004c17000a0071641646eb4c168004c158dd5001c5905420a8415082a0c14cdd50008992cc004c128006264b3001305a0018992cc004c130c158dd5000c4c8c8cc896600260be00700d8b20b8375a60b80026eb8c170008c170004c15cdd5000c59055182c800c59057182a9baa0038acc004c124006264b3001305a0018992cc004c130c158dd5000c4c8c8c96600260bc00513300b305d00313300b00100c8b20b6305c001305c0013057375400316415460b200316415c60aa6ea800e2b3001304d001899192cc004c16c00a0131641606eb8c164004c154dd5001c5905320a6414c60a66ea8008c15800e2c82a0c154004c154004c140dd500245904e08966002608460986ea800a2646464b30013054002899912cc004c11cc144dd500144c8c8c96600260b200513300b3058003132598009825800c4c96600260b600313232598009827000c4c96600260bc003133010305d0010098b20b6305937540051598009826800c4c8c8ca60026eb4c17c0066eb4c17c00e6eb4c17c009222598009831802403a2c830060be00260bc00260b26ea800a2c82b9057182b9baa001305a0018b20b0305637540051598009825000c56600260ac6ea800a00b16415d16415082a0c150dd5000c59056182b800982b80098291baa0028b20a03053003132598009823000c56600260a26ea800a00b1641491598009822800c4c8c96600260ae0050078b20a8375c60aa00260a26ea800a2b30013049001899192cc004c15c00a00f16415060aa00260a26ea800a2c827904f209e304f375400316414460a400260a4002609a6ea800a2c8258c138c12cdd500111192cc004c10800626464b300130530028024590501bae3051001304d37540071598009820800c4c8c96600260a60050048b20a0375c60a2002609a6ea800e2c825904b18259baa0028b20903001375c605a60926ea810c8c966002607e00314c103d87a80008992cc006600260806eb4c12c0069429450494530103d87a800089818198269825000a5eb810494c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d04b48896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b81001003412d001400c8240dc680098008009119800911191919bb032374e660a0609a002660a0609c00297ae03376060980046098002609a003300100691000c012007375a60980028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130410018cc004012007002918061ba8001403d1598009820000c6600200900399b80002480fe460186ea0c03cc02c00500f456600266e1c00920be0189919800800918069ba9001223300648008966002602000313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014413519800802400e66e00009207f918061ba9001401c825104a20948acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300f3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180819ba50030014034809104d2cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014130826100f4566002605800315980099b87002482f80a33001004801ccc01801888006460186e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300d374e002805100f20948acc004c0ac0062b30013370e004907f0144c8c8cc0040048c038dd30009119803a40044b300130110018980125eb7bdb1822464653001006918031982b001000cdd69829801200c323376060ac00260ac60ae0026eb0c14400660020130089808800a00a41386600c00c4400519800802400e66e0000920bf02919194c0040060072300f374c00280088896600266e24009200089800a5eb7bdb1822464653001006980b002c8c014cc15c0080066eb4c1500090061919bb0305700130573058001375860a4003300100a804c005005209e3300700722002403c82522497bdb181014000010120004128825104a209433706002902011640f86eb8c0f8004dd7181f006181f005c5903b0c0e8004c0e4004c0d0dd5000c590324590350c0c8004c0c4004c0c0004c0bc004c0b8004c0a4dd5001459027180598139baa3259800980e98139baa0018992cc004c084c0a0dd5000c4c966002603e60526ea8006264646644b300130320038802c5902f18178009bae302f002302f001302a37540031640a0605860526ea80062c8138c028c0a0dd5180618141baa302b30283754003164098660026eb0c02cc09cdd500f0121802002111980180111980618029bab300d30293754601a60526ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c0100062601c6605600297ae08998018019816801204e302b00140a4601001044464b3001301b001899192cc004c0b000a0091640a46eb8c0a8004c098dd5001c5660026034003132598009815800c4cc068dd61815000912cc00400a00b19800803cc0b000a26002605a004803902a45902818131baa0038acc004c078006264b3001302b00189980d1bac302a0012259800801401633001007981600144c004c0b400900720548b2050302637540071598009803800c4c8cc8966002605a00313301c3758605800244b3001002803c66002013302e002898009817801201240b11640a86eb4c0a8004c0ac004c098dd5001c566002600c0031323259800981600140122c8148dd6981500098131baa0038acc004c01400626464b3001302c0028024590291bad302a0013026375400715980099b874803000626464b3001302c0028024590291bae302a00130263754007164090812102420484090812102418121baa00244c8cc89660026042003132598009809980e9baa0018991919192cc004c09800a264b3001301830223754003132323322598009815801c4cc064c0a80204c038c0ac03e2c8140dd718140009bae3028002302800130233754003164084604a00916408c6eb8c090004c090004c08c004c078dd5000c5901c1810000c5901e1bae301e001301f0013758603a00480da26466446008603e00a6eb4c060004dd6980c800980d80120328b202e3015375400316404c602e00b1640546eb0c054004dd7180a801180a800980a00098079baa0098b201a2232598009803000c4c8c966002602e0050048b2028375c602a00260226ea800e2b300130050018acc004c044dd5001c00a2c80922c807900f18079baa0024590080c024004c010dd5005452689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_4/index.js b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_4/index.js new file mode 100644 index 0000000000..d4b84335ee --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_4/index.js @@ -0,0 +1,470 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.VaultDatum = exports.V0_4StakingVaultStakingVaultSpend = exports.V0_4StakingVaultStakingVaultMint = exports.V0_4StakingVaultStakingVaultElse = exports.V0_4ProtocolProtocolWithdraw = exports.V0_4ProtocolProtocolElse = exports.V0_4OrderOrderSpend = exports.V0_4OrderOrderElse = exports.Tuple_VerificationKey_COSESign1 = exports.TreasuryRequest = exports.StakingVaultRedeemer = exports.SignedRedeemer_ExtraProtocolRedeemer = exports.SignedPayload_ProtocolRedeemer = exports.Settings = exports.ReserveAsset = exports.Request = exports.Registry = exports.ProxyDatum = exports.ProtocolRedeemer = exports.OrderRedeemer = exports.OrderDatum = exports.OrderAction = exports.Nonce = exports.MultisigScript = exports.Headers = exports.HeaderMap = exports.ExtraProtocolRedeemer = exports.Destination = exports.COSESign1 = exports.Bool = exports.Asset = void 0; +var _uplc = require("@blaze-cardano/uplc"); +var _data = require("@blaze-cardano/data"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable */ // @ts-nocheck +var PolicyId = _data.Type.String(); +var Contracts = _data.Type.Module({ + Bool: _data.Type.Boolean(), + Tuple_VerificationKey_COSESign1: _data.Type.Tuple([_data.Type.String(), _data.Type.Ref("COSESign1")]), + COSESign1: _data.Type.Object({ + headers: _data.Type.Ref("Headers"), + payload: _data.Type.Optional(_data.Type.String()), + signature: _data.Type.String() + }, { + ctor: 0n + }), + HeaderMap: _data.Type.String(), + Headers: _data.Type.Object({ + "protected": _data.Type.Ref("HeaderMap"), + unprotected: _data.Type.Ref("HeaderMap") + }, { + ctor: 0n + }), + MultisigScript: _data.Type.Union([_data.Type.Object({ + Signature: _data.Type.Object({ + key_hash: _data.Type.String() + }, { + ctor: 0n + }) + }), _data.Type.Object({ + AllOf: _data.Type.Object({ + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 1n + }) + }), _data.Type.Object({ + AnyOf: _data.Type.Object({ + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 2n + }) + }), _data.Type.Object({ + AtLeast: _data.Type.Object({ + required: _data.Type.BigInt(), + scripts: _data.Type.Array(_data.Type.Ref("MultisigScript")) + }, { + ctor: 3n + }) + }), _data.Type.Object({ + Before: _data.Type.Object({ + time: _data.Type.BigInt() + }, { + ctor: 4n + }) + }), _data.Type.Object({ + After: _data.Type.Object({ + time: _data.Type.BigInt() + }, { + ctor: 5n + }) + }), _data.Type.Object({ + Script: _data.Type.Object({ + script_hash: _data.Type.String() + }, { + ctor: 6n + }) + })]), + Asset: _data.Type.Tuple([_data.Type.String(), _data.Type.String()]), + Destination: _data.Type.Object({ + address: _data.Type.Object({ + payment_credential: _data.Type.Union([_data.Type.Object({ + VerificationKey: _data.Type.Tuple([_data.Type.String()], { + ctor: 0n + }) + }), _data.Type.Object({ + Script: _data.Type.Tuple([_data.Type.String()], { + ctor: 1n + }) + })]), + stake_credential: _data.Type.Optional(_data.Type.Union([_data.Type.Object({ + Inline: _data.Type.Tuple([_data.Type.Union([_data.Type.Object({ + VerificationKey: _data.Type.Tuple([_data.Type.String()], { + ctor: 0n + }) + }), _data.Type.Object({ + Script: _data.Type.Tuple([_data.Type.String()], { + ctor: 1n + }) + })])], { + ctor: 0n + }) + }), _data.Type.Object({ + Pointer: _data.Type.Object({ + slot_number: _data.Type.BigInt(), + transaction_index: _data.Type.BigInt(), + certificate_index: _data.Type.BigInt() + }, { + ctor: 1n + }) + })])) + }, { + ctor: 0n + }), + datum: _data.Type.Union([_data.Type.Literal("NoDatum", { + ctor: 0n + }), _data.Type.Object({ + DatumHash: _data.Type.Tuple([_data.Type.String()], { + ctor: 1n + }) + }), _data.Type.Object({ + InlineDatum: _data.Type.Tuple([_data.TPlutusData], { + ctor: 2n + }) + })]) + }, { + ctor: 0n + }), + ExtraProtocolRedeemer: _data.Type.Object({ + request_to_outputs: _data.Type.Array(_data.Type.BigInt()), + input_to_requests: _data.Type.Array(_data.Type.BigInt()), + treasury_input_idx: _data.Type.BigInt(), + treasury_output_idx: _data.Type.BigInt(), + vault_input_idx: _data.Type.Optional(_data.Type.BigInt()), + vault_output_idx: _data.Type.Optional(_data.Type.BigInt()) + }, { + ctor: 0n + }), + Nonce: _data.Type.Union([_data.Type.Object({ + UTxO: _data.Type.Tuple([_data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + })], { + ctor: 0n + }) + }), _data.Type.Object({ + Validity: _data.Type.Tuple([_data.Type.Object({ + lower_bound: _data.Type.Object({ + bound_type: _data.Type.Union([_data.Type.Literal("NegativeInfinity", { + ctor: 0n + }), _data.Type.Object({ + Finite: _data.Type.Tuple([_data.Type.BigInt()], { + ctor: 1n + }) + }), _data.Type.Literal("PositiveInfinity", { + ctor: 2n + })]), + is_inclusive: _data.Type.Ref("Bool") + }, { + ctor: 0n + }), + upper_bound: _data.Type.Object({ + bound_type: _data.Type.Union([_data.Type.Literal("NegativeInfinity", { + ctor: 0n + }), _data.Type.Object({ + Finite: _data.Type.Tuple([_data.Type.BigInt()], { + ctor: 1n + }) + }), _data.Type.Literal("PositiveInfinity", { + ctor: 2n + })]), + is_inclusive: _data.Type.Ref("Bool") + }, { + ctor: 0n + }) + }, { + ctor: 0n + })], { + ctor: 1n + }) + })]), + OrderAction: _data.Type.Union([_data.Type.Object({ + OMint: _data.Type.Object({ + amount: _data.Type.BigInt(), + reserve_asset: _data.Type.Ref("Asset") + }, { + ctor: 0n + }) + }), _data.Type.Object({ + ORedeem: _data.Type.Object({ + amount: _data.Type.BigInt(), + reserve_asset: _data.Type.Ref("Asset") + }, { + ctor: 1n + }) + }), _data.Type.Object({ + ODeposit: _data.Type.Object({ + principal: _data.Type.BigInt(), + "yield": _data.Type.BigInt(), + reserve_asset: _data.Type.Ref("Asset") + }, { + ctor: 2n + }) + }), _data.Type.Object({ + OWithdraw: _data.Type.Object({ + amount: _data.Type.BigInt(), + reserve_asset: _data.Type.Ref("Asset") + }, { + ctor: 3n + }) + }), _data.Type.Object({ + OStake: _data.Type.Object({ + amount: _data.Type.BigInt() + }, { + ctor: 4n + }) + }), _data.Type.Object({ + OUnstake: _data.Type.Object({ + amount: _data.Type.BigInt() + }, { + ctor: 5n + }) + })]), + OrderDatum: _data.Type.Object({ + owner: _data.Type.Ref("MultisigScript"), + destination: _data.Type.Ref("Destination"), + action: _data.Type.Ref("OrderAction"), + data: _data.TPlutusData + }, { + ctor: 0n + }), + OrderRedeemer: _data.Type.Union([_data.Type.Literal("Execute", { + ctor: 0n + }), _data.Type.Literal("Cancel", { + ctor: 1n + })]), + ProtocolRedeemer: _data.Type.Union([_data.Type.Object({ + Mint: _data.Type.Object({ + requests: _data.Type.Array(_data.Type.Ref("TreasuryRequest")) + }, { + ctor: 0n + }) + }), _data.Type.Object({ + Burn: _data.Type.Object({ + requests: _data.Type.Array(_data.Type.Ref("TreasuryRequest")) + }, { + ctor: 1n + }) + }), _data.Type.Object({ + Withdraw: _data.Type.Object({ + requests: _data.Type.Array(_data.Type.Ref("TreasuryRequest")) + }, { + ctor: 2n + }) + }), _data.Type.Object({ + Deposit: _data.Type.Object({ + requests: _data.Type.Array(_data.Type.Ref("TreasuryRequest")) + }, { + ctor: 3n + }) + }), _data.Type.Object({ + Stake: _data.Type.Object({ + requests: _data.Type.Array(_data.Type.Ref("Request")) + }, { + ctor: 4n + }) + }), _data.Type.Object({ + Unstake: _data.Type.Object({ + requests: _data.Type.Array(_data.Type.Ref("Request")) + }, { + ctor: 5n + }) + })]), + ProxyDatum: _data.Type.Object({ + logic: _data.Type.String(), + settings: _data.Type.Ref("Settings") + }, { + ctor: 0n + }), + Registry: _data.Type.Object({ + treasury: _data.Type.String(), + usdr: _data.Type.String(), + order: _data.Type.String(), + staking_vault: _data.Type.String(), + susdr: _data.Type.String() + }, { + ctor: 0n + }), + Request: _data.Type.Object({ + destination: _data.Type.Ref("Destination"), + amount: _data.Type.BigInt(), + origin: _data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + }) + }, { + ctor: 0n + }), + ReserveAsset: _data.Type.Object({ + asset: _data.Type.Ref("Asset"), + numerator: _data.Type.BigInt(), + denominator: _data.Type.BigInt() + }, { + ctor: 0n + }), + Settings: _data.Type.Object({ + mint_permission: _data.Type.Ref("MultisigScript"), + burn_permission: _data.Type.Ref("MultisigScript"), + withdraw_permission: _data.Type.Ref("MultisigScript"), + deposit_permission: _data.Type.Ref("MultisigScript"), + stake_permission: _data.Type.Ref("MultisigScript"), + unstake_permission: _data.Type.Ref("MultisigScript"), + registry: _data.Type.Ref("Registry"), + reserve_assets: _data.Type.Array(_data.Type.Ref("ReserveAsset")), + unstaked_yield_pot: _data.Type.Object({ + payment_credential: _data.Type.Union([_data.Type.Object({ + VerificationKey: _data.Type.Tuple([_data.Type.String()], { + ctor: 0n + }) + }), _data.Type.Object({ + Script: _data.Type.Tuple([_data.Type.String()], { + ctor: 1n + }) + })]), + stake_credential: _data.Type.Optional(_data.Type.Union([_data.Type.Object({ + Inline: _data.Type.Tuple([_data.Type.Union([_data.Type.Object({ + VerificationKey: _data.Type.Tuple([_data.Type.String()], { + ctor: 0n + }) + }), _data.Type.Object({ + Script: _data.Type.Tuple([_data.Type.String()], { + ctor: 1n + }) + })])], { + ctor: 0n + }) + }), _data.Type.Object({ + Pointer: _data.Type.Object({ + slot_number: _data.Type.BigInt(), + transaction_index: _data.Type.BigInt(), + certificate_index: _data.Type.BigInt() + }, { + ctor: 1n + }) + })])) + }, { + ctor: 0n + }) + }, { + ctor: 0n + }), + SignedPayload_ProtocolRedeemer: _data.Type.Object({ + action: _data.Type.Ref("ProtocolRedeemer"), + nonce: _data.Type.Ref("Nonce") + }, { + ctor: 0n + }), + SignedRedeemer_ExtraProtocolRedeemer: _data.Type.Object({ + extra: _data.Type.Ref("ExtraProtocolRedeemer"), + payload: _data.Type.Ref("SignedPayload_ProtocolRedeemer"), + signatures: _data.Type.Array(_data.Type.Ref("Tuple_VerificationKey_COSESign1")) + }, { + ctor: 0n + }), + StakingVaultRedeemer: _data.Type.Undefined(), + TreasuryRequest: _data.Type.Object({ + destination: _data.Type.Ref("Destination"), + amount: _data.Type.BigInt(), + "yield": _data.Type.BigInt(), + origin: _data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + }), + reserve_asset: _data.Type.Ref("Asset") + }, { + ctor: 0n + }), + VaultDatum: _data.Type.Object({ + circulating_susdr: _data.Type.BigInt() + }, { + ctor: 0n + }) +}); +var Bool = exports.Bool = Contracts.Import("Bool"); +var Tuple_VerificationKey_COSESign1 = exports.Tuple_VerificationKey_COSESign1 = Contracts.Import("Tuple_VerificationKey_COSESign1"); +var COSESign1 = exports.COSESign1 = Contracts.Import("COSESign1"); +var HeaderMap = exports.HeaderMap = Contracts.Import("HeaderMap"); +var Headers = exports.Headers = Contracts.Import("Headers"); +var MultisigScript = exports.MultisigScript = Contracts.Import("MultisigScript"); +var Asset = exports.Asset = Contracts.Import("Asset"); +var Destination = exports.Destination = Contracts.Import("Destination"); +var ExtraProtocolRedeemer = exports.ExtraProtocolRedeemer = Contracts.Import("ExtraProtocolRedeemer"); +var Nonce = exports.Nonce = Contracts.Import("Nonce"); +var OrderAction = exports.OrderAction = Contracts.Import("OrderAction"); +var OrderDatum = exports.OrderDatum = Contracts.Import("OrderDatum"); +var OrderRedeemer = exports.OrderRedeemer = Contracts.Import("OrderRedeemer"); +var ProtocolRedeemer = exports.ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +var ProxyDatum = exports.ProxyDatum = Contracts.Import("ProxyDatum"); +var Registry = exports.Registry = Contracts.Import("Registry"); +var Request = exports.Request = Contracts.Import("Request"); +var ReserveAsset = exports.ReserveAsset = Contracts.Import("ReserveAsset"); +var Settings = exports.Settings = Contracts.Import("Settings"); +var SignedPayload_ProtocolRedeemer = exports.SignedPayload_ProtocolRedeemer = Contracts.Import("SignedPayload_ProtocolRedeemer"); +var SignedRedeemer_ExtraProtocolRedeemer = exports.SignedRedeemer_ExtraProtocolRedeemer = Contracts.Import("SignedRedeemer_ExtraProtocolRedeemer"); +var StakingVaultRedeemer = exports.StakingVaultRedeemer = Contracts.Import("StakingVaultRedeemer"); +var TreasuryRequest = exports.TreasuryRequest = Contracts.Import("TreasuryRequest"); +var VaultDatum = exports.VaultDatum = Contracts.Import("VaultDatum"); +var V0_4OrderOrderSpend = exports.V0_4OrderOrderSpend = /*#__PURE__*/_createClass(function V0_4OrderOrderSpend(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_4OrderOrderSpend); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "5911bb010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004888c966002601400313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a37540091598009807800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024009017202e301837540072259800800c52f5c113301a3017301b00133002002301c00140652225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640592232330010010032233003001300200291111919800800802912cc004006200b13259800800c4cc010c08000801a26600a60400046600600600280f0c08000501d488c8cc00400400c896600200314c0103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444445300130060069802802c888ca6002003004801a0022223259800980a000c4c9660020030068992cc00400600f007803c01e264b3001302b003802c0210281bae00140ac60500028130c090dd5001c566002603200313259800800c01a264b3001001803c01e264b3001302b003899807000912cc00400a00f13259800800c66002015001898011817001a014805c02e01700b40bc605800481520108140dd6000c01e00e8158c0a000502618121baa0038acc004c03c006264b300100180344c966002003007803c4c966002605600713300e0012259800801401e264b30010018cc00402a00313002302e003402900b805c02e0168178c0b000902a40210281bac001803c01d02b1814000a04c3024375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605c0071330110012259800801402a264b30010018cc004036003130023031003403500e807403a01c8190c0bc00902d402d02b1bac001805402902e1815800a052375a002605400500740ac60500028130c090dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0ac00e00b00840a06eb400600e8158c0a000502618121baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815801c0160108140dd6800c01d02b1814000a04c3024375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815801c0160108140dd7000a0563028001409860486ea800e00a81090212042408481090212042302237540053300237586040603a6ea80448cdd79810980f1baa00101048888c8c8cc88c966002602c604a6ea801a264b3001301c3026375400315980099b8f375c6054604e6ea8004dd7180598139baa3016302737546028604e6ea8c96600200319800800c40060468022047023811c08d02d198011bac30143027375403604713233225330283372c9210d63726564656e7469616c3a3a200037326600e0049101001330180010023374a9001198151ba90014bd701bab3017302837540386eb8c0a8c09cdd5198011bac301430273754036047153302549013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f7264657200164091153302549132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f63726564001640906052604c6ea8c0a4c098dd5180998131baa30293026375400d15330244913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408c44a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980c18139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a98149baa0018992cc004006330010018800c099007409a04d0268132060302d302a375400315330284913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601a60526ea8c058c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601800446602860166eacc054c0a0dd5180a98141baa001002300100122259800980b18129baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302f0028acc004c06cc0a8dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200313259800800c04e264b30010018992cc00400602b13259800800c05a02d1332259800800c062264b30010018acc004c10800a330010128cc0040423300100e8cc0040323300100a8cc0040222b3001302e303d375400d13259800800c06a264b300100180dc06e03701b899912cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f0278992cc004c14400e26606802444b30010028acc004c0fcc138dd500944c96600200302b8992cc004006264b3001001816c4c966002003159800982b801466002007132598009822000c4c9660020030308992cc0040062b3001305a0028992cc004c11c006264b3001001819c4c966002003159800982e80146600200303581a208681a20b481a40d2069034417860b600282c8c15cdd50014566002609800313259800800c0ce264b300100181a40d20691332259800800c0da264b300100181bc0de06f1332259800800c0e6264b300100181d40ea075132598009832001c0f20768308dd6800c0e90641830800a0be375a00260c0005037418460bc00282e0dd6800982e80140d105e182d800a0b230573754005032415082a0c154dd5000c0c505740c6063031818a0b63058001415860a86ea800a2b300130490018acc004c150dd500140c205e82aa05e828905118291baa001817207a81720a881740ba05d02e416060aa0028298c15400a05902c81640b10561829800a0a2304f375402502a413113259800800c5660026080609e6ea8006264b300100181644c96600200302d816c4cc896600200302f8992cc00400606103081844cc89660020030328992cc004006067033819c4c96600260ba007159800803c0d2264b300100181ac0d606b035899912cc00400606f13259800800c0e207103881c44c96600260c400713010306201181ca0be375c0028310c17c00505d1bae001305e008417c60b800e82d206882d0dd6800c0cd05d182d000a0b0375a00260b2005030416860ae00282a8dd6000982b00140b605a82b8c15000505218281baa001815a09a815c0ae05702b415460a400482820508270dd7000a0a2304e00141306eb8004c13400904e1825800a092375c00260940048258c1200050461bae00130470024120608a0028218dd70009822001208a30420014100607c6ea801a03281da03280fa03280fa03280fa03280fa03280fa03280fa03281fa03301980cc0650431820000a07c3758002607e00501680b2080303d00140ec607a00501480a405202881f0c0ec005039181d801404a0250128092078303900140dc6072005010808404202081d0c0dc005035181b801403a01d00e8072070303500140cc606a00500c806403201881b0c0cc0050311819801402a01500a8052068303100140bc606200500880440220108190c0bc00502d18159baa00180320508032058803401a00d00640c0605a0028158dd70009816001205a302a00140a0604c6ea800e0028118888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020565980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81290251bac3028002375a604c0026466ec0dd418130009ba73027001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6056003337149101023a200098008054c0b000600a805100a181700144ca6002015302b00199b8a489023a200098008054c0b0006600e66008008004805100a18170012058302e00140ac66e29220102207d0000340a06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d20503758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720543371666e000056600266e2000520148a40c11481b902a002200c33706002901019b8600148080cdc7002001204e375c0068158dc5245022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408881108acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" : "590882010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc00488c96600260120031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c03800626464b3001301c0028024590191bae301a0013016375400716405080a0c050dd50014896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a6103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a44444646466446644b30013011301d375400313259800980b980f1baa0018acc004cdc79bae3022301f37540026eb8c020c07cdd51808980f9baa300f301f3754646600c0022002660066eb0c03cc07cdd500b00e44cc040dd59808980f9baa0163374a9001198109811180f9baa330033758601e603e6ea80580712f5c11640751640746042603c6ea8c084c078dd51807180f1baa3021301e37540031640704464b30013012301e3754003132598009807180f9baa001899198038008800981198101baa0018b203c3008301f3754601e603e6ea8c088c07cdd5000c5901d1980400111980718021bab300f301f3754601e603e6ea8004008cc018dd6180f980e1baa01323375e6040603a6ea80040488966002601e60366ea800a2646644b300130230018992cc004c04cc07cdd5000c4c8c8c8c8c8c8c8c8ca60026058003302c0089816003cc0b001a605800b302c0049816001cdd61816001244444444b3001303500989980c181a00889980c00389980c00309980c00289980c00209980c0018acc004c090c0c0dd500144c8c8c8c8ca60026eb8c0e40066eb8c0e40166eb8c0e40126eb8c0e400e6eb8c0e40092222259800981f80344cc09802c89660020051598009818181e1baa01489919192cc004c11000a26605a6086006264b300130340018992cc004c11800626464b300130370018992cc004c124006266064609000205516411860886ea800a2b3001303c00189919194c004dd69825000cdd69825001cdd698250012444b3001304e004817c5904b0c128004c124004c110dd5001459042208430423754002608a00316410c60826ea800a2b300130390018acc004c104dd5001409a2c82122c81f903f181f9baa0018b208230420013042001303d37540291640ed132598009818981e9baa001899191919912cc004c11c00e264646644b3001304b0038980598258064590481bae3048001375c609000460900026eb0c1180162c8220dd698220009bad304400230440013043001303e37540031640f0608000481f22c81e060720026070002606e002606c00260626ea800a2c817a2c819060580026056002605400260520026050002604e002604c002604a00260406ea80062c80f0c0880062c8100dd718100009810800980e1baa0028b20343006006300100122232598009807800c4c8c96600260440050048b203e375c604000260386ea800e2b300130140018992cc004c0840062660106eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c5660026014003132598009810800c4cc020dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004cdc3a400c0031323322598009811800c4cc028dd61811000912cc00400a00f19800804cc09000a26002604a00480490224590201bad30200013021001301c375400715980099b874802000626464b3001302200280245901f1bad3020001301c375400715980099b874802800626464b3001302200280245901f1bad3020001301c375400715980099b874803000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa0024566002600c60246ea801e33001301630133754602c60266ea801e6eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50054c058c05cc05cc05cc05cc05cc05cc05cc04cdd50054dd5980298099baa00a48888c8cc00400401488c966002601a003133009006375c603a60346ea800a2b30013012001899198008009bac301e301b375400644b30010018a518acc004cc014014c07c006266004004604000314a080d101d45660026010003132330010013758603c60366ea800c896600200314a115980099802802980f800c528c4cc008008c08000501a203a8acc004cdc3a400c003132337126eb4c078004c8cc004004dd6180f9810001112cc0040062900044cc89660026601001000513370000290014400501d1810000998010011810800a03c301a375400515980099b87480200062646644b30013015301c3754005159800980a980e1baa30203021003899b89375a6040603a6ea8008006266e20dd69810180e9baa002001406d14a080d8c078004dd6980f180d9baa003301a3754601460346ea80162b30013370e9005000c4c8cc8966002602a60386ea800a2b30013015301c3754604060420071337120026eb4c080c074dd500144cdc40009bad3020301d375400480da294101b180f0009bad301e301b375400660346ea8c074c068dd5002c4cc02c010cdd2a400466038603a60346ea80092f5c080c10182030406080c1018180c1baa001459011202218069baa00818051baa0038b2010180480098021baa0098a4d13656400801", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var V0_4OrderOrderElse = exports.V0_4OrderOrderElse = /*#__PURE__*/_createClass(function V0_4OrderOrderElse(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_4OrderOrderElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "5911bb010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004888c966002601400313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a37540091598009807800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024009017202e301837540072259800800c52f5c113301a3017301b00133002002301c00140652225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640592232330010010032233003001300200291111919800800802912cc004006200b13259800800c4cc010c08000801a26600a60400046600600600280f0c08000501d488c8cc00400400c896600200314c0103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444445300130060069802802c888ca6002003004801a0022223259800980a000c4c9660020030068992cc00400600f007803c01e264b3001302b003802c0210281bae00140ac60500028130c090dd5001c566002603200313259800800c01a264b3001001803c01e264b3001302b003899807000912cc00400a00f13259800800c66002015001898011817001a014805c02e01700b40bc605800481520108140dd6000c01e00e8158c0a000502618121baa0038acc004c03c006264b300100180344c966002003007803c4c966002605600713300e0012259800801401e264b30010018cc00402a00313002302e003402900b805c02e0168178c0b000902a40210281bac001803c01d02b1814000a04c3024375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605c0071330110012259800801402a264b30010018cc004036003130023031003403500e807403a01c8190c0bc00902d402d02b1bac001805402902e1815800a052375a002605400500740ac60500028130c090dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0ac00e00b00840a06eb400600e8158c0a000502618121baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815801c0160108140dd6800c01d02b1814000a04c3024375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815801c0160108140dd7000a0563028001409860486ea800e00a81090212042408481090212042302237540053300237586040603a6ea80448cdd79810980f1baa00101048888c8c8cc88c966002602c604a6ea801a264b3001301c3026375400315980099b8f375c6054604e6ea8004dd7180598139baa3016302737546028604e6ea8c96600200319800800c40060468022047023811c08d02d198011bac30143027375403604713233225330283372c9210d63726564656e7469616c3a3a200037326600e0049101001330180010023374a9001198151ba90014bd701bab3017302837540386eb8c0a8c09cdd5198011bac301430273754036047153302549013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f7264657200164091153302549132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f63726564001640906052604c6ea8c0a4c098dd5180998131baa30293026375400d15330244913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408c44a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980c18139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a98149baa0018992cc004006330010018800c099007409a04d0268132060302d302a375400315330284913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601a60526ea8c058c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601800446602860166eacc054c0a0dd5180a98141baa001002300100122259800980b18129baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302f0028acc004c06cc0a8dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200313259800800c04e264b30010018992cc00400602b13259800800c05a02d1332259800800c062264b30010018acc004c10800a330010128cc0040423300100e8cc0040323300100a8cc0040222b3001302e303d375400d13259800800c06a264b300100180dc06e03701b899912cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f0278992cc004c14400e26606802444b30010028acc004c0fcc138dd500944c96600200302b8992cc004006264b3001001816c4c966002003159800982b801466002007132598009822000c4c9660020030308992cc0040062b3001305a0028992cc004c11c006264b3001001819c4c966002003159800982e80146600200303581a208681a20b481a40d2069034417860b600282c8c15cdd50014566002609800313259800800c0ce264b300100181a40d20691332259800800c0da264b300100181bc0de06f1332259800800c0e6264b300100181d40ea075132598009832001c0f20768308dd6800c0e90641830800a0be375a00260c0005037418460bc00282e0dd6800982e80140d105e182d800a0b230573754005032415082a0c154dd5000c0c505740c6063031818a0b63058001415860a86ea800a2b300130490018acc004c150dd500140c205e82aa05e828905118291baa001817207a81720a881740ba05d02e416060aa0028298c15400a05902c81640b10561829800a0a2304f375402502a413113259800800c5660026080609e6ea8006264b300100181644c96600200302d816c4cc896600200302f8992cc00400606103081844cc89660020030328992cc004006067033819c4c96600260ba007159800803c0d2264b300100181ac0d606b035899912cc00400606f13259800800c0e207103881c44c96600260c400713010306201181ca0be375c0028310c17c00505d1bae001305e008417c60b800e82d206882d0dd6800c0cd05d182d000a0b0375a00260b2005030416860ae00282a8dd6000982b00140b605a82b8c15000505218281baa001815a09a815c0ae05702b415460a400482820508270dd7000a0a2304e00141306eb8004c13400904e1825800a092375c00260940048258c1200050461bae00130470024120608a0028218dd70009822001208a30420014100607c6ea801a03281da03280fa03280fa03280fa03280fa03280fa03280fa03281fa03301980cc0650431820000a07c3758002607e00501680b2080303d00140ec607a00501480a405202881f0c0ec005039181d801404a0250128092078303900140dc6072005010808404202081d0c0dc005035181b801403a01d00e8072070303500140cc606a00500c806403201881b0c0cc0050311819801402a01500a8052068303100140bc606200500880440220108190c0bc00502d18159baa00180320508032058803401a00d00640c0605a0028158dd70009816001205a302a00140a0604c6ea800e0028118888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020565980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81290251bac3028002375a604c0026466ec0dd418130009ba73027001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6056003337149101023a200098008054c0b000600a805100a181700144ca6002015302b00199b8a489023a200098008054c0b0006600e66008008004805100a18170012058302e00140ac66e29220102207d0000340a06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d20503758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720543371666e000056600266e2000520148a40c11481b902a002200c33706002901019b8600148080cdc7002001204e375c0068158dc5245022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408881108acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" : "590882010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc00488c96600260120031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c03800626464b3001301c0028024590191bae301a0013016375400716405080a0c050dd50014896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a6103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a44444646466446644b30013011301d375400313259800980b980f1baa0018acc004cdc79bae3022301f37540026eb8c020c07cdd51808980f9baa300f301f3754646600c0022002660066eb0c03cc07cdd500b00e44cc040dd59808980f9baa0163374a9001198109811180f9baa330033758601e603e6ea80580712f5c11640751640746042603c6ea8c084c078dd51807180f1baa3021301e37540031640704464b30013012301e3754003132598009807180f9baa001899198038008800981198101baa0018b203c3008301f3754601e603e6ea8c088c07cdd5000c5901d1980400111980718021bab300f301f3754601e603e6ea8004008cc018dd6180f980e1baa01323375e6040603a6ea80040488966002601e60366ea800a2646644b300130230018992cc004c04cc07cdd5000c4c8c8c8c8c8c8c8c8ca60026058003302c0089816003cc0b001a605800b302c0049816001cdd61816001244444444b3001303500989980c181a00889980c00389980c00309980c00289980c00209980c0018acc004c090c0c0dd500144c8c8c8c8ca60026eb8c0e40066eb8c0e40166eb8c0e40126eb8c0e400e6eb8c0e40092222259800981f80344cc09802c89660020051598009818181e1baa01489919192cc004c11000a26605a6086006264b300130340018992cc004c11800626464b300130370018992cc004c124006266064609000205516411860886ea800a2b3001303c00189919194c004dd69825000cdd69825001cdd698250012444b3001304e004817c5904b0c128004c124004c110dd5001459042208430423754002608a00316410c60826ea800a2b300130390018acc004c104dd5001409a2c82122c81f903f181f9baa0018b208230420013042001303d37540291640ed132598009818981e9baa001899191919912cc004c11c00e264646644b3001304b0038980598258064590481bae3048001375c609000460900026eb0c1180162c8220dd698220009bad304400230440013043001303e37540031640f0608000481f22c81e060720026070002606e002606c00260626ea800a2c817a2c819060580026056002605400260520026050002604e002604c002604a00260406ea80062c80f0c0880062c8100dd718100009810800980e1baa0028b20343006006300100122232598009807800c4c8c96600260440050048b203e375c604000260386ea800e2b300130140018992cc004c0840062660106eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c5660026014003132598009810800c4cc020dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004cdc3a400c0031323322598009811800c4cc028dd61811000912cc00400a00f19800804cc09000a26002604a00480490224590201bad30200013021001301c375400715980099b874802000626464b3001302200280245901f1bad3020001301c375400715980099b874802800626464b3001302200280245901f1bad3020001301c375400715980099b874803000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa0024566002600c60246ea801e33001301630133754602c60266ea801e6eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50054c058c05cc05cc05cc05cc05cc05cc05cc04cdd50054dd5980298099baa00a48888c8cc00400401488c966002601a003133009006375c603a60346ea800a2b30013012001899198008009bac301e301b375400644b30010018a518acc004cc014014c07c006266004004604000314a080d101d45660026010003132330010013758603c60366ea800c896600200314a115980099802802980f800c528c4cc008008c08000501a203a8acc004cdc3a400c003132337126eb4c078004c8cc004004dd6180f9810001112cc0040062900044cc89660026601001000513370000290014400501d1810000998010011810800a03c301a375400515980099b87480200062646644b30013015301c3754005159800980a980e1baa30203021003899b89375a6040603a6ea8008006266e20dd69810180e9baa002001406d14a080d8c078004dd6980f180d9baa003301a3754601460346ea80162b30013370e9005000c4c8cc8966002602a60386ea800a2b30013015301c3754604060420071337120026eb4c080c074dd500144cdc40009bad3020301d375400480da294101b180f0009bad301e301b375400660346ea8c074c068dd5002c4cc02c010cdd2a400466038603a60346ea80092f5c080c10182030406080c1018180c1baa001459011202218069baa00818051baa0038b2010180480098021baa0098a4d13656400801", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var V0_4ProtocolProtocolWithdraw = exports.V0_4ProtocolProtocolWithdraw = /*#__PURE__*/_createClass(function V0_4ProtocolProtocolWithdraw(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_4ProtocolProtocolWithdraw); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "596880010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492b657870656374207661756c745f646174756d3a205661756c74446174756d203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888888888888888896600264653001302100198109811000cdc3a400930210024888966002600460426ea800e264b3001005899914c004888c966002600c00313259800800c00e264b300100180240120090048992cc004c0c000e00d00540b46eb80050301816800a056302937540091598009802800c4c9660020030038992cc0040060090048024012264b30013030003803401502d1bae00140c0605a0028158c0a4dd50024009026204c3027375400722259800980298139baa0038992cc00400600513259800800c4c9660020030048992cc004006264b3001302d0018acc004cdc4a400860580030068992cc004c0c8012264b3001300c0018acc004c0bcdd5003402601081822b3001300b0018992cc00400601313259800800c02a01500a8992cc004c0d800e01900b40cc6eb400601481b0c0cc00503118179baa0068acc004c03c0062b3001302f375400d0098042060804205840b08160c0b4dd5002c01d02f18049816000a054803205c3754003005802c01600a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b300130053027375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0c800e01100740bc6eb400600c8190c0bc00502d1bae001302e00240bc60580028150c0a0dd5001c0050254888c966002600c00313259800800c00e264b30010018024012009132598009818001c01a00a8168dd6800c0110301816800a056302937540091598009802800c56600260526ea801200700240a900240988130c09cdd5001a44446465300122259800980598169baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130390028cc00401a33001001804c02100e402100b402103640220110088042074303700140d46eb4004c0d800a00a81b8c0d0005032181a001400e007003801a06a303200140c0605c6ea800e002815a444b3001300b302d375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0fc00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c11000e02901341046eb80050441820800a07e375c00260800048208c0f800503c40390144039011403903c1bac001806c03503f181e000a074303c002805c02e01700b40f4607400281c0dd6800981c801402103a181b800a06a375a002606c00500540dc60680028190c0d000a007003801c00d0351819000a060302e375400700140ad223233001001003223300300130020024889660026016605a6ea8042264b300100180a44c96600200313259800800c05a264b30010018992cc00400603113259800800c06603313259800981c801c566002602460686ea801a264b300100180dc4c96600200301c80e44cc896600200301e8992cc00400603f01f899912cc00400604313259800800c08a045022899912cc00400604913259800800c09604b025899912cc00400604f13259800800c4c9660020030298992cc0040062b3001304900289980c007112cc00400a26603401a44b30010028cc00401e330010058cc004dc3a400d370e90044dc3a4014911192cc004c0a8c130dd500e44c9660020030338992cc004006264b300100181ac4c966002003159800982a80144cc8966002606000313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205a81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c0bc006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b503e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b1598009819800c4c9660020030398992cc00400607503a8992cc004c16800e26605200244b3001002803c4c96600200319800800c4c008c17400e07c816a07d03e81f40f905e182d80120b281da0ae375800303a81d20b43057001415460a66ea80162b3001300a0018992cc00400607313259800800c0ea07513259800982d001c4cc0a400489660020050078992cc0040063300100189801182e801c0f902d40fa07d03e81f20bc305b002416503b415c6eb000607503a416860ae00282a8c14cdd5002c566002601200313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205c81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c020006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b903e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b0384140828105020a0414082804c966002605e00313259800800c0e2264b30010018acc004c16000a3300100180440e502d40e505540e607303981ca0b23056001415060a46ea800a2b3001302e0018992cc00400607113259800800c56600260b0005159800981898299baa0018992cc00400607513259800800c4c96600200303c8992cc0040062b3001305c0028cc00400e3300100180640f503240f503240f505940f607b03d81ea0ba305a001416060b400503b81dc0ee07682d8c160005056182a1baa00181ca0a281ca0aa81cc0e6073039416460ac00282a0c148dd500140dd04f209e3050375400260a06ea800e06c829206d03681b40d90561829800a0a2305300281a40d2069034415060a20028278c134dd500e40c904a09980f80c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00641393702900048888c8cc004004014896600200310058992cc00400626600860b000400d133005305800233003003001415860b000282aa6e012001918291829800c8c148c14cc14c0066e95200048888888c8c8c8cc88c96600200313259800981c982d9baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b3001001829414a26644b300100182a44c96600200315980098398014660020251980080846600201d19800806466002015198008044566002609860dc6ea801a264b300100182b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a899912cc0040060b913259800800c1760bb05d82ec4cc896600200305f8992cc0040060c1060830418226644b300100183144c966002003063831c18e0c713259800984100801c4cc144048896600200519800809466002605c6100026ea818a4610802610a02610a02610a020032232330010010032259800800c52845660026006610e0200314a313300200230880100142040484280a4610802610a02610a02610a02610a02610a02610a02610a02003374a90014dc02400491111119192cc0066002444646644b3001306b0028acc004c1acc23404dd5000c5300103d87a80008a6103d8798000422c051598009837001456600260dc611a026ea80062980103d87a80008a6103d87b8000422c0513322598009836800c530103d87b80008acc004c1b0006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000423804847008dd69849809848009baa0038a6103d8798000423404846808dd69848809847009baa003308d01375400284580908b011845809baa00130020033001003919191919912cc004c1ac00a29422b3001306e0028cc004cdd79848809847009baa0014c103d87b8000a50a51422c0513233225980098370014528c56600260da005133225980098379849009baa3041309301375400d133710004003133712004002848008dd6984a009848809baa0035980098369848009baa303f309101375400f100189806000a11c028a50423804847008c23804dd50009bad309201308f013754008612202611c026ea800508b01211602308b013754002611e02612002006611c026116026ea8004c23404004c22404dd5000cc0d8c22004dd50042444b30013068308a0137540031323300a3758611e026118026ea81ac8cdd79848009846809baa001002308e01308b01375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c24004c23404dd50014c24004c23404dd5000c8c8c96600260d8611e026ea8c24c04c2500400a2003132598009836800c4c034cc24c04dd418061bad309401309101375400497ae08acc004c1b800620051002423804847008c23c04dd5000a11a02309201001308e0137540028029300103d87b8000a50a514228051980099baf9800981d9846809baa002981d9846809baa001919192cc004c1b0c23c04dd5184980984a0080144006264b3001306d0018980699849809ba83040375a6128026122026ea80092f5c11598009837000c400a200484700908e011847809baa001423404612402002611c026ea8005005260103d8798000a50a5142280514a084500908a01211402308e01308b01375400260106116026ea81a908801233001308b01308801375401122232330010010042259800800c40122660066120020026600400461220200284700a44b30010018a40011300533002002308e01001422c0522980099804001119baf308e01308b013754611c026116026ea8c0e4c22c04dd5000980399846809ba90024bd70528528a10e02918329844009baa308c0132330010010022259800800c52f5c303d87a80008101800044c8cc89660033001306a308d0137546122020074a14a284580a2661200330014a14c103d87a8000a60103d8798000422c0466120026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c24c0400400e29462660040046128020028468090910144cc24006600294298103d87a8000a60103d8798000422c0466120026e9c0092f5c1133090019800a51a60103d87a8000a60103d8798000422c0466120026e9ccc24004dd400080125eb8108b012116023758611e026120020026eb4c23c04008cc008008c23c0400508c01489660020031480022600a66004004611c0200284580a4444653001001802c012006800888896600200710018acc00400a2a6611c029211d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012612802007309401002cc004c24c0400e6eb4c24c0400a0028029004212202424405222598008014530103d87a80008acc004c1a00062606e6611a02611c0200497ae08cc00400e611e02005303a001400c84400908c01488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064234051330050053094010044234046eb8c23404004dd5984700800984800800a11c0214bd6f7b63048896600260d06114026ea800e264b300100180144c966002003003801c00e264b3001309201003802c01108f011bad001801a12402308f010014234046116026ea800e00284400a44646600200200644b30010018a5eb8226644b30013375e612202611c026ea8c24404c23804dd5181e1847009baa002300a3309001375200a97ae08998480080119802002000c4cc01001000508b01184780800984800800a11a029184600984680984680984680984680984680800c8c23004c23404c23404c23404c23404c23404c23404006444653001001802400d0011112cc00400a2b30010018a518a50423c05159800800c5284566002660086122020046eb4c24404006330010039849008014c248040050034528211602423c0484780a444b30013068308a01375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002612e0200519800803c6600200b132598009838800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd5002456600260e000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001309e010038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b300130a30100380b40550a0011bae001428c0461400200284f008dd7000984f80801214002309d01001426c05010426c046eb000601f00f42780461360200284c808dd6800984d00801403109b01184c00800a12c023094013754009159800983a000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c2840400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c2980400e033018428c046eb80050a601185180800a14202375c002614402004851808c2800400509e01404d09e011bac00180940490a101184f00800a13802375a002613a0200500f42780461360200284c808dd6800984d00801403109b01184c00800a12c0230940137540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd50024566002609400313259800800c02e264b3001001806403201913259800984d80801c03a01a84c008dd6800c03109b01184c00800a12c0230940137540091598009824800c4c96600200300b8992cc00400601900c80644c96600261360200700e806a13002375a00300c426c0461300200284b008c25004dd500240290910121220242440484880909101212202309201375400700941a500940e1009425004612a02002849808c2540400a00f007803c01d09601184980800a12202309301002802c01600b005425004612202002847808c2440400a007003801c00d09201184780800a11a02308b013754007001422005222329800800c01200680088896600200510018cc00400e61240200533004309101002001400c84780a4611802611a02611a02611a02611a020032225980098341845009baa0038992cc00400600513259800800c00e0070038992cc004c2480400e00b004423c046eb4006006849008c23c0400508d011845809baa003800a11002912cc0040062900044c014cc008008c2380400508b01488cdc199b82002375a606e6114026ea8004dd6981c1845009baa0019b88480024466062004466ebcc23804c22c04dd50009ba700292cc004cdc4000a40011303a0018800a10c0248888888888888888888888a6002602a02b2301400198090094c0400424446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803214a02899802802985600802214a02375c614a020026eb4c29804004c2a0040050a601198098020018a400123014001984f009baa0179802802c88c9660026104026142026ea8006264b30010018cc0040062b30013375e60446146026ea800cc29804c28c04dd5002456600266ebcc144c28c04dd50009853009851809baa0038800c260050a001425c050a00142580500d42580612c030960184b00a1500230a50130a201375400309001427c04609c6142026ea8c13cc28404dd50012444444445300122223233001001005223259800984600800c4c94cc2b804cdcb248121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660b06ea4005220100132598009847009858009baa001899194c004dd7185b00800cdd7185b00985b80800cdd7185b008012444a66168029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330b4013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660bc6ea400522010015330b4013372c9201187665726966795f65643235353139207061796c6f61643a20003732660bc6ea400922010015330b4013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660bc6ea400d2201001325330b5013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660bf3001001a60103d87a8000a60103d879800042d00491010010019800800c00a006b950c2d804004dd6185a009858809baa0018a998578099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660b26ea400922010014a0857008c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c616c020020091305f330b501374e00297ae0899801801985b808012160023758616a02002859808dd71859009857809baa0028acc004c22c04006264a6615c0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416c6c4f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b804910100100132330010010022259800800c528c5660026600c00c616a0200313300200230b6010018a5042bc04859808dd61859009857809baa0028acc004c23c04006264a6615c0266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416e794f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013302e0012330050050013758616402615e026ea800a2b3001306600189919912998580099b96490112436865636b696e672041744c656173743a20003732660b46ea00092201001325330b1013372c92011941744c656173742073617469736669656420636f756e743a20003732660b66ea00052201001325330b2013372c92011041744c6561737420726573756c743a20003732660b93001001a60103d87a8000a60103d879800042c4049101001001337120060033001001a400122598009980400400144c0bc00620028588090291bad30b3010013758616602616802002615e026ea800a2b300130650018992998570099b9649111436865636b696e67204265666f72653a20003732660b06ea00052201001325330af013372c92010f4265666f726520726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc49bad30b50130b20137540020071337106eb4c2d404c2c804dd5000801a15e028a5042bc046168020026160026ea8c178c2c004dd50031bad30b20130af0137540051598009832000c4c94cc2b804cdcb24910436865636b696e672041667465723a20003732660b06ea00052201001325330af013372c92010e416674657220726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc48019bad30b50130b20137540031337100066eb4c2d404c2c804dd5000a15e028a5042bc046168020026160026ea8c2cc04c2c004dd50031bad30b20130af0137540051325330ae013372c920111436865636b696e67205363726970743a20003732660b06ea40052201001325330af013372c92010f53637269707420726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232330010010072259800800c528456600266ebc00cc2c804c2d8040062946266004004616e020028580090b401181619859009ba90014bd701bae30b20130af0137540048560090ac0121580242b0048560090ac011856809baa0019112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a15002912cc004cdc4000a400114c103d87a8000899804001000a14e029112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a1500248888ca60024444446644646644b30013370e66e04dd6985d80985c009baa30bb01003375a6176026170026ea8c2ec04010006264b30013370f30013758606c6172026ea80329000488cc89660033001309a01001a50a5142e8051325980099b893302300100598008044dd7186080801cdd7186080986100801a036899b800040018a9985e00a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642ec0466e08004016200685d008dd6185f00985d809baa00232980080552000912cc004cdd79813185f009baa002374e0071337000026eb4c1b0c2f804dd5001440050bb01204a3758617c026176026ea800902219b8100200a8801454cc2dc052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001642d804b3001301c0098a40031480090b501454cc2d8052415a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e74001642d4046eacc2e404c2e8040056600261260260200071480022b300100385800c4c96600261760200915980099b8f375c616c0200291104555344720089bad30b7010018a9985a80a491d657870656374206e616d65203d3d20636f6e7374616e74732e75736472001642d0050b10142e00461720200685b8090b301185c80800998119bab301b30b301375400a6eb8c184c2cc04dd5180f9859809baa0069800802cdd7185b009859809baa301f30b301375400d003801200e9111192cc004c23c04c2c404dd5000c4c96600266ebcc2d804c2cc04dd5185b009859809baa001302f330b501375200a97ae08acc004c23c0660026eacc184c2cc04dd5000c01691010d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b5013754007006a4504555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c54cc2c8052412d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001642c40460c06166026ea80062a661620292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b10149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001642bc046600e008003222232598009847809858809baa0018992cc004cdd7985b009859809baa30b60130b301375460c26166026ea8004c0bccc2d404dd4802a5eb822b3001308f0198009bab306130b301375460c26166026ea800600b48810d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b501375460c6616a026ea800e00d48904555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c288050b10118301859809baa306130b301375400315330b1014901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b1014914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001642bc046600e0080029112cc004c2340402e26644b30019800985a809859009baa058815cc0bcc2c804dd504880cdd5980f1859009baa091014029159800998139bac30b50130b2013754122026eb8c0c4c2c804dd5180f1859009baa0588acc0066002660406eb0c2d404c2c804dd5048809bae305f30b2013754603c6164026ea81626eb0c180c2c804dd5000cdd618179859009baa05848896600266e1cc05800cc0580162b300130110028cc00400e005223259800984a80985b809baa001899192cc004c25c04c2e404dd5000c4c8ca60026603e010003375860486178026ea80126eb4c2fc0400922259800984e00985f009baa0038acc004cdc499199119b8330713370066e08004dd698379861009baa003002002375a60dc6180026ea8004dd698371860009baa00830c20130bf0137540073001375660da617e026ea8c1b4c2fc04dd50054dd71861008014dd718610098618080120388acc004cdc38009bad306d30bf01375400f13375e6e9c010c09cc2fc04dd5003c5282178028a5042f00515330bd014914365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001642f0043758617c02617e020026174026ea800629410b7011833185c809baa3301200400130bb0130b80137540030aa0142d4046601a00e002810214c0285900a14a02859009159800cc004dd6182f9859009baa091019bac30b50130b2013754003330b401306030b2013754603c6164026ea8160cc2d0053001054455534472004bd702444b30013370e6028004602c00b19800802c00a4464b300130950130b70137540031325980099baf30bc0130b90137540026178026172026ea8c2f004c2e404dd5002456600266ebcc198c2e404dd50009833985c809baa30bc0130b901375400913370f3001375660ce6172026ea80066eb8c2f0040166eb8c19c015016180d9bad306730b901375400914a085b00a29410b601185d80985c009baa00185780a16a023300d00500140810a10142c804899b87980082c42440690004dd6982f9859009baa0019bad303130b2013754003002401530010029bac30b50130b201375400323017375a60c26166026ea8005007454cc2c005241856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a2020202029001642bc0515330b0014918f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642bc050ad0142bc0515330b0014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642bc046eb0c2cc04c2c004dd50141859809858009baa092018992cc004c2340403226644b3001980098309859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc0066002660426eb0c2d804c2cc04dd5049009bae306030b3013754603e6166026ea81666eb0c184c2cc04dd5000ccc2d404c184c2cc04dd5180f9859809baa059330b5014c1054455534472004bd702444b30013370e602e006602e00b159800980900146600200700291192cc004c25804c2e004dd5000c4c8c966002612e026174026ea800626464b3001337120033001375660d6617a026ea8c1acc2f404dd5003cdd71860008044dd718600098608080420348acc004cdc380098371bad306b30bd01375400913375e618002618202004604a617a026ea801229410ba014528217402375a617e020026176026ea800629410b8011833985d009baa3301300400130bc0130b90137540030ab0142d8046601c00e002810a14e0285980a14c02859809159800cc004dd618301859809baa092018014dd6185b009859809baa0019bac303030b30137540b2801a266e1e60020b309201a4001375a60c06166026ea80066eb4c0c8c2cc04dd5000c0090064c00400a6eb0c2d804c2cc04dd5000c8cdc41bad306230b4013754002900020108a9985880a4819e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001642c0050ae0142c00515330b1014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018acc004c2440403226644b3001980098301859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc004cc896600266e1cc058008c0580122b300130110018cc00400a003223259800984a80985b809baa001899192cc004c1c4c2e404dd5000c4c96600266e1cdd6985f008009bad306930bb01375400713375e617c02617e0200260466176026ea800e29410b801185d009baa0018a5042dc0460cc6172026ea8cc048010004c2ec04c2e004dd5000c2a8050b50119806803000a04085300a1640285280a16402330213758616c026166026ea824804dd718301859809baa301f30b30137540b26eb0c184c2cc04dd5000c5660033001375860c06166026ea8248060053758616c026166026ea80066eb0c0c0c2cc04dd502ca0068984800cc0041661240398008014dd6185b009859809baa00192cc004c060dd69831185a009baa00189848809bad306130b401375400314a08588090084dd698301859809baa0019bad303230b3013754003002401915330b1014901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001642c0050ae0142c00515330b1014901896578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018992cc004c1a4036330013758616a026164026ea80aa44444b30013370e603000a60300091598009809801c4cdc4800cc0040160074800244464b300130980130ba0137540031332259800984e80985e009baa0018992cc004006330010018acc004cdd7981e985f009baa00330c10130be01375400f15980099baf306c30be013754002618202617c026ea800e264b3001309f0130be013754003132325980099b87375a6188020046eb4c1bcc30404dd5003456600266e1cdd69862008009bad306e30c101375400d15980099baf30c40130c501001302930c101375400d1337000113001375660de6182026ea8c1bcc30404dd50054dd71862008064dd7186200986280806203c8a9985f80a493665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001642f80515330bf0149126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001642f80515330bf014912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001642f804618802002617e026ea80062a6617a02921184578706563746564204f4465706f73697420616374696f6e001642f00460d6617c026ea80061660285d80a1640285d80a162028142162030b10185880c2c4050c301186000985e809baa00185580a1740230be0130bb01375400260d06176026ea8c1a4c2ec04dd500242b4050b80119808003801205285400a1680285380a16802985a809859009baa094014889660033001303430b50137540b702e9819185a809baa094019bab302130b501375412802806a26644b300159800980d8014528c660026128020034a14a285a0090b40144c966002612a02616e026ea80063300198009bac30bb0130b801375412e03375c606e6170026ea8c090c2e004dd502f4dd71833185c009baa302430b80137540bd375a6176026170026ea80050094dd6985d80985c009baa30bb01980084b80cdd7185d80985c009baa302430b80137540bd375a60ca6170026ea80126eb4c0dcc2e004dd500220189b810029812985c009baa00448888c8c8cc8966002613a02617e026ea8016264b30013370e66e04dd6986200800802802456600266e1cdd698620098628080080145660026020017159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c01054455534472004bd7052000403915980099b8900398009bac306e30c1013754140034800244b30013375e618c026186026ea8008c31804c31c04c31c04c31c04c31c04c31c04c31c04c31c04c31c04c30c04dd5034c4cdc0000cc004dd598389861809baa0029bae307130c3013754605e6186026ea81a691010455534472004081100143000481c22b3001323371266e0003403260026eb0c0fcc30804dd5034520009119192cc004c0a8006266e0000ccdc199b82001375a60e8618c026ea8010dd698399863009baa0048801a1860298008024dd7186400800cdd7186400986480800a0443758618e026188026ea800902b1bab30c40130c50130c501980085000cdd71862009860809baa302d30c10137540cf375a60dc6182026ea80366eb4c100c30404dd5006a02a899b879800833c28006600e019375a60dc6182026ea80366eb4c100c30404dd5006c03d014005c54cc2fc052418d6578706563740a20202020202076616c69646174655f726573657276655f64656c74615f666f725f6465706f736974280a202020202020202076616c75655f64656c74612c0a202020202020202073657474696e67732e726573657276655f6173736574732c0a202020202020202072657175697265645f757364725f6261636b696e672c0a20202020202029001642f80515330bf014912b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001642f80515330bf014919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001642f805159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c1054455534472004bd704c1c800d00e44cdc3cc00419e14003300700c9bad306e30c101375401b375a60806182026ea803601e80a002e2a6617e02921b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001642f80485f00a2a6617e029213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001642f80515330bf014913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001642f8053001375860da6180026ea827c066eb8c0fcc30004dd518161860009baa0669bae306e30c001375460586180026ea819a6eb4c30c04c30004dd5002a02485500a17a023004001375a61820261840200cb30013021004899b833370400e0020091480010ba011bad30bf010044284050b501180f985b809baa0038a9985a80a4812e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001642d00530010039bac30b80130b501375400323005375a60c8616c026ea800500a4c00400e9000488cdc00009bad306430b701375400480f22a6616602921886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6465706f7369745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c8048acc004c1a003626644b30019800980e185a009baa05a816cc0c4c2d004dd504980cdd59810185a009baa093014031159800998149bac30b70130b4013754126026eb8c2dc04c2d004dd51810185a009baa05a899912cc004c24c04c2d404dd5000c4c8cc896600260100051598009804000c566002b30013096010018a518980e801216c028992cc004c0780062b30019800998141bac30bd0130ba013754132026eb8c19cc2e804dd51813185d009baa0609bac306830ba01375400f330bc01306830ba013754604c6174026ea8180cc2f005301054455534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e8c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b300198009bac306730ba013754132033758617a026174026ea801e661780260446174026ea8c098c2e804dd50301985e00a60106457355534472004bd702444b30013370e6038004603c01719800805c00a4464b3001309d0130bf0137540031325980099baf30c40130c10137540026188026182026ea8c31004c30404dd5002456600266ebcc1b8c30404dd500098379860809baa30c40130c101375400913370f3001375660de6182026ea80066eb8c310040166eb8c1bc01501e2cc004c2780402626eb4c1bcc30404dd500244cdc199b82375a60de6182026ea80100240290be014528217c028a5042f8046186026180026ea800616e0285e808cc05401400502842a4050ba012264b300130980130ba0137540031325980099b87375a617e0200266e000140222b30013370e6eb4c2fc04c30004004cdc0002001c56600266e1e60026eacc090c2f004dd504d80cdd71812185e009baa302830bc0137540c54881057355534472004064007130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd503152201045553447200406515330ba01491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001642e40515330ba014914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001642e40515330ba0149140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b801491dd6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001642dc0515330b801491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001642dc0515330b801491186578706563742073757364725f746f5f6d696e74203e2030001642dc04b30013096010018802c4cdc199b8200500100242d80515330b7014913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001642d80515330b701491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001642d80515330b7014911d657870656374207661756c745f757364725f6265666f7265203e3d2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491866578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa09401899912cc006600260426168026ea816a05b303130b401375412603375660406168026ea824c0500c4566002660526eb0c2dc04c2d004dd5049809bae30b70130b401375460406168026ea816a26644b300130930130b5013754003132332259800980e8014566002603a00313259800980f000c5660033001330283758617a026174026ea826404dd71833985d009baa302630ba0137540c1375860d06174026ea801e661780260446174026ea8c098c2e804dd50301985e00a6106457355534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e4c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b30013370f3001375660446174026ea8264066eb8c088c2e804dd51813185d009baa060a44105735553447200405c60d600d13259800984c00985d009baa0018992cc004cdc39bad30bf010013370200a00715980099b87375a617e0261800200266e040100222b300130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd5031522010455534472004065198009bac306930bc013754136033758617e026178026ea80266617c0260d46178026ea8c0a0c2f004dd50311985f00a61054455534472004bd702444b30013370e603c004604001b19800806c00a4464b3001309f0130c10137540031325980099baf30c60130c3013754002618c026186026ea8c31804c30c04dd5002456600266ebcc1c0c30c04dd500098389861809baa30c60130c301375400913370f3001375660e26186026ea80066eb8c318040166eb8c1c401502019b83337046eb4c1c4c30c04dd5002006005c5282180028a50430004618a026184026ea80061720285f808cc05c01400502a42ac050bc0122a66174029211765787065637420757364725f6d696e746564203d3d2030001642e40515330ba01491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001642e40515330ba014913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b8014912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001642dc0515330b801491a86578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202029001642dc0515330b8014911a65787065637420757364725f746f5f72656c65617365203e2030001642dc053001007a4001223370000266e0ccdc11bad306930bb01375400400800681122a6616e02921236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001642d80515330b7014911c657870656374207661756c745f757364725f6265666f7265203e2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e756e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa0940142bc04857808dc4a40008570090ae0111112cc004cdc39809801180a801c6600200700291192cc004c25004c2d804dd5000c66002617402616e026ea80066eb0c07cc2dc04dd5001ccc068010dd6180f985b809baa003488966002612e026172026ea80062b30013375e617a026174026ea800cc2f404c2e804dd5185e80985d009baa0068acc004cdd79833985d009baa003306830ba013754617a026174026ea801a266e1e60026eacc1a0c2e804dd5001cdd7185e808014dd7185e80985f00801202e3301f301c375a60d06174026ea8018c2f404c2e804dd5000c528216e028a5042dc0515330b80149015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642dc0485700a168023300c006001407d0a00142c404856808444464b3001308e0130b00137540031325980099baf30b50130b2013754616a026164026ea8c180c2c804dd500098171985a009ba90054bd704566002611c033001375660c06164026ea8c180c2c804dd5000c016910108747265617375727900403d132598009849809859009baa0018992cc004006330010018992cc004c24804c2d004dd5000c4c96600266ebcc2e404c2d804dd5185c80985b009baa0013032330b801375201297ae08acc004c2480660026eacc190c2d804dd5000c026910108747265617375727900404d13259800984b80985b009baa0018992cc0040063300100189985d008029985d008009985d009ba6329800800cdd59833985c809baa00499198008009bab306830ba01375460d06174026ea8024896600200314bd6f7b63044c8cc2f804cdd8185d808009ba632330010013756617a0200444b30010018a5eb7bdb182264661820266ec0c2f804004dd418381bad30bf010013300300330c30100230c10100142fc0466006006618002004617c0200285e0090011112cc00400a2003132332298008034c30804016646600200200a44b30010018998610099bb037520086e9800d2f5bded8c113298009bae30c0010019bab30c1010019862808012444b3001337200100071330c601337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528218c02880144cc31c04cdd81ba9009374c002004861008ca6002003008801a002222598008014400626466453001006986700802cc8cc00400401489660020031330ce01337606ea4010dd4001a5eb7bdb1822653001375c619802003375a619a0200330d10100248896600266e4002000e2661a40266ec0dd48041ba80070058acc004cdc7804001c4c966002615c0200310028998698099bb037520126ea00040090ce0119b800070028998690099bb037520066ea0008cc0180180050cd01219a02186780800a19a0240186eb8c31c04004dd69864008009865008012190028998630099bb037520066e98008cc0180180050c101218202186180800a1820240186eb8c2ec04004dd5985e00800985f008012178024bd7042c40501f42c406162030b10185880a17a0230ba0130b701375400315330b50149012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642d00460c6616c026ea80062a6616802920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642cc0515330b40149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642cc04617002616a026ea80062a661660292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001642c804660146eb0c184c2d004dd5004002c2b00501b42b006158030ac0185600a1720230b60130b301375400315330b10149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642c00460be6164026ea8c180c2c804dd5000c54cc2c0052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642bc0515330b0014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642bc046168026162026ea80062a6615e0292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001642b8046600c6eb0c2cc04c2c004dd500200108a9984300a4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001642140464660020026eb0c0d4c22004dd5035112cc004006297ae0899845809ba732323308d01308e010023308d013038308b0137540026611a026ea4cc894cc22c04cdcb2481165369675374727563747572652e636f6e746578743a200037326606a612002611a026ea8005220100153308b013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606a6076611a026ea8005220100153308b013372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606a6074611a026ea8005220100153308b013372c9201165369675374727563747572652e7061796c6f61643a200037326606a6018611a026ea800522010013253308c013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606c6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002423004846008dc68009bae309001308d01375400266e28c008dd7181d9846809baa0013371460046eb8c0e8c23404dd500098011bae300c308d013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002422804845008dc6800981b9984680a610b4a5369676e617475726531003308d01308e01308b013754611c026116026ea8004cc234053010140003308d01375200a97ae04bd701846809847008009bac308c0100133002002308d010014228046e50dd980320cc82ba264b30010018acc004c178c20004dd5000c4c9660020030688992cc0040060d3069899912cc0040060d713259800800c1b20d906c899912cc0040060dd13259800800c1be0df06f8992cc004c2380400e2b300100783844c966002003071838c1c60e31332259800800c1ce264b300100183a41d20e90748992cc004c24c0400e260206126020230754240046eb800509301184800800a11c02375c002611e02010848008c2340401d08b0141c108b011bad001837a11c02308b010014224046eb4004c2280400a0d8845808c22004005086011bac001308701002834c1a508801184280800a10602308101375400306741f9067833c19e0ce843008c20c0400908101419107f1bae00142080460fe00283e8dd7000983f00120fe307c00141e86eb8004c1ec00907c183c800a0ee375c00260f000483c8c1d80050741bae001307500241d860e60028388c1bcdd5003415506c415501441550144155014415501441550144155014415507041560ab05582aa0e8307100141bc6eb0004c1c000a0a505241c460dc0028360c1b800a0a1050828414106f1836000a0d4306c002827413a09d04e41b460d40028340c1a800a09904c826413106b1834000a0cc3068002825412a09504a41a460cc0028320c19800a09104882441210671832000a0c43064002823411a08d046419460c40028300c18800a08904482241110631830000a0bc305c37540050424164444653001001802400d001111192cc004c0fc006264b300100180344c966002003007803c01e00f132598009834801c0160108330dd7000a0d23066001419060c46ea800e2b3001303e0018992cc00400600d13259800800c01e00f132598009834801c4cc0e000489660020050078992cc0040063300100a800c4c008c1b000d00a402e01700b805a0da306a00241a100841986eb000600f00741a460cc0028320c188dd5001c566002608400313259800800c01a264b3001001803c01e264b3001306900389981c000912cc00400a00f13259800800c66002015001898011836001a014805c02e01700b41b460d400483420108330dd6000c01e00e8348c19800506418311baa0038acc004c064006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260d800713303b0012259800801402a264b30010018cc00403600313002306f003403500e807403a01c8380c1b400906b402d0691bac001805402906c1834800a0ce375a00260d000500741a460cc0028320c188dd5001c566002603000313259800800c01a264b3001001803c01e00f132598009834801c0160108330dd6800c01d0691833000a0c830623754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260d200700580420cc375a00300741a460cc0028320c188dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260d200700580420cc375c0028348c19800506418311baa003802a0be417c82f905f20be417c82f8c180dd50014106083041820a0c03008305a3754646644a660b666e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a200037326600a6ea416522010013259800981d982e9baa00189929982e99b9649113666f756e642070726f7879207574786f3a3a200037326600e002910100132598009820182f9baa0018992cc0040062b3001303e3060375400313259800800c126264b3001001825412a09504a899912cc0040060991325980098350014401a09a8338c1a00050661bae001306700241a060ca0028318c184dd5000c12105e412209104882420cc306330603754003153305e49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164174601860be6ea8c034c17cdd50009830982f1baa0018a9982e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016416c660080024646600200260086eacc034c17cdd51806982f9baa0022259800800c528456600266e3cdd7183180082e4528c4cc008008c19000505d20c230010013758601260b66ea80e8896600200314bd7044cc178c16cc17c004cc008008c18000505d1800800911919800800801912cc0040062980103d87a80008992cc004c01000626012660be00297ae0899801801983080120b4305f001417444464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20c05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c82d105a1bac305d002375a60b60026466ec0dd4182d8009ba7305c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60c0003337149101023a200098008054c18400600a805100a183180144ca6002015306000199b8a489023a200098008054c184006600e66008008004805100a183180120c23063001418066e29220102207d0000341746eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c20ba3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e417c66e2ccdc0000acc004cdc4000a40291481822903720be004401866e0c00520203370c002901019b8e00400241706eb800d0601b8a4881022c20002232330010010032259800981b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002300b00189980299b8400148050cdc599b803370a002900a240c000682b90571803803a264b300100181a40d2264b300100181ac4c96600200303681b40da06d1332259800800c0e2264b30010018acc004c16000a264b300130323054375400513259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc0040060810408204102264b300130600038acc004c0e4c16cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d132598009833001c4c966002608000313259800800c126264b3001001825412a09504a8992cc004c1a800e02504b419c6eb800506a1833800a0ca30633754017159800981f800c56600260c66ea802e01f048419104841808300c184dd5005411d0631bae001419860c60028308dd7000983100120c63060001417860b86ea801a08282ca08282e8dd7000a0c0305d001416c60ba00503e81f40fa07c82f0c16c005059182d80140f207903c81e20b83059001415c60aa6ea800a07482904c01cc16002207282aa07303981cc0e5059182b000a0a8375c00260aa00482b0c14c0050511bac00181a40d10541828801209e40b902140b902144c96600200302f817c0be2646006609e0086eb400605e8278c13000904a44c96600200302d816c0b62646006609a0086eb400605a8268c12800904840a904640aa05502a815209430470014114608e00502881440a20508240c1140050431bad0013044002812a08a304200141006eb4004c10400a0448210c0fc00503d1bac001303e00280fc07d03f181e000a0743758002607600501c80e2078303900140dc606a6ea801a034819203481b0dd6000c06603281c8c0d8005034181b001405e02f01780ba06e303400140c8606800501580ac05602a81a8c0c800503018171baa010809a0561112cc004c028c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a801466002007132598009807800c56600260646ea800a00f00640cd1598009807000c4c9660020030078992cc0040060110088044022264b3001303900380540250361bae00140e4606c00281a0c0c8dd50014566002602400313259800800c01e264b30013038002804c021035181b000a0683032375400500640bc817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a8444b30013009302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002601c00313259800800c01e264b30010018acc004c0dc00a264b300130110018992cc00400601513259800800c566002607400519800800c032016808a01681ba01700b805c02d03b181c000a06c303437540051598009808000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0340062b3001303137540050078032064803205c40b8605e6ea800600a805a00a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c0050290dc3a40006e1d2002804402201100840a0604a60446ea800e2c80f8604200260386ea808a293454cc06924011856616c696461746f722072657475726e65642066616c7365001365640641" : "593595010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a4005223233001001003223300300130020024888a60024464b30013006001899192cc004c05c00a0091640506eb8c054004c044dd5001c566002600a0031323259800980b80140122c80a0dd7180a80098089baa0038b201e403c601e6ea800a44b30013005300f3754005132323259800980b80144c8c9660026014003159800980a9baa002803459016456600260120031323259800980d80140222c80c0dd6980c800980a9baa0028acc004c0340062b3001301537540050068b202c8b2026404c8098c04cdd5000980b001c59014192cc004c04c0062b30013371290021809000c5a2600e6024002808a2c80a0dd5180a800980a80098081baa0028b201c912cc004c014c03cdd500144c8c8cc896600260300070058b202a375a602a0026eb8c054008c054004c040dd500145900e488c966002600c0031323259800980b80140122c80a0dd6980a80098089baa0038acc004c0140062b3001301137540070028b20248b201e403c601e6ea8009222232323322598009805980a9baa010899191919912cc004c07c00e264b30013011301b3754003132323232323298009812800cdd61812802cdd698128024dd69812801cc0940092222259800981580344cc068dd61815005912cc00400a26603800c44b300100289980d00289980d0048cc004dc3a400d370e90044dc3a4014911192cc004c090c0b8dd500ac4c8c8c966002606c005132332259800981500144c96600260740031330293758607200244b300100280244cc08cc0ec0084c004c0f0009039459037181a9baa0038acc004c0a400a264b3001303a0018998149bac303900122598008014012266046607600426002607800481ca2c81b8c0d4dd5001c566002605a00513259800981d000c4cc0a4dd6181c800912cc00400a009133023303b00213001303c00240e51640dc606a6ea800e2b3001300a0028992cc004c0e80062660526eb0c0e40048966002005004899811981d80109800981e00120728b206e30353754007159800980480144c96600260740031330293758607200244b300100280244cc090c0ec0084c004c0f0009039459037181a9baa0038acc004c02000a264b3001303a0018998149bac303900122598008014012266048607600426002607800481ca2c81b8c0d4dd5001c59033206640cc8199033206630323754002264b300130290018992cc004c0e400626604a607000200f1640d860686ea800e2b300130280018992cc004c0e4006264b3001302b30353754003132323259800981e80144cc0a8c0f000c4cc0a800402e2c81d0c0ec004c0ec004c0d8dd5000c59034181c000c59036181a1baa0038b206440c860646ea8008c0d400e2c8198c0d0004c0d0004c0bcdd500ac5902d09981080a912cc00400a330012303430350019181a181a981a800cdd2a400122232598009814800c4c8c96600260740050048b206e375c607000260686ea800e2b300130280018992cc004c0e40062660506eb0c0e000489660020050058cc00401e607400513001303b002401c81c22c81b0c0d0dd5001c566002605800313259800981c800c4cc0a0dd6181c000912cc00400a00b19800803cc0e800a2600260760048039038459036181a1baa0038acc004c0240062646644b3001303b0018998151bac303a0012259800801401e33001009981e00144c004c0f400900920748b2070375a6070002607200260686ea800e2b30013008001899192cc004c0e800a0091640dc6eb4c0e0004c0d0dd5001c566002600e0031323259800981d00140122c81b8dd6981c000981a1baa0038acc004cdc3a40180031323259800981d00140122c81b8dd7181c000981a1baa0038b206440c88191032206440c88190c0c8dd500124444646644b3001302c30363754005132323232323232323298009821800cc10c022608600f30430069821802cc10c012608600737586086004911111112cc004c130026266024609602226602400e26602400c26602400a2660240082660240062b3001303d304737540051323232323298009bae30500019bae30500059bae30500049bae30500039bae30500024888896600260ac00d13304500b225980080144cc10805066002604860a86ea813a460b060b260b260b20032232330010010032259800800c5284566002600660b600314a3133002002305c001415882ca460b060b260b260b260b260b260b260b200337009000cdc024005374a9001244444446464b300198009111919912cc004c16000a2b300130583062375400314c0103d87a80008a6103d87980004185159800982d801456600260b660c46ea80062980103d87a80008a6103d87b800041851332259800982d000c530103d87b80008acc004c164006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041908320dd6983418329baa0038a6103d8798000418c8318dd6983318319baa00330623754002830906118301baa00130020033001003919191919912cc004c16000a29422b3001305b0028cc004cdd7983318319baa0014c103d87b8000a50a514185132332259800982d8014528c56600260b40051332259800982e18339baa30383068375400d1337100040031337120040028330dd6983498331baa00359800982d18329baa30363066375400f100189806800a0c88a5041908320c18cdd50009bad30673064375400860cc60c66ea800506120c23060375400260c860ca00660c660c06ea8004c188004c178dd5000cc0b4c174dd5004a444b30013055305f37540031323300b375860c860c26ea81608cdd7983298311baa00100230633060375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c194c188dd50014c194c188dd5000c8c8c96600260b260c86ea8c1a0c1a400a200313259800982d000c4c030cc1a0dd418069bad30693066375400497ae08acc004c16c0062005100241908320c190dd5000a0c63067001306337540028029300103d87b8000a50a5141811980099baf9800981918311baa002981918311baa001919192cc004c164c190dd51834183480144006264b3001305a00189806198341ba8300e375a60d260cc6ea80092f5c1159800982d800c400a2004832106418321baa001418c60ce00260c66ea8005005260103d8798000a50a51418114a0830106020c0306330603754002601260c06ea815d05e2330013060305d375401322232330010010042259800800c401226600660ca0026600400460cc002831a4530013300900223375e60c660c06ea8c18cc180dd5181818301baa001300633062375200497ae0a50a51417523052305d375460c2646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130573062375460cc0074a14a2830a2660cb30014a14c103d87a8000a60103d87980004184660ca6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1a000400e294626600400460d2002831906644cc196600294298103d87a8000a60103d87980004184660ca6e9c0092f5c11330659800a51a60103d87a8000a60103d87980004184660ca6e9ccc194dd400080125eb8106120c2375860c860ca0026eb4c190008cc008008c190005061489660020031480022600c6600400460c6002830244b30010018a40011300633002002306300141812222329800800c01600900340044444b30010038800c66002009306900398348016600260d0007375a60d00050014014802106648896600200514c103d87a80008acc004c1540062605c660c460c600497ae08cc00400e60c80053008001400c82f1061488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006418d1330050053069004418c6eb8c188004dd598318009832800a0c614bd6f7b6304896600260a860bc6ea800a26464b30013065002801c590621bad3063001305f37540051641752232330010010032259800800c52f5c1133225980099baf30663063375460cc60c66ea8c0ccc18cdd50011804998329ba90054bd7044cc194008cc0100100062660080080028308c190004c19400506248c184c188c188c188c188c188006460c260c460c460c460c460c460c4003222329800800c012006800888966002005159800800c528c52820c88acc00400629422b3001330043066002375a60cc00319800801cc19c00a60ce002801a294106120c841912259800982a182f1baa0028991919194c004c19800660cc007306600248896600260d4009133030306900713305300213259800982e000c4c8cc896600260dc003132323322598009839001c0422c8378dd718378009bae306f002306f001375860da0031641ac6eb4c1ac004c1b0004c19cdd5001456600260b60031323322598009837000c4c8c8cc896600260e40070108b20de375c60de0026eb8c1bc008c1bc004dd61836800c5906b1bad306b001306c00130673754005159800982f800c4c8ca60026eb4c1b000660da003375a60d80049112cc004c1c000a264646644b300130740038094590711bae3071001375c60e200460e20026eb0c1bc00a2c836860d800260ce6ea800a2b3001303c00189919912cc004c1b8006264646644b3001307200380845906f1bae306f001375c60de00460de0026eb0c1b40062c8358dd69835800983600098339baa0028acc004c0ec00626464b3001306d002805c5906a1bad306b00130673754005159800981d000c4c8c96600260da00500b8b20d4375a60d600260ce6ea800a2c832906520ca4194832906518329baa0018b20ce183300098328009832000982f9baa0028b20ba911194c0040060090034004444b30010028800c660020073067002998021833001000a0064191230613062306230623062001912cc004c150c178dd500144c8c96600260ca0050038b20c4375a60c600260be6ea800a2c82ea44b30010018a400113006330020023063001418137029000488cdc199b82002375a605c60be6ea8004dd69817982f9baa0019b88480024466056004466ebcc18cc180dd50009ba700248888888888888888888888a60024444646600200200a4464b30013070001899192cc004c1c8c1f0dd5000c4c8ca60026eb8c2080400a6eb8c20804c20c040066eb8c2080400572a308201001375861000260fa6ea8006294107b1919800800804112cc0040062980103d87a80008992cc004cdc79bc8375c6104020020091304d3308101374e00297ae089980180198418080120fa375861020200283f8dd7183f183d9baa0028acc004c1bc006264660020026eb0c1fcc1f0dd5001912cc00400629462b300133005005308001001899801001184080800c52820f641f91598009839800c4cc094dd6183f183d9baa0022330040040018acc004c14000626466e24dd6983f800cc004dd6183f984000800d2000912cc004cc01801800a2604a003100141f080f0c1ecdd50014566002609e0031323322598009839183e9baa0028acc004c1c8c1f4dd5184080984100801c4cdc49bad308101307e37540040031337106eb4c20404c1f8dd5001000a0f88a5041f060fe0026eb4c1fcc1f0dd5001983d9baa304b307b375400b1598009827000c4c8cc896600260e460fa6ea800a2b30013072307d37546102026104020071337120026eb4c20404c1f8dd500144cdc40009bad308101307e375400483e2294107c183f8009bad307f307c375400660f66ea8c1f8c1ecdd5002c4c8c8cc004004018896600200314a115980099baf003307d3081010018a51899801001184100800a0f841fc6042660fa60fc60f66ea80092f5c083c907920f241e483c9079183c9baa0019180a800cc04c04e6024025301001091119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c83da26600a00a61020200883d8dd7183d0009bad307b001307d00141ec660260080062900048c05400660e66ea805e600a00b2232598009837983b1baa001899198068008acc004cdd79811983c1baa003307b3078375400915980099baf30483078375400260f660f06ea800e20031641d91641d860f460ee6ea80062c83a8c114c1d8dd51823183b1baa00292cc004cdc4000a4001130050018800a0e6488888888888c8ca60024444446644646644b30013370e66e04dd69847809846009baa308f01003375a611e026118026ea8c23c04010006264b30013370f30013758606c611a026ea80329000488cc89660033001308601001a50a51423c051325980099b893302100100598008044dd7184a80801cdd7184a80984b00801a032899b800040018b2120023370400200b1003423c046eb0c24804c23c04dd5001194c00402a90004896600266ebcc094c24804dd50011ba7003899b80001375a60c46124026ea800a20028480090241bac309201308f0137540048108cdc08010054400a2c845809660026034013148006290012114028b2114023756611a02611c02002b3001307f300e0038a4001159800984700801c4c96600266e3cdd7184500800a4504555344720089bad308b010018b211202308d010038b211602422004611a02002660446eacc068c21c04dd50029bae30573087013754603c610e026ea801a600200b375c611402610e026ea8c078c21c04dd5003400e004803a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444464b3001307b30850137540031325980099baf308a013087013754611402610e026ea8004c0b4cc22404dd4802a5eb822b3001307b98009bab30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab30593089013754007006a441045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5000c5908501459085011844809843009baa0018b210802330060040019111192cc004c1ecc21404dd5000c4c96600266ebcc22804c21c04dd51845009843809baa30573087013754002605a66112026ea40152f5c1159800983dcc004dd5982b9843809baa30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab3059308901375460b26112026ea800e00d4881045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5182b9843809baa0018b210a028b210a023089013086013754003164210046600c008002911112cc004c1ec02e26644b300198009845809844009baa0538164c0c4c22004dd503fcdd5980f9844009baa07f4051159800998149bac308b0130880137540fe6eb8c0ccc22004dd5180f9844009baa0538acc0066002660426eb0c22c04c22004dd503f9bae30573088013754603e6110026ea814e6eb0c160c22004dd5000cdd618189844009baa05348896600266e1cc05000cc0500162b300130110028cc00400e0052232598009841809846809baa001899192cc004c21404c23c04dd5000c4c8ca60026603e0100033758604a6124026ea80126eb4c2540400922259800984500984a009baa0038acc004cdc499199119b8330403370066e08004dd69833984c009baa003002002375a60cc612c026ea8004dd69833184b009baa00830980130950137540073001375660ca612a026ea8c194c25404dd50054dd7184c008014dd7184c00984c8080120388acc004cdc38009bad3065309501375400f13375e6e9c010c0a0c25404dd5003c5282126028a50424c0516424c043758612802612a020026120026ea8006294108e01182f1847809baa33012004001309101308e013754003164230046601c00e002810a2c84480a2c844809159800cc004dd6182b9844009baa07f9bac308b0130880137540033308a0130583088013754603e6110026ea814ccc228053001054455534472004bd702444b30013370e602a004602800b19800802c00a4464b3001308301308d0137540031325980099baf309201308f013754002612402611e026ea8c24804c23c04dd5002456600266ebcc178c23c04dd5000982f9847809baa309201308f01375400913370f3001375660be611e026ea80066eb8c248040166eb8c17c01501618089bad305f308f01375400914a084680a294108d011848809847009baa0018b2118023300e005001408516422404899b879800829c1fe90004dd6982b9844009baa0019bad30333088013754003002401d30010029bac308b01308801375400323017375a60b26112026ea8005006459086014590860145908601459086011bac3089013086013754052611202610c026ea820006264b3001307b00c899912cc006600260b26112026ea815205b3032308901375410003375660406112026ea8200050154566002660546eb0c23004c22404dd5040009bae3034308901375460406112026ea81522b30019800998111bac308c013089013754100026eb8c160c22404dd518101844809baa0549bac305930890137540033308b013059308901375460406112026ea8150cc22c05301054455534472004bd702444b30013370e602a006602a00b159800980900146600200700291192cc004c21004c23804dd5000c4c8c966002610a026120026ea800626464b3001337120033001375660c66126026ea8c18cc24c04dd5003cdd7184b008044dd7184b00984b8080420348acc004cdc380098119bad3063309301375400913375e612c02612e02004604c6126026ea80122941091014528212202375a612a020026122026ea8006294108f01182f9848009baa33013004001309201308f013754003164234046601e00e00281122c84500a2c845009159800cc004dd6182c1844809baa080018014dd61846009844809baa0019bac303230890137540a8801a266e1e60020a908001a4001375a60b06112026ea80066eb4c0d0c22404dd5000c0090084c00400a6eb0c23004c22404dd5000c8cdc41bad305a308a0137540029000200e8b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c56600260fe0191332259800cc004c160c22404dd502a40b660646112026ea8200066eacc080c22404dd504000a02a8acc004cc0a8dd61846009844809baa08001375c60686112026ea8c080c22404dd502a45660026644b30013370e602800460280091598009808800c6600200500191192cc004c20c04c23404dd5000c4c8c96600260ca611e026ea8006264b30013370e6eb4c25004004dd698309848809baa003899baf3094013095010013024309101375400714a0847808c24004dd5000c528211c02305e308f01375466024008002612202611c026ea80062c846008cc0380180050214590890145908901198111bac308c013089013754100026eb8c160c22404dd518101844809baa054375860b26112026ea80062b300198009bac30583089013754100030029bac308c013089013754003375860646112026ea815100344c1fa60020a908001cc00400a6eb0c23004c22404dd5000c96600260306eb4c168c22804dd5000c4c1fcdd6982c9845009baa0018a50422004803a6eb4c160c22404dd5000cdd6981a1844809baa00180120108b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c4c96600260ba01b198009bac308b013088013754057222225980099b87301600530160048acc004c04c00e266e24006600200b003a400122232598009843009848009baa001899912cc004c22c04c24804dd5000c4c8cc0a400456600266ebcc0fcc25004dd5001984b80984a009baa0078acc004cdd79832184a009baa001309701309401375400713259800984680984a009baa001899192cc004cdc39bad309a01002375a60ce612e026ea801a2b30013370e6eb4c26804004dd69833184b809baa0068acc004cdd7984d00984d808009815184b809baa006899b8000898009bab3067309701375460ce612e026ea802a6eb8c268040326eb8c26804c26c0403101e459095014590950145909501184d00800984a809baa0018b212602306330940137540031642480516424804612c026126026ea80062c848808c25004c24404dd500098301848809baa3061309101375400916423c046602200e00481522c84580a2c84580a6116026110026ea82080522259800cc004c0d8c22c04dd502b40be60686116026ea8208066eacc088c22c04dd504100a02e899912cc00566002603600514a319800984100800d28528a11602422c05132598009841809846809baa0018cc00660026eb0c24404c23804dd504280cdd7181c9847009baa3025308e0137540b3375c60bc611c026ea8c094c23804dd502ccdd69848809847009baa0014025375a612202611c026ea8c24406600210a03375c612202611c026ea8c094c23804dd502ccdd6982e9847009baa0049bad3039308e01375400880726e0400a604c611c026ea8011222232323259800984500984a009baa0048992cc004cdc399b81375a61320200200800715980099b87375a6132026134020026eb4c26404c268040222b3001300f00a8acc00660026605e6eb0c26404c25804dd5046809bae30653096013754605a612c026ea818601d375860cc612c026ea8032661300260cc612c026ea8c0b4c25804dd50309984c00a61054455534472004bd7052000403515980099b8900298009bac3065309601375411a034800244b30013375e6136026130026ea8008c26c04c27004c27004c27004c27004c27004c27004c27004c27004c26004dd5031c4cdc0000cc004dd59834184c009baa0029bae30683098013754605e6130026ea818e9101045553447200407d100142580481c22b3001323371266e0003002e60026eb0c100c25c04dd5031520009119192cc004c0a4006266e0000ccdc199b82001375a60d66136026ea8010dd69835184d809baa0048801a1320298008024dd7184e80800cdd7184e80984f00800a04237586138026132026ea800902b1bab309901309a01309a01980084680cdd7184c80984b009baa302d30960137540c3375a60ca612c026ea80326eb4c104c25804dd5006202c899b879800830c23406600c017375a60ca612c026ea80326eb4c104c25804dd50064039015005459094014590940145909401456600330013302f3758613202612c026ea823404dd71832984b009baa302d30960137540c300e9bac30663096013754019330980130663096013754605a612c026ea8184cc26005301054455534472004bd704c09800900d44cdc3cc00418611a03300600b9bad30653096013754019375a6082612c026ea803201c80a802a2c84a0090940145909401459094014c004dd61832184a809baa08c019bae304030950137546058612a026ea81826eb8c194c25404dd51816184a809baa0609bad3098013095013754008808a2c849808c01000566002604200913370666e0801c00401229000212202375a612a020088b2118023020308d01375400716422c0530010039bac308e01308b01375400323005375a60b86118026ea80050094c00400e9000488cdc00009bad305c308d01375400480fa2c844809159800982e006c4cc89660033001301d308a0137540ab02e98199845009baa081019bab3021308a0137541020280b22b30013302b3758611a026114026ea820404dd71846809845009baa3021308a0137540ab13322598009840809845809baa00189919912cc004c02000a2b300130080018acc0056600261080200314a31301d00242340513259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260c06120026ea8c09cc24004dd502d9984900a601054455534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b8c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c848809159800cc004dd6182f9848009baa087019bac309301309001375400f330920130233090013754604e6120026ea816ccc2480530106457355534472004bd702444b30013370e603a004603801719800805c00a4464b3001308b0130950137540031325980099baf309a013097013754002613402612e026ea8c26804c25c04dd5002456600266ebcc198c25c04dd50009833984b809baa309a01309701375400913370f3001375660ce612e026ea80066eb8c268040166eb8c19c01501e2cc004c2300402626eb4c19cc25c04dd500244cdc199b82375a60ce612e026ea8010024029095014528212a028a50425404613202612c026ea80062c84a008cc058014005029459091012264b300130860130900137540031325980099b87375a612a0200266e000140222b30013370e6eb4c25404c25804004cdc0002001c56600266e1e60026eacc094c24804dd504480cdd718129849009baa302930920137540bb4881057355534472004064007130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed220104555344720040651642400516424005164240053001375860c06122026ea8220066eb8c0f0c24404dd518141848809baa05c9bae3061309101375460506122026ea81726eb4c25004c24404dd5000a01a8b211e023028309001375400f164238051642380516423804b30013084010018802c4cdc199b820050010024234051642340516423405164234046eb4c24004004dd6984800984880800cc004dd61847809846009baa083019bae3037308c01375460466118026ea815e6eb8c170c23004dd518119846009baa0579bad308f01308c013754002803a2c84500a60020053758611a026114026ea8006460326eb4c16cc22c04dd5000a00e301d308a01375400316422005164220046eb0c22c04c22004dd50159845809844009baa08201899912cc006600260446114026ea815605d3033308a01375410203375660426114026ea8204050164566002660566eb0c23404c22804dd5040809bae308d01308a01375460426114026ea815626644b3001308101308b013754003132332259800980e8014566002603a00313259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260466120026ea8c09cc24004dd502d9984900a60106457355534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b4c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c84880915980099b8798009bab3023309001375410e03375c60466120026ea8c09cc24004dd502dd22105735553447200405c604000d132598009843009848009baa0018992cc004cdc39bad3095010013370200a00715980099b87375a612a02612c0200266e040100222b300130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed22010455534472004065198009bac30613092013754112033758612a026124026ea8026661280260c46124026ea8c0a4c24804dd502e9984a00a61054455534472004bd702444b30013370e603e004603c01b19800806c00a4464b3001308d0130970137540031325980099baf309c0130990137540026138026132026ea8c27004c26404dd5002456600266ebcc1a0c26404dd50009834984c809baa309c01309901375400913370f3001375660d26132026ea80066eb8c270040166eb8c1a401502019b83337046eb4c1a4c26404dd5002006005c528212e028a50425c046136026130026ea80062c84b008cc06001400502b4590930122c84800a2c84800a2c84800a60026eb0c180c24404dd504400cdd7181e1848809baa302830910137540b9375c60c26122026ea8c0a0c24404dd502e4dd6984a009848809baa001403516423c0460506120026ea801e2c84700a2c84700a2c84700a600200f480024466e00004cdc199b82375a60c26122026ea800801000d02345908d0145908d011bad309001001375a61200261220200330013758611e026118026ea820c066eb8c0dcc23004dd518119846009baa0579bae305c308c01375460466118026ea815e6eb4c23c04c23004dd5000a00e8b21140298008014dd61846809845009baa0019180c9bad305b308b0137540028038c074c22804dd5000c5908801459088011bac308b0130880137540566116026110026ea82080508601210c0237129000210a024214044444b30013370e6028004602600719800801c00a4464b3001308201308c013754003198009848009846809baa0019bac3020308d0137540073301a00437586040611a026ea800d222598009842809847809baa0018acc004cdd79849809848009baa00330930130900137546126026120026ea801a2b30013375e60be6120026ea800cc180c24004dd51849809848009baa006899b8798009bab30603090013754007375c612602005375c61260261280200480b8cc07cc048dd698301848009baa006309301309001375400314a084700a294108e0145908e0122c845808cc034018005020459088012108021111192cc004c1e8c21004dd5000c4c96600266ebcc22404c21804dd51844809843009baa30563086013754002605866110026ea40152f5c1159800983d4c004dd5982b1843009baa30563086013754003005a4508747265617375727900403513259800983f9843009baa0018991980d0008992cc004c1f8c22004dd5000c4c96600266ebcc23404c22804dd51846809845009baa00130303308c01375201297ae08acc004c1fa60026eacc168c22804dd5000c026911087472656173757279004045132598009841809845009baa0018991980f00089984700802998470080099847009ba6329800800cdd5982e9846809baa00499198008009bab305e308e01375460bc611c026ea8024896600200314bd6f7b63044c8cc24804cdd81847808009ba63233001001375661220200444b30010018a5eb7bdb1822646612a0266ec0c24804004dd418119bad30930100133003003309701002309501001424c04660060066128020046124020028480090011112cc00400a2003132332298008034c25804016646600200200a44b300100189984b0099bb037520086e9800d2f5bded8c113298009bae3094010019bab309501001984c808012444b30013372001000713309a01337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528213402880144cc26c04cdd81ba9009374c00200484b808ca6002003008801a002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd4001a5eb7bdb1822653001375c614002003375a61420200330a50100248896600266e4002000e26614c0266ec0dd48041ba80070058acc004cdc7804001c4c96600261340200310028998538099bb037520126ea00040090a30119b800070028998530099bb037520066ea0008cc0180180050a201214402185180800a1420240186eb8c26c04004dd6984e00800984f0080121380289984d0099bb037520066e98008cc01801800509601212c02184b80800a12a0240186eb8c23c04004dd59848008009849008012120024bd701847009845809baa0018b2112023059308a01375400316422005164220046118026112026ea80062c843808cc024dd6182b9844009baa008005308a0130870137540031642140460aa610c026ea8c158c21804dd5000c5908401459084011844009842809baa0018b210602330053758610e026108026ea8010008896600266e2000520008a6103d87a8000899804801000a0fe22c82d8c8cc004004dd61816182e9baa0572259800800c52f5c1133060374e6464660c460c6004660c4605e60c06ea8004cc188dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241888310dc68009bae30653062375400266e28c008dd7181918311baa0013371460046eb8c0c4c188dd500098011bae300d30623754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241808300dc68009817198312610b4a5369676e617475726531003306230633060375460c660c06ea8004cc18930101400033062375200a97ae04bd70183118318009bac3061001330020023062001417c6e50dd9803a264b3001304a305437540031323232332259800982f001c4c8c8cc896600260c40071300b306200c8b20be375c60be0026eb8c17c008c17c004dd6182e802c5905b1bad305b001375a60b600460b600260b400260aa6ea80062c8298c15c0090554590530c140004c13c004c138004c134004c120dd50014590464590490c10c004c108004c104004c100004c0fc004c0f8004c0f4004c0f0004c0dcdd50014590351802981a9baa323232598009816981b9baa0018992cc004c0c4c0e0dd5000c4c966002605e60726ea8006264646644b300130420038802c5903f181f8009bae303f002303f001303a37540031640e0607860726ea80062c81b8c01cc0e0dd51804181c1baa303b303837540031640d8660066eb0c01cc0dcdd50171191980080098019bab300930393754601260726ea8008896600200314a115980099b8f375c607a00206f14a3133002002303e00140e081d8c004004896600200314bd7044cc0e4c0d8c0e8004cc008008c0ec0050381801001111919800800801912cc0040062980103d87a80008992cc004c0100062600e6607600297ae0899801801981e801206e303b00140e489919912cc004c0dc00626644b3001302a303437540051323232332259800981f001c4c966002606060746ea8006264646644b300130430038992cc004c0d400626464b300130460028074590431bae30440013040375400f159800981a000c56600260806ea801e0191641051640f881f0c0f8dd50034590401bae3040001375c6080004608000260766ea80062c81c8c0f40162c81d8dd7181d800981d801181d800981d000981a9baa0028b206630360011300430370058b2068375c6068002606a0026eb0c0cc0090312264600460600066eb4c0b800902c44c8c008c0b800cdd6981600120548b205018128009812000981180098110009810800980e1baa0018b2034301e0058b203837586038002603800460380026036002602c6ea80422c80a089660026016602a6ea800a26464646644b3001301f003899804180f00289980580100345901c180e0009bad301c002301c001301b0013016375400516405044b3001300b301537540051323232323298009bac301e0019bad301e0049bad301e003980f00124444b30013023005899806181100489980780089919912cc004c09800e01b16408c6eb8c08c004dd7181180298118024590200c078004c074004c070004c06c004c058dd5001459014112cc004c028c050dd500144c8c8c9660026038005133006301b003132598009807000c56600260326ea800a00b1640691598009806800c4c8c966002603e0050078b2038375c603a00260326ea800a2b30013011001899192cc004c07c00a00f164070603a00260326ea800a2c80b9017202e3017375400316406460340026034002602a6ea800a2c80988966002601260266ea800a2646464b3001301b002899804980d0018992cc004c034006264b3001301d001899192cc004c040006264b30013020001899807180f800804c5901d180d9baa0028acc004c03c00626464653001375a6042003375a6042007375a60420049112cc004c09401201d16408830210013020001301b375400516406480c8c064dd5000980e000c5901a180c1baa0028acc004c0300062b3001301837540050058b20328b202c4058602c6ea80062c80c0c064004c064004c050dd50014590121164020300900130043754013149a26cac80101", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var V0_4ProtocolProtocolElse = exports.V0_4ProtocolProtocolElse = /*#__PURE__*/_createClass(function V0_4ProtocolProtocolElse(proxyPolicyId) { + var trace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _classCallCheck(this, V0_4ProtocolProtocolElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "596880010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492b657870656374207661756c745f646174756d3a205661756c74446174756d203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888888888888888896600264653001302100198109811000cdc3a400930210024888966002600460426ea800e264b3001005899914c004888c966002600c00313259800800c00e264b300100180240120090048992cc004c0c000e00d00540b46eb80050301816800a056302937540091598009802800c4c9660020030038992cc0040060090048024012264b30013030003803401502d1bae00140c0605a0028158c0a4dd50024009026204c3027375400722259800980298139baa0038992cc00400600513259800800c4c9660020030048992cc004006264b3001302d0018acc004cdc4a400860580030068992cc004c0c8012264b3001300c0018acc004c0bcdd5003402601081822b3001300b0018992cc00400601313259800800c02a01500a8992cc004c0d800e01900b40cc6eb400601481b0c0cc00503118179baa0068acc004c03c0062b3001302f375400d0098042060804205840b08160c0b4dd5002c01d02f18049816000a054803205c3754003005802c01600a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b300130053027375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0c800e01100740bc6eb400600c8190c0bc00502d1bae001302e00240bc60580028150c0a0dd5001c0050254888c966002600c00313259800800c00e264b30010018024012009132598009818001c01a00a8168dd6800c0110301816800a056302937540091598009802800c56600260526ea801200700240a900240988130c09cdd5001a44446465300122259800980598169baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130390028cc00401a33001001804c02100e402100b402103640220110088042074303700140d46eb4004c0d800a00a81b8c0d0005032181a001400e007003801a06a303200140c0605c6ea800e002815a444b3001300b302d375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0fc00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c11000e02901341046eb80050441820800a07e375c00260800048208c0f800503c40390144039011403903c1bac001806c03503f181e000a074303c002805c02e01700b40f4607400281c0dd6800981c801402103a181b800a06a375a002606c00500540dc60680028190c0d000a007003801c00d0351819000a060302e375400700140ad223233001001003223300300130020024889660026016605a6ea8042264b300100180a44c96600200313259800800c05a264b30010018992cc00400603113259800800c06603313259800981c801c566002602460686ea801a264b300100180dc4c96600200301c80e44cc896600200301e8992cc00400603f01f899912cc00400604313259800800c08a045022899912cc00400604913259800800c09604b025899912cc00400604f13259800800c4c9660020030298992cc0040062b3001304900289980c007112cc00400a26603401a44b30010028cc00401e330010058cc004dc3a400d370e90044dc3a4014911192cc004c0a8c130dd500e44c9660020030338992cc004006264b300100181ac4c966002003159800982a80144cc8966002606000313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205a81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c0bc006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b503e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b1598009819800c4c9660020030398992cc00400607503a8992cc004c16800e26605200244b3001002803c4c96600200319800800c4c008c17400e07c816a07d03e81f40f905e182d80120b281da0ae375800303a81d20b43057001415460a66ea80162b3001300a0018992cc00400607313259800800c0ea07513259800982d001c4cc0a400489660020050078992cc0040063300100189801182e801c0f902d40fa07d03e81f20bc305b002416503b415c6eb000607503a416860ae00282a8c14cdd5002c566002601200313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205c81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c020006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b903e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b0384140828105020a0414082804c966002605e00313259800800c0e2264b30010018acc004c16000a3300100180440e502d40e505540e607303981ca0b23056001415060a46ea800a2b3001302e0018992cc00400607113259800800c56600260b0005159800981898299baa0018992cc00400607513259800800c4c96600200303c8992cc0040062b3001305c0028cc00400e3300100180640f503240f503240f505940f607b03d81ea0ba305a001416060b400503b81dc0ee07682d8c160005056182a1baa00181ca0a281ca0aa81cc0e6073039416460ac00282a0c148dd500140dd04f209e3050375400260a06ea800e06c829206d03681b40d90561829800a0a2305300281a40d2069034415060a20028278c134dd500e40c904a09980f80c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00641393702900048888c8cc004004014896600200310058992cc00400626600860b000400d133005305800233003003001415860b000282aa6e012001918291829800c8c148c14cc14c0066e95200048888888c8c8c8cc88c96600200313259800981c982d9baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b3001001829414a26644b300100182a44c96600200315980098398014660020251980080846600201d19800806466002015198008044566002609860dc6ea801a264b300100182b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a899912cc0040060b913259800800c1760bb05d82ec4cc896600200305f8992cc0040060c1060830418226644b300100183144c966002003063831c18e0c713259800984100801c4cc144048896600200519800809466002605c6100026ea818a4610802610a02610a02610a020032232330010010032259800800c52845660026006610e0200314a313300200230880100142040484280a4610802610a02610a02610a02610a02610a02610a02610a02003374a90014dc02400491111119192cc0066002444646644b3001306b0028acc004c1acc23404dd5000c5300103d87a80008a6103d8798000422c051598009837001456600260dc611a026ea80062980103d87a80008a6103d87b8000422c0513322598009836800c530103d87b80008acc004c1b0006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000423804847008dd69849809848009baa0038a6103d8798000423404846808dd69848809847009baa003308d01375400284580908b011845809baa00130020033001003919191919912cc004c1ac00a29422b3001306e0028cc004cdd79848809847009baa0014c103d87b8000a50a51422c0513233225980098370014528c56600260da005133225980098379849009baa3041309301375400d133710004003133712004002848008dd6984a009848809baa0035980098369848009baa303f309101375400f100189806000a11c028a50423804847008c23804dd50009bad309201308f013754008612202611c026ea800508b01211602308b013754002611e02612002006611c026116026ea8004c23404004c22404dd5000cc0d8c22004dd50042444b30013068308a0137540031323300a3758611e026118026ea81ac8cdd79848009846809baa001002308e01308b01375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c24004c23404dd50014c24004c23404dd5000c8c8c96600260d8611e026ea8c24c04c2500400a2003132598009836800c4c034cc24c04dd418061bad309401309101375400497ae08acc004c1b800620051002423804847008c23c04dd5000a11a02309201001308e0137540028029300103d87b8000a50a514228051980099baf9800981d9846809baa002981d9846809baa001919192cc004c1b0c23c04dd5184980984a0080144006264b3001306d0018980699849809ba83040375a6128026122026ea80092f5c11598009837000c400a200484700908e011847809baa001423404612402002611c026ea8005005260103d8798000a50a5142280514a084500908a01211402308e01308b01375400260106116026ea81a908801233001308b01308801375401122232330010010042259800800c40122660066120020026600400461220200284700a44b30010018a40011300533002002308e01001422c0522980099804001119baf308e01308b013754611c026116026ea8c0e4c22c04dd5000980399846809ba90024bd70528528a10e02918329844009baa308c0132330010010022259800800c52f5c303d87a80008101800044c8cc89660033001306a308d0137546122020074a14a284580a2661200330014a14c103d87a8000a60103d8798000422c0466120026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c24c0400400e29462660040046128020028468090910144cc24006600294298103d87a8000a60103d8798000422c0466120026e9c0092f5c1133090019800a51a60103d87a8000a60103d8798000422c0466120026e9ccc24004dd400080125eb8108b012116023758611e026120020026eb4c23c04008cc008008c23c0400508c01489660020031480022600a66004004611c0200284580a4444653001001802c012006800888896600200710018acc00400a2a6611c029211d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012612802007309401002cc004c24c0400e6eb4c24c0400a0028029004212202424405222598008014530103d87a80008acc004c1a00062606e6611a02611c0200497ae08cc00400e611e02005303a001400c84400908c01488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064234051330050053094010044234046eb8c23404004dd5984700800984800800a11c0214bd6f7b63048896600260d06114026ea800e264b300100180144c966002003003801c00e264b3001309201003802c01108f011bad001801a12402308f010014234046116026ea800e00284400a44646600200200644b30010018a5eb8226644b30013375e612202611c026ea8c24404c23804dd5181e1847009baa002300a3309001375200a97ae08998480080119802002000c4cc01001000508b01184780800984800800a11a029184600984680984680984680984680984680800c8c23004c23404c23404c23404c23404c23404c23404006444653001001802400d0011112cc00400a2b30010018a518a50423c05159800800c5284566002660086122020046eb4c24404006330010039849008014c248040050034528211602423c0484780a444b30013068308a01375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002612e0200519800803c6600200b132598009838800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd5002456600260e000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001309e010038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b300130a30100380b40550a0011bae001428c0461400200284f008dd7000984f80801214002309d01001426c05010426c046eb000601f00f42780461360200284c808dd6800984d00801403109b01184c00800a12c023094013754009159800983a000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c2840400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c2980400e033018428c046eb80050a601185180800a14202375c002614402004851808c2800400509e01404d09e011bac00180940490a101184f00800a13802375a002613a0200500f42780461360200284c808dd6800984d00801403109b01184c00800a12c0230940137540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd50024566002609400313259800800c02e264b3001001806403201913259800984d80801c03a01a84c008dd6800c03109b01184c00800a12c0230940137540091598009824800c4c96600200300b8992cc00400601900c80644c96600261360200700e806a13002375a00300c426c0461300200284b008c25004dd500240290910121220242440484880909101212202309201375400700941a500940e1009425004612a02002849808c2540400a00f007803c01d09601184980800a12202309301002802c01600b005425004612202002847808c2440400a007003801c00d09201184780800a11a02308b013754007001422005222329800800c01200680088896600200510018cc00400e61240200533004309101002001400c84780a4611802611a02611a02611a02611a020032225980098341845009baa0038992cc00400600513259800800c00e0070038992cc004c2480400e00b004423c046eb4006006849008c23c0400508d011845809baa003800a11002912cc0040062900044c014cc008008c2380400508b01488cdc199b82002375a606e6114026ea8004dd6981c1845009baa0019b88480024466062004466ebcc23804c22c04dd50009ba700292cc004cdc4000a40011303a0018800a10c0248888888888888888888888a6002602a02b2301400198090094c0400424446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803214a02899802802985600802214a02375c614a020026eb4c29804004c2a0040050a601198098020018a400123014001984f009baa0179802802c88c9660026104026142026ea8006264b30010018cc0040062b30013375e60446146026ea800cc29804c28c04dd5002456600266ebcc144c28c04dd50009853009851809baa0038800c260050a001425c050a00142580500d42580612c030960184b00a1500230a50130a201375400309001427c04609c6142026ea8c13cc28404dd50012444444445300122223233001001005223259800984600800c4c94cc2b804cdcb248121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660b06ea4005220100132598009847009858009baa001899194c004dd7185b00800cdd7185b00985b80800cdd7185b008012444a66168029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330b4013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660bc6ea400522010015330b4013372c9201187665726966795f65643235353139207061796c6f61643a20003732660bc6ea400922010015330b4013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660bc6ea400d2201001325330b5013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660bf3001001a60103d87a8000a60103d879800042d00491010010019800800c00a006b950c2d804004dd6185a009858809baa0018a998578099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660b26ea400922010014a0857008c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c616c020020091305f330b501374e00297ae0899801801985b808012160023758616a02002859808dd71859009857809baa0028acc004c22c04006264a6615c0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416c6c4f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b804910100100132330010010022259800800c528c5660026600c00c616a0200313300200230b6010018a5042bc04859808dd61859009857809baa0028acc004c23c04006264a6615c0266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416e794f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013302e0012330050050013758616402615e026ea800a2b3001306600189919912998580099b96490112436865636b696e672041744c656173743a20003732660b46ea00092201001325330b1013372c92011941744c656173742073617469736669656420636f756e743a20003732660b66ea00052201001325330b2013372c92011041744c6561737420726573756c743a20003732660b93001001a60103d87a8000a60103d879800042c4049101001001337120060033001001a400122598009980400400144c0bc00620028588090291bad30b3010013758616602616802002615e026ea800a2b300130650018992998570099b9649111436865636b696e67204265666f72653a20003732660b06ea00052201001325330af013372c92010f4265666f726520726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc49bad30b50130b20137540020071337106eb4c2d404c2c804dd5000801a15e028a5042bc046168020026160026ea8c178c2c004dd50031bad30b20130af0137540051598009832000c4c94cc2b804cdcb24910436865636b696e672041667465723a20003732660b06ea00052201001325330af013372c92010e416674657220726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc48019bad30b50130b20137540031337100066eb4c2d404c2c804dd5000a15e028a5042bc046168020026160026ea8c2cc04c2c004dd50031bad30b20130af0137540051325330ae013372c920111436865636b696e67205363726970743a20003732660b06ea40052201001325330af013372c92010f53637269707420726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232330010010072259800800c528456600266ebc00cc2c804c2d8040062946266004004616e020028580090b401181619859009ba90014bd701bae30b20130af0137540048560090ac0121580242b0048560090ac011856809baa0019112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a15002912cc004cdc4000a400114c103d87a8000899804001000a14e029112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a1500248888ca60024444446644646644b30013370e66e04dd6985d80985c009baa30bb01003375a6176026170026ea8c2ec04010006264b30013370f30013758606c6172026ea80329000488cc89660033001309a01001a50a5142e8051325980099b893302300100598008044dd7186080801cdd7186080986100801a036899b800040018a9985e00a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642ec0466e08004016200685d008dd6185f00985d809baa00232980080552000912cc004cdd79813185f009baa002374e0071337000026eb4c1b0c2f804dd5001440050bb01204a3758617c026176026ea800902219b8100200a8801454cc2dc052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001642d804b3001301c0098a40031480090b501454cc2d8052415a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e74001642d4046eacc2e404c2e8040056600261260260200071480022b300100385800c4c96600261760200915980099b8f375c616c0200291104555344720089bad30b7010018a9985a80a491d657870656374206e616d65203d3d20636f6e7374616e74732e75736472001642d0050b10142e00461720200685b8090b301185c80800998119bab301b30b301375400a6eb8c184c2cc04dd5180f9859809baa0069800802cdd7185b009859809baa301f30b301375400d003801200e9111192cc004c23c04c2c404dd5000c4c96600266ebcc2d804c2cc04dd5185b009859809baa001302f330b501375200a97ae08acc004c23c0660026eacc184c2cc04dd5000c01691010d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b5013754007006a4504555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c54cc2c8052412d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001642c40460c06166026ea80062a661620292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b10149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001642bc046600e008003222232598009847809858809baa0018992cc004cdd7985b009859809baa30b60130b301375460c26166026ea8004c0bccc2d404dd4802a5eb822b3001308f0198009bab306130b301375460c26166026ea800600b48810d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b501375460c6616a026ea800e00d48904555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c288050b10118301859809baa306130b301375400315330b1014901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b1014914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001642bc046600e0080029112cc004c2340402e26644b30019800985a809859009baa058815cc0bcc2c804dd504880cdd5980f1859009baa091014029159800998139bac30b50130b2013754122026eb8c0c4c2c804dd5180f1859009baa0588acc0066002660406eb0c2d404c2c804dd5048809bae305f30b2013754603c6164026ea81626eb0c180c2c804dd5000cdd618179859009baa05848896600266e1cc05800cc0580162b300130110028cc00400e005223259800984a80985b809baa001899192cc004c25c04c2e404dd5000c4c8ca60026603e010003375860486178026ea80126eb4c2fc0400922259800984e00985f009baa0038acc004cdc499199119b8330713370066e08004dd698379861009baa003002002375a60dc6180026ea8004dd698371860009baa00830c20130bf0137540073001375660da617e026ea8c1b4c2fc04dd50054dd71861008014dd718610098618080120388acc004cdc38009bad306d30bf01375400f13375e6e9c010c09cc2fc04dd5003c5282178028a5042f00515330bd014914365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001642f0043758617c02617e020026174026ea800629410b7011833185c809baa3301200400130bb0130b80137540030aa0142d4046601a00e002810214c0285900a14a02859009159800cc004dd6182f9859009baa091019bac30b50130b2013754003330b401306030b2013754603c6164026ea8160cc2d0053001054455534472004bd702444b30013370e6028004602c00b19800802c00a4464b300130950130b70137540031325980099baf30bc0130b90137540026178026172026ea8c2f004c2e404dd5002456600266ebcc198c2e404dd50009833985c809baa30bc0130b901375400913370f3001375660ce6172026ea80066eb8c2f0040166eb8c19c015016180d9bad306730b901375400914a085b00a29410b601185d80985c009baa00185780a16a023300d00500140810a10142c804899b87980082c42440690004dd6982f9859009baa0019bad303130b2013754003002401530010029bac30b50130b201375400323017375a60c26166026ea8005007454cc2c005241856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a2020202029001642bc0515330b0014918f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642bc050ad0142bc0515330b0014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642bc046eb0c2cc04c2c004dd50141859809858009baa092018992cc004c2340403226644b3001980098309859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc0066002660426eb0c2d804c2cc04dd5049009bae306030b3013754603e6166026ea81666eb0c184c2cc04dd5000ccc2d404c184c2cc04dd5180f9859809baa059330b5014c1054455534472004bd702444b30013370e602e006602e00b159800980900146600200700291192cc004c25804c2e004dd5000c4c8c966002612e026174026ea800626464b3001337120033001375660d6617a026ea8c1acc2f404dd5003cdd71860008044dd718600098608080420348acc004cdc380098371bad306b30bd01375400913375e618002618202004604a617a026ea801229410ba014528217402375a617e020026176026ea800629410b8011833985d009baa3301300400130bc0130b90137540030ab0142d8046601c00e002810a14e0285980a14c02859809159800cc004dd618301859809baa092018014dd6185b009859809baa0019bac303030b30137540b2801a266e1e60020b309201a4001375a60c06166026ea80066eb4c0c8c2cc04dd5000c0090064c00400a6eb0c2d804c2cc04dd5000c8cdc41bad306230b4013754002900020108a9985880a4819e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001642c0050ae0142c00515330b1014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018acc004c2440403226644b3001980098301859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc004cc896600266e1cc058008c0580122b300130110018cc00400a003223259800984a80985b809baa001899192cc004c1c4c2e404dd5000c4c96600266e1cdd6985f008009bad306930bb01375400713375e617c02617e0200260466176026ea800e29410b801185d009baa0018a5042dc0460cc6172026ea8cc048010004c2ec04c2e004dd5000c2a8050b50119806803000a04085300a1640285280a16402330213758616c026166026ea824804dd718301859809baa301f30b30137540b26eb0c184c2cc04dd5000c5660033001375860c06166026ea8248060053758616c026166026ea80066eb0c0c0c2cc04dd502ca0068984800cc0041661240398008014dd6185b009859809baa00192cc004c060dd69831185a009baa00189848809bad306130b401375400314a08588090084dd698301859809baa0019bad303230b3013754003002401915330b1014901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001642c0050ae0142c00515330b1014901896578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018992cc004c1a4036330013758616a026164026ea80aa44444b30013370e603000a60300091598009809801c4cdc4800cc0040160074800244464b300130980130ba0137540031332259800984e80985e009baa0018992cc004006330010018acc004cdd7981e985f009baa00330c10130be01375400f15980099baf306c30be013754002618202617c026ea800e264b3001309f0130be013754003132325980099b87375a6188020046eb4c1bcc30404dd5003456600266e1cdd69862008009bad306e30c101375400d15980099baf30c40130c501001302930c101375400d1337000113001375660de6182026ea8c1bcc30404dd50054dd71862008064dd7186200986280806203c8a9985f80a493665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001642f80515330bf0149126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001642f80515330bf014912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001642f804618802002617e026ea80062a6617a02921184578706563746564204f4465706f73697420616374696f6e001642f00460d6617c026ea80061660285d80a1640285d80a162028142162030b10185880c2c4050c301186000985e809baa00185580a1740230be0130bb01375400260d06176026ea8c1a4c2ec04dd500242b4050b80119808003801205285400a1680285380a16802985a809859009baa094014889660033001303430b50137540b702e9819185a809baa094019bab302130b501375412802806a26644b300159800980d8014528c660026128020034a14a285a0090b40144c966002612a02616e026ea80063300198009bac30bb0130b801375412e03375c606e6170026ea8c090c2e004dd502f4dd71833185c009baa302430b80137540bd375a6176026170026ea80050094dd6985d80985c009baa30bb01980084b80cdd7185d80985c009baa302430b80137540bd375a60ca6170026ea80126eb4c0dcc2e004dd500220189b810029812985c009baa00448888c8c8cc8966002613a02617e026ea8016264b30013370e66e04dd6986200800802802456600266e1cdd698620098628080080145660026020017159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c01054455534472004bd7052000403915980099b8900398009bac306e30c1013754140034800244b30013375e618c026186026ea8008c31804c31c04c31c04c31c04c31c04c31c04c31c04c31c04c31c04c30c04dd5034c4cdc0000cc004dd598389861809baa0029bae307130c3013754605e6186026ea81a691010455534472004081100143000481c22b3001323371266e0003403260026eb0c0fcc30804dd5034520009119192cc004c0a8006266e0000ccdc199b82001375a60e8618c026ea8010dd698399863009baa0048801a1860298008024dd7186400800cdd7186400986480800a0443758618e026188026ea800902b1bab30c40130c50130c501980085000cdd71862009860809baa302d30c10137540cf375a60dc6182026ea80366eb4c100c30404dd5006a02a899b879800833c28006600e019375a60dc6182026ea80366eb4c100c30404dd5006c03d014005c54cc2fc052418d6578706563740a20202020202076616c69646174655f726573657276655f64656c74615f666f725f6465706f736974280a202020202020202076616c75655f64656c74612c0a202020202020202073657474696e67732e726573657276655f6173736574732c0a202020202020202072657175697265645f757364725f6261636b696e672c0a20202020202029001642f80515330bf014912b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001642f80515330bf014919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001642f805159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c1054455534472004bd704c1c800d00e44cdc3cc00419e14003300700c9bad306e30c101375401b375a60806182026ea803601e80a002e2a6617e02921b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001642f80485f00a2a6617e029213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001642f80515330bf014913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001642f8053001375860da6180026ea827c066eb8c0fcc30004dd518161860009baa0669bae306e30c001375460586180026ea819a6eb4c30c04c30004dd5002a02485500a17a023004001375a61820261840200cb30013021004899b833370400e0020091480010ba011bad30bf010044284050b501180f985b809baa0038a9985a80a4812e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001642d00530010039bac30b80130b501375400323005375a60c8616c026ea800500a4c00400e9000488cdc00009bad306430b701375400480f22a6616602921886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6465706f7369745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c8048acc004c1a003626644b30019800980e185a009baa05a816cc0c4c2d004dd504980cdd59810185a009baa093014031159800998149bac30b70130b4013754126026eb8c2dc04c2d004dd51810185a009baa05a899912cc004c24c04c2d404dd5000c4c8cc896600260100051598009804000c566002b30013096010018a518980e801216c028992cc004c0780062b30019800998141bac30bd0130ba013754132026eb8c19cc2e804dd51813185d009baa0609bac306830ba01375400f330bc01306830ba013754604c6174026ea8180cc2f005301054455534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e8c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b300198009bac306730ba013754132033758617a026174026ea801e661780260446174026ea8c098c2e804dd50301985e00a60106457355534472004bd702444b30013370e6038004603c01719800805c00a4464b3001309d0130bf0137540031325980099baf30c40130c10137540026188026182026ea8c31004c30404dd5002456600266ebcc1b8c30404dd500098379860809baa30c40130c101375400913370f3001375660de6182026ea80066eb8c310040166eb8c1bc01501e2cc004c2780402626eb4c1bcc30404dd500244cdc199b82375a60de6182026ea80100240290be014528217c028a5042f8046186026180026ea800616e0285e808cc05401400502842a4050ba012264b300130980130ba0137540031325980099b87375a617e0200266e000140222b30013370e6eb4c2fc04c30004004cdc0002001c56600266e1e60026eacc090c2f004dd504d80cdd71812185e009baa302830bc0137540c54881057355534472004064007130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd503152201045553447200406515330ba01491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001642e40515330ba014914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001642e40515330ba0149140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b801491dd6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001642dc0515330b801491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001642dc0515330b801491186578706563742073757364725f746f5f6d696e74203e2030001642dc04b30013096010018802c4cdc199b8200500100242d80515330b7014913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001642d80515330b701491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001642d80515330b7014911d657870656374207661756c745f757364725f6265666f7265203e3d2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491866578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa09401899912cc006600260426168026ea816a05b303130b401375412603375660406168026ea824c0500c4566002660526eb0c2dc04c2d004dd5049809bae30b70130b401375460406168026ea816a26644b300130930130b5013754003132332259800980e8014566002603a00313259800980f000c5660033001330283758617a026174026ea826404dd71833985d009baa302630ba0137540c1375860d06174026ea801e661780260446174026ea8c098c2e804dd50301985e00a6106457355534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e4c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b30013370f3001375660446174026ea8264066eb8c088c2e804dd51813185d009baa060a44105735553447200405c60d600d13259800984c00985d009baa0018992cc004cdc39bad30bf010013370200a00715980099b87375a617e0261800200266e040100222b300130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd5031522010455534472004065198009bac306930bc013754136033758617e026178026ea80266617c0260d46178026ea8c0a0c2f004dd50311985f00a61054455534472004bd702444b30013370e603c004604001b19800806c00a4464b3001309f0130c10137540031325980099baf30c60130c3013754002618c026186026ea8c31804c30c04dd5002456600266ebcc1c0c30c04dd500098389861809baa30c60130c301375400913370f3001375660e26186026ea80066eb8c318040166eb8c1c401502019b83337046eb4c1c4c30c04dd5002006005c5282180028a50430004618a026184026ea80061720285f808cc05c01400502a42ac050bc0122a66174029211765787065637420757364725f6d696e746564203d3d2030001642e40515330ba01491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001642e40515330ba014913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b8014912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001642dc0515330b801491a86578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202029001642dc0515330b8014911a65787065637420757364725f746f5f72656c65617365203e2030001642dc053001007a4001223370000266e0ccdc11bad306930bb01375400400800681122a6616e02921236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001642d80515330b7014911c657870656374207661756c745f757364725f6265666f7265203e2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e756e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa0940142bc04857808dc4a40008570090ae0111112cc004cdc39809801180a801c6600200700291192cc004c25004c2d804dd5000c66002617402616e026ea80066eb0c07cc2dc04dd5001ccc068010dd6180f985b809baa003488966002612e026172026ea80062b30013375e617a026174026ea800cc2f404c2e804dd5185e80985d009baa0068acc004cdd79833985d009baa003306830ba013754617a026174026ea801a266e1e60026eacc1a0c2e804dd5001cdd7185e808014dd7185e80985f00801202e3301f301c375a60d06174026ea8018c2f404c2e804dd5000c528216e028a5042dc0515330b80149015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642dc0485700a168023300c006001407d0a00142c404856808444464b3001308e0130b00137540031325980099baf30b50130b2013754616a026164026ea8c180c2c804dd500098171985a009ba90054bd704566002611c033001375660c06164026ea8c180c2c804dd5000c016910108747265617375727900403d132598009849809859009baa0018992cc004006330010018992cc004c24804c2d004dd5000c4c96600266ebcc2e404c2d804dd5185c80985b009baa0013032330b801375201297ae08acc004c2480660026eacc190c2d804dd5000c026910108747265617375727900404d13259800984b80985b009baa0018992cc0040063300100189985d008029985d008009985d009ba6329800800cdd59833985c809baa00499198008009bab306830ba01375460d06174026ea8024896600200314bd6f7b63044c8cc2f804cdd8185d808009ba632330010013756617a0200444b30010018a5eb7bdb182264661820266ec0c2f804004dd418381bad30bf010013300300330c30100230c10100142fc0466006006618002004617c0200285e0090011112cc00400a2003132332298008034c30804016646600200200a44b30010018998610099bb037520086e9800d2f5bded8c113298009bae30c0010019bab30c1010019862808012444b3001337200100071330c601337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528218c02880144cc31c04cdd81ba9009374c002004861008ca6002003008801a002222598008014400626466453001006986700802cc8cc00400401489660020031330ce01337606ea4010dd4001a5eb7bdb1822653001375c619802003375a619a0200330d10100248896600266e4002000e2661a40266ec0dd48041ba80070058acc004cdc7804001c4c966002615c0200310028998698099bb037520126ea00040090ce0119b800070028998690099bb037520066ea0008cc0180180050cd01219a02186780800a19a0240186eb8c31c04004dd69864008009865008012190028998630099bb037520066e98008cc0180180050c101218202186180800a1820240186eb8c2ec04004dd5985e00800985f008012178024bd7042c40501f42c406162030b10185880a17a0230ba0130b701375400315330b50149012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642d00460c6616c026ea80062a6616802920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642cc0515330b40149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642cc04617002616a026ea80062a661660292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001642c804660146eb0c184c2d004dd5004002c2b00501b42b006158030ac0185600a1720230b60130b301375400315330b10149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642c00460be6164026ea8c180c2c804dd5000c54cc2c0052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642bc0515330b0014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642bc046168026162026ea80062a6615e0292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001642b8046600c6eb0c2cc04c2c004dd500200108a9984300a4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001642140464660020026eb0c0d4c22004dd5035112cc004006297ae0899845809ba732323308d01308e010023308d013038308b0137540026611a026ea4cc894cc22c04cdcb2481165369675374727563747572652e636f6e746578743a200037326606a612002611a026ea8005220100153308b013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606a6076611a026ea8005220100153308b013372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606a6074611a026ea8005220100153308b013372c9201165369675374727563747572652e7061796c6f61643a200037326606a6018611a026ea800522010013253308c013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606c6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002423004846008dc68009bae309001308d01375400266e28c008dd7181d9846809baa0013371460046eb8c0e8c23404dd500098011bae300c308d013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002422804845008dc6800981b9984680a610b4a5369676e617475726531003308d01308e01308b013754611c026116026ea8004cc234053010140003308d01375200a97ae04bd701846809847008009bac308c0100133002002308d010014228046e50dd980320cc82ba264b30010018acc004c178c20004dd5000c4c9660020030688992cc0040060d3069899912cc0040060d713259800800c1b20d906c899912cc0040060dd13259800800c1be0df06f8992cc004c2380400e2b300100783844c966002003071838c1c60e31332259800800c1ce264b300100183a41d20e90748992cc004c24c0400e260206126020230754240046eb800509301184800800a11c02375c002611e02010848008c2340401d08b0141c108b011bad001837a11c02308b010014224046eb4004c2280400a0d8845808c22004005086011bac001308701002834c1a508801184280800a10602308101375400306741f9067833c19e0ce843008c20c0400908101419107f1bae00142080460fe00283e8dd7000983f00120fe307c00141e86eb8004c1ec00907c183c800a0ee375c00260f000483c8c1d80050741bae001307500241d860e60028388c1bcdd5003415506c415501441550144155014415501441550144155014415507041560ab05582aa0e8307100141bc6eb0004c1c000a0a505241c460dc0028360c1b800a0a1050828414106f1836000a0d4306c002827413a09d04e41b460d40028340c1a800a09904c826413106b1834000a0cc3068002825412a09504a41a460cc0028320c19800a09104882441210671832000a0c43064002823411a08d046419460c40028300c18800a08904482241110631830000a0bc305c37540050424164444653001001802400d001111192cc004c0fc006264b300100180344c966002003007803c01e00f132598009834801c0160108330dd7000a0d23066001419060c46ea800e2b3001303e0018992cc00400600d13259800800c01e00f132598009834801c4cc0e000489660020050078992cc0040063300100a800c4c008c1b000d00a402e01700b805a0da306a00241a100841986eb000600f00741a460cc0028320c188dd5001c566002608400313259800800c01a264b3001001803c01e264b3001306900389981c000912cc00400a00f13259800800c66002015001898011836001a014805c02e01700b41b460d400483420108330dd6000c01e00e8348c19800506418311baa0038acc004c064006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260d800713303b0012259800801402a264b30010018cc00403600313002306f003403500e807403a01c8380c1b400906b402d0691bac001805402906c1834800a0ce375a00260d000500741a460cc0028320c188dd5001c566002603000313259800800c01a264b3001001803c01e00f132598009834801c0160108330dd6800c01d0691833000a0c830623754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260d200700580420cc375a00300741a460cc0028320c188dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260d200700580420cc375c0028348c19800506418311baa003802a0be417c82f905f20be417c82f8c180dd50014106083041820a0c03008305a3754646644a660b666e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a200037326600a6ea416522010013259800981d982e9baa00189929982e99b9649113666f756e642070726f7879207574786f3a3a200037326600e002910100132598009820182f9baa0018992cc0040062b3001303e3060375400313259800800c126264b3001001825412a09504a899912cc0040060991325980098350014401a09a8338c1a00050661bae001306700241a060ca0028318c184dd5000c12105e412209104882420cc306330603754003153305e49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164174601860be6ea8c034c17cdd50009830982f1baa0018a9982e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016416c660080024646600200260086eacc034c17cdd51806982f9baa0022259800800c528456600266e3cdd7183180082e4528c4cc008008c19000505d20c230010013758601260b66ea80e8896600200314bd7044cc178c16cc17c004cc008008c18000505d1800800911919800800801912cc0040062980103d87a80008992cc004c01000626012660be00297ae0899801801983080120b4305f001417444464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20c05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c82d105a1bac305d002375a60b60026466ec0dd4182d8009ba7305c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60c0003337149101023a200098008054c18400600a805100a183180144ca6002015306000199b8a489023a200098008054c184006600e66008008004805100a183180120c23063001418066e29220102207d0000341746eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c20ba3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e417c66e2ccdc0000acc004cdc4000a40291481822903720be004401866e0c00520203370c002901019b8e00400241706eb800d0601b8a4881022c20002232330010010032259800981b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002300b00189980299b8400148050cdc599b803370a002900a240c000682b90571803803a264b300100181a40d2264b300100181ac4c96600200303681b40da06d1332259800800c0e2264b30010018acc004c16000a264b300130323054375400513259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc0040060810408204102264b300130600038acc004c0e4c16cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d132598009833001c4c966002608000313259800800c126264b3001001825412a09504a8992cc004c1a800e02504b419c6eb800506a1833800a0ca30633754017159800981f800c56600260c66ea802e01f048419104841808300c184dd5005411d0631bae001419860c60028308dd7000983100120c63060001417860b86ea801a08282ca08282e8dd7000a0c0305d001416c60ba00503e81f40fa07c82f0c16c005059182d80140f207903c81e20b83059001415c60aa6ea800a07482904c01cc16002207282aa07303981cc0e5059182b000a0a8375c00260aa00482b0c14c0050511bac00181a40d10541828801209e40b902140b902144c96600200302f817c0be2646006609e0086eb400605e8278c13000904a44c96600200302d816c0b62646006609a0086eb400605a8268c12800904840a904640aa05502a815209430470014114608e00502881440a20508240c1140050431bad0013044002812a08a304200141006eb4004c10400a0448210c0fc00503d1bac001303e00280fc07d03f181e000a0743758002607600501c80e2078303900140dc606a6ea801a034819203481b0dd6000c06603281c8c0d8005034181b001405e02f01780ba06e303400140c8606800501580ac05602a81a8c0c800503018171baa010809a0561112cc004c028c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a801466002007132598009807800c56600260646ea800a00f00640cd1598009807000c4c9660020030078992cc0040060110088044022264b3001303900380540250361bae00140e4606c00281a0c0c8dd50014566002602400313259800800c01e264b30013038002804c021035181b000a0683032375400500640bc817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a8444b30013009302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002601c00313259800800c01e264b30010018acc004c0dc00a264b300130110018992cc00400601513259800800c566002607400519800800c032016808a01681ba01700b805c02d03b181c000a06c303437540051598009808000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0340062b3001303137540050078032064803205c40b8605e6ea800600a805a00a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c0050290dc3a40006e1d2002804402201100840a0604a60446ea800e2c80f8604200260386ea808a293454cc06924011856616c696461746f722072657475726e65642066616c7365001365640641" : "593595010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a4005223233001001003223300300130020024888a60024464b30013006001899192cc004c05c00a0091640506eb8c054004c044dd5001c566002600a0031323259800980b80140122c80a0dd7180a80098089baa0038b201e403c601e6ea800a44b30013005300f3754005132323259800980b80144c8c9660026014003159800980a9baa002803459016456600260120031323259800980d80140222c80c0dd6980c800980a9baa0028acc004c0340062b3001301537540050068b202c8b2026404c8098c04cdd5000980b001c59014192cc004c04c0062b30013371290021809000c5a2600e6024002808a2c80a0dd5180a800980a80098081baa0028b201c912cc004c014c03cdd500144c8c8cc896600260300070058b202a375a602a0026eb8c054008c054004c040dd500145900e488c966002600c0031323259800980b80140122c80a0dd6980a80098089baa0038acc004c0140062b3001301137540070028b20248b201e403c601e6ea8009222232323322598009805980a9baa010899191919912cc004c07c00e264b30013011301b3754003132323232323298009812800cdd61812802cdd698128024dd69812801cc0940092222259800981580344cc068dd61815005912cc00400a26603800c44b300100289980d00289980d0048cc004dc3a400d370e90044dc3a4014911192cc004c090c0b8dd500ac4c8c8c966002606c005132332259800981500144c96600260740031330293758607200244b300100280244cc08cc0ec0084c004c0f0009039459037181a9baa0038acc004c0a400a264b3001303a0018998149bac303900122598008014012266046607600426002607800481ca2c81b8c0d4dd5001c566002605a00513259800981d000c4cc0a4dd6181c800912cc00400a009133023303b00213001303c00240e51640dc606a6ea800e2b3001300a0028992cc004c0e80062660526eb0c0e40048966002005004899811981d80109800981e00120728b206e30353754007159800980480144c96600260740031330293758607200244b300100280244cc090c0ec0084c004c0f0009039459037181a9baa0038acc004c02000a264b3001303a0018998149bac303900122598008014012266048607600426002607800481ca2c81b8c0d4dd5001c59033206640cc8199033206630323754002264b300130290018992cc004c0e400626604a607000200f1640d860686ea800e2b300130280018992cc004c0e4006264b3001302b30353754003132323259800981e80144cc0a8c0f000c4cc0a800402e2c81d0c0ec004c0ec004c0d8dd5000c59034181c000c59036181a1baa0038b206440c860646ea8008c0d400e2c8198c0d0004c0d0004c0bcdd500ac5902d09981080a912cc00400a330012303430350019181a181a981a800cdd2a400122232598009814800c4c8c96600260740050048b206e375c607000260686ea800e2b300130280018992cc004c0e40062660506eb0c0e000489660020050058cc00401e607400513001303b002401c81c22c81b0c0d0dd5001c566002605800313259800981c800c4cc0a0dd6181c000912cc00400a00b19800803cc0e800a2600260760048039038459036181a1baa0038acc004c0240062646644b3001303b0018998151bac303a0012259800801401e33001009981e00144c004c0f400900920748b2070375a6070002607200260686ea800e2b30013008001899192cc004c0e800a0091640dc6eb4c0e0004c0d0dd5001c566002600e0031323259800981d00140122c81b8dd6981c000981a1baa0038acc004cdc3a40180031323259800981d00140122c81b8dd7181c000981a1baa0038b206440c88191032206440c88190c0c8dd500124444646644b3001302c30363754005132323232323232323298009821800cc10c022608600f30430069821802cc10c012608600737586086004911111112cc004c130026266024609602226602400e26602400c26602400a2660240082660240062b3001303d304737540051323232323298009bae30500019bae30500059bae30500049bae30500039bae30500024888896600260ac00d13304500b225980080144cc10805066002604860a86ea813a460b060b260b260b20032232330010010032259800800c5284566002600660b600314a3133002002305c001415882ca460b060b260b260b260b260b260b260b200337009000cdc024005374a9001244444446464b300198009111919912cc004c16000a2b300130583062375400314c0103d87a80008a6103d87980004185159800982d801456600260b660c46ea80062980103d87a80008a6103d87b800041851332259800982d000c530103d87b80008acc004c164006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041908320dd6983418329baa0038a6103d8798000418c8318dd6983318319baa00330623754002830906118301baa00130020033001003919191919912cc004c16000a29422b3001305b0028cc004cdd7983318319baa0014c103d87b8000a50a514185132332259800982d8014528c56600260b40051332259800982e18339baa30383068375400d1337100040031337120040028330dd6983498331baa00359800982d18329baa30363066375400f100189806800a0c88a5041908320c18cdd50009bad30673064375400860cc60c66ea800506120c23060375400260c860ca00660c660c06ea8004c188004c178dd5000cc0b4c174dd5004a444b30013055305f37540031323300b375860c860c26ea81608cdd7983298311baa00100230633060375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c194c188dd50014c194c188dd5000c8c8c96600260b260c86ea8c1a0c1a400a200313259800982d000c4c030cc1a0dd418069bad30693066375400497ae08acc004c16c0062005100241908320c190dd5000a0c63067001306337540028029300103d87b8000a50a5141811980099baf9800981918311baa002981918311baa001919192cc004c164c190dd51834183480144006264b3001305a00189806198341ba8300e375a60d260cc6ea80092f5c1159800982d800c400a2004832106418321baa001418c60ce00260c66ea8005005260103d8798000a50a51418114a0830106020c0306330603754002601260c06ea815d05e2330013060305d375401322232330010010042259800800c401226600660ca0026600400460cc002831a4530013300900223375e60c660c06ea8c18cc180dd5181818301baa001300633062375200497ae0a50a51417523052305d375460c2646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130573062375460cc0074a14a2830a2660cb30014a14c103d87a8000a60103d87980004184660ca6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1a000400e294626600400460d2002831906644cc196600294298103d87a8000a60103d87980004184660ca6e9c0092f5c11330659800a51a60103d87a8000a60103d87980004184660ca6e9ccc194dd400080125eb8106120c2375860c860ca0026eb4c190008cc008008c190005061489660020031480022600c6600400460c6002830244b30010018a40011300633002002306300141812222329800800c01600900340044444b30010038800c66002009306900398348016600260d0007375a60d00050014014802106648896600200514c103d87a80008acc004c1540062605c660c460c600497ae08cc00400e60c80053008001400c82f1061488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006418d1330050053069004418c6eb8c188004dd598318009832800a0c614bd6f7b6304896600260a860bc6ea800a26464b30013065002801c590621bad3063001305f37540051641752232330010010032259800800c52f5c1133225980099baf30663063375460cc60c66ea8c0ccc18cdd50011804998329ba90054bd7044cc194008cc0100100062660080080028308c190004c19400506248c184c188c188c188c188c188006460c260c460c460c460c460c460c4003222329800800c012006800888966002005159800800c528c52820c88acc00400629422b3001330043066002375a60cc00319800801cc19c00a60ce002801a294106120c841912259800982a182f1baa0028991919194c004c19800660cc007306600248896600260d4009133030306900713305300213259800982e000c4c8cc896600260dc003132323322598009839001c0422c8378dd718378009bae306f002306f001375860da0031641ac6eb4c1ac004c1b0004c19cdd5001456600260b60031323322598009837000c4c8c8cc896600260e40070108b20de375c60de0026eb8c1bc008c1bc004dd61836800c5906b1bad306b001306c00130673754005159800982f800c4c8ca60026eb4c1b000660da003375a60d80049112cc004c1c000a264646644b300130740038094590711bae3071001375c60e200460e20026eb0c1bc00a2c836860d800260ce6ea800a2b3001303c00189919912cc004c1b8006264646644b3001307200380845906f1bae306f001375c60de00460de0026eb0c1b40062c8358dd69835800983600098339baa0028acc004c0ec00626464b3001306d002805c5906a1bad306b00130673754005159800981d000c4c8c96600260da00500b8b20d4375a60d600260ce6ea800a2c832906520ca4194832906518329baa0018b20ce183300098328009832000982f9baa0028b20ba911194c0040060090034004444b30010028800c660020073067002998021833001000a0064191230613062306230623062001912cc004c150c178dd500144c8c96600260ca0050038b20c4375a60c600260be6ea800a2c82ea44b30010018a400113006330020023063001418137029000488cdc199b82002375a605c60be6ea8004dd69817982f9baa0019b88480024466056004466ebcc18cc180dd50009ba700248888888888888888888888a60024444646600200200a4464b30013070001899192cc004c1c8c1f0dd5000c4c8ca60026eb8c2080400a6eb8c20804c20c040066eb8c2080400572a308201001375861000260fa6ea8006294107b1919800800804112cc0040062980103d87a80008992cc004cdc79bc8375c6104020020091304d3308101374e00297ae089980180198418080120fa375861020200283f8dd7183f183d9baa0028acc004c1bc006264660020026eb0c1fcc1f0dd5001912cc00400629462b300133005005308001001899801001184080800c52820f641f91598009839800c4cc094dd6183f183d9baa0022330040040018acc004c14000626466e24dd6983f800cc004dd6183f984000800d2000912cc004cc01801800a2604a003100141f080f0c1ecdd50014566002609e0031323322598009839183e9baa0028acc004c1c8c1f4dd5184080984100801c4cdc49bad308101307e37540040031337106eb4c20404c1f8dd5001000a0f88a5041f060fe0026eb4c1fcc1f0dd5001983d9baa304b307b375400b1598009827000c4c8cc896600260e460fa6ea800a2b30013072307d37546102026104020071337120026eb4c20404c1f8dd500144cdc40009bad308101307e375400483e2294107c183f8009bad307f307c375400660f66ea8c1f8c1ecdd5002c4c8c8cc004004018896600200314a115980099baf003307d3081010018a51899801001184100800a0f841fc6042660fa60fc60f66ea80092f5c083c907920f241e483c9079183c9baa0019180a800cc04c04e6024025301001091119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c83da26600a00a61020200883d8dd7183d0009bad307b001307d00141ec660260080062900048c05400660e66ea805e600a00b2232598009837983b1baa001899198068008acc004cdd79811983c1baa003307b3078375400915980099baf30483078375400260f660f06ea800e20031641d91641d860f460ee6ea80062c83a8c114c1d8dd51823183b1baa00292cc004cdc4000a4001130050018800a0e6488888888888c8ca60024444446644646644b30013370e66e04dd69847809846009baa308f01003375a611e026118026ea8c23c04010006264b30013370f30013758606c611a026ea80329000488cc89660033001308601001a50a51423c051325980099b893302100100598008044dd7184a80801cdd7184a80984b00801a032899b800040018b2120023370400200b1003423c046eb0c24804c23c04dd5001194c00402a90004896600266ebcc094c24804dd50011ba7003899b80001375a60c46124026ea800a20028480090241bac309201308f0137540048108cdc08010054400a2c845809660026034013148006290012114028b2114023756611a02611c02002b3001307f300e0038a4001159800984700801c4c96600266e3cdd7184500800a4504555344720089bad308b010018b211202308d010038b211602422004611a02002660446eacc068c21c04dd50029bae30573087013754603c610e026ea801a600200b375c611402610e026ea8c078c21c04dd5003400e004803a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444464b3001307b30850137540031325980099baf308a013087013754611402610e026ea8004c0b4cc22404dd4802a5eb822b3001307b98009bab30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab30593089013754007006a441045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5000c5908501459085011844809843009baa0018b210802330060040019111192cc004c1ecc21404dd5000c4c96600266ebcc22804c21c04dd51845009843809baa30573087013754002605a66112026ea40152f5c1159800983dcc004dd5982b9843809baa30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab3059308901375460b26112026ea800e00d4881045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5182b9843809baa0018b210a028b210a023089013086013754003164210046600c008002911112cc004c1ec02e26644b300198009845809844009baa0538164c0c4c22004dd503fcdd5980f9844009baa07f4051159800998149bac308b0130880137540fe6eb8c0ccc22004dd5180f9844009baa0538acc0066002660426eb0c22c04c22004dd503f9bae30573088013754603e6110026ea814e6eb0c160c22004dd5000cdd618189844009baa05348896600266e1cc05000cc0500162b300130110028cc00400e0052232598009841809846809baa001899192cc004c21404c23c04dd5000c4c8ca60026603e0100033758604a6124026ea80126eb4c2540400922259800984500984a009baa0038acc004cdc499199119b8330403370066e08004dd69833984c009baa003002002375a60cc612c026ea8004dd69833184b009baa00830980130950137540073001375660ca612a026ea8c194c25404dd50054dd7184c008014dd7184c00984c8080120388acc004cdc38009bad3065309501375400f13375e6e9c010c0a0c25404dd5003c5282126028a50424c0516424c043758612802612a020026120026ea8006294108e01182f1847809baa33012004001309101308e013754003164230046601c00e002810a2c84480a2c844809159800cc004dd6182b9844009baa07f9bac308b0130880137540033308a0130583088013754603e6110026ea814ccc228053001054455534472004bd702444b30013370e602a004602800b19800802c00a4464b3001308301308d0137540031325980099baf309201308f013754002612402611e026ea8c24804c23c04dd5002456600266ebcc178c23c04dd5000982f9847809baa309201308f01375400913370f3001375660be611e026ea80066eb8c248040166eb8c17c01501618089bad305f308f01375400914a084680a294108d011848809847009baa0018b2118023300e005001408516422404899b879800829c1fe90004dd6982b9844009baa0019bad30333088013754003002401d30010029bac308b01308801375400323017375a60b26112026ea8005006459086014590860145908601459086011bac3089013086013754052611202610c026ea820006264b3001307b00c899912cc006600260b26112026ea815205b3032308901375410003375660406112026ea8200050154566002660546eb0c23004c22404dd5040009bae3034308901375460406112026ea81522b30019800998111bac308c013089013754100026eb8c160c22404dd518101844809baa0549bac305930890137540033308b013059308901375460406112026ea8150cc22c05301054455534472004bd702444b30013370e602a006602a00b159800980900146600200700291192cc004c21004c23804dd5000c4c8c966002610a026120026ea800626464b3001337120033001375660c66126026ea8c18cc24c04dd5003cdd7184b008044dd7184b00984b8080420348acc004cdc380098119bad3063309301375400913375e612c02612e02004604c6126026ea80122941091014528212202375a612a020026122026ea8006294108f01182f9848009baa33013004001309201308f013754003164234046601e00e00281122c84500a2c845009159800cc004dd6182c1844809baa080018014dd61846009844809baa0019bac303230890137540a8801a266e1e60020a908001a4001375a60b06112026ea80066eb4c0d0c22404dd5000c0090084c00400a6eb0c23004c22404dd5000c8cdc41bad305a308a0137540029000200e8b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c56600260fe0191332259800cc004c160c22404dd502a40b660646112026ea8200066eacc080c22404dd504000a02a8acc004cc0a8dd61846009844809baa08001375c60686112026ea8c080c22404dd502a45660026644b30013370e602800460280091598009808800c6600200500191192cc004c20c04c23404dd5000c4c8c96600260ca611e026ea8006264b30013370e6eb4c25004004dd698309848809baa003899baf3094013095010013024309101375400714a0847808c24004dd5000c528211c02305e308f01375466024008002612202611c026ea80062c846008cc0380180050214590890145908901198111bac308c013089013754100026eb8c160c22404dd518101844809baa054375860b26112026ea80062b300198009bac30583089013754100030029bac308c013089013754003375860646112026ea815100344c1fa60020a908001cc00400a6eb0c23004c22404dd5000c96600260306eb4c168c22804dd5000c4c1fcdd6982c9845009baa0018a50422004803a6eb4c160c22404dd5000cdd6981a1844809baa00180120108b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c4c96600260ba01b198009bac308b013088013754057222225980099b87301600530160048acc004c04c00e266e24006600200b003a400122232598009843009848009baa001899912cc004c22c04c24804dd5000c4c8cc0a400456600266ebcc0fcc25004dd5001984b80984a009baa0078acc004cdd79832184a009baa001309701309401375400713259800984680984a009baa001899192cc004cdc39bad309a01002375a60ce612e026ea801a2b30013370e6eb4c26804004dd69833184b809baa0068acc004cdd7984d00984d808009815184b809baa006899b8000898009bab3067309701375460ce612e026ea802a6eb8c268040326eb8c26804c26c0403101e459095014590950145909501184d00800984a809baa0018b212602306330940137540031642480516424804612c026126026ea80062c848808c25004c24404dd500098301848809baa3061309101375400916423c046602200e00481522c84580a2c84580a6116026110026ea82080522259800cc004c0d8c22c04dd502b40be60686116026ea8208066eacc088c22c04dd504100a02e899912cc00566002603600514a319800984100800d28528a11602422c05132598009841809846809baa0018cc00660026eb0c24404c23804dd504280cdd7181c9847009baa3025308e0137540b3375c60bc611c026ea8c094c23804dd502ccdd69848809847009baa0014025375a612202611c026ea8c24406600210a03375c612202611c026ea8c094c23804dd502ccdd6982e9847009baa0049bad3039308e01375400880726e0400a604c611c026ea8011222232323259800984500984a009baa0048992cc004cdc399b81375a61320200200800715980099b87375a6132026134020026eb4c26404c268040222b3001300f00a8acc00660026605e6eb0c26404c25804dd5046809bae30653096013754605a612c026ea818601d375860cc612c026ea8032661300260cc612c026ea8c0b4c25804dd50309984c00a61054455534472004bd7052000403515980099b8900298009bac3065309601375411a034800244b30013375e6136026130026ea8008c26c04c27004c27004c27004c27004c27004c27004c27004c27004c26004dd5031c4cdc0000cc004dd59834184c009baa0029bae30683098013754605e6130026ea818e9101045553447200407d100142580481c22b3001323371266e0003002e60026eb0c100c25c04dd5031520009119192cc004c0a4006266e0000ccdc199b82001375a60d66136026ea8010dd69835184d809baa0048801a1320298008024dd7184e80800cdd7184e80984f00800a04237586138026132026ea800902b1bab309901309a01309a01980084680cdd7184c80984b009baa302d30960137540c3375a60ca612c026ea80326eb4c104c25804dd5006202c899b879800830c23406600c017375a60ca612c026ea80326eb4c104c25804dd50064039015005459094014590940145909401456600330013302f3758613202612c026ea823404dd71832984b009baa302d30960137540c300e9bac30663096013754019330980130663096013754605a612c026ea8184cc26005301054455534472004bd704c09800900d44cdc3cc00418611a03300600b9bad30653096013754019375a6082612c026ea803201c80a802a2c84a0090940145909401459094014c004dd61832184a809baa08c019bae304030950137546058612a026ea81826eb8c194c25404dd51816184a809baa0609bad3098013095013754008808a2c849808c01000566002604200913370666e0801c00401229000212202375a612a020088b2118023020308d01375400716422c0530010039bac308e01308b01375400323005375a60b86118026ea80050094c00400e9000488cdc00009bad305c308d01375400480fa2c844809159800982e006c4cc89660033001301d308a0137540ab02e98199845009baa081019bab3021308a0137541020280b22b30013302b3758611a026114026ea820404dd71846809845009baa3021308a0137540ab13322598009840809845809baa00189919912cc004c02000a2b300130080018acc0056600261080200314a31301d00242340513259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260c06120026ea8c09cc24004dd502d9984900a601054455534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b8c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c848809159800cc004dd6182f9848009baa087019bac309301309001375400f330920130233090013754604e6120026ea816ccc2480530106457355534472004bd702444b30013370e603a004603801719800805c00a4464b3001308b0130950137540031325980099baf309a013097013754002613402612e026ea8c26804c25c04dd5002456600266ebcc198c25c04dd50009833984b809baa309a01309701375400913370f3001375660ce612e026ea80066eb8c268040166eb8c19c01501e2cc004c2300402626eb4c19cc25c04dd500244cdc199b82375a60ce612e026ea8010024029095014528212a028a50425404613202612c026ea80062c84a008cc058014005029459091012264b300130860130900137540031325980099b87375a612a0200266e000140222b30013370e6eb4c25404c25804004cdc0002001c56600266e1e60026eacc094c24804dd504480cdd718129849009baa302930920137540bb4881057355534472004064007130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed220104555344720040651642400516424005164240053001375860c06122026ea8220066eb8c0f0c24404dd518141848809baa05c9bae3061309101375460506122026ea81726eb4c25004c24404dd5000a01a8b211e023028309001375400f164238051642380516423804b30013084010018802c4cdc199b820050010024234051642340516423405164234046eb4c24004004dd6984800984880800cc004dd61847809846009baa083019bae3037308c01375460466118026ea815e6eb8c170c23004dd518119846009baa0579bad308f01308c013754002803a2c84500a60020053758611a026114026ea8006460326eb4c16cc22c04dd5000a00e301d308a01375400316422005164220046eb0c22c04c22004dd50159845809844009baa08201899912cc006600260446114026ea815605d3033308a01375410203375660426114026ea8204050164566002660566eb0c23404c22804dd5040809bae308d01308a01375460426114026ea815626644b3001308101308b013754003132332259800980e8014566002603a00313259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260466120026ea8c09cc24004dd502d9984900a60106457355534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b4c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c84880915980099b8798009bab3023309001375410e03375c60466120026ea8c09cc24004dd502dd22105735553447200405c604000d132598009843009848009baa0018992cc004cdc39bad3095010013370200a00715980099b87375a612a02612c0200266e040100222b300130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed22010455534472004065198009bac30613092013754112033758612a026124026ea8026661280260c46124026ea8c0a4c24804dd502e9984a00a61054455534472004bd702444b30013370e603e004603c01b19800806c00a4464b3001308d0130970137540031325980099baf309c0130990137540026138026132026ea8c27004c26404dd5002456600266ebcc1a0c26404dd50009834984c809baa309c01309901375400913370f3001375660d26132026ea80066eb8c270040166eb8c1a401502019b83337046eb4c1a4c26404dd5002006005c528212e028a50425c046136026130026ea80062c84b008cc06001400502b4590930122c84800a2c84800a2c84800a60026eb0c180c24404dd504400cdd7181e1848809baa302830910137540b9375c60c26122026ea8c0a0c24404dd502e4dd6984a009848809baa001403516423c0460506120026ea801e2c84700a2c84700a2c84700a600200f480024466e00004cdc199b82375a60c26122026ea800801000d02345908d0145908d011bad309001001375a61200261220200330013758611e026118026ea820c066eb8c0dcc23004dd518119846009baa0579bae305c308c01375460466118026ea815e6eb4c23c04c23004dd5000a00e8b21140298008014dd61846809845009baa0019180c9bad305b308b0137540028038c074c22804dd5000c5908801459088011bac308b0130880137540566116026110026ea82080508601210c0237129000210a024214044444b30013370e6028004602600719800801c00a4464b3001308201308c013754003198009848009846809baa0019bac3020308d0137540073301a00437586040611a026ea800d222598009842809847809baa0018acc004cdd79849809848009baa00330930130900137546126026120026ea801a2b30013375e60be6120026ea800cc180c24004dd51849809848009baa006899b8798009bab30603090013754007375c612602005375c61260261280200480b8cc07cc048dd698301848009baa006309301309001375400314a084700a294108e0145908e0122c845808cc034018005020459088012108021111192cc004c1e8c21004dd5000c4c96600266ebcc22404c21804dd51844809843009baa30563086013754002605866110026ea40152f5c1159800983d4c004dd5982b1843009baa30563086013754003005a4508747265617375727900403513259800983f9843009baa0018991980d0008992cc004c1f8c22004dd5000c4c96600266ebcc23404c22804dd51846809845009baa00130303308c01375201297ae08acc004c1fa60026eacc168c22804dd5000c026911087472656173757279004045132598009841809845009baa0018991980f00089984700802998470080099847009ba6329800800cdd5982e9846809baa00499198008009bab305e308e01375460bc611c026ea8024896600200314bd6f7b63044c8cc24804cdd81847808009ba63233001001375661220200444b30010018a5eb7bdb1822646612a0266ec0c24804004dd418119bad30930100133003003309701002309501001424c04660060066128020046124020028480090011112cc00400a2003132332298008034c25804016646600200200a44b300100189984b0099bb037520086e9800d2f5bded8c113298009bae3094010019bab309501001984c808012444b30013372001000713309a01337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528213402880144cc26c04cdd81ba9009374c00200484b808ca6002003008801a002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd4001a5eb7bdb1822653001375c614002003375a61420200330a50100248896600266e4002000e26614c0266ec0dd48041ba80070058acc004cdc7804001c4c96600261340200310028998538099bb037520126ea00040090a30119b800070028998530099bb037520066ea0008cc0180180050a201214402185180800a1420240186eb8c26c04004dd6984e00800984f0080121380289984d0099bb037520066e98008cc01801800509601212c02184b80800a12a0240186eb8c23c04004dd59848008009849008012120024bd701847009845809baa0018b2112023059308a01375400316422005164220046118026112026ea80062c843808cc024dd6182b9844009baa008005308a0130870137540031642140460aa610c026ea8c158c21804dd5000c5908401459084011844009842809baa0018b210602330053758610e026108026ea8010008896600266e2000520008a6103d87a8000899804801000a0fe22c82d8c8cc004004dd61816182e9baa0572259800800c52f5c1133060374e6464660c460c6004660c4605e60c06ea8004cc188dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241888310dc68009bae30653062375400266e28c008dd7181918311baa0013371460046eb8c0c4c188dd500098011bae300d30623754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241808300dc68009817198312610b4a5369676e617475726531003306230633060375460c660c06ea8004cc18930101400033062375200a97ae04bd70183118318009bac3061001330020023062001417c6e50dd9803a264b3001304a305437540031323232332259800982f001c4c8c8cc896600260c40071300b306200c8b20be375c60be0026eb8c17c008c17c004dd6182e802c5905b1bad305b001375a60b600460b600260b400260aa6ea80062c8298c15c0090554590530c140004c13c004c138004c134004c120dd50014590464590490c10c004c108004c104004c100004c0fc004c0f8004c0f4004c0f0004c0dcdd50014590351802981a9baa323232598009816981b9baa0018992cc004c0c4c0e0dd5000c4c966002605e60726ea8006264646644b300130420038802c5903f181f8009bae303f002303f001303a37540031640e0607860726ea80062c81b8c01cc0e0dd51804181c1baa303b303837540031640d8660066eb0c01cc0dcdd50171191980080098019bab300930393754601260726ea8008896600200314a115980099b8f375c607a00206f14a3133002002303e00140e081d8c004004896600200314bd7044cc0e4c0d8c0e8004cc008008c0ec0050381801001111919800800801912cc0040062980103d87a80008992cc004c0100062600e6607600297ae0899801801981e801206e303b00140e489919912cc004c0dc00626644b3001302a303437540051323232332259800981f001c4c966002606060746ea8006264646644b300130430038992cc004c0d400626464b300130460028074590431bae30440013040375400f159800981a000c56600260806ea801e0191641051640f881f0c0f8dd50034590401bae3040001375c6080004608000260766ea80062c81c8c0f40162c81d8dd7181d800981d801181d800981d000981a9baa0028b206630360011300430370058b2068375c6068002606a0026eb0c0cc0090312264600460600066eb4c0b800902c44c8c008c0b800cdd6981600120548b205018128009812000981180098110009810800980e1baa0018b2034301e0058b203837586038002603800460380026036002602c6ea80422c80a089660026016602a6ea800a26464646644b3001301f003899804180f00289980580100345901c180e0009bad301c002301c001301b0013016375400516405044b3001300b301537540051323232323298009bac301e0019bad301e0049bad301e003980f00124444b30013023005899806181100489980780089919912cc004c09800e01b16408c6eb8c08c004dd7181180298118024590200c078004c074004c070004c06c004c058dd5001459014112cc004c028c050dd500144c8c8c9660026038005133006301b003132598009807000c56600260326ea800a00b1640691598009806800c4c8c966002603e0050078b2038375c603a00260326ea800a2b30013011001899192cc004c07c00a00f164070603a00260326ea800a2c80b9017202e3017375400316406460340026034002602a6ea800a2c80988966002601260266ea800a2646464b3001301b002899804980d0018992cc004c034006264b3001301d001899192cc004c040006264b30013020001899807180f800804c5901d180d9baa0028acc004c03c00626464653001375a6042003375a6042007375a60420049112cc004c09401201d16408830210013020001301b375400516406480c8c064dd5000980e000c5901a180c1baa0028acc004c0300062b3001301837540050058b20328b202c4058602c6ea80062c80c0c064004c064004c050dd50014590121164020300900130043754013149a26cac80101", _data.Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); +}); +var V0_4StakingVaultStakingVaultMint = exports.V0_4StakingVaultStakingVaultMint = /*#__PURE__*/_createClass(function V0_4StakingVaultStakingVaultMint(utxoRef, proxyPolicyId) { + var trace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + _classCallCheck(this, V0_4StakingVaultStakingVaultMint); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601" : "5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201", _data.Type.Tuple([_data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); +}); +var V0_4StakingVaultStakingVaultSpend = exports.V0_4StakingVaultStakingVaultSpend = /*#__PURE__*/_createClass(function V0_4StakingVaultStakingVaultSpend(utxoRef, proxyPolicyId) { + var trace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + _classCallCheck(this, V0_4StakingVaultStakingVaultSpend); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601" : "5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201", _data.Type.Tuple([_data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); +}); +var V0_4StakingVaultStakingVaultElse = exports.V0_4StakingVaultStakingVaultElse = /*#__PURE__*/_createClass(function V0_4StakingVaultStakingVaultElse(utxoRef, proxyPolicyId) { + var trace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + _classCallCheck(this, V0_4StakingVaultStakingVaultElse); + _defineProperty(this, "Script", void 0); + this.Script = (0, _uplc.cborToScript)((0, _uplc.applyParamsToScript)(trace ? "5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601" : "5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201", _data.Type.Tuple([_data.Type.Object({ + transaction_id: _data.Type.String(), + output_index: _data.Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); +}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_4/index.js.map b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_4/index.js.map new file mode 100644 index 0000000000..269928bb54 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v0_4/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_uplc","require","_data","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","a","n","TypeError","_defineProperty","value","i","_toPrimitive","toPrimitive","call","String","Number","PolicyId","Type","Contracts","Module","Bool","Boolean","Tuple_VerificationKey_COSESign1","Tuple","Ref","COSESign1","headers","payload","Optional","signature","ctor","HeaderMap","Headers","unprotected","MultisigScript","Union","Signature","key_hash","AllOf","scripts","Array","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Destination","address","payment_credential","VerificationKey","stake_credential","Inline","Pointer","slot_number","transaction_index","certificate_index","datum","Literal","DatumHash","InlineDatum","TPlutusData","ExtraProtocolRedeemer","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","Nonce","UTxO","transaction_id","output_index","Validity","lower_bound","bound_type","Finite","is_inclusive","upper_bound","OrderAction","OMint","amount","reserve_asset","ORedeem","ODeposit","principal","OWithdraw","OStake","OUnstake","OrderDatum","owner","destination","action","data","OrderRedeemer","ProtocolRedeemer","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","ProxyDatum","logic","settings","Registry","treasury","usdr","order","staking_vault","susdr","Request","origin","ReserveAsset","asset","numerator","denominator","Settings","mint_permission","burn_permission","withdraw_permission","deposit_permission","stake_permission","unstake_permission","registry","reserve_assets","unstaked_yield_pot","SignedPayload_ProtocolRedeemer","nonce","SignedRedeemer_ExtraProtocolRedeemer","extra","signatures","StakingVaultRedeemer","Undefined","TreasuryRequest","VaultDatum","circulating_susdr","exports","Import","V0_4OrderOrderSpend","proxyPolicyId","trace","arguments","undefined","cborToScript","applyParamsToScript","V0_4OrderOrderElse","V0_4ProtocolProtocolWithdraw","V0_4ProtocolProtocolElse","V0_4StakingVaultStakingVaultMint","utxoRef","V0_4StakingVaultStakingVaultSpend","V0_4StakingVaultStakingVaultElse"],"sources":["../../../../src/generated-types/v0_4/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\ntype Data = Exact;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n Bool: Type.Boolean(),\n Tuple_VerificationKey_COSESign1: Type.Tuple([\n Type.String(),\n Type.Ref(\"COSESign1\"),\n ]),\n COSESign1: Type.Object({\n headers: Type.Ref(\"Headers\"),\n payload: Type.Optional(\n Type.String()\n ),\n signature: Type.String(),\n }, { ctor: 0n }),\n HeaderMap: Type.String(),\n Headers: Type.Object({\n protected: Type.Ref(\"HeaderMap\"),\n unprotected: Type.Ref(\"HeaderMap\"),\n }, { ctor: 0n }),\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object({\n key_hash: Type.String(),\n }, { ctor: 0n })\n }),\n Type.Object({\n AllOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n AnyOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n AtLeast: Type.Object({\n required: Type.BigInt(),\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Before: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n After: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n Script: Type.Object({\n script_hash: Type.String(),\n }, { ctor: 6n })\n }),\n ]),\n Asset: Type.Tuple([\n Type.String(),\n Type.String(),\n ]),\n Destination: Type.Object({\n address: Type.Object({\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple([\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n ], { ctor: 0n })\n }),\n Type.Object({\n Pointer: Type.Object({\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ])\n ),\n }, { ctor: 0n }),\n datum: Type.Union([\n Type.Literal(\"NoDatum\", { ctor: 0n }),\n Type.Object({\n DatumHash: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n Type.Object({\n InlineDatum: Type.Tuple([\n TPlutusData,\n ], { ctor: 2n })\n }),\n ]),\n }, { ctor: 0n }),\n ExtraProtocolRedeemer: Type.Object({\n request_to_outputs: Type.Array(\n Type.BigInt()\n ),\n input_to_requests: Type.Array(\n Type.BigInt()\n ),\n treasury_input_idx: Type.BigInt(),\n treasury_output_idx: Type.BigInt(),\n vault_input_idx: Type.Optional(\n Type.BigInt()\n ),\n vault_output_idx: Type.Optional(\n Type.BigInt()\n ),\n }, { ctor: 0n }),\n Nonce: Type.Union([\n Type.Object({\n UTxO: Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ], { ctor: 0n })\n }),\n Type.Object({\n Validity: Type.Tuple([\n Type.Object({\n lower_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n upper_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n ], { ctor: 1n })\n }),\n ]),\n OrderAction: Type.Union([\n Type.Object({\n OMint: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 0n })\n }),\n Type.Object({\n ORedeem: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 1n })\n }),\n Type.Object({\n ODeposit: Type.Object({\n principal: Type.BigInt(),\n yield: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 2n })\n }),\n Type.Object({\n OWithdraw: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 3n })\n }),\n Type.Object({\n OStake: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n OUnstake: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 5n })\n }),\n ]),\n OrderDatum: Type.Object({\n owner: Type.Ref(\"MultisigScript\"),\n destination: Type.Ref(\"Destination\"),\n action: Type.Ref(\"OrderAction\"),\n data: TPlutusData,\n }, { ctor: 0n }),\n OrderRedeemer: Type.Union([\n Type.Literal(\"Execute\", { ctor: 0n }),\n Type.Literal(\"Cancel\", { ctor: 1n }),\n ]),\n ProtocolRedeemer: Type.Union([\n Type.Object({\n Mint: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequest\")\n ),\n }, { ctor: 0n })\n }),\n Type.Object({\n Burn: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequest\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n Withdraw: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequest\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n Deposit: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequest\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Stake: Type.Object({\n requests: Type.Array(\n Type.Ref(\"Request\")\n ),\n }, { ctor: 4n })\n }),\n Type.Object({\n Unstake: Type.Object({\n requests: Type.Array(\n Type.Ref(\"Request\")\n ),\n }, { ctor: 5n })\n }),\n ]),\n ProxyDatum: Type.Object({\n logic: Type.String(),\n settings: Type.Ref(\"Settings\"),\n }, { ctor: 0n }),\n Registry: Type.Object({\n treasury: Type.String(),\n usdr: Type.String(),\n order: Type.String(),\n staking_vault: Type.String(),\n susdr: Type.String(),\n }, { ctor: 0n }),\n Request: Type.Object({\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n origin: Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n ReserveAsset: Type.Object({\n asset: Type.Ref(\"Asset\"),\n numerator: Type.BigInt(),\n denominator: Type.BigInt(),\n }, { ctor: 0n }),\n Settings: Type.Object({\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n withdraw_permission: Type.Ref(\"MultisigScript\"),\n deposit_permission: Type.Ref(\"MultisigScript\"),\n stake_permission: Type.Ref(\"MultisigScript\"),\n unstake_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"Registry\"),\n reserve_assets: Type.Array(\n Type.Ref(\"ReserveAsset\")\n ),\n unstaked_yield_pot: Type.Object({\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple([\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n ], { ctor: 0n })\n }),\n Type.Object({\n Pointer: Type.Object({\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ])\n ),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n SignedPayload_ProtocolRedeemer: Type.Object({\n action: Type.Ref(\"ProtocolRedeemer\"),\n nonce: Type.Ref(\"Nonce\"),\n }, { ctor: 0n }),\n SignedRedeemer_ExtraProtocolRedeemer: Type.Object({\n extra: Type.Ref(\"ExtraProtocolRedeemer\"),\n payload: Type.Ref(\"SignedPayload_ProtocolRedeemer\"),\n signatures: Type.Array(\n Type.Ref(\"Tuple_VerificationKey_COSESign1\")\n ),\n }, { ctor: 0n }),\n StakingVaultRedeemer: Type.Undefined(),\n TreasuryRequest: Type.Object({\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n yield: Type.BigInt(),\n origin: Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 0n }),\n VaultDatum: Type.Object({\n circulating_susdr: Type.BigInt(),\n }, { ctor: 0n }),\n});\n\nexport const Bool = Contracts.Import(\"Bool\");\nexport type Bool = Exact;\nexport const Tuple_VerificationKey_COSESign1 = Contracts.Import(\"Tuple_VerificationKey_COSESign1\");\nexport type Tuple_VerificationKey_COSESign1 = Exact;\nexport const COSESign1 = Contracts.Import(\"COSESign1\");\nexport type COSESign1 = Exact;\nexport const HeaderMap = Contracts.Import(\"HeaderMap\");\nexport type HeaderMap = Exact;\nexport const Headers = Contracts.Import(\"Headers\");\nexport type Headers = Exact;\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Destination = Contracts.Import(\"Destination\");\nexport type Destination = Exact;\nexport const ExtraProtocolRedeemer = Contracts.Import(\"ExtraProtocolRedeemer\");\nexport type ExtraProtocolRedeemer = Exact;\nexport const Nonce = Contracts.Import(\"Nonce\");\nexport type Nonce = Exact;\nexport const OrderAction = Contracts.Import(\"OrderAction\");\nexport type OrderAction = Exact;\nexport const OrderDatum = Contracts.Import(\"OrderDatum\");\nexport type OrderDatum = Exact;\nexport const OrderRedeemer = Contracts.Import(\"OrderRedeemer\");\nexport type OrderRedeemer = Exact;\nexport const ProtocolRedeemer = Contracts.Import(\"ProtocolRedeemer\");\nexport type ProtocolRedeemer = Exact;\nexport const ProxyDatum = Contracts.Import(\"ProxyDatum\");\nexport type ProxyDatum = Exact;\nexport const Registry = Contracts.Import(\"Registry\");\nexport type Registry = Exact;\nexport const Request = Contracts.Import(\"Request\");\nexport type Request = Exact;\nexport const ReserveAsset = Contracts.Import(\"ReserveAsset\");\nexport type ReserveAsset = Exact;\nexport const Settings = Contracts.Import(\"Settings\");\nexport type Settings = Exact;\nexport const SignedPayload_ProtocolRedeemer = Contracts.Import(\"SignedPayload_ProtocolRedeemer\");\nexport type SignedPayload_ProtocolRedeemer = Exact;\nexport const SignedRedeemer_ExtraProtocolRedeemer = Contracts.Import(\"SignedRedeemer_ExtraProtocolRedeemer\");\nexport type SignedRedeemer_ExtraProtocolRedeemer = Exact;\nexport const StakingVaultRedeemer = Contracts.Import(\"StakingVaultRedeemer\");\nexport type StakingVaultRedeemer = Exact;\nexport const TreasuryRequest = Contracts.Import(\"TreasuryRequest\");\nexport type TreasuryRequest = Exact;\nexport const VaultDatum = Contracts.Import(\"VaultDatum\");\nexport type VaultDatum = Exact;\n\nexport class V0_4OrderOrderSpend {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5911bb010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004888c966002601400313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a37540091598009807800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024009017202e301837540072259800800c52f5c113301a3017301b00133002002301c00140652225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640592232330010010032233003001300200291111919800800802912cc004006200b13259800800c4cc010c08000801a26600a60400046600600600280f0c08000501d488c8cc00400400c896600200314c0103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444445300130060069802802c888ca6002003004801a0022223259800980a000c4c9660020030068992cc00400600f007803c01e264b3001302b003802c0210281bae00140ac60500028130c090dd5001c566002603200313259800800c01a264b3001001803c01e264b3001302b003899807000912cc00400a00f13259800800c66002015001898011817001a014805c02e01700b40bc605800481520108140dd6000c01e00e8158c0a000502618121baa0038acc004c03c006264b300100180344c966002003007803c4c966002605600713300e0012259800801401e264b30010018cc00402a00313002302e003402900b805c02e0168178c0b000902a40210281bac001803c01d02b1814000a04c3024375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605c0071330110012259800801402a264b30010018cc004036003130023031003403500e807403a01c8190c0bc00902d402d02b1bac001805402902e1815800a052375a002605400500740ac60500028130c090dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0ac00e00b00840a06eb400600e8158c0a000502618121baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815801c0160108140dd6800c01d02b1814000a04c3024375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815801c0160108140dd7000a0563028001409860486ea800e00a81090212042408481090212042302237540053300237586040603a6ea80448cdd79810980f1baa00101048888c8c8cc88c966002602c604a6ea801a264b3001301c3026375400315980099b8f375c6054604e6ea8004dd7180598139baa3016302737546028604e6ea8c96600200319800800c40060468022047023811c08d02d198011bac30143027375403604713233225330283372c9210d63726564656e7469616c3a3a200037326600e0049101001330180010023374a9001198151ba90014bd701bab3017302837540386eb8c0a8c09cdd5198011bac301430273754036047153302549013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f7264657200164091153302549132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f63726564001640906052604c6ea8c0a4c098dd5180998131baa30293026375400d15330244913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408c44a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980c18139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a98149baa0018992cc004006330010018800c099007409a04d0268132060302d302a375400315330284913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601a60526ea8c058c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601800446602860166eacc054c0a0dd5180a98141baa001002300100122259800980b18129baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302f0028acc004c06cc0a8dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200313259800800c04e264b30010018992cc00400602b13259800800c05a02d1332259800800c062264b30010018acc004c10800a330010128cc0040423300100e8cc0040323300100a8cc0040222b3001302e303d375400d13259800800c06a264b300100180dc06e03701b899912cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f0278992cc004c14400e26606802444b30010028acc004c0fcc138dd500944c96600200302b8992cc004006264b3001001816c4c966002003159800982b801466002007132598009822000c4c9660020030308992cc0040062b3001305a0028992cc004c11c006264b3001001819c4c966002003159800982e80146600200303581a208681a20b481a40d2069034417860b600282c8c15cdd50014566002609800313259800800c0ce264b300100181a40d20691332259800800c0da264b300100181bc0de06f1332259800800c0e6264b300100181d40ea075132598009832001c0f20768308dd6800c0e90641830800a0be375a00260c0005037418460bc00282e0dd6800982e80140d105e182d800a0b230573754005032415082a0c154dd5000c0c505740c6063031818a0b63058001415860a86ea800a2b300130490018acc004c150dd500140c205e82aa05e828905118291baa001817207a81720a881740ba05d02e416060aa0028298c15400a05902c81640b10561829800a0a2304f375402502a413113259800800c5660026080609e6ea8006264b300100181644c96600200302d816c4cc896600200302f8992cc00400606103081844cc89660020030328992cc004006067033819c4c96600260ba007159800803c0d2264b300100181ac0d606b035899912cc00400606f13259800800c0e207103881c44c96600260c400713010306201181ca0be375c0028310c17c00505d1bae001305e008417c60b800e82d206882d0dd6800c0cd05d182d000a0b0375a00260b2005030416860ae00282a8dd6000982b00140b605a82b8c15000505218281baa001815a09a815c0ae05702b415460a400482820508270dd7000a0a2304e00141306eb8004c13400904e1825800a092375c00260940048258c1200050461bae00130470024120608a0028218dd70009822001208a30420014100607c6ea801a03281da03280fa03280fa03280fa03280fa03280fa03280fa03281fa03301980cc0650431820000a07c3758002607e00501680b2080303d00140ec607a00501480a405202881f0c0ec005039181d801404a0250128092078303900140dc6072005010808404202081d0c0dc005035181b801403a01d00e8072070303500140cc606a00500c806403201881b0c0cc0050311819801402a01500a8052068303100140bc606200500880440220108190c0bc00502d18159baa00180320508032058803401a00d00640c0605a0028158dd70009816001205a302a00140a0604c6ea800e0028118888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020565980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81290251bac3028002375a604c0026466ec0dd418130009ba73027001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6056003337149101023a200098008054c0b000600a805100a181700144ca6002015302b00199b8a489023a200098008054c0b0006600e66008008004805100a18170012058302e00140ac66e29220102207d0000340a06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d20503758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720543371666e000056600266e2000520148a40c11481b902a002200c33706002901019b8600148080cdc7002001204e375c0068158dc5245022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408881108acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601\"\n :\n \"590882010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc00488c96600260120031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c03800626464b3001301c0028024590191bae301a0013016375400716405080a0c050dd50014896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a6103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a44444646466446644b30013011301d375400313259800980b980f1baa0018acc004cdc79bae3022301f37540026eb8c020c07cdd51808980f9baa300f301f3754646600c0022002660066eb0c03cc07cdd500b00e44cc040dd59808980f9baa0163374a9001198109811180f9baa330033758601e603e6ea80580712f5c11640751640746042603c6ea8c084c078dd51807180f1baa3021301e37540031640704464b30013012301e3754003132598009807180f9baa001899198038008800981198101baa0018b203c3008301f3754601e603e6ea8c088c07cdd5000c5901d1980400111980718021bab300f301f3754601e603e6ea8004008cc018dd6180f980e1baa01323375e6040603a6ea80040488966002601e60366ea800a2646644b300130230018992cc004c04cc07cdd5000c4c8c8c8c8c8c8c8c8ca60026058003302c0089816003cc0b001a605800b302c0049816001cdd61816001244444444b3001303500989980c181a00889980c00389980c00309980c00289980c00209980c0018acc004c090c0c0dd500144c8c8c8c8ca60026eb8c0e40066eb8c0e40166eb8c0e40126eb8c0e400e6eb8c0e40092222259800981f80344cc09802c89660020051598009818181e1baa01489919192cc004c11000a26605a6086006264b300130340018992cc004c11800626464b300130370018992cc004c124006266064609000205516411860886ea800a2b3001303c00189919194c004dd69825000cdd69825001cdd698250012444b3001304e004817c5904b0c128004c124004c110dd5001459042208430423754002608a00316410c60826ea800a2b300130390018acc004c104dd5001409a2c82122c81f903f181f9baa0018b208230420013042001303d37540291640ed132598009818981e9baa001899191919912cc004c11c00e264646644b3001304b0038980598258064590481bae3048001375c609000460900026eb0c1180162c8220dd698220009bad304400230440013043001303e37540031640f0608000481f22c81e060720026070002606e002606c00260626ea800a2c817a2c819060580026056002605400260520026050002604e002604c002604a00260406ea80062c80f0c0880062c8100dd718100009810800980e1baa0028b20343006006300100122232598009807800c4c8c96600260440050048b203e375c604000260386ea800e2b300130140018992cc004c0840062660106eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c5660026014003132598009810800c4cc020dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004cdc3a400c0031323322598009811800c4cc028dd61811000912cc00400a00f19800804cc09000a26002604a00480490224590201bad30200013021001301c375400715980099b874802000626464b3001302200280245901f1bad3020001301c375400715980099b874802800626464b3001302200280245901f1bad3020001301c375400715980099b874803000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa0024566002600c60246ea801e33001301630133754602c60266ea801e6eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50054c058c05cc05cc05cc05cc05cc05cc05cc04cdd50054dd5980298099baa00a48888c8cc00400401488c966002601a003133009006375c603a60346ea800a2b30013012001899198008009bac301e301b375400644b30010018a518acc004cc014014c07c006266004004604000314a080d101d45660026010003132330010013758603c60366ea800c896600200314a115980099802802980f800c528c4cc008008c08000501a203a8acc004cdc3a400c003132337126eb4c078004c8cc004004dd6180f9810001112cc0040062900044cc89660026601001000513370000290014400501d1810000998010011810800a03c301a375400515980099b87480200062646644b30013015301c3754005159800980a980e1baa30203021003899b89375a6040603a6ea8008006266e20dd69810180e9baa002001406d14a080d8c078004dd6980f180d9baa003301a3754601460346ea80162b30013370e9005000c4c8cc8966002602a60386ea800a2b30013015301c3754604060420071337120026eb4c080c074dd500144cdc40009bad3020301d375400480da294101b180f0009bad301e301b375400660346ea8c074c068dd5002c4cc02c010cdd2a400466038603a60346ea80092f5c080c10182030406080c1018180c1baa001459011202218069baa00818051baa0038b2010180480098021baa0098a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4OrderOrderElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5911bb010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004888c966002601400313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a37540091598009807800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024009017202e301837540072259800800c52f5c113301a3017301b00133002002301c00140652225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640592232330010010032233003001300200291111919800800802912cc004006200b13259800800c4cc010c08000801a26600a60400046600600600280f0c08000501d488c8cc00400400c896600200314c0103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444445300130060069802802c888ca6002003004801a0022223259800980a000c4c9660020030068992cc00400600f007803c01e264b3001302b003802c0210281bae00140ac60500028130c090dd5001c566002603200313259800800c01a264b3001001803c01e264b3001302b003899807000912cc00400a00f13259800800c66002015001898011817001a014805c02e01700b40bc605800481520108140dd6000c01e00e8158c0a000502618121baa0038acc004c03c006264b300100180344c966002003007803c4c966002605600713300e0012259800801401e264b30010018cc00402a00313002302e003402900b805c02e0168178c0b000902a40210281bac001803c01d02b1814000a04c3024375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605c0071330110012259800801402a264b30010018cc004036003130023031003403500e807403a01c8190c0bc00902d402d02b1bac001805402902e1815800a052375a002605400500740ac60500028130c090dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0ac00e00b00840a06eb400600e8158c0a000502618121baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815801c0160108140dd6800c01d02b1814000a04c3024375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815801c0160108140dd7000a0563028001409860486ea800e00a81090212042408481090212042302237540053300237586040603a6ea80448cdd79810980f1baa00101048888c8c8cc88c966002602c604a6ea801a264b3001301c3026375400315980099b8f375c6054604e6ea8004dd7180598139baa3016302737546028604e6ea8c96600200319800800c40060468022047023811c08d02d198011bac30143027375403604713233225330283372c9210d63726564656e7469616c3a3a200037326600e0049101001330180010023374a9001198151ba90014bd701bab3017302837540386eb8c0a8c09cdd5198011bac301430273754036047153302549013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f7264657200164091153302549132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f63726564001640906052604c6ea8c0a4c098dd5180998131baa30293026375400d15330244913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408c44a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980c18139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a98149baa0018992cc004006330010018800c099007409a04d0268132060302d302a375400315330284913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601a60526ea8c058c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601800446602860166eacc054c0a0dd5180a98141baa001002300100122259800980b18129baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302f0028acc004c06cc0a8dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200313259800800c04e264b30010018992cc00400602b13259800800c05a02d1332259800800c062264b30010018acc004c10800a330010128cc0040423300100e8cc0040323300100a8cc0040222b3001302e303d375400d13259800800c06a264b300100180dc06e03701b899912cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f0278992cc004c14400e26606802444b30010028acc004c0fcc138dd500944c96600200302b8992cc004006264b3001001816c4c966002003159800982b801466002007132598009822000c4c9660020030308992cc0040062b3001305a0028992cc004c11c006264b3001001819c4c966002003159800982e80146600200303581a208681a20b481a40d2069034417860b600282c8c15cdd50014566002609800313259800800c0ce264b300100181a40d20691332259800800c0da264b300100181bc0de06f1332259800800c0e6264b300100181d40ea075132598009832001c0f20768308dd6800c0e90641830800a0be375a00260c0005037418460bc00282e0dd6800982e80140d105e182d800a0b230573754005032415082a0c154dd5000c0c505740c6063031818a0b63058001415860a86ea800a2b300130490018acc004c150dd500140c205e82aa05e828905118291baa001817207a81720a881740ba05d02e416060aa0028298c15400a05902c81640b10561829800a0a2304f375402502a413113259800800c5660026080609e6ea8006264b300100181644c96600200302d816c4cc896600200302f8992cc00400606103081844cc89660020030328992cc004006067033819c4c96600260ba007159800803c0d2264b300100181ac0d606b035899912cc00400606f13259800800c0e207103881c44c96600260c400713010306201181ca0be375c0028310c17c00505d1bae001305e008417c60b800e82d206882d0dd6800c0cd05d182d000a0b0375a00260b2005030416860ae00282a8dd6000982b00140b605a82b8c15000505218281baa001815a09a815c0ae05702b415460a400482820508270dd7000a0a2304e00141306eb8004c13400904e1825800a092375c00260940048258c1200050461bae00130470024120608a0028218dd70009822001208a30420014100607c6ea801a03281da03280fa03280fa03280fa03280fa03280fa03280fa03281fa03301980cc0650431820000a07c3758002607e00501680b2080303d00140ec607a00501480a405202881f0c0ec005039181d801404a0250128092078303900140dc6072005010808404202081d0c0dc005035181b801403a01d00e8072070303500140cc606a00500c806403201881b0c0cc0050311819801402a01500a8052068303100140bc606200500880440220108190c0bc00502d18159baa00180320508032058803401a00d00640c0605a0028158dd70009816001205a302a00140a0604c6ea800e0028118888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020565980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81290251bac3028002375a604c0026466ec0dd418130009ba73027001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6056003337149101023a200098008054c0b000600a805100a181700144ca6002015302b00199b8a489023a200098008054c0b0006600e66008008004805100a18170012058302e00140ac66e29220102207d0000340a06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d20503758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720543371666e000056600266e2000520148a40c11481b902a002200c33706002901019b8600148080cdc7002001204e375c0068158dc5245022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408881108acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601\"\n :\n \"590882010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc00488c96600260120031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c03800626464b3001301c0028024590191bae301a0013016375400716405080a0c050dd50014896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a6103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a44444646466446644b30013011301d375400313259800980b980f1baa0018acc004cdc79bae3022301f37540026eb8c020c07cdd51808980f9baa300f301f3754646600c0022002660066eb0c03cc07cdd500b00e44cc040dd59808980f9baa0163374a9001198109811180f9baa330033758601e603e6ea80580712f5c11640751640746042603c6ea8c084c078dd51807180f1baa3021301e37540031640704464b30013012301e3754003132598009807180f9baa001899198038008800981198101baa0018b203c3008301f3754601e603e6ea8c088c07cdd5000c5901d1980400111980718021bab300f301f3754601e603e6ea8004008cc018dd6180f980e1baa01323375e6040603a6ea80040488966002601e60366ea800a2646644b300130230018992cc004c04cc07cdd5000c4c8c8c8c8c8c8c8c8ca60026058003302c0089816003cc0b001a605800b302c0049816001cdd61816001244444444b3001303500989980c181a00889980c00389980c00309980c00289980c00209980c0018acc004c090c0c0dd500144c8c8c8c8ca60026eb8c0e40066eb8c0e40166eb8c0e40126eb8c0e400e6eb8c0e40092222259800981f80344cc09802c89660020051598009818181e1baa01489919192cc004c11000a26605a6086006264b300130340018992cc004c11800626464b300130370018992cc004c124006266064609000205516411860886ea800a2b3001303c00189919194c004dd69825000cdd69825001cdd698250012444b3001304e004817c5904b0c128004c124004c110dd5001459042208430423754002608a00316410c60826ea800a2b300130390018acc004c104dd5001409a2c82122c81f903f181f9baa0018b208230420013042001303d37540291640ed132598009818981e9baa001899191919912cc004c11c00e264646644b3001304b0038980598258064590481bae3048001375c609000460900026eb0c1180162c8220dd698220009bad304400230440013043001303e37540031640f0608000481f22c81e060720026070002606e002606c00260626ea800a2c817a2c819060580026056002605400260520026050002604e002604c002604a00260406ea80062c80f0c0880062c8100dd718100009810800980e1baa0028b20343006006300100122232598009807800c4c8c96600260440050048b203e375c604000260386ea800e2b300130140018992cc004c0840062660106eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c5660026014003132598009810800c4cc020dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004cdc3a400c0031323322598009811800c4cc028dd61811000912cc00400a00f19800804cc09000a26002604a00480490224590201bad30200013021001301c375400715980099b874802000626464b3001302200280245901f1bad3020001301c375400715980099b874802800626464b3001302200280245901f1bad3020001301c375400715980099b874803000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa0024566002600c60246ea801e33001301630133754602c60266ea801e6eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50054c058c05cc05cc05cc05cc05cc05cc05cc04cdd50054dd5980298099baa00a48888c8cc00400401488c966002601a003133009006375c603a60346ea800a2b30013012001899198008009bac301e301b375400644b30010018a518acc004cc014014c07c006266004004604000314a080d101d45660026010003132330010013758603c60366ea800c896600200314a115980099802802980f800c528c4cc008008c08000501a203a8acc004cdc3a400c003132337126eb4c078004c8cc004004dd6180f9810001112cc0040062900044cc89660026601001000513370000290014400501d1810000998010011810800a03c301a375400515980099b87480200062646644b30013015301c3754005159800980a980e1baa30203021003899b89375a6040603a6ea8008006266e20dd69810180e9baa002001406d14a080d8c078004dd6980f180d9baa003301a3754601460346ea80162b30013370e9005000c4c8cc8966002602a60386ea800a2b30013015301c3754604060420071337120026eb4c080c074dd500144cdc40009bad3020301d375400480da294101b180f0009bad301e301b375400660346ea8c074c068dd5002c4cc02c010cdd2a400466038603a60346ea80092f5c080c10182030406080c1018180c1baa001459011202218069baa00818051baa0038b2010180480098021baa0098a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4ProtocolProtocolWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"596880010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492b657870656374207661756c745f646174756d3a205661756c74446174756d203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888888888888888896600264653001302100198109811000cdc3a400930210024888966002600460426ea800e264b3001005899914c004888c966002600c00313259800800c00e264b300100180240120090048992cc004c0c000e00d00540b46eb80050301816800a056302937540091598009802800c4c9660020030038992cc0040060090048024012264b30013030003803401502d1bae00140c0605a0028158c0a4dd50024009026204c3027375400722259800980298139baa0038992cc00400600513259800800c4c9660020030048992cc004006264b3001302d0018acc004cdc4a400860580030068992cc004c0c8012264b3001300c0018acc004c0bcdd5003402601081822b3001300b0018992cc00400601313259800800c02a01500a8992cc004c0d800e01900b40cc6eb400601481b0c0cc00503118179baa0068acc004c03c0062b3001302f375400d0098042060804205840b08160c0b4dd5002c01d02f18049816000a054803205c3754003005802c01600a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b300130053027375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0c800e01100740bc6eb400600c8190c0bc00502d1bae001302e00240bc60580028150c0a0dd5001c0050254888c966002600c00313259800800c00e264b30010018024012009132598009818001c01a00a8168dd6800c0110301816800a056302937540091598009802800c56600260526ea801200700240a900240988130c09cdd5001a44446465300122259800980598169baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130390028cc00401a33001001804c02100e402100b402103640220110088042074303700140d46eb4004c0d800a00a81b8c0d0005032181a001400e007003801a06a303200140c0605c6ea800e002815a444b3001300b302d375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0fc00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c11000e02901341046eb80050441820800a07e375c00260800048208c0f800503c40390144039011403903c1bac001806c03503f181e000a074303c002805c02e01700b40f4607400281c0dd6800981c801402103a181b800a06a375a002606c00500540dc60680028190c0d000a007003801c00d0351819000a060302e375400700140ad223233001001003223300300130020024889660026016605a6ea8042264b300100180a44c96600200313259800800c05a264b30010018992cc00400603113259800800c06603313259800981c801c566002602460686ea801a264b300100180dc4c96600200301c80e44cc896600200301e8992cc00400603f01f899912cc00400604313259800800c08a045022899912cc00400604913259800800c09604b025899912cc00400604f13259800800c4c9660020030298992cc0040062b3001304900289980c007112cc00400a26603401a44b30010028cc00401e330010058cc004dc3a400d370e90044dc3a4014911192cc004c0a8c130dd500e44c9660020030338992cc004006264b300100181ac4c966002003159800982a80144cc8966002606000313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205a81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c0bc006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b503e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b1598009819800c4c9660020030398992cc00400607503a8992cc004c16800e26605200244b3001002803c4c96600200319800800c4c008c17400e07c816a07d03e81f40f905e182d80120b281da0ae375800303a81d20b43057001415460a66ea80162b3001300a0018992cc00400607313259800800c0ea07513259800982d001c4cc0a400489660020050078992cc0040063300100189801182e801c0f902d40fa07d03e81f20bc305b002416503b415c6eb000607503a416860ae00282a8c14cdd5002c566002601200313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205c81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c020006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b903e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b0384140828105020a0414082804c966002605e00313259800800c0e2264b30010018acc004c16000a3300100180440e502d40e505540e607303981ca0b23056001415060a46ea800a2b3001302e0018992cc00400607113259800800c56600260b0005159800981898299baa0018992cc00400607513259800800c4c96600200303c8992cc0040062b3001305c0028cc00400e3300100180640f503240f503240f505940f607b03d81ea0ba305a001416060b400503b81dc0ee07682d8c160005056182a1baa00181ca0a281ca0aa81cc0e6073039416460ac00282a0c148dd500140dd04f209e3050375400260a06ea800e06c829206d03681b40d90561829800a0a2305300281a40d2069034415060a20028278c134dd500e40c904a09980f80c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00641393702900048888c8cc004004014896600200310058992cc00400626600860b000400d133005305800233003003001415860b000282aa6e012001918291829800c8c148c14cc14c0066e95200048888888c8c8c8cc88c96600200313259800981c982d9baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b3001001829414a26644b300100182a44c96600200315980098398014660020251980080846600201d19800806466002015198008044566002609860dc6ea801a264b300100182b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a899912cc0040060b913259800800c1760bb05d82ec4cc896600200305f8992cc0040060c1060830418226644b300100183144c966002003063831c18e0c713259800984100801c4cc144048896600200519800809466002605c6100026ea818a4610802610a02610a02610a020032232330010010032259800800c52845660026006610e0200314a313300200230880100142040484280a4610802610a02610a02610a02610a02610a02610a02610a02003374a90014dc02400491111119192cc0066002444646644b3001306b0028acc004c1acc23404dd5000c5300103d87a80008a6103d8798000422c051598009837001456600260dc611a026ea80062980103d87a80008a6103d87b8000422c0513322598009836800c530103d87b80008acc004c1b0006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000423804847008dd69849809848009baa0038a6103d8798000423404846808dd69848809847009baa003308d01375400284580908b011845809baa00130020033001003919191919912cc004c1ac00a29422b3001306e0028cc004cdd79848809847009baa0014c103d87b8000a50a51422c0513233225980098370014528c56600260da005133225980098379849009baa3041309301375400d133710004003133712004002848008dd6984a009848809baa0035980098369848009baa303f309101375400f100189806000a11c028a50423804847008c23804dd50009bad309201308f013754008612202611c026ea800508b01211602308b013754002611e02612002006611c026116026ea8004c23404004c22404dd5000cc0d8c22004dd50042444b30013068308a0137540031323300a3758611e026118026ea81ac8cdd79848009846809baa001002308e01308b01375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c24004c23404dd50014c24004c23404dd5000c8c8c96600260d8611e026ea8c24c04c2500400a2003132598009836800c4c034cc24c04dd418061bad309401309101375400497ae08acc004c1b800620051002423804847008c23c04dd5000a11a02309201001308e0137540028029300103d87b8000a50a514228051980099baf9800981d9846809baa002981d9846809baa001919192cc004c1b0c23c04dd5184980984a0080144006264b3001306d0018980699849809ba83040375a6128026122026ea80092f5c11598009837000c400a200484700908e011847809baa001423404612402002611c026ea8005005260103d8798000a50a5142280514a084500908a01211402308e01308b01375400260106116026ea81a908801233001308b01308801375401122232330010010042259800800c40122660066120020026600400461220200284700a44b30010018a40011300533002002308e01001422c0522980099804001119baf308e01308b013754611c026116026ea8c0e4c22c04dd5000980399846809ba90024bd70528528a10e02918329844009baa308c0132330010010022259800800c52f5c303d87a80008101800044c8cc89660033001306a308d0137546122020074a14a284580a2661200330014a14c103d87a8000a60103d8798000422c0466120026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c24c0400400e29462660040046128020028468090910144cc24006600294298103d87a8000a60103d8798000422c0466120026e9c0092f5c1133090019800a51a60103d87a8000a60103d8798000422c0466120026e9ccc24004dd400080125eb8108b012116023758611e026120020026eb4c23c04008cc008008c23c0400508c01489660020031480022600a66004004611c0200284580a4444653001001802c012006800888896600200710018acc00400a2a6611c029211d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012612802007309401002cc004c24c0400e6eb4c24c0400a0028029004212202424405222598008014530103d87a80008acc004c1a00062606e6611a02611c0200497ae08cc00400e611e02005303a001400c84400908c01488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064234051330050053094010044234046eb8c23404004dd5984700800984800800a11c0214bd6f7b63048896600260d06114026ea800e264b300100180144c966002003003801c00e264b3001309201003802c01108f011bad001801a12402308f010014234046116026ea800e00284400a44646600200200644b30010018a5eb8226644b30013375e612202611c026ea8c24404c23804dd5181e1847009baa002300a3309001375200a97ae08998480080119802002000c4cc01001000508b01184780800984800800a11a029184600984680984680984680984680984680800c8c23004c23404c23404c23404c23404c23404c23404006444653001001802400d0011112cc00400a2b30010018a518a50423c05159800800c5284566002660086122020046eb4c24404006330010039849008014c248040050034528211602423c0484780a444b30013068308a01375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002612e0200519800803c6600200b132598009838800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd5002456600260e000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001309e010038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b300130a30100380b40550a0011bae001428c0461400200284f008dd7000984f80801214002309d01001426c05010426c046eb000601f00f42780461360200284c808dd6800984d00801403109b01184c00800a12c023094013754009159800983a000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c2840400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c2980400e033018428c046eb80050a601185180800a14202375c002614402004851808c2800400509e01404d09e011bac00180940490a101184f00800a13802375a002613a0200500f42780461360200284c808dd6800984d00801403109b01184c00800a12c0230940137540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd50024566002609400313259800800c02e264b3001001806403201913259800984d80801c03a01a84c008dd6800c03109b01184c00800a12c0230940137540091598009824800c4c96600200300b8992cc00400601900c80644c96600261360200700e806a13002375a00300c426c0461300200284b008c25004dd500240290910121220242440484880909101212202309201375400700941a500940e1009425004612a02002849808c2540400a00f007803c01d09601184980800a12202309301002802c01600b005425004612202002847808c2440400a007003801c00d09201184780800a11a02308b013754007001422005222329800800c01200680088896600200510018cc00400e61240200533004309101002001400c84780a4611802611a02611a02611a02611a020032225980098341845009baa0038992cc00400600513259800800c00e0070038992cc004c2480400e00b004423c046eb4006006849008c23c0400508d011845809baa003800a11002912cc0040062900044c014cc008008c2380400508b01488cdc199b82002375a606e6114026ea8004dd6981c1845009baa0019b88480024466062004466ebcc23804c22c04dd50009ba700292cc004cdc4000a40011303a0018800a10c0248888888888888888888888a6002602a02b2301400198090094c0400424446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803214a02899802802985600802214a02375c614a020026eb4c29804004c2a0040050a601198098020018a400123014001984f009baa0179802802c88c9660026104026142026ea8006264b30010018cc0040062b30013375e60446146026ea800cc29804c28c04dd5002456600266ebcc144c28c04dd50009853009851809baa0038800c260050a001425c050a00142580500d42580612c030960184b00a1500230a50130a201375400309001427c04609c6142026ea8c13cc28404dd50012444444445300122223233001001005223259800984600800c4c94cc2b804cdcb248121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660b06ea4005220100132598009847009858009baa001899194c004dd7185b00800cdd7185b00985b80800cdd7185b008012444a66168029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330b4013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660bc6ea400522010015330b4013372c9201187665726966795f65643235353139207061796c6f61643a20003732660bc6ea400922010015330b4013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660bc6ea400d2201001325330b5013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660bf3001001a60103d87a8000a60103d879800042d00491010010019800800c00a006b950c2d804004dd6185a009858809baa0018a998578099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660b26ea400922010014a0857008c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c616c020020091305f330b501374e00297ae0899801801985b808012160023758616a02002859808dd71859009857809baa0028acc004c22c04006264a6615c0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416c6c4f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b804910100100132330010010022259800800c528c5660026600c00c616a0200313300200230b6010018a5042bc04859808dd61859009857809baa0028acc004c23c04006264a6615c0266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416e794f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013302e0012330050050013758616402615e026ea800a2b3001306600189919912998580099b96490112436865636b696e672041744c656173743a20003732660b46ea00092201001325330b1013372c92011941744c656173742073617469736669656420636f756e743a20003732660b66ea00052201001325330b2013372c92011041744c6561737420726573756c743a20003732660b93001001a60103d87a8000a60103d879800042c4049101001001337120060033001001a400122598009980400400144c0bc00620028588090291bad30b3010013758616602616802002615e026ea800a2b300130650018992998570099b9649111436865636b696e67204265666f72653a20003732660b06ea00052201001325330af013372c92010f4265666f726520726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc49bad30b50130b20137540020071337106eb4c2d404c2c804dd5000801a15e028a5042bc046168020026160026ea8c178c2c004dd50031bad30b20130af0137540051598009832000c4c94cc2b804cdcb24910436865636b696e672041667465723a20003732660b06ea00052201001325330af013372c92010e416674657220726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc48019bad30b50130b20137540031337100066eb4c2d404c2c804dd5000a15e028a5042bc046168020026160026ea8c2cc04c2c004dd50031bad30b20130af0137540051325330ae013372c920111436865636b696e67205363726970743a20003732660b06ea40052201001325330af013372c92010f53637269707420726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232330010010072259800800c528456600266ebc00cc2c804c2d8040062946266004004616e020028580090b401181619859009ba90014bd701bae30b20130af0137540048560090ac0121580242b0048560090ac011856809baa0019112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a15002912cc004cdc4000a400114c103d87a8000899804001000a14e029112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a1500248888ca60024444446644646644b30013370e66e04dd6985d80985c009baa30bb01003375a6176026170026ea8c2ec04010006264b30013370f30013758606c6172026ea80329000488cc89660033001309a01001a50a5142e8051325980099b893302300100598008044dd7186080801cdd7186080986100801a036899b800040018a9985e00a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642ec0466e08004016200685d008dd6185f00985d809baa00232980080552000912cc004cdd79813185f009baa002374e0071337000026eb4c1b0c2f804dd5001440050bb01204a3758617c026176026ea800902219b8100200a8801454cc2dc052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001642d804b3001301c0098a40031480090b501454cc2d8052415a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e74001642d4046eacc2e404c2e8040056600261260260200071480022b300100385800c4c96600261760200915980099b8f375c616c0200291104555344720089bad30b7010018a9985a80a491d657870656374206e616d65203d3d20636f6e7374616e74732e75736472001642d0050b10142e00461720200685b8090b301185c80800998119bab301b30b301375400a6eb8c184c2cc04dd5180f9859809baa0069800802cdd7185b009859809baa301f30b301375400d003801200e9111192cc004c23c04c2c404dd5000c4c96600266ebcc2d804c2cc04dd5185b009859809baa001302f330b501375200a97ae08acc004c23c0660026eacc184c2cc04dd5000c01691010d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b5013754007006a4504555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c54cc2c8052412d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001642c40460c06166026ea80062a661620292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b10149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001642bc046600e008003222232598009847809858809baa0018992cc004cdd7985b009859809baa30b60130b301375460c26166026ea8004c0bccc2d404dd4802a5eb822b3001308f0198009bab306130b301375460c26166026ea800600b48810d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b501375460c6616a026ea800e00d48904555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c288050b10118301859809baa306130b301375400315330b1014901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b1014914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001642bc046600e0080029112cc004c2340402e26644b30019800985a809859009baa058815cc0bcc2c804dd504880cdd5980f1859009baa091014029159800998139bac30b50130b2013754122026eb8c0c4c2c804dd5180f1859009baa0588acc0066002660406eb0c2d404c2c804dd5048809bae305f30b2013754603c6164026ea81626eb0c180c2c804dd5000cdd618179859009baa05848896600266e1cc05800cc0580162b300130110028cc00400e005223259800984a80985b809baa001899192cc004c25c04c2e404dd5000c4c8ca60026603e010003375860486178026ea80126eb4c2fc0400922259800984e00985f009baa0038acc004cdc499199119b8330713370066e08004dd698379861009baa003002002375a60dc6180026ea8004dd698371860009baa00830c20130bf0137540073001375660da617e026ea8c1b4c2fc04dd50054dd71861008014dd718610098618080120388acc004cdc38009bad306d30bf01375400f13375e6e9c010c09cc2fc04dd5003c5282178028a5042f00515330bd014914365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001642f0043758617c02617e020026174026ea800629410b7011833185c809baa3301200400130bb0130b80137540030aa0142d4046601a00e002810214c0285900a14a02859009159800cc004dd6182f9859009baa091019bac30b50130b2013754003330b401306030b2013754603c6164026ea8160cc2d0053001054455534472004bd702444b30013370e6028004602c00b19800802c00a4464b300130950130b70137540031325980099baf30bc0130b90137540026178026172026ea8c2f004c2e404dd5002456600266ebcc198c2e404dd50009833985c809baa30bc0130b901375400913370f3001375660ce6172026ea80066eb8c2f0040166eb8c19c015016180d9bad306730b901375400914a085b00a29410b601185d80985c009baa00185780a16a023300d00500140810a10142c804899b87980082c42440690004dd6982f9859009baa0019bad303130b2013754003002401530010029bac30b50130b201375400323017375a60c26166026ea8005007454cc2c005241856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a2020202029001642bc0515330b0014918f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642bc050ad0142bc0515330b0014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642bc046eb0c2cc04c2c004dd50141859809858009baa092018992cc004c2340403226644b3001980098309859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc0066002660426eb0c2d804c2cc04dd5049009bae306030b3013754603e6166026ea81666eb0c184c2cc04dd5000ccc2d404c184c2cc04dd5180f9859809baa059330b5014c1054455534472004bd702444b30013370e602e006602e00b159800980900146600200700291192cc004c25804c2e004dd5000c4c8c966002612e026174026ea800626464b3001337120033001375660d6617a026ea8c1acc2f404dd5003cdd71860008044dd718600098608080420348acc004cdc380098371bad306b30bd01375400913375e618002618202004604a617a026ea801229410ba014528217402375a617e020026176026ea800629410b8011833985d009baa3301300400130bc0130b90137540030ab0142d8046601c00e002810a14e0285980a14c02859809159800cc004dd618301859809baa092018014dd6185b009859809baa0019bac303030b30137540b2801a266e1e60020b309201a4001375a60c06166026ea80066eb4c0c8c2cc04dd5000c0090064c00400a6eb0c2d804c2cc04dd5000c8cdc41bad306230b4013754002900020108a9985880a4819e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001642c0050ae0142c00515330b1014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018acc004c2440403226644b3001980098301859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc004cc896600266e1cc058008c0580122b300130110018cc00400a003223259800984a80985b809baa001899192cc004c1c4c2e404dd5000c4c96600266e1cdd6985f008009bad306930bb01375400713375e617c02617e0200260466176026ea800e29410b801185d009baa0018a5042dc0460cc6172026ea8cc048010004c2ec04c2e004dd5000c2a8050b50119806803000a04085300a1640285280a16402330213758616c026166026ea824804dd718301859809baa301f30b30137540b26eb0c184c2cc04dd5000c5660033001375860c06166026ea8248060053758616c026166026ea80066eb0c0c0c2cc04dd502ca0068984800cc0041661240398008014dd6185b009859809baa00192cc004c060dd69831185a009baa00189848809bad306130b401375400314a08588090084dd698301859809baa0019bad303230b3013754003002401915330b1014901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001642c0050ae0142c00515330b1014901896578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018992cc004c1a4036330013758616a026164026ea80aa44444b30013370e603000a60300091598009809801c4cdc4800cc0040160074800244464b300130980130ba0137540031332259800984e80985e009baa0018992cc004006330010018acc004cdd7981e985f009baa00330c10130be01375400f15980099baf306c30be013754002618202617c026ea800e264b3001309f0130be013754003132325980099b87375a6188020046eb4c1bcc30404dd5003456600266e1cdd69862008009bad306e30c101375400d15980099baf30c40130c501001302930c101375400d1337000113001375660de6182026ea8c1bcc30404dd50054dd71862008064dd7186200986280806203c8a9985f80a493665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001642f80515330bf0149126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001642f80515330bf014912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001642f804618802002617e026ea80062a6617a02921184578706563746564204f4465706f73697420616374696f6e001642f00460d6617c026ea80061660285d80a1640285d80a162028142162030b10185880c2c4050c301186000985e809baa00185580a1740230be0130bb01375400260d06176026ea8c1a4c2ec04dd500242b4050b80119808003801205285400a1680285380a16802985a809859009baa094014889660033001303430b50137540b702e9819185a809baa094019bab302130b501375412802806a26644b300159800980d8014528c660026128020034a14a285a0090b40144c966002612a02616e026ea80063300198009bac30bb0130b801375412e03375c606e6170026ea8c090c2e004dd502f4dd71833185c009baa302430b80137540bd375a6176026170026ea80050094dd6985d80985c009baa30bb01980084b80cdd7185d80985c009baa302430b80137540bd375a60ca6170026ea80126eb4c0dcc2e004dd500220189b810029812985c009baa00448888c8c8cc8966002613a02617e026ea8016264b30013370e66e04dd6986200800802802456600266e1cdd698620098628080080145660026020017159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c01054455534472004bd7052000403915980099b8900398009bac306e30c1013754140034800244b30013375e618c026186026ea8008c31804c31c04c31c04c31c04c31c04c31c04c31c04c31c04c31c04c30c04dd5034c4cdc0000cc004dd598389861809baa0029bae307130c3013754605e6186026ea81a691010455534472004081100143000481c22b3001323371266e0003403260026eb0c0fcc30804dd5034520009119192cc004c0a8006266e0000ccdc199b82001375a60e8618c026ea8010dd698399863009baa0048801a1860298008024dd7186400800cdd7186400986480800a0443758618e026188026ea800902b1bab30c40130c50130c501980085000cdd71862009860809baa302d30c10137540cf375a60dc6182026ea80366eb4c100c30404dd5006a02a899b879800833c28006600e019375a60dc6182026ea80366eb4c100c30404dd5006c03d014005c54cc2fc052418d6578706563740a20202020202076616c69646174655f726573657276655f64656c74615f666f725f6465706f736974280a202020202020202076616c75655f64656c74612c0a202020202020202073657474696e67732e726573657276655f6173736574732c0a202020202020202072657175697265645f757364725f6261636b696e672c0a20202020202029001642f80515330bf014912b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001642f80515330bf014919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001642f805159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c1054455534472004bd704c1c800d00e44cdc3cc00419e14003300700c9bad306e30c101375401b375a60806182026ea803601e80a002e2a6617e02921b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001642f80485f00a2a6617e029213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001642f80515330bf014913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001642f8053001375860da6180026ea827c066eb8c0fcc30004dd518161860009baa0669bae306e30c001375460586180026ea819a6eb4c30c04c30004dd5002a02485500a17a023004001375a61820261840200cb30013021004899b833370400e0020091480010ba011bad30bf010044284050b501180f985b809baa0038a9985a80a4812e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001642d00530010039bac30b80130b501375400323005375a60c8616c026ea800500a4c00400e9000488cdc00009bad306430b701375400480f22a6616602921886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6465706f7369745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c8048acc004c1a003626644b30019800980e185a009baa05a816cc0c4c2d004dd504980cdd59810185a009baa093014031159800998149bac30b70130b4013754126026eb8c2dc04c2d004dd51810185a009baa05a899912cc004c24c04c2d404dd5000c4c8cc896600260100051598009804000c566002b30013096010018a518980e801216c028992cc004c0780062b30019800998141bac30bd0130ba013754132026eb8c19cc2e804dd51813185d009baa0609bac306830ba01375400f330bc01306830ba013754604c6174026ea8180cc2f005301054455534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e8c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b300198009bac306730ba013754132033758617a026174026ea801e661780260446174026ea8c098c2e804dd50301985e00a60106457355534472004bd702444b30013370e6038004603c01719800805c00a4464b3001309d0130bf0137540031325980099baf30c40130c10137540026188026182026ea8c31004c30404dd5002456600266ebcc1b8c30404dd500098379860809baa30c40130c101375400913370f3001375660de6182026ea80066eb8c310040166eb8c1bc01501e2cc004c2780402626eb4c1bcc30404dd500244cdc199b82375a60de6182026ea80100240290be014528217c028a5042f8046186026180026ea800616e0285e808cc05401400502842a4050ba012264b300130980130ba0137540031325980099b87375a617e0200266e000140222b30013370e6eb4c2fc04c30004004cdc0002001c56600266e1e60026eacc090c2f004dd504d80cdd71812185e009baa302830bc0137540c54881057355534472004064007130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd503152201045553447200406515330ba01491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001642e40515330ba014914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001642e40515330ba0149140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b801491dd6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001642dc0515330b801491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001642dc0515330b801491186578706563742073757364725f746f5f6d696e74203e2030001642dc04b30013096010018802c4cdc199b8200500100242d80515330b7014913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001642d80515330b701491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001642d80515330b7014911d657870656374207661756c745f757364725f6265666f7265203e3d2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491866578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa09401899912cc006600260426168026ea816a05b303130b401375412603375660406168026ea824c0500c4566002660526eb0c2dc04c2d004dd5049809bae30b70130b401375460406168026ea816a26644b300130930130b5013754003132332259800980e8014566002603a00313259800980f000c5660033001330283758617a026174026ea826404dd71833985d009baa302630ba0137540c1375860d06174026ea801e661780260446174026ea8c098c2e804dd50301985e00a6106457355534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e4c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b30013370f3001375660446174026ea8264066eb8c088c2e804dd51813185d009baa060a44105735553447200405c60d600d13259800984c00985d009baa0018992cc004cdc39bad30bf010013370200a00715980099b87375a617e0261800200266e040100222b300130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd5031522010455534472004065198009bac306930bc013754136033758617e026178026ea80266617c0260d46178026ea8c0a0c2f004dd50311985f00a61054455534472004bd702444b30013370e603c004604001b19800806c00a4464b3001309f0130c10137540031325980099baf30c60130c3013754002618c026186026ea8c31804c30c04dd5002456600266ebcc1c0c30c04dd500098389861809baa30c60130c301375400913370f3001375660e26186026ea80066eb8c318040166eb8c1c401502019b83337046eb4c1c4c30c04dd5002006005c5282180028a50430004618a026184026ea80061720285f808cc05c01400502a42ac050bc0122a66174029211765787065637420757364725f6d696e746564203d3d2030001642e40515330ba01491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001642e40515330ba014913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b8014912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001642dc0515330b801491a86578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202029001642dc0515330b8014911a65787065637420757364725f746f5f72656c65617365203e2030001642dc053001007a4001223370000266e0ccdc11bad306930bb01375400400800681122a6616e02921236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001642d80515330b7014911c657870656374207661756c745f757364725f6265666f7265203e2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e756e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa0940142bc04857808dc4a40008570090ae0111112cc004cdc39809801180a801c6600200700291192cc004c25004c2d804dd5000c66002617402616e026ea80066eb0c07cc2dc04dd5001ccc068010dd6180f985b809baa003488966002612e026172026ea80062b30013375e617a026174026ea800cc2f404c2e804dd5185e80985d009baa0068acc004cdd79833985d009baa003306830ba013754617a026174026ea801a266e1e60026eacc1a0c2e804dd5001cdd7185e808014dd7185e80985f00801202e3301f301c375a60d06174026ea8018c2f404c2e804dd5000c528216e028a5042dc0515330b80149015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642dc0485700a168023300c006001407d0a00142c404856808444464b3001308e0130b00137540031325980099baf30b50130b2013754616a026164026ea8c180c2c804dd500098171985a009ba90054bd704566002611c033001375660c06164026ea8c180c2c804dd5000c016910108747265617375727900403d132598009849809859009baa0018992cc004006330010018992cc004c24804c2d004dd5000c4c96600266ebcc2e404c2d804dd5185c80985b009baa0013032330b801375201297ae08acc004c2480660026eacc190c2d804dd5000c026910108747265617375727900404d13259800984b80985b009baa0018992cc0040063300100189985d008029985d008009985d009ba6329800800cdd59833985c809baa00499198008009bab306830ba01375460d06174026ea8024896600200314bd6f7b63044c8cc2f804cdd8185d808009ba632330010013756617a0200444b30010018a5eb7bdb182264661820266ec0c2f804004dd418381bad30bf010013300300330c30100230c10100142fc0466006006618002004617c0200285e0090011112cc00400a2003132332298008034c30804016646600200200a44b30010018998610099bb037520086e9800d2f5bded8c113298009bae30c0010019bab30c1010019862808012444b3001337200100071330c601337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528218c02880144cc31c04cdd81ba9009374c002004861008ca6002003008801a002222598008014400626466453001006986700802cc8cc00400401489660020031330ce01337606ea4010dd4001a5eb7bdb1822653001375c619802003375a619a0200330d10100248896600266e4002000e2661a40266ec0dd48041ba80070058acc004cdc7804001c4c966002615c0200310028998698099bb037520126ea00040090ce0119b800070028998690099bb037520066ea0008cc0180180050cd01219a02186780800a19a0240186eb8c31c04004dd69864008009865008012190028998630099bb037520066e98008cc0180180050c101218202186180800a1820240186eb8c2ec04004dd5985e00800985f008012178024bd7042c40501f42c406162030b10185880a17a0230ba0130b701375400315330b50149012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642d00460c6616c026ea80062a6616802920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642cc0515330b40149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642cc04617002616a026ea80062a661660292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001642c804660146eb0c184c2d004dd5004002c2b00501b42b006158030ac0185600a1720230b60130b301375400315330b10149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642c00460be6164026ea8c180c2c804dd5000c54cc2c0052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642bc0515330b0014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642bc046168026162026ea80062a6615e0292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001642b8046600c6eb0c2cc04c2c004dd500200108a9984300a4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001642140464660020026eb0c0d4c22004dd5035112cc004006297ae0899845809ba732323308d01308e010023308d013038308b0137540026611a026ea4cc894cc22c04cdcb2481165369675374727563747572652e636f6e746578743a200037326606a612002611a026ea8005220100153308b013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606a6076611a026ea8005220100153308b013372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606a6074611a026ea8005220100153308b013372c9201165369675374727563747572652e7061796c6f61643a200037326606a6018611a026ea800522010013253308c013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606c6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002423004846008dc68009bae309001308d01375400266e28c008dd7181d9846809baa0013371460046eb8c0e8c23404dd500098011bae300c308d013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002422804845008dc6800981b9984680a610b4a5369676e617475726531003308d01308e01308b013754611c026116026ea8004cc234053010140003308d01375200a97ae04bd701846809847008009bac308c0100133002002308d010014228046e50dd980320cc82ba264b30010018acc004c178c20004dd5000c4c9660020030688992cc0040060d3069899912cc0040060d713259800800c1b20d906c899912cc0040060dd13259800800c1be0df06f8992cc004c2380400e2b300100783844c966002003071838c1c60e31332259800800c1ce264b300100183a41d20e90748992cc004c24c0400e260206126020230754240046eb800509301184800800a11c02375c002611e02010848008c2340401d08b0141c108b011bad001837a11c02308b010014224046eb4004c2280400a0d8845808c22004005086011bac001308701002834c1a508801184280800a10602308101375400306741f9067833c19e0ce843008c20c0400908101419107f1bae00142080460fe00283e8dd7000983f00120fe307c00141e86eb8004c1ec00907c183c800a0ee375c00260f000483c8c1d80050741bae001307500241d860e60028388c1bcdd5003415506c415501441550144155014415501441550144155014415507041560ab05582aa0e8307100141bc6eb0004c1c000a0a505241c460dc0028360c1b800a0a1050828414106f1836000a0d4306c002827413a09d04e41b460d40028340c1a800a09904c826413106b1834000a0cc3068002825412a09504a41a460cc0028320c19800a09104882441210671832000a0c43064002823411a08d046419460c40028300c18800a08904482241110631830000a0bc305c37540050424164444653001001802400d001111192cc004c0fc006264b300100180344c966002003007803c01e00f132598009834801c0160108330dd7000a0d23066001419060c46ea800e2b3001303e0018992cc00400600d13259800800c01e00f132598009834801c4cc0e000489660020050078992cc0040063300100a800c4c008c1b000d00a402e01700b805a0da306a00241a100841986eb000600f00741a460cc0028320c188dd5001c566002608400313259800800c01a264b3001001803c01e264b3001306900389981c000912cc00400a00f13259800800c66002015001898011836001a014805c02e01700b41b460d400483420108330dd6000c01e00e8348c19800506418311baa0038acc004c064006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260d800713303b0012259800801402a264b30010018cc00403600313002306f003403500e807403a01c8380c1b400906b402d0691bac001805402906c1834800a0ce375a00260d000500741a460cc0028320c188dd5001c566002603000313259800800c01a264b3001001803c01e00f132598009834801c0160108330dd6800c01d0691833000a0c830623754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260d200700580420cc375a00300741a460cc0028320c188dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260d200700580420cc375c0028348c19800506418311baa003802a0be417c82f905f20be417c82f8c180dd50014106083041820a0c03008305a3754646644a660b666e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a200037326600a6ea416522010013259800981d982e9baa00189929982e99b9649113666f756e642070726f7879207574786f3a3a200037326600e002910100132598009820182f9baa0018992cc0040062b3001303e3060375400313259800800c126264b3001001825412a09504a899912cc0040060991325980098350014401a09a8338c1a00050661bae001306700241a060ca0028318c184dd5000c12105e412209104882420cc306330603754003153305e49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164174601860be6ea8c034c17cdd50009830982f1baa0018a9982e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016416c660080024646600200260086eacc034c17cdd51806982f9baa0022259800800c528456600266e3cdd7183180082e4528c4cc008008c19000505d20c230010013758601260b66ea80e8896600200314bd7044cc178c16cc17c004cc008008c18000505d1800800911919800800801912cc0040062980103d87a80008992cc004c01000626012660be00297ae0899801801983080120b4305f001417444464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20c05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c82d105a1bac305d002375a60b60026466ec0dd4182d8009ba7305c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60c0003337149101023a200098008054c18400600a805100a183180144ca6002015306000199b8a489023a200098008054c184006600e66008008004805100a183180120c23063001418066e29220102207d0000341746eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c20ba3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e417c66e2ccdc0000acc004cdc4000a40291481822903720be004401866e0c00520203370c002901019b8e00400241706eb800d0601b8a4881022c20002232330010010032259800981b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002300b00189980299b8400148050cdc599b803370a002900a240c000682b90571803803a264b300100181a40d2264b300100181ac4c96600200303681b40da06d1332259800800c0e2264b30010018acc004c16000a264b300130323054375400513259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc0040060810408204102264b300130600038acc004c0e4c16cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d132598009833001c4c966002608000313259800800c126264b3001001825412a09504a8992cc004c1a800e02504b419c6eb800506a1833800a0ca30633754017159800981f800c56600260c66ea802e01f048419104841808300c184dd5005411d0631bae001419860c60028308dd7000983100120c63060001417860b86ea801a08282ca08282e8dd7000a0c0305d001416c60ba00503e81f40fa07c82f0c16c005059182d80140f207903c81e20b83059001415c60aa6ea800a07482904c01cc16002207282aa07303981cc0e5059182b000a0a8375c00260aa00482b0c14c0050511bac00181a40d10541828801209e40b902140b902144c96600200302f817c0be2646006609e0086eb400605e8278c13000904a44c96600200302d816c0b62646006609a0086eb400605a8268c12800904840a904640aa05502a815209430470014114608e00502881440a20508240c1140050431bad0013044002812a08a304200141006eb4004c10400a0448210c0fc00503d1bac001303e00280fc07d03f181e000a0743758002607600501c80e2078303900140dc606a6ea801a034819203481b0dd6000c06603281c8c0d8005034181b001405e02f01780ba06e303400140c8606800501580ac05602a81a8c0c800503018171baa010809a0561112cc004c028c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a801466002007132598009807800c56600260646ea800a00f00640cd1598009807000c4c9660020030078992cc0040060110088044022264b3001303900380540250361bae00140e4606c00281a0c0c8dd50014566002602400313259800800c01e264b30013038002804c021035181b000a0683032375400500640bc817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a8444b30013009302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002601c00313259800800c01e264b30010018acc004c0dc00a264b300130110018992cc00400601513259800800c566002607400519800800c032016808a01681ba01700b805c02d03b181c000a06c303437540051598009808000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0340062b3001303137540050078032064803205c40b8605e6ea800600a805a00a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c0050290dc3a40006e1d2002804402201100840a0604a60446ea800e2c80f8604200260386ea808a293454cc06924011856616c696461746f722072657475726e65642066616c7365001365640641\"\n :\n \"593595010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a4005223233001001003223300300130020024888a60024464b30013006001899192cc004c05c00a0091640506eb8c054004c044dd5001c566002600a0031323259800980b80140122c80a0dd7180a80098089baa0038b201e403c601e6ea800a44b30013005300f3754005132323259800980b80144c8c9660026014003159800980a9baa002803459016456600260120031323259800980d80140222c80c0dd6980c800980a9baa0028acc004c0340062b3001301537540050068b202c8b2026404c8098c04cdd5000980b001c59014192cc004c04c0062b30013371290021809000c5a2600e6024002808a2c80a0dd5180a800980a80098081baa0028b201c912cc004c014c03cdd500144c8c8cc896600260300070058b202a375a602a0026eb8c054008c054004c040dd500145900e488c966002600c0031323259800980b80140122c80a0dd6980a80098089baa0038acc004c0140062b3001301137540070028b20248b201e403c601e6ea8009222232323322598009805980a9baa010899191919912cc004c07c00e264b30013011301b3754003132323232323298009812800cdd61812802cdd698128024dd69812801cc0940092222259800981580344cc068dd61815005912cc00400a26603800c44b300100289980d00289980d0048cc004dc3a400d370e90044dc3a4014911192cc004c090c0b8dd500ac4c8c8c966002606c005132332259800981500144c96600260740031330293758607200244b300100280244cc08cc0ec0084c004c0f0009039459037181a9baa0038acc004c0a400a264b3001303a0018998149bac303900122598008014012266046607600426002607800481ca2c81b8c0d4dd5001c566002605a00513259800981d000c4cc0a4dd6181c800912cc00400a009133023303b00213001303c00240e51640dc606a6ea800e2b3001300a0028992cc004c0e80062660526eb0c0e40048966002005004899811981d80109800981e00120728b206e30353754007159800980480144c96600260740031330293758607200244b300100280244cc090c0ec0084c004c0f0009039459037181a9baa0038acc004c02000a264b3001303a0018998149bac303900122598008014012266048607600426002607800481ca2c81b8c0d4dd5001c59033206640cc8199033206630323754002264b300130290018992cc004c0e400626604a607000200f1640d860686ea800e2b300130280018992cc004c0e4006264b3001302b30353754003132323259800981e80144cc0a8c0f000c4cc0a800402e2c81d0c0ec004c0ec004c0d8dd5000c59034181c000c59036181a1baa0038b206440c860646ea8008c0d400e2c8198c0d0004c0d0004c0bcdd500ac5902d09981080a912cc00400a330012303430350019181a181a981a800cdd2a400122232598009814800c4c8c96600260740050048b206e375c607000260686ea800e2b300130280018992cc004c0e40062660506eb0c0e000489660020050058cc00401e607400513001303b002401c81c22c81b0c0d0dd5001c566002605800313259800981c800c4cc0a0dd6181c000912cc00400a00b19800803cc0e800a2600260760048039038459036181a1baa0038acc004c0240062646644b3001303b0018998151bac303a0012259800801401e33001009981e00144c004c0f400900920748b2070375a6070002607200260686ea800e2b30013008001899192cc004c0e800a0091640dc6eb4c0e0004c0d0dd5001c566002600e0031323259800981d00140122c81b8dd6981c000981a1baa0038acc004cdc3a40180031323259800981d00140122c81b8dd7181c000981a1baa0038b206440c88191032206440c88190c0c8dd500124444646644b3001302c30363754005132323232323232323298009821800cc10c022608600f30430069821802cc10c012608600737586086004911111112cc004c130026266024609602226602400e26602400c26602400a2660240082660240062b3001303d304737540051323232323298009bae30500019bae30500059bae30500049bae30500039bae30500024888896600260ac00d13304500b225980080144cc10805066002604860a86ea813a460b060b260b260b20032232330010010032259800800c5284566002600660b600314a3133002002305c001415882ca460b060b260b260b260b260b260b260b200337009000cdc024005374a9001244444446464b300198009111919912cc004c16000a2b300130583062375400314c0103d87a80008a6103d87980004185159800982d801456600260b660c46ea80062980103d87a80008a6103d87b800041851332259800982d000c530103d87b80008acc004c164006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041908320dd6983418329baa0038a6103d8798000418c8318dd6983318319baa00330623754002830906118301baa00130020033001003919191919912cc004c16000a29422b3001305b0028cc004cdd7983318319baa0014c103d87b8000a50a514185132332259800982d8014528c56600260b40051332259800982e18339baa30383068375400d1337100040031337120040028330dd6983498331baa00359800982d18329baa30363066375400f100189806800a0c88a5041908320c18cdd50009bad30673064375400860cc60c66ea800506120c23060375400260c860ca00660c660c06ea8004c188004c178dd5000cc0b4c174dd5004a444b30013055305f37540031323300b375860c860c26ea81608cdd7983298311baa00100230633060375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c194c188dd50014c194c188dd5000c8c8c96600260b260c86ea8c1a0c1a400a200313259800982d000c4c030cc1a0dd418069bad30693066375400497ae08acc004c16c0062005100241908320c190dd5000a0c63067001306337540028029300103d87b8000a50a5141811980099baf9800981918311baa002981918311baa001919192cc004c164c190dd51834183480144006264b3001305a00189806198341ba8300e375a60d260cc6ea80092f5c1159800982d800c400a2004832106418321baa001418c60ce00260c66ea8005005260103d8798000a50a51418114a0830106020c0306330603754002601260c06ea815d05e2330013060305d375401322232330010010042259800800c401226600660ca0026600400460cc002831a4530013300900223375e60c660c06ea8c18cc180dd5181818301baa001300633062375200497ae0a50a51417523052305d375460c2646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130573062375460cc0074a14a2830a2660cb30014a14c103d87a8000a60103d87980004184660ca6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1a000400e294626600400460d2002831906644cc196600294298103d87a8000a60103d87980004184660ca6e9c0092f5c11330659800a51a60103d87a8000a60103d87980004184660ca6e9ccc194dd400080125eb8106120c2375860c860ca0026eb4c190008cc008008c190005061489660020031480022600c6600400460c6002830244b30010018a40011300633002002306300141812222329800800c01600900340044444b30010038800c66002009306900398348016600260d0007375a60d00050014014802106648896600200514c103d87a80008acc004c1540062605c660c460c600497ae08cc00400e60c80053008001400c82f1061488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006418d1330050053069004418c6eb8c188004dd598318009832800a0c614bd6f7b6304896600260a860bc6ea800a26464b30013065002801c590621bad3063001305f37540051641752232330010010032259800800c52f5c1133225980099baf30663063375460cc60c66ea8c0ccc18cdd50011804998329ba90054bd7044cc194008cc0100100062660080080028308c190004c19400506248c184c188c188c188c188c188006460c260c460c460c460c460c460c4003222329800800c012006800888966002005159800800c528c52820c88acc00400629422b3001330043066002375a60cc00319800801cc19c00a60ce002801a294106120c841912259800982a182f1baa0028991919194c004c19800660cc007306600248896600260d4009133030306900713305300213259800982e000c4c8cc896600260dc003132323322598009839001c0422c8378dd718378009bae306f002306f001375860da0031641ac6eb4c1ac004c1b0004c19cdd5001456600260b60031323322598009837000c4c8c8cc896600260e40070108b20de375c60de0026eb8c1bc008c1bc004dd61836800c5906b1bad306b001306c00130673754005159800982f800c4c8ca60026eb4c1b000660da003375a60d80049112cc004c1c000a264646644b300130740038094590711bae3071001375c60e200460e20026eb0c1bc00a2c836860d800260ce6ea800a2b3001303c00189919912cc004c1b8006264646644b3001307200380845906f1bae306f001375c60de00460de0026eb0c1b40062c8358dd69835800983600098339baa0028acc004c0ec00626464b3001306d002805c5906a1bad306b00130673754005159800981d000c4c8c96600260da00500b8b20d4375a60d600260ce6ea800a2c832906520ca4194832906518329baa0018b20ce183300098328009832000982f9baa0028b20ba911194c0040060090034004444b30010028800c660020073067002998021833001000a0064191230613062306230623062001912cc004c150c178dd500144c8c96600260ca0050038b20c4375a60c600260be6ea800a2c82ea44b30010018a400113006330020023063001418137029000488cdc199b82002375a605c60be6ea8004dd69817982f9baa0019b88480024466056004466ebcc18cc180dd50009ba700248888888888888888888888a60024444646600200200a4464b30013070001899192cc004c1c8c1f0dd5000c4c8ca60026eb8c2080400a6eb8c20804c20c040066eb8c2080400572a308201001375861000260fa6ea8006294107b1919800800804112cc0040062980103d87a80008992cc004cdc79bc8375c6104020020091304d3308101374e00297ae089980180198418080120fa375861020200283f8dd7183f183d9baa0028acc004c1bc006264660020026eb0c1fcc1f0dd5001912cc00400629462b300133005005308001001899801001184080800c52820f641f91598009839800c4cc094dd6183f183d9baa0022330040040018acc004c14000626466e24dd6983f800cc004dd6183f984000800d2000912cc004cc01801800a2604a003100141f080f0c1ecdd50014566002609e0031323322598009839183e9baa0028acc004c1c8c1f4dd5184080984100801c4cdc49bad308101307e37540040031337106eb4c20404c1f8dd5001000a0f88a5041f060fe0026eb4c1fcc1f0dd5001983d9baa304b307b375400b1598009827000c4c8cc896600260e460fa6ea800a2b30013072307d37546102026104020071337120026eb4c20404c1f8dd500144cdc40009bad308101307e375400483e2294107c183f8009bad307f307c375400660f66ea8c1f8c1ecdd5002c4c8c8cc004004018896600200314a115980099baf003307d3081010018a51899801001184100800a0f841fc6042660fa60fc60f66ea80092f5c083c907920f241e483c9079183c9baa0019180a800cc04c04e6024025301001091119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c83da26600a00a61020200883d8dd7183d0009bad307b001307d00141ec660260080062900048c05400660e66ea805e600a00b2232598009837983b1baa001899198068008acc004cdd79811983c1baa003307b3078375400915980099baf30483078375400260f660f06ea800e20031641d91641d860f460ee6ea80062c83a8c114c1d8dd51823183b1baa00292cc004cdc4000a4001130050018800a0e6488888888888c8ca60024444446644646644b30013370e66e04dd69847809846009baa308f01003375a611e026118026ea8c23c04010006264b30013370f30013758606c611a026ea80329000488cc89660033001308601001a50a51423c051325980099b893302100100598008044dd7184a80801cdd7184a80984b00801a032899b800040018b2120023370400200b1003423c046eb0c24804c23c04dd5001194c00402a90004896600266ebcc094c24804dd50011ba7003899b80001375a60c46124026ea800a20028480090241bac309201308f0137540048108cdc08010054400a2c845809660026034013148006290012114028b2114023756611a02611c02002b3001307f300e0038a4001159800984700801c4c96600266e3cdd7184500800a4504555344720089bad308b010018b211202308d010038b211602422004611a02002660446eacc068c21c04dd50029bae30573087013754603c610e026ea801a600200b375c611402610e026ea8c078c21c04dd5003400e004803a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444464b3001307b30850137540031325980099baf308a013087013754611402610e026ea8004c0b4cc22404dd4802a5eb822b3001307b98009bab30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab30593089013754007006a441045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5000c5908501459085011844809843009baa0018b210802330060040019111192cc004c1ecc21404dd5000c4c96600266ebcc22804c21c04dd51845009843809baa30573087013754002605a66112026ea40152f5c1159800983dcc004dd5982b9843809baa30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab3059308901375460b26112026ea800e00d4881045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5182b9843809baa0018b210a028b210a023089013086013754003164210046600c008002911112cc004c1ec02e26644b300198009845809844009baa0538164c0c4c22004dd503fcdd5980f9844009baa07f4051159800998149bac308b0130880137540fe6eb8c0ccc22004dd5180f9844009baa0538acc0066002660426eb0c22c04c22004dd503f9bae30573088013754603e6110026ea814e6eb0c160c22004dd5000cdd618189844009baa05348896600266e1cc05000cc0500162b300130110028cc00400e0052232598009841809846809baa001899192cc004c21404c23c04dd5000c4c8ca60026603e0100033758604a6124026ea80126eb4c2540400922259800984500984a009baa0038acc004cdc499199119b8330403370066e08004dd69833984c009baa003002002375a60cc612c026ea8004dd69833184b009baa00830980130950137540073001375660ca612a026ea8c194c25404dd50054dd7184c008014dd7184c00984c8080120388acc004cdc38009bad3065309501375400f13375e6e9c010c0a0c25404dd5003c5282126028a50424c0516424c043758612802612a020026120026ea8006294108e01182f1847809baa33012004001309101308e013754003164230046601c00e002810a2c84480a2c844809159800cc004dd6182b9844009baa07f9bac308b0130880137540033308a0130583088013754603e6110026ea814ccc228053001054455534472004bd702444b30013370e602a004602800b19800802c00a4464b3001308301308d0137540031325980099baf309201308f013754002612402611e026ea8c24804c23c04dd5002456600266ebcc178c23c04dd5000982f9847809baa309201308f01375400913370f3001375660be611e026ea80066eb8c248040166eb8c17c01501618089bad305f308f01375400914a084680a294108d011848809847009baa0018b2118023300e005001408516422404899b879800829c1fe90004dd6982b9844009baa0019bad30333088013754003002401d30010029bac308b01308801375400323017375a60b26112026ea8005006459086014590860145908601459086011bac3089013086013754052611202610c026ea820006264b3001307b00c899912cc006600260b26112026ea815205b3032308901375410003375660406112026ea8200050154566002660546eb0c23004c22404dd5040009bae3034308901375460406112026ea81522b30019800998111bac308c013089013754100026eb8c160c22404dd518101844809baa0549bac305930890137540033308b013059308901375460406112026ea8150cc22c05301054455534472004bd702444b30013370e602a006602a00b159800980900146600200700291192cc004c21004c23804dd5000c4c8c966002610a026120026ea800626464b3001337120033001375660c66126026ea8c18cc24c04dd5003cdd7184b008044dd7184b00984b8080420348acc004cdc380098119bad3063309301375400913375e612c02612e02004604c6126026ea80122941091014528212202375a612a020026122026ea8006294108f01182f9848009baa33013004001309201308f013754003164234046601e00e00281122c84500a2c845009159800cc004dd6182c1844809baa080018014dd61846009844809baa0019bac303230890137540a8801a266e1e60020a908001a4001375a60b06112026ea80066eb4c0d0c22404dd5000c0090084c00400a6eb0c23004c22404dd5000c8cdc41bad305a308a0137540029000200e8b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c56600260fe0191332259800cc004c160c22404dd502a40b660646112026ea8200066eacc080c22404dd504000a02a8acc004cc0a8dd61846009844809baa08001375c60686112026ea8c080c22404dd502a45660026644b30013370e602800460280091598009808800c6600200500191192cc004c20c04c23404dd5000c4c8c96600260ca611e026ea8006264b30013370e6eb4c25004004dd698309848809baa003899baf3094013095010013024309101375400714a0847808c24004dd5000c528211c02305e308f01375466024008002612202611c026ea80062c846008cc0380180050214590890145908901198111bac308c013089013754100026eb8c160c22404dd518101844809baa054375860b26112026ea80062b300198009bac30583089013754100030029bac308c013089013754003375860646112026ea815100344c1fa60020a908001cc00400a6eb0c23004c22404dd5000c96600260306eb4c168c22804dd5000c4c1fcdd6982c9845009baa0018a50422004803a6eb4c160c22404dd5000cdd6981a1844809baa00180120108b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c4c96600260ba01b198009bac308b013088013754057222225980099b87301600530160048acc004c04c00e266e24006600200b003a400122232598009843009848009baa001899912cc004c22c04c24804dd5000c4c8cc0a400456600266ebcc0fcc25004dd5001984b80984a009baa0078acc004cdd79832184a009baa001309701309401375400713259800984680984a009baa001899192cc004cdc39bad309a01002375a60ce612e026ea801a2b30013370e6eb4c26804004dd69833184b809baa0068acc004cdd7984d00984d808009815184b809baa006899b8000898009bab3067309701375460ce612e026ea802a6eb8c268040326eb8c26804c26c0403101e459095014590950145909501184d00800984a809baa0018b212602306330940137540031642480516424804612c026126026ea80062c848808c25004c24404dd500098301848809baa3061309101375400916423c046602200e00481522c84580a2c84580a6116026110026ea82080522259800cc004c0d8c22c04dd502b40be60686116026ea8208066eacc088c22c04dd504100a02e899912cc00566002603600514a319800984100800d28528a11602422c05132598009841809846809baa0018cc00660026eb0c24404c23804dd504280cdd7181c9847009baa3025308e0137540b3375c60bc611c026ea8c094c23804dd502ccdd69848809847009baa0014025375a612202611c026ea8c24406600210a03375c612202611c026ea8c094c23804dd502ccdd6982e9847009baa0049bad3039308e01375400880726e0400a604c611c026ea8011222232323259800984500984a009baa0048992cc004cdc399b81375a61320200200800715980099b87375a6132026134020026eb4c26404c268040222b3001300f00a8acc00660026605e6eb0c26404c25804dd5046809bae30653096013754605a612c026ea818601d375860cc612c026ea8032661300260cc612c026ea8c0b4c25804dd50309984c00a61054455534472004bd7052000403515980099b8900298009bac3065309601375411a034800244b30013375e6136026130026ea8008c26c04c27004c27004c27004c27004c27004c27004c27004c27004c26004dd5031c4cdc0000cc004dd59834184c009baa0029bae30683098013754605e6130026ea818e9101045553447200407d100142580481c22b3001323371266e0003002e60026eb0c100c25c04dd5031520009119192cc004c0a4006266e0000ccdc199b82001375a60d66136026ea8010dd69835184d809baa0048801a1320298008024dd7184e80800cdd7184e80984f00800a04237586138026132026ea800902b1bab309901309a01309a01980084680cdd7184c80984b009baa302d30960137540c3375a60ca612c026ea80326eb4c104c25804dd5006202c899b879800830c23406600c017375a60ca612c026ea80326eb4c104c25804dd50064039015005459094014590940145909401456600330013302f3758613202612c026ea823404dd71832984b009baa302d30960137540c300e9bac30663096013754019330980130663096013754605a612c026ea8184cc26005301054455534472004bd704c09800900d44cdc3cc00418611a03300600b9bad30653096013754019375a6082612c026ea803201c80a802a2c84a0090940145909401459094014c004dd61832184a809baa08c019bae304030950137546058612a026ea81826eb8c194c25404dd51816184a809baa0609bad3098013095013754008808a2c849808c01000566002604200913370666e0801c00401229000212202375a612a020088b2118023020308d01375400716422c0530010039bac308e01308b01375400323005375a60b86118026ea80050094c00400e9000488cdc00009bad305c308d01375400480fa2c844809159800982e006c4cc89660033001301d308a0137540ab02e98199845009baa081019bab3021308a0137541020280b22b30013302b3758611a026114026ea820404dd71846809845009baa3021308a0137540ab13322598009840809845809baa00189919912cc004c02000a2b300130080018acc0056600261080200314a31301d00242340513259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260c06120026ea8c09cc24004dd502d9984900a601054455534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b8c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c848809159800cc004dd6182f9848009baa087019bac309301309001375400f330920130233090013754604e6120026ea816ccc2480530106457355534472004bd702444b30013370e603a004603801719800805c00a4464b3001308b0130950137540031325980099baf309a013097013754002613402612e026ea8c26804c25c04dd5002456600266ebcc198c25c04dd50009833984b809baa309a01309701375400913370f3001375660ce612e026ea80066eb8c268040166eb8c19c01501e2cc004c2300402626eb4c19cc25c04dd500244cdc199b82375a60ce612e026ea8010024029095014528212a028a50425404613202612c026ea80062c84a008cc058014005029459091012264b300130860130900137540031325980099b87375a612a0200266e000140222b30013370e6eb4c25404c25804004cdc0002001c56600266e1e60026eacc094c24804dd504480cdd718129849009baa302930920137540bb4881057355534472004064007130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed220104555344720040651642400516424005164240053001375860c06122026ea8220066eb8c0f0c24404dd518141848809baa05c9bae3061309101375460506122026ea81726eb4c25004c24404dd5000a01a8b211e023028309001375400f164238051642380516423804b30013084010018802c4cdc199b820050010024234051642340516423405164234046eb4c24004004dd6984800984880800cc004dd61847809846009baa083019bae3037308c01375460466118026ea815e6eb8c170c23004dd518119846009baa0579bad308f01308c013754002803a2c84500a60020053758611a026114026ea8006460326eb4c16cc22c04dd5000a00e301d308a01375400316422005164220046eb0c22c04c22004dd50159845809844009baa08201899912cc006600260446114026ea815605d3033308a01375410203375660426114026ea8204050164566002660566eb0c23404c22804dd5040809bae308d01308a01375460426114026ea815626644b3001308101308b013754003132332259800980e8014566002603a00313259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260466120026ea8c09cc24004dd502d9984900a60106457355534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b4c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c84880915980099b8798009bab3023309001375410e03375c60466120026ea8c09cc24004dd502dd22105735553447200405c604000d132598009843009848009baa0018992cc004cdc39bad3095010013370200a00715980099b87375a612a02612c0200266e040100222b300130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed22010455534472004065198009bac30613092013754112033758612a026124026ea8026661280260c46124026ea8c0a4c24804dd502e9984a00a61054455534472004bd702444b30013370e603e004603c01b19800806c00a4464b3001308d0130970137540031325980099baf309c0130990137540026138026132026ea8c27004c26404dd5002456600266ebcc1a0c26404dd50009834984c809baa309c01309901375400913370f3001375660d26132026ea80066eb8c270040166eb8c1a401502019b83337046eb4c1a4c26404dd5002006005c528212e028a50425c046136026130026ea80062c84b008cc06001400502b4590930122c84800a2c84800a2c84800a60026eb0c180c24404dd504400cdd7181e1848809baa302830910137540b9375c60c26122026ea8c0a0c24404dd502e4dd6984a009848809baa001403516423c0460506120026ea801e2c84700a2c84700a2c84700a600200f480024466e00004cdc199b82375a60c26122026ea800801000d02345908d0145908d011bad309001001375a61200261220200330013758611e026118026ea820c066eb8c0dcc23004dd518119846009baa0579bae305c308c01375460466118026ea815e6eb4c23c04c23004dd5000a00e8b21140298008014dd61846809845009baa0019180c9bad305b308b0137540028038c074c22804dd5000c5908801459088011bac308b0130880137540566116026110026ea82080508601210c0237129000210a024214044444b30013370e6028004602600719800801c00a4464b3001308201308c013754003198009848009846809baa0019bac3020308d0137540073301a00437586040611a026ea800d222598009842809847809baa0018acc004cdd79849809848009baa00330930130900137546126026120026ea801a2b30013375e60be6120026ea800cc180c24004dd51849809848009baa006899b8798009bab30603090013754007375c612602005375c61260261280200480b8cc07cc048dd698301848009baa006309301309001375400314a084700a294108e0145908e0122c845808cc034018005020459088012108021111192cc004c1e8c21004dd5000c4c96600266ebcc22404c21804dd51844809843009baa30563086013754002605866110026ea40152f5c1159800983d4c004dd5982b1843009baa30563086013754003005a4508747265617375727900403513259800983f9843009baa0018991980d0008992cc004c1f8c22004dd5000c4c96600266ebcc23404c22804dd51846809845009baa00130303308c01375201297ae08acc004c1fa60026eacc168c22804dd5000c026911087472656173757279004045132598009841809845009baa0018991980f00089984700802998470080099847009ba6329800800cdd5982e9846809baa00499198008009bab305e308e01375460bc611c026ea8024896600200314bd6f7b63044c8cc24804cdd81847808009ba63233001001375661220200444b30010018a5eb7bdb1822646612a0266ec0c24804004dd418119bad30930100133003003309701002309501001424c04660060066128020046124020028480090011112cc00400a2003132332298008034c25804016646600200200a44b300100189984b0099bb037520086e9800d2f5bded8c113298009bae3094010019bab309501001984c808012444b30013372001000713309a01337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528213402880144cc26c04cdd81ba9009374c00200484b808ca6002003008801a002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd4001a5eb7bdb1822653001375c614002003375a61420200330a50100248896600266e4002000e26614c0266ec0dd48041ba80070058acc004cdc7804001c4c96600261340200310028998538099bb037520126ea00040090a30119b800070028998530099bb037520066ea0008cc0180180050a201214402185180800a1420240186eb8c26c04004dd6984e00800984f0080121380289984d0099bb037520066e98008cc01801800509601212c02184b80800a12a0240186eb8c23c04004dd59848008009849008012120024bd701847009845809baa0018b2112023059308a01375400316422005164220046118026112026ea80062c843808cc024dd6182b9844009baa008005308a0130870137540031642140460aa610c026ea8c158c21804dd5000c5908401459084011844009842809baa0018b210602330053758610e026108026ea8010008896600266e2000520008a6103d87a8000899804801000a0fe22c82d8c8cc004004dd61816182e9baa0572259800800c52f5c1133060374e6464660c460c6004660c4605e60c06ea8004cc188dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241888310dc68009bae30653062375400266e28c008dd7181918311baa0013371460046eb8c0c4c188dd500098011bae300d30623754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241808300dc68009817198312610b4a5369676e617475726531003306230633060375460c660c06ea8004cc18930101400033062375200a97ae04bd70183118318009bac3061001330020023062001417c6e50dd9803a264b3001304a305437540031323232332259800982f001c4c8c8cc896600260c40071300b306200c8b20be375c60be0026eb8c17c008c17c004dd6182e802c5905b1bad305b001375a60b600460b600260b400260aa6ea80062c8298c15c0090554590530c140004c13c004c138004c134004c120dd50014590464590490c10c004c108004c104004c100004c0fc004c0f8004c0f4004c0f0004c0dcdd50014590351802981a9baa323232598009816981b9baa0018992cc004c0c4c0e0dd5000c4c966002605e60726ea8006264646644b300130420038802c5903f181f8009bae303f002303f001303a37540031640e0607860726ea80062c81b8c01cc0e0dd51804181c1baa303b303837540031640d8660066eb0c01cc0dcdd50171191980080098019bab300930393754601260726ea8008896600200314a115980099b8f375c607a00206f14a3133002002303e00140e081d8c004004896600200314bd7044cc0e4c0d8c0e8004cc008008c0ec0050381801001111919800800801912cc0040062980103d87a80008992cc004c0100062600e6607600297ae0899801801981e801206e303b00140e489919912cc004c0dc00626644b3001302a303437540051323232332259800981f001c4c966002606060746ea8006264646644b300130430038992cc004c0d400626464b300130460028074590431bae30440013040375400f159800981a000c56600260806ea801e0191641051640f881f0c0f8dd50034590401bae3040001375c6080004608000260766ea80062c81c8c0f40162c81d8dd7181d800981d801181d800981d000981a9baa0028b206630360011300430370058b2068375c6068002606a0026eb0c0cc0090312264600460600066eb4c0b800902c44c8c008c0b800cdd6981600120548b205018128009812000981180098110009810800980e1baa0018b2034301e0058b203837586038002603800460380026036002602c6ea80422c80a089660026016602a6ea800a26464646644b3001301f003899804180f00289980580100345901c180e0009bad301c002301c001301b0013016375400516405044b3001300b301537540051323232323298009bac301e0019bad301e0049bad301e003980f00124444b30013023005899806181100489980780089919912cc004c09800e01b16408c6eb8c08c004dd7181180298118024590200c078004c074004c070004c06c004c058dd5001459014112cc004c028c050dd500144c8c8c9660026038005133006301b003132598009807000c56600260326ea800a00b1640691598009806800c4c8c966002603e0050078b2038375c603a00260326ea800a2b30013011001899192cc004c07c00a00f164070603a00260326ea800a2c80b9017202e3017375400316406460340026034002602a6ea800a2c80988966002601260266ea800a2646464b3001301b002899804980d0018992cc004c034006264b3001301d001899192cc004c040006264b30013020001899807180f800804c5901d180d9baa0028acc004c03c00626464653001375a6042003375a6042007375a60420049112cc004c09401201d16408830210013020001301b375400516406480c8c064dd5000980e000c5901a180c1baa0028acc004c0300062b3001301837540050058b20328b202c4058602c6ea80062c80c0c064004c064004c050dd50014590121164020300900130043754013149a26cac80101\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4ProtocolProtocolElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"596880010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492b657870656374207661756c745f646174756d3a205661756c74446174756d203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888888888888888896600264653001302100198109811000cdc3a400930210024888966002600460426ea800e264b3001005899914c004888c966002600c00313259800800c00e264b300100180240120090048992cc004c0c000e00d00540b46eb80050301816800a056302937540091598009802800c4c9660020030038992cc0040060090048024012264b30013030003803401502d1bae00140c0605a0028158c0a4dd50024009026204c3027375400722259800980298139baa0038992cc00400600513259800800c4c9660020030048992cc004006264b3001302d0018acc004cdc4a400860580030068992cc004c0c8012264b3001300c0018acc004c0bcdd5003402601081822b3001300b0018992cc00400601313259800800c02a01500a8992cc004c0d800e01900b40cc6eb400601481b0c0cc00503118179baa0068acc004c03c0062b3001302f375400d0098042060804205840b08160c0b4dd5002c01d02f18049816000a054803205c3754003005802c01600a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b300130053027375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0c800e01100740bc6eb400600c8190c0bc00502d1bae001302e00240bc60580028150c0a0dd5001c0050254888c966002600c00313259800800c00e264b30010018024012009132598009818001c01a00a8168dd6800c0110301816800a056302937540091598009802800c56600260526ea801200700240a900240988130c09cdd5001a44446465300122259800980598169baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130390028cc00401a33001001804c02100e402100b402103640220110088042074303700140d46eb4004c0d800a00a81b8c0d0005032181a001400e007003801a06a303200140c0605c6ea800e002815a444b3001300b302d375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0fc00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c11000e02901341046eb80050441820800a07e375c00260800048208c0f800503c40390144039011403903c1bac001806c03503f181e000a074303c002805c02e01700b40f4607400281c0dd6800981c801402103a181b800a06a375a002606c00500540dc60680028190c0d000a007003801c00d0351819000a060302e375400700140ad223233001001003223300300130020024889660026016605a6ea8042264b300100180a44c96600200313259800800c05a264b30010018992cc00400603113259800800c06603313259800981c801c566002602460686ea801a264b300100180dc4c96600200301c80e44cc896600200301e8992cc00400603f01f899912cc00400604313259800800c08a045022899912cc00400604913259800800c09604b025899912cc00400604f13259800800c4c9660020030298992cc0040062b3001304900289980c007112cc00400a26603401a44b30010028cc00401e330010058cc004dc3a400d370e90044dc3a4014911192cc004c0a8c130dd500e44c9660020030338992cc004006264b300100181ac4c966002003159800982a80144cc8966002606000313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205a81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c0bc006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b503e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b1598009819800c4c9660020030398992cc00400607503a8992cc004c16800e26605200244b3001002803c4c96600200319800800c4c008c17400e07c816a07d03e81f40f905e182d80120b281da0ae375800303a81d20b43057001415460a66ea80162b3001300a0018992cc00400607313259800800c0ea07513259800982d001c4cc0a400489660020050078992cc0040063300100189801182e801c0f902d40fa07d03e81f20bc305b002416503b415c6eb000607503a416860ae00282a8c14cdd5002c566002601200313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205c81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c020006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b903e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b0384140828105020a0414082804c966002605e00313259800800c0e2264b30010018acc004c16000a3300100180440e502d40e505540e607303981ca0b23056001415060a46ea800a2b3001302e0018992cc00400607113259800800c56600260b0005159800981898299baa0018992cc00400607513259800800c4c96600200303c8992cc0040062b3001305c0028cc00400e3300100180640f503240f503240f505940f607b03d81ea0ba305a001416060b400503b81dc0ee07682d8c160005056182a1baa00181ca0a281ca0aa81cc0e6073039416460ac00282a0c148dd500140dd04f209e3050375400260a06ea800e06c829206d03681b40d90561829800a0a2305300281a40d2069034415060a20028278c134dd500e40c904a09980f80c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00641393702900048888c8cc004004014896600200310058992cc00400626600860b000400d133005305800233003003001415860b000282aa6e012001918291829800c8c148c14cc14c0066e95200048888888c8c8c8cc88c96600200313259800981c982d9baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b3001001829414a26644b300100182a44c96600200315980098398014660020251980080846600201d19800806466002015198008044566002609860dc6ea801a264b300100182b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a899912cc0040060b913259800800c1760bb05d82ec4cc896600200305f8992cc0040060c1060830418226644b300100183144c966002003063831c18e0c713259800984100801c4cc144048896600200519800809466002605c6100026ea818a4610802610a02610a02610a020032232330010010032259800800c52845660026006610e0200314a313300200230880100142040484280a4610802610a02610a02610a02610a02610a02610a02610a02003374a90014dc02400491111119192cc0066002444646644b3001306b0028acc004c1acc23404dd5000c5300103d87a80008a6103d8798000422c051598009837001456600260dc611a026ea80062980103d87a80008a6103d87b8000422c0513322598009836800c530103d87b80008acc004c1b0006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000423804847008dd69849809848009baa0038a6103d8798000423404846808dd69848809847009baa003308d01375400284580908b011845809baa00130020033001003919191919912cc004c1ac00a29422b3001306e0028cc004cdd79848809847009baa0014c103d87b8000a50a51422c0513233225980098370014528c56600260da005133225980098379849009baa3041309301375400d133710004003133712004002848008dd6984a009848809baa0035980098369848009baa303f309101375400f100189806000a11c028a50423804847008c23804dd50009bad309201308f013754008612202611c026ea800508b01211602308b013754002611e02612002006611c026116026ea8004c23404004c22404dd5000cc0d8c22004dd50042444b30013068308a0137540031323300a3758611e026118026ea81ac8cdd79848009846809baa001002308e01308b01375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c24004c23404dd50014c24004c23404dd5000c8c8c96600260d8611e026ea8c24c04c2500400a2003132598009836800c4c034cc24c04dd418061bad309401309101375400497ae08acc004c1b800620051002423804847008c23c04dd5000a11a02309201001308e0137540028029300103d87b8000a50a514228051980099baf9800981d9846809baa002981d9846809baa001919192cc004c1b0c23c04dd5184980984a0080144006264b3001306d0018980699849809ba83040375a6128026122026ea80092f5c11598009837000c400a200484700908e011847809baa001423404612402002611c026ea8005005260103d8798000a50a5142280514a084500908a01211402308e01308b01375400260106116026ea81a908801233001308b01308801375401122232330010010042259800800c40122660066120020026600400461220200284700a44b30010018a40011300533002002308e01001422c0522980099804001119baf308e01308b013754611c026116026ea8c0e4c22c04dd5000980399846809ba90024bd70528528a10e02918329844009baa308c0132330010010022259800800c52f5c303d87a80008101800044c8cc89660033001306a308d0137546122020074a14a284580a2661200330014a14c103d87a8000a60103d8798000422c0466120026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c24c0400400e29462660040046128020028468090910144cc24006600294298103d87a8000a60103d8798000422c0466120026e9c0092f5c1133090019800a51a60103d87a8000a60103d8798000422c0466120026e9ccc24004dd400080125eb8108b012116023758611e026120020026eb4c23c04008cc008008c23c0400508c01489660020031480022600a66004004611c0200284580a4444653001001802c012006800888896600200710018acc00400a2a6611c029211d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012612802007309401002cc004c24c0400e6eb4c24c0400a0028029004212202424405222598008014530103d87a80008acc004c1a00062606e6611a02611c0200497ae08cc00400e611e02005303a001400c84400908c01488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064234051330050053094010044234046eb8c23404004dd5984700800984800800a11c0214bd6f7b63048896600260d06114026ea800e264b300100180144c966002003003801c00e264b3001309201003802c01108f011bad001801a12402308f010014234046116026ea800e00284400a44646600200200644b30010018a5eb8226644b30013375e612202611c026ea8c24404c23804dd5181e1847009baa002300a3309001375200a97ae08998480080119802002000c4cc01001000508b01184780800984800800a11a029184600984680984680984680984680984680800c8c23004c23404c23404c23404c23404c23404c23404006444653001001802400d0011112cc00400a2b30010018a518a50423c05159800800c5284566002660086122020046eb4c24404006330010039849008014c248040050034528211602423c0484780a444b30013068308a01375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002612e0200519800803c6600200b132598009838800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd5002456600260e000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001309e010038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b300130a30100380b40550a0011bae001428c0461400200284f008dd7000984f80801214002309d01001426c05010426c046eb000601f00f42780461360200284c808dd6800984d00801403109b01184c00800a12c023094013754009159800983a000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c2840400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c2980400e033018428c046eb80050a601185180800a14202375c002614402004851808c2800400509e01404d09e011bac00180940490a101184f00800a13802375a002613a0200500f42780461360200284c808dd6800984d00801403109b01184c00800a12c0230940137540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd50024566002609400313259800800c02e264b3001001806403201913259800984d80801c03a01a84c008dd6800c03109b01184c00800a12c0230940137540091598009824800c4c96600200300b8992cc00400601900c80644c96600261360200700e806a13002375a00300c426c0461300200284b008c25004dd500240290910121220242440484880909101212202309201375400700941a500940e1009425004612a02002849808c2540400a00f007803c01d09601184980800a12202309301002802c01600b005425004612202002847808c2440400a007003801c00d09201184780800a11a02308b013754007001422005222329800800c01200680088896600200510018cc00400e61240200533004309101002001400c84780a4611802611a02611a02611a02611a020032225980098341845009baa0038992cc00400600513259800800c00e0070038992cc004c2480400e00b004423c046eb4006006849008c23c0400508d011845809baa003800a11002912cc0040062900044c014cc008008c2380400508b01488cdc199b82002375a606e6114026ea8004dd6981c1845009baa0019b88480024466062004466ebcc23804c22c04dd50009ba700292cc004cdc4000a40011303a0018800a10c0248888888888888888888888a6002602a02b2301400198090094c0400424446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803214a02899802802985600802214a02375c614a020026eb4c29804004c2a0040050a601198098020018a400123014001984f009baa0179802802c88c9660026104026142026ea8006264b30010018cc0040062b30013375e60446146026ea800cc29804c28c04dd5002456600266ebcc144c28c04dd50009853009851809baa0038800c260050a001425c050a00142580500d42580612c030960184b00a1500230a50130a201375400309001427c04609c6142026ea8c13cc28404dd50012444444445300122223233001001005223259800984600800c4c94cc2b804cdcb248121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660b06ea4005220100132598009847009858009baa001899194c004dd7185b00800cdd7185b00985b80800cdd7185b008012444a66168029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330b4013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660bc6ea400522010015330b4013372c9201187665726966795f65643235353139207061796c6f61643a20003732660bc6ea400922010015330b4013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660bc6ea400d2201001325330b5013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660bf3001001a60103d87a8000a60103d879800042d00491010010019800800c00a006b950c2d804004dd6185a009858809baa0018a998578099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660b26ea400922010014a0857008c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c616c020020091305f330b501374e00297ae0899801801985b808012160023758616a02002859808dd71859009857809baa0028acc004c22c04006264a6615c0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416c6c4f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b804910100100132330010010022259800800c528c5660026600c00c616a0200313300200230b6010018a5042bc04859808dd61859009857809baa0028acc004c23c04006264a6615c0266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416e794f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013302e0012330050050013758616402615e026ea800a2b3001306600189919912998580099b96490112436865636b696e672041744c656173743a20003732660b46ea00092201001325330b1013372c92011941744c656173742073617469736669656420636f756e743a20003732660b66ea00052201001325330b2013372c92011041744c6561737420726573756c743a20003732660b93001001a60103d87a8000a60103d879800042c4049101001001337120060033001001a400122598009980400400144c0bc00620028588090291bad30b3010013758616602616802002615e026ea800a2b300130650018992998570099b9649111436865636b696e67204265666f72653a20003732660b06ea00052201001325330af013372c92010f4265666f726520726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc49bad30b50130b20137540020071337106eb4c2d404c2c804dd5000801a15e028a5042bc046168020026160026ea8c178c2c004dd50031bad30b20130af0137540051598009832000c4c94cc2b804cdcb24910436865636b696e672041667465723a20003732660b06ea00052201001325330af013372c92010e416674657220726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc48019bad30b50130b20137540031337100066eb4c2d404c2c804dd5000a15e028a5042bc046168020026160026ea8c2cc04c2c004dd50031bad30b20130af0137540051325330ae013372c920111436865636b696e67205363726970743a20003732660b06ea40052201001325330af013372c92010f53637269707420726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232330010010072259800800c528456600266ebc00cc2c804c2d8040062946266004004616e020028580090b401181619859009ba90014bd701bae30b20130af0137540048560090ac0121580242b0048560090ac011856809baa0019112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a15002912cc004cdc4000a400114c103d87a8000899804001000a14e029112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a1500248888ca60024444446644646644b30013370e66e04dd6985d80985c009baa30bb01003375a6176026170026ea8c2ec04010006264b30013370f30013758606c6172026ea80329000488cc89660033001309a01001a50a5142e8051325980099b893302300100598008044dd7186080801cdd7186080986100801a036899b800040018a9985e00a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642ec0466e08004016200685d008dd6185f00985d809baa00232980080552000912cc004cdd79813185f009baa002374e0071337000026eb4c1b0c2f804dd5001440050bb01204a3758617c026176026ea800902219b8100200a8801454cc2dc052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001642d804b3001301c0098a40031480090b501454cc2d8052415a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e74001642d4046eacc2e404c2e8040056600261260260200071480022b300100385800c4c96600261760200915980099b8f375c616c0200291104555344720089bad30b7010018a9985a80a491d657870656374206e616d65203d3d20636f6e7374616e74732e75736472001642d0050b10142e00461720200685b8090b301185c80800998119bab301b30b301375400a6eb8c184c2cc04dd5180f9859809baa0069800802cdd7185b009859809baa301f30b301375400d003801200e9111192cc004c23c04c2c404dd5000c4c96600266ebcc2d804c2cc04dd5185b009859809baa001302f330b501375200a97ae08acc004c23c0660026eacc184c2cc04dd5000c01691010d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b5013754007006a4504555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c54cc2c8052412d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001642c40460c06166026ea80062a661620292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b10149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001642bc046600e008003222232598009847809858809baa0018992cc004cdd7985b009859809baa30b60130b301375460c26166026ea8004c0bccc2d404dd4802a5eb822b3001308f0198009bab306130b301375460c26166026ea800600b48810d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b501375460c6616a026ea800e00d48904555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c288050b10118301859809baa306130b301375400315330b1014901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b1014914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001642bc046600e0080029112cc004c2340402e26644b30019800985a809859009baa058815cc0bcc2c804dd504880cdd5980f1859009baa091014029159800998139bac30b50130b2013754122026eb8c0c4c2c804dd5180f1859009baa0588acc0066002660406eb0c2d404c2c804dd5048809bae305f30b2013754603c6164026ea81626eb0c180c2c804dd5000cdd618179859009baa05848896600266e1cc05800cc0580162b300130110028cc00400e005223259800984a80985b809baa001899192cc004c25c04c2e404dd5000c4c8ca60026603e010003375860486178026ea80126eb4c2fc0400922259800984e00985f009baa0038acc004cdc499199119b8330713370066e08004dd698379861009baa003002002375a60dc6180026ea8004dd698371860009baa00830c20130bf0137540073001375660da617e026ea8c1b4c2fc04dd50054dd71861008014dd718610098618080120388acc004cdc38009bad306d30bf01375400f13375e6e9c010c09cc2fc04dd5003c5282178028a5042f00515330bd014914365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001642f0043758617c02617e020026174026ea800629410b7011833185c809baa3301200400130bb0130b80137540030aa0142d4046601a00e002810214c0285900a14a02859009159800cc004dd6182f9859009baa091019bac30b50130b2013754003330b401306030b2013754603c6164026ea8160cc2d0053001054455534472004bd702444b30013370e6028004602c00b19800802c00a4464b300130950130b70137540031325980099baf30bc0130b90137540026178026172026ea8c2f004c2e404dd5002456600266ebcc198c2e404dd50009833985c809baa30bc0130b901375400913370f3001375660ce6172026ea80066eb8c2f0040166eb8c19c015016180d9bad306730b901375400914a085b00a29410b601185d80985c009baa00185780a16a023300d00500140810a10142c804899b87980082c42440690004dd6982f9859009baa0019bad303130b2013754003002401530010029bac30b50130b201375400323017375a60c26166026ea8005007454cc2c005241856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a2020202029001642bc0515330b0014918f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642bc050ad0142bc0515330b0014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642bc046eb0c2cc04c2c004dd50141859809858009baa092018992cc004c2340403226644b3001980098309859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc0066002660426eb0c2d804c2cc04dd5049009bae306030b3013754603e6166026ea81666eb0c184c2cc04dd5000ccc2d404c184c2cc04dd5180f9859809baa059330b5014c1054455534472004bd702444b30013370e602e006602e00b159800980900146600200700291192cc004c25804c2e004dd5000c4c8c966002612e026174026ea800626464b3001337120033001375660d6617a026ea8c1acc2f404dd5003cdd71860008044dd718600098608080420348acc004cdc380098371bad306b30bd01375400913375e618002618202004604a617a026ea801229410ba014528217402375a617e020026176026ea800629410b8011833985d009baa3301300400130bc0130b90137540030ab0142d8046601c00e002810a14e0285980a14c02859809159800cc004dd618301859809baa092018014dd6185b009859809baa0019bac303030b30137540b2801a266e1e60020b309201a4001375a60c06166026ea80066eb4c0c8c2cc04dd5000c0090064c00400a6eb0c2d804c2cc04dd5000c8cdc41bad306230b4013754002900020108a9985880a4819e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001642c0050ae0142c00515330b1014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018acc004c2440403226644b3001980098301859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc004cc896600266e1cc058008c0580122b300130110018cc00400a003223259800984a80985b809baa001899192cc004c1c4c2e404dd5000c4c96600266e1cdd6985f008009bad306930bb01375400713375e617c02617e0200260466176026ea800e29410b801185d009baa0018a5042dc0460cc6172026ea8cc048010004c2ec04c2e004dd5000c2a8050b50119806803000a04085300a1640285280a16402330213758616c026166026ea824804dd718301859809baa301f30b30137540b26eb0c184c2cc04dd5000c5660033001375860c06166026ea8248060053758616c026166026ea80066eb0c0c0c2cc04dd502ca0068984800cc0041661240398008014dd6185b009859809baa00192cc004c060dd69831185a009baa00189848809bad306130b401375400314a08588090084dd698301859809baa0019bad303230b3013754003002401915330b1014901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001642c0050ae0142c00515330b1014901896578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018992cc004c1a4036330013758616a026164026ea80aa44444b30013370e603000a60300091598009809801c4cdc4800cc0040160074800244464b300130980130ba0137540031332259800984e80985e009baa0018992cc004006330010018acc004cdd7981e985f009baa00330c10130be01375400f15980099baf306c30be013754002618202617c026ea800e264b3001309f0130be013754003132325980099b87375a6188020046eb4c1bcc30404dd5003456600266e1cdd69862008009bad306e30c101375400d15980099baf30c40130c501001302930c101375400d1337000113001375660de6182026ea8c1bcc30404dd50054dd71862008064dd7186200986280806203c8a9985f80a493665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001642f80515330bf0149126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001642f80515330bf014912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001642f804618802002617e026ea80062a6617a02921184578706563746564204f4465706f73697420616374696f6e001642f00460d6617c026ea80061660285d80a1640285d80a162028142162030b10185880c2c4050c301186000985e809baa00185580a1740230be0130bb01375400260d06176026ea8c1a4c2ec04dd500242b4050b80119808003801205285400a1680285380a16802985a809859009baa094014889660033001303430b50137540b702e9819185a809baa094019bab302130b501375412802806a26644b300159800980d8014528c660026128020034a14a285a0090b40144c966002612a02616e026ea80063300198009bac30bb0130b801375412e03375c606e6170026ea8c090c2e004dd502f4dd71833185c009baa302430b80137540bd375a6176026170026ea80050094dd6985d80985c009baa30bb01980084b80cdd7185d80985c009baa302430b80137540bd375a60ca6170026ea80126eb4c0dcc2e004dd500220189b810029812985c009baa00448888c8c8cc8966002613a02617e026ea8016264b30013370e66e04dd6986200800802802456600266e1cdd698620098628080080145660026020017159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c01054455534472004bd7052000403915980099b8900398009bac306e30c1013754140034800244b30013375e618c026186026ea8008c31804c31c04c31c04c31c04c31c04c31c04c31c04c31c04c31c04c30c04dd5034c4cdc0000cc004dd598389861809baa0029bae307130c3013754605e6186026ea81a691010455534472004081100143000481c22b3001323371266e0003403260026eb0c0fcc30804dd5034520009119192cc004c0a8006266e0000ccdc199b82001375a60e8618c026ea8010dd698399863009baa0048801a1860298008024dd7186400800cdd7186400986480800a0443758618e026188026ea800902b1bab30c40130c50130c501980085000cdd71862009860809baa302d30c10137540cf375a60dc6182026ea80366eb4c100c30404dd5006a02a899b879800833c28006600e019375a60dc6182026ea80366eb4c100c30404dd5006c03d014005c54cc2fc052418d6578706563740a20202020202076616c69646174655f726573657276655f64656c74615f666f725f6465706f736974280a202020202020202076616c75655f64656c74612c0a202020202020202073657474696e67732e726573657276655f6173736574732c0a202020202020202072657175697265645f757364725f6261636b696e672c0a20202020202029001642f80515330bf014912b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001642f80515330bf014919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001642f805159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c1054455534472004bd704c1c800d00e44cdc3cc00419e14003300700c9bad306e30c101375401b375a60806182026ea803601e80a002e2a6617e02921b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001642f80485f00a2a6617e029213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001642f80515330bf014913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001642f8053001375860da6180026ea827c066eb8c0fcc30004dd518161860009baa0669bae306e30c001375460586180026ea819a6eb4c30c04c30004dd5002a02485500a17a023004001375a61820261840200cb30013021004899b833370400e0020091480010ba011bad30bf010044284050b501180f985b809baa0038a9985a80a4812e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001642d00530010039bac30b80130b501375400323005375a60c8616c026ea800500a4c00400e9000488cdc00009bad306430b701375400480f22a6616602921886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6465706f7369745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c8048acc004c1a003626644b30019800980e185a009baa05a816cc0c4c2d004dd504980cdd59810185a009baa093014031159800998149bac30b70130b4013754126026eb8c2dc04c2d004dd51810185a009baa05a899912cc004c24c04c2d404dd5000c4c8cc896600260100051598009804000c566002b30013096010018a518980e801216c028992cc004c0780062b30019800998141bac30bd0130ba013754132026eb8c19cc2e804dd51813185d009baa0609bac306830ba01375400f330bc01306830ba013754604c6174026ea8180cc2f005301054455534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e8c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b300198009bac306730ba013754132033758617a026174026ea801e661780260446174026ea8c098c2e804dd50301985e00a60106457355534472004bd702444b30013370e6038004603c01719800805c00a4464b3001309d0130bf0137540031325980099baf30c40130c10137540026188026182026ea8c31004c30404dd5002456600266ebcc1b8c30404dd500098379860809baa30c40130c101375400913370f3001375660de6182026ea80066eb8c310040166eb8c1bc01501e2cc004c2780402626eb4c1bcc30404dd500244cdc199b82375a60de6182026ea80100240290be014528217c028a5042f8046186026180026ea800616e0285e808cc05401400502842a4050ba012264b300130980130ba0137540031325980099b87375a617e0200266e000140222b30013370e6eb4c2fc04c30004004cdc0002001c56600266e1e60026eacc090c2f004dd504d80cdd71812185e009baa302830bc0137540c54881057355534472004064007130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd503152201045553447200406515330ba01491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001642e40515330ba014914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001642e40515330ba0149140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b801491dd6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001642dc0515330b801491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001642dc0515330b801491186578706563742073757364725f746f5f6d696e74203e2030001642dc04b30013096010018802c4cdc199b8200500100242d80515330b7014913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001642d80515330b701491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001642d80515330b7014911d657870656374207661756c745f757364725f6265666f7265203e3d2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491866578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa09401899912cc006600260426168026ea816a05b303130b401375412603375660406168026ea824c0500c4566002660526eb0c2dc04c2d004dd5049809bae30b70130b401375460406168026ea816a26644b300130930130b5013754003132332259800980e8014566002603a00313259800980f000c5660033001330283758617a026174026ea826404dd71833985d009baa302630ba0137540c1375860d06174026ea801e661780260446174026ea8c098c2e804dd50301985e00a6106457355534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e4c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b30013370f3001375660446174026ea8264066eb8c088c2e804dd51813185d009baa060a44105735553447200405c60d600d13259800984c00985d009baa0018992cc004cdc39bad30bf010013370200a00715980099b87375a617e0261800200266e040100222b300130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd5031522010455534472004065198009bac306930bc013754136033758617e026178026ea80266617c0260d46178026ea8c0a0c2f004dd50311985f00a61054455534472004bd702444b30013370e603c004604001b19800806c00a4464b3001309f0130c10137540031325980099baf30c60130c3013754002618c026186026ea8c31804c30c04dd5002456600266ebcc1c0c30c04dd500098389861809baa30c60130c301375400913370f3001375660e26186026ea80066eb8c318040166eb8c1c401502019b83337046eb4c1c4c30c04dd5002006005c5282180028a50430004618a026184026ea80061720285f808cc05c01400502a42ac050bc0122a66174029211765787065637420757364725f6d696e746564203d3d2030001642e40515330ba01491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001642e40515330ba014913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b8014912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001642dc0515330b801491a86578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202029001642dc0515330b8014911a65787065637420757364725f746f5f72656c65617365203e2030001642dc053001007a4001223370000266e0ccdc11bad306930bb01375400400800681122a6616e02921236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001642d80515330b7014911c657870656374207661756c745f757364725f6265666f7265203e2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e756e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa0940142bc04857808dc4a40008570090ae0111112cc004cdc39809801180a801c6600200700291192cc004c25004c2d804dd5000c66002617402616e026ea80066eb0c07cc2dc04dd5001ccc068010dd6180f985b809baa003488966002612e026172026ea80062b30013375e617a026174026ea800cc2f404c2e804dd5185e80985d009baa0068acc004cdd79833985d009baa003306830ba013754617a026174026ea801a266e1e60026eacc1a0c2e804dd5001cdd7185e808014dd7185e80985f00801202e3301f301c375a60d06174026ea8018c2f404c2e804dd5000c528216e028a5042dc0515330b80149015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642dc0485700a168023300c006001407d0a00142c404856808444464b3001308e0130b00137540031325980099baf30b50130b2013754616a026164026ea8c180c2c804dd500098171985a009ba90054bd704566002611c033001375660c06164026ea8c180c2c804dd5000c016910108747265617375727900403d132598009849809859009baa0018992cc004006330010018992cc004c24804c2d004dd5000c4c96600266ebcc2e404c2d804dd5185c80985b009baa0013032330b801375201297ae08acc004c2480660026eacc190c2d804dd5000c026910108747265617375727900404d13259800984b80985b009baa0018992cc0040063300100189985d008029985d008009985d009ba6329800800cdd59833985c809baa00499198008009bab306830ba01375460d06174026ea8024896600200314bd6f7b63044c8cc2f804cdd8185d808009ba632330010013756617a0200444b30010018a5eb7bdb182264661820266ec0c2f804004dd418381bad30bf010013300300330c30100230c10100142fc0466006006618002004617c0200285e0090011112cc00400a2003132332298008034c30804016646600200200a44b30010018998610099bb037520086e9800d2f5bded8c113298009bae30c0010019bab30c1010019862808012444b3001337200100071330c601337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528218c02880144cc31c04cdd81ba9009374c002004861008ca6002003008801a002222598008014400626466453001006986700802cc8cc00400401489660020031330ce01337606ea4010dd4001a5eb7bdb1822653001375c619802003375a619a0200330d10100248896600266e4002000e2661a40266ec0dd48041ba80070058acc004cdc7804001c4c966002615c0200310028998698099bb037520126ea00040090ce0119b800070028998690099bb037520066ea0008cc0180180050cd01219a02186780800a19a0240186eb8c31c04004dd69864008009865008012190028998630099bb037520066e98008cc0180180050c101218202186180800a1820240186eb8c2ec04004dd5985e00800985f008012178024bd7042c40501f42c406162030b10185880a17a0230ba0130b701375400315330b50149012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642d00460c6616c026ea80062a6616802920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642cc0515330b40149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642cc04617002616a026ea80062a661660292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001642c804660146eb0c184c2d004dd5004002c2b00501b42b006158030ac0185600a1720230b60130b301375400315330b10149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642c00460be6164026ea8c180c2c804dd5000c54cc2c0052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642bc0515330b0014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642bc046168026162026ea80062a6615e0292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001642b8046600c6eb0c2cc04c2c004dd500200108a9984300a4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001642140464660020026eb0c0d4c22004dd5035112cc004006297ae0899845809ba732323308d01308e010023308d013038308b0137540026611a026ea4cc894cc22c04cdcb2481165369675374727563747572652e636f6e746578743a200037326606a612002611a026ea8005220100153308b013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606a6076611a026ea8005220100153308b013372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606a6074611a026ea8005220100153308b013372c9201165369675374727563747572652e7061796c6f61643a200037326606a6018611a026ea800522010013253308c013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606c6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002423004846008dc68009bae309001308d01375400266e28c008dd7181d9846809baa0013371460046eb8c0e8c23404dd500098011bae300c308d013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002422804845008dc6800981b9984680a610b4a5369676e617475726531003308d01308e01308b013754611c026116026ea8004cc234053010140003308d01375200a97ae04bd701846809847008009bac308c0100133002002308d010014228046e50dd980320cc82ba264b30010018acc004c178c20004dd5000c4c9660020030688992cc0040060d3069899912cc0040060d713259800800c1b20d906c899912cc0040060dd13259800800c1be0df06f8992cc004c2380400e2b300100783844c966002003071838c1c60e31332259800800c1ce264b300100183a41d20e90748992cc004c24c0400e260206126020230754240046eb800509301184800800a11c02375c002611e02010848008c2340401d08b0141c108b011bad001837a11c02308b010014224046eb4004c2280400a0d8845808c22004005086011bac001308701002834c1a508801184280800a10602308101375400306741f9067833c19e0ce843008c20c0400908101419107f1bae00142080460fe00283e8dd7000983f00120fe307c00141e86eb8004c1ec00907c183c800a0ee375c00260f000483c8c1d80050741bae001307500241d860e60028388c1bcdd5003415506c415501441550144155014415501441550144155014415507041560ab05582aa0e8307100141bc6eb0004c1c000a0a505241c460dc0028360c1b800a0a1050828414106f1836000a0d4306c002827413a09d04e41b460d40028340c1a800a09904c826413106b1834000a0cc3068002825412a09504a41a460cc0028320c19800a09104882441210671832000a0c43064002823411a08d046419460c40028300c18800a08904482241110631830000a0bc305c37540050424164444653001001802400d001111192cc004c0fc006264b300100180344c966002003007803c01e00f132598009834801c0160108330dd7000a0d23066001419060c46ea800e2b3001303e0018992cc00400600d13259800800c01e00f132598009834801c4cc0e000489660020050078992cc0040063300100a800c4c008c1b000d00a402e01700b805a0da306a00241a100841986eb000600f00741a460cc0028320c188dd5001c566002608400313259800800c01a264b3001001803c01e264b3001306900389981c000912cc00400a00f13259800800c66002015001898011836001a014805c02e01700b41b460d400483420108330dd6000c01e00e8348c19800506418311baa0038acc004c064006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260d800713303b0012259800801402a264b30010018cc00403600313002306f003403500e807403a01c8380c1b400906b402d0691bac001805402906c1834800a0ce375a00260d000500741a460cc0028320c188dd5001c566002603000313259800800c01a264b3001001803c01e00f132598009834801c0160108330dd6800c01d0691833000a0c830623754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260d200700580420cc375a00300741a460cc0028320c188dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260d200700580420cc375c0028348c19800506418311baa003802a0be417c82f905f20be417c82f8c180dd50014106083041820a0c03008305a3754646644a660b666e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a200037326600a6ea416522010013259800981d982e9baa00189929982e99b9649113666f756e642070726f7879207574786f3a3a200037326600e002910100132598009820182f9baa0018992cc0040062b3001303e3060375400313259800800c126264b3001001825412a09504a899912cc0040060991325980098350014401a09a8338c1a00050661bae001306700241a060ca0028318c184dd5000c12105e412209104882420cc306330603754003153305e49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164174601860be6ea8c034c17cdd50009830982f1baa0018a9982e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016416c660080024646600200260086eacc034c17cdd51806982f9baa0022259800800c528456600266e3cdd7183180082e4528c4cc008008c19000505d20c230010013758601260b66ea80e8896600200314bd7044cc178c16cc17c004cc008008c18000505d1800800911919800800801912cc0040062980103d87a80008992cc004c01000626012660be00297ae0899801801983080120b4305f001417444464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20c05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c82d105a1bac305d002375a60b60026466ec0dd4182d8009ba7305c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60c0003337149101023a200098008054c18400600a805100a183180144ca6002015306000199b8a489023a200098008054c184006600e66008008004805100a183180120c23063001418066e29220102207d0000341746eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c20ba3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e417c66e2ccdc0000acc004cdc4000a40291481822903720be004401866e0c00520203370c002901019b8e00400241706eb800d0601b8a4881022c20002232330010010032259800981b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002300b00189980299b8400148050cdc599b803370a002900a240c000682b90571803803a264b300100181a40d2264b300100181ac4c96600200303681b40da06d1332259800800c0e2264b30010018acc004c16000a264b300130323054375400513259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc0040060810408204102264b300130600038acc004c0e4c16cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d132598009833001c4c966002608000313259800800c126264b3001001825412a09504a8992cc004c1a800e02504b419c6eb800506a1833800a0ca30633754017159800981f800c56600260c66ea802e01f048419104841808300c184dd5005411d0631bae001419860c60028308dd7000983100120c63060001417860b86ea801a08282ca08282e8dd7000a0c0305d001416c60ba00503e81f40fa07c82f0c16c005059182d80140f207903c81e20b83059001415c60aa6ea800a07482904c01cc16002207282aa07303981cc0e5059182b000a0a8375c00260aa00482b0c14c0050511bac00181a40d10541828801209e40b902140b902144c96600200302f817c0be2646006609e0086eb400605e8278c13000904a44c96600200302d816c0b62646006609a0086eb400605a8268c12800904840a904640aa05502a815209430470014114608e00502881440a20508240c1140050431bad0013044002812a08a304200141006eb4004c10400a0448210c0fc00503d1bac001303e00280fc07d03f181e000a0743758002607600501c80e2078303900140dc606a6ea801a034819203481b0dd6000c06603281c8c0d8005034181b001405e02f01780ba06e303400140c8606800501580ac05602a81a8c0c800503018171baa010809a0561112cc004c028c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a801466002007132598009807800c56600260646ea800a00f00640cd1598009807000c4c9660020030078992cc0040060110088044022264b3001303900380540250361bae00140e4606c00281a0c0c8dd50014566002602400313259800800c01e264b30013038002804c021035181b000a0683032375400500640bc817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a8444b30013009302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002601c00313259800800c01e264b30010018acc004c0dc00a264b300130110018992cc00400601513259800800c566002607400519800800c032016808a01681ba01700b805c02d03b181c000a06c303437540051598009808000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0340062b3001303137540050078032064803205c40b8605e6ea800600a805a00a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c0050290dc3a40006e1d2002804402201100840a0604a60446ea800e2c80f8604200260386ea808a293454cc06924011856616c696461746f722072657475726e65642066616c7365001365640641\"\n :\n \"593595010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a4005223233001001003223300300130020024888a60024464b30013006001899192cc004c05c00a0091640506eb8c054004c044dd5001c566002600a0031323259800980b80140122c80a0dd7180a80098089baa0038b201e403c601e6ea800a44b30013005300f3754005132323259800980b80144c8c9660026014003159800980a9baa002803459016456600260120031323259800980d80140222c80c0dd6980c800980a9baa0028acc004c0340062b3001301537540050068b202c8b2026404c8098c04cdd5000980b001c59014192cc004c04c0062b30013371290021809000c5a2600e6024002808a2c80a0dd5180a800980a80098081baa0028b201c912cc004c014c03cdd500144c8c8cc896600260300070058b202a375a602a0026eb8c054008c054004c040dd500145900e488c966002600c0031323259800980b80140122c80a0dd6980a80098089baa0038acc004c0140062b3001301137540070028b20248b201e403c601e6ea8009222232323322598009805980a9baa010899191919912cc004c07c00e264b30013011301b3754003132323232323298009812800cdd61812802cdd698128024dd69812801cc0940092222259800981580344cc068dd61815005912cc00400a26603800c44b300100289980d00289980d0048cc004dc3a400d370e90044dc3a4014911192cc004c090c0b8dd500ac4c8c8c966002606c005132332259800981500144c96600260740031330293758607200244b300100280244cc08cc0ec0084c004c0f0009039459037181a9baa0038acc004c0a400a264b3001303a0018998149bac303900122598008014012266046607600426002607800481ca2c81b8c0d4dd5001c566002605a00513259800981d000c4cc0a4dd6181c800912cc00400a009133023303b00213001303c00240e51640dc606a6ea800e2b3001300a0028992cc004c0e80062660526eb0c0e40048966002005004899811981d80109800981e00120728b206e30353754007159800980480144c96600260740031330293758607200244b300100280244cc090c0ec0084c004c0f0009039459037181a9baa0038acc004c02000a264b3001303a0018998149bac303900122598008014012266048607600426002607800481ca2c81b8c0d4dd5001c59033206640cc8199033206630323754002264b300130290018992cc004c0e400626604a607000200f1640d860686ea800e2b300130280018992cc004c0e4006264b3001302b30353754003132323259800981e80144cc0a8c0f000c4cc0a800402e2c81d0c0ec004c0ec004c0d8dd5000c59034181c000c59036181a1baa0038b206440c860646ea8008c0d400e2c8198c0d0004c0d0004c0bcdd500ac5902d09981080a912cc00400a330012303430350019181a181a981a800cdd2a400122232598009814800c4c8c96600260740050048b206e375c607000260686ea800e2b300130280018992cc004c0e40062660506eb0c0e000489660020050058cc00401e607400513001303b002401c81c22c81b0c0d0dd5001c566002605800313259800981c800c4cc0a0dd6181c000912cc00400a00b19800803cc0e800a2600260760048039038459036181a1baa0038acc004c0240062646644b3001303b0018998151bac303a0012259800801401e33001009981e00144c004c0f400900920748b2070375a6070002607200260686ea800e2b30013008001899192cc004c0e800a0091640dc6eb4c0e0004c0d0dd5001c566002600e0031323259800981d00140122c81b8dd6981c000981a1baa0038acc004cdc3a40180031323259800981d00140122c81b8dd7181c000981a1baa0038b206440c88191032206440c88190c0c8dd500124444646644b3001302c30363754005132323232323232323298009821800cc10c022608600f30430069821802cc10c012608600737586086004911111112cc004c130026266024609602226602400e26602400c26602400a2660240082660240062b3001303d304737540051323232323298009bae30500019bae30500059bae30500049bae30500039bae30500024888896600260ac00d13304500b225980080144cc10805066002604860a86ea813a460b060b260b260b20032232330010010032259800800c5284566002600660b600314a3133002002305c001415882ca460b060b260b260b260b260b260b260b200337009000cdc024005374a9001244444446464b300198009111919912cc004c16000a2b300130583062375400314c0103d87a80008a6103d87980004185159800982d801456600260b660c46ea80062980103d87a80008a6103d87b800041851332259800982d000c530103d87b80008acc004c164006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041908320dd6983418329baa0038a6103d8798000418c8318dd6983318319baa00330623754002830906118301baa00130020033001003919191919912cc004c16000a29422b3001305b0028cc004cdd7983318319baa0014c103d87b8000a50a514185132332259800982d8014528c56600260b40051332259800982e18339baa30383068375400d1337100040031337120040028330dd6983498331baa00359800982d18329baa30363066375400f100189806800a0c88a5041908320c18cdd50009bad30673064375400860cc60c66ea800506120c23060375400260c860ca00660c660c06ea8004c188004c178dd5000cc0b4c174dd5004a444b30013055305f37540031323300b375860c860c26ea81608cdd7983298311baa00100230633060375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c194c188dd50014c194c188dd5000c8c8c96600260b260c86ea8c1a0c1a400a200313259800982d000c4c030cc1a0dd418069bad30693066375400497ae08acc004c16c0062005100241908320c190dd5000a0c63067001306337540028029300103d87b8000a50a5141811980099baf9800981918311baa002981918311baa001919192cc004c164c190dd51834183480144006264b3001305a00189806198341ba8300e375a60d260cc6ea80092f5c1159800982d800c400a2004832106418321baa001418c60ce00260c66ea8005005260103d8798000a50a51418114a0830106020c0306330603754002601260c06ea815d05e2330013060305d375401322232330010010042259800800c401226600660ca0026600400460cc002831a4530013300900223375e60c660c06ea8c18cc180dd5181818301baa001300633062375200497ae0a50a51417523052305d375460c2646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130573062375460cc0074a14a2830a2660cb30014a14c103d87a8000a60103d87980004184660ca6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1a000400e294626600400460d2002831906644cc196600294298103d87a8000a60103d87980004184660ca6e9c0092f5c11330659800a51a60103d87a8000a60103d87980004184660ca6e9ccc194dd400080125eb8106120c2375860c860ca0026eb4c190008cc008008c190005061489660020031480022600c6600400460c6002830244b30010018a40011300633002002306300141812222329800800c01600900340044444b30010038800c66002009306900398348016600260d0007375a60d00050014014802106648896600200514c103d87a80008acc004c1540062605c660c460c600497ae08cc00400e60c80053008001400c82f1061488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006418d1330050053069004418c6eb8c188004dd598318009832800a0c614bd6f7b6304896600260a860bc6ea800a26464b30013065002801c590621bad3063001305f37540051641752232330010010032259800800c52f5c1133225980099baf30663063375460cc60c66ea8c0ccc18cdd50011804998329ba90054bd7044cc194008cc0100100062660080080028308c190004c19400506248c184c188c188c188c188c188006460c260c460c460c460c460c460c4003222329800800c012006800888966002005159800800c528c52820c88acc00400629422b3001330043066002375a60cc00319800801cc19c00a60ce002801a294106120c841912259800982a182f1baa0028991919194c004c19800660cc007306600248896600260d4009133030306900713305300213259800982e000c4c8cc896600260dc003132323322598009839001c0422c8378dd718378009bae306f002306f001375860da0031641ac6eb4c1ac004c1b0004c19cdd5001456600260b60031323322598009837000c4c8c8cc896600260e40070108b20de375c60de0026eb8c1bc008c1bc004dd61836800c5906b1bad306b001306c00130673754005159800982f800c4c8ca60026eb4c1b000660da003375a60d80049112cc004c1c000a264646644b300130740038094590711bae3071001375c60e200460e20026eb0c1bc00a2c836860d800260ce6ea800a2b3001303c00189919912cc004c1b8006264646644b3001307200380845906f1bae306f001375c60de00460de0026eb0c1b40062c8358dd69835800983600098339baa0028acc004c0ec00626464b3001306d002805c5906a1bad306b00130673754005159800981d000c4c8c96600260da00500b8b20d4375a60d600260ce6ea800a2c832906520ca4194832906518329baa0018b20ce183300098328009832000982f9baa0028b20ba911194c0040060090034004444b30010028800c660020073067002998021833001000a0064191230613062306230623062001912cc004c150c178dd500144c8c96600260ca0050038b20c4375a60c600260be6ea800a2c82ea44b30010018a400113006330020023063001418137029000488cdc199b82002375a605c60be6ea8004dd69817982f9baa0019b88480024466056004466ebcc18cc180dd50009ba700248888888888888888888888a60024444646600200200a4464b30013070001899192cc004c1c8c1f0dd5000c4c8ca60026eb8c2080400a6eb8c20804c20c040066eb8c2080400572a308201001375861000260fa6ea8006294107b1919800800804112cc0040062980103d87a80008992cc004cdc79bc8375c6104020020091304d3308101374e00297ae089980180198418080120fa375861020200283f8dd7183f183d9baa0028acc004c1bc006264660020026eb0c1fcc1f0dd5001912cc00400629462b300133005005308001001899801001184080800c52820f641f91598009839800c4cc094dd6183f183d9baa0022330040040018acc004c14000626466e24dd6983f800cc004dd6183f984000800d2000912cc004cc01801800a2604a003100141f080f0c1ecdd50014566002609e0031323322598009839183e9baa0028acc004c1c8c1f4dd5184080984100801c4cdc49bad308101307e37540040031337106eb4c20404c1f8dd5001000a0f88a5041f060fe0026eb4c1fcc1f0dd5001983d9baa304b307b375400b1598009827000c4c8cc896600260e460fa6ea800a2b30013072307d37546102026104020071337120026eb4c20404c1f8dd500144cdc40009bad308101307e375400483e2294107c183f8009bad307f307c375400660f66ea8c1f8c1ecdd5002c4c8c8cc004004018896600200314a115980099baf003307d3081010018a51899801001184100800a0f841fc6042660fa60fc60f66ea80092f5c083c907920f241e483c9079183c9baa0019180a800cc04c04e6024025301001091119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c83da26600a00a61020200883d8dd7183d0009bad307b001307d00141ec660260080062900048c05400660e66ea805e600a00b2232598009837983b1baa001899198068008acc004cdd79811983c1baa003307b3078375400915980099baf30483078375400260f660f06ea800e20031641d91641d860f460ee6ea80062c83a8c114c1d8dd51823183b1baa00292cc004cdc4000a4001130050018800a0e6488888888888c8ca60024444446644646644b30013370e66e04dd69847809846009baa308f01003375a611e026118026ea8c23c04010006264b30013370f30013758606c611a026ea80329000488cc89660033001308601001a50a51423c051325980099b893302100100598008044dd7184a80801cdd7184a80984b00801a032899b800040018b2120023370400200b1003423c046eb0c24804c23c04dd5001194c00402a90004896600266ebcc094c24804dd50011ba7003899b80001375a60c46124026ea800a20028480090241bac309201308f0137540048108cdc08010054400a2c845809660026034013148006290012114028b2114023756611a02611c02002b3001307f300e0038a4001159800984700801c4c96600266e3cdd7184500800a4504555344720089bad308b010018b211202308d010038b211602422004611a02002660446eacc068c21c04dd50029bae30573087013754603c610e026ea801a600200b375c611402610e026ea8c078c21c04dd5003400e004803a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444464b3001307b30850137540031325980099baf308a013087013754611402610e026ea8004c0b4cc22404dd4802a5eb822b3001307b98009bab30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab30593089013754007006a441045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5000c5908501459085011844809843009baa0018b210802330060040019111192cc004c1ecc21404dd5000c4c96600266ebcc22804c21c04dd51845009843809baa30573087013754002605a66112026ea40152f5c1159800983dcc004dd5982b9843809baa30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab3059308901375460b26112026ea800e00d4881045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5182b9843809baa0018b210a028b210a023089013086013754003164210046600c008002911112cc004c1ec02e26644b300198009845809844009baa0538164c0c4c22004dd503fcdd5980f9844009baa07f4051159800998149bac308b0130880137540fe6eb8c0ccc22004dd5180f9844009baa0538acc0066002660426eb0c22c04c22004dd503f9bae30573088013754603e6110026ea814e6eb0c160c22004dd5000cdd618189844009baa05348896600266e1cc05000cc0500162b300130110028cc00400e0052232598009841809846809baa001899192cc004c21404c23c04dd5000c4c8ca60026603e0100033758604a6124026ea80126eb4c2540400922259800984500984a009baa0038acc004cdc499199119b8330403370066e08004dd69833984c009baa003002002375a60cc612c026ea8004dd69833184b009baa00830980130950137540073001375660ca612a026ea8c194c25404dd50054dd7184c008014dd7184c00984c8080120388acc004cdc38009bad3065309501375400f13375e6e9c010c0a0c25404dd5003c5282126028a50424c0516424c043758612802612a020026120026ea8006294108e01182f1847809baa33012004001309101308e013754003164230046601c00e002810a2c84480a2c844809159800cc004dd6182b9844009baa07f9bac308b0130880137540033308a0130583088013754603e6110026ea814ccc228053001054455534472004bd702444b30013370e602a004602800b19800802c00a4464b3001308301308d0137540031325980099baf309201308f013754002612402611e026ea8c24804c23c04dd5002456600266ebcc178c23c04dd5000982f9847809baa309201308f01375400913370f3001375660be611e026ea80066eb8c248040166eb8c17c01501618089bad305f308f01375400914a084680a294108d011848809847009baa0018b2118023300e005001408516422404899b879800829c1fe90004dd6982b9844009baa0019bad30333088013754003002401d30010029bac308b01308801375400323017375a60b26112026ea8005006459086014590860145908601459086011bac3089013086013754052611202610c026ea820006264b3001307b00c899912cc006600260b26112026ea815205b3032308901375410003375660406112026ea8200050154566002660546eb0c23004c22404dd5040009bae3034308901375460406112026ea81522b30019800998111bac308c013089013754100026eb8c160c22404dd518101844809baa0549bac305930890137540033308b013059308901375460406112026ea8150cc22c05301054455534472004bd702444b30013370e602a006602a00b159800980900146600200700291192cc004c21004c23804dd5000c4c8c966002610a026120026ea800626464b3001337120033001375660c66126026ea8c18cc24c04dd5003cdd7184b008044dd7184b00984b8080420348acc004cdc380098119bad3063309301375400913375e612c02612e02004604c6126026ea80122941091014528212202375a612a020026122026ea8006294108f01182f9848009baa33013004001309201308f013754003164234046601e00e00281122c84500a2c845009159800cc004dd6182c1844809baa080018014dd61846009844809baa0019bac303230890137540a8801a266e1e60020a908001a4001375a60b06112026ea80066eb4c0d0c22404dd5000c0090084c00400a6eb0c23004c22404dd5000c8cdc41bad305a308a0137540029000200e8b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c56600260fe0191332259800cc004c160c22404dd502a40b660646112026ea8200066eacc080c22404dd504000a02a8acc004cc0a8dd61846009844809baa08001375c60686112026ea8c080c22404dd502a45660026644b30013370e602800460280091598009808800c6600200500191192cc004c20c04c23404dd5000c4c8c96600260ca611e026ea8006264b30013370e6eb4c25004004dd698309848809baa003899baf3094013095010013024309101375400714a0847808c24004dd5000c528211c02305e308f01375466024008002612202611c026ea80062c846008cc0380180050214590890145908901198111bac308c013089013754100026eb8c160c22404dd518101844809baa054375860b26112026ea80062b300198009bac30583089013754100030029bac308c013089013754003375860646112026ea815100344c1fa60020a908001cc00400a6eb0c23004c22404dd5000c96600260306eb4c168c22804dd5000c4c1fcdd6982c9845009baa0018a50422004803a6eb4c160c22404dd5000cdd6981a1844809baa00180120108b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c4c96600260ba01b198009bac308b013088013754057222225980099b87301600530160048acc004c04c00e266e24006600200b003a400122232598009843009848009baa001899912cc004c22c04c24804dd5000c4c8cc0a400456600266ebcc0fcc25004dd5001984b80984a009baa0078acc004cdd79832184a009baa001309701309401375400713259800984680984a009baa001899192cc004cdc39bad309a01002375a60ce612e026ea801a2b30013370e6eb4c26804004dd69833184b809baa0068acc004cdd7984d00984d808009815184b809baa006899b8000898009bab3067309701375460ce612e026ea802a6eb8c268040326eb8c26804c26c0403101e459095014590950145909501184d00800984a809baa0018b212602306330940137540031642480516424804612c026126026ea80062c848808c25004c24404dd500098301848809baa3061309101375400916423c046602200e00481522c84580a2c84580a6116026110026ea82080522259800cc004c0d8c22c04dd502b40be60686116026ea8208066eacc088c22c04dd504100a02e899912cc00566002603600514a319800984100800d28528a11602422c05132598009841809846809baa0018cc00660026eb0c24404c23804dd504280cdd7181c9847009baa3025308e0137540b3375c60bc611c026ea8c094c23804dd502ccdd69848809847009baa0014025375a612202611c026ea8c24406600210a03375c612202611c026ea8c094c23804dd502ccdd6982e9847009baa0049bad3039308e01375400880726e0400a604c611c026ea8011222232323259800984500984a009baa0048992cc004cdc399b81375a61320200200800715980099b87375a6132026134020026eb4c26404c268040222b3001300f00a8acc00660026605e6eb0c26404c25804dd5046809bae30653096013754605a612c026ea818601d375860cc612c026ea8032661300260cc612c026ea8c0b4c25804dd50309984c00a61054455534472004bd7052000403515980099b8900298009bac3065309601375411a034800244b30013375e6136026130026ea8008c26c04c27004c27004c27004c27004c27004c27004c27004c27004c26004dd5031c4cdc0000cc004dd59834184c009baa0029bae30683098013754605e6130026ea818e9101045553447200407d100142580481c22b3001323371266e0003002e60026eb0c100c25c04dd5031520009119192cc004c0a4006266e0000ccdc199b82001375a60d66136026ea8010dd69835184d809baa0048801a1320298008024dd7184e80800cdd7184e80984f00800a04237586138026132026ea800902b1bab309901309a01309a01980084680cdd7184c80984b009baa302d30960137540c3375a60ca612c026ea80326eb4c104c25804dd5006202c899b879800830c23406600c017375a60ca612c026ea80326eb4c104c25804dd50064039015005459094014590940145909401456600330013302f3758613202612c026ea823404dd71832984b009baa302d30960137540c300e9bac30663096013754019330980130663096013754605a612c026ea8184cc26005301054455534472004bd704c09800900d44cdc3cc00418611a03300600b9bad30653096013754019375a6082612c026ea803201c80a802a2c84a0090940145909401459094014c004dd61832184a809baa08c019bae304030950137546058612a026ea81826eb8c194c25404dd51816184a809baa0609bad3098013095013754008808a2c849808c01000566002604200913370666e0801c00401229000212202375a612a020088b2118023020308d01375400716422c0530010039bac308e01308b01375400323005375a60b86118026ea80050094c00400e9000488cdc00009bad305c308d01375400480fa2c844809159800982e006c4cc89660033001301d308a0137540ab02e98199845009baa081019bab3021308a0137541020280b22b30013302b3758611a026114026ea820404dd71846809845009baa3021308a0137540ab13322598009840809845809baa00189919912cc004c02000a2b300130080018acc0056600261080200314a31301d00242340513259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260c06120026ea8c09cc24004dd502d9984900a601054455534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b8c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c848809159800cc004dd6182f9848009baa087019bac309301309001375400f330920130233090013754604e6120026ea816ccc2480530106457355534472004bd702444b30013370e603a004603801719800805c00a4464b3001308b0130950137540031325980099baf309a013097013754002613402612e026ea8c26804c25c04dd5002456600266ebcc198c25c04dd50009833984b809baa309a01309701375400913370f3001375660ce612e026ea80066eb8c268040166eb8c19c01501e2cc004c2300402626eb4c19cc25c04dd500244cdc199b82375a60ce612e026ea8010024029095014528212a028a50425404613202612c026ea80062c84a008cc058014005029459091012264b300130860130900137540031325980099b87375a612a0200266e000140222b30013370e6eb4c25404c25804004cdc0002001c56600266e1e60026eacc094c24804dd504480cdd718129849009baa302930920137540bb4881057355534472004064007130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed220104555344720040651642400516424005164240053001375860c06122026ea8220066eb8c0f0c24404dd518141848809baa05c9bae3061309101375460506122026ea81726eb4c25004c24404dd5000a01a8b211e023028309001375400f164238051642380516423804b30013084010018802c4cdc199b820050010024234051642340516423405164234046eb4c24004004dd6984800984880800cc004dd61847809846009baa083019bae3037308c01375460466118026ea815e6eb8c170c23004dd518119846009baa0579bad308f01308c013754002803a2c84500a60020053758611a026114026ea8006460326eb4c16cc22c04dd5000a00e301d308a01375400316422005164220046eb0c22c04c22004dd50159845809844009baa08201899912cc006600260446114026ea815605d3033308a01375410203375660426114026ea8204050164566002660566eb0c23404c22804dd5040809bae308d01308a01375460426114026ea815626644b3001308101308b013754003132332259800980e8014566002603a00313259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260466120026ea8c09cc24004dd502d9984900a60106457355534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b4c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c84880915980099b8798009bab3023309001375410e03375c60466120026ea8c09cc24004dd502dd22105735553447200405c604000d132598009843009848009baa0018992cc004cdc39bad3095010013370200a00715980099b87375a612a02612c0200266e040100222b300130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed22010455534472004065198009bac30613092013754112033758612a026124026ea8026661280260c46124026ea8c0a4c24804dd502e9984a00a61054455534472004bd702444b30013370e603e004603c01b19800806c00a4464b3001308d0130970137540031325980099baf309c0130990137540026138026132026ea8c27004c26404dd5002456600266ebcc1a0c26404dd50009834984c809baa309c01309901375400913370f3001375660d26132026ea80066eb8c270040166eb8c1a401502019b83337046eb4c1a4c26404dd5002006005c528212e028a50425c046136026130026ea80062c84b008cc06001400502b4590930122c84800a2c84800a2c84800a60026eb0c180c24404dd504400cdd7181e1848809baa302830910137540b9375c60c26122026ea8c0a0c24404dd502e4dd6984a009848809baa001403516423c0460506120026ea801e2c84700a2c84700a2c84700a600200f480024466e00004cdc199b82375a60c26122026ea800801000d02345908d0145908d011bad309001001375a61200261220200330013758611e026118026ea820c066eb8c0dcc23004dd518119846009baa0579bae305c308c01375460466118026ea815e6eb4c23c04c23004dd5000a00e8b21140298008014dd61846809845009baa0019180c9bad305b308b0137540028038c074c22804dd5000c5908801459088011bac308b0130880137540566116026110026ea82080508601210c0237129000210a024214044444b30013370e6028004602600719800801c00a4464b3001308201308c013754003198009848009846809baa0019bac3020308d0137540073301a00437586040611a026ea800d222598009842809847809baa0018acc004cdd79849809848009baa00330930130900137546126026120026ea801a2b30013375e60be6120026ea800cc180c24004dd51849809848009baa006899b8798009bab30603090013754007375c612602005375c61260261280200480b8cc07cc048dd698301848009baa006309301309001375400314a084700a294108e0145908e0122c845808cc034018005020459088012108021111192cc004c1e8c21004dd5000c4c96600266ebcc22404c21804dd51844809843009baa30563086013754002605866110026ea40152f5c1159800983d4c004dd5982b1843009baa30563086013754003005a4508747265617375727900403513259800983f9843009baa0018991980d0008992cc004c1f8c22004dd5000c4c96600266ebcc23404c22804dd51846809845009baa00130303308c01375201297ae08acc004c1fa60026eacc168c22804dd5000c026911087472656173757279004045132598009841809845009baa0018991980f00089984700802998470080099847009ba6329800800cdd5982e9846809baa00499198008009bab305e308e01375460bc611c026ea8024896600200314bd6f7b63044c8cc24804cdd81847808009ba63233001001375661220200444b30010018a5eb7bdb1822646612a0266ec0c24804004dd418119bad30930100133003003309701002309501001424c04660060066128020046124020028480090011112cc00400a2003132332298008034c25804016646600200200a44b300100189984b0099bb037520086e9800d2f5bded8c113298009bae3094010019bab309501001984c808012444b30013372001000713309a01337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528213402880144cc26c04cdd81ba9009374c00200484b808ca6002003008801a002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd4001a5eb7bdb1822653001375c614002003375a61420200330a50100248896600266e4002000e26614c0266ec0dd48041ba80070058acc004cdc7804001c4c96600261340200310028998538099bb037520126ea00040090a30119b800070028998530099bb037520066ea0008cc0180180050a201214402185180800a1420240186eb8c26c04004dd6984e00800984f0080121380289984d0099bb037520066e98008cc01801800509601212c02184b80800a12a0240186eb8c23c04004dd59848008009849008012120024bd701847009845809baa0018b2112023059308a01375400316422005164220046118026112026ea80062c843808cc024dd6182b9844009baa008005308a0130870137540031642140460aa610c026ea8c158c21804dd5000c5908401459084011844009842809baa0018b210602330053758610e026108026ea8010008896600266e2000520008a6103d87a8000899804801000a0fe22c82d8c8cc004004dd61816182e9baa0572259800800c52f5c1133060374e6464660c460c6004660c4605e60c06ea8004cc188dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241888310dc68009bae30653062375400266e28c008dd7181918311baa0013371460046eb8c0c4c188dd500098011bae300d30623754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241808300dc68009817198312610b4a5369676e617475726531003306230633060375460c660c06ea8004cc18930101400033062375200a97ae04bd70183118318009bac3061001330020023062001417c6e50dd9803a264b3001304a305437540031323232332259800982f001c4c8c8cc896600260c40071300b306200c8b20be375c60be0026eb8c17c008c17c004dd6182e802c5905b1bad305b001375a60b600460b600260b400260aa6ea80062c8298c15c0090554590530c140004c13c004c138004c134004c120dd50014590464590490c10c004c108004c104004c100004c0fc004c0f8004c0f4004c0f0004c0dcdd50014590351802981a9baa323232598009816981b9baa0018992cc004c0c4c0e0dd5000c4c966002605e60726ea8006264646644b300130420038802c5903f181f8009bae303f002303f001303a37540031640e0607860726ea80062c81b8c01cc0e0dd51804181c1baa303b303837540031640d8660066eb0c01cc0dcdd50171191980080098019bab300930393754601260726ea8008896600200314a115980099b8f375c607a00206f14a3133002002303e00140e081d8c004004896600200314bd7044cc0e4c0d8c0e8004cc008008c0ec0050381801001111919800800801912cc0040062980103d87a80008992cc004c0100062600e6607600297ae0899801801981e801206e303b00140e489919912cc004c0dc00626644b3001302a303437540051323232332259800981f001c4c966002606060746ea8006264646644b300130430038992cc004c0d400626464b300130460028074590431bae30440013040375400f159800981a000c56600260806ea801e0191641051640f881f0c0f8dd50034590401bae3040001375c6080004608000260766ea80062c81c8c0f40162c81d8dd7181d800981d801181d800981d000981a9baa0028b206630360011300430370058b2068375c6068002606a0026eb0c0cc0090312264600460600066eb4c0b800902c44c8c008c0b800cdd6981600120548b205018128009812000981180098110009810800980e1baa0018b2034301e0058b203837586038002603800460380026036002602c6ea80422c80a089660026016602a6ea800a26464646644b3001301f003899804180f00289980580100345901c180e0009bad301c002301c001301b0013016375400516405044b3001300b301537540051323232323298009bac301e0019bad301e0049bad301e003980f00124444b30013023005899806181100489980780089919912cc004c09800e01b16408c6eb8c08c004dd7181180298118024590200c078004c074004c070004c06c004c058dd5001459014112cc004c028c050dd500144c8c8c9660026038005133006301b003132598009807000c56600260326ea800a00b1640691598009806800c4c8c966002603e0050078b2038375c603a00260326ea800a2b30013011001899192cc004c07c00a00f164070603a00260326ea800a2c80b9017202e3017375400316406460340026034002602a6ea800a2c80988966002601260266ea800a2646464b3001301b002899804980d0018992cc004c034006264b3001301d001899192cc004c040006264b30013020001899807180f800804c5901d180d9baa0028acc004c03c00626464653001375a6042003375a6042007375a60420049112cc004c09401201d16408830210013020001301b375400516406480c8c064dd5000980e000c5901a180c1baa0028acc004c0300062b3001301837540050058b20328b202c4058602c6ea80062c80c0c064004c064004c050dd50014590121164020300900130043754013149a26cac80101\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4StakingVaultStakingVaultMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601\"\n :\n \"5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4StakingVaultStakingVaultSpend {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601\"\n :\n \"5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4StakingVaultStakingVaultElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601\"\n :\n \"5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0/index.js b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0/index.js new file mode 100644 index 0000000000..900b6f935e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0/index.js @@ -0,0 +1,3 @@ +"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.VaultDatumV1=exports.V1_0TreasuryTreasurySpend=exports.V1_0TreasuryTreasuryMint=exports.V1_0TreasuryTreasuryElse=exports.V1_0StakingVaultStakingVaultSpend=exports.V1_0StakingVaultStakingVaultMint=exports.V1_0StakingVaultStakingVaultElse=exports.V1_0RealfiMintingPolicyRealfiMintingPolicyMint=exports.V1_0RealfiMintingPolicyRealfiMintingPolicyElse=exports.V1_0ProxyNftProxyNftMint=exports.V1_0ProxyNftProxyNftElse=exports.V1_0ProtocolStakeProtocolStakeWithdraw=exports.V1_0ProtocolStakeProtocolStakePublish=exports.V1_0ProtocolStakeProtocolStakeElse=exports.V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw=exports.V1_0ProtocolOrchestratorProtocolOrchestratorPublish=exports.V1_0ProtocolOrchestratorProtocolOrchestratorElse=exports.V1_0ProtocolMintProtocolMintWithdraw=exports.V1_0ProtocolMintProtocolMintPublish=exports.V1_0ProtocolMintProtocolMintElse=exports.V1_0ProtocolManagementProtocolManagementWithdraw=exports.V1_0ProtocolManagementProtocolManagementPublish=exports.V1_0ProtocolManagementProtocolManagementElse=exports.V1_0OrderOrderSpend=exports.V1_0OrderOrderElse=exports.Tuple_VerificationKey_COSESign1=exports.TreasuryRequestV1=exports.TreasuryDatumV1=exports.StakingVaultRedeemerV1=exports.StakeRequestV1=exports.SignedRedeemer_ExtraProtocolRedeemerV1=exports.SignedPayload_ProtocolRedeemerV1=exports.SettingsV1=exports.ReserveAsset=exports.RegistryV1=exports.ProxyDatumV1=exports.ProtocolRedeemerV1=exports.OrderRedeemerV1=exports.OrderDatumV1=exports.OrderActionV1=exports.Nonce=exports.MultisigScript=exports.Headers=exports.HeaderMap=exports.ExtraProtocolRedeemerV1=exports.ExchangeRequestV1=exports.DirectRequestV1=exports.Destination=exports.COSESign1=exports.Bool=exports.Asset=void 0;var _uplc=require("@blaze-cardano/uplc");var _data=require("@blaze-cardano/data");function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function _defineProperties(e,r){for(var t=0;t2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0OrderOrderSpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5916b70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d6572563100164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b30010078999119912cc004c00c0062b30013018375401700280720328acc004c0240062b30013018375401700280720328acc004c0100062b3001301837540170028072032807202a405480a8660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009810801c01a00a80f0dd7000a042301e001407060346ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026042007006802a03c375c0028108c07800501c180d1baa004801202e405c60306ea800e44b30010018a5eb82266034602e603600266004004603800280ca44646600200200644b30010018a508acc004cdc79bae301d0010038a51899801001180f000a02e406d223233001001003223300300130020029180d180d800c8c068c06cc06c00646034603660366036603660366036603660366036003301537540132301a301b301b301b301b301b301b001911919800800801912cc00400629422b30013375e0066032603a00314a3133002002301e001405c80da6e012001488888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260226605200297ae0899801801981580120483029001409d300a00a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c068006264b300100180344c966002003007803c4c96600260600071330120012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980a800c4c9660020030068992cc00400600f0078992cc004c0c000e26602400244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b30013370e9003000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0cc00e26602a00244b300100280544c96600200319800806c00626004606c006806a01d00e8074039037181a0012064805a060375800300a8052066303000140b86eb4004c0bc00a00e8180c0b400502b18149baa0038acc004cdc3a401000313259800800c01a264b3001001803c01e00f132598009818001c0160108168dd6800c01d0301816800a0563029375400715980099b8748028006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013030003802c02102d1bae00140c0605a0028158c0a4dd5001c015026204c40988131026204c4098604e6ea80092223322598009809004c4cc8966002602860506ea8006264b3001301b3029375400315980099b8f375c605a60546ea8004dd7180718151baa300d302a3754601e60546ea800e330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640a9222232330010010052259800800c4016264b3001001899802181a00100344cc014c0d0008cc00c00c005032181a000a0629bab300b302a37540353374a9001198161ba90254bd7024444646464a6605e66e592410d63726564656e7469616c3a3a200037333001001802522100400426602200a00844464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20725980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81990331bac3036002375a60680026466ec0dd4181a0009ba73035001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6072003337149101023a200098008054c0e800600a805100a181e00144ca6002015303900199b8a489023a200098008054c0e8006600e66008008004805100a181e0012074303c00140e466e29220102207d0000340d86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a206c3758007133005375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40e066e2ccdc0000acc004cdc4000a4029148182290372070004401866e0c00520203370c002901019b8e00400240d46eb800d0391b8a4881022c20002232330010010032259800980f000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c08180c010011153302849013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016409d023409c605860526ea8c0b0c0a4dd5180718149baa302c302937540030214098660026eb0c030c09cdd500b811998011bac302a3027375402e02b159800980c004c5660026024604c6ea805233001302a302737546054604e6ea80526eb0c0a8c0acc0acc0acc0acc0acc0acc0acc0acc09cdd500bcc0a8c0acc0acc0acc0acc0acc0acc0acc09cdd500bcdd5980418139baa01748888c8cc00400401488c9660026032003133015006375c6062605c6ea800a2b3001301f001899198008009bac3032302f375400644b30010018a518acc004cc014014c0cc006266004004606800314a08169031456600260340031323300100137586064605e6ea800c896600200314a1159800998028029819800c528c4cc008008c0d000502d20628acc004cdc3a400c003132337126eb4c0c8004c8cc004004dd61819981a001112cc0040062900044cc896600266010010005133700002900144005030181a00099801001181a800a064302e375400515980099b87480200062646644b3001302230303754005159800981118181baa30343035003899b89375a606860626ea8008006266e20dd6981a18189baa00200140b914a08170c0c8004dd6981918179baa003302e37546026605c6ea80162b30013370e9005000c4c8cc8966002604460606ea800a2b30013022303037546068606a0071337120026eb4c0d0c0c4dd500144cdc40009bad3034303137540048172294102e18190009bad3032302f3754006605c6ea8c0c4c0b8dd5002c4cc038010cdd2a4004660606062605c6ea80092f5c0815902b205640ac815902b18161baa001407902445660026024604c6ea805233001302a302737540293300137586018604e6ea805c08e660046eb0c0a8c09cdd500b80aa444b30013015302937540031323259800980e98159baa0018acc0056600330013371e6eb8c040c0b0dd5180798161baa3011302c37540086eb8c0bcc0b0dd5000d28528a0528a518cc004cdc79bae302f302c375400804f4a14a2814902944c966002603060586ea8006264b30013019302d375400313259800980d18171baa0018992cc004cdd7981998181baa001301a33032301a3303230333030375400897ae0330324c103d87a80004bd704660026eacc054c0c0dd5000cc054c0c0dd5180a98181baa0069119b89337020026eb4c0d4c0d8c0d8c0d8c0c8dd50110012444b30010028a508994c004c966002604060686ea800626eb4c0d4c0e0dd5981c181a9baa0018a40008190c0dc0066ebcc0dcc0e00066eac00d22259800800c566002600400d13300500348002294103444c96600266ebcc0dc0053010140008acc004cc018010dd6981c181d9bab3038001898019ba6303c0028a5040d51598009980300224001130030078a5040d481a8c0e80050380ca6002003004911981c0011981c1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0d80066eacc0dc00660760069112cc004cdc8a441000038acc004cdc7a4410000389980298121981e1ba60024bd70000c4cc015300103d87a800000640dd19800803c006446600e0046607c66ec0dd48029ba6004001401c81b8607200481ba2942294229410382294102d181918179baa0018a99816a493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640b065300130010019bad3032302f375400537586026605e6ea807d2225980099b8800248002298103d87a8000899801800801205e1112cc00400a298103d87a80008acc004c0700062603666066606800497ae08cc00400e606a0053010001400c8171032454cc0b124014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640ac6530010019bac3031302e375403d480010011112cc00400a298103d87a80008acc004cdd7981980100344c068cc0c8dd4000a5eb8233001003981a0014cdc0000a4004801902d20628a99815a48131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640a8605e60586ea80162a660549201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640a502540a4605c60566ea8c0b8c0acdd5180818159baa001302d302a3754003022409c80f20484090812088cc0140088cdd7981598141baa001002223259800800c4c966002602860506ea800a264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0c800a2b30013019302d375400313259800800c0a6264b30010018992cc00400605713259800800c4c96600200302d8992cc004006264b3001001817c4c96600200313259800800c0c6264b30010018992cc00400606713259800800c4c9660020030358992cc004006264b300100181bc4c96600200313259800800c0e6264b30010018992cc00400607713259800800c4c96600200303d8992cc00400607d03e899912cc00400608113259800800c56600260960051980080c46600202d1980080a4660020251980080846600201d198008064660020151980080445660026064608c6ea801a264b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4cc896600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f13259800982d001c4cc0f004889660020051598009821982b9baa0128992cc0040060a713259800800c4c9660020030558992cc0040062b300130600028cc00400e264b300130480018992cc0040060b113259800800c56600260c6005132598009825800c4c96600200305b8992cc0040062b300130660028cc00400607505c412d05c418d05c82e41720b88338c19000506218301baa0028acc004c144006264b300100182dc4c96600200305c82e417226644b300100182f44c96600200305f82fc17e26644b3001001830c4c966002003062831418a264b3001306d003820c18d06a1bad00183120da306a00141a06eb4004c1a400a0be8350c19c0050651bad001306600282e20ce3064001418860c06ea800a0b482e905d182f1baa00182ca0c082cc1660b3059419060c200282f8c174dd50014566002609c003159800982e9baa00281ac15d05e415d05a20b4305b37540030564115056417505682b415a0ac8308c17800505c182f00141520a905482a20be305c001416860b06ea804a0a482aa264b30010018acc004c110c160dd5000c4c9660020030548992cc0040060ab055899912cc0040060af13259800800c1620b1058899912cc0040060b513259800800c16e0b705b8992cc004c19800e2b300100782e44c96600200305d82ec1760bb1332259800800c17e264b300100183041820c10608992cc004c1ac00e2602060d602306141a06eb800506b1834000a0cc375c00260ce0108340c19401d06341710631bad00182da0cc306300141846eb4004c18800a0b08318c18000505e1bac001305f00282ac155060182e800a0b6305937540030534159053829c14e0a682f0c16c00905941410571bae001416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c1bae001304d002413860960028248c11cdd5003410504441050234105023410502341050234105023410502341050234105023410502341050484106083041820a0983049001411c6eb0004c12000a07d03e4124608c0028220c11800a07903c81e40f10471822000a084304400281d40ea07503a411460840028200c10800a07103881c40e10431820000a07c304000281b40da06d0364104607c00281e0c0f800a06903481a40d103f181e000a074303c00281940ca06503240f4607400281c0c0e800a06103081840c103b181c000a06c303800281740ba05d02e40e4606c00281a0c0d800a05902c81640b1037181a000a064303400281540aa05502a40d460640028180c0b8dd5000c0a102b40a102f40a20510288142066303000140b86eb8004c0bc0090301816800a0563029375400502340982003022811408a0448168c9660026026604e6ea8006264b30013015302837540031302c30293754003153302749013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601860506ea8c034c0a0dd5181598141baa0018a998132494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946600a00446601e600a6eacc034c0a0dd5180698141baa0010020c054dd50049b8748010dc3a400100a805402a01480c8c054004c054c058004c044dd5001c5900e0c040004c02cdd5008c5268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"590c000101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758604a604c604c604c604c604c604c604c604c60446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8c8ca6002606e003303700b981b8054c0dc026606e0113037007981b8034c0dc016606e00930370039bac3037002488888888889660026086019133021304201713302100a1330210091330210081330210071330210061330210051330210041330210031598009819181f1baa002899191919194c004dd71823800cdd71823802cdd718238024dd71823801cdd71823801244444b3001304d00689981a005912cc00400a2b3001303e304a375402f132323259800982900144cc0f0c14400c4c966002608400313259800982a000c4c8c966002608a00313259800982b800c4cc104c1580040c22c82a0c148dd500145660026092003132323298009bad30580019bad30580039bad305800248896600260b80090358b20b2182c000982b80098291baa0028b20a0414060a06ea8004c14c0062c8288c13cdd50014566002608c00315980098279baa00281645905045904d209a304d375400316413c60a000260a000260966ea805e2c824a264b3001303f304b37540031323232332259800982a801c4c8c8cc896600260b20071300b305900c8b20ac375c60ac0026eb8c158008c158004dd6182a002c590521bad3052001375a60a400460a400260a200260986ea80062c8250c13800904c45904a0c11c004c118004c114004c110004c0fcdd500145903d4590400c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815000c590281bae3028001302900130243754005164088200264b300130163022375400313259800980c18119baa0018981398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601",_data.Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");});var V1_0OrderOrderElse=exports.V1_0OrderOrderElse=/*#__PURE__*/_createClass(function V1_0OrderOrderElse(proxyPolicyId,protocolScripthash){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0OrderOrderElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5916b70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d6572563100164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b30010078999119912cc004c00c0062b30013018375401700280720328acc004c0240062b30013018375401700280720328acc004c0100062b3001301837540170028072032807202a405480a8660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009810801c01a00a80f0dd7000a042301e001407060346ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026042007006802a03c375c0028108c07800501c180d1baa004801202e405c60306ea800e44b30010018a5eb82266034602e603600266004004603800280ca44646600200200644b30010018a508acc004cdc79bae301d0010038a51899801001180f000a02e406d223233001001003223300300130020029180d180d800c8c068c06cc06c00646034603660366036603660366036603660366036003301537540132301a301b301b301b301b301b301b001911919800800801912cc00400629422b30013375e0066032603a00314a3133002002301e001405c80da6e012001488888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260226605200297ae0899801801981580120483029001409d300a00a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c068006264b300100180344c966002003007803c4c96600260600071330120012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980a800c4c9660020030068992cc00400600f0078992cc004c0c000e26602400244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b30013370e9003000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0cc00e26602a00244b300100280544c96600200319800806c00626004606c006806a01d00e8074039037181a0012064805a060375800300a8052066303000140b86eb4004c0bc00a00e8180c0b400502b18149baa0038acc004cdc3a401000313259800800c01a264b3001001803c01e00f132598009818001c0160108168dd6800c01d0301816800a0563029375400715980099b8748028006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013030003802c02102d1bae00140c0605a0028158c0a4dd5001c015026204c40988131026204c4098604e6ea80092223322598009809004c4cc8966002602860506ea8006264b3001301b3029375400315980099b8f375c605a60546ea8004dd7180718151baa300d302a3754601e60546ea800e330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640a9222232330010010052259800800c4016264b3001001899802181a00100344cc014c0d0008cc00c00c005032181a000a0629bab300b302a37540353374a9001198161ba90254bd7024444646464a6605e66e592410d63726564656e7469616c3a3a200037333001001802522100400426602200a00844464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20725980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81990331bac3036002375a60680026466ec0dd4181a0009ba73035001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6072003337149101023a200098008054c0e800600a805100a181e00144ca6002015303900199b8a489023a200098008054c0e8006600e66008008004805100a181e0012074303c00140e466e29220102207d0000340d86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a206c3758007133005375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40e066e2ccdc0000acc004cdc4000a4029148182290372070004401866e0c00520203370c002901019b8e00400240d46eb800d0391b8a4881022c20002232330010010032259800980f000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c08180c010011153302849013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016409d023409c605860526ea8c0b0c0a4dd5180718149baa302c302937540030214098660026eb0c030c09cdd500b811998011bac302a3027375402e02b159800980c004c5660026024604c6ea805233001302a302737546054604e6ea80526eb0c0a8c0acc0acc0acc0acc0acc0acc0acc0acc09cdd500bcc0a8c0acc0acc0acc0acc0acc0acc0acc09cdd500bcdd5980418139baa01748888c8cc00400401488c9660026032003133015006375c6062605c6ea800a2b3001301f001899198008009bac3032302f375400644b30010018a518acc004cc014014c0cc006266004004606800314a08169031456600260340031323300100137586064605e6ea800c896600200314a1159800998028029819800c528c4cc008008c0d000502d20628acc004cdc3a400c003132337126eb4c0c8004c8cc004004dd61819981a001112cc0040062900044cc896600266010010005133700002900144005030181a00099801001181a800a064302e375400515980099b87480200062646644b3001302230303754005159800981118181baa30343035003899b89375a606860626ea8008006266e20dd6981a18189baa00200140b914a08170c0c8004dd6981918179baa003302e37546026605c6ea80162b30013370e9005000c4c8cc8966002604460606ea800a2b30013022303037546068606a0071337120026eb4c0d0c0c4dd500144cdc40009bad3034303137540048172294102e18190009bad3032302f3754006605c6ea8c0c4c0b8dd5002c4cc038010cdd2a4004660606062605c6ea80092f5c0815902b205640ac815902b18161baa001407902445660026024604c6ea805233001302a302737540293300137586018604e6ea805c08e660046eb0c0a8c09cdd500b80aa444b30013015302937540031323259800980e98159baa0018acc0056600330013371e6eb8c040c0b0dd5180798161baa3011302c37540086eb8c0bcc0b0dd5000d28528a0528a518cc004cdc79bae302f302c375400804f4a14a2814902944c966002603060586ea8006264b30013019302d375400313259800980d18171baa0018992cc004cdd7981998181baa001301a33032301a3303230333030375400897ae0330324c103d87a80004bd704660026eacc054c0c0dd5000cc054c0c0dd5180a98181baa0069119b89337020026eb4c0d4c0d8c0d8c0d8c0c8dd50110012444b30010028a508994c004c966002604060686ea800626eb4c0d4c0e0dd5981c181a9baa0018a40008190c0dc0066ebcc0dcc0e00066eac00d22259800800c566002600400d13300500348002294103444c96600266ebcc0dc0053010140008acc004cc018010dd6981c181d9bab3038001898019ba6303c0028a5040d51598009980300224001130030078a5040d481a8c0e80050380ca6002003004911981c0011981c1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0d80066eacc0dc00660760069112cc004cdc8a441000038acc004cdc7a4410000389980298121981e1ba60024bd70000c4cc015300103d87a800000640dd19800803c006446600e0046607c66ec0dd48029ba6004001401c81b8607200481ba2942294229410382294102d181918179baa0018a99816a493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640b065300130010019bad3032302f375400537586026605e6ea807d2225980099b8800248002298103d87a8000899801800801205e1112cc00400a298103d87a80008acc004c0700062603666066606800497ae08cc00400e606a0053010001400c8171032454cc0b124014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640ac6530010019bac3031302e375403d480010011112cc00400a298103d87a80008acc004cdd7981980100344c068cc0c8dd4000a5eb8233001003981a0014cdc0000a4004801902d20628a99815a48131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640a8605e60586ea80162a660549201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640a502540a4605c60566ea8c0b8c0acdd5180818159baa001302d302a3754003022409c80f20484090812088cc0140088cdd7981598141baa001002223259800800c4c966002602860506ea800a264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0c800a2b30013019302d375400313259800800c0a6264b30010018992cc00400605713259800800c4c96600200302d8992cc004006264b3001001817c4c96600200313259800800c0c6264b30010018992cc00400606713259800800c4c9660020030358992cc004006264b300100181bc4c96600200313259800800c0e6264b30010018992cc00400607713259800800c4c96600200303d8992cc00400607d03e899912cc00400608113259800800c56600260960051980080c46600202d1980080a4660020251980080846600201d198008064660020151980080445660026064608c6ea801a264b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4cc896600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f13259800982d001c4cc0f004889660020051598009821982b9baa0128992cc0040060a713259800800c4c9660020030558992cc0040062b300130600028cc00400e264b300130480018992cc0040060b113259800800c56600260c6005132598009825800c4c96600200305b8992cc0040062b300130660028cc00400607505c412d05c418d05c82e41720b88338c19000506218301baa0028acc004c144006264b300100182dc4c96600200305c82e417226644b300100182f44c96600200305f82fc17e26644b3001001830c4c966002003062831418a264b3001306d003820c18d06a1bad00183120da306a00141a06eb4004c1a400a0be8350c19c0050651bad001306600282e20ce3064001418860c06ea800a0b482e905d182f1baa00182ca0c082cc1660b3059419060c200282f8c174dd50014566002609c003159800982e9baa00281ac15d05e415d05a20b4305b37540030564115056417505682b415a0ac8308c17800505c182f00141520a905482a20be305c001416860b06ea804a0a482aa264b30010018acc004c110c160dd5000c4c9660020030548992cc0040060ab055899912cc0040060af13259800800c1620b1058899912cc0040060b513259800800c16e0b705b8992cc004c19800e2b300100782e44c96600200305d82ec1760bb1332259800800c17e264b300100183041820c10608992cc004c1ac00e2602060d602306141a06eb800506b1834000a0cc375c00260ce0108340c19401d06341710631bad00182da0cc306300141846eb4004c18800a0b08318c18000505e1bac001305f00282ac155060182e800a0b6305937540030534159053829c14e0a682f0c16c00905941410571bae001416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c1bae001304d002413860960028248c11cdd5003410504441050234105023410502341050234105023410502341050234105023410502341050484106083041820a0983049001411c6eb0004c12000a07d03e4124608c0028220c11800a07903c81e40f10471822000a084304400281d40ea07503a411460840028200c10800a07103881c40e10431820000a07c304000281b40da06d0364104607c00281e0c0f800a06903481a40d103f181e000a074303c00281940ca06503240f4607400281c0c0e800a06103081840c103b181c000a06c303800281740ba05d02e40e4606c00281a0c0d800a05902c81640b1037181a000a064303400281540aa05502a40d460640028180c0b8dd5000c0a102b40a102f40a20510288142066303000140b86eb8004c0bc0090301816800a0563029375400502340982003022811408a0448168c9660026026604e6ea8006264b30013015302837540031302c30293754003153302749013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601860506ea8c034c0a0dd5181598141baa0018a998132494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946600a00446601e600a6eacc034c0a0dd5180698141baa0010020c054dd50049b8748010dc3a400100a805402a01480c8c054004c054c058004c044dd5001c5900e0c040004c02cdd5008c5268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"590c000101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758604a604c604c604c604c604c604c604c604c60446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8c8ca6002606e003303700b981b8054c0dc026606e0113037007981b8034c0dc016606e00930370039bac3037002488888888889660026086019133021304201713302100a1330210091330210081330210071330210061330210051330210041330210031598009819181f1baa002899191919194c004dd71823800cdd71823802cdd718238024dd71823801cdd71823801244444b3001304d00689981a005912cc00400a2b3001303e304a375402f132323259800982900144cc0f0c14400c4c966002608400313259800982a000c4c8c966002608a00313259800982b800c4cc104c1580040c22c82a0c148dd500145660026092003132323298009bad30580019bad30580039bad305800248896600260b80090358b20b2182c000982b80098291baa0028b20a0414060a06ea8004c14c0062c8288c13cdd50014566002608c00315980098279baa00281645905045904d209a304d375400316413c60a000260a000260966ea805e2c824a264b3001303f304b37540031323232332259800982a801c4c8c8cc896600260b20071300b305900c8b20ac375c60ac0026eb8c158008c158004dd6182a002c590521bad3052001375a60a400460a400260a200260986ea80062c8250c13800904c45904a0c11c004c118004c114004c110004c0fcdd500145903d4590400c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815000c590281bae3028001302900130243754005164088200264b300130163022375400313259800980c18119baa0018981398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601",_data.Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");});var V1_0ProtocolManagementProtocolManagementWithdraw=exports.V1_0ProtocolManagementProtocolManagementWithdraw=/*#__PURE__*/_createClass(function V1_0ProtocolManagementProtocolManagementWithdraw(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProtocolManagementProtocolManagementWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401":"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0ProtocolManagementProtocolManagementPublish=exports.V1_0ProtocolManagementProtocolManagementPublish=/*#__PURE__*/_createClass(function V1_0ProtocolManagementProtocolManagementPublish(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProtocolManagementProtocolManagementPublish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401":"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0ProtocolManagementProtocolManagementElse=exports.V1_0ProtocolManagementProtocolManagementElse=/*#__PURE__*/_createClass(function V1_0ProtocolManagementProtocolManagementElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProtocolManagementProtocolManagementElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401":"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0ProtocolMintProtocolMintWithdraw=exports.V1_0ProtocolMintProtocolMintWithdraw=/*#__PURE__*/_createClass(function V1_0ProtocolMintProtocolMintWithdraw(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProtocolMintProtocolMintWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0ProtocolMintProtocolMintPublish=exports.V1_0ProtocolMintProtocolMintPublish=/*#__PURE__*/_createClass(function V1_0ProtocolMintProtocolMintPublish(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProtocolMintProtocolMintPublish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0ProtocolMintProtocolMintElse=exports.V1_0ProtocolMintProtocolMintElse=/*#__PURE__*/_createClass(function V1_0ProtocolMintProtocolMintElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProtocolMintProtocolMintElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw=exports.V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw=/*#__PURE__*/_createClass(function V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw(proxyPolicyId,mintValidator,stakeValidator,managementValidator){var trace=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;_classCallCheck(this,V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",_data.Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");});var V1_0ProtocolOrchestratorProtocolOrchestratorPublish=exports.V1_0ProtocolOrchestratorProtocolOrchestratorPublish=/*#__PURE__*/_createClass(function V1_0ProtocolOrchestratorProtocolOrchestratorPublish(proxyPolicyId,mintValidator,stakeValidator,managementValidator){var trace=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;_classCallCheck(this,V1_0ProtocolOrchestratorProtocolOrchestratorPublish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",_data.Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");});var V1_0ProtocolOrchestratorProtocolOrchestratorElse=exports.V1_0ProtocolOrchestratorProtocolOrchestratorElse=/*#__PURE__*/_createClass(function V1_0ProtocolOrchestratorProtocolOrchestratorElse(proxyPolicyId,mintValidator,stakeValidator,managementValidator){var trace=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;_classCallCheck(this,V1_0ProtocolOrchestratorProtocolOrchestratorElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",_data.Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");});var V1_0ProtocolStakeProtocolStakeWithdraw=exports.V1_0ProtocolStakeProtocolStakeWithdraw=/*#__PURE__*/_createClass(function V1_0ProtocolStakeProtocolStakeWithdraw(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProtocolStakeProtocolStakeWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441":"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0ProtocolStakeProtocolStakePublish=exports.V1_0ProtocolStakeProtocolStakePublish=/*#__PURE__*/_createClass(function V1_0ProtocolStakeProtocolStakePublish(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProtocolStakeProtocolStakePublish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441":"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0ProtocolStakeProtocolStakeElse=exports.V1_0ProtocolStakeProtocolStakeElse=/*#__PURE__*/_createClass(function V1_0ProtocolStakeProtocolStakeElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProtocolStakeProtocolStakeElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441":"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0ProxyNftProxyNftMint=exports.V1_0ProxyNftProxyNftMint=/*#__PURE__*/_createClass(function V1_0ProxyNftProxyNftMint(utxoRef){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProxyNftProxyNftMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");});var V1_0ProxyNftProxyNftElse=exports.V1_0ProxyNftProxyNftElse=/*#__PURE__*/_createClass(function V1_0ProxyNftProxyNftElse(utxoRef){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0ProxyNftProxyNftElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");});var V1_0RealfiMintingPolicyRealfiMintingPolicyMint=exports.V1_0RealfiMintingPolicyRealfiMintingPolicyMint=/*#__PURE__*/_createClass(function V1_0RealfiMintingPolicyRealfiMintingPolicyMint(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0RealfiMintingPolicyRealfiMintingPolicyMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0RealfiMintingPolicyRealfiMintingPolicyElse=exports.V1_0RealfiMintingPolicyRealfiMintingPolicyElse=/*#__PURE__*/_createClass(function V1_0RealfiMintingPolicyRealfiMintingPolicyElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0RealfiMintingPolicyRealfiMintingPolicyElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0StakingVaultStakingVaultMint=exports.V1_0StakingVaultStakingVaultMint=/*#__PURE__*/_createClass(function V1_0StakingVaultStakingVaultMint(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0StakingVaultStakingVaultMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_0StakingVaultStakingVaultSpend=exports.V1_0StakingVaultStakingVaultSpend=/*#__PURE__*/_createClass(function V1_0StakingVaultStakingVaultSpend(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0StakingVaultStakingVaultSpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_0StakingVaultStakingVaultElse=exports.V1_0StakingVaultStakingVaultElse=/*#__PURE__*/_createClass(function V1_0StakingVaultStakingVaultElse(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0StakingVaultStakingVaultElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_0TreasuryTreasuryMint=exports.V1_0TreasuryTreasuryMint=/*#__PURE__*/_createClass(function V1_0TreasuryTreasuryMint(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0TreasuryTreasuryMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_0TreasuryTreasurySpend=exports.V1_0TreasuryTreasurySpend=/*#__PURE__*/_createClass(function V1_0TreasuryTreasurySpend(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0TreasuryTreasurySpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_0TreasuryTreasuryElse=exports.V1_0TreasuryTreasuryElse=/*#__PURE__*/_createClass(function V1_0TreasuryTreasuryElse(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0TreasuryTreasuryElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0/index.js.map b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0/index.js.map new file mode 100644 index 0000000000..8b81f34c63 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_uplc","require","_data","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","a","n","TypeError","_defineProperty","value","i","_toPrimitive","toPrimitive","call","String","Number","PolicyId","Type","ScriptHash","Contracts","Module","Bool","Boolean","Tuple_VerificationKey_COSESign1","Tuple","Ref","COSESign1","headers","payload","Optional","signature","ctor","HeaderMap","Headers","unprotected","MultisigScript","Union","Signature","key_hash","AllOf","scripts","Array","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Destination","address","payment_credential","VerificationKey","stake_credential","Inline","Pointer","slot_number","transaction_index","certificate_index","datum","Literal","DatumHash","InlineDatum","TPlutusData","DirectRequestV1","destination","amount","origin","transaction_id","output_index","ExchangeRequestV1","min_received","reserve_asset","ExtraProtocolRedeemerV1","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","Nonce","UTxO","Validity","lower_bound","bound_type","Finite","is_inclusive","upper_bound","OrderActionV1","OMint","ORedeem","ODeposit","principal","OWithdraw","OStake","OUnstake","forfeit","ODirectMint","ODirectBurn","OrderDatumV1","owner","action","data","OrderRedeemerV1","ProtocolRedeemerV1","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","DirectMint","DirectBurn","ProxyDatumV1","logic","settings","RegistryV1","treasury","usdr","order","staking_vault","yield_oracle","ReserveAsset","asset","numerator","denominator","SettingsV1","mint_permission","burn_permission","withdraw_permission","deposit_permission","stake_permission","unstake_permission","direct_mint_permission","direct_burn_permission","yield_oracle_permission","registry","reserve_assets","unstaked_yield_pot","SignedPayload_ProtocolRedeemerV1","nonce","SignedRedeemer_ExtraProtocolRedeemerV1","extra","signatures","StakeRequestV1","StakingVaultRedeemerV1","Undefined","TreasuryDatumV1","circulating_supply","TreasuryRequestV1","VaultDatumV1","circulating_susdr","exports","Import","V1_0OrderOrderSpend","proxyPolicyId","protocolScripthash","trace","arguments","undefined","cborToScript","applyParamsToScript","V1_0OrderOrderElse","V1_0ProtocolManagementProtocolManagementWithdraw","V1_0ProtocolManagementProtocolManagementPublish","V1_0ProtocolManagementProtocolManagementElse","V1_0ProtocolMintProtocolMintWithdraw","V1_0ProtocolMintProtocolMintPublish","V1_0ProtocolMintProtocolMintElse","V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw","mintValidator","stakeValidator","managementValidator","V1_0ProtocolOrchestratorProtocolOrchestratorPublish","V1_0ProtocolOrchestratorProtocolOrchestratorElse","V1_0ProtocolStakeProtocolStakeWithdraw","V1_0ProtocolStakeProtocolStakePublish","V1_0ProtocolStakeProtocolStakeElse","V1_0ProxyNftProxyNftMint","utxoRef","V1_0ProxyNftProxyNftElse","V1_0RealfiMintingPolicyRealfiMintingPolicyMint","V1_0RealfiMintingPolicyRealfiMintingPolicyElse","V1_0StakingVaultStakingVaultMint","V1_0StakingVaultStakingVaultSpend","V1_0StakingVaultStakingVaultElse","V1_0TreasuryTreasuryMint","V1_0TreasuryTreasurySpend","V1_0TreasuryTreasuryElse"],"sources":["../../../../src/generated-types/v1_0/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\ntype Data = Exact;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\nconst ScriptHash = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n Bool: Type.Boolean(),\n Tuple_VerificationKey_COSESign1: Type.Tuple([\n Type.String(),\n Type.Ref(\"COSESign1\"),\n ]),\n COSESign1: Type.Object(\n {\n headers: Type.Ref(\"Headers\"),\n payload: Type.Optional(Type.String()),\n signature: Type.String(),\n },\n { ctor: 0n },\n ),\n HeaderMap: Type.String(),\n Headers: Type.Object(\n {\n protected: Type.Ref(\"HeaderMap\"),\n unprotected: Type.Ref(\"HeaderMap\"),\n },\n { ctor: 0n },\n ),\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object(\n {\n key_hash: Type.String(),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n AllOf: Type.Object(\n {\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n AnyOf: Type.Object(\n {\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n AtLeast: Type.Object(\n {\n required: Type.BigInt(),\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n Before: Type.Object(\n {\n time: Type.BigInt(),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n After: Type.Object(\n {\n time: Type.BigInt(),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n Script: Type.Object(\n {\n script_hash: Type.String(),\n },\n { ctor: 6n },\n ),\n }),\n ]),\n Asset: Type.Tuple([Type.String(), Type.String()]),\n Destination: Type.Object(\n {\n address: Type.Object(\n {\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple(\n [\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], {\n ctor: 0n,\n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Pointer: Type.Object(\n {\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n },\n { ctor: 1n },\n ),\n }),\n ]),\n ),\n },\n { ctor: 0n },\n ),\n datum: Type.Union([\n Type.Literal(\"NoDatum\", { ctor: 0n }),\n Type.Object({\n DatumHash: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n Type.Object({\n InlineDatum: Type.Tuple([TPlutusData], { ctor: 2n }),\n }),\n ]),\n },\n { ctor: 0n },\n ),\n DirectRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n ExchangeRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n ExtraProtocolRedeemerV1: Type.Object(\n {\n request_to_outputs: Type.Array(Type.BigInt()),\n input_to_requests: Type.Array(Type.BigInt()),\n treasury_input_idx: Type.BigInt(),\n treasury_output_idx: Type.BigInt(),\n vault_input_idx: Type.Optional(Type.BigInt()),\n vault_output_idx: Type.Optional(Type.BigInt()),\n },\n { ctor: 0n },\n ),\n Nonce: Type.Union([\n Type.Object({\n UTxO: Type.Tuple(\n [\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Validity: Type.Tuple(\n [\n Type.Object(\n {\n lower_bound: Type.Object(\n {\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }),\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n },\n { ctor: 0n },\n ),\n upper_bound: Type.Object(\n {\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }),\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n ],\n { ctor: 1n },\n ),\n }),\n ]),\n OrderActionV1: Type.Union([\n Type.Object({\n OMint: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n ORedeem: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n ODeposit: Type.Object(\n {\n principal: Type.BigInt(),\n yield: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n OWithdraw: Type.Object(\n {\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n OStake: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n OUnstake: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n forfeit: Type.BigInt(),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n ODirectMint: Type.Object(\n {\n amount: Type.BigInt(),\n },\n { ctor: 6n },\n ),\n }),\n Type.Object({\n ODirectBurn: Type.Object(\n {\n amount: Type.BigInt(),\n },\n { ctor: 7n },\n ),\n }),\n ]),\n OrderDatumV1: Type.Object(\n {\n owner: Type.Ref(\"MultisigScript\"),\n destination: Type.Ref(\"Destination\"),\n action: Type.Ref(\"OrderActionV1\"),\n data: TPlutusData,\n },\n { ctor: 0n },\n ),\n OrderRedeemerV1: Type.Union([\n Type.Literal(\"Execute\", { ctor: 0n }),\n Type.Literal(\"Cancel\", { ctor: 1n }),\n Type.Literal(\"Invalidated\", { ctor: 2n }),\n ]),\n ProtocolRedeemerV1: Type.Union([\n Type.Object({\n Mint: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"ExchangeRequestV1\")),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Burn: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"ExchangeRequestV1\")),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n Withdraw: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"TreasuryRequestV1\")),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n Deposit: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"TreasuryRequestV1\")),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n Stake: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"StakeRequestV1\")),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n Unstake: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"StakeRequestV1\")),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n DirectMint: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"DirectRequestV1\")),\n },\n { ctor: 6n },\n ),\n }),\n Type.Object({\n DirectBurn: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"DirectRequestV1\")),\n },\n { ctor: 7n },\n ),\n }),\n ]),\n ProxyDatumV1: Type.Object(\n {\n logic: Type.String(),\n settings: Type.Ref(\"SettingsV1\"),\n },\n { ctor: 0n },\n ),\n RegistryV1: Type.Object(\n {\n treasury: Type.String(),\n usdr: Type.String(),\n order: Type.String(),\n staking_vault: Type.String(),\n yield_oracle: Type.String(),\n },\n { ctor: 0n },\n ),\n ReserveAsset: Type.Object(\n {\n asset: Type.Ref(\"Asset\"),\n numerator: Type.BigInt(),\n denominator: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n SettingsV1: Type.Object(\n {\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n withdraw_permission: Type.Ref(\"MultisigScript\"),\n deposit_permission: Type.Ref(\"MultisigScript\"),\n stake_permission: Type.Ref(\"MultisigScript\"),\n unstake_permission: Type.Ref(\"MultisigScript\"),\n direct_mint_permission: Type.Ref(\"MultisigScript\"),\n direct_burn_permission: Type.Ref(\"MultisigScript\"),\n yield_oracle_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"RegistryV1\"),\n reserve_assets: Type.Array(Type.Ref(\"ReserveAsset\")),\n unstaked_yield_pot: Type.Object(\n {\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple(\n [\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], {\n ctor: 0n,\n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Pointer: Type.Object(\n {\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n },\n { ctor: 1n },\n ),\n }),\n ]),\n ),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n SignedPayload_ProtocolRedeemerV1: Type.Object(\n {\n action: Type.Ref(\"ProtocolRedeemerV1\"),\n nonce: Type.Ref(\"Nonce\"),\n },\n { ctor: 0n },\n ),\n SignedRedeemer_ExtraProtocolRedeemerV1: Type.Object(\n {\n extra: Type.Ref(\"ExtraProtocolRedeemerV1\"),\n payload: Type.Ref(\"SignedPayload_ProtocolRedeemerV1\"),\n signatures: Type.Array(Type.Ref(\"Tuple_VerificationKey_COSESign1\")),\n },\n { ctor: 0n },\n ),\n StakeRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n forfeit: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n StakingVaultRedeemerV1: Type.Undefined(),\n TreasuryDatumV1: Type.Object(\n {\n circulating_supply: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n TreasuryRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n yield: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n VaultDatumV1: Type.Object(\n {\n circulating_susdr: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n});\n\nexport const Bool = Contracts.Import(\"Bool\");\nexport type Bool = Exact;\nexport const Tuple_VerificationKey_COSESign1 = Contracts.Import(\n \"Tuple_VerificationKey_COSESign1\",\n);\nexport type Tuple_VerificationKey_COSESign1 = Exact<\n typeof Tuple_VerificationKey_COSESign1\n>;\nexport const COSESign1 = Contracts.Import(\"COSESign1\");\nexport type COSESign1 = Exact;\nexport const HeaderMap = Contracts.Import(\"HeaderMap\");\nexport type HeaderMap = Exact;\nexport const Headers = Contracts.Import(\"Headers\");\nexport type Headers = Exact;\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Destination = Contracts.Import(\"Destination\");\nexport type Destination = Exact;\nexport const DirectRequestV1 = Contracts.Import(\"DirectRequestV1\");\nexport type DirectRequestV1 = Exact;\nexport const ExchangeRequestV1 = Contracts.Import(\"ExchangeRequestV1\");\nexport type ExchangeRequestV1 = Exact;\nexport const ExtraProtocolRedeemerV1 = Contracts.Import(\n \"ExtraProtocolRedeemerV1\",\n);\nexport type ExtraProtocolRedeemerV1 = Exact;\nexport const Nonce = Contracts.Import(\"Nonce\");\nexport type Nonce = Exact;\nexport const OrderActionV1 = Contracts.Import(\"OrderActionV1\");\nexport type OrderActionV1 = Exact;\nexport const OrderDatumV1 = Contracts.Import(\"OrderDatumV1\");\nexport type OrderDatumV1 = Exact;\nexport const OrderRedeemerV1 = Contracts.Import(\"OrderRedeemerV1\");\nexport type OrderRedeemerV1 = Exact;\nexport const ProtocolRedeemerV1 = Contracts.Import(\"ProtocolRedeemerV1\");\nexport type ProtocolRedeemerV1 = Exact;\nexport const ProxyDatumV1 = Contracts.Import(\"ProxyDatumV1\");\nexport type ProxyDatumV1 = Exact;\nexport const RegistryV1 = Contracts.Import(\"RegistryV1\");\nexport type RegistryV1 = Exact;\nexport const ReserveAsset = Contracts.Import(\"ReserveAsset\");\nexport type ReserveAsset = Exact;\nexport const SettingsV1 = Contracts.Import(\"SettingsV1\");\nexport type SettingsV1 = Exact;\nexport const SignedPayload_ProtocolRedeemerV1 = Contracts.Import(\n \"SignedPayload_ProtocolRedeemerV1\",\n);\nexport type SignedPayload_ProtocolRedeemerV1 = Exact<\n typeof SignedPayload_ProtocolRedeemerV1\n>;\nexport const SignedRedeemer_ExtraProtocolRedeemerV1 = Contracts.Import(\n \"SignedRedeemer_ExtraProtocolRedeemerV1\",\n);\nexport type SignedRedeemer_ExtraProtocolRedeemerV1 = Exact<\n typeof SignedRedeemer_ExtraProtocolRedeemerV1\n>;\nexport const StakeRequestV1 = Contracts.Import(\"StakeRequestV1\");\nexport type StakeRequestV1 = Exact;\nexport const StakingVaultRedeemerV1 = Contracts.Import(\n \"StakingVaultRedeemerV1\",\n);\nexport type StakingVaultRedeemerV1 = Exact;\nexport const TreasuryDatumV1 = Contracts.Import(\"TreasuryDatumV1\");\nexport type TreasuryDatumV1 = Exact;\nexport const TreasuryRequestV1 = Contracts.Import(\"TreasuryRequestV1\");\nexport type TreasuryRequestV1 = Exact;\nexport const VaultDatumV1 = Contracts.Import(\"VaultDatumV1\");\nexport type VaultDatumV1 = Exact;\n\nexport class V1_0OrderOrderSpend {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5916b70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d6572563100164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b30010078999119912cc004c00c0062b30013018375401700280720328acc004c0240062b30013018375401700280720328acc004c0100062b3001301837540170028072032807202a405480a8660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009810801c01a00a80f0dd7000a042301e001407060346ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026042007006802a03c375c0028108c07800501c180d1baa004801202e405c60306ea800e44b30010018a5eb82266034602e603600266004004603800280ca44646600200200644b30010018a508acc004cdc79bae301d0010038a51899801001180f000a02e406d223233001001003223300300130020029180d180d800c8c068c06cc06c00646034603660366036603660366036603660366036003301537540132301a301b301b301b301b301b301b001911919800800801912cc00400629422b30013375e0066032603a00314a3133002002301e001405c80da6e012001488888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260226605200297ae0899801801981580120483029001409d300a00a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c068006264b300100180344c966002003007803c4c96600260600071330120012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980a800c4c9660020030068992cc00400600f0078992cc004c0c000e26602400244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b30013370e9003000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0cc00e26602a00244b300100280544c96600200319800806c00626004606c006806a01d00e8074039037181a0012064805a060375800300a8052066303000140b86eb4004c0bc00a00e8180c0b400502b18149baa0038acc004cdc3a401000313259800800c01a264b3001001803c01e00f132598009818001c0160108168dd6800c01d0301816800a0563029375400715980099b8748028006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013030003802c02102d1bae00140c0605a0028158c0a4dd5001c015026204c40988131026204c4098604e6ea80092223322598009809004c4cc8966002602860506ea8006264b3001301b3029375400315980099b8f375c605a60546ea8004dd7180718151baa300d302a3754601e60546ea800e330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640a9222232330010010052259800800c4016264b3001001899802181a00100344cc014c0d0008cc00c00c005032181a000a0629bab300b302a37540353374a9001198161ba90254bd7024444646464a6605e66e592410d63726564656e7469616c3a3a200037333001001802522100400426602200a00844464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20725980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81990331bac3036002375a60680026466ec0dd4181a0009ba73035001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6072003337149101023a200098008054c0e800600a805100a181e00144ca6002015303900199b8a489023a200098008054c0e8006600e66008008004805100a181e0012074303c00140e466e29220102207d0000340d86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a206c3758007133005375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40e066e2ccdc0000acc004cdc4000a4029148182290372070004401866e0c00520203370c002901019b8e00400240d46eb800d0391b8a4881022c20002232330010010032259800980f000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c08180c010011153302849013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016409d023409c605860526ea8c0b0c0a4dd5180718149baa302c302937540030214098660026eb0c030c09cdd500b811998011bac302a3027375402e02b159800980c004c5660026024604c6ea805233001302a302737546054604e6ea80526eb0c0a8c0acc0acc0acc0acc0acc0acc0acc0acc09cdd500bcc0a8c0acc0acc0acc0acc0acc0acc0acc09cdd500bcdd5980418139baa01748888c8cc00400401488c9660026032003133015006375c6062605c6ea800a2b3001301f001899198008009bac3032302f375400644b30010018a518acc004cc014014c0cc006266004004606800314a08169031456600260340031323300100137586064605e6ea800c896600200314a1159800998028029819800c528c4cc008008c0d000502d20628acc004cdc3a400c003132337126eb4c0c8004c8cc004004dd61819981a001112cc0040062900044cc896600266010010005133700002900144005030181a00099801001181a800a064302e375400515980099b87480200062646644b3001302230303754005159800981118181baa30343035003899b89375a606860626ea8008006266e20dd6981a18189baa00200140b914a08170c0c8004dd6981918179baa003302e37546026605c6ea80162b30013370e9005000c4c8cc8966002604460606ea800a2b30013022303037546068606a0071337120026eb4c0d0c0c4dd500144cdc40009bad3034303137540048172294102e18190009bad3032302f3754006605c6ea8c0c4c0b8dd5002c4cc038010cdd2a4004660606062605c6ea80092f5c0815902b205640ac815902b18161baa001407902445660026024604c6ea805233001302a302737540293300137586018604e6ea805c08e660046eb0c0a8c09cdd500b80aa444b30013015302937540031323259800980e98159baa0018acc0056600330013371e6eb8c040c0b0dd5180798161baa3011302c37540086eb8c0bcc0b0dd5000d28528a0528a518cc004cdc79bae302f302c375400804f4a14a2814902944c966002603060586ea8006264b30013019302d375400313259800980d18171baa0018992cc004cdd7981998181baa001301a33032301a3303230333030375400897ae0330324c103d87a80004bd704660026eacc054c0c0dd5000cc054c0c0dd5180a98181baa0069119b89337020026eb4c0d4c0d8c0d8c0d8c0c8dd50110012444b30010028a508994c004c966002604060686ea800626eb4c0d4c0e0dd5981c181a9baa0018a40008190c0dc0066ebcc0dcc0e00066eac00d22259800800c566002600400d13300500348002294103444c96600266ebcc0dc0053010140008acc004cc018010dd6981c181d9bab3038001898019ba6303c0028a5040d51598009980300224001130030078a5040d481a8c0e80050380ca6002003004911981c0011981c1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0d80066eacc0dc00660760069112cc004cdc8a441000038acc004cdc7a4410000389980298121981e1ba60024bd70000c4cc015300103d87a800000640dd19800803c006446600e0046607c66ec0dd48029ba6004001401c81b8607200481ba2942294229410382294102d181918179baa0018a99816a493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640b065300130010019bad3032302f375400537586026605e6ea807d2225980099b8800248002298103d87a8000899801800801205e1112cc00400a298103d87a80008acc004c0700062603666066606800497ae08cc00400e606a0053010001400c8171032454cc0b124014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640ac6530010019bac3031302e375403d480010011112cc00400a298103d87a80008acc004cdd7981980100344c068cc0c8dd4000a5eb8233001003981a0014cdc0000a4004801902d20628a99815a48131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640a8605e60586ea80162a660549201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640a502540a4605c60566ea8c0b8c0acdd5180818159baa001302d302a3754003022409c80f20484090812088cc0140088cdd7981598141baa001002223259800800c4c966002602860506ea800a264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0c800a2b30013019302d375400313259800800c0a6264b30010018992cc00400605713259800800c4c96600200302d8992cc004006264b3001001817c4c96600200313259800800c0c6264b30010018992cc00400606713259800800c4c9660020030358992cc004006264b300100181bc4c96600200313259800800c0e6264b30010018992cc00400607713259800800c4c96600200303d8992cc00400607d03e899912cc00400608113259800800c56600260960051980080c46600202d1980080a4660020251980080846600201d198008064660020151980080445660026064608c6ea801a264b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4cc896600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f13259800982d001c4cc0f004889660020051598009821982b9baa0128992cc0040060a713259800800c4c9660020030558992cc0040062b300130600028cc00400e264b300130480018992cc0040060b113259800800c56600260c6005132598009825800c4c96600200305b8992cc0040062b300130660028cc00400607505c412d05c418d05c82e41720b88338c19000506218301baa0028acc004c144006264b300100182dc4c96600200305c82e417226644b300100182f44c96600200305f82fc17e26644b3001001830c4c966002003062831418a264b3001306d003820c18d06a1bad00183120da306a00141a06eb4004c1a400a0be8350c19c0050651bad001306600282e20ce3064001418860c06ea800a0b482e905d182f1baa00182ca0c082cc1660b3059419060c200282f8c174dd50014566002609c003159800982e9baa00281ac15d05e415d05a20b4305b37540030564115056417505682b415a0ac8308c17800505c182f00141520a905482a20be305c001416860b06ea804a0a482aa264b30010018acc004c110c160dd5000c4c9660020030548992cc0040060ab055899912cc0040060af13259800800c1620b1058899912cc0040060b513259800800c16e0b705b8992cc004c19800e2b300100782e44c96600200305d82ec1760bb1332259800800c17e264b300100183041820c10608992cc004c1ac00e2602060d602306141a06eb800506b1834000a0cc375c00260ce0108340c19401d06341710631bad00182da0cc306300141846eb4004c18800a0b08318c18000505e1bac001305f00282ac155060182e800a0b6305937540030534159053829c14e0a682f0c16c00905941410571bae001416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c1bae001304d002413860960028248c11cdd5003410504441050234105023410502341050234105023410502341050234105023410502341050484106083041820a0983049001411c6eb0004c12000a07d03e4124608c0028220c11800a07903c81e40f10471822000a084304400281d40ea07503a411460840028200c10800a07103881c40e10431820000a07c304000281b40da06d0364104607c00281e0c0f800a06903481a40d103f181e000a074303c00281940ca06503240f4607400281c0c0e800a06103081840c103b181c000a06c303800281740ba05d02e40e4606c00281a0c0d800a05902c81640b1037181a000a064303400281540aa05502a40d460640028180c0b8dd5000c0a102b40a102f40a20510288142066303000140b86eb8004c0bc0090301816800a0563029375400502340982003022811408a0448168c9660026026604e6ea8006264b30013015302837540031302c30293754003153302749013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601860506ea8c034c0a0dd5181598141baa0018a998132494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946600a00446601e600a6eacc034c0a0dd5180698141baa0010020c054dd50049b8748010dc3a400100a805402a01480c8c054004c054c058004c044dd5001c5900e0c040004c02cdd5008c5268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"590c000101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758604a604c604c604c604c604c604c604c604c60446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8c8ca6002606e003303700b981b8054c0dc026606e0113037007981b8034c0dc016606e00930370039bac3037002488888888889660026086019133021304201713302100a1330210091330210081330210071330210061330210051330210041330210031598009819181f1baa002899191919194c004dd71823800cdd71823802cdd718238024dd71823801cdd71823801244444b3001304d00689981a005912cc00400a2b3001303e304a375402f132323259800982900144cc0f0c14400c4c966002608400313259800982a000c4c8c966002608a00313259800982b800c4cc104c1580040c22c82a0c148dd500145660026092003132323298009bad30580019bad30580039bad305800248896600260b80090358b20b2182c000982b80098291baa0028b20a0414060a06ea8004c14c0062c8288c13cdd50014566002608c00315980098279baa00281645905045904d209a304d375400316413c60a000260a000260966ea805e2c824a264b3001303f304b37540031323232332259800982a801c4c8c8cc896600260b20071300b305900c8b20ac375c60ac0026eb8c158008c158004dd6182a002c590521bad3052001375a60a400460a400260a200260986ea80062c8250c13800904c45904a0c11c004c118004c114004c110004c0fcdd500145903d4590400c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815000c590281bae3028001302900130243754005164088200264b300130163022375400313259800980c18119baa0018981398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601\",\n Type.Tuple([PolicyId, ScriptHash]),\n [proxyPolicyId, protocolScripthash],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0OrderOrderElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5916b70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d6572563100164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b30010078999119912cc004c00c0062b30013018375401700280720328acc004c0240062b30013018375401700280720328acc004c0100062b3001301837540170028072032807202a405480a8660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009810801c01a00a80f0dd7000a042301e001407060346ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026042007006802a03c375c0028108c07800501c180d1baa004801202e405c60306ea800e44b30010018a5eb82266034602e603600266004004603800280ca44646600200200644b30010018a508acc004cdc79bae301d0010038a51899801001180f000a02e406d223233001001003223300300130020029180d180d800c8c068c06cc06c00646034603660366036603660366036603660366036003301537540132301a301b301b301b301b301b301b001911919800800801912cc00400629422b30013375e0066032603a00314a3133002002301e001405c80da6e012001488888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260226605200297ae0899801801981580120483029001409d300a00a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c068006264b300100180344c966002003007803c4c96600260600071330120012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980a800c4c9660020030068992cc00400600f0078992cc004c0c000e26602400244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b30013370e9003000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0cc00e26602a00244b300100280544c96600200319800806c00626004606c006806a01d00e8074039037181a0012064805a060375800300a8052066303000140b86eb4004c0bc00a00e8180c0b400502b18149baa0038acc004cdc3a401000313259800800c01a264b3001001803c01e00f132598009818001c0160108168dd6800c01d0301816800a0563029375400715980099b8748028006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013030003802c02102d1bae00140c0605a0028158c0a4dd5001c015026204c40988131026204c4098604e6ea80092223322598009809004c4cc8966002602860506ea8006264b3001301b3029375400315980099b8f375c605a60546ea8004dd7180718151baa300d302a3754601e60546ea800e330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640a9222232330010010052259800800c4016264b3001001899802181a00100344cc014c0d0008cc00c00c005032181a000a0629bab300b302a37540353374a9001198161ba90254bd7024444646464a6605e66e592410d63726564656e7469616c3a3a200037333001001802522100400426602200a00844464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20725980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81990331bac3036002375a60680026466ec0dd4181a0009ba73035001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6072003337149101023a200098008054c0e800600a805100a181e00144ca6002015303900199b8a489023a200098008054c0e8006600e66008008004805100a181e0012074303c00140e466e29220102207d0000340d86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a206c3758007133005375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40e066e2ccdc0000acc004cdc4000a4029148182290372070004401866e0c00520203370c002901019b8e00400240d46eb800d0391b8a4881022c20002232330010010032259800980f000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c08180c010011153302849013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016409d023409c605860526ea8c0b0c0a4dd5180718149baa302c302937540030214098660026eb0c030c09cdd500b811998011bac302a3027375402e02b159800980c004c5660026024604c6ea805233001302a302737546054604e6ea80526eb0c0a8c0acc0acc0acc0acc0acc0acc0acc0acc09cdd500bcc0a8c0acc0acc0acc0acc0acc0acc0acc09cdd500bcdd5980418139baa01748888c8cc00400401488c9660026032003133015006375c6062605c6ea800a2b3001301f001899198008009bac3032302f375400644b30010018a518acc004cc014014c0cc006266004004606800314a08169031456600260340031323300100137586064605e6ea800c896600200314a1159800998028029819800c528c4cc008008c0d000502d20628acc004cdc3a400c003132337126eb4c0c8004c8cc004004dd61819981a001112cc0040062900044cc896600266010010005133700002900144005030181a00099801001181a800a064302e375400515980099b87480200062646644b3001302230303754005159800981118181baa30343035003899b89375a606860626ea8008006266e20dd6981a18189baa00200140b914a08170c0c8004dd6981918179baa003302e37546026605c6ea80162b30013370e9005000c4c8cc8966002604460606ea800a2b30013022303037546068606a0071337120026eb4c0d0c0c4dd500144cdc40009bad3034303137540048172294102e18190009bad3032302f3754006605c6ea8c0c4c0b8dd5002c4cc038010cdd2a4004660606062605c6ea80092f5c0815902b205640ac815902b18161baa001407902445660026024604c6ea805233001302a302737540293300137586018604e6ea805c08e660046eb0c0a8c09cdd500b80aa444b30013015302937540031323259800980e98159baa0018acc0056600330013371e6eb8c040c0b0dd5180798161baa3011302c37540086eb8c0bcc0b0dd5000d28528a0528a518cc004cdc79bae302f302c375400804f4a14a2814902944c966002603060586ea8006264b30013019302d375400313259800980d18171baa0018992cc004cdd7981998181baa001301a33032301a3303230333030375400897ae0330324c103d87a80004bd704660026eacc054c0c0dd5000cc054c0c0dd5180a98181baa0069119b89337020026eb4c0d4c0d8c0d8c0d8c0c8dd50110012444b30010028a508994c004c966002604060686ea800626eb4c0d4c0e0dd5981c181a9baa0018a40008190c0dc0066ebcc0dcc0e00066eac00d22259800800c566002600400d13300500348002294103444c96600266ebcc0dc0053010140008acc004cc018010dd6981c181d9bab3038001898019ba6303c0028a5040d51598009980300224001130030078a5040d481a8c0e80050380ca6002003004911981c0011981c1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0d80066eacc0dc00660760069112cc004cdc8a441000038acc004cdc7a4410000389980298121981e1ba60024bd70000c4cc015300103d87a800000640dd19800803c006446600e0046607c66ec0dd48029ba6004001401c81b8607200481ba2942294229410382294102d181918179baa0018a99816a493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640b065300130010019bad3032302f375400537586026605e6ea807d2225980099b8800248002298103d87a8000899801800801205e1112cc00400a298103d87a80008acc004c0700062603666066606800497ae08cc00400e606a0053010001400c8171032454cc0b124014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640ac6530010019bac3031302e375403d480010011112cc00400a298103d87a80008acc004cdd7981980100344c068cc0c8dd4000a5eb8233001003981a0014cdc0000a4004801902d20628a99815a48131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640a8605e60586ea80162a660549201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640a502540a4605c60566ea8c0b8c0acdd5180818159baa001302d302a3754003022409c80f20484090812088cc0140088cdd7981598141baa001002223259800800c4c966002602860506ea800a264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0c800a2b30013019302d375400313259800800c0a6264b30010018992cc00400605713259800800c4c96600200302d8992cc004006264b3001001817c4c96600200313259800800c0c6264b30010018992cc00400606713259800800c4c9660020030358992cc004006264b300100181bc4c96600200313259800800c0e6264b30010018992cc00400607713259800800c4c96600200303d8992cc00400607d03e899912cc00400608113259800800c56600260960051980080c46600202d1980080a4660020251980080846600201d198008064660020151980080445660026064608c6ea801a264b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4cc896600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f13259800982d001c4cc0f004889660020051598009821982b9baa0128992cc0040060a713259800800c4c9660020030558992cc0040062b300130600028cc00400e264b300130480018992cc0040060b113259800800c56600260c6005132598009825800c4c96600200305b8992cc0040062b300130660028cc00400607505c412d05c418d05c82e41720b88338c19000506218301baa0028acc004c144006264b300100182dc4c96600200305c82e417226644b300100182f44c96600200305f82fc17e26644b3001001830c4c966002003062831418a264b3001306d003820c18d06a1bad00183120da306a00141a06eb4004c1a400a0be8350c19c0050651bad001306600282e20ce3064001418860c06ea800a0b482e905d182f1baa00182ca0c082cc1660b3059419060c200282f8c174dd50014566002609c003159800982e9baa00281ac15d05e415d05a20b4305b37540030564115056417505682b415a0ac8308c17800505c182f00141520a905482a20be305c001416860b06ea804a0a482aa264b30010018acc004c110c160dd5000c4c9660020030548992cc0040060ab055899912cc0040060af13259800800c1620b1058899912cc0040060b513259800800c16e0b705b8992cc004c19800e2b300100782e44c96600200305d82ec1760bb1332259800800c17e264b300100183041820c10608992cc004c1ac00e2602060d602306141a06eb800506b1834000a0cc375c00260ce0108340c19401d06341710631bad00182da0cc306300141846eb4004c18800a0b08318c18000505e1bac001305f00282ac155060182e800a0b6305937540030534159053829c14e0a682f0c16c00905941410571bae001416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c1bae001304d002413860960028248c11cdd5003410504441050234105023410502341050234105023410502341050234105023410502341050484106083041820a0983049001411c6eb0004c12000a07d03e4124608c0028220c11800a07903c81e40f10471822000a084304400281d40ea07503a411460840028200c10800a07103881c40e10431820000a07c304000281b40da06d0364104607c00281e0c0f800a06903481a40d103f181e000a074303c00281940ca06503240f4607400281c0c0e800a06103081840c103b181c000a06c303800281740ba05d02e40e4606c00281a0c0d800a05902c81640b1037181a000a064303400281540aa05502a40d460640028180c0b8dd5000c0a102b40a102f40a20510288142066303000140b86eb8004c0bc0090301816800a0563029375400502340982003022811408a0448168c9660026026604e6ea8006264b30013015302837540031302c30293754003153302749013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601860506ea8c034c0a0dd5181598141baa0018a998132494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946600a00446601e600a6eacc034c0a0dd5180698141baa0010020c054dd50049b8748010dc3a400100a805402a01480c8c054004c054c058004c044dd5001c5900e0c040004c02cdd5008c5268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"590c000101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758604a604c604c604c604c604c604c604c604c60446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8c8ca6002606e003303700b981b8054c0dc026606e0113037007981b8034c0dc016606e00930370039bac3037002488888888889660026086019133021304201713302100a1330210091330210081330210071330210061330210051330210041330210031598009819181f1baa002899191919194c004dd71823800cdd71823802cdd718238024dd71823801cdd71823801244444b3001304d00689981a005912cc00400a2b3001303e304a375402f132323259800982900144cc0f0c14400c4c966002608400313259800982a000c4c8c966002608a00313259800982b800c4cc104c1580040c22c82a0c148dd500145660026092003132323298009bad30580019bad30580039bad305800248896600260b80090358b20b2182c000982b80098291baa0028b20a0414060a06ea8004c14c0062c8288c13cdd50014566002608c00315980098279baa00281645905045904d209a304d375400316413c60a000260a000260966ea805e2c824a264b3001303f304b37540031323232332259800982a801c4c8c8cc896600260b20071300b305900c8b20ac375c60ac0026eb8c158008c158004dd6182a002c590521bad3052001375a60a400460a400260a200260986ea80062c8250c13800904c45904a0c11c004c118004c114004c110004c0fcdd500145903d4590400c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815000c590281bae3028001302900130243754005164088200264b300130163022375400313259800980c18119baa0018981398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601\",\n Type.Tuple([PolicyId, ScriptHash]),\n [proxyPolicyId, protocolScripthash],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolManagementProtocolManagementWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolManagementProtocolManagementPublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolManagementProtocolManagementElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolMintProtocolMintWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolMintProtocolMintPublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolMintProtocolMintElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash]),\n [proxyPolicyId, mintValidator, stakeValidator, managementValidator],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolOrchestratorProtocolOrchestratorPublish {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash]),\n [proxyPolicyId, mintValidator, stakeValidator, managementValidator],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolOrchestratorProtocolOrchestratorElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash]),\n [proxyPolicyId, mintValidator, stakeValidator, managementValidator],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolStakeProtocolStakeWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441\"\n : \"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolStakeProtocolStakePublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441\"\n : \"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolStakeProtocolStakeElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441\"\n : \"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProxyNftProxyNftMint {\n public Script: Script;\n constructor(utxoRef: OutputReference, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n : \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ]),\n [utxoRef],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProxyNftProxyNftElse {\n public Script: Script;\n constructor(utxoRef: OutputReference, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n : \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ]),\n [utxoRef],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0RealfiMintingPolicyRealfiMintingPolicyMint {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0RealfiMintingPolicyRealfiMintingPolicyElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0StakingVaultStakingVaultMint {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0StakingVaultStakingVaultSpend {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0StakingVaultStakingVaultElse {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0TreasuryTreasuryMint {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0TreasuryTreasurySpend {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0TreasuryTreasuryElse {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0_rc1/index.js b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0_rc1/index.js new file mode 100644 index 0000000000..d6a64fc7c3 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0_rc1/index.js @@ -0,0 +1,3 @@ +"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.VaultDatumV1=exports.V1_0Rc1TreasuryTreasurySpend=exports.V1_0Rc1TreasuryTreasuryMint=exports.V1_0Rc1TreasuryTreasuryElse=exports.V1_0Rc1StakingVaultStakingVaultSpend=exports.V1_0Rc1StakingVaultStakingVaultMint=exports.V1_0Rc1StakingVaultStakingVaultElse=exports.V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint=exports.V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse=exports.V1_0Rc1ProxyNftProxyNftMint=exports.V1_0Rc1ProxyNftProxyNftElse=exports.V1_0Rc1ProtocolStakeProtocolStakeWithdraw=exports.V1_0Rc1ProtocolStakeProtocolStakeElse=exports.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw=exports.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish=exports.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse=exports.V1_0Rc1ProtocolMintProtocolMintWithdraw=exports.V1_0Rc1ProtocolMintProtocolMintElse=exports.V1_0Rc1ProtocolManagementProtocolManagementWithdraw=exports.V1_0Rc1ProtocolManagementProtocolManagementElse=exports.V1_0Rc1OrderOrderSpend=exports.V1_0Rc1OrderOrderElse=exports.Tuple_VerificationKey_COSESign1=exports.TreasuryRequestV1=exports.TreasuryDatumV1=exports.StakingVaultRedeemerV1=exports.SignedRedeemer_v1_0_ExtraProtocolRedeemerV1=exports.SignedPayload_v1_0_ProtocolRedeemerV1=exports.SettingsV1=exports.ReserveAsset=exports.RequestV1=exports.RegistryV1=exports.ProxyDatumV1=exports.ProtocolRedeemerV1=exports.OrderRedeemerV1=exports.OrderDatumV1=exports.OrderActionV1=exports.Nonce=exports.MultisigScript=exports.Headers=exports.HeaderMap=exports.ExtraProtocolRedeemerV1=exports.Destination=exports.COSESign1=exports.Bool=exports.Asset=void 0;var _uplc=require("@blaze-cardano/uplc");var _data=require("@blaze-cardano/data");function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function _defineProperties(e,r){for(var t=0;t2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0Rc1OrderOrderSpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5917090101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99802249286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d65725631001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b30010078999119912cc004c00c0062b30013019375401700280720348acc004c0240062b30013019375401700280720348acc004c0100062b3001301937540170028072034807202c405880b0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009811001c01a00a80f8dd7000a044301f001407460366ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026044007006802a03e375c0028110c07c00501d180d9baa0048012030406060326ea800e44b30010018a5eb822660366030603800266004004603a00280d2444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80ba44646600200200644b30010018a508acc004cdc79bae301e0010038a51899801001180f800a0304071222232330010010052259800800c4016264b3001001899802181080100344cc014c084008cc00c00c00501f1810800a03c9119198008008019119801800980100148c06cc070006460366038603800337009000c8c06cc070c070c070c070c070c070c070c070006602c6ea8026460366038603860386038603860380032232330010010032259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c24444444444444530012232330010010032259800800c530103d87a80008992cc004c010006260266605800297ae08998018019817001204e302c00140a9300c00c9805805c888ca6002003004801a0022223259800980b000c4c9660020030068992cc00400600f007803c01e264b30013033003802c0210301bae00140cc60600028170c0b0dd5001c566002603800313259800800c01a264b3001001803c01e264b30013033003899809000912cc00400a00f13259800800c6600201500189801181b001a014805c02e01700b40dc606800481920108180dd6000c01e00e8198c0c000502e18161baa0038acc004c05c006264b300100180344c966002003007803c4c96600260660071330120012259800801401e264b30010018cc00402a003130023036003402900b805c02e01681b8c0d000903240210301bac001803c01d0331818000a05c302c375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002606c0071330150012259800801402a264b30010018cc004036003130023039003403500e807403a01c81d0c0dc009035402d0331bac00180540290361819800a062375a002606400500740cc60600028170c0b0dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0cc00e00b00840c06eb400600e8198c0c000502e18161baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009819801c0160108180dd6800c01d0331818000a05c302c375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009819801c0160108180dd7000a066303000140b860586ea800e00a8149029205240a481490292052302a3754004911119191919912cc004c06003226644b3001301a302f375400313259800981098181baa0018acc004cdc79bae3034303137540026eb8c048c0c4dd5180818189baa301330313754007133225330313372c92010d63726564656e7469616c3a3a200037326601000291010013300f0020013756601c60626ea8080cdd2a4004660666ea40b12f5c1153302f49013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640b902940b8606660606ea8c0ccc0c0dd5180918181baa30333030375400302740b4660046eb0c040c0b8dd500e815198009bac3031302e375403a037159800980f00645660026030605a6ea806a330013031302e37546062605c6ea806a6eb0c034c0b8dd500ecc0c4c0c8c0c8c0c8c0c8c0c8c0c8c0c8c0b8dd500ecdd5980598171baa01d48888c8cc00400401488c966002603e00313301a006375c6070606a6ea800a2b30013025001899198008009bac30393036375400644b30010018a518acc004cc014014c0e8006266004004607600314a081a1038456600260400031323300100137586072606c6ea800c896600200314a115980099802802981d000c528c4cc008008c0ec00503420708acc004cdc3a400c003132337126eb4c0e4004c8cc004004dd6181d181d801112cc0040062900044cc896600266010010005133700002900144005037181d80099801001181e000a0723035375400515980099b87480200062646644b30013028303737540051598009814181b9baa303b303c003899b89375a607660706ea8008006266e20dd6981d981c1baa00200140d514a081a8c0e4004dd6981c981b1baa00330353754602e606a6ea80162b30013370e9005000c4c8cc89660026050606e6ea800a2b3001302830373754607660780071337120026eb4c0ecc0e0dd500144cdc40009bad303b3038375400481aa2941035181c8009bad303930363754006606a6ea8c0e0c0d4dd5002c4cc044010cdd2a40046606e6070606a6ea80092f5c08191032206440c8819103218199baa001409102b45660026030605a6ea806a330013031302e37540353300237586020605c6ea80740aa660026eb0c0c4c0b8dd500e80da444b3001301b303037540031323259800981198191baa0018acc0056600330013371e6eb8c050c0ccdd5180918199baa3015303337540086eb8c0d8c0ccdd5000d28528a0608a518cc004cdc79bae30363033375400805d4a14a2818103044c966002603c60666ea8006264b3001301f30343754003132598009810181a9baa0018992cc004cdd7981d181b9baa001302033039302033039303a3037375400897ae0330394c103d87a80004bd704660026eacc064c0dcdd5000cc064c0dcdd5180c981b9baa0069119b89337020026eb4c0f0c0f4c0f4c0f4c0e4dd50140012444b30010028a508994c004c966002604c60766ea800626eb4c0f0c0fcdd5981f981e1baa0018a400081c8c0f80066ebcc0f8c0fc0066eac00d22259800800c566002600400d13300500348002294103b44c96600266ebcc0f80053010140008acc004cc018010dd6981f98211bab303f001898019ba630430028a5040f11598009980300224001130030078a5040f081e0c10400503f0ca6002003004911981f8011981f9ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0f40066eacc0f800660840069112cc004cdc8a441000038acc004cdc7a441000038998029815198219ba60024bd70000c4cc015300103d87a800000640f919800803c006446600e0046608a66ec0dd48029ba6004001401c81f0608000481f229422942294103f22941034181c981b1baa0018a9981a2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640cc65300130010019bad3039303637540053758602e606c6ea80952225980099b8800248002298103d87a8000899801800801206c1112cc00400a298103d87a80008acc004c0880062604266074607600497ae08cc00400e60780053018001400c81a9039454cc0cd24014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640c86530010019bac303830353754049480010011112cc00400a298103d87a80008acc004cdd7981d00100344c080cc0e4dd4000a5eb8233001003981d8014cdc0000a4004801903420708a99819248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640c4606c60666ea80162a660629201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c102b40c0606a60646ea8c0d4c0c8dd5180a18191baa00130343031375400302840b8812205640ac815888c96600200313259800980d18179baa0028992cc00400605513259800800c0ae05702b815c4cc896600200302d8992cc0040062b300130390028acc004c07cc0d0dd5000c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c96600200304282144cc89660020030448992cc0040062b300130500028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c12cdd500344c9660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b3001001826c13609b04d899912cc00400609f13259800800c1420a105082844c96600260b800713303b00f22598008014566002608860b26ea803e264b300100182a44c96600200313259800800c15a264b30010018acc004c18800a330010038992cc004c124006264b300100182cc4c966002003159800983280144c966002609800313259800800c172264b30010018acc004c1a000a3300100181ac17504c417506541760bb05d82ea0d23066001419060c46ea800a2b300130520018992cc0040060b913259800800c1760bb05d899912cc0040060bf13259800800c1820c1060899912cc0040060c513259800800c18e0c70638992cc004c1bc00e07906441b06eb40060c68378c1b000506a1bad001306b00283020d83069001419c6eb4004c1a000a0ba8348c19800506418311baa00282da0be417c60c06ea80060b483120b505a82d41690661831800a0c2305f37540051598009827800c56600260be6ea800a0610584181058417082e0c174dd5000c15d046415d05f415e0af05782ba0c63060001417860c000505582ac1560aa8308c17800505c182d1baa00f829a0ae8992cc0040062b30013045305a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130680038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001306d003898081836808c18906a1bae00141b460d40028340dd7000983480420d43067007419505d41946eb40060b88340c1940050631bad001306400282ca0ca306200141806eb0004c18400a0ad056418860be00282e8c16cdd5000c15105841520a905482a20c0305d002416d05141646eb800505c182c800a0ae375c00260b000482c8c1580050541bae0013055002415860a60028288dd7000982900120a63050001413860986ea801a08a824a08a812208a812208a812208a812208a812208a812208a812208a812208a826a08b045822c1150511827000a0983758002609a005042821209c304b0014124609600504082041020808260c124005047182480140fa07d03e81f209430470014114608e00503c81e40f20788240c114005043182280140ea07503a81d208c30430014104608600503881c40e20708220c10400503f182080140da06d03681b2084303f00140f4607e00503481a40d20688200c0f400503b181e80140ca065032819207c303b00140e4607600503081840c206081e0c0e4005037181a9baa0018172064817206c81740ba05d02e40e8606e00281a8dd7000981b001206e303400140c860606ea800a0528168400605102881440a103429981619b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea400522010013259800980c98171baa00189929981719b9649113666f756e642070726f7879207574786f3a3a200037326600a00291010013259800980e18181baa0018992cc0040062b3001301c3031375400313259800800c0b6264b300100181740ba05d02e899912cc00400606113259800981d8014401a06281c0c0e40050371bae001303800240e4606c00281a0c0c8dd5000c0b102f40b205902c816206e303430313754003153302f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b8602260606ea8c048c0c0dd5000981918179baa0018a99816a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640b06601200446602860126eacc044c0bcdd5180898179baa001002223300900223375e6064605e6ea8004008c004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101620665980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c816902d1bac3030002375a605c0026466ec0dd418170009ba7302f001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6066003337149101023a200098008054c0d000600a805100a181b00144ca6002015303300199b8a489023a200098008054c0d0006600e66008008004805100a181b0012068303600140cc66e29220102207d0000340c06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901320603758007133005375a0060051323371491102682700329800800cc040dc68014cdc52450127000044004444b30013371000490004400626466453001006980a802ccdc599b800025980099b88002480522903045206e40c866e2ccdc0000acc004cdc4000a4029148182290372064004401866e0c00520203370c002901019b8e00400240bc6eb800d0331b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340a88150301637540126e1d2004370e9000402a01500a80520343016001301630170013012375400716403c3011001300c3754025149a2a6601492011856616c696461746f722072657475726e65642066616c7365001365640241":"590c060101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758601460446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8ca6002606c003303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c00491111111112cc004c10402e26603e608002a26603e01226603e01026603e00e26603e00c26603e00a26603e00826603e0062b30013030303c375400513232323298009bae30440019bae30440049bae30440039bae30440024888966002609200b133030009225980080145660026074608c6ea80522646464b3001304e00289981c18268018992cc004c0f8006264b30013050001899192cc004c104006264b3001305300189981e982900081645905018271baa0028acc004c11400626464653001375a60a8003375a60a8007375a60a80049112cc004c16001206316415430540013053001304e37540051641308260c130dd50009827800c5904d18259baa0028acc004c1080062b3001304b37540050288b20988b2092412460926ea80062c8258c130004c130004c11cdd500a45904544c9660026076608e6ea800626464646644b300130510038991919912cc004c15400e2601660aa0191641486eb8c148004dd7182900118290009bac30500058b209c375a609c0026eb4c138008c138004c134004c120dd5000c59046182500120908b208c182200098218009821000981e9baa0028b20768b207c181b000981a800981a000981980098190009818800981800098178009817000981680098141baa0018b204c302a0018b2050375c6050002605200260486ea800a2c81104004c966002602c60446ea8006264b300130183023375400313259800980c18121baa0018991919912cc004c0b400e200b1640a860540026eb8c0a8008c0a8004c094dd5000c59023181398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601",_data.Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");});var V1_0Rc1OrderOrderElse=exports.V1_0Rc1OrderOrderElse=/*#__PURE__*/_createClass(function V1_0Rc1OrderOrderElse(proxyPolicyId,protocolScripthash){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0Rc1OrderOrderElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5917090101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99802249286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d65725631001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b30010078999119912cc004c00c0062b30013019375401700280720348acc004c0240062b30013019375401700280720348acc004c0100062b3001301937540170028072034807202c405880b0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009811001c01a00a80f8dd7000a044301f001407460366ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026044007006802a03e375c0028110c07c00501d180d9baa0048012030406060326ea800e44b30010018a5eb822660366030603800266004004603a00280d2444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80ba44646600200200644b30010018a508acc004cdc79bae301e0010038a51899801001180f800a0304071222232330010010052259800800c4016264b3001001899802181080100344cc014c084008cc00c00c00501f1810800a03c9119198008008019119801800980100148c06cc070006460366038603800337009000c8c06cc070c070c070c070c070c070c070c070006602c6ea8026460366038603860386038603860380032232330010010032259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c24444444444444530012232330010010032259800800c530103d87a80008992cc004c010006260266605800297ae08998018019817001204e302c00140a9300c00c9805805c888ca6002003004801a0022223259800980b000c4c9660020030068992cc00400600f007803c01e264b30013033003802c0210301bae00140cc60600028170c0b0dd5001c566002603800313259800800c01a264b3001001803c01e264b30013033003899809000912cc00400a00f13259800800c6600201500189801181b001a014805c02e01700b40dc606800481920108180dd6000c01e00e8198c0c000502e18161baa0038acc004c05c006264b300100180344c966002003007803c4c96600260660071330120012259800801401e264b30010018cc00402a003130023036003402900b805c02e01681b8c0d000903240210301bac001803c01d0331818000a05c302c375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002606c0071330150012259800801402a264b30010018cc004036003130023039003403500e807403a01c81d0c0dc009035402d0331bac00180540290361819800a062375a002606400500740cc60600028170c0b0dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0cc00e00b00840c06eb400600e8198c0c000502e18161baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009819801c0160108180dd6800c01d0331818000a05c302c375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009819801c0160108180dd7000a066303000140b860586ea800e00a8149029205240a481490292052302a3754004911119191919912cc004c06003226644b3001301a302f375400313259800981098181baa0018acc004cdc79bae3034303137540026eb8c048c0c4dd5180818189baa301330313754007133225330313372c92010d63726564656e7469616c3a3a200037326601000291010013300f0020013756601c60626ea8080cdd2a4004660666ea40b12f5c1153302f49013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640b902940b8606660606ea8c0ccc0c0dd5180918181baa30333030375400302740b4660046eb0c040c0b8dd500e815198009bac3031302e375403a037159800980f00645660026030605a6ea806a330013031302e37546062605c6ea806a6eb0c034c0b8dd500ecc0c4c0c8c0c8c0c8c0c8c0c8c0c8c0c8c0b8dd500ecdd5980598171baa01d48888c8cc00400401488c966002603e00313301a006375c6070606a6ea800a2b30013025001899198008009bac30393036375400644b30010018a518acc004cc014014c0e8006266004004607600314a081a1038456600260400031323300100137586072606c6ea800c896600200314a115980099802802981d000c528c4cc008008c0ec00503420708acc004cdc3a400c003132337126eb4c0e4004c8cc004004dd6181d181d801112cc0040062900044cc896600266010010005133700002900144005037181d80099801001181e000a0723035375400515980099b87480200062646644b30013028303737540051598009814181b9baa303b303c003899b89375a607660706ea8008006266e20dd6981d981c1baa00200140d514a081a8c0e4004dd6981c981b1baa00330353754602e606a6ea80162b30013370e9005000c4c8cc89660026050606e6ea800a2b3001302830373754607660780071337120026eb4c0ecc0e0dd500144cdc40009bad303b3038375400481aa2941035181c8009bad303930363754006606a6ea8c0e0c0d4dd5002c4cc044010cdd2a40046606e6070606a6ea80092f5c08191032206440c8819103218199baa001409102b45660026030605a6ea806a330013031302e37540353300237586020605c6ea80740aa660026eb0c0c4c0b8dd500e80da444b3001301b303037540031323259800981198191baa0018acc0056600330013371e6eb8c050c0ccdd5180918199baa3015303337540086eb8c0d8c0ccdd5000d28528a0608a518cc004cdc79bae30363033375400805d4a14a2818103044c966002603c60666ea8006264b3001301f30343754003132598009810181a9baa0018992cc004cdd7981d181b9baa001302033039302033039303a3037375400897ae0330394c103d87a80004bd704660026eacc064c0dcdd5000cc064c0dcdd5180c981b9baa0069119b89337020026eb4c0f0c0f4c0f4c0f4c0e4dd50140012444b30010028a508994c004c966002604c60766ea800626eb4c0f0c0fcdd5981f981e1baa0018a400081c8c0f80066ebcc0f8c0fc0066eac00d22259800800c566002600400d13300500348002294103b44c96600266ebcc0f80053010140008acc004cc018010dd6981f98211bab303f001898019ba630430028a5040f11598009980300224001130030078a5040f081e0c10400503f0ca6002003004911981f8011981f9ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0f40066eacc0f800660840069112cc004cdc8a441000038acc004cdc7a441000038998029815198219ba60024bd70000c4cc015300103d87a800000640f919800803c006446600e0046608a66ec0dd48029ba6004001401c81f0608000481f229422942294103f22941034181c981b1baa0018a9981a2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640cc65300130010019bad3039303637540053758602e606c6ea80952225980099b8800248002298103d87a8000899801800801206c1112cc00400a298103d87a80008acc004c0880062604266074607600497ae08cc00400e60780053018001400c81a9039454cc0cd24014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640c86530010019bac303830353754049480010011112cc00400a298103d87a80008acc004cdd7981d00100344c080cc0e4dd4000a5eb8233001003981d8014cdc0000a4004801903420708a99819248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640c4606c60666ea80162a660629201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c102b40c0606a60646ea8c0d4c0c8dd5180a18191baa00130343031375400302840b8812205640ac815888c96600200313259800980d18179baa0028992cc00400605513259800800c0ae05702b815c4cc896600200302d8992cc0040062b300130390028acc004c07cc0d0dd5000c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c96600200304282144cc89660020030448992cc0040062b300130500028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c12cdd500344c9660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b3001001826c13609b04d899912cc00400609f13259800800c1420a105082844c96600260b800713303b00f22598008014566002608860b26ea803e264b300100182a44c96600200313259800800c15a264b30010018acc004c18800a330010038992cc004c124006264b300100182cc4c966002003159800983280144c966002609800313259800800c172264b30010018acc004c1a000a3300100181ac17504c417506541760bb05d82ea0d23066001419060c46ea800a2b300130520018992cc0040060b913259800800c1760bb05d899912cc0040060bf13259800800c1820c1060899912cc0040060c513259800800c18e0c70638992cc004c1bc00e07906441b06eb40060c68378c1b000506a1bad001306b00283020d83069001419c6eb4004c1a000a0ba8348c19800506418311baa00282da0be417c60c06ea80060b483120b505a82d41690661831800a0c2305f37540051598009827800c56600260be6ea800a0610584181058417082e0c174dd5000c15d046415d05f415e0af05782ba0c63060001417860c000505582ac1560aa8308c17800505c182d1baa00f829a0ae8992cc0040062b30013045305a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130680038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001306d003898081836808c18906a1bae00141b460d40028340dd7000983480420d43067007419505d41946eb40060b88340c1940050631bad001306400282ca0ca306200141806eb0004c18400a0ad056418860be00282e8c16cdd5000c15105841520a905482a20c0305d002416d05141646eb800505c182c800a0ae375c00260b000482c8c1580050541bae0013055002415860a60028288dd7000982900120a63050001413860986ea801a08a824a08a812208a812208a812208a812208a812208a812208a812208a812208a826a08b045822c1150511827000a0983758002609a005042821209c304b0014124609600504082041020808260c124005047182480140fa07d03e81f209430470014114608e00503c81e40f20788240c114005043182280140ea07503a81d208c30430014104608600503881c40e20708220c10400503f182080140da06d03681b2084303f00140f4607e00503481a40d20688200c0f400503b181e80140ca065032819207c303b00140e4607600503081840c206081e0c0e4005037181a9baa0018172064817206c81740ba05d02e40e8606e00281a8dd7000981b001206e303400140c860606ea800a0528168400605102881440a103429981619b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea400522010013259800980c98171baa00189929981719b9649113666f756e642070726f7879207574786f3a3a200037326600a00291010013259800980e18181baa0018992cc0040062b3001301c3031375400313259800800c0b6264b300100181740ba05d02e899912cc00400606113259800981d8014401a06281c0c0e40050371bae001303800240e4606c00281a0c0c8dd5000c0b102f40b205902c816206e303430313754003153302f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b8602260606ea8c048c0c0dd5000981918179baa0018a99816a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640b06601200446602860126eacc044c0bcdd5180898179baa001002223300900223375e6064605e6ea8004008c004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101620665980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c816902d1bac3030002375a605c0026466ec0dd418170009ba7302f001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6066003337149101023a200098008054c0d000600a805100a181b00144ca6002015303300199b8a489023a200098008054c0d0006600e66008008004805100a181b0012068303600140cc66e29220102207d0000340c06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901320603758007133005375a0060051323371491102682700329800800cc040dc68014cdc52450127000044004444b30013371000490004400626466453001006980a802ccdc599b800025980099b88002480522903045206e40c866e2ccdc0000acc004cdc4000a4029148182290372064004401866e0c00520203370c002901019b8e00400240bc6eb800d0331b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340a88150301637540126e1d2004370e9000402a01500a80520343016001301630170013012375400716403c3011001300c3754025149a2a6601492011856616c696461746f722072657475726e65642066616c7365001365640241":"590c060101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758601460446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8ca6002606c003303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c00491111111112cc004c10402e26603e608002a26603e01226603e01026603e00e26603e00c26603e00a26603e00826603e0062b30013030303c375400513232323298009bae30440019bae30440049bae30440039bae30440024888966002609200b133030009225980080145660026074608c6ea80522646464b3001304e00289981c18268018992cc004c0f8006264b30013050001899192cc004c104006264b3001305300189981e982900081645905018271baa0028acc004c11400626464653001375a60a8003375a60a8007375a60a80049112cc004c16001206316415430540013053001304e37540051641308260c130dd50009827800c5904d18259baa0028acc004c1080062b3001304b37540050288b20988b2092412460926ea80062c8258c130004c130004c11cdd500a45904544c9660026076608e6ea800626464646644b300130510038991919912cc004c15400e2601660aa0191641486eb8c148004dd7182900118290009bac30500058b209c375a609c0026eb4c138008c138004c134004c120dd5000c59046182500120908b208c182200098218009821000981e9baa0028b20768b207c181b000981a800981a000981980098190009818800981800098178009817000981680098141baa0018b204c302a0018b2050375c6050002605200260486ea800a2c81104004c966002602c60446ea8006264b300130183023375400313259800980c18121baa0018991919912cc004c0b400e200b1640a860540026eb8c0a8008c0a8004c094dd5000c59023181398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601",_data.Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");});var V1_0Rc1ProtocolManagementProtocolManagementWithdraw=exports.V1_0Rc1ProtocolManagementProtocolManagementWithdraw=/*#__PURE__*/_createClass(function V1_0Rc1ProtocolManagementProtocolManagementWithdraw(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0Rc1ProtocolManagementProtocolManagementWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594460010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888888896600264653001301c001980e180e800cdc3a4009301c0024888966002600460386ea800e330013020301d3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b874803246042604400323021302230220019b80480066e05200091810981118111811181118111811181118111811000cdd2a4004911111111111111194c004889660026020605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c054006264b3001001803c4c966002003159800981d80144c966002603000313259800800c02a264b30010018acc004c0f800a33001001806402d00e402d03b402e01700b805a07e303c00140e860706ea800a2b300130170018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11400e02701241086eb40060228228c1080050401bad00130410028072084303f00140f46eb4004c0f800a01681f8c0f000503a181c1baa002804a06a40d4606c6ea800601081c2011008804402103c181c800a06e30353754005159800980a000c566002606a6ea800a00f00640d900640c88190c0ccdd5000c0150084015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c96600260760070058042070375c00281d8c0e0005036181a1baa0038acc004c04c006264b300100180344c966002003007803c4c96600260760071330180012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0ec00e26603000244b3001002803c4c96600200319800805400626004607c006805201700b805c02d03f181e001207480420703758003007803a076303800140d860686ea800e2b300130120018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981f001c4cc06c004896600200500a8992cc0040063300100d800c4c008c10400d00d403a01d00e8072084303f00240f500b40ec6eb000601500a40f8607600281c8dd6800981d001401d03b181c000a06c303437540071598009808800c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002602000313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009807800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c015031206240c48189031206240c460646ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260286606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980a981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301a0018acc004c0e8dd5001401e00c81da2b300130190018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026038003159800981e1baa006804c02103d4566002603600313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783019303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002602a60686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c058006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130150018acc004c0d8dd5002400e00481ba0048199033181a1baa00348888cc89660026030606e6ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009821801c566002603e607c6ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013053002899818007112cc00400a26606401a44b30010028cc00401e330010058992cc004c0d0c14cdd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982e00144cc8966002607400313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252052825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0e4006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a504a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981f800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b300130380018992cc00400608b13259800800c11a08d132598009830801c4cc0f800489660020050078992cc00400633001001898011832001c129029412a09504a82520ca3062002418104741786eb000608d046418460bc00282e0c168dd5002c566002606e00313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252054825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a904a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981a800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea801608882b905720ae415c82b905720ae415c264b300130390018992cc00400608913259800800c56600260be00519800800c02208a813a08a82e208b045822c115060182e800a0b630593754005159800981c000c4c9660020030448992cc0040062b3001305f0028acc004c0ecc168dd5000c4c9660020030468992cc004006264b300100182444c966002003159800983180146600200719800800c032092816209281620928302093049824c1250641830800a0be3061002823c11e08f047418860be00282e8c16cdd5000c115058411505c411608b045822a0c0305d001416c60b26ea800a08682b1056182b9baa001305737540070424165042821410a08482e8c168005058182d001410208104082020b63058001415860a86ea806607c82884cc0d0054896600200519800982c182a9baa302f30553754049230353055375460b2646600200200444b30010018a5eb8503d87a80008101800044c8cc89660033001303a305a375460bc0074a14a282c22660bb30014a14c103d87a8000a60103d87980004160660ba6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18000400e294626600400460c200282d105e44cc176600294298103d87a8000a60103d87980004160660ba6e9c0092f5c113305d9800a51a60103d87a8000a60103d87980004160660ba6e9ccc174dd400080125eb8105820b0375860b860ba0026eb4c170008cc008008c17000505948888ca6002003005802400d00111112cc00400e2b30010028800c54cc16d24112657870656374205b5d203d206c6973745f6200164179159800801454cc16d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c20073061002cc004c18000e6eb4c18000a002802900420bc41792232330010010032259800800c52f5c1133225980099baf305e305b375460bc60b66ea8c0d4c16cdd500118181982e9ba90054bd7044cc174008cc01001000626600800800282c0c170004c17400505a4dc02400523059305a305a305a305a305a305a305a305a0019112cc00400a2980103d87a80008acc004c0e000626074660b460b600497ae08cc00400e60b80053030001400c82a9059488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd5982d800982e800a0b614bd6f7b630488966002607060ae6ea800e264b300100180144c966002003003801c00e264b3001305f003802c01105c1bad001801a0be305c001416860b06ea800e00282aa460b260b460b460b40032232330010010032259800800c52f5c113305b374e600660b80026600400460ba00282d2444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c17c0066eb4c1800066600600660c80048048c1880050601bab305d003375c60b40026600600660be00460ba00282da44646600200200644b30010018a508acc004cdd7982e0009ba70038a51899801001182e800a0ac416922259800981c182b9baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c96600200313259800800c022264b300130640028cc00401e330010058992cc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b300130400018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009835801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009838001c05a02a8368dd7000a0e0306d00141ac6eb8004c1b000906d1835000a0d080820d0375800300f807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c118006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c96600200301280944c96600260dc007159800800c04e264b300100180a4052029014899912cc00400602d13259800800c05e02f01780bc4c96600260e600701980c20e0375c0028398c1c000506e1bae001306f00241c060da002835a0268358dd6000c04a0248370c1ac0050691bad001306a002807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0fc006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b3001303e0018992cc00400601713259800800c03201900c8992cc004c1a000e01d00d41946eb40060188340c19400506318309baa0048acc004c0f4006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306b003808c0410681bad001807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0f0006264b3001001805c4c96600200300c8064032264b3001306800380740350651bad00180620d03065001418c60c26ea80122b30013370e9007000c4c96600200300b8992cc00400601900c80644c96600260d000700e806a0ca375a00300c41a060ca0028318c184dd5002402905e20bc417882f105e20bc417882f0c17cdd5001c02502e402503240250611831000a0c03062002803c01e00f007418c60c000282f0c18000a00b005802c015061182f000a0b8305e002801c00e007003417c60b800282d0c160dd5001c00505548c164c168c168c168c168006444653001001802400d0011112cc00400a200319800801cc17c00a6600860bc004002801905c4dc424000911111111111111114c004c194dd5008c88966002602600519800801c00a900048896600260080071337000026eb4c118c1b0dd5001c54cc1a924011a6578706563742076616c69646174696f6e287265717565737429001641a480922a660ce9212e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641992259800800c5200089807998010011836000a0d291808800c89660020031480022601e6600400460d8002834a6016017222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906c44cc014014c1cc01106c1bae306c001375a60da00260de0028368cc03801000c5200048888888ca6002444464b30013053307237540031325980099baf30773074375460ee60e86ea8c138c1d0dd500098249983b1ba90054bd70456600260a730013756609c60e86ea8c138c1d0dd5000c01691108747265617375727900402113259800982d183a1baa0018992cc004006330010018992cc004c15cc1d8dd5000c4c96600266ebcc1ecc1e0dd5183d983c1baa001304d3307a375201297ae08acc004c15e60026eacc148c1e0dd5000c026910108747265617375727900403113259800982f183c1baa0018992cc004006330010018acc004cdd7980e183d1baa0034c103d87a800089983e0029983e0009983e1ba6329800800cdd5982a983d9baa00499198008009bab3056307c375460ac60f86ea8024896600200314bd6f7b63044c8cc20004cdd8183e8009ba63233001001375660fe00444b30010018a5eb7bdb182264661060266ec0c20004004dd4182c1bad308101001330030033085010023083010014204046600600661040200461000200283f10011112cc00400a2003132332298008034c21004016646600200200a44b30010018998420099bb037520086e9800d2f5bded8c113298009bae3082010019bab3083010019843808012444b30013372001000713308801337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528211002880144cc22404cdd81ba9009374c002004842008ca6002003008801a002222598008014400626466453001006984800802cc8cc004004014896600200313309001337606ea4010dd4001a5eb7bdb1822653001375c611c02003375a611e0200330930100248896600266e4002000e2661280266ec0dd48041ba80070058acc004cdc7804001c4c96600260e6003100289984a8099bb037520126ea00040090900119b8000700289984a0099bb037520066ea0008cc01801800508f01211e02184880800a11e0240186eb8c22404004dd69845008009846008012114028998440099bb037520066e98008cc01801800508301210602184280800a1060240186eb8c1f4004dd5983f00098400080120fc4bd7041bd07741b901d41ba0dd06e83720fe307c30793754003153307749012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641d860a260f06ea80062a660ec920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641d5153307649143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641d460f460ee6ea80062a660ea92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641d0660126eb0c13cc1d8dd5004002c1a501941a60d3069834a0f6307830753754003153307349013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641c8609a60e86ea8c138c1d0dd5000c54cc1c92401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c515330724914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c460ec60e66ea80062a660e292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641c06600a6eb0c1d4c1c8dd50020014c010012600c00c9112cc004c13c02e33001375860e860e26ea8072444b300130543073375400713259800800c00a264b3001001801c00e00713259800983d801c01600883c0dd6800c00d07b183c000a0ec3074375400700141c5222225980099b87300600530060048acc004c03400e266e24006600200b003a40012223259800982d183c9baa001899912cc004c184c1ecdd5000c4c96600200319800800c56600266ebcc07cc1f4dd5001984000983e9baa0078acc004cdd7982b983e9baa001308001307d3754007132598009831983e9baa001899192cc004cdc39bad308301002375a60b46100026ea801a2b30013370e6eb4c20c04004dd6982c9840009baa0068acc004cdd7984180984200800980e9840009baa006899b8000898009bab305a308001375460b46100026ea802a6eb8c20c040326eb8c20c04c21004031014454cc1f92413665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001641f5153307e49126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001641f5153307e4912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001641f461060200260fc6ea80062a660f8921184578706563746564204f4465706f73697420616374696f6e001641ec60ac60fa6ea80060ec83d20ea83d20e880da0e907483a41d108201183f983e1baa00183920f2307d307a375400260a660f46ea8c150c1e8dd500241a107719806003801203e831a0e683120e691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307f307c375460fe0046eb4c1fcc1f0dd5183f80180244c9660033001002a5191112cc0040062b30013371e008911008a5189981000299841809ba90043308301375200697ae041f914a083f101d44cdc4803cc004dd61829983e9baa00ca400122323259800980e000c4cdc000199b83337040026eb4c16cc20404dd50021bad305a3081013754009100341f930010059bae3083010019bae30830130840100140506eb0c20804c1fcdd5001203283720f43301d375860a460f86ea802c8dd6184000983e9baa00183720f2375660fc60fe00260fc00330010079bae307c30793754603e60f26ea802200d005402d1533077490123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641d8b3001305830090018a4001159800800c19e264b3001307d0028992cc004cdc79bae307900248810455534472008800c1a90771bad307900183420f4307b00141e483a8cc06cdd5980a183b9baa005375c60a260ee6ea8c074c1dcdd50034c1d0c1c4dd50204c12cc1c4dd5020a4444446644b300159800980a0014528c6600260b20034a14a283b107644c96600260b460f26ea80062646644646644b30013060307f37540031325980099b87337026eb4c210040040180122b30013370e6eb4c21004c21404004dd6984200984280803c56600266e2520000098acc0066002660526eb0c21004c20404dd50329bae305a3081013754604e6102026ea802e021375860b66102026ea8032661060260b66102026ea8c09cc20404dd50059984180a61054455534472004bd7052000403915980099b890033233001001375860b66104026ea8198896600200314800226644b30013375e611002610a026ea8008c22004c22404c22404c22404c22404c22404c22404c22404c22404c22404c22404c21404dd5007c4cdc0000cc004dd5982f9842809baa0029bae305f30850137546056610a026ea803e910104555344720040651001420804610c0200266004004610e0200284200a3300100b832cdd6982d1840809baa00c9bad3023308101375401900999b8000a0094035153307f49012b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641f9153307f4919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001641f9159800cc004cc0a4dd61842009840809baa065375c60b46102026ea8c09cc20404dd5005c0426eb0c16cc20404dd50064cc20c04c16cc20404dd518139840809baa00b33083014c1054455534472004bd704c16000d00e4660020170659bad305a3081013754019375a60466102026ea803201300a4035153307f491b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641f883f22a660fe9213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641f9153307f4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641f865300133014001375a6108026102026ea800a6eb8c16cc20404dd518139840809baa00b9bae30233081013754604e6102026ea802d2225980098321841809baa0038992cc004cdd79844009842809baa308801308501375400260b46610e026ea40092f5c115980098324c004dd5982f9842809baa00180152210d7374616b696e675f7661756c740040651325980098359842809baa0018992cc004006330010018acc004cdd798149843809baa0034c103d87a8000899844809ba898009bab30613087013754007005a441045553447200406c6611202611402610e026ea8004cc2240400d2f5c107c4210050810140550810184080c2040610202846008c22404c21804dd5000c54cc2100524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016420c0460bc610a026ea80062a661060292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642080515330830149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016420804610e026108026ea800e2a661040292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f696478290016420404375860b26100026ea81922a660fc92013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641f466e04018004c20404c20804c20804c20804c20804c20804c1f8dd5004acc004c060006266e10cdc1002801000c5200041e86eb4c1f8004dd6983f183d9baa307e980082fcdd7183f183d9baa3021307b375400b375a60a860f66ea801a6eb4c074c1ecdd5003201a329800998070009bad307e307b3754005375c60aa60f66ea8c084c1ecdd5002cdd7180e983d9baa3021307b375400a9112cc004c178c1f4dd5001c4c96600266ebcc20804c1fcdd5184100983f9baa3059307f375400260a866102026ea40092f5c1159800982f4c004dd5982c983f9baa3059307f3754003002a4410d7374616b696e675f7661756c7400404d132598009832983f9baa0018992cc00400633001001899841809ba898009bab305b308101375460b66102026ea800e00b489045553447200405466106026108026102026ea8004cc20c0400d2f5c107b403d07b83dc1ee0f6843008c20c04c20004dd5000c1d907d182c183f9baa3059307f3754003153307d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f1153307d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f061020260fc6ea800e2a660f892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ec375860fa60f46ea817a2a660f092013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641dc602c60f26ea80122a660ee92012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641d930010069bac307a3077375400523371290001bad3052307837540028082600200d480024466e00004dd69829183c9baa002404c8acc004c15802e33001375860e860e26ea8072444653001001802400d0011112cc00400a2b30010018a518a5041e1159800800c52845660026600860f40046eb4c1e800633001003983d8014c1ec005003452820e841e083c244b30010018a40011301a33002002307700141d1223370666e08008dd6982618399baa001375a609a60e66ea800660e860e26ea8102609660e26ea8105222222325980099914c004c8cc00400400c896600200314a115980099baf307f307c375460fe60f86ea8c158c1f0dd5183f80098289983f1ba90034bd704528c4cc008008c2000400507920faa50a5141dc6eb0c1ecc1e0dd502e1bae301a30783754603c60f06ea800a2b300133225980099b87300a002300a0098acc004c04400633001002800c88c96600260ba60f86ea800626464b3001305d307e37540031325980099b87375a6106020026eb4c168c20004dd5001c4cdd7984180984200800980e9840009baa0038a5041f460fe6ea8006294107c182b983f1baa32598009832183f1baa0018992cc004006330010018acc004cdd798111840009baa003308301308001375400d15980099baf305a30800137540026106026100026ea800e200307941f507841f5077407907783bc1de0ee842808c20804c1fcdd5000c1d507c182b983f1baa3058307e375400861000260fa6ea80060d683d0cc03c02c005008419d0774199077198101bac307b307837540b86eb8c144c1e0dd5180f183c1baa002375860a460f06ea800e2b300198009bac3051307837540b9375860f660f06ea800e6eb0c138c1e0dd50012444b30013370e6008004601601519800805400a4464b3001305e307d375400319800984080983f1baa0019bac301b307e3754007323305000523375e6106026100026ea8004dd38011bac301b307e37540069112cc004c184c20004dd5000c56600266ebcc21004c20404dd50019842009840809baa308401308101375400d15980099baf305a308101375400660b66102026ea8c21004c20404dd500344cdc3cc004dd5982d9840809baa0039bae3084010029bae30840130850100240546601a64b300133710002900044c164006200283f8dd6982d9840809baa006308401308101375400314a083f2294107e454cc1fd24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641f88a9983e2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641ec6602000a002804a2a660f292013b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e67746828726571756573747329001641e08982c4c006600200f375860f660f06ea800e4b30013014375a60a660f26ea8006260b26eb4c148c1e4dd5000c52820ec40453301c3756602a60f06ea8170dd71829183c1baa301e30783754005980082e4dd7183d983c1baa301e30783754005375a60a260f06ea800e6eb4c068c1e0dd5001a0149980c9bac304e3078375400446eb0c1f0c1e4dd5000a44446530013080010019bab308001308101001984000801d6600260ba601c0091480022b300100483644c96600261040200b1325980099b8f375c60fc0049110455534472008800c1bd07c1bad307e001836a0fe30800100441f883d1222259800cc00400e9464444b30010018acc004cdc78022441008a5189981200519843809ba90043308701375200697ae042080514a0841009021456600266e1ccdc09bad30840130810137540086eb4c21004c20404dd5001000c4c96600266e1e60026eb0c160c20804dd5006520009119912cc006600260cc0034a14a284180a264b3001337126602600200b30010099bae308a010039bae308a01308b01003406d1337000080031533085014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642100466e080040162006841808dd61843809842009baa00232980080a52000912cc004cdd798121843809baa002374e0071337000026eb4c184c21c04dd5001440050840120423758610e026108026ea800901e19b8100200a8801454cc200052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641fcb3001301c0098a400314800907e41cd07e41c907e0c2000400915330764901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641d51533076491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641d5153307649142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641d460080088a5041b8837044b300133710002900045300103d87a8000899802001000a0d82264b30010018204102264b3001001820c4c966002003042821410a0851332259800800c112264b30010018acc004c17c00a264b3001303c305b375400513259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc00400609904c8264132264b300130670038acc004c10cc188dd500344c96600200304e8992cc00400609f04f827c13e26644b3001001828c4c966002003052829414a0a5132598009836801c4c966002609400313259800800c156264b300100182b415a0ad0568992cc004c1c400e02505741b86eb80050711837000a0d8306a37540171598009824800c56600260d46ea802e01f05441ad054419c8338c1a0dd5005414d06a1bae00141b460d40028340dd7000983480120d43067001419460c66ea801a09a830209a8320dd7000a0ce3064001418860c800504a825412a0948328c1880050601831001412209104882420c63060001417860b86ea800a08c82c84c01cc17c02208a82e208b045822c115060182e800a0b6375c00260b800482e8c1680050581bac001820410105b182c00120ac81ea03c81ea03c8992cc00400607d03e81f44c8c00cc164010dd6800c0f9059182b00120a88992cc00400607903c81e44c8c00cc15c010dd6800c0f1057182a00120a481ca0a081cc0e6073039415060a20028278c14400a06f03781bc0dd0521827800a09a375a002609c005034413c60980028250dd6800982580140c504c1824800a08e3758002609000502e8172092304600141106eb0004c11400a05702b411860860028208c0fcdd500340a503c40a50401bac00181440a10431820000a07c3040002813409a04d0264104607c00281e0c0f800a049024812409103f181e000a0743038375400f02240d4444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608e00719800804c6600200900c805a01e805a022805a088375a00300a411c60880028210c11000a01100880440210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d8444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c12800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13c00e02901341306eb800504f1826000a094375c00260960048260c1240050474039012403901440390471bac001806c03504a1823800a08a3047002805c02e01700b4120608a0028218dd6800982200140210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d880e407203901c40dc664464b30013014303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301833038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8054dd7181a18189baa0019800912cc004006297ae089981a1818981a80099801001181b000a0669112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206091111919800800802912cc004006200b13259800800c4cc010c0e800801a26600a60740046600600600281c0c0e80050374dd6180518181baa01448888c8c8c8cc88c966002003159800980d181c9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130430028acc004c07cc0f8dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305a0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c154dd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260cc00713304300f225980080146600201f102b827a06e8992cc0040062b300130453064375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130720038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307700389808183b808c1790741bae00141dc60e80028390dd7000983980420e8307100741bd05941bc6eb40060b08390c1bc00506d1bad001306e00282aa0de306c00141a86eb0004c1ac00a0a505241b060d20028338c194dd5000c14106241420a105082820d43067002419504d418c6eb80050661831800a0c2375c00260c40048318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a001416060ac6ea801a082829a0828142082814208281420828142082814208281420828142082814208282ba083041820c10505b182c000a0ac375800260ae00503e81f20b03055001414c60aa00503c81e40f207882b0c14c005051182980140ea07503a81d20a83051001413c60a200503881c40e20708290c13c00504d182780140da06d03681b20a0304d001412c609a00503481a40d20688270c12c005049182580140ca06503281920983049001411c609200503081840c20608250c11c005045182380140ba05d02e81720903045001410c608a00502c81640b20588230c10c005041181f9baa0018152078815208081540aa05502a4110608200281f8dd700098200012082303e00140f060746ea800604a81ba04b025812c09503f29981b99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40d522010013259800980d181c9baa00189929981c99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981d9baa0018992cc0040062b3001301d303c375400313259800800c0e6264b300100181d40ea07503a899912cc0040060791325980098230014401a07a8218c1100050421bae00130430024110608200281f8c0f4dd5000c0e103a40e207103881c2084303f303c3754003153303a49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640e4602860766ea8c054c0ecdd5000981e981d1baa0018a9981c24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640dc6601400c4646600200260066eacc054c0ecdd5180a981d9baa0022259800800c528456600266e3cdd7181f80081c4528c4cc008008c100005039207a300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c207e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81c90391bac303c002375a60740026466ec0dd4181d0009ba7303b001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a607e003337149101023a200098008054c10000600a805100a182100144ca6002015303f00199b8a489023a200098008054c100006600e66008008004805100a18210012080304200140fc66e29220102207d0000340f06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920783758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e40f866e2ccdc0000acc004cdc4000a402914818229037207c004401866e0c00520203370c002901019b8e00400240ec6eb800d03f1b8a4881022c20002232330010010032259800980c800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681b10361801801844464b300130100018992cc00400600713259800800c01200900480244c966002606e007006802a068375c00281b8c0d000503218181baa0048acc004c03c006264b3001001801c4c966002003004802401200913259800981b801c01a00a81a0dd7000a06e303400140c860606ea8012004816902d18171baa00345901a0c070004c05cdd500ec5268a9980aa491856616c696461746f722072657475726e65642066616c7365001365640501":"5921fd010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480324601c601e0032300e300f300f00191807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c010006260226603c00297ae089980180198100012034301e001407122232598009807000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300d0018992cc004c0800062660206eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc040dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0300062646644b300130220018998091bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b3001300b001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260140031323259800981080140122c80f0dd6980f800980d9baa0038acc004c02400626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c03400626464b3001302000280245901d1bae301e001301a37540071598009806000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c030c060dd500144c8c8c966002604000513232598009808800c566002603c6ea800a00d16407d1598009808000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689807180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300c30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009806800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300c0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013017302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301b33028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c058c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980b18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980b98119baa003899191919912cc004c0b400e264b3001301d30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc0a4dd6181c005912cc00400a26605600c44b300100289980e80289980e8048992cc004c0b4c0e4dd500944c8c8c9660026082005132332259800981980144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038acc004c0c800a264b3001304500189981a9bac304400122598008014012266040608c00426002608e00482222c8210c100dd5001c5660026070005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b300130310028992cc004c11400626606a6eb0c1100048966002005004899810182300109800982380120888b208430403754007159800981800144c966002608a0031330353758608800244b300100280244cc084c1180084c004c11c00904445904218201baa0038acc004c0bc00a264b3001304500189981a9bac304400122598008014012266042608c00426002608e00482222c8210c100dd5001c566002605c005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b30013370e900700144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038b207c40f881f103e207c40f881f103e181e9baa001132598009819000c4c966002608800313302530430010078b2082303f37540071598009818800c4c966002608800313259800981a18201baa00189919192cc004c12000a266054608e006266054002017164114608c002608c00260826ea80062c81f8c10c0062c8208c0fcdd5001c5903d207a303d375400460800071640f8607e002607e00260746ea804a2c81c04cc0b4048896600200519800981f181d9baa3028303b37540352302e303b3754607e646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130333040375460880074a14a281fa26608730014a14c103d87a8000a60103d879800040fc660866e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11800400e2946266004004608e002820904444cc10e600294298103d87a8000a60103d879800040fc660866e9c0092f5c11330439800a51a60103d87a8000a60103d879800040fc660866e9ccc10cdd400080125eb8103f207e3758608460860026eb4c108008cc008008c10800503f48888ca6002003005802400d00111112cc00400e2b30010028800c590444660020093047003982380166002608c007375a608c00500140148021044488c8cc00400400c896600200314bd7044cc896600266ebcc110c104dd5182218209baa302e304137540046056660866ea40152f5c113304300233004004001899802002000a07e3042001304300141013700900148c0fcc100c100c100c100c100c100c100c100006444b30010028a6103d87a80008acc004c0c40062606666080608200497ae08cc00400e6084005337000029000a00640f081fa4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208289980280298238022082375c60800026eacc104004c10c0050410a5eb7bdb18244b30013030303c375400513232598009821801400e2c8200dd69820800981e9baa0028b20769181f982018201820000cdc0a40012232330010010032259800800c52f5c1133041374e600660840026600400460860028202444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1140066eb4c1180066600600660940048048c1200050461bab3043003375c608000266006006608a0046086002820a44646600200200644b30010018a508acc004cdd798210009ba70038a518998010011821800a07a410122598009818181e1baa0028991919194c004c110006608800730440024889660026090009133027304700713302400213259800981c000c4c8cc89660026098003132323322598009828001c0422c8268dd718268009bae304d002304d001375860960031641246eb4c124004c128004c114dd50014566002606e0031323322598009826000c4c8c8cc896600260a00070108b209a375c609a0026eb8c134008c134004dd61825800c590491bad3049001304a00130453754005159800981e800c4c8ca60026eb4c1280066096003375a60940049112cc004c13800a264646644b3001305200380945904f1bae304f001375c609e004609e0026eb0c13400a2c82586094002608a6ea800a2b3001303600189919912cc004c130006264646644b3001305000380845904d1bae304d001375c609a004609a0026eb0c12c0062c8248dd69824800982500098229baa0028acc004c0d400626464b3001304b002805c590481bad304900130453754005159800981a000c4c8c8cc8966002609a00700d8b2094375a60940026eb4c128008c128004c114dd50014566002606600313232598009825801402e2c8240dd6982480098229baa0028acc004cdc3a401c00313232598009825801402e2c8240dd6982480098229baa0028b2086410c82190432086410c821904318219baa0018b208a182200098218009821000981e9baa0028b20769181f9820182018201820000c888ca6002003004801a00222259800801440063300100398228014cc010c11000800500320849b8848001222222222222222222980098261baa0129112cc004c05000a33001003801520009112cc004c01000e266e00004dd6982018299baa0038b20a2404d1641392259800800c5200089808198010011829800a0a091809000c8966002003148002260206600400460a600282826018019222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905444cc014014c1680110541bae3053001375a60a800260ac00282a0cc03c01000c5200048888888ca6002444464b3001304d305937540031325980099baf305e305b375460bc60b66ea8c120c16cdd500098229982e9ba90054bd704566002609b30013756609060b66ea8c120c16cdd5000c01691108747265617375727900402113259800982a182d9baa0018991980d0008992cc004c144c174dd5000c4c96600266ebcc188c17cdd51831182f9baa001304933061375201297ae08acc004c14660026eacc130c17cdd5000c02691108747265617375727900403113259800982c182f9baa0018991980f0008acc004cdd7980e98309baa0034c0103d87a800089983180299831800998319ba6329800800cdd5982798311baa00499198008009bab30503063375460a060c66ea8024896600200314bd6f7b63044c8cc19ccdd818320009ba63233001001375660cc00444b30010018a5eb7bdb182264660d466ec0c19c004dd418119bad306800133003003306c002306a00141a06600600660d200460ce00283290011112cc00400a2003132332298008034c1ac016646600200200a44b300100189983599bb037520086e9800d2f5bded8c113298009bae30690019bab306a00198370012444b30013372001000713306f337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820de880144cc1c0cdd81ba9009374c0020048360ca6002003008801a002222598008014400626466453001006983b802cc8cc0040040148966002003133077337606ea4010dd4001a5eb7bdb1822653001375c60ea003375a60ec003307a00248896600266e4002000e2660f666ec0dd48041ba80070058acc004cdc7804001c4c96600260da003100289983e19bb037520126ea000400907819b8000700289983d99bb037520066ea0008cc01801800507720ee183c000a0ec40186eb8c1c0004dd69838800983980120e289983799bb037520066e98008cc01801800506b20d61836000a0d440186eb8c190004dd59832800983380120ca4bd7045905f183198301baa0018b20bc304b305f375400316417516417460c260bc6ea80062c82e0cc024dd61824982e9baa008005305f305c3754003164168608e60b66ea8c120c16cdd5000c59059459059182e982d1baa0018b20b033005375860b860b26ea801000a600800930060064889660026092017198009bac305b3058375403b22598009826982c9baa002899192cc004c18000a0071641746eb4c178004c168dd50014590584888896600266e1cc018014c0180122b3001300d003899b890019800802c00e90004888c96600260a860c06ea800626644b3001305b306237540031323301b00115980099baf30203064375400660ce60c86ea801e2b30013375e60a260c86ea8004c19cc190dd5001c4c96600260ba60c86ea800626464b30013370e6eb4c1a8008dd6982a18339baa0068acc004cdc39bad306a001375a60a660ce6ea801a2b30013375e60d460d6002603a60ce6ea801a266e0002260026eacc150c19cdd5182a18339baa00a9bae306a00c9bae306a306b00c405116419516419516419460d400260ca6ea80062c8318c140c190dd5000c59062459062183318319baa0018b20c2306430613754002609a60c26ea8c138c184dd500245905f1980600380120408b20b68b20b691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad30663063375460cc0046eb4c198c18cdd5183300180244c9660033001002a5191112cc0040062b30013371e008911008a51899810002998351ba90043306a375200697ae0419914a0833101d44cdc4803cc004dd6182798321baa00ca400122323259800980e000c4cdc000199b83337040026eb4c154c1a0dd50021bad3054306837540091003419930010059bae306a0019bae306a306b00140506eb0c1a4c198dd500120328b20c43301d3758609c60c66ea802c8dd6183398321baa0018b20c2375660ca60cc00260ca00330010079bae306330603754604060c06ea802200d005402d164178b3001305230090018a40011598009831800c4c96600266e3cdd7182f800a44104555344720089bad30600018b20bc30620018b20c04174660386eacc050c178dd50029bae304b305e3754603c60bc6ea801a60b660b06ea80de608a60b06ea80e5222222332259800acc004c05000a2946330013053001a50a51417882f2264b3001305430603754003132332232332259800982d18331baa0018992cc004cdc399b81375a60d600200c00915980099b87375a60d660d80026eb4c1acc1b001e2b3001337129000004c56600330013302a375860d660d06ea817cdd7182a18341baa3028306837540170109bac3055306837540193306a305530683754605060d06ea802ccc1a9301054455534472004bd7052000403915980099b890033233001001375860aa60d26ea8180896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c98361baa0029bae3059306c3754605860d86ea803e91010455534472004065100141a860da0026600400460dc002835a3300100b82fcdd6982a18341baa00c9bad30243068375401900999b8000a0094035164199164199159800cc004cc0a8dd6183598341baa05f375c60a860d06ea8c0a0c1a0dd5005c0426eb0c154c1a0dd50064cc1a8c154c1a0dd5181418341baa00b3306a4c01054455534472004bd704c08c00d00e46600201705f9bad305430683754019375a604860d06ea803201300a403516419883322c83322c8330ca6002660280026eb4c1acc1a0dd50014dd7182a98341baa302830683754017375c604860d06ea8c0a0c1a0dd5005a444b3001305e306a37540071325980099baf306f306c375460de60d86ea8004c158cc1b8dd480125eb822b3001305e98009bab3059306c3754003002a4410d7374616b696e675f7661756c7400406513259800983298361baa0018991980a8008acc004cdd7981518371baa0034c0103d87a80008998381ba898009bab305b306e3754007005a441045553447200406c660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c160c1b0dd5000c5906a45906a183718359baa0038b20d21bac3053306737540bd16419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5004acc004c060006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082ccdd7183298311baa30223062375400b375a609c60c46ea801a6eb4c078c188dd5003201a329800998070009bad306530623754005375c609e60c46ea8c088c188dd5002cdd7180f18311baa30223062375400a9112cc004c160c190dd5001c4c96600266ebcc1a4c198dd5183498331baa30533066375400260a0660d06ea40092f5c1159800982c4c004dd5982998331baa305330663754003002a4410d7374616b696e675f7661756c7400404d13259800982f98331baa001899198078008998351ba898009bab30553068375460aa60d06ea800e00b48810455534472004054660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c148c198dd5182998331baa0018b20c88b20c830683065375400716418c375860c860c26ea81622c82f8c058c180dd500245905e4c00401a6eb0c184c178dd500148cdc4a40006eb4c130c17cdd5000a0209800803520009119b80001375a609860c06ea800901322b3001305000b8cc004dd6182d982c1baa01d911194c0040060090034004444b30010028acc0040062946294105f456600200314a11598009980218308011bad30610018cc00400e60c40053062001400d14a082e105f20be912cc0040062900044c06ccc008008c17800505b488cdc199b82002375a608c60b46ea8004dd69823982d1baa001982d982c1baa0379822982c1baa0394888888c9660026645300132330010010032259800800c528456600266ebcc198c18cdd5183318319baa30503063375460cc002609a660ca6ea400d2f5c114a313300200230670014184832294294505f1bac3062305f37540ac6eb8c06cc17cdd5180f982f9baa0028acc004cc896600266e1cc028008c0280262b300130110018cc00400a003223259800982b98319baa001899192cc004c15cc194dd5000c4c96600266e1cdd698350009bad30543067375400713375e60d460d6002603a60ce6ea800e294106518331baa0018a50419060a260ca6ea8c96600260bc60ca6ea80062646603c0022b30013375e604660ce6ea800cc1a8c19cdd5003456600266ebcc150c19cdd5000983518339baa0038800c59065459065183498331baa0018b20c830513065375460a460ca6ea8010c19cc190dd5000c5906219807805800a0108b20be8b20be33021375860c460be6ea8158dd71825982f9baa301f305f37540046eb0c130c17cdd5001c56600330013758609660be6ea815a6eb0c188c17cdd5001cdd61825182f9baa00248896600266e1cc010008c02c02a3300100a801488c96600260b060c86ea8006330013068306537540033758603660ca6ea800e646609e00a466ebcc1a8c19cdd50009ba70023758603660ca6ea800d22259800982d98339baa0018acc004cdd7983598341baa003306b3068375460d660d06ea801a2b30013375e60a860d06ea800cc154c1a0dd5183598341baa006899b8798009bab305530683754007375c60d6005375c60d660d800480a8cc034c96600266e20005200089812000c40050671bad30553068375400c60d660d06ea80062941066452820cc8b20cc45906319808002800a0128b20c044c14a600330010079bac3062305f3754007259800980a1bad304d3060375400313053375a609860c06ea8006294105e20229980e9bab3015305f37540ac6eb8c130c17cdd5180f982f9baa002cc00415a6eb8c188c17cdd5180f982f9baa0029bad304b305f3754007375a603660be6ea800d00a4cc064dd61825182f9baa0022375860c660c06ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a51899811004198361ba90043306c375200697ae041a114a0834101f456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c148c19cdd5005520009119912cc006600260bc0034a14a2834a264b3001337126602200200b30010089bae306f0039bae306f307000340651337000080031641a866e0800401620068348dd6183618349baa00232980080952000912cc004cdd7981118361baa002374e0071337000026eb4c164c1b0dd50014400506a203e375860d860d26ea800901c19b8100200888014590652cc004c06801e29000c5200241911641911641906eacc19cc1a00056600260ae601c0091480022b300130680048992cc004cdc79bae306400148904555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3004004452820ac4158225980099b88001480022980103d87a8000899802001000a0a822646644b30013042001899912cc004c0ccc0fcdd500144c8c8c8cc8966002609200713259800981c98229baa0018991919912cc004c13800e264b3001303e001899192cc004c14400a01d1641386eb8c13c004c12cdd5003c566002607a00315980098259baa00780645904c45904920923049375400d16412c6eb8c12c004dd71825801182580098231baa0018b208830480058b208c375c608c002608c004608c002608a00260806ea800a2c81f0c1040044c010c1080162c81f8dd7181f80098200009bac303e00240f11323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980a98109baa00189919912cc004c0a4006264b3001301930253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b8c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0dc024896600200513302701410248992cc004c0e4c114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c054c084dd5000c4c966002603660446ea8006264b3001301730233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084601c60446ea8c03cc088dd5181298111baa0018b20403300a3758601c60426ea80608c8cc004004c00cdd5980818119baa30103023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602860406ea800a2646464b3001302800289980318138018992cc004c0600062b3001302537540050058b204c8acc004c05c00626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013012301e3754005132323259800981300144cc024c09400c4c966002602c003132598009814000c4c8c9660026032003132598009815800c4cc038c0a80040262c8140c098dd500145660026030003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602a00315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d13656400801",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0Rc1ProtocolManagementProtocolManagementElse=exports.V1_0Rc1ProtocolManagementProtocolManagementElse=/*#__PURE__*/_createClass(function V1_0Rc1ProtocolManagementProtocolManagementElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0Rc1ProtocolManagementProtocolManagementElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594460010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888888896600264653001301c001980e180e800cdc3a4009301c0024888966002600460386ea800e330013020301d3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b874803246042604400323021302230220019b80480066e05200091810981118111811181118111811181118111811000cdd2a4004911111111111111194c004889660026020605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c054006264b3001001803c4c966002003159800981d80144c966002603000313259800800c02a264b30010018acc004c0f800a33001001806402d00e402d03b402e01700b805a07e303c00140e860706ea800a2b300130170018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11400e02701241086eb40060228228c1080050401bad00130410028072084303f00140f46eb4004c0f800a01681f8c0f000503a181c1baa002804a06a40d4606c6ea800601081c2011008804402103c181c800a06e30353754005159800980a000c566002606a6ea800a00f00640d900640c88190c0ccdd5000c0150084015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c96600260760070058042070375c00281d8c0e0005036181a1baa0038acc004c04c006264b300100180344c966002003007803c4c96600260760071330180012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0ec00e26603000244b3001002803c4c96600200319800805400626004607c006805201700b805c02d03f181e001207480420703758003007803a076303800140d860686ea800e2b300130120018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981f001c4cc06c004896600200500a8992cc0040063300100d800c4c008c10400d00d403a01d00e8072084303f00240f500b40ec6eb000601500a40f8607600281c8dd6800981d001401d03b181c000a06c303437540071598009808800c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002602000313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009807800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c015031206240c48189031206240c460646ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260286606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980a981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301a0018acc004c0e8dd5001401e00c81da2b300130190018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026038003159800981e1baa006804c02103d4566002603600313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783019303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002602a60686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c058006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130150018acc004c0d8dd5002400e00481ba0048199033181a1baa00348888cc89660026030606e6ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009821801c566002603e607c6ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013053002899818007112cc00400a26606401a44b30010028cc00401e330010058992cc004c0d0c14cdd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982e00144cc8966002607400313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252052825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0e4006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a504a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981f800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b300130380018992cc00400608b13259800800c11a08d132598009830801c4cc0f800489660020050078992cc00400633001001898011832001c129029412a09504a82520ca3062002418104741786eb000608d046418460bc00282e0c168dd5002c566002606e00313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252054825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a904a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981a800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea801608882b905720ae415c82b905720ae415c264b300130390018992cc00400608913259800800c56600260be00519800800c02208a813a08a82e208b045822c115060182e800a0b630593754005159800981c000c4c9660020030448992cc0040062b3001305f0028acc004c0ecc168dd5000c4c9660020030468992cc004006264b300100182444c966002003159800983180146600200719800800c032092816209281620928302093049824c1250641830800a0be3061002823c11e08f047418860be00282e8c16cdd5000c115058411505c411608b045822a0c0305d001416c60b26ea800a08682b1056182b9baa001305737540070424165042821410a08482e8c168005058182d001410208104082020b63058001415860a86ea806607c82884cc0d0054896600200519800982c182a9baa302f30553754049230353055375460b2646600200200444b30010018a5eb8503d87a80008101800044c8cc89660033001303a305a375460bc0074a14a282c22660bb30014a14c103d87a8000a60103d87980004160660ba6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18000400e294626600400460c200282d105e44cc176600294298103d87a8000a60103d87980004160660ba6e9c0092f5c113305d9800a51a60103d87a8000a60103d87980004160660ba6e9ccc174dd400080125eb8105820b0375860b860ba0026eb4c170008cc008008c17000505948888ca6002003005802400d00111112cc00400e2b30010028800c54cc16d24112657870656374205b5d203d206c6973745f6200164179159800801454cc16d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c20073061002cc004c18000e6eb4c18000a002802900420bc41792232330010010032259800800c52f5c1133225980099baf305e305b375460bc60b66ea8c0d4c16cdd500118181982e9ba90054bd7044cc174008cc01001000626600800800282c0c170004c17400505a4dc02400523059305a305a305a305a305a305a305a305a0019112cc00400a2980103d87a80008acc004c0e000626074660b460b600497ae08cc00400e60b80053030001400c82a9059488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd5982d800982e800a0b614bd6f7b630488966002607060ae6ea800e264b300100180144c966002003003801c00e264b3001305f003802c01105c1bad001801a0be305c001416860b06ea800e00282aa460b260b460b460b40032232330010010032259800800c52f5c113305b374e600660b80026600400460ba00282d2444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c17c0066eb4c1800066600600660c80048048c1880050601bab305d003375c60b40026600600660be00460ba00282da44646600200200644b30010018a508acc004cdd7982e0009ba70038a51899801001182e800a0ac416922259800981c182b9baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c96600200313259800800c022264b300130640028cc00401e330010058992cc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b300130400018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009835801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009838001c05a02a8368dd7000a0e0306d00141ac6eb8004c1b000906d1835000a0d080820d0375800300f807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c118006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c96600200301280944c96600260dc007159800800c04e264b300100180a4052029014899912cc00400602d13259800800c05e02f01780bc4c96600260e600701980c20e0375c0028398c1c000506e1bae001306f00241c060da002835a0268358dd6000c04a0248370c1ac0050691bad001306a002807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0fc006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b3001303e0018992cc00400601713259800800c03201900c8992cc004c1a000e01d00d41946eb40060188340c19400506318309baa0048acc004c0f4006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306b003808c0410681bad001807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0f0006264b3001001805c4c96600200300c8064032264b3001306800380740350651bad00180620d03065001418c60c26ea80122b30013370e9007000c4c96600200300b8992cc00400601900c80644c96600260d000700e806a0ca375a00300c41a060ca0028318c184dd5002402905e20bc417882f105e20bc417882f0c17cdd5001c02502e402503240250611831000a0c03062002803c01e00f007418c60c000282f0c18000a00b005802c015061182f000a0b8305e002801c00e007003417c60b800282d0c160dd5001c00505548c164c168c168c168c168006444653001001802400d0011112cc00400a200319800801cc17c00a6600860bc004002801905c4dc424000911111111111111114c004c194dd5008c88966002602600519800801c00a900048896600260080071337000026eb4c118c1b0dd5001c54cc1a924011a6578706563742076616c69646174696f6e287265717565737429001641a480922a660ce9212e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641992259800800c5200089807998010011836000a0d291808800c89660020031480022601e6600400460d8002834a6016017222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906c44cc014014c1cc01106c1bae306c001375a60da00260de0028368cc03801000c5200048888888ca6002444464b30013053307237540031325980099baf30773074375460ee60e86ea8c138c1d0dd500098249983b1ba90054bd70456600260a730013756609c60e86ea8c138c1d0dd5000c01691108747265617375727900402113259800982d183a1baa0018992cc004006330010018992cc004c15cc1d8dd5000c4c96600266ebcc1ecc1e0dd5183d983c1baa001304d3307a375201297ae08acc004c15e60026eacc148c1e0dd5000c026910108747265617375727900403113259800982f183c1baa0018992cc004006330010018acc004cdd7980e183d1baa0034c103d87a800089983e0029983e0009983e1ba6329800800cdd5982a983d9baa00499198008009bab3056307c375460ac60f86ea8024896600200314bd6f7b63044c8cc20004cdd8183e8009ba63233001001375660fe00444b30010018a5eb7bdb182264661060266ec0c20004004dd4182c1bad308101001330030033085010023083010014204046600600661040200461000200283f10011112cc00400a2003132332298008034c21004016646600200200a44b30010018998420099bb037520086e9800d2f5bded8c113298009bae3082010019bab3083010019843808012444b30013372001000713308801337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528211002880144cc22404cdd81ba9009374c002004842008ca6002003008801a002222598008014400626466453001006984800802cc8cc004004014896600200313309001337606ea4010dd4001a5eb7bdb1822653001375c611c02003375a611e0200330930100248896600266e4002000e2661280266ec0dd48041ba80070058acc004cdc7804001c4c96600260e6003100289984a8099bb037520126ea00040090900119b8000700289984a0099bb037520066ea0008cc01801800508f01211e02184880800a11e0240186eb8c22404004dd69845008009846008012114028998440099bb037520066e98008cc01801800508301210602184280800a1060240186eb8c1f4004dd5983f00098400080120fc4bd7041bd07741b901d41ba0dd06e83720fe307c30793754003153307749012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641d860a260f06ea80062a660ec920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641d5153307649143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641d460f460ee6ea80062a660ea92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641d0660126eb0c13cc1d8dd5004002c1a501941a60d3069834a0f6307830753754003153307349013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641c8609a60e86ea8c138c1d0dd5000c54cc1c92401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c515330724914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c460ec60e66ea80062a660e292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641c06600a6eb0c1d4c1c8dd50020014c010012600c00c9112cc004c13c02e33001375860e860e26ea8072444b300130543073375400713259800800c00a264b3001001801c00e00713259800983d801c01600883c0dd6800c00d07b183c000a0ec3074375400700141c5222225980099b87300600530060048acc004c03400e266e24006600200b003a40012223259800982d183c9baa001899912cc004c184c1ecdd5000c4c96600200319800800c56600266ebcc07cc1f4dd5001984000983e9baa0078acc004cdd7982b983e9baa001308001307d3754007132598009831983e9baa001899192cc004cdc39bad308301002375a60b46100026ea801a2b30013370e6eb4c20c04004dd6982c9840009baa0068acc004cdd7984180984200800980e9840009baa006899b8000898009bab305a308001375460b46100026ea802a6eb8c20c040326eb8c20c04c21004031014454cc1f92413665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001641f5153307e49126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001641f5153307e4912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001641f461060200260fc6ea80062a660f8921184578706563746564204f4465706f73697420616374696f6e001641ec60ac60fa6ea80060ec83d20ea83d20e880da0e907483a41d108201183f983e1baa00183920f2307d307a375400260a660f46ea8c150c1e8dd500241a107719806003801203e831a0e683120e691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307f307c375460fe0046eb4c1fcc1f0dd5183f80180244c9660033001002a5191112cc0040062b30013371e008911008a5189981000299841809ba90043308301375200697ae041f914a083f101d44cdc4803cc004dd61829983e9baa00ca400122323259800980e000c4cdc000199b83337040026eb4c16cc20404dd50021bad305a3081013754009100341f930010059bae3083010019bae30830130840100140506eb0c20804c1fcdd5001203283720f43301d375860a460f86ea802c8dd6184000983e9baa00183720f2375660fc60fe00260fc00330010079bae307c30793754603e60f26ea802200d005402d1533077490123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641d8b3001305830090018a4001159800800c19e264b3001307d0028992cc004cdc79bae307900248810455534472008800c1a90771bad307900183420f4307b00141e483a8cc06cdd5980a183b9baa005375c60a260ee6ea8c074c1dcdd50034c1d0c1c4dd50204c12cc1c4dd5020a4444446644b300159800980a0014528c6600260b20034a14a283b107644c96600260b460f26ea80062646644646644b30013060307f37540031325980099b87337026eb4c210040040180122b30013370e6eb4c21004c21404004dd6984200984280803c56600266e2520000098acc0066002660526eb0c21004c20404dd50329bae305a3081013754604e6102026ea802e021375860b66102026ea8032661060260b66102026ea8c09cc20404dd50059984180a61054455534472004bd7052000403915980099b890033233001001375860b66104026ea8198896600200314800226644b30013375e611002610a026ea8008c22004c22404c22404c22404c22404c22404c22404c22404c22404c22404c22404c21404dd5007c4cdc0000cc004dd5982f9842809baa0029bae305f30850137546056610a026ea803e910104555344720040651001420804610c0200266004004610e0200284200a3300100b832cdd6982d1840809baa00c9bad3023308101375401900999b8000a0094035153307f49012b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641f9153307f4919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001641f9159800cc004cc0a4dd61842009840809baa065375c60b46102026ea8c09cc20404dd5005c0426eb0c16cc20404dd50064cc20c04c16cc20404dd518139840809baa00b33083014c1054455534472004bd704c16000d00e4660020170659bad305a3081013754019375a60466102026ea803201300a4035153307f491b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641f883f22a660fe9213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641f9153307f4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641f865300133014001375a6108026102026ea800a6eb8c16cc20404dd518139840809baa00b9bae30233081013754604e6102026ea802d2225980098321841809baa0038992cc004cdd79844009842809baa308801308501375400260b46610e026ea40092f5c115980098324c004dd5982f9842809baa00180152210d7374616b696e675f7661756c740040651325980098359842809baa0018992cc004006330010018acc004cdd798149843809baa0034c103d87a8000899844809ba898009bab30613087013754007005a441045553447200406c6611202611402610e026ea8004cc2240400d2f5c107c4210050810140550810184080c2040610202846008c22404c21804dd5000c54cc2100524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016420c0460bc610a026ea80062a661060292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642080515330830149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016420804610e026108026ea800e2a661040292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f696478290016420404375860b26100026ea81922a660fc92013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641f466e04018004c20404c20804c20804c20804c20804c20804c1f8dd5004acc004c060006266e10cdc1002801000c5200041e86eb4c1f8004dd6983f183d9baa307e980082fcdd7183f183d9baa3021307b375400b375a60a860f66ea801a6eb4c074c1ecdd5003201a329800998070009bad307e307b3754005375c60aa60f66ea8c084c1ecdd5002cdd7180e983d9baa3021307b375400a9112cc004c178c1f4dd5001c4c96600266ebcc20804c1fcdd5184100983f9baa3059307f375400260a866102026ea40092f5c1159800982f4c004dd5982c983f9baa3059307f3754003002a4410d7374616b696e675f7661756c7400404d132598009832983f9baa0018992cc00400633001001899841809ba898009bab305b308101375460b66102026ea800e00b489045553447200405466106026108026102026ea8004cc20c0400d2f5c107b403d07b83dc1ee0f6843008c20c04c20004dd5000c1d907d182c183f9baa3059307f3754003153307d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f1153307d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f061020260fc6ea800e2a660f892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ec375860fa60f46ea817a2a660f092013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641dc602c60f26ea80122a660ee92012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641d930010069bac307a3077375400523371290001bad3052307837540028082600200d480024466e00004dd69829183c9baa002404c8acc004c15802e33001375860e860e26ea8072444653001001802400d0011112cc00400a2b30010018a518a5041e1159800800c52845660026600860f40046eb4c1e800633001003983d8014c1ec005003452820e841e083c244b30010018a40011301a33002002307700141d1223370666e08008dd6982618399baa001375a609a60e66ea800660e860e26ea8102609660e26ea8105222222325980099914c004c8cc00400400c896600200314a115980099baf307f307c375460fe60f86ea8c158c1f0dd5183f80098289983f1ba90034bd704528c4cc008008c2000400507920faa50a5141dc6eb0c1ecc1e0dd502e1bae301a30783754603c60f06ea800a2b300133225980099b87300a002300a0098acc004c04400633001002800c88c96600260ba60f86ea800626464b3001305d307e37540031325980099b87375a6106020026eb4c168c20004dd5001c4cdd7984180984200800980e9840009baa0038a5041f460fe6ea8006294107c182b983f1baa32598009832183f1baa0018992cc004006330010018acc004cdd798111840009baa003308301308001375400d15980099baf305a30800137540026106026100026ea800e200307941f507841f5077407907783bc1de0ee842808c20804c1fcdd5000c1d507c182b983f1baa3058307e375400861000260fa6ea80060d683d0cc03c02c005008419d0774199077198101bac307b307837540b86eb8c144c1e0dd5180f183c1baa002375860a460f06ea800e2b300198009bac3051307837540b9375860f660f06ea800e6eb0c138c1e0dd50012444b30013370e6008004601601519800805400a4464b3001305e307d375400319800984080983f1baa0019bac301b307e3754007323305000523375e6106026100026ea8004dd38011bac301b307e37540069112cc004c184c20004dd5000c56600266ebcc21004c20404dd50019842009840809baa308401308101375400d15980099baf305a308101375400660b66102026ea8c21004c20404dd500344cdc3cc004dd5982d9840809baa0039bae3084010029bae30840130850100240546601a64b300133710002900044c164006200283f8dd6982d9840809baa006308401308101375400314a083f2294107e454cc1fd24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641f88a9983e2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641ec6602000a002804a2a660f292013b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e67746828726571756573747329001641e08982c4c006600200f375860f660f06ea800e4b30013014375a60a660f26ea8006260b26eb4c148c1e4dd5000c52820ec40453301c3756602a60f06ea8170dd71829183c1baa301e30783754005980082e4dd7183d983c1baa301e30783754005375a60a260f06ea800e6eb4c068c1e0dd5001a0149980c9bac304e3078375400446eb0c1f0c1e4dd5000a44446530013080010019bab308001308101001984000801d6600260ba601c0091480022b300100483644c96600261040200b1325980099b8f375c60fc0049110455534472008800c1bd07c1bad307e001836a0fe30800100441f883d1222259800cc00400e9464444b30010018acc004cdc78022441008a5189981200519843809ba90043308701375200697ae042080514a0841009021456600266e1ccdc09bad30840130810137540086eb4c21004c20404dd5001000c4c96600266e1e60026eb0c160c20804dd5006520009119912cc006600260cc0034a14a284180a264b3001337126602600200b30010099bae308a010039bae308a01308b01003406d1337000080031533085014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642100466e080040162006841808dd61843809842009baa00232980080a52000912cc004cdd798121843809baa002374e0071337000026eb4c184c21c04dd5001440050840120423758610e026108026ea800901e19b8100200a8801454cc200052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641fcb3001301c0098a400314800907e41cd07e41c907e0c2000400915330764901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641d51533076491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641d5153307649142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641d460080088a5041b8837044b300133710002900045300103d87a8000899802001000a0d82264b30010018204102264b3001001820c4c966002003042821410a0851332259800800c112264b30010018acc004c17c00a264b3001303c305b375400513259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc00400609904c8264132264b300130670038acc004c10cc188dd500344c96600200304e8992cc00400609f04f827c13e26644b3001001828c4c966002003052829414a0a5132598009836801c4c966002609400313259800800c156264b300100182b415a0ad0568992cc004c1c400e02505741b86eb80050711837000a0d8306a37540171598009824800c56600260d46ea802e01f05441ad054419c8338c1a0dd5005414d06a1bae00141b460d40028340dd7000983480120d43067001419460c66ea801a09a830209a8320dd7000a0ce3064001418860c800504a825412a0948328c1880050601831001412209104882420c63060001417860b86ea800a08c82c84c01cc17c02208a82e208b045822c115060182e800a0b6375c00260b800482e8c1680050581bac001820410105b182c00120ac81ea03c81ea03c8992cc00400607d03e81f44c8c00cc164010dd6800c0f9059182b00120a88992cc00400607903c81e44c8c00cc15c010dd6800c0f1057182a00120a481ca0a081cc0e6073039415060a20028278c14400a06f03781bc0dd0521827800a09a375a002609c005034413c60980028250dd6800982580140c504c1824800a08e3758002609000502e8172092304600141106eb0004c11400a05702b411860860028208c0fcdd500340a503c40a50401bac00181440a10431820000a07c3040002813409a04d0264104607c00281e0c0f800a049024812409103f181e000a0743038375400f02240d4444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608e00719800804c6600200900c805a01e805a022805a088375a00300a411c60880028210c11000a01100880440210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d8444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c12800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13c00e02901341306eb800504f1826000a094375c00260960048260c1240050474039012403901440390471bac001806c03504a1823800a08a3047002805c02e01700b4120608a0028218dd6800982200140210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d880e407203901c40dc664464b30013014303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301833038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8054dd7181a18189baa0019800912cc004006297ae089981a1818981a80099801001181b000a0669112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206091111919800800802912cc004006200b13259800800c4cc010c0e800801a26600a60740046600600600281c0c0e80050374dd6180518181baa01448888c8c8c8cc88c966002003159800980d181c9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130430028acc004c07cc0f8dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305a0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c154dd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260cc00713304300f225980080146600201f102b827a06e8992cc0040062b300130453064375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130720038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307700389808183b808c1790741bae00141dc60e80028390dd7000983980420e8307100741bd05941bc6eb40060b08390c1bc00506d1bad001306e00282aa0de306c00141a86eb0004c1ac00a0a505241b060d20028338c194dd5000c14106241420a105082820d43067002419504d418c6eb80050661831800a0c2375c00260c40048318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a001416060ac6ea801a082829a0828142082814208281420828142082814208281420828142082814208282ba083041820c10505b182c000a0ac375800260ae00503e81f20b03055001414c60aa00503c81e40f207882b0c14c005051182980140ea07503a81d20a83051001413c60a200503881c40e20708290c13c00504d182780140da06d03681b20a0304d001412c609a00503481a40d20688270c12c005049182580140ca06503281920983049001411c609200503081840c20608250c11c005045182380140ba05d02e81720903045001410c608a00502c81640b20588230c10c005041181f9baa0018152078815208081540aa05502a4110608200281f8dd700098200012082303e00140f060746ea800604a81ba04b025812c09503f29981b99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40d522010013259800980d181c9baa00189929981c99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981d9baa0018992cc0040062b3001301d303c375400313259800800c0e6264b300100181d40ea07503a899912cc0040060791325980098230014401a07a8218c1100050421bae00130430024110608200281f8c0f4dd5000c0e103a40e207103881c2084303f303c3754003153303a49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640e4602860766ea8c054c0ecdd5000981e981d1baa0018a9981c24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640dc6601400c4646600200260066eacc054c0ecdd5180a981d9baa0022259800800c528456600266e3cdd7181f80081c4528c4cc008008c100005039207a300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c207e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81c90391bac303c002375a60740026466ec0dd4181d0009ba7303b001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a607e003337149101023a200098008054c10000600a805100a182100144ca6002015303f00199b8a489023a200098008054c100006600e66008008004805100a18210012080304200140fc66e29220102207d0000340f06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920783758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e40f866e2ccdc0000acc004cdc4000a402914818229037207c004401866e0c00520203370c002901019b8e00400240ec6eb800d03f1b8a4881022c20002232330010010032259800980c800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681b10361801801844464b300130100018992cc00400600713259800800c01200900480244c966002606e007006802a068375c00281b8c0d000503218181baa0048acc004c03c006264b3001001801c4c966002003004802401200913259800981b801c01a00a81a0dd7000a06e303400140c860606ea8012004816902d18171baa00345901a0c070004c05cdd500ec5268a9980aa491856616c696461746f722072657475726e65642066616c7365001365640501":"5921fd010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480324601c601e0032300e300f300f00191807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c010006260226603c00297ae089980180198100012034301e001407122232598009807000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300d0018992cc004c0800062660206eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc040dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0300062646644b300130220018998091bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b3001300b001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260140031323259800981080140122c80f0dd6980f800980d9baa0038acc004c02400626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c03400626464b3001302000280245901d1bae301e001301a37540071598009806000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c030c060dd500144c8c8c966002604000513232598009808800c566002603c6ea800a00d16407d1598009808000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689807180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300c30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009806800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300c0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013017302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301b33028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c058c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980b18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980b98119baa003899191919912cc004c0b400e264b3001301d30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc0a4dd6181c005912cc00400a26605600c44b300100289980e80289980e8048992cc004c0b4c0e4dd500944c8c8c9660026082005132332259800981980144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038acc004c0c800a264b3001304500189981a9bac304400122598008014012266040608c00426002608e00482222c8210c100dd5001c5660026070005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b300130310028992cc004c11400626606a6eb0c1100048966002005004899810182300109800982380120888b208430403754007159800981800144c966002608a0031330353758608800244b300100280244cc084c1180084c004c11c00904445904218201baa0038acc004c0bc00a264b3001304500189981a9bac304400122598008014012266042608c00426002608e00482222c8210c100dd5001c566002605c005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b30013370e900700144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038b207c40f881f103e207c40f881f103e181e9baa001132598009819000c4c966002608800313302530430010078b2082303f37540071598009818800c4c966002608800313259800981a18201baa00189919192cc004c12000a266054608e006266054002017164114608c002608c00260826ea80062c81f8c10c0062c8208c0fcdd5001c5903d207a303d375400460800071640f8607e002607e00260746ea804a2c81c04cc0b4048896600200519800981f181d9baa3028303b37540352302e303b3754607e646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130333040375460880074a14a281fa26608730014a14c103d87a8000a60103d879800040fc660866e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11800400e2946266004004608e002820904444cc10e600294298103d87a8000a60103d879800040fc660866e9c0092f5c11330439800a51a60103d87a8000a60103d879800040fc660866e9ccc10cdd400080125eb8103f207e3758608460860026eb4c108008cc008008c10800503f48888ca6002003005802400d00111112cc00400e2b30010028800c590444660020093047003982380166002608c007375a608c00500140148021044488c8cc00400400c896600200314bd7044cc896600266ebcc110c104dd5182218209baa302e304137540046056660866ea40152f5c113304300233004004001899802002000a07e3042001304300141013700900148c0fcc100c100c100c100c100c100c100c100006444b30010028a6103d87a80008acc004c0c40062606666080608200497ae08cc00400e6084005337000029000a00640f081fa4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208289980280298238022082375c60800026eacc104004c10c0050410a5eb7bdb18244b30013030303c375400513232598009821801400e2c8200dd69820800981e9baa0028b20769181f982018201820000cdc0a40012232330010010032259800800c52f5c1133041374e600660840026600400460860028202444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1140066eb4c1180066600600660940048048c1200050461bab3043003375c608000266006006608a0046086002820a44646600200200644b30010018a508acc004cdd798210009ba70038a518998010011821800a07a410122598009818181e1baa0028991919194c004c110006608800730440024889660026090009133027304700713302400213259800981c000c4c8cc89660026098003132323322598009828001c0422c8268dd718268009bae304d002304d001375860960031641246eb4c124004c128004c114dd50014566002606e0031323322598009826000c4c8c8cc896600260a00070108b209a375c609a0026eb8c134008c134004dd61825800c590491bad3049001304a00130453754005159800981e800c4c8ca60026eb4c1280066096003375a60940049112cc004c13800a264646644b3001305200380945904f1bae304f001375c609e004609e0026eb0c13400a2c82586094002608a6ea800a2b3001303600189919912cc004c130006264646644b3001305000380845904d1bae304d001375c609a004609a0026eb0c12c0062c8248dd69824800982500098229baa0028acc004c0d400626464b3001304b002805c590481bad304900130453754005159800981a000c4c8c8cc8966002609a00700d8b2094375a60940026eb4c128008c128004c114dd50014566002606600313232598009825801402e2c8240dd6982480098229baa0028acc004cdc3a401c00313232598009825801402e2c8240dd6982480098229baa0028b2086410c82190432086410c821904318219baa0018b208a182200098218009821000981e9baa0028b20769181f9820182018201820000c888ca6002003004801a00222259800801440063300100398228014cc010c11000800500320849b8848001222222222222222222980098261baa0129112cc004c05000a33001003801520009112cc004c01000e266e00004dd6982018299baa0038b20a2404d1641392259800800c5200089808198010011829800a0a091809000c8966002003148002260206600400460a600282826018019222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905444cc014014c1680110541bae3053001375a60a800260ac00282a0cc03c01000c5200048888888ca6002444464b3001304d305937540031325980099baf305e305b375460bc60b66ea8c120c16cdd500098229982e9ba90054bd704566002609b30013756609060b66ea8c120c16cdd5000c01691108747265617375727900402113259800982a182d9baa0018991980d0008992cc004c144c174dd5000c4c96600266ebcc188c17cdd51831182f9baa001304933061375201297ae08acc004c14660026eacc130c17cdd5000c02691108747265617375727900403113259800982c182f9baa0018991980f0008acc004cdd7980e98309baa0034c0103d87a800089983180299831800998319ba6329800800cdd5982798311baa00499198008009bab30503063375460a060c66ea8024896600200314bd6f7b63044c8cc19ccdd818320009ba63233001001375660cc00444b30010018a5eb7bdb182264660d466ec0c19c004dd418119bad306800133003003306c002306a00141a06600600660d200460ce00283290011112cc00400a2003132332298008034c1ac016646600200200a44b300100189983599bb037520086e9800d2f5bded8c113298009bae30690019bab306a00198370012444b30013372001000713306f337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820de880144cc1c0cdd81ba9009374c0020048360ca6002003008801a002222598008014400626466453001006983b802cc8cc0040040148966002003133077337606ea4010dd4001a5eb7bdb1822653001375c60ea003375a60ec003307a00248896600266e4002000e2660f666ec0dd48041ba80070058acc004cdc7804001c4c96600260da003100289983e19bb037520126ea000400907819b8000700289983d99bb037520066ea0008cc01801800507720ee183c000a0ec40186eb8c1c0004dd69838800983980120e289983799bb037520066e98008cc01801800506b20d61836000a0d440186eb8c190004dd59832800983380120ca4bd7045905f183198301baa0018b20bc304b305f375400316417516417460c260bc6ea80062c82e0cc024dd61824982e9baa008005305f305c3754003164168608e60b66ea8c120c16cdd5000c59059459059182e982d1baa0018b20b033005375860b860b26ea801000a600800930060064889660026092017198009bac305b3058375403b22598009826982c9baa002899192cc004c18000a0071641746eb4c178004c168dd50014590584888896600266e1cc018014c0180122b3001300d003899b890019800802c00e90004888c96600260a860c06ea800626644b3001305b306237540031323301b00115980099baf30203064375400660ce60c86ea801e2b30013375e60a260c86ea8004c19cc190dd5001c4c96600260ba60c86ea800626464b30013370e6eb4c1a8008dd6982a18339baa0068acc004cdc39bad306a001375a60a660ce6ea801a2b30013375e60d460d6002603a60ce6ea801a266e0002260026eacc150c19cdd5182a18339baa00a9bae306a00c9bae306a306b00c405116419516419516419460d400260ca6ea80062c8318c140c190dd5000c59062459062183318319baa0018b20c2306430613754002609a60c26ea8c138c184dd500245905f1980600380120408b20b68b20b691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad30663063375460cc0046eb4c198c18cdd5183300180244c9660033001002a5191112cc0040062b30013371e008911008a51899810002998351ba90043306a375200697ae0419914a0833101d44cdc4803cc004dd6182798321baa00ca400122323259800980e000c4cdc000199b83337040026eb4c154c1a0dd50021bad3054306837540091003419930010059bae306a0019bae306a306b00140506eb0c1a4c198dd500120328b20c43301d3758609c60c66ea802c8dd6183398321baa0018b20c2375660ca60cc00260ca00330010079bae306330603754604060c06ea802200d005402d164178b3001305230090018a40011598009831800c4c96600266e3cdd7182f800a44104555344720089bad30600018b20bc30620018b20c04174660386eacc050c178dd50029bae304b305e3754603c60bc6ea801a60b660b06ea80de608a60b06ea80e5222222332259800acc004c05000a2946330013053001a50a51417882f2264b3001305430603754003132332232332259800982d18331baa0018992cc004cdc399b81375a60d600200c00915980099b87375a60d660d80026eb4c1acc1b001e2b3001337129000004c56600330013302a375860d660d06ea817cdd7182a18341baa3028306837540170109bac3055306837540193306a305530683754605060d06ea802ccc1a9301054455534472004bd7052000403915980099b890033233001001375860aa60d26ea8180896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c98361baa0029bae3059306c3754605860d86ea803e91010455534472004065100141a860da0026600400460dc002835a3300100b82fcdd6982a18341baa00c9bad30243068375401900999b8000a0094035164199164199159800cc004cc0a8dd6183598341baa05f375c60a860d06ea8c0a0c1a0dd5005c0426eb0c154c1a0dd50064cc1a8c154c1a0dd5181418341baa00b3306a4c01054455534472004bd704c08c00d00e46600201705f9bad305430683754019375a604860d06ea803201300a403516419883322c83322c8330ca6002660280026eb4c1acc1a0dd50014dd7182a98341baa302830683754017375c604860d06ea8c0a0c1a0dd5005a444b3001305e306a37540071325980099baf306f306c375460de60d86ea8004c158cc1b8dd480125eb822b3001305e98009bab3059306c3754003002a4410d7374616b696e675f7661756c7400406513259800983298361baa0018991980a8008acc004cdd7981518371baa0034c0103d87a80008998381ba898009bab305b306e3754007005a441045553447200406c660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c160c1b0dd5000c5906a45906a183718359baa0038b20d21bac3053306737540bd16419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5004acc004c060006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082ccdd7183298311baa30223062375400b375a609c60c46ea801a6eb4c078c188dd5003201a329800998070009bad306530623754005375c609e60c46ea8c088c188dd5002cdd7180f18311baa30223062375400a9112cc004c160c190dd5001c4c96600266ebcc1a4c198dd5183498331baa30533066375400260a0660d06ea40092f5c1159800982c4c004dd5982998331baa305330663754003002a4410d7374616b696e675f7661756c7400404d13259800982f98331baa001899198078008998351ba898009bab30553068375460aa60d06ea800e00b48810455534472004054660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c148c198dd5182998331baa0018b20c88b20c830683065375400716418c375860c860c26ea81622c82f8c058c180dd500245905e4c00401a6eb0c184c178dd500148cdc4a40006eb4c130c17cdd5000a0209800803520009119b80001375a609860c06ea800901322b3001305000b8cc004dd6182d982c1baa01d911194c0040060090034004444b30010028acc0040062946294105f456600200314a11598009980218308011bad30610018cc00400e60c40053062001400d14a082e105f20be912cc0040062900044c06ccc008008c17800505b488cdc199b82002375a608c60b46ea8004dd69823982d1baa001982d982c1baa0379822982c1baa0394888888c9660026645300132330010010032259800800c528456600266ebcc198c18cdd5183318319baa30503063375460cc002609a660ca6ea400d2f5c114a313300200230670014184832294294505f1bac3062305f37540ac6eb8c06cc17cdd5180f982f9baa0028acc004cc896600266e1cc028008c0280262b300130110018cc00400a003223259800982b98319baa001899192cc004c15cc194dd5000c4c96600266e1cdd698350009bad30543067375400713375e60d460d6002603a60ce6ea800e294106518331baa0018a50419060a260ca6ea8c96600260bc60ca6ea80062646603c0022b30013375e604660ce6ea800cc1a8c19cdd5003456600266ebcc150c19cdd5000983518339baa0038800c59065459065183498331baa0018b20c830513065375460a460ca6ea8010c19cc190dd5000c5906219807805800a0108b20be8b20be33021375860c460be6ea8158dd71825982f9baa301f305f37540046eb0c130c17cdd5001c56600330013758609660be6ea815a6eb0c188c17cdd5001cdd61825182f9baa00248896600266e1cc010008c02c02a3300100a801488c96600260b060c86ea8006330013068306537540033758603660ca6ea800e646609e00a466ebcc1a8c19cdd50009ba70023758603660ca6ea800d22259800982d98339baa0018acc004cdd7983598341baa003306b3068375460d660d06ea801a2b30013375e60a860d06ea800cc154c1a0dd5183598341baa006899b8798009bab305530683754007375c60d6005375c60d660d800480a8cc034c96600266e20005200089812000c40050671bad30553068375400c60d660d06ea80062941066452820cc8b20cc45906319808002800a0128b20c044c14a600330010079bac3062305f3754007259800980a1bad304d3060375400313053375a609860c06ea8006294105e20229980e9bab3015305f37540ac6eb8c130c17cdd5180f982f9baa002cc00415a6eb8c188c17cdd5180f982f9baa0029bad304b305f3754007375a603660be6ea800d00a4cc064dd61825182f9baa0022375860c660c06ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a51899811004198361ba90043306c375200697ae041a114a0834101f456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c148c19cdd5005520009119912cc006600260bc0034a14a2834a264b3001337126602200200b30010089bae306f0039bae306f307000340651337000080031641a866e0800401620068348dd6183618349baa00232980080952000912cc004cdd7981118361baa002374e0071337000026eb4c164c1b0dd50014400506a203e375860d860d26ea800901c19b8100200888014590652cc004c06801e29000c5200241911641911641906eacc19cc1a00056600260ae601c0091480022b300130680048992cc004cdc79bae306400148904555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3004004452820ac4158225980099b88001480022980103d87a8000899802001000a0a822646644b30013042001899912cc004c0ccc0fcdd500144c8c8c8cc8966002609200713259800981c98229baa0018991919912cc004c13800e264b3001303e001899192cc004c14400a01d1641386eb8c13c004c12cdd5003c566002607a00315980098259baa00780645904c45904920923049375400d16412c6eb8c12c004dd71825801182580098231baa0018b208830480058b208c375c608c002608c004608c002608a00260806ea800a2c81f0c1040044c010c1080162c81f8dd7181f80098200009bac303e00240f11323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980a98109baa00189919912cc004c0a4006264b3001301930253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b8c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0dc024896600200513302701410248992cc004c0e4c114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c054c084dd5000c4c966002603660446ea8006264b3001301730233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084601c60446ea8c03cc088dd5181298111baa0018b20403300a3758601c60426ea80608c8cc004004c00cdd5980818119baa30103023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602860406ea800a2646464b3001302800289980318138018992cc004c0600062b3001302537540050058b204c8acc004c05c00626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013012301e3754005132323259800981300144cc024c09400c4c966002602c003132598009814000c4c8c9660026032003132598009815800c4cc038c0a80040262c8140c098dd500145660026030003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602a00315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d13656400801",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0Rc1ProtocolMintProtocolMintWithdraw=exports.V1_0Rc1ProtocolMintProtocolMintWithdraw=/*#__PURE__*/_createClass(function V1_0Rc1ProtocolMintProtocolMintWithdraw(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0Rc1ProtocolMintProtocolMintWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5942e3010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a49856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a202020202900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888888896600264653001301e001980f180f800cdc3a4009301e00248889660026004603c6ea800e330013022301f37540072302330243024001918119812000cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c9b80480066e05200091811981218121812181218121812181218121812000cdd2a4004911111111111111194c00488966002601c60626ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e800a330010038992cc004c04c006264b3001001803c4c966002003159800981e80144c966002602c00313259800800c02a264b30010018acc004c10000a33001001806402d00e402d03d402e01700b805a082303e00140f060746ea800a2b300130150018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11c00e02701241106eb40060228238c1100050421bad00130430028072088304100140fc6eb4004c10000a0168208c0f800503c181d1baa002804a06e40dc60706ea800601081d2011008804402103e181d800a072303737540051598009809000c566002606e6ea800a00f00640e100640d081a0c0d4dd5000c0150084015037401600b005802a076303800140d86070005003801c00e00681c8c0d800503418191baa003800a05e911194c004006009003400444464b300130120018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa0038acc004c044006264b300100180344c966002003007803c4c966002607a0071330160012259800801401e264b30010018cc00402a003130023040003402900b805c02e0168208c0f800903c402103a1bac001803c01d03d181d000a07030363754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0f400e26602c00244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130100018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009820001c4cc064004896600200500a8992cc0040063300100d800c4c008c10c00d00d403a01d00e8072088304100240fd00b40f46eb000601500a4100607a00281d8dd6800981e001401d03d181d000a070303637540071598009807800c4c9660020030068992cc00400600f007803c4c966002607a0070058042074375a00300740f4607400281c0c0d8dd5001c566002601c00313259800800c01a264b3001001803c01e00f13259800981e801c01601081d0dd6800c01d03d181d000a070303637540071598009806800c4c9660020030068992cc00400600f007803c01e264b3001303d003802c02103a1bae00140f4607400281c0c0d8dd5001c015033206640cc8199033206640cc60686ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260246606c00297ae0899801801981c0012062303600140d091119192cc00400633001222598009809981b1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303f0028cc00400e264b300130180018acc004c0f0dd5001401e00c81ea2b300130170018992cc00400600f13259800800c02201100880444c966002608600700a804a080375c0028218c10000503e181e1baa0028acc004c07c006264b3001001803c4c9660026084005009804207e304000140f860786ea800a00c81c90392072303a3754003005403100540f1005802c01600a8200c0f400503b181e801400e007003801a07c303b00140e4606e6ea800e00281a2444b300130133036375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607800315980099b8948010c0ec00600d13259800982080244c9660026034003159800981f1baa006804c02103f4566002603200313259800800c026264b3001001805402a015132598009822801c0320168210dd6800c0290451821000a080303e375400d1598009810800c566002607c6ea801a01300840fd00840ec81d903b181e1baa005803a07c3017303b00140e500640f46ea800600b005802c015040181e800a076303d002801c00e00700340f8607600281c8c0dcdd5001c0050344889660026026606c6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d132598009820801c02200e81f0dd6800c019041181f000a078375c002607a00481f0c0ec005039181b9baa003800a068911192cc004c050006264b3001001801c4c9660020030048024012264b3001303f003803401503c1bad001802207e303c00140e860706ea80122b300130130018acc004c0e0dd5002400e00481ca00481a9035181b1baa00348888cc8966002602c60726ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009822801c566002603a60806ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013055002899817007112cc00400a26606001a44b30010028cc00401e33001005899192cc004c0ccc158dd500d44c9660020030408992cc004006264b300100182144c966002003159800982f80144cc8966002607200313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a054825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0e0006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40a904b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b1598009820000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130370018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c566002606c00313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a056825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0d4006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40ad04b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b159800981a000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130080018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c11505a20b4416882d105a20b4416882d04c966002607000313259800800c116264b30010018acc004c18800a330010018044119028411905f411a08d04682320c63060001417860b86ea800a2b300130370018992cc00400608b13259800800c56600260c4005159800981d182e9baa0018992cc00400608f13259800800c4c9660020030498992cc0040062b300130660028cc00400e33001001806412902d412902d4129063412a09504a82520ce3064001418860c800504882441220908328c188005060182f1baa00182320b682320be823411a08d046418c60c000282f0c170dd5001411105920b2305a375400260b46ea800e08682e2087043821c10d060182e800a0b6305d002820c106083041417860b600282c8c15cdd500d40fd05409981980b112cc00400a33001305b30583754606e60b06ea809645300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa303b305c375460be002605e660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303d305e37540046062660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230343058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013039305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48896600200514c103d87a80008acc004c0dc00626072660ba60bc00497ae08cc00400e60be0053031001400c82c105c488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064175133005005306400441746eb8c174004dd5982f0009830000a0bc14bd6f7b6304dc024005222329800800c012006800888966002005159800800c528c52820be8acc00400629422b3001330043061002375a60c200319800801cc18800a60c4002801a294105b20be417d25980099b88001480022605c003100141592305c305d305d305d0019112cc004c0dcc168dd5001c4c9660020030028992cc004006007003801c4c96600260c400700580220be375a003003418860be00282e8c16cdd5001c00505848c170c174c174c174c174006460b860ba60ba60ba60ba60ba60ba60ba60ba003222329800800c01200680088896600200510018cc00400e60c4005330043061002001400c82fa4466e0ccdc10011bad303a305a37540026eb4c0e4c168dd5000cdc424001371e9110455534472009112cc004c0dcc168dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983380146600200f19800802c4c966002608000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002608e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130710038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001307600380cc0610731bae00141d860e60028388dd7000983900120e6307000141b901341b86eb000602501241c460dc0028360dd68009836801403d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981e800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607600313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc306437540091598009807800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd5002402906120c24184830906120c241848308c188dd5001c02502f402503340250641832800a0c63065002803c01e00f007419860c60028308c18c00a00b005802c0150641830800a0be3061002801c00e007003418860be00282e8c16cdd5001c005058488cc0a40088cdd7982f182d9baa001374e00491111111111111111114c004c1a8dd5009c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c54cc1c1240112657870656374205b5d203d206c6973745f62001641cd159800801454cc1c12411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260ec007307600299912cc004c01c00a266e0000cdd69829983a1baa00283020e23075003375a60ea004802107320e68a9983624812e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641ad300f00f912cc0040062900044c03ccc008008c1c400506e489660020031480022601e6600400460e200283724446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e2899802802983c00220e2375c60e20026eb4c1c8004c1d0005072198090020018a40012259800800c5200089807998010011838800a0dc91808800c88c96600260a260da6ea8006264b30010018cc0040062b30013375e601c60de6ea800cc1c8c1bcdd5002456600266ebcc138c1bcdd5000983918379baa0038800c18906c418506c418100641820c106083020e83071306e375400305e41ac609a60da6ea8c130c1b4dd50012444444445300130060069802802c896600266e2000520008a6103d87a8000899804801000a0e69801801a4444646644b300130570108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea8006264b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0029bac305e307f3754007375860a660fe6ea80092225980099b87300d003300d0078acc004c04000a33001003801488c96600260c26108026ea800626464b3001306330860137540031323298009980f804000cdd618131844809baa0049bad308c0100248896600260d06116026ea800e2b30013371264664466e0cc194cdc019b82001375a60de611e026ea800c008008dd698361846809baa001375a60d8611a026ea8020c23c04c23004dd5001cc004dd598359846009baa306b308c013754015375c611e02005375c611e0261200200480e22b30013370e0026eb4c1acc23004dd5003c4cdd79ba70043029308c01375400f14a084480a294108901454cc228052414365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164224043758611602611802002610e026ea800629410840118331843009baa3301300400130880130850137540030744208046601c012002811a0e083fa0de83f9159800cc004dd6182f983f9baa0618024dd6184100983f9baa0039984080982f183f9baa301b307f37540046610202981054455534472004bd70200a899b879800801418690004dd6982f983f9baa0039bad301e307f3754007004401800306a41f1153307d49018f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641f130010039bac308101307e375400523018375a60bc60fe6ea800501241a107b22b300130560108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea80062b30019800998121bac308101307e37540c06eb8c178c1f8dd5180d183f1baa0019bac305d307e37540053308001305d307e3754603460fc6ea8004cc20005301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c180c20c04dd5000c4c8c96600260c2610a026ea800626464b3001337120033001375660ce6110026ea8c19cc22004dd5003cdd71845808044dd718458098460080420308acc004cdc3800982e9bad3067308801375400913375e611602611802004604a6110026ea80122941085014528210a02375a611402002610c026ea800629410830118329842809baa3301200400130870130840137540030734204046601a01000281120de83f20dc83f1159800cc004dd6182f183f1baa0609bac308101307e3754005375860a460fc6ea80052225980099b87300d002300c0068cc00401a00522325980098301841809baa0018cc004c21c04c21004dd5000cdd618109842009baa0039980d0021bac302130840137540069112cc004c18cc21804dd5000c56600266ebcc22804c21c04dd50019845009843809baa308a01308701375400d15980099baf3067308701375400660cc610e026ea8c22804c21c04dd500344cdc3cc004dd598331843809baa0039bae308a010029bae308a01308b01002405c66042604e6eb4c198c21c04dd50031845009843809baa0018a5042100514a084200a2a6610a029215365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642100483ea102023300d005001408907941f8899b879800800c18290004dd6982f183f1baa0029bad301d307e3754005003401530010039bac308101307e37540052337106eb4c178c1fcdd5000a400080922a660f89219e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641ed153307c491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641ed06841ec8992cc004c14c04633001375860fe60f86ea809260fe60f86ea812660b660f86ea812922259800998131bac308201307f37540c26eb8c078c1fcdd5180d983f9baa0018992cc004cc896600266e1cc034008c03401a2b300130100018cc00400a00322325980098309842009baa001899912cc004c1a8c21804dd5000c4c96600200319800800c56600266ebcc09cc22004dd50019845809844009baa0068acc004cdd798339844009baa001308b0130880137540071325980098301844009baa001899b87375a6118026112026ea8004dd698341844809baa0048a5042180460d06110026ea80060f684280a0f484280a0f280fa0f307983cc1e508d011845009843809baa00183ba10802308801308501375400260ca610a026ea8c190c21404dd5001c1d10820119807004000a04683820fe837a0fe3302637586106026100026ea8188dd718301840009baa301c30800137540046eb0c17cc20004dd5001c5660033001375860c06100026ea818a00937586106026100026ea800e661040260be6100026ea8c070c20004dd50011984100a61054455534472004bd70200c8991919912cc004cdc3acc004c180c0340062900045660020030788992cc004c2240400a264b3001301e375c610a02005100183da10602375a610a02003079421804610e0200284280908101002c56600266e1ccdc09bad3087013084013754610e020066eb4c21c04c21004dd5184380802002c4cc024dd6182c1842009baa006232306298008024dd7184480800cdd7184480984500800a02c3758611002610a026ea80060fc84080a2a661040292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e7400164204046eacc21404c21804004cc094dd5980f9841009baa064375c60c26104026ea8c078c20804dd5002184280800cc00418a6eb8c20c04c20004dd5180e1840009baa0029bad30603080013754007375a603e6100026ea800d00841ad07d454cc1f9241776578706563740a2020202076616c69646174655f6469726563745f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641f530010039bac308201307f375400523019375a60be6100026ea800501341a507c22b300130270118cc004dd6183f983e1baa024983f983e1baa049982d983e1baa04a4889660026604c6eb0c20804c1fcdd50309bae301e307f3754603660fe6ea80062b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0019bac305e307f37540053308101305e307f3754603660fe6ea8004cc20405301054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c184c21004dd5000c4cc896600260d4610c026ea8006264b30010018cc0040062b30013375e604e6110026ea800cc22c04c22004dd5003456600266ebcc19cc22004dd50009845809844009baa0038992cc004c0d0c22004dd5000c4c96600266e2400660026eacc1a4c22804dd518349845009baa0089bae308d010099bae308d01308e01009406913370e00260be6eb4c1a4c22804dd5002c528210e02375a6118026112026ea800629410860118341844009baa00183da10a0283d210a0283ca03e83cc1e60f3079423404611402610e026ea80060ee842008c22004c21404dd500098329842809baa306430850137540070744208046601c010002811a0e083fa0de83f9198009bad305f307f3754005375a603c60fe6ea800b3001003a4001225980099b88375a60c06102026ea80092000899b80001375a60c06102026ea800a0da83f101a4cc088dd5980e183f9baa061375c60bc60fe6ea8c06cc1fcdd5000a4444646464b30013370eb30013062300f0048a400115980080241ea264b3001308b010058992cc004c080dd7184380801440060fa842808dd6984380800c1ed08801184480802210e02420c0400b15980099b87337026eb4c22404c21804dd51844808011bad308901308601375461120200600b13300b375860b4610c026ea80208c8c1926002007375c611602003375c61160261180200280c0dd61845009843809baa0018a9984200a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016420c051533084014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016420c046eacc22004c22404004c2200400660020cb375c610c026106026ea8c07cc20c04dd5002c0120068059153307d491896578706563740a2020202076616c69646174655f6469726563745f6275726e5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641f106941f08a5041e483c888c8cc00400400c896600200314a31598009801984100800c4cc008008c20c04006294107c21000241e083c0888888cc88ca60026eacc21404c2180400664660020026eb0c15cc20c04dd5005112cc004006297ae0899843009843809842009baa3087010013300200230880100142140559800982f1805801c520008acc00400e0ed1325980098438080244c96600260386eb8c20c0400a20030794204046eb4c20c040060ee842008c2140400d0830120fe488966002646600200200844b30010018a518991991199119801001000912cc004006200713233225980099802802984980802456600266e3c01d221008a518991919800800807112cc00400629422b30013375e612a020026e9c00e2946266004004612c020028478090930119848809ba90073309101375200497ae042300514a0846008dd71846008009bad308d01001308f010014234046eacc2280400cdd718438080099801801984600801184500800a110028acc004cdc399b81375a611002610a026ea8c22004010dd69844009842809baa3088010050018992cc004cdc3cc004dd6182d1843009baa00da400122332259800cc004c1980069429450870144c96600266e24cc0940040166002013375c611c02007375c611c02611e0200680da266e000100062a66112029212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642200466e080040162006843808dd61845809844009baa002329800805d2000912cc004cdd798141845809baa002374e0071337000026eb4c1a8c22c04dd50014400508801204837586116026110026ea800902119b8100200b8801454cc210052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016420c04b3001301e00a8a40031480090820141fd08201454cc20c052401b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a20202020290016420804308501001330223756603860fe6ea8014dd7182f183f9baa301b307f375400d30010059bae308201307f3754603660fe6ea801a007002401c4444b30013370e6012004601000719800801c00a4464b3001305c307f37540031325980099baf30840130810137540026108026102026ea8c21004c20404dd5002456600266ebcc184c20404dd500098301840809baa308401308101375400913370f3001375660c06102026ea80066eb8c210040166eb8c18001501118109bad3060308101375400914a083f2294107e1841809840009baa00183ca0fa33009006001407907541e8444464b30013059307c37540031325980099baf308101307e375461020260fc6ea8c174c1f8dd5000982899840009ba90054bd70456600260b33001375660ba60fc6ea8c174c1f8dd5000c016911087472656173757279004039132598009831183f1baa0018992cc004006330010018992cc004c174c20004dd5000c4c96600266ebcc21404c20804dd51842809841009baa00130553308401375201297ae08acc004c17660026eacc184c20804dd5000c02691010874726561737572790040491325980098331841009baa0018992cc004006330010018acc004cdd798119842009baa0034c103d87a800089984300802998430080099843009ba6329800800cdd598321842809baa00499198008009bab3065308601375460ca610c026ea8024896600200314bd6f7b63044c8cc22804cdd81843808009ba63233001001375661120200444b30010018a5eb7bdb1822646611a0266ec0c22804004dd418301bad308b0100133003003308f01002308d01001422c04660060066118020046114020028440090011112cc00400a2003132332298008034c23804016646600200200a44b30010018998470099bb037520086e9800d2f5bded8c113298009bae308c010019bab308d010019848808012444b30013372001000713309201337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528212402880144cc24c04cdd81ba9009374c002004847008ca6002003008801a002222598008014400626466453001006984d00802cc8cc004004014896600200313309a01337606ea4010dd4001a5eb7bdb1822653001375c613002003375a613202003309d0100248896600266e4002000e26613c0266ec0dd48041ba80070058acc004cdc7804001c4c96600260f2003100289984f8099bb037520126ea000400909a0119b8000700289984f0099bb037520066ea0008cc01801800509901213202184d80800a1320240186eb8c24c04004dd6984a00800984b008012128028998490099bb037520066e98008cc01801800508d01211a02184780800a11a0240186eb8c21c04004dd59844008009845008012110024bd70454cc2080524126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642040507b408907b83dc1ee0f6844808c21804c20c04dd5000c54cc2040524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642000460c46104026ea80062a6610002920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641fd15330800149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641fc6108026102026ea80062a660fe92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641f8660146eb0c180c20004dd5004002c1d901e41da0ed07683b210a02308201307f3754003153307d49013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641f060bc60fc6ea8c174c1f8dd5000c54cc1f12401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641ed153307c4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641ec61000260fa6ea80062a660f692013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641e86600c6eb0c1fcc1f0dd500200108992cc0040060830418992cc00400608513259800800c10e087043821c4cc89660020030458992cc0040062b300130620028992cc004c0ecc178dd500144c9660020030488992cc004006264b300100182544c96600200313259800800c132264b3001001826c13609b04d8992cc004c1a800e2b300130423065375400d13259800800c13e264b300100182841420a1050899912cc0040060a513259800800c14e0a7053829c4c96600260e0007132598009824800c4c9660020030568992cc0040060af05782bc15e264b3001307400380941610711bae00141d060e20028378c1b4dd5005c566002609000315980098369baa00b807c15506e415506a20d4306b375401505441b46eb80050701836800a0d6375c00260d80048368c1a800506818331baa00682720c682720ce375c0028350c19c0050651833801412e09704b825a0d03065001418c60ca005049824c1260928330c18c005061182f9baa002823a0b813007306200882320be823411a08d046418c60c000282f0dd7000982f80120c0305d001416c6eb0006083041417860b600482c8dc3a401d03d407903d407913259800800c0fa07d03e8991801982d8021bad00181f20b63058002415913259800800c0f207903c8991801982c8021bad00181e20b230560024151039414903981cc0e607282b0c14c005051182980140de06f03781ba0a83051001413c6eb4004c14000a0688288c13800504c1bad001304d002818a09c304b00141246eb0004c12800a05d02e412c60900028230dd6000982380140ae0568240c11400504318209baa006814a07c814a0843758003028814208a304200141006084005026813409a04c8218c10000503e182000140920490248122082303e00140f060746ea801e04481b888966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018992cc00400601313259800800c02a01500a8992cc004c12400e330010098cc00401201900b403d00b404500b41186eb40060148248c11800504418230014022011008804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c088966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009826001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009828801c0520268270dd7000a0a2304e00141306eb8004c13400904e1825800a092807202480720288072092375800300d806a0983049001411c609200500b805c02e0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c101c80e407203881c8cc88c9660026024606a6ea80062606c6466ec0c0e8004c0e8c0ec004dd6181c981b1baa0018a9981a24818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640cc646600200200644b30010018a60103d87a80008992cc004cdd7981b80099ba548010cc0e8c02ccc0e8dd480225eb812f5c1130163303a374e66074606e00266074607000297ae04bd7044cc00c00cc0f0009035181d000a0703756600e60666ea8054dd7181b18199baa0019800912cc004006297ae089981b1819981b80099801001181c000a06a9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206491111919800800802912cc004006200b13259800800c4cc010c0f000801a26600a60780046600600600281d0c0f00050394dd6180898191baa01448888c8c8c8cc88c966002003159800980c181d9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130450028acc004c074c100dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305c0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d0c15cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260d000713304100f225980080146600201f102b827a06e8992cc0040062b300130433066375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130740038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307900389808183c808c1790761bae00141e460ec00283a0dd7000983a80420ec307300741c505941c46eb40060b083a0c1c400506f1bad001307000282aa0e2306e00141b06eb0004c1b400a0a505241b860d60028348c19cdd5000c14106441420a105082820d83069002419d04d41946eb80050681832800a0c6375c00260c80048328c1880050601bae0013061002418860be00282e8dd7000982f00120be305c001416860b06ea801a08282aa0828142082814208281420828142082814208281420828142082814208282ca083041820c10505d182d000a0b0375800260b200503e81f20b43057001415460ae00503c81e40f207882c0c154005053182a80140ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f182880140da06d03681b20a4304f0014134609e00503481a40d20688280c13400504b182680140ca065032819209c304b0014124609600503081840c20608260c124005047182480140ba05d02e817209430470014114608e00502c81640b20588240c11400504318209baa001815207c815208481540aa05502a411860860028208dd700098210012086304000140f860786ea800604a81ca04b025812c09504129981c99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40dd22010013259800980c181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981e9baa0018992cc0040062b3001301b303e375400313259800800c0ee264b300100181e40f207903c899912cc00400607d1325980098240014401a07e8228c1180050441bae0013045002411860860028208c0fcdd5000c0e903c40ea07503a81d20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec603a607a6ea8c070c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46601400c4646600200260066eacc070c0f4dd5180e181e9baa0022259800800c528456600266e3cdd7182080081d4528c4cc008008c10800503b207e300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20825980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d903b1bac303e002375a60780026466ec0dd4181e0009ba7303d001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6082003337149101023a200098008054c10800600a805100a182200144ca6002015304100199b8a489023a200098008054c108006600e66008008004805100a182200120843044001410466e29220102207d0000340f86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039009207c3758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e410066e2ccdc0000acc004cdc4000a4029148182290372080004401866e0c00520203370c002901019b8e00400240f46eb800d0411b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681c10381801801844464b3001300e0018992cc00400600713259800800c01200900480244c9660026072007006802a06c375c00281c8c0d800503418191baa0048acc004c034006264b3001001801c4c966002003004802401200913259800981c801c01a00a81b0dd7000a072303600140d060646ea8012004817902f18181baa00345901c0c078004c064dd500fc5268a9980ba491856616c696461746f722072657475726e65642066616c7365001365640581":"5922b1010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c91807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601e6603c00297ae089980180198100012034301e001407122232598009806000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300b0018992cc004c08000626601c6eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc038dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0280062646644b300130220018998081bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b30013009001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260100031323259800981080140122c80f0dd6980f800980d9baa0038acc004c01c00626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c02c00626464b3001302000280245901d1bae301e001301a37540071598009805000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c028c060dd500144c8c8c966002604000513232598009807800c566002603c6ea800a00d16407d1598009807000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689806180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300a30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009805800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300a0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013015302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301933028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c050c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980a18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980a98119baa003899191919912cc004c0b400e264b3001301b30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc09cdd6181c005912cc00400a26605200c44b300100289980e80289980e804899192cc004c0b0c0e8dd5009c4c8c8c9660026084005132332259800981900144c966002608c0031330343758608a00244b300100280244cc084c11c0084c004c12000904545904318209baa0038acc004c0c400a264b3001304600189981a1bac304500122598008014012266042608e004260026090004822a2c8218c104dd5001c5660026072005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130300028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b208630413754007159800981780144c966002608c0031330343758608a00244b300100280244cc088c11c0084c004c12000904545904318209baa0038acc004c0b800a264b3001304600189981a1bac304500122598008014012266044608e004260026090004822a2c8218c104dd5001c566002605a005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130080028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b2086304137540071640fc81f903f207e40fc81f903f207e303e3754002264b300130310018992cc004c11400626604c608800200f16410860806ea800e2b300130300018992cc004c114006264b3001303330413754003132323259800982480144cc0acc12000c4cc0ac00402e2c8230c11c004c11c004c108dd5000c590401822000c5904218201baa0038b207c40f8607c6ea8008c10400e2c81f8c100004c100004c0ecdd5009c59039099816009912cc00400a33001303f303c3754606060786ea806e45300132330010010032259800800c528456600266ebcc10cc100dd5182198201baa30343040375460860026054660846ea400d2f5c114a3133002002304400140f8820a94294503c488c8cc00400400c896600200314bd7044cc896600266ebcc114c108dd5182298211baa3036304237540046058660886ea40152f5c113304400233004004001899802002000a0803043001304400141052302d303c37546080646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001303230413754608a0074a14a2820226608930014a14c103d87a8000a60103d87980004100660886e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11c00400e29462660040046090002821104544cc112600294298103d87a8000a60103d87980004100660886e9c0092f5c11330449800a51a60103d87a8000a60103d87980004100660886e9ccc110dd400080125eb8104020803758608660880026eb4c10c008cc008008c10c00504048896600200514c103d87a80008acc004c0c00062606466082608400497ae08cc00400e6086005337000029000a00640f482024464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208489980280298240022084375c60820026eacc108004c1100050420a5eb7bdb1826e012002911194c0040060090034004444b30010028acc00400629462941043456600200314a11598009980218228011bad30450018cc00400e608c0053046001400d14a0820104320869b81480024608060826082608200322598009817981e9baa002899192cc004c11000a0071641046eb4c108004c0f8dd500145903c48c100c104c104c104c1040064608060826082608260826082608260826082003222329800800c01200680088896600200510018cc00400e608c005330043045002001400c821a4466e0ccdc10011bad3033303e37540026eb4c0c8c0f8dd5000cdc424001371e911045553447200912cc004c0bcc0f4dd500144c8c8c8ca6002608a003304500398228012444b3001304900489981418240038998128010992cc004c0dc0062646644b3001304d0018991919912cc004c14400e0211641386eb8c138004dd7182700118270009bac304c0018b2094375a60940026096002608c6ea800a2b3001303600189919912cc004c134006264646644b3001305100380845904e1bae304e001375c609c004609c0026eb0c1300062c8250dd69825000982580098231baa0028acc004c0f8006264653001375a6096003304c0019bad304b002488966002609e005132323322598009829801c04a2c8280dd718280009bae305000230500013758609c005164130304b00130463754005159800981a800c4c8cc8966002609a003132323322598009828801c0422c8270dd718270009bae304e002304e001375860980031641286eb4c128004c12c004c118dd50014566002606800313232598009826001402e2c8248dd6982500098231baa0028acc004c0cc006264646644b3001304e003806c5904b1bad304b001375a60960046096002608c6ea800a2b30013032001899192cc004c13000a0171641246eb4c128004c118dd50014566002601a00313232598009826001402e2c8248dd6982500098231baa0028b20884110822104420884110822104418221baa0018b208c182280098220009821800981f1baa0028b20789119813801119baf3042303f37540026e9c0092222222222222222222980098271baa0139112cc004c04c00a2653001001802400e90002002222259800801c56600200510018b20ae8cc00401260b4007305a00299912cc004c01c00a266e0000cdd69826182c1baa0028b20ac3059003375a60b200480210574590504c03c03e44b30010018a40011300f33002002305500141492259800800c520008980799801001182a800a0a491119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c82b226600a00a60b800882b0dd7182a8009bad3056001305800141586602400800629000496600266e20005200089806000c400504e489660020031480022601e6600400460aa002829246022003223259800982518289baa001899198030008acc004cdd7980718299baa00330563053375400915980099baf30473053375400260ac60a66ea800e200316414516414460aa60a46ea80062c8280c118c144dd5182298289baa0024888888888a6002600e00f3006006912cc004cdc4000a400114c0103d87a8000899805001000a0b29801801a4444646644b300130510118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac3057306337540053758609c60c66ea80052225980099b87300c003300c0068acc004c03c00a33001003801488c96600260b460d06ea800626464b3001305c306a37540031323298009980f804000cdd6181318369baa0049bad307000248896600260c260de6ea800e2b30013371264664466e0ccdc019b80337040026eb4c1a0c1ccdd5001801240020046eb4c194c1c4dd50009bad30653071375401060e660e06ea800e60026eacc190c1c0dd5183218381baa00a9bae30730029bae30733074002407115980099b87001375a60c860e06ea801e266ebcdd3802181498381baa0078a5041b914a083722c83706eb0c1bcc1c0004c1acdd5000c52820d2305f306a37546602400800260d860d26ea80062c8338cc03402000502345906445906422b300198009bac3058306337540b50039bac30663063375400533065305730633754603660c66ea8004cc195301054455534472004bd702008899b879800800c16a90004dd6982c18319baa0029bad301e30633754005003401530010039bac30663063375400523019375a60b060c86ea800501345906145906145906122b300130500118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac30573063375400533065305730633754603660c66ea8004cc195301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c168c1a0dd5000c4c8c96600260b660d46ea800626464b3001337120033001375660c260da6ea8c184c1b4dd5003cdd718380044dd71838183880420328acc004cdc380098149bad3061306d375400913375e60e060e2004604c60da6ea8012294106b452820d6375a60de00260d66ea80062941069182f98351baa33012004001306c3069375400316419c6601a010002811a2c83222c8321159800cc004dd6182c18319baa05a9bac3066306337540053758609c60c66ea80052225980099b87300d002300c0068cc00401a005223259800982d18341baa0018cc004c1b0c1a4dd5000cdd6181118349baa0039980d8021bac3022306937540069112cc004c174c1acdd5000c56600266ebcc1bcc1b0dd5001983798361baa306f306c375400d15980099baf3061306c375400660c060d86ea8c1bcc1b0dd500344cdc3cc004dd5983018361baa0039bae306f0029bae306f3070002406066044602e6eb4c180c1b0dd5003183798361baa0018a5041a914a083522c835116419c6601a00a002811a2c832113370f300100182d520009bad305830633754005375a603c60c66ea800a006802a6002007375860cc60c66ea800a466e20dd6982c18321baa001480010134590614590614590612264b3001304d0128cc004dd6183218309baa025983218309baa040982a98309baa0424889660026604e6eb0c19cc190dd502d9bae301f30643754603860c86ea80062b300133225980099b87300c002300c0058acc004c03c00633001002800c88c96600260b460d06ea800626644b30013063306a37540031323301f00115980099baf3027306c375400660de60d86ea801a2b30013375e60c060d86ea8004c1bcc1b0dd5001c4c96600260b260d86ea8006266e1cdd6983818369baa001375a60c260da6ea8012294106b183098361baa0018b20d48b20d4306e306b37540031641a460d860d26ea8004c178c1a4dd5182e98349baa0038b20ce3300d007001408d1641911641906604c6eb0c19cc190dd502d9bae305930643754603860c86ea8004dd6182c18321baa0028acc00660026eb0c164c190dd502dc00e6eb0c19cc190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd70200a8cc004dd6982c98321baa0029bad301f306437540059800801cdd6183398321baa0029180d1bad30593065375400280a2660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641891641888acc004c0a004a33001375860c860c26ea809660c860c26ea810260aa60c26ea810922259800998139bac3067306437540b66eb8c07cc190dd5180e18321baa0018acc00660026604c6eb0c19cc190dd502d9bae305930643754603860c86ea80066eb0c160c190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c16cc1a4dd5000c4cc896600260c860d66ea8006264660400022b30013375e605060da6ea800cc1c0c1b4dd5003456600266ebcc184c1b4dd5000983818369baa0038992cc004c0d4c1b4dd5000c4c96600266e2400660026eacc18cc1bcdd5183198379baa0089bae30720099bae30723073009406d13370e00260566eb4c18cc1bcdd5002c52820da375a60e260dc6ea8006294106c183118369baa0018b20d68b20d6306f306c37540031641a860da60d46ea8004c17cc1a8dd5182f18351baa0038b20d03300e00800140911641951641948cc004dd6982c98321baa0029bad301f306437540059800801d2000912cc004cdc41bad305a30663754004900044cdc00009bad305a3066375400516419080da660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641888a50417c82f888c8cc00400400c896600200314a315980098019833800c4cc008008c1a0006294106220ca417882f0888888cc88ca60026eacc1a8c1ac00664660020026eb0c14cc1a0dd5005112cc004006297ae0899835983618349baa306c00133002002306d00141a959800982c1805801c520008acc004c1ac00e264b3001301c375c60ce0031375a60d000316419860d40071641a08329222598009919800800802112cc0040062946264664466446600400400244b30010018801c4c8cc89660026600a00a60f000915980099b8f007489008a518991919800800807112cc00400629422b30013375e60f40026e9c00e294626600400460f600283a90781983b1ba900733076375200497ae041c914a08390dd718388009bad3072001307400141c86eacc1bc00cdd718360009980180198388011837800a0da8acc004cdc399b81375a60da60d46ea8c1b4010dd6983698351baa306d0050018992cc004cdc3cc004dd6182b18359baa00da400122332259800cc004c18000694294506d44c96600266e24cc0980040166002013375c60e6007375c60e660e800680e2266e000100062c8370cdc1000802c400d06d1bac3070306d375400465300100ba4001225980099baf3029307037540046e9c00e266e00004dd6983218381baa0028800a0dc40946eb0c1c0c1b4dd500120443370200401710028b20d259800980f8054520018a400483422c83422c834060d4002660466eacc074c190dd50029bae305830643754603860c86ea801a600200b375c60ce60c86ea8c070c190dd5003400e004803888896600266e1cc024008c02000e33001003801488c96600260ac60c86ea8006264b30013375e60d260cc6ea8004c1a4c198dd5183498331baa0048acc004cdd7982d98331baa001305a3066375460d260cc6ea8012266e1e60026eacc168c198dd5000cdd71834802cdd7182d002a0243011375a60b460cc6ea80122941064452820c830683065375400316418c6601200c00280fa2c83008888c96600260a660c26ea8006264b30013375e60cc60c66ea8c198c18cdd5182b98319baa001304d33065375200a97ae08acc004c14e60026eacc15cc18cdd5182b98319baa001802d220108747265617375727900403d13259800982e18319baa0018991980f8008992cc004c15cc194dd5000c4c96600266ebcc1a8c19cdd5183518339baa001305133069375201297ae08acc004c15e60026eacc16cc19cdd5000c02691108747265617375727900404d13259800983018339baa001899198118008acc004cdd7981218349baa0034c0103d87a800089983580299835800998359ba6329800800cdd5982f18351baa00499198008009bab305f306b375460be60d66ea8024896600200314bd6f7b63044c8cc1bccdd818360009ba63233001001375660dc00444b30010018a5eb7bdb182264660e466ec0c1bc004dd418161bad3070001330030033074002307200141c06600600660e200460de00283690011112cc00400a2003132332298008034c1cc016646600200200a44b300100189983999bb037520086e9800d2f5bded8c113298009bae30710019bab3072001983b0012444b300133720010007133077337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ee880144cc1e0cdd81ba9009374c00200483a0ca6002003008801a002222598008014400626466453001006983f802cc8cc004004014896600200313307f337606ea4010dd4001a5eb7bdb1822653001375c60fa003375a60fc00330820100248896600266e4002000e2661060266ec0dd48041ba80070058acc004cdc7804001c4c96600260e600310028998420099bb037520126ea00040090800119b800070028998418099bb037520066ea0008cc01801800507f20fe184000800a0fc40186eb8c1e0004dd6983c800983d80120f289983b99bb037520066e98008cc01801800507320e6183a000a0e440186eb8c1b0004dd59836800983780120da4bd70459067183598341baa0018b20cc305c3067375400316419516419460d260cc6ea80062c8320cc028dd6182d18329baa00800530673064375400316418860b060c66ea8c15cc18cdd5000c59061459061183298311baa0018b20c033006375860c860c26ea801000844c8cc896600260860031332259800981918201baa002899191919912cc004c12800e264b3001303830463754003132323322598009827801c4c966002607a00313232598009829001403a2c8278dd7182800098261baa0078acc004c0f00062b3001304c375400f00c8b209a8b2094412860946ea801a2c8260dd718260009bae304c002304c00130473754003164114609200b16411c6eb8c11c004c11c008c11c004c118004c104dd500145903f1821000898021821802c590401bae304000130410013758607e00481e8dc3a401d1323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980998109baa00189919912cc004c0a4006264b3001301730253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b0c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0d4024896600200513302701410248992cc004c0dcc114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c04cc084dd5000c4c966002603660446ea8006264b3001301530233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084602e60446ea8c058c088dd5181298111baa0018b20403300a3758602a60426ea80608c8cc004004c00cdd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602460406ea800a2646464b3001302800289980318138018992cc004c0580062b3001302537540050058b204c8acc004c05400626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013010301e3754005132323259800981300144cc024c09400c4c9660026028003132598009814000c4c8c966002602e003132598009815800c4cc038c0a80040262c8140c098dd50014566002602c003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602600315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d1365640081",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0Rc1ProtocolMintProtocolMintElse=exports.V1_0Rc1ProtocolMintProtocolMintElse=/*#__PURE__*/_createClass(function V1_0Rc1ProtocolMintProtocolMintElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0Rc1ProtocolMintProtocolMintElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5942e3010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a49856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a202020202900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888888896600264653001301e001980f180f800cdc3a4009301e00248889660026004603c6ea800e330013022301f37540072302330243024001918119812000cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c9b80480066e05200091811981218121812181218121812181218121812000cdd2a4004911111111111111194c00488966002601c60626ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e800a330010038992cc004c04c006264b3001001803c4c966002003159800981e80144c966002602c00313259800800c02a264b30010018acc004c10000a33001001806402d00e402d03d402e01700b805a082303e00140f060746ea800a2b300130150018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11c00e02701241106eb40060228238c1100050421bad00130430028072088304100140fc6eb4004c10000a0168208c0f800503c181d1baa002804a06e40dc60706ea800601081d2011008804402103e181d800a072303737540051598009809000c566002606e6ea800a00f00640e100640d081a0c0d4dd5000c0150084015037401600b005802a076303800140d86070005003801c00e00681c8c0d800503418191baa003800a05e911194c004006009003400444464b300130120018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa0038acc004c044006264b300100180344c966002003007803c4c966002607a0071330160012259800801401e264b30010018cc00402a003130023040003402900b805c02e0168208c0f800903c402103a1bac001803c01d03d181d000a07030363754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0f400e26602c00244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130100018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009820001c4cc064004896600200500a8992cc0040063300100d800c4c008c10c00d00d403a01d00e8072088304100240fd00b40f46eb000601500a4100607a00281d8dd6800981e001401d03d181d000a070303637540071598009807800c4c9660020030068992cc00400600f007803c4c966002607a0070058042074375a00300740f4607400281c0c0d8dd5001c566002601c00313259800800c01a264b3001001803c01e00f13259800981e801c01601081d0dd6800c01d03d181d000a070303637540071598009806800c4c9660020030068992cc00400600f007803c01e264b3001303d003802c02103a1bae00140f4607400281c0c0d8dd5001c015033206640cc8199033206640cc60686ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260246606c00297ae0899801801981c0012062303600140d091119192cc00400633001222598009809981b1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303f0028cc00400e264b300130180018acc004c0f0dd5001401e00c81ea2b300130170018992cc00400600f13259800800c02201100880444c966002608600700a804a080375c0028218c10000503e181e1baa0028acc004c07c006264b3001001803c4c9660026084005009804207e304000140f860786ea800a00c81c90392072303a3754003005403100540f1005802c01600a8200c0f400503b181e801400e007003801a07c303b00140e4606e6ea800e00281a2444b300130133036375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607800315980099b8948010c0ec00600d13259800982080244c9660026034003159800981f1baa006804c02103f4566002603200313259800800c026264b3001001805402a015132598009822801c0320168210dd6800c0290451821000a080303e375400d1598009810800c566002607c6ea801a01300840fd00840ec81d903b181e1baa005803a07c3017303b00140e500640f46ea800600b005802c015040181e800a076303d002801c00e00700340f8607600281c8c0dcdd5001c0050344889660026026606c6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d132598009820801c02200e81f0dd6800c019041181f000a078375c002607a00481f0c0ec005039181b9baa003800a068911192cc004c050006264b3001001801c4c9660020030048024012264b3001303f003803401503c1bad001802207e303c00140e860706ea80122b300130130018acc004c0e0dd5002400e00481ca00481a9035181b1baa00348888cc8966002602c60726ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009822801c566002603a60806ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013055002899817007112cc00400a26606001a44b30010028cc00401e33001005899192cc004c0ccc158dd500d44c9660020030408992cc004006264b300100182144c966002003159800982f80144cc8966002607200313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a054825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0e0006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40a904b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b1598009820000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130370018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c566002606c00313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a056825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0d4006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40ad04b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b159800981a000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130080018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c11505a20b4416882d105a20b4416882d04c966002607000313259800800c116264b30010018acc004c18800a330010018044119028411905f411a08d04682320c63060001417860b86ea800a2b300130370018992cc00400608b13259800800c56600260c4005159800981d182e9baa0018992cc00400608f13259800800c4c9660020030498992cc0040062b300130660028cc00400e33001001806412902d412902d4129063412a09504a82520ce3064001418860c800504882441220908328c188005060182f1baa00182320b682320be823411a08d046418c60c000282f0c170dd5001411105920b2305a375400260b46ea800e08682e2087043821c10d060182e800a0b6305d002820c106083041417860b600282c8c15cdd500d40fd05409981980b112cc00400a33001305b30583754606e60b06ea809645300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa303b305c375460be002605e660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303d305e37540046062660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230343058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013039305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48896600200514c103d87a80008acc004c0dc00626072660ba60bc00497ae08cc00400e60be0053031001400c82c105c488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064175133005005306400441746eb8c174004dd5982f0009830000a0bc14bd6f7b6304dc024005222329800800c012006800888966002005159800800c528c52820be8acc00400629422b3001330043061002375a60c200319800801cc18800a60c4002801a294105b20be417d25980099b88001480022605c003100141592305c305d305d305d0019112cc004c0dcc168dd5001c4c9660020030028992cc004006007003801c4c96600260c400700580220be375a003003418860be00282e8c16cdd5001c00505848c170c174c174c174c174006460b860ba60ba60ba60ba60ba60ba60ba60ba003222329800800c01200680088896600200510018cc00400e60c4005330043061002001400c82fa4466e0ccdc10011bad303a305a37540026eb4c0e4c168dd5000cdc424001371e9110455534472009112cc004c0dcc168dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983380146600200f19800802c4c966002608000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002608e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130710038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001307600380cc0610731bae00141d860e60028388dd7000983900120e6307000141b901341b86eb000602501241c460dc0028360dd68009836801403d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981e800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607600313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc306437540091598009807800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd5002402906120c24184830906120c241848308c188dd5001c02502f402503340250641832800a0c63065002803c01e00f007419860c60028308c18c00a00b005802c0150641830800a0be3061002801c00e007003418860be00282e8c16cdd5001c005058488cc0a40088cdd7982f182d9baa001374e00491111111111111111114c004c1a8dd5009c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c54cc1c1240112657870656374205b5d203d206c6973745f62001641cd159800801454cc1c12411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260ec007307600299912cc004c01c00a266e0000cdd69829983a1baa00283020e23075003375a60ea004802107320e68a9983624812e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641ad300f00f912cc0040062900044c03ccc008008c1c400506e489660020031480022601e6600400460e200283724446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e2899802802983c00220e2375c60e20026eb4c1c8004c1d0005072198090020018a40012259800800c5200089807998010011838800a0dc91808800c88c96600260a260da6ea8006264b30010018cc0040062b30013375e601c60de6ea800cc1c8c1bcdd5002456600266ebcc138c1bcdd5000983918379baa0038800c18906c418506c418100641820c106083020e83071306e375400305e41ac609a60da6ea8c130c1b4dd50012444444445300130060069802802c896600266e2000520008a6103d87a8000899804801000a0e69801801a4444646644b300130570108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea8006264b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0029bac305e307f3754007375860a660fe6ea80092225980099b87300d003300d0078acc004c04000a33001003801488c96600260c26108026ea800626464b3001306330860137540031323298009980f804000cdd618131844809baa0049bad308c0100248896600260d06116026ea800e2b30013371264664466e0cc194cdc019b82001375a60de611e026ea800c008008dd698361846809baa001375a60d8611a026ea8020c23c04c23004dd5001cc004dd598359846009baa306b308c013754015375c611e02005375c611e0261200200480e22b30013370e0026eb4c1acc23004dd5003c4cdd79ba70043029308c01375400f14a084480a294108901454cc228052414365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164224043758611602611802002610e026ea800629410840118331843009baa3301300400130880130850137540030744208046601c012002811a0e083fa0de83f9159800cc004dd6182f983f9baa0618024dd6184100983f9baa0039984080982f183f9baa301b307f37540046610202981054455534472004bd70200a899b879800801418690004dd6982f983f9baa0039bad301e307f3754007004401800306a41f1153307d49018f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641f130010039bac308101307e375400523018375a60bc60fe6ea800501241a107b22b300130560108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea80062b30019800998121bac308101307e37540c06eb8c178c1f8dd5180d183f1baa0019bac305d307e37540053308001305d307e3754603460fc6ea8004cc20005301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c180c20c04dd5000c4c8c96600260c2610a026ea800626464b3001337120033001375660ce6110026ea8c19cc22004dd5003cdd71845808044dd718458098460080420308acc004cdc3800982e9bad3067308801375400913375e611602611802004604a6110026ea80122941085014528210a02375a611402002610c026ea800629410830118329842809baa3301200400130870130840137540030734204046601a01000281120de83f20dc83f1159800cc004dd6182f183f1baa0609bac308101307e3754005375860a460fc6ea80052225980099b87300d002300c0068cc00401a00522325980098301841809baa0018cc004c21c04c21004dd5000cdd618109842009baa0039980d0021bac302130840137540069112cc004c18cc21804dd5000c56600266ebcc22804c21c04dd50019845009843809baa308a01308701375400d15980099baf3067308701375400660cc610e026ea8c22804c21c04dd500344cdc3cc004dd598331843809baa0039bae308a010029bae308a01308b01002405c66042604e6eb4c198c21c04dd50031845009843809baa0018a5042100514a084200a2a6610a029215365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642100483ea102023300d005001408907941f8899b879800800c18290004dd6982f183f1baa0029bad301d307e3754005003401530010039bac308101307e37540052337106eb4c178c1fcdd5000a400080922a660f89219e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641ed153307c491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641ed06841ec8992cc004c14c04633001375860fe60f86ea809260fe60f86ea812660b660f86ea812922259800998131bac308201307f37540c26eb8c078c1fcdd5180d983f9baa0018992cc004cc896600266e1cc034008c03401a2b300130100018cc00400a00322325980098309842009baa001899912cc004c1a8c21804dd5000c4c96600200319800800c56600266ebcc09cc22004dd50019845809844009baa0068acc004cdd798339844009baa001308b0130880137540071325980098301844009baa001899b87375a6118026112026ea8004dd698341844809baa0048a5042180460d06110026ea80060f684280a0f484280a0f280fa0f307983cc1e508d011845009843809baa00183ba10802308801308501375400260ca610a026ea8c190c21404dd5001c1d10820119807004000a04683820fe837a0fe3302637586106026100026ea8188dd718301840009baa301c30800137540046eb0c17cc20004dd5001c5660033001375860c06100026ea818a00937586106026100026ea800e661040260be6100026ea8c070c20004dd50011984100a61054455534472004bd70200c8991919912cc004cdc3acc004c180c0340062900045660020030788992cc004c2240400a264b3001301e375c610a02005100183da10602375a610a02003079421804610e0200284280908101002c56600266e1ccdc09bad3087013084013754610e020066eb4c21c04c21004dd5184380802002c4cc024dd6182c1842009baa006232306298008024dd7184480800cdd7184480984500800a02c3758611002610a026ea80060fc84080a2a661040292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e7400164204046eacc21404c21804004cc094dd5980f9841009baa064375c60c26104026ea8c078c20804dd5002184280800cc00418a6eb8c20c04c20004dd5180e1840009baa0029bad30603080013754007375a603e6100026ea800d00841ad07d454cc1f9241776578706563740a2020202076616c69646174655f6469726563745f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641f530010039bac308201307f375400523019375a60be6100026ea800501341a507c22b300130270118cc004dd6183f983e1baa024983f983e1baa049982d983e1baa04a4889660026604c6eb0c20804c1fcdd50309bae301e307f3754603660fe6ea80062b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0019bac305e307f37540053308101305e307f3754603660fe6ea8004cc20405301054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c184c21004dd5000c4cc896600260d4610c026ea8006264b30010018cc0040062b30013375e604e6110026ea800cc22c04c22004dd5003456600266ebcc19cc22004dd50009845809844009baa0038992cc004c0d0c22004dd5000c4c96600266e2400660026eacc1a4c22804dd518349845009baa0089bae308d010099bae308d01308e01009406913370e00260be6eb4c1a4c22804dd5002c528210e02375a6118026112026ea800629410860118341844009baa00183da10a0283d210a0283ca03e83cc1e60f3079423404611402610e026ea80060ee842008c22004c21404dd500098329842809baa306430850137540070744208046601c010002811a0e083fa0de83f9198009bad305f307f3754005375a603c60fe6ea800b3001003a4001225980099b88375a60c06102026ea80092000899b80001375a60c06102026ea800a0da83f101a4cc088dd5980e183f9baa061375c60bc60fe6ea8c06cc1fcdd5000a4444646464b30013370eb30013062300f0048a400115980080241ea264b3001308b010058992cc004c080dd7184380801440060fa842808dd6984380800c1ed08801184480802210e02420c0400b15980099b87337026eb4c22404c21804dd51844808011bad308901308601375461120200600b13300b375860b4610c026ea80208c8c1926002007375c611602003375c61160261180200280c0dd61845009843809baa0018a9984200a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016420c051533084014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016420c046eacc22004c22404004c2200400660020cb375c610c026106026ea8c07cc20c04dd5002c0120068059153307d491896578706563740a2020202076616c69646174655f6469726563745f6275726e5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641f106941f08a5041e483c888c8cc00400400c896600200314a31598009801984100800c4cc008008c20c04006294107c21000241e083c0888888cc88ca60026eacc21404c2180400664660020026eb0c15cc20c04dd5005112cc004006297ae0899843009843809842009baa3087010013300200230880100142140559800982f1805801c520008acc00400e0ed1325980098438080244c96600260386eb8c20c0400a20030794204046eb4c20c040060ee842008c2140400d0830120fe488966002646600200200844b30010018a518991991199119801001000912cc004006200713233225980099802802984980802456600266e3c01d221008a518991919800800807112cc00400629422b30013375e612a020026e9c00e2946266004004612c020028478090930119848809ba90073309101375200497ae042300514a0846008dd71846008009bad308d01001308f010014234046eacc2280400cdd718438080099801801984600801184500800a110028acc004cdc399b81375a611002610a026ea8c22004010dd69844009842809baa3088010050018992cc004cdc3cc004dd6182d1843009baa00da400122332259800cc004c1980069429450870144c96600266e24cc0940040166002013375c611c02007375c611c02611e0200680da266e000100062a66112029212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642200466e080040162006843808dd61845809844009baa002329800805d2000912cc004cdd798141845809baa002374e0071337000026eb4c1a8c22c04dd50014400508801204837586116026110026ea800902119b8100200b8801454cc210052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016420c04b3001301e00a8a40031480090820141fd08201454cc20c052401b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a20202020290016420804308501001330223756603860fe6ea8014dd7182f183f9baa301b307f375400d30010059bae308201307f3754603660fe6ea801a007002401c4444b30013370e6012004601000719800801c00a4464b3001305c307f37540031325980099baf30840130810137540026108026102026ea8c21004c20404dd5002456600266ebcc184c20404dd500098301840809baa308401308101375400913370f3001375660c06102026ea80066eb8c210040166eb8c18001501118109bad3060308101375400914a083f2294107e1841809840009baa00183ca0fa33009006001407907541e8444464b30013059307c37540031325980099baf308101307e375461020260fc6ea8c174c1f8dd5000982899840009ba90054bd70456600260b33001375660ba60fc6ea8c174c1f8dd5000c016911087472656173757279004039132598009831183f1baa0018992cc004006330010018992cc004c174c20004dd5000c4c96600266ebcc21404c20804dd51842809841009baa00130553308401375201297ae08acc004c17660026eacc184c20804dd5000c02691010874726561737572790040491325980098331841009baa0018992cc004006330010018acc004cdd798119842009baa0034c103d87a800089984300802998430080099843009ba6329800800cdd598321842809baa00499198008009bab3065308601375460ca610c026ea8024896600200314bd6f7b63044c8cc22804cdd81843808009ba63233001001375661120200444b30010018a5eb7bdb1822646611a0266ec0c22804004dd418301bad308b0100133003003308f01002308d01001422c04660060066118020046114020028440090011112cc00400a2003132332298008034c23804016646600200200a44b30010018998470099bb037520086e9800d2f5bded8c113298009bae308c010019bab308d010019848808012444b30013372001000713309201337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528212402880144cc24c04cdd81ba9009374c002004847008ca6002003008801a002222598008014400626466453001006984d00802cc8cc004004014896600200313309a01337606ea4010dd4001a5eb7bdb1822653001375c613002003375a613202003309d0100248896600266e4002000e26613c0266ec0dd48041ba80070058acc004cdc7804001c4c96600260f2003100289984f8099bb037520126ea000400909a0119b8000700289984f0099bb037520066ea0008cc01801800509901213202184d80800a1320240186eb8c24c04004dd6984a00800984b008012128028998490099bb037520066e98008cc01801800508d01211a02184780800a11a0240186eb8c21c04004dd59844008009845008012110024bd70454cc2080524126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642040507b408907b83dc1ee0f6844808c21804c20c04dd5000c54cc2040524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642000460c46104026ea80062a6610002920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641fd15330800149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641fc6108026102026ea80062a660fe92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641f8660146eb0c180c20004dd5004002c1d901e41da0ed07683b210a02308201307f3754003153307d49013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641f060bc60fc6ea8c174c1f8dd5000c54cc1f12401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641ed153307c4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641ec61000260fa6ea80062a660f692013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641e86600c6eb0c1fcc1f0dd500200108992cc0040060830418992cc00400608513259800800c10e087043821c4cc89660020030458992cc0040062b300130620028992cc004c0ecc178dd500144c9660020030488992cc004006264b300100182544c96600200313259800800c132264b3001001826c13609b04d8992cc004c1a800e2b300130423065375400d13259800800c13e264b300100182841420a1050899912cc0040060a513259800800c14e0a7053829c4c96600260e0007132598009824800c4c9660020030568992cc0040060af05782bc15e264b3001307400380941610711bae00141d060e20028378c1b4dd5005c566002609000315980098369baa00b807c15506e415506a20d4306b375401505441b46eb80050701836800a0d6375c00260d80048368c1a800506818331baa00682720c682720ce375c0028350c19c0050651833801412e09704b825a0d03065001418c60ca005049824c1260928330c18c005061182f9baa002823a0b813007306200882320be823411a08d046418c60c000282f0dd7000982f80120c0305d001416c6eb0006083041417860b600482c8dc3a401d03d407903d407913259800800c0fa07d03e8991801982d8021bad00181f20b63058002415913259800800c0f207903c8991801982c8021bad00181e20b230560024151039414903981cc0e607282b0c14c005051182980140de06f03781ba0a83051001413c6eb4004c14000a0688288c13800504c1bad001304d002818a09c304b00141246eb0004c12800a05d02e412c60900028230dd6000982380140ae0568240c11400504318209baa006814a07c814a0843758003028814208a304200141006084005026813409a04c8218c10000503e182000140920490248122082303e00140f060746ea801e04481b888966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018992cc00400601313259800800c02a01500a8992cc004c12400e330010098cc00401201900b403d00b404500b41186eb40060148248c11800504418230014022011008804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c088966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009826001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009828801c0520268270dd7000a0a2304e00141306eb8004c13400904e1825800a092807202480720288072092375800300d806a0983049001411c609200500b805c02e0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c101c80e407203881c8cc88c9660026024606a6ea80062606c6466ec0c0e8004c0e8c0ec004dd6181c981b1baa0018a9981a24818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640cc646600200200644b30010018a60103d87a80008992cc004cdd7981b80099ba548010cc0e8c02ccc0e8dd480225eb812f5c1130163303a374e66074606e00266074607000297ae04bd7044cc00c00cc0f0009035181d000a0703756600e60666ea8054dd7181b18199baa0019800912cc004006297ae089981b1819981b80099801001181c000a06a9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206491111919800800802912cc004006200b13259800800c4cc010c0f000801a26600a60780046600600600281d0c0f00050394dd6180898191baa01448888c8c8c8cc88c966002003159800980c181d9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130450028acc004c074c100dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305c0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d0c15cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260d000713304100f225980080146600201f102b827a06e8992cc0040062b300130433066375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130740038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307900389808183c808c1790761bae00141e460ec00283a0dd7000983a80420ec307300741c505941c46eb40060b083a0c1c400506f1bad001307000282aa0e2306e00141b06eb0004c1b400a0a505241b860d60028348c19cdd5000c14106441420a105082820d83069002419d04d41946eb80050681832800a0c6375c00260c80048328c1880050601bae0013061002418860be00282e8dd7000982f00120be305c001416860b06ea801a08282aa0828142082814208281420828142082814208281420828142082814208282ca083041820c10505d182d000a0b0375800260b200503e81f20b43057001415460ae00503c81e40f207882c0c154005053182a80140ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f182880140da06d03681b20a4304f0014134609e00503481a40d20688280c13400504b182680140ca065032819209c304b0014124609600503081840c20608260c124005047182480140ba05d02e817209430470014114608e00502c81640b20588240c11400504318209baa001815207c815208481540aa05502a411860860028208dd700098210012086304000140f860786ea800604a81ca04b025812c09504129981c99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40dd22010013259800980c181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981e9baa0018992cc0040062b3001301b303e375400313259800800c0ee264b300100181e40f207903c899912cc00400607d1325980098240014401a07e8228c1180050441bae0013045002411860860028208c0fcdd5000c0e903c40ea07503a81d20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec603a607a6ea8c070c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46601400c4646600200260066eacc070c0f4dd5180e181e9baa0022259800800c528456600266e3cdd7182080081d4528c4cc008008c10800503b207e300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20825980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d903b1bac303e002375a60780026466ec0dd4181e0009ba7303d001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6082003337149101023a200098008054c10800600a805100a182200144ca6002015304100199b8a489023a200098008054c108006600e66008008004805100a182200120843044001410466e29220102207d0000340f86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039009207c3758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e410066e2ccdc0000acc004cdc4000a4029148182290372080004401866e0c00520203370c002901019b8e00400240f46eb800d0411b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681c10381801801844464b3001300e0018992cc00400600713259800800c01200900480244c9660026072007006802a06c375c00281c8c0d800503418191baa0048acc004c034006264b3001001801c4c966002003004802401200913259800981c801c01a00a81b0dd7000a072303600140d060646ea8012004817902f18181baa00345901c0c078004c064dd500fc5268a9980ba491856616c696461746f722072657475726e65642066616c7365001365640581":"5922b1010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c91807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601e6603c00297ae089980180198100012034301e001407122232598009806000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300b0018992cc004c08000626601c6eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc038dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0280062646644b300130220018998081bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b30013009001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260100031323259800981080140122c80f0dd6980f800980d9baa0038acc004c01c00626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c02c00626464b3001302000280245901d1bae301e001301a37540071598009805000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c028c060dd500144c8c8c966002604000513232598009807800c566002603c6ea800a00d16407d1598009807000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689806180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300a30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009805800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300a0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013015302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301933028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c050c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980a18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980a98119baa003899191919912cc004c0b400e264b3001301b30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc09cdd6181c005912cc00400a26605200c44b300100289980e80289980e804899192cc004c0b0c0e8dd5009c4c8c8c9660026084005132332259800981900144c966002608c0031330343758608a00244b300100280244cc084c11c0084c004c12000904545904318209baa0038acc004c0c400a264b3001304600189981a1bac304500122598008014012266042608e004260026090004822a2c8218c104dd5001c5660026072005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130300028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b208630413754007159800981780144c966002608c0031330343758608a00244b300100280244cc088c11c0084c004c12000904545904318209baa0038acc004c0b800a264b3001304600189981a1bac304500122598008014012266044608e004260026090004822a2c8218c104dd5001c566002605a005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130080028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b2086304137540071640fc81f903f207e40fc81f903f207e303e3754002264b300130310018992cc004c11400626604c608800200f16410860806ea800e2b300130300018992cc004c114006264b3001303330413754003132323259800982480144cc0acc12000c4cc0ac00402e2c8230c11c004c11c004c108dd5000c590401822000c5904218201baa0038b207c40f8607c6ea8008c10400e2c81f8c100004c100004c0ecdd5009c59039099816009912cc00400a33001303f303c3754606060786ea806e45300132330010010032259800800c528456600266ebcc10cc100dd5182198201baa30343040375460860026054660846ea400d2f5c114a3133002002304400140f8820a94294503c488c8cc00400400c896600200314bd7044cc896600266ebcc114c108dd5182298211baa3036304237540046058660886ea40152f5c113304400233004004001899802002000a0803043001304400141052302d303c37546080646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001303230413754608a0074a14a2820226608930014a14c103d87a8000a60103d87980004100660886e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11c00400e29462660040046090002821104544cc112600294298103d87a8000a60103d87980004100660886e9c0092f5c11330449800a51a60103d87a8000a60103d87980004100660886e9ccc110dd400080125eb8104020803758608660880026eb4c10c008cc008008c10c00504048896600200514c103d87a80008acc004c0c00062606466082608400497ae08cc00400e6086005337000029000a00640f482024464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208489980280298240022084375c60820026eacc108004c1100050420a5eb7bdb1826e012002911194c0040060090034004444b30010028acc00400629462941043456600200314a11598009980218228011bad30450018cc00400e608c0053046001400d14a0820104320869b81480024608060826082608200322598009817981e9baa002899192cc004c11000a0071641046eb4c108004c0f8dd500145903c48c100c104c104c104c1040064608060826082608260826082608260826082003222329800800c01200680088896600200510018cc00400e608c005330043045002001400c821a4466e0ccdc10011bad3033303e37540026eb4c0c8c0f8dd5000cdc424001371e911045553447200912cc004c0bcc0f4dd500144c8c8c8ca6002608a003304500398228012444b3001304900489981418240038998128010992cc004c0dc0062646644b3001304d0018991919912cc004c14400e0211641386eb8c138004dd7182700118270009bac304c0018b2094375a60940026096002608c6ea800a2b3001303600189919912cc004c134006264646644b3001305100380845904e1bae304e001375c609c004609c0026eb0c1300062c8250dd69825000982580098231baa0028acc004c0f8006264653001375a6096003304c0019bad304b002488966002609e005132323322598009829801c04a2c8280dd718280009bae305000230500013758609c005164130304b00130463754005159800981a800c4c8cc8966002609a003132323322598009828801c0422c8270dd718270009bae304e002304e001375860980031641286eb4c128004c12c004c118dd50014566002606800313232598009826001402e2c8248dd6982500098231baa0028acc004c0cc006264646644b3001304e003806c5904b1bad304b001375a60960046096002608c6ea800a2b30013032001899192cc004c13000a0171641246eb4c128004c118dd50014566002601a00313232598009826001402e2c8248dd6982500098231baa0028b20884110822104420884110822104418221baa0018b208c182280098220009821800981f1baa0028b20789119813801119baf3042303f37540026e9c0092222222222222222222980098271baa0139112cc004c04c00a2653001001802400e90002002222259800801c56600200510018b20ae8cc00401260b4007305a00299912cc004c01c00a266e0000cdd69826182c1baa0028b20ac3059003375a60b200480210574590504c03c03e44b30010018a40011300f33002002305500141492259800800c520008980799801001182a800a0a491119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c82b226600a00a60b800882b0dd7182a8009bad3056001305800141586602400800629000496600266e20005200089806000c400504e489660020031480022601e6600400460aa002829246022003223259800982518289baa001899198030008acc004cdd7980718299baa00330563053375400915980099baf30473053375400260ac60a66ea800e200316414516414460aa60a46ea80062c8280c118c144dd5182298289baa0024888888888a6002600e00f3006006912cc004cdc4000a400114c0103d87a8000899805001000a0b29801801a4444646644b300130510118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac3057306337540053758609c60c66ea80052225980099b87300c003300c0068acc004c03c00a33001003801488c96600260b460d06ea800626464b3001305c306a37540031323298009980f804000cdd6181318369baa0049bad307000248896600260c260de6ea800e2b30013371264664466e0ccdc019b80337040026eb4c1a0c1ccdd5001801240020046eb4c194c1c4dd50009bad30653071375401060e660e06ea800e60026eacc190c1c0dd5183218381baa00a9bae30730029bae30733074002407115980099b87001375a60c860e06ea801e266ebcdd3802181498381baa0078a5041b914a083722c83706eb0c1bcc1c0004c1acdd5000c52820d2305f306a37546602400800260d860d26ea80062c8338cc03402000502345906445906422b300198009bac3058306337540b50039bac30663063375400533065305730633754603660c66ea8004cc195301054455534472004bd702008899b879800800c16a90004dd6982c18319baa0029bad301e30633754005003401530010039bac30663063375400523019375a60b060c86ea800501345906145906145906122b300130500118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac30573063375400533065305730633754603660c66ea8004cc195301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c168c1a0dd5000c4c8c96600260b660d46ea800626464b3001337120033001375660c260da6ea8c184c1b4dd5003cdd718380044dd71838183880420328acc004cdc380098149bad3061306d375400913375e60e060e2004604c60da6ea8012294106b452820d6375a60de00260d66ea80062941069182f98351baa33012004001306c3069375400316419c6601a010002811a2c83222c8321159800cc004dd6182c18319baa05a9bac3066306337540053758609c60c66ea80052225980099b87300d002300c0068cc00401a005223259800982d18341baa0018cc004c1b0c1a4dd5000cdd6181118349baa0039980d8021bac3022306937540069112cc004c174c1acdd5000c56600266ebcc1bcc1b0dd5001983798361baa306f306c375400d15980099baf3061306c375400660c060d86ea8c1bcc1b0dd500344cdc3cc004dd5983018361baa0039bae306f0029bae306f3070002406066044602e6eb4c180c1b0dd5003183798361baa0018a5041a914a083522c835116419c6601a00a002811a2c832113370f300100182d520009bad305830633754005375a603c60c66ea800a006802a6002007375860cc60c66ea800a466e20dd6982c18321baa001480010134590614590614590612264b3001304d0128cc004dd6183218309baa025983218309baa040982a98309baa0424889660026604e6eb0c19cc190dd502d9bae301f30643754603860c86ea80062b300133225980099b87300c002300c0058acc004c03c00633001002800c88c96600260b460d06ea800626644b30013063306a37540031323301f00115980099baf3027306c375400660de60d86ea801a2b30013375e60c060d86ea8004c1bcc1b0dd5001c4c96600260b260d86ea8006266e1cdd6983818369baa001375a60c260da6ea8012294106b183098361baa0018b20d48b20d4306e306b37540031641a460d860d26ea8004c178c1a4dd5182e98349baa0038b20ce3300d007001408d1641911641906604c6eb0c19cc190dd502d9bae305930643754603860c86ea8004dd6182c18321baa0028acc00660026eb0c164c190dd502dc00e6eb0c19cc190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd70200a8cc004dd6982c98321baa0029bad301f306437540059800801cdd6183398321baa0029180d1bad30593065375400280a2660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641891641888acc004c0a004a33001375860c860c26ea809660c860c26ea810260aa60c26ea810922259800998139bac3067306437540b66eb8c07cc190dd5180e18321baa0018acc00660026604c6eb0c19cc190dd502d9bae305930643754603860c86ea80066eb0c160c190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c16cc1a4dd5000c4cc896600260c860d66ea8006264660400022b30013375e605060da6ea800cc1c0c1b4dd5003456600266ebcc184c1b4dd5000983818369baa0038992cc004c0d4c1b4dd5000c4c96600266e2400660026eacc18cc1bcdd5183198379baa0089bae30720099bae30723073009406d13370e00260566eb4c18cc1bcdd5002c52820da375a60e260dc6ea8006294106c183118369baa0018b20d68b20d6306f306c37540031641a860da60d46ea8004c17cc1a8dd5182f18351baa0038b20d03300e00800140911641951641948cc004dd6982c98321baa0029bad301f306437540059800801d2000912cc004cdc41bad305a30663754004900044cdc00009bad305a3066375400516419080da660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641888a50417c82f888c8cc00400400c896600200314a315980098019833800c4cc008008c1a0006294106220ca417882f0888888cc88ca60026eacc1a8c1ac00664660020026eb0c14cc1a0dd5005112cc004006297ae0899835983618349baa306c00133002002306d00141a959800982c1805801c520008acc004c1ac00e264b3001301c375c60ce0031375a60d000316419860d40071641a08329222598009919800800802112cc0040062946264664466446600400400244b30010018801c4c8cc89660026600a00a60f000915980099b8f007489008a518991919800800807112cc00400629422b30013375e60f40026e9c00e294626600400460f600283a90781983b1ba900733076375200497ae041c914a08390dd718388009bad3072001307400141c86eacc1bc00cdd718360009980180198388011837800a0da8acc004cdc399b81375a60da60d46ea8c1b4010dd6983698351baa306d0050018992cc004cdc3cc004dd6182b18359baa00da400122332259800cc004c18000694294506d44c96600266e24cc0980040166002013375c60e6007375c60e660e800680e2266e000100062c8370cdc1000802c400d06d1bac3070306d375400465300100ba4001225980099baf3029307037540046e9c00e266e00004dd6983218381baa0028800a0dc40946eb0c1c0c1b4dd500120443370200401710028b20d259800980f8054520018a400483422c83422c834060d4002660466eacc074c190dd50029bae305830643754603860c86ea801a600200b375c60ce60c86ea8c070c190dd5003400e004803888896600266e1cc024008c02000e33001003801488c96600260ac60c86ea8006264b30013375e60d260cc6ea8004c1a4c198dd5183498331baa0048acc004cdd7982d98331baa001305a3066375460d260cc6ea8012266e1e60026eacc168c198dd5000cdd71834802cdd7182d002a0243011375a60b460cc6ea80122941064452820c830683065375400316418c6601200c00280fa2c83008888c96600260a660c26ea8006264b30013375e60cc60c66ea8c198c18cdd5182b98319baa001304d33065375200a97ae08acc004c14e60026eacc15cc18cdd5182b98319baa001802d220108747265617375727900403d13259800982e18319baa0018991980f8008992cc004c15cc194dd5000c4c96600266ebcc1a8c19cdd5183518339baa001305133069375201297ae08acc004c15e60026eacc16cc19cdd5000c02691108747265617375727900404d13259800983018339baa001899198118008acc004cdd7981218349baa0034c0103d87a800089983580299835800998359ba6329800800cdd5982f18351baa00499198008009bab305f306b375460be60d66ea8024896600200314bd6f7b63044c8cc1bccdd818360009ba63233001001375660dc00444b30010018a5eb7bdb182264660e466ec0c1bc004dd418161bad3070001330030033074002307200141c06600600660e200460de00283690011112cc00400a2003132332298008034c1cc016646600200200a44b300100189983999bb037520086e9800d2f5bded8c113298009bae30710019bab3072001983b0012444b300133720010007133077337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ee880144cc1e0cdd81ba9009374c00200483a0ca6002003008801a002222598008014400626466453001006983f802cc8cc004004014896600200313307f337606ea4010dd4001a5eb7bdb1822653001375c60fa003375a60fc00330820100248896600266e4002000e2661060266ec0dd48041ba80070058acc004cdc7804001c4c96600260e600310028998420099bb037520126ea00040090800119b800070028998418099bb037520066ea0008cc01801800507f20fe184000800a0fc40186eb8c1e0004dd6983c800983d80120f289983b99bb037520066e98008cc01801800507320e6183a000a0e440186eb8c1b0004dd59836800983780120da4bd70459067183598341baa0018b20cc305c3067375400316419516419460d260cc6ea80062c8320cc028dd6182d18329baa00800530673064375400316418860b060c66ea8c15cc18cdd5000c59061459061183298311baa0018b20c033006375860c860c26ea801000844c8cc896600260860031332259800981918201baa002899191919912cc004c12800e264b3001303830463754003132323322598009827801c4c966002607a00313232598009829001403a2c8278dd7182800098261baa0078acc004c0f00062b3001304c375400f00c8b209a8b2094412860946ea801a2c8260dd718260009bae304c002304c00130473754003164114609200b16411c6eb8c11c004c11c008c11c004c118004c104dd500145903f1821000898021821802c590401bae304000130410013758607e00481e8dc3a401d1323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980998109baa00189919912cc004c0a4006264b3001301730253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b0c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0d4024896600200513302701410248992cc004c0dcc114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c04cc084dd5000c4c966002603660446ea8006264b3001301530233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084602e60446ea8c058c088dd5181298111baa0018b20403300a3758602a60426ea80608c8cc004004c00cdd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602460406ea800a2646464b3001302800289980318138018992cc004c0580062b3001302537540050058b204c8acc004c05400626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013010301e3754005132323259800981300144cc024c09400c4c9660026028003132598009814000c4c8c966002602e003132598009815800c4cc038c0a80040262c8140c098dd50014566002602c003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602600315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d1365640081",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw=exports.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw=/*#__PURE__*/_createClass(function V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(proxyPolicyId,mintValidator,stakeValidator,managementValidator){var trace=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;_classCallCheck(this,V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",_data.Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");});var V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish=exports.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish=/*#__PURE__*/_createClass(function V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish(proxyPolicyId,mintValidator,stakeValidator,managementValidator){var trace=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;_classCallCheck(this,V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",_data.Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");});var V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse=exports.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse=/*#__PURE__*/_createClass(function V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse(proxyPolicyId,mintValidator,stakeValidator,managementValidator){var trace=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;_classCallCheck(this,V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",_data.Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");});var V1_0Rc1ProtocolStakeProtocolStakeWithdraw=exports.V1_0Rc1ProtocolStakeProtocolStakeWithdraw=/*#__PURE__*/_createClass(function V1_0Rc1ProtocolStakeProtocolStakeWithdraw(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0Rc1ProtocolStakeProtocolStakeWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"593b9d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888896600264653001301b001980d980e000cdc3a4009301b0024888966002600460366ea800e33001301f301c37540072302030213021001918101810800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009b80480066e95200248888888888888c8cc88c8c966002003198009112cc004c044c0c0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981c80146600200713259800980b000c566002606c6ea800a00f00640dd159800980a800c4c9660020030078992cc0040060110088044022264b3001303d003805402503a1bae00140f4607400281c0c0d8dd50014566002603800313259800800c01e264b3001303c002804c021039181d000a0703036375400500640cc8199033181a1baa001802a016802a06c802c01600b00540e8606e00281a8c0dc00a007003801c00d038181a800a0663031375400700140b922259800980898181baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130360018acc004cdc4a4008606a0030068992cc004c0ec012264b300130180018acc004c0e0dd5003402601081ca2b300130170018992cc00400601313259800800c02a01500a8992cc004c0fc00e01900b40f06eb400601481f8c0f000503a181c1baa0068acc004c0780062b30013038375400d0098042072804206a40d481a8c0d8dd5002c01d038180a981a800a066803206e3754003005802c01600a81d0c0dc005035181b801400e007003801a070303500140cc60626ea800e0028172444b300130113030375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0ec00e01100740e06eb400600c81d8c0e00050361bae001303700240e0606a0028198c0c4dd5001c00502e4888c966002602400313259800800c00e264b3001001802401200913259800981c801c01a00a81b0dd6800c011039181b000a068303237540091598009808800c56600260646ea801200700240cd00240bc8178c0c0dd5001a44446644b300130143033375400f13259800800c082264b30010018992cc00400604513259800800c4c9660020030248992cc00400604b0258992cc004c0fc00e2b3001301b303a375400d13259800800c09e264b300100181440a226644b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc004006264b300100181ac4c966002003159800982780144cc0b0038896600200513302e00d225980080146600200f19800802c4c9660026060609e6ea8066264b300100181e44c96600200313259800800c0fa264b30010018acc004c16000a26644b300130360018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d029411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606a00313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a052823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b159800981a000c4c9660020030428992cc0040060870438992cc004c17400e26607400244b3001002803c4c96600200319800800c4c008c18000e08e814a08f047823c11d061182f00120b882220b43758003043821a0ba305a001416060ac6ea80162b300130330018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d02a411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606400313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a054823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0c4006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b15980099b8748038006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b041414c829905320a6414c829905320a613259800981a800c4c9660020030418992cc0040062b3001305b0028cc004006011042409d0424161042821410a08482e0c164005057182a9baa0028acc004c0d0006264b3001001820c4c966002003159800982d8014566002606e60ac6ea8006264b3001001821c4c96600200313259800800c116264b30010018acc004c17c00a330010038cc00400601904640b104640b10464171046823411a08c8300c17400505b182e801411208904482220bc305b001416460ae6ea800608482a208482c2085042821410905c182c800a0ae3055375400504041488290c14cdd500098299baa00381fa0aa81fc0fe07f03f416460ac00282a0c15800a07b03d81ec0f5057182a000a0a43050375403303b413426606002a44b30010028cc004c150c144dd5181998289baa024914c004c8cc00400400c896600200314a115980099baf30583055375460b060aa6ea8c0dcc154dd5182c00098169982b9ba90034bd704528c4cc008008c16400505220aca50a51414123055305630563056305630563056305630560019181898289baa305532330010010022259800800c52f5c303d87a80008101800044c8cc8966003300130363056375460b40074a14a282a22660b330014a14c103d87a8000a60103d87980004150660b26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17000400e294626600400460ba00282b105a44cc166600294298103d87a8000a60103d87980004150660b26e9c0092f5c11330599800a51a60103d87a8000a60103d87980004150660b26e9ccc164dd400080125eb8105420a8375860b060b20026eb4c160008cc008008c16000505548c154c158c158c158c158006444b30010028a6103d87a80008acc004c0d00062605c660ac60ae00497ae08cc00400e60b0005302d001400c82890554888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd6982c000982d000a0b03232330010010062259800800c00e2646644b30013372201200515980099b8f0090028800c01905844cc014014c17c0110581bae3058001375660b200260b600282c852f5bded8c029000488966002606860a66ea800e264b300100180144c966002003003801c00e264b3001305b003802c0110581bad001801a0b63058001415860a86ea800e002828a44646600200200644b30010018a5eb8226644b30013375e60b460ae6ea8c168c15cdd5181c982b9baa002302f33059375200a97ae089982c80119802002000c4cc010010005054182c000982c800a0ac9182a982b182b182b182b182b000c8c154c158c158c15800644b30010018a4001133700900119801001182b800a0a8911194c0040060090034004444b30010028acc00400629462941058456600200314a115980099802182d0011bad305a0018cc00400e60b6005305b001400d14a082a105820b09112cc004c0d0c14cdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983000146600200f19800802c4c966002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981e000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c19c00e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b000e02d01541a46eb800506c1834800a0ce375c00260d00048348c19800506440410641bac001807c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002608600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b3001306a0038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001306f00380cc06106c1bae00141bc60d80028350dd7000983580120d83069001419d013419c6eb000602501241a860ce0028328dd68009833001403d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981d000c4c96600200300b8992cc00400601900c80644c96600260c800700e806a0c2375a00300c419060c200282f8c174dd50024566002607200313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009833801c0460208320dd6800c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607000313259800800c02e264b30010018064032019132598009832001c03a01a8308dd6800c0310641830800a0be305d375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001306400380740350611bad00180620c83061001417c60ba6ea801201482d105a20b4416882d105a20b4416860b66ea800e0128172012818a01282e8c17800505c182f001401e00f007803a0be305c001416860b8005005802c01600a82e8c168005058182d001400e007003801a0b63058001415860a86ea800e002828a44b30010018a4001133700900119801001182b800a0a89b89480026e21200048888888888888888a600260c26ea8046444b300130110028994c004006009003a40008008888966002007159800801440062a660ce92112657870656374205b5d203d206c6973745f62001641a9159800801454cc19d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260da007306d00299912cc004c01c00a266e0000cdd6982698359baa0028a99834a4811a6578706563742076616c69646174696f6e287265717565737429001641a060d80066eb4c1b000900420d441a9153306349012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164189300c00c980300348c03c00660060069111111919912cc004c12002633001375860dc60d66ea806a60dc60d66ea80fa609a60d66ea80fd222598009980e1bac3071306e37540a66eb8c1c4c1b8dd5180d98371baa001899912cc004c140c1bcdd5000c4c8cc896600260260051598009809800c566002b300130530018a518980900120e08992cc004c04c0062b300198009980d9bac3077307437540b26eb8c15cc1d0dd51810983a1baa0079bac30563074375401133076305630743754604260e86ea801ccc1d93001054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c168c1e4dd5000c4cc896600260c460f66ea8006264b30010018cc0040062b30013375e60c060fa6ea800cc20004c1f4dd5003456600266ebcc17cc1f4dd5000984000983e9baa0038acc004cdc49bad305f307d37540073001375660be60fa6ea8c17cc1f4dd50034dd7184000803cdd7182f803a04c8992cc004c16cc1f4dd5000c4cdc39bad308101307e37540026eb4c180c1f8dd5002452820f63060307d375400307541e907441e907341e9072407d07283941ca0e4841008c1fcc1f0dd5000c1b1079183e983d1baa001305d307a375460b860f46ea800e0dc83b8cc04403800501a41a907441a507422b300198009bac3057307437540b3375860ee60e86ea8022660ec60ac60e86ea8c084c1d0dd50039983b260106457355534472004bd702444b30013370e6020004602401919800806400a4464b3001305a307937540031325980099baf307e307b375400260fc60f66ea8c1f8c1ecdd5002456600266ebcc178c1ecdd5000982e983d9baa307e307b375400913370f3001375660ba60f66ea80066eb8c1f80166eb8c1740150242cc004c16c02626eb4c174c1ecdd500244cdc199b82375a60ba60f66ea8010024029078452820f08a5041e060fa60f46ea80060e883b8cc04401400501a41c10742264b30013055307437540031325980099b87375a60f200266e000140222b30013370e6eb4c1e4c1e8004cdc0002001c56600266e1e60026eacc084c1d8dd502dcdd7182c183b1baa302330763754013488105735553447200407c0071305698009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d2201045553447200407d1533074491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001641cd15330744914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001641cd153307449140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001641cd3001375860b060ea6ea816a6eb8c068c1d4dd51811183a9baa0089bae305730753754604460ea6ea80226eb4c1e0c1d4dd5000a01683220e4301a307437540111533072491dc6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641c51533072491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001641c51533072491186578706563742073757364725f746f5f6d696e74203e2030001641c4b300130530018802c4cdc199b8200500100241c115330714913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641c11533071491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641c115330714911d657870656374207661756c745f757364725f6265666f7265203e3d2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4b3001300e375a60a260de6ea80062609e6eb4c050c1bcdd5000c52820d8402c603260dc6ea800a0b683591598009823804c660026eb0c1b8c1acdd500d4c1b8c1acdd501f4c134c1acdd501fa444b30013301c375860e260dc6ea814cdd7183898371baa301b306e37540031332259800982818379baa00189919912cc004c04800a2b3001301200189919912cc004c05400a2b300198009980e9bac3079307637540b66eb8c164c1d8dd51811983b1baa0099bac30583076375401533078305830763754604660ec6ea8024cc1e130106457355534472004bd702444b30013370e6028006602801d159800980980146600200700291192cc004c170c1ecdd5000c4cc896600260c860fa6ea8006264b30010018cc0040062b30013375e60c460fe6ea800cc20804c1fcdd5003456600266ebcc184c1fcdd5000984100983f9baa0038acc004cdc49bad3061307f37540073001375660c260fe6ea8c184c1fcdd50034dd7184100803cdd71830803a0508992cc004c170c1fcdd5000c4c96600266e1cdd69842008009bad3063308101375400b13370e6eb4c21004c21404004dd698131840809baa0058a5041f86100026ea8006294107d1831183f9baa00183ba0f883b20f883aa0f883a204283a41d20e907442100461020260fc6ea80060dc83d8c1fcc1f0dd5000982f983e1baa305e307c375400707041e46602602000280e20d883b20d683b115980099b8798009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d220105735553447200407c66e0520000088992cc004c15cc1d8dd5000c4c96600266e1cdd6983d80099b810070048acc004cdc39bad307b307c0013370200c015159800982c4c004dd59811983c1baa05d9bae305a30783754604a60f06ea802e9110455534472004085159800cc004dd6182d983c1baa05d9bac307b307837540193307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b30013370e6028004602c02119800808400a4464b3001305e307d37540031325980099baf308201307f375400261040260fe6ea8c20804c1fcdd5002456600266ebcc188c1fcdd50009830983f9baa308201307f375400913370f3001375660c260fe6ea80066eb8c208040166eb8c18401502819b813370666e08dd69830983f9baa00400e00d375a604860fe6ea8012294107c452820f8308101307e375400307841ec6602a00a00280f20e883c1198009bac305b307837540bb307b307c307c307c307c307c307c307c307c307c307c307837540173307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b3001305b0068a51899b8900632330010010042259800800c52000899912cc004cdd7984100983f9baa002006899b8000198009bab3061307f3754005375c61040200b375c60c200a8142200283e0c20004004cc008008c2040400507e20f0454cc1d9241df6578706563740a2020202076616c69646174655f756e7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641d515330764911765787065637420757364725f6d696e746564203d3d2030001641d51533076491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641d515330764913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001641d53001375860b460ee6ea81726eb8c070c1dcdd51812183b9baa00a9bae305930773754604860ee6ea802a6eb4c1e8c1dcdd5000a01a83320e8301c3076375401515330744912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641cd1533074491a76578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202029001641cd15330744911a65787065637420757364725f746f5f72656c65617365203e2030001641cc6eb4c1dc004dd6983b983c000994c0040060134bd709010000810100002002222598008014400633001003983d0014c8c96600260306eb4c074c1e0dd5001456600266e24dd6980e983c1baa00200189983d1ba8337006eb4c1ec00c004cc1e8dd419b80375a60f660f80066eb4c074c1e0dd500125eb822a660ec92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641d515330764911565787065637420722e666f7266656974203e3d2030001641d466e0ccdc11bad30593077375400200c00a60f20048019077454cc1c52401236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641c115330714911c657870656374207661756c745f757364725f6265666f7265203e2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4601c6eb4c144c1bcdd5000a0163019306e375400505b41ac8a5041a083408888c966002609c60da6ea8006264b30013375e60e460de6ea8c1c8c1bcdd5182898379baa001304733071375200a97ae08acc004c13a60026eacc144c1bcdd5182898379baa001802d2210d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018998399ba898009bab30533071375460a660e26ea800e00d4890455534472004068660e660e860e26ea8004cc1cc00d2f5c10624065062831418a0c483b0c1ccc1c0dd5000c18106d182918379baa3051306f3754003153306d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ac6600a008002444464b3001304e306d37540031325980099baf3072306f375460e460de6ea8004c11ccc1c4dd4802a5eb822b3001304e98009bab3051306f3754003005a4410d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018acc004cdd7980b18389baa0034c103d87a80008998399ba898009bab305330713754007006a4410455534472004068660e660e860e26ea8004cc1cc00d2f5c1153306f490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641b90624065062831418a0c483b0c1ccc1c0dd5000c54cc1b924012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641b460a460de6ea80062a660da92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641ac6600a00800244b300133710002900045300103d87a8000899803001000a0ce2264b300100181ec0f6264b300100181f44c96600200303f81fc0fe07f1332259800800c106264b30010018acc004c16c00a264b300130383057375400513259800800c112264b30010018992cc00400608d13259800800c4c9660020030488992cc004006093049824c126264b300130630038acc004c0fcc178dd500344c96600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f132598009834801c4c966002608c00313259800800c14a264b3001001829c14e0a70538992cc004c1b400e02505441a86eb800506d1835000a0d0306637540171598009822800c56600260cc6ea802e01f051419d051418c8318c190dd500541410661bae00141a460cc0028320dd7000983280120cc3063001418460be6ea801a09482e20948300dd7000a0c63060001417860c0005047823c11e08e8308c17800505c182f001411608b045822a0be305c001416860b06ea800a08682a84c01cc16c02208482c2085042821410905c182c800a0ae375c00260b000482c8c1580050541bac00181ec0f5057182a00120a481d203c81d203c8992cc00400607703b81dc4c8c00cc154010dd6800c0ed055182900120a08992cc00400607303981cc4c8c00cc14c010dd6800c0e50531828001209c81b209881b40da06d0364140609a0028258c13400a06903481a40d104e1825800a092375a0026094005031412c60900028230dd6800982380140b90481822800a0863758002608800502b815a08a304200141006eb0004c10400a0510284108607e00281e8c0ecdd50034099038409903c1bac001812c09503f181e000a074303c002811c08e04702340f4607400281c0c0e800a043021810c08503b181c000a06c3034375400f01f40c4444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608600719800804c6600200900c805a01e805a022805a080375a00300a410c608000281f0c10000a0110088044021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12c00e02901341206eb800504b1824000a08c375c002608e0048240c1140050434039012403901440390431bac001806c0350461821800a0823043002805c02e01700b4110608200281f8dd680098200014021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c880cc06603301940cc664464b30013010302f375400313030323376060680026068606a0026eb0c0ccc0c0dd5000c54cc0b924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b4646600200200644b30010018a60103d87a80008992cc004cdd7981880099ba548010cc0d0c028cc0d0dd480225eb812f5c11300c33034374e66068606200266068606400297ae04bd7044cc00c00cc0d800902f181a000a06437566060606260626062606260626062606260626062605a6ea8048dd7181818169baa0019800912cc004006297ae089981818169818800998010011819000a05e9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003205891111919800800802912cc004006200b13259800800c4cc010c0d800801a26600a606c0046600600600281a0c0d80050334dd6180718161baa01148888c8c8c8cc88c966002003159800980b181a9baa0018992cc00400604713259800800c09204902481244cc89660020030268992cc0040062b3001303f0028acc004c06cc0e8dd5000c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c96600200303b81dc4cc896600200303d8992cc0040062b300130560028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0c8c144dd500344c96600200303f8992cc004006081040820410226644b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4c96600260c400713303f00f225980080146600201f102b826206c8992cc0040062b300130413060375400313259800800c13a264b3001001827c13e26644b3001001828c4c966002003052829414a26644b300100182a44c96600200305582ac156264b3001306e0038acc00401e0ad13259800800c15e0af05782bc4cc89660020030598992cc0040060b505a82d416a264b30013073003898081839808c16d0701bae00141cc60e00028370dd7000983780420e0306d00741ad05641ac6eb40060aa8370c1ac0050691bad001306a00282920d6306800141986eb0004c19c00a09f04f41a060ca0028318c184dd5000c13505e413609b04d826a0cc3063002418504a417c6eb8005062182f800a0ba375c00260bc00482f8c17000505a1bae001305b002417060b200282b8dd7000982c00120b23056001415060a46ea801a07c827a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c829a07d03e81f40f9057182a000a0a4375800260a600503b81da0a83051001413c60a200503981cc0e60728290c13c00504d182780140de06f03781ba0a0304d001412c609a00503581ac0d606a8270c12c005049182580140ce067033819a0983049001411c6092005031818c0c60628250c11c005045182380140be05f02f817a0903045001410c608a00502d816c0b605a8230c10c005041182180140ae05702b815a088304100140fc6082005029814c0a60528210c0fc00503d181d9baa001813a070813a078813c09e04f0274100607a00281d8dd7000981e001207a303a00140e0606c6ea8006044819a045022811408903b29981999b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40c522010013259800980b181a9baa00189929981a99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980f181b9baa0018992cc0040062b300130193038375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098210014401a07281f8c10000503e1bae001303f0024100607a00281d8c0e4dd5000c0d103640d206903481a207c303b30383754003153303649013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640d46034606e6ea8c064c0dcdd5000981c981b1baa0018a9981a24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640cc646600200200e44b30010018a60103d87a80008992cc004c8cc004004c014dd5980d981c9baa301b3039375400444b30010018a508acc004cdc79bae303d0010368a51899801001181f000a06e40ed130123303a0014bd7044cc00c00cc0f0009035181d000a070300100130070072223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20765980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81a90351bac3038002375a606c0026466ec0dd4181b0009ba73037001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6076003337149101023a200098008054c0f000600a805100a181f00144ca6002015303b00199b8a489023a200098008054c0f0006600e66008008004805100a181f0012078303e00140ec66e29220102207d0000340e06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920703758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40e866e2ccdc0000acc004cdc4000a4029148182290372074004401866e0c00520203370c002901019b8e00400240dc6eb800d03b1b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c88190c00c00c444b3001300d302c375400713259800800c00a264b30010018992cc00400600913259800800c566002606a00519800801c4c966002602400313259800800c01e264b30010018acc004c0e000a264b300130150018992cc00400601513259800800c566002607600519800800c032016807201681c201700b805c02d03c181c800a06e30353754005159800980a000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026084007013809207e375a0030114108607e00281e8dd6800981f001403903f181e000a074375a002607600500b40f0607200281b8c0d4dd5001402503220643033375400300840d5008804402201081c8c0d800503418191baa0028acc004c0440062b3001303237540050078032066803205e40bc60606ea800600a804200a819200b005802c0150361819800a0623033002801c00e00700340d060620028178c0b4dd5001c00502a111194c004006009003400444464b300130110018992cc00400600d13259800800c01e00f007803c4c9660026070007005804206a375c00281c0c0d400503318189baa0038acc004c040006264b300100180344c966002003007803c4c96600260700071330150012259800801401e264b30010018cc00402a00313002303b003402900b805c02e01681e0c0e400903740210351bac001803c01d038181a800a06630313754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0e000e26602a00244b3001002803c4c966002003198008054006260046076006805201700b805c02d03c181c801206e804206a3758003007803a070303500140cc60626ea800e2b3001300f0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d801c4cc060004896600200500a8992cc0040063300100d800c4c008c0f800d00d403a01d00e807207e303c00240e900b40e06eb000601500a40ec607000281b0dd6800981b801401d038181a800a066303137540071598009807000c4c9660020030068992cc00400600f007803c4c9660026070007005804206a375a00300740e0606a0028198c0c4dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981c001c01601081a8dd6800c01d038181a800a066303137540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013038003802c0210351bae00140e0606a0028198c0c4dd5001c01502e205c40b8817102e205c40b8605e6ea8008888c966002601a00313259800800c00e264b300100180240120090048992cc004c0d000e00d00540c46eb80050341818800a05e302d37540091598009806000c4c9660020030038992cc0040060090048024012264b3001303400380340150311bae00140d060620028178c0b4dd5002400902a2054302b37540068b2032180d800980b1baa01c8a4d15330144911856616c696461746f722072657475726e65642066616c73650013656404c1":"591d0b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009ba5480092222222222229800911192cc004c03000626464b3001302000280245901d1bae301e001301a37540071598009805800c4c966002603e00313300e3758603c00244b3001002802c6600200f3020002898009810801200e407916407060346ea800e2b300130120018992cc004c07c00626601c6eb0c07800489660020050058cc00401e6040005130013021002401c80f22c80e0c068dd5001c56600260140031323322598009810800c4cc040dd61810000912cc00400a00f19800804cc08800a260026046004804902045901e1bad301e001301f001301a37540071598009804800c4c8c96600260400050048b203a375a603c00260346ea800e2b30013008001899192cc004c08000a0091640746eb4c078004c068dd5001c566002600e0031323259800981000140122c80e8dd7180f000980d1baa0038b2030406080c10182030406080c0c060dd5001488c96600260160031323259800980f80140122c80e0dd7180e800980c9baa0038acc004c02800626464b3001301f00280245901c1bae301d0013019375400716405c80b8c05cdd5001489660026014602e6ea800a2646464b3001301f002899192cc004c03c0062b3001301d37540050068b203c8acc004c03800626464b300130230028044590201bad3021001301d3754005159800980a800c566002603a6ea800a00d16407916406c80d901b180d9baa001301e0038b20383259800980d800c56600266e252004301a0018b44c030c06800501945901c1baa301d001301d0013018375400516405922598009805180b9baa0028991919912cc004c08000e00b1640746eb4c074004dd7180e801180e800980c1baa0028b202c91192cc004c02c00626464b3001301f00280245901c1bad301d001301937540071598009805000c56600260326ea800e00516406916405c80b8c05cdd500124444466446645300133223259800980a18109baa001898111919bb03026001302630270013758604a60446ea80062c8100c8cc00400400c896600200314c103d87a80008992cc004cdd7981180099ba548010cc098c03ccc098dd480225eb812f5c11301033026374e6604c60460026604c604800297ae04bd7044cc00c00cc0a00090221813000a04837566044604660466046604660466046604660466046603e6ea8058dd71811180f9baa002912cc004c04cc080dd500144c8c8c8ca60026eb4c0a00066eb4c0a000e60500049112cc004c0b0012266014605600e26601e0020111640a43028001302700130260013021375400516407d2259800980998101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc0440044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80f922259800980a18109baa003899191919912cc004c0ac00e264b3001301a30273754003132323232323298009818800cdd61818802cdd698188024dd69818801cc0c40092222259800981b80344cc098dd6181b005912cc00400a26605000c44b300100289980e80289980e8048992cc004c0a8c0dcdd500944c8c8c966002607e005132332259800981800144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038acc004c0bc00a264b300130430018998191bac304200122598008014012266040608800426002608a00482122c8200c0f8dd5001c566002606c005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b3001302e0028992cc004c10c0062660646eb0c1080048966002005004899810182200109800982280120848b2080303e3754007159800981680144c96600260860031330323758608400244b300100280244cc084c1100084c004c114009042459040181f1baa0038acc004c0b000a264b300130430018998191bac304200122598008014012266042608800426002608a00482122c8200c0f8dd5001c5660026056005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b30013370e900700144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038b207840f081e103c207840f081e103c181d9baa001132598009817800c4c966002608400313302530410010078b207e303d37540071598009817000c4c9660026084003132598009818981f1baa00189919192cc004c11800a266054608a00626605400201716410c60880026088002607e6ea80062c81e8c1040062c81f8c0f4dd5001c5903b2076303b3754004607c0071640f0607a002607a00260706ea804a2c81b04cc0a8048896600200519800981e181c9baa302d303937540352298009919800800801912cc00400629422b30013375e6080607a6ea8c100c0f4dd51818981e9baa304000130283303f375200697ae08a518998010011820800a07640f94a14a281ca4607a607c607c607c607c607c607c607c607c0032302b30393754607a646600200200444b30010018a5eb8503d87a80008101800044c8cc896600330013030303e375460840074a14a281ea26608330014a14c103d87a8000a60103d879800040f4660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f904244cc106600294298103d87a8000a60103d879800040f4660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f4660826e9ccc104dd400080125eb8103d207a3758608060820026eb4c100008cc008008c10000503d48c0f4c0f8c0f8c0f8c0f8006444b30010028a6103d87a80008acc004c0b8006260506607c607e00497ae08cc00400e6080005337000029000a00640e881ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208089980280298230022080375c607e0026eb4c100004c108005040191919800800803112cc00400600713233225980099b910090028acc004cdc78048014400600c820a26600a00a608e0088208dd718200009bab304100130430014104297adef6c6014800244b3001302d303a375400513232598009820801400e2c81f0dd6981f800981d9baa0028b2072911919800800801912cc004006297ae0899912cc004cdd79821181f9baa3042303f37546066607e6ea8008c0a8cc104dd4802a5eb822660820046600800800313300400400140f46080002608200281f24607a607c607c607c607c607c0032303d303e303e303e001912cc0040062900044cdc02400466004004607e00281e2444653001001802400d0011112cc00400a2b30010018a518a504101159800800c52845660026600860840046eb4c1080063300100398218014c10c0050034528207a4100820244b3001302d303a375400513232323298009821000cc10800e60840049112cc004c11801226604e608a00e266048004264b3001303500189919912cc004c128006264646644b3001304e00380845904b1bae304b001375c609600460960026eb0c1240062c8238dd69823800982400098219baa0028acc004c0d00062646644b3001304a0018991919912cc004c13800e02116412c6eb8c12c004dd7182580118258009bac30490018b208e375a608e002609000260866ea800a2b3001303b001899194c004dd69824000cc1240066eb4c12000922259800982600144c8c8cc896600260a00070128b209a375c609a0026eb8c134008c134004dd618258014590490c120004c10cdd5001456600260660031323322598009825000c4c8c8cc8966002609c0070108b2096375c60960026eb8c12c008c12c004dd61824800c590471bad30470013048001304337540051598009819000c4c8c966002609200500b8b208c375a608e00260866ea800a2b300130310018991919912cc004c12c00e01b1641206eb4c120004dd69824001182400098219baa0028acc004c0c000626464b30013049002805c590461bad30470013043375400515980099b874803800626464b30013049002805c590461bad304700130433754005164104820904120824104820904120823041375400316410c304200130410013040001303b37540051640e52259800800c52000899b8048008cc008008c0fc00503c4dc4a40013710900024444444444444444530013049375402322259800980880144ca6002003004801d200040044444b30010038acc00400a2003164149198008024c15400e60aa005332259800980380144cdc00019bad30473053375400516414460a80066eb4c15000900420a48b209698060064c01801a4601e00330030034888888c8cc89660026084013198009bac30563053375403530563053375406930473053375406c9112cc004cc070dd6182c982b1baa04d375c60b260ac6ea8c06cc158dd5000c4cc8966002609460ae6ea80062646644b300130130028acc004c04c0062b3001598009826800c528c4c04800905944c9660026026003159800cc004cc06cdd6182f982e1baa053375c60a260b86ea8c084c170dd5003cdd61828182e1baa0089982f1828182e1baa3021305c375400e660bc9801054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c150c184dd5000c4cc896600260b860c66ea80062646603e0022b30013375e60b460ca6ea800cc1a0c194dd5003456600266ebcc164c194dd5000983418329baa0038acc004cdc49bad3059306537540073001375660b260ca6ea8c164c194dd50034dd71834003cdd7182c803a04c8992cc004c154c194dd5000c4cdc39bad3069306637540026eb4c168c198dd5002452820c8305a3065375400316418d16418d16418c60ce60c86ea80062c8310c194c188dd5000982b98311baa3056306237540071641806602201c00280d22c82ea2c82e9159800cc004dd61828982e1baa0539bac305f305c37540113305e3050305c3754604260b86ea801ccc17930106457355534472004bd702444b30013370e6020004602401919800806400a4464b30013054306137540031325980099baf30663063375400260cc60c66ea8c198c18cdd5002456600266ebcc160c18cdd5000982b98319baa30663063375400913370f3001375660ae60c66ea80066eb8c1980166eb8c15c0150242cc004c15402626eb4c15cc18cdd500244cdc199b82375a60ae60c66ea8010024029061452820c28a50418460ca60c46ea80062c8300cc04401400501a45905d2264b3001304f305c37540031325980099b87375a60c200266e000140222b30013370e6eb4c184c188004cdc0002001c56600266e1e60026eacc084c178dd502acdd71829182f1baa3023305e3754013488105735553447200407c0071305098009bab3021305e37540ab375c60a460bc6ea8c08cc178dd5004d2201045553447200407d1641711641711641713001375860a460ba6ea81526eb8c068c174dd51811182e9baa0089bae3051305d3754604460ba6ea80226eb4c180c174dd5000a0168b20b6301a305c3754011164169164169164168b3001304d0018802c4cdc199b8200500100241651641651641651641646eb4c170004dd6982e182e800cc004dd6182d982c1baa04f9bae301530583754603a60b06ea800e6eb8c130c160dd5180e982c1baa0039bad305b30583754002803a2c82b26002007375860b260ac6ea800a4b3001300e375a609660ae6ea8006260926eb4c050c15cdd5000c52820aa402c603260ac6ea800a2c82a11598009820804c660026eb0c158c14cdd500d4c158c14cdd501a4c11cc14cdd501b2444b30013301c375860b260ac6ea8134dd7182c982b1baa301b3056375400313322598009825182b9baa00189919912cc004c04800a2b30013012001899192cc004c0500062b300198009980e1bac3060305d37540a86eb8c148c174dd51811182e9baa0089bac3051305d37540133305f3051305d3754604460ba6ea8020cc17d300106457355534472004bd702444b30013370e6026006602601b159800980900146600200700291192cc004c154c188dd5000c4cc896600260ba60c86ea8006264660400022b30013375e60b660cc6ea800cc1a4c198dd5003456600266ebcc168c198dd5000983498331baa0038acc004cdc49bad305a306637540073001375660b460cc6ea8c168c198dd50034dd71834803cdd7182d003a04e8992cc004c154c198dd5000c4c96600266e1cdd698358009bad305c3068375400b13370e6eb4c1acc1b0004dd6981298341baa0058a50419860ce6ea80062941065182d98331baa0018b20c88b20c88b20c830683065375400316418c60cc60c66ea8004c160c18cdd5182b98319baa0038b20c23301200f001406d1641791641788acc004cdc3cc004dd59810182e9baa0549bae3051305d3754604460ba6ea8022910105735553447200407866e0520000078992cc004c140c174dd5000c4c96600266e1cdd6983100099b810060038acc004cdc39bad306230630013370200a0131598009828cc004dd59811182f9baa0569bae3053305f3754604860be6ea802a9110455534472004081159800cc004dd6182a182f9baa0569bac3062305f3754017330613053305f3754604860be6ea8028cc185301054455534472004bd702444b30013370e6026004602a01f19800807c00a4464b30013057306437540031325980099baf30693066375400260d260cc6ea8c1a4c198dd5002456600266ebcc16cc198dd5000982d18331baa30693066375400913370f3001375660b460cc6ea80066eb8c1a40166eb8c16801502719b813370666e08dd6982d18331baa00400d00c375a604660cc6ea80122941064452820c830683065375400316418c6602800a00280ea2c8301198009bac3054305f37540ad30623063306330633063306330633063306330633063305f3754015330613053305f3754604860be6ea8028cc185301054455534472004bd704dd69831183180224444b300130550018a51899b8900132330010010052259800800c52000899912cc004cdd7983518339baa002007899b8000198009bab305b30673754005375c60d400d375c60b600c814220028328c1a0004cc008008c1a400506620c245905d45905d45905d45905d4c004dd61829982f1baa0559bae301b305e3754604660bc6ea80266eb8c148c178dd51811982f1baa0099bad3061305e375400280622c82e0c06cc174dd5004c5905b45905b45905b1bad305f001329800800c02697ae1101000081010000200222259800801440063300100398310014c8c96600260306eb4c074c180dd5001456600266e24dd6980e98301baa0020018998311ba8337006eb4c18c00c004cc188dd419b80375a60c660c80066eb4c074c180dd500125eb822c82f22c82f0cdc199b82375a60a660be6ea8004018014c18400900320be8b20b28b20b2375a60b80026eb4c170c17400660026eb0c16cc160dd5027cdd7180a982c1baa301d30583754007375c609860b06ea8c074c160dd5001cdd6982d982c1baa001401d16415930010039bac3059305637540052300e375a609660ae6ea800500b180c982b1baa0028b20a8452820a24144444464b30013048305537540031325980099baf305a3057375460b460ae6ea8c12cc15cdd500098211982c9ba90054bd704566002609130013756609660ae6ea8c12cc15cdd5000c01691010d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c80089982d9ba898009bab304d30593754609a60b26ea800e00d48810455534472004068660b660b860b26ea8004cc16c00d2f5c060b660b06ea80062c82b0c130c15cdd51825982b9baa0018b20aa8b20aa3059305637540031641506600a008002444464b30013048305537540031325980099baf305a3057375460b460ae6ea8004c108cc164dd4802a5eb822b3001304898009bab304b30573754003005a450d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c8008acc004cdd7980b182c9baa0034c0103d87a800089982d9ba898009bab304d30593754007006a4410455534472004068660b660b860b26ea8004cc16c00d2f5c116415c60b660b06ea80062c82b0c130c15cdd5000c59055459055182c982b1baa0018b20a833005004001225980099b8800148002298103d87a8000899803001000a0a022646644b30013040001899912cc004c0c0c0f4dd500144c8c8c8cc8966002608e00713259800981b18219baa0018991919912cc004c13000e264b3001303b001899192cc004c13c00a01d1641306eb8c134004c124dd5003c566002607400315980098249baa00780645904a459047208e3047375400d1641246eb8c124004dd71824801182480098221baa0018b208430460058b2088375c6088002608800460880026086002607c6ea800a2c81e0c0fc0044c010c1000162c81e8dd7181e800981f0009bac303c00240e91323002303c003375a607400481c2264600460740066eb4c0e00090364590340c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815002c590281bac302800130280023028001302700130223754007164080323232598009809180f9baa00189919912cc004c09c006264b30013016302337540031323232323232323232323298009819000cc0c802a606401330320089819003cc0c801a606400b30320049819001cdd6181900124444444444b3001303d00b89980f181e00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0acc0e0dd500144c8c8c8ca60026eb8c1000066eb8c1000126eb8c10000e6eb8c1000092222598009822802c4cc0d0024896600200513302701410248992cc004c0d8c10cdd5000c4c8c8c8cc8966002609a007132323322598009828801c4c02cc1440322c8270dd718270009bae304e002304e0013758609800b1641286eb4c128004dd698250011825000982480098221baa0018b2084304600241111641083040001303f001303e001303937540051640dd1640e8303200130310013030001302f001302e001302d001302c001302b001302a001302900130243754003164088604c0031640906eb8c090004c094004c080dd5000c5901e192cc004c048c07cdd5000c4c966002603260406ea8006264b3001301430213754003132323322598009815001c40162c8138c09c004dd71813801181380098111baa0018b204030243021375400316407c602a60406ea8c050c080dd5181198101baa0018b203c32330010013758602860406ea805c896600200314c0103d87a80008992cc004c8cc004004c014dd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a04440951300e330240014bd7044cc00c00cc0980090201812000a04430010012259800800c52f5c1133021301e3022001330020023023001408044b30013011301e3754005132323259800981300144cc018c09400c4c966002602a00315980098119baa002802c590244566002602800313232598009814801401e2c8130dd7181380098119baa0028acc004c06c00626464b30013029002803c59026181380098119baa0028b204240848108c084dd5000c5902318120009812000980f9baa0028b203a300500522598009807980e1baa00289919192cc004c09000a2660126046006264b300130130018992cc004c09800626464b300130160018992cc004c0a400626601c605000201316409860486ea800a2b3001301500189919194c004dd69815000cdd69815001cdd698150012444b3001302e00480745902b0c0a8004c0a4004c090dd5001459022204430223754002604a00316408c60426ea800a2b300130120018acc004c084dd500140162c81122c80f901f180f9baa0018b204230220013022001301d375400516406c4590080c024004c010dd5004c52689b2b20041",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0Rc1ProtocolStakeProtocolStakeElse=exports.V1_0Rc1ProtocolStakeProtocolStakeElse=/*#__PURE__*/_createClass(function V1_0Rc1ProtocolStakeProtocolStakeElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0Rc1ProtocolStakeProtocolStakeElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"593b9d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888896600264653001301b001980d980e000cdc3a4009301b0024888966002600460366ea800e33001301f301c37540072302030213021001918101810800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009b80480066e95200248888888888888c8cc88c8c966002003198009112cc004c044c0c0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981c80146600200713259800980b000c566002606c6ea800a00f00640dd159800980a800c4c9660020030078992cc0040060110088044022264b3001303d003805402503a1bae00140f4607400281c0c0d8dd50014566002603800313259800800c01e264b3001303c002804c021039181d000a0703036375400500640cc8199033181a1baa001802a016802a06c802c01600b00540e8606e00281a8c0dc00a007003801c00d038181a800a0663031375400700140b922259800980898181baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130360018acc004cdc4a4008606a0030068992cc004c0ec012264b300130180018acc004c0e0dd5003402601081ca2b300130170018992cc00400601313259800800c02a01500a8992cc004c0fc00e01900b40f06eb400601481f8c0f000503a181c1baa0068acc004c0780062b30013038375400d0098042072804206a40d481a8c0d8dd5002c01d038180a981a800a066803206e3754003005802c01600a81d0c0dc005035181b801400e007003801a070303500140cc60626ea800e0028172444b300130113030375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0ec00e01100740e06eb400600c81d8c0e00050361bae001303700240e0606a0028198c0c4dd5001c00502e4888c966002602400313259800800c00e264b3001001802401200913259800981c801c01a00a81b0dd6800c011039181b000a068303237540091598009808800c56600260646ea801200700240cd00240bc8178c0c0dd5001a44446644b300130143033375400f13259800800c082264b30010018992cc00400604513259800800c4c9660020030248992cc00400604b0258992cc004c0fc00e2b3001301b303a375400d13259800800c09e264b300100181440a226644b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc004006264b300100181ac4c966002003159800982780144cc0b0038896600200513302e00d225980080146600200f19800802c4c9660026060609e6ea8066264b300100181e44c96600200313259800800c0fa264b30010018acc004c16000a26644b300130360018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d029411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606a00313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a052823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b159800981a000c4c9660020030428992cc0040060870438992cc004c17400e26607400244b3001002803c4c96600200319800800c4c008c18000e08e814a08f047823c11d061182f00120b882220b43758003043821a0ba305a001416060ac6ea80162b300130330018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d02a411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606400313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a054823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0c4006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b15980099b8748038006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b041414c829905320a6414c829905320a613259800981a800c4c9660020030418992cc0040062b3001305b0028cc004006011042409d0424161042821410a08482e0c164005057182a9baa0028acc004c0d0006264b3001001820c4c966002003159800982d8014566002606e60ac6ea8006264b3001001821c4c96600200313259800800c116264b30010018acc004c17c00a330010038cc00400601904640b104640b10464171046823411a08c8300c17400505b182e801411208904482220bc305b001416460ae6ea800608482a208482c2085042821410905c182c800a0ae3055375400504041488290c14cdd500098299baa00381fa0aa81fc0fe07f03f416460ac00282a0c15800a07b03d81ec0f5057182a000a0a43050375403303b413426606002a44b30010028cc004c150c144dd5181998289baa024914c004c8cc00400400c896600200314a115980099baf30583055375460b060aa6ea8c0dcc154dd5182c00098169982b9ba90034bd704528c4cc008008c16400505220aca50a51414123055305630563056305630563056305630560019181898289baa305532330010010022259800800c52f5c303d87a80008101800044c8cc8966003300130363056375460b40074a14a282a22660b330014a14c103d87a8000a60103d87980004150660b26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17000400e294626600400460ba00282b105a44cc166600294298103d87a8000a60103d87980004150660b26e9c0092f5c11330599800a51a60103d87a8000a60103d87980004150660b26e9ccc164dd400080125eb8105420a8375860b060b20026eb4c160008cc008008c16000505548c154c158c158c158c158006444b30010028a6103d87a80008acc004c0d00062605c660ac60ae00497ae08cc00400e60b0005302d001400c82890554888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd6982c000982d000a0b03232330010010062259800800c00e2646644b30013372201200515980099b8f0090028800c01905844cc014014c17c0110581bae3058001375660b200260b600282c852f5bded8c029000488966002606860a66ea800e264b300100180144c966002003003801c00e264b3001305b003802c0110581bad001801a0b63058001415860a86ea800e002828a44646600200200644b30010018a5eb8226644b30013375e60b460ae6ea8c168c15cdd5181c982b9baa002302f33059375200a97ae089982c80119802002000c4cc010010005054182c000982c800a0ac9182a982b182b182b182b182b000c8c154c158c158c15800644b30010018a4001133700900119801001182b800a0a8911194c0040060090034004444b30010028acc00400629462941058456600200314a115980099802182d0011bad305a0018cc00400e60b6005305b001400d14a082a105820b09112cc004c0d0c14cdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983000146600200f19800802c4c966002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981e000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c19c00e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b000e02d01541a46eb800506c1834800a0ce375c00260d00048348c19800506440410641bac001807c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002608600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b3001306a0038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001306f00380cc06106c1bae00141bc60d80028350dd7000983580120d83069001419d013419c6eb000602501241a860ce0028328dd68009833001403d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981d000c4c96600200300b8992cc00400601900c80644c96600260c800700e806a0c2375a00300c419060c200282f8c174dd50024566002607200313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009833801c0460208320dd6800c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607000313259800800c02e264b30010018064032019132598009832001c03a01a8308dd6800c0310641830800a0be305d375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001306400380740350611bad00180620c83061001417c60ba6ea801201482d105a20b4416882d105a20b4416860b66ea800e0128172012818a01282e8c17800505c182f001401e00f007803a0be305c001416860b8005005802c01600a82e8c168005058182d001400e007003801a0b63058001415860a86ea800e002828a44b30010018a4001133700900119801001182b800a0a89b89480026e21200048888888888888888a600260c26ea8046444b300130110028994c004006009003a40008008888966002007159800801440062a660ce92112657870656374205b5d203d206c6973745f62001641a9159800801454cc19d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260da007306d00299912cc004c01c00a266e0000cdd6982698359baa0028a99834a4811a6578706563742076616c69646174696f6e287265717565737429001641a060d80066eb4c1b000900420d441a9153306349012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164189300c00c980300348c03c00660060069111111919912cc004c12002633001375860dc60d66ea806a60dc60d66ea80fa609a60d66ea80fd222598009980e1bac3071306e37540a66eb8c1c4c1b8dd5180d98371baa001899912cc004c140c1bcdd5000c4c8cc896600260260051598009809800c566002b300130530018a518980900120e08992cc004c04c0062b300198009980d9bac3077307437540b26eb8c15cc1d0dd51810983a1baa0079bac30563074375401133076305630743754604260e86ea801ccc1d93001054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c168c1e4dd5000c4cc896600260c460f66ea8006264b30010018cc0040062b30013375e60c060fa6ea800cc20004c1f4dd5003456600266ebcc17cc1f4dd5000984000983e9baa0038acc004cdc49bad305f307d37540073001375660be60fa6ea8c17cc1f4dd50034dd7184000803cdd7182f803a04c8992cc004c16cc1f4dd5000c4cdc39bad308101307e37540026eb4c180c1f8dd5002452820f63060307d375400307541e907441e907341e9072407d07283941ca0e4841008c1fcc1f0dd5000c1b1079183e983d1baa001305d307a375460b860f46ea800e0dc83b8cc04403800501a41a907441a507422b300198009bac3057307437540b3375860ee60e86ea8022660ec60ac60e86ea8c084c1d0dd50039983b260106457355534472004bd702444b30013370e6020004602401919800806400a4464b3001305a307937540031325980099baf307e307b375400260fc60f66ea8c1f8c1ecdd5002456600266ebcc178c1ecdd5000982e983d9baa307e307b375400913370f3001375660ba60f66ea80066eb8c1f80166eb8c1740150242cc004c16c02626eb4c174c1ecdd500244cdc199b82375a60ba60f66ea8010024029078452820f08a5041e060fa60f46ea80060e883b8cc04401400501a41c10742264b30013055307437540031325980099b87375a60f200266e000140222b30013370e6eb4c1e4c1e8004cdc0002001c56600266e1e60026eacc084c1d8dd502dcdd7182c183b1baa302330763754013488105735553447200407c0071305698009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d2201045553447200407d1533074491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001641cd15330744914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001641cd153307449140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001641cd3001375860b060ea6ea816a6eb8c068c1d4dd51811183a9baa0089bae305730753754604460ea6ea80226eb4c1e0c1d4dd5000a01683220e4301a307437540111533072491dc6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641c51533072491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001641c51533072491186578706563742073757364725f746f5f6d696e74203e2030001641c4b300130530018802c4cdc199b8200500100241c115330714913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641c11533071491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641c115330714911d657870656374207661756c745f757364725f6265666f7265203e3d2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4b3001300e375a60a260de6ea80062609e6eb4c050c1bcdd5000c52820d8402c603260dc6ea800a0b683591598009823804c660026eb0c1b8c1acdd500d4c1b8c1acdd501f4c134c1acdd501fa444b30013301c375860e260dc6ea814cdd7183898371baa301b306e37540031332259800982818379baa00189919912cc004c04800a2b3001301200189919912cc004c05400a2b300198009980e9bac3079307637540b66eb8c164c1d8dd51811983b1baa0099bac30583076375401533078305830763754604660ec6ea8024cc1e130106457355534472004bd702444b30013370e6028006602801d159800980980146600200700291192cc004c170c1ecdd5000c4cc896600260c860fa6ea8006264b30010018cc0040062b30013375e60c460fe6ea800cc20804c1fcdd5003456600266ebcc184c1fcdd5000984100983f9baa0038acc004cdc49bad3061307f37540073001375660c260fe6ea8c184c1fcdd50034dd7184100803cdd71830803a0508992cc004c170c1fcdd5000c4c96600266e1cdd69842008009bad3063308101375400b13370e6eb4c21004c21404004dd698131840809baa0058a5041f86100026ea8006294107d1831183f9baa00183ba0f883b20f883aa0f883a204283a41d20e907442100461020260fc6ea80060dc83d8c1fcc1f0dd5000982f983e1baa305e307c375400707041e46602602000280e20d883b20d683b115980099b8798009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d220105735553447200407c66e0520000088992cc004c15cc1d8dd5000c4c96600266e1cdd6983d80099b810070048acc004cdc39bad307b307c0013370200c015159800982c4c004dd59811983c1baa05d9bae305a30783754604a60f06ea802e9110455534472004085159800cc004dd6182d983c1baa05d9bac307b307837540193307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b30013370e6028004602c02119800808400a4464b3001305e307d37540031325980099baf308201307f375400261040260fe6ea8c20804c1fcdd5002456600266ebcc188c1fcdd50009830983f9baa308201307f375400913370f3001375660c260fe6ea80066eb8c208040166eb8c18401502819b813370666e08dd69830983f9baa00400e00d375a604860fe6ea8012294107c452820f8308101307e375400307841ec6602a00a00280f20e883c1198009bac305b307837540bb307b307c307c307c307c307c307c307c307c307c307c307837540173307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b3001305b0068a51899b8900632330010010042259800800c52000899912cc004cdd7984100983f9baa002006899b8000198009bab3061307f3754005375c61040200b375c60c200a8142200283e0c20004004cc008008c2040400507e20f0454cc1d9241df6578706563740a2020202076616c69646174655f756e7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641d515330764911765787065637420757364725f6d696e746564203d3d2030001641d51533076491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641d515330764913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001641d53001375860b460ee6ea81726eb8c070c1dcdd51812183b9baa00a9bae305930773754604860ee6ea802a6eb4c1e8c1dcdd5000a01a83320e8301c3076375401515330744912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641cd1533074491a76578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202029001641cd15330744911a65787065637420757364725f746f5f72656c65617365203e2030001641cc6eb4c1dc004dd6983b983c000994c0040060134bd709010000810100002002222598008014400633001003983d0014c8c96600260306eb4c074c1e0dd5001456600266e24dd6980e983c1baa00200189983d1ba8337006eb4c1ec00c004cc1e8dd419b80375a60f660f80066eb4c074c1e0dd500125eb822a660ec92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641d515330764911565787065637420722e666f7266656974203e3d2030001641d466e0ccdc11bad30593077375400200c00a60f20048019077454cc1c52401236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641c115330714911c657870656374207661756c745f757364725f6265666f7265203e2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4601c6eb4c144c1bcdd5000a0163019306e375400505b41ac8a5041a083408888c966002609c60da6ea8006264b30013375e60e460de6ea8c1c8c1bcdd5182898379baa001304733071375200a97ae08acc004c13a60026eacc144c1bcdd5182898379baa001802d2210d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018998399ba898009bab30533071375460a660e26ea800e00d4890455534472004068660e660e860e26ea8004cc1cc00d2f5c10624065062831418a0c483b0c1ccc1c0dd5000c18106d182918379baa3051306f3754003153306d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ac6600a008002444464b3001304e306d37540031325980099baf3072306f375460e460de6ea8004c11ccc1c4dd4802a5eb822b3001304e98009bab3051306f3754003005a4410d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018acc004cdd7980b18389baa0034c103d87a80008998399ba898009bab305330713754007006a4410455534472004068660e660e860e26ea8004cc1cc00d2f5c1153306f490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641b90624065062831418a0c483b0c1ccc1c0dd5000c54cc1b924012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641b460a460de6ea80062a660da92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641ac6600a00800244b300133710002900045300103d87a8000899803001000a0ce2264b300100181ec0f6264b300100181f44c96600200303f81fc0fe07f1332259800800c106264b30010018acc004c16c00a264b300130383057375400513259800800c112264b30010018992cc00400608d13259800800c4c9660020030488992cc004006093049824c126264b300130630038acc004c0fcc178dd500344c96600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f132598009834801c4c966002608c00313259800800c14a264b3001001829c14e0a70538992cc004c1b400e02505441a86eb800506d1835000a0d0306637540171598009822800c56600260cc6ea802e01f051419d051418c8318c190dd500541410661bae00141a460cc0028320dd7000983280120cc3063001418460be6ea801a09482e20948300dd7000a0c63060001417860c0005047823c11e08e8308c17800505c182f001411608b045822a0be305c001416860b06ea800a08682a84c01cc16c02208482c2085042821410905c182c800a0ae375c00260b000482c8c1580050541bac00181ec0f5057182a00120a481d203c81d203c8992cc00400607703b81dc4c8c00cc154010dd6800c0ed055182900120a08992cc00400607303981cc4c8c00cc14c010dd6800c0e50531828001209c81b209881b40da06d0364140609a0028258c13400a06903481a40d104e1825800a092375a0026094005031412c60900028230dd6800982380140b90481822800a0863758002608800502b815a08a304200141006eb0004c10400a0510284108607e00281e8c0ecdd50034099038409903c1bac001812c09503f181e000a074303c002811c08e04702340f4607400281c0c0e800a043021810c08503b181c000a06c3034375400f01f40c4444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608600719800804c6600200900c805a01e805a022805a080375a00300a410c608000281f0c10000a0110088044021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12c00e02901341206eb800504b1824000a08c375c002608e0048240c1140050434039012403901440390431bac001806c0350461821800a0823043002805c02e01700b4110608200281f8dd680098200014021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c880cc06603301940cc664464b30013010302f375400313030323376060680026068606a0026eb0c0ccc0c0dd5000c54cc0b924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b4646600200200644b30010018a60103d87a80008992cc004cdd7981880099ba548010cc0d0c028cc0d0dd480225eb812f5c11300c33034374e66068606200266068606400297ae04bd7044cc00c00cc0d800902f181a000a06437566060606260626062606260626062606260626062605a6ea8048dd7181818169baa0019800912cc004006297ae089981818169818800998010011819000a05e9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003205891111919800800802912cc004006200b13259800800c4cc010c0d800801a26600a606c0046600600600281a0c0d80050334dd6180718161baa01148888c8c8c8cc88c966002003159800980b181a9baa0018992cc00400604713259800800c09204902481244cc89660020030268992cc0040062b3001303f0028acc004c06cc0e8dd5000c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c96600200303b81dc4cc896600200303d8992cc0040062b300130560028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0c8c144dd500344c96600200303f8992cc004006081040820410226644b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4c96600260c400713303f00f225980080146600201f102b826206c8992cc0040062b300130413060375400313259800800c13a264b3001001827c13e26644b3001001828c4c966002003052829414a26644b300100182a44c96600200305582ac156264b3001306e0038acc00401e0ad13259800800c15e0af05782bc4cc89660020030598992cc0040060b505a82d416a264b30013073003898081839808c16d0701bae00141cc60e00028370dd7000983780420e0306d00741ad05641ac6eb40060aa8370c1ac0050691bad001306a00282920d6306800141986eb0004c19c00a09f04f41a060ca0028318c184dd5000c13505e413609b04d826a0cc3063002418504a417c6eb8005062182f800a0ba375c00260bc00482f8c17000505a1bae001305b002417060b200282b8dd7000982c00120b23056001415060a46ea801a07c827a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c829a07d03e81f40f9057182a000a0a4375800260a600503b81da0a83051001413c60a200503981cc0e60728290c13c00504d182780140de06f03781ba0a0304d001412c609a00503581ac0d606a8270c12c005049182580140ce067033819a0983049001411c6092005031818c0c60628250c11c005045182380140be05f02f817a0903045001410c608a00502d816c0b605a8230c10c005041182180140ae05702b815a088304100140fc6082005029814c0a60528210c0fc00503d181d9baa001813a070813a078813c09e04f0274100607a00281d8dd7000981e001207a303a00140e0606c6ea8006044819a045022811408903b29981999b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40c522010013259800980b181a9baa00189929981a99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980f181b9baa0018992cc0040062b300130193038375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098210014401a07281f8c10000503e1bae001303f0024100607a00281d8c0e4dd5000c0d103640d206903481a207c303b30383754003153303649013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640d46034606e6ea8c064c0dcdd5000981c981b1baa0018a9981a24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640cc646600200200e44b30010018a60103d87a80008992cc004c8cc004004c014dd5980d981c9baa301b3039375400444b30010018a508acc004cdc79bae303d0010368a51899801001181f000a06e40ed130123303a0014bd7044cc00c00cc0f0009035181d000a070300100130070072223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20765980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81a90351bac3038002375a606c0026466ec0dd4181b0009ba73037001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6076003337149101023a200098008054c0f000600a805100a181f00144ca6002015303b00199b8a489023a200098008054c0f0006600e66008008004805100a181f0012078303e00140ec66e29220102207d0000340e06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920703758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40e866e2ccdc0000acc004cdc4000a4029148182290372074004401866e0c00520203370c002901019b8e00400240dc6eb800d03b1b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c88190c00c00c444b3001300d302c375400713259800800c00a264b30010018992cc00400600913259800800c566002606a00519800801c4c966002602400313259800800c01e264b30010018acc004c0e000a264b300130150018992cc00400601513259800800c566002607600519800800c032016807201681c201700b805c02d03c181c800a06e30353754005159800980a000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026084007013809207e375a0030114108607e00281e8dd6800981f001403903f181e000a074375a002607600500b40f0607200281b8c0d4dd5001402503220643033375400300840d5008804402201081c8c0d800503418191baa0028acc004c0440062b3001303237540050078032066803205e40bc60606ea800600a804200a819200b005802c0150361819800a0623033002801c00e00700340d060620028178c0b4dd5001c00502a111194c004006009003400444464b300130110018992cc00400600d13259800800c01e00f007803c4c9660026070007005804206a375c00281c0c0d400503318189baa0038acc004c040006264b300100180344c966002003007803c4c96600260700071330150012259800801401e264b30010018cc00402a00313002303b003402900b805c02e01681e0c0e400903740210351bac001803c01d038181a800a06630313754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0e000e26602a00244b3001002803c4c966002003198008054006260046076006805201700b805c02d03c181c801206e804206a3758003007803a070303500140cc60626ea800e2b3001300f0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d801c4cc060004896600200500a8992cc0040063300100d800c4c008c0f800d00d403a01d00e807207e303c00240e900b40e06eb000601500a40ec607000281b0dd6800981b801401d038181a800a066303137540071598009807000c4c9660020030068992cc00400600f007803c4c9660026070007005804206a375a00300740e0606a0028198c0c4dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981c001c01601081a8dd6800c01d038181a800a066303137540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013038003802c0210351bae00140e0606a0028198c0c4dd5001c01502e205c40b8817102e205c40b8605e6ea8008888c966002601a00313259800800c00e264b300100180240120090048992cc004c0d000e00d00540c46eb80050341818800a05e302d37540091598009806000c4c9660020030038992cc0040060090048024012264b3001303400380340150311bae00140d060620028178c0b4dd5002400902a2054302b37540068b2032180d800980b1baa01c8a4d15330144911856616c696461746f722072657475726e65642066616c73650013656404c1":"591d0b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009ba5480092222222222229800911192cc004c03000626464b3001302000280245901d1bae301e001301a37540071598009805800c4c966002603e00313300e3758603c00244b3001002802c6600200f3020002898009810801200e407916407060346ea800e2b300130120018992cc004c07c00626601c6eb0c07800489660020050058cc00401e6040005130013021002401c80f22c80e0c068dd5001c56600260140031323322598009810800c4cc040dd61810000912cc00400a00f19800804cc08800a260026046004804902045901e1bad301e001301f001301a37540071598009804800c4c8c96600260400050048b203a375a603c00260346ea800e2b30013008001899192cc004c08000a0091640746eb4c078004c068dd5001c566002600e0031323259800981000140122c80e8dd7180f000980d1baa0038b2030406080c10182030406080c0c060dd5001488c96600260160031323259800980f80140122c80e0dd7180e800980c9baa0038acc004c02800626464b3001301f00280245901c1bae301d0013019375400716405c80b8c05cdd5001489660026014602e6ea800a2646464b3001301f002899192cc004c03c0062b3001301d37540050068b203c8acc004c03800626464b300130230028044590201bad3021001301d3754005159800980a800c566002603a6ea800a00d16407916406c80d901b180d9baa001301e0038b20383259800980d800c56600266e252004301a0018b44c030c06800501945901c1baa301d001301d0013018375400516405922598009805180b9baa0028991919912cc004c08000e00b1640746eb4c074004dd7180e801180e800980c1baa0028b202c91192cc004c02c00626464b3001301f00280245901c1bad301d001301937540071598009805000c56600260326ea800e00516406916405c80b8c05cdd500124444466446645300133223259800980a18109baa001898111919bb03026001302630270013758604a60446ea80062c8100c8cc00400400c896600200314c103d87a80008992cc004cdd7981180099ba548010cc098c03ccc098dd480225eb812f5c11301033026374e6604c60460026604c604800297ae04bd7044cc00c00cc0a00090221813000a04837566044604660466046604660466046604660466046603e6ea8058dd71811180f9baa002912cc004c04cc080dd500144c8c8c8ca60026eb4c0a00066eb4c0a000e60500049112cc004c0b0012266014605600e26601e0020111640a43028001302700130260013021375400516407d2259800980998101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc0440044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80f922259800980a18109baa003899191919912cc004c0ac00e264b3001301a30273754003132323232323298009818800cdd61818802cdd698188024dd69818801cc0c40092222259800981b80344cc098dd6181b005912cc00400a26605000c44b300100289980e80289980e8048992cc004c0a8c0dcdd500944c8c8c966002607e005132332259800981800144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038acc004c0bc00a264b300130430018998191bac304200122598008014012266040608800426002608a00482122c8200c0f8dd5001c566002606c005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b3001302e0028992cc004c10c0062660646eb0c1080048966002005004899810182200109800982280120848b2080303e3754007159800981680144c96600260860031330323758608400244b300100280244cc084c1100084c004c114009042459040181f1baa0038acc004c0b000a264b300130430018998191bac304200122598008014012266042608800426002608a00482122c8200c0f8dd5001c5660026056005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b30013370e900700144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038b207840f081e103c207840f081e103c181d9baa001132598009817800c4c966002608400313302530410010078b207e303d37540071598009817000c4c9660026084003132598009818981f1baa00189919192cc004c11800a266054608a00626605400201716410c60880026088002607e6ea80062c81e8c1040062c81f8c0f4dd5001c5903b2076303b3754004607c0071640f0607a002607a00260706ea804a2c81b04cc0a8048896600200519800981e181c9baa302d303937540352298009919800800801912cc00400629422b30013375e6080607a6ea8c100c0f4dd51818981e9baa304000130283303f375200697ae08a518998010011820800a07640f94a14a281ca4607a607c607c607c607c607c607c607c607c0032302b30393754607a646600200200444b30010018a5eb8503d87a80008101800044c8cc896600330013030303e375460840074a14a281ea26608330014a14c103d87a8000a60103d879800040f4660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f904244cc106600294298103d87a8000a60103d879800040f4660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f4660826e9ccc104dd400080125eb8103d207a3758608060820026eb4c100008cc008008c10000503d48c0f4c0f8c0f8c0f8c0f8006444b30010028a6103d87a80008acc004c0b8006260506607c607e00497ae08cc00400e6080005337000029000a00640e881ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208089980280298230022080375c607e0026eb4c100004c108005040191919800800803112cc00400600713233225980099b910090028acc004cdc78048014400600c820a26600a00a608e0088208dd718200009bab304100130430014104297adef6c6014800244b3001302d303a375400513232598009820801400e2c81f0dd6981f800981d9baa0028b2072911919800800801912cc004006297ae0899912cc004cdd79821181f9baa3042303f37546066607e6ea8008c0a8cc104dd4802a5eb822660820046600800800313300400400140f46080002608200281f24607a607c607c607c607c607c0032303d303e303e303e001912cc0040062900044cdc02400466004004607e00281e2444653001001802400d0011112cc00400a2b30010018a518a504101159800800c52845660026600860840046eb4c1080063300100398218014c10c0050034528207a4100820244b3001302d303a375400513232323298009821000cc10800e60840049112cc004c11801226604e608a00e266048004264b3001303500189919912cc004c128006264646644b3001304e00380845904b1bae304b001375c609600460960026eb0c1240062c8238dd69823800982400098219baa0028acc004c0d00062646644b3001304a0018991919912cc004c13800e02116412c6eb8c12c004dd7182580118258009bac30490018b208e375a608e002609000260866ea800a2b3001303b001899194c004dd69824000cc1240066eb4c12000922259800982600144c8c8cc896600260a00070128b209a375c609a0026eb8c134008c134004dd618258014590490c120004c10cdd5001456600260660031323322598009825000c4c8c8cc8966002609c0070108b2096375c60960026eb8c12c008c12c004dd61824800c590471bad30470013048001304337540051598009819000c4c8c966002609200500b8b208c375a608e00260866ea800a2b300130310018991919912cc004c12c00e01b1641206eb4c120004dd69824001182400098219baa0028acc004c0c000626464b30013049002805c590461bad30470013043375400515980099b874803800626464b30013049002805c590461bad304700130433754005164104820904120824104820904120823041375400316410c304200130410013040001303b37540051640e52259800800c52000899b8048008cc008008c0fc00503c4dc4a40013710900024444444444444444530013049375402322259800980880144ca6002003004801d200040044444b30010038acc00400a2003164149198008024c15400e60aa005332259800980380144cdc00019bad30473053375400516414460a80066eb4c15000900420a48b209698060064c01801a4601e00330030034888888c8cc89660026084013198009bac30563053375403530563053375406930473053375406c9112cc004cc070dd6182c982b1baa04d375c60b260ac6ea8c06cc158dd5000c4cc8966002609460ae6ea80062646644b300130130028acc004c04c0062b3001598009826800c528c4c04800905944c9660026026003159800cc004cc06cdd6182f982e1baa053375c60a260b86ea8c084c170dd5003cdd61828182e1baa0089982f1828182e1baa3021305c375400e660bc9801054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c150c184dd5000c4cc896600260b860c66ea80062646603e0022b30013375e60b460ca6ea800cc1a0c194dd5003456600266ebcc164c194dd5000983418329baa0038acc004cdc49bad3059306537540073001375660b260ca6ea8c164c194dd50034dd71834003cdd7182c803a04c8992cc004c154c194dd5000c4cdc39bad3069306637540026eb4c168c198dd5002452820c8305a3065375400316418d16418d16418c60ce60c86ea80062c8310c194c188dd5000982b98311baa3056306237540071641806602201c00280d22c82ea2c82e9159800cc004dd61828982e1baa0539bac305f305c37540113305e3050305c3754604260b86ea801ccc17930106457355534472004bd702444b30013370e6020004602401919800806400a4464b30013054306137540031325980099baf30663063375400260cc60c66ea8c198c18cdd5002456600266ebcc160c18cdd5000982b98319baa30663063375400913370f3001375660ae60c66ea80066eb8c1980166eb8c15c0150242cc004c15402626eb4c15cc18cdd500244cdc199b82375a60ae60c66ea8010024029061452820c28a50418460ca60c46ea80062c8300cc04401400501a45905d2264b3001304f305c37540031325980099b87375a60c200266e000140222b30013370e6eb4c184c188004cdc0002001c56600266e1e60026eacc084c178dd502acdd71829182f1baa3023305e3754013488105735553447200407c0071305098009bab3021305e37540ab375c60a460bc6ea8c08cc178dd5004d2201045553447200407d1641711641711641713001375860a460ba6ea81526eb8c068c174dd51811182e9baa0089bae3051305d3754604460ba6ea80226eb4c180c174dd5000a0168b20b6301a305c3754011164169164169164168b3001304d0018802c4cdc199b8200500100241651641651641651641646eb4c170004dd6982e182e800cc004dd6182d982c1baa04f9bae301530583754603a60b06ea800e6eb8c130c160dd5180e982c1baa0039bad305b30583754002803a2c82b26002007375860b260ac6ea800a4b3001300e375a609660ae6ea8006260926eb4c050c15cdd5000c52820aa402c603260ac6ea800a2c82a11598009820804c660026eb0c158c14cdd500d4c158c14cdd501a4c11cc14cdd501b2444b30013301c375860b260ac6ea8134dd7182c982b1baa301b3056375400313322598009825182b9baa00189919912cc004c04800a2b30013012001899192cc004c0500062b300198009980e1bac3060305d37540a86eb8c148c174dd51811182e9baa0089bac3051305d37540133305f3051305d3754604460ba6ea8020cc17d300106457355534472004bd702444b30013370e6026006602601b159800980900146600200700291192cc004c154c188dd5000c4cc896600260ba60c86ea8006264660400022b30013375e60b660cc6ea800cc1a4c198dd5003456600266ebcc168c198dd5000983498331baa0038acc004cdc49bad305a306637540073001375660b460cc6ea8c168c198dd50034dd71834803cdd7182d003a04e8992cc004c154c198dd5000c4c96600266e1cdd698358009bad305c3068375400b13370e6eb4c1acc1b0004dd6981298341baa0058a50419860ce6ea80062941065182d98331baa0018b20c88b20c88b20c830683065375400316418c60cc60c66ea8004c160c18cdd5182b98319baa0038b20c23301200f001406d1641791641788acc004cdc3cc004dd59810182e9baa0549bae3051305d3754604460ba6ea8022910105735553447200407866e0520000078992cc004c140c174dd5000c4c96600266e1cdd6983100099b810060038acc004cdc39bad306230630013370200a0131598009828cc004dd59811182f9baa0569bae3053305f3754604860be6ea802a9110455534472004081159800cc004dd6182a182f9baa0569bac3062305f3754017330613053305f3754604860be6ea8028cc185301054455534472004bd702444b30013370e6026004602a01f19800807c00a4464b30013057306437540031325980099baf30693066375400260d260cc6ea8c1a4c198dd5002456600266ebcc16cc198dd5000982d18331baa30693066375400913370f3001375660b460cc6ea80066eb8c1a40166eb8c16801502719b813370666e08dd6982d18331baa00400d00c375a604660cc6ea80122941064452820c830683065375400316418c6602800a00280ea2c8301198009bac3054305f37540ad30623063306330633063306330633063306330633063305f3754015330613053305f3754604860be6ea8028cc185301054455534472004bd704dd69831183180224444b300130550018a51899b8900132330010010052259800800c52000899912cc004cdd7983518339baa002007899b8000198009bab305b30673754005375c60d400d375c60b600c814220028328c1a0004cc008008c1a400506620c245905d45905d45905d45905d4c004dd61829982f1baa0559bae301b305e3754604660bc6ea80266eb8c148c178dd51811982f1baa0099bad3061305e375400280622c82e0c06cc174dd5004c5905b45905b45905b1bad305f001329800800c02697ae1101000081010000200222259800801440063300100398310014c8c96600260306eb4c074c180dd5001456600266e24dd6980e98301baa0020018998311ba8337006eb4c18c00c004cc188dd419b80375a60c660c80066eb4c074c180dd500125eb822c82f22c82f0cdc199b82375a60a660be6ea8004018014c18400900320be8b20b28b20b2375a60b80026eb4c170c17400660026eb0c16cc160dd5027cdd7180a982c1baa301d30583754007375c609860b06ea8c074c160dd5001cdd6982d982c1baa001401d16415930010039bac3059305637540052300e375a609660ae6ea800500b180c982b1baa0028b20a8452820a24144444464b30013048305537540031325980099baf305a3057375460b460ae6ea8c12cc15cdd500098211982c9ba90054bd704566002609130013756609660ae6ea8c12cc15cdd5000c01691010d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c80089982d9ba898009bab304d30593754609a60b26ea800e00d48810455534472004068660b660b860b26ea8004cc16c00d2f5c060b660b06ea80062c82b0c130c15cdd51825982b9baa0018b20aa8b20aa3059305637540031641506600a008002444464b30013048305537540031325980099baf305a3057375460b460ae6ea8004c108cc164dd4802a5eb822b3001304898009bab304b30573754003005a450d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c8008acc004cdd7980b182c9baa0034c0103d87a800089982d9ba898009bab304d30593754007006a4410455534472004068660b660b860b26ea8004cc16c00d2f5c116415c60b660b06ea80062c82b0c130c15cdd5000c59055459055182c982b1baa0018b20a833005004001225980099b8800148002298103d87a8000899803001000a0a022646644b30013040001899912cc004c0c0c0f4dd500144c8c8c8cc8966002608e00713259800981b18219baa0018991919912cc004c13000e264b3001303b001899192cc004c13c00a01d1641306eb8c134004c124dd5003c566002607400315980098249baa00780645904a459047208e3047375400d1641246eb8c124004dd71824801182480098221baa0018b208430460058b2088375c6088002608800460880026086002607c6ea800a2c81e0c0fc0044c010c1000162c81e8dd7181e800981f0009bac303c00240e91323002303c003375a607400481c2264600460740066eb4c0e00090364590340c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815002c590281bac302800130280023028001302700130223754007164080323232598009809180f9baa00189919912cc004c09c006264b30013016302337540031323232323232323232323298009819000cc0c802a606401330320089819003cc0c801a606400b30320049819001cdd6181900124444444444b3001303d00b89980f181e00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0acc0e0dd500144c8c8c8ca60026eb8c1000066eb8c1000126eb8c10000e6eb8c1000092222598009822802c4cc0d0024896600200513302701410248992cc004c0d8c10cdd5000c4c8c8c8cc8966002609a007132323322598009828801c4c02cc1440322c8270dd718270009bae304e002304e0013758609800b1641286eb4c128004dd698250011825000982480098221baa0018b2084304600241111641083040001303f001303e001303937540051640dd1640e8303200130310013030001302f001302e001302d001302c001302b001302a001302900130243754003164088604c0031640906eb8c090004c094004c080dd5000c5901e192cc004c048c07cdd5000c4c966002603260406ea8006264b3001301430213754003132323322598009815001c40162c8138c09c004dd71813801181380098111baa0018b204030243021375400316407c602a60406ea8c050c080dd5181198101baa0018b203c32330010013758602860406ea805c896600200314c0103d87a80008992cc004c8cc004004c014dd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a04440951300e330240014bd7044cc00c00cc0980090201812000a04430010012259800800c52f5c1133021301e3022001330020023023001408044b30013011301e3754005132323259800981300144cc018c09400c4c966002602a00315980098119baa002802c590244566002602800313232598009814801401e2c8130dd7181380098119baa0028acc004c06c00626464b30013029002803c59026181380098119baa0028b204240848108c084dd5000c5902318120009812000980f9baa0028b203a300500522598009807980e1baa00289919192cc004c09000a2660126046006264b300130130018992cc004c09800626464b300130160018992cc004c0a400626601c605000201316409860486ea800a2b3001301500189919194c004dd69815000cdd69815001cdd698150012444b3001302e00480745902b0c0a8004c0a4004c090dd5001459022204430223754002604a00316408c60426ea800a2b300130120018acc004c084dd500140162c81122c80f901f180f9baa0018b204230220013022001301d375400516406c4590080c024004c010dd5004c52689b2b20041",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0Rc1ProxyNftProxyNftMint=exports.V1_0Rc1ProxyNftProxyNftMint=/*#__PURE__*/_createClass(function V1_0Rc1ProxyNftProxyNftMint(utxoRef){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0Rc1ProxyNftProxyNftMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");});var V1_0Rc1ProxyNftProxyNftElse=exports.V1_0Rc1ProxyNftProxyNftElse=/*#__PURE__*/_createClass(function V1_0Rc1ProxyNftProxyNftElse(utxoRef){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0Rc1ProxyNftProxyNftElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");});var V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint=exports.V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint=/*#__PURE__*/_createClass(function V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse=exports.V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse=/*#__PURE__*/_createClass(function V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_0Rc1StakingVaultStakingVaultMint=exports.V1_0Rc1StakingVaultStakingVaultMint=/*#__PURE__*/_createClass(function V1_0Rc1StakingVaultStakingVaultMint(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0Rc1StakingVaultStakingVaultMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_0Rc1StakingVaultStakingVaultSpend=exports.V1_0Rc1StakingVaultStakingVaultSpend=/*#__PURE__*/_createClass(function V1_0Rc1StakingVaultStakingVaultSpend(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0Rc1StakingVaultStakingVaultSpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_0Rc1StakingVaultStakingVaultElse=exports.V1_0Rc1StakingVaultStakingVaultElse=/*#__PURE__*/_createClass(function V1_0Rc1StakingVaultStakingVaultElse(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0Rc1StakingVaultStakingVaultElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_0Rc1TreasuryTreasuryMint=exports.V1_0Rc1TreasuryTreasuryMint=/*#__PURE__*/_createClass(function V1_0Rc1TreasuryTreasuryMint(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0Rc1TreasuryTreasuryMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_0Rc1TreasuryTreasurySpend=exports.V1_0Rc1TreasuryTreasurySpend=/*#__PURE__*/_createClass(function V1_0Rc1TreasuryTreasurySpend(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0Rc1TreasuryTreasurySpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_0Rc1TreasuryTreasuryElse=exports.V1_0Rc1TreasuryTreasuryElse=/*#__PURE__*/_createClass(function V1_0Rc1TreasuryTreasuryElse(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_0Rc1TreasuryTreasuryElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0_rc1/index.js.map b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0_rc1/index.js.map new file mode 100644 index 0000000000..83352d23a7 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_0_rc1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_uplc","require","_data","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","a","n","TypeError","_defineProperty","value","i","_toPrimitive","toPrimitive","call","String","Number","PolicyId","Type","ScriptHash","Contracts","Module","Bool","Boolean","Tuple_VerificationKey_COSESign1","Tuple","Ref","COSESign1","headers","payload","Optional","signature","ctor","HeaderMap","Headers","unprotected","MultisigScript","Union","Signature","key_hash","AllOf","scripts","Array","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Destination","address","payment_credential","VerificationKey","stake_credential","Inline","Pointer","slot_number","transaction_index","certificate_index","datum","Literal","DatumHash","InlineDatum","TPlutusData","ExtraProtocolRedeemerV1","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","Nonce","UTxO","transaction_id","output_index","Validity","lower_bound","bound_type","Finite","is_inclusive","upper_bound","OrderActionV1","OMint","amount","reserve_asset","ORedeem","ODeposit","principal","OWithdraw","OStake","OUnstake","forfeit","ODirectMint","ODirectBurn","OrderDatumV1","owner","destination","action","data","OrderRedeemerV1","ProtocolRedeemerV1","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","DirectMint","DirectBurn","ProxyDatumV1","logic","settings","RegistryV1","treasury","usdr","order","staking_vault","RequestV1","origin","ReserveAsset","asset","numerator","denominator","SettingsV1","mint_permission","burn_permission","withdraw_permission","deposit_permission","stake_permission","unstake_permission","direct_mint_permission","direct_burn_permission","registry","reserve_assets","unstaked_yield_pot","SignedPayload_v1_0_ProtocolRedeemerV1","nonce","SignedRedeemer_v1_0_ExtraProtocolRedeemerV1","extra","signatures","StakingVaultRedeemerV1","Undefined","TreasuryDatumV1","circulating_supply","TreasuryRequestV1","VaultDatumV1","circulating_susdr","exports","Import","V1_0Rc1OrderOrderSpend","proxyPolicyId","protocolScripthash","trace","arguments","undefined","cborToScript","applyParamsToScript","V1_0Rc1OrderOrderElse","V1_0Rc1ProtocolManagementProtocolManagementWithdraw","V1_0Rc1ProtocolManagementProtocolManagementElse","V1_0Rc1ProtocolMintProtocolMintWithdraw","V1_0Rc1ProtocolMintProtocolMintElse","V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","mintValidator","stakeValidator","managementValidator","V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish","V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse","V1_0Rc1ProtocolStakeProtocolStakeWithdraw","V1_0Rc1ProtocolStakeProtocolStakeElse","V1_0Rc1ProxyNftProxyNftMint","utxoRef","V1_0Rc1ProxyNftProxyNftElse","V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint","V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse","V1_0Rc1StakingVaultStakingVaultMint","V1_0Rc1StakingVaultStakingVaultSpend","V1_0Rc1StakingVaultStakingVaultElse","V1_0Rc1TreasuryTreasuryMint","V1_0Rc1TreasuryTreasurySpend","V1_0Rc1TreasuryTreasuryElse"],"sources":["../../../../src/generated-types/v1_0_rc1/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\ntype Data = Exact;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\nconst ScriptHash = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n Bool: Type.Boolean(),\n Tuple_VerificationKey_COSESign1: Type.Tuple([\n Type.String(),\n Type.Ref(\"COSESign1\"),\n ]),\n COSESign1: Type.Object({\n headers: Type.Ref(\"Headers\"),\n payload: Type.Optional(\n Type.String()\n ),\n signature: Type.String(),\n }, { ctor: 0n }),\n HeaderMap: Type.String(),\n Headers: Type.Object({\n protected: Type.Ref(\"HeaderMap\"),\n unprotected: Type.Ref(\"HeaderMap\"),\n }, { ctor: 0n }),\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object({\n key_hash: Type.String(),\n }, { ctor: 0n })\n }),\n Type.Object({\n AllOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n AnyOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n AtLeast: Type.Object({\n required: Type.BigInt(),\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Before: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n After: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n Script: Type.Object({\n script_hash: Type.String(),\n }, { ctor: 6n })\n }),\n ]),\n Asset: Type.Tuple([\n Type.String(),\n Type.String(),\n ]),\n Destination: Type.Object({\n address: Type.Object({\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple([\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n ], { ctor: 0n })\n }),\n Type.Object({\n Pointer: Type.Object({\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ])\n ),\n }, { ctor: 0n }),\n datum: Type.Union([\n Type.Literal(\"NoDatum\", { ctor: 0n }),\n Type.Object({\n DatumHash: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n Type.Object({\n InlineDatum: Type.Tuple([\n TPlutusData,\n ], { ctor: 2n })\n }),\n ]),\n }, { ctor: 0n }),\n ExtraProtocolRedeemerV1: Type.Object({\n request_to_outputs: Type.Array(\n Type.BigInt()\n ),\n input_to_requests: Type.Array(\n Type.BigInt()\n ),\n treasury_input_idx: Type.BigInt(),\n treasury_output_idx: Type.BigInt(),\n vault_input_idx: Type.Optional(\n Type.BigInt()\n ),\n vault_output_idx: Type.Optional(\n Type.BigInt()\n ),\n }, { ctor: 0n }),\n Nonce: Type.Union([\n Type.Object({\n UTxO: Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ], { ctor: 0n })\n }),\n Type.Object({\n Validity: Type.Tuple([\n Type.Object({\n lower_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n upper_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n ], { ctor: 1n })\n }),\n ]),\n OrderActionV1: Type.Union([\n Type.Object({\n OMint: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 0n })\n }),\n Type.Object({\n ORedeem: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 1n })\n }),\n Type.Object({\n ODeposit: Type.Object({\n principal: Type.BigInt(),\n yield: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 2n })\n }),\n Type.Object({\n OWithdraw: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 3n })\n }),\n Type.Object({\n OStake: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n OUnstake: Type.Object({\n amount: Type.BigInt(),\n forfeit: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n ODirectMint: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 6n })\n }),\n Type.Object({\n ODirectBurn: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 7n })\n }),\n ]),\n OrderDatumV1: Type.Object({\n owner: Type.Ref(\"MultisigScript\"),\n destination: Type.Ref(\"Destination\"),\n action: Type.Ref(\"OrderActionV1\"),\n data: TPlutusData,\n }, { ctor: 0n }),\n OrderRedeemerV1: Type.Union([\n Type.Literal(\"Execute\", { ctor: 0n }),\n Type.Literal(\"Cancel\", { ctor: 1n }),\n Type.Literal(\"Invalidated\", { ctor: 2n }),\n ]),\n ProtocolRedeemerV1: Type.Union([\n Type.Object({\n Mint: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 0n })\n }),\n Type.Object({\n Burn: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n Withdraw: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n Deposit: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Stake: Type.Object({\n requests: Type.Array(\n Type.Ref(\"RequestV1\")\n ),\n }, { ctor: 4n })\n }),\n Type.Object({\n Unstake: Type.Object({\n requests: Type.Array(\n Type.Ref(\"RequestV1\")\n ),\n }, { ctor: 5n })\n }),\n Type.Object({\n DirectMint: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 6n })\n }),\n Type.Object({\n DirectBurn: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 7n })\n }),\n ]),\n ProxyDatumV1: Type.Object({\n logic: Type.String(),\n settings: Type.Ref(\"SettingsV1\"),\n }, { ctor: 0n }),\n RegistryV1: Type.Object({\n treasury: Type.String(),\n usdr: Type.String(),\n order: Type.String(),\n staking_vault: Type.String(),\n }, { ctor: 0n }),\n RequestV1: Type.Object({\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n origin: Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n forfeit: Type.BigInt(),\n }, { ctor: 0n }),\n ReserveAsset: Type.Object({\n asset: Type.Ref(\"Asset\"),\n numerator: Type.BigInt(),\n denominator: Type.BigInt(),\n }, { ctor: 0n }),\n SettingsV1: Type.Object({\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n withdraw_permission: Type.Ref(\"MultisigScript\"),\n deposit_permission: Type.Ref(\"MultisigScript\"),\n stake_permission: Type.Ref(\"MultisigScript\"),\n unstake_permission: Type.Ref(\"MultisigScript\"),\n direct_mint_permission: Type.Ref(\"MultisigScript\"),\n direct_burn_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"RegistryV1\"),\n reserve_assets: Type.Array(\n Type.Ref(\"ReserveAsset\")\n ),\n unstaked_yield_pot: Type.Object({\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple([\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n ], { ctor: 0n })\n }),\n Type.Object({\n Pointer: Type.Object({\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ])\n ),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n SignedPayload_v1_0_ProtocolRedeemerV1: Type.Object({\n action: Type.Ref(\"ProtocolRedeemerV1\"),\n nonce: Type.Ref(\"Nonce\"),\n }, { ctor: 0n }),\n SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: Type.Object({\n extra: Type.Ref(\"ExtraProtocolRedeemerV1\"),\n payload: Type.Ref(\"SignedPayload_v1_0_ProtocolRedeemerV1\"),\n signatures: Type.Array(\n Type.Ref(\"Tuple_VerificationKey_COSESign1\")\n ),\n }, { ctor: 0n }),\n StakingVaultRedeemerV1: Type.Undefined(),\n TreasuryDatumV1: Type.Object({\n circulating_supply: Type.BigInt(),\n }, { ctor: 0n }),\n TreasuryRequestV1: Type.Object({\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n yield: Type.BigInt(),\n origin: Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 0n }),\n VaultDatumV1: Type.Object({\n circulating_susdr: Type.BigInt(),\n }, { ctor: 0n }),\n});\n\nexport const Bool = Contracts.Import(\"Bool\");\nexport type Bool = Exact;\nexport const Tuple_VerificationKey_COSESign1 = Contracts.Import(\"Tuple_VerificationKey_COSESign1\");\nexport type Tuple_VerificationKey_COSESign1 = Exact;\nexport const COSESign1 = Contracts.Import(\"COSESign1\");\nexport type COSESign1 = Exact;\nexport const HeaderMap = Contracts.Import(\"HeaderMap\");\nexport type HeaderMap = Exact;\nexport const Headers = Contracts.Import(\"Headers\");\nexport type Headers = Exact;\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Destination = Contracts.Import(\"Destination\");\nexport type Destination = Exact;\nexport const ExtraProtocolRedeemerV1 = Contracts.Import(\"ExtraProtocolRedeemerV1\");\nexport type ExtraProtocolRedeemerV1 = Exact;\nexport const Nonce = Contracts.Import(\"Nonce\");\nexport type Nonce = Exact;\nexport const OrderActionV1 = Contracts.Import(\"OrderActionV1\");\nexport type OrderActionV1 = Exact;\nexport const OrderDatumV1 = Contracts.Import(\"OrderDatumV1\");\nexport type OrderDatumV1 = Exact;\nexport const OrderRedeemerV1 = Contracts.Import(\"OrderRedeemerV1\");\nexport type OrderRedeemerV1 = Exact;\nexport const ProtocolRedeemerV1 = Contracts.Import(\"ProtocolRedeemerV1\");\nexport type ProtocolRedeemerV1 = Exact;\nexport const ProxyDatumV1 = Contracts.Import(\"ProxyDatumV1\");\nexport type ProxyDatumV1 = Exact;\nexport const RegistryV1 = Contracts.Import(\"RegistryV1\");\nexport type RegistryV1 = Exact;\nexport const RequestV1 = Contracts.Import(\"RequestV1\");\nexport type RequestV1 = Exact;\nexport const ReserveAsset = Contracts.Import(\"ReserveAsset\");\nexport type ReserveAsset = Exact;\nexport const SettingsV1 = Contracts.Import(\"SettingsV1\");\nexport type SettingsV1 = Exact;\nexport const SignedPayload_v1_0_ProtocolRedeemerV1 = Contracts.Import(\"SignedPayload_v1_0_ProtocolRedeemerV1\");\nexport type SignedPayload_v1_0_ProtocolRedeemerV1 = Exact;\nexport const SignedRedeemer_v1_0_ExtraProtocolRedeemerV1 = Contracts.Import(\"SignedRedeemer_v1_0_ExtraProtocolRedeemerV1\");\nexport type SignedRedeemer_v1_0_ExtraProtocolRedeemerV1 = Exact;\nexport const StakingVaultRedeemerV1 = Contracts.Import(\"StakingVaultRedeemerV1\");\nexport type StakingVaultRedeemerV1 = Exact;\nexport const TreasuryDatumV1 = Contracts.Import(\"TreasuryDatumV1\");\nexport type TreasuryDatumV1 = Exact;\nexport const TreasuryRequestV1 = Contracts.Import(\"TreasuryRequestV1\");\nexport type TreasuryRequestV1 = Exact;\nexport const VaultDatumV1 = Contracts.Import(\"VaultDatumV1\");\nexport type VaultDatumV1 = Exact;\n\nexport class V1_0Rc1OrderOrderSpend {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5917090101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99802249286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d65725631001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b30010078999119912cc004c00c0062b30013019375401700280720348acc004c0240062b30013019375401700280720348acc004c0100062b3001301937540170028072034807202c405880b0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009811001c01a00a80f8dd7000a044301f001407460366ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026044007006802a03e375c0028110c07c00501d180d9baa0048012030406060326ea800e44b30010018a5eb822660366030603800266004004603a00280d2444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80ba44646600200200644b30010018a508acc004cdc79bae301e0010038a51899801001180f800a0304071222232330010010052259800800c4016264b3001001899802181080100344cc014c084008cc00c00c00501f1810800a03c9119198008008019119801800980100148c06cc070006460366038603800337009000c8c06cc070c070c070c070c070c070c070c070006602c6ea8026460366038603860386038603860380032232330010010032259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c24444444444444530012232330010010032259800800c530103d87a80008992cc004c010006260266605800297ae08998018019817001204e302c00140a9300c00c9805805c888ca6002003004801a0022223259800980b000c4c9660020030068992cc00400600f007803c01e264b30013033003802c0210301bae00140cc60600028170c0b0dd5001c566002603800313259800800c01a264b3001001803c01e264b30013033003899809000912cc00400a00f13259800800c6600201500189801181b001a014805c02e01700b40dc606800481920108180dd6000c01e00e8198c0c000502e18161baa0038acc004c05c006264b300100180344c966002003007803c4c96600260660071330120012259800801401e264b30010018cc00402a003130023036003402900b805c02e01681b8c0d000903240210301bac001803c01d0331818000a05c302c375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002606c0071330150012259800801402a264b30010018cc004036003130023039003403500e807403a01c81d0c0dc009035402d0331bac00180540290361819800a062375a002606400500740cc60600028170c0b0dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0cc00e00b00840c06eb400600e8198c0c000502e18161baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009819801c0160108180dd6800c01d0331818000a05c302c375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009819801c0160108180dd7000a066303000140b860586ea800e00a8149029205240a481490292052302a3754004911119191919912cc004c06003226644b3001301a302f375400313259800981098181baa0018acc004cdc79bae3034303137540026eb8c048c0c4dd5180818189baa301330313754007133225330313372c92010d63726564656e7469616c3a3a200037326601000291010013300f0020013756601c60626ea8080cdd2a4004660666ea40b12f5c1153302f49013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640b902940b8606660606ea8c0ccc0c0dd5180918181baa30333030375400302740b4660046eb0c040c0b8dd500e815198009bac3031302e375403a037159800980f00645660026030605a6ea806a330013031302e37546062605c6ea806a6eb0c034c0b8dd500ecc0c4c0c8c0c8c0c8c0c8c0c8c0c8c0c8c0b8dd500ecdd5980598171baa01d48888c8cc00400401488c966002603e00313301a006375c6070606a6ea800a2b30013025001899198008009bac30393036375400644b30010018a518acc004cc014014c0e8006266004004607600314a081a1038456600260400031323300100137586072606c6ea800c896600200314a115980099802802981d000c528c4cc008008c0ec00503420708acc004cdc3a400c003132337126eb4c0e4004c8cc004004dd6181d181d801112cc0040062900044cc896600266010010005133700002900144005037181d80099801001181e000a0723035375400515980099b87480200062646644b30013028303737540051598009814181b9baa303b303c003899b89375a607660706ea8008006266e20dd6981d981c1baa00200140d514a081a8c0e4004dd6981c981b1baa00330353754602e606a6ea80162b30013370e9005000c4c8cc89660026050606e6ea800a2b3001302830373754607660780071337120026eb4c0ecc0e0dd500144cdc40009bad303b3038375400481aa2941035181c8009bad303930363754006606a6ea8c0e0c0d4dd5002c4cc044010cdd2a40046606e6070606a6ea80092f5c08191032206440c8819103218199baa001409102b45660026030605a6ea806a330013031302e37540353300237586020605c6ea80740aa660026eb0c0c4c0b8dd500e80da444b3001301b303037540031323259800981198191baa0018acc0056600330013371e6eb8c050c0ccdd5180918199baa3015303337540086eb8c0d8c0ccdd5000d28528a0608a518cc004cdc79bae30363033375400805d4a14a2818103044c966002603c60666ea8006264b3001301f30343754003132598009810181a9baa0018992cc004cdd7981d181b9baa001302033039302033039303a3037375400897ae0330394c103d87a80004bd704660026eacc064c0dcdd5000cc064c0dcdd5180c981b9baa0069119b89337020026eb4c0f0c0f4c0f4c0f4c0e4dd50140012444b30010028a508994c004c966002604c60766ea800626eb4c0f0c0fcdd5981f981e1baa0018a400081c8c0f80066ebcc0f8c0fc0066eac00d22259800800c566002600400d13300500348002294103b44c96600266ebcc0f80053010140008acc004cc018010dd6981f98211bab303f001898019ba630430028a5040f11598009980300224001130030078a5040f081e0c10400503f0ca6002003004911981f8011981f9ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0f40066eacc0f800660840069112cc004cdc8a441000038acc004cdc7a441000038998029815198219ba60024bd70000c4cc015300103d87a800000640f919800803c006446600e0046608a66ec0dd48029ba6004001401c81f0608000481f229422942294103f22941034181c981b1baa0018a9981a2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640cc65300130010019bad3039303637540053758602e606c6ea80952225980099b8800248002298103d87a8000899801800801206c1112cc00400a298103d87a80008acc004c0880062604266074607600497ae08cc00400e60780053018001400c81a9039454cc0cd24014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640c86530010019bac303830353754049480010011112cc00400a298103d87a80008acc004cdd7981d00100344c080cc0e4dd4000a5eb8233001003981d8014cdc0000a4004801903420708a99819248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640c4606c60666ea80162a660629201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c102b40c0606a60646ea8c0d4c0c8dd5180a18191baa00130343031375400302840b8812205640ac815888c96600200313259800980d18179baa0028992cc00400605513259800800c0ae05702b815c4cc896600200302d8992cc0040062b300130390028acc004c07cc0d0dd5000c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c96600200304282144cc89660020030448992cc0040062b300130500028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c12cdd500344c9660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b3001001826c13609b04d899912cc00400609f13259800800c1420a105082844c96600260b800713303b00f22598008014566002608860b26ea803e264b300100182a44c96600200313259800800c15a264b30010018acc004c18800a330010038992cc004c124006264b300100182cc4c966002003159800983280144c966002609800313259800800c172264b30010018acc004c1a000a3300100181ac17504c417506541760bb05d82ea0d23066001419060c46ea800a2b300130520018992cc0040060b913259800800c1760bb05d899912cc0040060bf13259800800c1820c1060899912cc0040060c513259800800c18e0c70638992cc004c1bc00e07906441b06eb40060c68378c1b000506a1bad001306b00283020d83069001419c6eb4004c1a000a0ba8348c19800506418311baa00282da0be417c60c06ea80060b483120b505a82d41690661831800a0c2305f37540051598009827800c56600260be6ea800a0610584181058417082e0c174dd5000c15d046415d05f415e0af05782ba0c63060001417860c000505582ac1560aa8308c17800505c182d1baa00f829a0ae8992cc0040062b30013045305a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130680038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001306d003898081836808c18906a1bae00141b460d40028340dd7000983480420d43067007419505d41946eb40060b88340c1940050631bad001306400282ca0ca306200141806eb0004c18400a0ad056418860be00282e8c16cdd5000c15105841520a905482a20c0305d002416d05141646eb800505c182c800a0ae375c00260b000482c8c1580050541bae0013055002415860a60028288dd7000982900120a63050001413860986ea801a08a824a08a812208a812208a812208a812208a812208a812208a812208a812208a826a08b045822c1150511827000a0983758002609a005042821209c304b0014124609600504082041020808260c124005047182480140fa07d03e81f209430470014114608e00503c81e40f20788240c114005043182280140ea07503a81d208c30430014104608600503881c40e20708220c10400503f182080140da06d03681b2084303f00140f4607e00503481a40d20688200c0f400503b181e80140ca065032819207c303b00140e4607600503081840c206081e0c0e4005037181a9baa0018172064817206c81740ba05d02e40e8606e00281a8dd7000981b001206e303400140c860606ea800a0528168400605102881440a103429981619b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea400522010013259800980c98171baa00189929981719b9649113666f756e642070726f7879207574786f3a3a200037326600a00291010013259800980e18181baa0018992cc0040062b3001301c3031375400313259800800c0b6264b300100181740ba05d02e899912cc00400606113259800981d8014401a06281c0c0e40050371bae001303800240e4606c00281a0c0c8dd5000c0b102f40b205902c816206e303430313754003153302f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b8602260606ea8c048c0c0dd5000981918179baa0018a99816a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640b06601200446602860126eacc044c0bcdd5180898179baa001002223300900223375e6064605e6ea8004008c004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101620665980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c816902d1bac3030002375a605c0026466ec0dd418170009ba7302f001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6066003337149101023a200098008054c0d000600a805100a181b00144ca6002015303300199b8a489023a200098008054c0d0006600e66008008004805100a181b0012068303600140cc66e29220102207d0000340c06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901320603758007133005375a0060051323371491102682700329800800cc040dc68014cdc52450127000044004444b30013371000490004400626466453001006980a802ccdc599b800025980099b88002480522903045206e40c866e2ccdc0000acc004cdc4000a4029148182290372064004401866e0c00520203370c002901019b8e00400240bc6eb800d0331b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340a88150301637540126e1d2004370e9000402a01500a80520343016001301630170013012375400716403c3011001300c3754025149a2a6601492011856616c696461746f722072657475726e65642066616c7365001365640241\"\n :\n \"590c060101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758601460446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8ca6002606c003303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c00491111111112cc004c10402e26603e608002a26603e01226603e01026603e00e26603e00c26603e00a26603e00826603e0062b30013030303c375400513232323298009bae30440019bae30440049bae30440039bae30440024888966002609200b133030009225980080145660026074608c6ea80522646464b3001304e00289981c18268018992cc004c0f8006264b30013050001899192cc004c104006264b3001305300189981e982900081645905018271baa0028acc004c11400626464653001375a60a8003375a60a8007375a60a80049112cc004c16001206316415430540013053001304e37540051641308260c130dd50009827800c5904d18259baa0028acc004c1080062b3001304b37540050288b20988b2092412460926ea80062c8258c130004c130004c11cdd500a45904544c9660026076608e6ea800626464646644b300130510038991919912cc004c15400e2601660aa0191641486eb8c148004dd7182900118290009bac30500058b209c375a609c0026eb4c138008c138004c134004c120dd5000c59046182500120908b208c182200098218009821000981e9baa0028b20768b207c181b000981a800981a000981980098190009818800981800098178009817000981680098141baa0018b204c302a0018b2050375c6050002605200260486ea800a2c81104004c966002602c60446ea8006264b300130183023375400313259800980c18121baa0018991919912cc004c0b400e200b1640a860540026eb8c0a8008c0a8004c094dd5000c59023181398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601\",\n Type.Tuple([\n PolicyId,\n ScriptHash,\n ]),\n [\n proxyPolicyId,\n protocolScripthash,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1OrderOrderElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5917090101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99802249286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d65725631001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b30010078999119912cc004c00c0062b30013019375401700280720348acc004c0240062b30013019375401700280720348acc004c0100062b3001301937540170028072034807202c405880b0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009811001c01a00a80f8dd7000a044301f001407460366ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026044007006802a03e375c0028110c07c00501d180d9baa0048012030406060326ea800e44b30010018a5eb822660366030603800266004004603a00280d2444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80ba44646600200200644b30010018a508acc004cdc79bae301e0010038a51899801001180f800a0304071222232330010010052259800800c4016264b3001001899802181080100344cc014c084008cc00c00c00501f1810800a03c9119198008008019119801800980100148c06cc070006460366038603800337009000c8c06cc070c070c070c070c070c070c070c070006602c6ea8026460366038603860386038603860380032232330010010032259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c24444444444444530012232330010010032259800800c530103d87a80008992cc004c010006260266605800297ae08998018019817001204e302c00140a9300c00c9805805c888ca6002003004801a0022223259800980b000c4c9660020030068992cc00400600f007803c01e264b30013033003802c0210301bae00140cc60600028170c0b0dd5001c566002603800313259800800c01a264b3001001803c01e264b30013033003899809000912cc00400a00f13259800800c6600201500189801181b001a014805c02e01700b40dc606800481920108180dd6000c01e00e8198c0c000502e18161baa0038acc004c05c006264b300100180344c966002003007803c4c96600260660071330120012259800801401e264b30010018cc00402a003130023036003402900b805c02e01681b8c0d000903240210301bac001803c01d0331818000a05c302c375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002606c0071330150012259800801402a264b30010018cc004036003130023039003403500e807403a01c81d0c0dc009035402d0331bac00180540290361819800a062375a002606400500740cc60600028170c0b0dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0cc00e00b00840c06eb400600e8198c0c000502e18161baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009819801c0160108180dd6800c01d0331818000a05c302c375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009819801c0160108180dd7000a066303000140b860586ea800e00a8149029205240a481490292052302a3754004911119191919912cc004c06003226644b3001301a302f375400313259800981098181baa0018acc004cdc79bae3034303137540026eb8c048c0c4dd5180818189baa301330313754007133225330313372c92010d63726564656e7469616c3a3a200037326601000291010013300f0020013756601c60626ea8080cdd2a4004660666ea40b12f5c1153302f49013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640b902940b8606660606ea8c0ccc0c0dd5180918181baa30333030375400302740b4660046eb0c040c0b8dd500e815198009bac3031302e375403a037159800980f00645660026030605a6ea806a330013031302e37546062605c6ea806a6eb0c034c0b8dd500ecc0c4c0c8c0c8c0c8c0c8c0c8c0c8c0c8c0b8dd500ecdd5980598171baa01d48888c8cc00400401488c966002603e00313301a006375c6070606a6ea800a2b30013025001899198008009bac30393036375400644b30010018a518acc004cc014014c0e8006266004004607600314a081a1038456600260400031323300100137586072606c6ea800c896600200314a115980099802802981d000c528c4cc008008c0ec00503420708acc004cdc3a400c003132337126eb4c0e4004c8cc004004dd6181d181d801112cc0040062900044cc896600266010010005133700002900144005037181d80099801001181e000a0723035375400515980099b87480200062646644b30013028303737540051598009814181b9baa303b303c003899b89375a607660706ea8008006266e20dd6981d981c1baa00200140d514a081a8c0e4004dd6981c981b1baa00330353754602e606a6ea80162b30013370e9005000c4c8cc89660026050606e6ea800a2b3001302830373754607660780071337120026eb4c0ecc0e0dd500144cdc40009bad303b3038375400481aa2941035181c8009bad303930363754006606a6ea8c0e0c0d4dd5002c4cc044010cdd2a40046606e6070606a6ea80092f5c08191032206440c8819103218199baa001409102b45660026030605a6ea806a330013031302e37540353300237586020605c6ea80740aa660026eb0c0c4c0b8dd500e80da444b3001301b303037540031323259800981198191baa0018acc0056600330013371e6eb8c050c0ccdd5180918199baa3015303337540086eb8c0d8c0ccdd5000d28528a0608a518cc004cdc79bae30363033375400805d4a14a2818103044c966002603c60666ea8006264b3001301f30343754003132598009810181a9baa0018992cc004cdd7981d181b9baa001302033039302033039303a3037375400897ae0330394c103d87a80004bd704660026eacc064c0dcdd5000cc064c0dcdd5180c981b9baa0069119b89337020026eb4c0f0c0f4c0f4c0f4c0e4dd50140012444b30010028a508994c004c966002604c60766ea800626eb4c0f0c0fcdd5981f981e1baa0018a400081c8c0f80066ebcc0f8c0fc0066eac00d22259800800c566002600400d13300500348002294103b44c96600266ebcc0f80053010140008acc004cc018010dd6981f98211bab303f001898019ba630430028a5040f11598009980300224001130030078a5040f081e0c10400503f0ca6002003004911981f8011981f9ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0f40066eacc0f800660840069112cc004cdc8a441000038acc004cdc7a441000038998029815198219ba60024bd70000c4cc015300103d87a800000640f919800803c006446600e0046608a66ec0dd48029ba6004001401c81f0608000481f229422942294103f22941034181c981b1baa0018a9981a2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640cc65300130010019bad3039303637540053758602e606c6ea80952225980099b8800248002298103d87a8000899801800801206c1112cc00400a298103d87a80008acc004c0880062604266074607600497ae08cc00400e60780053018001400c81a9039454cc0cd24014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640c86530010019bac303830353754049480010011112cc00400a298103d87a80008acc004cdd7981d00100344c080cc0e4dd4000a5eb8233001003981d8014cdc0000a4004801903420708a99819248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640c4606c60666ea80162a660629201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c102b40c0606a60646ea8c0d4c0c8dd5180a18191baa00130343031375400302840b8812205640ac815888c96600200313259800980d18179baa0028992cc00400605513259800800c0ae05702b815c4cc896600200302d8992cc0040062b300130390028acc004c07cc0d0dd5000c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c96600200304282144cc89660020030448992cc0040062b300130500028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c12cdd500344c9660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b3001001826c13609b04d899912cc00400609f13259800800c1420a105082844c96600260b800713303b00f22598008014566002608860b26ea803e264b300100182a44c96600200313259800800c15a264b30010018acc004c18800a330010038992cc004c124006264b300100182cc4c966002003159800983280144c966002609800313259800800c172264b30010018acc004c1a000a3300100181ac17504c417506541760bb05d82ea0d23066001419060c46ea800a2b300130520018992cc0040060b913259800800c1760bb05d899912cc0040060bf13259800800c1820c1060899912cc0040060c513259800800c18e0c70638992cc004c1bc00e07906441b06eb40060c68378c1b000506a1bad001306b00283020d83069001419c6eb4004c1a000a0ba8348c19800506418311baa00282da0be417c60c06ea80060b483120b505a82d41690661831800a0c2305f37540051598009827800c56600260be6ea800a0610584181058417082e0c174dd5000c15d046415d05f415e0af05782ba0c63060001417860c000505582ac1560aa8308c17800505c182d1baa00f829a0ae8992cc0040062b30013045305a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130680038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001306d003898081836808c18906a1bae00141b460d40028340dd7000983480420d43067007419505d41946eb40060b88340c1940050631bad001306400282ca0ca306200141806eb0004c18400a0ad056418860be00282e8c16cdd5000c15105841520a905482a20c0305d002416d05141646eb800505c182c800a0ae375c00260b000482c8c1580050541bae0013055002415860a60028288dd7000982900120a63050001413860986ea801a08a824a08a812208a812208a812208a812208a812208a812208a812208a812208a826a08b045822c1150511827000a0983758002609a005042821209c304b0014124609600504082041020808260c124005047182480140fa07d03e81f209430470014114608e00503c81e40f20788240c114005043182280140ea07503a81d208c30430014104608600503881c40e20708220c10400503f182080140da06d03681b2084303f00140f4607e00503481a40d20688200c0f400503b181e80140ca065032819207c303b00140e4607600503081840c206081e0c0e4005037181a9baa0018172064817206c81740ba05d02e40e8606e00281a8dd7000981b001206e303400140c860606ea800a0528168400605102881440a103429981619b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea400522010013259800980c98171baa00189929981719b9649113666f756e642070726f7879207574786f3a3a200037326600a00291010013259800980e18181baa0018992cc0040062b3001301c3031375400313259800800c0b6264b300100181740ba05d02e899912cc00400606113259800981d8014401a06281c0c0e40050371bae001303800240e4606c00281a0c0c8dd5000c0b102f40b205902c816206e303430313754003153302f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b8602260606ea8c048c0c0dd5000981918179baa0018a99816a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640b06601200446602860126eacc044c0bcdd5180898179baa001002223300900223375e6064605e6ea8004008c004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101620665980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c816902d1bac3030002375a605c0026466ec0dd418170009ba7302f001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6066003337149101023a200098008054c0d000600a805100a181b00144ca6002015303300199b8a489023a200098008054c0d0006600e66008008004805100a181b0012068303600140cc66e29220102207d0000340c06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901320603758007133005375a0060051323371491102682700329800800cc040dc68014cdc52450127000044004444b30013371000490004400626466453001006980a802ccdc599b800025980099b88002480522903045206e40c866e2ccdc0000acc004cdc4000a4029148182290372064004401866e0c00520203370c002901019b8e00400240bc6eb800d0331b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340a88150301637540126e1d2004370e9000402a01500a80520343016001301630170013012375400716403c3011001300c3754025149a2a6601492011856616c696461746f722072657475726e65642066616c7365001365640241\"\n :\n \"590c060101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758601460446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8ca6002606c003303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c00491111111112cc004c10402e26603e608002a26603e01226603e01026603e00e26603e00c26603e00a26603e00826603e0062b30013030303c375400513232323298009bae30440019bae30440049bae30440039bae30440024888966002609200b133030009225980080145660026074608c6ea80522646464b3001304e00289981c18268018992cc004c0f8006264b30013050001899192cc004c104006264b3001305300189981e982900081645905018271baa0028acc004c11400626464653001375a60a8003375a60a8007375a60a80049112cc004c16001206316415430540013053001304e37540051641308260c130dd50009827800c5904d18259baa0028acc004c1080062b3001304b37540050288b20988b2092412460926ea80062c8258c130004c130004c11cdd500a45904544c9660026076608e6ea800626464646644b300130510038991919912cc004c15400e2601660aa0191641486eb8c148004dd7182900118290009bac30500058b209c375a609c0026eb4c138008c138004c134004c120dd5000c59046182500120908b208c182200098218009821000981e9baa0028b20768b207c181b000981a800981a000981980098190009818800981800098178009817000981680098141baa0018b204c302a0018b2050375c6050002605200260486ea800a2c81104004c966002602c60446ea8006264b300130183023375400313259800980c18121baa0018991919912cc004c0b400e200b1640a860540026eb8c0a8008c0a8004c094dd5000c59023181398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601\",\n Type.Tuple([\n PolicyId,\n ScriptHash,\n ]),\n [\n proxyPolicyId,\n protocolScripthash,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolManagementProtocolManagementWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"594460010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888888896600264653001301c001980e180e800cdc3a4009301c0024888966002600460386ea800e330013020301d3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b874803246042604400323021302230220019b80480066e05200091810981118111811181118111811181118111811000cdd2a4004911111111111111194c004889660026020605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c054006264b3001001803c4c966002003159800981d80144c966002603000313259800800c02a264b30010018acc004c0f800a33001001806402d00e402d03b402e01700b805a07e303c00140e860706ea800a2b300130170018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11400e02701241086eb40060228228c1080050401bad00130410028072084303f00140f46eb4004c0f800a01681f8c0f000503a181c1baa002804a06a40d4606c6ea800601081c2011008804402103c181c800a06e30353754005159800980a000c566002606a6ea800a00f00640d900640c88190c0ccdd5000c0150084015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c96600260760070058042070375c00281d8c0e0005036181a1baa0038acc004c04c006264b300100180344c966002003007803c4c96600260760071330180012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0ec00e26603000244b3001002803c4c96600200319800805400626004607c006805201700b805c02d03f181e001207480420703758003007803a076303800140d860686ea800e2b300130120018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981f001c4cc06c004896600200500a8992cc0040063300100d800c4c008c10400d00d403a01d00e8072084303f00240f500b40ec6eb000601500a40f8607600281c8dd6800981d001401d03b181c000a06c303437540071598009808800c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002602000313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009807800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c015031206240c48189031206240c460646ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260286606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980a981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301a0018acc004c0e8dd5001401e00c81da2b300130190018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026038003159800981e1baa006804c02103d4566002603600313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783019303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002602a60686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c058006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130150018acc004c0d8dd5002400e00481ba0048199033181a1baa00348888cc89660026030606e6ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009821801c566002603e607c6ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013053002899818007112cc00400a26606401a44b30010028cc00401e330010058992cc004c0d0c14cdd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982e00144cc8966002607400313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252052825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0e4006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a504a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981f800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b300130380018992cc00400608b13259800800c11a08d132598009830801c4cc0f800489660020050078992cc00400633001001898011832001c129029412a09504a82520ca3062002418104741786eb000608d046418460bc00282e0c168dd5002c566002606e00313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252054825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a904a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981a800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea801608882b905720ae415c82b905720ae415c264b300130390018992cc00400608913259800800c56600260be00519800800c02208a813a08a82e208b045822c115060182e800a0b630593754005159800981c000c4c9660020030448992cc0040062b3001305f0028acc004c0ecc168dd5000c4c9660020030468992cc004006264b300100182444c966002003159800983180146600200719800800c032092816209281620928302093049824c1250641830800a0be3061002823c11e08f047418860be00282e8c16cdd5000c115058411505c411608b045822a0c0305d001416c60b26ea800a08682b1056182b9baa001305737540070424165042821410a08482e8c168005058182d001410208104082020b63058001415860a86ea806607c82884cc0d0054896600200519800982c182a9baa302f30553754049230353055375460b2646600200200444b30010018a5eb8503d87a80008101800044c8cc89660033001303a305a375460bc0074a14a282c22660bb30014a14c103d87a8000a60103d87980004160660ba6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18000400e294626600400460c200282d105e44cc176600294298103d87a8000a60103d87980004160660ba6e9c0092f5c113305d9800a51a60103d87a8000a60103d87980004160660ba6e9ccc174dd400080125eb8105820b0375860b860ba0026eb4c170008cc008008c17000505948888ca6002003005802400d00111112cc00400e2b30010028800c54cc16d24112657870656374205b5d203d206c6973745f6200164179159800801454cc16d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c20073061002cc004c18000e6eb4c18000a002802900420bc41792232330010010032259800800c52f5c1133225980099baf305e305b375460bc60b66ea8c0d4c16cdd500118181982e9ba90054bd7044cc174008cc01001000626600800800282c0c170004c17400505a4dc02400523059305a305a305a305a305a305a305a305a0019112cc00400a2980103d87a80008acc004c0e000626074660b460b600497ae08cc00400e60b80053030001400c82a9059488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd5982d800982e800a0b614bd6f7b630488966002607060ae6ea800e264b300100180144c966002003003801c00e264b3001305f003802c01105c1bad001801a0be305c001416860b06ea800e00282aa460b260b460b460b40032232330010010032259800800c52f5c113305b374e600660b80026600400460ba00282d2444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c17c0066eb4c1800066600600660c80048048c1880050601bab305d003375c60b40026600600660be00460ba00282da44646600200200644b30010018a508acc004cdd7982e0009ba70038a51899801001182e800a0ac416922259800981c182b9baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c96600200313259800800c022264b300130640028cc00401e330010058992cc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b300130400018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009835801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009838001c05a02a8368dd7000a0e0306d00141ac6eb8004c1b000906d1835000a0d080820d0375800300f807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c118006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c96600200301280944c96600260dc007159800800c04e264b300100180a4052029014899912cc00400602d13259800800c05e02f01780bc4c96600260e600701980c20e0375c0028398c1c000506e1bae001306f00241c060da002835a0268358dd6000c04a0248370c1ac0050691bad001306a002807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0fc006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b3001303e0018992cc00400601713259800800c03201900c8992cc004c1a000e01d00d41946eb40060188340c19400506318309baa0048acc004c0f4006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306b003808c0410681bad001807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0f0006264b3001001805c4c96600200300c8064032264b3001306800380740350651bad00180620d03065001418c60c26ea80122b30013370e9007000c4c96600200300b8992cc00400601900c80644c96600260d000700e806a0ca375a00300c41a060ca0028318c184dd5002402905e20bc417882f105e20bc417882f0c17cdd5001c02502e402503240250611831000a0c03062002803c01e00f007418c60c000282f0c18000a00b005802c015061182f000a0b8305e002801c00e007003417c60b800282d0c160dd5001c00505548c164c168c168c168c168006444653001001802400d0011112cc00400a200319800801cc17c00a6600860bc004002801905c4dc424000911111111111111114c004c194dd5008c88966002602600519800801c00a900048896600260080071337000026eb4c118c1b0dd5001c54cc1a924011a6578706563742076616c69646174696f6e287265717565737429001641a480922a660ce9212e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641992259800800c5200089807998010011836000a0d291808800c89660020031480022601e6600400460d8002834a6016017222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906c44cc014014c1cc01106c1bae306c001375a60da00260de0028368cc03801000c5200048888888ca6002444464b30013053307237540031325980099baf30773074375460ee60e86ea8c138c1d0dd500098249983b1ba90054bd70456600260a730013756609c60e86ea8c138c1d0dd5000c01691108747265617375727900402113259800982d183a1baa0018992cc004006330010018992cc004c15cc1d8dd5000c4c96600266ebcc1ecc1e0dd5183d983c1baa001304d3307a375201297ae08acc004c15e60026eacc148c1e0dd5000c026910108747265617375727900403113259800982f183c1baa0018992cc004006330010018acc004cdd7980e183d1baa0034c103d87a800089983e0029983e0009983e1ba6329800800cdd5982a983d9baa00499198008009bab3056307c375460ac60f86ea8024896600200314bd6f7b63044c8cc20004cdd8183e8009ba63233001001375660fe00444b30010018a5eb7bdb182264661060266ec0c20004004dd4182c1bad308101001330030033085010023083010014204046600600661040200461000200283f10011112cc00400a2003132332298008034c21004016646600200200a44b30010018998420099bb037520086e9800d2f5bded8c113298009bae3082010019bab3083010019843808012444b30013372001000713308801337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528211002880144cc22404cdd81ba9009374c002004842008ca6002003008801a002222598008014400626466453001006984800802cc8cc004004014896600200313309001337606ea4010dd4001a5eb7bdb1822653001375c611c02003375a611e0200330930100248896600266e4002000e2661280266ec0dd48041ba80070058acc004cdc7804001c4c96600260e6003100289984a8099bb037520126ea00040090900119b8000700289984a0099bb037520066ea0008cc01801800508f01211e02184880800a11e0240186eb8c22404004dd69845008009846008012114028998440099bb037520066e98008cc01801800508301210602184280800a1060240186eb8c1f4004dd5983f00098400080120fc4bd7041bd07741b901d41ba0dd06e83720fe307c30793754003153307749012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641d860a260f06ea80062a660ec920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641d5153307649143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641d460f460ee6ea80062a660ea92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641d0660126eb0c13cc1d8dd5004002c1a501941a60d3069834a0f6307830753754003153307349013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641c8609a60e86ea8c138c1d0dd5000c54cc1c92401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c515330724914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c460ec60e66ea80062a660e292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641c06600a6eb0c1d4c1c8dd50020014c010012600c00c9112cc004c13c02e33001375860e860e26ea8072444b300130543073375400713259800800c00a264b3001001801c00e00713259800983d801c01600883c0dd6800c00d07b183c000a0ec3074375400700141c5222225980099b87300600530060048acc004c03400e266e24006600200b003a40012223259800982d183c9baa001899912cc004c184c1ecdd5000c4c96600200319800800c56600266ebcc07cc1f4dd5001984000983e9baa0078acc004cdd7982b983e9baa001308001307d3754007132598009831983e9baa001899192cc004cdc39bad308301002375a60b46100026ea801a2b30013370e6eb4c20c04004dd6982c9840009baa0068acc004cdd7984180984200800980e9840009baa006899b8000898009bab305a308001375460b46100026ea802a6eb8c20c040326eb8c20c04c21004031014454cc1f92413665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001641f5153307e49126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001641f5153307e4912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001641f461060200260fc6ea80062a660f8921184578706563746564204f4465706f73697420616374696f6e001641ec60ac60fa6ea80060ec83d20ea83d20e880da0e907483a41d108201183f983e1baa00183920f2307d307a375400260a660f46ea8c150c1e8dd500241a107719806003801203e831a0e683120e691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307f307c375460fe0046eb4c1fcc1f0dd5183f80180244c9660033001002a5191112cc0040062b30013371e008911008a5189981000299841809ba90043308301375200697ae041f914a083f101d44cdc4803cc004dd61829983e9baa00ca400122323259800980e000c4cdc000199b83337040026eb4c16cc20404dd50021bad305a3081013754009100341f930010059bae3083010019bae30830130840100140506eb0c20804c1fcdd5001203283720f43301d375860a460f86ea802c8dd6184000983e9baa00183720f2375660fc60fe00260fc00330010079bae307c30793754603e60f26ea802200d005402d1533077490123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641d8b3001305830090018a4001159800800c19e264b3001307d0028992cc004cdc79bae307900248810455534472008800c1a90771bad307900183420f4307b00141e483a8cc06cdd5980a183b9baa005375c60a260ee6ea8c074c1dcdd50034c1d0c1c4dd50204c12cc1c4dd5020a4444446644b300159800980a0014528c6600260b20034a14a283b107644c96600260b460f26ea80062646644646644b30013060307f37540031325980099b87337026eb4c210040040180122b30013370e6eb4c21004c21404004dd6984200984280803c56600266e2520000098acc0066002660526eb0c21004c20404dd50329bae305a3081013754604e6102026ea802e021375860b66102026ea8032661060260b66102026ea8c09cc20404dd50059984180a61054455534472004bd7052000403915980099b890033233001001375860b66104026ea8198896600200314800226644b30013375e611002610a026ea8008c22004c22404c22404c22404c22404c22404c22404c22404c22404c22404c22404c21404dd5007c4cdc0000cc004dd5982f9842809baa0029bae305f30850137546056610a026ea803e910104555344720040651001420804610c0200266004004610e0200284200a3300100b832cdd6982d1840809baa00c9bad3023308101375401900999b8000a0094035153307f49012b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641f9153307f4919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001641f9159800cc004cc0a4dd61842009840809baa065375c60b46102026ea8c09cc20404dd5005c0426eb0c16cc20404dd50064cc20c04c16cc20404dd518139840809baa00b33083014c1054455534472004bd704c16000d00e4660020170659bad305a3081013754019375a60466102026ea803201300a4035153307f491b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641f883f22a660fe9213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641f9153307f4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641f865300133014001375a6108026102026ea800a6eb8c16cc20404dd518139840809baa00b9bae30233081013754604e6102026ea802d2225980098321841809baa0038992cc004cdd79844009842809baa308801308501375400260b46610e026ea40092f5c115980098324c004dd5982f9842809baa00180152210d7374616b696e675f7661756c740040651325980098359842809baa0018992cc004006330010018acc004cdd798149843809baa0034c103d87a8000899844809ba898009bab30613087013754007005a441045553447200406c6611202611402610e026ea8004cc2240400d2f5c107c4210050810140550810184080c2040610202846008c22404c21804dd5000c54cc2100524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016420c0460bc610a026ea80062a661060292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642080515330830149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016420804610e026108026ea800e2a661040292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f696478290016420404375860b26100026ea81922a660fc92013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641f466e04018004c20404c20804c20804c20804c20804c20804c1f8dd5004acc004c060006266e10cdc1002801000c5200041e86eb4c1f8004dd6983f183d9baa307e980082fcdd7183f183d9baa3021307b375400b375a60a860f66ea801a6eb4c074c1ecdd5003201a329800998070009bad307e307b3754005375c60aa60f66ea8c084c1ecdd5002cdd7180e983d9baa3021307b375400a9112cc004c178c1f4dd5001c4c96600266ebcc20804c1fcdd5184100983f9baa3059307f375400260a866102026ea40092f5c1159800982f4c004dd5982c983f9baa3059307f3754003002a4410d7374616b696e675f7661756c7400404d132598009832983f9baa0018992cc00400633001001899841809ba898009bab305b308101375460b66102026ea800e00b489045553447200405466106026108026102026ea8004cc20c0400d2f5c107b403d07b83dc1ee0f6843008c20c04c20004dd5000c1d907d182c183f9baa3059307f3754003153307d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f1153307d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f061020260fc6ea800e2a660f892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ec375860fa60f46ea817a2a660f092013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641dc602c60f26ea80122a660ee92012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641d930010069bac307a3077375400523371290001bad3052307837540028082600200d480024466e00004dd69829183c9baa002404c8acc004c15802e33001375860e860e26ea8072444653001001802400d0011112cc00400a2b30010018a518a5041e1159800800c52845660026600860f40046eb4c1e800633001003983d8014c1ec005003452820e841e083c244b30010018a40011301a33002002307700141d1223370666e08008dd6982618399baa001375a609a60e66ea800660e860e26ea8102609660e26ea8105222222325980099914c004c8cc00400400c896600200314a115980099baf307f307c375460fe60f86ea8c158c1f0dd5183f80098289983f1ba90034bd704528c4cc008008c2000400507920faa50a5141dc6eb0c1ecc1e0dd502e1bae301a30783754603c60f06ea800a2b300133225980099b87300a002300a0098acc004c04400633001002800c88c96600260ba60f86ea800626464b3001305d307e37540031325980099b87375a6106020026eb4c168c20004dd5001c4cdd7984180984200800980e9840009baa0038a5041f460fe6ea8006294107c182b983f1baa32598009832183f1baa0018992cc004006330010018acc004cdd798111840009baa003308301308001375400d15980099baf305a30800137540026106026100026ea800e200307941f507841f5077407907783bc1de0ee842808c20804c1fcdd5000c1d507c182b983f1baa3058307e375400861000260fa6ea80060d683d0cc03c02c005008419d0774199077198101bac307b307837540b86eb8c144c1e0dd5180f183c1baa002375860a460f06ea800e2b300198009bac3051307837540b9375860f660f06ea800e6eb0c138c1e0dd50012444b30013370e6008004601601519800805400a4464b3001305e307d375400319800984080983f1baa0019bac301b307e3754007323305000523375e6106026100026ea8004dd38011bac301b307e37540069112cc004c184c20004dd5000c56600266ebcc21004c20404dd50019842009840809baa308401308101375400d15980099baf305a308101375400660b66102026ea8c21004c20404dd500344cdc3cc004dd5982d9840809baa0039bae3084010029bae30840130850100240546601a64b300133710002900044c164006200283f8dd6982d9840809baa006308401308101375400314a083f2294107e454cc1fd24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641f88a9983e2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641ec6602000a002804a2a660f292013b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e67746828726571756573747329001641e08982c4c006600200f375860f660f06ea800e4b30013014375a60a660f26ea8006260b26eb4c148c1e4dd5000c52820ec40453301c3756602a60f06ea8170dd71829183c1baa301e30783754005980082e4dd7183d983c1baa301e30783754005375a60a260f06ea800e6eb4c068c1e0dd5001a0149980c9bac304e3078375400446eb0c1f0c1e4dd5000a44446530013080010019bab308001308101001984000801d6600260ba601c0091480022b300100483644c96600261040200b1325980099b8f375c60fc0049110455534472008800c1bd07c1bad307e001836a0fe30800100441f883d1222259800cc00400e9464444b30010018acc004cdc78022441008a5189981200519843809ba90043308701375200697ae042080514a0841009021456600266e1ccdc09bad30840130810137540086eb4c21004c20404dd5001000c4c96600266e1e60026eb0c160c20804dd5006520009119912cc006600260cc0034a14a284180a264b3001337126602600200b30010099bae308a010039bae308a01308b01003406d1337000080031533085014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642100466e080040162006841808dd61843809842009baa00232980080a52000912cc004cdd798121843809baa002374e0071337000026eb4c184c21c04dd5001440050840120423758610e026108026ea800901e19b8100200a8801454cc200052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641fcb3001301c0098a400314800907e41cd07e41c907e0c2000400915330764901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641d51533076491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641d5153307649142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641d460080088a5041b8837044b300133710002900045300103d87a8000899802001000a0d82264b30010018204102264b3001001820c4c966002003042821410a0851332259800800c112264b30010018acc004c17c00a264b3001303c305b375400513259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc00400609904c8264132264b300130670038acc004c10cc188dd500344c96600200304e8992cc00400609f04f827c13e26644b3001001828c4c966002003052829414a0a5132598009836801c4c966002609400313259800800c156264b300100182b415a0ad0568992cc004c1c400e02505741b86eb80050711837000a0d8306a37540171598009824800c56600260d46ea802e01f05441ad054419c8338c1a0dd5005414d06a1bae00141b460d40028340dd7000983480120d43067001419460c66ea801a09a830209a8320dd7000a0ce3064001418860c800504a825412a0948328c1880050601831001412209104882420c63060001417860b86ea800a08c82c84c01cc17c02208a82e208b045822c115060182e800a0b6375c00260b800482e8c1680050581bac001820410105b182c00120ac81ea03c81ea03c8992cc00400607d03e81f44c8c00cc164010dd6800c0f9059182b00120a88992cc00400607903c81e44c8c00cc15c010dd6800c0f1057182a00120a481ca0a081cc0e6073039415060a20028278c14400a06f03781bc0dd0521827800a09a375a002609c005034413c60980028250dd6800982580140c504c1824800a08e3758002609000502e8172092304600141106eb0004c11400a05702b411860860028208c0fcdd500340a503c40a50401bac00181440a10431820000a07c3040002813409a04d0264104607c00281e0c0f800a049024812409103f181e000a0743038375400f02240d4444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608e00719800804c6600200900c805a01e805a022805a088375a00300a411c60880028210c11000a01100880440210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d8444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c12800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13c00e02901341306eb800504f1826000a094375c00260960048260c1240050474039012403901440390471bac001806c03504a1823800a08a3047002805c02e01700b4120608a0028218dd6800982200140210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d880e407203901c40dc664464b30013014303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301833038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8054dd7181a18189baa0019800912cc004006297ae089981a1818981a80099801001181b000a0669112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206091111919800800802912cc004006200b13259800800c4cc010c0e800801a26600a60740046600600600281c0c0e80050374dd6180518181baa01448888c8c8c8cc88c966002003159800980d181c9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130430028acc004c07cc0f8dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305a0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c154dd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260cc00713304300f225980080146600201f102b827a06e8992cc0040062b300130453064375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130720038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307700389808183b808c1790741bae00141dc60e80028390dd7000983980420e8307100741bd05941bc6eb40060b08390c1bc00506d1bad001306e00282aa0de306c00141a86eb0004c1ac00a0a505241b060d20028338c194dd5000c14106241420a105082820d43067002419504d418c6eb80050661831800a0c2375c00260c40048318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a001416060ac6ea801a082829a0828142082814208281420828142082814208281420828142082814208282ba083041820c10505b182c000a0ac375800260ae00503e81f20b03055001414c60aa00503c81e40f207882b0c14c005051182980140ea07503a81d20a83051001413c60a200503881c40e20708290c13c00504d182780140da06d03681b20a0304d001412c609a00503481a40d20688270c12c005049182580140ca06503281920983049001411c609200503081840c20608250c11c005045182380140ba05d02e81720903045001410c608a00502c81640b20588230c10c005041181f9baa0018152078815208081540aa05502a4110608200281f8dd700098200012082303e00140f060746ea800604a81ba04b025812c09503f29981b99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40d522010013259800980d181c9baa00189929981c99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981d9baa0018992cc0040062b3001301d303c375400313259800800c0e6264b300100181d40ea07503a899912cc0040060791325980098230014401a07a8218c1100050421bae00130430024110608200281f8c0f4dd5000c0e103a40e207103881c2084303f303c3754003153303a49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640e4602860766ea8c054c0ecdd5000981e981d1baa0018a9981c24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640dc6601400c4646600200260066eacc054c0ecdd5180a981d9baa0022259800800c528456600266e3cdd7181f80081c4528c4cc008008c100005039207a300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c207e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81c90391bac303c002375a60740026466ec0dd4181d0009ba7303b001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a607e003337149101023a200098008054c10000600a805100a182100144ca6002015303f00199b8a489023a200098008054c100006600e66008008004805100a18210012080304200140fc66e29220102207d0000340f06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920783758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e40f866e2ccdc0000acc004cdc4000a402914818229037207c004401866e0c00520203370c002901019b8e00400240ec6eb800d03f1b8a4881022c20002232330010010032259800980c800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681b10361801801844464b300130100018992cc00400600713259800800c01200900480244c966002606e007006802a068375c00281b8c0d000503218181baa0048acc004c03c006264b3001001801c4c966002003004802401200913259800981b801c01a00a81a0dd7000a06e303400140c860606ea8012004816902d18171baa00345901a0c070004c05cdd500ec5268a9980aa491856616c696461746f722072657475726e65642066616c7365001365640501\"\n :\n \"5921fd010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480324601c601e0032300e300f300f00191807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c010006260226603c00297ae089980180198100012034301e001407122232598009807000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300d0018992cc004c0800062660206eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc040dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0300062646644b300130220018998091bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b3001300b001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260140031323259800981080140122c80f0dd6980f800980d9baa0038acc004c02400626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c03400626464b3001302000280245901d1bae301e001301a37540071598009806000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c030c060dd500144c8c8c966002604000513232598009808800c566002603c6ea800a00d16407d1598009808000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689807180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300c30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009806800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300c0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013017302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301b33028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c058c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980b18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980b98119baa003899191919912cc004c0b400e264b3001301d30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc0a4dd6181c005912cc00400a26605600c44b300100289980e80289980e8048992cc004c0b4c0e4dd500944c8c8c9660026082005132332259800981980144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038acc004c0c800a264b3001304500189981a9bac304400122598008014012266040608c00426002608e00482222c8210c100dd5001c5660026070005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b300130310028992cc004c11400626606a6eb0c1100048966002005004899810182300109800982380120888b208430403754007159800981800144c966002608a0031330353758608800244b300100280244cc084c1180084c004c11c00904445904218201baa0038acc004c0bc00a264b3001304500189981a9bac304400122598008014012266042608c00426002608e00482222c8210c100dd5001c566002605c005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b30013370e900700144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038b207c40f881f103e207c40f881f103e181e9baa001132598009819000c4c966002608800313302530430010078b2082303f37540071598009818800c4c966002608800313259800981a18201baa00189919192cc004c12000a266054608e006266054002017164114608c002608c00260826ea80062c81f8c10c0062c8208c0fcdd5001c5903d207a303d375400460800071640f8607e002607e00260746ea804a2c81c04cc0b4048896600200519800981f181d9baa3028303b37540352302e303b3754607e646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130333040375460880074a14a281fa26608730014a14c103d87a8000a60103d879800040fc660866e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11800400e2946266004004608e002820904444cc10e600294298103d87a8000a60103d879800040fc660866e9c0092f5c11330439800a51a60103d87a8000a60103d879800040fc660866e9ccc10cdd400080125eb8103f207e3758608460860026eb4c108008cc008008c10800503f48888ca6002003005802400d00111112cc00400e2b30010028800c590444660020093047003982380166002608c007375a608c00500140148021044488c8cc00400400c896600200314bd7044cc896600266ebcc110c104dd5182218209baa302e304137540046056660866ea40152f5c113304300233004004001899802002000a07e3042001304300141013700900148c0fcc100c100c100c100c100c100c100c100006444b30010028a6103d87a80008acc004c0c40062606666080608200497ae08cc00400e6084005337000029000a00640f081fa4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208289980280298238022082375c60800026eacc104004c10c0050410a5eb7bdb18244b30013030303c375400513232598009821801400e2c8200dd69820800981e9baa0028b20769181f982018201820000cdc0a40012232330010010032259800800c52f5c1133041374e600660840026600400460860028202444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1140066eb4c1180066600600660940048048c1200050461bab3043003375c608000266006006608a0046086002820a44646600200200644b30010018a508acc004cdd798210009ba70038a518998010011821800a07a410122598009818181e1baa0028991919194c004c110006608800730440024889660026090009133027304700713302400213259800981c000c4c8cc89660026098003132323322598009828001c0422c8268dd718268009bae304d002304d001375860960031641246eb4c124004c128004c114dd50014566002606e0031323322598009826000c4c8c8cc896600260a00070108b209a375c609a0026eb8c134008c134004dd61825800c590491bad3049001304a00130453754005159800981e800c4c8ca60026eb4c1280066096003375a60940049112cc004c13800a264646644b3001305200380945904f1bae304f001375c609e004609e0026eb0c13400a2c82586094002608a6ea800a2b3001303600189919912cc004c130006264646644b3001305000380845904d1bae304d001375c609a004609a0026eb0c12c0062c8248dd69824800982500098229baa0028acc004c0d400626464b3001304b002805c590481bad304900130453754005159800981a000c4c8c8cc8966002609a00700d8b2094375a60940026eb4c128008c128004c114dd50014566002606600313232598009825801402e2c8240dd6982480098229baa0028acc004cdc3a401c00313232598009825801402e2c8240dd6982480098229baa0028b2086410c82190432086410c821904318219baa0018b208a182200098218009821000981e9baa0028b20769181f9820182018201820000c888ca6002003004801a00222259800801440063300100398228014cc010c11000800500320849b8848001222222222222222222980098261baa0129112cc004c05000a33001003801520009112cc004c01000e266e00004dd6982018299baa0038b20a2404d1641392259800800c5200089808198010011829800a0a091809000c8966002003148002260206600400460a600282826018019222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905444cc014014c1680110541bae3053001375a60a800260ac00282a0cc03c01000c5200048888888ca6002444464b3001304d305937540031325980099baf305e305b375460bc60b66ea8c120c16cdd500098229982e9ba90054bd704566002609b30013756609060b66ea8c120c16cdd5000c01691108747265617375727900402113259800982a182d9baa0018991980d0008992cc004c144c174dd5000c4c96600266ebcc188c17cdd51831182f9baa001304933061375201297ae08acc004c14660026eacc130c17cdd5000c02691108747265617375727900403113259800982c182f9baa0018991980f0008acc004cdd7980e98309baa0034c0103d87a800089983180299831800998319ba6329800800cdd5982798311baa00499198008009bab30503063375460a060c66ea8024896600200314bd6f7b63044c8cc19ccdd818320009ba63233001001375660cc00444b30010018a5eb7bdb182264660d466ec0c19c004dd418119bad306800133003003306c002306a00141a06600600660d200460ce00283290011112cc00400a2003132332298008034c1ac016646600200200a44b300100189983599bb037520086e9800d2f5bded8c113298009bae30690019bab306a00198370012444b30013372001000713306f337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820de880144cc1c0cdd81ba9009374c0020048360ca6002003008801a002222598008014400626466453001006983b802cc8cc0040040148966002003133077337606ea4010dd4001a5eb7bdb1822653001375c60ea003375a60ec003307a00248896600266e4002000e2660f666ec0dd48041ba80070058acc004cdc7804001c4c96600260da003100289983e19bb037520126ea000400907819b8000700289983d99bb037520066ea0008cc01801800507720ee183c000a0ec40186eb8c1c0004dd69838800983980120e289983799bb037520066e98008cc01801800506b20d61836000a0d440186eb8c190004dd59832800983380120ca4bd7045905f183198301baa0018b20bc304b305f375400316417516417460c260bc6ea80062c82e0cc024dd61824982e9baa008005305f305c3754003164168608e60b66ea8c120c16cdd5000c59059459059182e982d1baa0018b20b033005375860b860b26ea801000a600800930060064889660026092017198009bac305b3058375403b22598009826982c9baa002899192cc004c18000a0071641746eb4c178004c168dd50014590584888896600266e1cc018014c0180122b3001300d003899b890019800802c00e90004888c96600260a860c06ea800626644b3001305b306237540031323301b00115980099baf30203064375400660ce60c86ea801e2b30013375e60a260c86ea8004c19cc190dd5001c4c96600260ba60c86ea800626464b30013370e6eb4c1a8008dd6982a18339baa0068acc004cdc39bad306a001375a60a660ce6ea801a2b30013375e60d460d6002603a60ce6ea801a266e0002260026eacc150c19cdd5182a18339baa00a9bae306a00c9bae306a306b00c405116419516419516419460d400260ca6ea80062c8318c140c190dd5000c59062459062183318319baa0018b20c2306430613754002609a60c26ea8c138c184dd500245905f1980600380120408b20b68b20b691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad30663063375460cc0046eb4c198c18cdd5183300180244c9660033001002a5191112cc0040062b30013371e008911008a51899810002998351ba90043306a375200697ae0419914a0833101d44cdc4803cc004dd6182798321baa00ca400122323259800980e000c4cdc000199b83337040026eb4c154c1a0dd50021bad3054306837540091003419930010059bae306a0019bae306a306b00140506eb0c1a4c198dd500120328b20c43301d3758609c60c66ea802c8dd6183398321baa0018b20c2375660ca60cc00260ca00330010079bae306330603754604060c06ea802200d005402d164178b3001305230090018a40011598009831800c4c96600266e3cdd7182f800a44104555344720089bad30600018b20bc30620018b20c04174660386eacc050c178dd50029bae304b305e3754603c60bc6ea801a60b660b06ea80de608a60b06ea80e5222222332259800acc004c05000a2946330013053001a50a51417882f2264b3001305430603754003132332232332259800982d18331baa0018992cc004cdc399b81375a60d600200c00915980099b87375a60d660d80026eb4c1acc1b001e2b3001337129000004c56600330013302a375860d660d06ea817cdd7182a18341baa3028306837540170109bac3055306837540193306a305530683754605060d06ea802ccc1a9301054455534472004bd7052000403915980099b890033233001001375860aa60d26ea8180896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c98361baa0029bae3059306c3754605860d86ea803e91010455534472004065100141a860da0026600400460dc002835a3300100b82fcdd6982a18341baa00c9bad30243068375401900999b8000a0094035164199164199159800cc004cc0a8dd6183598341baa05f375c60a860d06ea8c0a0c1a0dd5005c0426eb0c154c1a0dd50064cc1a8c154c1a0dd5181418341baa00b3306a4c01054455534472004bd704c08c00d00e46600201705f9bad305430683754019375a604860d06ea803201300a403516419883322c83322c8330ca6002660280026eb4c1acc1a0dd50014dd7182a98341baa302830683754017375c604860d06ea8c0a0c1a0dd5005a444b3001305e306a37540071325980099baf306f306c375460de60d86ea8004c158cc1b8dd480125eb822b3001305e98009bab3059306c3754003002a4410d7374616b696e675f7661756c7400406513259800983298361baa0018991980a8008acc004cdd7981518371baa0034c0103d87a80008998381ba898009bab305b306e3754007005a441045553447200406c660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c160c1b0dd5000c5906a45906a183718359baa0038b20d21bac3053306737540bd16419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5004acc004c060006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082ccdd7183298311baa30223062375400b375a609c60c46ea801a6eb4c078c188dd5003201a329800998070009bad306530623754005375c609e60c46ea8c088c188dd5002cdd7180f18311baa30223062375400a9112cc004c160c190dd5001c4c96600266ebcc1a4c198dd5183498331baa30533066375400260a0660d06ea40092f5c1159800982c4c004dd5982998331baa305330663754003002a4410d7374616b696e675f7661756c7400404d13259800982f98331baa001899198078008998351ba898009bab30553068375460aa60d06ea800e00b48810455534472004054660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c148c198dd5182998331baa0018b20c88b20c830683065375400716418c375860c860c26ea81622c82f8c058c180dd500245905e4c00401a6eb0c184c178dd500148cdc4a40006eb4c130c17cdd5000a0209800803520009119b80001375a609860c06ea800901322b3001305000b8cc004dd6182d982c1baa01d911194c0040060090034004444b30010028acc0040062946294105f456600200314a11598009980218308011bad30610018cc00400e60c40053062001400d14a082e105f20be912cc0040062900044c06ccc008008c17800505b488cdc199b82002375a608c60b46ea8004dd69823982d1baa001982d982c1baa0379822982c1baa0394888888c9660026645300132330010010032259800800c528456600266ebcc198c18cdd5183318319baa30503063375460cc002609a660ca6ea400d2f5c114a313300200230670014184832294294505f1bac3062305f37540ac6eb8c06cc17cdd5180f982f9baa0028acc004cc896600266e1cc028008c0280262b300130110018cc00400a003223259800982b98319baa001899192cc004c15cc194dd5000c4c96600266e1cdd698350009bad30543067375400713375e60d460d6002603a60ce6ea800e294106518331baa0018a50419060a260ca6ea8c96600260bc60ca6ea80062646603c0022b30013375e604660ce6ea800cc1a8c19cdd5003456600266ebcc150c19cdd5000983518339baa0038800c59065459065183498331baa0018b20c830513065375460a460ca6ea8010c19cc190dd5000c5906219807805800a0108b20be8b20be33021375860c460be6ea8158dd71825982f9baa301f305f37540046eb0c130c17cdd5001c56600330013758609660be6ea815a6eb0c188c17cdd5001cdd61825182f9baa00248896600266e1cc010008c02c02a3300100a801488c96600260b060c86ea8006330013068306537540033758603660ca6ea800e646609e00a466ebcc1a8c19cdd50009ba70023758603660ca6ea800d22259800982d98339baa0018acc004cdd7983598341baa003306b3068375460d660d06ea801a2b30013375e60a860d06ea800cc154c1a0dd5183598341baa006899b8798009bab305530683754007375c60d6005375c60d660d800480a8cc034c96600266e20005200089812000c40050671bad30553068375400c60d660d06ea80062941066452820cc8b20cc45906319808002800a0128b20c044c14a600330010079bac3062305f3754007259800980a1bad304d3060375400313053375a609860c06ea8006294105e20229980e9bab3015305f37540ac6eb8c130c17cdd5180f982f9baa002cc00415a6eb8c188c17cdd5180f982f9baa0029bad304b305f3754007375a603660be6ea800d00a4cc064dd61825182f9baa0022375860c660c06ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a51899811004198361ba90043306c375200697ae041a114a0834101f456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c148c19cdd5005520009119912cc006600260bc0034a14a2834a264b3001337126602200200b30010089bae306f0039bae306f307000340651337000080031641a866e0800401620068348dd6183618349baa00232980080952000912cc004cdd7981118361baa002374e0071337000026eb4c164c1b0dd50014400506a203e375860d860d26ea800901c19b8100200888014590652cc004c06801e29000c5200241911641911641906eacc19cc1a00056600260ae601c0091480022b300130680048992cc004cdc79bae306400148904555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3004004452820ac4158225980099b88001480022980103d87a8000899802001000a0a822646644b30013042001899912cc004c0ccc0fcdd500144c8c8c8cc8966002609200713259800981c98229baa0018991919912cc004c13800e264b3001303e001899192cc004c14400a01d1641386eb8c13c004c12cdd5003c566002607a00315980098259baa00780645904c45904920923049375400d16412c6eb8c12c004dd71825801182580098231baa0018b208830480058b208c375c608c002608c004608c002608a00260806ea800a2c81f0c1040044c010c1080162c81f8dd7181f80098200009bac303e00240f11323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980a98109baa00189919912cc004c0a4006264b3001301930253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b8c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0dc024896600200513302701410248992cc004c0e4c114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c054c084dd5000c4c966002603660446ea8006264b3001301730233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084601c60446ea8c03cc088dd5181298111baa0018b20403300a3758601c60426ea80608c8cc004004c00cdd5980818119baa30103023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602860406ea800a2646464b3001302800289980318138018992cc004c0600062b3001302537540050058b204c8acc004c05c00626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013012301e3754005132323259800981300144cc024c09400c4c966002602c003132598009814000c4c8c9660026032003132598009815800c4cc038c0a80040262c8140c098dd500145660026030003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602a00315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolManagementProtocolManagementElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"594460010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888888896600264653001301c001980e180e800cdc3a4009301c0024888966002600460386ea800e330013020301d3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b874803246042604400323021302230220019b80480066e05200091810981118111811181118111811181118111811000cdd2a4004911111111111111194c004889660026020605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c054006264b3001001803c4c966002003159800981d80144c966002603000313259800800c02a264b30010018acc004c0f800a33001001806402d00e402d03b402e01700b805a07e303c00140e860706ea800a2b300130170018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11400e02701241086eb40060228228c1080050401bad00130410028072084303f00140f46eb4004c0f800a01681f8c0f000503a181c1baa002804a06a40d4606c6ea800601081c2011008804402103c181c800a06e30353754005159800980a000c566002606a6ea800a00f00640d900640c88190c0ccdd5000c0150084015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c96600260760070058042070375c00281d8c0e0005036181a1baa0038acc004c04c006264b300100180344c966002003007803c4c96600260760071330180012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0ec00e26603000244b3001002803c4c96600200319800805400626004607c006805201700b805c02d03f181e001207480420703758003007803a076303800140d860686ea800e2b300130120018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981f001c4cc06c004896600200500a8992cc0040063300100d800c4c008c10400d00d403a01d00e8072084303f00240f500b40ec6eb000601500a40f8607600281c8dd6800981d001401d03b181c000a06c303437540071598009808800c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002602000313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009807800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c015031206240c48189031206240c460646ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260286606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980a981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301a0018acc004c0e8dd5001401e00c81da2b300130190018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026038003159800981e1baa006804c02103d4566002603600313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783019303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002602a60686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c058006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130150018acc004c0d8dd5002400e00481ba0048199033181a1baa00348888cc89660026030606e6ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009821801c566002603e607c6ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013053002899818007112cc00400a26606401a44b30010028cc00401e330010058992cc004c0d0c14cdd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982e00144cc8966002607400313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252052825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0e4006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a504a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981f800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b300130380018992cc00400608b13259800800c11a08d132598009830801c4cc0f800489660020050078992cc00400633001001898011832001c129029412a09504a82520ca3062002418104741786eb000608d046418460bc00282e0c168dd5002c566002606e00313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252054825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a904a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981a800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea801608882b905720ae415c82b905720ae415c264b300130390018992cc00400608913259800800c56600260be00519800800c02208a813a08a82e208b045822c115060182e800a0b630593754005159800981c000c4c9660020030448992cc0040062b3001305f0028acc004c0ecc168dd5000c4c9660020030468992cc004006264b300100182444c966002003159800983180146600200719800800c032092816209281620928302093049824c1250641830800a0be3061002823c11e08f047418860be00282e8c16cdd5000c115058411505c411608b045822a0c0305d001416c60b26ea800a08682b1056182b9baa001305737540070424165042821410a08482e8c168005058182d001410208104082020b63058001415860a86ea806607c82884cc0d0054896600200519800982c182a9baa302f30553754049230353055375460b2646600200200444b30010018a5eb8503d87a80008101800044c8cc89660033001303a305a375460bc0074a14a282c22660bb30014a14c103d87a8000a60103d87980004160660ba6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18000400e294626600400460c200282d105e44cc176600294298103d87a8000a60103d87980004160660ba6e9c0092f5c113305d9800a51a60103d87a8000a60103d87980004160660ba6e9ccc174dd400080125eb8105820b0375860b860ba0026eb4c170008cc008008c17000505948888ca6002003005802400d00111112cc00400e2b30010028800c54cc16d24112657870656374205b5d203d206c6973745f6200164179159800801454cc16d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c20073061002cc004c18000e6eb4c18000a002802900420bc41792232330010010032259800800c52f5c1133225980099baf305e305b375460bc60b66ea8c0d4c16cdd500118181982e9ba90054bd7044cc174008cc01001000626600800800282c0c170004c17400505a4dc02400523059305a305a305a305a305a305a305a305a0019112cc00400a2980103d87a80008acc004c0e000626074660b460b600497ae08cc00400e60b80053030001400c82a9059488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd5982d800982e800a0b614bd6f7b630488966002607060ae6ea800e264b300100180144c966002003003801c00e264b3001305f003802c01105c1bad001801a0be305c001416860b06ea800e00282aa460b260b460b460b40032232330010010032259800800c52f5c113305b374e600660b80026600400460ba00282d2444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c17c0066eb4c1800066600600660c80048048c1880050601bab305d003375c60b40026600600660be00460ba00282da44646600200200644b30010018a508acc004cdd7982e0009ba70038a51899801001182e800a0ac416922259800981c182b9baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c96600200313259800800c022264b300130640028cc00401e330010058992cc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b300130400018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009835801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009838001c05a02a8368dd7000a0e0306d00141ac6eb8004c1b000906d1835000a0d080820d0375800300f807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c118006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c96600200301280944c96600260dc007159800800c04e264b300100180a4052029014899912cc00400602d13259800800c05e02f01780bc4c96600260e600701980c20e0375c0028398c1c000506e1bae001306f00241c060da002835a0268358dd6000c04a0248370c1ac0050691bad001306a002807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0fc006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b3001303e0018992cc00400601713259800800c03201900c8992cc004c1a000e01d00d41946eb40060188340c19400506318309baa0048acc004c0f4006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306b003808c0410681bad001807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0f0006264b3001001805c4c96600200300c8064032264b3001306800380740350651bad00180620d03065001418c60c26ea80122b30013370e9007000c4c96600200300b8992cc00400601900c80644c96600260d000700e806a0ca375a00300c41a060ca0028318c184dd5002402905e20bc417882f105e20bc417882f0c17cdd5001c02502e402503240250611831000a0c03062002803c01e00f007418c60c000282f0c18000a00b005802c015061182f000a0b8305e002801c00e007003417c60b800282d0c160dd5001c00505548c164c168c168c168c168006444653001001802400d0011112cc00400a200319800801cc17c00a6600860bc004002801905c4dc424000911111111111111114c004c194dd5008c88966002602600519800801c00a900048896600260080071337000026eb4c118c1b0dd5001c54cc1a924011a6578706563742076616c69646174696f6e287265717565737429001641a480922a660ce9212e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641992259800800c5200089807998010011836000a0d291808800c89660020031480022601e6600400460d8002834a6016017222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906c44cc014014c1cc01106c1bae306c001375a60da00260de0028368cc03801000c5200048888888ca6002444464b30013053307237540031325980099baf30773074375460ee60e86ea8c138c1d0dd500098249983b1ba90054bd70456600260a730013756609c60e86ea8c138c1d0dd5000c01691108747265617375727900402113259800982d183a1baa0018992cc004006330010018992cc004c15cc1d8dd5000c4c96600266ebcc1ecc1e0dd5183d983c1baa001304d3307a375201297ae08acc004c15e60026eacc148c1e0dd5000c026910108747265617375727900403113259800982f183c1baa0018992cc004006330010018acc004cdd7980e183d1baa0034c103d87a800089983e0029983e0009983e1ba6329800800cdd5982a983d9baa00499198008009bab3056307c375460ac60f86ea8024896600200314bd6f7b63044c8cc20004cdd8183e8009ba63233001001375660fe00444b30010018a5eb7bdb182264661060266ec0c20004004dd4182c1bad308101001330030033085010023083010014204046600600661040200461000200283f10011112cc00400a2003132332298008034c21004016646600200200a44b30010018998420099bb037520086e9800d2f5bded8c113298009bae3082010019bab3083010019843808012444b30013372001000713308801337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528211002880144cc22404cdd81ba9009374c002004842008ca6002003008801a002222598008014400626466453001006984800802cc8cc004004014896600200313309001337606ea4010dd4001a5eb7bdb1822653001375c611c02003375a611e0200330930100248896600266e4002000e2661280266ec0dd48041ba80070058acc004cdc7804001c4c96600260e6003100289984a8099bb037520126ea00040090900119b8000700289984a0099bb037520066ea0008cc01801800508f01211e02184880800a11e0240186eb8c22404004dd69845008009846008012114028998440099bb037520066e98008cc01801800508301210602184280800a1060240186eb8c1f4004dd5983f00098400080120fc4bd7041bd07741b901d41ba0dd06e83720fe307c30793754003153307749012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641d860a260f06ea80062a660ec920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641d5153307649143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641d460f460ee6ea80062a660ea92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641d0660126eb0c13cc1d8dd5004002c1a501941a60d3069834a0f6307830753754003153307349013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641c8609a60e86ea8c138c1d0dd5000c54cc1c92401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c515330724914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c460ec60e66ea80062a660e292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641c06600a6eb0c1d4c1c8dd50020014c010012600c00c9112cc004c13c02e33001375860e860e26ea8072444b300130543073375400713259800800c00a264b3001001801c00e00713259800983d801c01600883c0dd6800c00d07b183c000a0ec3074375400700141c5222225980099b87300600530060048acc004c03400e266e24006600200b003a40012223259800982d183c9baa001899912cc004c184c1ecdd5000c4c96600200319800800c56600266ebcc07cc1f4dd5001984000983e9baa0078acc004cdd7982b983e9baa001308001307d3754007132598009831983e9baa001899192cc004cdc39bad308301002375a60b46100026ea801a2b30013370e6eb4c20c04004dd6982c9840009baa0068acc004cdd7984180984200800980e9840009baa006899b8000898009bab305a308001375460b46100026ea802a6eb8c20c040326eb8c20c04c21004031014454cc1f92413665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001641f5153307e49126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001641f5153307e4912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001641f461060200260fc6ea80062a660f8921184578706563746564204f4465706f73697420616374696f6e001641ec60ac60fa6ea80060ec83d20ea83d20e880da0e907483a41d108201183f983e1baa00183920f2307d307a375400260a660f46ea8c150c1e8dd500241a107719806003801203e831a0e683120e691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307f307c375460fe0046eb4c1fcc1f0dd5183f80180244c9660033001002a5191112cc0040062b30013371e008911008a5189981000299841809ba90043308301375200697ae041f914a083f101d44cdc4803cc004dd61829983e9baa00ca400122323259800980e000c4cdc000199b83337040026eb4c16cc20404dd50021bad305a3081013754009100341f930010059bae3083010019bae30830130840100140506eb0c20804c1fcdd5001203283720f43301d375860a460f86ea802c8dd6184000983e9baa00183720f2375660fc60fe00260fc00330010079bae307c30793754603e60f26ea802200d005402d1533077490123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641d8b3001305830090018a4001159800800c19e264b3001307d0028992cc004cdc79bae307900248810455534472008800c1a90771bad307900183420f4307b00141e483a8cc06cdd5980a183b9baa005375c60a260ee6ea8c074c1dcdd50034c1d0c1c4dd50204c12cc1c4dd5020a4444446644b300159800980a0014528c6600260b20034a14a283b107644c96600260b460f26ea80062646644646644b30013060307f37540031325980099b87337026eb4c210040040180122b30013370e6eb4c21004c21404004dd6984200984280803c56600266e2520000098acc0066002660526eb0c21004c20404dd50329bae305a3081013754604e6102026ea802e021375860b66102026ea8032661060260b66102026ea8c09cc20404dd50059984180a61054455534472004bd7052000403915980099b890033233001001375860b66104026ea8198896600200314800226644b30013375e611002610a026ea8008c22004c22404c22404c22404c22404c22404c22404c22404c22404c22404c22404c21404dd5007c4cdc0000cc004dd5982f9842809baa0029bae305f30850137546056610a026ea803e910104555344720040651001420804610c0200266004004610e0200284200a3300100b832cdd6982d1840809baa00c9bad3023308101375401900999b8000a0094035153307f49012b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641f9153307f4919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001641f9159800cc004cc0a4dd61842009840809baa065375c60b46102026ea8c09cc20404dd5005c0426eb0c16cc20404dd50064cc20c04c16cc20404dd518139840809baa00b33083014c1054455534472004bd704c16000d00e4660020170659bad305a3081013754019375a60466102026ea803201300a4035153307f491b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641f883f22a660fe9213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641f9153307f4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641f865300133014001375a6108026102026ea800a6eb8c16cc20404dd518139840809baa00b9bae30233081013754604e6102026ea802d2225980098321841809baa0038992cc004cdd79844009842809baa308801308501375400260b46610e026ea40092f5c115980098324c004dd5982f9842809baa00180152210d7374616b696e675f7661756c740040651325980098359842809baa0018992cc004006330010018acc004cdd798149843809baa0034c103d87a8000899844809ba898009bab30613087013754007005a441045553447200406c6611202611402610e026ea8004cc2240400d2f5c107c4210050810140550810184080c2040610202846008c22404c21804dd5000c54cc2100524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016420c0460bc610a026ea80062a661060292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642080515330830149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016420804610e026108026ea800e2a661040292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f696478290016420404375860b26100026ea81922a660fc92013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641f466e04018004c20404c20804c20804c20804c20804c20804c1f8dd5004acc004c060006266e10cdc1002801000c5200041e86eb4c1f8004dd6983f183d9baa307e980082fcdd7183f183d9baa3021307b375400b375a60a860f66ea801a6eb4c074c1ecdd5003201a329800998070009bad307e307b3754005375c60aa60f66ea8c084c1ecdd5002cdd7180e983d9baa3021307b375400a9112cc004c178c1f4dd5001c4c96600266ebcc20804c1fcdd5184100983f9baa3059307f375400260a866102026ea40092f5c1159800982f4c004dd5982c983f9baa3059307f3754003002a4410d7374616b696e675f7661756c7400404d132598009832983f9baa0018992cc00400633001001899841809ba898009bab305b308101375460b66102026ea800e00b489045553447200405466106026108026102026ea8004cc20c0400d2f5c107b403d07b83dc1ee0f6843008c20c04c20004dd5000c1d907d182c183f9baa3059307f3754003153307d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f1153307d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f061020260fc6ea800e2a660f892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ec375860fa60f46ea817a2a660f092013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641dc602c60f26ea80122a660ee92012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641d930010069bac307a3077375400523371290001bad3052307837540028082600200d480024466e00004dd69829183c9baa002404c8acc004c15802e33001375860e860e26ea8072444653001001802400d0011112cc00400a2b30010018a518a5041e1159800800c52845660026600860f40046eb4c1e800633001003983d8014c1ec005003452820e841e083c244b30010018a40011301a33002002307700141d1223370666e08008dd6982618399baa001375a609a60e66ea800660e860e26ea8102609660e26ea8105222222325980099914c004c8cc00400400c896600200314a115980099baf307f307c375460fe60f86ea8c158c1f0dd5183f80098289983f1ba90034bd704528c4cc008008c2000400507920faa50a5141dc6eb0c1ecc1e0dd502e1bae301a30783754603c60f06ea800a2b300133225980099b87300a002300a0098acc004c04400633001002800c88c96600260ba60f86ea800626464b3001305d307e37540031325980099b87375a6106020026eb4c168c20004dd5001c4cdd7984180984200800980e9840009baa0038a5041f460fe6ea8006294107c182b983f1baa32598009832183f1baa0018992cc004006330010018acc004cdd798111840009baa003308301308001375400d15980099baf305a30800137540026106026100026ea800e200307941f507841f5077407907783bc1de0ee842808c20804c1fcdd5000c1d507c182b983f1baa3058307e375400861000260fa6ea80060d683d0cc03c02c005008419d0774199077198101bac307b307837540b86eb8c144c1e0dd5180f183c1baa002375860a460f06ea800e2b300198009bac3051307837540b9375860f660f06ea800e6eb0c138c1e0dd50012444b30013370e6008004601601519800805400a4464b3001305e307d375400319800984080983f1baa0019bac301b307e3754007323305000523375e6106026100026ea8004dd38011bac301b307e37540069112cc004c184c20004dd5000c56600266ebcc21004c20404dd50019842009840809baa308401308101375400d15980099baf305a308101375400660b66102026ea8c21004c20404dd500344cdc3cc004dd5982d9840809baa0039bae3084010029bae30840130850100240546601a64b300133710002900044c164006200283f8dd6982d9840809baa006308401308101375400314a083f2294107e454cc1fd24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641f88a9983e2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641ec6602000a002804a2a660f292013b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e67746828726571756573747329001641e08982c4c006600200f375860f660f06ea800e4b30013014375a60a660f26ea8006260b26eb4c148c1e4dd5000c52820ec40453301c3756602a60f06ea8170dd71829183c1baa301e30783754005980082e4dd7183d983c1baa301e30783754005375a60a260f06ea800e6eb4c068c1e0dd5001a0149980c9bac304e3078375400446eb0c1f0c1e4dd5000a44446530013080010019bab308001308101001984000801d6600260ba601c0091480022b300100483644c96600261040200b1325980099b8f375c60fc0049110455534472008800c1bd07c1bad307e001836a0fe30800100441f883d1222259800cc00400e9464444b30010018acc004cdc78022441008a5189981200519843809ba90043308701375200697ae042080514a0841009021456600266e1ccdc09bad30840130810137540086eb4c21004c20404dd5001000c4c96600266e1e60026eb0c160c20804dd5006520009119912cc006600260cc0034a14a284180a264b3001337126602600200b30010099bae308a010039bae308a01308b01003406d1337000080031533085014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642100466e080040162006841808dd61843809842009baa00232980080a52000912cc004cdd798121843809baa002374e0071337000026eb4c184c21c04dd5001440050840120423758610e026108026ea800901e19b8100200a8801454cc200052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641fcb3001301c0098a400314800907e41cd07e41c907e0c2000400915330764901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641d51533076491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641d5153307649142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641d460080088a5041b8837044b300133710002900045300103d87a8000899802001000a0d82264b30010018204102264b3001001820c4c966002003042821410a0851332259800800c112264b30010018acc004c17c00a264b3001303c305b375400513259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc00400609904c8264132264b300130670038acc004c10cc188dd500344c96600200304e8992cc00400609f04f827c13e26644b3001001828c4c966002003052829414a0a5132598009836801c4c966002609400313259800800c156264b300100182b415a0ad0568992cc004c1c400e02505741b86eb80050711837000a0d8306a37540171598009824800c56600260d46ea802e01f05441ad054419c8338c1a0dd5005414d06a1bae00141b460d40028340dd7000983480120d43067001419460c66ea801a09a830209a8320dd7000a0ce3064001418860c800504a825412a0948328c1880050601831001412209104882420c63060001417860b86ea800a08c82c84c01cc17c02208a82e208b045822c115060182e800a0b6375c00260b800482e8c1680050581bac001820410105b182c00120ac81ea03c81ea03c8992cc00400607d03e81f44c8c00cc164010dd6800c0f9059182b00120a88992cc00400607903c81e44c8c00cc15c010dd6800c0f1057182a00120a481ca0a081cc0e6073039415060a20028278c14400a06f03781bc0dd0521827800a09a375a002609c005034413c60980028250dd6800982580140c504c1824800a08e3758002609000502e8172092304600141106eb0004c11400a05702b411860860028208c0fcdd500340a503c40a50401bac00181440a10431820000a07c3040002813409a04d0264104607c00281e0c0f800a049024812409103f181e000a0743038375400f02240d4444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608e00719800804c6600200900c805a01e805a022805a088375a00300a411c60880028210c11000a01100880440210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d8444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c12800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13c00e02901341306eb800504f1826000a094375c00260960048260c1240050474039012403901440390471bac001806c03504a1823800a08a3047002805c02e01700b4120608a0028218dd6800982200140210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d880e407203901c40dc664464b30013014303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301833038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8054dd7181a18189baa0019800912cc004006297ae089981a1818981a80099801001181b000a0669112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206091111919800800802912cc004006200b13259800800c4cc010c0e800801a26600a60740046600600600281c0c0e80050374dd6180518181baa01448888c8c8c8cc88c966002003159800980d181c9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130430028acc004c07cc0f8dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305a0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c154dd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260cc00713304300f225980080146600201f102b827a06e8992cc0040062b300130453064375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130720038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307700389808183b808c1790741bae00141dc60e80028390dd7000983980420e8307100741bd05941bc6eb40060b08390c1bc00506d1bad001306e00282aa0de306c00141a86eb0004c1ac00a0a505241b060d20028338c194dd5000c14106241420a105082820d43067002419504d418c6eb80050661831800a0c2375c00260c40048318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a001416060ac6ea801a082829a0828142082814208281420828142082814208281420828142082814208282ba083041820c10505b182c000a0ac375800260ae00503e81f20b03055001414c60aa00503c81e40f207882b0c14c005051182980140ea07503a81d20a83051001413c60a200503881c40e20708290c13c00504d182780140da06d03681b20a0304d001412c609a00503481a40d20688270c12c005049182580140ca06503281920983049001411c609200503081840c20608250c11c005045182380140ba05d02e81720903045001410c608a00502c81640b20588230c10c005041181f9baa0018152078815208081540aa05502a4110608200281f8dd700098200012082303e00140f060746ea800604a81ba04b025812c09503f29981b99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40d522010013259800980d181c9baa00189929981c99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981d9baa0018992cc0040062b3001301d303c375400313259800800c0e6264b300100181d40ea07503a899912cc0040060791325980098230014401a07a8218c1100050421bae00130430024110608200281f8c0f4dd5000c0e103a40e207103881c2084303f303c3754003153303a49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640e4602860766ea8c054c0ecdd5000981e981d1baa0018a9981c24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640dc6601400c4646600200260066eacc054c0ecdd5180a981d9baa0022259800800c528456600266e3cdd7181f80081c4528c4cc008008c100005039207a300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c207e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81c90391bac303c002375a60740026466ec0dd4181d0009ba7303b001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a607e003337149101023a200098008054c10000600a805100a182100144ca6002015303f00199b8a489023a200098008054c100006600e66008008004805100a18210012080304200140fc66e29220102207d0000340f06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920783758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e40f866e2ccdc0000acc004cdc4000a402914818229037207c004401866e0c00520203370c002901019b8e00400240ec6eb800d03f1b8a4881022c20002232330010010032259800980c800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681b10361801801844464b300130100018992cc00400600713259800800c01200900480244c966002606e007006802a068375c00281b8c0d000503218181baa0048acc004c03c006264b3001001801c4c966002003004802401200913259800981b801c01a00a81a0dd7000a06e303400140c860606ea8012004816902d18171baa00345901a0c070004c05cdd500ec5268a9980aa491856616c696461746f722072657475726e65642066616c7365001365640501\"\n :\n \"5921fd010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480324601c601e0032300e300f300f00191807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c010006260226603c00297ae089980180198100012034301e001407122232598009807000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300d0018992cc004c0800062660206eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc040dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0300062646644b300130220018998091bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b3001300b001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260140031323259800981080140122c80f0dd6980f800980d9baa0038acc004c02400626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c03400626464b3001302000280245901d1bae301e001301a37540071598009806000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c030c060dd500144c8c8c966002604000513232598009808800c566002603c6ea800a00d16407d1598009808000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689807180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300c30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009806800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300c0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013017302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301b33028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c058c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980b18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980b98119baa003899191919912cc004c0b400e264b3001301d30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc0a4dd6181c005912cc00400a26605600c44b300100289980e80289980e8048992cc004c0b4c0e4dd500944c8c8c9660026082005132332259800981980144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038acc004c0c800a264b3001304500189981a9bac304400122598008014012266040608c00426002608e00482222c8210c100dd5001c5660026070005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b300130310028992cc004c11400626606a6eb0c1100048966002005004899810182300109800982380120888b208430403754007159800981800144c966002608a0031330353758608800244b300100280244cc084c1180084c004c11c00904445904218201baa0038acc004c0bc00a264b3001304500189981a9bac304400122598008014012266042608c00426002608e00482222c8210c100dd5001c566002605c005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b30013370e900700144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038b207c40f881f103e207c40f881f103e181e9baa001132598009819000c4c966002608800313302530430010078b2082303f37540071598009818800c4c966002608800313259800981a18201baa00189919192cc004c12000a266054608e006266054002017164114608c002608c00260826ea80062c81f8c10c0062c8208c0fcdd5001c5903d207a303d375400460800071640f8607e002607e00260746ea804a2c81c04cc0b4048896600200519800981f181d9baa3028303b37540352302e303b3754607e646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130333040375460880074a14a281fa26608730014a14c103d87a8000a60103d879800040fc660866e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11800400e2946266004004608e002820904444cc10e600294298103d87a8000a60103d879800040fc660866e9c0092f5c11330439800a51a60103d87a8000a60103d879800040fc660866e9ccc10cdd400080125eb8103f207e3758608460860026eb4c108008cc008008c10800503f48888ca6002003005802400d00111112cc00400e2b30010028800c590444660020093047003982380166002608c007375a608c00500140148021044488c8cc00400400c896600200314bd7044cc896600266ebcc110c104dd5182218209baa302e304137540046056660866ea40152f5c113304300233004004001899802002000a07e3042001304300141013700900148c0fcc100c100c100c100c100c100c100c100006444b30010028a6103d87a80008acc004c0c40062606666080608200497ae08cc00400e6084005337000029000a00640f081fa4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208289980280298238022082375c60800026eacc104004c10c0050410a5eb7bdb18244b30013030303c375400513232598009821801400e2c8200dd69820800981e9baa0028b20769181f982018201820000cdc0a40012232330010010032259800800c52f5c1133041374e600660840026600400460860028202444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1140066eb4c1180066600600660940048048c1200050461bab3043003375c608000266006006608a0046086002820a44646600200200644b30010018a508acc004cdd798210009ba70038a518998010011821800a07a410122598009818181e1baa0028991919194c004c110006608800730440024889660026090009133027304700713302400213259800981c000c4c8cc89660026098003132323322598009828001c0422c8268dd718268009bae304d002304d001375860960031641246eb4c124004c128004c114dd50014566002606e0031323322598009826000c4c8c8cc896600260a00070108b209a375c609a0026eb8c134008c134004dd61825800c590491bad3049001304a00130453754005159800981e800c4c8ca60026eb4c1280066096003375a60940049112cc004c13800a264646644b3001305200380945904f1bae304f001375c609e004609e0026eb0c13400a2c82586094002608a6ea800a2b3001303600189919912cc004c130006264646644b3001305000380845904d1bae304d001375c609a004609a0026eb0c12c0062c8248dd69824800982500098229baa0028acc004c0d400626464b3001304b002805c590481bad304900130453754005159800981a000c4c8c8cc8966002609a00700d8b2094375a60940026eb4c128008c128004c114dd50014566002606600313232598009825801402e2c8240dd6982480098229baa0028acc004cdc3a401c00313232598009825801402e2c8240dd6982480098229baa0028b2086410c82190432086410c821904318219baa0018b208a182200098218009821000981e9baa0028b20769181f9820182018201820000c888ca6002003004801a00222259800801440063300100398228014cc010c11000800500320849b8848001222222222222222222980098261baa0129112cc004c05000a33001003801520009112cc004c01000e266e00004dd6982018299baa0038b20a2404d1641392259800800c5200089808198010011829800a0a091809000c8966002003148002260206600400460a600282826018019222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905444cc014014c1680110541bae3053001375a60a800260ac00282a0cc03c01000c5200048888888ca6002444464b3001304d305937540031325980099baf305e305b375460bc60b66ea8c120c16cdd500098229982e9ba90054bd704566002609b30013756609060b66ea8c120c16cdd5000c01691108747265617375727900402113259800982a182d9baa0018991980d0008992cc004c144c174dd5000c4c96600266ebcc188c17cdd51831182f9baa001304933061375201297ae08acc004c14660026eacc130c17cdd5000c02691108747265617375727900403113259800982c182f9baa0018991980f0008acc004cdd7980e98309baa0034c0103d87a800089983180299831800998319ba6329800800cdd5982798311baa00499198008009bab30503063375460a060c66ea8024896600200314bd6f7b63044c8cc19ccdd818320009ba63233001001375660cc00444b30010018a5eb7bdb182264660d466ec0c19c004dd418119bad306800133003003306c002306a00141a06600600660d200460ce00283290011112cc00400a2003132332298008034c1ac016646600200200a44b300100189983599bb037520086e9800d2f5bded8c113298009bae30690019bab306a00198370012444b30013372001000713306f337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820de880144cc1c0cdd81ba9009374c0020048360ca6002003008801a002222598008014400626466453001006983b802cc8cc0040040148966002003133077337606ea4010dd4001a5eb7bdb1822653001375c60ea003375a60ec003307a00248896600266e4002000e2660f666ec0dd48041ba80070058acc004cdc7804001c4c96600260da003100289983e19bb037520126ea000400907819b8000700289983d99bb037520066ea0008cc01801800507720ee183c000a0ec40186eb8c1c0004dd69838800983980120e289983799bb037520066e98008cc01801800506b20d61836000a0d440186eb8c190004dd59832800983380120ca4bd7045905f183198301baa0018b20bc304b305f375400316417516417460c260bc6ea80062c82e0cc024dd61824982e9baa008005305f305c3754003164168608e60b66ea8c120c16cdd5000c59059459059182e982d1baa0018b20b033005375860b860b26ea801000a600800930060064889660026092017198009bac305b3058375403b22598009826982c9baa002899192cc004c18000a0071641746eb4c178004c168dd50014590584888896600266e1cc018014c0180122b3001300d003899b890019800802c00e90004888c96600260a860c06ea800626644b3001305b306237540031323301b00115980099baf30203064375400660ce60c86ea801e2b30013375e60a260c86ea8004c19cc190dd5001c4c96600260ba60c86ea800626464b30013370e6eb4c1a8008dd6982a18339baa0068acc004cdc39bad306a001375a60a660ce6ea801a2b30013375e60d460d6002603a60ce6ea801a266e0002260026eacc150c19cdd5182a18339baa00a9bae306a00c9bae306a306b00c405116419516419516419460d400260ca6ea80062c8318c140c190dd5000c59062459062183318319baa0018b20c2306430613754002609a60c26ea8c138c184dd500245905f1980600380120408b20b68b20b691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad30663063375460cc0046eb4c198c18cdd5183300180244c9660033001002a5191112cc0040062b30013371e008911008a51899810002998351ba90043306a375200697ae0419914a0833101d44cdc4803cc004dd6182798321baa00ca400122323259800980e000c4cdc000199b83337040026eb4c154c1a0dd50021bad3054306837540091003419930010059bae306a0019bae306a306b00140506eb0c1a4c198dd500120328b20c43301d3758609c60c66ea802c8dd6183398321baa0018b20c2375660ca60cc00260ca00330010079bae306330603754604060c06ea802200d005402d164178b3001305230090018a40011598009831800c4c96600266e3cdd7182f800a44104555344720089bad30600018b20bc30620018b20c04174660386eacc050c178dd50029bae304b305e3754603c60bc6ea801a60b660b06ea80de608a60b06ea80e5222222332259800acc004c05000a2946330013053001a50a51417882f2264b3001305430603754003132332232332259800982d18331baa0018992cc004cdc399b81375a60d600200c00915980099b87375a60d660d80026eb4c1acc1b001e2b3001337129000004c56600330013302a375860d660d06ea817cdd7182a18341baa3028306837540170109bac3055306837540193306a305530683754605060d06ea802ccc1a9301054455534472004bd7052000403915980099b890033233001001375860aa60d26ea8180896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c98361baa0029bae3059306c3754605860d86ea803e91010455534472004065100141a860da0026600400460dc002835a3300100b82fcdd6982a18341baa00c9bad30243068375401900999b8000a0094035164199164199159800cc004cc0a8dd6183598341baa05f375c60a860d06ea8c0a0c1a0dd5005c0426eb0c154c1a0dd50064cc1a8c154c1a0dd5181418341baa00b3306a4c01054455534472004bd704c08c00d00e46600201705f9bad305430683754019375a604860d06ea803201300a403516419883322c83322c8330ca6002660280026eb4c1acc1a0dd50014dd7182a98341baa302830683754017375c604860d06ea8c0a0c1a0dd5005a444b3001305e306a37540071325980099baf306f306c375460de60d86ea8004c158cc1b8dd480125eb822b3001305e98009bab3059306c3754003002a4410d7374616b696e675f7661756c7400406513259800983298361baa0018991980a8008acc004cdd7981518371baa0034c0103d87a80008998381ba898009bab305b306e3754007005a441045553447200406c660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c160c1b0dd5000c5906a45906a183718359baa0038b20d21bac3053306737540bd16419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5004acc004c060006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082ccdd7183298311baa30223062375400b375a609c60c46ea801a6eb4c078c188dd5003201a329800998070009bad306530623754005375c609e60c46ea8c088c188dd5002cdd7180f18311baa30223062375400a9112cc004c160c190dd5001c4c96600266ebcc1a4c198dd5183498331baa30533066375400260a0660d06ea40092f5c1159800982c4c004dd5982998331baa305330663754003002a4410d7374616b696e675f7661756c7400404d13259800982f98331baa001899198078008998351ba898009bab30553068375460aa60d06ea800e00b48810455534472004054660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c148c198dd5182998331baa0018b20c88b20c830683065375400716418c375860c860c26ea81622c82f8c058c180dd500245905e4c00401a6eb0c184c178dd500148cdc4a40006eb4c130c17cdd5000a0209800803520009119b80001375a609860c06ea800901322b3001305000b8cc004dd6182d982c1baa01d911194c0040060090034004444b30010028acc0040062946294105f456600200314a11598009980218308011bad30610018cc00400e60c40053062001400d14a082e105f20be912cc0040062900044c06ccc008008c17800505b488cdc199b82002375a608c60b46ea8004dd69823982d1baa001982d982c1baa0379822982c1baa0394888888c9660026645300132330010010032259800800c528456600266ebcc198c18cdd5183318319baa30503063375460cc002609a660ca6ea400d2f5c114a313300200230670014184832294294505f1bac3062305f37540ac6eb8c06cc17cdd5180f982f9baa0028acc004cc896600266e1cc028008c0280262b300130110018cc00400a003223259800982b98319baa001899192cc004c15cc194dd5000c4c96600266e1cdd698350009bad30543067375400713375e60d460d6002603a60ce6ea800e294106518331baa0018a50419060a260ca6ea8c96600260bc60ca6ea80062646603c0022b30013375e604660ce6ea800cc1a8c19cdd5003456600266ebcc150c19cdd5000983518339baa0038800c59065459065183498331baa0018b20c830513065375460a460ca6ea8010c19cc190dd5000c5906219807805800a0108b20be8b20be33021375860c460be6ea8158dd71825982f9baa301f305f37540046eb0c130c17cdd5001c56600330013758609660be6ea815a6eb0c188c17cdd5001cdd61825182f9baa00248896600266e1cc010008c02c02a3300100a801488c96600260b060c86ea8006330013068306537540033758603660ca6ea800e646609e00a466ebcc1a8c19cdd50009ba70023758603660ca6ea800d22259800982d98339baa0018acc004cdd7983598341baa003306b3068375460d660d06ea801a2b30013375e60a860d06ea800cc154c1a0dd5183598341baa006899b8798009bab305530683754007375c60d6005375c60d660d800480a8cc034c96600266e20005200089812000c40050671bad30553068375400c60d660d06ea80062941066452820cc8b20cc45906319808002800a0128b20c044c14a600330010079bac3062305f3754007259800980a1bad304d3060375400313053375a609860c06ea8006294105e20229980e9bab3015305f37540ac6eb8c130c17cdd5180f982f9baa002cc00415a6eb8c188c17cdd5180f982f9baa0029bad304b305f3754007375a603660be6ea800d00a4cc064dd61825182f9baa0022375860c660c06ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a51899811004198361ba90043306c375200697ae041a114a0834101f456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c148c19cdd5005520009119912cc006600260bc0034a14a2834a264b3001337126602200200b30010089bae306f0039bae306f307000340651337000080031641a866e0800401620068348dd6183618349baa00232980080952000912cc004cdd7981118361baa002374e0071337000026eb4c164c1b0dd50014400506a203e375860d860d26ea800901c19b8100200888014590652cc004c06801e29000c5200241911641911641906eacc19cc1a00056600260ae601c0091480022b300130680048992cc004cdc79bae306400148904555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3004004452820ac4158225980099b88001480022980103d87a8000899802001000a0a822646644b30013042001899912cc004c0ccc0fcdd500144c8c8c8cc8966002609200713259800981c98229baa0018991919912cc004c13800e264b3001303e001899192cc004c14400a01d1641386eb8c13c004c12cdd5003c566002607a00315980098259baa00780645904c45904920923049375400d16412c6eb8c12c004dd71825801182580098231baa0018b208830480058b208c375c608c002608c004608c002608a00260806ea800a2c81f0c1040044c010c1080162c81f8dd7181f80098200009bac303e00240f11323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980a98109baa00189919912cc004c0a4006264b3001301930253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b8c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0dc024896600200513302701410248992cc004c0e4c114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c054c084dd5000c4c966002603660446ea8006264b3001301730233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084601c60446ea8c03cc088dd5181298111baa0018b20403300a3758601c60426ea80608c8cc004004c00cdd5980818119baa30103023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602860406ea800a2646464b3001302800289980318138018992cc004c0600062b3001302537540050058b204c8acc004c05c00626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013012301e3754005132323259800981300144cc024c09400c4c966002602c003132598009814000c4c8c9660026032003132598009815800c4cc038c0a80040262c8140c098dd500145660026030003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602a00315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolMintProtocolMintWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5942e3010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a49856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a202020202900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888888896600264653001301e001980f180f800cdc3a4009301e00248889660026004603c6ea800e330013022301f37540072302330243024001918119812000cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c9b80480066e05200091811981218121812181218121812181218121812000cdd2a4004911111111111111194c00488966002601c60626ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e800a330010038992cc004c04c006264b3001001803c4c966002003159800981e80144c966002602c00313259800800c02a264b30010018acc004c10000a33001001806402d00e402d03d402e01700b805a082303e00140f060746ea800a2b300130150018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11c00e02701241106eb40060228238c1100050421bad00130430028072088304100140fc6eb4004c10000a0168208c0f800503c181d1baa002804a06e40dc60706ea800601081d2011008804402103e181d800a072303737540051598009809000c566002606e6ea800a00f00640e100640d081a0c0d4dd5000c0150084015037401600b005802a076303800140d86070005003801c00e00681c8c0d800503418191baa003800a05e911194c004006009003400444464b300130120018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa0038acc004c044006264b300100180344c966002003007803c4c966002607a0071330160012259800801401e264b30010018cc00402a003130023040003402900b805c02e0168208c0f800903c402103a1bac001803c01d03d181d000a07030363754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0f400e26602c00244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130100018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009820001c4cc064004896600200500a8992cc0040063300100d800c4c008c10c00d00d403a01d00e8072088304100240fd00b40f46eb000601500a4100607a00281d8dd6800981e001401d03d181d000a070303637540071598009807800c4c9660020030068992cc00400600f007803c4c966002607a0070058042074375a00300740f4607400281c0c0d8dd5001c566002601c00313259800800c01a264b3001001803c01e00f13259800981e801c01601081d0dd6800c01d03d181d000a070303637540071598009806800c4c9660020030068992cc00400600f007803c01e264b3001303d003802c02103a1bae00140f4607400281c0c0d8dd5001c015033206640cc8199033206640cc60686ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260246606c00297ae0899801801981c0012062303600140d091119192cc00400633001222598009809981b1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303f0028cc00400e264b300130180018acc004c0f0dd5001401e00c81ea2b300130170018992cc00400600f13259800800c02201100880444c966002608600700a804a080375c0028218c10000503e181e1baa0028acc004c07c006264b3001001803c4c9660026084005009804207e304000140f860786ea800a00c81c90392072303a3754003005403100540f1005802c01600a8200c0f400503b181e801400e007003801a07c303b00140e4606e6ea800e00281a2444b300130133036375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607800315980099b8948010c0ec00600d13259800982080244c9660026034003159800981f1baa006804c02103f4566002603200313259800800c026264b3001001805402a015132598009822801c0320168210dd6800c0290451821000a080303e375400d1598009810800c566002607c6ea801a01300840fd00840ec81d903b181e1baa005803a07c3017303b00140e500640f46ea800600b005802c015040181e800a076303d002801c00e00700340f8607600281c8c0dcdd5001c0050344889660026026606c6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d132598009820801c02200e81f0dd6800c019041181f000a078375c002607a00481f0c0ec005039181b9baa003800a068911192cc004c050006264b3001001801c4c9660020030048024012264b3001303f003803401503c1bad001802207e303c00140e860706ea80122b300130130018acc004c0e0dd5002400e00481ca00481a9035181b1baa00348888cc8966002602c60726ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009822801c566002603a60806ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013055002899817007112cc00400a26606001a44b30010028cc00401e33001005899192cc004c0ccc158dd500d44c9660020030408992cc004006264b300100182144c966002003159800982f80144cc8966002607200313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a054825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0e0006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40a904b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b1598009820000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130370018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c566002606c00313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a056825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0d4006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40ad04b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b159800981a000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130080018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c11505a20b4416882d105a20b4416882d04c966002607000313259800800c116264b30010018acc004c18800a330010018044119028411905f411a08d04682320c63060001417860b86ea800a2b300130370018992cc00400608b13259800800c56600260c4005159800981d182e9baa0018992cc00400608f13259800800c4c9660020030498992cc0040062b300130660028cc00400e33001001806412902d412902d4129063412a09504a82520ce3064001418860c800504882441220908328c188005060182f1baa00182320b682320be823411a08d046418c60c000282f0c170dd5001411105920b2305a375400260b46ea800e08682e2087043821c10d060182e800a0b6305d002820c106083041417860b600282c8c15cdd500d40fd05409981980b112cc00400a33001305b30583754606e60b06ea809645300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa303b305c375460be002605e660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303d305e37540046062660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230343058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013039305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48896600200514c103d87a80008acc004c0dc00626072660ba60bc00497ae08cc00400e60be0053031001400c82c105c488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064175133005005306400441746eb8c174004dd5982f0009830000a0bc14bd6f7b6304dc024005222329800800c012006800888966002005159800800c528c52820be8acc00400629422b3001330043061002375a60c200319800801cc18800a60c4002801a294105b20be417d25980099b88001480022605c003100141592305c305d305d305d0019112cc004c0dcc168dd5001c4c9660020030028992cc004006007003801c4c96600260c400700580220be375a003003418860be00282e8c16cdd5001c00505848c170c174c174c174c174006460b860ba60ba60ba60ba60ba60ba60ba60ba003222329800800c01200680088896600200510018cc00400e60c4005330043061002001400c82fa4466e0ccdc10011bad303a305a37540026eb4c0e4c168dd5000cdc424001371e9110455534472009112cc004c0dcc168dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983380146600200f19800802c4c966002608000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002608e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130710038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001307600380cc0610731bae00141d860e60028388dd7000983900120e6307000141b901341b86eb000602501241c460dc0028360dd68009836801403d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981e800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607600313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc306437540091598009807800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd5002402906120c24184830906120c241848308c188dd5001c02502f402503340250641832800a0c63065002803c01e00f007419860c60028308c18c00a00b005802c0150641830800a0be3061002801c00e007003418860be00282e8c16cdd5001c005058488cc0a40088cdd7982f182d9baa001374e00491111111111111111114c004c1a8dd5009c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c54cc1c1240112657870656374205b5d203d206c6973745f62001641cd159800801454cc1c12411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260ec007307600299912cc004c01c00a266e0000cdd69829983a1baa00283020e23075003375a60ea004802107320e68a9983624812e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641ad300f00f912cc0040062900044c03ccc008008c1c400506e489660020031480022601e6600400460e200283724446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e2899802802983c00220e2375c60e20026eb4c1c8004c1d0005072198090020018a40012259800800c5200089807998010011838800a0dc91808800c88c96600260a260da6ea8006264b30010018cc0040062b30013375e601c60de6ea800cc1c8c1bcdd5002456600266ebcc138c1bcdd5000983918379baa0038800c18906c418506c418100641820c106083020e83071306e375400305e41ac609a60da6ea8c130c1b4dd50012444444445300130060069802802c896600266e2000520008a6103d87a8000899804801000a0e69801801a4444646644b300130570108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea8006264b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0029bac305e307f3754007375860a660fe6ea80092225980099b87300d003300d0078acc004c04000a33001003801488c96600260c26108026ea800626464b3001306330860137540031323298009980f804000cdd618131844809baa0049bad308c0100248896600260d06116026ea800e2b30013371264664466e0cc194cdc019b82001375a60de611e026ea800c008008dd698361846809baa001375a60d8611a026ea8020c23c04c23004dd5001cc004dd598359846009baa306b308c013754015375c611e02005375c611e0261200200480e22b30013370e0026eb4c1acc23004dd5003c4cdd79ba70043029308c01375400f14a084480a294108901454cc228052414365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164224043758611602611802002610e026ea800629410840118331843009baa3301300400130880130850137540030744208046601c012002811a0e083fa0de83f9159800cc004dd6182f983f9baa0618024dd6184100983f9baa0039984080982f183f9baa301b307f37540046610202981054455534472004bd70200a899b879800801418690004dd6982f983f9baa0039bad301e307f3754007004401800306a41f1153307d49018f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641f130010039bac308101307e375400523018375a60bc60fe6ea800501241a107b22b300130560108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea80062b30019800998121bac308101307e37540c06eb8c178c1f8dd5180d183f1baa0019bac305d307e37540053308001305d307e3754603460fc6ea8004cc20005301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c180c20c04dd5000c4c8c96600260c2610a026ea800626464b3001337120033001375660ce6110026ea8c19cc22004dd5003cdd71845808044dd718458098460080420308acc004cdc3800982e9bad3067308801375400913375e611602611802004604a6110026ea80122941085014528210a02375a611402002610c026ea800629410830118329842809baa3301200400130870130840137540030734204046601a01000281120de83f20dc83f1159800cc004dd6182f183f1baa0609bac308101307e3754005375860a460fc6ea80052225980099b87300d002300c0068cc00401a00522325980098301841809baa0018cc004c21c04c21004dd5000cdd618109842009baa0039980d0021bac302130840137540069112cc004c18cc21804dd5000c56600266ebcc22804c21c04dd50019845009843809baa308a01308701375400d15980099baf3067308701375400660cc610e026ea8c22804c21c04dd500344cdc3cc004dd598331843809baa0039bae308a010029bae308a01308b01002405c66042604e6eb4c198c21c04dd50031845009843809baa0018a5042100514a084200a2a6610a029215365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642100483ea102023300d005001408907941f8899b879800800c18290004dd6982f183f1baa0029bad301d307e3754005003401530010039bac308101307e37540052337106eb4c178c1fcdd5000a400080922a660f89219e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641ed153307c491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641ed06841ec8992cc004c14c04633001375860fe60f86ea809260fe60f86ea812660b660f86ea812922259800998131bac308201307f37540c26eb8c078c1fcdd5180d983f9baa0018992cc004cc896600266e1cc034008c03401a2b300130100018cc00400a00322325980098309842009baa001899912cc004c1a8c21804dd5000c4c96600200319800800c56600266ebcc09cc22004dd50019845809844009baa0068acc004cdd798339844009baa001308b0130880137540071325980098301844009baa001899b87375a6118026112026ea8004dd698341844809baa0048a5042180460d06110026ea80060f684280a0f484280a0f280fa0f307983cc1e508d011845009843809baa00183ba10802308801308501375400260ca610a026ea8c190c21404dd5001c1d10820119807004000a04683820fe837a0fe3302637586106026100026ea8188dd718301840009baa301c30800137540046eb0c17cc20004dd5001c5660033001375860c06100026ea818a00937586106026100026ea800e661040260be6100026ea8c070c20004dd50011984100a61054455534472004bd70200c8991919912cc004cdc3acc004c180c0340062900045660020030788992cc004c2240400a264b3001301e375c610a02005100183da10602375a610a02003079421804610e0200284280908101002c56600266e1ccdc09bad3087013084013754610e020066eb4c21c04c21004dd5184380802002c4cc024dd6182c1842009baa006232306298008024dd7184480800cdd7184480984500800a02c3758611002610a026ea80060fc84080a2a661040292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e7400164204046eacc21404c21804004cc094dd5980f9841009baa064375c60c26104026ea8c078c20804dd5002184280800cc00418a6eb8c20c04c20004dd5180e1840009baa0029bad30603080013754007375a603e6100026ea800d00841ad07d454cc1f9241776578706563740a2020202076616c69646174655f6469726563745f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641f530010039bac308201307f375400523019375a60be6100026ea800501341a507c22b300130270118cc004dd6183f983e1baa024983f983e1baa049982d983e1baa04a4889660026604c6eb0c20804c1fcdd50309bae301e307f3754603660fe6ea80062b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0019bac305e307f37540053308101305e307f3754603660fe6ea8004cc20405301054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c184c21004dd5000c4cc896600260d4610c026ea8006264b30010018cc0040062b30013375e604e6110026ea800cc22c04c22004dd5003456600266ebcc19cc22004dd50009845809844009baa0038992cc004c0d0c22004dd5000c4c96600266e2400660026eacc1a4c22804dd518349845009baa0089bae308d010099bae308d01308e01009406913370e00260be6eb4c1a4c22804dd5002c528210e02375a6118026112026ea800629410860118341844009baa00183da10a0283d210a0283ca03e83cc1e60f3079423404611402610e026ea80060ee842008c22004c21404dd500098329842809baa306430850137540070744208046601c010002811a0e083fa0de83f9198009bad305f307f3754005375a603c60fe6ea800b3001003a4001225980099b88375a60c06102026ea80092000899b80001375a60c06102026ea800a0da83f101a4cc088dd5980e183f9baa061375c60bc60fe6ea8c06cc1fcdd5000a4444646464b30013370eb30013062300f0048a400115980080241ea264b3001308b010058992cc004c080dd7184380801440060fa842808dd6984380800c1ed08801184480802210e02420c0400b15980099b87337026eb4c22404c21804dd51844808011bad308901308601375461120200600b13300b375860b4610c026ea80208c8c1926002007375c611602003375c61160261180200280c0dd61845009843809baa0018a9984200a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016420c051533084014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016420c046eacc22004c22404004c2200400660020cb375c610c026106026ea8c07cc20c04dd5002c0120068059153307d491896578706563740a2020202076616c69646174655f6469726563745f6275726e5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641f106941f08a5041e483c888c8cc00400400c896600200314a31598009801984100800c4cc008008c20c04006294107c21000241e083c0888888cc88ca60026eacc21404c2180400664660020026eb0c15cc20c04dd5005112cc004006297ae0899843009843809842009baa3087010013300200230880100142140559800982f1805801c520008acc00400e0ed1325980098438080244c96600260386eb8c20c0400a20030794204046eb4c20c040060ee842008c2140400d0830120fe488966002646600200200844b30010018a518991991199119801001000912cc004006200713233225980099802802984980802456600266e3c01d221008a518991919800800807112cc00400629422b30013375e612a020026e9c00e2946266004004612c020028478090930119848809ba90073309101375200497ae042300514a0846008dd71846008009bad308d01001308f010014234046eacc2280400cdd718438080099801801984600801184500800a110028acc004cdc399b81375a611002610a026ea8c22004010dd69844009842809baa3088010050018992cc004cdc3cc004dd6182d1843009baa00da400122332259800cc004c1980069429450870144c96600266e24cc0940040166002013375c611c02007375c611c02611e0200680da266e000100062a66112029212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642200466e080040162006843808dd61845809844009baa002329800805d2000912cc004cdd798141845809baa002374e0071337000026eb4c1a8c22c04dd50014400508801204837586116026110026ea800902119b8100200b8801454cc210052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016420c04b3001301e00a8a40031480090820141fd08201454cc20c052401b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a20202020290016420804308501001330223756603860fe6ea8014dd7182f183f9baa301b307f375400d30010059bae308201307f3754603660fe6ea801a007002401c4444b30013370e6012004601000719800801c00a4464b3001305c307f37540031325980099baf30840130810137540026108026102026ea8c21004c20404dd5002456600266ebcc184c20404dd500098301840809baa308401308101375400913370f3001375660c06102026ea80066eb8c210040166eb8c18001501118109bad3060308101375400914a083f2294107e1841809840009baa00183ca0fa33009006001407907541e8444464b30013059307c37540031325980099baf308101307e375461020260fc6ea8c174c1f8dd5000982899840009ba90054bd70456600260b33001375660ba60fc6ea8c174c1f8dd5000c016911087472656173757279004039132598009831183f1baa0018992cc004006330010018992cc004c174c20004dd5000c4c96600266ebcc21404c20804dd51842809841009baa00130553308401375201297ae08acc004c17660026eacc184c20804dd5000c02691010874726561737572790040491325980098331841009baa0018992cc004006330010018acc004cdd798119842009baa0034c103d87a800089984300802998430080099843009ba6329800800cdd598321842809baa00499198008009bab3065308601375460ca610c026ea8024896600200314bd6f7b63044c8cc22804cdd81843808009ba63233001001375661120200444b30010018a5eb7bdb1822646611a0266ec0c22804004dd418301bad308b0100133003003308f01002308d01001422c04660060066118020046114020028440090011112cc00400a2003132332298008034c23804016646600200200a44b30010018998470099bb037520086e9800d2f5bded8c113298009bae308c010019bab308d010019848808012444b30013372001000713309201337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528212402880144cc24c04cdd81ba9009374c002004847008ca6002003008801a002222598008014400626466453001006984d00802cc8cc004004014896600200313309a01337606ea4010dd4001a5eb7bdb1822653001375c613002003375a613202003309d0100248896600266e4002000e26613c0266ec0dd48041ba80070058acc004cdc7804001c4c96600260f2003100289984f8099bb037520126ea000400909a0119b8000700289984f0099bb037520066ea0008cc01801800509901213202184d80800a1320240186eb8c24c04004dd6984a00800984b008012128028998490099bb037520066e98008cc01801800508d01211a02184780800a11a0240186eb8c21c04004dd59844008009845008012110024bd70454cc2080524126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642040507b408907b83dc1ee0f6844808c21804c20c04dd5000c54cc2040524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642000460c46104026ea80062a6610002920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641fd15330800149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641fc6108026102026ea80062a660fe92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641f8660146eb0c180c20004dd5004002c1d901e41da0ed07683b210a02308201307f3754003153307d49013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641f060bc60fc6ea8c174c1f8dd5000c54cc1f12401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641ed153307c4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641ec61000260fa6ea80062a660f692013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641e86600c6eb0c1fcc1f0dd500200108992cc0040060830418992cc00400608513259800800c10e087043821c4cc89660020030458992cc0040062b300130620028992cc004c0ecc178dd500144c9660020030488992cc004006264b300100182544c96600200313259800800c132264b3001001826c13609b04d8992cc004c1a800e2b300130423065375400d13259800800c13e264b300100182841420a1050899912cc0040060a513259800800c14e0a7053829c4c96600260e0007132598009824800c4c9660020030568992cc0040060af05782bc15e264b3001307400380941610711bae00141d060e20028378c1b4dd5005c566002609000315980098369baa00b807c15506e415506a20d4306b375401505441b46eb80050701836800a0d6375c00260d80048368c1a800506818331baa00682720c682720ce375c0028350c19c0050651833801412e09704b825a0d03065001418c60ca005049824c1260928330c18c005061182f9baa002823a0b813007306200882320be823411a08d046418c60c000282f0dd7000982f80120c0305d001416c6eb0006083041417860b600482c8dc3a401d03d407903d407913259800800c0fa07d03e8991801982d8021bad00181f20b63058002415913259800800c0f207903c8991801982c8021bad00181e20b230560024151039414903981cc0e607282b0c14c005051182980140de06f03781ba0a83051001413c6eb4004c14000a0688288c13800504c1bad001304d002818a09c304b00141246eb0004c12800a05d02e412c60900028230dd6000982380140ae0568240c11400504318209baa006814a07c814a0843758003028814208a304200141006084005026813409a04c8218c10000503e182000140920490248122082303e00140f060746ea801e04481b888966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018992cc00400601313259800800c02a01500a8992cc004c12400e330010098cc00401201900b403d00b404500b41186eb40060148248c11800504418230014022011008804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c088966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009826001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009828801c0520268270dd7000a0a2304e00141306eb8004c13400904e1825800a092807202480720288072092375800300d806a0983049001411c609200500b805c02e0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c101c80e407203881c8cc88c9660026024606a6ea80062606c6466ec0c0e8004c0e8c0ec004dd6181c981b1baa0018a9981a24818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640cc646600200200644b30010018a60103d87a80008992cc004cdd7981b80099ba548010cc0e8c02ccc0e8dd480225eb812f5c1130163303a374e66074606e00266074607000297ae04bd7044cc00c00cc0f0009035181d000a0703756600e60666ea8054dd7181b18199baa0019800912cc004006297ae089981b1819981b80099801001181c000a06a9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206491111919800800802912cc004006200b13259800800c4cc010c0f000801a26600a60780046600600600281d0c0f00050394dd6180898191baa01448888c8c8c8cc88c966002003159800980c181d9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130450028acc004c074c100dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305c0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d0c15cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260d000713304100f225980080146600201f102b827a06e8992cc0040062b300130433066375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130740038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307900389808183c808c1790761bae00141e460ec00283a0dd7000983a80420ec307300741c505941c46eb40060b083a0c1c400506f1bad001307000282aa0e2306e00141b06eb0004c1b400a0a505241b860d60028348c19cdd5000c14106441420a105082820d83069002419d04d41946eb80050681832800a0c6375c00260c80048328c1880050601bae0013061002418860be00282e8dd7000982f00120be305c001416860b06ea801a08282aa0828142082814208281420828142082814208281420828142082814208282ca083041820c10505d182d000a0b0375800260b200503e81f20b43057001415460ae00503c81e40f207882c0c154005053182a80140ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f182880140da06d03681b20a4304f0014134609e00503481a40d20688280c13400504b182680140ca065032819209c304b0014124609600503081840c20608260c124005047182480140ba05d02e817209430470014114608e00502c81640b20588240c11400504318209baa001815207c815208481540aa05502a411860860028208dd700098210012086304000140f860786ea800604a81ca04b025812c09504129981c99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40dd22010013259800980c181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981e9baa0018992cc0040062b3001301b303e375400313259800800c0ee264b300100181e40f207903c899912cc00400607d1325980098240014401a07e8228c1180050441bae0013045002411860860028208c0fcdd5000c0e903c40ea07503a81d20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec603a607a6ea8c070c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46601400c4646600200260066eacc070c0f4dd5180e181e9baa0022259800800c528456600266e3cdd7182080081d4528c4cc008008c10800503b207e300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20825980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d903b1bac303e002375a60780026466ec0dd4181e0009ba7303d001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6082003337149101023a200098008054c10800600a805100a182200144ca6002015304100199b8a489023a200098008054c108006600e66008008004805100a182200120843044001410466e29220102207d0000340f86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039009207c3758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e410066e2ccdc0000acc004cdc4000a4029148182290372080004401866e0c00520203370c002901019b8e00400240f46eb800d0411b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681c10381801801844464b3001300e0018992cc00400600713259800800c01200900480244c9660026072007006802a06c375c00281c8c0d800503418191baa0048acc004c034006264b3001001801c4c966002003004802401200913259800981c801c01a00a81b0dd7000a072303600140d060646ea8012004817902f18181baa00345901c0c078004c064dd500fc5268a9980ba491856616c696461746f722072657475726e65642066616c7365001365640581\"\n :\n \"5922b1010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c91807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601e6603c00297ae089980180198100012034301e001407122232598009806000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300b0018992cc004c08000626601c6eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc038dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0280062646644b300130220018998081bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b30013009001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260100031323259800981080140122c80f0dd6980f800980d9baa0038acc004c01c00626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c02c00626464b3001302000280245901d1bae301e001301a37540071598009805000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c028c060dd500144c8c8c966002604000513232598009807800c566002603c6ea800a00d16407d1598009807000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689806180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300a30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009805800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300a0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013015302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301933028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c050c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980a18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980a98119baa003899191919912cc004c0b400e264b3001301b30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc09cdd6181c005912cc00400a26605200c44b300100289980e80289980e804899192cc004c0b0c0e8dd5009c4c8c8c9660026084005132332259800981900144c966002608c0031330343758608a00244b300100280244cc084c11c0084c004c12000904545904318209baa0038acc004c0c400a264b3001304600189981a1bac304500122598008014012266042608e004260026090004822a2c8218c104dd5001c5660026072005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130300028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b208630413754007159800981780144c966002608c0031330343758608a00244b300100280244cc088c11c0084c004c12000904545904318209baa0038acc004c0b800a264b3001304600189981a1bac304500122598008014012266044608e004260026090004822a2c8218c104dd5001c566002605a005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130080028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b2086304137540071640fc81f903f207e40fc81f903f207e303e3754002264b300130310018992cc004c11400626604c608800200f16410860806ea800e2b300130300018992cc004c114006264b3001303330413754003132323259800982480144cc0acc12000c4cc0ac00402e2c8230c11c004c11c004c108dd5000c590401822000c5904218201baa0038b207c40f8607c6ea8008c10400e2c81f8c100004c100004c0ecdd5009c59039099816009912cc00400a33001303f303c3754606060786ea806e45300132330010010032259800800c528456600266ebcc10cc100dd5182198201baa30343040375460860026054660846ea400d2f5c114a3133002002304400140f8820a94294503c488c8cc00400400c896600200314bd7044cc896600266ebcc114c108dd5182298211baa3036304237540046058660886ea40152f5c113304400233004004001899802002000a0803043001304400141052302d303c37546080646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001303230413754608a0074a14a2820226608930014a14c103d87a8000a60103d87980004100660886e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11c00400e29462660040046090002821104544cc112600294298103d87a8000a60103d87980004100660886e9c0092f5c11330449800a51a60103d87a8000a60103d87980004100660886e9ccc110dd400080125eb8104020803758608660880026eb4c10c008cc008008c10c00504048896600200514c103d87a80008acc004c0c00062606466082608400497ae08cc00400e6086005337000029000a00640f482024464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208489980280298240022084375c60820026eacc108004c1100050420a5eb7bdb1826e012002911194c0040060090034004444b30010028acc00400629462941043456600200314a11598009980218228011bad30450018cc00400e608c0053046001400d14a0820104320869b81480024608060826082608200322598009817981e9baa002899192cc004c11000a0071641046eb4c108004c0f8dd500145903c48c100c104c104c104c1040064608060826082608260826082608260826082003222329800800c01200680088896600200510018cc00400e608c005330043045002001400c821a4466e0ccdc10011bad3033303e37540026eb4c0c8c0f8dd5000cdc424001371e911045553447200912cc004c0bcc0f4dd500144c8c8c8ca6002608a003304500398228012444b3001304900489981418240038998128010992cc004c0dc0062646644b3001304d0018991919912cc004c14400e0211641386eb8c138004dd7182700118270009bac304c0018b2094375a60940026096002608c6ea800a2b3001303600189919912cc004c134006264646644b3001305100380845904e1bae304e001375c609c004609c0026eb0c1300062c8250dd69825000982580098231baa0028acc004c0f8006264653001375a6096003304c0019bad304b002488966002609e005132323322598009829801c04a2c8280dd718280009bae305000230500013758609c005164130304b00130463754005159800981a800c4c8cc8966002609a003132323322598009828801c0422c8270dd718270009bae304e002304e001375860980031641286eb4c128004c12c004c118dd50014566002606800313232598009826001402e2c8248dd6982500098231baa0028acc004c0cc006264646644b3001304e003806c5904b1bad304b001375a60960046096002608c6ea800a2b30013032001899192cc004c13000a0171641246eb4c128004c118dd50014566002601a00313232598009826001402e2c8248dd6982500098231baa0028b20884110822104420884110822104418221baa0018b208c182280098220009821800981f1baa0028b20789119813801119baf3042303f37540026e9c0092222222222222222222980098271baa0139112cc004c04c00a2653001001802400e90002002222259800801c56600200510018b20ae8cc00401260b4007305a00299912cc004c01c00a266e0000cdd69826182c1baa0028b20ac3059003375a60b200480210574590504c03c03e44b30010018a40011300f33002002305500141492259800800c520008980799801001182a800a0a491119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c82b226600a00a60b800882b0dd7182a8009bad3056001305800141586602400800629000496600266e20005200089806000c400504e489660020031480022601e6600400460aa002829246022003223259800982518289baa001899198030008acc004cdd7980718299baa00330563053375400915980099baf30473053375400260ac60a66ea800e200316414516414460aa60a46ea80062c8280c118c144dd5182298289baa0024888888888a6002600e00f3006006912cc004cdc4000a400114c0103d87a8000899805001000a0b29801801a4444646644b300130510118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac3057306337540053758609c60c66ea80052225980099b87300c003300c0068acc004c03c00a33001003801488c96600260b460d06ea800626464b3001305c306a37540031323298009980f804000cdd6181318369baa0049bad307000248896600260c260de6ea800e2b30013371264664466e0ccdc019b80337040026eb4c1a0c1ccdd5001801240020046eb4c194c1c4dd50009bad30653071375401060e660e06ea800e60026eacc190c1c0dd5183218381baa00a9bae30730029bae30733074002407115980099b87001375a60c860e06ea801e266ebcdd3802181498381baa0078a5041b914a083722c83706eb0c1bcc1c0004c1acdd5000c52820d2305f306a37546602400800260d860d26ea80062c8338cc03402000502345906445906422b300198009bac3058306337540b50039bac30663063375400533065305730633754603660c66ea8004cc195301054455534472004bd702008899b879800800c16a90004dd6982c18319baa0029bad301e30633754005003401530010039bac30663063375400523019375a60b060c86ea800501345906145906145906122b300130500118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac30573063375400533065305730633754603660c66ea8004cc195301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c168c1a0dd5000c4c8c96600260b660d46ea800626464b3001337120033001375660c260da6ea8c184c1b4dd5003cdd718380044dd71838183880420328acc004cdc380098149bad3061306d375400913375e60e060e2004604c60da6ea8012294106b452820d6375a60de00260d66ea80062941069182f98351baa33012004001306c3069375400316419c6601a010002811a2c83222c8321159800cc004dd6182c18319baa05a9bac3066306337540053758609c60c66ea80052225980099b87300d002300c0068cc00401a005223259800982d18341baa0018cc004c1b0c1a4dd5000cdd6181118349baa0039980d8021bac3022306937540069112cc004c174c1acdd5000c56600266ebcc1bcc1b0dd5001983798361baa306f306c375400d15980099baf3061306c375400660c060d86ea8c1bcc1b0dd500344cdc3cc004dd5983018361baa0039bae306f0029bae306f3070002406066044602e6eb4c180c1b0dd5003183798361baa0018a5041a914a083522c835116419c6601a00a002811a2c832113370f300100182d520009bad305830633754005375a603c60c66ea800a006802a6002007375860cc60c66ea800a466e20dd6982c18321baa001480010134590614590614590612264b3001304d0128cc004dd6183218309baa025983218309baa040982a98309baa0424889660026604e6eb0c19cc190dd502d9bae301f30643754603860c86ea80062b300133225980099b87300c002300c0058acc004c03c00633001002800c88c96600260b460d06ea800626644b30013063306a37540031323301f00115980099baf3027306c375400660de60d86ea801a2b30013375e60c060d86ea8004c1bcc1b0dd5001c4c96600260b260d86ea8006266e1cdd6983818369baa001375a60c260da6ea8012294106b183098361baa0018b20d48b20d4306e306b37540031641a460d860d26ea8004c178c1a4dd5182e98349baa0038b20ce3300d007001408d1641911641906604c6eb0c19cc190dd502d9bae305930643754603860c86ea8004dd6182c18321baa0028acc00660026eb0c164c190dd502dc00e6eb0c19cc190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd70200a8cc004dd6982c98321baa0029bad301f306437540059800801cdd6183398321baa0029180d1bad30593065375400280a2660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641891641888acc004c0a004a33001375860c860c26ea809660c860c26ea810260aa60c26ea810922259800998139bac3067306437540b66eb8c07cc190dd5180e18321baa0018acc00660026604c6eb0c19cc190dd502d9bae305930643754603860c86ea80066eb0c160c190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c16cc1a4dd5000c4cc896600260c860d66ea8006264660400022b30013375e605060da6ea800cc1c0c1b4dd5003456600266ebcc184c1b4dd5000983818369baa0038992cc004c0d4c1b4dd5000c4c96600266e2400660026eacc18cc1bcdd5183198379baa0089bae30720099bae30723073009406d13370e00260566eb4c18cc1bcdd5002c52820da375a60e260dc6ea8006294106c183118369baa0018b20d68b20d6306f306c37540031641a860da60d46ea8004c17cc1a8dd5182f18351baa0038b20d03300e00800140911641951641948cc004dd6982c98321baa0029bad301f306437540059800801d2000912cc004cdc41bad305a30663754004900044cdc00009bad305a3066375400516419080da660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641888a50417c82f888c8cc00400400c896600200314a315980098019833800c4cc008008c1a0006294106220ca417882f0888888cc88ca60026eacc1a8c1ac00664660020026eb0c14cc1a0dd5005112cc004006297ae0899835983618349baa306c00133002002306d00141a959800982c1805801c520008acc004c1ac00e264b3001301c375c60ce0031375a60d000316419860d40071641a08329222598009919800800802112cc0040062946264664466446600400400244b30010018801c4c8cc89660026600a00a60f000915980099b8f007489008a518991919800800807112cc00400629422b30013375e60f40026e9c00e294626600400460f600283a90781983b1ba900733076375200497ae041c914a08390dd718388009bad3072001307400141c86eacc1bc00cdd718360009980180198388011837800a0da8acc004cdc399b81375a60da60d46ea8c1b4010dd6983698351baa306d0050018992cc004cdc3cc004dd6182b18359baa00da400122332259800cc004c18000694294506d44c96600266e24cc0980040166002013375c60e6007375c60e660e800680e2266e000100062c8370cdc1000802c400d06d1bac3070306d375400465300100ba4001225980099baf3029307037540046e9c00e266e00004dd6983218381baa0028800a0dc40946eb0c1c0c1b4dd500120443370200401710028b20d259800980f8054520018a400483422c83422c834060d4002660466eacc074c190dd50029bae305830643754603860c86ea801a600200b375c60ce60c86ea8c070c190dd5003400e004803888896600266e1cc024008c02000e33001003801488c96600260ac60c86ea8006264b30013375e60d260cc6ea8004c1a4c198dd5183498331baa0048acc004cdd7982d98331baa001305a3066375460d260cc6ea8012266e1e60026eacc168c198dd5000cdd71834802cdd7182d002a0243011375a60b460cc6ea80122941064452820c830683065375400316418c6601200c00280fa2c83008888c96600260a660c26ea8006264b30013375e60cc60c66ea8c198c18cdd5182b98319baa001304d33065375200a97ae08acc004c14e60026eacc15cc18cdd5182b98319baa001802d220108747265617375727900403d13259800982e18319baa0018991980f8008992cc004c15cc194dd5000c4c96600266ebcc1a8c19cdd5183518339baa001305133069375201297ae08acc004c15e60026eacc16cc19cdd5000c02691108747265617375727900404d13259800983018339baa001899198118008acc004cdd7981218349baa0034c0103d87a800089983580299835800998359ba6329800800cdd5982f18351baa00499198008009bab305f306b375460be60d66ea8024896600200314bd6f7b63044c8cc1bccdd818360009ba63233001001375660dc00444b30010018a5eb7bdb182264660e466ec0c1bc004dd418161bad3070001330030033074002307200141c06600600660e200460de00283690011112cc00400a2003132332298008034c1cc016646600200200a44b300100189983999bb037520086e9800d2f5bded8c113298009bae30710019bab3072001983b0012444b300133720010007133077337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ee880144cc1e0cdd81ba9009374c00200483a0ca6002003008801a002222598008014400626466453001006983f802cc8cc004004014896600200313307f337606ea4010dd4001a5eb7bdb1822653001375c60fa003375a60fc00330820100248896600266e4002000e2661060266ec0dd48041ba80070058acc004cdc7804001c4c96600260e600310028998420099bb037520126ea00040090800119b800070028998418099bb037520066ea0008cc01801800507f20fe184000800a0fc40186eb8c1e0004dd6983c800983d80120f289983b99bb037520066e98008cc01801800507320e6183a000a0e440186eb8c1b0004dd59836800983780120da4bd70459067183598341baa0018b20cc305c3067375400316419516419460d260cc6ea80062c8320cc028dd6182d18329baa00800530673064375400316418860b060c66ea8c15cc18cdd5000c59061459061183298311baa0018b20c033006375860c860c26ea801000844c8cc896600260860031332259800981918201baa002899191919912cc004c12800e264b3001303830463754003132323322598009827801c4c966002607a00313232598009829001403a2c8278dd7182800098261baa0078acc004c0f00062b3001304c375400f00c8b209a8b2094412860946ea801a2c8260dd718260009bae304c002304c00130473754003164114609200b16411c6eb8c11c004c11c008c11c004c118004c104dd500145903f1821000898021821802c590401bae304000130410013758607e00481e8dc3a401d1323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980998109baa00189919912cc004c0a4006264b3001301730253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b0c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0d4024896600200513302701410248992cc004c0dcc114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c04cc084dd5000c4c966002603660446ea8006264b3001301530233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084602e60446ea8c058c088dd5181298111baa0018b20403300a3758602a60426ea80608c8cc004004c00cdd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602460406ea800a2646464b3001302800289980318138018992cc004c0580062b3001302537540050058b204c8acc004c05400626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013010301e3754005132323259800981300144cc024c09400c4c9660026028003132598009814000c4c8c966002602e003132598009815800c4cc038c0a80040262c8140c098dd50014566002602c003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602600315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d1365640081\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolMintProtocolMintElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5942e3010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a49856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a202020202900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888888896600264653001301e001980f180f800cdc3a4009301e00248889660026004603c6ea800e330013022301f37540072302330243024001918119812000cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c9b80480066e05200091811981218121812181218121812181218121812000cdd2a4004911111111111111194c00488966002601c60626ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e800a330010038992cc004c04c006264b3001001803c4c966002003159800981e80144c966002602c00313259800800c02a264b30010018acc004c10000a33001001806402d00e402d03d402e01700b805a082303e00140f060746ea800a2b300130150018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11c00e02701241106eb40060228238c1100050421bad00130430028072088304100140fc6eb4004c10000a0168208c0f800503c181d1baa002804a06e40dc60706ea800601081d2011008804402103e181d800a072303737540051598009809000c566002606e6ea800a00f00640e100640d081a0c0d4dd5000c0150084015037401600b005802a076303800140d86070005003801c00e00681c8c0d800503418191baa003800a05e911194c004006009003400444464b300130120018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa0038acc004c044006264b300100180344c966002003007803c4c966002607a0071330160012259800801401e264b30010018cc00402a003130023040003402900b805c02e0168208c0f800903c402103a1bac001803c01d03d181d000a07030363754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0f400e26602c00244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130100018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009820001c4cc064004896600200500a8992cc0040063300100d800c4c008c10c00d00d403a01d00e8072088304100240fd00b40f46eb000601500a4100607a00281d8dd6800981e001401d03d181d000a070303637540071598009807800c4c9660020030068992cc00400600f007803c4c966002607a0070058042074375a00300740f4607400281c0c0d8dd5001c566002601c00313259800800c01a264b3001001803c01e00f13259800981e801c01601081d0dd6800c01d03d181d000a070303637540071598009806800c4c9660020030068992cc00400600f007803c01e264b3001303d003802c02103a1bae00140f4607400281c0c0d8dd5001c015033206640cc8199033206640cc60686ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260246606c00297ae0899801801981c0012062303600140d091119192cc00400633001222598009809981b1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303f0028cc00400e264b300130180018acc004c0f0dd5001401e00c81ea2b300130170018992cc00400600f13259800800c02201100880444c966002608600700a804a080375c0028218c10000503e181e1baa0028acc004c07c006264b3001001803c4c9660026084005009804207e304000140f860786ea800a00c81c90392072303a3754003005403100540f1005802c01600a8200c0f400503b181e801400e007003801a07c303b00140e4606e6ea800e00281a2444b300130133036375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607800315980099b8948010c0ec00600d13259800982080244c9660026034003159800981f1baa006804c02103f4566002603200313259800800c026264b3001001805402a015132598009822801c0320168210dd6800c0290451821000a080303e375400d1598009810800c566002607c6ea801a01300840fd00840ec81d903b181e1baa005803a07c3017303b00140e500640f46ea800600b005802c015040181e800a076303d002801c00e00700340f8607600281c8c0dcdd5001c0050344889660026026606c6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d132598009820801c02200e81f0dd6800c019041181f000a078375c002607a00481f0c0ec005039181b9baa003800a068911192cc004c050006264b3001001801c4c9660020030048024012264b3001303f003803401503c1bad001802207e303c00140e860706ea80122b300130130018acc004c0e0dd5002400e00481ca00481a9035181b1baa00348888cc8966002602c60726ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009822801c566002603a60806ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013055002899817007112cc00400a26606001a44b30010028cc00401e33001005899192cc004c0ccc158dd500d44c9660020030408992cc004006264b300100182144c966002003159800982f80144cc8966002607200313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a054825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0e0006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40a904b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b1598009820000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130370018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c566002606c00313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a056825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0d4006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40ad04b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b159800981a000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130080018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c11505a20b4416882d105a20b4416882d04c966002607000313259800800c116264b30010018acc004c18800a330010018044119028411905f411a08d04682320c63060001417860b86ea800a2b300130370018992cc00400608b13259800800c56600260c4005159800981d182e9baa0018992cc00400608f13259800800c4c9660020030498992cc0040062b300130660028cc00400e33001001806412902d412902d4129063412a09504a82520ce3064001418860c800504882441220908328c188005060182f1baa00182320b682320be823411a08d046418c60c000282f0c170dd5001411105920b2305a375400260b46ea800e08682e2087043821c10d060182e800a0b6305d002820c106083041417860b600282c8c15cdd500d40fd05409981980b112cc00400a33001305b30583754606e60b06ea809645300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa303b305c375460be002605e660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303d305e37540046062660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230343058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013039305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48896600200514c103d87a80008acc004c0dc00626072660ba60bc00497ae08cc00400e60be0053031001400c82c105c488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064175133005005306400441746eb8c174004dd5982f0009830000a0bc14bd6f7b6304dc024005222329800800c012006800888966002005159800800c528c52820be8acc00400629422b3001330043061002375a60c200319800801cc18800a60c4002801a294105b20be417d25980099b88001480022605c003100141592305c305d305d305d0019112cc004c0dcc168dd5001c4c9660020030028992cc004006007003801c4c96600260c400700580220be375a003003418860be00282e8c16cdd5001c00505848c170c174c174c174c174006460b860ba60ba60ba60ba60ba60ba60ba60ba003222329800800c01200680088896600200510018cc00400e60c4005330043061002001400c82fa4466e0ccdc10011bad303a305a37540026eb4c0e4c168dd5000cdc424001371e9110455534472009112cc004c0dcc168dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983380146600200f19800802c4c966002608000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002608e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130710038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001307600380cc0610731bae00141d860e60028388dd7000983900120e6307000141b901341b86eb000602501241c460dc0028360dd68009836801403d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981e800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607600313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc306437540091598009807800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd5002402906120c24184830906120c241848308c188dd5001c02502f402503340250641832800a0c63065002803c01e00f007419860c60028308c18c00a00b005802c0150641830800a0be3061002801c00e007003418860be00282e8c16cdd5001c005058488cc0a40088cdd7982f182d9baa001374e00491111111111111111114c004c1a8dd5009c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c54cc1c1240112657870656374205b5d203d206c6973745f62001641cd159800801454cc1c12411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260ec007307600299912cc004c01c00a266e0000cdd69829983a1baa00283020e23075003375a60ea004802107320e68a9983624812e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641ad300f00f912cc0040062900044c03ccc008008c1c400506e489660020031480022601e6600400460e200283724446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e2899802802983c00220e2375c60e20026eb4c1c8004c1d0005072198090020018a40012259800800c5200089807998010011838800a0dc91808800c88c96600260a260da6ea8006264b30010018cc0040062b30013375e601c60de6ea800cc1c8c1bcdd5002456600266ebcc138c1bcdd5000983918379baa0038800c18906c418506c418100641820c106083020e83071306e375400305e41ac609a60da6ea8c130c1b4dd50012444444445300130060069802802c896600266e2000520008a6103d87a8000899804801000a0e69801801a4444646644b300130570108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea8006264b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0029bac305e307f3754007375860a660fe6ea80092225980099b87300d003300d0078acc004c04000a33001003801488c96600260c26108026ea800626464b3001306330860137540031323298009980f804000cdd618131844809baa0049bad308c0100248896600260d06116026ea800e2b30013371264664466e0cc194cdc019b82001375a60de611e026ea800c008008dd698361846809baa001375a60d8611a026ea8020c23c04c23004dd5001cc004dd598359846009baa306b308c013754015375c611e02005375c611e0261200200480e22b30013370e0026eb4c1acc23004dd5003c4cdd79ba70043029308c01375400f14a084480a294108901454cc228052414365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164224043758611602611802002610e026ea800629410840118331843009baa3301300400130880130850137540030744208046601c012002811a0e083fa0de83f9159800cc004dd6182f983f9baa0618024dd6184100983f9baa0039984080982f183f9baa301b307f37540046610202981054455534472004bd70200a899b879800801418690004dd6982f983f9baa0039bad301e307f3754007004401800306a41f1153307d49018f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641f130010039bac308101307e375400523018375a60bc60fe6ea800501241a107b22b300130560108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea80062b30019800998121bac308101307e37540c06eb8c178c1f8dd5180d183f1baa0019bac305d307e37540053308001305d307e3754603460fc6ea8004cc20005301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c180c20c04dd5000c4c8c96600260c2610a026ea800626464b3001337120033001375660ce6110026ea8c19cc22004dd5003cdd71845808044dd718458098460080420308acc004cdc3800982e9bad3067308801375400913375e611602611802004604a6110026ea80122941085014528210a02375a611402002610c026ea800629410830118329842809baa3301200400130870130840137540030734204046601a01000281120de83f20dc83f1159800cc004dd6182f183f1baa0609bac308101307e3754005375860a460fc6ea80052225980099b87300d002300c0068cc00401a00522325980098301841809baa0018cc004c21c04c21004dd5000cdd618109842009baa0039980d0021bac302130840137540069112cc004c18cc21804dd5000c56600266ebcc22804c21c04dd50019845009843809baa308a01308701375400d15980099baf3067308701375400660cc610e026ea8c22804c21c04dd500344cdc3cc004dd598331843809baa0039bae308a010029bae308a01308b01002405c66042604e6eb4c198c21c04dd50031845009843809baa0018a5042100514a084200a2a6610a029215365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642100483ea102023300d005001408907941f8899b879800800c18290004dd6982f183f1baa0029bad301d307e3754005003401530010039bac308101307e37540052337106eb4c178c1fcdd5000a400080922a660f89219e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641ed153307c491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641ed06841ec8992cc004c14c04633001375860fe60f86ea809260fe60f86ea812660b660f86ea812922259800998131bac308201307f37540c26eb8c078c1fcdd5180d983f9baa0018992cc004cc896600266e1cc034008c03401a2b300130100018cc00400a00322325980098309842009baa001899912cc004c1a8c21804dd5000c4c96600200319800800c56600266ebcc09cc22004dd50019845809844009baa0068acc004cdd798339844009baa001308b0130880137540071325980098301844009baa001899b87375a6118026112026ea8004dd698341844809baa0048a5042180460d06110026ea80060f684280a0f484280a0f280fa0f307983cc1e508d011845009843809baa00183ba10802308801308501375400260ca610a026ea8c190c21404dd5001c1d10820119807004000a04683820fe837a0fe3302637586106026100026ea8188dd718301840009baa301c30800137540046eb0c17cc20004dd5001c5660033001375860c06100026ea818a00937586106026100026ea800e661040260be6100026ea8c070c20004dd50011984100a61054455534472004bd70200c8991919912cc004cdc3acc004c180c0340062900045660020030788992cc004c2240400a264b3001301e375c610a02005100183da10602375a610a02003079421804610e0200284280908101002c56600266e1ccdc09bad3087013084013754610e020066eb4c21c04c21004dd5184380802002c4cc024dd6182c1842009baa006232306298008024dd7184480800cdd7184480984500800a02c3758611002610a026ea80060fc84080a2a661040292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e7400164204046eacc21404c21804004cc094dd5980f9841009baa064375c60c26104026ea8c078c20804dd5002184280800cc00418a6eb8c20c04c20004dd5180e1840009baa0029bad30603080013754007375a603e6100026ea800d00841ad07d454cc1f9241776578706563740a2020202076616c69646174655f6469726563745f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641f530010039bac308201307f375400523019375a60be6100026ea800501341a507c22b300130270118cc004dd6183f983e1baa024983f983e1baa049982d983e1baa04a4889660026604c6eb0c20804c1fcdd50309bae301e307f3754603660fe6ea80062b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0019bac305e307f37540053308101305e307f3754603660fe6ea8004cc20405301054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c184c21004dd5000c4cc896600260d4610c026ea8006264b30010018cc0040062b30013375e604e6110026ea800cc22c04c22004dd5003456600266ebcc19cc22004dd50009845809844009baa0038992cc004c0d0c22004dd5000c4c96600266e2400660026eacc1a4c22804dd518349845009baa0089bae308d010099bae308d01308e01009406913370e00260be6eb4c1a4c22804dd5002c528210e02375a6118026112026ea800629410860118341844009baa00183da10a0283d210a0283ca03e83cc1e60f3079423404611402610e026ea80060ee842008c22004c21404dd500098329842809baa306430850137540070744208046601c010002811a0e083fa0de83f9198009bad305f307f3754005375a603c60fe6ea800b3001003a4001225980099b88375a60c06102026ea80092000899b80001375a60c06102026ea800a0da83f101a4cc088dd5980e183f9baa061375c60bc60fe6ea8c06cc1fcdd5000a4444646464b30013370eb30013062300f0048a400115980080241ea264b3001308b010058992cc004c080dd7184380801440060fa842808dd6984380800c1ed08801184480802210e02420c0400b15980099b87337026eb4c22404c21804dd51844808011bad308901308601375461120200600b13300b375860b4610c026ea80208c8c1926002007375c611602003375c61160261180200280c0dd61845009843809baa0018a9984200a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016420c051533084014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016420c046eacc22004c22404004c2200400660020cb375c610c026106026ea8c07cc20c04dd5002c0120068059153307d491896578706563740a2020202076616c69646174655f6469726563745f6275726e5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641f106941f08a5041e483c888c8cc00400400c896600200314a31598009801984100800c4cc008008c20c04006294107c21000241e083c0888888cc88ca60026eacc21404c2180400664660020026eb0c15cc20c04dd5005112cc004006297ae0899843009843809842009baa3087010013300200230880100142140559800982f1805801c520008acc00400e0ed1325980098438080244c96600260386eb8c20c0400a20030794204046eb4c20c040060ee842008c2140400d0830120fe488966002646600200200844b30010018a518991991199119801001000912cc004006200713233225980099802802984980802456600266e3c01d221008a518991919800800807112cc00400629422b30013375e612a020026e9c00e2946266004004612c020028478090930119848809ba90073309101375200497ae042300514a0846008dd71846008009bad308d01001308f010014234046eacc2280400cdd718438080099801801984600801184500800a110028acc004cdc399b81375a611002610a026ea8c22004010dd69844009842809baa3088010050018992cc004cdc3cc004dd6182d1843009baa00da400122332259800cc004c1980069429450870144c96600266e24cc0940040166002013375c611c02007375c611c02611e0200680da266e000100062a66112029212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642200466e080040162006843808dd61845809844009baa002329800805d2000912cc004cdd798141845809baa002374e0071337000026eb4c1a8c22c04dd50014400508801204837586116026110026ea800902119b8100200b8801454cc210052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016420c04b3001301e00a8a40031480090820141fd08201454cc20c052401b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a20202020290016420804308501001330223756603860fe6ea8014dd7182f183f9baa301b307f375400d30010059bae308201307f3754603660fe6ea801a007002401c4444b30013370e6012004601000719800801c00a4464b3001305c307f37540031325980099baf30840130810137540026108026102026ea8c21004c20404dd5002456600266ebcc184c20404dd500098301840809baa308401308101375400913370f3001375660c06102026ea80066eb8c210040166eb8c18001501118109bad3060308101375400914a083f2294107e1841809840009baa00183ca0fa33009006001407907541e8444464b30013059307c37540031325980099baf308101307e375461020260fc6ea8c174c1f8dd5000982899840009ba90054bd70456600260b33001375660ba60fc6ea8c174c1f8dd5000c016911087472656173757279004039132598009831183f1baa0018992cc004006330010018992cc004c174c20004dd5000c4c96600266ebcc21404c20804dd51842809841009baa00130553308401375201297ae08acc004c17660026eacc184c20804dd5000c02691010874726561737572790040491325980098331841009baa0018992cc004006330010018acc004cdd798119842009baa0034c103d87a800089984300802998430080099843009ba6329800800cdd598321842809baa00499198008009bab3065308601375460ca610c026ea8024896600200314bd6f7b63044c8cc22804cdd81843808009ba63233001001375661120200444b30010018a5eb7bdb1822646611a0266ec0c22804004dd418301bad308b0100133003003308f01002308d01001422c04660060066118020046114020028440090011112cc00400a2003132332298008034c23804016646600200200a44b30010018998470099bb037520086e9800d2f5bded8c113298009bae308c010019bab308d010019848808012444b30013372001000713309201337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528212402880144cc24c04cdd81ba9009374c002004847008ca6002003008801a002222598008014400626466453001006984d00802cc8cc004004014896600200313309a01337606ea4010dd4001a5eb7bdb1822653001375c613002003375a613202003309d0100248896600266e4002000e26613c0266ec0dd48041ba80070058acc004cdc7804001c4c96600260f2003100289984f8099bb037520126ea000400909a0119b8000700289984f0099bb037520066ea0008cc01801800509901213202184d80800a1320240186eb8c24c04004dd6984a00800984b008012128028998490099bb037520066e98008cc01801800508d01211a02184780800a11a0240186eb8c21c04004dd59844008009845008012110024bd70454cc2080524126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642040507b408907b83dc1ee0f6844808c21804c20c04dd5000c54cc2040524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642000460c46104026ea80062a6610002920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641fd15330800149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641fc6108026102026ea80062a660fe92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641f8660146eb0c180c20004dd5004002c1d901e41da0ed07683b210a02308201307f3754003153307d49013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641f060bc60fc6ea8c174c1f8dd5000c54cc1f12401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641ed153307c4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641ec61000260fa6ea80062a660f692013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641e86600c6eb0c1fcc1f0dd500200108992cc0040060830418992cc00400608513259800800c10e087043821c4cc89660020030458992cc0040062b300130620028992cc004c0ecc178dd500144c9660020030488992cc004006264b300100182544c96600200313259800800c132264b3001001826c13609b04d8992cc004c1a800e2b300130423065375400d13259800800c13e264b300100182841420a1050899912cc0040060a513259800800c14e0a7053829c4c96600260e0007132598009824800c4c9660020030568992cc0040060af05782bc15e264b3001307400380941610711bae00141d060e20028378c1b4dd5005c566002609000315980098369baa00b807c15506e415506a20d4306b375401505441b46eb80050701836800a0d6375c00260d80048368c1a800506818331baa00682720c682720ce375c0028350c19c0050651833801412e09704b825a0d03065001418c60ca005049824c1260928330c18c005061182f9baa002823a0b813007306200882320be823411a08d046418c60c000282f0dd7000982f80120c0305d001416c6eb0006083041417860b600482c8dc3a401d03d407903d407913259800800c0fa07d03e8991801982d8021bad00181f20b63058002415913259800800c0f207903c8991801982c8021bad00181e20b230560024151039414903981cc0e607282b0c14c005051182980140de06f03781ba0a83051001413c6eb4004c14000a0688288c13800504c1bad001304d002818a09c304b00141246eb0004c12800a05d02e412c60900028230dd6000982380140ae0568240c11400504318209baa006814a07c814a0843758003028814208a304200141006084005026813409a04c8218c10000503e182000140920490248122082303e00140f060746ea801e04481b888966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018992cc00400601313259800800c02a01500a8992cc004c12400e330010098cc00401201900b403d00b404500b41186eb40060148248c11800504418230014022011008804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c088966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009826001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009828801c0520268270dd7000a0a2304e00141306eb8004c13400904e1825800a092807202480720288072092375800300d806a0983049001411c609200500b805c02e0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c101c80e407203881c8cc88c9660026024606a6ea80062606c6466ec0c0e8004c0e8c0ec004dd6181c981b1baa0018a9981a24818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640cc646600200200644b30010018a60103d87a80008992cc004cdd7981b80099ba548010cc0e8c02ccc0e8dd480225eb812f5c1130163303a374e66074606e00266074607000297ae04bd7044cc00c00cc0f0009035181d000a0703756600e60666ea8054dd7181b18199baa0019800912cc004006297ae089981b1819981b80099801001181c000a06a9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206491111919800800802912cc004006200b13259800800c4cc010c0f000801a26600a60780046600600600281d0c0f00050394dd6180898191baa01448888c8c8c8cc88c966002003159800980c181d9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130450028acc004c074c100dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305c0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d0c15cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260d000713304100f225980080146600201f102b827a06e8992cc0040062b300130433066375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130740038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307900389808183c808c1790761bae00141e460ec00283a0dd7000983a80420ec307300741c505941c46eb40060b083a0c1c400506f1bad001307000282aa0e2306e00141b06eb0004c1b400a0a505241b860d60028348c19cdd5000c14106441420a105082820d83069002419d04d41946eb80050681832800a0c6375c00260c80048328c1880050601bae0013061002418860be00282e8dd7000982f00120be305c001416860b06ea801a08282aa0828142082814208281420828142082814208281420828142082814208282ca083041820c10505d182d000a0b0375800260b200503e81f20b43057001415460ae00503c81e40f207882c0c154005053182a80140ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f182880140da06d03681b20a4304f0014134609e00503481a40d20688280c13400504b182680140ca065032819209c304b0014124609600503081840c20608260c124005047182480140ba05d02e817209430470014114608e00502c81640b20588240c11400504318209baa001815207c815208481540aa05502a411860860028208dd700098210012086304000140f860786ea800604a81ca04b025812c09504129981c99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40dd22010013259800980c181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981e9baa0018992cc0040062b3001301b303e375400313259800800c0ee264b300100181e40f207903c899912cc00400607d1325980098240014401a07e8228c1180050441bae0013045002411860860028208c0fcdd5000c0e903c40ea07503a81d20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec603a607a6ea8c070c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46601400c4646600200260066eacc070c0f4dd5180e181e9baa0022259800800c528456600266e3cdd7182080081d4528c4cc008008c10800503b207e300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20825980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d903b1bac303e002375a60780026466ec0dd4181e0009ba7303d001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6082003337149101023a200098008054c10800600a805100a182200144ca6002015304100199b8a489023a200098008054c108006600e66008008004805100a182200120843044001410466e29220102207d0000340f86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039009207c3758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e410066e2ccdc0000acc004cdc4000a4029148182290372080004401866e0c00520203370c002901019b8e00400240f46eb800d0411b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681c10381801801844464b3001300e0018992cc00400600713259800800c01200900480244c9660026072007006802a06c375c00281c8c0d800503418191baa0048acc004c034006264b3001001801c4c966002003004802401200913259800981c801c01a00a81b0dd7000a072303600140d060646ea8012004817902f18181baa00345901c0c078004c064dd500fc5268a9980ba491856616c696461746f722072657475726e65642066616c7365001365640581\"\n :\n \"5922b1010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c91807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601e6603c00297ae089980180198100012034301e001407122232598009806000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300b0018992cc004c08000626601c6eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc038dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0280062646644b300130220018998081bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b30013009001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260100031323259800981080140122c80f0dd6980f800980d9baa0038acc004c01c00626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c02c00626464b3001302000280245901d1bae301e001301a37540071598009805000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c028c060dd500144c8c8c966002604000513232598009807800c566002603c6ea800a00d16407d1598009807000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689806180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300a30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009805800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300a0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013015302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301933028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c050c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980a18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980a98119baa003899191919912cc004c0b400e264b3001301b30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc09cdd6181c005912cc00400a26605200c44b300100289980e80289980e804899192cc004c0b0c0e8dd5009c4c8c8c9660026084005132332259800981900144c966002608c0031330343758608a00244b300100280244cc084c11c0084c004c12000904545904318209baa0038acc004c0c400a264b3001304600189981a1bac304500122598008014012266042608e004260026090004822a2c8218c104dd5001c5660026072005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130300028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b208630413754007159800981780144c966002608c0031330343758608a00244b300100280244cc088c11c0084c004c12000904545904318209baa0038acc004c0b800a264b3001304600189981a1bac304500122598008014012266044608e004260026090004822a2c8218c104dd5001c566002605a005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130080028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b2086304137540071640fc81f903f207e40fc81f903f207e303e3754002264b300130310018992cc004c11400626604c608800200f16410860806ea800e2b300130300018992cc004c114006264b3001303330413754003132323259800982480144cc0acc12000c4cc0ac00402e2c8230c11c004c11c004c108dd5000c590401822000c5904218201baa0038b207c40f8607c6ea8008c10400e2c81f8c100004c100004c0ecdd5009c59039099816009912cc00400a33001303f303c3754606060786ea806e45300132330010010032259800800c528456600266ebcc10cc100dd5182198201baa30343040375460860026054660846ea400d2f5c114a3133002002304400140f8820a94294503c488c8cc00400400c896600200314bd7044cc896600266ebcc114c108dd5182298211baa3036304237540046058660886ea40152f5c113304400233004004001899802002000a0803043001304400141052302d303c37546080646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001303230413754608a0074a14a2820226608930014a14c103d87a8000a60103d87980004100660886e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11c00400e29462660040046090002821104544cc112600294298103d87a8000a60103d87980004100660886e9c0092f5c11330449800a51a60103d87a8000a60103d87980004100660886e9ccc110dd400080125eb8104020803758608660880026eb4c10c008cc008008c10c00504048896600200514c103d87a80008acc004c0c00062606466082608400497ae08cc00400e6086005337000029000a00640f482024464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208489980280298240022084375c60820026eacc108004c1100050420a5eb7bdb1826e012002911194c0040060090034004444b30010028acc00400629462941043456600200314a11598009980218228011bad30450018cc00400e608c0053046001400d14a0820104320869b81480024608060826082608200322598009817981e9baa002899192cc004c11000a0071641046eb4c108004c0f8dd500145903c48c100c104c104c104c1040064608060826082608260826082608260826082003222329800800c01200680088896600200510018cc00400e608c005330043045002001400c821a4466e0ccdc10011bad3033303e37540026eb4c0c8c0f8dd5000cdc424001371e911045553447200912cc004c0bcc0f4dd500144c8c8c8ca6002608a003304500398228012444b3001304900489981418240038998128010992cc004c0dc0062646644b3001304d0018991919912cc004c14400e0211641386eb8c138004dd7182700118270009bac304c0018b2094375a60940026096002608c6ea800a2b3001303600189919912cc004c134006264646644b3001305100380845904e1bae304e001375c609c004609c0026eb0c1300062c8250dd69825000982580098231baa0028acc004c0f8006264653001375a6096003304c0019bad304b002488966002609e005132323322598009829801c04a2c8280dd718280009bae305000230500013758609c005164130304b00130463754005159800981a800c4c8cc8966002609a003132323322598009828801c0422c8270dd718270009bae304e002304e001375860980031641286eb4c128004c12c004c118dd50014566002606800313232598009826001402e2c8248dd6982500098231baa0028acc004c0cc006264646644b3001304e003806c5904b1bad304b001375a60960046096002608c6ea800a2b30013032001899192cc004c13000a0171641246eb4c128004c118dd50014566002601a00313232598009826001402e2c8248dd6982500098231baa0028b20884110822104420884110822104418221baa0018b208c182280098220009821800981f1baa0028b20789119813801119baf3042303f37540026e9c0092222222222222222222980098271baa0139112cc004c04c00a2653001001802400e90002002222259800801c56600200510018b20ae8cc00401260b4007305a00299912cc004c01c00a266e0000cdd69826182c1baa0028b20ac3059003375a60b200480210574590504c03c03e44b30010018a40011300f33002002305500141492259800800c520008980799801001182a800a0a491119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c82b226600a00a60b800882b0dd7182a8009bad3056001305800141586602400800629000496600266e20005200089806000c400504e489660020031480022601e6600400460aa002829246022003223259800982518289baa001899198030008acc004cdd7980718299baa00330563053375400915980099baf30473053375400260ac60a66ea800e200316414516414460aa60a46ea80062c8280c118c144dd5182298289baa0024888888888a6002600e00f3006006912cc004cdc4000a400114c0103d87a8000899805001000a0b29801801a4444646644b300130510118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac3057306337540053758609c60c66ea80052225980099b87300c003300c0068acc004c03c00a33001003801488c96600260b460d06ea800626464b3001305c306a37540031323298009980f804000cdd6181318369baa0049bad307000248896600260c260de6ea800e2b30013371264664466e0ccdc019b80337040026eb4c1a0c1ccdd5001801240020046eb4c194c1c4dd50009bad30653071375401060e660e06ea800e60026eacc190c1c0dd5183218381baa00a9bae30730029bae30733074002407115980099b87001375a60c860e06ea801e266ebcdd3802181498381baa0078a5041b914a083722c83706eb0c1bcc1c0004c1acdd5000c52820d2305f306a37546602400800260d860d26ea80062c8338cc03402000502345906445906422b300198009bac3058306337540b50039bac30663063375400533065305730633754603660c66ea8004cc195301054455534472004bd702008899b879800800c16a90004dd6982c18319baa0029bad301e30633754005003401530010039bac30663063375400523019375a60b060c86ea800501345906145906145906122b300130500118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac30573063375400533065305730633754603660c66ea8004cc195301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c168c1a0dd5000c4c8c96600260b660d46ea800626464b3001337120033001375660c260da6ea8c184c1b4dd5003cdd718380044dd71838183880420328acc004cdc380098149bad3061306d375400913375e60e060e2004604c60da6ea8012294106b452820d6375a60de00260d66ea80062941069182f98351baa33012004001306c3069375400316419c6601a010002811a2c83222c8321159800cc004dd6182c18319baa05a9bac3066306337540053758609c60c66ea80052225980099b87300d002300c0068cc00401a005223259800982d18341baa0018cc004c1b0c1a4dd5000cdd6181118349baa0039980d8021bac3022306937540069112cc004c174c1acdd5000c56600266ebcc1bcc1b0dd5001983798361baa306f306c375400d15980099baf3061306c375400660c060d86ea8c1bcc1b0dd500344cdc3cc004dd5983018361baa0039bae306f0029bae306f3070002406066044602e6eb4c180c1b0dd5003183798361baa0018a5041a914a083522c835116419c6601a00a002811a2c832113370f300100182d520009bad305830633754005375a603c60c66ea800a006802a6002007375860cc60c66ea800a466e20dd6982c18321baa001480010134590614590614590612264b3001304d0128cc004dd6183218309baa025983218309baa040982a98309baa0424889660026604e6eb0c19cc190dd502d9bae301f30643754603860c86ea80062b300133225980099b87300c002300c0058acc004c03c00633001002800c88c96600260b460d06ea800626644b30013063306a37540031323301f00115980099baf3027306c375400660de60d86ea801a2b30013375e60c060d86ea8004c1bcc1b0dd5001c4c96600260b260d86ea8006266e1cdd6983818369baa001375a60c260da6ea8012294106b183098361baa0018b20d48b20d4306e306b37540031641a460d860d26ea8004c178c1a4dd5182e98349baa0038b20ce3300d007001408d1641911641906604c6eb0c19cc190dd502d9bae305930643754603860c86ea8004dd6182c18321baa0028acc00660026eb0c164c190dd502dc00e6eb0c19cc190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd70200a8cc004dd6982c98321baa0029bad301f306437540059800801cdd6183398321baa0029180d1bad30593065375400280a2660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641891641888acc004c0a004a33001375860c860c26ea809660c860c26ea810260aa60c26ea810922259800998139bac3067306437540b66eb8c07cc190dd5180e18321baa0018acc00660026604c6eb0c19cc190dd502d9bae305930643754603860c86ea80066eb0c160c190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c16cc1a4dd5000c4cc896600260c860d66ea8006264660400022b30013375e605060da6ea800cc1c0c1b4dd5003456600266ebcc184c1b4dd5000983818369baa0038992cc004c0d4c1b4dd5000c4c96600266e2400660026eacc18cc1bcdd5183198379baa0089bae30720099bae30723073009406d13370e00260566eb4c18cc1bcdd5002c52820da375a60e260dc6ea8006294106c183118369baa0018b20d68b20d6306f306c37540031641a860da60d46ea8004c17cc1a8dd5182f18351baa0038b20d03300e00800140911641951641948cc004dd6982c98321baa0029bad301f306437540059800801d2000912cc004cdc41bad305a30663754004900044cdc00009bad305a3066375400516419080da660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641888a50417c82f888c8cc00400400c896600200314a315980098019833800c4cc008008c1a0006294106220ca417882f0888888cc88ca60026eacc1a8c1ac00664660020026eb0c14cc1a0dd5005112cc004006297ae0899835983618349baa306c00133002002306d00141a959800982c1805801c520008acc004c1ac00e264b3001301c375c60ce0031375a60d000316419860d40071641a08329222598009919800800802112cc0040062946264664466446600400400244b30010018801c4c8cc89660026600a00a60f000915980099b8f007489008a518991919800800807112cc00400629422b30013375e60f40026e9c00e294626600400460f600283a90781983b1ba900733076375200497ae041c914a08390dd718388009bad3072001307400141c86eacc1bc00cdd718360009980180198388011837800a0da8acc004cdc399b81375a60da60d46ea8c1b4010dd6983698351baa306d0050018992cc004cdc3cc004dd6182b18359baa00da400122332259800cc004c18000694294506d44c96600266e24cc0980040166002013375c60e6007375c60e660e800680e2266e000100062c8370cdc1000802c400d06d1bac3070306d375400465300100ba4001225980099baf3029307037540046e9c00e266e00004dd6983218381baa0028800a0dc40946eb0c1c0c1b4dd500120443370200401710028b20d259800980f8054520018a400483422c83422c834060d4002660466eacc074c190dd50029bae305830643754603860c86ea801a600200b375c60ce60c86ea8c070c190dd5003400e004803888896600266e1cc024008c02000e33001003801488c96600260ac60c86ea8006264b30013375e60d260cc6ea8004c1a4c198dd5183498331baa0048acc004cdd7982d98331baa001305a3066375460d260cc6ea8012266e1e60026eacc168c198dd5000cdd71834802cdd7182d002a0243011375a60b460cc6ea80122941064452820c830683065375400316418c6601200c00280fa2c83008888c96600260a660c26ea8006264b30013375e60cc60c66ea8c198c18cdd5182b98319baa001304d33065375200a97ae08acc004c14e60026eacc15cc18cdd5182b98319baa001802d220108747265617375727900403d13259800982e18319baa0018991980f8008992cc004c15cc194dd5000c4c96600266ebcc1a8c19cdd5183518339baa001305133069375201297ae08acc004c15e60026eacc16cc19cdd5000c02691108747265617375727900404d13259800983018339baa001899198118008acc004cdd7981218349baa0034c0103d87a800089983580299835800998359ba6329800800cdd5982f18351baa00499198008009bab305f306b375460be60d66ea8024896600200314bd6f7b63044c8cc1bccdd818360009ba63233001001375660dc00444b30010018a5eb7bdb182264660e466ec0c1bc004dd418161bad3070001330030033074002307200141c06600600660e200460de00283690011112cc00400a2003132332298008034c1cc016646600200200a44b300100189983999bb037520086e9800d2f5bded8c113298009bae30710019bab3072001983b0012444b300133720010007133077337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ee880144cc1e0cdd81ba9009374c00200483a0ca6002003008801a002222598008014400626466453001006983f802cc8cc004004014896600200313307f337606ea4010dd4001a5eb7bdb1822653001375c60fa003375a60fc00330820100248896600266e4002000e2661060266ec0dd48041ba80070058acc004cdc7804001c4c96600260e600310028998420099bb037520126ea00040090800119b800070028998418099bb037520066ea0008cc01801800507f20fe184000800a0fc40186eb8c1e0004dd6983c800983d80120f289983b99bb037520066e98008cc01801800507320e6183a000a0e440186eb8c1b0004dd59836800983780120da4bd70459067183598341baa0018b20cc305c3067375400316419516419460d260cc6ea80062c8320cc028dd6182d18329baa00800530673064375400316418860b060c66ea8c15cc18cdd5000c59061459061183298311baa0018b20c033006375860c860c26ea801000844c8cc896600260860031332259800981918201baa002899191919912cc004c12800e264b3001303830463754003132323322598009827801c4c966002607a00313232598009829001403a2c8278dd7182800098261baa0078acc004c0f00062b3001304c375400f00c8b209a8b2094412860946ea801a2c8260dd718260009bae304c002304c00130473754003164114609200b16411c6eb8c11c004c11c008c11c004c118004c104dd500145903f1821000898021821802c590401bae304000130410013758607e00481e8dc3a401d1323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980998109baa00189919912cc004c0a4006264b3001301730253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b0c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0d4024896600200513302701410248992cc004c0dcc114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c04cc084dd5000c4c966002603660446ea8006264b3001301530233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084602e60446ea8c058c088dd5181298111baa0018b20403300a3758602a60426ea80608c8cc004004c00cdd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602460406ea800a2646464b3001302800289980318138018992cc004c0580062b3001302537540050058b204c8acc004c05400626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013010301e3754005132323259800981300144cc024c09400c4c9660026028003132598009814000c4c8c966002602e003132598009815800c4cc038c0a80040262c8140c098dd50014566002602c003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602600315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d1365640081\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n :\n \"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([\n PolicyId,\n ScriptHash,\n ScriptHash,\n ScriptHash,\n ]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n :\n \"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([\n PolicyId,\n ScriptHash,\n ScriptHash,\n ScriptHash,\n ]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n :\n \"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([\n PolicyId,\n ScriptHash,\n ScriptHash,\n ScriptHash,\n ]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolStakeProtocolStakeWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"593b9d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888896600264653001301b001980d980e000cdc3a4009301b0024888966002600460366ea800e33001301f301c37540072302030213021001918101810800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009b80480066e95200248888888888888c8cc88c8c966002003198009112cc004c044c0c0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981c80146600200713259800980b000c566002606c6ea800a00f00640dd159800980a800c4c9660020030078992cc0040060110088044022264b3001303d003805402503a1bae00140f4607400281c0c0d8dd50014566002603800313259800800c01e264b3001303c002804c021039181d000a0703036375400500640cc8199033181a1baa001802a016802a06c802c01600b00540e8606e00281a8c0dc00a007003801c00d038181a800a0663031375400700140b922259800980898181baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130360018acc004cdc4a4008606a0030068992cc004c0ec012264b300130180018acc004c0e0dd5003402601081ca2b300130170018992cc00400601313259800800c02a01500a8992cc004c0fc00e01900b40f06eb400601481f8c0f000503a181c1baa0068acc004c0780062b30013038375400d0098042072804206a40d481a8c0d8dd5002c01d038180a981a800a066803206e3754003005802c01600a81d0c0dc005035181b801400e007003801a070303500140cc60626ea800e0028172444b300130113030375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0ec00e01100740e06eb400600c81d8c0e00050361bae001303700240e0606a0028198c0c4dd5001c00502e4888c966002602400313259800800c00e264b3001001802401200913259800981c801c01a00a81b0dd6800c011039181b000a068303237540091598009808800c56600260646ea801200700240cd00240bc8178c0c0dd5001a44446644b300130143033375400f13259800800c082264b30010018992cc00400604513259800800c4c9660020030248992cc00400604b0258992cc004c0fc00e2b3001301b303a375400d13259800800c09e264b300100181440a226644b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc004006264b300100181ac4c966002003159800982780144cc0b0038896600200513302e00d225980080146600200f19800802c4c9660026060609e6ea8066264b300100181e44c96600200313259800800c0fa264b30010018acc004c16000a26644b300130360018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d029411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606a00313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a052823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b159800981a000c4c9660020030428992cc0040060870438992cc004c17400e26607400244b3001002803c4c96600200319800800c4c008c18000e08e814a08f047823c11d061182f00120b882220b43758003043821a0ba305a001416060ac6ea80162b300130330018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d02a411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606400313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a054823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0c4006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b15980099b8748038006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b041414c829905320a6414c829905320a613259800981a800c4c9660020030418992cc0040062b3001305b0028cc004006011042409d0424161042821410a08482e0c164005057182a9baa0028acc004c0d0006264b3001001820c4c966002003159800982d8014566002606e60ac6ea8006264b3001001821c4c96600200313259800800c116264b30010018acc004c17c00a330010038cc00400601904640b104640b10464171046823411a08c8300c17400505b182e801411208904482220bc305b001416460ae6ea800608482a208482c2085042821410905c182c800a0ae3055375400504041488290c14cdd500098299baa00381fa0aa81fc0fe07f03f416460ac00282a0c15800a07b03d81ec0f5057182a000a0a43050375403303b413426606002a44b30010028cc004c150c144dd5181998289baa024914c004c8cc00400400c896600200314a115980099baf30583055375460b060aa6ea8c0dcc154dd5182c00098169982b9ba90034bd704528c4cc008008c16400505220aca50a51414123055305630563056305630563056305630560019181898289baa305532330010010022259800800c52f5c303d87a80008101800044c8cc8966003300130363056375460b40074a14a282a22660b330014a14c103d87a8000a60103d87980004150660b26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17000400e294626600400460ba00282b105a44cc166600294298103d87a8000a60103d87980004150660b26e9c0092f5c11330599800a51a60103d87a8000a60103d87980004150660b26e9ccc164dd400080125eb8105420a8375860b060b20026eb4c160008cc008008c16000505548c154c158c158c158c158006444b30010028a6103d87a80008acc004c0d00062605c660ac60ae00497ae08cc00400e60b0005302d001400c82890554888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd6982c000982d000a0b03232330010010062259800800c00e2646644b30013372201200515980099b8f0090028800c01905844cc014014c17c0110581bae3058001375660b200260b600282c852f5bded8c029000488966002606860a66ea800e264b300100180144c966002003003801c00e264b3001305b003802c0110581bad001801a0b63058001415860a86ea800e002828a44646600200200644b30010018a5eb8226644b30013375e60b460ae6ea8c168c15cdd5181c982b9baa002302f33059375200a97ae089982c80119802002000c4cc010010005054182c000982c800a0ac9182a982b182b182b182b182b000c8c154c158c158c15800644b30010018a4001133700900119801001182b800a0a8911194c0040060090034004444b30010028acc00400629462941058456600200314a115980099802182d0011bad305a0018cc00400e60b6005305b001400d14a082a105820b09112cc004c0d0c14cdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983000146600200f19800802c4c966002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981e000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c19c00e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b000e02d01541a46eb800506c1834800a0ce375c00260d00048348c19800506440410641bac001807c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002608600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b3001306a0038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001306f00380cc06106c1bae00141bc60d80028350dd7000983580120d83069001419d013419c6eb000602501241a860ce0028328dd68009833001403d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981d000c4c96600200300b8992cc00400601900c80644c96600260c800700e806a0c2375a00300c419060c200282f8c174dd50024566002607200313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009833801c0460208320dd6800c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607000313259800800c02e264b30010018064032019132598009832001c03a01a8308dd6800c0310641830800a0be305d375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001306400380740350611bad00180620c83061001417c60ba6ea801201482d105a20b4416882d105a20b4416860b66ea800e0128172012818a01282e8c17800505c182f001401e00f007803a0be305c001416860b8005005802c01600a82e8c168005058182d001400e007003801a0b63058001415860a86ea800e002828a44b30010018a4001133700900119801001182b800a0a89b89480026e21200048888888888888888a600260c26ea8046444b300130110028994c004006009003a40008008888966002007159800801440062a660ce92112657870656374205b5d203d206c6973745f62001641a9159800801454cc19d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260da007306d00299912cc004c01c00a266e0000cdd6982698359baa0028a99834a4811a6578706563742076616c69646174696f6e287265717565737429001641a060d80066eb4c1b000900420d441a9153306349012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164189300c00c980300348c03c00660060069111111919912cc004c12002633001375860dc60d66ea806a60dc60d66ea80fa609a60d66ea80fd222598009980e1bac3071306e37540a66eb8c1c4c1b8dd5180d98371baa001899912cc004c140c1bcdd5000c4c8cc896600260260051598009809800c566002b300130530018a518980900120e08992cc004c04c0062b300198009980d9bac3077307437540b26eb8c15cc1d0dd51810983a1baa0079bac30563074375401133076305630743754604260e86ea801ccc1d93001054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c168c1e4dd5000c4cc896600260c460f66ea8006264b30010018cc0040062b30013375e60c060fa6ea800cc20004c1f4dd5003456600266ebcc17cc1f4dd5000984000983e9baa0038acc004cdc49bad305f307d37540073001375660be60fa6ea8c17cc1f4dd50034dd7184000803cdd7182f803a04c8992cc004c16cc1f4dd5000c4cdc39bad308101307e37540026eb4c180c1f8dd5002452820f63060307d375400307541e907441e907341e9072407d07283941ca0e4841008c1fcc1f0dd5000c1b1079183e983d1baa001305d307a375460b860f46ea800e0dc83b8cc04403800501a41a907441a507422b300198009bac3057307437540b3375860ee60e86ea8022660ec60ac60e86ea8c084c1d0dd50039983b260106457355534472004bd702444b30013370e6020004602401919800806400a4464b3001305a307937540031325980099baf307e307b375400260fc60f66ea8c1f8c1ecdd5002456600266ebcc178c1ecdd5000982e983d9baa307e307b375400913370f3001375660ba60f66ea80066eb8c1f80166eb8c1740150242cc004c16c02626eb4c174c1ecdd500244cdc199b82375a60ba60f66ea8010024029078452820f08a5041e060fa60f46ea80060e883b8cc04401400501a41c10742264b30013055307437540031325980099b87375a60f200266e000140222b30013370e6eb4c1e4c1e8004cdc0002001c56600266e1e60026eacc084c1d8dd502dcdd7182c183b1baa302330763754013488105735553447200407c0071305698009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d2201045553447200407d1533074491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001641cd15330744914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001641cd153307449140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001641cd3001375860b060ea6ea816a6eb8c068c1d4dd51811183a9baa0089bae305730753754604460ea6ea80226eb4c1e0c1d4dd5000a01683220e4301a307437540111533072491dc6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641c51533072491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001641c51533072491186578706563742073757364725f746f5f6d696e74203e2030001641c4b300130530018802c4cdc199b8200500100241c115330714913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641c11533071491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641c115330714911d657870656374207661756c745f757364725f6265666f7265203e3d2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4b3001300e375a60a260de6ea80062609e6eb4c050c1bcdd5000c52820d8402c603260dc6ea800a0b683591598009823804c660026eb0c1b8c1acdd500d4c1b8c1acdd501f4c134c1acdd501fa444b30013301c375860e260dc6ea814cdd7183898371baa301b306e37540031332259800982818379baa00189919912cc004c04800a2b3001301200189919912cc004c05400a2b300198009980e9bac3079307637540b66eb8c164c1d8dd51811983b1baa0099bac30583076375401533078305830763754604660ec6ea8024cc1e130106457355534472004bd702444b30013370e6028006602801d159800980980146600200700291192cc004c170c1ecdd5000c4cc896600260c860fa6ea8006264b30010018cc0040062b30013375e60c460fe6ea800cc20804c1fcdd5003456600266ebcc184c1fcdd5000984100983f9baa0038acc004cdc49bad3061307f37540073001375660c260fe6ea8c184c1fcdd50034dd7184100803cdd71830803a0508992cc004c170c1fcdd5000c4c96600266e1cdd69842008009bad3063308101375400b13370e6eb4c21004c21404004dd698131840809baa0058a5041f86100026ea8006294107d1831183f9baa00183ba0f883b20f883aa0f883a204283a41d20e907442100461020260fc6ea80060dc83d8c1fcc1f0dd5000982f983e1baa305e307c375400707041e46602602000280e20d883b20d683b115980099b8798009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d220105735553447200407c66e0520000088992cc004c15cc1d8dd5000c4c96600266e1cdd6983d80099b810070048acc004cdc39bad307b307c0013370200c015159800982c4c004dd59811983c1baa05d9bae305a30783754604a60f06ea802e9110455534472004085159800cc004dd6182d983c1baa05d9bac307b307837540193307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b30013370e6028004602c02119800808400a4464b3001305e307d37540031325980099baf308201307f375400261040260fe6ea8c20804c1fcdd5002456600266ebcc188c1fcdd50009830983f9baa308201307f375400913370f3001375660c260fe6ea80066eb8c208040166eb8c18401502819b813370666e08dd69830983f9baa00400e00d375a604860fe6ea8012294107c452820f8308101307e375400307841ec6602a00a00280f20e883c1198009bac305b307837540bb307b307c307c307c307c307c307c307c307c307c307c307837540173307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b3001305b0068a51899b8900632330010010042259800800c52000899912cc004cdd7984100983f9baa002006899b8000198009bab3061307f3754005375c61040200b375c60c200a8142200283e0c20004004cc008008c2040400507e20f0454cc1d9241df6578706563740a2020202076616c69646174655f756e7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641d515330764911765787065637420757364725f6d696e746564203d3d2030001641d51533076491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641d515330764913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001641d53001375860b460ee6ea81726eb8c070c1dcdd51812183b9baa00a9bae305930773754604860ee6ea802a6eb4c1e8c1dcdd5000a01a83320e8301c3076375401515330744912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641cd1533074491a76578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202029001641cd15330744911a65787065637420757364725f746f5f72656c65617365203e2030001641cc6eb4c1dc004dd6983b983c000994c0040060134bd709010000810100002002222598008014400633001003983d0014c8c96600260306eb4c074c1e0dd5001456600266e24dd6980e983c1baa00200189983d1ba8337006eb4c1ec00c004cc1e8dd419b80375a60f660f80066eb4c074c1e0dd500125eb822a660ec92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641d515330764911565787065637420722e666f7266656974203e3d2030001641d466e0ccdc11bad30593077375400200c00a60f20048019077454cc1c52401236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641c115330714911c657870656374207661756c745f757364725f6265666f7265203e2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4601c6eb4c144c1bcdd5000a0163019306e375400505b41ac8a5041a083408888c966002609c60da6ea8006264b30013375e60e460de6ea8c1c8c1bcdd5182898379baa001304733071375200a97ae08acc004c13a60026eacc144c1bcdd5182898379baa001802d2210d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018998399ba898009bab30533071375460a660e26ea800e00d4890455534472004068660e660e860e26ea8004cc1cc00d2f5c10624065062831418a0c483b0c1ccc1c0dd5000c18106d182918379baa3051306f3754003153306d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ac6600a008002444464b3001304e306d37540031325980099baf3072306f375460e460de6ea8004c11ccc1c4dd4802a5eb822b3001304e98009bab3051306f3754003005a4410d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018acc004cdd7980b18389baa0034c103d87a80008998399ba898009bab305330713754007006a4410455534472004068660e660e860e26ea8004cc1cc00d2f5c1153306f490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641b90624065062831418a0c483b0c1ccc1c0dd5000c54cc1b924012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641b460a460de6ea80062a660da92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641ac6600a00800244b300133710002900045300103d87a8000899803001000a0ce2264b300100181ec0f6264b300100181f44c96600200303f81fc0fe07f1332259800800c106264b30010018acc004c16c00a264b300130383057375400513259800800c112264b30010018992cc00400608d13259800800c4c9660020030488992cc004006093049824c126264b300130630038acc004c0fcc178dd500344c96600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f132598009834801c4c966002608c00313259800800c14a264b3001001829c14e0a70538992cc004c1b400e02505441a86eb800506d1835000a0d0306637540171598009822800c56600260cc6ea802e01f051419d051418c8318c190dd500541410661bae00141a460cc0028320dd7000983280120cc3063001418460be6ea801a09482e20948300dd7000a0c63060001417860c0005047823c11e08e8308c17800505c182f001411608b045822a0be305c001416860b06ea800a08682a84c01cc16c02208482c2085042821410905c182c800a0ae375c00260b000482c8c1580050541bac00181ec0f5057182a00120a481d203c81d203c8992cc00400607703b81dc4c8c00cc154010dd6800c0ed055182900120a08992cc00400607303981cc4c8c00cc14c010dd6800c0e50531828001209c81b209881b40da06d0364140609a0028258c13400a06903481a40d104e1825800a092375a0026094005031412c60900028230dd6800982380140b90481822800a0863758002608800502b815a08a304200141006eb0004c10400a0510284108607e00281e8c0ecdd50034099038409903c1bac001812c09503f181e000a074303c002811c08e04702340f4607400281c0c0e800a043021810c08503b181c000a06c3034375400f01f40c4444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608600719800804c6600200900c805a01e805a022805a080375a00300a410c608000281f0c10000a0110088044021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12c00e02901341206eb800504b1824000a08c375c002608e0048240c1140050434039012403901440390431bac001806c0350461821800a0823043002805c02e01700b4110608200281f8dd680098200014021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c880cc06603301940cc664464b30013010302f375400313030323376060680026068606a0026eb0c0ccc0c0dd5000c54cc0b924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b4646600200200644b30010018a60103d87a80008992cc004cdd7981880099ba548010cc0d0c028cc0d0dd480225eb812f5c11300c33034374e66068606200266068606400297ae04bd7044cc00c00cc0d800902f181a000a06437566060606260626062606260626062606260626062605a6ea8048dd7181818169baa0019800912cc004006297ae089981818169818800998010011819000a05e9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003205891111919800800802912cc004006200b13259800800c4cc010c0d800801a26600a606c0046600600600281a0c0d80050334dd6180718161baa01148888c8c8c8cc88c966002003159800980b181a9baa0018992cc00400604713259800800c09204902481244cc89660020030268992cc0040062b3001303f0028acc004c06cc0e8dd5000c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c96600200303b81dc4cc896600200303d8992cc0040062b300130560028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0c8c144dd500344c96600200303f8992cc004006081040820410226644b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4c96600260c400713303f00f225980080146600201f102b826206c8992cc0040062b300130413060375400313259800800c13a264b3001001827c13e26644b3001001828c4c966002003052829414a26644b300100182a44c96600200305582ac156264b3001306e0038acc00401e0ad13259800800c15e0af05782bc4cc89660020030598992cc0040060b505a82d416a264b30013073003898081839808c16d0701bae00141cc60e00028370dd7000983780420e0306d00741ad05641ac6eb40060aa8370c1ac0050691bad001306a00282920d6306800141986eb0004c19c00a09f04f41a060ca0028318c184dd5000c13505e413609b04d826a0cc3063002418504a417c6eb8005062182f800a0ba375c00260bc00482f8c17000505a1bae001305b002417060b200282b8dd7000982c00120b23056001415060a46ea801a07c827a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c829a07d03e81f40f9057182a000a0a4375800260a600503b81da0a83051001413c60a200503981cc0e60728290c13c00504d182780140de06f03781ba0a0304d001412c609a00503581ac0d606a8270c12c005049182580140ce067033819a0983049001411c6092005031818c0c60628250c11c005045182380140be05f02f817a0903045001410c608a00502d816c0b605a8230c10c005041182180140ae05702b815a088304100140fc6082005029814c0a60528210c0fc00503d181d9baa001813a070813a078813c09e04f0274100607a00281d8dd7000981e001207a303a00140e0606c6ea8006044819a045022811408903b29981999b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40c522010013259800980b181a9baa00189929981a99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980f181b9baa0018992cc0040062b300130193038375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098210014401a07281f8c10000503e1bae001303f0024100607a00281d8c0e4dd5000c0d103640d206903481a207c303b30383754003153303649013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640d46034606e6ea8c064c0dcdd5000981c981b1baa0018a9981a24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640cc646600200200e44b30010018a60103d87a80008992cc004c8cc004004c014dd5980d981c9baa301b3039375400444b30010018a508acc004cdc79bae303d0010368a51899801001181f000a06e40ed130123303a0014bd7044cc00c00cc0f0009035181d000a070300100130070072223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20765980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81a90351bac3038002375a606c0026466ec0dd4181b0009ba73037001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6076003337149101023a200098008054c0f000600a805100a181f00144ca6002015303b00199b8a489023a200098008054c0f0006600e66008008004805100a181f0012078303e00140ec66e29220102207d0000340e06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920703758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40e866e2ccdc0000acc004cdc4000a4029148182290372074004401866e0c00520203370c002901019b8e00400240dc6eb800d03b1b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c88190c00c00c444b3001300d302c375400713259800800c00a264b30010018992cc00400600913259800800c566002606a00519800801c4c966002602400313259800800c01e264b30010018acc004c0e000a264b300130150018992cc00400601513259800800c566002607600519800800c032016807201681c201700b805c02d03c181c800a06e30353754005159800980a000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026084007013809207e375a0030114108607e00281e8dd6800981f001403903f181e000a074375a002607600500b40f0607200281b8c0d4dd5001402503220643033375400300840d5008804402201081c8c0d800503418191baa0028acc004c0440062b3001303237540050078032066803205e40bc60606ea800600a804200a819200b005802c0150361819800a0623033002801c00e00700340d060620028178c0b4dd5001c00502a111194c004006009003400444464b300130110018992cc00400600d13259800800c01e00f007803c4c9660026070007005804206a375c00281c0c0d400503318189baa0038acc004c040006264b300100180344c966002003007803c4c96600260700071330150012259800801401e264b30010018cc00402a00313002303b003402900b805c02e01681e0c0e400903740210351bac001803c01d038181a800a06630313754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0e000e26602a00244b3001002803c4c966002003198008054006260046076006805201700b805c02d03c181c801206e804206a3758003007803a070303500140cc60626ea800e2b3001300f0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d801c4cc060004896600200500a8992cc0040063300100d800c4c008c0f800d00d403a01d00e807207e303c00240e900b40e06eb000601500a40ec607000281b0dd6800981b801401d038181a800a066303137540071598009807000c4c9660020030068992cc00400600f007803c4c9660026070007005804206a375a00300740e0606a0028198c0c4dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981c001c01601081a8dd6800c01d038181a800a066303137540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013038003802c0210351bae00140e0606a0028198c0c4dd5001c01502e205c40b8817102e205c40b8605e6ea8008888c966002601a00313259800800c00e264b300100180240120090048992cc004c0d000e00d00540c46eb80050341818800a05e302d37540091598009806000c4c9660020030038992cc0040060090048024012264b3001303400380340150311bae00140d060620028178c0b4dd5002400902a2054302b37540068b2032180d800980b1baa01c8a4d15330144911856616c696461746f722072657475726e65642066616c73650013656404c1\"\n :\n \"591d0b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009ba5480092222222222229800911192cc004c03000626464b3001302000280245901d1bae301e001301a37540071598009805800c4c966002603e00313300e3758603c00244b3001002802c6600200f3020002898009810801200e407916407060346ea800e2b300130120018992cc004c07c00626601c6eb0c07800489660020050058cc00401e6040005130013021002401c80f22c80e0c068dd5001c56600260140031323322598009810800c4cc040dd61810000912cc00400a00f19800804cc08800a260026046004804902045901e1bad301e001301f001301a37540071598009804800c4c8c96600260400050048b203a375a603c00260346ea800e2b30013008001899192cc004c08000a0091640746eb4c078004c068dd5001c566002600e0031323259800981000140122c80e8dd7180f000980d1baa0038b2030406080c10182030406080c0c060dd5001488c96600260160031323259800980f80140122c80e0dd7180e800980c9baa0038acc004c02800626464b3001301f00280245901c1bae301d0013019375400716405c80b8c05cdd5001489660026014602e6ea800a2646464b3001301f002899192cc004c03c0062b3001301d37540050068b203c8acc004c03800626464b300130230028044590201bad3021001301d3754005159800980a800c566002603a6ea800a00d16407916406c80d901b180d9baa001301e0038b20383259800980d800c56600266e252004301a0018b44c030c06800501945901c1baa301d001301d0013018375400516405922598009805180b9baa0028991919912cc004c08000e00b1640746eb4c074004dd7180e801180e800980c1baa0028b202c91192cc004c02c00626464b3001301f00280245901c1bad301d001301937540071598009805000c56600260326ea800e00516406916405c80b8c05cdd500124444466446645300133223259800980a18109baa001898111919bb03026001302630270013758604a60446ea80062c8100c8cc00400400c896600200314c103d87a80008992cc004cdd7981180099ba548010cc098c03ccc098dd480225eb812f5c11301033026374e6604c60460026604c604800297ae04bd7044cc00c00cc0a00090221813000a04837566044604660466046604660466046604660466046603e6ea8058dd71811180f9baa002912cc004c04cc080dd500144c8c8c8ca60026eb4c0a00066eb4c0a000e60500049112cc004c0b0012266014605600e26601e0020111640a43028001302700130260013021375400516407d2259800980998101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc0440044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80f922259800980a18109baa003899191919912cc004c0ac00e264b3001301a30273754003132323232323298009818800cdd61818802cdd698188024dd69818801cc0c40092222259800981b80344cc098dd6181b005912cc00400a26605000c44b300100289980e80289980e8048992cc004c0a8c0dcdd500944c8c8c966002607e005132332259800981800144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038acc004c0bc00a264b300130430018998191bac304200122598008014012266040608800426002608a00482122c8200c0f8dd5001c566002606c005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b3001302e0028992cc004c10c0062660646eb0c1080048966002005004899810182200109800982280120848b2080303e3754007159800981680144c96600260860031330323758608400244b300100280244cc084c1100084c004c114009042459040181f1baa0038acc004c0b000a264b300130430018998191bac304200122598008014012266042608800426002608a00482122c8200c0f8dd5001c5660026056005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b30013370e900700144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038b207840f081e103c207840f081e103c181d9baa001132598009817800c4c966002608400313302530410010078b207e303d37540071598009817000c4c9660026084003132598009818981f1baa00189919192cc004c11800a266054608a00626605400201716410c60880026088002607e6ea80062c81e8c1040062c81f8c0f4dd5001c5903b2076303b3754004607c0071640f0607a002607a00260706ea804a2c81b04cc0a8048896600200519800981e181c9baa302d303937540352298009919800800801912cc00400629422b30013375e6080607a6ea8c100c0f4dd51818981e9baa304000130283303f375200697ae08a518998010011820800a07640f94a14a281ca4607a607c607c607c607c607c607c607c607c0032302b30393754607a646600200200444b30010018a5eb8503d87a80008101800044c8cc896600330013030303e375460840074a14a281ea26608330014a14c103d87a8000a60103d879800040f4660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f904244cc106600294298103d87a8000a60103d879800040f4660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f4660826e9ccc104dd400080125eb8103d207a3758608060820026eb4c100008cc008008c10000503d48c0f4c0f8c0f8c0f8c0f8006444b30010028a6103d87a80008acc004c0b8006260506607c607e00497ae08cc00400e6080005337000029000a00640e881ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208089980280298230022080375c607e0026eb4c100004c108005040191919800800803112cc00400600713233225980099b910090028acc004cdc78048014400600c820a26600a00a608e0088208dd718200009bab304100130430014104297adef6c6014800244b3001302d303a375400513232598009820801400e2c81f0dd6981f800981d9baa0028b2072911919800800801912cc004006297ae0899912cc004cdd79821181f9baa3042303f37546066607e6ea8008c0a8cc104dd4802a5eb822660820046600800800313300400400140f46080002608200281f24607a607c607c607c607c607c0032303d303e303e303e001912cc0040062900044cdc02400466004004607e00281e2444653001001802400d0011112cc00400a2b30010018a518a504101159800800c52845660026600860840046eb4c1080063300100398218014c10c0050034528207a4100820244b3001302d303a375400513232323298009821000cc10800e60840049112cc004c11801226604e608a00e266048004264b3001303500189919912cc004c128006264646644b3001304e00380845904b1bae304b001375c609600460960026eb0c1240062c8238dd69823800982400098219baa0028acc004c0d00062646644b3001304a0018991919912cc004c13800e02116412c6eb8c12c004dd7182580118258009bac30490018b208e375a608e002609000260866ea800a2b3001303b001899194c004dd69824000cc1240066eb4c12000922259800982600144c8c8cc896600260a00070128b209a375c609a0026eb8c134008c134004dd618258014590490c120004c10cdd5001456600260660031323322598009825000c4c8c8cc8966002609c0070108b2096375c60960026eb8c12c008c12c004dd61824800c590471bad30470013048001304337540051598009819000c4c8c966002609200500b8b208c375a608e00260866ea800a2b300130310018991919912cc004c12c00e01b1641206eb4c120004dd69824001182400098219baa0028acc004c0c000626464b30013049002805c590461bad30470013043375400515980099b874803800626464b30013049002805c590461bad304700130433754005164104820904120824104820904120823041375400316410c304200130410013040001303b37540051640e52259800800c52000899b8048008cc008008c0fc00503c4dc4a40013710900024444444444444444530013049375402322259800980880144ca6002003004801d200040044444b30010038acc00400a2003164149198008024c15400e60aa005332259800980380144cdc00019bad30473053375400516414460a80066eb4c15000900420a48b209698060064c01801a4601e00330030034888888c8cc89660026084013198009bac30563053375403530563053375406930473053375406c9112cc004cc070dd6182c982b1baa04d375c60b260ac6ea8c06cc158dd5000c4cc8966002609460ae6ea80062646644b300130130028acc004c04c0062b3001598009826800c528c4c04800905944c9660026026003159800cc004cc06cdd6182f982e1baa053375c60a260b86ea8c084c170dd5003cdd61828182e1baa0089982f1828182e1baa3021305c375400e660bc9801054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c150c184dd5000c4cc896600260b860c66ea80062646603e0022b30013375e60b460ca6ea800cc1a0c194dd5003456600266ebcc164c194dd5000983418329baa0038acc004cdc49bad3059306537540073001375660b260ca6ea8c164c194dd50034dd71834003cdd7182c803a04c8992cc004c154c194dd5000c4cdc39bad3069306637540026eb4c168c198dd5002452820c8305a3065375400316418d16418d16418c60ce60c86ea80062c8310c194c188dd5000982b98311baa3056306237540071641806602201c00280d22c82ea2c82e9159800cc004dd61828982e1baa0539bac305f305c37540113305e3050305c3754604260b86ea801ccc17930106457355534472004bd702444b30013370e6020004602401919800806400a4464b30013054306137540031325980099baf30663063375400260cc60c66ea8c198c18cdd5002456600266ebcc160c18cdd5000982b98319baa30663063375400913370f3001375660ae60c66ea80066eb8c1980166eb8c15c0150242cc004c15402626eb4c15cc18cdd500244cdc199b82375a60ae60c66ea8010024029061452820c28a50418460ca60c46ea80062c8300cc04401400501a45905d2264b3001304f305c37540031325980099b87375a60c200266e000140222b30013370e6eb4c184c188004cdc0002001c56600266e1e60026eacc084c178dd502acdd71829182f1baa3023305e3754013488105735553447200407c0071305098009bab3021305e37540ab375c60a460bc6ea8c08cc178dd5004d2201045553447200407d1641711641711641713001375860a460ba6ea81526eb8c068c174dd51811182e9baa0089bae3051305d3754604460ba6ea80226eb4c180c174dd5000a0168b20b6301a305c3754011164169164169164168b3001304d0018802c4cdc199b8200500100241651641651641651641646eb4c170004dd6982e182e800cc004dd6182d982c1baa04f9bae301530583754603a60b06ea800e6eb8c130c160dd5180e982c1baa0039bad305b30583754002803a2c82b26002007375860b260ac6ea800a4b3001300e375a609660ae6ea8006260926eb4c050c15cdd5000c52820aa402c603260ac6ea800a2c82a11598009820804c660026eb0c158c14cdd500d4c158c14cdd501a4c11cc14cdd501b2444b30013301c375860b260ac6ea8134dd7182c982b1baa301b3056375400313322598009825182b9baa00189919912cc004c04800a2b30013012001899192cc004c0500062b300198009980e1bac3060305d37540a86eb8c148c174dd51811182e9baa0089bac3051305d37540133305f3051305d3754604460ba6ea8020cc17d300106457355534472004bd702444b30013370e6026006602601b159800980900146600200700291192cc004c154c188dd5000c4cc896600260ba60c86ea8006264660400022b30013375e60b660cc6ea800cc1a4c198dd5003456600266ebcc168c198dd5000983498331baa0038acc004cdc49bad305a306637540073001375660b460cc6ea8c168c198dd50034dd71834803cdd7182d003a04e8992cc004c154c198dd5000c4c96600266e1cdd698358009bad305c3068375400b13370e6eb4c1acc1b0004dd6981298341baa0058a50419860ce6ea80062941065182d98331baa0018b20c88b20c88b20c830683065375400316418c60cc60c66ea8004c160c18cdd5182b98319baa0038b20c23301200f001406d1641791641788acc004cdc3cc004dd59810182e9baa0549bae3051305d3754604460ba6ea8022910105735553447200407866e0520000078992cc004c140c174dd5000c4c96600266e1cdd6983100099b810060038acc004cdc39bad306230630013370200a0131598009828cc004dd59811182f9baa0569bae3053305f3754604860be6ea802a9110455534472004081159800cc004dd6182a182f9baa0569bac3062305f3754017330613053305f3754604860be6ea8028cc185301054455534472004bd702444b30013370e6026004602a01f19800807c00a4464b30013057306437540031325980099baf30693066375400260d260cc6ea8c1a4c198dd5002456600266ebcc16cc198dd5000982d18331baa30693066375400913370f3001375660b460cc6ea80066eb8c1a40166eb8c16801502719b813370666e08dd6982d18331baa00400d00c375a604660cc6ea80122941064452820c830683065375400316418c6602800a00280ea2c8301198009bac3054305f37540ad30623063306330633063306330633063306330633063305f3754015330613053305f3754604860be6ea8028cc185301054455534472004bd704dd69831183180224444b300130550018a51899b8900132330010010052259800800c52000899912cc004cdd7983518339baa002007899b8000198009bab305b30673754005375c60d400d375c60b600c814220028328c1a0004cc008008c1a400506620c245905d45905d45905d45905d4c004dd61829982f1baa0559bae301b305e3754604660bc6ea80266eb8c148c178dd51811982f1baa0099bad3061305e375400280622c82e0c06cc174dd5004c5905b45905b45905b1bad305f001329800800c02697ae1101000081010000200222259800801440063300100398310014c8c96600260306eb4c074c180dd5001456600266e24dd6980e98301baa0020018998311ba8337006eb4c18c00c004cc188dd419b80375a60c660c80066eb4c074c180dd500125eb822c82f22c82f0cdc199b82375a60a660be6ea8004018014c18400900320be8b20b28b20b2375a60b80026eb4c170c17400660026eb0c16cc160dd5027cdd7180a982c1baa301d30583754007375c609860b06ea8c074c160dd5001cdd6982d982c1baa001401d16415930010039bac3059305637540052300e375a609660ae6ea800500b180c982b1baa0028b20a8452820a24144444464b30013048305537540031325980099baf305a3057375460b460ae6ea8c12cc15cdd500098211982c9ba90054bd704566002609130013756609660ae6ea8c12cc15cdd5000c01691010d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c80089982d9ba898009bab304d30593754609a60b26ea800e00d48810455534472004068660b660b860b26ea8004cc16c00d2f5c060b660b06ea80062c82b0c130c15cdd51825982b9baa0018b20aa8b20aa3059305637540031641506600a008002444464b30013048305537540031325980099baf305a3057375460b460ae6ea8004c108cc164dd4802a5eb822b3001304898009bab304b30573754003005a450d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c8008acc004cdd7980b182c9baa0034c0103d87a800089982d9ba898009bab304d30593754007006a4410455534472004068660b660b860b26ea8004cc16c00d2f5c116415c60b660b06ea80062c82b0c130c15cdd5000c59055459055182c982b1baa0018b20a833005004001225980099b8800148002298103d87a8000899803001000a0a022646644b30013040001899912cc004c0c0c0f4dd500144c8c8c8cc8966002608e00713259800981b18219baa0018991919912cc004c13000e264b3001303b001899192cc004c13c00a01d1641306eb8c134004c124dd5003c566002607400315980098249baa00780645904a459047208e3047375400d1641246eb8c124004dd71824801182480098221baa0018b208430460058b2088375c6088002608800460880026086002607c6ea800a2c81e0c0fc0044c010c1000162c81e8dd7181e800981f0009bac303c00240e91323002303c003375a607400481c2264600460740066eb4c0e00090364590340c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815002c590281bac302800130280023028001302700130223754007164080323232598009809180f9baa00189919912cc004c09c006264b30013016302337540031323232323232323232323298009819000cc0c802a606401330320089819003cc0c801a606400b30320049819001cdd6181900124444444444b3001303d00b89980f181e00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0acc0e0dd500144c8c8c8ca60026eb8c1000066eb8c1000126eb8c10000e6eb8c1000092222598009822802c4cc0d0024896600200513302701410248992cc004c0d8c10cdd5000c4c8c8c8cc8966002609a007132323322598009828801c4c02cc1440322c8270dd718270009bae304e002304e0013758609800b1641286eb4c128004dd698250011825000982480098221baa0018b2084304600241111641083040001303f001303e001303937540051640dd1640e8303200130310013030001302f001302e001302d001302c001302b001302a001302900130243754003164088604c0031640906eb8c090004c094004c080dd5000c5901e192cc004c048c07cdd5000c4c966002603260406ea8006264b3001301430213754003132323322598009815001c40162c8138c09c004dd71813801181380098111baa0018b204030243021375400316407c602a60406ea8c050c080dd5181198101baa0018b203c32330010013758602860406ea805c896600200314c0103d87a80008992cc004c8cc004004c014dd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a04440951300e330240014bd7044cc00c00cc0980090201812000a04430010012259800800c52f5c1133021301e3022001330020023023001408044b30013011301e3754005132323259800981300144cc018c09400c4c966002602a00315980098119baa002802c590244566002602800313232598009814801401e2c8130dd7181380098119baa0028acc004c06c00626464b30013029002803c59026181380098119baa0028b204240848108c084dd5000c5902318120009812000980f9baa0028b203a300500522598009807980e1baa00289919192cc004c09000a2660126046006264b300130130018992cc004c09800626464b300130160018992cc004c0a400626601c605000201316409860486ea800a2b3001301500189919194c004dd69815000cdd69815001cdd698150012444b3001302e00480745902b0c0a8004c0a4004c090dd5001459022204430223754002604a00316408c60426ea800a2b300130120018acc004c084dd500140162c81122c80f901f180f9baa0018b204230220013022001301d375400516406c4590080c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolStakeProtocolStakeElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"593b9d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888896600264653001301b001980d980e000cdc3a4009301b0024888966002600460366ea800e33001301f301c37540072302030213021001918101810800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009b80480066e95200248888888888888c8cc88c8c966002003198009112cc004c044c0c0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981c80146600200713259800980b000c566002606c6ea800a00f00640dd159800980a800c4c9660020030078992cc0040060110088044022264b3001303d003805402503a1bae00140f4607400281c0c0d8dd50014566002603800313259800800c01e264b3001303c002804c021039181d000a0703036375400500640cc8199033181a1baa001802a016802a06c802c01600b00540e8606e00281a8c0dc00a007003801c00d038181a800a0663031375400700140b922259800980898181baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130360018acc004cdc4a4008606a0030068992cc004c0ec012264b300130180018acc004c0e0dd5003402601081ca2b300130170018992cc00400601313259800800c02a01500a8992cc004c0fc00e01900b40f06eb400601481f8c0f000503a181c1baa0068acc004c0780062b30013038375400d0098042072804206a40d481a8c0d8dd5002c01d038180a981a800a066803206e3754003005802c01600a81d0c0dc005035181b801400e007003801a070303500140cc60626ea800e0028172444b300130113030375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0ec00e01100740e06eb400600c81d8c0e00050361bae001303700240e0606a0028198c0c4dd5001c00502e4888c966002602400313259800800c00e264b3001001802401200913259800981c801c01a00a81b0dd6800c011039181b000a068303237540091598009808800c56600260646ea801200700240cd00240bc8178c0c0dd5001a44446644b300130143033375400f13259800800c082264b30010018992cc00400604513259800800c4c9660020030248992cc00400604b0258992cc004c0fc00e2b3001301b303a375400d13259800800c09e264b300100181440a226644b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc004006264b300100181ac4c966002003159800982780144cc0b0038896600200513302e00d225980080146600200f19800802c4c9660026060609e6ea8066264b300100181e44c96600200313259800800c0fa264b30010018acc004c16000a26644b300130360018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d029411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606a00313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a052823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b159800981a000c4c9660020030428992cc0040060870438992cc004c17400e26607400244b3001002803c4c96600200319800800c4c008c18000e08e814a08f047823c11d061182f00120b882220b43758003043821a0ba305a001416060ac6ea80162b300130330018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d02a411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606400313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a054823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0c4006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b15980099b8748038006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b041414c829905320a6414c829905320a613259800981a800c4c9660020030418992cc0040062b3001305b0028cc004006011042409d0424161042821410a08482e0c164005057182a9baa0028acc004c0d0006264b3001001820c4c966002003159800982d8014566002606e60ac6ea8006264b3001001821c4c96600200313259800800c116264b30010018acc004c17c00a330010038cc00400601904640b104640b10464171046823411a08c8300c17400505b182e801411208904482220bc305b001416460ae6ea800608482a208482c2085042821410905c182c800a0ae3055375400504041488290c14cdd500098299baa00381fa0aa81fc0fe07f03f416460ac00282a0c15800a07b03d81ec0f5057182a000a0a43050375403303b413426606002a44b30010028cc004c150c144dd5181998289baa024914c004c8cc00400400c896600200314a115980099baf30583055375460b060aa6ea8c0dcc154dd5182c00098169982b9ba90034bd704528c4cc008008c16400505220aca50a51414123055305630563056305630563056305630560019181898289baa305532330010010022259800800c52f5c303d87a80008101800044c8cc8966003300130363056375460b40074a14a282a22660b330014a14c103d87a8000a60103d87980004150660b26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17000400e294626600400460ba00282b105a44cc166600294298103d87a8000a60103d87980004150660b26e9c0092f5c11330599800a51a60103d87a8000a60103d87980004150660b26e9ccc164dd400080125eb8105420a8375860b060b20026eb4c160008cc008008c16000505548c154c158c158c158c158006444b30010028a6103d87a80008acc004c0d00062605c660ac60ae00497ae08cc00400e60b0005302d001400c82890554888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd6982c000982d000a0b03232330010010062259800800c00e2646644b30013372201200515980099b8f0090028800c01905844cc014014c17c0110581bae3058001375660b200260b600282c852f5bded8c029000488966002606860a66ea800e264b300100180144c966002003003801c00e264b3001305b003802c0110581bad001801a0b63058001415860a86ea800e002828a44646600200200644b30010018a5eb8226644b30013375e60b460ae6ea8c168c15cdd5181c982b9baa002302f33059375200a97ae089982c80119802002000c4cc010010005054182c000982c800a0ac9182a982b182b182b182b182b000c8c154c158c158c15800644b30010018a4001133700900119801001182b800a0a8911194c0040060090034004444b30010028acc00400629462941058456600200314a115980099802182d0011bad305a0018cc00400e60b6005305b001400d14a082a105820b09112cc004c0d0c14cdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983000146600200f19800802c4c966002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981e000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c19c00e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b000e02d01541a46eb800506c1834800a0ce375c00260d00048348c19800506440410641bac001807c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002608600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b3001306a0038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001306f00380cc06106c1bae00141bc60d80028350dd7000983580120d83069001419d013419c6eb000602501241a860ce0028328dd68009833001403d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981d000c4c96600200300b8992cc00400601900c80644c96600260c800700e806a0c2375a00300c419060c200282f8c174dd50024566002607200313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009833801c0460208320dd6800c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607000313259800800c02e264b30010018064032019132598009832001c03a01a8308dd6800c0310641830800a0be305d375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001306400380740350611bad00180620c83061001417c60ba6ea801201482d105a20b4416882d105a20b4416860b66ea800e0128172012818a01282e8c17800505c182f001401e00f007803a0be305c001416860b8005005802c01600a82e8c168005058182d001400e007003801a0b63058001415860a86ea800e002828a44b30010018a4001133700900119801001182b800a0a89b89480026e21200048888888888888888a600260c26ea8046444b300130110028994c004006009003a40008008888966002007159800801440062a660ce92112657870656374205b5d203d206c6973745f62001641a9159800801454cc19d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260da007306d00299912cc004c01c00a266e0000cdd6982698359baa0028a99834a4811a6578706563742076616c69646174696f6e287265717565737429001641a060d80066eb4c1b000900420d441a9153306349012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164189300c00c980300348c03c00660060069111111919912cc004c12002633001375860dc60d66ea806a60dc60d66ea80fa609a60d66ea80fd222598009980e1bac3071306e37540a66eb8c1c4c1b8dd5180d98371baa001899912cc004c140c1bcdd5000c4c8cc896600260260051598009809800c566002b300130530018a518980900120e08992cc004c04c0062b300198009980d9bac3077307437540b26eb8c15cc1d0dd51810983a1baa0079bac30563074375401133076305630743754604260e86ea801ccc1d93001054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c168c1e4dd5000c4cc896600260c460f66ea8006264b30010018cc0040062b30013375e60c060fa6ea800cc20004c1f4dd5003456600266ebcc17cc1f4dd5000984000983e9baa0038acc004cdc49bad305f307d37540073001375660be60fa6ea8c17cc1f4dd50034dd7184000803cdd7182f803a04c8992cc004c16cc1f4dd5000c4cdc39bad308101307e37540026eb4c180c1f8dd5002452820f63060307d375400307541e907441e907341e9072407d07283941ca0e4841008c1fcc1f0dd5000c1b1079183e983d1baa001305d307a375460b860f46ea800e0dc83b8cc04403800501a41a907441a507422b300198009bac3057307437540b3375860ee60e86ea8022660ec60ac60e86ea8c084c1d0dd50039983b260106457355534472004bd702444b30013370e6020004602401919800806400a4464b3001305a307937540031325980099baf307e307b375400260fc60f66ea8c1f8c1ecdd5002456600266ebcc178c1ecdd5000982e983d9baa307e307b375400913370f3001375660ba60f66ea80066eb8c1f80166eb8c1740150242cc004c16c02626eb4c174c1ecdd500244cdc199b82375a60ba60f66ea8010024029078452820f08a5041e060fa60f46ea80060e883b8cc04401400501a41c10742264b30013055307437540031325980099b87375a60f200266e000140222b30013370e6eb4c1e4c1e8004cdc0002001c56600266e1e60026eacc084c1d8dd502dcdd7182c183b1baa302330763754013488105735553447200407c0071305698009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d2201045553447200407d1533074491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001641cd15330744914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001641cd153307449140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001641cd3001375860b060ea6ea816a6eb8c068c1d4dd51811183a9baa0089bae305730753754604460ea6ea80226eb4c1e0c1d4dd5000a01683220e4301a307437540111533072491dc6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641c51533072491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001641c51533072491186578706563742073757364725f746f5f6d696e74203e2030001641c4b300130530018802c4cdc199b8200500100241c115330714913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641c11533071491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641c115330714911d657870656374207661756c745f757364725f6265666f7265203e3d2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4b3001300e375a60a260de6ea80062609e6eb4c050c1bcdd5000c52820d8402c603260dc6ea800a0b683591598009823804c660026eb0c1b8c1acdd500d4c1b8c1acdd501f4c134c1acdd501fa444b30013301c375860e260dc6ea814cdd7183898371baa301b306e37540031332259800982818379baa00189919912cc004c04800a2b3001301200189919912cc004c05400a2b300198009980e9bac3079307637540b66eb8c164c1d8dd51811983b1baa0099bac30583076375401533078305830763754604660ec6ea8024cc1e130106457355534472004bd702444b30013370e6028006602801d159800980980146600200700291192cc004c170c1ecdd5000c4cc896600260c860fa6ea8006264b30010018cc0040062b30013375e60c460fe6ea800cc20804c1fcdd5003456600266ebcc184c1fcdd5000984100983f9baa0038acc004cdc49bad3061307f37540073001375660c260fe6ea8c184c1fcdd50034dd7184100803cdd71830803a0508992cc004c170c1fcdd5000c4c96600266e1cdd69842008009bad3063308101375400b13370e6eb4c21004c21404004dd698131840809baa0058a5041f86100026ea8006294107d1831183f9baa00183ba0f883b20f883aa0f883a204283a41d20e907442100461020260fc6ea80060dc83d8c1fcc1f0dd5000982f983e1baa305e307c375400707041e46602602000280e20d883b20d683b115980099b8798009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d220105735553447200407c66e0520000088992cc004c15cc1d8dd5000c4c96600266e1cdd6983d80099b810070048acc004cdc39bad307b307c0013370200c015159800982c4c004dd59811983c1baa05d9bae305a30783754604a60f06ea802e9110455534472004085159800cc004dd6182d983c1baa05d9bac307b307837540193307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b30013370e6028004602c02119800808400a4464b3001305e307d37540031325980099baf308201307f375400261040260fe6ea8c20804c1fcdd5002456600266ebcc188c1fcdd50009830983f9baa308201307f375400913370f3001375660c260fe6ea80066eb8c208040166eb8c18401502819b813370666e08dd69830983f9baa00400e00d375a604860fe6ea8012294107c452820f8308101307e375400307841ec6602a00a00280f20e883c1198009bac305b307837540bb307b307c307c307c307c307c307c307c307c307c307c307837540173307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b3001305b0068a51899b8900632330010010042259800800c52000899912cc004cdd7984100983f9baa002006899b8000198009bab3061307f3754005375c61040200b375c60c200a8142200283e0c20004004cc008008c2040400507e20f0454cc1d9241df6578706563740a2020202076616c69646174655f756e7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641d515330764911765787065637420757364725f6d696e746564203d3d2030001641d51533076491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641d515330764913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001641d53001375860b460ee6ea81726eb8c070c1dcdd51812183b9baa00a9bae305930773754604860ee6ea802a6eb4c1e8c1dcdd5000a01a83320e8301c3076375401515330744912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641cd1533074491a76578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202029001641cd15330744911a65787065637420757364725f746f5f72656c65617365203e2030001641cc6eb4c1dc004dd6983b983c000994c0040060134bd709010000810100002002222598008014400633001003983d0014c8c96600260306eb4c074c1e0dd5001456600266e24dd6980e983c1baa00200189983d1ba8337006eb4c1ec00c004cc1e8dd419b80375a60f660f80066eb4c074c1e0dd500125eb822a660ec92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641d515330764911565787065637420722e666f7266656974203e3d2030001641d466e0ccdc11bad30593077375400200c00a60f20048019077454cc1c52401236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641c115330714911c657870656374207661756c745f757364725f6265666f7265203e2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4601c6eb4c144c1bcdd5000a0163019306e375400505b41ac8a5041a083408888c966002609c60da6ea8006264b30013375e60e460de6ea8c1c8c1bcdd5182898379baa001304733071375200a97ae08acc004c13a60026eacc144c1bcdd5182898379baa001802d2210d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018998399ba898009bab30533071375460a660e26ea800e00d4890455534472004068660e660e860e26ea8004cc1cc00d2f5c10624065062831418a0c483b0c1ccc1c0dd5000c18106d182918379baa3051306f3754003153306d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ac6600a008002444464b3001304e306d37540031325980099baf3072306f375460e460de6ea8004c11ccc1c4dd4802a5eb822b3001304e98009bab3051306f3754003005a4410d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018acc004cdd7980b18389baa0034c103d87a80008998399ba898009bab305330713754007006a4410455534472004068660e660e860e26ea8004cc1cc00d2f5c1153306f490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641b90624065062831418a0c483b0c1ccc1c0dd5000c54cc1b924012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641b460a460de6ea80062a660da92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641ac6600a00800244b300133710002900045300103d87a8000899803001000a0ce2264b300100181ec0f6264b300100181f44c96600200303f81fc0fe07f1332259800800c106264b30010018acc004c16c00a264b300130383057375400513259800800c112264b30010018992cc00400608d13259800800c4c9660020030488992cc004006093049824c126264b300130630038acc004c0fcc178dd500344c96600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f132598009834801c4c966002608c00313259800800c14a264b3001001829c14e0a70538992cc004c1b400e02505441a86eb800506d1835000a0d0306637540171598009822800c56600260cc6ea802e01f051419d051418c8318c190dd500541410661bae00141a460cc0028320dd7000983280120cc3063001418460be6ea801a09482e20948300dd7000a0c63060001417860c0005047823c11e08e8308c17800505c182f001411608b045822a0be305c001416860b06ea800a08682a84c01cc16c02208482c2085042821410905c182c800a0ae375c00260b000482c8c1580050541bac00181ec0f5057182a00120a481d203c81d203c8992cc00400607703b81dc4c8c00cc154010dd6800c0ed055182900120a08992cc00400607303981cc4c8c00cc14c010dd6800c0e50531828001209c81b209881b40da06d0364140609a0028258c13400a06903481a40d104e1825800a092375a0026094005031412c60900028230dd6800982380140b90481822800a0863758002608800502b815a08a304200141006eb0004c10400a0510284108607e00281e8c0ecdd50034099038409903c1bac001812c09503f181e000a074303c002811c08e04702340f4607400281c0c0e800a043021810c08503b181c000a06c3034375400f01f40c4444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608600719800804c6600200900c805a01e805a022805a080375a00300a410c608000281f0c10000a0110088044021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12c00e02901341206eb800504b1824000a08c375c002608e0048240c1140050434039012403901440390431bac001806c0350461821800a0823043002805c02e01700b4110608200281f8dd680098200014021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c880cc06603301940cc664464b30013010302f375400313030323376060680026068606a0026eb0c0ccc0c0dd5000c54cc0b924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b4646600200200644b30010018a60103d87a80008992cc004cdd7981880099ba548010cc0d0c028cc0d0dd480225eb812f5c11300c33034374e66068606200266068606400297ae04bd7044cc00c00cc0d800902f181a000a06437566060606260626062606260626062606260626062605a6ea8048dd7181818169baa0019800912cc004006297ae089981818169818800998010011819000a05e9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003205891111919800800802912cc004006200b13259800800c4cc010c0d800801a26600a606c0046600600600281a0c0d80050334dd6180718161baa01148888c8c8c8cc88c966002003159800980b181a9baa0018992cc00400604713259800800c09204902481244cc89660020030268992cc0040062b3001303f0028acc004c06cc0e8dd5000c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c96600200303b81dc4cc896600200303d8992cc0040062b300130560028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0c8c144dd500344c96600200303f8992cc004006081040820410226644b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4c96600260c400713303f00f225980080146600201f102b826206c8992cc0040062b300130413060375400313259800800c13a264b3001001827c13e26644b3001001828c4c966002003052829414a26644b300100182a44c96600200305582ac156264b3001306e0038acc00401e0ad13259800800c15e0af05782bc4cc89660020030598992cc0040060b505a82d416a264b30013073003898081839808c16d0701bae00141cc60e00028370dd7000983780420e0306d00741ad05641ac6eb40060aa8370c1ac0050691bad001306a00282920d6306800141986eb0004c19c00a09f04f41a060ca0028318c184dd5000c13505e413609b04d826a0cc3063002418504a417c6eb8005062182f800a0ba375c00260bc00482f8c17000505a1bae001305b002417060b200282b8dd7000982c00120b23056001415060a46ea801a07c827a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c829a07d03e81f40f9057182a000a0a4375800260a600503b81da0a83051001413c60a200503981cc0e60728290c13c00504d182780140de06f03781ba0a0304d001412c609a00503581ac0d606a8270c12c005049182580140ce067033819a0983049001411c6092005031818c0c60628250c11c005045182380140be05f02f817a0903045001410c608a00502d816c0b605a8230c10c005041182180140ae05702b815a088304100140fc6082005029814c0a60528210c0fc00503d181d9baa001813a070813a078813c09e04f0274100607a00281d8dd7000981e001207a303a00140e0606c6ea8006044819a045022811408903b29981999b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40c522010013259800980b181a9baa00189929981a99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980f181b9baa0018992cc0040062b300130193038375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098210014401a07281f8c10000503e1bae001303f0024100607a00281d8c0e4dd5000c0d103640d206903481a207c303b30383754003153303649013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640d46034606e6ea8c064c0dcdd5000981c981b1baa0018a9981a24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640cc646600200200e44b30010018a60103d87a80008992cc004c8cc004004c014dd5980d981c9baa301b3039375400444b30010018a508acc004cdc79bae303d0010368a51899801001181f000a06e40ed130123303a0014bd7044cc00c00cc0f0009035181d000a070300100130070072223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20765980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81a90351bac3038002375a606c0026466ec0dd4181b0009ba73037001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6076003337149101023a200098008054c0f000600a805100a181f00144ca6002015303b00199b8a489023a200098008054c0f0006600e66008008004805100a181f0012078303e00140ec66e29220102207d0000340e06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920703758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40e866e2ccdc0000acc004cdc4000a4029148182290372074004401866e0c00520203370c002901019b8e00400240dc6eb800d03b1b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c88190c00c00c444b3001300d302c375400713259800800c00a264b30010018992cc00400600913259800800c566002606a00519800801c4c966002602400313259800800c01e264b30010018acc004c0e000a264b300130150018992cc00400601513259800800c566002607600519800800c032016807201681c201700b805c02d03c181c800a06e30353754005159800980a000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026084007013809207e375a0030114108607e00281e8dd6800981f001403903f181e000a074375a002607600500b40f0607200281b8c0d4dd5001402503220643033375400300840d5008804402201081c8c0d800503418191baa0028acc004c0440062b3001303237540050078032066803205e40bc60606ea800600a804200a819200b005802c0150361819800a0623033002801c00e00700340d060620028178c0b4dd5001c00502a111194c004006009003400444464b300130110018992cc00400600d13259800800c01e00f007803c4c9660026070007005804206a375c00281c0c0d400503318189baa0038acc004c040006264b300100180344c966002003007803c4c96600260700071330150012259800801401e264b30010018cc00402a00313002303b003402900b805c02e01681e0c0e400903740210351bac001803c01d038181a800a06630313754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0e000e26602a00244b3001002803c4c966002003198008054006260046076006805201700b805c02d03c181c801206e804206a3758003007803a070303500140cc60626ea800e2b3001300f0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d801c4cc060004896600200500a8992cc0040063300100d800c4c008c0f800d00d403a01d00e807207e303c00240e900b40e06eb000601500a40ec607000281b0dd6800981b801401d038181a800a066303137540071598009807000c4c9660020030068992cc00400600f007803c4c9660026070007005804206a375a00300740e0606a0028198c0c4dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981c001c01601081a8dd6800c01d038181a800a066303137540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013038003802c0210351bae00140e0606a0028198c0c4dd5001c01502e205c40b8817102e205c40b8605e6ea8008888c966002601a00313259800800c00e264b300100180240120090048992cc004c0d000e00d00540c46eb80050341818800a05e302d37540091598009806000c4c9660020030038992cc0040060090048024012264b3001303400380340150311bae00140d060620028178c0b4dd5002400902a2054302b37540068b2032180d800980b1baa01c8a4d15330144911856616c696461746f722072657475726e65642066616c73650013656404c1\"\n :\n \"591d0b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009ba5480092222222222229800911192cc004c03000626464b3001302000280245901d1bae301e001301a37540071598009805800c4c966002603e00313300e3758603c00244b3001002802c6600200f3020002898009810801200e407916407060346ea800e2b300130120018992cc004c07c00626601c6eb0c07800489660020050058cc00401e6040005130013021002401c80f22c80e0c068dd5001c56600260140031323322598009810800c4cc040dd61810000912cc00400a00f19800804cc08800a260026046004804902045901e1bad301e001301f001301a37540071598009804800c4c8c96600260400050048b203a375a603c00260346ea800e2b30013008001899192cc004c08000a0091640746eb4c078004c068dd5001c566002600e0031323259800981000140122c80e8dd7180f000980d1baa0038b2030406080c10182030406080c0c060dd5001488c96600260160031323259800980f80140122c80e0dd7180e800980c9baa0038acc004c02800626464b3001301f00280245901c1bae301d0013019375400716405c80b8c05cdd5001489660026014602e6ea800a2646464b3001301f002899192cc004c03c0062b3001301d37540050068b203c8acc004c03800626464b300130230028044590201bad3021001301d3754005159800980a800c566002603a6ea800a00d16407916406c80d901b180d9baa001301e0038b20383259800980d800c56600266e252004301a0018b44c030c06800501945901c1baa301d001301d0013018375400516405922598009805180b9baa0028991919912cc004c08000e00b1640746eb4c074004dd7180e801180e800980c1baa0028b202c91192cc004c02c00626464b3001301f00280245901c1bad301d001301937540071598009805000c56600260326ea800e00516406916405c80b8c05cdd500124444466446645300133223259800980a18109baa001898111919bb03026001302630270013758604a60446ea80062c8100c8cc00400400c896600200314c103d87a80008992cc004cdd7981180099ba548010cc098c03ccc098dd480225eb812f5c11301033026374e6604c60460026604c604800297ae04bd7044cc00c00cc0a00090221813000a04837566044604660466046604660466046604660466046603e6ea8058dd71811180f9baa002912cc004c04cc080dd500144c8c8c8ca60026eb4c0a00066eb4c0a000e60500049112cc004c0b0012266014605600e26601e0020111640a43028001302700130260013021375400516407d2259800980998101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc0440044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80f922259800980a18109baa003899191919912cc004c0ac00e264b3001301a30273754003132323232323298009818800cdd61818802cdd698188024dd69818801cc0c40092222259800981b80344cc098dd6181b005912cc00400a26605000c44b300100289980e80289980e8048992cc004c0a8c0dcdd500944c8c8c966002607e005132332259800981800144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038acc004c0bc00a264b300130430018998191bac304200122598008014012266040608800426002608a00482122c8200c0f8dd5001c566002606c005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b3001302e0028992cc004c10c0062660646eb0c1080048966002005004899810182200109800982280120848b2080303e3754007159800981680144c96600260860031330323758608400244b300100280244cc084c1100084c004c114009042459040181f1baa0038acc004c0b000a264b300130430018998191bac304200122598008014012266042608800426002608a00482122c8200c0f8dd5001c5660026056005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b30013370e900700144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038b207840f081e103c207840f081e103c181d9baa001132598009817800c4c966002608400313302530410010078b207e303d37540071598009817000c4c9660026084003132598009818981f1baa00189919192cc004c11800a266054608a00626605400201716410c60880026088002607e6ea80062c81e8c1040062c81f8c0f4dd5001c5903b2076303b3754004607c0071640f0607a002607a00260706ea804a2c81b04cc0a8048896600200519800981e181c9baa302d303937540352298009919800800801912cc00400629422b30013375e6080607a6ea8c100c0f4dd51818981e9baa304000130283303f375200697ae08a518998010011820800a07640f94a14a281ca4607a607c607c607c607c607c607c607c607c0032302b30393754607a646600200200444b30010018a5eb8503d87a80008101800044c8cc896600330013030303e375460840074a14a281ea26608330014a14c103d87a8000a60103d879800040f4660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f904244cc106600294298103d87a8000a60103d879800040f4660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f4660826e9ccc104dd400080125eb8103d207a3758608060820026eb4c100008cc008008c10000503d48c0f4c0f8c0f8c0f8c0f8006444b30010028a6103d87a80008acc004c0b8006260506607c607e00497ae08cc00400e6080005337000029000a00640e881ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208089980280298230022080375c607e0026eb4c100004c108005040191919800800803112cc00400600713233225980099b910090028acc004cdc78048014400600c820a26600a00a608e0088208dd718200009bab304100130430014104297adef6c6014800244b3001302d303a375400513232598009820801400e2c81f0dd6981f800981d9baa0028b2072911919800800801912cc004006297ae0899912cc004cdd79821181f9baa3042303f37546066607e6ea8008c0a8cc104dd4802a5eb822660820046600800800313300400400140f46080002608200281f24607a607c607c607c607c607c0032303d303e303e303e001912cc0040062900044cdc02400466004004607e00281e2444653001001802400d0011112cc00400a2b30010018a518a504101159800800c52845660026600860840046eb4c1080063300100398218014c10c0050034528207a4100820244b3001302d303a375400513232323298009821000cc10800e60840049112cc004c11801226604e608a00e266048004264b3001303500189919912cc004c128006264646644b3001304e00380845904b1bae304b001375c609600460960026eb0c1240062c8238dd69823800982400098219baa0028acc004c0d00062646644b3001304a0018991919912cc004c13800e02116412c6eb8c12c004dd7182580118258009bac30490018b208e375a608e002609000260866ea800a2b3001303b001899194c004dd69824000cc1240066eb4c12000922259800982600144c8c8cc896600260a00070128b209a375c609a0026eb8c134008c134004dd618258014590490c120004c10cdd5001456600260660031323322598009825000c4c8c8cc8966002609c0070108b2096375c60960026eb8c12c008c12c004dd61824800c590471bad30470013048001304337540051598009819000c4c8c966002609200500b8b208c375a608e00260866ea800a2b300130310018991919912cc004c12c00e01b1641206eb4c120004dd69824001182400098219baa0028acc004c0c000626464b30013049002805c590461bad30470013043375400515980099b874803800626464b30013049002805c590461bad304700130433754005164104820904120824104820904120823041375400316410c304200130410013040001303b37540051640e52259800800c52000899b8048008cc008008c0fc00503c4dc4a40013710900024444444444444444530013049375402322259800980880144ca6002003004801d200040044444b30010038acc00400a2003164149198008024c15400e60aa005332259800980380144cdc00019bad30473053375400516414460a80066eb4c15000900420a48b209698060064c01801a4601e00330030034888888c8cc89660026084013198009bac30563053375403530563053375406930473053375406c9112cc004cc070dd6182c982b1baa04d375c60b260ac6ea8c06cc158dd5000c4cc8966002609460ae6ea80062646644b300130130028acc004c04c0062b3001598009826800c528c4c04800905944c9660026026003159800cc004cc06cdd6182f982e1baa053375c60a260b86ea8c084c170dd5003cdd61828182e1baa0089982f1828182e1baa3021305c375400e660bc9801054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c150c184dd5000c4cc896600260b860c66ea80062646603e0022b30013375e60b460ca6ea800cc1a0c194dd5003456600266ebcc164c194dd5000983418329baa0038acc004cdc49bad3059306537540073001375660b260ca6ea8c164c194dd50034dd71834003cdd7182c803a04c8992cc004c154c194dd5000c4cdc39bad3069306637540026eb4c168c198dd5002452820c8305a3065375400316418d16418d16418c60ce60c86ea80062c8310c194c188dd5000982b98311baa3056306237540071641806602201c00280d22c82ea2c82e9159800cc004dd61828982e1baa0539bac305f305c37540113305e3050305c3754604260b86ea801ccc17930106457355534472004bd702444b30013370e6020004602401919800806400a4464b30013054306137540031325980099baf30663063375400260cc60c66ea8c198c18cdd5002456600266ebcc160c18cdd5000982b98319baa30663063375400913370f3001375660ae60c66ea80066eb8c1980166eb8c15c0150242cc004c15402626eb4c15cc18cdd500244cdc199b82375a60ae60c66ea8010024029061452820c28a50418460ca60c46ea80062c8300cc04401400501a45905d2264b3001304f305c37540031325980099b87375a60c200266e000140222b30013370e6eb4c184c188004cdc0002001c56600266e1e60026eacc084c178dd502acdd71829182f1baa3023305e3754013488105735553447200407c0071305098009bab3021305e37540ab375c60a460bc6ea8c08cc178dd5004d2201045553447200407d1641711641711641713001375860a460ba6ea81526eb8c068c174dd51811182e9baa0089bae3051305d3754604460ba6ea80226eb4c180c174dd5000a0168b20b6301a305c3754011164169164169164168b3001304d0018802c4cdc199b8200500100241651641651641651641646eb4c170004dd6982e182e800cc004dd6182d982c1baa04f9bae301530583754603a60b06ea800e6eb8c130c160dd5180e982c1baa0039bad305b30583754002803a2c82b26002007375860b260ac6ea800a4b3001300e375a609660ae6ea8006260926eb4c050c15cdd5000c52820aa402c603260ac6ea800a2c82a11598009820804c660026eb0c158c14cdd500d4c158c14cdd501a4c11cc14cdd501b2444b30013301c375860b260ac6ea8134dd7182c982b1baa301b3056375400313322598009825182b9baa00189919912cc004c04800a2b30013012001899192cc004c0500062b300198009980e1bac3060305d37540a86eb8c148c174dd51811182e9baa0089bac3051305d37540133305f3051305d3754604460ba6ea8020cc17d300106457355534472004bd702444b30013370e6026006602601b159800980900146600200700291192cc004c154c188dd5000c4cc896600260ba60c86ea8006264660400022b30013375e60b660cc6ea800cc1a4c198dd5003456600266ebcc168c198dd5000983498331baa0038acc004cdc49bad305a306637540073001375660b460cc6ea8c168c198dd50034dd71834803cdd7182d003a04e8992cc004c154c198dd5000c4c96600266e1cdd698358009bad305c3068375400b13370e6eb4c1acc1b0004dd6981298341baa0058a50419860ce6ea80062941065182d98331baa0018b20c88b20c88b20c830683065375400316418c60cc60c66ea8004c160c18cdd5182b98319baa0038b20c23301200f001406d1641791641788acc004cdc3cc004dd59810182e9baa0549bae3051305d3754604460ba6ea8022910105735553447200407866e0520000078992cc004c140c174dd5000c4c96600266e1cdd6983100099b810060038acc004cdc39bad306230630013370200a0131598009828cc004dd59811182f9baa0569bae3053305f3754604860be6ea802a9110455534472004081159800cc004dd6182a182f9baa0569bac3062305f3754017330613053305f3754604860be6ea8028cc185301054455534472004bd702444b30013370e6026004602a01f19800807c00a4464b30013057306437540031325980099baf30693066375400260d260cc6ea8c1a4c198dd5002456600266ebcc16cc198dd5000982d18331baa30693066375400913370f3001375660b460cc6ea80066eb8c1a40166eb8c16801502719b813370666e08dd6982d18331baa00400d00c375a604660cc6ea80122941064452820c830683065375400316418c6602800a00280ea2c8301198009bac3054305f37540ad30623063306330633063306330633063306330633063305f3754015330613053305f3754604860be6ea8028cc185301054455534472004bd704dd69831183180224444b300130550018a51899b8900132330010010052259800800c52000899912cc004cdd7983518339baa002007899b8000198009bab305b30673754005375c60d400d375c60b600c814220028328c1a0004cc008008c1a400506620c245905d45905d45905d45905d4c004dd61829982f1baa0559bae301b305e3754604660bc6ea80266eb8c148c178dd51811982f1baa0099bad3061305e375400280622c82e0c06cc174dd5004c5905b45905b45905b1bad305f001329800800c02697ae1101000081010000200222259800801440063300100398310014c8c96600260306eb4c074c180dd5001456600266e24dd6980e98301baa0020018998311ba8337006eb4c18c00c004cc188dd419b80375a60c660c80066eb4c074c180dd500125eb822c82f22c82f0cdc199b82375a60a660be6ea8004018014c18400900320be8b20b28b20b2375a60b80026eb4c170c17400660026eb0c16cc160dd5027cdd7180a982c1baa301d30583754007375c609860b06ea8c074c160dd5001cdd6982d982c1baa001401d16415930010039bac3059305637540052300e375a609660ae6ea800500b180c982b1baa0028b20a8452820a24144444464b30013048305537540031325980099baf305a3057375460b460ae6ea8c12cc15cdd500098211982c9ba90054bd704566002609130013756609660ae6ea8c12cc15cdd5000c01691010d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c80089982d9ba898009bab304d30593754609a60b26ea800e00d48810455534472004068660b660b860b26ea8004cc16c00d2f5c060b660b06ea80062c82b0c130c15cdd51825982b9baa0018b20aa8b20aa3059305637540031641506600a008002444464b30013048305537540031325980099baf305a3057375460b460ae6ea8004c108cc164dd4802a5eb822b3001304898009bab304b30573754003005a450d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c8008acc004cdd7980b182c9baa0034c0103d87a800089982d9ba898009bab304d30593754007006a4410455534472004068660b660b860b26ea8004cc16c00d2f5c116415c60b660b06ea80062c82b0c130c15cdd5000c59055459055182c982b1baa0018b20a833005004001225980099b8800148002298103d87a8000899803001000a0a022646644b30013040001899912cc004c0c0c0f4dd500144c8c8c8cc8966002608e00713259800981b18219baa0018991919912cc004c13000e264b3001303b001899192cc004c13c00a01d1641306eb8c134004c124dd5003c566002607400315980098249baa00780645904a459047208e3047375400d1641246eb8c124004dd71824801182480098221baa0018b208430460058b2088375c6088002608800460880026086002607c6ea800a2c81e0c0fc0044c010c1000162c81e8dd7181e800981f0009bac303c00240e91323002303c003375a607400481c2264600460740066eb4c0e00090364590340c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815002c590281bac302800130280023028001302700130223754007164080323232598009809180f9baa00189919912cc004c09c006264b30013016302337540031323232323232323232323298009819000cc0c802a606401330320089819003cc0c801a606400b30320049819001cdd6181900124444444444b3001303d00b89980f181e00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0acc0e0dd500144c8c8c8ca60026eb8c1000066eb8c1000126eb8c10000e6eb8c1000092222598009822802c4cc0d0024896600200513302701410248992cc004c0d8c10cdd5000c4c8c8c8cc8966002609a007132323322598009828801c4c02cc1440322c8270dd718270009bae304e002304e0013758609800b1641286eb4c128004dd698250011825000982480098221baa0018b2084304600241111641083040001303f001303e001303937540051640dd1640e8303200130310013030001302f001302e001302d001302c001302b001302a001302900130243754003164088604c0031640906eb8c090004c094004c080dd5000c5901e192cc004c048c07cdd5000c4c966002603260406ea8006264b3001301430213754003132323322598009815001c40162c8138c09c004dd71813801181380098111baa0018b204030243021375400316407c602a60406ea8c050c080dd5181198101baa0018b203c32330010013758602860406ea805c896600200314c0103d87a80008992cc004c8cc004004c014dd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a04440951300e330240014bd7044cc00c00cc0980090201812000a04430010012259800800c52f5c1133021301e3022001330020023023001408044b30013011301e3754005132323259800981300144cc018c09400c4c966002602a00315980098119baa002802c590244566002602800313232598009814801401e2c8130dd7181380098119baa0028acc004c06c00626464b30013029002803c59026181380098119baa0028b204240848108c084dd5000c5902318120009812000980f9baa0028b203a300500522598009807980e1baa00289919192cc004c09000a2660126046006264b300130130018992cc004c09800626464b300130160018992cc004c0a400626601c605000201316409860486ea800a2b3001301500189919194c004dd69815000cdd69815001cdd698150012444b3001302e00480745902b0c0a8004c0a4004c090dd5001459022204430223754002604a00316408c60426ea800a2b300130120018acc004c084dd500140162c81122c80f901f180f9baa0018b204230220013022001301d375400516406c4590080c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProxyNftProxyNftMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ]),\n [\n utxoRef,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProxyNftProxyNftElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ]),\n [\n utxoRef,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1StakingVaultStakingVaultMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n :\n \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1StakingVaultStakingVaultSpend {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n :\n \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1StakingVaultStakingVaultElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n :\n \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1TreasuryTreasuryMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1TreasuryTreasurySpend {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1TreasuryTreasuryElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_1_rc1/index.js b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_1_rc1/index.js new file mode 100644 index 0000000000..187deebbab --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_1_rc1/index.js @@ -0,0 +1,3 @@ +"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.YieldSplitAlpha=exports.YieldDistributionInput=exports.VaultDatumV1=exports.V1_1Rc1YieldOracleYieldOracleSpend=exports.V1_1Rc1YieldOracleYieldOracleMint=exports.V1_1Rc1YieldOracleYieldOracleElse=exports.V1_1Rc1TreasuryTreasurySpend=exports.V1_1Rc1TreasuryTreasuryMint=exports.V1_1Rc1TreasuryTreasuryElse=exports.V1_1Rc1StakingVaultStakingVaultSpend=exports.V1_1Rc1StakingVaultStakingVaultMint=exports.V1_1Rc1StakingVaultStakingVaultElse=exports.V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint=exports.V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse=exports.V1_1Rc1ProxyNftProxyNftMint=exports.V1_1Rc1ProxyNftProxyNftElse=exports.V1_1Rc1ProtocolStakeProtocolStakeWithdraw=exports.V1_1Rc1ProtocolStakeProtocolStakePublish=exports.V1_1Rc1ProtocolStakeProtocolStakeElse=exports.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw=exports.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish=exports.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse=exports.V1_1Rc1ProtocolMintProtocolMintWithdraw=exports.V1_1Rc1ProtocolMintProtocolMintPublish=exports.V1_1Rc1ProtocolMintProtocolMintElse=exports.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw=exports.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish=exports.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else=exports.V1_1Rc1ProtocolManagementProtocolManagementWithdraw=exports.V1_1Rc1ProtocolManagementProtocolManagementPublish=exports.V1_1Rc1ProtocolManagementProtocolManagementElse=exports.V1_1Rc1OrderOrderSpend=exports.V1_1Rc1OrderOrderElse=exports.V1_1Rc1DistributionOracleDistributionOracleWithdraw=exports.V1_1Rc1DistributionOracleDistributionOracleElse=exports.Tuple_VerificationKey_COSESign1=exports.TreasuryRequestV1=exports.TreasuryDatumV1=exports.StakingVaultRedeemerV1=exports.StakeRequestV1=exports.Slot=exports.SignedRedeemer_v1_1_ExtraProtocolRedeemerV1=exports.SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage=exports.SignedPayload_v1_1_ProtocolRedeemerV1=exports.SignedDistributionOracleMessage=exports.SettingsV1=exports.SettingsSignedRedeemer=exports.SettingsRedeemer=exports.SettingsProtocolSettingsProtocolSettingsWithdraw=exports.SettingsProtocolSettingsProtocolSettingsSpend=exports.SettingsProtocolSettingsProtocolSettingsPublish=exports.SettingsProtocolSettingsProtocolSettingsElse=exports.SettingsAuthPayload=exports.ReserveAsset=exports.RegistryV1=exports.Ratio=exports.ProxyDatumV1=exports.ProxyDatum=exports.ProtocolRedeemerV1=exports.ProtocolOrchestratorRedeemerV1=exports.ProtocolConfig=exports.Permissions=exports.OrderRedeemerV1=exports.OrderDatumV1=exports.OrderActionV1=exports.Numerator=exports.Nonce=exports.MultisigScript=exports.Headers=exports.HeaderMap=exports.GovernanceConfig=exports.ExtraProtocolRedeemerV1=exports.ExchangeRequestV1=exports.DistributionOracleMessage=exports.DistributionOracleDatum=exports.DirectRequestV1=exports.Destination=exports.Denominator=exports.COSESign1=exports.Bool=exports.Asset=void 0;var _uplc=require("@blaze-cardano/uplc");var _data=require("@blaze-cardano/data");function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function _defineProperties(e,r){for(var t=0;t2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,SettingsProtocolSettingsProtocolSettingsSpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241":"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021",_data.Type.Tuple([PolicyId,GovernanceConfig]),[proxyPolicyId,gov]),"PlutusV3");});var SettingsProtocolSettingsProtocolSettingsWithdraw=exports.SettingsProtocolSettingsProtocolSettingsWithdraw=/*#__PURE__*/_createClass(function SettingsProtocolSettingsProtocolSettingsWithdraw(proxyPolicyId,gov){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,SettingsProtocolSettingsProtocolSettingsWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241":"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021",_data.Type.Tuple([PolicyId,GovernanceConfig]),[proxyPolicyId,gov]),"PlutusV3");});var SettingsProtocolSettingsProtocolSettingsPublish=exports.SettingsProtocolSettingsProtocolSettingsPublish=/*#__PURE__*/_createClass(function SettingsProtocolSettingsProtocolSettingsPublish(proxyPolicyId,gov){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,SettingsProtocolSettingsProtocolSettingsPublish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241":"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021",_data.Type.Tuple([PolicyId,GovernanceConfig]),[proxyPolicyId,gov]),"PlutusV3");});var SettingsProtocolSettingsProtocolSettingsElse=exports.SettingsProtocolSettingsProtocolSettingsElse=/*#__PURE__*/_createClass(function SettingsProtocolSettingsProtocolSettingsElse(proxyPolicyId,gov){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,SettingsProtocolSettingsProtocolSettingsElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241":"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021",_data.Type.Tuple([PolicyId,GovernanceConfig]),[proxyPolicyId,gov]),"PlutusV3");});var V1_1Rc1DistributionOracleDistributionOracleWithdraw=exports.V1_1Rc1DistributionOracleDistributionOracleWithdraw=/*#__PURE__*/_createClass(function V1_1Rc1DistributionOracleDistributionOracleWithdraw(proxyPolicyId,oracleNftPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1DistributionOracleDistributionOracleWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5927e80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a660089213265787065637420646174756d3a20446973747269627574696f6e4f7261636c65446174756d203d20646174756d5f6461746100168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022491b657870656374205b5f5d203d206f7261636c655f6f75747075747300168a998022495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488896600264653001300f00198079808000cdc3a4009300f00248889660026004601e6ea800e3300130133010375400723014301530150019ba54800246028602a003370e90002444446464b30010018cc004dc3a4005222598009803180c9baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026048007008803a042375a0030064090604200280f8dd700098100012042301e001407060346ea800e00280ba446466002002006446600600260040053016375400291114c004889660026014603a6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c08c0062b30013371290021811000c01a264b300130280048992cc004c0440062b30013025375400d009804204c8acc004c038006264b3001001804c4c96600200300a805402a264b3001302c003806402d0291bad00180520583029001409c604a6ea801a2b300130170018acc004c094dd500340260108132010811102220443023375400b007409460186044002810200c8120dd5000c01600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a0369112cc004c028c074dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0a400e2b300130113024375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002605e00713259800980c000c4c9660020030108992cc004006023011808c046264b30013033003809c0490301bae00140cc60600028170c0b0dd5005c566002602a00315980098161baa00b808403d02d403d0292052302a375401500e40b06eb800502f1816000a054375c00260560048160c0a400502718129baa0068042044804204c375c0028148c0980050241813001401600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a036911192cc004c02c006264b3001001801c4c9660020030048024012009132598009813001c01a00a8118dd7000a04c30230014084603e6ea80122b300130080018992cc00400600713259800800c01200900480244c966002604c007006802a046375c0028130c08c005021180f9baa00480120384070603a6ea800e44464b3001300b0018992cc00400600713259800800c0120090048992cc004c09800e00d005408c6eb40060088130c08c005021180f9baa0048acc004c0200062b3001301f3754009003801204080120384070603a6ea800d2222332298009112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c4c966002605a007159800980a98141baa0048992cc00400600f13259800800c4c9660020030098992cc0040062b300130310028acc004c064c0b0dd5001c4c96600200300b8992cc004006264b3001001806c4c96600200300e80744cc89660020030108992cc004006023011899912cc00400602713259800800c052029014899912cc00400602d13259800800c05e02f017899912cc00400603313259800800c06a03501a8992cc004c10800e2b3001302a303d375402113259800800c072264b300100180ec07603b1332259800800c07e264b30010018104082041132598009824001c5660020270218992cc00400604502281144cc89660020030248992cc00400604b025812c4c966002609a00715980080ac09a264b3001001813c09e04f1332259800800c0a6264b300100181540aa055132598009829001c66002045133035026225980080140ba264b300100181740ba264b3001001817c4c96600200303081840c20611332259800800c0ca264b30010018acc004c16800a3300100189803982d00440cd03a40cd05740ce067033819a0b6305800141586eb8004c15c009058182a800a0a6375800302e81720ac3053002414502b40bd02b413c6eb40060548290c13c00504d1bad001304e016813a09e304c015412902641286eb400604a8268c1280050481bad001304901481120943047013411502141146eb40060408240c1140050431bad001304400280ea08a30420014100607c6ea804203681da03681f8dd6800c069042181f800a07a375a002607c00501740fc607800281d0dd6800981d801405103c181c800a06e37580026070005011808a072303600140d06eb0004c0d400a01d00e40d860660028188c0cc00a01900c80640310341818800a05e302d375400700a40a900a40b900a805402a0148190c0bc00502d181780140220110088042060302d00140ac60526ea801200c813200c8150dd6000c01600a8168c0a80050281815001400e007003801a0563028001409860486ea800e002810a444b300130103023375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002605e00519800803466002003009804202680420168042058804402201100840c0605a0028158dd68009816001401502d1815000a050302a002801c00e00700340ac60500028130c090dd5001c005021488966002602060466ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c0d400e3300100c8cc00401201f00e406500e404500e40c86eb400601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a0429112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200300b805c02e26644b3001001806c4c96600200313259800800c03e264b30010018084042264b300130380038cc00403e330010048acc00400602313259800800c04a02501280944cc89660020030148992cc00400602b01580ac056264b3001303d00380bc05903a1bae00140f4607400281c0dd7000981c8012074303700140d50114071011405101140d46eb000602101040e0606a0028198c0d400a01d00e80740390361819800a062375a002606400500b40cc60600028170dd6800981780140210301816800a056375a002605800500540b460540028140c0a800a007003801c00d02b1814000a04c30243754007001408522259800980818119baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002606a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026074007014809a06e375c00281d0c0dc0050351bae001303600240dc6068002819201c80ca01c808a01c8190dd6000c03601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a042488888c966002602601b13259800800c07e264b30010018acc004c0b400a2b300130153028375400313259800800c086264b30010018992cc00400604713259800800c4c9660020030258992cc00400604d0268992cc004c0d000e2b3001301c302f375400d13259800800c0a2264b3001001814c0a626644b3001001815c4c96600200302c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944cc89660020030348992cc004006264b300100181b44c966002003159800982200144cc09c038896600200513302900d225980080146600200f19800802c566002606060866ea8062264b300100181e44c96600200313259800800c0fa264b30010018acc004c13000a26644b300130360018992cc00400608513259800800c10e087132598009828801c4cc0d000489660020050078992cc0040063300100189801182a001c11d02b411e08f047823a0aa3052002414104441386eb00060870434144609c0028260c128dd5002c566002606600313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a056823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260a20071330340012259800801401e264b30010018cc0040062600460a800704740b1047823c11e08e82a8c148009050411104e1bac001821c10d0511827000a098304a375400b15980099b8748018006264b300100182144c966002003043821c4cc89660020030458992cc0040062b3001305300289981b001912cc00400a2b3001303d3050375400713259800800c126264b3001001825412a0951332259800800c132264b3001001826c13609b13259800982d801c03e09c82c0dd6800c13505b182c000a0ac375a00260ae00504a416060aa0028298c144dd5001c12104e44c96600200319800800c4c008c15800e0928172093049824c125057182a00120a482320a0823411a08d046415060a20028278dd60009828001410e0868288c13800504c18251baa0058acc004cdc3a401000313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401400313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401800313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401c00313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a402000315980098251baa005801410504b4105047208e411c8239047208e411c82390470cc00400626605e03244b300100281244c96600200304282144c9660020030438992cc004006089044822411226644b300100182344c966002003159800982a001466002003130073054008823a068823a0a2823c11e08f047415460a40028280dd7000982880120a4304f00141346eb00060850424140609a004825a07e8148c11cdd5001c0fd04940fe07f03f81fa09a304a0014120609400503d81ec0f607a8258c12000504618221baa01881da08281da04c81da04c8992cc00400607903c81e44c8c00cc128010dd6800c0f104a1823801208a8992cc00400607503a81d44c8c00cc120010dd6800c0e90481822801208681ba08281bc0de06f037411460840028200c10800a06b03581ac0d50431820000a07c375a002607e0050324100607a00281d8dd6800981e00140bd03d181d000a0703758002607200502c8162074303700140d46eb0004c0d800a05302940dc60680028190c0c0dd5003409d02d409d0311bac00181340990341818800a05e3031002812409204902440c8605e0028168c0bc00a04502281140890301816800a05630293754003020409902040a902081040820408170c0ac00502918139baa0118acc004c040036264b300100180fc4c966002003159800981680146600200300381020108102054810408204102040b860560028148c09cdd5008c0790242048159800980798129baa010899912cc004c050c09cdd5000c4c8cc896600330013233001001323300100137566006605a6ea8078896600200314bd7044c8cc88cc88cc008008004896600200310038991981b1ba733036375200a6606c60660026606c606800297ae0330030033038002303600140d06eacc0c400cdd718170009980180198198011818800a05e2259800800c528456600266e3cdd718181bac30300010288a518998010011818800a05440b94a14a28142264b30013371064b3001301f302c375400313259800800c5660026034605a6ea8006264b3001001814c4c96600200313259800800c0ae264b300100181640b20591332259800800c0ba264b3001001817c0be05f13259800981d001c6600200f1375a6016606c6ea8c0e4c0d8dd5181c981b1baa303930363754013030405503040dc6eb400605e81d0c0dc0050351bad0013036002816206e303400140c8606800502a81540aa05481a8c0c800503018171baa001814205681440a205102840cc6060605a6ea8006290002054301b302c3754603260586ea8010dd6980098161baa302f302c3754605e60586ea801a2b3001323259800980b800c4cdc41bad3031302e37540046eb4c00cc0b8dd5181898171baa3031302e3754011159800980d000c528c528205640ac60586ea8004c0bcc0b0dd5181798161baa302f3030303030303030303030303030302c375403b1323259800800c09a2b300130320018a51813205e40bc64660020026eb0c074c0b8dd500f912cc004006297ae0899912cc0056600266ebcc0d0c0c4dd5001004456600266ebcdd319198008009bab301f3032375400644b30010018a5eb7bdb1822653001375c606600337566068003303800248896600266e452201000038acc004cdc7a441000038800c401503444cc0e4cdd81ba9003374c0046600c00c00281a0606c00281a0dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606c66ec0dd48179ba60034bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8019801c4cc0e8cdd81ba9033374c00e00b15980099b8f03300389981d19bb037520666e9801c00626607466ec0dd48019ba60023300600600140d481a8606e00281a8c8cc0040052f5bded8c044b300100189981a99bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0cc0066eb4c0d000660700049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981c99bb037520066ea0008cc0180180050342068181b000a06840b913375e604060626ea8008cdd2a40086606600a97ae08a5040b914a081722660660046600800800313300400400140b86064002606600281826002444b3001301b001880146600200700199b86002001400c81624466e0ccdc1001000a410112f5223371266e08dd698188011bad30313032001337046eb4c0c4004dd69818981900148cdc4240006eb4c0c0c0c40066e092080897a981798161baa302f302c375400c91111119199118119981b8079981b9811181a9baa3038303537540086606e6ea0cc896600260100051598009804000c56600266012004003130030018980180120688a9981aa492b6578706563742069735f76616c69645f726174696f28706f73745f726574656e74696f6e5f7969656c6429001640d115330354911c6578706563742069735f76616c69645f726174696f28666c6f6f7229001640d06eb0c090c0d4dd50024c004dc4a400137586044606a6ea80126eb4c02cc0d4dd50024dd6981c181c981c981c981c981c981a9baa00448888c96600260160091598009805800c5660026601800200910018991919911805998201ba83370066e08dd6982080400119b82375a6082006002660806ea0cdc100080125eb80dd6981f98200009bad303f304000630083303d375066e08dd6981f00099b814820225e8c966002600e00b15980099b890050048acc004cdc48022410112f513370000a6601e66e0401001566002600e00315980099b8900148202d2244e26464646464646466e04cdc019b813370066e04cdc019b810073370600c900219b8300548030cdc18022406066e0c00d20f0013370600490500599b830014838138cdc19980b000803a4101ec086602a00200c6602800200a6602600200866024002006660220020046602000200266e0c00520288a9981d2491b6578706563742073203c3d206d61785f737570706f727465645f73001640e5153303a4910d6578706563742073203e3d2030001640e5153303a4911565787065637420725f6d6178203c3d207363616c65001640e5153303a4911465787065637420725f6d6178203e3d2062617365001640e5153303a491106578706563742062617365203e3d2030001640e464b30013371090405a4489800c52080b489138800a0723370666e08c02cdd6981f000a4190026eb4c0f8c0fc004cc0f4dd418059bad303e303f0014bd70199118049981f1ba83370266e08dd6981f80180099b82375a607e00c0046607c6ea0cdc1001000a5eb80dd6981e981f0009bad303d303e00440dd1533038491206578706563742069735f76616c69645f726174696f287261775f7969656c6429001640dd15330384911d6578706563742069735f76616c69645f726174696f28687572646c6529001640dc646644b300130070028acc004cdc42400000313303e37500046607c6ea00052f5c1153303a490116657870656374207374616b65645f75736472203e2030001640e5153303a49124657870656374206e65745f64697374726962757461626c655f696e636f6d65203e3d2030001640e46eb4c0f4c0e8dd50009bad3027303a3754002607860726ea802097ae02332232598009811800c52f5c210100008101010044cc0e4dd419b8300300133039375066e0c0080052f5c081a0c96600266e200052000899b8148000006200281a0cc010008004dd6981b8009bad3037303800123370660086eb4c0dc004dd6981b981c000980300322a660549217a6578706563740a20202020202076616c69646974795f72616e67655f7374617274735f6265666f7265280a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d702c0a20202020202029001640a5153302a491696578706563740a20202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d70203e2070726576696f75735f6f7261636c655f74696d657374616d70280a20202020202020206f7261636c655f696e7075742c0a20202020202029001640a44605e60606060606000315330294913f657870656374206e6f5f6f7261636c655f746f6b656e735f6d696e7465642873656c662e6d696e742c206f7261636c655f6e66745f706f6c6963795f696429001640a0605860526ea8c058c0a4dd5000918169817181718171817000981598141baa0018a9981324815665787065637420536f6d65286f7261636c655f696e70757429203d0a20202020202066696e645f6f7261636c655f696e7075742873656c662e696e707574732c206f7261636c655f6e66745f706f6c6963795f696429001640946052604c6ea8040cc044dd6181498131baa01723010323322330020020012259800800c00e2646644b30013372291113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902a44cc014014c0c401102a1bae302a001375a6056002605a0028158c8c8cc004004dd5980b98151baa3017302a375400844b3001001801c4c8cc896600266e440a400a2b30013371e0520051001803205689980280298190022056375c60560026eacc0b0004c0b800502c0a5eb7bdb180520008a9981224813b657870656374205075626c6973685969656c644f7261636c652872656465656d657229203d206f7263686573747261746f725f72656465656d65720016408c22232598009807800c4c9660020030038992cc0040062b300130290028cc00400600b0044035004409900480240120088150c09c00502518119baa0048acc004c030006264b3001001801c4c96600200315980098148014566002602260486ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0b400a330010038cc0040060130084039008403900840a900880440220108170c0ac0050291815801401a00d00680320583029001409c604a6ea800600881120088132009004802401102a1813800a04a3023375400900240808100c084dd50019112cc004c038c084dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981500144c9660026026604c6ea8012264b3001001803c4c96600200313259800800c026264b30010018acc004c0bc00a330010038992cc004c060006264b300100180644c966002003159800981900144c966002603600313259800800c03e264b30010018acc004c0d400a33001001805c04101440410324042021010808206c303300140c4605e6ea800a2b300130180018992cc00400601f13259800800c042021010899912cc00400602513259800800c04e027013899912cc00400602b13259800800c05a02d0168992cc004c0f000e02501740e46eb400602c81e0c0e40050371bad0013038002809a072303600140d06eb4004c0d400a02081b0c0cc00503118179baa002807205840b0605a6ea800601a817a01b00d806c0350331818000a05c302c3754005159800980a800c56600260586ea800a00d00b40b500b40a48148c0a8dd5000c02900e402902c402a01500a8052060302d00140ac605a00500880440220108170c0ac00502918139baa0048032048132598009809800c566002604e6ea800a00f00640a11598009808000c4c9660020030078992cc0040060110088044022264b3001302e003805402502b1bae00140b860560028148c09cdd50014566002603200313259800800c01e264b3001302d002804c02102a1815800a052302737540050064090812102418129baa001802a04e802c01600b00540ac60500028130c0a000a007003801c00d0291813000a04830223754007001407c403a01d00e8072038332232598009802980c1baa0018980c9919bb0301d001301d301e0013758603860326ea80062a6602e9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164058646600200200644b30010018a60103d87a80008992cc004cdd7980d00099ba548010cc074cdd2a40046603a6ea40112f5c097ae0898049980e9ba73301d301a0013301d301b0014bd7025eb82266006006603e00480c0c07400501b1bab3019301a301a301a301a301a301a301a301a301a3016375400e6eb8c064c058dd54c004896600200314bd7044cc068c05cc06c004cc008008c07000501948896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901648888c8cc004004014896600200310058992cc004006266008604000400d1330053020002330030030014078604000280ea6eb0c00cc058dd5003a44446464646644a6603a66e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea406d220100132598009806180f9baa00189929980f99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980a18109baa0018992cc0040062b3001300f3022375400313259800800c076264b300100180f407a03d01e899912cc0040060411325980098160014401a0428148c0a80050281bae001302900240a8604e0028128c08cdd5000c071020407203901c80e2050302530223754003153302049013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016407c602060426ea8c038c084dd5000981198101baa0018a9980f24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640746601400c4646600200260066eacc038c084dd5180718109baa0022259800800c528456600266e3cdd7181280080f4528c4cc008008c09800501f2046300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c204a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f901f1bac3022002375a60400026466ec0dd418100009ba73021001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a604a003337149101023a200098008054c09800600a805100a181400144ca6002015302500199b8a489023a200098008054c098006600e66008008004805100a1814001204c3028001409466e29220102207d0000340886eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920443758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720483371666e000056600266e2000520148a40c11481b9024002200c33706002901019b8600148080cdc70020012042375c0068128dc5245022c200022323300100100322598009805800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407080e0c00c00c44646600200200644b30010018a6103d87a80008992cc004c010006260106603800297ae0899801801980f001202e301c00140688b201a180780098051baa0108a4d153300849011856616c696461746f722072657475726e65642066616c73650013656401c1":"5914ad0101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae00248888888896600264653001300a00198051805800cdc3a4009300a0024888966002600460146ea800e33001300e300b37540072300f301030100019ba5480024601e6020003370e90004dc3a4005223233001001003223300300130020024888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260146603200297ae0899801801980d801202a3019001405d2259800980298099baa00289919192cc004c06c00a26464b3001300a0018acc004c064dd5001401a2c80d22b30013009001899192cc004c07c00a0111640706eb4c074004c064dd500145660026020003159800980c9baa00280345901a459017202e405c602e6ea8004c06800e2c80c0c966002602e00315980099b8948010c0580062d13007301600140551640606ea8c064004c064004c050dd500145901248966002600a60266ea800a264646644b3001301c003802c590191bad3019001375c6032004603200260286ea800a2c809244b30013005301337540051323232332259800980e801c4c966002601660326ea8006264646644b300130220038992cc004c04000626464b300130250028074590221bae3023001301f375400f1598009807800c566002603e6ea801e01916408116407480e8c074dd500345901f1bae301f001375c603e004603e00260346ea80062c80c0c0700162c80d0dd7180d000980d001180d000980c800980a1baa0028b202491192cc004c01800626464b3001301b0028024590181bae3019001301537540071598009802800c4c8c96600260360050048b2030375c6032002602a6ea800e2c809901318099baa00291192cc004c01800626464b3001301b0028024590181bad3019001301537540071598009802800c566002602a6ea800e00516405916404c8098c04cdd500124444453001332232598009806180d1baa0018980d9919bb0301f001301f30200013758603c60366ea80062c80c8c8cc00400400c896600200314c103d87a80008992cc004cdd7980e00099ba548010cc07ccdd2a40046603e6ea40112f5c097ae0898081980f9ba73301f301c0013301f301d0014bd7025eb82266006006604200480d8c07c00501d1bab301b301c301c301c301c301c301c301c301c301c3018375401c6eb8c06cc060dd51919192cc004c030c068dd5000c4c966002602660366ea8006264b3001300e301c3754003132323322598009812801c40162c8110c088004dd718110011811000980e9baa0018b2036301f301c3754003164068601e60366ea8c034c06cdd5180f180d9baa0018b2032330083758601860346ea80408c8cc004004c00cdd59807180e1baa300e301c375400444b30010018a508acc004cdc79bae302000101a8a518998010011810800a0364078600200244b30010018a5eb822660386032603a00266004004603c00280da4464b3001300c0018992cc004c080006266010603e00200716407460366ea800e2b3001300b0018992cc004c080006264b3001300e301c3754003132323259800981200144cc034c08c00c4cc03400401e2c8108c088004c088004c074dd5000c5901b180f800c5901d180d9baa0038b2032406460326ea800a44b3001300b30193754005132323259800981080144cc89660026020603c6ea800a2646464b3001302600289980618128018992cc004c050006264b30013028001899192cc004c05c006264b3001302b0018998089815000804c5902818131baa0028acc004c05800626464653001375a6058003375a6058007375a60580049112cc004c0c001201d1640b4302c001302b001302637540051640908120c090dd50009813800c5902518119baa0028acc004c04c0062b3001302337540050058b20488b2042408460426ea80062c8118c090004c090004c07cdd500145901d18100018992cc004c03c0062b3001301e37540050058b203e8acc004c03800626464b30013024002803c590211bae3022001301e3754005159800980a800c4c8c96600260480050078b20423022001301e375400516407080e101c180e1baa0018b203c301f001301f001301a37540051640609114c0048966002601c60386ea800a2646464b300130240028992cc004c048c080dd5000c4c8c966002604e00313259800980a98119baa00189919191919194c004dd69816800cdd61816802cdd618168024dd69816801cdd69816801244444b300130330068992cc004c084c0bcdd5000c4c8c8cc89660026070007132332259800981d801c4c8cc8966002607c007133021303d01813302901b225980080140822646644b300130430018998151821000898021821802c590401bae304000130410013758607e00481ea2c81d8dd6981d8009bad303b00c303b00b8b2070375a60700026eb4c0e0028c0e00262c81a8dd6981a8009bad30350023035001303037540031640b860640171640c0302d001302c001302b001302a001302900130243754003164088604c005164090604c00260426ea80062c80f8c08c00e2c8108dd618110009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8cc8966002604c007133008302500513300e0020068b20463023001375a604600460460026044002603a6ea800a2c80da44b3001300e301c37540051323232323298009bad30250019bad30250049bad3025003981280124444b3001302a00589980618148048998090008054590270c094004c090004c08c004c088004c074dd500145901b48966002601c60386ea800a264646464646530013758604c003375a604c00b375a604c009375a604c007302600248888966002605800d13300e302b00b1330140011323322598009817801c03e2c8160dd718160009bae302c006302c0058b205218130009812800981200098118009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8c8ca60026eb0c0940066eb4c0940126eb4c09400e604a00491112cc004c0a801626601860520122660240022646644b3001302d003806c5902a1bae302a001375c605400a605400916409c3025001302400130230013022001301d375400516406d301a3754006911111192cc004c04c00a264b300130270018992cc004c054c08cdd5000c4c8c8c8cc8966002605a00713259800980d98149baa00189919191919194c004c0cc0066eb0c0cc0166eb4c0cc0126eb4c0cc00e6066004911112cc004c0e401a2660486eb0c0e002c8966002005133026006225980080144cc0880144cc088024566002605460706ea80462646464b3001304000289919912cc004c0c000a264b300130440018998179bac304300122598008014012266046608a00426002608c004821a2c8208c0fcdd5001c566002605e005132598009822000c4cc0bcdd61821800912cc00400a0091330233045002130013046002410d164104607e6ea800e2b300130360028992cc004c11000626605e6eb0c10c0048966002005004899812182280109800982300120868b2082303f375400715980099b874801800a2646464b300130460028998189bac304500322598008014566002606a60866ea800e264646644b3001304c0038054590491bad3049001375a6092004609200260886ea800e2c821226604c608e004260026090004822a2c8218c110004c110004c0fcdd5001c56600266e1d20080028992cc004c11000626605e6eb0c10c0048966002005004899812982280109800982300120868b2082303f375400715980099b874802800a264b300130440018998179bac30430012259800801401226604a608a00426002608c004821a2c8208c0fcdd5001c56600266e1d200c0028992cc004c11000626605e6eb0c10c0048966002005004899813182280109800982300120868b2082303f375400715980099b874803800a264b300130440018998179bac30430012259800801401226604c608a00426002608c004821a2c8208c0fcdd5001c56600266e1d20100028acc004c0fcdd5001c0062c82022c81e903d207a40f481e903d207a40f481e8c0f0dd500089981200109981600b112cc00400a03d1323322598009823000c4cc0b4c1140044c010c1180162c8218dd7182180098220009bac30420024100607e0071640f4607c002607c00260726ea80462c81ba2646004607c0066eb4c0f000903a44c8c008c0f000cdd6981d00120708b206c1819800981900098188009818000981780098151baa0018b2050302c0058b20543758605400260540046054002605200260486ea80062c8110c0980062c8120c088dd500545660026024005132598009813800c4cc020c09800400a2c8120c088dd50054590202040159800980898101baa009899912cc004c050c088dd5000c4c8cc89660033001323300100132330010013756600660506ea8078896600200314bd7044c8cc88cc88cc00800800489660020031003899198189ba733031375200a66062605c00266062605e00297ae0330030033033002303100140bc6eacc0b000cdd718148009980180198170011816000a0542259800800c528456600266e3cdd718159bac302b0010248a518998010011816000a04c40a54a14a28122264b30013371064b3001301f3027375400313259800980d18141baa001899191919912cc004c0c800e266026606200a26eb4c020c0b8dd5181898171baa3031302e37546062605c6ea801a2c8178dd698178009bad302f002302f001302e0013029375400316409c605660506ea800629000204c301b302737546032604e6ea8010dd6980098139baa302a302737546054604e6ea801a2b3001323259800980c800c4cdc41bad302c302937540046eb4c00cc0a4dd5181618149baa302c30293754011159800980d000c528c528204e409c604e6ea8004c0a8c09cdd5181518139baa302a302b302b302b302b302b302b302b3027375403b13259800981619198008009bac301d3029375403e44b30010018a5eb8226644b30015980099baf302f302c375400401115980099baf374c64660020026eacc07cc0b4dd5001912cc004006297adef6c608994c004dd71817000cdd59817800cc0cc0092225980099b91489000038acc004cdc7a441000038800c401503044cc0d0cdd81ba9003374c0046600c00c002818060620028178dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606266ec0dd48159ba60034bd6f7b63044ca60026eb8c0bc0066eacc0c000660680049112cc004cdc8017801c4cc0d4cdd81ba902f374c00e00b15980099b8f02f00389981a99bb0375205e6e9801c00626606a66ec0dd48019ba60023300600600140c4818860640028180c8cc0040052f5bded8c044b300100189981819bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0b80066eb4c0bc00660660049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981a19bb037520066ea0008cc01801800503020601818800a05e40a913375e604060586ea8008cdd2a40086605c00a97ae08a5040a914a0815226605c0046600800800313300400400140a8605a002605c002815a29462c814a6002444b3001301b001880146600200700199b86002001400c81424466e0ccdc1001000a410112f5223371266e08dd698160011bad302c302d001337046eb4c0b0004dd69816181680148cdc4240006eb4c0acc0b00066e092080897a981518139baa302a3027375400c91111119199118119981900799819181118181baa303330303754008660646ea0cc896600260100051598009804000c56600266012004003130030018980180120608b20608b20603758604860606ea801260026e2520009bac302230303754009375a601660606ea80126eb4c0ccc0d0c0d0c0d0c0d0c0d0c0c0dd50022444464b3001300b0048acc004c02c0062b30013300c0010048800c4c8c8cc88c02ccc0ecdd419b80337046eb4c0f0020008cdc11bad303c0030013303b375066e080040092f5c06eb4c0e8c0ec004dd6981d181d80318041981c1ba8337046eb4c0e4004cdc0a410112f464b300130070058acc004cdc4802802456600266e240112080897a899b800053300f3370200800ab300130070018acc004cdc4800a41016912271323232323232323370266e00cdc099b803370266e00cdc080399b8300648010cdc1802a401866e0c01120303370600690780099b83002482802ccdc1800a41c09c66e0ccc05800401d2080f604330150010063301400100533013001004330120010033301100100233010001001337060029014459035459035459035459035459035192cc004cdc424101691226003148202d2244e200281a8cdc199b82300b375a60720029064009bad3039303a00133038375060166eb4c0e4c0e80052f5c066446012660726ea0cdc099b82375a607400600266e08dd6981d0030011981c9ba83370400400297ae0375a607060720026eb4c0e0c0e40110334590334590331919912cc004c01c00a2b3001337109000000c4cc0e4dd40011981c9ba80014bd704590354590351bad3038303537540026eb4c09cc0d4dd5000981b981a1baa00825eb808cc88c966002604600314bd70810100008101010044cc0d0dd419b8300300133034375066e0c0080052f5c08180c96600266e200052000899b814800000620028180cc010008004dd698190009bad3032303300123370660086eb4c0c8004dd698191819800980300322c812a2c81288c0a8c0acc0acc0ac0062c8120c09cc090dd5180b18121baa001230283029302930293029001302630233754003164084604860426ea8024cc03cdd6181218109baa01723012323322330020020012259800800c00e2646644b300133722910113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902644cc014014c0b00110261bae3025001375a604c00260500028130c8c8cc004004dd5980b98129baa30173025375400844b3001001801c4c8cc896600266e4409400a2b30013371e04a0051001803204e8998028029816802204e375c604c0026eacc09c004c0a40050270a5eb7bdb180520008b203e08b2012180500098029baa00a8a4d13656400c1",_data.Type.Tuple([PolicyId,PolicyId]),[proxyPolicyId,oracleNftPolicyId]),"PlutusV3");});var V1_1Rc1DistributionOracleDistributionOracleElse=exports.V1_1Rc1DistributionOracleDistributionOracleElse=/*#__PURE__*/_createClass(function V1_1Rc1DistributionOracleDistributionOracleElse(proxyPolicyId,oracleNftPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1DistributionOracleDistributionOracleElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5927e80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a660089213265787065637420646174756d3a20446973747269627574696f6e4f7261636c65446174756d203d20646174756d5f6461746100168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022491b657870656374205b5f5d203d206f7261636c655f6f75747075747300168a998022495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488896600264653001300f00198079808000cdc3a4009300f00248889660026004601e6ea800e3300130133010375400723014301530150019ba54800246028602a003370e90002444446464b30010018cc004dc3a4005222598009803180c9baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026048007008803a042375a0030064090604200280f8dd700098100012042301e001407060346ea800e00280ba446466002002006446600600260040053016375400291114c004889660026014603a6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c08c0062b30013371290021811000c01a264b300130280048992cc004c0440062b30013025375400d009804204c8acc004c038006264b3001001804c4c96600200300a805402a264b3001302c003806402d0291bad00180520583029001409c604a6ea801a2b300130170018acc004c094dd500340260108132010811102220443023375400b007409460186044002810200c8120dd5000c01600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a0369112cc004c028c074dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0a400e2b300130113024375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002605e00713259800980c000c4c9660020030108992cc004006023011808c046264b30013033003809c0490301bae00140cc60600028170c0b0dd5005c566002602a00315980098161baa00b808403d02d403d0292052302a375401500e40b06eb800502f1816000a054375c00260560048160c0a400502718129baa0068042044804204c375c0028148c0980050241813001401600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a036911192cc004c02c006264b3001001801c4c9660020030048024012009132598009813001c01a00a8118dd7000a04c30230014084603e6ea80122b300130080018992cc00400600713259800800c01200900480244c966002604c007006802a046375c0028130c08c005021180f9baa00480120384070603a6ea800e44464b3001300b0018992cc00400600713259800800c0120090048992cc004c09800e00d005408c6eb40060088130c08c005021180f9baa0048acc004c0200062b3001301f3754009003801204080120384070603a6ea800d2222332298009112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c4c966002605a007159800980a98141baa0048992cc00400600f13259800800c4c9660020030098992cc0040062b300130310028acc004c064c0b0dd5001c4c96600200300b8992cc004006264b3001001806c4c96600200300e80744cc89660020030108992cc004006023011899912cc00400602713259800800c052029014899912cc00400602d13259800800c05e02f017899912cc00400603313259800800c06a03501a8992cc004c10800e2b3001302a303d375402113259800800c072264b300100180ec07603b1332259800800c07e264b30010018104082041132598009824001c5660020270218992cc00400604502281144cc89660020030248992cc00400604b025812c4c966002609a00715980080ac09a264b3001001813c09e04f1332259800800c0a6264b300100181540aa055132598009829001c66002045133035026225980080140ba264b300100181740ba264b3001001817c4c96600200303081840c20611332259800800c0ca264b30010018acc004c16800a3300100189803982d00440cd03a40cd05740ce067033819a0b6305800141586eb8004c15c009058182a800a0a6375800302e81720ac3053002414502b40bd02b413c6eb40060548290c13c00504d1bad001304e016813a09e304c015412902641286eb400604a8268c1280050481bad001304901481120943047013411502141146eb40060408240c1140050431bad001304400280ea08a30420014100607c6ea804203681da03681f8dd6800c069042181f800a07a375a002607c00501740fc607800281d0dd6800981d801405103c181c800a06e37580026070005011808a072303600140d06eb0004c0d400a01d00e40d860660028188c0cc00a01900c80640310341818800a05e302d375400700a40a900a40b900a805402a0148190c0bc00502d181780140220110088042060302d00140ac60526ea801200c813200c8150dd6000c01600a8168c0a80050281815001400e007003801a0563028001409860486ea800e002810a444b300130103023375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002605e00519800803466002003009804202680420168042058804402201100840c0605a0028158dd68009816001401502d1815000a050302a002801c00e00700340ac60500028130c090dd5001c005021488966002602060466ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c0d400e3300100c8cc00401201f00e406500e404500e40c86eb400601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a0429112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200300b805c02e26644b3001001806c4c96600200313259800800c03e264b30010018084042264b300130380038cc00403e330010048acc00400602313259800800c04a02501280944cc89660020030148992cc00400602b01580ac056264b3001303d00380bc05903a1bae00140f4607400281c0dd7000981c8012074303700140d50114071011405101140d46eb000602101040e0606a0028198c0d400a01d00e80740390361819800a062375a002606400500b40cc60600028170dd6800981780140210301816800a056375a002605800500540b460540028140c0a800a007003801c00d02b1814000a04c30243754007001408522259800980818119baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002606a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026074007014809a06e375c00281d0c0dc0050351bae001303600240dc6068002819201c80ca01c808a01c8190dd6000c03601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a042488888c966002602601b13259800800c07e264b30010018acc004c0b400a2b300130153028375400313259800800c086264b30010018992cc00400604713259800800c4c9660020030258992cc00400604d0268992cc004c0d000e2b3001301c302f375400d13259800800c0a2264b3001001814c0a626644b3001001815c4c96600200302c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944cc89660020030348992cc004006264b300100181b44c966002003159800982200144cc09c038896600200513302900d225980080146600200f19800802c566002606060866ea8062264b300100181e44c96600200313259800800c0fa264b30010018acc004c13000a26644b300130360018992cc00400608513259800800c10e087132598009828801c4cc0d000489660020050078992cc0040063300100189801182a001c11d02b411e08f047823a0aa3052002414104441386eb00060870434144609c0028260c128dd5002c566002606600313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a056823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260a20071330340012259800801401e264b30010018cc0040062600460a800704740b1047823c11e08e82a8c148009050411104e1bac001821c10d0511827000a098304a375400b15980099b8748018006264b300100182144c966002003043821c4cc89660020030458992cc0040062b3001305300289981b001912cc00400a2b3001303d3050375400713259800800c126264b3001001825412a0951332259800800c132264b3001001826c13609b13259800982d801c03e09c82c0dd6800c13505b182c000a0ac375a00260ae00504a416060aa0028298c144dd5001c12104e44c96600200319800800c4c008c15800e0928172093049824c125057182a00120a482320a0823411a08d046415060a20028278dd60009828001410e0868288c13800504c18251baa0058acc004cdc3a401000313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401400313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401800313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401c00313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a402000315980098251baa005801410504b4105047208e411c8239047208e411c82390470cc00400626605e03244b300100281244c96600200304282144c9660020030438992cc004006089044822411226644b300100182344c966002003159800982a001466002003130073054008823a068823a0a2823c11e08f047415460a40028280dd7000982880120a4304f00141346eb00060850424140609a004825a07e8148c11cdd5001c0fd04940fe07f03f81fa09a304a0014120609400503d81ec0f607a8258c12000504618221baa01881da08281da04c81da04c8992cc00400607903c81e44c8c00cc128010dd6800c0f104a1823801208a8992cc00400607503a81d44c8c00cc120010dd6800c0e90481822801208681ba08281bc0de06f037411460840028200c10800a06b03581ac0d50431820000a07c375a002607e0050324100607a00281d8dd6800981e00140bd03d181d000a0703758002607200502c8162074303700140d46eb0004c0d800a05302940dc60680028190c0c0dd5003409d02d409d0311bac00181340990341818800a05e3031002812409204902440c8605e0028168c0bc00a04502281140890301816800a05630293754003020409902040a902081040820408170c0ac00502918139baa0118acc004c040036264b300100180fc4c966002003159800981680146600200300381020108102054810408204102040b860560028148c09cdd5008c0790242048159800980798129baa010899912cc004c050c09cdd5000c4c8cc896600330013233001001323300100137566006605a6ea8078896600200314bd7044c8cc88cc88cc008008004896600200310038991981b1ba733036375200a6606c60660026606c606800297ae0330030033038002303600140d06eacc0c400cdd718170009980180198198011818800a05e2259800800c528456600266e3cdd718181bac30300010288a518998010011818800a05440b94a14a28142264b30013371064b3001301f302c375400313259800800c5660026034605a6ea8006264b3001001814c4c96600200313259800800c0ae264b300100181640b20591332259800800c0ba264b3001001817c0be05f13259800981d001c6600200f1375a6016606c6ea8c0e4c0d8dd5181c981b1baa303930363754013030405503040dc6eb400605e81d0c0dc0050351bad0013036002816206e303400140c8606800502a81540aa05481a8c0c800503018171baa001814205681440a205102840cc6060605a6ea8006290002054301b302c3754603260586ea8010dd6980098161baa302f302c3754605e60586ea801a2b3001323259800980b800c4cdc41bad3031302e37540046eb4c00cc0b8dd5181898171baa3031302e3754011159800980d000c528c528205640ac60586ea8004c0bcc0b0dd5181798161baa302f3030303030303030303030303030302c375403b1323259800800c09a2b300130320018a51813205e40bc64660020026eb0c074c0b8dd500f912cc004006297ae0899912cc0056600266ebcc0d0c0c4dd5001004456600266ebcdd319198008009bab301f3032375400644b30010018a5eb7bdb1822653001375c606600337566068003303800248896600266e452201000038acc004cdc7a441000038800c401503444cc0e4cdd81ba9003374c0046600c00c00281a0606c00281a0dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606c66ec0dd48179ba60034bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8019801c4cc0e8cdd81ba9033374c00e00b15980099b8f03300389981d19bb037520666e9801c00626607466ec0dd48019ba60023300600600140d481a8606e00281a8c8cc0040052f5bded8c044b300100189981a99bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0cc0066eb4c0d000660700049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981c99bb037520066ea0008cc0180180050342068181b000a06840b913375e604060626ea8008cdd2a40086606600a97ae08a5040b914a081722660660046600800800313300400400140b86064002606600281826002444b3001301b001880146600200700199b86002001400c81624466e0ccdc1001000a410112f5223371266e08dd698188011bad30313032001337046eb4c0c4004dd69818981900148cdc4240006eb4c0c0c0c40066e092080897a981798161baa302f302c375400c91111119199118119981b8079981b9811181a9baa3038303537540086606e6ea0cc896600260100051598009804000c56600266012004003130030018980180120688a9981aa492b6578706563742069735f76616c69645f726174696f28706f73745f726574656e74696f6e5f7969656c6429001640d115330354911c6578706563742069735f76616c69645f726174696f28666c6f6f7229001640d06eb0c090c0d4dd50024c004dc4a400137586044606a6ea80126eb4c02cc0d4dd50024dd6981c181c981c981c981c981c981a9baa00448888c96600260160091598009805800c5660026601800200910018991919911805998201ba83370066e08dd6982080400119b82375a6082006002660806ea0cdc100080125eb80dd6981f98200009bad303f304000630083303d375066e08dd6981f00099b814820225e8c966002600e00b15980099b890050048acc004cdc48022410112f513370000a6601e66e0401001566002600e00315980099b8900148202d2244e26464646464646466e04cdc019b813370066e04cdc019b810073370600c900219b8300548030cdc18022406066e0c00d20f0013370600490500599b830014838138cdc19980b000803a4101ec086602a00200c6602800200a6602600200866024002006660220020046602000200266e0c00520288a9981d2491b6578706563742073203c3d206d61785f737570706f727465645f73001640e5153303a4910d6578706563742073203e3d2030001640e5153303a4911565787065637420725f6d6178203c3d207363616c65001640e5153303a4911465787065637420725f6d6178203e3d2062617365001640e5153303a491106578706563742062617365203e3d2030001640e464b30013371090405a4489800c52080b489138800a0723370666e08c02cdd6981f000a4190026eb4c0f8c0fc004cc0f4dd418059bad303e303f0014bd70199118049981f1ba83370266e08dd6981f80180099b82375a607e00c0046607c6ea0cdc1001000a5eb80dd6981e981f0009bad303d303e00440dd1533038491206578706563742069735f76616c69645f726174696f287261775f7969656c6429001640dd15330384911d6578706563742069735f76616c69645f726174696f28687572646c6529001640dc646644b300130070028acc004cdc42400000313303e37500046607c6ea00052f5c1153303a490116657870656374207374616b65645f75736472203e2030001640e5153303a49124657870656374206e65745f64697374726962757461626c655f696e636f6d65203e3d2030001640e46eb4c0f4c0e8dd50009bad3027303a3754002607860726ea802097ae02332232598009811800c52f5c210100008101010044cc0e4dd419b8300300133039375066e0c0080052f5c081a0c96600266e200052000899b8148000006200281a0cc010008004dd6981b8009bad3037303800123370660086eb4c0dc004dd6981b981c000980300322a660549217a6578706563740a20202020202076616c69646974795f72616e67655f7374617274735f6265666f7265280a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d702c0a20202020202029001640a5153302a491696578706563740a20202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d70203e2070726576696f75735f6f7261636c655f74696d657374616d70280a20202020202020206f7261636c655f696e7075742c0a20202020202029001640a44605e60606060606000315330294913f657870656374206e6f5f6f7261636c655f746f6b656e735f6d696e7465642873656c662e6d696e742c206f7261636c655f6e66745f706f6c6963795f696429001640a0605860526ea8c058c0a4dd5000918169817181718171817000981598141baa0018a9981324815665787065637420536f6d65286f7261636c655f696e70757429203d0a20202020202066696e645f6f7261636c655f696e7075742873656c662e696e707574732c206f7261636c655f6e66745f706f6c6963795f696429001640946052604c6ea8040cc044dd6181498131baa01723010323322330020020012259800800c00e2646644b30013372291113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902a44cc014014c0c401102a1bae302a001375a6056002605a0028158c8c8cc004004dd5980b98151baa3017302a375400844b3001001801c4c8cc896600266e440a400a2b30013371e0520051001803205689980280298190022056375c60560026eacc0b0004c0b800502c0a5eb7bdb180520008a9981224813b657870656374205075626c6973685969656c644f7261636c652872656465656d657229203d206f7263686573747261746f725f72656465656d65720016408c22232598009807800c4c9660020030038992cc0040062b300130290028cc00400600b0044035004409900480240120088150c09c00502518119baa0048acc004c030006264b3001001801c4c96600200315980098148014566002602260486ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0b400a330010038cc0040060130084039008403900840a900880440220108170c0ac0050291815801401a00d00680320583029001409c604a6ea800600881120088132009004802401102a1813800a04a3023375400900240808100c084dd50019112cc004c038c084dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981500144c9660026026604c6ea8012264b3001001803c4c96600200313259800800c026264b30010018acc004c0bc00a330010038992cc004c060006264b300100180644c966002003159800981900144c966002603600313259800800c03e264b30010018acc004c0d400a33001001805c04101440410324042021010808206c303300140c4605e6ea800a2b300130180018992cc00400601f13259800800c042021010899912cc00400602513259800800c04e027013899912cc00400602b13259800800c05a02d0168992cc004c0f000e02501740e46eb400602c81e0c0e40050371bad0013038002809a072303600140d06eb4004c0d400a02081b0c0cc00503118179baa002807205840b0605a6ea800601a817a01b00d806c0350331818000a05c302c3754005159800980a800c56600260586ea800a00d00b40b500b40a48148c0a8dd5000c02900e402902c402a01500a8052060302d00140ac605a00500880440220108170c0ac00502918139baa0048032048132598009809800c566002604e6ea800a00f00640a11598009808000c4c9660020030078992cc0040060110088044022264b3001302e003805402502b1bae00140b860560028148c09cdd50014566002603200313259800800c01e264b3001302d002804c02102a1815800a052302737540050064090812102418129baa001802a04e802c01600b00540ac60500028130c0a000a007003801c00d0291813000a04830223754007001407c403a01d00e8072038332232598009802980c1baa0018980c9919bb0301d001301d301e0013758603860326ea80062a6602e9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164058646600200200644b30010018a60103d87a80008992cc004cdd7980d00099ba548010cc074cdd2a40046603a6ea40112f5c097ae0898049980e9ba73301d301a0013301d301b0014bd7025eb82266006006603e00480c0c07400501b1bab3019301a301a301a301a301a301a301a301a301a3016375400e6eb8c064c058dd54c004896600200314bd7044cc068c05cc06c004cc008008c07000501948896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901648888c8cc004004014896600200310058992cc004006266008604000400d1330053020002330030030014078604000280ea6eb0c00cc058dd5003a44446464646644a6603a66e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea406d220100132598009806180f9baa00189929980f99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980a18109baa0018992cc0040062b3001300f3022375400313259800800c076264b300100180f407a03d01e899912cc0040060411325980098160014401a0428148c0a80050281bae001302900240a8604e0028128c08cdd5000c071020407203901c80e2050302530223754003153302049013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016407c602060426ea8c038c084dd5000981198101baa0018a9980f24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640746601400c4646600200260066eacc038c084dd5180718109baa0022259800800c528456600266e3cdd7181280080f4528c4cc008008c09800501f2046300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c204a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f901f1bac3022002375a60400026466ec0dd418100009ba73021001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a604a003337149101023a200098008054c09800600a805100a181400144ca6002015302500199b8a489023a200098008054c098006600e66008008004805100a1814001204c3028001409466e29220102207d0000340886eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920443758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720483371666e000056600266e2000520148a40c11481b9024002200c33706002901019b8600148080cdc70020012042375c0068128dc5245022c200022323300100100322598009805800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407080e0c00c00c44646600200200644b30010018a6103d87a80008992cc004c010006260106603800297ae0899801801980f001202e301c00140688b201a180780098051baa0108a4d153300849011856616c696461746f722072657475726e65642066616c73650013656401c1":"5914ad0101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae00248888888896600264653001300a00198051805800cdc3a4009300a0024888966002600460146ea800e33001300e300b37540072300f301030100019ba5480024601e6020003370e90004dc3a4005223233001001003223300300130020024888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260146603200297ae0899801801980d801202a3019001405d2259800980298099baa00289919192cc004c06c00a26464b3001300a0018acc004c064dd5001401a2c80d22b30013009001899192cc004c07c00a0111640706eb4c074004c064dd500145660026020003159800980c9baa00280345901a459017202e405c602e6ea8004c06800e2c80c0c966002602e00315980099b8948010c0580062d13007301600140551640606ea8c064004c064004c050dd500145901248966002600a60266ea800a264646644b3001301c003802c590191bad3019001375c6032004603200260286ea800a2c809244b30013005301337540051323232332259800980e801c4c966002601660326ea8006264646644b300130220038992cc004c04000626464b300130250028074590221bae3023001301f375400f1598009807800c566002603e6ea801e01916408116407480e8c074dd500345901f1bae301f001375c603e004603e00260346ea80062c80c0c0700162c80d0dd7180d000980d001180d000980c800980a1baa0028b202491192cc004c01800626464b3001301b0028024590181bae3019001301537540071598009802800c4c8c96600260360050048b2030375c6032002602a6ea800e2c809901318099baa00291192cc004c01800626464b3001301b0028024590181bad3019001301537540071598009802800c566002602a6ea800e00516405916404c8098c04cdd500124444453001332232598009806180d1baa0018980d9919bb0301f001301f30200013758603c60366ea80062c80c8c8cc00400400c896600200314c103d87a80008992cc004cdd7980e00099ba548010cc07ccdd2a40046603e6ea40112f5c097ae0898081980f9ba73301f301c0013301f301d0014bd7025eb82266006006604200480d8c07c00501d1bab301b301c301c301c301c301c301c301c301c301c3018375401c6eb8c06cc060dd51919192cc004c030c068dd5000c4c966002602660366ea8006264b3001300e301c3754003132323322598009812801c40162c8110c088004dd718110011811000980e9baa0018b2036301f301c3754003164068601e60366ea8c034c06cdd5180f180d9baa0018b2032330083758601860346ea80408c8cc004004c00cdd59807180e1baa300e301c375400444b30010018a508acc004cdc79bae302000101a8a518998010011810800a0364078600200244b30010018a5eb822660386032603a00266004004603c00280da4464b3001300c0018992cc004c080006266010603e00200716407460366ea800e2b3001300b0018992cc004c080006264b3001300e301c3754003132323259800981200144cc034c08c00c4cc03400401e2c8108c088004c088004c074dd5000c5901b180f800c5901d180d9baa0038b2032406460326ea800a44b3001300b30193754005132323259800981080144cc89660026020603c6ea800a2646464b3001302600289980618128018992cc004c050006264b30013028001899192cc004c05c006264b3001302b0018998089815000804c5902818131baa0028acc004c05800626464653001375a6058003375a6058007375a60580049112cc004c0c001201d1640b4302c001302b001302637540051640908120c090dd50009813800c5902518119baa0028acc004c04c0062b3001302337540050058b20488b2042408460426ea80062c8118c090004c090004c07cdd500145901d18100018992cc004c03c0062b3001301e37540050058b203e8acc004c03800626464b30013024002803c590211bae3022001301e3754005159800980a800c4c8c96600260480050078b20423022001301e375400516407080e101c180e1baa0018b203c301f001301f001301a37540051640609114c0048966002601c60386ea800a2646464b300130240028992cc004c048c080dd5000c4c8c966002604e00313259800980a98119baa00189919191919194c004dd69816800cdd61816802cdd618168024dd69816801cdd69816801244444b300130330068992cc004c084c0bcdd5000c4c8c8cc89660026070007132332259800981d801c4c8cc8966002607c007133021303d01813302901b225980080140822646644b300130430018998151821000898021821802c590401bae304000130410013758607e00481ea2c81d8dd6981d8009bad303b00c303b00b8b2070375a60700026eb4c0e0028c0e00262c81a8dd6981a8009bad30350023035001303037540031640b860640171640c0302d001302c001302b001302a001302900130243754003164088604c005164090604c00260426ea80062c80f8c08c00e2c8108dd618110009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8cc8966002604c007133008302500513300e0020068b20463023001375a604600460460026044002603a6ea800a2c80da44b3001300e301c37540051323232323298009bad30250019bad30250049bad3025003981280124444b3001302a00589980618148048998090008054590270c094004c090004c08c004c088004c074dd500145901b48966002601c60386ea800a264646464646530013758604c003375a604c00b375a604c009375a604c007302600248888966002605800d13300e302b00b1330140011323322598009817801c03e2c8160dd718160009bae302c006302c0058b205218130009812800981200098118009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8c8ca60026eb0c0940066eb4c0940126eb4c09400e604a00491112cc004c0a801626601860520122660240022646644b3001302d003806c5902a1bae302a001375c605400a605400916409c3025001302400130230013022001301d375400516406d301a3754006911111192cc004c04c00a264b300130270018992cc004c054c08cdd5000c4c8c8c8cc8966002605a00713259800980d98149baa00189919191919194c004c0cc0066eb0c0cc0166eb4c0cc0126eb4c0cc00e6066004911112cc004c0e401a2660486eb0c0e002c8966002005133026006225980080144cc0880144cc088024566002605460706ea80462646464b3001304000289919912cc004c0c000a264b300130440018998179bac304300122598008014012266046608a00426002608c004821a2c8208c0fcdd5001c566002605e005132598009822000c4cc0bcdd61821800912cc00400a0091330233045002130013046002410d164104607e6ea800e2b300130360028992cc004c11000626605e6eb0c10c0048966002005004899812182280109800982300120868b2082303f375400715980099b874801800a2646464b300130460028998189bac304500322598008014566002606a60866ea800e264646644b3001304c0038054590491bad3049001375a6092004609200260886ea800e2c821226604c608e004260026090004822a2c8218c110004c110004c0fcdd5001c56600266e1d20080028992cc004c11000626605e6eb0c10c0048966002005004899812982280109800982300120868b2082303f375400715980099b874802800a264b300130440018998179bac30430012259800801401226604a608a00426002608c004821a2c8208c0fcdd5001c56600266e1d200c0028992cc004c11000626605e6eb0c10c0048966002005004899813182280109800982300120868b2082303f375400715980099b874803800a264b300130440018998179bac30430012259800801401226604c608a00426002608c004821a2c8208c0fcdd5001c56600266e1d20100028acc004c0fcdd5001c0062c82022c81e903d207a40f481e903d207a40f481e8c0f0dd500089981200109981600b112cc00400a03d1323322598009823000c4cc0b4c1140044c010c1180162c8218dd7182180098220009bac30420024100607e0071640f4607c002607c00260726ea80462c81ba2646004607c0066eb4c0f000903a44c8c008c0f000cdd6981d00120708b206c1819800981900098188009818000981780098151baa0018b2050302c0058b20543758605400260540046054002605200260486ea80062c8110c0980062c8120c088dd500545660026024005132598009813800c4cc020c09800400a2c8120c088dd50054590202040159800980898101baa009899912cc004c050c088dd5000c4c8cc89660033001323300100132330010013756600660506ea8078896600200314bd7044c8cc88cc88cc00800800489660020031003899198189ba733031375200a66062605c00266062605e00297ae0330030033033002303100140bc6eacc0b000cdd718148009980180198170011816000a0542259800800c528456600266e3cdd718159bac302b0010248a518998010011816000a04c40a54a14a28122264b30013371064b3001301f3027375400313259800980d18141baa001899191919912cc004c0c800e266026606200a26eb4c020c0b8dd5181898171baa3031302e37546062605c6ea801a2c8178dd698178009bad302f002302f001302e0013029375400316409c605660506ea800629000204c301b302737546032604e6ea8010dd6980098139baa302a302737546054604e6ea801a2b3001323259800980c800c4cdc41bad302c302937540046eb4c00cc0a4dd5181618149baa302c30293754011159800980d000c528c528204e409c604e6ea8004c0a8c09cdd5181518139baa302a302b302b302b302b302b302b302b3027375403b13259800981619198008009bac301d3029375403e44b30010018a5eb8226644b30015980099baf302f302c375400401115980099baf374c64660020026eacc07cc0b4dd5001912cc004006297adef6c608994c004dd71817000cdd59817800cc0cc0092225980099b91489000038acc004cdc7a441000038800c401503044cc0d0cdd81ba9003374c0046600c00c002818060620028178dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606266ec0dd48159ba60034bd6f7b63044ca60026eb8c0bc0066eacc0c000660680049112cc004cdc8017801c4cc0d4cdd81ba902f374c00e00b15980099b8f02f00389981a99bb0375205e6e9801c00626606a66ec0dd48019ba60023300600600140c4818860640028180c8cc0040052f5bded8c044b300100189981819bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0b80066eb4c0bc00660660049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981a19bb037520066ea0008cc01801800503020601818800a05e40a913375e604060586ea8008cdd2a40086605c00a97ae08a5040a914a0815226605c0046600800800313300400400140a8605a002605c002815a29462c814a6002444b3001301b001880146600200700199b86002001400c81424466e0ccdc1001000a410112f5223371266e08dd698160011bad302c302d001337046eb4c0b0004dd69816181680148cdc4240006eb4c0acc0b00066e092080897a981518139baa302a3027375400c91111119199118119981900799819181118181baa303330303754008660646ea0cc896600260100051598009804000c56600266012004003130030018980180120608b20608b20603758604860606ea801260026e2520009bac302230303754009375a601660606ea80126eb4c0ccc0d0c0d0c0d0c0d0c0d0c0c0dd50022444464b3001300b0048acc004c02c0062b30013300c0010048800c4c8c8cc88c02ccc0ecdd419b80337046eb4c0f0020008cdc11bad303c0030013303b375066e080040092f5c06eb4c0e8c0ec004dd6981d181d80318041981c1ba8337046eb4c0e4004cdc0a410112f464b300130070058acc004cdc4802802456600266e240112080897a899b800053300f3370200800ab300130070018acc004cdc4800a41016912271323232323232323370266e00cdc099b803370266e00cdc080399b8300648010cdc1802a401866e0c01120303370600690780099b83002482802ccdc1800a41c09c66e0ccc05800401d2080f604330150010063301400100533013001004330120010033301100100233010001001337060029014459035459035459035459035459035192cc004cdc424101691226003148202d2244e200281a8cdc199b82300b375a60720029064009bad3039303a00133038375060166eb4c0e4c0e80052f5c066446012660726ea0cdc099b82375a607400600266e08dd6981d0030011981c9ba83370400400297ae0375a607060720026eb4c0e0c0e40110334590334590331919912cc004c01c00a2b3001337109000000c4cc0e4dd40011981c9ba80014bd704590354590351bad3038303537540026eb4c09cc0d4dd5000981b981a1baa00825eb808cc88c966002604600314bd70810100008101010044cc0d0dd419b8300300133034375066e0c0080052f5c08180c96600266e200052000899b814800000620028180cc010008004dd698190009bad3032303300123370660086eb4c0c8004dd698191819800980300322c812a2c81288c0a8c0acc0acc0ac0062c8120c09cc090dd5180b18121baa001230283029302930293029001302630233754003164084604860426ea8024cc03cdd6181218109baa01723012323322330020020012259800800c00e2646644b300133722910113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902644cc014014c0b00110261bae3025001375a604c00260500028130c8c8cc004004dd5980b98129baa30173025375400844b3001001801c4c8cc896600266e4409400a2b30013371e04a0051001803204e8998028029816802204e375c604c0026eacc09c004c0a40050270a5eb7bdb180520008b203e08b2012180500098029baa00a8a4d13656400c1",_data.Type.Tuple([PolicyId,PolicyId]),[proxyPolicyId,oracleNftPolicyId]),"PlutusV3");});var V1_1Rc1OrderOrderSpend=exports.V1_1Rc1OrderOrderSpend=/*#__PURE__*/_createClass(function V1_1Rc1OrderOrderSpend(proxyPolicyId,protocolScripthash){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1OrderOrderSpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5919070101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00168a998022494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d657256310016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b30010078999119912cc004c00c0062b3001301b375401700280720388acc004c0240062b3001301b375401700280720388acc004c0100062b3001301b375401700280720388072030406080c0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800e446466002002006446600600260040052301d301e301e0019112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003203291111919800800802912cc004006200b13259800800c4cc010c08c00801a26600a6046004660060060028108c08c0050204dc0240032259800800c52f5c113301d301a301e00133002002301f00140712301d301e001911919800800801912cc00400629422b30013371e6eb8c08000400e2946266004004604200280d101e4c060dd5004c8c074c078c078c078c078c078c07800644646600200200644b30010018a508acc004cdd7801980e1810000c528c4cc008008c08400501a203c4888888888888a600244646600200200644b30010018a6103d87a80008992cc004c010006260246605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002602a00313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d3754007159800980d800c4c9660020030068992cc00400600f0078992cc004c0d000e26602a00244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130160018992cc00400600d13259800800c01e00f13259800981a001c4cc05400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981b801c4cc060004896600200500a8992cc0040063300100d800c4c008c0e800d00d403a01d00e8072076303800240d900b40d06eb000601500a40dc60680028190dd68009819801401d0341818800a05e302d375400715980099b8748020006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260680070058042062375a00300740d060620028178c0b4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014c024026600c00c91114c00488cc0180088cdd7981818169baa0010029112cc004c054c0b0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018acc004c0dc00a2b3001301b3032375400b13259800800c022264b30010018992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c566002609600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c6600200313259800981818239baa0188992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f027899912cc00400605313259800800c0aa05502a81544cc896600200302c8992cc0040062b3001305d0028992cc004c108006264b3001001817c4c96600200303081840c2061132598009830801c05a06282f0dd7000a0c2305e001417060b46ea800a2b300130480018acc004c168dd5001404e05c82da05c82b9057182c1baa001816a0b4816c0b605b02d417860b600282c8dd7000982d00120b6305800141586eb8004c15c009058182a800a0a6375c00260a800482a8c1480050501bae00130510024148609e0028268dd70009827001209e304c001412860906ea80620388228566002605e608c6ea8056264b300100180e44c96600200301d80ec4cc896600200301f8992cc0040062b30013050002899818801912cc00400a2b30013036304d375400713259800800c08e264b30010018992cc00400604b13259800800c56600260ac00519800801c4c966002607600313259800800c0a2264b30010018acc004c16400a264b3001303e0018992cc00400605713259800800c56600260b800519800800c0b605881f205882ca05902c81640b105d182d000a0b0305637540051598009822000c4c96600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944c96600260c6007034819a0c0375a003032418c60c000282f0dd6800982f80140bd060182e800a0b6375a00260b800502c417460b400282c0c158dd500140a905320a6305437540030294159029814c0a605282d0c15c00505518299baa0028acc004c1040062b300130533754005028813a0a8813a0a0414060a26ea800604c81c204c829a04d0268134099057182a000a0a430540028124092049024415460a40028280c138dd5001c08904b44c966002003159800981b98271baa0018992cc00400604913259800800c09604b1332259800800c09e264b300100181440a20511332259800800c0aa264b3001001815c0ae05713259800982e001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c2061132598009830801c4c040c18404606282f0dd7000a0c2305e00141706eb8004c17402105e182d803a0b281620b2375a00302b417060b200282b8dd6800982c00140a1059182b000a0a8375800260aa005025812a0ac30530014144609e6ea80060468262047023811c08d0541828801209e810209a81040820410204144609c0028260dd60009826801407603a8270c12c00504918239baa01580da08880da04080da04080da04080da04080da04080da04080da04080da04080da04080da04080da09080dc06e03701b413060920028238c12400a03301980cc06504a1823800a08a304700280bc05e02f0174120608a0028218c11400a02b01580ac0550461821800a0823043002809c04e0270134110608200281f8c10400a023011808c045042181f800a07a303f002807c03e01f00f4100607a00281d8c0f400a01b00d806c03503e181d800a072303b002805c02e01700b40f0607200281b8c0e400a013009804c02503a181b800a06a3033375400b00740c100740d1007803c01e00e81c0c0d4005033181a801401600b005802a06c303300140c46066005003801c00e00681a0c0c400502f18169baa003800a054911919800800801912cc004c058006266e2922010130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340ac815a446600c00446601660086eacc030c0b4dd5180618169baa00100248888c8c966002603001b1332259800980d18189baa0018992cc004c084c0c8dd5000c56600266e3cdd7181b18199baa001375c602e60666ea8c048c0ccdd5180918199baa0038999129981999b9649010d63726564656e7469616c3a3a200037326600c0029101001330100020013756601e60666ea8080cdd2a40046606a6ea40b92f5c1153303149013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640c102940c0606a60646ea8c0d4c0c8dd5180898191baa30353032375400302740bc64b30010018acc004c064c0c0dd5000c4c96600200302c8992cc00400605b02d816c0b626644b3001001817c4c966002003159800981d00146600200310068182016818206e81840c206103040ec607000281b0dd7000981b8012070303500140cc60626ea8006056817205702b815c0ad036192cc004c064c0c0dd5000c4c966002603660626ea80062606a60646ea80060548178c054c0c4dd5180818189baa30343031375400302840b8660066eb0c03cc0c0dd500e816198031bac30333030375403a037159800980f006c5660026030605e6ea806a33001303330303754606660606ea806a6eb0c0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecc0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecdd5980618181baa01d48888c8cc00400401488c966002603e003133015006375c6074606e6ea800a2b30013025001899198008009bac303b3038375400644b30010018a518acc004cc014014c0f0006266004004607a00314a081b103a45660026040003132330010013758607660706ea800c896600200314a115980099802802981e000c528c4cc008008c0f400503620748acc004cdc3a400c003132337126eb4c0ec004c8cc004004dd6181e181e801112cc0040062900044cc896600266010010005133700002900144005039181e80099801001181f000a0763037375400515980099b87480200062646644b30013028303937540051598009814181c9baa303d303e003899b89375a607a60746ea8008006266e20dd6981e981d1baa00200140dd14a081b8c0ec004dd6981d981c1baa00330373754602c606e6ea80162b30013370e9005000c4c8cc8966002605060726ea800a2b3001302830393754607a607c0071337120026eb4c0f4c0e8dd500144cdc40009bad303d303a375400481ba2941037181d8009bad303b30383754006606e6ea8c0e8c0dcdd5002c4cc048010cdd2a4004660726074606e6ea80092f5c081a1034206840d081a1034181a9baa001409102d45660026030605e6ea806a330013033303037540353253302f3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40b522010013259800980d18189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980e98199baa0018992cc0040062b3001301d3034375400313259800800c0be264b300100181840c2061030899912cc00400606513259800981f0014401a06681d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0b903240ba05d02e817207430373034375400302c40c4602e60666ea8c048c0ccdd5000981a98191baa001814a05e3300400102d3758601e60606ea80766600c6eb0c0ccc0c0dd500e80da444b3001301b3032375400313232598009811981a1baa0018acc004c96600330013371e6eb8c0e4c0d8dd5002818d28528a0668a51899912cc004006330010018cc004cdc79bae301c30383754602e60706ea800400e942945035400900d400a005002801207a14a2602a606c6ea80150331bae30383035375400313259800980f181a9baa0018992cc004c07cc0d8dd5000c4c9660026040606e6ea8006264b30013375e607860726ea8004c080cc0ecc080cc0ecc0f0c0e4dd500225eb80cc0ed300103d87a80004bd704660026eacc060c0e4dd5000cc060c0e4dd5180c181c9baa0069119b89337020026eb4c0f8c0fcc0fcc0fcc0ecdd50140012444b30010028a508994c004c966002604c607a6ea800626eb4c0f8c104dd59820981f1baa0018a400081d8c1000066ebcc100c1040066eac00d22259800800c566002600400d13300500348002294103d44c96600266ebcc1000053010140008acc004cc018010dd6982098221bab3041001898019ba630450028a5040f91598009980300224001130030078a5040f881f0c10c0050410ca60020030049119820801198209ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0fc0066eacc10000660880069112cc004cdc8a441000038acc004cdc7a441000038998029815198229ba60024bd70000c4cc015300103d87a8000006410119800803c006446600e0046608e66ec0dd48029ba6004001401c82006084004820229422942294104122941036181d981c1baa0018a9981b2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640d465300130010019bad303b303837540053758603860706ea80952225980099b8800248002298103d87a800089980180080120701112cc00400a298103d87a80008acc004c0880062604266078607a00497ae08cc00400e607c005301b001400c81b903b454cc0d524014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640d06530010019bac303a30373754049480010011112cc00400a298103d87a80008acc004cdd7981e00100344c080cc0ecdd4000a5eb8233001003981e8014cdc0000a4004801903620748a9981a248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640cc6070606a6ea80162a6606692019d6578706563740a2020202020202020202076315f315f7263315f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c902b40c8606e60686ea8c0dcc0d0dd51809981a1baa00130363033375400302840c0812205a40b48168c004004888c9660020071323233223300a00233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051018206e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81890311bac3034002375a60640026466ec0dd418190009ba73033001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606e003337149101023a200098008054c0e000600a805100a181d00144ca6002015303700199b8a489023a200098008054c0e0006600e66008008004805100a181d0012070303a00140dc66e29220102207d0000340d06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901520683758007133006375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40d866e2ccdc0000acc004cdc4000a402914818229037206c004401866e0c00520203370c002901019b8e00400240cc6eb800d0371b8a4881022c2000060306ea8024dc3a40086e1d2000805402a01500a407060300026030603200260286ea800e2c80886026002601c6ea8052293454cc0312411856616c696461746f722072657475726e65642066616c73650013656402c1":"5915d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e9520009180a980b180b000c896600200314bd7044cc054c048c058004cc008008c05c00501448c054c05800644646600200200644b30010018a508acc004cdc79bae30180010038a51899801001180c800a02640592232330010010032233003001300200298081baa00a9180a980b180b180b180b180b180b000c88c8cc00400400c896600200314a115980099baf003301430180018a51899801001180c800a0264059370e90034dc3a4011370e9005244444444444466446644b3001301400a8992cc004c054c084dd5000c4c966002603460446ea80062b30013371e6eb8c098c08cdd50009bae301130233754601e60466ea8c03cc08cdd519914c004c00800a2003223259800980d800c4c8c966002605c0050048b2056375c605800260506ea800e2b3001301f001899192cc004c0b800a0091640ac6eb8c0b0004c0a0dd5001c59026204c302637540049112cc004c06cc09cdd500244c8cc8966002605e00313259800980f98159baa001899191919912cc004c0d400e264b30013025303137540031323232323232323232329800981f800cc0fc026607e011303f007981f8034c0fc016607e009303f003981f8012444444444b3001304900a89981018240098998100040998100038998100030998100028998100020998100018998100010998100008998100048992cc004c0e4c114dd500b44c8c8c8c8ca60026eb8c138006609e003375c609c00b375c609c009375c609c007375c609c0049111112cc004c15401626464b30013046001899192cc004c16400a0211641586eb8c15c004c14cdd50014566002609400315980098299baa00280745905445905120a23051375400260a800b164148304e001304d001304c001304b0013046375402d1641102b300130383044375402d132323259800982600144cc0c8dd61825801912cc00400a2b3001303d30493754007132323259800982880144cc098c14000c4c9660026082003132598009829800c4c8c966002608800313259800982b000c4cc0acc1540040b22c8298c144dd500145660026090003132323298009bad30570019bad30570039bad305700248896600260b60090318b20b0182b800982b00098289baa0028b209e413c609e6ea8004c1480062c8280c138dd50014566002608a00315980098271baa00281445904f45904c2098304c3754003164138609e002609e00260946ea800e2c8242264b3001303e304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590491825000982500098229baa0168b20868b208c181f800981f000981e800981e000981d800981d000981c800981c000981b80098191baa0018b206030340058b20643032001303200230320013031001302c37540031640a8605c0031640b06eb8c0b0004c0b4004c0a0dd50024590260888c96600260340031323259800981680140122c8150dd7181580098139baa0038acc004c078006264b3001302c0018998091bac302b0012259800801401633001007981680144c004c0b800900720568b205230273754007159800980d800c4c96600260580031330123758605600244b3001002802c6600200f302d002898009817001200e40ad1640a4604e6ea800e2b3001300d00189919912cc004c0b80062660286eb0c0b400489660020050078cc004026605e0051300130300024024816a2c8158dd69815800981600098139baa0038acc004c03000626464b3001302d00280245902a1bad302b001302737540071598009805800c4c8c966002605a0050048b2054375a6056002604e6ea800e2b30013370e9006000c4c8c966002605a0050048b2054375c6056002604e6ea800e2c8129025204a40948129025204a3025375400464b300130173023375400313259800980c98121baa0018981418129baa0018b2046301230243754602060486ea8c09cc090dd5000c59022198019bac300f3023375403204113300a3756601660466ea8064cdd2a40046604a6ea407d2f5c1164085164084604a60446ea8c094c088dd5180718111baa302530223754003164080660046eb0c090c084dd500b80945660026030015159800980a18101baa0118cc004c090c084dd5181218109baa0119bac3024302530253025302530253025302530253021375402f302430253025302530253025302530253021375402f3756601260426ea805d22223233001001005223259800980d800c4cc04c018dd7181598141baa0028acc004c07c006264660020026eb0c0b0c0a4dd5001912cc00400629462b300133005005302d0018998010011817000c528205040ad159800980e000c4c8cc004004dd6181618149baa0032259800800c52845660026600a00a605a00314a3133002002302e00140a0815a2b3001300e00189919b89375a605800264660020026eb0c0b4c0b8008896600200314800226644b300133008008002899b800014800a20028158c0b8004cc008008c0bc00502c18141baa0028acc004c0340062646644b30013022302a3754005159800981118151baa302e302f003899b89375a605c60566ea8008006266e20dd6981718159baa00200140a514a08148c0b0004dd6981618149baa00330283754602860506ea80162b3001300c00189919912cc004c088c0a8dd50014566002604460546ea8c0b8c0bc00e266e24004dd6981718159baa002899b88001375a605c60566ea800902945282052302c001375a605860526ea800cc0a0dd5181598141baa00589980780219ba548008cc0a8c0acc0a0dd500125eb81026204c40988131026204c302637540028b203e8acc004c050c080dd5008c4c966002602a60426ea800626464b3001301b30233754003159800cc004888c966002603600313259800800c00e264b300100180240120090048992cc004c0bc00e00d00540b06eb800502f1816000a05430283754009159800980f800c4c9660020030038992cc0040060090048024012264b3001302f003803401502c1bae00140bc60580028150c0a0dd50024009026204c30263754007222329800800c0120068008888c966002603c00313259800800c01a264b3001001803c01e00f0078992cc004c0c800e00b00840bc6eb80050321817800a05a302b37540071598009811000c4c9660020030068992cc00400600f0078992cc004c0c800e26603000244b3001002803c4c96600200319800805400626004606a006805201700b805c02d03618198012062804205e3758003007803a064302f00140b460566ea800e2b3001301f0018992cc00400600d13259800800c01e00f132598009819001c4cc06000489660020050078992cc0040063300100a800c4c008c0d400d00a402e01700b805a06c303300240c500840bc6eb000600f00740c8605e0028168c0acdd5001c566002602200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303500389980d800912cc00400a01513259800800c6600201b00189801181c001a01a807403a01d00e40e4606c00481a20168190dd6000c02a01481a8c0c80050301bad0013031002803a064302f00140b460566ea800e2b300130100018992cc00400600d13259800800c01e00f0078992cc004c0c800e00b00840bc6eb400600e8190c0bc00502d18159baa0038acc004c03c006264b300100180344c966002003007803c01e264b30013032003802c02102f1bad001803a064302f00140b460566ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013032003802c02102f1bae00140c8605e0028168c0acdd5001c015029205240a48149029205240a460526ea800a64b300130183024375400313259800980d18129baa0018992cc004c068c098dd5000c4c8c8cc8966002605e00710058b2058302c001375c60580046058002604e6ea80062c8128c0a4c098dd5000c59024180998129baa3011302537546050604a6ea80062c8118cc010dd6180818121baa01a0219bae30273024375400291112cc006600266e3cdd7181598141baa002024a50a51409914a31332259800800c4c966002603c60546ea800a264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800800c566002606a005159800981218181baa0058992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c4c96600200301c8992cc0040062b300130490028cc00404e330010118cc00403e3300100d8cc00402e330010098cc00401e330010058cc00400e330010018992cc004c0e4c114dd500c44c96600200301f8992cc004006041020810408226644b300100181144c966002003023811c08e0471332259800800c096264b3001001813409a04d026899912cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81640b226644b300100181744c966002003159800982d80144c966002609600313259800800c0c6264b300100181940ca0650328992cc004c17c00e02d03341706eb800505f182e000a0b4305837540051598009827800c56600260b06ea800a0270304165030415882b0c158dd5000c0bd05840be05f02f817a0b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270dd7000982780120a0304d001412c6eb8004c13000904d1825000a0903046375403101e41102b300130383044375402b13259800800c07a264b300100180fc07e26644b3001001810c4c966002003159800982700144cc0d000c8966002005159800981f98259baa0038992cc00400604b13259800800c4c9660020030278992cc0040062b300130540028cc00400e264b300130440018992cc00400605513259800800c56600260ae005132598009823800c4c96600200302d8992cc0040062b3001305a0028cc00400605902e40c902e415d02e81740ba05c82d8c160005056182a1baa0028acc004c12c006264b3001001816c4c96600200302e81740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d2264b30013061003819c0d505e1bad00181a20c2305e00141706eb4004c17400a06282f0c16c0050591bad001305a00281720b63058001415860a86ea800a058829105218291baa001815a0a8815c0ae05702b416060aa0028298c144dd50014566002609000315980098289baa002813c0a505240a504f209e304f375400302840b1028414502881440a205082a8c1480050501829001409a04d02681320a63050001413860986ea800e0488252264b30010018acc004c100c130dd5000c4c9660020030268992cc00400604f027899912cc00400605313259800800c0aa05502a899912cc00400605913259800800c0b605b02d8992cc004c16800e2b300100781744c96600200302f817c0be05f1332259800800c0c6264b300100181940ca0650328992cc004c17c00e2602060be02303341706eb800505f182e000a0b4375c00260b601082e0c16401d05740b90571bad001816a0b4305700141546eb4004c15800a05482b8c1500050521bac0013053002813c09d0541828800a09e304d3754003025412d025812c09604a8290c13c00904d408904b408a045022811209e304c00141286eb0004c12c00a03f01f413060920028238c114dd500ac07504340750204075020407502040750204075020407502040750204075020407502040750204075046407603b01d80ea09430470014114608e00501b80dc06e0368240c1140050431822801406603301980ca08c30430014104608600501780bc05e02e8220c10400503f1820801405602b01580aa084303f00140f4607e005013809c04e0268200c0f400503b181e8014046023011808a07c303b00140e4607600500f807c03e01e81e0c0e4005037181c801403601b00d806a074303700140d4606e00500b805c02e01681c0c0d400503318189baa005804a05e804a064804c02601300940d860660028188c0cc00a00f007803c01d0341818800a05e3031002802c01600b00540c8605e0028168c0acdd5001400d0290cc004cdc79bae3018302a3754602c60546ea800400e942945028400a005002801205e14a2602860506ea80090262264b300130183024375400313259800980c98129baa0018992cc004c068c098dd5000c4c96600266ebcc0acc0a0dd5000980b99815180b99815181598141baa0044bd701981526103d87a80004bd704660026eacc050c0a0dd5000cc050c0a0dd5180a18141baa0069119b89337020026eb4c0b4c0b8c0b8c0b8c0a8dd50100012444b30010028a508994c004c966002604060586ea800626eb4c0b4c0c0dd5981818169baa0018a40008158c0bc0066ebcc0bcc0c00066eac00d22259800800c566002600400d13300500348002294102d44c96600266ebcc0bc0053010140008acc004cc018010dd6981818199bab3030001898019ba630340028a5040b91598009980300224001130030078a5040b88170c0c80050300ca60020030049119818001198181ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0b80066eacc0bc00660660069112cc004cdc8a441000038acc004cdc7a4410000389980298109981a1ba60024bd70000c4cc015300103d87a800000640c119800803c006446600e0046606c66ec0dd48029ba6004001401c81806062004817a29422942294103022941026181518139baa0018b204a3298009800800cdd6981518139baa0029bac30153027375403a9112cc004cdc40012400114c103d87a800089980180080120501112cc00400a298103d87a80008acc004c0700062603066056605800497ae08cc00400e605a005337000029000a006409c81522c8120ca600200337586052604c6ea807290002002222598008014530103d87a80008acc004cdd7981580100344c05ccc0a8dd4000a5eb823300100398160014cdc0000a4004801902620528b2046302730243754604e60486ea80522c81122c8110c098c08cdd5181318119baa300f30233754002604a60446ea80062c8100cc008dd6181218109baa0170128b203e407c80f888cc0100088cdd7981298111baa001002223300400223300d30043756601c60446ea8c038c088dd5000801111919800800801912cc0040062980103d87a80008992cc004c010006260226604800297ae0899801801981300120403024001408860140143012004301230130044590090c028004c014dd5005c52689b2b20061",_data.Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");});var V1_1Rc1OrderOrderElse=exports.V1_1Rc1OrderOrderElse=/*#__PURE__*/_createClass(function V1_1Rc1OrderOrderElse(proxyPolicyId,protocolScripthash){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1OrderOrderElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5919070101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00168a998022494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d657256310016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b30010078999119912cc004c00c0062b3001301b375401700280720388acc004c0240062b3001301b375401700280720388acc004c0100062b3001301b375401700280720388072030406080c0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800e446466002002006446600600260040052301d301e301e0019112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003203291111919800800802912cc004006200b13259800800c4cc010c08c00801a26600a6046004660060060028108c08c0050204dc0240032259800800c52f5c113301d301a301e00133002002301f00140712301d301e001911919800800801912cc00400629422b30013371e6eb8c08000400e2946266004004604200280d101e4c060dd5004c8c074c078c078c078c078c078c07800644646600200200644b30010018a508acc004cdd7801980e1810000c528c4cc008008c08400501a203c4888888888888a600244646600200200644b30010018a6103d87a80008992cc004c010006260246605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002602a00313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d3754007159800980d800c4c9660020030068992cc00400600f0078992cc004c0d000e26602a00244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130160018992cc00400600d13259800800c01e00f13259800981a001c4cc05400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981b801c4cc060004896600200500a8992cc0040063300100d800c4c008c0e800d00d403a01d00e8072076303800240d900b40d06eb000601500a40dc60680028190dd68009819801401d0341818800a05e302d375400715980099b8748020006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260680070058042062375a00300740d060620028178c0b4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014c024026600c00c91114c00488cc0180088cdd7981818169baa0010029112cc004c054c0b0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018acc004c0dc00a2b3001301b3032375400b13259800800c022264b30010018992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c566002609600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c6600200313259800981818239baa0188992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f027899912cc00400605313259800800c0aa05502a81544cc896600200302c8992cc0040062b3001305d0028992cc004c108006264b3001001817c4c96600200303081840c2061132598009830801c05a06282f0dd7000a0c2305e001417060b46ea800a2b300130480018acc004c168dd5001404e05c82da05c82b9057182c1baa001816a0b4816c0b605b02d417860b600282c8dd7000982d00120b6305800141586eb8004c15c009058182a800a0a6375c00260a800482a8c1480050501bae00130510024148609e0028268dd70009827001209e304c001412860906ea80620388228566002605e608c6ea8056264b300100180e44c96600200301d80ec4cc896600200301f8992cc0040062b30013050002899818801912cc00400a2b30013036304d375400713259800800c08e264b30010018992cc00400604b13259800800c56600260ac00519800801c4c966002607600313259800800c0a2264b30010018acc004c16400a264b3001303e0018992cc00400605713259800800c56600260b800519800800c0b605881f205882ca05902c81640b105d182d000a0b0305637540051598009822000c4c96600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944c96600260c6007034819a0c0375a003032418c60c000282f0dd6800982f80140bd060182e800a0b6375a00260b800502c417460b400282c0c158dd500140a905320a6305437540030294159029814c0a605282d0c15c00505518299baa0028acc004c1040062b300130533754005028813a0a8813a0a0414060a26ea800604c81c204c829a04d0268134099057182a000a0a430540028124092049024415460a40028280c138dd5001c08904b44c966002003159800981b98271baa0018992cc00400604913259800800c09604b1332259800800c09e264b300100181440a20511332259800800c0aa264b3001001815c0ae05713259800982e001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c2061132598009830801c4c040c18404606282f0dd7000a0c2305e00141706eb8004c17402105e182d803a0b281620b2375a00302b417060b200282b8dd6800982c00140a1059182b000a0a8375800260aa005025812a0ac30530014144609e6ea80060468262047023811c08d0541828801209e810209a81040820410204144609c0028260dd60009826801407603a8270c12c00504918239baa01580da08880da04080da04080da04080da04080da04080da04080da04080da04080da04080da04080da09080dc06e03701b413060920028238c12400a03301980cc06504a1823800a08a304700280bc05e02f0174120608a0028218c11400a02b01580ac0550461821800a0823043002809c04e0270134110608200281f8c10400a023011808c045042181f800a07a303f002807c03e01f00f4100607a00281d8c0f400a01b00d806c03503e181d800a072303b002805c02e01700b40f0607200281b8c0e400a013009804c02503a181b800a06a3033375400b00740c100740d1007803c01e00e81c0c0d4005033181a801401600b005802a06c303300140c46066005003801c00e00681a0c0c400502f18169baa003800a054911919800800801912cc004c058006266e2922010130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340ac815a446600c00446601660086eacc030c0b4dd5180618169baa00100248888c8c966002603001b1332259800980d18189baa0018992cc004c084c0c8dd5000c56600266e3cdd7181b18199baa001375c602e60666ea8c048c0ccdd5180918199baa0038999129981999b9649010d63726564656e7469616c3a3a200037326600c0029101001330100020013756601e60666ea8080cdd2a40046606a6ea40b92f5c1153303149013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640c102940c0606a60646ea8c0d4c0c8dd5180898191baa30353032375400302740bc64b30010018acc004c064c0c0dd5000c4c96600200302c8992cc00400605b02d816c0b626644b3001001817c4c966002003159800981d00146600200310068182016818206e81840c206103040ec607000281b0dd7000981b8012070303500140cc60626ea8006056817205702b815c0ad036192cc004c064c0c0dd5000c4c966002603660626ea80062606a60646ea80060548178c054c0c4dd5180818189baa30343031375400302840b8660066eb0c03cc0c0dd500e816198031bac30333030375403a037159800980f006c5660026030605e6ea806a33001303330303754606660606ea806a6eb0c0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecc0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecdd5980618181baa01d48888c8cc00400401488c966002603e003133015006375c6074606e6ea800a2b30013025001899198008009bac303b3038375400644b30010018a518acc004cc014014c0f0006266004004607a00314a081b103a45660026040003132330010013758607660706ea800c896600200314a115980099802802981e000c528c4cc008008c0f400503620748acc004cdc3a400c003132337126eb4c0ec004c8cc004004dd6181e181e801112cc0040062900044cc896600266010010005133700002900144005039181e80099801001181f000a0763037375400515980099b87480200062646644b30013028303937540051598009814181c9baa303d303e003899b89375a607a60746ea8008006266e20dd6981e981d1baa00200140dd14a081b8c0ec004dd6981d981c1baa00330373754602c606e6ea80162b30013370e9005000c4c8cc8966002605060726ea800a2b3001302830393754607a607c0071337120026eb4c0f4c0e8dd500144cdc40009bad303d303a375400481ba2941037181d8009bad303b30383754006606e6ea8c0e8c0dcdd5002c4cc048010cdd2a4004660726074606e6ea80092f5c081a1034206840d081a1034181a9baa001409102d45660026030605e6ea806a330013033303037540353253302f3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40b522010013259800980d18189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980e98199baa0018992cc0040062b3001301d3034375400313259800800c0be264b300100181840c2061030899912cc00400606513259800981f0014401a06681d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0b903240ba05d02e817207430373034375400302c40c4602e60666ea8c048c0ccdd5000981a98191baa001814a05e3300400102d3758601e60606ea80766600c6eb0c0ccc0c0dd500e80da444b3001301b3032375400313232598009811981a1baa0018acc004c96600330013371e6eb8c0e4c0d8dd5002818d28528a0668a51899912cc004006330010018cc004cdc79bae301c30383754602e60706ea800400e942945035400900d400a005002801207a14a2602a606c6ea80150331bae30383035375400313259800980f181a9baa0018992cc004c07cc0d8dd5000c4c9660026040606e6ea8006264b30013375e607860726ea8004c080cc0ecc080cc0ecc0f0c0e4dd500225eb80cc0ed300103d87a80004bd704660026eacc060c0e4dd5000cc060c0e4dd5180c181c9baa0069119b89337020026eb4c0f8c0fcc0fcc0fcc0ecdd50140012444b30010028a508994c004c966002604c607a6ea800626eb4c0f8c104dd59820981f1baa0018a400081d8c1000066ebcc100c1040066eac00d22259800800c566002600400d13300500348002294103d44c96600266ebcc1000053010140008acc004cc018010dd6982098221bab3041001898019ba630450028a5040f91598009980300224001130030078a5040f881f0c10c0050410ca60020030049119820801198209ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0fc0066eacc10000660880069112cc004cdc8a441000038acc004cdc7a441000038998029815198229ba60024bd70000c4cc015300103d87a8000006410119800803c006446600e0046608e66ec0dd48029ba6004001401c82006084004820229422942294104122941036181d981c1baa0018a9981b2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640d465300130010019bad303b303837540053758603860706ea80952225980099b8800248002298103d87a800089980180080120701112cc00400a298103d87a80008acc004c0880062604266078607a00497ae08cc00400e607c005301b001400c81b903b454cc0d524014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640d06530010019bac303a30373754049480010011112cc00400a298103d87a80008acc004cdd7981e00100344c080cc0ecdd4000a5eb8233001003981e8014cdc0000a4004801903620748a9981a248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640cc6070606a6ea80162a6606692019d6578706563740a2020202020202020202076315f315f7263315f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c902b40c8606e60686ea8c0dcc0d0dd51809981a1baa00130363033375400302840c0812205a40b48168c004004888c9660020071323233223300a00233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051018206e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81890311bac3034002375a60640026466ec0dd418190009ba73033001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606e003337149101023a200098008054c0e000600a805100a181d00144ca6002015303700199b8a489023a200098008054c0e0006600e66008008004805100a181d0012070303a00140dc66e29220102207d0000340d06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901520683758007133006375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40d866e2ccdc0000acc004cdc4000a402914818229037206c004401866e0c00520203370c002901019b8e00400240cc6eb800d0371b8a4881022c2000060306ea8024dc3a40086e1d2000805402a01500a407060300026030603200260286ea800e2c80886026002601c6ea8052293454cc0312411856616c696461746f722072657475726e65642066616c73650013656402c1":"5915d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e9520009180a980b180b000c896600200314bd7044cc054c048c058004cc008008c05c00501448c054c05800644646600200200644b30010018a508acc004cdc79bae30180010038a51899801001180c800a02640592232330010010032233003001300200298081baa00a9180a980b180b180b180b180b180b000c88c8cc00400400c896600200314a115980099baf003301430180018a51899801001180c800a0264059370e90034dc3a4011370e9005244444444444466446644b3001301400a8992cc004c054c084dd5000c4c966002603460446ea80062b30013371e6eb8c098c08cdd50009bae301130233754601e60466ea8c03cc08cdd519914c004c00800a2003223259800980d800c4c8c966002605c0050048b2056375c605800260506ea800e2b3001301f001899192cc004c0b800a0091640ac6eb8c0b0004c0a0dd5001c59026204c302637540049112cc004c06cc09cdd500244c8cc8966002605e00313259800980f98159baa001899191919912cc004c0d400e264b30013025303137540031323232323232323232329800981f800cc0fc026607e011303f007981f8034c0fc016607e009303f003981f8012444444444b3001304900a89981018240098998100040998100038998100030998100028998100020998100018998100010998100008998100048992cc004c0e4c114dd500b44c8c8c8c8ca60026eb8c138006609e003375c609c00b375c609c009375c609c007375c609c0049111112cc004c15401626464b30013046001899192cc004c16400a0211641586eb8c15c004c14cdd50014566002609400315980098299baa00280745905445905120a23051375400260a800b164148304e001304d001304c001304b0013046375402d1641102b300130383044375402d132323259800982600144cc0c8dd61825801912cc00400a2b3001303d30493754007132323259800982880144cc098c14000c4c9660026082003132598009829800c4c8c966002608800313259800982b000c4cc0acc1540040b22c8298c144dd500145660026090003132323298009bad30570019bad30570039bad305700248896600260b60090318b20b0182b800982b00098289baa0028b209e413c609e6ea8004c1480062c8280c138dd50014566002608a00315980098271baa00281445904f45904c2098304c3754003164138609e002609e00260946ea800e2c8242264b3001303e304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590491825000982500098229baa0168b20868b208c181f800981f000981e800981e000981d800981d000981c800981c000981b80098191baa0018b206030340058b20643032001303200230320013031001302c37540031640a8605c0031640b06eb8c0b0004c0b4004c0a0dd50024590260888c96600260340031323259800981680140122c8150dd7181580098139baa0038acc004c078006264b3001302c0018998091bac302b0012259800801401633001007981680144c004c0b800900720568b205230273754007159800980d800c4c96600260580031330123758605600244b3001002802c6600200f302d002898009817001200e40ad1640a4604e6ea800e2b3001300d00189919912cc004c0b80062660286eb0c0b400489660020050078cc004026605e0051300130300024024816a2c8158dd69815800981600098139baa0038acc004c03000626464b3001302d00280245902a1bad302b001302737540071598009805800c4c8c966002605a0050048b2054375a6056002604e6ea800e2b30013370e9006000c4c8c966002605a0050048b2054375c6056002604e6ea800e2c8129025204a40948129025204a3025375400464b300130173023375400313259800980c98121baa0018981418129baa0018b2046301230243754602060486ea8c09cc090dd5000c59022198019bac300f3023375403204113300a3756601660466ea8064cdd2a40046604a6ea407d2f5c1164085164084604a60446ea8c094c088dd5180718111baa302530223754003164080660046eb0c090c084dd500b80945660026030015159800980a18101baa0118cc004c090c084dd5181218109baa0119bac3024302530253025302530253025302530253021375402f302430253025302530253025302530253021375402f3756601260426ea805d22223233001001005223259800980d800c4cc04c018dd7181598141baa0028acc004c07c006264660020026eb0c0b0c0a4dd5001912cc00400629462b300133005005302d0018998010011817000c528205040ad159800980e000c4c8cc004004dd6181618149baa0032259800800c52845660026600a00a605a00314a3133002002302e00140a0815a2b3001300e00189919b89375a605800264660020026eb0c0b4c0b8008896600200314800226644b300133008008002899b800014800a20028158c0b8004cc008008c0bc00502c18141baa0028acc004c0340062646644b30013022302a3754005159800981118151baa302e302f003899b89375a605c60566ea8008006266e20dd6981718159baa00200140a514a08148c0b0004dd6981618149baa00330283754602860506ea80162b3001300c00189919912cc004c088c0a8dd50014566002604460546ea8c0b8c0bc00e266e24004dd6981718159baa002899b88001375a605c60566ea800902945282052302c001375a605860526ea800cc0a0dd5181598141baa00589980780219ba548008cc0a8c0acc0a0dd500125eb81026204c40988131026204c302637540028b203e8acc004c050c080dd5008c4c966002602a60426ea800626464b3001301b30233754003159800cc004888c966002603600313259800800c00e264b300100180240120090048992cc004c0bc00e00d00540b06eb800502f1816000a05430283754009159800980f800c4c9660020030038992cc0040060090048024012264b3001302f003803401502c1bae00140bc60580028150c0a0dd50024009026204c30263754007222329800800c0120068008888c966002603c00313259800800c01a264b3001001803c01e00f0078992cc004c0c800e00b00840bc6eb80050321817800a05a302b37540071598009811000c4c9660020030068992cc00400600f0078992cc004c0c800e26603000244b3001002803c4c96600200319800805400626004606a006805201700b805c02d03618198012062804205e3758003007803a064302f00140b460566ea800e2b3001301f0018992cc00400600d13259800800c01e00f132598009819001c4cc06000489660020050078992cc0040063300100a800c4c008c0d400d00a402e01700b805a06c303300240c500840bc6eb000600f00740c8605e0028168c0acdd5001c566002602200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303500389980d800912cc00400a01513259800800c6600201b00189801181c001a01a807403a01d00e40e4606c00481a20168190dd6000c02a01481a8c0c80050301bad0013031002803a064302f00140b460566ea800e2b300130100018992cc00400600d13259800800c01e00f0078992cc004c0c800e00b00840bc6eb400600e8190c0bc00502d18159baa0038acc004c03c006264b300100180344c966002003007803c01e264b30013032003802c02102f1bad001803a064302f00140b460566ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013032003802c02102f1bae00140c8605e0028168c0acdd5001c015029205240a48149029205240a460526ea800a64b300130183024375400313259800980d18129baa0018992cc004c068c098dd5000c4c8c8cc8966002605e00710058b2058302c001375c60580046058002604e6ea80062c8128c0a4c098dd5000c59024180998129baa3011302537546050604a6ea80062c8118cc010dd6180818121baa01a0219bae30273024375400291112cc006600266e3cdd7181598141baa002024a50a51409914a31332259800800c4c966002603c60546ea800a264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800800c566002606a005159800981218181baa0058992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c4c96600200301c8992cc0040062b300130490028cc00404e330010118cc00403e3300100d8cc00402e330010098cc00401e330010058cc00400e330010018992cc004c0e4c114dd500c44c96600200301f8992cc004006041020810408226644b300100181144c966002003023811c08e0471332259800800c096264b3001001813409a04d026899912cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81640b226644b300100181744c966002003159800982d80144c966002609600313259800800c0c6264b300100181940ca0650328992cc004c17c00e02d03341706eb800505f182e000a0b4305837540051598009827800c56600260b06ea800a0270304165030415882b0c158dd5000c0bd05840be05f02f817a0b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270dd7000982780120a0304d001412c6eb8004c13000904d1825000a0903046375403101e41102b300130383044375402b13259800800c07a264b300100180fc07e26644b3001001810c4c966002003159800982700144cc0d000c8966002005159800981f98259baa0038992cc00400604b13259800800c4c9660020030278992cc0040062b300130540028cc00400e264b300130440018992cc00400605513259800800c56600260ae005132598009823800c4c96600200302d8992cc0040062b3001305a0028cc00400605902e40c902e415d02e81740ba05c82d8c160005056182a1baa0028acc004c12c006264b3001001816c4c96600200302e81740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d2264b30013061003819c0d505e1bad00181a20c2305e00141706eb4004c17400a06282f0c16c0050591bad001305a00281720b63058001415860a86ea800a058829105218291baa001815a0a8815c0ae05702b416060aa0028298c144dd50014566002609000315980098289baa002813c0a505240a504f209e304f375400302840b1028414502881440a205082a8c1480050501829001409a04d02681320a63050001413860986ea800e0488252264b30010018acc004c100c130dd5000c4c9660020030268992cc00400604f027899912cc00400605313259800800c0aa05502a899912cc00400605913259800800c0b605b02d8992cc004c16800e2b300100781744c96600200302f817c0be05f1332259800800c0c6264b300100181940ca0650328992cc004c17c00e2602060be02303341706eb800505f182e000a0b4375c00260b601082e0c16401d05740b90571bad001816a0b4305700141546eb4004c15800a05482b8c1500050521bac0013053002813c09d0541828800a09e304d3754003025412d025812c09604a8290c13c00904d408904b408a045022811209e304c00141286eb0004c12c00a03f01f413060920028238c114dd500ac07504340750204075020407502040750204075020407502040750204075020407502040750204075046407603b01d80ea09430470014114608e00501b80dc06e0368240c1140050431822801406603301980ca08c30430014104608600501780bc05e02e8220c10400503f1820801405602b01580aa084303f00140f4607e005013809c04e0268200c0f400503b181e8014046023011808a07c303b00140e4607600500f807c03e01e81e0c0e4005037181c801403601b00d806a074303700140d4606e00500b805c02e01681c0c0d400503318189baa005804a05e804a064804c02601300940d860660028188c0cc00a00f007803c01d0341818800a05e3031002802c01600b00540c8605e0028168c0acdd5001400d0290cc004cdc79bae3018302a3754602c60546ea800400e942945028400a005002801205e14a2602860506ea80090262264b300130183024375400313259800980c98129baa0018992cc004c068c098dd5000c4c96600266ebcc0acc0a0dd5000980b99815180b99815181598141baa0044bd701981526103d87a80004bd704660026eacc050c0a0dd5000cc050c0a0dd5180a18141baa0069119b89337020026eb4c0b4c0b8c0b8c0b8c0a8dd50100012444b30010028a508994c004c966002604060586ea800626eb4c0b4c0c0dd5981818169baa0018a40008158c0bc0066ebcc0bcc0c00066eac00d22259800800c566002600400d13300500348002294102d44c96600266ebcc0bc0053010140008acc004cc018010dd6981818199bab3030001898019ba630340028a5040b91598009980300224001130030078a5040b88170c0c80050300ca60020030049119818001198181ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0b80066eacc0bc00660660069112cc004cdc8a441000038acc004cdc7a4410000389980298109981a1ba60024bd70000c4cc015300103d87a800000640c119800803c006446600e0046606c66ec0dd48029ba6004001401c81806062004817a29422942294103022941026181518139baa0018b204a3298009800800cdd6981518139baa0029bac30153027375403a9112cc004cdc40012400114c103d87a800089980180080120501112cc00400a298103d87a80008acc004c0700062603066056605800497ae08cc00400e605a005337000029000a006409c81522c8120ca600200337586052604c6ea807290002002222598008014530103d87a80008acc004cdd7981580100344c05ccc0a8dd4000a5eb823300100398160014cdc0000a4004801902620528b2046302730243754604e60486ea80522c81122c8110c098c08cdd5181318119baa300f30233754002604a60446ea80062c8100cc008dd6181218109baa0170128b203e407c80f888cc0100088cdd7981298111baa001002223300400223300d30043756601c60446ea8c038c088dd5000801111919800800801912cc0040062980103d87a80008992cc004c010006260226604800297ae0899801801981300120403024001408860140143012004301230130044590090c028004c014dd5005c52689b2b20061",_data.Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");});var V1_1Rc1ProtocolManagementProtocolManagementWithdraw=exports.V1_1Rc1ProtocolManagementProtocolManagementWithdraw=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolManagementProtocolManagementWithdraw(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolManagementProtocolManagementWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401":"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolManagementProtocolManagementPublish=exports.V1_1Rc1ProtocolManagementProtocolManagementPublish=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolManagementProtocolManagementPublish(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolManagementProtocolManagementPublish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401":"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolManagementProtocolManagementElse=exports.V1_1Rc1ProtocolManagementProtocolManagementElse=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolManagementProtocolManagementElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolManagementProtocolManagementElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401":"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw=exports.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201":"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish=exports.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201":"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else=exports.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201":"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolMintProtocolMintWithdraw=exports.V1_1Rc1ProtocolMintProtocolMintWithdraw=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolMintProtocolMintWithdraw(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolMintProtocolMintWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541":"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolMintProtocolMintPublish=exports.V1_1Rc1ProtocolMintProtocolMintPublish=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolMintProtocolMintPublish(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolMintProtocolMintPublish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541":"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolMintProtocolMintElse=exports.V1_1Rc1ProtocolMintProtocolMintElse=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolMintProtocolMintElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolMintProtocolMintElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541":"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw=exports.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator){var trace=arguments.length>5&&arguments[5]!==undefined?arguments[5]:false;_classCallCheck(this,V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281":"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301",_data.Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator]),"PlutusV3");});var V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish=exports.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish(proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator){var trace=arguments.length>5&&arguments[5]!==undefined?arguments[5]:false;_classCallCheck(this,V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281":"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301",_data.Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator]),"PlutusV3");});var V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse=exports.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse(proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator){var trace=arguments.length>5&&arguments[5]!==undefined?arguments[5]:false;_classCallCheck(this,V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281":"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301",_data.Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator]),"PlutusV3");});var V1_1Rc1ProtocolStakeProtocolStakeWithdraw=exports.V1_1Rc1ProtocolStakeProtocolStakeWithdraw=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolStakeProtocolStakeWithdraw(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolStakeProtocolStakeWithdraw);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolStakeProtocolStakePublish=exports.V1_1Rc1ProtocolStakeProtocolStakePublish=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolStakeProtocolStakePublish(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolStakeProtocolStakePublish);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProtocolStakeProtocolStakeElse=exports.V1_1Rc1ProtocolStakeProtocolStakeElse=/*#__PURE__*/_createClass(function V1_1Rc1ProtocolStakeProtocolStakeElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProtocolStakeProtocolStakeElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1ProxyNftProxyNftMint=exports.V1_1Rc1ProxyNftProxyNftMint=/*#__PURE__*/_createClass(function V1_1Rc1ProxyNftProxyNftMint(utxoRef){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProxyNftProxyNftMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");});var V1_1Rc1ProxyNftProxyNftElse=exports.V1_1Rc1ProxyNftProxyNftElse=/*#__PURE__*/_createClass(function V1_1Rc1ProxyNftProxyNftElse(utxoRef){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1ProxyNftProxyNftElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");});var V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint=exports.V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint=/*#__PURE__*/_createClass(function V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse=exports.V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse=/*#__PURE__*/_createClass(function V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse(proxyPolicyId){var trace=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;_classCallCheck(this,V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",_data.Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");});var V1_1Rc1StakingVaultStakingVaultMint=exports.V1_1Rc1StakingVaultStakingVaultMint=/*#__PURE__*/_createClass(function V1_1Rc1StakingVaultStakingVaultMint(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1StakingVaultStakingVaultMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_1Rc1StakingVaultStakingVaultSpend=exports.V1_1Rc1StakingVaultStakingVaultSpend=/*#__PURE__*/_createClass(function V1_1Rc1StakingVaultStakingVaultSpend(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1StakingVaultStakingVaultSpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_1Rc1StakingVaultStakingVaultElse=exports.V1_1Rc1StakingVaultStakingVaultElse=/*#__PURE__*/_createClass(function V1_1Rc1StakingVaultStakingVaultElse(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1StakingVaultStakingVaultElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_1Rc1TreasuryTreasuryMint=exports.V1_1Rc1TreasuryTreasuryMint=/*#__PURE__*/_createClass(function V1_1Rc1TreasuryTreasuryMint(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1TreasuryTreasuryMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_1Rc1TreasuryTreasurySpend=exports.V1_1Rc1TreasuryTreasurySpend=/*#__PURE__*/_createClass(function V1_1Rc1TreasuryTreasurySpend(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1TreasuryTreasurySpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_1Rc1TreasuryTreasuryElse=exports.V1_1Rc1TreasuryTreasuryElse=/*#__PURE__*/_createClass(function V1_1Rc1TreasuryTreasuryElse(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1TreasuryTreasuryElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_1Rc1YieldOracleYieldOracleMint=exports.V1_1Rc1YieldOracleYieldOracleMint=/*#__PURE__*/_createClass(function V1_1Rc1YieldOracleYieldOracleMint(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1YieldOracleYieldOracleMint);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_1Rc1YieldOracleYieldOracleSpend=exports.V1_1Rc1YieldOracleYieldOracleSpend=/*#__PURE__*/_createClass(function V1_1Rc1YieldOracleYieldOracleSpend(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1YieldOracleYieldOracleSpend);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");});var V1_1Rc1YieldOracleYieldOracleElse=exports.V1_1Rc1YieldOracleYieldOracleElse=/*#__PURE__*/_createClass(function V1_1Rc1YieldOracleYieldOracleElse(utxoRef,proxyPolicyId){var trace=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;_classCallCheck(this,V1_1Rc1YieldOracleYieldOracleElse);_defineProperty(this,"Script",void 0);this.Script=(0,_uplc.cborToScript)((0,_uplc.applyParamsToScript)(trace?"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",_data.Type.Tuple([_data.Type.Object({transaction_id:_data.Type.String(),output_index:_data.Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_1_rc1/index.js.map b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_1_rc1/index.js.map new file mode 100644 index 0000000000..164c672cfb --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/generated-types/v1_1_rc1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_uplc","require","_data","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","_classCallCheck","a","n","TypeError","_defineProperty","value","i","_toPrimitive","toPrimitive","call","String","Number","PolicyId","Type","ScriptHash","Contracts","Module","Bool","Boolean","Tuple_VerificationKey_COSESign1","Tuple","Ref","GovernanceConfig","logic_change","permission_change","config_change","shutdown","restore","migrate","ctor","SettingsAuthPayload","change","destination","datum","nonce","transaction_id","output_index","BigInt","SettingsRedeemer","Union","Literal","SettingsSignedRedeemer","signatures","Array","COSESign1","headers","payload","Optional","signature","HeaderMap","Headers","unprotected","MultisigScript","Signature","key_hash","AllOf","scripts","AnyOf","AtLeast","required","Before","time","After","Script","script_hash","ProxyDatum","logic","settings","TPlutusData","Denominator","DistributionOracleDatum","message","staked_usdr","staking_yield","DistributionOracleMessage","input","hurdle","floor","timestamp","base","r_max","Numerator","ProtocolOrchestratorRedeemerV1","ExecuteOrders","PublishYieldOracle","Ratio","SignedDistributionOracleMessage","Slot","YieldDistributionInput","net_distributable_income","Asset","Destination","address","payment_credential","VerificationKey","stake_credential","Inline","Pointer","slot_number","transaction_index","certificate_index","DatumHash","InlineDatum","DirectRequestV1","amount","origin","ExchangeRequestV1","min_received","reserve_asset","ExtraProtocolRedeemerV1","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","Nonce","UTxO","Validity","lower_bound","bound_type","Finite","is_inclusive","upper_bound","OrderActionV1","OMint","ORedeem","ODeposit","principal","diffusion_end","OWithdraw","OStake","OUnstake","forfeit","ODirectMint","ODirectBurn","OrderDatumV1","owner","action","data","OrderRedeemerV1","Permissions","mint","burn","withdraw","deposit","stake","unstake","direct_mint","direct_burn","yield_oracle","ProtocolConfig","reserve_assets","unstaked_yield_pot","ProtocolRedeemerV1","Mint","requests","Burn","Withdraw","Deposit","alpha","Stake","Unstake","DirectMint","DirectBurn","ProxyDatumV1","RegistryV1","treasury","usdr","order","staking_vault","migration","ReserveAsset","asset","numerator","denominator","SettingsV1","permissions","registry","config","SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage","SignedPayload_v1_1_ProtocolRedeemerV1","SignedRedeemer_v1_1_ExtraProtocolRedeemerV1","extra","StakeRequestV1","StakingVaultRedeemerV1","Undefined","TreasuryDatumV1","circulating_supply","TreasuryRequestV1","VaultDatumV1","circulating_susdr","pending_yield","diffusion_start","YieldSplitAlpha","exports","Import","SettingsProtocolSettingsProtocolSettingsSpend","proxyPolicyId","gov","trace","arguments","undefined","cborToScript","applyParamsToScript","SettingsProtocolSettingsProtocolSettingsWithdraw","SettingsProtocolSettingsProtocolSettingsPublish","SettingsProtocolSettingsProtocolSettingsElse","V1_1Rc1DistributionOracleDistributionOracleWithdraw","oracleNftPolicyId","V1_1Rc1DistributionOracleDistributionOracleElse","V1_1Rc1OrderOrderSpend","protocolScripthash","V1_1Rc1OrderOrderElse","V1_1Rc1ProtocolManagementProtocolManagementWithdraw","V1_1Rc1ProtocolManagementProtocolManagementPublish","V1_1Rc1ProtocolManagementProtocolManagementElse","V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw","V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish","V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else","V1_1Rc1ProtocolMintProtocolMintWithdraw","V1_1Rc1ProtocolMintProtocolMintPublish","V1_1Rc1ProtocolMintProtocolMintElse","V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","mintValidator","stakeValidator","managementValidator","yieldOracleValidator","V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish","V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse","V1_1Rc1ProtocolStakeProtocolStakeWithdraw","V1_1Rc1ProtocolStakeProtocolStakePublish","V1_1Rc1ProtocolStakeProtocolStakeElse","V1_1Rc1ProxyNftProxyNftMint","utxoRef","V1_1Rc1ProxyNftProxyNftElse","V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint","V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse","V1_1Rc1StakingVaultStakingVaultMint","V1_1Rc1StakingVaultStakingVaultSpend","V1_1Rc1StakingVaultStakingVaultElse","V1_1Rc1TreasuryTreasuryMint","V1_1Rc1TreasuryTreasurySpend","V1_1Rc1TreasuryTreasuryElse","V1_1Rc1YieldOracleYieldOracleMint","V1_1Rc1YieldOracleYieldOracleSpend","V1_1Rc1YieldOracleYieldOracleElse"],"sources":["../../../../src/generated-types/v1_1_rc1/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\ntype Data = Exact;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\nconst ScriptHash = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n Bool: Type.Boolean(),\n Tuple_VerificationKey_COSESign1: Type.Tuple([\n Type.String(),\n Type.Ref(\"COSESign1\"),\n ]),\n GovernanceConfig: Type.Object(\n {\n logic_change: Type.Ref(\"MultisigScript\"),\n permission_change: Type.Ref(\"MultisigScript\"),\n config_change: Type.Ref(\"MultisigScript\"),\n shutdown: Type.Ref(\"MultisigScript\"),\n restore: Type.Ref(\"MultisigScript\"),\n migrate: Type.Ref(\"MultisigScript\"),\n },\n { ctor: 0n },\n ),\n SettingsAuthPayload: Type.Object(\n {\n change: Type.Ref(\"SettingsRedeemer\"),\n destination: Type.String(),\n datum: Type.Ref(\"ProxyDatum\"),\n nonce: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n SettingsRedeemer: Type.Union([\n Type.Literal(\"ChangeLogic\", { ctor: 0n }),\n Type.Literal(\"ChangePermissions\", { ctor: 1n }),\n Type.Literal(\"ChangeConfig\", { ctor: 2n }),\n Type.Literal(\"Shutdown\", { ctor: 3n }),\n Type.Literal(\"Restore\", { ctor: 4n }),\n Type.Literal(\"Migrate\", { ctor: 5n }),\n ]),\n SettingsSignedRedeemer: Type.Object(\n {\n change: Type.Ref(\"SettingsRedeemer\"),\n signatures: Type.Array(Type.Ref(\"Tuple_VerificationKey_COSESign1\")),\n },\n { ctor: 0n },\n ),\n COSESign1: Type.Object(\n {\n headers: Type.Ref(\"Headers\"),\n payload: Type.Optional(Type.String()),\n signature: Type.String(),\n },\n { ctor: 0n },\n ),\n HeaderMap: Type.String(),\n Headers: Type.Object(\n {\n protected: Type.Ref(\"HeaderMap\"),\n unprotected: Type.Ref(\"HeaderMap\"),\n },\n { ctor: 0n },\n ),\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object(\n {\n key_hash: Type.String(),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n AllOf: Type.Object(\n {\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n AnyOf: Type.Object(\n {\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n AtLeast: Type.Object(\n {\n required: Type.BigInt(),\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n Before: Type.Object(\n {\n time: Type.BigInt(),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n After: Type.Object(\n {\n time: Type.BigInt(),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n Script: Type.Object(\n {\n script_hash: Type.String(),\n },\n { ctor: 6n },\n ),\n }),\n ]),\n ProxyDatum: Type.Object(\n {\n logic: Type.String(),\n settings: TPlutusData,\n },\n { ctor: 0n },\n ),\n Denominator: Type.BigInt(),\n DistributionOracleDatum: Type.Object(\n {\n message: Type.Ref(\"SignedDistributionOracleMessage\"),\n staked_usdr: Type.BigInt(),\n staking_yield: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n DistributionOracleMessage: Type.Object(\n {\n input: Type.Ref(\"YieldDistributionInput\"),\n hurdle: Type.Ref(\"Ratio\"),\n floor: Type.Ref(\"Ratio\"),\n timestamp: Type.Ref(\"Slot\"),\n base: Type.BigInt(),\n r_max: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n Numerator: Type.BigInt(),\n ProtocolOrchestratorRedeemerV1: Type.Union([\n Type.Object({\n ExecuteOrders: Type.Tuple(\n [Type.Ref(\"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1\")],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n PublishYieldOracle: Type.Tuple(\n [Type.Ref(\"SignedDistributionOracleMessage\")],\n { ctor: 1n },\n ),\n }),\n ]),\n Ratio: Type.Tuple([Type.Ref(\"Numerator\"), Type.Ref(\"Denominator\")]),\n SignedDistributionOracleMessage: Type.Object(\n {\n payload: Type.Ref(\n \"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage\",\n ),\n signatures: Type.Array(Type.Ref(\"Tuple_VerificationKey_COSESign1\")),\n },\n { ctor: 0n },\n ),\n Slot: Type.BigInt(),\n YieldDistributionInput: Type.Object(\n {\n net_distributable_income: Type.BigInt(),\n staked_usdr: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n Asset: Type.Tuple([Type.String(), Type.String()]),\n Destination: Type.Object(\n {\n address: Type.Object(\n {\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple(\n [\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], {\n ctor: 0n,\n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Pointer: Type.Object(\n {\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n },\n { ctor: 1n },\n ),\n }),\n ]),\n ),\n },\n { ctor: 0n },\n ),\n datum: Type.Union([\n Type.Literal(\"NoDatum\", { ctor: 0n }),\n Type.Object({\n DatumHash: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n Type.Object({\n InlineDatum: Type.Tuple([TPlutusData], { ctor: 2n }),\n }),\n ]),\n },\n { ctor: 0n },\n ),\n DirectRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n ExchangeRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n ExtraProtocolRedeemerV1: Type.Object(\n {\n request_to_outputs: Type.Array(Type.BigInt()),\n input_to_requests: Type.Array(Type.BigInt()),\n treasury_input_idx: Type.BigInt(),\n treasury_output_idx: Type.BigInt(),\n vault_input_idx: Type.Optional(Type.BigInt()),\n vault_output_idx: Type.Optional(Type.BigInt()),\n },\n { ctor: 0n },\n ),\n Nonce: Type.Union([\n Type.Object({\n UTxO: Type.Tuple(\n [\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Validity: Type.Tuple(\n [\n Type.Object(\n {\n lower_bound: Type.Object(\n {\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }),\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n },\n { ctor: 0n },\n ),\n upper_bound: Type.Object(\n {\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }),\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n ],\n { ctor: 1n },\n ),\n }),\n ]),\n OrderActionV1: Type.Union([\n Type.Object({\n OMint: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n ORedeem: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n ODeposit: Type.Object(\n {\n principal: Type.BigInt(),\n yield: Type.BigInt(),\n diffusion_end: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n OWithdraw: Type.Object(\n {\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n OStake: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n OUnstake: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n forfeit: Type.BigInt(),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n ODirectMint: Type.Object(\n {\n amount: Type.BigInt(),\n },\n { ctor: 6n },\n ),\n }),\n Type.Object({\n ODirectBurn: Type.Object(\n {\n amount: Type.BigInt(),\n },\n { ctor: 7n },\n ),\n }),\n ]),\n OrderDatumV1: Type.Object(\n {\n owner: Type.Ref(\"MultisigScript\"),\n destination: Type.Ref(\"Destination\"),\n action: Type.Ref(\"OrderActionV1\"),\n data: TPlutusData,\n },\n { ctor: 0n },\n ),\n OrderRedeemerV1: Type.Union([\n Type.Literal(\"Execute\", { ctor: 0n }),\n Type.Literal(\"Cancel\", { ctor: 1n }),\n Type.Literal(\"Invalidated\", { ctor: 2n }),\n ]),\n Permissions: Type.Object(\n {\n mint: Type.Ref(\"MultisigScript\"),\n burn: Type.Ref(\"MultisigScript\"),\n withdraw: Type.Ref(\"MultisigScript\"),\n deposit: Type.Ref(\"MultisigScript\"),\n stake: Type.Ref(\"MultisigScript\"),\n unstake: Type.Ref(\"MultisigScript\"),\n direct_mint: Type.Ref(\"MultisigScript\"),\n direct_burn: Type.Ref(\"MultisigScript\"),\n yield_oracle: Type.Ref(\"MultisigScript\"),\n migrate: Type.Ref(\"MultisigScript\"),\n },\n { ctor: 0n },\n ),\n ProtocolConfig: Type.Object(\n {\n reserve_assets: Type.Array(Type.Ref(\"ReserveAsset\")),\n unstaked_yield_pot: Type.Object(\n {\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple(\n [\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], {\n ctor: 0n,\n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Pointer: Type.Object(\n {\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n },\n { ctor: 1n },\n ),\n }),\n ]),\n ),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n ProtocolRedeemerV1: Type.Union([\n Type.Object({\n Mint: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"ExchangeRequestV1\")),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Burn: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"ExchangeRequestV1\")),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n Withdraw: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"TreasuryRequestV1\")),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n Deposit: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"TreasuryRequestV1\")),\n alpha: Type.Ref(\"YieldSplitAlpha\"),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n Stake: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"StakeRequestV1\")),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n Unstake: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"StakeRequestV1\")),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n DirectMint: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"DirectRequestV1\")),\n },\n { ctor: 6n },\n ),\n }),\n Type.Object({\n DirectBurn: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"DirectRequestV1\")),\n },\n { ctor: 7n },\n ),\n }),\n Type.Literal(\"MigrateState\", { ctor: 8n }),\n ]),\n ProxyDatumV1: Type.Object(\n {\n logic: Type.String(),\n settings: Type.Ref(\"SettingsV1\"),\n },\n { ctor: 0n },\n ),\n RegistryV1: Type.Object(\n {\n treasury: Type.String(),\n usdr: Type.String(),\n order: Type.String(),\n staking_vault: Type.String(),\n yield_oracle: Type.String(),\n migration: Type.Optional(Type.String()),\n },\n { ctor: 0n },\n ),\n ReserveAsset: Type.Object(\n {\n asset: Type.Ref(\"Asset\"),\n numerator: Type.BigInt(),\n denominator: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n SettingsV1: Type.Object(\n {\n permissions: Type.Ref(\"Permissions\"),\n registry: Type.Ref(\"RegistryV1\"),\n config: Type.Ref(\"ProtocolConfig\"),\n },\n { ctor: 0n },\n ),\n SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: Type.Object(\n {\n action: Type.Ref(\"DistributionOracleMessage\"),\n nonce: Type.Ref(\"Nonce\"),\n },\n { ctor: 0n },\n ),\n SignedPayload_v1_1_ProtocolRedeemerV1: Type.Object(\n {\n action: Type.Ref(\"ProtocolRedeemerV1\"),\n nonce: Type.Ref(\"Nonce\"),\n },\n { ctor: 0n },\n ),\n SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: Type.Object(\n {\n extra: Type.Ref(\"ExtraProtocolRedeemerV1\"),\n payload: Type.Ref(\"SignedPayload_v1_1_ProtocolRedeemerV1\"),\n signatures: Type.Array(Type.Ref(\"Tuple_VerificationKey_COSESign1\")),\n },\n { ctor: 0n },\n ),\n StakeRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n forfeit: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n StakingVaultRedeemerV1: Type.Undefined(),\n TreasuryDatumV1: Type.Object(\n {\n circulating_supply: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n TreasuryRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n yield: Type.BigInt(),\n diffusion_end: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n VaultDatumV1: Type.Object(\n {\n circulating_susdr: Type.BigInt(),\n pending_yield: Type.BigInt(),\n diffusion_start: Type.BigInt(),\n diffusion_end: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n YieldSplitAlpha: Type.Object(\n {\n numerator: Type.BigInt(),\n denominator: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n});\n\nexport const Bool = Contracts.Import(\"Bool\");\nexport type Bool = Exact;\nexport const Tuple_VerificationKey_COSESign1 = Contracts.Import(\n \"Tuple_VerificationKey_COSESign1\",\n);\nexport type Tuple_VerificationKey_COSESign1 = Exact<\n typeof Tuple_VerificationKey_COSESign1\n>;\nexport const GovernanceConfig = Contracts.Import(\"GovernanceConfig\");\nexport type GovernanceConfig = Exact;\nexport const SettingsAuthPayload = Contracts.Import(\"SettingsAuthPayload\");\nexport type SettingsAuthPayload = Exact;\nexport const SettingsRedeemer = Contracts.Import(\"SettingsRedeemer\");\nexport type SettingsRedeemer = Exact;\nexport const SettingsSignedRedeemer = Contracts.Import(\n \"SettingsSignedRedeemer\",\n);\nexport type SettingsSignedRedeemer = Exact;\nexport const COSESign1 = Contracts.Import(\"COSESign1\");\nexport type COSESign1 = Exact;\nexport const HeaderMap = Contracts.Import(\"HeaderMap\");\nexport type HeaderMap = Exact;\nexport const Headers = Contracts.Import(\"Headers\");\nexport type Headers = Exact;\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const ProxyDatum = Contracts.Import(\"ProxyDatum\");\nexport type ProxyDatum = Exact;\nexport const Denominator = Contracts.Import(\"Denominator\");\nexport type Denominator = Exact;\nexport const DistributionOracleDatum = Contracts.Import(\n \"DistributionOracleDatum\",\n);\nexport type DistributionOracleDatum = Exact;\nexport const DistributionOracleMessage = Contracts.Import(\n \"DistributionOracleMessage\",\n);\nexport type DistributionOracleMessage = Exact;\nexport const Numerator = Contracts.Import(\"Numerator\");\nexport type Numerator = Exact;\nexport const ProtocolOrchestratorRedeemerV1 = Contracts.Import(\n \"ProtocolOrchestratorRedeemerV1\",\n);\nexport type ProtocolOrchestratorRedeemerV1 = Exact<\n typeof ProtocolOrchestratorRedeemerV1\n>;\nexport const Ratio = Contracts.Import(\"Ratio\");\nexport type Ratio = Exact;\nexport const SignedDistributionOracleMessage = Contracts.Import(\n \"SignedDistributionOracleMessage\",\n);\nexport type SignedDistributionOracleMessage = Exact<\n typeof SignedDistributionOracleMessage\n>;\nexport const Slot = Contracts.Import(\"Slot\");\nexport type Slot = Exact;\nexport const YieldDistributionInput = Contracts.Import(\n \"YieldDistributionInput\",\n);\nexport type YieldDistributionInput = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Destination = Contracts.Import(\"Destination\");\nexport type Destination = Exact;\nexport const DirectRequestV1 = Contracts.Import(\"DirectRequestV1\");\nexport type DirectRequestV1 = Exact;\nexport const ExchangeRequestV1 = Contracts.Import(\"ExchangeRequestV1\");\nexport type ExchangeRequestV1 = Exact;\nexport const ExtraProtocolRedeemerV1 = Contracts.Import(\n \"ExtraProtocolRedeemerV1\",\n);\nexport type ExtraProtocolRedeemerV1 = Exact;\nexport const Nonce = Contracts.Import(\"Nonce\");\nexport type Nonce = Exact;\nexport const OrderActionV1 = Contracts.Import(\"OrderActionV1\");\nexport type OrderActionV1 = Exact;\nexport const OrderDatumV1 = Contracts.Import(\"OrderDatumV1\");\nexport type OrderDatumV1 = Exact;\nexport const OrderRedeemerV1 = Contracts.Import(\"OrderRedeemerV1\");\nexport type OrderRedeemerV1 = Exact;\nexport const Permissions = Contracts.Import(\"Permissions\");\nexport type Permissions = Exact;\nexport const ProtocolConfig = Contracts.Import(\"ProtocolConfig\");\nexport type ProtocolConfig = Exact;\nexport const ProtocolRedeemerV1 = Contracts.Import(\"ProtocolRedeemerV1\");\nexport type ProtocolRedeemerV1 = Exact;\nexport const ProxyDatumV1 = Contracts.Import(\"ProxyDatumV1\");\nexport type ProxyDatumV1 = Exact;\nexport const RegistryV1 = Contracts.Import(\"RegistryV1\");\nexport type RegistryV1 = Exact;\nexport const ReserveAsset = Contracts.Import(\"ReserveAsset\");\nexport type ReserveAsset = Exact;\nexport const SettingsV1 = Contracts.Import(\"SettingsV1\");\nexport type SettingsV1 = Exact;\nexport const SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage =\n Contracts.Import(\n \"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage\",\n );\nexport type SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage =\n Exact<\n typeof SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage\n >;\nexport const SignedPayload_v1_1_ProtocolRedeemerV1 = Contracts.Import(\n \"SignedPayload_v1_1_ProtocolRedeemerV1\",\n);\nexport type SignedPayload_v1_1_ProtocolRedeemerV1 = Exact<\n typeof SignedPayload_v1_1_ProtocolRedeemerV1\n>;\nexport const SignedRedeemer_v1_1_ExtraProtocolRedeemerV1 = Contracts.Import(\n \"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1\",\n);\nexport type SignedRedeemer_v1_1_ExtraProtocolRedeemerV1 = Exact<\n typeof SignedRedeemer_v1_1_ExtraProtocolRedeemerV1\n>;\nexport const StakeRequestV1 = Contracts.Import(\"StakeRequestV1\");\nexport type StakeRequestV1 = Exact;\nexport const StakingVaultRedeemerV1 = Contracts.Import(\n \"StakingVaultRedeemerV1\",\n);\nexport type StakingVaultRedeemerV1 = Exact;\nexport const TreasuryDatumV1 = Contracts.Import(\"TreasuryDatumV1\");\nexport type TreasuryDatumV1 = Exact;\nexport const TreasuryRequestV1 = Contracts.Import(\"TreasuryRequestV1\");\nexport type TreasuryRequestV1 = Exact;\nexport const VaultDatumV1 = Contracts.Import(\"VaultDatumV1\");\nexport type VaultDatumV1 = Exact;\nexport const YieldSplitAlpha = Contracts.Import(\"YieldSplitAlpha\");\nexport type YieldSplitAlpha = Exact;\n\nexport class SettingsProtocolSettingsProtocolSettingsSpend {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n gov: GovernanceConfig,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n : \"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021\",\n Type.Tuple([PolicyId, GovernanceConfig]),\n [proxyPolicyId, gov],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class SettingsProtocolSettingsProtocolSettingsWithdraw {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n gov: GovernanceConfig,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n : \"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021\",\n Type.Tuple([PolicyId, GovernanceConfig]),\n [proxyPolicyId, gov],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class SettingsProtocolSettingsProtocolSettingsPublish {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n gov: GovernanceConfig,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n : \"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021\",\n Type.Tuple([PolicyId, GovernanceConfig]),\n [proxyPolicyId, gov],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class SettingsProtocolSettingsProtocolSettingsElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n gov: GovernanceConfig,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n : \"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021\",\n Type.Tuple([PolicyId, GovernanceConfig]),\n [proxyPolicyId, gov],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1DistributionOracleDistributionOracleWithdraw {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n oracleNftPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5927e80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a660089213265787065637420646174756d3a20446973747269627574696f6e4f7261636c65446174756d203d20646174756d5f6461746100168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022491b657870656374205b5f5d203d206f7261636c655f6f75747075747300168a998022495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488896600264653001300f00198079808000cdc3a4009300f00248889660026004601e6ea800e3300130133010375400723014301530150019ba54800246028602a003370e90002444446464b30010018cc004dc3a4005222598009803180c9baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026048007008803a042375a0030064090604200280f8dd700098100012042301e001407060346ea800e00280ba446466002002006446600600260040053016375400291114c004889660026014603a6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c08c0062b30013371290021811000c01a264b300130280048992cc004c0440062b30013025375400d009804204c8acc004c038006264b3001001804c4c96600200300a805402a264b3001302c003806402d0291bad00180520583029001409c604a6ea801a2b300130170018acc004c094dd500340260108132010811102220443023375400b007409460186044002810200c8120dd5000c01600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a0369112cc004c028c074dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0a400e2b300130113024375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002605e00713259800980c000c4c9660020030108992cc004006023011808c046264b30013033003809c0490301bae00140cc60600028170c0b0dd5005c566002602a00315980098161baa00b808403d02d403d0292052302a375401500e40b06eb800502f1816000a054375c00260560048160c0a400502718129baa0068042044804204c375c0028148c0980050241813001401600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a036911192cc004c02c006264b3001001801c4c9660020030048024012009132598009813001c01a00a8118dd7000a04c30230014084603e6ea80122b300130080018992cc00400600713259800800c01200900480244c966002604c007006802a046375c0028130c08c005021180f9baa00480120384070603a6ea800e44464b3001300b0018992cc00400600713259800800c0120090048992cc004c09800e00d005408c6eb40060088130c08c005021180f9baa0048acc004c0200062b3001301f3754009003801204080120384070603a6ea800d2222332298009112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c4c966002605a007159800980a98141baa0048992cc00400600f13259800800c4c9660020030098992cc0040062b300130310028acc004c064c0b0dd5001c4c96600200300b8992cc004006264b3001001806c4c96600200300e80744cc89660020030108992cc004006023011899912cc00400602713259800800c052029014899912cc00400602d13259800800c05e02f017899912cc00400603313259800800c06a03501a8992cc004c10800e2b3001302a303d375402113259800800c072264b300100180ec07603b1332259800800c07e264b30010018104082041132598009824001c5660020270218992cc00400604502281144cc89660020030248992cc00400604b025812c4c966002609a00715980080ac09a264b3001001813c09e04f1332259800800c0a6264b300100181540aa055132598009829001c66002045133035026225980080140ba264b300100181740ba264b3001001817c4c96600200303081840c20611332259800800c0ca264b30010018acc004c16800a3300100189803982d00440cd03a40cd05740ce067033819a0b6305800141586eb8004c15c009058182a800a0a6375800302e81720ac3053002414502b40bd02b413c6eb40060548290c13c00504d1bad001304e016813a09e304c015412902641286eb400604a8268c1280050481bad001304901481120943047013411502141146eb40060408240c1140050431bad001304400280ea08a30420014100607c6ea804203681da03681f8dd6800c069042181f800a07a375a002607c00501740fc607800281d0dd6800981d801405103c181c800a06e37580026070005011808a072303600140d06eb0004c0d400a01d00e40d860660028188c0cc00a01900c80640310341818800a05e302d375400700a40a900a40b900a805402a0148190c0bc00502d181780140220110088042060302d00140ac60526ea801200c813200c8150dd6000c01600a8168c0a80050281815001400e007003801a0563028001409860486ea800e002810a444b300130103023375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002605e00519800803466002003009804202680420168042058804402201100840c0605a0028158dd68009816001401502d1815000a050302a002801c00e00700340ac60500028130c090dd5001c005021488966002602060466ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c0d400e3300100c8cc00401201f00e406500e404500e40c86eb400601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a0429112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200300b805c02e26644b3001001806c4c96600200313259800800c03e264b30010018084042264b300130380038cc00403e330010048acc00400602313259800800c04a02501280944cc89660020030148992cc00400602b01580ac056264b3001303d00380bc05903a1bae00140f4607400281c0dd7000981c8012074303700140d50114071011405101140d46eb000602101040e0606a0028198c0d400a01d00e80740390361819800a062375a002606400500b40cc60600028170dd6800981780140210301816800a056375a002605800500540b460540028140c0a800a007003801c00d02b1814000a04c30243754007001408522259800980818119baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002606a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026074007014809a06e375c00281d0c0dc0050351bae001303600240dc6068002819201c80ca01c808a01c8190dd6000c03601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a042488888c966002602601b13259800800c07e264b30010018acc004c0b400a2b300130153028375400313259800800c086264b30010018992cc00400604713259800800c4c9660020030258992cc00400604d0268992cc004c0d000e2b3001301c302f375400d13259800800c0a2264b3001001814c0a626644b3001001815c4c96600200302c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944cc89660020030348992cc004006264b300100181b44c966002003159800982200144cc09c038896600200513302900d225980080146600200f19800802c566002606060866ea8062264b300100181e44c96600200313259800800c0fa264b30010018acc004c13000a26644b300130360018992cc00400608513259800800c10e087132598009828801c4cc0d000489660020050078992cc0040063300100189801182a001c11d02b411e08f047823a0aa3052002414104441386eb00060870434144609c0028260c128dd5002c566002606600313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a056823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260a20071330340012259800801401e264b30010018cc0040062600460a800704740b1047823c11e08e82a8c148009050411104e1bac001821c10d0511827000a098304a375400b15980099b8748018006264b300100182144c966002003043821c4cc89660020030458992cc0040062b3001305300289981b001912cc00400a2b3001303d3050375400713259800800c126264b3001001825412a0951332259800800c132264b3001001826c13609b13259800982d801c03e09c82c0dd6800c13505b182c000a0ac375a00260ae00504a416060aa0028298c144dd5001c12104e44c96600200319800800c4c008c15800e0928172093049824c125057182a00120a482320a0823411a08d046415060a20028278dd60009828001410e0868288c13800504c18251baa0058acc004cdc3a401000313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401400313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401800313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401c00313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a402000315980098251baa005801410504b4105047208e411c8239047208e411c82390470cc00400626605e03244b300100281244c96600200304282144c9660020030438992cc004006089044822411226644b300100182344c966002003159800982a001466002003130073054008823a068823a0a2823c11e08f047415460a40028280dd7000982880120a4304f00141346eb00060850424140609a004825a07e8148c11cdd5001c0fd04940fe07f03f81fa09a304a0014120609400503d81ec0f607a8258c12000504618221baa01881da08281da04c81da04c8992cc00400607903c81e44c8c00cc128010dd6800c0f104a1823801208a8992cc00400607503a81d44c8c00cc120010dd6800c0e90481822801208681ba08281bc0de06f037411460840028200c10800a06b03581ac0d50431820000a07c375a002607e0050324100607a00281d8dd6800981e00140bd03d181d000a0703758002607200502c8162074303700140d46eb0004c0d800a05302940dc60680028190c0c0dd5003409d02d409d0311bac00181340990341818800a05e3031002812409204902440c8605e0028168c0bc00a04502281140890301816800a05630293754003020409902040a902081040820408170c0ac00502918139baa0118acc004c040036264b300100180fc4c966002003159800981680146600200300381020108102054810408204102040b860560028148c09cdd5008c0790242048159800980798129baa010899912cc004c050c09cdd5000c4c8cc896600330013233001001323300100137566006605a6ea8078896600200314bd7044c8cc88cc88cc008008004896600200310038991981b1ba733036375200a6606c60660026606c606800297ae0330030033038002303600140d06eacc0c400cdd718170009980180198198011818800a05e2259800800c528456600266e3cdd718181bac30300010288a518998010011818800a05440b94a14a28142264b30013371064b3001301f302c375400313259800800c5660026034605a6ea8006264b3001001814c4c96600200313259800800c0ae264b300100181640b20591332259800800c0ba264b3001001817c0be05f13259800981d001c6600200f1375a6016606c6ea8c0e4c0d8dd5181c981b1baa303930363754013030405503040dc6eb400605e81d0c0dc0050351bad0013036002816206e303400140c8606800502a81540aa05481a8c0c800503018171baa001814205681440a205102840cc6060605a6ea8006290002054301b302c3754603260586ea8010dd6980098161baa302f302c3754605e60586ea801a2b3001323259800980b800c4cdc41bad3031302e37540046eb4c00cc0b8dd5181898171baa3031302e3754011159800980d000c528c528205640ac60586ea8004c0bcc0b0dd5181798161baa302f3030303030303030303030303030302c375403b1323259800800c09a2b300130320018a51813205e40bc64660020026eb0c074c0b8dd500f912cc004006297ae0899912cc0056600266ebcc0d0c0c4dd5001004456600266ebcdd319198008009bab301f3032375400644b30010018a5eb7bdb1822653001375c606600337566068003303800248896600266e452201000038acc004cdc7a441000038800c401503444cc0e4cdd81ba9003374c0046600c00c00281a0606c00281a0dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606c66ec0dd48179ba60034bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8019801c4cc0e8cdd81ba9033374c00e00b15980099b8f03300389981d19bb037520666e9801c00626607466ec0dd48019ba60023300600600140d481a8606e00281a8c8cc0040052f5bded8c044b300100189981a99bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0cc0066eb4c0d000660700049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981c99bb037520066ea0008cc0180180050342068181b000a06840b913375e604060626ea8008cdd2a40086606600a97ae08a5040b914a081722660660046600800800313300400400140b86064002606600281826002444b3001301b001880146600200700199b86002001400c81624466e0ccdc1001000a410112f5223371266e08dd698188011bad30313032001337046eb4c0c4004dd69818981900148cdc4240006eb4c0c0c0c40066e092080897a981798161baa302f302c375400c91111119199118119981b8079981b9811181a9baa3038303537540086606e6ea0cc896600260100051598009804000c56600266012004003130030018980180120688a9981aa492b6578706563742069735f76616c69645f726174696f28706f73745f726574656e74696f6e5f7969656c6429001640d115330354911c6578706563742069735f76616c69645f726174696f28666c6f6f7229001640d06eb0c090c0d4dd50024c004dc4a400137586044606a6ea80126eb4c02cc0d4dd50024dd6981c181c981c981c981c981c981a9baa00448888c96600260160091598009805800c5660026601800200910018991919911805998201ba83370066e08dd6982080400119b82375a6082006002660806ea0cdc100080125eb80dd6981f98200009bad303f304000630083303d375066e08dd6981f00099b814820225e8c966002600e00b15980099b890050048acc004cdc48022410112f513370000a6601e66e0401001566002600e00315980099b8900148202d2244e26464646464646466e04cdc019b813370066e04cdc019b810073370600c900219b8300548030cdc18022406066e0c00d20f0013370600490500599b830014838138cdc19980b000803a4101ec086602a00200c6602800200a6602600200866024002006660220020046602000200266e0c00520288a9981d2491b6578706563742073203c3d206d61785f737570706f727465645f73001640e5153303a4910d6578706563742073203e3d2030001640e5153303a4911565787065637420725f6d6178203c3d207363616c65001640e5153303a4911465787065637420725f6d6178203e3d2062617365001640e5153303a491106578706563742062617365203e3d2030001640e464b30013371090405a4489800c52080b489138800a0723370666e08c02cdd6981f000a4190026eb4c0f8c0fc004cc0f4dd418059bad303e303f0014bd70199118049981f1ba83370266e08dd6981f80180099b82375a607e00c0046607c6ea0cdc1001000a5eb80dd6981e981f0009bad303d303e00440dd1533038491206578706563742069735f76616c69645f726174696f287261775f7969656c6429001640dd15330384911d6578706563742069735f76616c69645f726174696f28687572646c6529001640dc646644b300130070028acc004cdc42400000313303e37500046607c6ea00052f5c1153303a490116657870656374207374616b65645f75736472203e2030001640e5153303a49124657870656374206e65745f64697374726962757461626c655f696e636f6d65203e3d2030001640e46eb4c0f4c0e8dd50009bad3027303a3754002607860726ea802097ae02332232598009811800c52f5c210100008101010044cc0e4dd419b8300300133039375066e0c0080052f5c081a0c96600266e200052000899b8148000006200281a0cc010008004dd6981b8009bad3037303800123370660086eb4c0dc004dd6981b981c000980300322a660549217a6578706563740a20202020202076616c69646974795f72616e67655f7374617274735f6265666f7265280a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d702c0a20202020202029001640a5153302a491696578706563740a20202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d70203e2070726576696f75735f6f7261636c655f74696d657374616d70280a20202020202020206f7261636c655f696e7075742c0a20202020202029001640a44605e60606060606000315330294913f657870656374206e6f5f6f7261636c655f746f6b656e735f6d696e7465642873656c662e6d696e742c206f7261636c655f6e66745f706f6c6963795f696429001640a0605860526ea8c058c0a4dd5000918169817181718171817000981598141baa0018a9981324815665787065637420536f6d65286f7261636c655f696e70757429203d0a20202020202066696e645f6f7261636c655f696e7075742873656c662e696e707574732c206f7261636c655f6e66745f706f6c6963795f696429001640946052604c6ea8040cc044dd6181498131baa01723010323322330020020012259800800c00e2646644b30013372291113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902a44cc014014c0c401102a1bae302a001375a6056002605a0028158c8c8cc004004dd5980b98151baa3017302a375400844b3001001801c4c8cc896600266e440a400a2b30013371e0520051001803205689980280298190022056375c60560026eacc0b0004c0b800502c0a5eb7bdb180520008a9981224813b657870656374205075626c6973685969656c644f7261636c652872656465656d657229203d206f7263686573747261746f725f72656465656d65720016408c22232598009807800c4c9660020030038992cc0040062b300130290028cc00400600b0044035004409900480240120088150c09c00502518119baa0048acc004c030006264b3001001801c4c96600200315980098148014566002602260486ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0b400a330010038cc0040060130084039008403900840a900880440220108170c0ac0050291815801401a00d00680320583029001409c604a6ea800600881120088132009004802401102a1813800a04a3023375400900240808100c084dd50019112cc004c038c084dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981500144c9660026026604c6ea8012264b3001001803c4c96600200313259800800c026264b30010018acc004c0bc00a330010038992cc004c060006264b300100180644c966002003159800981900144c966002603600313259800800c03e264b30010018acc004c0d400a33001001805c04101440410324042021010808206c303300140c4605e6ea800a2b300130180018992cc00400601f13259800800c042021010899912cc00400602513259800800c04e027013899912cc00400602b13259800800c05a02d0168992cc004c0f000e02501740e46eb400602c81e0c0e40050371bad0013038002809a072303600140d06eb4004c0d400a02081b0c0cc00503118179baa002807205840b0605a6ea800601a817a01b00d806c0350331818000a05c302c3754005159800980a800c56600260586ea800a00d00b40b500b40a48148c0a8dd5000c02900e402902c402a01500a8052060302d00140ac605a00500880440220108170c0ac00502918139baa0048032048132598009809800c566002604e6ea800a00f00640a11598009808000c4c9660020030078992cc0040060110088044022264b3001302e003805402502b1bae00140b860560028148c09cdd50014566002603200313259800800c01e264b3001302d002804c02102a1815800a052302737540050064090812102418129baa001802a04e802c01600b00540ac60500028130c0a000a007003801c00d0291813000a04830223754007001407c403a01d00e8072038332232598009802980c1baa0018980c9919bb0301d001301d301e0013758603860326ea80062a6602e9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164058646600200200644b30010018a60103d87a80008992cc004cdd7980d00099ba548010cc074cdd2a40046603a6ea40112f5c097ae0898049980e9ba73301d301a0013301d301b0014bd7025eb82266006006603e00480c0c07400501b1bab3019301a301a301a301a301a301a301a301a301a3016375400e6eb8c064c058dd54c004896600200314bd7044cc068c05cc06c004cc008008c07000501948896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901648888c8cc004004014896600200310058992cc004006266008604000400d1330053020002330030030014078604000280ea6eb0c00cc058dd5003a44446464646644a6603a66e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea406d220100132598009806180f9baa00189929980f99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980a18109baa0018992cc0040062b3001300f3022375400313259800800c076264b300100180f407a03d01e899912cc0040060411325980098160014401a0428148c0a80050281bae001302900240a8604e0028128c08cdd5000c071020407203901c80e2050302530223754003153302049013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016407c602060426ea8c038c084dd5000981198101baa0018a9980f24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640746601400c4646600200260066eacc038c084dd5180718109baa0022259800800c528456600266e3cdd7181280080f4528c4cc008008c09800501f2046300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c204a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f901f1bac3022002375a60400026466ec0dd418100009ba73021001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a604a003337149101023a200098008054c09800600a805100a181400144ca6002015302500199b8a489023a200098008054c098006600e66008008004805100a1814001204c3028001409466e29220102207d0000340886eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920443758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720483371666e000056600266e2000520148a40c11481b9024002200c33706002901019b8600148080cdc70020012042375c0068128dc5245022c200022323300100100322598009805800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407080e0c00c00c44646600200200644b30010018a6103d87a80008992cc004c010006260106603800297ae0899801801980f001202e301c00140688b201a180780098051baa0108a4d153300849011856616c696461746f722072657475726e65642066616c73650013656401c1\"\n : \"5914ad0101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae00248888888896600264653001300a00198051805800cdc3a4009300a0024888966002600460146ea800e33001300e300b37540072300f301030100019ba5480024601e6020003370e90004dc3a4005223233001001003223300300130020024888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260146603200297ae0899801801980d801202a3019001405d2259800980298099baa00289919192cc004c06c00a26464b3001300a0018acc004c064dd5001401a2c80d22b30013009001899192cc004c07c00a0111640706eb4c074004c064dd500145660026020003159800980c9baa00280345901a459017202e405c602e6ea8004c06800e2c80c0c966002602e00315980099b8948010c0580062d13007301600140551640606ea8c064004c064004c050dd500145901248966002600a60266ea800a264646644b3001301c003802c590191bad3019001375c6032004603200260286ea800a2c809244b30013005301337540051323232332259800980e801c4c966002601660326ea8006264646644b300130220038992cc004c04000626464b300130250028074590221bae3023001301f375400f1598009807800c566002603e6ea801e01916408116407480e8c074dd500345901f1bae301f001375c603e004603e00260346ea80062c80c0c0700162c80d0dd7180d000980d001180d000980c800980a1baa0028b202491192cc004c01800626464b3001301b0028024590181bae3019001301537540071598009802800c4c8c96600260360050048b2030375c6032002602a6ea800e2c809901318099baa00291192cc004c01800626464b3001301b0028024590181bad3019001301537540071598009802800c566002602a6ea800e00516405916404c8098c04cdd500124444453001332232598009806180d1baa0018980d9919bb0301f001301f30200013758603c60366ea80062c80c8c8cc00400400c896600200314c103d87a80008992cc004cdd7980e00099ba548010cc07ccdd2a40046603e6ea40112f5c097ae0898081980f9ba73301f301c0013301f301d0014bd7025eb82266006006604200480d8c07c00501d1bab301b301c301c301c301c301c301c301c301c301c3018375401c6eb8c06cc060dd51919192cc004c030c068dd5000c4c966002602660366ea8006264b3001300e301c3754003132323322598009812801c40162c8110c088004dd718110011811000980e9baa0018b2036301f301c3754003164068601e60366ea8c034c06cdd5180f180d9baa0018b2032330083758601860346ea80408c8cc004004c00cdd59807180e1baa300e301c375400444b30010018a508acc004cdc79bae302000101a8a518998010011810800a0364078600200244b30010018a5eb822660386032603a00266004004603c00280da4464b3001300c0018992cc004c080006266010603e00200716407460366ea800e2b3001300b0018992cc004c080006264b3001300e301c3754003132323259800981200144cc034c08c00c4cc03400401e2c8108c088004c088004c074dd5000c5901b180f800c5901d180d9baa0038b2032406460326ea800a44b3001300b30193754005132323259800981080144cc89660026020603c6ea800a2646464b3001302600289980618128018992cc004c050006264b30013028001899192cc004c05c006264b3001302b0018998089815000804c5902818131baa0028acc004c05800626464653001375a6058003375a6058007375a60580049112cc004c0c001201d1640b4302c001302b001302637540051640908120c090dd50009813800c5902518119baa0028acc004c04c0062b3001302337540050058b20488b2042408460426ea80062c8118c090004c090004c07cdd500145901d18100018992cc004c03c0062b3001301e37540050058b203e8acc004c03800626464b30013024002803c590211bae3022001301e3754005159800980a800c4c8c96600260480050078b20423022001301e375400516407080e101c180e1baa0018b203c301f001301f001301a37540051640609114c0048966002601c60386ea800a2646464b300130240028992cc004c048c080dd5000c4c8c966002604e00313259800980a98119baa00189919191919194c004dd69816800cdd61816802cdd618168024dd69816801cdd69816801244444b300130330068992cc004c084c0bcdd5000c4c8c8cc89660026070007132332259800981d801c4c8cc8966002607c007133021303d01813302901b225980080140822646644b300130430018998151821000898021821802c590401bae304000130410013758607e00481ea2c81d8dd6981d8009bad303b00c303b00b8b2070375a60700026eb4c0e0028c0e00262c81a8dd6981a8009bad30350023035001303037540031640b860640171640c0302d001302c001302b001302a001302900130243754003164088604c005164090604c00260426ea80062c80f8c08c00e2c8108dd618110009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8cc8966002604c007133008302500513300e0020068b20463023001375a604600460460026044002603a6ea800a2c80da44b3001300e301c37540051323232323298009bad30250019bad30250049bad3025003981280124444b3001302a00589980618148048998090008054590270c094004c090004c08c004c088004c074dd500145901b48966002601c60386ea800a264646464646530013758604c003375a604c00b375a604c009375a604c007302600248888966002605800d13300e302b00b1330140011323322598009817801c03e2c8160dd718160009bae302c006302c0058b205218130009812800981200098118009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8c8ca60026eb0c0940066eb4c0940126eb4c09400e604a00491112cc004c0a801626601860520122660240022646644b3001302d003806c5902a1bae302a001375c605400a605400916409c3025001302400130230013022001301d375400516406d301a3754006911111192cc004c04c00a264b300130270018992cc004c054c08cdd5000c4c8c8c8cc8966002605a00713259800980d98149baa00189919191919194c004c0cc0066eb0c0cc0166eb4c0cc0126eb4c0cc00e6066004911112cc004c0e401a2660486eb0c0e002c8966002005133026006225980080144cc0880144cc088024566002605460706ea80462646464b3001304000289919912cc004c0c000a264b300130440018998179bac304300122598008014012266046608a00426002608c004821a2c8208c0fcdd5001c566002605e005132598009822000c4cc0bcdd61821800912cc00400a0091330233045002130013046002410d164104607e6ea800e2b300130360028992cc004c11000626605e6eb0c10c0048966002005004899812182280109800982300120868b2082303f375400715980099b874801800a2646464b300130460028998189bac304500322598008014566002606a60866ea800e264646644b3001304c0038054590491bad3049001375a6092004609200260886ea800e2c821226604c608e004260026090004822a2c8218c110004c110004c0fcdd5001c56600266e1d20080028992cc004c11000626605e6eb0c10c0048966002005004899812982280109800982300120868b2082303f375400715980099b874802800a264b300130440018998179bac30430012259800801401226604a608a00426002608c004821a2c8208c0fcdd5001c56600266e1d200c0028992cc004c11000626605e6eb0c10c0048966002005004899813182280109800982300120868b2082303f375400715980099b874803800a264b300130440018998179bac30430012259800801401226604c608a00426002608c004821a2c8208c0fcdd5001c56600266e1d20100028acc004c0fcdd5001c0062c82022c81e903d207a40f481e903d207a40f481e8c0f0dd500089981200109981600b112cc00400a03d1323322598009823000c4cc0b4c1140044c010c1180162c8218dd7182180098220009bac30420024100607e0071640f4607c002607c00260726ea80462c81ba2646004607c0066eb4c0f000903a44c8c008c0f000cdd6981d00120708b206c1819800981900098188009818000981780098151baa0018b2050302c0058b20543758605400260540046054002605200260486ea80062c8110c0980062c8120c088dd500545660026024005132598009813800c4cc020c09800400a2c8120c088dd50054590202040159800980898101baa009899912cc004c050c088dd5000c4c8cc89660033001323300100132330010013756600660506ea8078896600200314bd7044c8cc88cc88cc00800800489660020031003899198189ba733031375200a66062605c00266062605e00297ae0330030033033002303100140bc6eacc0b000cdd718148009980180198170011816000a0542259800800c528456600266e3cdd718159bac302b0010248a518998010011816000a04c40a54a14a28122264b30013371064b3001301f3027375400313259800980d18141baa001899191919912cc004c0c800e266026606200a26eb4c020c0b8dd5181898171baa3031302e37546062605c6ea801a2c8178dd698178009bad302f002302f001302e0013029375400316409c605660506ea800629000204c301b302737546032604e6ea8010dd6980098139baa302a302737546054604e6ea801a2b3001323259800980c800c4cdc41bad302c302937540046eb4c00cc0a4dd5181618149baa302c30293754011159800980d000c528c528204e409c604e6ea8004c0a8c09cdd5181518139baa302a302b302b302b302b302b302b302b3027375403b13259800981619198008009bac301d3029375403e44b30010018a5eb8226644b30015980099baf302f302c375400401115980099baf374c64660020026eacc07cc0b4dd5001912cc004006297adef6c608994c004dd71817000cdd59817800cc0cc0092225980099b91489000038acc004cdc7a441000038800c401503044cc0d0cdd81ba9003374c0046600c00c002818060620028178dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606266ec0dd48159ba60034bd6f7b63044ca60026eb8c0bc0066eacc0c000660680049112cc004cdc8017801c4cc0d4cdd81ba902f374c00e00b15980099b8f02f00389981a99bb0375205e6e9801c00626606a66ec0dd48019ba60023300600600140c4818860640028180c8cc0040052f5bded8c044b300100189981819bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0b80066eb4c0bc00660660049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981a19bb037520066ea0008cc01801800503020601818800a05e40a913375e604060586ea8008cdd2a40086605c00a97ae08a5040a914a0815226605c0046600800800313300400400140a8605a002605c002815a29462c814a6002444b3001301b001880146600200700199b86002001400c81424466e0ccdc1001000a410112f5223371266e08dd698160011bad302c302d001337046eb4c0b0004dd69816181680148cdc4240006eb4c0acc0b00066e092080897a981518139baa302a3027375400c91111119199118119981900799819181118181baa303330303754008660646ea0cc896600260100051598009804000c56600266012004003130030018980180120608b20608b20603758604860606ea801260026e2520009bac302230303754009375a601660606ea80126eb4c0ccc0d0c0d0c0d0c0d0c0d0c0c0dd50022444464b3001300b0048acc004c02c0062b30013300c0010048800c4c8c8cc88c02ccc0ecdd419b80337046eb4c0f0020008cdc11bad303c0030013303b375066e080040092f5c06eb4c0e8c0ec004dd6981d181d80318041981c1ba8337046eb4c0e4004cdc0a410112f464b300130070058acc004cdc4802802456600266e240112080897a899b800053300f3370200800ab300130070018acc004cdc4800a41016912271323232323232323370266e00cdc099b803370266e00cdc080399b8300648010cdc1802a401866e0c01120303370600690780099b83002482802ccdc1800a41c09c66e0ccc05800401d2080f604330150010063301400100533013001004330120010033301100100233010001001337060029014459035459035459035459035459035192cc004cdc424101691226003148202d2244e200281a8cdc199b82300b375a60720029064009bad3039303a00133038375060166eb4c0e4c0e80052f5c066446012660726ea0cdc099b82375a607400600266e08dd6981d0030011981c9ba83370400400297ae0375a607060720026eb4c0e0c0e40110334590334590331919912cc004c01c00a2b3001337109000000c4cc0e4dd40011981c9ba80014bd704590354590351bad3038303537540026eb4c09cc0d4dd5000981b981a1baa00825eb808cc88c966002604600314bd70810100008101010044cc0d0dd419b8300300133034375066e0c0080052f5c08180c96600266e200052000899b814800000620028180cc010008004dd698190009bad3032303300123370660086eb4c0c8004dd698191819800980300322c812a2c81288c0a8c0acc0acc0ac0062c8120c09cc090dd5180b18121baa001230283029302930293029001302630233754003164084604860426ea8024cc03cdd6181218109baa01723012323322330020020012259800800c00e2646644b300133722910113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902644cc014014c0b00110261bae3025001375a604c00260500028130c8c8cc004004dd5980b98129baa30173025375400844b3001001801c4c8cc896600266e4409400a2b30013371e04a0051001803204e8998028029816802204e375c604c0026eacc09c004c0a40050270a5eb7bdb180520008b203e08b2012180500098029baa00a8a4d13656400c1\",\n Type.Tuple([PolicyId, PolicyId]),\n [proxyPolicyId, oracleNftPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1DistributionOracleDistributionOracleElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n oracleNftPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5927e80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a660089213265787065637420646174756d3a20446973747269627574696f6e4f7261636c65446174756d203d20646174756d5f6461746100168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022491b657870656374205b5f5d203d206f7261636c655f6f75747075747300168a998022495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488896600264653001300f00198079808000cdc3a4009300f00248889660026004601e6ea800e3300130133010375400723014301530150019ba54800246028602a003370e90002444446464b30010018cc004dc3a4005222598009803180c9baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026048007008803a042375a0030064090604200280f8dd700098100012042301e001407060346ea800e00280ba446466002002006446600600260040053016375400291114c004889660026014603a6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c08c0062b30013371290021811000c01a264b300130280048992cc004c0440062b30013025375400d009804204c8acc004c038006264b3001001804c4c96600200300a805402a264b3001302c003806402d0291bad00180520583029001409c604a6ea801a2b300130170018acc004c094dd500340260108132010811102220443023375400b007409460186044002810200c8120dd5000c01600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a0369112cc004c028c074dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0a400e2b300130113024375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002605e00713259800980c000c4c9660020030108992cc004006023011808c046264b30013033003809c0490301bae00140cc60600028170c0b0dd5005c566002602a00315980098161baa00b808403d02d403d0292052302a375401500e40b06eb800502f1816000a054375c00260560048160c0a400502718129baa0068042044804204c375c0028148c0980050241813001401600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a036911192cc004c02c006264b3001001801c4c9660020030048024012009132598009813001c01a00a8118dd7000a04c30230014084603e6ea80122b300130080018992cc00400600713259800800c01200900480244c966002604c007006802a046375c0028130c08c005021180f9baa00480120384070603a6ea800e44464b3001300b0018992cc00400600713259800800c0120090048992cc004c09800e00d005408c6eb40060088130c08c005021180f9baa0048acc004c0200062b3001301f3754009003801204080120384070603a6ea800d2222332298009112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c4c966002605a007159800980a98141baa0048992cc00400600f13259800800c4c9660020030098992cc0040062b300130310028acc004c064c0b0dd5001c4c96600200300b8992cc004006264b3001001806c4c96600200300e80744cc89660020030108992cc004006023011899912cc00400602713259800800c052029014899912cc00400602d13259800800c05e02f017899912cc00400603313259800800c06a03501a8992cc004c10800e2b3001302a303d375402113259800800c072264b300100180ec07603b1332259800800c07e264b30010018104082041132598009824001c5660020270218992cc00400604502281144cc89660020030248992cc00400604b025812c4c966002609a00715980080ac09a264b3001001813c09e04f1332259800800c0a6264b300100181540aa055132598009829001c66002045133035026225980080140ba264b300100181740ba264b3001001817c4c96600200303081840c20611332259800800c0ca264b30010018acc004c16800a3300100189803982d00440cd03a40cd05740ce067033819a0b6305800141586eb8004c15c009058182a800a0a6375800302e81720ac3053002414502b40bd02b413c6eb40060548290c13c00504d1bad001304e016813a09e304c015412902641286eb400604a8268c1280050481bad001304901481120943047013411502141146eb40060408240c1140050431bad001304400280ea08a30420014100607c6ea804203681da03681f8dd6800c069042181f800a07a375a002607c00501740fc607800281d0dd6800981d801405103c181c800a06e37580026070005011808a072303600140d06eb0004c0d400a01d00e40d860660028188c0cc00a01900c80640310341818800a05e302d375400700a40a900a40b900a805402a0148190c0bc00502d181780140220110088042060302d00140ac60526ea801200c813200c8150dd6000c01600a8168c0a80050281815001400e007003801a0563028001409860486ea800e002810a444b300130103023375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002605e00519800803466002003009804202680420168042058804402201100840c0605a0028158dd68009816001401502d1815000a050302a002801c00e00700340ac60500028130c090dd5001c005021488966002602060466ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c0d400e3300100c8cc00401201f00e406500e404500e40c86eb400601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a0429112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200300b805c02e26644b3001001806c4c96600200313259800800c03e264b30010018084042264b300130380038cc00403e330010048acc00400602313259800800c04a02501280944cc89660020030148992cc00400602b01580ac056264b3001303d00380bc05903a1bae00140f4607400281c0dd7000981c8012074303700140d50114071011405101140d46eb000602101040e0606a0028198c0d400a01d00e80740390361819800a062375a002606400500b40cc60600028170dd6800981780140210301816800a056375a002605800500540b460540028140c0a800a007003801c00d02b1814000a04c30243754007001408522259800980818119baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002606a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026074007014809a06e375c00281d0c0dc0050351bae001303600240dc6068002819201c80ca01c808a01c8190dd6000c03601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a042488888c966002602601b13259800800c07e264b30010018acc004c0b400a2b300130153028375400313259800800c086264b30010018992cc00400604713259800800c4c9660020030258992cc00400604d0268992cc004c0d000e2b3001301c302f375400d13259800800c0a2264b3001001814c0a626644b3001001815c4c96600200302c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944cc89660020030348992cc004006264b300100181b44c966002003159800982200144cc09c038896600200513302900d225980080146600200f19800802c566002606060866ea8062264b300100181e44c96600200313259800800c0fa264b30010018acc004c13000a26644b300130360018992cc00400608513259800800c10e087132598009828801c4cc0d000489660020050078992cc0040063300100189801182a001c11d02b411e08f047823a0aa3052002414104441386eb00060870434144609c0028260c128dd5002c566002606600313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a056823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260a20071330340012259800801401e264b30010018cc0040062600460a800704740b1047823c11e08e82a8c148009050411104e1bac001821c10d0511827000a098304a375400b15980099b8748018006264b300100182144c966002003043821c4cc89660020030458992cc0040062b3001305300289981b001912cc00400a2b3001303d3050375400713259800800c126264b3001001825412a0951332259800800c132264b3001001826c13609b13259800982d801c03e09c82c0dd6800c13505b182c000a0ac375a00260ae00504a416060aa0028298c144dd5001c12104e44c96600200319800800c4c008c15800e0928172093049824c125057182a00120a482320a0823411a08d046415060a20028278dd60009828001410e0868288c13800504c18251baa0058acc004cdc3a401000313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401400313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401800313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401c00313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a402000315980098251baa005801410504b4105047208e411c8239047208e411c82390470cc00400626605e03244b300100281244c96600200304282144c9660020030438992cc004006089044822411226644b300100182344c966002003159800982a001466002003130073054008823a068823a0a2823c11e08f047415460a40028280dd7000982880120a4304f00141346eb00060850424140609a004825a07e8148c11cdd5001c0fd04940fe07f03f81fa09a304a0014120609400503d81ec0f607a8258c12000504618221baa01881da08281da04c81da04c8992cc00400607903c81e44c8c00cc128010dd6800c0f104a1823801208a8992cc00400607503a81d44c8c00cc120010dd6800c0e90481822801208681ba08281bc0de06f037411460840028200c10800a06b03581ac0d50431820000a07c375a002607e0050324100607a00281d8dd6800981e00140bd03d181d000a0703758002607200502c8162074303700140d46eb0004c0d800a05302940dc60680028190c0c0dd5003409d02d409d0311bac00181340990341818800a05e3031002812409204902440c8605e0028168c0bc00a04502281140890301816800a05630293754003020409902040a902081040820408170c0ac00502918139baa0118acc004c040036264b300100180fc4c966002003159800981680146600200300381020108102054810408204102040b860560028148c09cdd5008c0790242048159800980798129baa010899912cc004c050c09cdd5000c4c8cc896600330013233001001323300100137566006605a6ea8078896600200314bd7044c8cc88cc88cc008008004896600200310038991981b1ba733036375200a6606c60660026606c606800297ae0330030033038002303600140d06eacc0c400cdd718170009980180198198011818800a05e2259800800c528456600266e3cdd718181bac30300010288a518998010011818800a05440b94a14a28142264b30013371064b3001301f302c375400313259800800c5660026034605a6ea8006264b3001001814c4c96600200313259800800c0ae264b300100181640b20591332259800800c0ba264b3001001817c0be05f13259800981d001c6600200f1375a6016606c6ea8c0e4c0d8dd5181c981b1baa303930363754013030405503040dc6eb400605e81d0c0dc0050351bad0013036002816206e303400140c8606800502a81540aa05481a8c0c800503018171baa001814205681440a205102840cc6060605a6ea8006290002054301b302c3754603260586ea8010dd6980098161baa302f302c3754605e60586ea801a2b3001323259800980b800c4cdc41bad3031302e37540046eb4c00cc0b8dd5181898171baa3031302e3754011159800980d000c528c528205640ac60586ea8004c0bcc0b0dd5181798161baa302f3030303030303030303030303030302c375403b1323259800800c09a2b300130320018a51813205e40bc64660020026eb0c074c0b8dd500f912cc004006297ae0899912cc0056600266ebcc0d0c0c4dd5001004456600266ebcdd319198008009bab301f3032375400644b30010018a5eb7bdb1822653001375c606600337566068003303800248896600266e452201000038acc004cdc7a441000038800c401503444cc0e4cdd81ba9003374c0046600c00c00281a0606c00281a0dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606c66ec0dd48179ba60034bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8019801c4cc0e8cdd81ba9033374c00e00b15980099b8f03300389981d19bb037520666e9801c00626607466ec0dd48019ba60023300600600140d481a8606e00281a8c8cc0040052f5bded8c044b300100189981a99bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0cc0066eb4c0d000660700049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981c99bb037520066ea0008cc0180180050342068181b000a06840b913375e604060626ea8008cdd2a40086606600a97ae08a5040b914a081722660660046600800800313300400400140b86064002606600281826002444b3001301b001880146600200700199b86002001400c81624466e0ccdc1001000a410112f5223371266e08dd698188011bad30313032001337046eb4c0c4004dd69818981900148cdc4240006eb4c0c0c0c40066e092080897a981798161baa302f302c375400c91111119199118119981b8079981b9811181a9baa3038303537540086606e6ea0cc896600260100051598009804000c56600266012004003130030018980180120688a9981aa492b6578706563742069735f76616c69645f726174696f28706f73745f726574656e74696f6e5f7969656c6429001640d115330354911c6578706563742069735f76616c69645f726174696f28666c6f6f7229001640d06eb0c090c0d4dd50024c004dc4a400137586044606a6ea80126eb4c02cc0d4dd50024dd6981c181c981c981c981c981c981a9baa00448888c96600260160091598009805800c5660026601800200910018991919911805998201ba83370066e08dd6982080400119b82375a6082006002660806ea0cdc100080125eb80dd6981f98200009bad303f304000630083303d375066e08dd6981f00099b814820225e8c966002600e00b15980099b890050048acc004cdc48022410112f513370000a6601e66e0401001566002600e00315980099b8900148202d2244e26464646464646466e04cdc019b813370066e04cdc019b810073370600c900219b8300548030cdc18022406066e0c00d20f0013370600490500599b830014838138cdc19980b000803a4101ec086602a00200c6602800200a6602600200866024002006660220020046602000200266e0c00520288a9981d2491b6578706563742073203c3d206d61785f737570706f727465645f73001640e5153303a4910d6578706563742073203e3d2030001640e5153303a4911565787065637420725f6d6178203c3d207363616c65001640e5153303a4911465787065637420725f6d6178203e3d2062617365001640e5153303a491106578706563742062617365203e3d2030001640e464b30013371090405a4489800c52080b489138800a0723370666e08c02cdd6981f000a4190026eb4c0f8c0fc004cc0f4dd418059bad303e303f0014bd70199118049981f1ba83370266e08dd6981f80180099b82375a607e00c0046607c6ea0cdc1001000a5eb80dd6981e981f0009bad303d303e00440dd1533038491206578706563742069735f76616c69645f726174696f287261775f7969656c6429001640dd15330384911d6578706563742069735f76616c69645f726174696f28687572646c6529001640dc646644b300130070028acc004cdc42400000313303e37500046607c6ea00052f5c1153303a490116657870656374207374616b65645f75736472203e2030001640e5153303a49124657870656374206e65745f64697374726962757461626c655f696e636f6d65203e3d2030001640e46eb4c0f4c0e8dd50009bad3027303a3754002607860726ea802097ae02332232598009811800c52f5c210100008101010044cc0e4dd419b8300300133039375066e0c0080052f5c081a0c96600266e200052000899b8148000006200281a0cc010008004dd6981b8009bad3037303800123370660086eb4c0dc004dd6981b981c000980300322a660549217a6578706563740a20202020202076616c69646974795f72616e67655f7374617274735f6265666f7265280a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d702c0a20202020202029001640a5153302a491696578706563740a20202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d70203e2070726576696f75735f6f7261636c655f74696d657374616d70280a20202020202020206f7261636c655f696e7075742c0a20202020202029001640a44605e60606060606000315330294913f657870656374206e6f5f6f7261636c655f746f6b656e735f6d696e7465642873656c662e6d696e742c206f7261636c655f6e66745f706f6c6963795f696429001640a0605860526ea8c058c0a4dd5000918169817181718171817000981598141baa0018a9981324815665787065637420536f6d65286f7261636c655f696e70757429203d0a20202020202066696e645f6f7261636c655f696e7075742873656c662e696e707574732c206f7261636c655f6e66745f706f6c6963795f696429001640946052604c6ea8040cc044dd6181498131baa01723010323322330020020012259800800c00e2646644b30013372291113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902a44cc014014c0c401102a1bae302a001375a6056002605a0028158c8c8cc004004dd5980b98151baa3017302a375400844b3001001801c4c8cc896600266e440a400a2b30013371e0520051001803205689980280298190022056375c60560026eacc0b0004c0b800502c0a5eb7bdb180520008a9981224813b657870656374205075626c6973685969656c644f7261636c652872656465656d657229203d206f7263686573747261746f725f72656465656d65720016408c22232598009807800c4c9660020030038992cc0040062b300130290028cc00400600b0044035004409900480240120088150c09c00502518119baa0048acc004c030006264b3001001801c4c96600200315980098148014566002602260486ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0b400a330010038cc0040060130084039008403900840a900880440220108170c0ac0050291815801401a00d00680320583029001409c604a6ea800600881120088132009004802401102a1813800a04a3023375400900240808100c084dd50019112cc004c038c084dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981500144c9660026026604c6ea8012264b3001001803c4c96600200313259800800c026264b30010018acc004c0bc00a330010038992cc004c060006264b300100180644c966002003159800981900144c966002603600313259800800c03e264b30010018acc004c0d400a33001001805c04101440410324042021010808206c303300140c4605e6ea800a2b300130180018992cc00400601f13259800800c042021010899912cc00400602513259800800c04e027013899912cc00400602b13259800800c05a02d0168992cc004c0f000e02501740e46eb400602c81e0c0e40050371bad0013038002809a072303600140d06eb4004c0d400a02081b0c0cc00503118179baa002807205840b0605a6ea800601a817a01b00d806c0350331818000a05c302c3754005159800980a800c56600260586ea800a00d00b40b500b40a48148c0a8dd5000c02900e402902c402a01500a8052060302d00140ac605a00500880440220108170c0ac00502918139baa0048032048132598009809800c566002604e6ea800a00f00640a11598009808000c4c9660020030078992cc0040060110088044022264b3001302e003805402502b1bae00140b860560028148c09cdd50014566002603200313259800800c01e264b3001302d002804c02102a1815800a052302737540050064090812102418129baa001802a04e802c01600b00540ac60500028130c0a000a007003801c00d0291813000a04830223754007001407c403a01d00e8072038332232598009802980c1baa0018980c9919bb0301d001301d301e0013758603860326ea80062a6602e9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164058646600200200644b30010018a60103d87a80008992cc004cdd7980d00099ba548010cc074cdd2a40046603a6ea40112f5c097ae0898049980e9ba73301d301a0013301d301b0014bd7025eb82266006006603e00480c0c07400501b1bab3019301a301a301a301a301a301a301a301a301a3016375400e6eb8c064c058dd54c004896600200314bd7044cc068c05cc06c004cc008008c07000501948896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901648888c8cc004004014896600200310058992cc004006266008604000400d1330053020002330030030014078604000280ea6eb0c00cc058dd5003a44446464646644a6603a66e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea406d220100132598009806180f9baa00189929980f99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980a18109baa0018992cc0040062b3001300f3022375400313259800800c076264b300100180f407a03d01e899912cc0040060411325980098160014401a0428148c0a80050281bae001302900240a8604e0028128c08cdd5000c071020407203901c80e2050302530223754003153302049013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016407c602060426ea8c038c084dd5000981198101baa0018a9980f24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640746601400c4646600200260066eacc038c084dd5180718109baa0022259800800c528456600266e3cdd7181280080f4528c4cc008008c09800501f2046300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c204a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f901f1bac3022002375a60400026466ec0dd418100009ba73021001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a604a003337149101023a200098008054c09800600a805100a181400144ca6002015302500199b8a489023a200098008054c098006600e66008008004805100a1814001204c3028001409466e29220102207d0000340886eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920443758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720483371666e000056600266e2000520148a40c11481b9024002200c33706002901019b8600148080cdc70020012042375c0068128dc5245022c200022323300100100322598009805800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407080e0c00c00c44646600200200644b30010018a6103d87a80008992cc004c010006260106603800297ae0899801801980f001202e301c00140688b201a180780098051baa0108a4d153300849011856616c696461746f722072657475726e65642066616c73650013656401c1\"\n : \"5914ad0101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae00248888888896600264653001300a00198051805800cdc3a4009300a0024888966002600460146ea800e33001300e300b37540072300f301030100019ba5480024601e6020003370e90004dc3a4005223233001001003223300300130020024888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260146603200297ae0899801801980d801202a3019001405d2259800980298099baa00289919192cc004c06c00a26464b3001300a0018acc004c064dd5001401a2c80d22b30013009001899192cc004c07c00a0111640706eb4c074004c064dd500145660026020003159800980c9baa00280345901a459017202e405c602e6ea8004c06800e2c80c0c966002602e00315980099b8948010c0580062d13007301600140551640606ea8c064004c064004c050dd500145901248966002600a60266ea800a264646644b3001301c003802c590191bad3019001375c6032004603200260286ea800a2c809244b30013005301337540051323232332259800980e801c4c966002601660326ea8006264646644b300130220038992cc004c04000626464b300130250028074590221bae3023001301f375400f1598009807800c566002603e6ea801e01916408116407480e8c074dd500345901f1bae301f001375c603e004603e00260346ea80062c80c0c0700162c80d0dd7180d000980d001180d000980c800980a1baa0028b202491192cc004c01800626464b3001301b0028024590181bae3019001301537540071598009802800c4c8c96600260360050048b2030375c6032002602a6ea800e2c809901318099baa00291192cc004c01800626464b3001301b0028024590181bad3019001301537540071598009802800c566002602a6ea800e00516405916404c8098c04cdd500124444453001332232598009806180d1baa0018980d9919bb0301f001301f30200013758603c60366ea80062c80c8c8cc00400400c896600200314c103d87a80008992cc004cdd7980e00099ba548010cc07ccdd2a40046603e6ea40112f5c097ae0898081980f9ba73301f301c0013301f301d0014bd7025eb82266006006604200480d8c07c00501d1bab301b301c301c301c301c301c301c301c301c301c3018375401c6eb8c06cc060dd51919192cc004c030c068dd5000c4c966002602660366ea8006264b3001300e301c3754003132323322598009812801c40162c8110c088004dd718110011811000980e9baa0018b2036301f301c3754003164068601e60366ea8c034c06cdd5180f180d9baa0018b2032330083758601860346ea80408c8cc004004c00cdd59807180e1baa300e301c375400444b30010018a508acc004cdc79bae302000101a8a518998010011810800a0364078600200244b30010018a5eb822660386032603a00266004004603c00280da4464b3001300c0018992cc004c080006266010603e00200716407460366ea800e2b3001300b0018992cc004c080006264b3001300e301c3754003132323259800981200144cc034c08c00c4cc03400401e2c8108c088004c088004c074dd5000c5901b180f800c5901d180d9baa0038b2032406460326ea800a44b3001300b30193754005132323259800981080144cc89660026020603c6ea800a2646464b3001302600289980618128018992cc004c050006264b30013028001899192cc004c05c006264b3001302b0018998089815000804c5902818131baa0028acc004c05800626464653001375a6058003375a6058007375a60580049112cc004c0c001201d1640b4302c001302b001302637540051640908120c090dd50009813800c5902518119baa0028acc004c04c0062b3001302337540050058b20488b2042408460426ea80062c8118c090004c090004c07cdd500145901d18100018992cc004c03c0062b3001301e37540050058b203e8acc004c03800626464b30013024002803c590211bae3022001301e3754005159800980a800c4c8c96600260480050078b20423022001301e375400516407080e101c180e1baa0018b203c301f001301f001301a37540051640609114c0048966002601c60386ea800a2646464b300130240028992cc004c048c080dd5000c4c8c966002604e00313259800980a98119baa00189919191919194c004dd69816800cdd61816802cdd618168024dd69816801cdd69816801244444b300130330068992cc004c084c0bcdd5000c4c8c8cc89660026070007132332259800981d801c4c8cc8966002607c007133021303d01813302901b225980080140822646644b300130430018998151821000898021821802c590401bae304000130410013758607e00481ea2c81d8dd6981d8009bad303b00c303b00b8b2070375a60700026eb4c0e0028c0e00262c81a8dd6981a8009bad30350023035001303037540031640b860640171640c0302d001302c001302b001302a001302900130243754003164088604c005164090604c00260426ea80062c80f8c08c00e2c8108dd618110009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8cc8966002604c007133008302500513300e0020068b20463023001375a604600460460026044002603a6ea800a2c80da44b3001300e301c37540051323232323298009bad30250019bad30250049bad3025003981280124444b3001302a00589980618148048998090008054590270c094004c090004c08c004c088004c074dd500145901b48966002601c60386ea800a264646464646530013758604c003375a604c00b375a604c009375a604c007302600248888966002605800d13300e302b00b1330140011323322598009817801c03e2c8160dd718160009bae302c006302c0058b205218130009812800981200098118009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8c8ca60026eb0c0940066eb4c0940126eb4c09400e604a00491112cc004c0a801626601860520122660240022646644b3001302d003806c5902a1bae302a001375c605400a605400916409c3025001302400130230013022001301d375400516406d301a3754006911111192cc004c04c00a264b300130270018992cc004c054c08cdd5000c4c8c8c8cc8966002605a00713259800980d98149baa00189919191919194c004c0cc0066eb0c0cc0166eb4c0cc0126eb4c0cc00e6066004911112cc004c0e401a2660486eb0c0e002c8966002005133026006225980080144cc0880144cc088024566002605460706ea80462646464b3001304000289919912cc004c0c000a264b300130440018998179bac304300122598008014012266046608a00426002608c004821a2c8208c0fcdd5001c566002605e005132598009822000c4cc0bcdd61821800912cc00400a0091330233045002130013046002410d164104607e6ea800e2b300130360028992cc004c11000626605e6eb0c10c0048966002005004899812182280109800982300120868b2082303f375400715980099b874801800a2646464b300130460028998189bac304500322598008014566002606a60866ea800e264646644b3001304c0038054590491bad3049001375a6092004609200260886ea800e2c821226604c608e004260026090004822a2c8218c110004c110004c0fcdd5001c56600266e1d20080028992cc004c11000626605e6eb0c10c0048966002005004899812982280109800982300120868b2082303f375400715980099b874802800a264b300130440018998179bac30430012259800801401226604a608a00426002608c004821a2c8208c0fcdd5001c56600266e1d200c0028992cc004c11000626605e6eb0c10c0048966002005004899813182280109800982300120868b2082303f375400715980099b874803800a264b300130440018998179bac30430012259800801401226604c608a00426002608c004821a2c8208c0fcdd5001c56600266e1d20100028acc004c0fcdd5001c0062c82022c81e903d207a40f481e903d207a40f481e8c0f0dd500089981200109981600b112cc00400a03d1323322598009823000c4cc0b4c1140044c010c1180162c8218dd7182180098220009bac30420024100607e0071640f4607c002607c00260726ea80462c81ba2646004607c0066eb4c0f000903a44c8c008c0f000cdd6981d00120708b206c1819800981900098188009818000981780098151baa0018b2050302c0058b20543758605400260540046054002605200260486ea80062c8110c0980062c8120c088dd500545660026024005132598009813800c4cc020c09800400a2c8120c088dd50054590202040159800980898101baa009899912cc004c050c088dd5000c4c8cc89660033001323300100132330010013756600660506ea8078896600200314bd7044c8cc88cc88cc00800800489660020031003899198189ba733031375200a66062605c00266062605e00297ae0330030033033002303100140bc6eacc0b000cdd718148009980180198170011816000a0542259800800c528456600266e3cdd718159bac302b0010248a518998010011816000a04c40a54a14a28122264b30013371064b3001301f3027375400313259800980d18141baa001899191919912cc004c0c800e266026606200a26eb4c020c0b8dd5181898171baa3031302e37546062605c6ea801a2c8178dd698178009bad302f002302f001302e0013029375400316409c605660506ea800629000204c301b302737546032604e6ea8010dd6980098139baa302a302737546054604e6ea801a2b3001323259800980c800c4cdc41bad302c302937540046eb4c00cc0a4dd5181618149baa302c30293754011159800980d000c528c528204e409c604e6ea8004c0a8c09cdd5181518139baa302a302b302b302b302b302b302b302b3027375403b13259800981619198008009bac301d3029375403e44b30010018a5eb8226644b30015980099baf302f302c375400401115980099baf374c64660020026eacc07cc0b4dd5001912cc004006297adef6c608994c004dd71817000cdd59817800cc0cc0092225980099b91489000038acc004cdc7a441000038800c401503044cc0d0cdd81ba9003374c0046600c00c002818060620028178dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606266ec0dd48159ba60034bd6f7b63044ca60026eb8c0bc0066eacc0c000660680049112cc004cdc8017801c4cc0d4cdd81ba902f374c00e00b15980099b8f02f00389981a99bb0375205e6e9801c00626606a66ec0dd48019ba60023300600600140c4818860640028180c8cc0040052f5bded8c044b300100189981819bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0b80066eb4c0bc00660660049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981a19bb037520066ea0008cc01801800503020601818800a05e40a913375e604060586ea8008cdd2a40086605c00a97ae08a5040a914a0815226605c0046600800800313300400400140a8605a002605c002815a29462c814a6002444b3001301b001880146600200700199b86002001400c81424466e0ccdc1001000a410112f5223371266e08dd698160011bad302c302d001337046eb4c0b0004dd69816181680148cdc4240006eb4c0acc0b00066e092080897a981518139baa302a3027375400c91111119199118119981900799819181118181baa303330303754008660646ea0cc896600260100051598009804000c56600266012004003130030018980180120608b20608b20603758604860606ea801260026e2520009bac302230303754009375a601660606ea80126eb4c0ccc0d0c0d0c0d0c0d0c0d0c0c0dd50022444464b3001300b0048acc004c02c0062b30013300c0010048800c4c8c8cc88c02ccc0ecdd419b80337046eb4c0f0020008cdc11bad303c0030013303b375066e080040092f5c06eb4c0e8c0ec004dd6981d181d80318041981c1ba8337046eb4c0e4004cdc0a410112f464b300130070058acc004cdc4802802456600266e240112080897a899b800053300f3370200800ab300130070018acc004cdc4800a41016912271323232323232323370266e00cdc099b803370266e00cdc080399b8300648010cdc1802a401866e0c01120303370600690780099b83002482802ccdc1800a41c09c66e0ccc05800401d2080f604330150010063301400100533013001004330120010033301100100233010001001337060029014459035459035459035459035459035192cc004cdc424101691226003148202d2244e200281a8cdc199b82300b375a60720029064009bad3039303a00133038375060166eb4c0e4c0e80052f5c066446012660726ea0cdc099b82375a607400600266e08dd6981d0030011981c9ba83370400400297ae0375a607060720026eb4c0e0c0e40110334590334590331919912cc004c01c00a2b3001337109000000c4cc0e4dd40011981c9ba80014bd704590354590351bad3038303537540026eb4c09cc0d4dd5000981b981a1baa00825eb808cc88c966002604600314bd70810100008101010044cc0d0dd419b8300300133034375066e0c0080052f5c08180c96600266e200052000899b814800000620028180cc010008004dd698190009bad3032303300123370660086eb4c0c8004dd698191819800980300322c812a2c81288c0a8c0acc0acc0ac0062c8120c09cc090dd5180b18121baa001230283029302930293029001302630233754003164084604860426ea8024cc03cdd6181218109baa01723012323322330020020012259800800c00e2646644b300133722910113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902644cc014014c0b00110261bae3025001375a604c00260500028130c8c8cc004004dd5980b98129baa30173025375400844b3001001801c4c8cc896600266e4409400a2b30013371e04a0051001803204e8998028029816802204e375c604c0026eacc09c004c0a40050270a5eb7bdb180520008b203e08b2012180500098029baa00a8a4d13656400c1\",\n Type.Tuple([PolicyId, PolicyId]),\n [proxyPolicyId, oracleNftPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1OrderOrderSpend {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5919070101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00168a998022494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d657256310016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b30010078999119912cc004c00c0062b3001301b375401700280720388acc004c0240062b3001301b375401700280720388acc004c0100062b3001301b375401700280720388072030406080c0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800e446466002002006446600600260040052301d301e301e0019112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003203291111919800800802912cc004006200b13259800800c4cc010c08c00801a26600a6046004660060060028108c08c0050204dc0240032259800800c52f5c113301d301a301e00133002002301f00140712301d301e001911919800800801912cc00400629422b30013371e6eb8c08000400e2946266004004604200280d101e4c060dd5004c8c074c078c078c078c078c078c07800644646600200200644b30010018a508acc004cdd7801980e1810000c528c4cc008008c08400501a203c4888888888888a600244646600200200644b30010018a6103d87a80008992cc004c010006260246605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002602a00313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d3754007159800980d800c4c9660020030068992cc00400600f0078992cc004c0d000e26602a00244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130160018992cc00400600d13259800800c01e00f13259800981a001c4cc05400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981b801c4cc060004896600200500a8992cc0040063300100d800c4c008c0e800d00d403a01d00e8072076303800240d900b40d06eb000601500a40dc60680028190dd68009819801401d0341818800a05e302d375400715980099b8748020006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260680070058042062375a00300740d060620028178c0b4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014c024026600c00c91114c00488cc0180088cdd7981818169baa0010029112cc004c054c0b0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018acc004c0dc00a2b3001301b3032375400b13259800800c022264b30010018992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c566002609600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c6600200313259800981818239baa0188992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f027899912cc00400605313259800800c0aa05502a81544cc896600200302c8992cc0040062b3001305d0028992cc004c108006264b3001001817c4c96600200303081840c2061132598009830801c05a06282f0dd7000a0c2305e001417060b46ea800a2b300130480018acc004c168dd5001404e05c82da05c82b9057182c1baa001816a0b4816c0b605b02d417860b600282c8dd7000982d00120b6305800141586eb8004c15c009058182a800a0a6375c00260a800482a8c1480050501bae00130510024148609e0028268dd70009827001209e304c001412860906ea80620388228566002605e608c6ea8056264b300100180e44c96600200301d80ec4cc896600200301f8992cc0040062b30013050002899818801912cc00400a2b30013036304d375400713259800800c08e264b30010018992cc00400604b13259800800c56600260ac00519800801c4c966002607600313259800800c0a2264b30010018acc004c16400a264b3001303e0018992cc00400605713259800800c56600260b800519800800c0b605881f205882ca05902c81640b105d182d000a0b0305637540051598009822000c4c96600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944c96600260c6007034819a0c0375a003032418c60c000282f0dd6800982f80140bd060182e800a0b6375a00260b800502c417460b400282c0c158dd500140a905320a6305437540030294159029814c0a605282d0c15c00505518299baa0028acc004c1040062b300130533754005028813a0a8813a0a0414060a26ea800604c81c204c829a04d0268134099057182a000a0a430540028124092049024415460a40028280c138dd5001c08904b44c966002003159800981b98271baa0018992cc00400604913259800800c09604b1332259800800c09e264b300100181440a20511332259800800c0aa264b3001001815c0ae05713259800982e001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c2061132598009830801c4c040c18404606282f0dd7000a0c2305e00141706eb8004c17402105e182d803a0b281620b2375a00302b417060b200282b8dd6800982c00140a1059182b000a0a8375800260aa005025812a0ac30530014144609e6ea80060468262047023811c08d0541828801209e810209a81040820410204144609c0028260dd60009826801407603a8270c12c00504918239baa01580da08880da04080da04080da04080da04080da04080da04080da04080da04080da04080da04080da09080dc06e03701b413060920028238c12400a03301980cc06504a1823800a08a304700280bc05e02f0174120608a0028218c11400a02b01580ac0550461821800a0823043002809c04e0270134110608200281f8c10400a023011808c045042181f800a07a303f002807c03e01f00f4100607a00281d8c0f400a01b00d806c03503e181d800a072303b002805c02e01700b40f0607200281b8c0e400a013009804c02503a181b800a06a3033375400b00740c100740d1007803c01e00e81c0c0d4005033181a801401600b005802a06c303300140c46066005003801c00e00681a0c0c400502f18169baa003800a054911919800800801912cc004c058006266e2922010130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340ac815a446600c00446601660086eacc030c0b4dd5180618169baa00100248888c8c966002603001b1332259800980d18189baa0018992cc004c084c0c8dd5000c56600266e3cdd7181b18199baa001375c602e60666ea8c048c0ccdd5180918199baa0038999129981999b9649010d63726564656e7469616c3a3a200037326600c0029101001330100020013756601e60666ea8080cdd2a40046606a6ea40b92f5c1153303149013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640c102940c0606a60646ea8c0d4c0c8dd5180898191baa30353032375400302740bc64b30010018acc004c064c0c0dd5000c4c96600200302c8992cc00400605b02d816c0b626644b3001001817c4c966002003159800981d00146600200310068182016818206e81840c206103040ec607000281b0dd7000981b8012070303500140cc60626ea8006056817205702b815c0ad036192cc004c064c0c0dd5000c4c966002603660626ea80062606a60646ea80060548178c054c0c4dd5180818189baa30343031375400302840b8660066eb0c03cc0c0dd500e816198031bac30333030375403a037159800980f006c5660026030605e6ea806a33001303330303754606660606ea806a6eb0c0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecc0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecdd5980618181baa01d48888c8cc00400401488c966002603e003133015006375c6074606e6ea800a2b30013025001899198008009bac303b3038375400644b30010018a518acc004cc014014c0f0006266004004607a00314a081b103a45660026040003132330010013758607660706ea800c896600200314a115980099802802981e000c528c4cc008008c0f400503620748acc004cdc3a400c003132337126eb4c0ec004c8cc004004dd6181e181e801112cc0040062900044cc896600266010010005133700002900144005039181e80099801001181f000a0763037375400515980099b87480200062646644b30013028303937540051598009814181c9baa303d303e003899b89375a607a60746ea8008006266e20dd6981e981d1baa00200140dd14a081b8c0ec004dd6981d981c1baa00330373754602c606e6ea80162b30013370e9005000c4c8cc8966002605060726ea800a2b3001302830393754607a607c0071337120026eb4c0f4c0e8dd500144cdc40009bad303d303a375400481ba2941037181d8009bad303b30383754006606e6ea8c0e8c0dcdd5002c4cc048010cdd2a4004660726074606e6ea80092f5c081a1034206840d081a1034181a9baa001409102d45660026030605e6ea806a330013033303037540353253302f3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40b522010013259800980d18189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980e98199baa0018992cc0040062b3001301d3034375400313259800800c0be264b300100181840c2061030899912cc00400606513259800981f0014401a06681d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0b903240ba05d02e817207430373034375400302c40c4602e60666ea8c048c0ccdd5000981a98191baa001814a05e3300400102d3758601e60606ea80766600c6eb0c0ccc0c0dd500e80da444b3001301b3032375400313232598009811981a1baa0018acc004c96600330013371e6eb8c0e4c0d8dd5002818d28528a0668a51899912cc004006330010018cc004cdc79bae301c30383754602e60706ea800400e942945035400900d400a005002801207a14a2602a606c6ea80150331bae30383035375400313259800980f181a9baa0018992cc004c07cc0d8dd5000c4c9660026040606e6ea8006264b30013375e607860726ea8004c080cc0ecc080cc0ecc0f0c0e4dd500225eb80cc0ed300103d87a80004bd704660026eacc060c0e4dd5000cc060c0e4dd5180c181c9baa0069119b89337020026eb4c0f8c0fcc0fcc0fcc0ecdd50140012444b30010028a508994c004c966002604c607a6ea800626eb4c0f8c104dd59820981f1baa0018a400081d8c1000066ebcc100c1040066eac00d22259800800c566002600400d13300500348002294103d44c96600266ebcc1000053010140008acc004cc018010dd6982098221bab3041001898019ba630450028a5040f91598009980300224001130030078a5040f881f0c10c0050410ca60020030049119820801198209ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0fc0066eacc10000660880069112cc004cdc8a441000038acc004cdc7a441000038998029815198229ba60024bd70000c4cc015300103d87a8000006410119800803c006446600e0046608e66ec0dd48029ba6004001401c82006084004820229422942294104122941036181d981c1baa0018a9981b2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640d465300130010019bad303b303837540053758603860706ea80952225980099b8800248002298103d87a800089980180080120701112cc00400a298103d87a80008acc004c0880062604266078607a00497ae08cc00400e607c005301b001400c81b903b454cc0d524014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640d06530010019bac303a30373754049480010011112cc00400a298103d87a80008acc004cdd7981e00100344c080cc0ecdd4000a5eb8233001003981e8014cdc0000a4004801903620748a9981a248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640cc6070606a6ea80162a6606692019d6578706563740a2020202020202020202076315f315f7263315f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c902b40c8606e60686ea8c0dcc0d0dd51809981a1baa00130363033375400302840c0812205a40b48168c004004888c9660020071323233223300a00233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051018206e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81890311bac3034002375a60640026466ec0dd418190009ba73033001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606e003337149101023a200098008054c0e000600a805100a181d00144ca6002015303700199b8a489023a200098008054c0e0006600e66008008004805100a181d0012070303a00140dc66e29220102207d0000340d06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901520683758007133006375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40d866e2ccdc0000acc004cdc4000a402914818229037206c004401866e0c00520203370c002901019b8e00400240cc6eb800d0371b8a4881022c2000060306ea8024dc3a40086e1d2000805402a01500a407060300026030603200260286ea800e2c80886026002601c6ea8052293454cc0312411856616c696461746f722072657475726e65642066616c73650013656402c1\"\n : \"5915d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e9520009180a980b180b000c896600200314bd7044cc054c048c058004cc008008c05c00501448c054c05800644646600200200644b30010018a508acc004cdc79bae30180010038a51899801001180c800a02640592232330010010032233003001300200298081baa00a9180a980b180b180b180b180b180b000c88c8cc00400400c896600200314a115980099baf003301430180018a51899801001180c800a0264059370e90034dc3a4011370e9005244444444444466446644b3001301400a8992cc004c054c084dd5000c4c966002603460446ea80062b30013371e6eb8c098c08cdd50009bae301130233754601e60466ea8c03cc08cdd519914c004c00800a2003223259800980d800c4c8c966002605c0050048b2056375c605800260506ea800e2b3001301f001899192cc004c0b800a0091640ac6eb8c0b0004c0a0dd5001c59026204c302637540049112cc004c06cc09cdd500244c8cc8966002605e00313259800980f98159baa001899191919912cc004c0d400e264b30013025303137540031323232323232323232329800981f800cc0fc026607e011303f007981f8034c0fc016607e009303f003981f8012444444444b3001304900a89981018240098998100040998100038998100030998100028998100020998100018998100010998100008998100048992cc004c0e4c114dd500b44c8c8c8c8ca60026eb8c138006609e003375c609c00b375c609c009375c609c007375c609c0049111112cc004c15401626464b30013046001899192cc004c16400a0211641586eb8c15c004c14cdd50014566002609400315980098299baa00280745905445905120a23051375400260a800b164148304e001304d001304c001304b0013046375402d1641102b300130383044375402d132323259800982600144cc0c8dd61825801912cc00400a2b3001303d30493754007132323259800982880144cc098c14000c4c9660026082003132598009829800c4c8c966002608800313259800982b000c4cc0acc1540040b22c8298c144dd500145660026090003132323298009bad30570019bad30570039bad305700248896600260b60090318b20b0182b800982b00098289baa0028b209e413c609e6ea8004c1480062c8280c138dd50014566002608a00315980098271baa00281445904f45904c2098304c3754003164138609e002609e00260946ea800e2c8242264b3001303e304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590491825000982500098229baa0168b20868b208c181f800981f000981e800981e000981d800981d000981c800981c000981b80098191baa0018b206030340058b20643032001303200230320013031001302c37540031640a8605c0031640b06eb8c0b0004c0b4004c0a0dd50024590260888c96600260340031323259800981680140122c8150dd7181580098139baa0038acc004c078006264b3001302c0018998091bac302b0012259800801401633001007981680144c004c0b800900720568b205230273754007159800980d800c4c96600260580031330123758605600244b3001002802c6600200f302d002898009817001200e40ad1640a4604e6ea800e2b3001300d00189919912cc004c0b80062660286eb0c0b400489660020050078cc004026605e0051300130300024024816a2c8158dd69815800981600098139baa0038acc004c03000626464b3001302d00280245902a1bad302b001302737540071598009805800c4c8c966002605a0050048b2054375a6056002604e6ea800e2b30013370e9006000c4c8c966002605a0050048b2054375c6056002604e6ea800e2c8129025204a40948129025204a3025375400464b300130173023375400313259800980c98121baa0018981418129baa0018b2046301230243754602060486ea8c09cc090dd5000c59022198019bac300f3023375403204113300a3756601660466ea8064cdd2a40046604a6ea407d2f5c1164085164084604a60446ea8c094c088dd5180718111baa302530223754003164080660046eb0c090c084dd500b80945660026030015159800980a18101baa0118cc004c090c084dd5181218109baa0119bac3024302530253025302530253025302530253021375402f302430253025302530253025302530253021375402f3756601260426ea805d22223233001001005223259800980d800c4cc04c018dd7181598141baa0028acc004c07c006264660020026eb0c0b0c0a4dd5001912cc00400629462b300133005005302d0018998010011817000c528205040ad159800980e000c4c8cc004004dd6181618149baa0032259800800c52845660026600a00a605a00314a3133002002302e00140a0815a2b3001300e00189919b89375a605800264660020026eb0c0b4c0b8008896600200314800226644b300133008008002899b800014800a20028158c0b8004cc008008c0bc00502c18141baa0028acc004c0340062646644b30013022302a3754005159800981118151baa302e302f003899b89375a605c60566ea8008006266e20dd6981718159baa00200140a514a08148c0b0004dd6981618149baa00330283754602860506ea80162b3001300c00189919912cc004c088c0a8dd50014566002604460546ea8c0b8c0bc00e266e24004dd6981718159baa002899b88001375a605c60566ea800902945282052302c001375a605860526ea800cc0a0dd5181598141baa00589980780219ba548008cc0a8c0acc0a0dd500125eb81026204c40988131026204c302637540028b203e8acc004c050c080dd5008c4c966002602a60426ea800626464b3001301b30233754003159800cc004888c966002603600313259800800c00e264b300100180240120090048992cc004c0bc00e00d00540b06eb800502f1816000a05430283754009159800980f800c4c9660020030038992cc0040060090048024012264b3001302f003803401502c1bae00140bc60580028150c0a0dd50024009026204c30263754007222329800800c0120068008888c966002603c00313259800800c01a264b3001001803c01e00f0078992cc004c0c800e00b00840bc6eb80050321817800a05a302b37540071598009811000c4c9660020030068992cc00400600f0078992cc004c0c800e26603000244b3001002803c4c96600200319800805400626004606a006805201700b805c02d03618198012062804205e3758003007803a064302f00140b460566ea800e2b3001301f0018992cc00400600d13259800800c01e00f132598009819001c4cc06000489660020050078992cc0040063300100a800c4c008c0d400d00a402e01700b805a06c303300240c500840bc6eb000600f00740c8605e0028168c0acdd5001c566002602200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303500389980d800912cc00400a01513259800800c6600201b00189801181c001a01a807403a01d00e40e4606c00481a20168190dd6000c02a01481a8c0c80050301bad0013031002803a064302f00140b460566ea800e2b300130100018992cc00400600d13259800800c01e00f0078992cc004c0c800e00b00840bc6eb400600e8190c0bc00502d18159baa0038acc004c03c006264b300100180344c966002003007803c01e264b30013032003802c02102f1bad001803a064302f00140b460566ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013032003802c02102f1bae00140c8605e0028168c0acdd5001c015029205240a48149029205240a460526ea800a64b300130183024375400313259800980d18129baa0018992cc004c068c098dd5000c4c8c8cc8966002605e00710058b2058302c001375c60580046058002604e6ea80062c8128c0a4c098dd5000c59024180998129baa3011302537546050604a6ea80062c8118cc010dd6180818121baa01a0219bae30273024375400291112cc006600266e3cdd7181598141baa002024a50a51409914a31332259800800c4c966002603c60546ea800a264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800800c566002606a005159800981218181baa0058992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c4c96600200301c8992cc0040062b300130490028cc00404e330010118cc00403e3300100d8cc00402e330010098cc00401e330010058cc00400e330010018992cc004c0e4c114dd500c44c96600200301f8992cc004006041020810408226644b300100181144c966002003023811c08e0471332259800800c096264b3001001813409a04d026899912cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81640b226644b300100181744c966002003159800982d80144c966002609600313259800800c0c6264b300100181940ca0650328992cc004c17c00e02d03341706eb800505f182e000a0b4305837540051598009827800c56600260b06ea800a0270304165030415882b0c158dd5000c0bd05840be05f02f817a0b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270dd7000982780120a0304d001412c6eb8004c13000904d1825000a0903046375403101e41102b300130383044375402b13259800800c07a264b300100180fc07e26644b3001001810c4c966002003159800982700144cc0d000c8966002005159800981f98259baa0038992cc00400604b13259800800c4c9660020030278992cc0040062b300130540028cc00400e264b300130440018992cc00400605513259800800c56600260ae005132598009823800c4c96600200302d8992cc0040062b3001305a0028cc00400605902e40c902e415d02e81740ba05c82d8c160005056182a1baa0028acc004c12c006264b3001001816c4c96600200302e81740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d2264b30013061003819c0d505e1bad00181a20c2305e00141706eb4004c17400a06282f0c16c0050591bad001305a00281720b63058001415860a86ea800a058829105218291baa001815a0a8815c0ae05702b416060aa0028298c144dd50014566002609000315980098289baa002813c0a505240a504f209e304f375400302840b1028414502881440a205082a8c1480050501829001409a04d02681320a63050001413860986ea800e0488252264b30010018acc004c100c130dd5000c4c9660020030268992cc00400604f027899912cc00400605313259800800c0aa05502a899912cc00400605913259800800c0b605b02d8992cc004c16800e2b300100781744c96600200302f817c0be05f1332259800800c0c6264b300100181940ca0650328992cc004c17c00e2602060be02303341706eb800505f182e000a0b4375c00260b601082e0c16401d05740b90571bad001816a0b4305700141546eb4004c15800a05482b8c1500050521bac0013053002813c09d0541828800a09e304d3754003025412d025812c09604a8290c13c00904d408904b408a045022811209e304c00141286eb0004c12c00a03f01f413060920028238c114dd500ac07504340750204075020407502040750204075020407502040750204075020407502040750204075046407603b01d80ea09430470014114608e00501b80dc06e0368240c1140050431822801406603301980ca08c30430014104608600501780bc05e02e8220c10400503f1820801405602b01580aa084303f00140f4607e005013809c04e0268200c0f400503b181e8014046023011808a07c303b00140e4607600500f807c03e01e81e0c0e4005037181c801403601b00d806a074303700140d4606e00500b805c02e01681c0c0d400503318189baa005804a05e804a064804c02601300940d860660028188c0cc00a00f007803c01d0341818800a05e3031002802c01600b00540c8605e0028168c0acdd5001400d0290cc004cdc79bae3018302a3754602c60546ea800400e942945028400a005002801205e14a2602860506ea80090262264b300130183024375400313259800980c98129baa0018992cc004c068c098dd5000c4c96600266ebcc0acc0a0dd5000980b99815180b99815181598141baa0044bd701981526103d87a80004bd704660026eacc050c0a0dd5000cc050c0a0dd5180a18141baa0069119b89337020026eb4c0b4c0b8c0b8c0b8c0a8dd50100012444b30010028a508994c004c966002604060586ea800626eb4c0b4c0c0dd5981818169baa0018a40008158c0bc0066ebcc0bcc0c00066eac00d22259800800c566002600400d13300500348002294102d44c96600266ebcc0bc0053010140008acc004cc018010dd6981818199bab3030001898019ba630340028a5040b91598009980300224001130030078a5040b88170c0c80050300ca60020030049119818001198181ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0b80066eacc0bc00660660069112cc004cdc8a441000038acc004cdc7a4410000389980298109981a1ba60024bd70000c4cc015300103d87a800000640c119800803c006446600e0046606c66ec0dd48029ba6004001401c81806062004817a29422942294103022941026181518139baa0018b204a3298009800800cdd6981518139baa0029bac30153027375403a9112cc004cdc40012400114c103d87a800089980180080120501112cc00400a298103d87a80008acc004c0700062603066056605800497ae08cc00400e605a005337000029000a006409c81522c8120ca600200337586052604c6ea807290002002222598008014530103d87a80008acc004cdd7981580100344c05ccc0a8dd4000a5eb823300100398160014cdc0000a4004801902620528b2046302730243754604e60486ea80522c81122c8110c098c08cdd5181318119baa300f30233754002604a60446ea80062c8100cc008dd6181218109baa0170128b203e407c80f888cc0100088cdd7981298111baa001002223300400223300d30043756601c60446ea8c038c088dd5000801111919800800801912cc0040062980103d87a80008992cc004c010006260226604800297ae0899801801981300120403024001408860140143012004301230130044590090c028004c014dd5005c52689b2b20061\",\n Type.Tuple([PolicyId, ScriptHash]),\n [proxyPolicyId, protocolScripthash],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1OrderOrderElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5919070101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00168a998022494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d657256310016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b30010078999119912cc004c00c0062b3001301b375401700280720388acc004c0240062b3001301b375401700280720388acc004c0100062b3001301b375401700280720388072030406080c0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800e446466002002006446600600260040052301d301e301e0019112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003203291111919800800802912cc004006200b13259800800c4cc010c08c00801a26600a6046004660060060028108c08c0050204dc0240032259800800c52f5c113301d301a301e00133002002301f00140712301d301e001911919800800801912cc00400629422b30013371e6eb8c08000400e2946266004004604200280d101e4c060dd5004c8c074c078c078c078c078c078c07800644646600200200644b30010018a508acc004cdd7801980e1810000c528c4cc008008c08400501a203c4888888888888a600244646600200200644b30010018a6103d87a80008992cc004c010006260246605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002602a00313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d3754007159800980d800c4c9660020030068992cc00400600f0078992cc004c0d000e26602a00244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130160018992cc00400600d13259800800c01e00f13259800981a001c4cc05400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981b801c4cc060004896600200500a8992cc0040063300100d800c4c008c0e800d00d403a01d00e8072076303800240d900b40d06eb000601500a40dc60680028190dd68009819801401d0341818800a05e302d375400715980099b8748020006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260680070058042062375a00300740d060620028178c0b4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014c024026600c00c91114c00488cc0180088cdd7981818169baa0010029112cc004c054c0b0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018acc004c0dc00a2b3001301b3032375400b13259800800c022264b30010018992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c566002609600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c6600200313259800981818239baa0188992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f027899912cc00400605313259800800c0aa05502a81544cc896600200302c8992cc0040062b3001305d0028992cc004c108006264b3001001817c4c96600200303081840c2061132598009830801c05a06282f0dd7000a0c2305e001417060b46ea800a2b300130480018acc004c168dd5001404e05c82da05c82b9057182c1baa001816a0b4816c0b605b02d417860b600282c8dd7000982d00120b6305800141586eb8004c15c009058182a800a0a6375c00260a800482a8c1480050501bae00130510024148609e0028268dd70009827001209e304c001412860906ea80620388228566002605e608c6ea8056264b300100180e44c96600200301d80ec4cc896600200301f8992cc0040062b30013050002899818801912cc00400a2b30013036304d375400713259800800c08e264b30010018992cc00400604b13259800800c56600260ac00519800801c4c966002607600313259800800c0a2264b30010018acc004c16400a264b3001303e0018992cc00400605713259800800c56600260b800519800800c0b605881f205882ca05902c81640b105d182d000a0b0305637540051598009822000c4c96600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944c96600260c6007034819a0c0375a003032418c60c000282f0dd6800982f80140bd060182e800a0b6375a00260b800502c417460b400282c0c158dd500140a905320a6305437540030294159029814c0a605282d0c15c00505518299baa0028acc004c1040062b300130533754005028813a0a8813a0a0414060a26ea800604c81c204c829a04d0268134099057182a000a0a430540028124092049024415460a40028280c138dd5001c08904b44c966002003159800981b98271baa0018992cc00400604913259800800c09604b1332259800800c09e264b300100181440a20511332259800800c0aa264b3001001815c0ae05713259800982e001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c2061132598009830801c4c040c18404606282f0dd7000a0c2305e00141706eb8004c17402105e182d803a0b281620b2375a00302b417060b200282b8dd6800982c00140a1059182b000a0a8375800260aa005025812a0ac30530014144609e6ea80060468262047023811c08d0541828801209e810209a81040820410204144609c0028260dd60009826801407603a8270c12c00504918239baa01580da08880da04080da04080da04080da04080da04080da04080da04080da04080da04080da04080da09080dc06e03701b413060920028238c12400a03301980cc06504a1823800a08a304700280bc05e02f0174120608a0028218c11400a02b01580ac0550461821800a0823043002809c04e0270134110608200281f8c10400a023011808c045042181f800a07a303f002807c03e01f00f4100607a00281d8c0f400a01b00d806c03503e181d800a072303b002805c02e01700b40f0607200281b8c0e400a013009804c02503a181b800a06a3033375400b00740c100740d1007803c01e00e81c0c0d4005033181a801401600b005802a06c303300140c46066005003801c00e00681a0c0c400502f18169baa003800a054911919800800801912cc004c058006266e2922010130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340ac815a446600c00446601660086eacc030c0b4dd5180618169baa00100248888c8c966002603001b1332259800980d18189baa0018992cc004c084c0c8dd5000c56600266e3cdd7181b18199baa001375c602e60666ea8c048c0ccdd5180918199baa0038999129981999b9649010d63726564656e7469616c3a3a200037326600c0029101001330100020013756601e60666ea8080cdd2a40046606a6ea40b92f5c1153303149013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640c102940c0606a60646ea8c0d4c0c8dd5180898191baa30353032375400302740bc64b30010018acc004c064c0c0dd5000c4c96600200302c8992cc00400605b02d816c0b626644b3001001817c4c966002003159800981d00146600200310068182016818206e81840c206103040ec607000281b0dd7000981b8012070303500140cc60626ea8006056817205702b815c0ad036192cc004c064c0c0dd5000c4c966002603660626ea80062606a60646ea80060548178c054c0c4dd5180818189baa30343031375400302840b8660066eb0c03cc0c0dd500e816198031bac30333030375403a037159800980f006c5660026030605e6ea806a33001303330303754606660606ea806a6eb0c0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecc0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecdd5980618181baa01d48888c8cc00400401488c966002603e003133015006375c6074606e6ea800a2b30013025001899198008009bac303b3038375400644b30010018a518acc004cc014014c0f0006266004004607a00314a081b103a45660026040003132330010013758607660706ea800c896600200314a115980099802802981e000c528c4cc008008c0f400503620748acc004cdc3a400c003132337126eb4c0ec004c8cc004004dd6181e181e801112cc0040062900044cc896600266010010005133700002900144005039181e80099801001181f000a0763037375400515980099b87480200062646644b30013028303937540051598009814181c9baa303d303e003899b89375a607a60746ea8008006266e20dd6981e981d1baa00200140dd14a081b8c0ec004dd6981d981c1baa00330373754602c606e6ea80162b30013370e9005000c4c8cc8966002605060726ea800a2b3001302830393754607a607c0071337120026eb4c0f4c0e8dd500144cdc40009bad303d303a375400481ba2941037181d8009bad303b30383754006606e6ea8c0e8c0dcdd5002c4cc048010cdd2a4004660726074606e6ea80092f5c081a1034206840d081a1034181a9baa001409102d45660026030605e6ea806a330013033303037540353253302f3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40b522010013259800980d18189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980e98199baa0018992cc0040062b3001301d3034375400313259800800c0be264b300100181840c2061030899912cc00400606513259800981f0014401a06681d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0b903240ba05d02e817207430373034375400302c40c4602e60666ea8c048c0ccdd5000981a98191baa001814a05e3300400102d3758601e60606ea80766600c6eb0c0ccc0c0dd500e80da444b3001301b3032375400313232598009811981a1baa0018acc004c96600330013371e6eb8c0e4c0d8dd5002818d28528a0668a51899912cc004006330010018cc004cdc79bae301c30383754602e60706ea800400e942945035400900d400a005002801207a14a2602a606c6ea80150331bae30383035375400313259800980f181a9baa0018992cc004c07cc0d8dd5000c4c9660026040606e6ea8006264b30013375e607860726ea8004c080cc0ecc080cc0ecc0f0c0e4dd500225eb80cc0ed300103d87a80004bd704660026eacc060c0e4dd5000cc060c0e4dd5180c181c9baa0069119b89337020026eb4c0f8c0fcc0fcc0fcc0ecdd50140012444b30010028a508994c004c966002604c607a6ea800626eb4c0f8c104dd59820981f1baa0018a400081d8c1000066ebcc100c1040066eac00d22259800800c566002600400d13300500348002294103d44c96600266ebcc1000053010140008acc004cc018010dd6982098221bab3041001898019ba630450028a5040f91598009980300224001130030078a5040f881f0c10c0050410ca60020030049119820801198209ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0fc0066eacc10000660880069112cc004cdc8a441000038acc004cdc7a441000038998029815198229ba60024bd70000c4cc015300103d87a8000006410119800803c006446600e0046608e66ec0dd48029ba6004001401c82006084004820229422942294104122941036181d981c1baa0018a9981b2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640d465300130010019bad303b303837540053758603860706ea80952225980099b8800248002298103d87a800089980180080120701112cc00400a298103d87a80008acc004c0880062604266078607a00497ae08cc00400e607c005301b001400c81b903b454cc0d524014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640d06530010019bac303a30373754049480010011112cc00400a298103d87a80008acc004cdd7981e00100344c080cc0ecdd4000a5eb8233001003981e8014cdc0000a4004801903620748a9981a248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640cc6070606a6ea80162a6606692019d6578706563740a2020202020202020202076315f315f7263315f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c902b40c8606e60686ea8c0dcc0d0dd51809981a1baa00130363033375400302840c0812205a40b48168c004004888c9660020071323233223300a00233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051018206e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81890311bac3034002375a60640026466ec0dd418190009ba73033001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606e003337149101023a200098008054c0e000600a805100a181d00144ca6002015303700199b8a489023a200098008054c0e0006600e66008008004805100a181d0012070303a00140dc66e29220102207d0000340d06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901520683758007133006375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40d866e2ccdc0000acc004cdc4000a402914818229037206c004401866e0c00520203370c002901019b8e00400240cc6eb800d0371b8a4881022c2000060306ea8024dc3a40086e1d2000805402a01500a407060300026030603200260286ea800e2c80886026002601c6ea8052293454cc0312411856616c696461746f722072657475726e65642066616c73650013656402c1\"\n : \"5915d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e9520009180a980b180b000c896600200314bd7044cc054c048c058004cc008008c05c00501448c054c05800644646600200200644b30010018a508acc004cdc79bae30180010038a51899801001180c800a02640592232330010010032233003001300200298081baa00a9180a980b180b180b180b180b180b000c88c8cc00400400c896600200314a115980099baf003301430180018a51899801001180c800a0264059370e90034dc3a4011370e9005244444444444466446644b3001301400a8992cc004c054c084dd5000c4c966002603460446ea80062b30013371e6eb8c098c08cdd50009bae301130233754601e60466ea8c03cc08cdd519914c004c00800a2003223259800980d800c4c8c966002605c0050048b2056375c605800260506ea800e2b3001301f001899192cc004c0b800a0091640ac6eb8c0b0004c0a0dd5001c59026204c302637540049112cc004c06cc09cdd500244c8cc8966002605e00313259800980f98159baa001899191919912cc004c0d400e264b30013025303137540031323232323232323232329800981f800cc0fc026607e011303f007981f8034c0fc016607e009303f003981f8012444444444b3001304900a89981018240098998100040998100038998100030998100028998100020998100018998100010998100008998100048992cc004c0e4c114dd500b44c8c8c8c8ca60026eb8c138006609e003375c609c00b375c609c009375c609c007375c609c0049111112cc004c15401626464b30013046001899192cc004c16400a0211641586eb8c15c004c14cdd50014566002609400315980098299baa00280745905445905120a23051375400260a800b164148304e001304d001304c001304b0013046375402d1641102b300130383044375402d132323259800982600144cc0c8dd61825801912cc00400a2b3001303d30493754007132323259800982880144cc098c14000c4c9660026082003132598009829800c4c8c966002608800313259800982b000c4cc0acc1540040b22c8298c144dd500145660026090003132323298009bad30570019bad30570039bad305700248896600260b60090318b20b0182b800982b00098289baa0028b209e413c609e6ea8004c1480062c8280c138dd50014566002608a00315980098271baa00281445904f45904c2098304c3754003164138609e002609e00260946ea800e2c8242264b3001303e304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590491825000982500098229baa0168b20868b208c181f800981f000981e800981e000981d800981d000981c800981c000981b80098191baa0018b206030340058b20643032001303200230320013031001302c37540031640a8605c0031640b06eb8c0b0004c0b4004c0a0dd50024590260888c96600260340031323259800981680140122c8150dd7181580098139baa0038acc004c078006264b3001302c0018998091bac302b0012259800801401633001007981680144c004c0b800900720568b205230273754007159800980d800c4c96600260580031330123758605600244b3001002802c6600200f302d002898009817001200e40ad1640a4604e6ea800e2b3001300d00189919912cc004c0b80062660286eb0c0b400489660020050078cc004026605e0051300130300024024816a2c8158dd69815800981600098139baa0038acc004c03000626464b3001302d00280245902a1bad302b001302737540071598009805800c4c8c966002605a0050048b2054375a6056002604e6ea800e2b30013370e9006000c4c8c966002605a0050048b2054375c6056002604e6ea800e2c8129025204a40948129025204a3025375400464b300130173023375400313259800980c98121baa0018981418129baa0018b2046301230243754602060486ea8c09cc090dd5000c59022198019bac300f3023375403204113300a3756601660466ea8064cdd2a40046604a6ea407d2f5c1164085164084604a60446ea8c094c088dd5180718111baa302530223754003164080660046eb0c090c084dd500b80945660026030015159800980a18101baa0118cc004c090c084dd5181218109baa0119bac3024302530253025302530253025302530253021375402f302430253025302530253025302530253021375402f3756601260426ea805d22223233001001005223259800980d800c4cc04c018dd7181598141baa0028acc004c07c006264660020026eb0c0b0c0a4dd5001912cc00400629462b300133005005302d0018998010011817000c528205040ad159800980e000c4c8cc004004dd6181618149baa0032259800800c52845660026600a00a605a00314a3133002002302e00140a0815a2b3001300e00189919b89375a605800264660020026eb0c0b4c0b8008896600200314800226644b300133008008002899b800014800a20028158c0b8004cc008008c0bc00502c18141baa0028acc004c0340062646644b30013022302a3754005159800981118151baa302e302f003899b89375a605c60566ea8008006266e20dd6981718159baa00200140a514a08148c0b0004dd6981618149baa00330283754602860506ea80162b3001300c00189919912cc004c088c0a8dd50014566002604460546ea8c0b8c0bc00e266e24004dd6981718159baa002899b88001375a605c60566ea800902945282052302c001375a605860526ea800cc0a0dd5181598141baa00589980780219ba548008cc0a8c0acc0a0dd500125eb81026204c40988131026204c302637540028b203e8acc004c050c080dd5008c4c966002602a60426ea800626464b3001301b30233754003159800cc004888c966002603600313259800800c00e264b300100180240120090048992cc004c0bc00e00d00540b06eb800502f1816000a05430283754009159800980f800c4c9660020030038992cc0040060090048024012264b3001302f003803401502c1bae00140bc60580028150c0a0dd50024009026204c30263754007222329800800c0120068008888c966002603c00313259800800c01a264b3001001803c01e00f0078992cc004c0c800e00b00840bc6eb80050321817800a05a302b37540071598009811000c4c9660020030068992cc00400600f0078992cc004c0c800e26603000244b3001002803c4c96600200319800805400626004606a006805201700b805c02d03618198012062804205e3758003007803a064302f00140b460566ea800e2b3001301f0018992cc00400600d13259800800c01e00f132598009819001c4cc06000489660020050078992cc0040063300100a800c4c008c0d400d00a402e01700b805a06c303300240c500840bc6eb000600f00740c8605e0028168c0acdd5001c566002602200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303500389980d800912cc00400a01513259800800c6600201b00189801181c001a01a807403a01d00e40e4606c00481a20168190dd6000c02a01481a8c0c80050301bad0013031002803a064302f00140b460566ea800e2b300130100018992cc00400600d13259800800c01e00f0078992cc004c0c800e00b00840bc6eb400600e8190c0bc00502d18159baa0038acc004c03c006264b300100180344c966002003007803c01e264b30013032003802c02102f1bad001803a064302f00140b460566ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013032003802c02102f1bae00140c8605e0028168c0acdd5001c015029205240a48149029205240a460526ea800a64b300130183024375400313259800980d18129baa0018992cc004c068c098dd5000c4c8c8cc8966002605e00710058b2058302c001375c60580046058002604e6ea80062c8128c0a4c098dd5000c59024180998129baa3011302537546050604a6ea80062c8118cc010dd6180818121baa01a0219bae30273024375400291112cc006600266e3cdd7181598141baa002024a50a51409914a31332259800800c4c966002603c60546ea800a264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800800c566002606a005159800981218181baa0058992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c4c96600200301c8992cc0040062b300130490028cc00404e330010118cc00403e3300100d8cc00402e330010098cc00401e330010058cc00400e330010018992cc004c0e4c114dd500c44c96600200301f8992cc004006041020810408226644b300100181144c966002003023811c08e0471332259800800c096264b3001001813409a04d026899912cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81640b226644b300100181744c966002003159800982d80144c966002609600313259800800c0c6264b300100181940ca0650328992cc004c17c00e02d03341706eb800505f182e000a0b4305837540051598009827800c56600260b06ea800a0270304165030415882b0c158dd5000c0bd05840be05f02f817a0b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270dd7000982780120a0304d001412c6eb8004c13000904d1825000a0903046375403101e41102b300130383044375402b13259800800c07a264b300100180fc07e26644b3001001810c4c966002003159800982700144cc0d000c8966002005159800981f98259baa0038992cc00400604b13259800800c4c9660020030278992cc0040062b300130540028cc00400e264b300130440018992cc00400605513259800800c56600260ae005132598009823800c4c96600200302d8992cc0040062b3001305a0028cc00400605902e40c902e415d02e81740ba05c82d8c160005056182a1baa0028acc004c12c006264b3001001816c4c96600200302e81740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d2264b30013061003819c0d505e1bad00181a20c2305e00141706eb4004c17400a06282f0c16c0050591bad001305a00281720b63058001415860a86ea800a058829105218291baa001815a0a8815c0ae05702b416060aa0028298c144dd50014566002609000315980098289baa002813c0a505240a504f209e304f375400302840b1028414502881440a205082a8c1480050501829001409a04d02681320a63050001413860986ea800e0488252264b30010018acc004c100c130dd5000c4c9660020030268992cc00400604f027899912cc00400605313259800800c0aa05502a899912cc00400605913259800800c0b605b02d8992cc004c16800e2b300100781744c96600200302f817c0be05f1332259800800c0c6264b300100181940ca0650328992cc004c17c00e2602060be02303341706eb800505f182e000a0b4375c00260b601082e0c16401d05740b90571bad001816a0b4305700141546eb4004c15800a05482b8c1500050521bac0013053002813c09d0541828800a09e304d3754003025412d025812c09604a8290c13c00904d408904b408a045022811209e304c00141286eb0004c12c00a03f01f413060920028238c114dd500ac07504340750204075020407502040750204075020407502040750204075020407502040750204075046407603b01d80ea09430470014114608e00501b80dc06e0368240c1140050431822801406603301980ca08c30430014104608600501780bc05e02e8220c10400503f1820801405602b01580aa084303f00140f4607e005013809c04e0268200c0f400503b181e8014046023011808a07c303b00140e4607600500f807c03e01e81e0c0e4005037181c801403601b00d806a074303700140d4606e00500b805c02e01681c0c0d400503318189baa005804a05e804a064804c02601300940d860660028188c0cc00a00f007803c01d0341818800a05e3031002802c01600b00540c8605e0028168c0acdd5001400d0290cc004cdc79bae3018302a3754602c60546ea800400e942945028400a005002801205e14a2602860506ea80090262264b300130183024375400313259800980c98129baa0018992cc004c068c098dd5000c4c96600266ebcc0acc0a0dd5000980b99815180b99815181598141baa0044bd701981526103d87a80004bd704660026eacc050c0a0dd5000cc050c0a0dd5180a18141baa0069119b89337020026eb4c0b4c0b8c0b8c0b8c0a8dd50100012444b30010028a508994c004c966002604060586ea800626eb4c0b4c0c0dd5981818169baa0018a40008158c0bc0066ebcc0bcc0c00066eac00d22259800800c566002600400d13300500348002294102d44c96600266ebcc0bc0053010140008acc004cc018010dd6981818199bab3030001898019ba630340028a5040b91598009980300224001130030078a5040b88170c0c80050300ca60020030049119818001198181ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0b80066eacc0bc00660660069112cc004cdc8a441000038acc004cdc7a4410000389980298109981a1ba60024bd70000c4cc015300103d87a800000640c119800803c006446600e0046606c66ec0dd48029ba6004001401c81806062004817a29422942294103022941026181518139baa0018b204a3298009800800cdd6981518139baa0029bac30153027375403a9112cc004cdc40012400114c103d87a800089980180080120501112cc00400a298103d87a80008acc004c0700062603066056605800497ae08cc00400e605a005337000029000a006409c81522c8120ca600200337586052604c6ea807290002002222598008014530103d87a80008acc004cdd7981580100344c05ccc0a8dd4000a5eb823300100398160014cdc0000a4004801902620528b2046302730243754604e60486ea80522c81122c8110c098c08cdd5181318119baa300f30233754002604a60446ea80062c8100cc008dd6181218109baa0170128b203e407c80f888cc0100088cdd7981298111baa001002223300400223300d30043756601c60446ea8c038c088dd5000801111919800800801912cc0040062980103d87a80008992cc004c010006260226604800297ae0899801801981300120403024001408860140143012004301230130044590090c028004c014dd5005c52689b2b20061\",\n Type.Tuple([PolicyId, ScriptHash]),\n [proxyPolicyId, protocolScripthash],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolManagementProtocolManagementWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolManagementProtocolManagementPublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolManagementProtocolManagementElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMintProtocolMintWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMintProtocolMintPublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMintProtocolMintElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n yieldOracleValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281\"\n : \"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash, ScriptHash]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n yieldOracleValidator,\n ],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n yieldOracleValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281\"\n : \"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash, ScriptHash]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n yieldOracleValidator,\n ],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n yieldOracleValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281\"\n : \"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash, ScriptHash]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n yieldOracleValidator,\n ],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolStakeProtocolStakeWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolStakeProtocolStakePublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolStakeProtocolStakeElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProxyNftProxyNftMint {\n public Script: Script;\n constructor(utxoRef: OutputReference, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n : \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ]),\n [utxoRef],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProxyNftProxyNftElse {\n public Script: Script;\n constructor(utxoRef: OutputReference, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n : \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ]),\n [utxoRef],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1StakingVaultStakingVaultMint {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1StakingVaultStakingVaultSpend {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1StakingVaultStakingVaultElse {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1TreasuryTreasuryMint {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1TreasuryTreasurySpend {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1TreasuryTreasuryElse {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1YieldOracleYieldOracleMint {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1YieldOracleYieldOracleSpend {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1YieldOracleYieldOracleElse {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\n"],"mappings":"8/FAEA,IAAAA,KAAA,CAAAC,OAAA,wBAEA,IAAAC,KAAA,CAAAD,OAAA,wBAA+D,SAAAE,QAAAC,CAAA,mCAAAD,OAAA,oBAAAE,MAAA,mBAAAA,MAAA,CAAAC,QAAA,UAAAF,CAAA,gBAAAA,CAAA,YAAAA,CAAA,SAAAA,CAAA,qBAAAC,MAAA,EAAAD,CAAA,CAAAG,WAAA,GAAAF,MAAA,EAAAD,CAAA,GAAAC,MAAA,CAAAG,SAAA,iBAAAJ,CAAA,GAAAD,OAAA,CAAAC,CAAA,YAAAK,kBAAAC,CAAA,CAAAC,CAAA,UAAAC,CAAA,GAAAA,CAAA,CAAAD,CAAA,CAAAE,MAAA,CAAAD,CAAA,QAAAR,CAAA,CAAAO,CAAA,CAAAC,CAAA,CAAAR,CAAA,EAAAU,UAAA,CAAAV,CAAA,CAAAU,UAAA,KAAAV,CAAA,CAAAW,YAAA,cAAAX,CAAA,GAAAA,CAAA,CAAAY,QAAA,KAAAC,MAAA,CAAAC,cAAA,CAAAR,CAAA,CAAAS,cAAA,CAAAf,CAAA,CAAAgB,GAAA,EAAAhB,CAAA,aAAAiB,aAAAX,CAAA,CAAAC,CAAA,CAAAC,CAAA,SAAAD,CAAA,EAAAF,iBAAA,CAAAC,CAAA,CAAAF,SAAA,CAAAG,CAAA,EAAAC,CAAA,EAAAH,iBAAA,CAAAC,CAAA,CAAAE,CAAA,EAAAK,MAAA,CAAAC,cAAA,CAAAR,CAAA,cAAAM,QAAA,MAAAN,CAAA,WAAAY,gBAAAC,CAAA,CAAAC,CAAA,OAAAD,CAAA,YAAAC,CAAA,YAAAC,SAAA,gDAAAC,gBAAAhB,CAAA,CAAAC,CAAA,CAAAC,CAAA,SAAAD,CAAA,CAAAQ,cAAA,CAAAR,CAAA,KAAAD,CAAA,CAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,CAAAC,CAAA,EAAAgB,KAAA,CAAAf,CAAA,CAAAE,UAAA,IAAAC,YAAA,IAAAC,QAAA,MAAAN,CAAA,CAAAC,CAAA,EAAAC,CAAA,CAAAF,CAAA,WAAAS,eAAAP,CAAA,MAAAgB,CAAA,CAAAC,YAAA,CAAAjB,CAAA,2BAAAT,OAAA,CAAAyB,CAAA,EAAAA,CAAA,CAAAA,CAAA,cAAAC,aAAAjB,CAAA,CAAAD,CAAA,eAAAR,OAAA,CAAAS,CAAA,IAAAA,CAAA,QAAAA,CAAA,KAAAF,CAAA,CAAAE,CAAA,CAAAP,MAAA,CAAAyB,WAAA,cAAApB,CAAA,MAAAkB,CAAA,CAAAlB,CAAA,CAAAqB,IAAA,CAAAnB,CAAA,CAAAD,CAAA,0BAAAR,OAAA,CAAAyB,CAAA,SAAAA,CAAA,WAAAH,SAAA,oEAAAd,CAAA,CAAAqB,MAAA,CAAAC,MAAA,EAAArB,CAAA,GAJ/D,oBACA;AAOA,GAAM,CAAAsB,QAAQ,CAAGC,UAAI,CAACH,MAAM,CAAC,CAAC,CAC9B,GAAM,CAAAI,UAAU,CAAGD,UAAI,CAACH,MAAM,CAAC,CAAC,CAGhC,GAAM,CAAAK,SAAS,CAAGF,UAAI,CAACG,MAAM,CAAC,CAC5BC,IAAI,CAAEJ,UAAI,CAACK,OAAO,CAAC,CAAC,CACpBC,+BAA+B,CAAEN,UAAI,CAACO,KAAK,CAAC,CAC1CP,UAAI,CAACH,MAAM,CAAC,CAAC,CACbG,UAAI,CAACQ,GAAG,CAAC,WAAW,CAAC,CACtB,CAAC,CACFC,gBAAgB,CAAET,UAAI,CAAClB,MAAM,CAC3B,CACE4B,YAAY,CAAEV,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACxCG,iBAAiB,CAAEX,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CAC7CI,aAAa,CAAEZ,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACzCK,QAAQ,CAAEb,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACpCM,OAAO,CAAEd,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACnCO,OAAO,CAAEf,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CACpC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACDC,mBAAmB,CAAEjB,UAAI,CAAClB,MAAM,CAC9B,CACEoC,MAAM,CAAElB,UAAI,CAACQ,GAAG,CAAC,kBAAkB,CAAC,CACpCW,WAAW,CAAEnB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC1BuB,KAAK,CAAEpB,UAAI,CAACQ,GAAG,CAAC,YAAY,CAAC,CAC7Ba,KAAK,CAAErB,UAAI,CAAClB,MAAM,CAChB,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CAAC,CACDS,gBAAgB,CAAEzB,UAAI,CAAC0B,KAAK,CAAC,CAC3B1B,UAAI,CAAC2B,OAAO,CAAC,aAAa,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CACzChB,UAAI,CAAC2B,OAAO,CAAC,mBAAmB,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CAC/ChB,UAAI,CAAC2B,OAAO,CAAC,cAAc,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CAC1ChB,UAAI,CAAC2B,OAAO,CAAC,UAAU,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CACtChB,UAAI,CAAC2B,OAAO,CAAC,SAAS,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CACrChB,UAAI,CAAC2B,OAAO,CAAC,SAAS,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CACtC,CAAC,CACFY,sBAAsB,CAAE5B,UAAI,CAAClB,MAAM,CACjC,CACEoC,MAAM,CAAElB,UAAI,CAACQ,GAAG,CAAC,kBAAkB,CAAC,CACpCqB,UAAU,CAAE7B,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,iCAAiC,CAAC,CACpE,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACDe,SAAS,CAAE/B,UAAI,CAAClB,MAAM,CACpB,CACEkD,OAAO,CAAEhC,UAAI,CAACQ,GAAG,CAAC,SAAS,CAAC,CAC5ByB,OAAO,CAAEjC,UAAI,CAACkC,QAAQ,CAAClC,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CACrCsC,SAAS,CAAEnC,UAAI,CAACH,MAAM,CAAC,CACzB,CAAC,CACD,CAAEmB,IAAI,CAAE,EAAG,CACb,CAAC,CACDoB,SAAS,CAAEpC,UAAI,CAACH,MAAM,CAAC,CAAC,CACxBwC,OAAO,CAAErC,UAAI,CAAClB,MAAM,CAClB,CACE,YAAWkB,UAAI,CAACQ,GAAG,CAAC,WAAW,CAAC,CAChC8B,WAAW,CAAEtC,UAAI,CAACQ,GAAG,CAAC,WAAW,CACnC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACDuB,cAAc,CAAEvC,UAAI,CAAC0B,KAAK,CAAC,CACzB1B,UAAI,CAAClB,MAAM,CAAC,CACV0D,SAAS,CAAExC,UAAI,CAAClB,MAAM,CACpB,CACE2D,QAAQ,CAAEzC,UAAI,CAACH,MAAM,CAAC,CACxB,CAAC,CACD,CAAEmB,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACV4D,KAAK,CAAE1C,UAAI,CAAClB,MAAM,CAChB,CACE6D,OAAO,CAAE3C,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CAChD,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACV8D,KAAK,CAAE5C,UAAI,CAAClB,MAAM,CAChB,CACE6D,OAAO,CAAE3C,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CAChD,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACV+D,OAAO,CAAE7C,UAAI,CAAClB,MAAM,CAClB,CACEgE,QAAQ,CAAE9C,UAAI,CAACwB,MAAM,CAAC,CAAC,CACvBmB,OAAO,CAAE3C,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CAChD,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACViE,MAAM,CAAE/C,UAAI,CAAClB,MAAM,CACjB,CACEkE,IAAI,CAAEhD,UAAI,CAACwB,MAAM,CAAC,CACpB,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVmE,KAAK,CAAEjD,UAAI,CAAClB,MAAM,CAChB,CACEkE,IAAI,CAAEhD,UAAI,CAACwB,MAAM,CAAC,CACpB,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVoE,MAAM,CAAElD,UAAI,CAAClB,MAAM,CACjB,CACEqE,WAAW,CAAEnD,UAAI,CAACH,MAAM,CAAC,CAC3B,CAAC,CACD,CAAEmB,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACH,CAAC,CACFoC,UAAU,CAAEpD,UAAI,CAAClB,MAAM,CACrB,CACEuE,KAAK,CAAErD,UAAI,CAACH,MAAM,CAAC,CAAC,CACpByD,QAAQ,CAAEC,iBACZ,CAAC,CACD,CAAEvC,IAAI,CAAE,EAAG,CACb,CAAC,CACDwC,WAAW,CAAExD,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC1BiC,uBAAuB,CAAEzD,UAAI,CAAClB,MAAM,CAClC,CACE4E,OAAO,CAAE1D,UAAI,CAACQ,GAAG,CAAC,iCAAiC,CAAC,CACpDmD,WAAW,CAAE3D,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC1BoC,aAAa,CAAE5D,UAAI,CAACwB,MAAM,CAAC,CAC7B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACD6C,yBAAyB,CAAE7D,UAAI,CAAClB,MAAM,CACpC,CACEgF,KAAK,CAAE9D,UAAI,CAACQ,GAAG,CAAC,wBAAwB,CAAC,CACzCuD,MAAM,CAAE/D,UAAI,CAACQ,GAAG,CAAC,OAAO,CAAC,CACzBwD,KAAK,CAAEhE,UAAI,CAACQ,GAAG,CAAC,OAAO,CAAC,CACxByD,SAAS,CAAEjE,UAAI,CAACQ,GAAG,CAAC,MAAM,CAAC,CAC3B0D,IAAI,CAAElE,UAAI,CAACwB,MAAM,CAAC,CAAC,CACnB2C,KAAK,CAAEnE,UAAI,CAACwB,MAAM,CAAC,CACrB,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDoD,SAAS,CAAEpE,UAAI,CAACwB,MAAM,CAAC,CAAC,CACxB6C,8BAA8B,CAAErE,UAAI,CAAC0B,KAAK,CAAC,CACzC1B,UAAI,CAAClB,MAAM,CAAC,CACVwF,aAAa,CAAEtE,UAAI,CAACO,KAAK,CACvB,CAACP,UAAI,CAACQ,GAAG,CAAC,6CAA6C,CAAC,CAAC,CACzD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVyF,kBAAkB,CAAEvE,UAAI,CAACO,KAAK,CAC5B,CAACP,UAAI,CAACQ,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAC7C,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACH,CAAC,CACFwD,KAAK,CAAExE,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACQ,GAAG,CAAC,WAAW,CAAC,CAAER,UAAI,CAACQ,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CACnEiE,+BAA+B,CAAEzE,UAAI,CAAClB,MAAM,CAC1C,CACEmD,OAAO,CAAEjC,UAAI,CAACQ,GAAG,CACf,kEACF,CAAC,CACDqB,UAAU,CAAE7B,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,iCAAiC,CAAC,CACpE,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACD0D,IAAI,CAAE1E,UAAI,CAACwB,MAAM,CAAC,CAAC,CACnBmD,sBAAsB,CAAE3E,UAAI,CAAClB,MAAM,CACjC,CACE8F,wBAAwB,CAAE5E,UAAI,CAACwB,MAAM,CAAC,CAAC,CACvCmC,WAAW,CAAE3D,UAAI,CAACwB,MAAM,CAAC,CAC3B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACD6D,KAAK,CAAE7E,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACH,MAAM,CAAC,CAAC,CAAEG,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CAAC,CACjDiF,WAAW,CAAE9E,UAAI,CAAClB,MAAM,CACtB,CACEiG,OAAO,CAAE/E,UAAI,CAAClB,MAAM,CAClB,CACEkG,kBAAkB,CAAEhF,UAAI,CAAC0B,KAAK,CAAC,CAC7B1B,UAAI,CAAClB,MAAM,CAAC,CACVmG,eAAe,CAAEjF,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CAAE,CAAEmB,IAAI,CAAE,EAAG,CAAC,CAC3D,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVoE,MAAM,CAAElD,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CAAE,CAAEmB,IAAI,CAAE,EAAG,CAAC,CAClD,CAAC,CAAC,CACH,CAAC,CACFkE,gBAAgB,CAAElF,UAAI,CAACkC,QAAQ,CAC7BlC,UAAI,CAAC0B,KAAK,CAAC,CACT1B,UAAI,CAAClB,MAAM,CAAC,CACVqG,MAAM,CAAEnF,UAAI,CAACO,KAAK,CAChB,CACEP,UAAI,CAAC0B,KAAK,CAAC,CACT1B,UAAI,CAAClB,MAAM,CAAC,CACVmG,eAAe,CAAEjF,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CAAE,CAC3CmB,IAAI,CAAE,EACR,CAAC,CACH,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVoE,MAAM,CAAElD,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CAAE,CAAEmB,IAAI,CAAE,EAAG,CAAC,CAClD,CAAC,CAAC,CACH,CAAC,CACH,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVsG,OAAO,CAAEpF,UAAI,CAAClB,MAAM,CAClB,CACEuG,WAAW,CAAErF,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC1B8D,iBAAiB,CAAEtF,UAAI,CAACwB,MAAM,CAAC,CAAC,CAChC+D,iBAAiB,CAAEvF,UAAI,CAACwB,MAAM,CAAC,CACjC,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACH,CACH,CACF,CAAC,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CAAC,CACDI,KAAK,CAAEpB,UAAI,CAAC0B,KAAK,CAAC,CAChB1B,UAAI,CAAC2B,OAAO,CAAC,SAAS,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CACrChB,UAAI,CAAClB,MAAM,CAAC,CACV0G,SAAS,CAAExF,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CAAE,CAAEmB,IAAI,CAAE,EAAG,CAAC,CACrD,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACV2G,WAAW,CAAEzF,UAAI,CAACO,KAAK,CAAC,CAACgD,iBAAW,CAAC,CAAE,CAAEvC,IAAI,CAAE,EAAG,CAAC,CACrD,CAAC,CAAC,CACH,CACH,CAAC,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CAAC,CACD0E,eAAe,CAAE1F,UAAI,CAAClB,MAAM,CAC1B,CACEqC,WAAW,CAAEnB,UAAI,CAACQ,GAAG,CAAC,aAAa,CAAC,CACpCmF,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CAAC,CACrBoE,MAAM,CAAE5F,UAAI,CAAClB,MAAM,CACjB,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CAAC,CACD6E,iBAAiB,CAAE7F,UAAI,CAAClB,MAAM,CAC5B,CACEqC,WAAW,CAAEnB,UAAI,CAACQ,GAAG,CAAC,aAAa,CAAC,CACpCmF,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CAAC,CACrBsE,YAAY,CAAE9F,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC3BoE,MAAM,CAAE5F,UAAI,CAAClB,MAAM,CACjB,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACD+E,aAAa,CAAE/F,UAAI,CAACQ,GAAG,CAAC,OAAO,CACjC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACDgF,uBAAuB,CAAEhG,UAAI,CAAClB,MAAM,CAClC,CACEmH,kBAAkB,CAAEjG,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACwB,MAAM,CAAC,CAAC,CAAC,CAC7C0E,iBAAiB,CAAElG,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACwB,MAAM,CAAC,CAAC,CAAC,CAC5C2E,kBAAkB,CAAEnG,UAAI,CAACwB,MAAM,CAAC,CAAC,CACjC4E,mBAAmB,CAAEpG,UAAI,CAACwB,MAAM,CAAC,CAAC,CAClC6E,eAAe,CAAErG,UAAI,CAACkC,QAAQ,CAAClC,UAAI,CAACwB,MAAM,CAAC,CAAC,CAAC,CAC7C8E,gBAAgB,CAAEtG,UAAI,CAACkC,QAAQ,CAAClC,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC/C,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDuF,KAAK,CAAEvG,UAAI,CAAC0B,KAAK,CAAC,CAChB1B,UAAI,CAAClB,MAAM,CAAC,CACV0H,IAAI,CAAExG,UAAI,CAACO,KAAK,CACd,CACEP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACF,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACV2H,QAAQ,CAAEzG,UAAI,CAACO,KAAK,CAClB,CACEP,UAAI,CAAClB,MAAM,CACT,CACE4H,WAAW,CAAE1G,UAAI,CAAClB,MAAM,CACtB,CACE6H,UAAU,CAAE3G,UAAI,CAAC0B,KAAK,CAAC,CACrB1B,UAAI,CAAC2B,OAAO,CAAC,kBAAkB,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CAC9ChB,UAAI,CAAClB,MAAM,CAAC,CACV8H,MAAM,CAAE5G,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACwB,MAAM,CAAC,CAAC,CAAC,CAAE,CAAER,IAAI,CAAE,EAAG,CAAC,CAClD,CAAC,CAAC,CACFhB,UAAI,CAAC2B,OAAO,CAAC,kBAAkB,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CAC/C,CAAC,CACF6F,YAAY,CAAE7G,UAAI,CAACQ,GAAG,CAAC,MAAM,CAC/B,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACD8F,WAAW,CAAE9G,UAAI,CAAClB,MAAM,CACtB,CACE6H,UAAU,CAAE3G,UAAI,CAAC0B,KAAK,CAAC,CACrB1B,UAAI,CAAC2B,OAAO,CAAC,kBAAkB,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CAC9ChB,UAAI,CAAClB,MAAM,CAAC,CACV8H,MAAM,CAAE5G,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACwB,MAAM,CAAC,CAAC,CAAC,CAAE,CAAER,IAAI,CAAE,EAAG,CAAC,CAClD,CAAC,CAAC,CACFhB,UAAI,CAAC2B,OAAO,CAAC,kBAAkB,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CAC/C,CAAC,CACF6F,YAAY,CAAE7G,UAAI,CAACQ,GAAG,CAAC,MAAM,CAC/B,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CAAC,CACF,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACH,CAAC,CACF+F,aAAa,CAAE/G,UAAI,CAAC0B,KAAK,CAAC,CACxB1B,UAAI,CAAClB,MAAM,CAAC,CACVkI,KAAK,CAAEhH,UAAI,CAAClB,MAAM,CAChB,CACE6G,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CAAC,CACrBsE,YAAY,CAAE9F,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC3BuE,aAAa,CAAE/F,UAAI,CAACQ,GAAG,CAAC,OAAO,CACjC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVmI,OAAO,CAAEjH,UAAI,CAAClB,MAAM,CAClB,CACE6G,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CAAC,CACrBsE,YAAY,CAAE9F,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC3BuE,aAAa,CAAE/F,UAAI,CAACQ,GAAG,CAAC,OAAO,CACjC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVoI,QAAQ,CAAElH,UAAI,CAAClB,MAAM,CACnB,CACEqI,SAAS,CAAEnH,UAAI,CAACwB,MAAM,CAAC,CAAC,CACxB,QAAOxB,UAAI,CAACwB,MAAM,CAAC,CAAC,CACpB4F,aAAa,CAAEpH,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC5BuE,aAAa,CAAE/F,UAAI,CAACQ,GAAG,CAAC,OAAO,CACjC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVuI,SAAS,CAAErH,UAAI,CAAClB,MAAM,CACpB,CACE6G,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CAAC,CACrBuE,aAAa,CAAE/F,UAAI,CAACQ,GAAG,CAAC,OAAO,CACjC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVwI,MAAM,CAAEtH,UAAI,CAAClB,MAAM,CACjB,CACE6G,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CAAC,CACrBsE,YAAY,CAAE9F,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVyI,QAAQ,CAAEvH,UAAI,CAAClB,MAAM,CACnB,CACE6G,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CAAC,CACrBsE,YAAY,CAAE9F,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC3BgG,OAAO,CAAExH,UAAI,CAACwB,MAAM,CAAC,CACvB,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACV2I,WAAW,CAAEzH,UAAI,CAAClB,MAAM,CACtB,CACE6G,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CACtB,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACV4I,WAAW,CAAE1H,UAAI,CAAClB,MAAM,CACtB,CACE6G,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CACtB,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACH,CAAC,CACF2G,YAAY,CAAE3H,UAAI,CAAClB,MAAM,CACvB,CACE8I,KAAK,CAAE5H,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACjCW,WAAW,CAAEnB,UAAI,CAACQ,GAAG,CAAC,aAAa,CAAC,CACpCqH,MAAM,CAAE7H,UAAI,CAACQ,GAAG,CAAC,eAAe,CAAC,CACjCsH,IAAI,CAAEvE,iBACR,CAAC,CACD,CAAEvC,IAAI,CAAE,EAAG,CACb,CAAC,CACD+G,eAAe,CAAE/H,UAAI,CAAC0B,KAAK,CAAC,CAC1B1B,UAAI,CAAC2B,OAAO,CAAC,SAAS,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CACrChB,UAAI,CAAC2B,OAAO,CAAC,QAAQ,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CACpChB,UAAI,CAAC2B,OAAO,CAAC,aAAa,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CAC1C,CAAC,CACFgH,WAAW,CAAEhI,UAAI,CAAClB,MAAM,CACtB,CACEmJ,IAAI,CAAEjI,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CAChC0H,IAAI,CAAElI,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CAChC2H,QAAQ,CAAEnI,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACpC4H,OAAO,CAAEpI,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACnC6H,KAAK,CAAErI,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACjC8H,OAAO,CAAEtI,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACnC+H,WAAW,CAAEvI,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACvCgI,WAAW,CAAExI,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACvCiI,YAAY,CAAEzI,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACxCO,OAAO,CAAEf,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CACpC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACD0H,cAAc,CAAE1I,UAAI,CAAClB,MAAM,CACzB,CACE6J,cAAc,CAAE3I,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,cAAc,CAAC,CAAC,CACpDoI,kBAAkB,CAAE5I,UAAI,CAAClB,MAAM,CAC7B,CACEkG,kBAAkB,CAAEhF,UAAI,CAAC0B,KAAK,CAAC,CAC7B1B,UAAI,CAAClB,MAAM,CAAC,CACVmG,eAAe,CAAEjF,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CAAE,CAAEmB,IAAI,CAAE,EAAG,CAAC,CAC3D,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVoE,MAAM,CAAElD,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CAAE,CAAEmB,IAAI,CAAE,EAAG,CAAC,CAClD,CAAC,CAAC,CACH,CAAC,CACFkE,gBAAgB,CAAElF,UAAI,CAACkC,QAAQ,CAC7BlC,UAAI,CAAC0B,KAAK,CAAC,CACT1B,UAAI,CAAClB,MAAM,CAAC,CACVqG,MAAM,CAAEnF,UAAI,CAACO,KAAK,CAChB,CACEP,UAAI,CAAC0B,KAAK,CAAC,CACT1B,UAAI,CAAClB,MAAM,CAAC,CACVmG,eAAe,CAAEjF,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CAAE,CAC3CmB,IAAI,CAAE,EACR,CAAC,CACH,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVoE,MAAM,CAAElD,UAAI,CAACO,KAAK,CAAC,CAACP,UAAI,CAACH,MAAM,CAAC,CAAC,CAAC,CAAE,CAAEmB,IAAI,CAAE,EAAG,CAAC,CAClD,CAAC,CAAC,CACH,CAAC,CACH,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVsG,OAAO,CAAEpF,UAAI,CAAClB,MAAM,CAClB,CACEuG,WAAW,CAAErF,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC1B8D,iBAAiB,CAAEtF,UAAI,CAACwB,MAAM,CAAC,CAAC,CAChC+D,iBAAiB,CAAEvF,UAAI,CAACwB,MAAM,CAAC,CACjC,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACH,CACH,CACF,CAAC,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CACD,CAAEA,IAAI,CAAE,EAAG,CACb,CAAC,CACD6H,kBAAkB,CAAE7I,UAAI,CAAC0B,KAAK,CAAC,CAC7B1B,UAAI,CAAClB,MAAM,CAAC,CACVgK,IAAI,CAAE9I,UAAI,CAAClB,MAAM,CACf,CACEiK,QAAQ,CAAE/I,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,mBAAmB,CAAC,CACpD,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVkK,IAAI,CAAEhJ,UAAI,CAAClB,MAAM,CACf,CACEiK,QAAQ,CAAE/I,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,mBAAmB,CAAC,CACpD,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVmK,QAAQ,CAAEjJ,UAAI,CAAClB,MAAM,CACnB,CACEiK,QAAQ,CAAE/I,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,mBAAmB,CAAC,CACpD,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVoK,OAAO,CAAElJ,UAAI,CAAClB,MAAM,CAClB,CACEiK,QAAQ,CAAE/I,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,mBAAmB,CAAC,CAAC,CACnD2I,KAAK,CAAEnJ,UAAI,CAACQ,GAAG,CAAC,iBAAiB,CACnC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVsK,KAAK,CAAEpJ,UAAI,CAAClB,MAAM,CAChB,CACEiK,QAAQ,CAAE/I,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACjD,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVuK,OAAO,CAAErJ,UAAI,CAAClB,MAAM,CAClB,CACEiK,QAAQ,CAAE/I,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CAAC,CACjD,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVwK,UAAU,CAAEtJ,UAAI,CAAClB,MAAM,CACrB,CACEiK,QAAQ,CAAE/I,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,iBAAiB,CAAC,CAClD,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAClB,MAAM,CAAC,CACVyK,UAAU,CAAEvJ,UAAI,CAAClB,MAAM,CACrB,CACEiK,QAAQ,CAAE/I,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,iBAAiB,CAAC,CAClD,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CACFhB,UAAI,CAAC2B,OAAO,CAAC,cAAc,CAAE,CAAEX,IAAI,CAAE,EAAG,CAAC,CAAC,CAC3C,CAAC,CACFwI,YAAY,CAAExJ,UAAI,CAAClB,MAAM,CACvB,CACEuE,KAAK,CAAErD,UAAI,CAACH,MAAM,CAAC,CAAC,CACpByD,QAAQ,CAAEtD,UAAI,CAACQ,GAAG,CAAC,YAAY,CACjC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACDyI,UAAU,CAAEzJ,UAAI,CAAClB,MAAM,CACrB,CACE4K,QAAQ,CAAE1J,UAAI,CAACH,MAAM,CAAC,CAAC,CACvB8J,IAAI,CAAE3J,UAAI,CAACH,MAAM,CAAC,CAAC,CACnB+J,KAAK,CAAE5J,UAAI,CAACH,MAAM,CAAC,CAAC,CACpBgK,aAAa,CAAE7J,UAAI,CAACH,MAAM,CAAC,CAAC,CAC5B4I,YAAY,CAAEzI,UAAI,CAACH,MAAM,CAAC,CAAC,CAC3BiK,SAAS,CAAE9J,UAAI,CAACkC,QAAQ,CAAClC,UAAI,CAACH,MAAM,CAAC,CAAC,CACxC,CAAC,CACD,CAAEmB,IAAI,CAAE,EAAG,CACb,CAAC,CACD+I,YAAY,CAAE/J,UAAI,CAAClB,MAAM,CACvB,CACEkL,KAAK,CAAEhK,UAAI,CAACQ,GAAG,CAAC,OAAO,CAAC,CACxByJ,SAAS,CAAEjK,UAAI,CAACwB,MAAM,CAAC,CAAC,CACxB0I,WAAW,CAAElK,UAAI,CAACwB,MAAM,CAAC,CAC3B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDmJ,UAAU,CAAEnK,UAAI,CAAClB,MAAM,CACrB,CACEsL,WAAW,CAAEpK,UAAI,CAACQ,GAAG,CAAC,aAAa,CAAC,CACpC6J,QAAQ,CAAErK,UAAI,CAACQ,GAAG,CAAC,YAAY,CAAC,CAChC8J,MAAM,CAAEtK,UAAI,CAACQ,GAAG,CAAC,gBAAgB,CACnC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACDuJ,gEAAgE,CAAEvK,UAAI,CAAClB,MAAM,CAC3E,CACE+I,MAAM,CAAE7H,UAAI,CAACQ,GAAG,CAAC,2BAA2B,CAAC,CAC7Ca,KAAK,CAAErB,UAAI,CAACQ,GAAG,CAAC,OAAO,CACzB,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACDwJ,qCAAqC,CAAExK,UAAI,CAAClB,MAAM,CAChD,CACE+I,MAAM,CAAE7H,UAAI,CAACQ,GAAG,CAAC,oBAAoB,CAAC,CACtCa,KAAK,CAAErB,UAAI,CAACQ,GAAG,CAAC,OAAO,CACzB,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACDyJ,2CAA2C,CAAEzK,UAAI,CAAClB,MAAM,CACtD,CACE4L,KAAK,CAAE1K,UAAI,CAACQ,GAAG,CAAC,yBAAyB,CAAC,CAC1CyB,OAAO,CAAEjC,UAAI,CAACQ,GAAG,CAAC,uCAAuC,CAAC,CAC1DqB,UAAU,CAAE7B,UAAI,CAAC8B,KAAK,CAAC9B,UAAI,CAACQ,GAAG,CAAC,iCAAiC,CAAC,CACpE,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACD2J,cAAc,CAAE3K,UAAI,CAAClB,MAAM,CACzB,CACEqC,WAAW,CAAEnB,UAAI,CAACQ,GAAG,CAAC,aAAa,CAAC,CACpCmF,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CAAC,CACrBsE,YAAY,CAAE9F,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC3BoE,MAAM,CAAE5F,UAAI,CAAClB,MAAM,CACjB,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDwG,OAAO,CAAExH,UAAI,CAACwB,MAAM,CAAC,CACvB,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACD4J,sBAAsB,CAAE5K,UAAI,CAAC6K,SAAS,CAAC,CAAC,CACxCC,eAAe,CAAE9K,UAAI,CAAClB,MAAM,CAC1B,CACEiM,kBAAkB,CAAE/K,UAAI,CAACwB,MAAM,CAAC,CAClC,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDgK,iBAAiB,CAAEhL,UAAI,CAAClB,MAAM,CAC5B,CACEqC,WAAW,CAAEnB,UAAI,CAACQ,GAAG,CAAC,aAAa,CAAC,CACpCmF,MAAM,CAAE3F,UAAI,CAACwB,MAAM,CAAC,CAAC,CACrB,QAAOxB,UAAI,CAACwB,MAAM,CAAC,CAAC,CACpB4F,aAAa,CAAEpH,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC5BoE,MAAM,CAAE5F,UAAI,CAAClB,MAAM,CACjB,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACD+E,aAAa,CAAE/F,UAAI,CAACQ,GAAG,CAAC,OAAO,CACjC,CAAC,CACD,CAAEQ,IAAI,CAAE,EAAG,CACb,CAAC,CACDiK,YAAY,CAAEjL,UAAI,CAAClB,MAAM,CACvB,CACEoM,iBAAiB,CAAElL,UAAI,CAACwB,MAAM,CAAC,CAAC,CAChC2J,aAAa,CAAEnL,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC5B4J,eAAe,CAAEpL,UAAI,CAACwB,MAAM,CAAC,CAAC,CAC9B4F,aAAa,CAAEpH,UAAI,CAACwB,MAAM,CAAC,CAC7B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDqK,eAAe,CAAErL,UAAI,CAAClB,MAAM,CAC1B,CACEmL,SAAS,CAAEjK,UAAI,CAACwB,MAAM,CAAC,CAAC,CACxB0I,WAAW,CAAElK,UAAI,CAACwB,MAAM,CAAC,CAC3B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CACF,CAAC,CAAC,CAEK,GAAM,CAAAZ,IAAI,CAAAkL,OAAA,CAAAlL,IAAA,CAAGF,SAAS,CAACqL,MAAM,CAAC,MAAM,CAAC,CAErC,GAAM,CAAAjL,+BAA+B,CAAAgL,OAAA,CAAAhL,+BAAA,CAAGJ,SAAS,CAACqL,MAAM,CAC7D,iCACF,CAAC,CAIM,GAAM,CAAA9K,gBAAgB,CAAA6K,OAAA,CAAA7K,gBAAA,CAAGP,SAAS,CAACqL,MAAM,CAAC,kBAAkB,CAAC,CAE7D,GAAM,CAAAtK,mBAAmB,CAAAqK,OAAA,CAAArK,mBAAA,CAAGf,SAAS,CAACqL,MAAM,CAAC,qBAAqB,CAAC,CAEnE,GAAM,CAAA9J,gBAAgB,CAAA6J,OAAA,CAAA7J,gBAAA,CAAGvB,SAAS,CAACqL,MAAM,CAAC,kBAAkB,CAAC,CAE7D,GAAM,CAAA3J,sBAAsB,CAAA0J,OAAA,CAAA1J,sBAAA,CAAG1B,SAAS,CAACqL,MAAM,CACpD,wBACF,CAAC,CAEM,GAAM,CAAAxJ,SAAS,CAAAuJ,OAAA,CAAAvJ,SAAA,CAAG7B,SAAS,CAACqL,MAAM,CAAC,WAAW,CAAC,CAE/C,GAAM,CAAAnJ,SAAS,CAAAkJ,OAAA,CAAAlJ,SAAA,CAAGlC,SAAS,CAACqL,MAAM,CAAC,WAAW,CAAC,CAE/C,GAAM,CAAAlJ,OAAO,CAAAiJ,OAAA,CAAAjJ,OAAA,CAAGnC,SAAS,CAACqL,MAAM,CAAC,SAAS,CAAC,CAE3C,GAAM,CAAAhJ,cAAc,CAAA+I,OAAA,CAAA/I,cAAA,CAAGrC,SAAS,CAACqL,MAAM,CAAC,gBAAgB,CAAC,CAEzD,GAAM,CAAAnI,UAAU,CAAAkI,OAAA,CAAAlI,UAAA,CAAGlD,SAAS,CAACqL,MAAM,CAAC,YAAY,CAAC,CAEjD,GAAM,CAAA/H,WAAW,CAAA8H,OAAA,CAAA9H,WAAA,CAAGtD,SAAS,CAACqL,MAAM,CAAC,aAAa,CAAC,CAEnD,GAAM,CAAA9H,uBAAuB,CAAA6H,OAAA,CAAA7H,uBAAA,CAAGvD,SAAS,CAACqL,MAAM,CACrD,yBACF,CAAC,CAEM,GAAM,CAAA1H,yBAAyB,CAAAyH,OAAA,CAAAzH,yBAAA,CAAG3D,SAAS,CAACqL,MAAM,CACvD,2BACF,CAAC,CAEM,GAAM,CAAAnH,SAAS,CAAAkH,OAAA,CAAAlH,SAAA,CAAGlE,SAAS,CAACqL,MAAM,CAAC,WAAW,CAAC,CAE/C,GAAM,CAAAlH,8BAA8B,CAAAiH,OAAA,CAAAjH,8BAAA,CAAGnE,SAAS,CAACqL,MAAM,CAC5D,gCACF,CAAC,CAIM,GAAM,CAAA/G,KAAK,CAAA8G,OAAA,CAAA9G,KAAA,CAAGtE,SAAS,CAACqL,MAAM,CAAC,OAAO,CAAC,CAEvC,GAAM,CAAA9G,+BAA+B,CAAA6G,OAAA,CAAA7G,+BAAA,CAAGvE,SAAS,CAACqL,MAAM,CAC7D,iCACF,CAAC,CAIM,GAAM,CAAA7G,IAAI,CAAA4G,OAAA,CAAA5G,IAAA,CAAGxE,SAAS,CAACqL,MAAM,CAAC,MAAM,CAAC,CAErC,GAAM,CAAA5G,sBAAsB,CAAA2G,OAAA,CAAA3G,sBAAA,CAAGzE,SAAS,CAACqL,MAAM,CACpD,wBACF,CAAC,CAEM,GAAM,CAAA1G,KAAK,CAAAyG,OAAA,CAAAzG,KAAA,CAAG3E,SAAS,CAACqL,MAAM,CAAC,OAAO,CAAC,CAEvC,GAAM,CAAAzG,WAAW,CAAAwG,OAAA,CAAAxG,WAAA,CAAG5E,SAAS,CAACqL,MAAM,CAAC,aAAa,CAAC,CAEnD,GAAM,CAAA7F,eAAe,CAAA4F,OAAA,CAAA5F,eAAA,CAAGxF,SAAS,CAACqL,MAAM,CAAC,iBAAiB,CAAC,CAE3D,GAAM,CAAA1F,iBAAiB,CAAAyF,OAAA,CAAAzF,iBAAA,CAAG3F,SAAS,CAACqL,MAAM,CAAC,mBAAmB,CAAC,CAE/D,GAAM,CAAAvF,uBAAuB,CAAAsF,OAAA,CAAAtF,uBAAA,CAAG9F,SAAS,CAACqL,MAAM,CACrD,yBACF,CAAC,CAEM,GAAM,CAAAhF,KAAK,CAAA+E,OAAA,CAAA/E,KAAA,CAAGrG,SAAS,CAACqL,MAAM,CAAC,OAAO,CAAC,CAEvC,GAAM,CAAAxE,aAAa,CAAAuE,OAAA,CAAAvE,aAAA,CAAG7G,SAAS,CAACqL,MAAM,CAAC,eAAe,CAAC,CAEvD,GAAM,CAAA5D,YAAY,CAAA2D,OAAA,CAAA3D,YAAA,CAAGzH,SAAS,CAACqL,MAAM,CAAC,cAAc,CAAC,CAErD,GAAM,CAAAxD,eAAe,CAAAuD,OAAA,CAAAvD,eAAA,CAAG7H,SAAS,CAACqL,MAAM,CAAC,iBAAiB,CAAC,CAE3D,GAAM,CAAAvD,WAAW,CAAAsD,OAAA,CAAAtD,WAAA,CAAG9H,SAAS,CAACqL,MAAM,CAAC,aAAa,CAAC,CAEnD,GAAM,CAAA7C,cAAc,CAAA4C,OAAA,CAAA5C,cAAA,CAAGxI,SAAS,CAACqL,MAAM,CAAC,gBAAgB,CAAC,CAEzD,GAAM,CAAA1C,kBAAkB,CAAAyC,OAAA,CAAAzC,kBAAA,CAAG3I,SAAS,CAACqL,MAAM,CAAC,oBAAoB,CAAC,CAEjE,GAAM,CAAA/B,YAAY,CAAA8B,OAAA,CAAA9B,YAAA,CAAGtJ,SAAS,CAACqL,MAAM,CAAC,cAAc,CAAC,CAErD,GAAM,CAAA9B,UAAU,CAAA6B,OAAA,CAAA7B,UAAA,CAAGvJ,SAAS,CAACqL,MAAM,CAAC,YAAY,CAAC,CAEjD,GAAM,CAAAxB,YAAY,CAAAuB,OAAA,CAAAvB,YAAA,CAAG7J,SAAS,CAACqL,MAAM,CAAC,cAAc,CAAC,CAErD,GAAM,CAAApB,UAAU,CAAAmB,OAAA,CAAAnB,UAAA,CAAGjK,SAAS,CAACqL,MAAM,CAAC,YAAY,CAAC,CAEjD,GAAM,CAAAhB,gEAAgE,CAAAe,OAAA,CAAAf,gEAAA,CAC3ErK,SAAS,CAACqL,MAAM,CACd,kEACF,CAAC,CAKI,GAAM,CAAAf,qCAAqC,CAAAc,OAAA,CAAAd,qCAAA,CAAGtK,SAAS,CAACqL,MAAM,CACnE,uCACF,CAAC,CAIM,GAAM,CAAAd,2CAA2C,CAAAa,OAAA,CAAAb,2CAAA,CAAGvK,SAAS,CAACqL,MAAM,CACzE,6CACF,CAAC,CAIM,GAAM,CAAAZ,cAAc,CAAAW,OAAA,CAAAX,cAAA,CAAGzK,SAAS,CAACqL,MAAM,CAAC,gBAAgB,CAAC,CAEzD,GAAM,CAAAX,sBAAsB,CAAAU,OAAA,CAAAV,sBAAA,CAAG1K,SAAS,CAACqL,MAAM,CACpD,wBACF,CAAC,CAEM,GAAM,CAAAT,eAAe,CAAAQ,OAAA,CAAAR,eAAA,CAAG5K,SAAS,CAACqL,MAAM,CAAC,iBAAiB,CAAC,CAE3D,GAAM,CAAAP,iBAAiB,CAAAM,OAAA,CAAAN,iBAAA,CAAG9K,SAAS,CAACqL,MAAM,CAAC,mBAAmB,CAAC,CAE/D,GAAM,CAAAN,YAAY,CAAAK,OAAA,CAAAL,YAAA,CAAG/K,SAAS,CAACqL,MAAM,CAAC,cAAc,CAAC,CAErD,GAAM,CAAAF,eAAe,CAAAC,OAAA,CAAAD,eAAA,CAAGnL,SAAS,CAACqL,MAAM,CAAC,iBAAiB,CAAC,CAAC,GAGtD,CAAAC,6CAA6C,CAAAF,OAAA,CAAAE,6CAAA,cAAAtM,YAAA,CAExD,SAAAsM,8CACEC,aAAuB,CACvBC,GAAqB,CAErB,IADA,CAAAC,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAqM,6CAAA,CAAAjM,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,w9bAAw9b,CACx9b,w5NAAw5N,CAC55N3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEU,gBAAgB,CAAC,CAAC,CACxC,CAACgL,aAAa,CAAEC,GAAG,CACrB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAM,gDAAgD,CAAAV,OAAA,CAAAU,gDAAA,cAAA9M,YAAA,CAE3D,SAAA8M,iDACEP,aAAuB,CACvBC,GAAqB,CAErB,IADA,CAAAC,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA6M,gDAAA,CAAAzM,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,w9bAAw9b,CACx9b,w5NAAw5N,CAC55N3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEU,gBAAgB,CAAC,CAAC,CACxC,CAACgL,aAAa,CAAEC,GAAG,CACrB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAO,+CAA+C,CAAAX,OAAA,CAAAW,+CAAA,cAAA/M,YAAA,CAE1D,SAAA+M,gDACER,aAAuB,CACvBC,GAAqB,CAErB,IADA,CAAAC,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA8M,+CAAA,CAAA1M,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,w9bAAw9b,CACx9b,w5NAAw5N,CAC55N3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEU,gBAAgB,CAAC,CAAC,CACxC,CAACgL,aAAa,CAAEC,GAAG,CACrB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAQ,4CAA4C,CAAAZ,OAAA,CAAAY,4CAAA,cAAAhN,YAAA,CAEvD,SAAAgN,6CACET,aAAuB,CACvBC,GAAqB,CAErB,IADA,CAAAC,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA+M,4CAAA,CAAA3M,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,w9bAAw9b,CACx9b,w5NAAw5N,CAC55N3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEU,gBAAgB,CAAC,CAAC,CACxC,CAACgL,aAAa,CAAEC,GAAG,CACrB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAS,mDAAmD,CAAAb,OAAA,CAAAa,mDAAA,cAAAjN,YAAA,CAE9D,SAAAiN,oDACEV,aAAuB,CACvBW,iBAA2B,CAE3B,IADA,CAAAT,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAgN,mDAAA,CAAA5M,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,w9nBAAw9nB,CACx9nB,k2UAAk2U,CACt2U3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEA,QAAQ,CAAC,CAAC,CAChC,CAAC0L,aAAa,CAAEW,iBAAiB,CACnC,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAC,+CAA+C,CAAAf,OAAA,CAAAe,+CAAA,cAAAnN,YAAA,CAE1D,SAAAmN,gDACEZ,aAAuB,CACvBW,iBAA2B,CAE3B,IADA,CAAAT,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAkN,+CAAA,CAAA9M,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,w9nBAAw9nB,CACx9nB,k2UAAk2U,CACt2U3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEA,QAAQ,CAAC,CAAC,CAChC,CAAC0L,aAAa,CAAEW,iBAAiB,CACnC,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAE,sBAAsB,CAAAhB,OAAA,CAAAgB,sBAAA,cAAApN,YAAA,CAEjC,SAAAoN,uBACEb,aAAuB,CACvBc,kBAA8B,CAE9B,IADA,CAAAZ,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAmN,sBAAA,CAAA/M,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,shZAAshZ,CACthZ,46VAA46V,CACh7V3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEE,UAAU,CAAC,CAAC,CAClC,CAACwL,aAAa,CAAEc,kBAAkB,CACpC,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAC,qBAAqB,CAAAlB,OAAA,CAAAkB,qBAAA,cAAAtN,YAAA,CAEhC,SAAAsN,sBACEf,aAAuB,CACvBc,kBAA8B,CAE9B,IADA,CAAAZ,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAqN,qBAAA,CAAAjN,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,shZAAshZ,CACthZ,46VAA46V,CACh7V3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEE,UAAU,CAAC,CAAC,CAClC,CAACwL,aAAa,CAAEc,kBAAkB,CACpC,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAE,mDAAmD,CAAAnB,OAAA,CAAAmB,mDAAA,cAAAvN,YAAA,CAE9D,SAAAuN,oDAAYhB,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAsN,mDAAA,CAAAlN,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,k4uCAAk4uC,CACl4uC,ozoBAAozoB,CACxzoB3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAiB,kDAAkD,CAAApB,OAAA,CAAAoB,kDAAA,cAAAxN,YAAA,CAE7D,SAAAwN,mDAAYjB,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAuN,kDAAA,CAAAnN,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,k4uCAAk4uC,CACl4uC,ozoBAAozoB,CACxzoB3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAkB,+CAA+C,CAAArB,OAAA,CAAAqB,+CAAA,cAAAzN,YAAA,CAE1D,SAAAyN,gDAAYlB,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAwN,+CAAA,CAAApN,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,k4uCAAk4uC,CACl4uC,ozoBAAozoB,CACxzoB3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAmB,qEAAqE,CAAAtB,OAAA,CAAAsB,qEAAA,cAAA1N,YAAA,CAEhF,SAAA0N,sEAAYnB,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAyN,qEAAA,CAAArN,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,48nBAA48nB,CAC58nB,ojTAAojT,CACxjT3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAoB,oEAAoE,CAAAvB,OAAA,CAAAuB,oEAAA,cAAA3N,YAAA,CAE/E,SAAA2N,qEAAYpB,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA0N,oEAAA,CAAAtN,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,48nBAA48nB,CAC58nB,ojTAAojT,CACxjT3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAqB,iEAAiE,CAAAxB,OAAA,CAAAwB,iEAAA,cAAA5N,YAAA,CAE5E,SAAA4N,kEAAYrB,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA2N,iEAAA,CAAAvN,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,48nBAA48nB,CAC58nB,ojTAAojT,CACxjT3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAsB,uCAAuC,CAAAzB,OAAA,CAAAyB,uCAAA,cAAA7N,YAAA,CAElD,SAAA6N,wCAAYtB,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA4N,uCAAA,CAAAxN,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,gnsCAAgnsC,CAChnsC,4hqBAA4hqB,CAChiqB3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAuB,sCAAsC,CAAA1B,OAAA,CAAA0B,sCAAA,cAAA9N,YAAA,CAEjD,SAAA8N,uCAAYvB,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA6N,sCAAA,CAAAzN,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,gnsCAAgnsC,CAChnsC,4hqBAA4hqB,CAChiqB3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAwB,mCAAmC,CAAA3B,OAAA,CAAA2B,mCAAA,cAAA/N,YAAA,CAE9C,SAAA+N,oCAAYxB,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA8N,mCAAA,CAAA1N,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,gnsCAAgnsC,CAChnsC,4hqBAA4hqB,CAChiqB3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAyB,uDAAuD,CAAA5B,OAAA,CAAA4B,uDAAA,cAAAhO,YAAA,CAElE,SAAAgO,wDACEzB,aAAuB,CACvB0B,aAAyB,CACzBC,cAA0B,CAC1BC,mBAA+B,CAC/BC,oBAAgC,CAEhC,IADA,CAAA3B,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA+N,uDAAA,CAAA3N,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,g0zBAAg0zB,CACh0zB,85ZAA85Z,CACl6Z3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEE,UAAU,CAAEA,UAAU,CAAEA,UAAU,CAAEA,UAAU,CAAC,CAAC,CACtE,CACEwL,aAAa,CACb0B,aAAa,CACbC,cAAc,CACdC,mBAAmB,CACnBC,oBAAoB,CAExB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAC,sDAAsD,CAAAjC,OAAA,CAAAiC,sDAAA,cAAArO,YAAA,CAEjE,SAAAqO,uDACE9B,aAAuB,CACvB0B,aAAyB,CACzBC,cAA0B,CAC1BC,mBAA+B,CAC/BC,oBAAgC,CAEhC,IADA,CAAA3B,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAoO,sDAAA,CAAAhO,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,g0zBAAg0zB,CACh0zB,85ZAA85Z,CACl6Z3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEE,UAAU,CAAEA,UAAU,CAAEA,UAAU,CAAEA,UAAU,CAAC,CAAC,CACtE,CACEwL,aAAa,CACb0B,aAAa,CACbC,cAAc,CACdC,mBAAmB,CACnBC,oBAAoB,CAExB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAE,mDAAmD,CAAAlC,OAAA,CAAAkC,mDAAA,cAAAtO,YAAA,CAE9D,SAAAsO,oDACE/B,aAAuB,CACvB0B,aAAyB,CACzBC,cAA0B,CAC1BC,mBAA+B,CAC/BC,oBAAgC,CAEhC,IADA,CAAA3B,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAqO,mDAAA,CAAAjO,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,g0zBAAg0zB,CACh0zB,85ZAA85Z,CACl6Z3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAEE,UAAU,CAAEA,UAAU,CAAEA,UAAU,CAAEA,UAAU,CAAC,CAAC,CACtE,CACEwL,aAAa,CACb0B,aAAa,CACbC,cAAc,CACdC,mBAAmB,CACnBC,oBAAoB,CAExB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAG,yCAAyC,CAAAnC,OAAA,CAAAmC,yCAAA,cAAAvO,YAAA,CAEpD,SAAAuO,0CAAYhC,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAsO,yCAAA,CAAAlO,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,kkqCAAkkqC,CAClkqC,g3nBAAg3nB,CACp3nB3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAiC,wCAAwC,CAAApC,OAAA,CAAAoC,wCAAA,cAAAxO,YAAA,CAEnD,SAAAwO,yCAAYjC,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAuO,wCAAA,CAAAnO,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,kkqCAAkkqC,CAClkqC,g3nBAAg3nB,CACp3nB3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAkC,qCAAqC,CAAArC,OAAA,CAAAqC,qCAAA,cAAAzO,YAAA,CAEhD,SAAAyO,sCAAYlC,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAwO,qCAAA,CAAApO,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,kkqCAAkkqC,CAClkqC,g3nBAAg3nB,CACp3nB3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAmC,2BAA2B,CAAAtC,OAAA,CAAAsC,2BAAA,cAAA1O,YAAA,CAEtC,SAAA0O,4BAAYC,OAAwB,CAA2B,IAAzB,CAAAlC,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAyO,2BAAA,CAAArO,CAAA,sCAC3D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,svDAAsvD,CACtvD,w3BAAw3B,CAC53B3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACF,CAAC,CACF,CAAC6M,OAAO,CACV,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAC,2BAA2B,CAAAxC,OAAA,CAAAwC,2BAAA,cAAA5O,YAAA,CAEtC,SAAA4O,4BAAYD,OAAwB,CAA2B,IAAzB,CAAAlC,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA2O,2BAAA,CAAAvO,CAAA,sCAC3D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,svDAAsvD,CACtvD,w3BAAw3B,CAC53B3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACF,CAAC,CACF,CAAC6M,OAAO,CACV,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAE,iDAAiD,CAAAzC,OAAA,CAAAyC,iDAAA,cAAA7O,YAAA,CAE5D,SAAA6O,kDAAYtC,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA4O,iDAAA,CAAAxO,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,khGAAkhG,CAClhG,82BAA82B,CACl3B3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAuC,iDAAiD,CAAA1C,OAAA,CAAA0C,iDAAA,cAAA9O,YAAA,CAE5D,SAAA8O,kDAAYvC,aAAuB,CAA2B,IAAzB,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA6O,iDAAA,CAAAzO,CAAA,sCAC1D,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,khGAAkhG,CAClhG,82BAA82B,CACl3B3L,UAAI,CAACO,KAAK,CAAC,CAACR,QAAQ,CAAC,CAAC,CACtB,CAAC0L,aAAa,CAChB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAwC,mCAAmC,CAAA3C,OAAA,CAAA2C,mCAAA,cAAA/O,YAAA,CAE9C,SAAA+O,oCACEJ,OAAwB,CACxBpC,aAAuB,CAEvB,IADA,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA8O,mCAAA,CAAA1O,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,okJAAokJ,CACpkJ,ojDAAojD,CACxjD3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDjB,QAAQ,CACT,CAAC,CACF,CAAC8N,OAAO,CAAEpC,aAAa,CACzB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAyC,oCAAoC,CAAA5C,OAAA,CAAA4C,oCAAA,cAAAhP,YAAA,CAE/C,SAAAgP,qCACEL,OAAwB,CACxBpC,aAAuB,CAEvB,IADA,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAA+O,oCAAA,CAAA3O,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,okJAAokJ,CACpkJ,ojDAAojD,CACxjD3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDjB,QAAQ,CACT,CAAC,CACF,CAAC8N,OAAO,CAAEpC,aAAa,CACzB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAA0C,mCAAmC,CAAA7C,OAAA,CAAA6C,mCAAA,cAAAjP,YAAA,CAE9C,SAAAiP,oCACEN,OAAwB,CACxBpC,aAAuB,CAEvB,IADA,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAgP,mCAAA,CAAA5O,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,okJAAokJ,CACpkJ,ojDAAojD,CACxjD3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDjB,QAAQ,CACT,CAAC,CACF,CAAC8N,OAAO,CAAEpC,aAAa,CACzB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAA2C,2BAA2B,CAAA9C,OAAA,CAAA8C,2BAAA,cAAAlP,YAAA,CAEtC,SAAAkP,4BACEP,OAAwB,CACxBpC,aAAuB,CAEvB,IADA,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAiP,2BAAA,CAAA7O,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,s5IAAs5I,CACt5I,0/CAA0/C,CAC9/C3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDjB,QAAQ,CACT,CAAC,CACF,CAAC8N,OAAO,CAAEpC,aAAa,CACzB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAA4C,4BAA4B,CAAA/C,OAAA,CAAA+C,4BAAA,cAAAnP,YAAA,CAEvC,SAAAmP,6BACER,OAAwB,CACxBpC,aAAuB,CAEvB,IADA,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAkP,4BAAA,CAAA9O,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,s5IAAs5I,CACt5I,0/CAA0/C,CAC9/C3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDjB,QAAQ,CACT,CAAC,CACF,CAAC8N,OAAO,CAAEpC,aAAa,CACzB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAA6C,2BAA2B,CAAAhD,OAAA,CAAAgD,2BAAA,cAAApP,YAAA,CAEtC,SAAAoP,4BACET,OAAwB,CACxBpC,aAAuB,CAEvB,IADA,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAmP,2BAAA,CAAA/O,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,s5IAAs5I,CACt5I,0/CAA0/C,CAC9/C3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDjB,QAAQ,CACT,CAAC,CACF,CAAC8N,OAAO,CAAEpC,aAAa,CACzB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAA8C,iCAAiC,CAAAjD,OAAA,CAAAiD,iCAAA,cAAArP,YAAA,CAE5C,SAAAqP,kCACEV,OAAwB,CACxBpC,aAAuB,CAEvB,IADA,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAoP,iCAAA,CAAAhP,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,46IAA46I,CAC56I,ghDAAghD,CACphD3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDjB,QAAQ,CACT,CAAC,CACF,CAAC8N,OAAO,CAAEpC,aAAa,CACzB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAA+C,kCAAkC,CAAAlD,OAAA,CAAAkD,kCAAA,cAAAtP,YAAA,CAE7C,SAAAsP,mCACEX,OAAwB,CACxBpC,aAAuB,CAEvB,IADA,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAqP,kCAAA,CAAAjP,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,46IAA46I,CAC56I,ghDAAghD,CACphD3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDjB,QAAQ,CACT,CAAC,CACF,CAAC8N,OAAO,CAAEpC,aAAa,CACzB,CAAC,CACD,UACF,CAAC,CACH,CAAC,KAEU,CAAAgD,iCAAiC,CAAAnD,OAAA,CAAAmD,iCAAA,cAAAvP,YAAA,CAE5C,SAAAuP,kCACEZ,OAAwB,CACxBpC,aAAuB,CAEvB,IADA,CAAAE,KAAe,CAAAC,SAAA,CAAAlN,MAAA,IAAAkN,SAAA,MAAAC,SAAA,CAAAD,SAAA,IAAG,KAAKzM,CAAA,qBAAAsP,iCAAA,CAAAlP,CAAA,sCAEvB,IAAI,CAAC2D,MAAM,CAAG,GAAA4I,kBAAY,EACxB,GAAAC,yBAAmB,EACjBJ,KAAK,CACD,46IAA46I,CAC56I,ghDAAghD,CACphD3L,UAAI,CAACO,KAAK,CAAC,CACTP,UAAI,CAAClB,MAAM,CACT,CACEwC,cAAc,CAAEtB,UAAI,CAACH,MAAM,CAAC,CAAC,CAC7B0B,YAAY,CAAEvB,UAAI,CAACwB,MAAM,CAAC,CAC5B,CAAC,CACD,CAAER,IAAI,CAAE,EAAG,CACb,CAAC,CACDjB,QAAQ,CACT,CAAC,CACF,CAAC8N,OAAO,CAAEpC,aAAa,CACzB,CAAC,CACD,UACF,CAAC,CACH,CAAC","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/index.js b/modules/realfi-partner-sdk/dist/cjs/index.js new file mode 100644 index 0000000000..b11cd40ad8 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/index.js @@ -0,0 +1,139 @@ +"use strict"; + +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "NETWORK_REGISTRY", { + enumerable: true, + get: function get() { + return _detectParams.NETWORK_REGISTRY; + } +}); +exports.RealfiSDK = exports.RealfiApi = void 0; +Object.defineProperty(exports, "SUSDR_EXCHANGE_RATE_PRECISION", { + enumerable: true, + get: function get() { + return _diffusion.SUSDR_EXCHANGE_RATE_PRECISION; + } +}); +exports.TxBuilder = exports.SundaeSwap = void 0; +Object.defineProperty(exports, "UnknownProtocolVersionError", { + enumerable: true, + get: function get() { + return _detectParams.UnknownProtocolVersionError; + } +}); +exports.Utils = void 0; +Object.defineProperty(exports, "V0_4Types", { + enumerable: true, + get: function get() { + return _index4.V0_4Types; + } +}); +Object.defineProperty(exports, "V1_0Rc1Types", { + enumerable: true, + get: function get() { + return _index4.V1_0Rc1Types; + } +}); +Object.defineProperty(exports, "V1_0Types", { + enumerable: true, + get: function get() { + return _index4.V1_0Types; + } +}); +Object.defineProperty(exports, "V1_1Rc1Types", { + enumerable: true, + get: function get() { + return _index4.V1_1Rc1Types; + } +}); +Object.defineProperty(exports, "YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER", { + enumerable: true, + get: function get() { + return _detectParams.YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER; + } +}); +Object.defineProperty(exports, "calculateSusdrExchangeRate", { + enumerable: true, + get: function get() { + return _diffusion.calculateSusdrExchangeRate; + } +}); +Object.defineProperty(exports, "detectSDKParams", { + enumerable: true, + get: function get() { + return _detectParams.detectSDKParams; + } +}); +var _index = require("./api/index.js"); +var _clientId = require("./sdk/shared/client-id.js"); +var _index2 = require("./sdk/index.js"); +var _partnerDispatcher = require("./sdk/partner-dispatcher.js"); +var SundaeSwapSDK = _interopRequireWildcard(require("./sundae/index.js")); +var _SundaeSwap = SundaeSwapSDK; +exports.SundaeSwap = SundaeSwapSDK; +var _detectParams = require("./sdk/shared/detect-params.js"); +var _index4 = require("./generated-types/index.js"); +var _diffusion = require("./sdk/v1_1_rc1/diffusion.js"); +var _Utils = _interopRequireWildcard(require("./sdk/shared/public.js")); +exports.Utils = _Utils; +var _TxBuilder = _interopRequireWildcard(require("./tx-builder/index.js")); +exports.TxBuilder = _TxBuilder; +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } +// Partner-facing entry point. First-party consumers use "./internal". + +var PARTNER_CLIENT_ID = "partner-sdk/".concat(_clientId.SDK_VERSION); + +// On-chain Cardano part — the facade narrowed to the partner surface (order +// builders + read helpers). Deploy/operator methods and concrete version +// classes are reachable only via "./internal". +// +// `create` returns a version dispatcher: by default it re-resolves the live +// protocol version before each order build (one provider lookup) and swaps to +// the matching version instance; read helpers never re-detect. All built +// orders are tagged with source="partner-sdk", surviving version switches. +// The `detectParams` method is forwarded unchanged. +/* eslint-disable @typescript-eslint/no-explicit-any */ +var cardano = { + create: function create(blaze, params, options) { + return (0, _partnerDispatcher.createPartnerCardanoSDK)(blaze, params, "partner-sdk", options); + }, + detectParams: _index2.RealfiSDK.detectParams.bind(_index2.RealfiSDK) +}; +/* eslint-enable @typescript-eslint/no-explicit-any */ + +// Off-chain API — wrap factory methods to inject the partner client-id so +// every request body carries extensions.clientId = "partner-sdk/". +var PartnerRealfiApi = exports.RealfiApi = { + forNetwork: function forNetwork(network) { + return _index.RealfiApi.forNetwork(network, PARTNER_CLIENT_ID); + }, + create: function create(endpoints) { + return _index.RealfiApi.create(endpoints, PARTNER_CLIENT_ID); + } +}; + +// Partner SDK, namespaced by part. +var RealfiSDK = exports.RealfiSDK = { + cardano: cardano, + api: PartnerRealfiApi, + sundae: SundaeSwapSDK +}; + +// Partner-facing Cardano SDK instance types + create options + +// Params + detection result + +// Protocol-version detection + +// Partner-facing shared types + +// Current-line generated type namespaces + +// Curated helpers + transaction builder + +// Off-chain API part. `RealfiApi` here is the partner-tagged factory, not the +// raw class — direct imports get the same partner client-id as RealfiSDK.api. +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/index.js.map b/modules/realfi-partner-sdk/dist/cjs/index.js.map new file mode 100644 index 0000000000..48ce815689 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_index","require","_clientId","_index2","_partnerDispatcher","SundaeSwapSDK","_interopRequireWildcard","_SundaeSwap","exports","SundaeSwap","_detectParams","_index4","_diffusion","_Utils","Utils","_TxBuilder","TxBuilder","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","PARTNER_CLIENT_ID","concat","SDK_VERSION","cardano","create","blaze","params","options","createPartnerCardanoSDK","detectParams","RealfiSDKFull","bind","PartnerRealfiApi","RealfiApi","forNetwork","network","RealfiApiInternal","endpoints","RealfiSDK","api","sundae"],"sources":["../../src/index.ts"],"sourcesContent":["// Partner-facing entry point. First-party consumers use \"./internal\".\n\nimport { RealfiApi as RealfiApiInternal } from \"./api/index.js\";\nimport type { IApiEndpoints, IRealfiApiSDK, TApiNetwork } from \"./api/index.js\";\nimport { SDK_VERSION } from \"./sdk/shared/client-id.js\";\nimport { RealfiSDK as RealfiSDKFull } from \"./sdk/index.js\";\nimport { createPartnerCardanoSDK } from \"./sdk/partner-dispatcher.js\";\nimport type { IRealfiCardanoFactory } from \"./sdk/partner.js\";\nimport * as SundaeSwapSDK from \"./sundae/index.js\";\n\nconst PARTNER_CLIENT_ID = `partner-sdk/${SDK_VERSION}`;\n\n// On-chain Cardano part — the facade narrowed to the partner surface (order\n// builders + read helpers). Deploy/operator methods and concrete version\n// classes are reachable only via \"./internal\".\n//\n// `create` returns a version dispatcher: by default it re-resolves the live\n// protocol version before each order build (one provider lookup) and swaps to\n// the matching version instance; read helpers never re-detect. All built\n// orders are tagged with source=\"partner-sdk\", surviving version switches.\n// The `detectParams` method is forwarded unchanged.\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst cardano: IRealfiCardanoFactory = {\n create: (blaze: any, params: any, options?: any) =>\n createPartnerCardanoSDK(blaze, params, \"partner-sdk\", options) as any,\n detectParams: RealfiSDKFull.detectParams.bind(RealfiSDKFull),\n};\n/* eslint-enable @typescript-eslint/no-explicit-any */\n\n// Off-chain API — wrap factory methods to inject the partner client-id so\n// every request body carries extensions.clientId = \"partner-sdk/\".\nconst PartnerRealfiApi = {\n forNetwork(network: TApiNetwork): IRealfiApiSDK {\n return RealfiApiInternal.forNetwork(network, PARTNER_CLIENT_ID);\n },\n create(endpoints: IApiEndpoints): IRealfiApiSDK {\n return RealfiApiInternal.create(endpoints, PARTNER_CLIENT_ID);\n },\n};\n\n// Partner SDK, namespaced by part.\nexport const RealfiSDK = {\n cardano,\n api: PartnerRealfiApi,\n sundae: SundaeSwapSDK,\n};\n\n// Partner-facing Cardano SDK instance types + create options\nexport type {\n IRealfiCardanoCreateOptions,\n IBuildStakeContinuationParams,\n IStakeContinuation,\n IStakeContinuationSwap,\n IRealfiCardanoSDKV0_4,\n IRealfiCardanoSDKV1_0,\n IRealfiCardanoSDKV1_0Rc1,\n IRealfiCardanoSDKV1_1Rc1,\n TDetectedVersion,\n TRealfiCardanoSDK,\n TVersionDetectionMode,\n} from \"./sdk/partner.js\";\n\n// Params + detection result\nexport type {\n TDetectedSDKParams,\n IRealfiSDKParamsV0_4,\n IRealfiSDKParamsV1_0,\n IRealfiSDKParamsV1_0Rc1,\n IRealfiSDKParamsV1_1Rc1,\n} from \"./sdk/index.js\";\n\n// Protocol-version detection\nexport {\n detectSDKParams,\n NETWORK_REGISTRY,\n UnknownProtocolVersionError,\n YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER,\n} from \"./sdk/shared/detect-params.js\";\nexport type {\n IDetectInput,\n TNetworkPreset,\n} from \"./sdk/shared/detect-params.js\";\n\n// Partner-facing shared types\nexport type {\n TProtocolVersion,\n IProxyBootstrap,\n IBaseSDKParams,\n IRawProxyDatumResult,\n IProxyDatumResult,\n ITreasuryDatumResult,\n IVaultDatumResult,\n IProxySettings,\n IReserveAsset,\n TMultisigScript,\n IOutputReference,\n TPermissionKey,\n} from \"./sdk/shared/types.js\";\n\n// Current-line generated type namespaces\nexport {\n V0_4Types,\n V1_0Types,\n V1_0Rc1Types,\n V1_1Rc1Types,\n} from \"./generated-types/index.js\";\n\n// Curated helpers + transaction builder\nexport {\n calculateSusdrExchangeRate,\n SUSDR_EXCHANGE_RATE_PRECISION,\n type ISusdrExchangeRateInputs,\n} from \"./sdk/v1_1_rc1/diffusion.js\";\nexport * as Utils from \"./sdk/shared/public.js\";\nexport * as TxBuilder from \"./tx-builder/index.js\";\nexport * as SundaeSwap from \"./sundae/index.js\";\n\n// Off-chain API part. `RealfiApi` here is the partner-tagged factory, not the\n// raw class — direct imports get the same partner client-id as RealfiSDK.api.\nexport { PartnerRealfiApi as RealfiApi };\nexport type {\n IRealfiApiSDK,\n IApiEndpoints,\n TApiNetwork,\n IOrderInfo,\n IPartnerConfig,\n IPartnerLimits,\n IApiOrderUtxo,\n IStakeTimes,\n IOrderFees,\n IYieldBreakdown,\n IPointsBalance,\n IReferrerCode,\n TOrderStatus,\n TOrderAction,\n} from \"./api/index.js\";\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/package.json b/modules/realfi-partner-sdk/dist/cjs/package.json new file mode 100644 index 0000000000..a3c15a7a63 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/package.json @@ -0,0 +1 @@ +{ "type": "commonjs" } diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/index.js b/modules/realfi-partner-sdk/dist/cjs/sdk/index.js new file mode 100644 index 0000000000..e2dc89551c --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/index.js @@ -0,0 +1,276 @@ +"use strict"; + +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +Object.defineProperty(exports, "__esModule", { + value: true +}); +var _exportNames = { + RealfiSDK: true, + RealfiSDKV0: true, + RealfiSDKV0_1: true, + RealfiSDKV0_2: true, + RealfiSDKV0_3: true, + RealfiSDKV0_4: true, + RealfiSDKV1_0: true, + RealfiSDKV1_0Rc1: true, + RealfiSDKV1_1Rc1: true +}; +exports.RealfiSDK = void 0; +Object.defineProperty(exports, "RealfiSDKV0", { + enumerable: true, + get: function get() { + return _index2.RealfiSDKV0; + } +}); +Object.defineProperty(exports, "RealfiSDKV0_1", { + enumerable: true, + get: function get() { + return _index3.RealfiSDKV0_1; + } +}); +Object.defineProperty(exports, "RealfiSDKV0_2", { + enumerable: true, + get: function get() { + return _index4.RealfiSDKV0_2; + } +}); +Object.defineProperty(exports, "RealfiSDKV0_3", { + enumerable: true, + get: function get() { + return _index5.RealfiSDKV0_3; + } +}); +Object.defineProperty(exports, "RealfiSDKV0_4", { + enumerable: true, + get: function get() { + return _index6.RealfiSDKV0_4; + } +}); +Object.defineProperty(exports, "RealfiSDKV1_0", { + enumerable: true, + get: function get() { + return _index7.RealfiSDKV1_0; + } +}); +Object.defineProperty(exports, "RealfiSDKV1_0Rc1", { + enumerable: true, + get: function get() { + return _index8.RealfiSDKV1_0Rc1; + } +}); +Object.defineProperty(exports, "RealfiSDKV1_1Rc1", { + enumerable: true, + get: function get() { + return _index9.RealfiSDKV1_1Rc1; + } +}); +var _index = require("./shared/index.js"); +Object.keys(_index).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; + if (key in exports && exports[key] === _index[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _index[key]; + } + }); +}); +var _index2 = require("./v0/index.js"); +var _index3 = require("./v0_1/index.js"); +var _index4 = require("./v0_2/index.js"); +var _index5 = require("./v0_3/index.js"); +var _index6 = require("./v0_4/index.js"); +var _index7 = require("./v1_0/index.js"); +var _index8 = require("./v1_0_rc1/index.js"); +var _index9 = require("./v1_1_rc1/index.js"); +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } // Re-export param types for convenience +// Re-export shared types and utilities +// Re-export version classes. These are tree-shaken out of consumer bundles +// that never reference them by name, thanks to `"sideEffects": false` in +// package.json. The facade below dispatches via dynamic `import()`, so the +// app's entry chunk only includes the version it actually selects at runtime. +/** + * Union type of all SDK parameter types + */ +/** + * Union type of all SDK versions + */ +// Function overloads for create. Returns are promises because the +// implementation lazy-loads the per-version module on demand. +function createRealfiSDK(_x, _x2) { + return _createRealfiSDK.apply(this, arguments); +} +/** Call signature for {@link RealfiSDK.detectParams}, kept as an interface so it can carry overloads. */ +function _createRealfiSDK() { + _createRealfiSDK = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(blaze, params) { + var _yield$import2, RealfiSDKV0, _yield$import3, RealfiSDKV0_1, _yield$import4, RealfiSDKV0_2, _yield$import5, RealfiSDKV0_3, _yield$import6, RealfiSDKV0_4, _yield$import7, RealfiSDKV1_0, _yield$import8, RealfiSDKV1_0Rc1, _yield$import9, RealfiSDKV1_1Rc1, _t; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + _t = params.version; + _context2.n = _t === "V0" ? 1 : _t === "V0_1" ? 3 : _t === "V0_2" ? 5 : _t === "V0_3" ? 7 : _t === "V0_4" ? 9 : _t === "V1_0" ? 11 : _t === "V1_0_Rc1" ? 13 : _t === "V1_1_Rc1" ? 15 : 17; + break; + case 1: + _context2.n = 2; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("./v0/index.js")); + }); + case 2: + _yield$import2 = _context2.v; + RealfiSDKV0 = _yield$import2.RealfiSDKV0; + return _context2.a(2, RealfiSDKV0.create(blaze, params)); + case 3: + _context2.n = 4; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("./v0_1/index.js")); + }); + case 4: + _yield$import3 = _context2.v; + RealfiSDKV0_1 = _yield$import3.RealfiSDKV0_1; + return _context2.a(2, RealfiSDKV0_1.create(blaze, params)); + case 5: + _context2.n = 6; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("./v0_2/index.js")); + }); + case 6: + _yield$import4 = _context2.v; + RealfiSDKV0_2 = _yield$import4.RealfiSDKV0_2; + return _context2.a(2, RealfiSDKV0_2.create(blaze, params)); + case 7: + _context2.n = 8; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("./v0_3/index.js")); + }); + case 8: + _yield$import5 = _context2.v; + RealfiSDKV0_3 = _yield$import5.RealfiSDKV0_3; + return _context2.a(2, RealfiSDKV0_3.create(blaze, params)); + case 9: + _context2.n = 10; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("./v0_4/index.js")); + }); + case 10: + _yield$import6 = _context2.v; + RealfiSDKV0_4 = _yield$import6.RealfiSDKV0_4; + return _context2.a(2, RealfiSDKV0_4.create(blaze, params)); + case 11: + _context2.n = 12; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("./v1_0/index.js")); + }); + case 12: + _yield$import7 = _context2.v; + RealfiSDKV1_0 = _yield$import7.RealfiSDKV1_0; + return _context2.a(2, RealfiSDKV1_0.create(blaze, params)); + case 13: + _context2.n = 14; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("./v1_0_rc1/index.js")); + }); + case 14: + _yield$import8 = _context2.v; + RealfiSDKV1_0Rc1 = _yield$import8.RealfiSDKV1_0Rc1; + return _context2.a(2, RealfiSDKV1_0Rc1.create(blaze, params)); + case 15: + _context2.n = 16; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("./v1_1_rc1/index.js")); + }); + case 16: + _yield$import9 = _context2.v; + RealfiSDKV1_1Rc1 = _yield$import9.RealfiSDKV1_1Rc1; + return _context2.a(2, RealfiSDKV1_1Rc1.create(blaze, params)); + case 17: + throw new Error("Unknown SDK version: ".concat(params.version)); + case 18: + return _context2.a(2); + } + }, _callee2); + })); + return _createRealfiSDK.apply(this, arguments); +} +/** + * RealfiSDK namespace for creating SDK instances. + * + * The SDK is the single entry point for all protocol operations. + * Each version class (RealfiSDKV0, RealfiSDKV0_1, RealfiSDKV0_2, etc.) provides + * version-specific functionality with correct types. + * + * The facade lazy-loads each version module via dynamic `import()` so consumer + * bundles only ship the version they actually select at runtime. + * + * @example V0 - Simple minting + * ```typescript + * const sdk = await RealfiSDK.create(blaze, { + * version: "V0", + * proxyBootstrap: { txHash, outputIndex }, + * assetNameHex: "55534472", + * }); + * const mintTx = await sdk.buildMintTx(AssetAmount.fromValue(1000n, decimals)); + * ``` + * + * @example V1_0 - Full protocol with DirectMint/DirectBurn + * ```typescript + * const sdk = await RealfiSDK.create(blaze, { + * version: "V1_0", + * proxyBootstrap: { txHash, outputIndex }, + * treasuryBootstrap: { txHash: treasuryTxHash, outputIndex: treasuryOutputIndex }, + * stakingVaultBootstrap: { txHash: vaultTxHash, outputIndex: vaultOutputIndex }, + * assetNameHex: "55534472", + * sUSDrAssetNameHex: "7355534472", + * }); + * const directMintTx = await sdk.buildDirectMintOrderTx({ amount, destination }); + * ``` + */ +var RealfiSDK = exports.RealfiSDK = { + /** + * Create a new RealfiSDK instance. + * + * Returns the appropriate version-specific SDK based on the params. + * The returned SDK has full type information for that version. + */ + create: createRealfiSDK, + /** + * Detect the active protocol version from the on-chain proxy datum. + * + * Reads the proxy UTxO, extracts the `logic` script hash, and compares it + * against expected hashes for each known SDK version. Returns fully-typed + * SDK params (including V1_0 backward-compatibility flags) that can be + * passed directly to `RealfiSDK.create`. + * + * `config` also accepts a network preset name (`"mainnet"`, `"preprod"`, + * `"preview"`) in place of an explicit config, resolved via the built-in + * network registry. Custom deployments still pass an explicit config. + * + * @throws {UnknownProtocolVersionError} if the on-chain hash matches no known version. + */ + detectParams: function () { + var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(provider, config) { + var _yield$import, detectSDKParams; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + _context.n = 1; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("./shared/detect-params.js")); + }); + case 1: + _yield$import = _context.v; + detectSDKParams = _yield$import.detectSDKParams; + return _context.a(2, typeof config === "string" ? detectSDKParams(provider, config) : detectSDKParams(provider, config)); + } + }, _callee); + })); + return function detectParams(_x3, _x4) { + return _ref.apply(this, arguments); + }; + }() +}; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/index.js.map new file mode 100644 index 0000000000..bea14b63d7 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_index","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_index2","_index3","_index4","_index5","_index6","_index7","_index8","_index9","_regenerator","e","t","r","Symbol","n","iterator","o","toStringTag","i","c","Generator","u","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","_regeneratorDefine","_invoke","configurable","writable","_interopRequireWildcard","WeakMap","__esModule","_typeof","has","set","_t2","getOwnPropertyDescriptor","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","createRealfiSDK","_x","_x2","_createRealfiSDK","_callee2","blaze","params","_yield$import2","RealfiSDKV0","_yield$import3","RealfiSDKV0_1","_yield$import4","RealfiSDKV0_2","_yield$import5","RealfiSDKV0_3","_yield$import6","RealfiSDKV0_4","_yield$import7","RealfiSDKV1_0","_yield$import8","RealfiSDKV1_0Rc1","_yield$import9","RealfiSDKV1_1Rc1","_t","_context2","version","Error","concat","RealfiSDK","detectParams","_ref","_callee","provider","config","_yield$import","detectSDKParams","_context","_x3","_x4"],"sources":["../../../src/sdk/index.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport { type Blaze, type Wallet } from \"@blaze-cardano/sdk\";\n\nimport type {\n IDetectInput,\n TDetectedSDKParams,\n TNetworkPreset,\n} from \"./shared/detect-params.js\";\nexport type { TDetectedSDKParams } from \"./shared/detect-params.js\";\nexport type { TNetworkPreset } from \"./shared/detect-params.js\";\n\nimport type { IRealfiSDKParamsV0, RealfiSDKV0 } from \"./v0/index.js\";\nimport type { IRealfiSDKParamsV0_1, RealfiSDKV0_1 } from \"./v0_1/index.js\";\nimport type { IRealfiSDKParamsV0_2, RealfiSDKV0_2 } from \"./v0_2/index.js\";\nimport type { IRealfiSDKParamsV0_3, RealfiSDKV0_3 } from \"./v0_3/index.js\";\nimport type { IRealfiSDKParamsV0_4, RealfiSDKV0_4 } from \"./v0_4/index.js\";\nimport type { IRealfiSDKParamsV1_0, RealfiSDKV1_0 } from \"./v1_0/index.js\";\nimport type {\n IRealfiSDKParamsV1_0Rc1,\n RealfiSDKV1_0Rc1,\n} from \"./v1_0_rc1/index.js\";\nimport type {\n IRealfiSDKParamsV1_1Rc1,\n RealfiSDKV1_1Rc1,\n} from \"./v1_1_rc1/index.js\";\n\n// Re-export param types for convenience\nexport type { IRealfiSDKParamsV0 } from \"./v0/index.js\";\nexport type { IRealfiSDKParamsV0_1 } from \"./v0_1/index.js\";\nexport type { IRealfiSDKParamsV0_2 } from \"./v0_2/index.js\";\nexport type { IRealfiSDKParamsV0_3 } from \"./v0_3/index.js\";\nexport type { IRealfiSDKParamsV0_4 } from \"./v0_4/index.js\";\nexport type { IRealfiSDKParamsV1_0 } from \"./v1_0/index.js\";\nexport type { IRealfiSDKParamsV1_0Rc1 } from \"./v1_0_rc1/index.js\";\nexport type { IRealfiSDKParamsV1_1Rc1 } from \"./v1_1_rc1/index.js\";\n\n// Re-export shared types and utilities\nexport * from \"./shared/index.js\";\n\n// Re-export version classes. These are tree-shaken out of consumer bundles\n// that never reference them by name, thanks to `\"sideEffects\": false` in\n// package.json. The facade below dispatches via dynamic `import()`, so the\n// app's entry chunk only includes the version it actually selects at runtime.\nexport { RealfiSDKV0 } from \"./v0/index.js\";\nexport { RealfiSDKV0_1 } from \"./v0_1/index.js\";\nexport { RealfiSDKV0_2 } from \"./v0_2/index.js\";\nexport { RealfiSDKV0_3 } from \"./v0_3/index.js\";\nexport { RealfiSDKV0_4 } from \"./v0_4/index.js\";\nexport { RealfiSDKV1_0 } from \"./v1_0/index.js\";\nexport { RealfiSDKV1_0Rc1 } from \"./v1_0_rc1/index.js\";\nexport { RealfiSDKV1_1Rc1 } from \"./v1_1_rc1/index.js\";\n\n/**\n * Union type of all SDK parameter types\n */\nexport type TRealfiSDKParams =\n | IRealfiSDKParamsV0\n | IRealfiSDKParamsV0_1\n | IRealfiSDKParamsV0_2\n | IRealfiSDKParamsV0_3\n | IRealfiSDKParamsV0_4\n | IRealfiSDKParamsV1_0\n | IRealfiSDKParamsV1_0Rc1\n | IRealfiSDKParamsV1_1Rc1;\n\n/**\n * Union type of all SDK versions\n */\nexport type TRealfiSDK

=\n | RealfiSDKV0\n | RealfiSDKV0_1\n | RealfiSDKV0_2\n | RealfiSDKV0_3\n | RealfiSDKV0_4\n | RealfiSDKV1_0\n | RealfiSDKV1_0Rc1\n | RealfiSDKV1_1Rc1;\n\n// Function overloads for create. Returns are promises because the\n// implementation lazy-loads the per-version module on demand.\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_1,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_2,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_3,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_4,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0Rc1,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_1Rc1,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: TDetectedSDKParams,\n): Promise<\n | RealfiSDKV0_4\n | RealfiSDKV1_0\n | RealfiSDKV1_0Rc1\n | RealfiSDKV1_1Rc1\n>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: TRealfiSDKParams,\n): Promise>;\nasync function createRealfiSDK

(\n blaze: Blaze,\n params: TRealfiSDKParams,\n): Promise> {\n switch (params.version) {\n case \"V0\": {\n const { RealfiSDKV0 } = await import(\"./v0/index.js\");\n return RealfiSDKV0.create(blaze, params);\n }\n case \"V0_1\": {\n const { RealfiSDKV0_1 } = await import(\"./v0_1/index.js\");\n return RealfiSDKV0_1.create(blaze, params);\n }\n case \"V0_2\": {\n const { RealfiSDKV0_2 } = await import(\"./v0_2/index.js\");\n return RealfiSDKV0_2.create(blaze, params);\n }\n case \"V0_3\": {\n const { RealfiSDKV0_3 } = await import(\"./v0_3/index.js\");\n return RealfiSDKV0_3.create(blaze, params);\n }\n case \"V0_4\": {\n const { RealfiSDKV0_4 } = await import(\"./v0_4/index.js\");\n return RealfiSDKV0_4.create(blaze, params);\n }\n case \"V1_0\": {\n const { RealfiSDKV1_0 } = await import(\"./v1_0/index.js\");\n return RealfiSDKV1_0.create(blaze, params);\n }\n case \"V1_0_Rc1\": {\n const { RealfiSDKV1_0Rc1 } = await import(\"./v1_0_rc1/index.js\");\n return RealfiSDKV1_0Rc1.create(blaze, params);\n }\n case \"V1_1_Rc1\": {\n const { RealfiSDKV1_1Rc1 } = await import(\"./v1_1_rc1/index.js\");\n return RealfiSDKV1_1Rc1.create(blaze, params);\n }\n default:\n throw new Error(\n `Unknown SDK version: ${(params as TRealfiSDKParams).version}`,\n );\n }\n}\n\n/** Call signature for {@link RealfiSDK.detectParams}, kept as an interface so it can carry overloads. */\ninterface IDetectParams {\n (provider: Provider, config: IDetectInput): Promise;\n (provider: Provider, network: TNetworkPreset): Promise;\n}\n\n/**\n * RealfiSDK namespace for creating SDK instances.\n *\n * The SDK is the single entry point for all protocol operations.\n * Each version class (RealfiSDKV0, RealfiSDKV0_1, RealfiSDKV0_2, etc.) provides\n * version-specific functionality with correct types.\n *\n * The facade lazy-loads each version module via dynamic `import()` so consumer\n * bundles only ship the version they actually select at runtime.\n *\n * @example V0 - Simple minting\n * ```typescript\n * const sdk = await RealfiSDK.create(blaze, {\n * version: \"V0\",\n * proxyBootstrap: { txHash, outputIndex },\n * assetNameHex: \"55534472\",\n * });\n * const mintTx = await sdk.buildMintTx(AssetAmount.fromValue(1000n, decimals));\n * ```\n *\n * @example V1_0 - Full protocol with DirectMint/DirectBurn\n * ```typescript\n * const sdk = await RealfiSDK.create(blaze, {\n * version: \"V1_0\",\n * proxyBootstrap: { txHash, outputIndex },\n * treasuryBootstrap: { txHash: treasuryTxHash, outputIndex: treasuryOutputIndex },\n * stakingVaultBootstrap: { txHash: vaultTxHash, outputIndex: vaultOutputIndex },\n * assetNameHex: \"55534472\",\n * sUSDrAssetNameHex: \"7355534472\",\n * });\n * const directMintTx = await sdk.buildDirectMintOrderTx({ amount, destination });\n * ```\n */\nexport const RealfiSDK = {\n /**\n * Create a new RealfiSDK instance.\n *\n * Returns the appropriate version-specific SDK based on the params.\n * The returned SDK has full type information for that version.\n */\n create: createRealfiSDK,\n\n /**\n * Detect the active protocol version from the on-chain proxy datum.\n *\n * Reads the proxy UTxO, extracts the `logic` script hash, and compares it\n * against expected hashes for each known SDK version. Returns fully-typed\n * SDK params (including V1_0 backward-compatibility flags) that can be\n * passed directly to `RealfiSDK.create`.\n *\n * `config` also accepts a network preset name (`\"mainnet\"`, `\"preprod\"`,\n * `\"preview\"`) in place of an explicit config, resolved via the built-in\n * network registry. Custom deployments still pass an explicit config.\n *\n * @throws {UnknownProtocolVersionError} if the on-chain hash matches no known version.\n */\n detectParams: (async (\n provider: Provider,\n config: IDetectInput | TNetworkPreset,\n ): Promise => {\n const { detectSDKParams } = await import(\"./shared/detect-params.js\");\n // Both arms call the same function; the ternary narrows the string|object union so it matches an overload — required to satisfy TS2769, not a no-op.\n return typeof config === \"string\"\n ? detectSDKParams(provider, config)\n : detectSDKParams(provider, config);\n }) as IDetectParams,\n};\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/partner-dispatcher.js b/modules/realfi-partner-sdk/dist/cjs/sdk/partner-dispatcher.js new file mode 100644 index 0000000000..7d9b344646 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/partner-dispatcher.js @@ -0,0 +1,248 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.createPartnerCardanoSDK = createPartnerCardanoSDK; +var _index = require("./index.js"); +var _detectParams = require("./shared/detect-params.js"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } // Per-build protocol-version dispatch for the partner facade ("." entry). +// First-party consumers ("./internal") keep frozen version instances. +// Identity fields the dispatcher reads off a live version instance; every +// other member is reached by property delegation. + +// Caller-supplied build options carried into a recreated instance. Cached +// referenceInputs stay behind — they belong to the previous version's scripts. + +var isOrderBuilder = function isOrderBuilder(prop) { + return typeof prop === "string" && prop.startsWith("build"); +}; +var requiresFreshVersion = function requiresFreshVersion(prop) { + return prop === "buildStakeContinuation"; +}; + +/** + * Create a partner SDK that re-resolves the live protocol version before each + * order build and dispatches to the matching version instance. + * + * Detection identity: the one-shot NFT policy (deterministic from + * `proxyBootstrap`). The proxy UTxO ref changes on every settings update, but + * the NFT lookup follows it, so each refresh is exactly one provider call. + * The fetched `logic` hash is compared against the current instance's + * `protocolScriptHash` — equal in every detectable version — and only on a + * mismatch does the (local, provider-free) version matcher run and the + * underlying instance get recreated, preserving `clientSource` so partner + * order metadata survives the switch. Read helpers never trigger a refresh. + * + * No result caching beyond the last observed hash: freshness only shrinks the + * stale window — correctness is enforced on-chain, and a stale-version build + * is recovered via order invalidation. + * + * Refresh failure policy: an {@link UnknownProtocolVersionError} rejects the + * build — the chain moved to a version this SDK cannot target. Any other + * refresh error (e.g. a transient provider failure) logs a warning and the + * build proceeds on the last known version, which is exactly what an + * `"at-init"` instance would have produced. Stake continuations are stricter + * under this `"per-build"` dispatcher: their address, schema, and + * exchange-rate quote must all match the current deployment, so + * `buildStakeContinuation` fails closed on every refresh error here. An + * `"at-init"` instance, or a raw version-pinned SDK used outside this + * dispatcher, never refreshes at all and carries no such guarantee. + * + * Method identity is unstable across accesses (`sdk.buildX !== sdk.buildX`): + * each access returns a fresh wrapper over the live instance, by design. + */ +function createPartnerCardanoSDK(_x, _x2, _x3, _x4) { + return _createPartnerCardanoSDK.apply(this, arguments); +} +function _createPartnerCardanoSDK() { + _createPartnerCardanoSDK = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(blaze, params, clientSource, options) { + var _options$versionDetec; + var createInstance, initial, detectInput, carriedExtras, state, doRefresh, refresh; + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + createInstance = function createInstance(p) { + return _index.RealfiSDK.create(blaze, _objectSpread(_objectSpread({}, p), {}, { + clientSource: clientSource + })); + }; + _context3.n = 1; + return createInstance(params); + case 1: + initial = _context3.v; + if (!(((_options$versionDetec = options === null || options === void 0 ? void 0 : options.versionDetection) !== null && _options$versionDetec !== void 0 ? _options$versionDetec : "per-build") === "at-init")) { + _context3.n = 2; + break; + } + return _context3.a(2, initial); + case 2: + detectInput = { + proxyBootstrap: params.proxyBootstrap, + treasuryBootstrap: params.treasuryBootstrap, + stakingVaultBootstrap: params.stakingVaultBootstrap, + yieldOracleBootstrap: "yieldOracleBootstrap" in params ? params.yieldOracleBootstrap : undefined, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace: params.enableTrace + }; + carriedExtras = params; + state = { + instance: initial, + // Every detectable version's proxy datum `logic` hash is that version + // class's protocolScriptHash. + lastLogicHash: initial.protocolScriptHash + }; + doRefresh = /*#__PURE__*/function () { + var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { + var oneShotPolicyId, snapshot, detected, previous, next, _options$onVersionCha; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + oneShotPolicyId = state.instance.oneShotPolicyId; + _context.n = 1; + return (0, _detectParams.fetchProxyLogicSnapshot)(blaze.provider, oneShotPolicyId); + case 1: + snapshot = _context.v; + if (!(snapshot.logicHash === state.lastLogicHash)) { + _context.n = 2; + break; + } + return _context.a(2); + case 2: + _context.n = 3; + return (0, _detectParams.matchProtocolVersion)(snapshot, oneShotPolicyId, detectInput); + case 3: + detected = _context.v; + previous = state.instance.version; + _context.n = 4; + return createInstance(_objectSpread(_objectSpread({}, detected), {}, { + scriptDeploymentAddress: carriedExtras.scriptDeploymentAddress, + defaultSlippageToleranceBps: carriedExtras.defaultSlippageToleranceBps + })); + case 4: + next = _context.v; + state.instance = next; + state.lastLogicHash = snapshot.logicHash; + if (next.version !== previous) { + console.warn("[realfi-sdk] Protocol version changed: ".concat(previous, " -> ").concat(next.version, ". Order builders now target ").concat(next.version, "."), { + previous: previous, + next: next.version + }); + // A throwing partner callback must not break the build. + try { + options === null || options === void 0 || (_options$onVersionCha = options.onVersionChange) === null || _options$onVersionCha === void 0 || _options$onVersionCha.call(options, previous, next.version); + } catch (callbackError) { + console.warn("[realfi-sdk] onVersionChange threw", callbackError); + } + } + case 5: + return _context.a(2); + } + }, _callee); + })); + return function doRefresh() { + return _ref.apply(this, arguments); + }; + }(); // Concurrent builds share one in-flight refresh. + refresh = function refresh() { + if (!state.inflightRefresh) { + state.inflightRefresh = doRefresh()["finally"](function () { + state.inflightRefresh = undefined; + }); + } + return state.inflightRefresh; + }; // Delegating proxy: members always resolve against the live instance, so a + // version switch also switches the available surface (e.g. V1-line-only + // builders). Order builds refresh first; everything else passes through. + return _context3.a(2, new Proxy(Object.create(null), { + get: function get(_target, prop) { + var live = state.instance; + var value = live[prop]; + if (typeof value !== "function") return value; + if (isOrderBuilder(prop)) { + return /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() { + var current, + builder, + _len, + args, + _key, + _args2 = arguments, + _t; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.p = _context2.n) { + case 0: + _context2.p = 0; + _context2.n = 1; + return refresh(); + case 1: + _context2.n = 4; + break; + case 2: + _context2.p = 2; + _t = _context2.v; + if (!(_t instanceof _detectParams.UnknownProtocolVersionError || requiresFreshVersion(prop))) { + _context2.n = 3; + break; + } + throw _t; + case 3: + // Transient failure (e.g. provider blip): build on the last known + // version — no worse than an "at-init" instance. + console.warn("[realfi-sdk] Protocol-version refresh failed; ".concat(prop, " builds against last known version ").concat(state.instance.version, "."), _t); + case 4: + current = state.instance; + builder = current[prop]; + if (!(typeof builder !== "function")) { + _context2.n = 5; + break; + } + throw new Error("[realfi-sdk] ".concat(prop, " is not available on protocol version ").concat(state.instance.version, "; the live protocol version changed since this SDK was created.")); + case 5: + for (_len = _args2.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = _args2[_key]; + } + return _context2.a(2, builder.apply(state.instance, args)); + } + }, _callee2, null, [[0, 2]]); + })); + } + return value.bind(state.instance); + }, + has: function has(_target, prop) { + return prop in state.instance; + }, + set: function set(_target, prop, value) { + state.instance[prop] = value; + return true; + }, + getPrototypeOf: function getPrototypeOf() { + return Object.getPrototypeOf(state.instance); + }, + ownKeys: function ownKeys() { + return Reflect.ownKeys(state.instance); + }, + getOwnPropertyDescriptor: function getOwnPropertyDescriptor(_target, prop) { + var descriptor = Reflect.getOwnPropertyDescriptor(state.instance, prop); + // The proxy target is an empty object; reported descriptors must be + // configurable to satisfy proxy invariants. + return descriptor ? _objectSpread(_objectSpread({}, descriptor), {}, { + configurable: true + }) : undefined; + } + })); + } + }, _callee3); + })); + return _createPartnerCardanoSDK.apply(this, arguments); +} +//# sourceMappingURL=partner-dispatcher.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/partner-dispatcher.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/partner-dispatcher.js.map new file mode 100644 index 0000000000..c797eb41d6 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/partner-dispatcher.js.map @@ -0,0 +1 @@ +{"version":3,"file":"partner-dispatcher.js","names":["_index","require","_detectParams","_typeof","o","Symbol","iterator","constructor","prototype","_regenerator","e","t","r","n","toStringTag","i","c","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","ownKeys","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","_next","_throw","isOrderBuilder","prop","startsWith","requiresFreshVersion","createPartnerCardanoSDK","_x","_x2","_x3","_x4","_createPartnerCardanoSDK","_callee3","blaze","params","clientSource","options","_options$versionDetec","createInstance","initial","detectInput","carriedExtras","state","doRefresh","refresh","_context3","RealfiSDK","versionDetection","proxyBootstrap","treasuryBootstrap","stakingVaultBootstrap","yieldOracleBootstrap","undefined","assetNameHex","sUSDrAssetNameHex","enableTrace","instance","lastLogicHash","protocolScriptHash","_ref","_callee","oneShotPolicyId","snapshot","detected","previous","next","_options$onVersionCha","_context","fetchProxyLogicSnapshot","provider","logicHash","matchProtocolVersion","version","scriptDeploymentAddress","defaultSlippageToleranceBps","console","warn","concat","onVersionChange","callbackError","inflightRefresh","Proxy","get","_target","live","_callee2","current","builder","_len","args","_key","_args2","_t","_context2","UnknownProtocolVersionError","Error","Array","has","set","Reflect","descriptor"],"sources":["../../../src/sdk/partner-dispatcher.ts"],"sourcesContent":["// Per-build protocol-version dispatch for the partner facade (\".\" entry).\n// First-party consumers (\"./internal\") keep frozen version instances.\n\nimport type { Provider } from \"@blaze-cardano/query\";\nimport type { Blaze, Core, Wallet } from \"@blaze-cardano/sdk\";\n\nimport { RealfiSDK } from \"./index.js\";\nimport type {\n IRealfiCardanoCreateOptions,\n TDetectedVersion,\n TRealfiCardanoSDK,\n} from \"./partner.js\";\nimport type { TClientSource } from \"./shared/client-id.js\";\nimport {\n fetchProxyLogicSnapshot,\n type IDetectInput,\n matchProtocolVersion,\n type TDetectedSDKParams,\n UnknownProtocolVersionError,\n} from \"./shared/detect-params.js\";\n\n// Identity fields the dispatcher reads off a live version instance; every\n// other member is reached by property delegation.\ninterface IVersionInstance {\n readonly version: TDetectedVersion;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n}\n\ninterface IDispatchState {\n instance: IVersionInstance;\n lastLogicHash: string;\n inflightRefresh?: Promise;\n}\n\n// Caller-supplied build options carried into a recreated instance. Cached\n// referenceInputs stay behind — they belong to the previous version's scripts.\ntype TCarriedParamExtras = {\n scriptDeploymentAddress?: unknown;\n defaultSlippageToleranceBps?: unknown;\n};\n\nconst isOrderBuilder = (prop: PropertyKey): prop is string =>\n typeof prop === \"string\" && prop.startsWith(\"build\");\n\nconst requiresFreshVersion = (prop: string): boolean =>\n prop === \"buildStakeContinuation\";\n\n/**\n * Create a partner SDK that re-resolves the live protocol version before each\n * order build and dispatches to the matching version instance.\n *\n * Detection identity: the one-shot NFT policy (deterministic from\n * `proxyBootstrap`). The proxy UTxO ref changes on every settings update, but\n * the NFT lookup follows it, so each refresh is exactly one provider call.\n * The fetched `logic` hash is compared against the current instance's\n * `protocolScriptHash` — equal in every detectable version — and only on a\n * mismatch does the (local, provider-free) version matcher run and the\n * underlying instance get recreated, preserving `clientSource` so partner\n * order metadata survives the switch. Read helpers never trigger a refresh.\n *\n * No result caching beyond the last observed hash: freshness only shrinks the\n * stale window — correctness is enforced on-chain, and a stale-version build\n * is recovered via order invalidation.\n *\n * Refresh failure policy: an {@link UnknownProtocolVersionError} rejects the\n * build — the chain moved to a version this SDK cannot target. Any other\n * refresh error (e.g. a transient provider failure) logs a warning and the\n * build proceeds on the last known version, which is exactly what an\n * `\"at-init\"` instance would have produced. Stake continuations are stricter\n * under this `\"per-build\"` dispatcher: their address, schema, and\n * exchange-rate quote must all match the current deployment, so\n * `buildStakeContinuation` fails closed on every refresh error here. An\n * `\"at-init\"` instance, or a raw version-pinned SDK used outside this\n * dispatcher, never refreshes at all and carries no such guarantee.\n *\n * Method identity is unstable across accesses (`sdk.buildX !== sdk.buildX`):\n * each access returns a fresh wrapper over the live instance, by design.\n */\nexport async function createPartnerCardanoSDK<\n P extends Provider,\n W extends Wallet,\n>(\n blaze: Blaze,\n params: TDetectedSDKParams,\n clientSource: TClientSource,\n options?: IRealfiCardanoCreateOptions,\n): Promise> {\n const createInstance = (p: TDetectedSDKParams): Promise =>\n (\n RealfiSDK as {\n create: (\n blaze: Blaze,\n params: TDetectedSDKParams & { clientSource?: TClientSource },\n ) => Promise;\n }\n ).create(blaze, { ...p, clientSource }) as Promise;\n\n const initial = await createInstance(params);\n\n if ((options?.versionDetection ?? \"per-build\") === \"at-init\") {\n // Frozen instance — never re-detects.\n return initial as unknown as TRealfiCardanoSDK;\n }\n\n const detectInput: IDetectInput = {\n proxyBootstrap: params.proxyBootstrap,\n treasuryBootstrap: params.treasuryBootstrap,\n stakingVaultBootstrap: params.stakingVaultBootstrap,\n yieldOracleBootstrap:\n \"yieldOracleBootstrap\" in params\n ? params.yieldOracleBootstrap\n : undefined,\n assetNameHex: params.assetNameHex,\n sUSDrAssetNameHex: params.sUSDrAssetNameHex,\n enableTrace: params.enableTrace,\n };\n const carriedExtras = params as TCarriedParamExtras;\n\n const state: IDispatchState = {\n instance: initial,\n // Every detectable version's proxy datum `logic` hash is that version\n // class's protocolScriptHash.\n lastLogicHash: initial.protocolScriptHash,\n };\n\n const doRefresh = async (): Promise => {\n const oneShotPolicyId = state.instance\n .oneShotPolicyId as unknown as Core.Hash28ByteBase16;\n const snapshot = await fetchProxyLogicSnapshot(\n blaze.provider,\n oneShotPolicyId,\n );\n if (snapshot.logicHash === state.lastLogicHash) return;\n\n const detected = await matchProtocolVersion(\n snapshot,\n oneShotPolicyId,\n detectInput,\n );\n const previous = state.instance.version;\n const next = await createInstance({\n ...detected,\n scriptDeploymentAddress: carriedExtras.scriptDeploymentAddress,\n defaultSlippageToleranceBps: carriedExtras.defaultSlippageToleranceBps,\n } as TDetectedSDKParams);\n state.instance = next;\n state.lastLogicHash = snapshot.logicHash;\n if (next.version !== previous) {\n console.warn(\n `[realfi-sdk] Protocol version changed: ${previous} -> ${next.version}. Order builders now target ${next.version}.`,\n { previous, next: next.version },\n );\n // A throwing partner callback must not break the build.\n try {\n options?.onVersionChange?.(previous, next.version);\n } catch (callbackError) {\n console.warn(\"[realfi-sdk] onVersionChange threw\", callbackError);\n }\n }\n };\n\n // Concurrent builds share one in-flight refresh.\n const refresh = (): Promise => {\n if (!state.inflightRefresh) {\n state.inflightRefresh = doRefresh().finally(() => {\n state.inflightRefresh = undefined;\n });\n }\n return state.inflightRefresh;\n };\n\n // Delegating proxy: members always resolve against the live instance, so a\n // version switch also switches the available surface (e.g. V1-line-only\n // builders). Order builds refresh first; everything else passes through.\n return new Proxy(Object.create(null) as object, {\n get(_target, prop) {\n const live = state.instance as unknown as Record;\n const value = live[prop];\n if (typeof value !== \"function\") return value;\n if (isOrderBuilder(prop)) {\n return async (...args: unknown[]): Promise => {\n try {\n await refresh();\n } catch (refreshError) {\n // Unknown on-chain version: this SDK cannot build a valid order.\n if (\n refreshError instanceof UnknownProtocolVersionError ||\n requiresFreshVersion(prop)\n ) {\n throw refreshError;\n }\n // Transient failure (e.g. provider blip): build on the last known\n // version — no worse than an \"at-init\" instance.\n console.warn(\n `[realfi-sdk] Protocol-version refresh failed; ${prop} builds against last known version ${state.instance.version}.`,\n refreshError,\n );\n }\n const current = state.instance as unknown as Record<\n PropertyKey,\n unknown\n >;\n const builder = current[prop];\n if (typeof builder !== \"function\") {\n throw new Error(\n `[realfi-sdk] ${prop} is not available on protocol version ${state.instance.version}; the live protocol version changed since this SDK was created.`,\n );\n }\n return (builder as (...a: unknown[]) => unknown).apply(\n state.instance,\n args,\n );\n };\n }\n return (value as (...a: unknown[]) => unknown).bind(state.instance);\n },\n has(_target, prop) {\n return prop in (state.instance as object);\n },\n set(_target, prop, value) {\n (state.instance as unknown as Record)[prop] = value;\n return true;\n },\n getPrototypeOf() {\n return Object.getPrototypeOf(state.instance);\n },\n ownKeys() {\n return Reflect.ownKeys(state.instance as object);\n },\n getOwnPropertyDescriptor(_target, prop) {\n const descriptor = Reflect.getOwnPropertyDescriptor(\n state.instance as object,\n prop,\n );\n // The proxy target is an empty object; reported descriptors must be\n // configurable to satisfy proxy invariants.\n return descriptor ? { ...descriptor, configurable: true } : undefined;\n },\n }) as TRealfiCardanoSDK;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/partner.js b/modules/realfi-partner-sdk/dist/cjs/sdk/partner.js new file mode 100644 index 0000000000..b786d835eb --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/partner.js @@ -0,0 +1,6 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +//# sourceMappingURL=partner.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/partner.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/partner.js.map new file mode 100644 index 0000000000..7763c9ee8a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/partner.js.map @@ -0,0 +1 @@ +{"version":3,"file":"partner.js","names":[],"sources":["../../../src/sdk/partner.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport type { Blaze, Wallet } from \"@blaze-cardano/sdk\";\n\nimport type {\n IDetectInput,\n TDetectedSDKParams,\n TNetworkPreset,\n} from \"./shared/detect-params.js\";\nimport type { IRealfiSDKParamsV0_4, RealfiSDKV0_4 } from \"./v0_4/index.js\";\nimport type { IRealfiSDKParamsV1_0, RealfiSDKV1_0 } from \"./v1_0/index.js\";\nimport type {\n IRealfiSDKParamsV1_0Rc1,\n RealfiSDKV1_0Rc1,\n} from \"./v1_0_rc1/index.js\";\nimport type {\n IRealfiSDKParamsV1_1Rc1,\n RealfiSDKV1_1Rc1,\n} from \"./v1_1_rc1/index.js\";\nexport type {\n IBuildStakeContinuationParams,\n IStakeContinuation,\n IStakeContinuationSwap,\n} from \"./v1/family.js\";\n\n// Version discriminant: a readonly literal on every current-line SDK class,\n// so TRealfiCardanoSDK narrows as a tagged union.\ntype TCardanoVersionProp = \"version\";\n\n// Read helpers available on every current-line SDK.\ntype TCardanoReadMethods =\n | \"getRawProxyDatum\"\n | \"getParsedProxyDatum\"\n | \"getSettings\"\n | \"getTreasuryDatum\"\n | \"getVaultDatum\"\n | \"getUsdrAssetId\"\n | \"getSusdrAssetId\";\n\n// Order builders common to V0_4 and the V1 line.\ntype TCardanoOrderMethods =\n | \"buildMintOrderTx\"\n | \"buildRedeemOrderTx\"\n | \"buildStakeOrderTx\"\n | \"buildUnstakeOrderTx\"\n | \"buildDepositOrderTx\"\n | \"buildWithdrawOrderTx\"\n | \"buildCancelOrdersTx\"\n | \"buildClaimTimelockTx\";\n\n// V1-line order builder on the partner surface; direct mint/burn stay internal-only.\ntype TCardanoOrderMethodsV1 =\n | \"buildInvalidatedOrdersTx\"\n | \"buildStakeContinuation\";\n\n/** Partner-facing surface of the V0_4 SDK: order builders + read helpers only. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiCardanoSDKV0_4<\n P extends Provider,\n W extends Wallet,\n> extends Pick<\n RealfiSDKV0_4,\n TCardanoVersionProp | TCardanoReadMethods | TCardanoOrderMethods\n> {}\n\n/** Partner-facing surface of the V1_0 SDK. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiCardanoSDKV1_0<\n P extends Provider,\n W extends Wallet,\n> extends Pick<\n RealfiSDKV1_0,\n | TCardanoVersionProp\n | TCardanoReadMethods\n | TCardanoOrderMethods\n | TCardanoOrderMethodsV1\n> {}\n\n/** Partner-facing surface of the V1_0_Rc1 SDK. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiCardanoSDKV1_0Rc1<\n P extends Provider,\n W extends Wallet,\n> extends Pick<\n RealfiSDKV1_0Rc1,\n | TCardanoVersionProp\n | TCardanoReadMethods\n | TCardanoOrderMethods\n | TCardanoOrderMethodsV1\n> {}\n\n/** Partner-facing surface of the V1_1_Rc1 SDK. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiCardanoSDKV1_1Rc1<\n P extends Provider,\n W extends Wallet,\n> extends Pick<\n RealfiSDKV1_1Rc1,\n | TCardanoVersionProp\n | TCardanoReadMethods\n | TCardanoOrderMethods\n | TCardanoOrderMethodsV1\n> {}\n\n/** Any partner-facing SDK the facade can return after version detection. */\nexport type TRealfiCardanoSDK

=\n | IRealfiCardanoSDKV0_4\n | IRealfiCardanoSDKV1_0\n | IRealfiCardanoSDKV1_0Rc1\n | IRealfiCardanoSDKV1_1Rc1;\n\n/** Protocol version as reported by on-chain detection. */\nexport type TDetectedVersion = TDetectedSDKParams[\"version\"];\n\n/** Version-detection behavior of SDK instances returned by `create`. */\nexport type TVersionDetectionMode = \"per-build\" | \"at-init\";\n\n/** Options for the partner facade's `create`. */\nexport interface IRealfiCardanoCreateOptions {\n /**\n * `\"per-build\"` (default): before every order build (`build*`), re-resolve\n * the live protocol version — one provider lookup — and dispatch to the\n * matching version instance, so an on-chain protocol upgrade needs no\n * re-init. Read helpers (`get*`) never re-detect; they use the version as of\n * the last check. `\"at-init\"`: the instance is frozen at the version it was\n * created with and never re-detects.\n *\n * This binding happens at property access, not at call time — a cached\n * reference (`const f = sdk.getUsdrAssetId`) keeps targeting the instance\n * live when it was read, even if a later `build*Tx` call switches versions.\n * Call `sdk.getX()` directly to always read the live version.\n *\n * Refresh failures under `\"per-build\"`: an `UnknownProtocolVersionError`\n * rejects the build (the chain runs a version this SDK does not know); any\n * other error — e.g. a transient provider failure — logs a warning and the\n * build proceeds on the last known version. `buildStakeContinuation` fails\n * closed on every refresh error under `\"per-build\"`, because its address,\n * schema, and quote must all come from the currently deployed version.\n * `\"at-init\"` instances, and raw version-pinned SDKs used outside this\n * factory, never refresh and so carry no such guarantee.\n */\n versionDetection?: TVersionDetectionMode;\n /**\n * Called once per observed protocol-version change, after builders have\n * switched to the new version. Exceptions are logged and swallowed.\n */\n onVersionChange?: (\n previous: TDetectedVersion,\n next: TDetectedVersion,\n ) => void;\n}\n\n/**\n * Partner-facing view of the RealfiSDK facade. `create` returns the narrowed\n * `IRealfiCardanoSDK` surface (order builders + read helpers); deploy/operator\n * methods are reachable only through the internal entry point.\n *\n * The static return type reflects the version at creation time. Under\n * `\"per-build\"` detection the runtime instance may later dispatch to a newer\n * protocol version — the partner surface is call-compatible across versions,\n * so existing call sites keep working; `version` reports the live value.\n */\nexport interface IRealfiCardanoFactory {\n create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_4,\n options?: IRealfiCardanoCreateOptions,\n ): Promise>;\n create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0,\n options?: IRealfiCardanoCreateOptions,\n ): Promise>;\n create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0Rc1,\n options?: IRealfiCardanoCreateOptions,\n ): Promise>;\n create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_1Rc1,\n options?: IRealfiCardanoCreateOptions,\n ): Promise>;\n create

(\n blaze: Blaze,\n params: TDetectedSDKParams,\n options?: IRealfiCardanoCreateOptions,\n ): Promise>;\n detectParams(\n provider: Provider,\n config: IDetectInput,\n ): Promise;\n detectParams(\n provider: Provider,\n network: TNetworkPreset,\n ): Promise;\n}\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/base.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/base.js new file mode 100644 index 0000000000..f70023d8e4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/base.js @@ -0,0 +1,516 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.RealfiSDKBase = void 0; +var _sdk = require("@blaze-cardano/sdk"); +var _clientId = require("./client-id.js"); +var _timelock = require("./timelock.js"); +var _utils = require("./utils.js"); +function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } +function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +/** + * Base interface for SDK version implementations. + * Each version implements this with version-specific logic. + */ + +/** + * Extended interface for SDK versions with treasury support (V0_1+) + */ + +var isRecord = function isRecord(value) { + return _typeof(value) === "object" && value !== null; +}; +var isFlatProxySettings = function isFlatProxySettings(value) { + return isRecord(value) && "mint_permission" in value && "burn_permission" in value && "withdraw_permission" in value && "deposit_permission" in value && "stake_permission" in value && "unstake_permission" in value && Array.isArray(value.reserve_assets); +}; +var isNestedProxySettings = function isNestedProxySettings(value) { + return isRecord(value) && isRecord(value.permissions) && "mint" in value.permissions && "burn" in value.permissions && "withdraw" in value.permissions && "deposit" in value.permissions && "stake" in value.permissions && "unstake" in value.permissions && isRecord(value.config) && Array.isArray(value.config.reserve_assets); +}; +/** + * Abstract base class for SDK versions. + * Provides common implementation and utilities. + */ +var RealfiSDKBase = exports.RealfiSDKBase = /*#__PURE__*/function () { + function RealfiSDKBase(blaze, params, cachedReferenceInputs) { + var _params$enableTrace, _params$clientSource; + _classCallCheck(this, RealfiSDKBase); + /** Blaze instance for blockchain interactions */ + _defineProperty(this, "blaze", void 0); + /** Bootstrap parameters */ + _defineProperty(this, "proxyBootstrap", void 0); + /** Asset name hex for the stablecoin */ + _defineProperty(this, "assetNameHex", void 0); + /** Cached reference inputs for performance (populated on first fetch) */ + _defineProperty(this, "cachedReferenceInputs", void 0); + /** + * Address used to deploy reference scripts and to resolve them from. + * When undefined, Blaze's burn address is used for both. + */ + _defineProperty(this, "scriptDeploymentAddress", void 0); + /** Cached raw proxy datum result (populated on first fetch) */ + _defineProperty(this, "cachedRawProxyDatumResult", void 0); + /** Cached parsed proxy datum result (populated on first fetch) */ + _defineProperty(this, "cachedProxyDatumResult", void 0); + /** One-shot output reference (derived from bootstrap) */ + _defineProperty(this, "oneShotTxoRef", void 0); + /** Enable trace output in Plutus scripts */ + _defineProperty(this, "enableTrace", void 0); + /** Origin attached to all built order transactions. */ + _defineProperty(this, "clientSource", void 0); + /** SDK version attached to all built order transactions. */ + _defineProperty(this, "sdkVersion", void 0); + // Abstract properties - each version must provide these + _defineProperty(this, "version", void 0); + _defineProperty(this, "stablecoinPolicyId", void 0); + _defineProperty(this, "oneShotPolicyId", void 0); + _defineProperty(this, "protocolScriptHash", void 0); + // Scripts - each version stores its own instantiated scripts + _defineProperty(this, "oneShotScript", void 0); + _defineProperty(this, "protocolScript", void 0); + _defineProperty(this, "mintProxyScript", void 0); + this.blaze = blaze; + this.proxyBootstrap = params.proxyBootstrap; + this.assetNameHex = params.assetNameHex; + this.enableTrace = (_params$enableTrace = params.enableTrace) !== null && _params$enableTrace !== void 0 ? _params$enableTrace : false; + this.cachedReferenceInputs = cachedReferenceInputs !== null && cachedReferenceInputs !== void 0 ? cachedReferenceInputs : {}; + this.scriptDeploymentAddress = params.scriptDeploymentAddress; + this.clientSource = (_params$clientSource = params.clientSource) !== null && _params$clientSource !== void 0 ? _params$clientSource : _clientId.DEFAULT_CLIENT_SOURCE; + this.sdkVersion = _clientId.SDK_VERSION; + this.oneShotTxoRef = { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }; + } + + /** Get the network from blaze */ + return _createClass(RealfiSDKBase, [{ + key: "network", + get: function get() { + return this.blaze.provider.network; + } + + /** + * Start a transaction with a single setMetadata call. Origin label (55534473) is always + * present and not overridable; extra labels are merged in before the origin is set. + */ + }, { + key: "newOrderTransaction", + value: function newOrderTransaction(extraLabels) { + var map = new Map(extraLabels !== null && extraLabels !== void 0 ? extraLabels : []); + map.set(_timelock.ORDER_ORIGIN_METADATA_LABEL, (0, _timelock.buildOrderOriginMetadatum)(this.clientSource, this.sdkVersion)); + return this.blaze.newTransaction().setMetadata(new _sdk.Core.Metadata(map)); + } + + /** + * Helper to get reference inputs for scripts. + * Fetched values are cached for subsequent calls. + */ + }, { + key: "getScriptReferenceInputs", + value: (function () { + var _getScriptReferenceInputs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(scriptHashes) { + var cached, result; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + cached = {}; + if (this.cachedReferenceInputs.protocolRefInput) { + cached.protocol = this.cachedReferenceInputs.protocolRefInput; + } + if (this.cachedReferenceInputs.proxyRefInput) { + cached.proxy = this.cachedReferenceInputs.proxyRefInput; + } + if (this.cachedReferenceInputs.treasuryRefInput) { + cached.treasury = this.cachedReferenceInputs.treasuryRefInput; + } + if (this.cachedReferenceInputs.orderRefInput) { + cached.order = this.cachedReferenceInputs.orderRefInput; + } + if (this.cachedReferenceInputs.stakingVaultRefInput) { + cached.stakingVault = this.cachedReferenceInputs.stakingVaultRefInput; + } + // V1.0 additional protocol scripts + if (this.cachedReferenceInputs.protocolMintRefInput) { + cached.protocolMint = this.cachedReferenceInputs.protocolMintRefInput; + } + if (this.cachedReferenceInputs.protocolStakeRefInput) { + cached.protocolStake = this.cachedReferenceInputs.protocolStakeRefInput; + } + if (this.cachedReferenceInputs.protocolManagementRefInput) { + cached.protocolManagement = this.cachedReferenceInputs.protocolManagementRefInput; + } + _context.n = 1; + return (0, _utils.getReferenceInputs)(this.blaze, scriptHashes, cached, this.scriptDeploymentAddress); + case 1: + result = _context.v; + // Cache fetched values for subsequent calls + if (result.protocol && !this.cachedReferenceInputs.protocolRefInput) { + this.cachedReferenceInputs.protocolRefInput = result.protocol; + } + if (result.proxy && !this.cachedReferenceInputs.proxyRefInput) { + this.cachedReferenceInputs.proxyRefInput = result.proxy; + } + if (result.treasury && !this.cachedReferenceInputs.treasuryRefInput) { + this.cachedReferenceInputs.treasuryRefInput = result.treasury; + } + if (result.order && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = result.order; + } + if (result.stakingVault && !this.cachedReferenceInputs.stakingVaultRefInput) { + this.cachedReferenceInputs.stakingVaultRefInput = result.stakingVault; + } + // V1.0 additional protocol scripts caching + if (result.protocolMint && !this.cachedReferenceInputs.protocolMintRefInput) { + this.cachedReferenceInputs.protocolMintRefInput = result.protocolMint; + } + if (result.protocolStake && !this.cachedReferenceInputs.protocolStakeRefInput) { + this.cachedReferenceInputs.protocolStakeRefInput = result.protocolStake; + } + if (result.protocolManagement && !this.cachedReferenceInputs.protocolManagementRefInput) { + this.cachedReferenceInputs.protocolManagementRefInput = result.protocolManagement; + } + return _context.a(2, result); + } + }, _callee, this); + })); + function getScriptReferenceInputs(_x) { + return _getScriptReferenceInputs.apply(this, arguments); + } + return getScriptReferenceInputs; + }() + /** + * Resolve the bootstrap UTXO from the provider. + * This will fail if the UTXO has already been consumed (i.e., the one-shot token was minted). + */ + ) + }, { + key: "resolveBootstrapUtxo", + value: (function () { + var _resolveBootstrapUtxo = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() { + var utxos, utxo; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + _context2.n = 1; + return this.blaze.provider.resolveUnspentOutputs([new _sdk.Core.TransactionInput(this.oneShotTxoRef.transaction_id, this.oneShotTxoRef.output_index)]); + case 1: + utxos = _context2.v; + utxo = utxos[0]; + if (utxo) { + _context2.n = 2; + break; + } + throw new Error("Bootstrap UTXO not found. It may have already been consumed (one-shot token already minted)."); + case 2: + return _context2.a(2, utxo); + } + }, _callee2, this); + })); + function resolveBootstrapUtxo() { + return _resolveBootstrapUtxo.apply(this, arguments); + } + return resolveBootstrapUtxo; + }() // ───────────────────────────────────────────────────────────────────────────── + // Common Protocol Operations (shared across all versions) + // ───────────────────────────────────────────────────────────────────────────── + /** + * Deploy the protocol script as a reference script. + */ + ) + }, { + key: "deployProtocol", + value: function () { + var _deployProtocol = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() { + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + return _context3.a(2, (0, _utils.deployScript)(this.blaze, this.protocolScript, this.scriptDeploymentAddress)); + } + }, _callee3, this); + })); + function deployProtocol() { + return _deployProtocol.apply(this, arguments); + } + return deployProtocol; + }() + /** + * Deploy the mint proxy script as a reference script. + */ + }, { + key: "deployMintProxy", + value: (function () { + var _deployMintProxy = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() { + return _regenerator().w(function (_context4) { + while (1) switch (_context4.n) { + case 0: + return _context4.a(2, (0, _utils.deployScript)(this.blaze, this.mintProxyScript, this.scriptDeploymentAddress)); + } + }, _callee4, this); + })); + function deployMintProxy() { + return _deployMintProxy.apply(this, arguments); + } + return deployMintProxy; + }() + /** + * Register the protocol stake credential. + */ + ) + }, { + key: "registerProtocolStake", + value: function registerProtocolStake() { + var stakeCredential = (0, _utils.credentialFromScript)(this.protocolScript); + var registerTx = this.blaze.newTransaction().addRegisterStake(stakeCredential); + return registerTx; + } + + /** + * Get the protocol reward account. + */ + }, { + key: "getProtocolRewardAccount", + value: function getProtocolRewardAccount() { + return (0, _utils.rewardAccountFromScript)(this.protocolScript, this.network); + } + + /** + * Get version-agnostic proxy settings. + * Extracts only the common fields shared across V0_2+ protocol versions. + */ + }, { + key: "getSettings", + value: (function () { + var _getSettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() { + var _yield$this$getParsed, parsedProxyDatum, settings; + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + _context5.n = 1; + return this.getParsedProxyDatum(); + case 1: + _yield$this$getParsed = _context5.v; + parsedProxyDatum = _yield$this$getParsed.parsedProxyDatum; + settings = parsedProxyDatum.settings; + if (!isFlatProxySettings(settings)) { + _context5.n = 2; + break; + } + return _context5.a(2, { + mint_permission: settings.mint_permission, + burn_permission: settings.burn_permission, + withdraw_permission: settings.withdraw_permission, + deposit_permission: settings.deposit_permission, + stake_permission: settings.stake_permission, + unstake_permission: settings.unstake_permission, + reserve_assets: settings.reserve_assets + }); + case 2: + if (!isNestedProxySettings(settings)) { + _context5.n = 3; + break; + } + return _context5.a(2, { + mint_permission: settings.permissions.mint, + burn_permission: settings.permissions.burn, + withdraw_permission: settings.permissions.withdraw, + deposit_permission: settings.permissions.deposit, + stake_permission: settings.permissions.stake, + unstake_permission: settings.permissions.unstake, + reserve_assets: settings.config.reserve_assets + }); + case 3: + throw new Error("getSettings() is not supported for protocol version ".concat(this.version)); + case 4: + return _context5.a(2); + } + }, _callee5, this); + })); + function getSettings() { + return _getSettings.apply(this, arguments); + } + return getSettings; + }() /** The USDr asset ID (stablecoin policy + USDr asset name). */) + }, { + key: "getUsdrAssetId", + value: function getUsdrAssetId() { + return _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Timelock Operations (shared across versions with staking support) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction that claims USDr locked in a timelock address after + * the unstake cooldown has expired. + * + * Reconstructs the timelock native script for the owner's key hash and the + * original unlock slot, then spends the UTxO. `owner` is the timelock owner + * (defaults to the connected wallet) and is set as the required signer, so a + * custodian holding the user's key can claim. The released USDr goes to + * `destination`, or to `owner` when only an owner is given; with neither it + * returns to the connected wallet. + * + * A single owner key has two timelock shapes in the protocol, differing only + * in element order: `buildUnstakeOrderTx` locks to + * `AllOf { Signature, After }` and the treasury/multisig unstake path to + * `AllOf { After, Signature }`. They hash differently, so which one applies + * is read off the UTxO's own locking address rather than assumed. + */ + }, { + key: "buildClaimTimelockTx", + value: function () { + var _buildClaimTimelockTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(params) { + var _params$owner, _ownerAddress$getProp, _params$destination; + var ownerAddress, ownerKeyHash, input, _yield$this$blaze$pro, _yield$this$blaze$pro2, utxo, nativeScript, scriptWrapped, tx, recipient, _t; + return _regenerator().w(function (_context6) { + while (1) switch (_context6.n) { + case 0: + if (!((_params$owner = params.owner) !== null && _params$owner !== void 0)) { + _context6.n = 1; + break; + } + _t = _params$owner; + _context6.n = 3; + break; + case 1: + _context6.n = 2; + return this.blaze.wallet.getChangeAddress(); + case 2: + _t = _context6.v; + case 3: + ownerAddress = _t; + ownerKeyHash = (_ownerAddress$getProp = ownerAddress.getProps().paymentPart) === null || _ownerAddress$getProp === void 0 ? void 0 : _ownerAddress$getProp.hash; + if (ownerKeyHash) { + _context6.n = 4; + break; + } + throw new Error("Timelock owner address has no payment key credential"); + case 4: + input = new _sdk.Core.TransactionInput(_sdk.Core.TransactionId(params.resultUtxo.txHash), BigInt(params.resultUtxo.index)); + _context6.n = 5; + return this.blaze.provider.resolveUnspentOutputs([input]); + case 5: + _yield$this$blaze$pro = _context6.v; + _yield$this$blaze$pro2 = _slicedToArray(_yield$this$blaze$pro, 1); + utxo = _yield$this$blaze$pro2[0]; + if (utxo) { + _context6.n = 6; + break; + } + throw new Error("Could not resolve UTxO ".concat(params.resultUtxo.txHash, "#").concat(params.resultUtxo.index)); + case 6: + nativeScript = (0, _timelock.resolveTimelockNativeScript)(utxo.output().address(), ownerKeyHash, params.unlockSlot); + scriptWrapped = _sdk.Core.Script.newNativeScript(nativeScript); + tx = this.newOrderTransaction().setValidFrom(_sdk.Core.Slot(Number(params.unlockSlot))).provideScript(scriptWrapped).addRequiredSigner(_sdk.Core.Ed25519KeyHashHex(ownerKeyHash)).addInput(utxo); // Route funds to `destination`, else to an explicit `owner` (so a custodial + // claim reaches the user); with neither, value returns to the connected + // wallet as change. + recipient = (_params$destination = params.destination) !== null && _params$destination !== void 0 ? _params$destination : params.owner; + if (recipient) { + (0, _utils.addDirectOutput)(tx, recipient, utxo.output().amount()); + } + return _context6.a(2, tx); + } + }, _callee6, this); + })); + function buildClaimTimelockTx(_x2) { + return _buildClaimTimelockTx.apply(this, arguments); + } + return buildClaimTimelockTx; + }() + /** + * Fetch the live proxy UTxO and inline datum without attempting a + * version-specific parse. Cached after first fetch. + * + * `readSingletonDatum` both retries the lookup (a not-found answer is the + * provider's index lagging the UTxO's latest move, not a missing proxy — + * Blockfrost returns HTTP 404 in that window, Sentry TREASURY-ADMIN-API-G) + * and repairs a datum the provider reports as a hash. + */ + }, { + key: "getRawProxyDatum", + value: (function () { + var _getRawProxyDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() { + var _this$cachedProxyDatu, _proxyUtxo, _proxyDatum, _yield$readSingletonD, proxyUtxo, proxyDatum, result; + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + if (!this.cachedRawProxyDatumResult) { + _context7.n = 1; + break; + } + return _context7.a(2, this.cachedRawProxyDatumResult); + case 1: + if (!this.cachedProxyDatumResult) { + _context7.n = 2; + break; + } + _this$cachedProxyDatu = this.cachedProxyDatumResult, _proxyUtxo = _this$cachedProxyDatu.proxyUtxo, _proxyDatum = _this$cachedProxyDatu.proxyDatum; + this.cachedRawProxyDatumResult = { + proxyUtxo: _proxyUtxo, + proxyDatum: _proxyDatum + }; + return _context7.a(2, this.cachedRawProxyDatumResult); + case 2: + _context7.n = 3; + return (0, _utils.readSingletonDatum)(this.blaze.provider, _sdk.Core.AssetId(this.oneShotPolicyId)); + case 3: + _yield$readSingletonD = _context7.v; + proxyUtxo = _yield$readSingletonD.utxo; + proxyDatum = _yield$readSingletonD.datum; + result = { + proxyUtxo: proxyUtxo, + proxyDatum: proxyDatum + }; + this.cachedRawProxyDatumResult = result; + return _context7.a(2, result); + } + }, _callee7, this); + })); + function getRawProxyDatum() { + return _getRawProxyDatum.apply(this, arguments); + } + return getRawProxyDatum; + }() + /** + * @deprecated Use getParsedProxyDatum() or getRawProxyDatum() depending on + * whether the caller needs a version-specific schema parse. + */ + ) + }, { + key: "getProxyDatum", + value: (function () { + var _getProxyDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() { + return _regenerator().w(function (_context8) { + while (1) switch (_context8.n) { + case 0: + return _context8.a(2, this.getParsedProxyDatum()); + } + }, _callee8, this); + })); + function getProxyDatum() { + return _getProxyDatum.apply(this, arguments); + } + return getProxyDatum; + }() // Abstract methods - each version must implement these + ) + }]); +}(); +//# sourceMappingURL=base.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/base.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/base.js.map new file mode 100644 index 0000000000..21cf888e90 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/base.js.map @@ -0,0 +1 @@ +{"version":3,"file":"base.js","names":["_sdk","require","_clientId","_timelock","_utils","_slicedToArray","r","e","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","t","toString","call","slice","constructor","name","Array","from","test","length","n","l","Symbol","iterator","i","u","f","o","next","Object","done","push","value","isArray","_regenerator","toStringTag","c","prototype","Generator","create","_regeneratorDefine2","p","y","G","v","d","bind","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_defineProperty","_toPrimitive","_typeof","toPrimitive","String","Number","isRecord","isFlatProxySettings","reserve_assets","isNestedProxySettings","permissions","config","RealfiSDKBase","exports","blaze","params","cachedReferenceInputs","_params$enableTrace","_params$clientSource","proxyBootstrap","assetNameHex","enableTrace","scriptDeploymentAddress","clientSource","DEFAULT_CLIENT_SOURCE","sdkVersion","SDK_VERSION","oneShotTxoRef","transaction_id","txHash","output_index","outputIndex","get","provider","network","newOrderTransaction","extraLabels","map","Map","set","ORDER_ORIGIN_METADATA_LABEL","buildOrderOriginMetadatum","newTransaction","setMetadata","Core","Metadata","_getScriptReferenceInputs","_callee","scriptHashes","cached","result","_context","protocolRefInput","protocol","proxyRefInput","proxy","treasuryRefInput","treasury","orderRefInput","order","stakingVaultRefInput","stakingVault","protocolMintRefInput","protocolMint","protocolStakeRefInput","protocolStake","protocolManagementRefInput","protocolManagement","getReferenceInputs","getScriptReferenceInputs","_x","_resolveBootstrapUtxo","_callee2","utxos","utxo","_context2","resolveUnspentOutputs","TransactionInput","Error","resolveBootstrapUtxo","_deployProtocol","_callee3","_context3","deployScript","protocolScript","deployProtocol","_deployMintProxy","_callee4","_context4","mintProxyScript","deployMintProxy","registerProtocolStake","stakeCredential","credentialFromScript","registerTx","addRegisterStake","getProtocolRewardAccount","rewardAccountFromScript","_getSettings","_callee5","_yield$this$getParsed","parsedProxyDatum","settings","_context5","getParsedProxyDatum","mint_permission","burn_permission","withdraw_permission","deposit_permission","stake_permission","unstake_permission","mint","burn","withdraw","deposit","stake","unstake","concat","version","getSettings","getUsdrAssetId","AssetId","stablecoinPolicyId","_buildClaimTimelockTx","_callee6","_params$owner","_ownerAddress$getProp","_params$destination","ownerAddress","ownerKeyHash","input","_yield$this$blaze$pro","_yield$this$blaze$pro2","nativeScript","scriptWrapped","tx","recipient","_t","_context6","owner","wallet","getChangeAddress","getProps","paymentPart","hash","TransactionId","resultUtxo","BigInt","index","resolveTimelockNativeScript","output","address","unlockSlot","Script","newNativeScript","setValidFrom","Slot","provideScript","addRequiredSigner","Ed25519KeyHashHex","addInput","destination","addDirectOutput","amount","buildClaimTimelockTx","_x2","_getRawProxyDatum","_callee7","_this$cachedProxyDatu","_proxyUtxo","_proxyDatum","_yield$readSingletonD","proxyUtxo","proxyDatum","_context7","cachedRawProxyDatumResult","cachedProxyDatumResult","readSingletonDatum","oneShotPolicyId","datum","getRawProxyDatum","_getProxyDatum","_callee8","_context8","getProxyDatum"],"sources":["../../../../src/sdk/shared/base.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport { type Blaze, Core, TxBuilder, type Wallet } from \"@blaze-cardano/sdk\";\n\nimport {\n DEFAULT_CLIENT_SOURCE,\n SDK_VERSION,\n type TClientSource,\n} from \"./client-id.js\";\nimport {\n buildOrderOriginMetadatum,\n ORDER_ORIGIN_METADATA_LABEL,\n resolveTimelockNativeScript,\n} from \"./timelock.js\";\nimport type {\n IBaseSDKParams,\n ICachedReferenceInputs,\n IOutputReference,\n IProxyDatumResult,\n IProxySettings,\n IRawProxyDatumResult,\n ITreasuryDatumResult,\n TProtocolVersion,\n} from \"./types.js\";\nimport {\n addDirectOutput,\n credentialFromScript,\n deployScript,\n getReferenceInputs,\n readSingletonDatum,\n rewardAccountFromScript,\n} from \"./utils.js\";\n\n/**\n * Base interface for SDK version implementations.\n * Each version implements this with version-specific logic.\n */\nexport interface IRealfiSDK {\n /** Protocol version */\n readonly version: TProtocolVersion;\n\n /** Stablecoin policy ID (mint proxy) */\n readonly stablecoinPolicyId: Core.PolicyId;\n\n /** One-shot NFT policy ID */\n readonly oneShotPolicyId: Core.PolicyId;\n\n /** Protocol script hash */\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n\n /** Get the raw proxy UTxO + inline datum from the one-shot token UTXO */\n getRawProxyDatum(): Promise;\n\n /** Get and parse the proxy datum using this SDK version's schema */\n getParsedProxyDatum(): Promise>;\n\n /** @deprecated Use getParsedProxyDatum() or getRawProxyDatum() */\n getProxyDatum(): Promise>;\n\n /** Deploy the protocol script */\n deployProtocol(): Promise;\n\n /** Deploy the mint proxy script */\n deployMintProxy(): Promise;\n\n /** Register the protocol stake credential */\n registerProtocolStake(): TxBuilder;\n\n /** Get the protocol reward account */\n getProtocolRewardAccount(): Core.RewardAccount;\n\n /** Mint the one-shot NFT with initial datum */\n mintOneShot(\n receiverAddress: Core.Address,\n datum: unknown,\n ): Promise<{\n tx: TxBuilder;\n policyId: Core.PolicyId;\n }>;\n\n /** Update the one-shot datum */\n updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: unknown,\n ): Promise;\n\n /** Get version-agnostic proxy settings (common fields only) */\n getSettings(): Promise;\n}\n\n/**\n * Extended interface for SDK versions with treasury support (V0_1+)\n */\ntype TNestedProxySettings = {\n permissions: {\n mint: IProxySettings[\"mint_permission\"];\n burn: IProxySettings[\"burn_permission\"];\n withdraw: IProxySettings[\"withdraw_permission\"];\n deposit: IProxySettings[\"deposit_permission\"];\n stake: IProxySettings[\"stake_permission\"];\n unstake: IProxySettings[\"unstake_permission\"];\n };\n config: { reserve_assets: IProxySettings[\"reserve_assets\"] };\n};\n\nconst isRecord = (value: unknown): value is Record =>\n typeof value === \"object\" && value !== null;\n\nconst isFlatProxySettings = (value: unknown): value is IProxySettings =>\n isRecord(value) &&\n \"mint_permission\" in value &&\n \"burn_permission\" in value &&\n \"withdraw_permission\" in value &&\n \"deposit_permission\" in value &&\n \"stake_permission\" in value &&\n \"unstake_permission\" in value &&\n Array.isArray(value.reserve_assets);\n\nconst isNestedProxySettings = (value: unknown): value is TNestedProxySettings =>\n isRecord(value) &&\n isRecord(value.permissions) &&\n \"mint\" in value.permissions &&\n \"burn\" in value.permissions &&\n \"withdraw\" in value.permissions &&\n \"deposit\" in value.permissions &&\n \"stake\" in value.permissions &&\n \"unstake\" in value.permissions &&\n isRecord(value.config) &&\n Array.isArray(value.config.reserve_assets);\n\nexport interface IRealfiSDKWithTreasury extends IRealfiSDK {\n /** Treasury NFT asset ID */\n readonly treasuryNFTAssetId: Core.AssetId;\n\n /** Treasury script hash */\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n\n /** Mint the treasury NFT */\n mintTreasuryNFT(\n utxo?: Core.TransactionUnspentOutput,\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }>;\n\n /** Deploy the treasury script (requires original UTXO for script instantiation) */\n deployTreasury(utxo: Core.TransactionUnspentOutput): Promise;\n\n /** Get the treasury datum */\n getTreasuryDatum(): Promise>;\n}\n\n/**\n * Abstract base class for SDK versions.\n * Provides common implementation and utilities.\n */\nexport abstract class RealfiSDKBase<\n P extends Provider,\n W extends Wallet,\n> implements IRealfiSDK {\n /** Blaze instance for blockchain interactions */\n protected readonly blaze: Blaze;\n\n /** Bootstrap parameters */\n protected readonly proxyBootstrap: IBaseSDKParams[\"proxyBootstrap\"];\n\n /** Asset name hex for the stablecoin */\n protected readonly assetNameHex: string;\n\n /** Cached reference inputs for performance (populated on first fetch) */\n protected cachedReferenceInputs: ICachedReferenceInputs;\n\n /**\n * Address used to deploy reference scripts and to resolve them from.\n * When undefined, Blaze's burn address is used for both.\n */\n protected readonly scriptDeploymentAddress?: Core.Address;\n\n /** Cached raw proxy datum result (populated on first fetch) */\n protected cachedRawProxyDatumResult?: IRawProxyDatumResult;\n\n /** Cached parsed proxy datum result (populated on first fetch) */\n protected cachedProxyDatumResult?: IProxyDatumResult;\n\n /** One-shot output reference (derived from bootstrap) */\n protected readonly oneShotTxoRef: IOutputReference;\n\n /** Enable trace output in Plutus scripts */\n readonly enableTrace: boolean;\n\n /** Origin attached to all built order transactions. */\n readonly clientSource: TClientSource;\n\n /** SDK version attached to all built order transactions. */\n readonly sdkVersion: string;\n\n // Abstract properties - each version must provide these\n abstract readonly version: TProtocolVersion;\n abstract readonly stablecoinPolicyId: Core.PolicyId;\n abstract readonly oneShotPolicyId: Core.PolicyId;\n abstract readonly protocolScriptHash: Core.Hash28ByteBase16;\n\n // Scripts - each version stores its own instantiated scripts\n protected abstract readonly oneShotScript: Core.Script;\n protected abstract readonly protocolScript: Core.Script;\n protected abstract readonly mintProxyScript: Core.Script;\n\n protected constructor(\n blaze: Blaze,\n params: IBaseSDKParams & { clientSource?: TClientSource },\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n this.blaze = blaze;\n this.proxyBootstrap = params.proxyBootstrap;\n this.assetNameHex = params.assetNameHex;\n this.enableTrace = params.enableTrace ?? false;\n this.cachedReferenceInputs = cachedReferenceInputs ?? {};\n this.scriptDeploymentAddress = params.scriptDeploymentAddress;\n this.clientSource = params.clientSource ?? DEFAULT_CLIENT_SOURCE;\n this.sdkVersion = SDK_VERSION;\n this.oneShotTxoRef = {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n };\n }\n\n /** Get the network from blaze */\n protected get network(): Core.NetworkId {\n return this.blaze.provider.network;\n }\n\n /**\n * Start a transaction with a single setMetadata call. Origin label (55534473) is always\n * present and not overridable; extra labels are merged in before the origin is set.\n */\n protected newOrderTransaction(\n extraLabels?: Map,\n ): TxBuilder {\n const map = new Map(extraLabels ?? []);\n map.set(\n ORDER_ORIGIN_METADATA_LABEL,\n buildOrderOriginMetadatum(this.clientSource, this.sdkVersion),\n );\n return this.blaze.newTransaction().setMetadata(new Core.Metadata(map));\n }\n\n /**\n * Helper to get reference inputs for scripts.\n * Fetched values are cached for subsequent calls.\n */\n async getScriptReferenceInputs(\n scriptHashes: Record,\n ): Promise> {\n const cached: Partial> = {};\n\n if (this.cachedReferenceInputs.protocolRefInput) {\n cached.protocol = this.cachedReferenceInputs.protocolRefInput;\n }\n if (this.cachedReferenceInputs.proxyRefInput) {\n cached.proxy = this.cachedReferenceInputs.proxyRefInput;\n }\n if (this.cachedReferenceInputs.treasuryRefInput) {\n cached.treasury = this.cachedReferenceInputs.treasuryRefInput;\n }\n if (this.cachedReferenceInputs.orderRefInput) {\n cached.order = this.cachedReferenceInputs.orderRefInput;\n }\n if (this.cachedReferenceInputs.stakingVaultRefInput) {\n cached.stakingVault = this.cachedReferenceInputs.stakingVaultRefInput;\n }\n // V1.0 additional protocol scripts\n if (this.cachedReferenceInputs.protocolMintRefInput) {\n cached.protocolMint = this.cachedReferenceInputs.protocolMintRefInput;\n }\n if (this.cachedReferenceInputs.protocolStakeRefInput) {\n cached.protocolStake = this.cachedReferenceInputs.protocolStakeRefInput;\n }\n if (this.cachedReferenceInputs.protocolManagementRefInput) {\n cached.protocolManagement =\n this.cachedReferenceInputs.protocolManagementRefInput;\n }\n const result = await getReferenceInputs(\n this.blaze,\n scriptHashes,\n cached,\n this.scriptDeploymentAddress,\n );\n // Cache fetched values for subsequent calls\n if (result.protocol && !this.cachedReferenceInputs.protocolRefInput) {\n this.cachedReferenceInputs.protocolRefInput = result.protocol;\n }\n if (result.proxy && !this.cachedReferenceInputs.proxyRefInput) {\n this.cachedReferenceInputs.proxyRefInput = result.proxy;\n }\n if (result.treasury && !this.cachedReferenceInputs.treasuryRefInput) {\n this.cachedReferenceInputs.treasuryRefInput = result.treasury;\n }\n if (result.order && !this.cachedReferenceInputs.orderRefInput) {\n this.cachedReferenceInputs.orderRefInput = result.order;\n }\n if (\n result.stakingVault &&\n !this.cachedReferenceInputs.stakingVaultRefInput\n ) {\n this.cachedReferenceInputs.stakingVaultRefInput = result.stakingVault;\n }\n // V1.0 additional protocol scripts caching\n if (\n result.protocolMint &&\n !this.cachedReferenceInputs.protocolMintRefInput\n ) {\n this.cachedReferenceInputs.protocolMintRefInput = result.protocolMint;\n }\n if (\n result.protocolStake &&\n !this.cachedReferenceInputs.protocolStakeRefInput\n ) {\n this.cachedReferenceInputs.protocolStakeRefInput = result.protocolStake;\n }\n if (\n result.protocolManagement &&\n !this.cachedReferenceInputs.protocolManagementRefInput\n ) {\n this.cachedReferenceInputs.protocolManagementRefInput =\n result.protocolManagement;\n }\n return result;\n }\n\n /**\n * Resolve the bootstrap UTXO from the provider.\n * This will fail if the UTXO has already been consumed (i.e., the one-shot token was minted).\n */\n protected async resolveBootstrapUtxo(): Promise {\n const utxos = await this.blaze.provider.resolveUnspentOutputs([\n new Core.TransactionInput(\n this.oneShotTxoRef.transaction_id,\n this.oneShotTxoRef.output_index,\n ),\n ]);\n const utxo = utxos[0];\n if (!utxo) {\n throw new Error(\n \"Bootstrap UTXO not found. It may have already been consumed (one-shot token already minted).\",\n );\n }\n return utxo;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Common Protocol Operations (shared across all versions)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Deploy the protocol script as a reference script.\n */\n async deployProtocol(): Promise {\n return deployScript(\n this.blaze,\n this.protocolScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Deploy the mint proxy script as a reference script.\n */\n async deployMintProxy(): Promise {\n return deployScript(\n this.blaze,\n this.mintProxyScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Register the protocol stake credential.\n */\n registerProtocolStake(): TxBuilder {\n const stakeCredential = credentialFromScript(this.protocolScript);\n const registerTx = this.blaze\n .newTransaction()\n .addRegisterStake(stakeCredential);\n return registerTx;\n }\n\n /**\n * Get the protocol reward account.\n */\n getProtocolRewardAccount(): Core.RewardAccount {\n return rewardAccountFromScript(this.protocolScript, this.network);\n }\n\n /**\n * Get version-agnostic proxy settings.\n * Extracts only the common fields shared across V0_2+ protocol versions.\n */\n async getSettings(): Promise {\n const { parsedProxyDatum } = await this.getParsedProxyDatum();\n const settings = (parsedProxyDatum as { settings?: unknown }).settings;\n\n if (isFlatProxySettings(settings)) {\n return {\n mint_permission: settings.mint_permission,\n burn_permission: settings.burn_permission,\n withdraw_permission: settings.withdraw_permission,\n deposit_permission: settings.deposit_permission,\n stake_permission: settings.stake_permission,\n unstake_permission: settings.unstake_permission,\n reserve_assets: settings.reserve_assets,\n };\n }\n\n if (isNestedProxySettings(settings)) {\n return {\n mint_permission: settings.permissions.mint,\n burn_permission: settings.permissions.burn,\n withdraw_permission: settings.permissions.withdraw,\n deposit_permission: settings.permissions.deposit,\n stake_permission: settings.permissions.stake,\n unstake_permission: settings.permissions.unstake,\n reserve_assets: settings.config.reserve_assets,\n };\n }\n\n throw new Error(\n `getSettings() is not supported for protocol version ${this.version}`,\n );\n }\n\n /** The USDr asset ID (stablecoin policy + USDr asset name). */\n getUsdrAssetId(): Core.AssetId {\n return Core.AssetId(this.stablecoinPolicyId + this.assetNameHex);\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Timelock Operations (shared across versions with staking support)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction that claims USDr locked in a timelock address after\n * the unstake cooldown has expired.\n *\n * Reconstructs the timelock native script for the owner's key hash and the\n * original unlock slot, then spends the UTxO. `owner` is the timelock owner\n * (defaults to the connected wallet) and is set as the required signer, so a\n * custodian holding the user's key can claim. The released USDr goes to\n * `destination`, or to `owner` when only an owner is given; with neither it\n * returns to the connected wallet.\n *\n * A single owner key has two timelock shapes in the protocol, differing only\n * in element order: `buildUnstakeOrderTx` locks to\n * `AllOf { Signature, After }` and the treasury/multisig unstake path to\n * `AllOf { After, Signature }`. They hash differently, so which one applies\n * is read off the UTxO's own locking address rather than assumed.\n */\n async buildClaimTimelockTx(params: {\n resultUtxo: { txHash: string; index: number };\n unlockSlot: bigint;\n owner?: Core.Address;\n destination?: Core.Address;\n }): Promise {\n const ownerAddress =\n params.owner ?? (await this.blaze.wallet.getChangeAddress());\n const ownerKeyHash = ownerAddress.getProps().paymentPart?.hash;\n if (!ownerKeyHash) {\n throw new Error(\"Timelock owner address has no payment key credential\");\n }\n\n const input = new Core.TransactionInput(\n Core.TransactionId(params.resultUtxo.txHash),\n BigInt(params.resultUtxo.index),\n );\n const [utxo] = await this.blaze.provider.resolveUnspentOutputs([input]);\n if (!utxo) {\n throw new Error(\n `Could not resolve UTxO ${params.resultUtxo.txHash}#${params.resultUtxo.index}`,\n );\n }\n\n const nativeScript = resolveTimelockNativeScript(\n utxo.output().address(),\n ownerKeyHash,\n params.unlockSlot,\n );\n const scriptWrapped = Core.Script.newNativeScript(nativeScript);\n\n const tx = this.newOrderTransaction()\n .setValidFrom(Core.Slot(Number(params.unlockSlot)))\n .provideScript(scriptWrapped)\n .addRequiredSigner(Core.Ed25519KeyHashHex(ownerKeyHash))\n .addInput(utxo);\n\n // Route funds to `destination`, else to an explicit `owner` (so a custodial\n // claim reaches the user); with neither, value returns to the connected\n // wallet as change.\n const recipient = params.destination ?? params.owner;\n if (recipient) {\n addDirectOutput(tx, recipient, utxo.output().amount());\n }\n\n return tx;\n }\n\n /**\n * Fetch the live proxy UTxO and inline datum without attempting a\n * version-specific parse. Cached after first fetch.\n *\n * `readSingletonDatum` both retries the lookup (a not-found answer is the\n * provider's index lagging the UTxO's latest move, not a missing proxy —\n * Blockfrost returns HTTP 404 in that window, Sentry TREASURY-ADMIN-API-G)\n * and repairs a datum the provider reports as a hash.\n */\n async getRawProxyDatum(): Promise {\n if (this.cachedRawProxyDatumResult) {\n return this.cachedRawProxyDatumResult;\n }\n if (this.cachedProxyDatumResult) {\n const { proxyUtxo, proxyDatum } = this.cachedProxyDatumResult;\n this.cachedRawProxyDatumResult = { proxyUtxo, proxyDatum };\n return this.cachedRawProxyDatumResult;\n }\n\n const { utxo: proxyUtxo, datum: proxyDatum } = await readSingletonDatum(\n this.blaze.provider,\n Core.AssetId(this.oneShotPolicyId),\n );\n\n const result = { proxyUtxo, proxyDatum };\n this.cachedRawProxyDatumResult = result;\n return result;\n }\n\n /**\n * @deprecated Use getParsedProxyDatum() or getRawProxyDatum() depending on\n * whether the caller needs a version-specific schema parse.\n */\n async getProxyDatum(): Promise> {\n return this.getParsedProxyDatum();\n }\n\n // Abstract methods - each version must implement these\n abstract getParsedProxyDatum(): Promise>;\n abstract mintOneShot(\n receiverAddress: Core.Address,\n datum: unknown,\n ): Promise<{\n tx: TxBuilder;\n policyId: Core.PolicyId;\n }>;\n abstract updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: unknown,\n ): Promise;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/cancel.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/cancel.js new file mode 100644 index 0000000000..fe9104c6a6 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/cancel.js @@ -0,0 +1,110 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.parseCancelOwner = parseCancelOwner; +exports.parseOrderOwnerWithHint = void 0; +var _data = require("@blaze-cardano/data"); +var _utils = require("./utils.js"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t3 in e) "default" !== _t3 && {}.hasOwnProperty.call(e, _t3) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t3)) && (i.get || i.set) ? o(f, _t3, i) : f[_t3] = e[_t3]); return f; })(e, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +var parseOwnerField = function parseOwnerField(schema, datum) { + return (0, _data.parse)(schema, datum).owner; +}; + +/** + * Parse an order owner for cancel flows. + * + * Behavior: + * - no version hint: use strict generic owner parsing immediately + * - with version hint: try the hinted schema first + * - hinted parse failure: fall back to strict generic owner parsing + */ +function parseCancelOwner(_x, _x2) { + return _parseCancelOwner.apply(this, arguments); +} +function _parseCancelOwner() { + _parseCancelOwner = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(utxo, versionHint) { + var datum, _yield$import, OrderDatumV1, _yield$import2, _OrderDatumV, _yield$import3, _OrderDatumV2, _yield$import4, OrderDatum, _yield$import5, _OrderDatum, _t, _t2; + return _regenerator().w(function (_context) { + while (1) switch (_context.p = _context.n) { + case 0: + datum = (0, _utils.getInlineDatumFromUtxo)(utxo); + if (versionHint) { + _context.n = 1; + break; + } + return _context.a(2, (0, _utils.parseOrderOwnerGenericFromDatum)(datum)); + case 1: + _context.p = 1; + _t = versionHint; + _context.n = _t === "V1_0" ? 2 : _t === "V1_0_Rc1" ? 4 : _t === "V1_1_Rc1" ? 6 : _t === "V0_4" ? 8 : _t === "V0_3" ? 10 : 12; + break; + case 2: + _context.n = 3; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v1_0/index.js")); + }); + case 3: + _yield$import = _context.v; + OrderDatumV1 = _yield$import.OrderDatumV1; + return _context.a(2, parseOwnerField(OrderDatumV1, datum)); + case 4: + _context.n = 5; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v1_0_rc1/index.js")); + }); + case 5: + _yield$import2 = _context.v; + _OrderDatumV = _yield$import2.OrderDatumV1; + return _context.a(2, parseOwnerField(_OrderDatumV, datum)); + case 6: + _context.n = 7; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v1_1_rc1/index.js")); + }); + case 7: + _yield$import3 = _context.v; + _OrderDatumV2 = _yield$import3.OrderDatumV1; + return _context.a(2, parseOwnerField(_OrderDatumV2, datum)); + case 8: + _context.n = 9; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v0_4/index.js")); + }); + case 9: + _yield$import4 = _context.v; + OrderDatum = _yield$import4.OrderDatum; + return _context.a(2, parseOwnerField(OrderDatum, datum)); + case 10: + _context.n = 11; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v0_3/index.js")); + }); + case 11: + _yield$import5 = _context.v; + _OrderDatum = _yield$import5.OrderDatum; + return _context.a(2, parseOwnerField(_OrderDatum, datum)); + case 12: + return _context.a(2, (0, _utils.parseOrderOwnerGenericFromDatum)(datum)); + case 13: + _context.n = 15; + break; + case 14: + _context.p = 14; + _t2 = _context.v; + return _context.a(2, (0, _utils.parseOrderOwnerGenericFromDatum)(datum)); + case 15: + return _context.a(2); + } + }, _callee, null, [[1, 14]]); + })); + return _parseCancelOwner.apply(this, arguments); +} +var parseOrderOwnerWithHint = exports.parseOrderOwnerWithHint = parseCancelOwner; +//# sourceMappingURL=cancel.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/cancel.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/cancel.js.map new file mode 100644 index 0000000000..31522dd77e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/cancel.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cancel.js","names":["_data","require","_utils","_typeof","o","Symbol","iterator","constructor","prototype","_regenerator","e","t","r","n","toStringTag","i","c","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","_interopRequireWildcard","WeakMap","__esModule","has","get","set","_t3","hasOwnProperty","getOwnPropertyDescriptor","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","parseOwnerField","schema","datum","parse","owner","parseCancelOwner","_x","_x2","_parseCancelOwner","_callee","utxo","versionHint","_yield$import","OrderDatumV1","_yield$import2","_OrderDatumV","_yield$import3","_OrderDatumV2","_yield$import4","OrderDatum","_yield$import5","_OrderDatum","_t","_t2","_context","getInlineDatumFromUtxo","parseOrderOwnerGenericFromDatum","parseOrderOwnerWithHint","exports"],"sources":["../../../../src/sdk/shared/cancel.ts"],"sourcesContent":["import { parse } from \"@blaze-cardano/data\";\nimport type { Core } from \"@blaze-cardano/sdk\";\n\nimport type { TMultisigScript, TProtocolVersion } from \"./types.js\";\nimport {\n getInlineDatumFromUtxo,\n parseOrderOwnerGenericFromDatum,\n} from \"./utils.js\";\n\nconst parseOwnerField = (\n schema: Parameters[0],\n datum: Core.PlutusData,\n): TMultisigScript => {\n return (parse(schema, datum) as { owner: TMultisigScript }).owner;\n};\n\n/**\n * Parse an order owner for cancel flows.\n *\n * Behavior:\n * - no version hint: use strict generic owner parsing immediately\n * - with version hint: try the hinted schema first\n * - hinted parse failure: fall back to strict generic owner parsing\n */\nexport async function parseCancelOwner(\n utxo: Core.TransactionUnspentOutput,\n versionHint?: TProtocolVersion,\n): Promise {\n const datum = getInlineDatumFromUtxo(utxo);\n\n if (!versionHint) {\n return parseOrderOwnerGenericFromDatum(datum);\n }\n\n try {\n switch (versionHint) {\n case \"V1_0\": {\n const { OrderDatumV1 } =\n await import(\"../../generated-types/v1_0/index.js\");\n return parseOwnerField(OrderDatumV1, datum);\n }\n\n case \"V1_0_Rc1\": {\n const { OrderDatumV1 } =\n await import(\"../../generated-types/v1_0_rc1/index.js\");\n return parseOwnerField(OrderDatumV1, datum);\n }\n\n case \"V1_1_Rc1\": {\n const { OrderDatumV1 } =\n await import(\"../../generated-types/v1_1_rc1/index.js\");\n return parseOwnerField(OrderDatumV1, datum);\n }\n\n case \"V0_4\": {\n const { OrderDatum } =\n await import(\"../../generated-types/v0_4/index.js\");\n return parseOwnerField(OrderDatum, datum);\n }\n\n case \"V0_3\": {\n const { OrderDatum } =\n await import(\"../../generated-types/v0_3/index.js\");\n return parseOwnerField(OrderDatum, datum);\n }\n\n default:\n return parseOrderOwnerGenericFromDatum(datum);\n }\n } catch {\n return parseOrderOwnerGenericFromDatum(datum);\n }\n}\n\nexport const parseOrderOwnerWithHint = parseCancelOwner;\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/client-id.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/client-id.js new file mode 100644 index 0000000000..d8cbedecd6 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/client-id.js @@ -0,0 +1,14 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.SDK_VERSION = exports.DEFAULT_CLIENT_SOURCE = void 0; +// Builder/API origin: "partner-sdk" for the curated "." entry, "internal-sdk" for all other uses. + +// Placeholder version; the publish pipeline injects the released version into +// the built output. Unreleased source (monorepo, first-party) reports the +// placeholder as-is. +var SDK_VERSION = exports.SDK_VERSION = "2.14.0"; +var DEFAULT_CLIENT_SOURCE = exports.DEFAULT_CLIENT_SOURCE = "internal-sdk"; +//# sourceMappingURL=client-id.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/client-id.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/client-id.js.map new file mode 100644 index 0000000000..9a2bc82df3 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/client-id.js.map @@ -0,0 +1 @@ +{"version":3,"file":"client-id.js","names":["SDK_VERSION","exports","DEFAULT_CLIENT_SOURCE"],"sources":["../../../../src/sdk/shared/client-id.ts"],"sourcesContent":["// Builder/API origin: \"partner-sdk\" for the curated \".\" entry, \"internal-sdk\" for all other uses.\nexport type TClientSource = \"partner-sdk\" | \"internal-sdk\";\n\n// Placeholder version; the publish pipeline injects the released version into\n// the built output. Unreleased source (monorepo, first-party) reports the\n// placeholder as-is.\nexport const SDK_VERSION = \"0.0.0-dev\";\n\nexport const DEFAULT_CLIENT_SOURCE: TClientSource = \"internal-sdk\";\n"],"mappings":";;;;;;AAAA;;AAGA;AACA;AACA;AACO,IAAMA,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,WAAW;AAE/B,IAAME,qBAAoC,GAAAD,OAAA,CAAAC,qBAAA,GAAG,cAAc","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/detect-params.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/detect-params.js new file mode 100644 index 0000000000..8442fcb739 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/detect-params.js @@ -0,0 +1,566 @@ +"use strict"; + +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "NETWORK_REGISTRY", { + enumerable: true, + get: function get() { + return _networkRegistry.NETWORK_REGISTRY; + } +}); +exports.YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER = exports.UnknownProtocolVersionError = void 0; +exports.computeOneShotPolicyId = computeOneShotPolicyId; +exports.detectSDKParams = detectSDKParams; +exports.fetchProxyLogicSnapshot = fetchProxyLogicSnapshot; +exports.matchProtocolVersion = matchProtocolVersion; +exports.resolveBlueprintVersion = resolveBlueprintVersion; +exports.selectBlueprintGeneration = selectBlueprintGeneration; +var _core = require("@blaze-cardano/core"); +var _data = require("@blaze-cardano/data"); +var _sdk = require("@blaze-cardano/sdk"); +var _index = require("../../generated-types/index.js"); +var _utils = require("./utils.js"); +var _networkRegistry = require("./network-registry.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _wrapNativeSuper(t) { var r = "function" == typeof Map ? new Map() : void 0; return _wrapNativeSuper = function _wrapNativeSuper(t) { if (null === t || !_isNativeFunction(t)) return t; if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function"); if (void 0 !== r) { if (r.has(t)) return r.get(t); r.set(t, Wrapper); } function Wrapper() { return _construct(t, arguments, _getPrototypeOf(this).constructor); } return Wrapper.prototype = Object.create(t.prototype, { constructor: { value: Wrapper, enumerable: !1, writable: !0, configurable: !0 } }), _setPrototypeOf(Wrapper, t); }, _wrapNativeSuper(t); } +function _construct(t, e, r) { if (_isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments); var o = [null]; o.push.apply(o, e); var p = new (t.bind.apply(t, o))(); return r && _setPrototypeOf(p, r.prototype), p; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _isNativeFunction(t) { try { return -1 !== Function.toString.call(t).indexOf("[native code]"); } catch (n) { return "function" == typeof t; } } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } +function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } +/** + * Default yield_oracle NFT one-shot seed for a deployment that DEFERS the oracle. + * + * The seed only feeds the orchestrator hash at compile time; on-chain it is + * consumed solely when minting the oracle NFT, which a deferred deployment never + * does. An all-zeros tx hash is a valid but permanently un-consumable + * OutputReference, so a deferred deployment can omit the seed entirely and every + * consumer still reconstructs the same orchestrator hash. Supplying a real seed + * overrides this (for a deployment that intends to run the oracle). + */ +// Frozen: this is shared by reference across all omitted-seed detection/SDK +// construction in the process — a consumer mutating txHash/outputIndex would +// otherwise poison every later placeholder-seed reconstruction. +var YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER = exports.YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER = Object.freeze({ + txHash: _sdk.Core.TransactionId("0".repeat(64)), + outputIndex: 0n +}); + +/** + * Deployed validator hashes, keyed as in + * `backend/config/env/.protocol.yaml`. + * + * An array carries more than one *generation* of the same deployment — the + * hashes before and after a script cutover. Detection picks the generation + * whose orchestrator matches the chain and applies that one whole, so a + * consumer holding both spans the flip instead of failing closed between the + * on-chain update and its own config reaching it. + * + * Listing both in a single map cannot work and is actively unsafe: the + * override reads exact keys, so one generation's hashes would be applied + * regardless of which one matched, and the SDK would build against addresses + * the chain is not using. + */ + +/** + * The generation whose protocol orchestrator equals the deployed `logic` hash. + * + * A single map is returned when it matches, so existing callers are unchanged. + * Nothing is returned when no generation matches — detection then fails closed + * rather than guessing, which is what stops a mismatched build from locking + * orders at an address nothing watches. + */ +function selectBlueprintGeneration(logicHash, validators) { + if (!validators) return undefined; + var generations = Array.isArray(validators) ? validators : [validators]; + return generations.find(function (generation) { + return resolveBlueprintVersion(logicHash, generation) !== undefined; + }); +} + +/** + * Version-discriminating view of the live proxy datum, resolved via the + * one-shot NFT (the proxy's stable identity — the UTxO ref changes on every + * settings update, the NFT does not). + */ + +/** + * Version slot each blueprint validator key belongs to. Keys are the ones used + * in `backend/config/env/.protocol.yaml`, so this map is the single place + * that translates blueprint naming into SDK version naming. + */ +var BLUEPRINT_ORCHESTRATOR_VERSIONS = [["v1_1_rc1/", "V1_1_Rc1"], ["v1_0_rc1/", "V1_0_Rc1"], ["v1_0/", "V1_0"]]; + +/** + * Which version a deployed `logic` hash belongs to according to the blueprint, + * or undefined when no blueprint was supplied or none of its orchestrators + * matches. + * + * Only orchestrator entries are consulted: the proxy datum's first field is the + * protocol orchestrator hash, so any other validator matching would mean the + * blueprint disagrees with the chain about what a proxy points at. + */ +function resolveBlueprintVersion(logicHash, validators) { + if (!validators) return undefined; + var _loop = function _loop() { + var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2), + key = _Object$entries$_i[0], + hash = _Object$entries$_i[1]; + if (hash !== logicHash) return 0; // continue + if (!key.includes("protocol_orchestrator")) return 0; // continue + var match = BLUEPRINT_ORCHESTRATOR_VERSIONS.find(function (_ref) { + var _ref2 = _slicedToArray(_ref, 1), + prefix = _ref2[0]; + return key.startsWith(prefix); + }); + if (match) return { + v: match[1] + }; + }, + _ret; + for (var _i = 0, _Object$entries = Object.entries(validators); _i < _Object$entries.length; _i++) { + _ret = _loop(); + if (_ret === 0) continue; + if (_ret) return _ret.v; + } + return undefined; +} + +/** + * Compute the one-shot policy id from the proxy bootstrap reference. + * Deterministic and local — no provider access. + */ +function computeOneShotPolicyId(proxyBootstrap, enableTrace) { + return new _index.BaseTypes.BaseOneshotOneshotMint({ + transaction_id: proxyBootstrap.txHash, + output_index: proxyBootstrap.outputIndex + }, enableTrace).Script.hash(); +} + +/** + * Fetch the live proxy datum and extract the `logic` script hash. + * Costs exactly one provider lookup. + */ +function fetchProxyLogicSnapshot(_x, _x2) { + return _fetchProxyLogicSnapshot.apply(this, arguments); +} +/** + * Detect the active SDK version by reading the proxy datum on-chain. + * + * Phase 1: Extract the `logic` script hash from the proxy datum using raw CBOR + * access, avoiding the chicken-and-egg problem where the datum schema differs + * per version. + * + * Phase 2: Compare the extracted hash against expected protocol hashes computed + * deterministically from `proxyBootstrap`. Each version's generated-types + * module is dynamic-imported only when its turn comes — so on a V1_0_Rc1 + * deployment the V1_0 types chunk (~52 KB gzip / ~214 KB raw) is never + * fetched. Vite's chunk splitter creates one chunk per `await import()` site, + * so the chunk topology mirrors the version branches without needing + * a separate matcher file per version. + * + * Priority order: V1_0_Rc1 → V1_0 → V0_4. Latest-deployed-version-first so + * that on the current production environments (which are on V1_0_Rc1), the + * very first matcher succeeds and no additional version chunks are fetched + * to fail a mismatch check first. Rc1 stays ahead of V1_0 so that during the + * transitional period where both SDK slots resolve to byte-identical scripts + * (Rc1 is a module-path-only duplicate of V1_0), we prefer the Rc1 path — + * once V1_0 evolves on-chain, the two hashes diverge and each branch catches + * its own deployment automatically. V0_4 stays as the legacy fallback. + * + * **Re-evaluate this order if V0_4 ever becomes a primary production + * deployment again** — every session on a V0_4-only environment would pay + * two failed-hash-check fetches (V1_0_Rc1 + V1_0) before reaching V0_4. + * + * Throws `UnknownProtocolVersionError` if the `logic` hash does not match any + * known version. + * + * `config` also accepts a network preset name (`"mainnet"`, `"preprod"`, + * `"preview"`) in place of an explicit {@link IDetectInput} — resolved via + * {@link NETWORK_REGISTRY}. Custom deployments still pass an explicit config. + */ +function _fetchProxyLogicSnapshot() { + _fetchProxyLogicSnapshot = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(provider, oneShotPolicyId) { + var _yield$readSingletonD, rawDatum, constr, fields, logicBytes; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + _context.n = 1; + return (0, _utils.readSingletonDatum)(provider, _sdk.Core.AssetId(oneShotPolicyId)); + case 1: + _yield$readSingletonD = _context.v; + rawDatum = _yield$readSingletonD.datum; + // All ProxyDatum variants encode as Constr(0, [ByteArray(28 bytes), ]). + // The first field is always the `logic` ScriptHash, regardless of version. + constr = rawDatum.asConstrPlutusData(); + if (constr) { + _context.n = 2; + break; + } + throw new Error("Proxy datum is not a constructor PlutusData"); + case 2: + fields = constr.getData(); + logicBytes = fields.get(0).asBoundedBytes(); + if (logicBytes) { + _context.n = 3; + break; + } + throw new Error("First constructor field is not bytes (expected ScriptHash)"); + case 3: + return _context.a(2, { + logicHash: (0, _core.toHex)(logicBytes), + datumFields: fields + }); + } + }, _callee); + })); + return _fetchProxyLogicSnapshot.apply(this, arguments); +} +function detectSDKParams(_x3, _x4) { + return _detectSDKParams.apply(this, arguments); +} +/** + * Phase 2 of detection: match an already-fetched `logic` hash against each + * known version's expected hash. Local-only — dynamic imports and hash + * computation, no provider access — so a caller holding a fresh + * `IProxyLogicSnapshot` can re-resolve the version without another lookup. + */ +function _detectSDKParams() { + _detectSDKParams = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(provider, config) { + var _resolved$enableTrace; + var resolved, enableTrace, oneShotPolicyId, snapshot; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + if (!(typeof config === "string" && !Object.hasOwn(_networkRegistry.NETWORK_REGISTRY, config))) { + _context2.n = 1; + break; + } + throw new Error("Unknown network preset \"".concat(config, "\" \u2014 expected one of: ").concat(Object.keys(_networkRegistry.NETWORK_REGISTRY).join(", "))); + case 1: + resolved = typeof config === "string" ? _networkRegistry.NETWORK_REGISTRY[config] : config; + enableTrace = (_resolved$enableTrace = resolved.enableTrace) !== null && _resolved$enableTrace !== void 0 ? _resolved$enableTrace : false; // ── Phase 1: Compute oneshot policy and fetch proxy datum ───────────────── + oneShotPolicyId = computeOneShotPolicyId(resolved.proxyBootstrap, enableTrace); + _context2.n = 2; + return fetchProxyLogicSnapshot(provider, oneShotPolicyId); + case 2: + snapshot = _context2.v; + return _context2.a(2, matchProtocolVersion(snapshot, oneShotPolicyId, resolved)); + } + }, _callee2); + })); + return _detectSDKParams.apply(this, arguments); +} +function matchProtocolVersion(_x5, _x6, _x7) { + return _matchProtocolVersion.apply(this, arguments); +} +function _matchProtocolVersion() { + _matchProtocolVersion = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(snapshot, oneShotPolicyId, config) { + var _config$enableTrace; + var enableTrace, logicHash, fields, deployedGeneration, blueprintVersion, suppliedGenerations, hasAuthoritativeBlueprint, matchesV1Version, _config$yieldOracleBo, _yield$import, V1_1Rc1ProtocolMintProtocolMintWithdraw, V1_1Rc1ProtocolStakeProtocolStakeWithdraw, V1_1Rc1ProtocolManagementProtocolManagementWithdraw, V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw, V1_1Rc1YieldOracleYieldOracleMint, SettingsV1_1Rc1Schema, protocolMintHashV1_1Rc1, protocolStakeHashV1_1Rc1, protocolManagementHashV1_1Rc1, yieldOracleBootstrap, oracleNftPolicyIdV1_1Rc1, orchestratorHashV1_1Rc1, settingsData, settings, registry, _yield$import2, V0_1TreasuryTreasurySpend, _yield$import3, V0_4StakingVaultStakingVaultSpend, v01TreasuryHash, useV0_1Treasury, v04StakingVaultHash, useV0_4StakingVault, _yield$import4, V1_0Rc1ProtocolMintProtocolMintWithdraw, V1_0Rc1ProtocolStakeProtocolStakeWithdraw, V1_0Rc1ProtocolManagementProtocolManagementWithdraw, V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw, SettingsV1Rc1Schema, protocolMintHashRc1, protocolStakeHashRc1, protocolManagementHashRc1, orchestratorHashRc1, _settingsData, _settings, _registry, _yield$import5, _V0_1TreasuryTreasurySpend, _yield$import6, _V0_4StakingVaultStakingVaultSpend, _v01TreasuryHash, _useV0_1Treasury, _v04StakingVaultHash, _useV0_4StakingVault, _yield$import7, V1_0ProtocolMintProtocolMintWithdraw, V1_0ProtocolStakeProtocolStakeWithdraw, V1_0ProtocolManagementProtocolManagementWithdraw, V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw, SettingsV1Schema, protocolMintHash, protocolStakeHash, protocolManagementHash, orchestratorHash, _settingsData2, _settings2, _registry2, _yield$import8, _V0_1TreasuryTreasurySpend2, _yield$import9, _V0_4StakingVaultStakingVaultSpend2, _v01TreasuryHash2, _useV0_1Treasury2, _v04StakingVaultHash2, _useV0_4StakingVault2, _yield$import0, V0_4ProtocolProtocolWithdraw, v04ProtocolHash; + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + enableTrace = (_config$enableTrace = config.enableTrace) !== null && _config$enableTrace !== void 0 ? _config$enableTrace : false; + logicHash = snapshot.logicHash, fields = snapshot.datumFields; // Which version the supplied blueprint says this `logic` hash belongs to, if + // any. Matching on the deployed hash rather than a derived one is what keeps + // a regenerated artifact from stranding a live deployment: the blueprint + // records what the chain runs, this build only records what it ships. + // + // Deliberately exact-match and fail-closed — a blueprint authorises the one + // deployment it names, never anything that merely looks the same shape. + // Pick the generation the chain is actually on before reading anything from + // it, so version and script hashes always come from the same generation. A + // cutover otherwise has a window where the datum names new scripts and the + // config still names old ones (or the reverse), and every consumer in it + // fails closed until its config catches up. + deployedGeneration = selectBlueprintGeneration(logicHash, config.protocolValidators); + blueprintVersion = resolveBlueprintVersion(logicHash, deployedGeneration); // A non-empty supplied generation makes the blueprint authoritative. A miss + // does not consult derivation: blueprintVersion stays undefined, every + // matchesV1Version check fails, and detection throws + // UnknownProtocolVersionError. + suppliedGenerations = Array.isArray(config.protocolValidators) ? config.protocolValidators : config.protocolValidators ? [config.protocolValidators] : []; + hasAuthoritativeBlueprint = suppliedGenerations.some(function (generation) { + return Object.keys(generation).length > 0; + }); + matchesV1Version = function matchesV1Version(derivedHash, version) { + return hasAuthoritativeBlueprint ? blueprintVersion === version : logicHash === derivedHash; + }; // ── Try each version's hash candidate ───────────────────────────────────── + // + // Each version dynamic-imports its types from its own subpath module, and + // **destructures named exports at the await site** so Vite can statically + // see which specific classes are used and tree-shake the rest of the + // generated-types module (each version's index.ts has ~70 top-level + // exports; each branch needs only 1-5). + // V1_1_Rc1 — orchestrator hash + backward-compat flag detection. + // Checked first: latest-deployed-version-first, so environments on + // V1_1_Rc1 match on the first attempt with no failed-mismatch chunk fetches. + _context3.n = 1; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v1_1_rc1/index.js")); + }); + case 1: + _yield$import = _context3.v; + V1_1Rc1ProtocolMintProtocolMintWithdraw = _yield$import.V1_1Rc1ProtocolMintProtocolMintWithdraw; + V1_1Rc1ProtocolStakeProtocolStakeWithdraw = _yield$import.V1_1Rc1ProtocolStakeProtocolStakeWithdraw; + V1_1Rc1ProtocolManagementProtocolManagementWithdraw = _yield$import.V1_1Rc1ProtocolManagementProtocolManagementWithdraw; + V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw = _yield$import.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw; + V1_1Rc1YieldOracleYieldOracleMint = _yield$import.V1_1Rc1YieldOracleYieldOracleMint; + SettingsV1_1Rc1Schema = _yield$import.SettingsV1; + protocolMintHashV1_1Rc1 = new V1_1Rc1ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + protocolStakeHashV1_1Rc1 = new V1_1Rc1ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + protocolManagementHashV1_1Rc1 = new V1_1Rc1ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script.hash(); // A deferred oracle omits the seed; default to the placeholder so a + // V1_1_Rc1 deployment is still recognized without any seed config. A real + // seed (for a deployment that runs the oracle) overrides it. Either way the + // block below always runs — the exact hash comparison alone decides whether + // this is actually a V1_1_Rc1 proxy, so a V1_0/older proxy simply won't + // match and falls through. + yieldOracleBootstrap = (_config$yieldOracleBo = config.yieldOracleBootstrap) !== null && _config$yieldOracleBo !== void 0 ? _config$yieldOracleBo : YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER; + // The orchestrator's 5th param is the `yield_oracle` *validator* hash — the + // mint+spend validator that holds the oracle UTxO (guarded by ExecuteOrders' + // `no_script_input`), NOT the distribution_oracle logic validator. Because + // yield_oracle is a mint+spend validator, that hash equals the oracle-NFT + // policy id. Derive it the same way RealfiSDKV1_1Rc1.create does so the + // recomputed orchestrator hash matches the deployed logic hash. + oracleNftPolicyIdV1_1Rc1 = new V1_1Rc1YieldOracleYieldOracleMint({ + transaction_id: yieldOracleBootstrap.txHash, + output_index: yieldOracleBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + orchestratorHashV1_1Rc1 = new V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintHashV1_1Rc1, protocolStakeHashV1_1Rc1, protocolManagementHashV1_1Rc1, oracleNftPolicyIdV1_1Rc1, enableTrace).Script.hash(); + if (!matchesV1Version(orchestratorHashV1_1Rc1, "V1_1_Rc1")) { + _context3.n = 4; + break; + } + settingsData = fields.get(1); + settings = (0, _data.parse)(SettingsV1_1Rc1Schema, settingsData); + registry = settings.registry; + _context3.n = 2; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v0_1/index.js")); + }); + case 2: + _yield$import2 = _context3.v; + V0_1TreasuryTreasurySpend = _yield$import2.V0_1TreasuryTreasurySpend; + _context3.n = 3; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v0_4/index.js")); + }); + case 3: + _yield$import3 = _context3.v; + V0_4StakingVaultStakingVaultSpend = _yield$import3.V0_4StakingVaultStakingVaultSpend; + v01TreasuryHash = new V0_1TreasuryTreasurySpend({ + transaction_id: config.treasuryBootstrap.txHash, + output_index: config.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + useV0_1Treasury = registry.treasury === v01TreasuryHash; + v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend({ + transaction_id: config.stakingVaultBootstrap.txHash, + output_index: config.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + useV0_4StakingVault = registry.staking_vault === v04StakingVaultHash; + return _context3.a(2, { + version: "V1_1_Rc1", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + yieldOracleBootstrap: yieldOracleBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace, + useV0_1Treasury: useV0_1Treasury || undefined, + useV0_4StakingVault: useV0_4StakingVault || undefined, + // Identity, not just version: script hashes and the order address are + // otherwise derived from this package's artifacts, which is wrong for a + // chain running different bytes. + deployedValidators: deployedGeneration + }); + case 4: + _context3.n = 5; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v1_0_rc1/index.js")); + }); + case 5: + _yield$import4 = _context3.v; + V1_0Rc1ProtocolMintProtocolMintWithdraw = _yield$import4.V1_0Rc1ProtocolMintProtocolMintWithdraw; + V1_0Rc1ProtocolStakeProtocolStakeWithdraw = _yield$import4.V1_0Rc1ProtocolStakeProtocolStakeWithdraw; + V1_0Rc1ProtocolManagementProtocolManagementWithdraw = _yield$import4.V1_0Rc1ProtocolManagementProtocolManagementWithdraw; + V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw = _yield$import4.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw; + SettingsV1Rc1Schema = _yield$import4.SettingsV1; + protocolMintHashRc1 = new V1_0Rc1ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + protocolStakeHashRc1 = new V1_0Rc1ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + protocolManagementHashRc1 = new V1_0Rc1ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + orchestratorHashRc1 = new V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintHashRc1, protocolStakeHashRc1, protocolManagementHashRc1, enableTrace).Script.hash(); + if (!matchesV1Version(orchestratorHashRc1, "V1_0_Rc1")) { + _context3.n = 8; + break; + } + _settingsData = fields.get(1); + _settings = (0, _data.parse)(SettingsV1Rc1Schema, _settingsData); + _registry = _settings.registry; // Backward-compat checks: load V0_1 + V0_4 types only after the + // orchestrator hash matches. Same named-export destructuring pattern. + _context3.n = 6; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v0_1/index.js")); + }); + case 6: + _yield$import5 = _context3.v; + _V0_1TreasuryTreasurySpend = _yield$import5.V0_1TreasuryTreasurySpend; + _context3.n = 7; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v0_4/index.js")); + }); + case 7: + _yield$import6 = _context3.v; + _V0_4StakingVaultStakingVaultSpend = _yield$import6.V0_4StakingVaultStakingVaultSpend; + _v01TreasuryHash = new _V0_1TreasuryTreasurySpend({ + transaction_id: config.treasuryBootstrap.txHash, + output_index: config.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + _useV0_1Treasury = _registry.treasury === _v01TreasuryHash; + _v04StakingVaultHash = new _V0_4StakingVaultStakingVaultSpend({ + transaction_id: config.stakingVaultBootstrap.txHash, + output_index: config.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + _useV0_4StakingVault = _registry.staking_vault === _v04StakingVaultHash; + return _context3.a(2, { + version: "V1_0_Rc1", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace, + useV0_1Treasury: _useV0_1Treasury || undefined, + useV0_4StakingVault: _useV0_4StakingVault || undefined, + // Identity, not just version: script hashes and the order address are + // otherwise derived from this package's artifacts, which is wrong for a + // chain running different bytes. + deployedValidators: deployedGeneration + }); + case 8: + _context3.n = 9; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v1_0/index.js")); + }); + case 9: + _yield$import7 = _context3.v; + V1_0ProtocolMintProtocolMintWithdraw = _yield$import7.V1_0ProtocolMintProtocolMintWithdraw; + V1_0ProtocolStakeProtocolStakeWithdraw = _yield$import7.V1_0ProtocolStakeProtocolStakeWithdraw; + V1_0ProtocolManagementProtocolManagementWithdraw = _yield$import7.V1_0ProtocolManagementProtocolManagementWithdraw; + V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw = _yield$import7.V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw; + SettingsV1Schema = _yield$import7.SettingsV1; + protocolMintHash = new V1_0ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + protocolStakeHash = new V1_0ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + protocolManagementHash = new V1_0ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + orchestratorHash = new V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintHash, protocolStakeHash, protocolManagementHash, enableTrace).Script.hash(); + if (!matchesV1Version(orchestratorHash, "V1_0")) { + _context3.n = 12; + break; + } + _settingsData2 = fields.get(1); + _settings2 = (0, _data.parse)(SettingsV1Schema, _settingsData2); + _registry2 = _settings2.registry; + _context3.n = 10; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v0_1/index.js")); + }); + case 10: + _yield$import8 = _context3.v; + _V0_1TreasuryTreasurySpend2 = _yield$import8.V0_1TreasuryTreasurySpend; + _context3.n = 11; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v0_4/index.js")); + }); + case 11: + _yield$import9 = _context3.v; + _V0_4StakingVaultStakingVaultSpend2 = _yield$import9.V0_4StakingVaultStakingVaultSpend; + _v01TreasuryHash2 = new _V0_1TreasuryTreasurySpend2({ + transaction_id: config.treasuryBootstrap.txHash, + output_index: config.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + _useV0_1Treasury2 = _registry2.treasury === _v01TreasuryHash2; + _v04StakingVaultHash2 = new _V0_4StakingVaultStakingVaultSpend2({ + transaction_id: config.stakingVaultBootstrap.txHash, + output_index: config.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + _useV0_4StakingVault2 = _registry2.staking_vault === _v04StakingVaultHash2; + return _context3.a(2, { + version: "V1_0", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace, + useV0_1Treasury: _useV0_1Treasury2 || undefined, + useV0_4StakingVault: _useV0_4StakingVault2 || undefined, + // Identity, not just version: script hashes and the order address are + // otherwise derived from this package's artifacts, which is wrong for a + // chain running different bytes. + deployedValidators: deployedGeneration + }); + case 12: + _context3.n = 13; + return Promise.resolve().then(function () { + return _interopRequireWildcard(require("../../generated-types/v0_4/index.js")); + }); + case 13: + _yield$import0 = _context3.v; + V0_4ProtocolProtocolWithdraw = _yield$import0.V0_4ProtocolProtocolWithdraw; + v04ProtocolHash = new V0_4ProtocolProtocolWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + if (!(logicHash === v04ProtocolHash)) { + _context3.n = 14; + break; + } + return _context3.a(2, { + version: "V0_4", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace + }); + case 14: + throw new UnknownProtocolVersionError(logicHash); + case 15: + return _context3.a(2); + } + }, _callee3); + })); + return _matchProtocolVersion.apply(this, arguments); +} +var UnknownProtocolVersionError = exports.UnknownProtocolVersionError = /*#__PURE__*/function (_Error) { + function UnknownProtocolVersionError(logicHash) { + var _this; + _classCallCheck(this, UnknownProtocolVersionError); + _this = _callSuper(this, UnknownProtocolVersionError, ["Unrecognized protocol logic hash \"".concat(logicHash, "\". ") + "The on-chain proxy datum references a script that does not match any known SDK version. " + "Update the SDK or check that you are connected to the correct network."]); + _this.logicHash = logicHash; + _this.name = "UnknownProtocolVersionError"; + return _this; + } + _inherits(UnknownProtocolVersionError, _Error); + return _createClass(UnknownProtocolVersionError); +}(/*#__PURE__*/_wrapNativeSuper(Error)); +//# sourceMappingURL=detect-params.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/detect-params.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/detect-params.js.map new file mode 100644 index 0000000000..8c866f3c2a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/detect-params.js.map @@ -0,0 +1 @@ +{"version":3,"file":"detect-params.js","names":["_core","require","_data","_sdk","_index","_utils","_networkRegistry","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_regenerator","Symbol","iterator","toStringTag","c","prototype","Generator","u","create","_regeneratorDefine2","p","y","G","v","a","d","bind","length","l","TypeError","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","_defineProperties","_toPropertyKey","key","_createClass","_toPrimitive","toPrimitive","String","Number","_classCallCheck","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","constructor","apply","_assertThisInitialized","ReferenceError","_inherits","_setPrototypeOf","_wrapNativeSuper","Map","_isNativeFunction","Wrapper","_construct","arguments","push","Boolean","valueOf","Function","toString","indexOf","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_arrayLikeToArray","slice","name","Array","from","test","next","isArray","YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER","exports","freeze","txHash","Core","TransactionId","repeat","outputIndex","selectBlueprintGeneration","logicHash","validators","undefined","generations","find","generation","resolveBlueprintVersion","BLUEPRINT_ORCHESTRATOR_VERSIONS","_loop","_Object$entries$_i","_Object$entries","_i","hash","includes","match","_ref","_ref2","prefix","startsWith","_ret","entries","computeOneShotPolicyId","proxyBootstrap","enableTrace","BaseTypes","BaseOneshotOneshotMint","transaction_id","output_index","Script","fetchProxyLogicSnapshot","_x","_x2","_fetchProxyLogicSnapshot","_callee","provider","oneShotPolicyId","_yield$readSingletonD","rawDatum","constr","fields","logicBytes","_context","readSingletonDatum","AssetId","datum","asConstrPlutusData","Error","getData","asBoundedBytes","toHex","datumFields","detectSDKParams","_x3","_x4","_detectSDKParams","_callee2","config","_resolved$enableTrace","resolved","snapshot","_context2","hasOwn","NETWORK_REGISTRY","concat","keys","join","matchProtocolVersion","_x5","_x6","_x7","_matchProtocolVersion","_callee3","_config$enableTrace","deployedGeneration","blueprintVersion","suppliedGenerations","hasAuthoritativeBlueprint","matchesV1Version","_config$yieldOracleBo","_yield$import","V1_1Rc1ProtocolMintProtocolMintWithdraw","V1_1Rc1ProtocolStakeProtocolStakeWithdraw","V1_1Rc1ProtocolManagementProtocolManagementWithdraw","V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","V1_1Rc1YieldOracleYieldOracleMint","SettingsV1_1Rc1Schema","protocolMintHashV1_1Rc1","protocolStakeHashV1_1Rc1","protocolManagementHashV1_1Rc1","yieldOracleBootstrap","oracleNftPolicyIdV1_1Rc1","orchestratorHashV1_1Rc1","settingsData","settings","registry","_yield$import2","V0_1TreasuryTreasurySpend","_yield$import3","V0_4StakingVaultStakingVaultSpend","v01TreasuryHash","useV0_1Treasury","v04StakingVaultHash","useV0_4StakingVault","_yield$import4","V1_0Rc1ProtocolMintProtocolMintWithdraw","V1_0Rc1ProtocolStakeProtocolStakeWithdraw","V1_0Rc1ProtocolManagementProtocolManagementWithdraw","V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","SettingsV1Rc1Schema","protocolMintHashRc1","protocolStakeHashRc1","protocolManagementHashRc1","orchestratorHashRc1","_settingsData","_settings","_registry","_yield$import5","_V0_1TreasuryTreasurySpend","_yield$import6","_V0_4StakingVaultStakingVaultSpend","_v01TreasuryHash","_useV0_1Treasury","_v04StakingVaultHash","_useV0_4StakingVault","_yield$import7","V1_0ProtocolMintProtocolMintWithdraw","V1_0ProtocolStakeProtocolStakeWithdraw","V1_0ProtocolManagementProtocolManagementWithdraw","V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw","SettingsV1Schema","protocolMintHash","protocolStakeHash","protocolManagementHash","orchestratorHash","_settingsData2","_settings2","_registry2","_yield$import8","_V0_1TreasuryTreasurySpend2","_yield$import9","_V0_4StakingVaultStakingVaultSpend2","_v01TreasuryHash2","_useV0_1Treasury2","_v04StakingVaultHash2","_useV0_4StakingVault2","_yield$import0","V0_4ProtocolProtocolWithdraw","v04ProtocolHash","_context3","protocolValidators","some","derivedHash","version","SettingsV1","parse","treasuryBootstrap","treasury","stakingVaultBootstrap","staking_vault","assetNameHex","sUSDrAssetNameHex","deployedValidators","UnknownProtocolVersionError","_Error","_this"],"sources":["../../../../src/sdk/shared/detect-params.ts"],"sourcesContent":["import { toHex } from \"@blaze-cardano/core\";\nimport { parse } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport { Core } from \"@blaze-cardano/sdk\";\n\nimport { BaseTypes } from \"../../generated-types/index.js\";\nimport { readSingletonDatum } from \"./utils.js\";\nimport { NETWORK_REGISTRY, type TNetworkPreset } from \"./network-registry.js\";\nimport type { IRealfiSDKParamsV0_4 } from \"../v0_4/index.js\";\nimport type { IRealfiSDKParamsV1_0 } from \"../v1_0/index.js\";\nimport type { IRealfiSDKParamsV1_0Rc1 } from \"../v1_0_rc1/index.js\";\nimport type { IRealfiSDKParamsV1_1Rc1 } from \"../v1_1_rc1/index.js\";\n\nexport type { TNetworkPreset } from \"./network-registry.js\";\nexport { NETWORK_REGISTRY } from \"./network-registry.js\";\n\nexport type TDetectedSDKParams =\n | IRealfiSDKParamsV0_4\n | IRealfiSDKParamsV1_0\n | IRealfiSDKParamsV1_0Rc1\n | IRealfiSDKParamsV1_1Rc1;\n\n/**\n * Default yield_oracle NFT one-shot seed for a deployment that DEFERS the oracle.\n *\n * The seed only feeds the orchestrator hash at compile time; on-chain it is\n * consumed solely when minting the oracle NFT, which a deferred deployment never\n * does. An all-zeros tx hash is a valid but permanently un-consumable\n * OutputReference, so a deferred deployment can omit the seed entirely and every\n * consumer still reconstructs the same orchestrator hash. Supplying a real seed\n * overrides this (for a deployment that intends to run the oracle).\n */\n// Frozen: this is shared by reference across all omitted-seed detection/SDK\n// construction in the process — a consumer mutating txHash/outputIndex would\n// otherwise poison every later placeholder-seed reconstruction.\nexport const YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER = Object.freeze({\n txHash: Core.TransactionId(\"0\".repeat(64)),\n outputIndex: 0n,\n});\n\nexport interface IDetectInput {\n proxyBootstrap: { txHash: Core.TransactionId; outputIndex: bigint };\n treasuryBootstrap: { txHash: Core.TransactionId; outputIndex: bigint };\n stakingVaultBootstrap: { txHash: Core.TransactionId; outputIndex: bigint };\n /**\n * Dedicated yield_oracle NFT one-shot seed. Only V1_1_Rc1 deployments use\n * one. When omitted, detection uses the deferred-oracle placeholder; a\n * deployment with a live oracle must supply its real seed.\n */\n yieldOracleBootstrap?: { txHash: Core.TransactionId; outputIndex: bigint };\n assetNameHex: string;\n sUSDrAssetNameHex: string;\n enableTrace?: boolean;\n /**\n * Deployed validator hashes, keyed exactly as in\n * `backend/config/env/.protocol.yaml` (e.g.\n * `\"v1_0/protocol_orchestrator.protocol_orchestrator.withdraw\"`).\n *\n * Detection otherwise derives each version's hash from the Plutus artifacts\n * this package bundles, which only identifies a deployment while those\n * artifacts stay byte-identical to the ones actually on chain. Supplying the\n * blueprint identifies the deployment by what it *is* rather than by what\n * this build happens to ship, so regenerating an artifact cannot strand a\n * live deployment.\n *\n * Omitted, derivation is used unchanged.\n */\n protocolValidators?: TBlueprintValidators;\n}\n\n/**\n * Deployed validator hashes, keyed as in\n * `backend/config/env/.protocol.yaml`.\n *\n * An array carries more than one *generation* of the same deployment — the\n * hashes before and after a script cutover. Detection picks the generation\n * whose orchestrator matches the chain and applies that one whole, so a\n * consumer holding both spans the flip instead of failing closed between the\n * on-chain update and its own config reaching it.\n *\n * Listing both in a single map cannot work and is actively unsafe: the\n * override reads exact keys, so one generation's hashes would be applied\n * regardless of which one matched, and the SDK would build against addresses\n * the chain is not using.\n */\nexport type TBlueprintValidators =\n | Readonly>\n | ReadonlyArray>>;\n\n/**\n * The generation whose protocol orchestrator equals the deployed `logic` hash.\n *\n * A single map is returned when it matches, so existing callers are unchanged.\n * Nothing is returned when no generation matches — detection then fails closed\n * rather than guessing, which is what stops a mismatched build from locking\n * orders at an address nothing watches.\n */\nexport function selectBlueprintGeneration(\n logicHash: Core.ScriptHash,\n validators: TBlueprintValidators | undefined,\n): Readonly> | undefined {\n if (!validators) return undefined;\n const generations = Array.isArray(validators) ? validators : [validators];\n return generations.find(\n (generation) =>\n resolveBlueprintVersion(logicHash, generation) !== undefined,\n );\n}\n\n/**\n * Version-discriminating view of the live proxy datum, resolved via the\n * one-shot NFT (the proxy's stable identity — the UTxO ref changes on every\n * settings update, the NFT does not).\n */\nexport interface IProxyLogicSnapshot {\n /** The `logic` script hash — first field of every ProxyDatum variant. */\n logicHash: Core.ScriptHash;\n /** All datum constructor fields; index 1 holds the version-specific settings. */\n datumFields: Core.PlutusList;\n}\n\n/**\n * Version slot each blueprint validator key belongs to. Keys are the ones used\n * in `backend/config/env/.protocol.yaml`, so this map is the single place\n * that translates blueprint naming into SDK version naming.\n */\nconst BLUEPRINT_ORCHESTRATOR_VERSIONS: ReadonlyArray<\n readonly [prefix: string, version: TDetectedSDKParams[\"version\"]]\n> = [\n [\"v1_1_rc1/\", \"V1_1_Rc1\"],\n [\"v1_0_rc1/\", \"V1_0_Rc1\"],\n [\"v1_0/\", \"V1_0\"],\n];\n\n/**\n * Which version a deployed `logic` hash belongs to according to the blueprint,\n * or undefined when no blueprint was supplied or none of its orchestrators\n * matches.\n *\n * Only orchestrator entries are consulted: the proxy datum's first field is the\n * protocol orchestrator hash, so any other validator matching would mean the\n * blueprint disagrees with the chain about what a proxy points at.\n */\nexport function resolveBlueprintVersion(\n logicHash: Core.ScriptHash,\n validators: Readonly> | undefined,\n): TDetectedSDKParams[\"version\"] | undefined {\n if (!validators) return undefined;\n\n for (const [key, hash] of Object.entries(validators)) {\n if (hash !== logicHash) continue;\n if (!key.includes(\"protocol_orchestrator\")) continue;\n\n const match = BLUEPRINT_ORCHESTRATOR_VERSIONS.find(([prefix]) =>\n key.startsWith(prefix),\n );\n if (match) return match[1];\n }\n return undefined;\n}\n\n/**\n * Compute the one-shot policy id from the proxy bootstrap reference.\n * Deterministic and local — no provider access.\n */\nexport function computeOneShotPolicyId(\n proxyBootstrap: IDetectInput[\"proxyBootstrap\"],\n enableTrace: boolean,\n): Core.Hash28ByteBase16 {\n return new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: proxyBootstrap.txHash,\n output_index: proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script.hash();\n}\n\n/**\n * Fetch the live proxy datum and extract the `logic` script hash.\n * Costs exactly one provider lookup.\n */\nexport async function fetchProxyLogicSnapshot(\n provider: Provider,\n oneShotPolicyId: Core.Hash28ByteBase16,\n): Promise {\n const { datum: rawDatum } = await readSingletonDatum(\n provider,\n Core.AssetId(oneShotPolicyId),\n );\n\n // All ProxyDatum variants encode as Constr(0, [ByteArray(28 bytes), ]).\n // The first field is always the `logic` ScriptHash, regardless of version.\n const constr = rawDatum.asConstrPlutusData();\n if (!constr) {\n throw new Error(\"Proxy datum is not a constructor PlutusData\");\n }\n const fields = constr.getData();\n const logicBytes = fields.get(0).asBoundedBytes();\n if (!logicBytes) {\n throw new Error(\n \"First constructor field is not bytes (expected ScriptHash)\",\n );\n }\n return {\n logicHash: toHex(logicBytes) as Core.ScriptHash,\n datumFields: fields,\n };\n}\n\n/**\n * Detect the active SDK version by reading the proxy datum on-chain.\n *\n * Phase 1: Extract the `logic` script hash from the proxy datum using raw CBOR\n * access, avoiding the chicken-and-egg problem where the datum schema differs\n * per version.\n *\n * Phase 2: Compare the extracted hash against expected protocol hashes computed\n * deterministically from `proxyBootstrap`. Each version's generated-types\n * module is dynamic-imported only when its turn comes — so on a V1_0_Rc1\n * deployment the V1_0 types chunk (~52 KB gzip / ~214 KB raw) is never\n * fetched. Vite's chunk splitter creates one chunk per `await import()` site,\n * so the chunk topology mirrors the version branches without needing\n * a separate matcher file per version.\n *\n * Priority order: V1_0_Rc1 → V1_0 → V0_4. Latest-deployed-version-first so\n * that on the current production environments (which are on V1_0_Rc1), the\n * very first matcher succeeds and no additional version chunks are fetched\n * to fail a mismatch check first. Rc1 stays ahead of V1_0 so that during the\n * transitional period where both SDK slots resolve to byte-identical scripts\n * (Rc1 is a module-path-only duplicate of V1_0), we prefer the Rc1 path —\n * once V1_0 evolves on-chain, the two hashes diverge and each branch catches\n * its own deployment automatically. V0_4 stays as the legacy fallback.\n *\n * **Re-evaluate this order if V0_4 ever becomes a primary production\n * deployment again** — every session on a V0_4-only environment would pay\n * two failed-hash-check fetches (V1_0_Rc1 + V1_0) before reaching V0_4.\n *\n * Throws `UnknownProtocolVersionError` if the `logic` hash does not match any\n * known version.\n *\n * `config` also accepts a network preset name (`\"mainnet\"`, `\"preprod\"`,\n * `\"preview\"`) in place of an explicit {@link IDetectInput} — resolved via\n * {@link NETWORK_REGISTRY}. Custom deployments still pass an explicit config.\n */\nexport async function detectSDKParams(\n provider: Provider,\n config: IDetectInput,\n): Promise;\nexport async function detectSDKParams(\n provider: Provider,\n network: TNetworkPreset,\n): Promise;\nexport async function detectSDKParams(\n provider: Provider,\n config: IDetectInput | TNetworkPreset,\n): Promise {\n if (typeof config === \"string\" && !Object.hasOwn(NETWORK_REGISTRY, config)) {\n throw new Error(\n `Unknown network preset \"${config}\" — expected one of: ${Object.keys(\n NETWORK_REGISTRY,\n ).join(\", \")}`,\n );\n }\n const resolved =\n typeof config === \"string\"\n ? NETWORK_REGISTRY[config as TNetworkPreset]\n : config;\n const enableTrace = resolved.enableTrace ?? false;\n\n // ── Phase 1: Compute oneshot policy and fetch proxy datum ─────────────────\n\n const oneShotPolicyId = computeOneShotPolicyId(\n resolved.proxyBootstrap,\n enableTrace,\n );\n const snapshot = await fetchProxyLogicSnapshot(provider, oneShotPolicyId);\n\n return matchProtocolVersion(snapshot, oneShotPolicyId, resolved);\n}\n\n/**\n * Phase 2 of detection: match an already-fetched `logic` hash against each\n * known version's expected hash. Local-only — dynamic imports and hash\n * computation, no provider access — so a caller holding a fresh\n * `IProxyLogicSnapshot` can re-resolve the version without another lookup.\n */\nexport async function matchProtocolVersion(\n snapshot: IProxyLogicSnapshot,\n oneShotPolicyId: Core.Hash28ByteBase16,\n config: IDetectInput,\n): Promise {\n const enableTrace = config.enableTrace ?? false;\n const { logicHash, datumFields: fields } = snapshot;\n\n // Which version the supplied blueprint says this `logic` hash belongs to, if\n // any. Matching on the deployed hash rather than a derived one is what keeps\n // a regenerated artifact from stranding a live deployment: the blueprint\n // records what the chain runs, this build only records what it ships.\n //\n // Deliberately exact-match and fail-closed — a blueprint authorises the one\n // deployment it names, never anything that merely looks the same shape.\n // Pick the generation the chain is actually on before reading anything from\n // it, so version and script hashes always come from the same generation. A\n // cutover otherwise has a window where the datum names new scripts and the\n // config still names old ones (or the reverse), and every consumer in it\n // fails closed until its config catches up.\n const deployedGeneration = selectBlueprintGeneration(\n logicHash,\n config.protocolValidators,\n );\n const blueprintVersion = resolveBlueprintVersion(\n logicHash,\n deployedGeneration,\n );\n // A non-empty supplied generation makes the blueprint authoritative. A miss\n // does not consult derivation: blueprintVersion stays undefined, every\n // matchesV1Version check fails, and detection throws\n // UnknownProtocolVersionError.\n const suppliedGenerations = Array.isArray(config.protocolValidators)\n ? config.protocolValidators\n : config.protocolValidators\n ? [config.protocolValidators]\n : [];\n const hasAuthoritativeBlueprint = suppliedGenerations.some(\n (generation) => Object.keys(generation).length > 0,\n );\n const matchesV1Version = (\n derivedHash: Core.ScriptHash,\n version: \"V1_0\" | \"V1_0_Rc1\" | \"V1_1_Rc1\",\n ): boolean =>\n hasAuthoritativeBlueprint\n ? blueprintVersion === version\n : logicHash === derivedHash;\n\n // ── Try each version's hash candidate ─────────────────────────────────────\n //\n // Each version dynamic-imports its types from its own subpath module, and\n // **destructures named exports at the await site** so Vite can statically\n // see which specific classes are used and tree-shake the rest of the\n // generated-types module (each version's index.ts has ~70 top-level\n // exports; each branch needs only 1-5).\n\n // V1_1_Rc1 — orchestrator hash + backward-compat flag detection.\n // Checked first: latest-deployed-version-first, so environments on\n // V1_1_Rc1 match on the first attempt with no failed-mismatch chunk fetches.\n {\n const {\n V1_1Rc1ProtocolMintProtocolMintWithdraw,\n V1_1Rc1ProtocolStakeProtocolStakeWithdraw,\n V1_1Rc1ProtocolManagementProtocolManagementWithdraw,\n V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw,\n V1_1Rc1YieldOracleYieldOracleMint,\n SettingsV1: SettingsV1_1Rc1Schema,\n } = await import(\"../../generated-types/v1_1_rc1/index.js\");\n // eslint-disable-next-line @typescript-eslint/naming-convention\n type TSettingsV1_1Rc1 = typeof SettingsV1_1Rc1Schema extends {\n static: infer T;\n }\n ? T\n : never;\n\n const protocolMintHashV1_1Rc1 = new V1_1Rc1ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolStakeHashV1_1Rc1 =\n new V1_1Rc1ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolManagementHashV1_1Rc1 =\n new V1_1Rc1ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n // A deferred oracle omits the seed; default to the placeholder so a\n // V1_1_Rc1 deployment is still recognized without any seed config. A real\n // seed (for a deployment that runs the oracle) overrides it. Either way the\n // block below always runs — the exact hash comparison alone decides whether\n // this is actually a V1_1_Rc1 proxy, so a V1_0/older proxy simply won't\n // match and falls through.\n const yieldOracleBootstrap =\n config.yieldOracleBootstrap ?? YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER;\n {\n // The orchestrator's 5th param is the `yield_oracle` *validator* hash — the\n // mint+spend validator that holds the oracle UTxO (guarded by ExecuteOrders'\n // `no_script_input`), NOT the distribution_oracle logic validator. Because\n // yield_oracle is a mint+spend validator, that hash equals the oracle-NFT\n // policy id. Derive it the same way RealfiSDKV1_1Rc1.create does so the\n // recomputed orchestrator hash matches the deployed logic hash.\n const oracleNftPolicyIdV1_1Rc1 = new V1_1Rc1YieldOracleYieldOracleMint(\n {\n transaction_id: yieldOracleBootstrap.txHash,\n output_index: yieldOracleBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const orchestratorHashV1_1Rc1 =\n new V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintHashV1_1Rc1,\n protocolStakeHashV1_1Rc1,\n protocolManagementHashV1_1Rc1,\n oracleNftPolicyIdV1_1Rc1,\n enableTrace,\n ).Script.hash();\n\n if (matchesV1Version(orchestratorHashV1_1Rc1, \"V1_1_Rc1\")) {\n const settingsData = fields.get(1);\n const settings = parse(\n SettingsV1_1Rc1Schema,\n settingsData,\n ) as TSettingsV1_1Rc1;\n const registry = settings.registry;\n\n const { V0_1TreasuryTreasurySpend } =\n await import(\"../../generated-types/v0_1/index.js\");\n const { V0_4StakingVaultStakingVaultSpend } =\n await import(\"../../generated-types/v0_4/index.js\");\n\n const v01TreasuryHash = new V0_1TreasuryTreasurySpend(\n {\n transaction_id: config.treasuryBootstrap.txHash,\n output_index: config.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_1Treasury = registry.treasury === v01TreasuryHash;\n\n const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: config.stakingVaultBootstrap.txHash,\n output_index: config.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_4StakingVault =\n registry.staking_vault === v04StakingVaultHash;\n\n return {\n version: \"V1_1_Rc1\",\n proxyBootstrap: config.proxyBootstrap,\n treasuryBootstrap: config.treasuryBootstrap,\n stakingVaultBootstrap: config.stakingVaultBootstrap,\n yieldOracleBootstrap,\n assetNameHex: config.assetNameHex,\n sUSDrAssetNameHex: config.sUSDrAssetNameHex,\n enableTrace: config.enableTrace,\n useV0_1Treasury: useV0_1Treasury || undefined,\n useV0_4StakingVault: useV0_4StakingVault || undefined,\n // Identity, not just version: script hashes and the order address are\n // otherwise derived from this package's artifacts, which is wrong for a\n // chain running different bytes.\n deployedValidators: deployedGeneration,\n };\n }\n }\n }\n\n // V1_0_Rc1 — orchestrator hash + backward-compat flag detection.\n // Checked before V1_0 because it's the current production deployment;\n // matching early avoids failed-mismatch chunk fetches.\n {\n const {\n V1_0Rc1ProtocolMintProtocolMintWithdraw,\n V1_0Rc1ProtocolStakeProtocolStakeWithdraw,\n V1_0Rc1ProtocolManagementProtocolManagementWithdraw,\n V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw,\n SettingsV1: SettingsV1Rc1Schema,\n } = await import(\"../../generated-types/v1_0_rc1/index.js\");\n type TSettingsV1Rc1 = typeof SettingsV1Rc1Schema extends {\n static: infer T;\n }\n ? T\n : never;\n\n const protocolMintHashRc1 = new V1_0Rc1ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolStakeHashRc1 = new V1_0Rc1ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolManagementHashRc1 =\n new V1_0Rc1ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const orchestratorHashRc1 =\n new V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintHashRc1,\n protocolStakeHashRc1,\n protocolManagementHashRc1,\n enableTrace,\n ).Script.hash();\n\n if (matchesV1Version(orchestratorHashRc1, \"V1_0_Rc1\")) {\n const settingsData = fields.get(1);\n const settings = parse(\n SettingsV1Rc1Schema,\n settingsData,\n ) as TSettingsV1Rc1;\n const registry = settings.registry;\n\n // Backward-compat checks: load V0_1 + V0_4 types only after the\n // orchestrator hash matches. Same named-export destructuring pattern.\n const { V0_1TreasuryTreasurySpend } =\n await import(\"../../generated-types/v0_1/index.js\");\n const { V0_4StakingVaultStakingVaultSpend } =\n await import(\"../../generated-types/v0_4/index.js\");\n\n const v01TreasuryHash = new V0_1TreasuryTreasurySpend(\n {\n transaction_id: config.treasuryBootstrap.txHash,\n output_index: config.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_1Treasury = registry.treasury === v01TreasuryHash;\n\n const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: config.stakingVaultBootstrap.txHash,\n output_index: config.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_4StakingVault =\n registry.staking_vault === v04StakingVaultHash;\n\n return {\n version: \"V1_0_Rc1\",\n proxyBootstrap: config.proxyBootstrap,\n treasuryBootstrap: config.treasuryBootstrap,\n stakingVaultBootstrap: config.stakingVaultBootstrap,\n assetNameHex: config.assetNameHex,\n sUSDrAssetNameHex: config.sUSDrAssetNameHex,\n enableTrace: config.enableTrace,\n useV0_1Treasury: useV0_1Treasury || undefined,\n useV0_4StakingVault: useV0_4StakingVault || undefined,\n // Identity, not just version: script hashes and the order address are\n // otherwise derived from this package's artifacts, which is wrong for a\n // chain running different bytes.\n deployedValidators: deployedGeneration,\n };\n }\n }\n\n // V1_0 — orchestrator hash + backward-compat flag detection\n {\n const {\n V1_0ProtocolMintProtocolMintWithdraw,\n V1_0ProtocolStakeProtocolStakeWithdraw,\n V1_0ProtocolManagementProtocolManagementWithdraw,\n V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw,\n SettingsV1: SettingsV1Schema,\n } = await import(\"../../generated-types/v1_0/index.js\");\n type TSettingsV1 = typeof SettingsV1Schema extends { static: infer T }\n ? T\n : never;\n\n const protocolMintHash = new V1_0ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolStakeHash = new V1_0ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolManagementHash =\n new V1_0ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const orchestratorHash =\n new V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintHash,\n protocolStakeHash,\n protocolManagementHash,\n enableTrace,\n ).Script.hash();\n\n if (matchesV1Version(orchestratorHash, \"V1_0\")) {\n const settingsData = fields.get(1);\n const settings = parse(SettingsV1Schema, settingsData) as TSettingsV1;\n const registry = settings.registry;\n\n const { V0_1TreasuryTreasurySpend } =\n await import(\"../../generated-types/v0_1/index.js\");\n const { V0_4StakingVaultStakingVaultSpend } =\n await import(\"../../generated-types/v0_4/index.js\");\n\n const v01TreasuryHash = new V0_1TreasuryTreasurySpend(\n {\n transaction_id: config.treasuryBootstrap.txHash,\n output_index: config.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_1Treasury = registry.treasury === v01TreasuryHash;\n\n const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: config.stakingVaultBootstrap.txHash,\n output_index: config.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_4StakingVault =\n registry.staking_vault === v04StakingVaultHash;\n\n return {\n version: \"V1_0\",\n proxyBootstrap: config.proxyBootstrap,\n treasuryBootstrap: config.treasuryBootstrap,\n stakingVaultBootstrap: config.stakingVaultBootstrap,\n assetNameHex: config.assetNameHex,\n sUSDrAssetNameHex: config.sUSDrAssetNameHex,\n enableTrace: config.enableTrace,\n useV0_1Treasury: useV0_1Treasury || undefined,\n useV0_4StakingVault: useV0_4StakingVault || undefined,\n // Identity, not just version: script hashes and the order address are\n // otherwise derived from this package's artifacts, which is wrong for a\n // chain running different bytes.\n deployedValidators: deployedGeneration,\n };\n }\n }\n\n // V0_4 — protocol withdraw hash only. Legacy fallback; checked last so\n // that current-generation deployments don't pay a failed-hash-check load\n // of V0_4 types every session.\n {\n const { V0_4ProtocolProtocolWithdraw } =\n await import(\"../../generated-types/v0_4/index.js\");\n const v04ProtocolHash = new V0_4ProtocolProtocolWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n\n if (logicHash === v04ProtocolHash) {\n return {\n version: \"V0_4\",\n proxyBootstrap: config.proxyBootstrap,\n treasuryBootstrap: config.treasuryBootstrap,\n stakingVaultBootstrap: config.stakingVaultBootstrap,\n assetNameHex: config.assetNameHex,\n sUSDrAssetNameHex: config.sUSDrAssetNameHex,\n enableTrace: config.enableTrace,\n };\n }\n }\n\n throw new UnknownProtocolVersionError(logicHash);\n}\n\nexport class UnknownProtocolVersionError extends Error {\n constructor(public readonly logicHash: string) {\n super(\n `Unrecognized protocol logic hash \"${logicHash}\". ` +\n `The on-chain proxy datum references a script that does not match any known SDK version. ` +\n `Update the SDK or check that you are connected to the correct network.`,\n );\n this.name = \"UnknownProtocolVersionError\";\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/errors.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/errors.js new file mode 100644 index 0000000000..e35dba8865 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/errors.js @@ -0,0 +1,62 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ScriptAlreadyDeployedError = void 0; +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _wrapNativeSuper(t) { var r = "function" == typeof Map ? new Map() : void 0; return _wrapNativeSuper = function _wrapNativeSuper(t) { if (null === t || !_isNativeFunction(t)) return t; if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function"); if (void 0 !== r) { if (r.has(t)) return r.get(t); r.set(t, Wrapper); } function Wrapper() { return _construct(t, arguments, _getPrototypeOf(this).constructor); } return Wrapper.prototype = Object.create(t.prototype, { constructor: { value: Wrapper, enumerable: !1, writable: !0, configurable: !0 } }), _setPrototypeOf(Wrapper, t); }, _wrapNativeSuper(t); } +function _construct(t, e, r) { if (_isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments); var o = [null]; o.push.apply(o, e); var p = new (t.bind.apply(t, o))(); return r && _setPrototypeOf(p, r.prototype), p; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _isNativeFunction(t) { try { return -1 !== Function.toString.call(t).indexOf("[native code]"); } catch (n) { return "function" == typeof t; } } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/** + * Thrown by `deployScript` when a reference script with the same hash + * already exists on-chain. The thrown instance carries the existing + * reference UTxO so callers that want to reuse the deployment don't + * need to re-query the provider. + * + * Catch this class specifically when a deployment step should be + * idempotent across reruns (e.g. resuming a partially-failed + * bootstrap or upgrade flow): + * + * ```ts + * try { + * const tx = await sdk.deployProtocol(); + * // ...submit... + * } catch (e) { + * if (e instanceof ScriptAlreadyDeployedError) { + * // Use e.refInput, or just skip this step. + * return; + * } + * throw e; + * } + * ``` + */ +var ScriptAlreadyDeployedError = exports.ScriptAlreadyDeployedError = /*#__PURE__*/function (_Error) { + function ScriptAlreadyDeployedError(scriptHash, refInput) { + var _this; + _classCallCheck(this, ScriptAlreadyDeployedError); + _this = _callSuper(this, ScriptAlreadyDeployedError, ["Script ".concat(scriptHash, " is already deployed as a reference script at ") + "".concat(refInput.input().transactionId(), "#").concat(refInput.input().index())]); + _defineProperty(_this, "name", "ScriptAlreadyDeployedError"); + _defineProperty(_this, "scriptHash", void 0); + _defineProperty(_this, "refInput", void 0); + _this.scriptHash = scriptHash; + _this.refInput = refInput; + return _this; + } + _inherits(ScriptAlreadyDeployedError, _Error); + return _createClass(ScriptAlreadyDeployedError); +}(/*#__PURE__*/_wrapNativeSuper(Error)); +//# sourceMappingURL=errors.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/errors.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/errors.js.map new file mode 100644 index 0000000000..0f54aeae10 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/errors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"errors.js","names":["ScriptAlreadyDeployedError","exports","_Error","scriptHash","refInput","_this","_classCallCheck","_callSuper","concat","input","transactionId","index","_defineProperty","_inherits","_createClass","_wrapNativeSuper","Error"],"sources":["../../../../src/sdk/shared/errors.ts"],"sourcesContent":["import type { Core } from \"@blaze-cardano/sdk\";\n\n/**\n * Thrown by `deployScript` when a reference script with the same hash\n * already exists on-chain. The thrown instance carries the existing\n * reference UTxO so callers that want to reuse the deployment don't\n * need to re-query the provider.\n *\n * Catch this class specifically when a deployment step should be\n * idempotent across reruns (e.g. resuming a partially-failed\n * bootstrap or upgrade flow):\n *\n * ```ts\n * try {\n * const tx = await sdk.deployProtocol();\n * // ...submit...\n * } catch (e) {\n * if (e instanceof ScriptAlreadyDeployedError) {\n * // Use e.refInput, or just skip this step.\n * return;\n * }\n * throw e;\n * }\n * ```\n */\nexport class ScriptAlreadyDeployedError extends Error {\n override readonly name = \"ScriptAlreadyDeployedError\";\n readonly scriptHash: Core.ScriptHash;\n readonly refInput: Core.TransactionUnspentOutput;\n\n constructor(\n scriptHash: Core.ScriptHash,\n refInput: Core.TransactionUnspentOutput,\n ) {\n super(\n `Script ${scriptHash} is already deployed as a reference script at ` +\n `${refInput.input().transactionId()}#${refInput.input().index()}`,\n );\n this.scriptHash = scriptHash;\n this.refInput = refInput;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAtBA,IAuBaA,0BAA0B,GAAAC,OAAA,CAAAD,0BAAA,0BAAAE,MAAA;EAKrC,SAAAF,2BACEG,UAA2B,EAC3BC,QAAuC,EACvC;IAAA,IAAAC,KAAA;IAAAC,eAAA,OAAAN,0BAAA;IACAK,KAAA,GAAAE,UAAA,OAAAP,0BAAA,GACE,UAAAQ,MAAA,CAAUL,UAAU,yDAAAK,MAAA,CACfJ,QAAQ,CAACK,KAAK,CAAC,CAAC,CAACC,aAAa,CAAC,CAAC,OAAAF,MAAA,CAAIJ,QAAQ,CAACK,KAAK,CAAC,CAAC,CAACE,KAAK,CAAC,CAAC,CAAE;IACnEC,eAAA,CAAAP,KAAA,UAXqB,4BAA4B;IAAAO,eAAA,CAAAP,KAAA;IAAAO,eAAA,CAAAP,KAAA;IAYnDA,KAAA,CAAKF,UAAU,GAAGA,UAAU;IAC5BE,KAAA,CAAKD,QAAQ,GAAGA,QAAQ;IAAC,OAAAC,KAAA;EAC3B;EAACQ,SAAA,CAAAb,0BAAA,EAAAE,MAAA;EAAA,OAAAY,YAAA,CAAAd,0BAAA;AAAA,eAAAe,gBAAA,CAf6CC,KAAK","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/index.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/index.js new file mode 100644 index 0000000000..088ed051e6 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/index.js @@ -0,0 +1,116 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +var _types = require("./types.js"); +Object.keys(_types).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _types[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _types[key]; + } + }); +}); +var _utils = require("./utils.js"); +Object.keys(_utils).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _utils[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _utils[key]; + } + }); +}); +var _base = require("./base.js"); +Object.keys(_base).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _base[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _base[key]; + } + }); +}); +var _clientId = require("./client-id.js"); +Object.keys(_clientId).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _clientId[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _clientId[key]; + } + }); +}); +var _detectParams = require("./detect-params.js"); +Object.keys(_detectParams).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _detectParams[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _detectParams[key]; + } + }); +}); +var _timelock = require("./timelock.js"); +Object.keys(_timelock).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _timelock[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _timelock[key]; + } + }); +}); +var _reserveAssets = require("./reserve-assets.js"); +Object.keys(_reserveAssets).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _reserveAssets[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _reserveAssets[key]; + } + }); +}); +var _slots = require("./slots.js"); +Object.keys(_slots).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _slots[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _slots[key]; + } + }); +}); +var _cancel = require("./cancel.js"); +Object.keys(_cancel).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _cancel[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _cancel[key]; + } + }); +}); +var _errors = require("./errors.js"); +Object.keys(_errors).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _errors[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _errors[key]; + } + }); +}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/index.js.map new file mode 100644 index 0000000000..e15ad614b4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_types","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_utils","_base","_clientId","_detectParams","_timelock","_reserveAssets","_slots","_cancel","_errors"],"sources":["../../../../src/sdk/shared/index.ts"],"sourcesContent":["export * from \"./types.js\";\nexport * from \"./utils.js\";\nexport * from \"./base.js\";\nexport * from \"./client-id.js\";\nexport * from \"./detect-params.js\";\nexport * from \"./timelock.js\";\nexport * from \"./reserve-assets.js\";\nexport * from \"./slots.js\";\nexport * from \"./cancel.js\";\nexport * from \"./errors.js\";\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/network-registry.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/network-registry.js new file mode 100644 index 0000000000..bd0d16ce01 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/network-registry.js @@ -0,0 +1,84 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.NETWORK_REGISTRY = void 0; +var _sdk = require("@blaze-cardano/sdk"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } // Per-network on-chain bootstrap references for protocol detection. +// Source of truth: frontend/app/config/{mainnet,preprod,preview}.json +// (proxyBootstrap/treasuryBootstrap/stakingVaultBootstrap, stablecoinAssetName, +// sUSDrAssetName). Update an entry only when that network's protocol is +// redeployed with new bootstrap UTxOs. +// +// Frozen (entry + bootstrap objects): NETWORK_REGISTRY is shared by reference +// into detectSDKParams — a consumer mutating proxyBootstrap.txHash would +// otherwise poison every later detectParams(provider, "mainnet") call. +var freezeBootstrap = function freezeBootstrap(b) { + return Object.freeze(b); +}; +var freezeDetectInput = function freezeDetectInput(entry) { + return Object.freeze(_objectSpread(_objectSpread({}, entry), {}, { + proxyBootstrap: freezeBootstrap(entry.proxyBootstrap), + treasuryBootstrap: freezeBootstrap(entry.treasuryBootstrap), + stakingVaultBootstrap: freezeBootstrap(entry.stakingVaultBootstrap) + }, entry.yieldOracleBootstrap ? { + yieldOracleBootstrap: freezeBootstrap(entry.yieldOracleBootstrap) + } : {})); +}; +var NETWORK_REGISTRY = exports.NETWORK_REGISTRY = Object.freeze({ + mainnet: freezeDetectInput({ + proxyBootstrap: { + txHash: _sdk.Core.TransactionId("d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac"), + outputIndex: 0n + }, + treasuryBootstrap: { + txHash: _sdk.Core.TransactionId("d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac"), + outputIndex: 1n + }, + stakingVaultBootstrap: { + txHash: _sdk.Core.TransactionId("d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac"), + outputIndex: 2n + }, + assetNameHex: "55534472", + sUSDrAssetNameHex: "7355534472" + }), + preprod: freezeDetectInput({ + proxyBootstrap: { + txHash: _sdk.Core.TransactionId("d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7"), + outputIndex: 0n + }, + treasuryBootstrap: { + txHash: _sdk.Core.TransactionId("d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7"), + outputIndex: 1n + }, + stakingVaultBootstrap: { + txHash: _sdk.Core.TransactionId("d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7"), + outputIndex: 2n + }, + assetNameHex: "55534472", + sUSDrAssetNameHex: "7355534472" + }), + preview: freezeDetectInput({ + proxyBootstrap: { + txHash: _sdk.Core.TransactionId("a32795a0be2dfef61583ab0d7b2c959bbbeab159530dc5a3ef0fa61d94595c99"), + outputIndex: 1n + }, + treasuryBootstrap: { + txHash: _sdk.Core.TransactionId("cf7450305eeaca76ee15a2a863b7d2d272dce7493feae489ec18395cc22b4646"), + outputIndex: 2n + }, + stakingVaultBootstrap: { + txHash: _sdk.Core.TransactionId("17ad2403529298bc8b6a3150069cb0edf55a17e3c334d8b9e0f98ca0e3922bbb"), + outputIndex: 0n + }, + assetNameHex: "55534472", + sUSDrAssetNameHex: "7355534472" + }) +}); +//# sourceMappingURL=network-registry.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/network-registry.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/network-registry.js.map new file mode 100644 index 0000000000..9e7187d917 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/network-registry.js.map @@ -0,0 +1 @@ +{"version":3,"file":"network-registry.js","names":["_sdk","require","_typeof","o","Symbol","iterator","constructor","prototype","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","toPrimitive","call","TypeError","String","Number","freezeBootstrap","b","freeze","freezeDetectInput","entry","proxyBootstrap","treasuryBootstrap","stakingVaultBootstrap","yieldOracleBootstrap","NETWORK_REGISTRY","exports","mainnet","txHash","Core","TransactionId","outputIndex","assetNameHex","sUSDrAssetNameHex","preprod","preview"],"sources":["../../../../src/sdk/shared/network-registry.ts"],"sourcesContent":["// Per-network on-chain bootstrap references for protocol detection.\n\nimport { Core } from \"@blaze-cardano/sdk\";\n\nimport type { IDetectInput } from \"./detect-params.js\";\n\nexport type TNetworkPreset = \"mainnet\" | \"preprod\" | \"preview\";\n\n// Source of truth: frontend/app/config/{mainnet,preprod,preview}.json\n// (proxyBootstrap/treasuryBootstrap/stakingVaultBootstrap, stablecoinAssetName,\n// sUSDrAssetName). Update an entry only when that network's protocol is\n// redeployed with new bootstrap UTxOs.\n//\n// Frozen (entry + bootstrap objects): NETWORK_REGISTRY is shared by reference\n// into detectSDKParams — a consumer mutating proxyBootstrap.txHash would\n// otherwise poison every later detectParams(provider, \"mainnet\") call.\nconst freezeBootstrap = <\n T extends { txHash: Core.TransactionId; outputIndex: bigint },\n>(\n b: T,\n): Readonly => Object.freeze(b);\n\nconst freezeDetectInput = (entry: IDetectInput): Readonly =>\n Object.freeze({\n ...entry,\n proxyBootstrap: freezeBootstrap(entry.proxyBootstrap),\n treasuryBootstrap: freezeBootstrap(entry.treasuryBootstrap),\n stakingVaultBootstrap: freezeBootstrap(entry.stakingVaultBootstrap),\n ...(entry.yieldOracleBootstrap\n ? { yieldOracleBootstrap: freezeBootstrap(entry.yieldOracleBootstrap) }\n : {}),\n });\n\nexport const NETWORK_REGISTRY: Readonly> =\n Object.freeze({\n mainnet: freezeDetectInput({\n proxyBootstrap: {\n txHash: Core.TransactionId(\n \"d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac\",\n ),\n outputIndex: 0n,\n },\n treasuryBootstrap: {\n txHash: Core.TransactionId(\n \"d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac\",\n ),\n outputIndex: 1n,\n },\n stakingVaultBootstrap: {\n txHash: Core.TransactionId(\n \"d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac\",\n ),\n outputIndex: 2n,\n },\n assetNameHex: \"55534472\",\n sUSDrAssetNameHex: \"7355534472\",\n }),\n preprod: freezeDetectInput({\n proxyBootstrap: {\n txHash: Core.TransactionId(\n \"d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7\",\n ),\n outputIndex: 0n,\n },\n treasuryBootstrap: {\n txHash: Core.TransactionId(\n \"d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7\",\n ),\n outputIndex: 1n,\n },\n stakingVaultBootstrap: {\n txHash: Core.TransactionId(\n \"d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7\",\n ),\n outputIndex: 2n,\n },\n assetNameHex: \"55534472\",\n sUSDrAssetNameHex: \"7355534472\",\n }),\n preview: freezeDetectInput({\n proxyBootstrap: {\n txHash: Core.TransactionId(\n \"a32795a0be2dfef61583ab0d7b2c959bbbeab159530dc5a3ef0fa61d94595c99\",\n ),\n outputIndex: 1n,\n },\n treasuryBootstrap: {\n txHash: Core.TransactionId(\n \"cf7450305eeaca76ee15a2a863b7d2d272dce7493feae489ec18395cc22b4646\",\n ),\n outputIndex: 2n,\n },\n stakingVaultBootstrap: {\n txHash: Core.TransactionId(\n \"17ad2403529298bc8b6a3150069cb0edf55a17e3c334d8b9e0f98ca0e3922bbb\",\n ),\n outputIndex: 0n,\n },\n assetNameHex: \"55534472\",\n sUSDrAssetNameHex: \"7355534472\",\n }),\n });\n"],"mappings":";;;;;;AAEA,IAAAA,IAAA,GAAAC,OAAA;AAA0C,SAAAC,QAAAC,CAAA,sCAAAD,OAAA,wBAAAE,MAAA,uBAAAA,MAAA,CAAAC,QAAA,aAAAF,CAAA,kBAAAA,CAAA,gBAAAA,CAAA,WAAAA,CAAA,yBAAAC,MAAA,IAAAD,CAAA,CAAAG,WAAA,KAAAF,MAAA,IAAAD,CAAA,KAAAC,MAAA,CAAAG,SAAA,qBAAAJ,CAAA,KAAAD,OAAA,CAAAC,CAAA;AAAA,SAAAK,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAX,CAAA,GAAAS,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAP,CAAA,GAAAA,CAAA,CAAAY,MAAA,WAAAL,CAAA,WAAAE,MAAA,CAAAI,wBAAA,CAAAP,CAAA,EAAAC,CAAA,EAAAO,UAAA,OAAAN,CAAA,CAAAO,IAAA,CAAAC,KAAA,CAAAR,CAAA,EAAAR,CAAA,YAAAQ,CAAA;AAAA,SAAAS,cAAAX,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAW,SAAA,CAAAC,MAAA,EAAAZ,CAAA,UAAAC,CAAA,WAAAU,SAAA,CAAAX,CAAA,IAAAW,SAAA,CAAAX,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAY,OAAA,WAAAb,CAAA,IAAAc,eAAA,CAAAf,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAa,yBAAA,GAAAb,MAAA,CAAAc,gBAAA,CAAAjB,CAAA,EAAAG,MAAA,CAAAa,yBAAA,CAAAd,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAY,OAAA,WAAAb,CAAA,IAAAE,MAAA,CAAAe,cAAA,CAAAlB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAI,wBAAA,CAAAL,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAe,gBAAAf,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAkB,cAAA,CAAAlB,CAAA,MAAAD,CAAA,GAAAG,MAAA,CAAAe,cAAA,CAAAlB,CAAA,EAAAC,CAAA,IAAAmB,KAAA,EAAAlB,CAAA,EAAAM,UAAA,MAAAa,YAAA,MAAAC,QAAA,UAAAtB,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAmB,eAAAjB,CAAA,QAAAqB,CAAA,GAAAC,YAAA,CAAAtB,CAAA,gCAAAT,OAAA,CAAA8B,CAAA,IAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAtB,CAAA,EAAAD,CAAA,oBAAAR,OAAA,CAAAS,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAP,MAAA,CAAA8B,WAAA,kBAAAzB,CAAA,QAAAuB,CAAA,GAAAvB,CAAA,CAAA0B,IAAA,CAAAxB,CAAA,EAAAD,CAAA,gCAAAR,OAAA,CAAA8B,CAAA,UAAAA,CAAA,YAAAI,SAAA,yEAAA1B,CAAA,GAAA2B,MAAA,GAAAC,MAAA,EAAA3B,CAAA,KAF1C;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAM4B,eAAe,GAAG,SAAlBA,eAAeA,CAGnBC,CAAI;EAAA,OACY5B,MAAM,CAAC6B,MAAM,CAACD,CAAC,CAAC;AAAA;AAElC,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,KAAmB;EAAA,OAC5C/B,MAAM,CAAC6B,MAAM,CAAArB,aAAA,CAAAA,aAAA,KACRuB,KAAK;IACRC,cAAc,EAAEL,eAAe,CAACI,KAAK,CAACC,cAAc,CAAC;IACrDC,iBAAiB,EAAEN,eAAe,CAACI,KAAK,CAACE,iBAAiB,CAAC;IAC3DC,qBAAqB,EAAEP,eAAe,CAACI,KAAK,CAACG,qBAAqB;EAAC,GAC/DH,KAAK,CAACI,oBAAoB,GAC1B;IAAEA,oBAAoB,EAAER,eAAe,CAACI,KAAK,CAACI,oBAAoB;EAAE,CAAC,GACrE,CAAC,CAAC,CACP,CAAC;AAAA;AAEG,IAAMC,gBAAgE,GAAAC,OAAA,CAAAD,gBAAA,GAC3EpC,MAAM,CAAC6B,MAAM,CAAC;EACZS,OAAO,EAAER,iBAAiB,CAAC;IACzBE,cAAc,EAAE;MACdO,MAAM,EAAEC,SAAI,CAACC,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDT,iBAAiB,EAAE;MACjBM,MAAM,EAAEC,SAAI,CAACC,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDR,qBAAqB,EAAE;MACrBK,MAAM,EAAEC,SAAI,CAACC,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDC,YAAY,EAAE,UAAU;IACxBC,iBAAiB,EAAE;EACrB,CAAC,CAAC;EACFC,OAAO,EAAEf,iBAAiB,CAAC;IACzBE,cAAc,EAAE;MACdO,MAAM,EAAEC,SAAI,CAACC,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDT,iBAAiB,EAAE;MACjBM,MAAM,EAAEC,SAAI,CAACC,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDR,qBAAqB,EAAE;MACrBK,MAAM,EAAEC,SAAI,CAACC,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDC,YAAY,EAAE,UAAU;IACxBC,iBAAiB,EAAE;EACrB,CAAC,CAAC;EACFE,OAAO,EAAEhB,iBAAiB,CAAC;IACzBE,cAAc,EAAE;MACdO,MAAM,EAAEC,SAAI,CAACC,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDT,iBAAiB,EAAE;MACjBM,MAAM,EAAEC,SAAI,CAACC,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDR,qBAAqB,EAAE;MACrBK,MAAM,EAAEC,SAAI,CAACC,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDC,YAAY,EAAE,UAAU;IACxBC,iBAAiB,EAAE;EACrB,CAAC;AACH,CAAC,CAAC","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/public.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/public.js new file mode 100644 index 0000000000..f268e88f8e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/public.js @@ -0,0 +1,75 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "addressToDestination", { + enumerable: true, + get: function get() { + return _utils.addressToDestination; + } +}); +Object.defineProperty(exports, "buildTimelockAddress", { + enumerable: true, + get: function get() { + return _timelock.buildTimelockAddress; + } +}); +Object.defineProperty(exports, "destinationToAddress", { + enumerable: true, + get: function get() { + return _utils.destinationToAddress; + } +}); +Object.defineProperty(exports, "findReserveAsset", { + enumerable: true, + get: function get() { + return _reserveAssets.findReserveAsset; + } +}); +Object.defineProperty(exports, "getAllKeyHashesFromMultisigScript", { + enumerable: true, + get: function get() { + return _utils.getAllKeyHashesFromMultisigScript; + } +}); +Object.defineProperty(exports, "getScriptKeyHashesFromMultisigScript", { + enumerable: true, + get: function get() { + return _utils.getScriptKeyHashesFromMultisigScript; + } +}); +Object.defineProperty(exports, "getSignatureKeyHashesFromMultisigScript", { + enumerable: true, + get: function get() { + return _utils.getSignatureKeyHashesFromMultisigScript; + } +}); +Object.defineProperty(exports, "normalizeOrderVersion", { + enumerable: true, + get: function get() { + return _utils.normalizeOrderVersion; + } +}); +Object.defineProperty(exports, "normalizeProtocolVersion", { + enumerable: true, + get: function get() { + return _utils.normalizeProtocolVersion; + } +}); +Object.defineProperty(exports, "usdrToReserve", { + enumerable: true, + get: function get() { + return _reserveAssets.usdrToReserve; + } +}); +Object.defineProperty(exports, "usdrToReserveCeil", { + enumerable: true, + get: function get() { + return _reserveAssets.usdrToReserveCeil; + } +}); +var _utils = require("./utils.js"); +var _reserveAssets = require("./reserve-assets.js"); +var _timelock = require("./timelock.js"); +//# sourceMappingURL=public.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/public.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/public.js.map new file mode 100644 index 0000000000..047a9e14eb --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/public.js.map @@ -0,0 +1 @@ +{"version":3,"file":"public.js","names":["_utils","require","_reserveAssets","_timelock"],"sources":["../../../../src/sdk/shared/public.ts"],"sourcesContent":["// Partner-facing helper subset, exposed as the public `Utils` namespace.\nexport {\n addressToDestination,\n destinationToAddress,\n getSignatureKeyHashesFromMultisigScript,\n getScriptKeyHashesFromMultisigScript,\n getAllKeyHashesFromMultisigScript,\n normalizeProtocolVersion,\n normalizeOrderVersion,\n} from \"./utils.js\";\nexport {\n findReserveAsset,\n usdrToReserve,\n usdrToReserveCeil,\n} from \"./reserve-assets.js\";\nexport { buildTimelockAddress } from \"./timelock.js\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AASA,IAAAC,cAAA,GAAAD,OAAA;AAKA,IAAAE,SAAA,GAAAF,OAAA","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/reserve-assets.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/reserve-assets.js new file mode 100644 index 0000000000..83959ce442 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/reserve-assets.js @@ -0,0 +1,99 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.computeReserveDeltas = computeReserveDeltas; +exports.findReserveAsset = findReserveAsset; +exports.usdrToReserve = usdrToReserve; +exports.usdrToReserveCeil = usdrToReserveCeil; +function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } +function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } +function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +/** + * Find a reserve asset config by policy+name from settings. + */ +function findReserveAsset(settings, asset) { + var found = settings.reserve_assets.find(function (ra) { + return ra.asset[0] === asset[0] && ra.asset[1] === asset[1]; + }); + if (!found) { + throw new Error("Reserve asset not found in settings: ".concat(asset[0]).concat(asset[1])); + } + if (found.numerator === 0n) { + throw new Error("Reserve asset numerator must be non-zero"); + } + if (found.denominator === 0n) { + throw new Error("Reserve asset denominator must be non-zero"); + } + return found; +} + +/** + * Convert USDr amount to reserve amount (floor division, protocol-protective for burns). + * Matches on-chain: usdr_to_reserve(amount, ra) = amount * denominator / numerator + */ +function usdrToReserve(usdrAmount, ra) { + return usdrAmount * ra.denominator / ra.numerator; +} + +/** + * Convert USDr amount to reserve amount (ceiling division, protocol-protective for mints). + * Matches on-chain: usdr_to_reserve_ceil(amount, ra) = (amount * denominator + numerator - 1) / numerator + */ +function usdrToReserveCeil(usdrAmount, ra) { + return (usdrAmount * ra.denominator + ra.numerator - 1n) / ra.numerator; +} + +/** + * Compute per-reserve-asset deltas from order infos. + * Groups orders by reserve asset and converts USDr amounts to reserve amounts. + * @param negate If true, negate the delta (used for withdraw where amounts are positive but treasury outflow is negative) + */ +function computeReserveDeltas(orderInfos, settings) { + var negate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + var deltas = new Map(); + var amountsByAsset = new Map(); + var _iterator = _createForOfIteratorHelper(orderInfos), + _step; + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var _amountsByAsset$get; + var orderInfo = _step.value; + var assetKey = orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]; + amountsByAsset.set(assetKey, ((_amountsByAsset$get = amountsByAsset.get(assetKey)) !== null && _amountsByAsset$get !== void 0 ? _amountsByAsset$get : 0n) + orderInfo.amount); + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + var _iterator2 = _createForOfIteratorHelper(amountsByAsset.entries()), + _step2; + try { + var _loop = function _loop() { + var _step2$value = _slicedToArray(_step2.value, 2), + assetKey = _step2$value[0], + totalUsdr = _step2$value[1]; + var orderWithAsset = orderInfos.find(function (o) { + return o.reserveAsset[0] + o.reserveAsset[1] === assetKey; + }); + var ra = findReserveAsset(settings, orderWithAsset.reserveAsset); + var reserveAmount = usdrToReserve(negate ? -totalUsdr : totalUsdr, ra); + deltas.set(assetKey, reserveAmount); + }; + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + _loop(); + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + return deltas; +} +//# sourceMappingURL=reserve-assets.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/reserve-assets.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/reserve-assets.js.map new file mode 100644 index 0000000000..b81c54b2e3 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/reserve-assets.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reserve-assets.js","names":["findReserveAsset","settings","asset","found","reserve_assets","find","ra","Error","concat","numerator","denominator","usdrToReserve","usdrAmount","usdrToReserveCeil","computeReserveDeltas","orderInfos","negate","arguments","length","undefined","deltas","Map","amountsByAsset","_iterator","_createForOfIteratorHelper","_step","s","n","done","_amountsByAsset$get","orderInfo","value","assetKey","reserveAsset","set","get","amount","err","e","f","_iterator2","entries","_step2","_loop","_step2$value","_slicedToArray","totalUsdr","orderWithAsset","o","reserveAmount"],"sources":["../../../../src/sdk/shared/reserve-assets.ts"],"sourcesContent":["import type { IReserveAsset } from \"./types.js\";\n\ntype TSettingsWithReserveAssets = {\n reserve_assets: IReserveAsset[];\n};\n\ntype TOrderInfoWithReserveAsset = {\n reserveAsset?: [string, string];\n amount: bigint;\n};\n\n/**\n * Find a reserve asset config by policy+name from settings.\n */\nexport function findReserveAsset(\n settings: TSettingsWithReserveAssets,\n asset: [string, string],\n): IReserveAsset {\n const found = settings.reserve_assets.find(\n (ra) => ra.asset[0] === asset[0] && ra.asset[1] === asset[1],\n );\n if (!found) {\n throw new Error(\n `Reserve asset not found in settings: ${asset[0]}${asset[1]}`,\n );\n }\n if (found.numerator === 0n) {\n throw new Error(\"Reserve asset numerator must be non-zero\");\n }\n if (found.denominator === 0n) {\n throw new Error(\"Reserve asset denominator must be non-zero\");\n }\n return found;\n}\n\n/**\n * Convert USDr amount to reserve amount (floor division, protocol-protective for burns).\n * Matches on-chain: usdr_to_reserve(amount, ra) = amount * denominator / numerator\n */\nexport function usdrToReserve(usdrAmount: bigint, ra: IReserveAsset): bigint {\n return (usdrAmount * ra.denominator) / ra.numerator;\n}\n\n/**\n * Convert USDr amount to reserve amount (ceiling division, protocol-protective for mints).\n * Matches on-chain: usdr_to_reserve_ceil(amount, ra) = (amount * denominator + numerator - 1) / numerator\n */\nexport function usdrToReserveCeil(\n usdrAmount: bigint,\n ra: IReserveAsset,\n): bigint {\n return (usdrAmount * ra.denominator + ra.numerator - 1n) / ra.numerator;\n}\n\n/**\n * Compute per-reserve-asset deltas from order infos.\n * Groups orders by reserve asset and converts USDr amounts to reserve amounts.\n * @param negate If true, negate the delta (used for withdraw where amounts are positive but treasury outflow is negative)\n */\nexport function computeReserveDeltas(\n orderInfos: TOrderInfoWithReserveAsset[],\n settings: TSettingsWithReserveAssets,\n negate: boolean = false,\n): Map {\n const deltas = new Map();\n const amountsByAsset = new Map();\n\n for (const orderInfo of orderInfos) {\n const assetKey = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1];\n amountsByAsset.set(\n assetKey,\n (amountsByAsset.get(assetKey) ?? 0n) + orderInfo.amount,\n );\n }\n\n for (const [assetKey, totalUsdr] of amountsByAsset.entries()) {\n const orderWithAsset = orderInfos.find(\n (o) => o.reserveAsset![0] + o.reserveAsset![1] === assetKey,\n )!;\n const ra = findReserveAsset(settings, orderWithAsset.reserveAsset!);\n const reserveAmount = usdrToReserve(negate ? -totalUsdr : totalUsdr, ra);\n deltas.set(assetKey, reserveAmount);\n }\n\n return deltas;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/slots.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/slots.js new file mode 100644 index 0000000000..f0d62c28dc --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/slots.js @@ -0,0 +1,71 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.slotAlignedTimeMs = slotAlignedTimeMs; +exports.slotFloor = slotFloor; +var _sdk = require("@blaze-cardano/sdk"); +/** + * The slot/time conversions a slot-alignment needs. Structural (rather than the + * `Provider` class) so callers can pass any provider — Blockfrost, Kupmios, + * `EmulatorProvider` — and tests can pass a plain object with a known slot + * config. Note that `Emulator` (the clock, not its provider) also satisfies this + * shape while rounding the other way; {@link slotFloor} handles both. + */ + +/** + * The integer slot that contains `timeMs`: the latest slot that has already + * started at `timeMs`. + * + * `provider.unixToSlot` does **not** floor — it returns + * `(ms - zeroTime) / slotLength + zeroSlot`, so for any wall-clock time that is + * not exactly on a slot boundary it yields a **fractional** slot. Two things + * then go wrong if that value is used as-is: + * + * 1. A tx body stores `invalid_before` / `invalid_hereafter` as **integer** + * slots, and the CBOR writer silently truncates the fraction. The value the + * validator reads is therefore not the value the SDK computed with. + * 2. The round-trip `slotToUnix(unixToSlot(t))` — the natural way to express + * "snap `t` to its slot" — is the *identity* on `t`, not an alignment. + * + * That combination cost us a crashed windowed deposit on preview: the vault + * output's `diffusion_start` kept the sub-slot remainder while the tx's validity + * lower bound was floored, so `validate_deposit_diffusion`'s + * `diffusion_start == now` check failed by that remainder (REALFI-653). The + * emulator hid it because the clock injected in tests is already slot-aligned — + * not because of any provider difference: `EmulatorProvider` extends the same + * `Provider` base and returns the same fractional slots. + * + * Flooring alone would not be enough for a clock that ROUNDS UP: `Emulator` + * itself (as opposed to the `EmulatorProvider` Blaze hands the SDK) implements + * `unixToSlot` with `Math.ceil`, and being structural, `TSlotClock` accepts it. + * Flooring a ceiled slot is a no-op, which would hand back a slot that has not + * started yet. So the candidate is checked against its own start time and walked + * back when it overshoots — a branch no real provider ever takes, and the reason + * the contract above holds for *any* clock rather than only the fractional ones. + * + * **Audit invariant:** `unixToSlot` must not be called anywhere else in the SDK. + * `rg 'unixToSlot' src/` matching only this file *is* the audit — keep it that + * way so a future time→slot conversion cannot reintroduce the bug. + */ +function slotFloor(clock, timeMs) { + var candidate = Math.floor(Number(clock.unixToSlot(timeMs))); + var overshoots = Number(clock.slotToUnix(_sdk.Core.Slot(candidate))) > Number(timeMs); + return _sdk.Core.Slot(overshoots ? candidate - 1 : candidate); +} + +/** + * `timeMs` snapped back to the start of its slot, as POSIX ms — exactly the + * "now" a validator reads from a tx whose validity bound is + * `slotFloor(clock, timeMs)`. Use this for any timestamp that has to equal a + * validity bound on-chain (a diffusion window's `diffusion_start`, a rate quote + * time), so the datum and the tx body cannot disagree. + * + * Idempotent — aligning an already-aligned time is a no-op — so a time derived + * from an aligned one (a backoff, a forward window) can be aligned again safely. + */ +function slotAlignedTimeMs(clock, timeMs) { + return BigInt(clock.slotToUnix(slotFloor(clock, timeMs))); +} +//# sourceMappingURL=slots.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/slots.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/slots.js.map new file mode 100644 index 0000000000..f2e5bf1035 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/slots.js.map @@ -0,0 +1 @@ +{"version":3,"file":"slots.js","names":["_sdk","require","slotFloor","clock","timeMs","candidate","Math","floor","Number","unixToSlot","overshoots","slotToUnix","Core","Slot","slotAlignedTimeMs","BigInt"],"sources":["../../../../src/sdk/shared/slots.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport { Core } from \"@blaze-cardano/sdk\";\n\n/**\n * The slot/time conversions a slot-alignment needs. Structural (rather than the\n * `Provider` class) so callers can pass any provider — Blockfrost, Kupmios,\n * `EmulatorProvider` — and tests can pass a plain object with a known slot\n * config. Note that `Emulator` (the clock, not its provider) also satisfies this\n * shape while rounding the other way; {@link slotFloor} handles both.\n */\nexport type TSlotClock = Pick;\n\n/**\n * The integer slot that contains `timeMs`: the latest slot that has already\n * started at `timeMs`.\n *\n * `provider.unixToSlot` does **not** floor — it returns\n * `(ms - zeroTime) / slotLength + zeroSlot`, so for any wall-clock time that is\n * not exactly on a slot boundary it yields a **fractional** slot. Two things\n * then go wrong if that value is used as-is:\n *\n * 1. A tx body stores `invalid_before` / `invalid_hereafter` as **integer**\n * slots, and the CBOR writer silently truncates the fraction. The value the\n * validator reads is therefore not the value the SDK computed with.\n * 2. The round-trip `slotToUnix(unixToSlot(t))` — the natural way to express\n * \"snap `t` to its slot\" — is the *identity* on `t`, not an alignment.\n *\n * That combination cost us a crashed windowed deposit on preview: the vault\n * output's `diffusion_start` kept the sub-slot remainder while the tx's validity\n * lower bound was floored, so `validate_deposit_diffusion`'s\n * `diffusion_start == now` check failed by that remainder (REALFI-653). The\n * emulator hid it because the clock injected in tests is already slot-aligned —\n * not because of any provider difference: `EmulatorProvider` extends the same\n * `Provider` base and returns the same fractional slots.\n *\n * Flooring alone would not be enough for a clock that ROUNDS UP: `Emulator`\n * itself (as opposed to the `EmulatorProvider` Blaze hands the SDK) implements\n * `unixToSlot` with `Math.ceil`, and being structural, `TSlotClock` accepts it.\n * Flooring a ceiled slot is a no-op, which would hand back a slot that has not\n * started yet. So the candidate is checked against its own start time and walked\n * back when it overshoots — a branch no real provider ever takes, and the reason\n * the contract above holds for *any* clock rather than only the fractional ones.\n *\n * **Audit invariant:** `unixToSlot` must not be called anywhere else in the SDK.\n * `rg 'unixToSlot' src/` matching only this file *is* the audit — keep it that\n * way so a future time→slot conversion cannot reintroduce the bug.\n */\nexport function slotFloor(\n clock: TSlotClock,\n timeMs: bigint | number,\n): Core.Slot {\n const candidate = Math.floor(Number(clock.unixToSlot(timeMs)));\n const overshoots =\n Number(clock.slotToUnix(Core.Slot(candidate))) > Number(timeMs);\n return Core.Slot(overshoots ? candidate - 1 : candidate);\n}\n\n/**\n * `timeMs` snapped back to the start of its slot, as POSIX ms — exactly the\n * \"now\" a validator reads from a tx whose validity bound is\n * `slotFloor(clock, timeMs)`. Use this for any timestamp that has to equal a\n * validity bound on-chain (a diffusion window's `diffusion_start`, a rate quote\n * time), so the datum and the tx body cannot disagree.\n *\n * Idempotent — aligning an already-aligned time is a no-op — so a time derived\n * from an aligned one (a backoff, a forward window) can be aligned again safely.\n */\nexport function slotAlignedTimeMs(\n clock: TSlotClock,\n timeMs: bigint | number,\n): bigint {\n return BigInt(clock.slotToUnix(slotFloor(clock, timeMs)));\n}\n"],"mappings":";;;;;;;AACA,IAAAA,IAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,SAASA,CACvBC,KAAiB,EACjBC,MAAuB,EACZ;EACX,IAAMC,SAAS,GAAGC,IAAI,CAACC,KAAK,CAACC,MAAM,CAACL,KAAK,CAACM,UAAU,CAACL,MAAM,CAAC,CAAC,CAAC;EAC9D,IAAMM,UAAU,GACdF,MAAM,CAACL,KAAK,CAACQ,UAAU,CAACC,SAAI,CAACC,IAAI,CAACR,SAAS,CAAC,CAAC,CAAC,GAAGG,MAAM,CAACJ,MAAM,CAAC;EACjE,OAAOQ,SAAI,CAACC,IAAI,CAACH,UAAU,GAAGL,SAAS,GAAG,CAAC,GAAGA,SAAS,CAAC;AAC1D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASS,iBAAiBA,CAC/BX,KAAiB,EACjBC,MAAuB,EACf;EACR,OAAOW,MAAM,CAACZ,KAAK,CAACQ,UAAU,CAACT,SAAS,CAACC,KAAK,EAAEC,MAAM,CAAC,CAAC,CAAC;AAC3D","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/timelock.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/timelock.js new file mode 100644 index 0000000000..e1daf5e8c5 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/timelock.js @@ -0,0 +1,235 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.UNSTAKE_METADATA_LABEL = exports.ORDER_ORIGIN_METADATA_LABEL = void 0; +exports.buildMultisigTimelockDestination = buildMultisigTimelockDestination; +exports.buildMultisigTimelockNativeScript = buildMultisigTimelockNativeScript; +exports.buildOrderOriginMetadata = buildOrderOriginMetadata; +exports.buildOrderOriginMetadatum = buildOrderOriginMetadatum; +exports.buildTimelockAddress = buildTimelockAddress; +exports.buildTimelockDestination = buildTimelockDestination; +exports.buildTimelockNativeScript = buildTimelockNativeScript; +exports.buildUnstakeMetadatum = buildUnstakeMetadatum; +exports.buildUnstakeOrderMetadata = buildUnstakeOrderMetadata; +exports.destinationToUnstakeMetadatum = destinationToUnstakeMetadatum; +exports.multisigScriptToNativeScript = multisigScriptToNativeScript; +exports.resolveTimelockNativeScript = resolveTimelockNativeScript; +var _core = require("@blaze-cardano/core"); +var _sdk = require("@blaze-cardano/sdk"); +function bigintToSlot(value, label) { + if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) { + throw new Error("".concat(label, " must be a non-negative safe integer")); + } + return _sdk.Core.Slot(Number(value)); +} +function bigintToNativeScriptCount(value, label) { + if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) { + throw new Error("".concat(label, " must be a non-negative safe integer")); + } + return Number(value); +} +function timelockStartNativeScript(unlockSlot) { + return _sdk.Core.NativeScript.newTimelockStart(new _sdk.Core.TimelockStart(bigintToSlot(unlockSlot, "unlockSlot"))); +} + +/** + * Convert the protocol MultisigScript shape to a Cardano native script. + * + * The protocol's `Script` variant references an arbitrary script hash, which + * native scripts cannot require directly, so this helper rejects it. + */ +function multisigScriptToNativeScript(multisig) { + if ("Signature" in multisig) { + var hash = _sdk.Core.Ed25519KeyHashHex(multisig.Signature.key_hash); + return _sdk.Core.NativeScript.newScriptPubkey(new _sdk.Core.ScriptPubkey(hash)); + } + if ("AllOf" in multisig) { + return _sdk.Core.NativeScript.newScriptAll(new _sdk.Core.ScriptAll(multisig.AllOf.scripts.map(multisigScriptToNativeScript))); + } + if ("AnyOf" in multisig) { + return _sdk.Core.NativeScript.newScriptAny(new _sdk.Core.ScriptAny(multisig.AnyOf.scripts.map(multisigScriptToNativeScript))); + } + if ("AtLeast" in multisig) { + return _sdk.Core.NativeScript.newScriptNOfK(new _sdk.Core.ScriptNOfK(multisig.AtLeast.scripts.map(multisigScriptToNativeScript), bigintToNativeScriptCount(multisig.AtLeast.required, "AtLeast.required"))); + } + if ("Before" in multisig) { + return _sdk.Core.NativeScript.newTimelockExpiry(new _sdk.Core.TimelockExpiry(bigintToSlot(multisig.Before.time, "Before.time"))); + } + if ("After" in multisig) { + return timelockStartNativeScript(multisig.After.time); + } + if ("Script" in multisig) { + throw new Error("MultisigScript Script variant cannot be converted to a native script"); + } + throw new Error("Unrecognized MultisigScript variant"); +} + +/** + * Build the native script used for timelock destinations after unstaking. + * + * The script enforces: AllOf { Signature(userKeyHash), After(unlockTime) } + * meaning the user can only spend the locked USDr after the unlock time. + * + * Use this to reconstruct the script when spending from a timelock address. + */ +function buildTimelockNativeScript(userKeyHash, unlockTime) { + var pubkeyScript = _sdk.Core.NativeScript.newScriptPubkey(new _sdk.Core.ScriptPubkey(_sdk.Core.Ed25519KeyHashHex(userKeyHash))); + var afterScript = timelockStartNativeScript(unlockTime); + return _sdk.Core.NativeScript.newScriptAll(new _sdk.Core.ScriptAll([pubkeyScript, afterScript])); +} + +/** + * Build the native script used for treasury-managed unstake destinations. + * + * The script enforces: AllOf { After(unlockSlot), ownerMultisigScript }. + */ +function buildMultisigTimelockNativeScript(owner, unlockSlot) { + return _sdk.Core.NativeScript.newScriptAll(new _sdk.Core.ScriptAll([timelockStartNativeScript(unlockSlot), multisigScriptToNativeScript(owner)])); +} + +/** + * Pick the timelock native script that a UTxO is actually locked at. + * + * One owner key and one unlock slot yield two different scripts depending on + * which flow created the timelock: the retail unstake path builds + * `AllOf { Signature, After }` and the treasury/multisig path + * `AllOf { After, Signature }`. Same requirements, different element order, + * different hash. The locking address names the script, so it is the authority + * on which one to provide — guessing produces a witness the ledger cannot + * resolve (Sentry DAPP-58). + * + * Timelocks requiring keys beyond `ownerKeyHash` match neither candidate and + * are rejected here, where the reason can be stated, rather than deep inside + * transaction building. + */ +function resolveTimelockNativeScript(lockingAddress, ownerKeyHash, unlockSlot) { + var paymentPart = lockingAddress.getProps().paymentPart; + if (!paymentPart || paymentPart.type !== _sdk.Core.CredentialType.ScriptHash) { + throw new Error("".concat(lockingAddress.toBech32(), " is not a script address, so it is not a timelock this wallet can claim")); + } + var candidates = [buildTimelockNativeScript(ownerKeyHash, unlockSlot), buildMultisigTimelockNativeScript({ + Signature: { + key_hash: ownerKeyHash + } + }, unlockSlot)]; + var match = candidates.find(function (candidate) { + return candidate.hash() === paymentPart.hash; + }); + if (!match) { + throw new Error("Script hash ".concat(paymentPart.hash, " is not a timelock this wallet can claim: ") + "neither timelock shape for owner ".concat(ownerKeyHash, " at unlock slot ").concat(unlockSlot, " produces it. ") + "A timelock requiring further keys must be claimed through the flow that created it."); + } + return match; +} + +/** + * Reconstruct the timelock address for a given user key hash, optional stake + * credential, and unlock slot. Useful for querying the live UTxO set to + * determine whether a claim has already been made. + */ +function buildTimelockAddress(networkId, userKeyHash, unlockSlot, stakeCredential) { + var nativeScript = buildTimelockNativeScript(userKeyHash, unlockSlot); + return (0, _core.addressFromCredentials)(networkId, _sdk.Core.Credential.fromCore({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: nativeScript.hash() + }), stakeCredential); +} + +/** + * Build a destination that routes funds to a timelock native script while + * preserving the original stake credential. + */ +function buildTimelockDestination(userDestination, unlockTime) { + var paymentCred = userDestination.address.payment_credential; + var userKeyHash; + if ("VerificationKey" in paymentCred) { + userKeyHash = paymentCred.VerificationKey[0]; + } else { + throw new Error("Unstake destination must use a verification key payment credential"); + } + var nativeScript = buildTimelockNativeScript(userKeyHash, unlockTime); + var scriptHash = nativeScript.hash(); + return { + address: { + payment_credential: { + Script: [scriptHash] + }, + stake_credential: userDestination.address.stake_credential + }, + datum: "NoDatum" + }; +} +function credentialToMetadatum(cred) { + var map = new _sdk.Core.MetadatumMap(); + if ("VerificationKey" in cred) { + map.insert(_sdk.Core.Metadatum.newText("VerificationKey"), _sdk.Core.Metadatum.newText(cred.VerificationKey[0])); + } else { + map.insert(_sdk.Core.Metadatum.newText("Script"), _sdk.Core.Metadatum.newText(cred.Script[0])); + } + return _sdk.Core.Metadatum.newMap(map); +} +function destinationToUnstakeMetadatum(destination) { + var addressMap = new _sdk.Core.MetadatumMap(); + addressMap.insert(_sdk.Core.Metadatum.newText("payment_credential"), credentialToMetadatum(destination.address.payment_credential)); + var stakeCredential = destination.address.stake_credential; + if (stakeCredential && "Inline" in stakeCredential) { + var inlineMap = new _sdk.Core.MetadatumMap(); + inlineMap.insert(_sdk.Core.Metadatum.newText("Inline"), credentialToMetadatum(stakeCredential.Inline[0])); + addressMap.insert(_sdk.Core.Metadatum.newText("stake_credential"), _sdk.Core.Metadatum.newMap(inlineMap)); + } + return _sdk.Core.Metadatum.newMap(addressMap); +} + +/** Label 55534472: unstake destination + unlock_time on every unstake order. */ +var UNSTAKE_METADATA_LABEL = exports.UNSTAKE_METADATA_LABEL = 55534472n; + +/** Build the metadatum for label 55534472 from a destination and unlock slot. */ +function buildUnstakeMetadatum(destination, unlockSlot) { + var unstakeMetaMap = new _sdk.Core.MetadatumMap(); + unstakeMetaMap.insert(_sdk.Core.Metadatum.newText("unlock_time"), _sdk.Core.Metadatum.newInteger(unlockSlot)); + unstakeMetaMap.insert(_sdk.Core.Metadatum.newText("destination"), destinationToUnstakeMetadatum(destination)); + return _sdk.Core.Metadatum.newMap(unstakeMetaMap); +} + +/** Label 55534473: SDK builder origin + version on every order transaction. */ +var ORDER_ORIGIN_METADATA_LABEL = exports.ORDER_ORIGIN_METADATA_LABEL = 55534473n; + +/** Build the metadatum for label 55534473 from a source + version pair. */ +function buildOrderOriginMetadatum(source, sdkVersion) { + var map = new _sdk.Core.MetadatumMap(); + map.insert(_sdk.Core.Metadatum.newText("source"), _sdk.Core.Metadatum.newText(source)); + map.insert(_sdk.Core.Metadatum.newText("version"), _sdk.Core.Metadatum.newText(sdkVersion)); + return _sdk.Core.Metadatum.newMap(map); +} + +/** Build a Metadata object containing only the origin label (55534473). */ +function buildOrderOriginMetadata(source, sdkVersion) { + var metadataMap = new Map(); + metadataMap.set(ORDER_ORIGIN_METADATA_LABEL, buildOrderOriginMetadatum(source, sdkVersion)); + return new _sdk.Core.Metadata(metadataMap); +} +function buildUnstakeOrderMetadata(destination, unlockSlot, source, sdkVersion) { + var metadataMap = new Map(); + metadataMap.set(UNSTAKE_METADATA_LABEL, buildUnstakeMetadatum(destination, unlockSlot)); + metadataMap.set(ORDER_ORIGIN_METADATA_LABEL, buildOrderOriginMetadatum(source, sdkVersion)); + return new _sdk.Core.Metadata(metadataMap); +} + +/** + * Build a destination that routes funds to a treasury multisig timelock native + * script while preserving the original stake credential. + */ +function buildMultisigTimelockDestination(destination, owner, unlockSlot) { + var nativeScript = buildMultisigTimelockNativeScript(owner, unlockSlot); + return { + address: { + payment_credential: { + Script: [nativeScript.hash()] + }, + stake_credential: destination.address.stake_credential + }, + datum: "NoDatum" + }; +} +//# sourceMappingURL=timelock.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/timelock.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/timelock.js.map new file mode 100644 index 0000000000..20595ca5f4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/timelock.js.map @@ -0,0 +1 @@ +{"version":3,"file":"timelock.js","names":["_core","require","_sdk","bigintToSlot","value","label","BigInt","Number","MAX_SAFE_INTEGER","Error","concat","Core","Slot","bigintToNativeScriptCount","timelockStartNativeScript","unlockSlot","NativeScript","newTimelockStart","TimelockStart","multisigScriptToNativeScript","multisig","hash","Ed25519KeyHashHex","Signature","key_hash","newScriptPubkey","ScriptPubkey","newScriptAll","ScriptAll","AllOf","scripts","map","newScriptAny","ScriptAny","AnyOf","newScriptNOfK","ScriptNOfK","AtLeast","required","newTimelockExpiry","TimelockExpiry","Before","time","After","buildTimelockNativeScript","userKeyHash","unlockTime","pubkeyScript","afterScript","buildMultisigTimelockNativeScript","owner","resolveTimelockNativeScript","lockingAddress","ownerKeyHash","paymentPart","getProps","type","CredentialType","ScriptHash","toBech32","candidates","match","find","candidate","buildTimelockAddress","networkId","stakeCredential","nativeScript","addressFromCredentials","Credential","fromCore","buildTimelockDestination","userDestination","paymentCred","address","payment_credential","VerificationKey","scriptHash","Script","stake_credential","datum","credentialToMetadatum","cred","MetadatumMap","insert","Metadatum","newText","newMap","destinationToUnstakeMetadatum","destination","addressMap","inlineMap","Inline","UNSTAKE_METADATA_LABEL","exports","buildUnstakeMetadatum","unstakeMetaMap","newInteger","ORDER_ORIGIN_METADATA_LABEL","buildOrderOriginMetadatum","source","sdkVersion","buildOrderOriginMetadata","metadataMap","Map","set","Metadata","buildUnstakeOrderMetadata","buildMultisigTimelockDestination"],"sources":["../../../../src/sdk/shared/timelock.ts"],"sourcesContent":["import { addressFromCredentials } from \"@blaze-cardano/core\";\nimport { Core } from \"@blaze-cardano/sdk\";\nimport type { TClientSource } from \"./client-id.js\";\nimport type { TMultisigScript } from \"./types.js\";\n\ntype TDestinationCredentialLike =\n | { VerificationKey: [string] }\n | { Script: [string] };\n\ntype TTimelockDestinationLike = {\n address: {\n payment_credential: TDestinationCredentialLike;\n stake_credential?:\n | { Inline: [TDestinationCredentialLike] }\n | { Pointer: unknown };\n };\n};\n\nfunction bigintToSlot(value: bigint, label: string): Core.Slot {\n if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) {\n throw new Error(`${label} must be a non-negative safe integer`);\n }\n return Core.Slot(Number(value));\n}\n\nfunction bigintToNativeScriptCount(value: bigint, label: string): number {\n if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) {\n throw new Error(`${label} must be a non-negative safe integer`);\n }\n return Number(value);\n}\n\nfunction timelockStartNativeScript(unlockSlot: bigint): Core.NativeScript {\n return Core.NativeScript.newTimelockStart(\n new Core.TimelockStart(bigintToSlot(unlockSlot, \"unlockSlot\")),\n );\n}\n\n/**\n * Convert the protocol MultisigScript shape to a Cardano native script.\n *\n * The protocol's `Script` variant references an arbitrary script hash, which\n * native scripts cannot require directly, so this helper rejects it.\n */\nexport function multisigScriptToNativeScript(\n multisig: TMultisigScript,\n): Core.NativeScript {\n if (\"Signature\" in multisig) {\n const hash = Core.Ed25519KeyHashHex(multisig.Signature.key_hash);\n return Core.NativeScript.newScriptPubkey(new Core.ScriptPubkey(hash));\n }\n if (\"AllOf\" in multisig) {\n return Core.NativeScript.newScriptAll(\n new Core.ScriptAll(\n multisig.AllOf.scripts.map(multisigScriptToNativeScript),\n ),\n );\n }\n if (\"AnyOf\" in multisig) {\n return Core.NativeScript.newScriptAny(\n new Core.ScriptAny(\n multisig.AnyOf.scripts.map(multisigScriptToNativeScript),\n ),\n );\n }\n if (\"AtLeast\" in multisig) {\n return Core.NativeScript.newScriptNOfK(\n new Core.ScriptNOfK(\n multisig.AtLeast.scripts.map(multisigScriptToNativeScript),\n bigintToNativeScriptCount(\n multisig.AtLeast.required,\n \"AtLeast.required\",\n ),\n ),\n );\n }\n if (\"Before\" in multisig) {\n return Core.NativeScript.newTimelockExpiry(\n new Core.TimelockExpiry(\n bigintToSlot(multisig.Before.time, \"Before.time\"),\n ),\n );\n }\n if (\"After\" in multisig) {\n return timelockStartNativeScript(multisig.After.time);\n }\n if (\"Script\" in multisig) {\n throw new Error(\n \"MultisigScript Script variant cannot be converted to a native script\",\n );\n }\n\n throw new Error(\"Unrecognized MultisigScript variant\");\n}\n\n/**\n * Build the native script used for timelock destinations after unstaking.\n *\n * The script enforces: AllOf { Signature(userKeyHash), After(unlockTime) }\n * meaning the user can only spend the locked USDr after the unlock time.\n *\n * Use this to reconstruct the script when spending from a timelock address.\n */\nexport function buildTimelockNativeScript(\n userKeyHash: string,\n unlockTime: bigint,\n): Core.NativeScript {\n const pubkeyScript = Core.NativeScript.newScriptPubkey(\n new Core.ScriptPubkey(Core.Ed25519KeyHashHex(userKeyHash)),\n );\n const afterScript = timelockStartNativeScript(unlockTime);\n return Core.NativeScript.newScriptAll(\n new Core.ScriptAll([pubkeyScript, afterScript]),\n );\n}\n\n/**\n * Build the native script used for treasury-managed unstake destinations.\n *\n * The script enforces: AllOf { After(unlockSlot), ownerMultisigScript }.\n */\nexport function buildMultisigTimelockNativeScript(\n owner: TMultisigScript,\n unlockSlot: bigint,\n): Core.NativeScript {\n return Core.NativeScript.newScriptAll(\n new Core.ScriptAll([\n timelockStartNativeScript(unlockSlot),\n multisigScriptToNativeScript(owner),\n ]),\n );\n}\n\n/**\n * Pick the timelock native script that a UTxO is actually locked at.\n *\n * One owner key and one unlock slot yield two different scripts depending on\n * which flow created the timelock: the retail unstake path builds\n * `AllOf { Signature, After }` and the treasury/multisig path\n * `AllOf { After, Signature }`. Same requirements, different element order,\n * different hash. The locking address names the script, so it is the authority\n * on which one to provide — guessing produces a witness the ledger cannot\n * resolve (Sentry DAPP-58).\n *\n * Timelocks requiring keys beyond `ownerKeyHash` match neither candidate and\n * are rejected here, where the reason can be stated, rather than deep inside\n * transaction building.\n */\nexport function resolveTimelockNativeScript(\n lockingAddress: Core.Address,\n ownerKeyHash: string,\n unlockSlot: bigint,\n): Core.NativeScript {\n const paymentPart = lockingAddress.getProps().paymentPart;\n if (!paymentPart || paymentPart.type !== Core.CredentialType.ScriptHash) {\n throw new Error(\n `${lockingAddress.toBech32()} is not a script address, so it is not a timelock this wallet can claim`,\n );\n }\n\n const candidates = [\n buildTimelockNativeScript(ownerKeyHash, unlockSlot),\n buildMultisigTimelockNativeScript(\n { Signature: { key_hash: ownerKeyHash } },\n unlockSlot,\n ),\n ];\n const match = candidates.find(\n (candidate) => candidate.hash() === paymentPart.hash,\n );\n if (!match) {\n throw new Error(\n `Script hash ${paymentPart.hash} is not a timelock this wallet can claim: ` +\n `neither timelock shape for owner ${ownerKeyHash} at unlock slot ${unlockSlot} produces it. ` +\n `A timelock requiring further keys must be claimed through the flow that created it.`,\n );\n }\n return match;\n}\n\n/**\n * Reconstruct the timelock address for a given user key hash, optional stake\n * credential, and unlock slot. Useful for querying the live UTxO set to\n * determine whether a claim has already been made.\n */\nexport function buildTimelockAddress(\n networkId: Core.NetworkId,\n userKeyHash: string,\n unlockSlot: bigint,\n stakeCredential?: Core.Credential,\n): Core.Address {\n const nativeScript = buildTimelockNativeScript(userKeyHash, unlockSlot);\n return addressFromCredentials(\n networkId,\n Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash: nativeScript.hash(),\n }),\n stakeCredential,\n );\n}\n\n/**\n * Build a destination that routes funds to a timelock native script while\n * preserving the original stake credential.\n */\nexport function buildTimelockDestination(\n userDestination: T,\n unlockTime: bigint,\n): {\n address: {\n payment_credential: { Script: [string] };\n stake_credential: T[\"address\"][\"stake_credential\"];\n };\n datum: \"NoDatum\";\n} {\n const paymentCred = userDestination.address.payment_credential;\n let userKeyHash: string;\n\n if (\"VerificationKey\" in paymentCred) {\n userKeyHash = paymentCred.VerificationKey[0];\n } else {\n throw new Error(\n \"Unstake destination must use a verification key payment credential\",\n );\n }\n\n const nativeScript = buildTimelockNativeScript(userKeyHash, unlockTime);\n const scriptHash = nativeScript.hash();\n\n return {\n address: {\n payment_credential: { Script: [scriptHash] },\n stake_credential: userDestination.address.stake_credential,\n },\n datum: \"NoDatum\",\n };\n}\n\nfunction credentialToMetadatum(\n cred: TDestinationCredentialLike,\n): Core.Metadatum {\n const map = new Core.MetadatumMap();\n if (\"VerificationKey\" in cred) {\n map.insert(\n Core.Metadatum.newText(\"VerificationKey\"),\n Core.Metadatum.newText(cred.VerificationKey[0]),\n );\n } else {\n map.insert(\n Core.Metadatum.newText(\"Script\"),\n Core.Metadatum.newText(cred.Script[0]),\n );\n }\n return Core.Metadatum.newMap(map);\n}\n\nexport function destinationToUnstakeMetadatum(\n destination: TTimelockDestinationLike,\n): Core.Metadatum {\n const addressMap = new Core.MetadatumMap();\n addressMap.insert(\n Core.Metadatum.newText(\"payment_credential\"),\n credentialToMetadatum(destination.address.payment_credential),\n );\n\n const stakeCredential = destination.address.stake_credential;\n if (stakeCredential && \"Inline\" in stakeCredential) {\n const inlineMap = new Core.MetadatumMap();\n inlineMap.insert(\n Core.Metadatum.newText(\"Inline\"),\n credentialToMetadatum(stakeCredential.Inline[0]),\n );\n addressMap.insert(\n Core.Metadatum.newText(\"stake_credential\"),\n Core.Metadatum.newMap(inlineMap),\n );\n }\n\n return Core.Metadatum.newMap(addressMap);\n}\n\n/** Label 55534472: unstake destination + unlock_time on every unstake order. */\nexport const UNSTAKE_METADATA_LABEL = 55534472n;\n\n/** Build the metadatum for label 55534472 from a destination and unlock slot. */\nexport function buildUnstakeMetadatum(\n destination: TTimelockDestinationLike,\n unlockSlot: bigint,\n): Core.Metadatum {\n const unstakeMetaMap = new Core.MetadatumMap();\n unstakeMetaMap.insert(\n Core.Metadatum.newText(\"unlock_time\"),\n Core.Metadatum.newInteger(unlockSlot),\n );\n unstakeMetaMap.insert(\n Core.Metadatum.newText(\"destination\"),\n destinationToUnstakeMetadatum(destination),\n );\n return Core.Metadatum.newMap(unstakeMetaMap);\n}\n\n/** Label 55534473: SDK builder origin + version on every order transaction. */\nexport const ORDER_ORIGIN_METADATA_LABEL = 55534473n;\n\n/** Build the metadatum for label 55534473 from a source + version pair. */\nexport function buildOrderOriginMetadatum(\n source: TClientSource,\n sdkVersion: string,\n): Core.Metadatum {\n const map = new Core.MetadatumMap();\n map.insert(Core.Metadatum.newText(\"source\"), Core.Metadatum.newText(source));\n map.insert(\n Core.Metadatum.newText(\"version\"),\n Core.Metadatum.newText(sdkVersion),\n );\n return Core.Metadatum.newMap(map);\n}\n\n/** Build a Metadata object containing only the origin label (55534473). */\nexport function buildOrderOriginMetadata(\n source: TClientSource,\n sdkVersion: string,\n): Core.Metadata {\n const metadataMap = new Map();\n metadataMap.set(\n ORDER_ORIGIN_METADATA_LABEL,\n buildOrderOriginMetadatum(source, sdkVersion),\n );\n return new Core.Metadata(metadataMap);\n}\n\nexport function buildUnstakeOrderMetadata(\n destination: TTimelockDestinationLike,\n unlockSlot: bigint,\n source: TClientSource,\n sdkVersion: string,\n): Core.Metadata {\n const metadataMap = new Map();\n metadataMap.set(\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(destination, unlockSlot),\n );\n metadataMap.set(\n ORDER_ORIGIN_METADATA_LABEL,\n buildOrderOriginMetadatum(source, sdkVersion),\n );\n return new Core.Metadata(metadataMap);\n}\n\n/**\n * Build a destination that routes funds to a treasury multisig timelock native\n * script while preserving the original stake credential.\n */\nexport function buildMultisigTimelockDestination<\n T extends TTimelockDestinationLike,\n>(\n destination: T,\n owner: TMultisigScript,\n unlockSlot: bigint,\n): {\n address: {\n payment_credential: { Script: [string] };\n stake_credential: T[\"address\"][\"stake_credential\"];\n };\n datum: \"NoDatum\";\n} {\n const nativeScript = buildMultisigTimelockNativeScript(owner, unlockSlot);\n return {\n address: {\n payment_credential: { Script: [nativeScript.hash()] },\n stake_credential: destination.address.stake_credential,\n },\n datum: \"NoDatum\",\n };\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/types.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/types.js new file mode 100644 index 0000000000..239667a3d0 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/types.js @@ -0,0 +1,6 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/types.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/types.js.map new file mode 100644 index 0000000000..ae66ec4809 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","names":[],"sources":["../../../../src/sdk/shared/types.ts"],"sourcesContent":["import type { Core } from \"@blaze-cardano/sdk\";\n\n/**\n * Protocol version identifier\n */\nexport type TProtocolVersion =\n | \"V0\"\n | \"V0_1\"\n | \"V0_2\"\n | \"V0_3\"\n | \"V0_4\"\n | \"V1_0\"\n | \"V1_0_Rc1\"\n | \"V1_1_Rc1\";\n\n/**\n * Bootstrap parameters for initializing the SDK\n */\nexport interface IProxyBootstrap {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n}\n\n/**\n * Base parameters common to all SDK versions\n */\nexport interface IBaseSDKParams {\n version: TProtocolVersion;\n proxyBootstrap: IProxyBootstrap;\n assetNameHex: string;\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When set,\n * deployment locks reference UTxOs at this address and resolution queries it\n * first (a small, fast UTxO set). When omitted, Blaze's burn address is used.\n */\n scriptDeploymentAddress?: Core.Address;\n}\n\n/**\n * Reference inputs that can be cached for performance\n */\nexport interface ICachedReferenceInputs {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n stakingVaultRefInput?: Core.TransactionUnspentOutput;\n // V1.0 additional protocol scripts\n protocolMintRefInput?: Core.TransactionUnspentOutput;\n protocolStakeRefInput?: Core.TransactionUnspentOutput;\n protocolManagementRefInput?: Core.TransactionUnspentOutput;\n}\n\n/**\n * Result type for raw proxy-datum fetches.\n */\nexport interface IRawProxyDatumResult {\n proxyUtxo: Core.TransactionUnspentOutput;\n proxyDatum: Core.PlutusData;\n}\n\n/**\n * Result type for parsed proxy-datum fetches.\n */\nexport interface IProxyDatumResult extends IRawProxyDatumResult {\n parsedProxyDatum: T;\n}\n\n/**\n * Result type for getTreasuryDatum operations\n */\nexport interface ITreasuryDatumResult {\n treasuryUtxo: Core.TransactionUnspentOutput;\n treasuryDatum: Core.PlutusData;\n parsedTreasuryDatum: T;\n}\n\n/**\n * Result type for getVaultDatum operations\n */\nexport interface IVaultDatumResult {\n vaultUtxo: Core.TransactionUnspentOutput;\n vaultDatum: Core.PlutusData;\n parsedVaultDatum: T;\n}\n\n/**\n * Output reference type used in scripts\n */\nexport interface IOutputReference {\n transaction_id: Core.TransactionId;\n output_index: bigint;\n}\n\n/**\n * Version-agnostic MultisigScript. Structurally identical across all\n * protocol versions (same Plutus CBOR encoding).\n */\nexport type TMultisigScript =\n | { Signature: { key_hash: string } }\n | { AllOf: { scripts: TMultisigScript[] } }\n | { AnyOf: { scripts: TMultisigScript[] } }\n | { AtLeast: { required: bigint; scripts: TMultisigScript[] } }\n | { Before: { time: bigint } }\n | { After: { time: bigint } }\n | { Script: { script_hash: string } };\n\n/**\n * Version-agnostic reserve asset.\n */\nexport interface IReserveAsset {\n asset: [string, string];\n numerator: bigint;\n denominator: bigint;\n}\n\n/**\n * Version-agnostic proxy settings — common fields only.\n * Hides version-specific fields (direct_mint/burn_permission, registry shape).\n */\nexport interface IProxySettings {\n mint_permission: TMultisigScript;\n burn_permission: TMultisigScript;\n withdraw_permission: TMultisigScript;\n deposit_permission: TMultisigScript;\n stake_permission: TMultisigScript;\n unstake_permission: TMultisigScript;\n reserve_assets: IReserveAsset[];\n}\n\n/**\n * Permission key — for safely indexing into IProxySettings.\n */\nexport type TPermissionKey =\n | \"mint_permission\"\n | \"burn_permission\"\n | \"withdraw_permission\"\n | \"deposit_permission\"\n | \"stake_permission\"\n | \"unstake_permission\";\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/utils.js b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/utils.js new file mode 100644 index 0000000000..881218a9cd --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/utils.js @@ -0,0 +1,1411 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.addDestinationOutput = addDestinationOutput; +exports.addDirectOutput = addDirectOutput; +exports.addressToDestination = addressToDestination; +exports.createSignedRedeemer = exports.buildOriginFromUtxo = exports.buildNonceFromUtxo = void 0; +exports.credentialFromScript = credentialFromScript; +exports.credentialFromScriptHash = credentialFromScriptHash; +exports.deployScript = deployScript; +exports.destinationToAddress = destinationToAddress; +exports.getAllKeyHashesFromMultisigScript = exports.destructureCip30Signature = void 0; +exports.getDatumFromNFT = getDatumFromNFT; +exports.getInlineDatumFromUtxo = void 0; +exports.getReferenceInputs = getReferenceInputs; +exports.getSignedPayloadForWithdraw = exports.getSignedPayloadForDeposit = exports.getSignatureKeyHashesFromMultisigScript = exports.getScriptKeyHashesFromMultisigScript = exports.getScriptHashFromOrderUtxo = void 0; +exports.getUnspentOutputByNftWithRetry = getUnspentOutputByNftWithRetry; +exports.lockOrPayAssets = lockOrPayAssets; +exports.readCoseSign1Parts = exports.parseOrderOwnerGenericFromDatum = exports.parseOrderOwnerGeneric = exports.normalizeProtocolVersion = exports.normalizeOrderVersion = void 0; +exports.readSingletonDatum = readSingletonDatum; +exports.resolveOrderReferenceInputs = resolveOrderReferenceInputs; +exports.resolveReferenceInputsByScriptHash = resolveReferenceInputsByScriptHash; +exports.rewardAccountFromScript = rewardAccountFromScript; +exports.sortOrderInputs = exports.signPayloadHashWithWallet = void 0; +var _core = require("@blaze-cardano/core"); +var _data = _interopRequireWildcard(require("@blaze-cardano/data")); +var Data = _data; +var _sdk = require("@blaze-cardano/sdk"); +var _errors = require("./errors.js"); +var _index = require("../../generated-types/index.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t9 in e) "default" !== _t9 && {}.hasOwnProperty.call(e, _t9) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t9)) && (i.get || i.set) ? o(f, _t9, i) : f[_t9] = e[_t9]); return f; })(e, t); } +function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; } +function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } +function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); } +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); } +function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +/** + * Create a reward account from a script + */ +function rewardAccountFromScript(script, network) { + var credential = credentialFromScript(script); + return _sdk.Core.RewardAccount.fromCredential(credential.toCore(), network); +} + +/** + * Create a credential from a script + */ +function credentialFromScript(script) { + return credentialFromScriptHash(script.hash()); +} + +/** + * Create a credential from a script hash + */ +function credentialFromScriptHash(scriptHash) { + return _sdk.Core.Credential.fromCore({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: scriptHash + }); +} + +/** + * Send a value (with an attached datum) to either a key-credentialled or + * script-credentialled address. This helper emits an explicit output for + * the destination address so callers (mintOneShot / updateOneShotDatum / + * etc.) work transparently in both single-signer and multisig deployments. + * + * Mutates `tx` (matching Blaze's builder pattern) and returns it for chaining. + */ +function lockOrPayAssets(tx, address, value, datum) { + return addDirectOutput(tx, address, value, datum); +} + +/** + * Add an explicit transaction output for the target address and value. + * + * Mutates `tx` and returns it for call sites that want to keep builder-style + * chaining. + */ +function addDirectOutput(tx, address, value, datum) { + var output = new _sdk.Core.TransactionOutput(address, value); + if (datum) { + output.setDatum(_sdk.Core.Datum.newInlineData(datum)); + } + tx.addOutput(output); + return tx; +} + +/** + * Blockfrost responds to `getUnspentOutputs` on an unused address with HTTP + * 404 ("requested component has not been found"), which the provider surfaces + * as a generic Error. Treat only that exact failure as "not found at this + * address" so outages and malformed responses still propagate. + * + * The query path is matched with an optional leading slash: @blaze-cardano/query + * builds `/addresses/...`, while a caller paging the same endpoint itself builds + * `addresses/...` (Blockfrost's base url already ends in `/`). The cron carries + * a matcher for the same message + * (`cli/src/scripts/lib/order-utxo-fetch.ts`); keep the two in step. + */ +var BLOCKFROST_ADDRESS_NOT_FOUND = /^getUnspentOutputs: Blockfrost threw "The requested component has not been found\." for query: \/?addresses\//; +function isBlockfrostAddressNotFoundError(error) { + return error instanceof Error && BLOCKFROST_ADDRESS_NOT_FOUND.test(error.message); +} + +/** + * Fully resolve the address's current unspent outputs. + * + * Blockfrost can expose a reference script through the transaction-output + * endpoint before (or without) hydrating `reference_script_hash` on the address + * UTxO endpoint. Re-resolving the inputs returned by the address query + * preserves the unspent-only constraint while recovering the full output + * metadata from the exact transactions. + */ +function hydrateUnspentOutputs(_x, _x2) { + return _hydrateUnspentOutputs.apply(this, arguments); +} +/** + * A `hydrateUnspentOutputs` call shared by every hash resolved against the same + * address in one pass. Hydration costs one provider request per UTxO at the + * address, so a caller resolving eight script hashes against a provider that + * omits script metadata would otherwise pay the whole sweep eight times, and + * the dapp runs this against a rate-limited Blockfrost proxy. Scoped to a + * single call rather than cached on the SDK so a later pass still sees a script + * deployed in the meantime. + */ +function _hydrateUnspentOutputs() { + _hydrateUnspentOutputs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(blaze, address) { + var unspent; + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + _context3.n = 1; + return blaze.provider.getUnspentOutputs(address); + case 1: + unspent = _context3.v; + if (!(unspent.length === 0)) { + _context3.n = 2; + break; + } + return _context3.a(2, []); + case 2: + return _context3.a(2, blaze.provider.resolveUnspentOutputs(unspent.map(function (utxo) { + return utxo.input(); + }))); + } + }, _callee3); + })); + return _hydrateUnspentOutputs.apply(this, arguments); +} +function shareHydration(blaze, address) { + var pending; + return function () { + return pending !== null && pending !== void 0 ? pending : pending = hydrateUnspentOutputs(blaze, address); + }; +} + +/** + * Resolve a script reference at a specific address, tolerating Blockfrost's + * throw for an address with no history instead of an empty result, and its + * missing script metadata on the address UTxO endpoint. + */ +function resolveScriptRefAtAddress(_x3, _x4, _x5) { + return _resolveScriptRefAtAddress.apply(this, arguments); +} +/** + * Deploy a script as a reference script. + * + * When `address` is provided, the reference UTxO is locked at that address + * (instead of Blaze's default burn address), which lets resolution query a + * small, dedicated UTxO set rather than the shared burn address. + * + * Throws `ScriptAlreadyDeployedError` (carrying the existing reference + * UTxO) if the script is already deployed *at the target location* — the + * specified `address` when given, otherwise the burn-address default. The + * guard is intentionally scoped to the deploy target only: a copy that + * exists elsewhere (e.g. a legacy copy at the burn address) does NOT block + * deploying to a newly specified address, which is exactly what a migration + * needs. Callers that want idempotent reruns should catch that specific class. + */ +function _resolveScriptRefAtAddress() { + _resolveScriptRefAtAddress = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(blaze, hash, address) { + var hydrate, + resolved, + hydrated, + _args4 = arguments, + _t; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.p = _context4.n) { + case 0: + hydrate = _args4.length > 3 && _args4[3] !== undefined ? _args4[3] : function () { + return hydrateUnspentOutputs(blaze, address); + }; + _context4.p = 1; + _context4.n = 2; + return blaze.provider.resolveScriptRef(hash, address); + case 2: + resolved = _context4.v; + if (!resolved) { + _context4.n = 3; + break; + } + return _context4.a(2, resolved); + case 3: + _context4.n = 6; + break; + case 4: + _context4.p = 4; + _t = _context4.v; + if (isBlockfrostAddressNotFoundError(_t)) { + _context4.n = 5; + break; + } + throw _t; + case 5: + return _context4.a(2, undefined); + case 6: + _context4.n = 7; + return hydrate(); + case 7: + hydrated = _context4.v; + return _context4.a(2, hydrated.find(function (utxo) { + var _utxo$output$scriptRe; + return ((_utxo$output$scriptRe = utxo.output().scriptRef()) === null || _utxo$output$scriptRe === void 0 ? void 0 : _utxo$output$scriptRe.hash()) === hash; + })); + } + }, _callee4, null, [[1, 4]]); + })); + return _resolveScriptRefAtAddress.apply(this, arguments); +} +function deployScript(_x6, _x7, _x8) { + return _deployScript.apply(this, arguments); +} +function _deployScript() { + _deployScript = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(blaze, script, address) { + var refInput, deployTx, _t2; + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + if (!address) { + _context5.n = 2; + break; + } + _context5.n = 1; + return resolveScriptRefAtAddress(blaze, script.hash(), address); + case 1: + _t2 = _context5.v; + _context5.n = 4; + break; + case 2: + _context5.n = 3; + return blaze.provider.resolveScriptRef(script.hash()); + case 3: + _t2 = _context5.v; + case 4: + refInput = _t2; + if (!refInput) { + _context5.n = 5; + break; + } + throw new _errors.ScriptAlreadyDeployedError(script.hash(), refInput); + case 5: + // `address === undefined` -> Blaze locks the script at the burn address. + deployTx = blaze.newTransaction().deployScript(script, address); + return _context5.a(2, deployTx); + } + }, _callee5); + })); + return _deployScript.apply(this, arguments); +} +var NFT_LOOKUP_ATTEMPTS = 3; +var NFT_LOOKUP_BACKOFF_MS = 250; +var sleep = function sleep(ms) { + return new Promise(function (resolve) { + return setTimeout(resolve, ms); + }); +}; + +/** + * Look up an NFT UTxO, retrying indexer lag after the output moves. + * Treats both a thrown 404 and an empty result as lag. Re-throws the last + * provider error when the budget is exhausted. + */ +function getUnspentOutputByNftWithRetry(_x9, _x0) { + return _getUnspentOutputByNftWithRetry.apply(this, arguments); +} +/** + * Rebuild `utxo` with `datum` attached inline, preserving its input ref, + * address, value and reference script. + */ +function _getUnspentOutputByNftWithRetry() { + _getUnspentOutputByNftWithRetry = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(provider, assetId) { + var lastError, attempt, utxo, _t3; + return _regenerator().w(function (_context6) { + while (1) switch (_context6.p = _context6.n) { + case 0: + attempt = 1; + case 1: + if (!(attempt <= NFT_LOOKUP_ATTEMPTS)) { + _context6.n = 8; + break; + } + _context6.p = 2; + _context6.n = 3; + return provider.getUnspentOutputByNFT(assetId); + case 3: + utxo = _context6.v; + if (!utxo) { + _context6.n = 4; + break; + } + return _context6.a(2, utxo); + case 4: + lastError = undefined; + _context6.n = 6; + break; + case 5: + _context6.p = 5; + _t3 = _context6.v; + lastError = _t3; + case 6: + if (!(attempt < NFT_LOOKUP_ATTEMPTS)) { + _context6.n = 7; + break; + } + _context6.n = 7; + return sleep(NFT_LOOKUP_BACKOFF_MS * attempt); + case 7: + attempt++; + _context6.n = 1; + break; + case 8: + if (!lastError) { + _context6.n = 9; + break; + } + throw lastError; + case 9: + return _context6.a(2, undefined); + } + }, _callee6, null, [[2, 5]]); + })); + return _getUnspentOutputByNftWithRetry.apply(this, arguments); +} +function withInlineDatum(utxo, datum) { + var output = utxo.output(); + var promoted = new _sdk.Core.TransactionOutput(output.address(), output.amount()); + promoted.setDatum(_sdk.Core.Datum.newInlineData(datum)); + var scriptRef = output.scriptRef(); + if (scriptRef) { + promoted.setScriptRef(scriptRef); + } + return new _sdk.Core.TransactionUnspentOutput(utxo.input(), promoted); +} + +/** + * Read an NFT singleton (proxy, treasury, vault) and its datum. + * + * Protocol singletons are locked inline. A hash-form read is a provider + * artifact (Blockfrost omitting `inline_datum`). Validators require + * `InlineDatum` on the singleton input; passing the preimage as `addInput`'s + * 3rd arg is a supplemental witness datum that local eval and phase-1 reject. + * Resolve the hash, verify the preimage, and reattach it inline. + * + * The lookup is retried: a singleton always exists, so a not-found answer is + * the provider's index lagging the UTxO's latest move, not a missing singleton. + */ +function readSingletonDatum(_x1, _x10) { + return _readSingletonDatum.apply(this, arguments); +} +/** + * Get datum from a UTxO containing a specific NFT, optionally parsed under + * `datumSchema`. Datum-hash reads are repaired by {@link readSingletonDatum}. + */ +function _readSingletonDatum() { + _readSingletonDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(provider, nftAssetId) { + var _read$output$datum, _read$output$datum2; + var read, inline, datumHash, resolved, preimageHash, input; + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + _context7.n = 1; + return getUnspentOutputByNftWithRetry(provider, nftAssetId); + case 1: + read = _context7.v; + if (read) { + _context7.n = 2; + break; + } + throw new Error("No UTXO found with NFT: ".concat(nftAssetId)); + case 2: + inline = (_read$output$datum = read.output().datum()) === null || _read$output$datum === void 0 ? void 0 : _read$output$datum.asInlineData(); + if (!inline) { + _context7.n = 3; + break; + } + return _context7.a(2, { + utxo: read, + datum: inline + }); + case 3: + datumHash = (_read$output$datum2 = read.output().datum()) === null || _read$output$datum2 === void 0 ? void 0 : _read$output$datum2.asDataHash(); + if (datumHash) { + _context7.n = 4; + break; + } + throw new Error("No datum found in UTXO with NFT: ".concat(nftAssetId)); + case 4: + _context7.n = 5; + return provider.resolveDatum(datumHash); + case 5: + resolved = _context7.v; + preimageHash = _sdk.Core.blake2b_256(resolved.toCbor()); + if (!(preimageHash !== datumHash)) { + _context7.n = 6; + break; + } + throw new Error("Datum resolved for UTXO with NFT ".concat(nftAssetId, " does not match its datum hash: ") + "resolved preimage hashes to ".concat(preimageHash, ", UTXO reports ").concat(datumHash)); + case 6: + input = read.input(); + console.warn("[realfi-sdk] singleton ".concat(nftAssetId, " read at ").concat(input.transactionId(), "#").concat(input.index(), " ") + "reported datum hash ".concat(datumHash, " instead of its inline datum; reattaching the resolved preimage inline")); + return _context7.a(2, { + utxo: withInlineDatum(read, resolved), + datum: resolved + }); + } + }, _callee7); + })); + return _readSingletonDatum.apply(this, arguments); +} +function getDatumFromNFT(_x11, _x12, _x13) { + return _getDatumFromNFT.apply(this, arguments); +} +/** + * Get script reference inputs, using cached values when available. + * + * When `address` is provided, each script is resolved at that address first + * (a fast, dedicated query) and only falls back to Blaze's burn-address + * default if it isn't found there. This keeps previously burn-address-deployed + * scripts resolvable while migrating to a specified deployment address. + */ +function _getDatumFromNFT() { + _getDatumFromNFT = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(blaze, nftAssetId, datumSchema) { + var _yield$readSingletonD, utxo, datum, parsedDatum; + return _regenerator().w(function (_context8) { + while (1) switch (_context8.n) { + case 0: + _context8.n = 1; + return readSingletonDatum(blaze.provider, nftAssetId); + case 1: + _yield$readSingletonD = _context8.v; + utxo = _yield$readSingletonD.utxo; + datum = _yield$readSingletonD.datum; + if (!datumSchema) { + _context8.n = 2; + break; + } + parsedDatum = (0, _data.parse)(datumSchema, datum); + return _context8.a(2, { + utxo: utxo, + datum: datum, + parsedDatum: parsedDatum + }); + case 2: + return _context8.a(2, { + utxo: utxo, + datum: datum, + parsedDatum: undefined + }); + } + }, _callee8); + })); + return _getDatumFromNFT.apply(this, arguments); +} +function getReferenceInputs(_x14, _x15, _x16, _x17) { + return _getReferenceInputs.apply(this, arguments); +} +/** + * Extract signature key hashes from a multisig script + */ +function _getReferenceInputs() { + _getReferenceInputs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(blaze, scriptHashes, cachedInputs, address) { + var referenceInputs, hydrate, _i2, _Object$entries, _Object$entries$_i, name, hash, refInput, _t4, _t5; + return _regenerator().w(function (_context9) { + while (1) switch (_context9.n) { + case 0: + referenceInputs = {}; + hydrate = address ? shareHydration(blaze, address) : undefined; + _i2 = 0, _Object$entries = Object.entries(scriptHashes); + case 1: + if (!(_i2 < _Object$entries.length)) { + _context9.n = 9; + break; + } + _Object$entries$_i = _slicedToArray(_Object$entries[_i2], 2), name = _Object$entries$_i[0], hash = _Object$entries$_i[1]; + if (!(cachedInputs !== null && cachedInputs !== void 0 && cachedInputs[name])) { + _context9.n = 2; + break; + } + referenceInputs[name] = cachedInputs[name]; + return _context9.a(3, 8); + case 2: + _t5 = address; + if (!_t5) { + _context9.n = 4; + break; + } + _context9.n = 3; + return resolveScriptRefAtAddress(blaze, hash, address, hydrate); + case 3: + _t5 = _context9.v; + case 4: + _t4 = _t5; + if (_t4) { + _context9.n = 6; + break; + } + _context9.n = 5; + return blaze.provider.resolveScriptRef(hash); + case 5: + _t4 = _context9.v; + case 6: + refInput = _t4; + if (refInput) { + _context9.n = 7; + break; + } + throw new Error("No reference input found for ".concat(name, " script (").concat(hash, "). Make sure it is deployed.")); + case 7: + referenceInputs[name] = refInput; + case 8: + _i2++; + _context9.n = 1; + break; + case 9: + return _context9.a(2, referenceInputs); + } + }, _callee9); + })); + return _getReferenceInputs.apply(this, arguments); +} +var _getSignatureKeyHashesFromMultisigScript = exports.getSignatureKeyHashesFromMultisigScript = function getSignatureKeyHashesFromMultisigScript(multisig) { + var result = []; + if ("Signature" in multisig) { + result.push(multisig.Signature.key_hash); + } else if ("AtLeast" in multisig) { + multisig.AtLeast.scripts.map(function (s) { + return _getSignatureKeyHashesFromMultisigScript(s); + }).flat().forEach(function (s) { + result.push(s); + }); + } else if ("AllOf" in multisig) { + multisig.AllOf.scripts.map(function (s) { + return _getSignatureKeyHashesFromMultisigScript(s); + }).flat().forEach(function (s) { + result.push(s); + }); + } else if ("AnyOf" in multisig) { + multisig.AnyOf.scripts.map(function (s) { + return _getSignatureKeyHashesFromMultisigScript(s); + }).flat().forEach(function (s) { + result.push(s); + }); + } + return _toConsumableArray(new Set(result).values()); +}; + +/** + * Extract script key hashes from a multisig script + */ +var _getScriptKeyHashesFromMultisigScript = exports.getScriptKeyHashesFromMultisigScript = function getScriptKeyHashesFromMultisigScript(multisig) { + var result = []; + if ("Script" in multisig) { + result.push(multisig.Script.script_hash); + } else if ("AtLeast" in multisig) { + multisig.AtLeast.scripts.map(function (s) { + return _getScriptKeyHashesFromMultisigScript(s); + }).flat().forEach(function (s) { + result.push(s); + }); + } else if ("AllOf" in multisig) { + multisig.AllOf.scripts.map(function (s) { + return _getScriptKeyHashesFromMultisigScript(s); + }).flat().forEach(function (s) { + result.push(s); + }); + } else if ("AnyOf" in multisig) { + multisig.AnyOf.scripts.map(function (s) { + return _getScriptKeyHashesFromMultisigScript(s); + }).flat().forEach(function (s) { + result.push(s); + }); + } + return _toConsumableArray(new Set(result).values()); +}; + +/** + * Extract all key hashes (signature + script) from a multisig script + */ +var getAllKeyHashesFromMultisigScript = exports.getAllKeyHashesFromMultisigScript = function getAllKeyHashesFromMultisigScript(multisig) { + var keyHashes = _getSignatureKeyHashesFromMultisigScript(multisig); + var scriptHashes = _getScriptKeyHashesFromMultisigScript(multisig); + return _toConsumableArray(new Set([].concat(_toConsumableArray(keyHashes), _toConsumableArray(scriptHashes))).values()); +}; + +// ───────────────────────────────────────────────────────────────────────────── +// Order Input Helpers +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Sort order inputs by txHash and outputIndex for deterministic ordering. + * This ensures consistent payload generation across all signers. + */ +var sortOrderInputs = exports.sortOrderInputs = function sortOrderInputs(orderInputs) { + return _toConsumableArray(orderInputs).sort(function (a, b) { + var txHashA = a.transactionId().toString(); + var txHashB = b.transactionId().toString(); + if (txHashA < txHashB) return -1; + if (txHashA > txHashB) return 1; + var indexA = a.index(); + var indexB = b.index(); + return indexA < indexB ? -1 : indexA > indexB ? 1 : 0; + }); +}; + +/** + * Build a nonce from the first order UTxO. + */ +var buildNonceFromUtxo = exports.buildNonceFromUtxo = function buildNonceFromUtxo(utxo) { + return { + UTxO: [{ + transaction_id: utxo.transactionId().toString(), + output_index: utxo.index() + }] + }; +}; + +/** + * Build the origin ByteArray (CBOR-serialized OutputReference) from a UTxO. + * Used by v0_4 SDK and shared helpers. + */ +var buildOriginFromUtxo = exports.buildOriginFromUtxo = function buildOriginFromUtxo(utxo) { + var input = utxo.input(); + var txId = input.transactionId().toString(); + var outputIndex = input.index(); + var fieldsList = new _sdk.Core.PlutusList(); + fieldsList.add(_sdk.Core.PlutusData.newBytes(Buffer.from(txId, "hex"))); + fieldsList.add(_sdk.Core.PlutusData.newInteger(outputIndex)); + var outputRefData = _sdk.Core.PlutusData.newConstrPlutusData(new _sdk.Core.ConstrPlutusData(0n, fieldsList)); + return outputRefData.toCbor(); +}; + +/** + * KeySignature type matching the contract's KeySignature tuple. + * A tuple of [VerificationKey, COSESign1] where: + * - VerificationKey: 32-byte Ed25519 public key (hex string) + * - COSESign1: COSE signature with headers (raw CBOR bytes) and detached payload + */ + +var destructureCip30Signature = exports.destructureCip30Signature = /*#__PURE__*/function () { + var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(cip30Signature) { + var _readCoseSign1Parts, protectedCbor, signature, publicKey; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + // Read the COSE_Sign1 with CBOR primitives from the dependency tree. + // Async for callers that await it. + _readCoseSign1Parts = readCoseSign1Parts(cip30Signature.signature.toString()), protectedCbor = _readCoseSign1Parts["protected"], signature = _readCoseSign1Parts.signature; // Extract public key from COSE_Key (at label -2) + publicKey = extractPublicKeyFromCoseKey(cip30Signature.key.toString()); + return _context.a(2, { + publicKey: publicKey, + coseSign1: { + headers: { + "protected": protectedCbor, + unprotected: "" // Empty ByteArray + }, + signature: signature + } + }); + } + }, _callee); + })); + return function destructureCip30Signature(_x18) { + return _ref.apply(this, arguments); + }; +}(); + +/** + * Produce a COSE (CIP-8) signature tuple over `payloadHash` using the connected + * wallet's key. The reusable building block for signer callbacks — e.g. the + * settings-governance `signAuthPayload` or an orchestrator signed redeemer — + * that wraps `signData` + `destructureCip30Signature` into the on-chain tuple. + */ +var signPayloadHashWithWallet = exports.signPayloadHashWithWallet = /*#__PURE__*/function () { + var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(blaze, payloadHash) { + var address, cip30Signature, _yield$destructureCip, publicKey, coseSign1; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + _context2.n = 1; + return blaze.wallet.getChangeAddress(); + case 1: + address = _context2.v; + _context2.n = 2; + return blaze.wallet.signData(address, payloadHash); + case 2: + cip30Signature = _context2.v; + _context2.n = 3; + return destructureCip30Signature(cip30Signature); + case 3: + _yield$destructureCip = _context2.v; + publicKey = _yield$destructureCip.publicKey; + coseSign1 = _yield$destructureCip.coseSign1; + return _context2.a(2, [publicKey, coseSign1]); + } + }, _callee2); + })); + return function signPayloadHashWithWallet(_x19, _x20) { + return _ref2.apply(this, arguments); + }; +}(); + +/** + * Create a SignedRedeemer_ExtraProtocolRedeemer structure for on-chain verification. + * + * @param extra - The extra protocol redeemer data (e.g., request_to_outputs mapping) + * @param payload - The SignedPayload_ProtocolRedeemer CBOR hex string (action + nonce) + * @param signatures - Array of KeySignature tuples from each signer + * @returns A SignedRedeemer_ExtraProtocolRedeemer ready for use in transaction + */ +var createSignedRedeemer = exports.createSignedRedeemer = function createSignedRedeemer(extra, payload, signatures) { + if (signatures.length === 0) { + throw new Error("At least one signature is required"); + } + return { + extra: extra, + payload: payload, + signatures: signatures + }; +}; + +// ───────────────────────────────────────────────────────────────────────────── +// CBOR Helpers +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Extract the 32-byte Ed25519 public key from a COSE_Key structure. + * COSE_Key for Ed25519 has the key at label -2. + * The COSE_Key CBOR structure looks like: a4 01 01 03 27 20 06 21 5820 <32 bytes> + * Where 21 5820 indicates label -2 followed by a 32-byte bytestring. + */ +var extractPublicKeyFromCoseKey = function extractPublicKeyFromCoseKey(coseKeyHex) { + // Parse the COSE_Key CBOR manually to find the public key + // The key at label -2 (encoded as 0x21 in CBOR) contains the 32-byte public key + // Look for 0x21 0x58 0x20 which indicates: label -2, bytestring, 32 bytes + var keyBytes = Buffer.from(coseKeyHex, "hex"); + + // Find the pattern: 21 58 20 (label -2, bytes, length 32) + var pubKeyStart = -1; + for (var i = 0; i < keyBytes.length - 34; i++) { + if (keyBytes[i] === 0x21 && keyBytes[i + 1] === 0x58 && keyBytes[i + 2] === 0x20) { + pubKeyStart = i + 3; // Skip the 21 58 20 prefix + break; + } + } + if (pubKeyStart === -1) { + throw new Error("Could not find public key in COSE_Key structure"); + } + var pubKey = keyBytes.slice(pubKeyStart, pubKeyStart + 32); + if (pubKey.length !== 32) { + throw new Error("Invalid public key length: ".concat(pubKey.length)); + } + return pubKey.toString("hex"); +}; + +// ───────────────────────────────────────────────────────────────────────────── +// COSE_Sign1 (CIP-8) reader +// ───────────────────────────────────────────────────────────────────────────── + +// CBOR major types used here. +var CBOR_MAJOR_BYTES = 2; +var CBOR_MAJOR_TEXT = 3; +var CBOR_MAJOR_ARRAY = 4; +var CBOR_MAJOR_MAP = 5; +var CBOR_MAJOR_TAG = 6; +var CBOR_MAJOR_SIMPLE = 7; // simple values (false/true/null) and floats + +var CBOR_ADDITIONAL_INDEFINITE = 31; +var CBOR_BREAK = 0xff; // terminates an indefinite-length string/array/map +var CBOR_TAG_COSE_SIGN1 = 18; // COSE_Sign1's registered tag (encodes as d2) +var CBOR_SIMPLE_NULL = 22; // `f6` + +/** + * Read a CBOR header at `offset`, returning the major type, the argument + * (length / value), whether the item is indefinite-length, and the offset of + * the item's content. Supports the definite forms (0-23 inline and the + * 1/2/4/8-byte arguments) plus indefinite-length strings, arrays, and maps. + */ +var readCborHeader = function readCborHeader(bytes, offset) { + var initial = bytes[offset]; + if (initial === undefined) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + var major = initial >> 5; + var additional = initial & 0x1f; + if (additional < 24) { + return { + major: major, + argument: additional, + indefinite: false, + contentOffset: offset + 1 + }; + } + if (additional === CBOR_ADDITIONAL_INDEFINITE) { + // Only strings, arrays, and maps have an indefinite-length form. A break + // byte (0xff) parses as major 7 here, so a stray break is rejected too. + if (major < CBOR_MAJOR_BYTES || major > CBOR_MAJOR_MAP) { + throw new Error("Unsupported indefinite-length CBOR major type: ".concat(major)); + } + return { + major: major, + argument: 0, + indefinite: true, + contentOffset: offset + 1 + }; + } + + // 24/25/26/27 -> 1/2/4/8 following length bytes. 28-30 are reserved. + if (additional > 27) { + throw new Error("Unsupported CBOR additional info: ".concat(additional)); + } + var lengthBytes = 1 << additional - 24; + var argument = 0; + for (var i = 0; i < lengthBytes; i++) { + var b = bytes[offset + 1 + i]; + if (b === undefined) { + throw new Error("COSE_Sign1 CBOR length ended unexpectedly"); + } + argument = argument * 256 + b; + } + return { + major: major, + argument: argument, + indefinite: false, + contentOffset: offset + 1 + lengthBytes + }; +}; + +/** + * Read the definite-length chunks of an indefinite-length CBOR string whose + * first chunk header is at `offset`, returning the concatenated content and + * the offset just past the closing break byte. + */ +var readIndefiniteStringChunks = function readIndefiniteStringChunks(bytes, major, offset) { + var chunks = []; + var next = offset; + while (bytes[next] !== CBOR_BREAK) { + var chunk = readCborHeader(bytes, next); + if (chunk.major !== major || chunk.indefinite) { + throw new Error("Invalid chunk in an indefinite-length CBOR string"); + } + var end = chunk.contentOffset + chunk.argument; + if (end > bytes.length) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + chunks.push(bytes.slice(chunk.contentOffset, end)); + next = end; + } + return { + content: Buffer.concat(chunks), + nextOffset: next + 1 + }; +}; + +/** + * Skip over one complete CBOR data item starting at `offset`, returning the + * offset immediately after it. Handles the item shapes that occur inside a + * COSE_Sign1 (byte/text strings, integers, arrays, maps, tags — definite or + * indefinite length) recursively. + */ +var _skipCborItem = function skipCborItem(bytes, offset) { + var _readCborHeader = readCborHeader(bytes, offset), + major = _readCborHeader.major, + argument = _readCborHeader.argument, + indefinite = _readCborHeader.indefinite, + contentOffset = _readCborHeader.contentOffset; + if (indefinite) { + if (major === CBOR_MAJOR_BYTES || major === CBOR_MAJOR_TEXT) { + return readIndefiniteStringChunks(bytes, major, contentOffset).nextOffset; + } + // Indefinite array or map: items until the break byte. + var next = contentOffset; + while (bytes[next] !== CBOR_BREAK) { + if (bytes[next] === undefined) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + next = _skipCborItem(bytes, next); // array item / map key + if (major === CBOR_MAJOR_MAP) { + next = _skipCborItem(bytes, next); // map value + } + } + return next + 1; + } + switch (major) { + case 0: // unsigned int + case 1: // negative int + case CBOR_MAJOR_SIMPLE: + // simple value (false/true/null) or float + // readCborHeader already consumed the value/float bytes into `argument`. + return contentOffset; + case CBOR_MAJOR_BYTES: + case CBOR_MAJOR_TEXT: + { + var end = contentOffset + argument; + if (end > bytes.length) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + return end; + } + case CBOR_MAJOR_ARRAY: + { + var _next2 = contentOffset; + for (var i = 0; i < argument; i++) { + _next2 = _skipCborItem(bytes, _next2); + } + return _next2; + } + case CBOR_MAJOR_MAP: + { + var _next3 = contentOffset; + for (var _i = 0; _i < argument; _i++) { + _next3 = _skipCborItem(bytes, _next3); // key + _next3 = _skipCborItem(bytes, _next3); // value + } + return _next3; + } + case CBOR_MAJOR_TAG: + return _skipCborItem(bytes, contentOffset); + // tagged content + default: + throw new Error("Unsupported CBOR major type in COSE_Sign1: ".concat(major)); + } +}; + +/** + * Read the byte-string content at `offset`, returning its hex and the offset + * after it. + */ +var readCborByteString = function readCborByteString(bytes, offset) { + var _readCborHeader2 = readCborHeader(bytes, offset), + major = _readCborHeader2.major, + argument = _readCborHeader2.argument, + indefinite = _readCborHeader2.indefinite, + contentOffset = _readCborHeader2.contentOffset; + if (major !== CBOR_MAJOR_BYTES) { + throw new Error("Expected a CBOR byte string in COSE_Sign1, got major type ".concat(major)); + } + if (indefinite) { + var _readIndefiniteString = readIndefiniteStringChunks(bytes, major, contentOffset), + content = _readIndefiniteString.content, + nextOffset = _readIndefiniteString.nextOffset; + return { + hex: Buffer.from(content).toString("hex"), + nextOffset: nextOffset + }; + } + var end = contentOffset + argument; + if (end > bytes.length) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + return { + hex: Buffer.from(bytes.slice(contentOffset, end)).toString("hex"), + nextOffset: end + }; +}; + +/** + * Parse a CIP-8 COSE_Sign1 and extract the pieces the on-chain KeySignature + * tuple needs: the protected header map bytes (byte-string content, wrapper + * removed) and the raw Ed25519 signature bytes. + * + * COSE_Sign1 = [ protected: bstr, unprotected: map, payload: bstr / nil, + * signature: bstr ], optionally wrapped in CBOR tag 18. The protected element + * is itself a byte string whose content is the serialized header map; reading + * the byte-string content yields the raw header-map bytes the tuple stores. + * Indefinite-length encodings of the array, the maps, and the byte strings + * are accepted alongside the definite forms. + */ +var readCoseSign1Parts = exports.readCoseSign1Parts = function readCoseSign1Parts(coseSign1Hex) { + var bytes = Buffer.from(coseSign1Hex, "hex"); + var offset = 0; + // Optional CBOR tag: only tag 18 (COSE_Sign1's registered tag, the `d2` + // prefix) is accepted — tagged input is accepted by design, since the + // Ledger signing path emits d2-tagged COSE_Sign1s, but any other tag means + // this isn't a COSE_Sign1 and must be rejected rather than silently unwrapped. + var first = readCborHeader(bytes, offset); + if (first.major === CBOR_MAJOR_TAG) { + if (first.argument !== CBOR_TAG_COSE_SIGN1) { + throw new Error("COSE_Sign1 has unexpected CBOR tag ".concat(first.argument, " (expected 18)")); + } + offset = first.contentOffset; + } + var array = readCborHeader(bytes, offset); + if (array.major !== CBOR_MAJOR_ARRAY) { + throw new Error("COSE_Sign1 is not a CBOR array"); + } + if (!array.indefinite && array.argument !== 4) { + throw new Error("COSE_Sign1 is not a 4-element CBOR array"); + } + + // Element 0: protected header byte string (content = serialized header map). + var protectedRead = readCborByteString(bytes, array.contentOffset); + + // Element 1: unprotected header map — must be a CBOR map (major 5), + // definite or indefinite. Peek the header before skipCborItem consumes it + // so we assert on the same read the skip performs, not a second one. + var unprotectedHeader = readCborHeader(bytes, protectedRead.nextOffset); + if (unprotectedHeader.major !== CBOR_MAJOR_MAP) { + throw new Error("COSE_Sign1 unprotected header is not a CBOR map (got major type ".concat(unprotectedHeader.major, ")")); + } + var afterUnprotected = _skipCborItem(bytes, protectedRead.nextOffset); + + // Element 2: payload — must be a byte string (major 2) or null (`f6`). + var payloadHeader = readCborHeader(bytes, afterUnprotected); + var isNullPayload = payloadHeader.major === CBOR_MAJOR_SIMPLE && !payloadHeader.indefinite && payloadHeader.argument === CBOR_SIMPLE_NULL; + if (payloadHeader.major !== CBOR_MAJOR_BYTES && !isNullPayload) { + throw new Error("COSE_Sign1 payload is not a byte string or null (got major type ".concat(payloadHeader.major, ")")); + } + var afterPayload = _skipCborItem(bytes, afterUnprotected); + + // Element 3: signature byte string. + var signatureRead = readCborByteString(bytes, afterPayload); + + // An indefinite-length COSE_Sign1 array must close right after element 3. + if (array.indefinite && bytes[signatureRead.nextOffset] !== CBOR_BREAK) { + throw new Error("COSE_Sign1 is not a 4-element CBOR array"); + } + return { + "protected": protectedRead.hex, + signature: signatureRead.hex + }; +}; + +// ───────────────────────────────────────────────────────────────────────────── +// Treasury Operation Payload Helpers (Withdraw/Deposit) +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Build the SignedPayload_ProtocolRedeemer for a withdraw operation. + * Uses the treasury UTxO as the nonce source. + * + * @param requests - Array of withdraw requests with destinations and amounts + * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce) + * @returns SignedPayload_ProtocolRedeemer CBOR hex string + */ +var getSignedPayloadForWithdraw = exports.getSignedPayloadForWithdraw = function getSignedPayloadForWithdraw(amount, treasuryUtxo) { + if (amount <= 0n) { + throw new Error("Withdraw amount must be positive"); + } + + // Reuse existing nonce builder + var nonce = buildNonceFromUtxo(treasuryUtxo.input()); + var action = { + Withdraw: { + withdraw_amount: amount + } + }; + var signedPayload = { + action: action, + nonce: nonce + }; + return Data.serialize(_index.V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload).toCbor().toString(); +}; + +/** + * Build the SignedPayload_ProtocolRedeemer for a deposit operation. + * Uses the treasury UTxO as the nonce source. + * + * @param amount - The amount of reserve tokens to deposit + * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce) + * @returns SignedPayload_ProtocolRedeemer CBOR hex string + */ +var getSignedPayloadForDeposit = exports.getSignedPayloadForDeposit = function getSignedPayloadForDeposit(amount, treasuryUtxo) { + if (amount <= 0n) { + throw new Error("Deposit amount must be positive"); + } + var nonce = buildNonceFromUtxo(treasuryUtxo.input()); + var action = { + Deposit: { + deposit_amount: amount + } + }; + var signedPayload = { + action: action, + nonce: nonce + }; + return Data.serialize(_index.V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload).toCbor().toString(); +}; + +// ───────────────────────────────────────────────────────────────────────────── +// Address Conversion Helpers +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Convert a Cardano address to a Destination type for order transactions. + * Extracts payment and stake credentials from the address. + * + * @param address - The Cardano address to convert + * @param datum - Optional datum for the destination (defaults to "NoDatum") + * @returns A Destination object suitable for order transactions + */ +function addressToDestination(address) { + var datum = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "NoDatum"; + var props = address.getProps(); + var paymentPart = props.paymentPart; + if (!paymentPart) { + throw new Error("Address must have a payment part"); + } + var paymentCredential = paymentPart.type === _sdk.Core.CredentialType.KeyHash ? { + VerificationKey: [paymentPart.hash] + } : { + Script: [paymentPart.hash] + }; + var stakeCredential = undefined; + if (props.delegationPart) { + var stakeCred = props.delegationPart.type === _sdk.Core.CredentialType.KeyHash ? { + VerificationKey: [props.delegationPart.hash] + } : { + Script: [props.delegationPart.hash] + }; + stakeCredential = { + Inline: [stakeCred] + }; + } + return { + address: { + payment_credential: paymentCredential, + stake_credential: stakeCredential + }, + datum: datum + }; +} + +/** + * Convert a Destination-like value into a Cardano address. + * Supports enterprise and base addresses. Pointer credentials are ignored. + */ +function destinationToAddress(network, destination) { + var paymentCred = destination.address.payment_credential; + var stakingCred = destination.address.stake_credential; + var paymentCredCore; + var stakingCredCore; + if (stakingCred && _typeof(stakingCred) === "object" && "Inline" in stakingCred) { + var inlineCredential = stakingCred.Inline[0]; + if ("VerificationKey" in inlineCredential) { + stakingCredCore = _sdk.Core.Credential.fromCore({ + type: _sdk.Core.CredentialType.KeyHash, + hash: inlineCredential.VerificationKey[0] + }); + } else if ("Script" in inlineCredential) { + stakingCredCore = _sdk.Core.Credential.fromCore({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: inlineCredential.Script[0] + }); + } + } + if ("VerificationKey" in paymentCred) { + paymentCredCore = _sdk.Core.Credential.fromCore({ + type: _sdk.Core.CredentialType.KeyHash, + hash: paymentCred.VerificationKey[0] + }); + } else { + paymentCredCore = _sdk.Core.Credential.fromCore({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: paymentCred.Script[0] + }); + } + return (0, _core.addressFromCredentials)(network, paymentCredCore, stakingCredCore); +} + +/** + * Add an output for a Destination, including script-payment addresses and + * any datum metadata attached to the destination. + * + * Attaches the datum directly to a fresh TransactionOutput rather than + * routing through Core.TransactionOutput.fromCore, because generated + * TPlutusData values from @blaze-cardano/data are already Blaze + * PlutusData instances and PlutusData.fromCore does not know how to + * decode them (throws NotImplementedError). + */ +function addDestinationOutput(tx, network, destination, value) { + var output = new _sdk.Core.TransactionOutput(destinationToAddress(network, destination), value); + var datum = destination.datum; + if (datum !== "NoDatum") { + if ("DatumHash" in datum) { + output.setDatum(_sdk.Core.Datum.newDataHash(datum.DatumHash[0])); + } else { + output.setDatum(_sdk.Core.Datum.newInlineData(datum.InlineDatum[0])); + } + } + tx.addOutput(output); +} + +// ───────────────────────────────────────────────────────────────────────────── +// Cross-Version Cancel Helpers +// ───────────────────────────────────────────────────────────────────────────── + +var NORMALIZED_PROTOCOL_VERSION_MAP = { + v0: "V0", + v0_1: "V0_1", + v0_2: "V0_2", + v0_3: "V0_3", + v0_4: "V0_4", + v1_0: "V1_0", + v1_0_rc1: "V1_0_Rc1", + v1_1_rc1: "V1_1_Rc1" +}; + +/** + * Normalize externally-sourced protocol/order version strings into the SDK's + * canonical `TProtocolVersion` values. + */ +var normalizeProtocolVersion = exports.normalizeProtocolVersion = function normalizeProtocolVersion(version) { + if (!version) { + return undefined; + } + return NORMALIZED_PROTOCOL_VERSION_MAP[version.trim().toLowerCase()]; +}; + +/** + * Alias for frontend order-version sources (GraphQL/backend strings). + */ +var normalizeOrderVersion = exports.normalizeOrderVersion = normalizeProtocolVersion; + +/** + * Extract the inline datum from a UTxO. + */ +var getInlineDatumFromUtxo = exports.getInlineDatumFromUtxo = function getInlineDatumFromUtxo(utxo) { + var _utxo$output$datum; + var label = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "Order UTXO"; + var datum = (_utxo$output$datum = utxo.output().datum()) === null || _utxo$output$datum === void 0 ? void 0 : _utxo$output$datum.asInlineData(); + if (!datum) { + throw new Error("".concat(label, " has no inline datum")); + } + return datum; +}; + +/** + * Extract the payment script hash from an order UTxO's output address. + */ +var getScriptHashFromOrderUtxo = exports.getScriptHashFromOrderUtxo = function getScriptHashFromOrderUtxo(utxo) { + var paymentPart = utxo.output().address().getProps().paymentPart; + if (!paymentPart) { + throw new Error("Order UTXO address has no payment credential"); + } + if (paymentPart.type !== _sdk.Core.CredentialType.ScriptHash) { + throw new Error("Order UTXO payment credential is not a script hash"); + } + return paymentPart.hash; +}; + +/** + * Resolve one reference input per unique script hash. + */ +function resolveReferenceInputsByScriptHash(_x21, _x22, _x23, _x24) { + return _resolveReferenceInputsByScriptHash.apply(this, arguments); +} +/** + * Resolve the order reference inputs needed to spend a batch of order UTxOs. + */ +function _resolveReferenceInputsByScriptHash() { + _resolveReferenceInputsByScriptHash = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(blaze, scriptHashes, cachedInputs, address) { + var referenceInputs, _iterator, _step, hash, cachedInput, refInput, _t6, _t7, _t8; + return _regenerator().w(function (_context0) { + while (1) switch (_context0.p = _context0.n) { + case 0: + referenceInputs = new Map(); + _iterator = _createForOfIteratorHelper(new Set(scriptHashes)); + _context0.p = 1; + _iterator.s(); + case 2: + if ((_step = _iterator.n()).done) { + _context0.n = 10; + break; + } + hash = _step.value; + cachedInput = cachedInputs instanceof Map ? cachedInputs.get(hash) : cachedInputs === null || cachedInputs === void 0 ? void 0 : cachedInputs[hash]; + if (!cachedInput) { + _context0.n = 3; + break; + } + referenceInputs.set(hash, cachedInput); + return _context0.a(3, 9); + case 3: + _t7 = address; + if (!_t7) { + _context0.n = 5; + break; + } + _context0.n = 4; + return resolveScriptRefAtAddress(blaze, hash, address); + case 4: + _t7 = _context0.v; + case 5: + _t6 = _t7; + if (_t6) { + _context0.n = 7; + break; + } + _context0.n = 6; + return blaze.provider.resolveScriptRef(hash); + case 6: + _t6 = _context0.v; + case 7: + refInput = _t6; + if (refInput) { + _context0.n = 8; + break; + } + throw new Error("Missing order reference script input for hash ".concat(hash, ". Make sure the order script is deployed.")); + case 8: + referenceInputs.set(hash, refInput); + case 9: + _context0.n = 2; + break; + case 10: + _context0.n = 12; + break; + case 11: + _context0.p = 11; + _t8 = _context0.v; + _iterator.e(_t8); + case 12: + _context0.p = 12; + _iterator.f(); + return _context0.f(12); + case 13: + return _context0.a(2, referenceInputs); + } + }, _callee0, null, [[1, 11, 12, 13]]); + })); + return _resolveReferenceInputsByScriptHash.apply(this, arguments); +} +function resolveOrderReferenceInputs(_x25, _x26, _x27, _x28) { + return _resolveOrderReferenceInputs.apply(this, arguments); +} +/** + * Strict owner-only parser for order datums used by cross-version cancel. + * + * All currently-supported order datum variants encode as: + * Constr(0, [owner, destination, action, data]). + */ +function _resolveOrderReferenceInputs() { + _resolveOrderReferenceInputs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(blaze, orderUtxos, cachedInputs, address) { + var scriptHashes, _iterator2, _step2, utxo; + return _regenerator().w(function (_context1) { + while (1) switch (_context1.n) { + case 0: + scriptHashes = []; + _iterator2 = _createForOfIteratorHelper(orderUtxos); + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + utxo = _step2.value; + scriptHashes.push(getScriptHashFromOrderUtxo(utxo)); + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + return _context1.a(2, resolveReferenceInputsByScriptHash(blaze, scriptHashes, cachedInputs, address)); + } + }, _callee1); + })); + return _resolveOrderReferenceInputs.apply(this, arguments); +} +var parseOrderOwnerGenericFromDatum = exports.parseOrderOwnerGenericFromDatum = function parseOrderOwnerGenericFromDatum(datum) { + var constr = datum.asConstrPlutusData(); + if (!constr) { + throw new Error("Order datum is not a constructor PlutusData"); + } + if (constr.getAlternative() !== 0n) { + throw new Error("Order datum has unexpected constructor index ".concat(constr.getAlternative().toString(), " (expected 0)")); + } + var fields = constr.getData(); + if (fields.getLength() < 4) { + throw new Error("Order datum has ".concat(fields.getLength().toString(), " fields (expected at least 4)")); + } + return (0, _data.parse)(_index.V0_3Types.MultisigScript, fields.get(0)); +}; + +/** + * Strict owner-only parser for cancel flows. + */ +var parseOrderOwnerGeneric = exports.parseOrderOwnerGeneric = function parseOrderOwnerGeneric(utxo) { + return parseOrderOwnerGenericFromDatum(getInlineDatumFromUtxo(utxo)); +}; +//# sourceMappingURL=utils.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/shared/utils.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/utils.js.map new file mode 100644 index 0000000000..50bf5955c4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/shared/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","names":["_core","require","_data","_interopRequireWildcard","Data","_sdk","_errors","_index","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t9","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_createForOfIteratorHelper","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","done","value","TypeError","a","u","next","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","l","push","constructor","prototype","_regenerator","toStringTag","c","Generator","create","_regeneratorDefine2","p","y","G","v","d","bind","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","slice","name","from","test","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","rewardAccountFromScript","script","network","credential","credentialFromScript","Core","RewardAccount","fromCredential","toCore","credentialFromScriptHash","hash","scriptHash","Credential","fromCore","type","CredentialType","ScriptHash","lockOrPayAssets","tx","address","datum","addDirectOutput","output","TransactionOutput","setDatum","Datum","newInlineData","addOutput","BLOCKFROST_ADDRESS_NOT_FOUND","isBlockfrostAddressNotFoundError","error","Error","message","hydrateUnspentOutputs","_x","_x2","_hydrateUnspentOutputs","_callee3","blaze","unspent","_context3","provider","getUnspentOutputs","resolveUnspentOutputs","map","utxo","input","shareHydration","pending","resolveScriptRefAtAddress","_x3","_x4","_x5","_resolveScriptRefAtAddress","_callee4","hydrate","resolved","hydrated","_args4","_t","_context4","undefined","resolveScriptRef","find","_utxo$output$scriptRe","scriptRef","deployScript","_x6","_x7","_x8","_deployScript","_callee5","refInput","deployTx","_t2","_context5","ScriptAlreadyDeployedError","newTransaction","NFT_LOOKUP_ATTEMPTS","NFT_LOOKUP_BACKOFF_MS","sleep","ms","setTimeout","getUnspentOutputByNftWithRetry","_x9","_x0","_getUnspentOutputByNftWithRetry","_callee6","assetId","lastError","attempt","_t3","_context6","getUnspentOutputByNFT","withInlineDatum","promoted","amount","setScriptRef","TransactionUnspentOutput","readSingletonDatum","_x1","_x10","_readSingletonDatum","_callee7","nftAssetId","_read$output$datum","_read$output$datum2","read","inline","datumHash","preimageHash","_context7","concat","asInlineData","asDataHash","resolveDatum","blake2b_256","toCbor","console","warn","transactionId","index","getDatumFromNFT","_x11","_x12","_x13","_getDatumFromNFT","_callee8","datumSchema","_yield$readSingletonD","parsedDatum","_context8","parse","getReferenceInputs","_x14","_x15","_x16","_x17","_getReferenceInputs","_callee9","scriptHashes","cachedInputs","referenceInputs","_i2","_Object$entries","_Object$entries$_i","_t4","_t5","_context9","entries","getSignatureKeyHashesFromMultisigScript","exports","multisig","result","Signature","key_hash","AtLeast","scripts","flat","forEach","AllOf","AnyOf","Set","values","getScriptKeyHashesFromMultisigScript","Script","script_hash","getAllKeyHashesFromMultisigScript","keyHashes","sortOrderInputs","orderInputs","sort","b","txHashA","txHashB","indexA","indexB","buildNonceFromUtxo","UTxO","transaction_id","output_index","buildOriginFromUtxo","txId","outputIndex","fieldsList","PlutusList","add","PlutusData","newBytes","Buffer","newInteger","outputRefData","newConstrPlutusData","ConstrPlutusData","destructureCip30Signature","_ref","_callee","cip30Signature","_readCoseSign1Parts","protectedCbor","signature","publicKey","_context","readCoseSign1Parts","extractPublicKeyFromCoseKey","key","coseSign1","headers","unprotected","_x18","signPayloadHashWithWallet","_ref2","_callee2","payloadHash","_yield$destructureCip","_context2","wallet","getChangeAddress","signData","_x19","_x20","createSignedRedeemer","extra","payload","signatures","coseKeyHex","keyBytes","pubKeyStart","pubKey","CBOR_MAJOR_BYTES","CBOR_MAJOR_TEXT","CBOR_MAJOR_ARRAY","CBOR_MAJOR_MAP","CBOR_MAJOR_TAG","CBOR_MAJOR_SIMPLE","CBOR_ADDITIONAL_INDEFINITE","CBOR_BREAK","CBOR_TAG_COSE_SIGN1","CBOR_SIMPLE_NULL","readCborHeader","bytes","offset","initial","major","additional","argument","indefinite","contentOffset","lengthBytes","readIndefiniteStringChunks","chunks","chunk","end","content","nextOffset","skipCborItem","_readCborHeader","readCborByteString","_readCborHeader2","_readIndefiniteString","hex","coseSign1Hex","first","array","protectedRead","unprotectedHeader","afterUnprotected","payloadHeader","isNullPayload","afterPayload","signatureRead","getSignedPayloadForWithdraw","treasuryUtxo","nonce","action","Withdraw","withdraw_amount","signedPayload","serialize","V0_3Types","SignedPayload_ProtocolRedeemer","getSignedPayloadForDeposit","Deposit","deposit_amount","addressToDestination","props","getProps","paymentPart","paymentCredential","KeyHash","VerificationKey","stakeCredential","delegationPart","stakeCred","Inline","payment_credential","stake_credential","destinationToAddress","destination","paymentCred","stakingCred","paymentCredCore","stakingCredCore","inlineCredential","addressFromCredentials","addDestinationOutput","newDataHash","DatumHash","InlineDatum","NORMALIZED_PROTOCOL_VERSION_MAP","v0","v0_1","v0_2","v0_3","v0_4","v1_0","v1_0_rc1","v1_1_rc1","normalizeProtocolVersion","version","trim","toLowerCase","normalizeOrderVersion","getInlineDatumFromUtxo","_utxo$output$datum","label","getScriptHashFromOrderUtxo","resolveReferenceInputsByScriptHash","_x21","_x22","_x23","_x24","_resolveReferenceInputsByScriptHash","_callee0","_iterator","_step","cachedInput","_t6","_t7","_t8","_context0","Map","resolveOrderReferenceInputs","_x25","_x26","_x27","_x28","_resolveOrderReferenceInputs","_callee1","orderUtxos","_iterator2","_step2","_context1","err","parseOrderOwnerGenericFromDatum","constr","asConstrPlutusData","getAlternative","fields","getData","getLength","MultisigScript","parseOrderOwnerGeneric"],"sources":["../../../../src/sdk/shared/utils.ts"],"sourcesContent":["import { addressFromCredentials } from \"@blaze-cardano/core\";\nimport { parse, type TSchema } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n Core,\n TxBuilder,\n type Blaze,\n type CIP30DataSignature,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport * as Data from \"@blaze-cardano/data\";\nimport {\n SignatureList,\n type Destination,\n} from \"src/generated-types/v0_3/index.js\";\nimport { ScriptAlreadyDeployedError } from \"./errors.js\";\nimport { V0_3Types } from \"../../generated-types/index.js\";\nimport type { TMultisigScript, TProtocolVersion } from \"./types.js\";\n\ntype TDestinationCredentialLike =\n | { VerificationKey: [string] }\n | { Script: [string] };\n\ntype TDestinationLike = {\n address: {\n payment_credential: TDestinationCredentialLike;\n stake_credential?: { Inline: [TDestinationCredentialLike] } | unknown;\n };\n datum:\n | \"NoDatum\"\n | { DatumHash: [string] }\n | { InlineDatum: [Core.PlutusData | unknown] };\n};\n\n/**\n * Create a reward account from a script\n */\nexport function rewardAccountFromScript(\n script: Core.Script,\n network: Core.NetworkId,\n): Core.RewardAccount {\n const credential = credentialFromScript(script);\n return Core.RewardAccount.fromCredential(credential.toCore(), network);\n}\n\n/**\n * Create a credential from a script\n */\nexport function credentialFromScript(script: Core.Script): Core.Credential {\n return credentialFromScriptHash(script.hash());\n}\n\n/**\n * Create a credential from a script hash\n */\nexport function credentialFromScriptHash(\n scriptHash: Core.Hash28ByteBase16,\n): Core.Credential {\n return Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash: scriptHash,\n });\n}\n\n/**\n * Send a value (with an attached datum) to either a key-credentialled or\n * script-credentialled address. This helper emits an explicit output for\n * the destination address so callers (mintOneShot / updateOneShotDatum /\n * etc.) work transparently in both single-signer and multisig deployments.\n *\n * Mutates `tx` (matching Blaze's builder pattern) and returns it for chaining.\n */\nexport function lockOrPayAssets(\n tx: TxBuilder,\n address: Core.Address,\n value: Core.Value,\n datum: Core.PlutusData,\n): TxBuilder {\n return addDirectOutput(tx, address, value, datum);\n}\n\n/**\n * Add an explicit transaction output for the target address and value.\n *\n * Mutates `tx` and returns it for call sites that want to keep builder-style\n * chaining.\n */\nexport function addDirectOutput(\n tx: TxBuilder,\n address: Core.Address,\n value: Core.Value,\n datum?: Core.PlutusData,\n): TxBuilder {\n const output = new Core.TransactionOutput(address, value);\n if (datum) {\n output.setDatum(Core.Datum.newInlineData(datum));\n }\n tx.addOutput(output);\n return tx;\n}\n\n/**\n * Blockfrost responds to `getUnspentOutputs` on an unused address with HTTP\n * 404 (\"requested component has not been found\"), which the provider surfaces\n * as a generic Error. Treat only that exact failure as \"not found at this\n * address\" so outages and malformed responses still propagate.\n *\n * The query path is matched with an optional leading slash: @blaze-cardano/query\n * builds `/addresses/...`, while a caller paging the same endpoint itself builds\n * `addresses/...` (Blockfrost's base url already ends in `/`). The cron carries\n * a matcher for the same message\n * (`cli/src/scripts/lib/order-utxo-fetch.ts`); keep the two in step.\n */\nconst BLOCKFROST_ADDRESS_NOT_FOUND =\n /^getUnspentOutputs: Blockfrost threw \"The requested component has not been found\\.\" for query: \\/?addresses\\//;\n\nfunction isBlockfrostAddressNotFoundError(error: unknown): boolean {\n return (\n error instanceof Error && BLOCKFROST_ADDRESS_NOT_FOUND.test(error.message)\n );\n}\n\n/**\n * Fully resolve the address's current unspent outputs.\n *\n * Blockfrost can expose a reference script through the transaction-output\n * endpoint before (or without) hydrating `reference_script_hash` on the address\n * UTxO endpoint. Re-resolving the inputs returned by the address query\n * preserves the unspent-only constraint while recovering the full output\n * metadata from the exact transactions.\n */\nasync function hydrateUnspentOutputs

(\n blaze: Blaze,\n address: Core.Address,\n): Promise {\n const unspent = await blaze.provider.getUnspentOutputs(address);\n if (unspent.length === 0) return [];\n return blaze.provider.resolveUnspentOutputs(\n unspent.map((utxo) => utxo.input()),\n );\n}\n\n/**\n * A `hydrateUnspentOutputs` call shared by every hash resolved against the same\n * address in one pass. Hydration costs one provider request per UTxO at the\n * address, so a caller resolving eight script hashes against a provider that\n * omits script metadata would otherwise pay the whole sweep eight times, and\n * the dapp runs this against a rate-limited Blockfrost proxy. Scoped to a\n * single call rather than cached on the SDK so a later pass still sees a script\n * deployed in the meantime.\n */\ntype THydrateAddress = () => Promise;\n\nfunction shareHydration

(\n blaze: Blaze,\n address: Core.Address,\n): THydrateAddress {\n let pending: Promise | undefined;\n return () => (pending ??= hydrateUnspentOutputs(blaze, address));\n}\n\n/**\n * Resolve a script reference at a specific address, tolerating Blockfrost's\n * throw for an address with no history instead of an empty result, and its\n * missing script metadata on the address UTxO endpoint.\n */\nasync function resolveScriptRefAtAddress

(\n blaze: Blaze,\n hash: Core.Hash28ByteBase16,\n address: Core.Address,\n hydrate: THydrateAddress = () => hydrateUnspentOutputs(blaze, address),\n): Promise {\n try {\n const resolved = await blaze.provider.resolveScriptRef(hash, address);\n if (resolved) return resolved;\n } catch (error) {\n if (!isBlockfrostAddressNotFoundError(error)) throw error;\n return undefined;\n }\n\n const hydrated = await hydrate();\n return hydrated.find((utxo) => utxo.output().scriptRef()?.hash() === hash);\n}\n\n/**\n * Deploy a script as a reference script.\n *\n * When `address` is provided, the reference UTxO is locked at that address\n * (instead of Blaze's default burn address), which lets resolution query a\n * small, dedicated UTxO set rather than the shared burn address.\n *\n * Throws `ScriptAlreadyDeployedError` (carrying the existing reference\n * UTxO) if the script is already deployed *at the target location* — the\n * specified `address` when given, otherwise the burn-address default. The\n * guard is intentionally scoped to the deploy target only: a copy that\n * exists elsewhere (e.g. a legacy copy at the burn address) does NOT block\n * deploying to a newly specified address, which is exactly what a migration\n * needs. Callers that want idempotent reruns should catch that specific class.\n */\nexport async function deployScript

(\n blaze: Blaze,\n script: Core.Script,\n address?: Core.Address,\n): Promise {\n const refInput = address\n ? await resolveScriptRefAtAddress(blaze, script.hash(), address)\n : await blaze.provider.resolveScriptRef(script.hash());\n if (refInput) {\n throw new ScriptAlreadyDeployedError(script.hash(), refInput);\n }\n // `address === undefined` -> Blaze locks the script at the burn address.\n const deployTx = blaze.newTransaction().deployScript(script, address);\n return deployTx;\n}\n\nconst NFT_LOOKUP_ATTEMPTS = 3;\nconst NFT_LOOKUP_BACKOFF_MS = 250;\n\nconst sleep = (ms: number): Promise =>\n new Promise((resolve) => setTimeout(resolve, ms));\n\n/**\n * Look up an NFT UTxO, retrying indexer lag after the output moves.\n * Treats both a thrown 404 and an empty result as lag. Re-throws the last\n * provider error when the budget is exhausted.\n */\nexport async function getUnspentOutputByNftWithRetry(\n provider: Provider,\n assetId: Core.AssetId,\n): Promise {\n let lastError: unknown;\n for (let attempt = 1; attempt <= NFT_LOOKUP_ATTEMPTS; attempt++) {\n try {\n const utxo = await provider.getUnspentOutputByNFT(assetId);\n if (utxo) return utxo;\n lastError = undefined;\n } catch (error) {\n lastError = error;\n }\n if (attempt < NFT_LOOKUP_ATTEMPTS) {\n await sleep(NFT_LOOKUP_BACKOFF_MS * attempt);\n }\n }\n if (lastError) throw lastError;\n return undefined;\n}\n\n/**\n * Rebuild `utxo` with `datum` attached inline, preserving its input ref,\n * address, value and reference script.\n */\nfunction withInlineDatum(\n utxo: Core.TransactionUnspentOutput,\n datum: Core.PlutusData,\n): Core.TransactionUnspentOutput {\n const output = utxo.output();\n const promoted = new Core.TransactionOutput(\n output.address(),\n output.amount(),\n );\n promoted.setDatum(Core.Datum.newInlineData(datum));\n const scriptRef = output.scriptRef();\n if (scriptRef) {\n promoted.setScriptRef(scriptRef);\n }\n return new Core.TransactionUnspentOutput(utxo.input(), promoted);\n}\n\n/**\n * Read an NFT singleton (proxy, treasury, vault) and its datum.\n *\n * Protocol singletons are locked inline. A hash-form read is a provider\n * artifact (Blockfrost omitting `inline_datum`). Validators require\n * `InlineDatum` on the singleton input; passing the preimage as `addInput`'s\n * 3rd arg is a supplemental witness datum that local eval and phase-1 reject.\n * Resolve the hash, verify the preimage, and reattach it inline.\n *\n * The lookup is retried: a singleton always exists, so a not-found answer is\n * the provider's index lagging the UTxO's latest move, not a missing singleton.\n */\nexport async function readSingletonDatum(\n provider: Provider,\n nftAssetId: Core.AssetId,\n): Promise<{\n utxo: Core.TransactionUnspentOutput;\n datum: Core.PlutusData;\n}> {\n const read = await getUnspentOutputByNftWithRetry(provider, nftAssetId);\n if (!read) {\n throw new Error(`No UTXO found with NFT: ${nftAssetId}`);\n }\n\n const inline = read.output().datum()?.asInlineData();\n if (inline) {\n return { utxo: read, datum: inline };\n }\n\n const datumHash = read.output().datum()?.asDataHash();\n if (!datumHash) {\n throw new Error(`No datum found in UTXO with NFT: ${nftAssetId}`);\n }\n\n const resolved = await provider.resolveDatum(datumHash);\n const preimageHash = Core.blake2b_256(resolved.toCbor());\n if (preimageHash !== datumHash) {\n throw new Error(\n `Datum resolved for UTXO with NFT ${nftAssetId} does not match its datum hash: ` +\n `resolved preimage hashes to ${preimageHash}, UTXO reports ${datumHash}`,\n );\n }\n\n const input = read.input();\n console.warn(\n `[realfi-sdk] singleton ${nftAssetId} read at ${input.transactionId()}#${input.index()} ` +\n `reported datum hash ${datumHash} instead of its inline datum; reattaching the resolved preimage inline`,\n );\n return { utxo: withInlineDatum(read, resolved), datum: resolved };\n}\n\n/**\n * Get datum from a UTxO containing a specific NFT, optionally parsed under\n * `datumSchema`. Datum-hash reads are repaired by {@link readSingletonDatum}.\n */\nexport async function getDatumFromNFT<\n P extends Provider,\n W extends Wallet,\n T = unknown,\n>(\n blaze: Blaze,\n nftAssetId: Core.AssetId,\n datumSchema?: TSchema,\n): Promise<{\n utxo: Core.TransactionUnspentOutput;\n datum: Core.PlutusData;\n parsedDatum: T;\n}> {\n const { utxo, datum } = await readSingletonDatum(blaze.provider, nftAssetId);\n\n if (datumSchema) {\n const parsedDatum = parse(datumSchema, datum) as T;\n return { utxo, datum, parsedDatum };\n }\n\n return { utxo, datum, parsedDatum: undefined as T };\n}\n\n/**\n * Get script reference inputs, using cached values when available.\n *\n * When `address` is provided, each script is resolved at that address first\n * (a fast, dedicated query) and only falls back to Blaze's burn-address\n * default if it isn't found there. This keeps previously burn-address-deployed\n * scripts resolvable while migrating to a specified deployment address.\n */\nexport async function getReferenceInputs

(\n blaze: Blaze,\n scriptHashes: Record,\n cachedInputs?: Partial>,\n address?: Core.Address,\n): Promise> {\n const referenceInputs: Record = {};\n const hydrate = address ? shareHydration(blaze, address) : undefined;\n\n for (const [name, hash] of Object.entries(scriptHashes)) {\n if (cachedInputs?.[name]) {\n referenceInputs[name] = cachedInputs[name];\n continue;\n }\n\n const refInput =\n (address &&\n (await resolveScriptRefAtAddress(blaze, hash, address, hydrate))) ||\n (await blaze.provider.resolveScriptRef(hash));\n if (!refInput) {\n throw new Error(\n `No reference input found for ${name} script (${hash}). Make sure it is deployed.`,\n );\n }\n referenceInputs[name] = refInput;\n }\n\n return referenceInputs;\n}\n\n/**\n * Extract signature key hashes from a multisig script\n */\nexport const getSignatureKeyHashesFromMultisigScript = (\n multisig: TMultisigScript,\n): string[] => {\n const result: string[] = [];\n\n if (\"Signature\" in multisig) {\n result.push(multisig.Signature.key_hash);\n } else if (\"AtLeast\" in multisig) {\n multisig.AtLeast.scripts\n .map((s) => getSignatureKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n } else if (\"AllOf\" in multisig) {\n multisig.AllOf.scripts\n .map((s) => getSignatureKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n } else if (\"AnyOf\" in multisig) {\n multisig.AnyOf.scripts\n .map((s) => getSignatureKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n }\n\n return [...new Set(result).values()];\n};\n\n/**\n * Extract script key hashes from a multisig script\n */\nexport const getScriptKeyHashesFromMultisigScript = (\n multisig: TMultisigScript,\n): string[] => {\n const result: string[] = [];\n\n if (\"Script\" in multisig) {\n result.push(multisig.Script.script_hash);\n } else if (\"AtLeast\" in multisig) {\n multisig.AtLeast.scripts\n .map((s) => getScriptKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n } else if (\"AllOf\" in multisig) {\n multisig.AllOf.scripts\n .map((s) => getScriptKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n } else if (\"AnyOf\" in multisig) {\n multisig.AnyOf.scripts\n .map((s) => getScriptKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n }\n\n return [...new Set(result).values()];\n};\n\n/**\n * Extract all key hashes (signature + script) from a multisig script\n */\nexport const getAllKeyHashesFromMultisigScript = (\n multisig: TMultisigScript,\n): string[] => {\n const keyHashes = getSignatureKeyHashesFromMultisigScript(multisig);\n const scriptHashes = getScriptKeyHashesFromMultisigScript(multisig);\n return [...new Set([...keyHashes, ...scriptHashes]).values()];\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Order Input Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Sort order inputs by txHash and outputIndex for deterministic ordering.\n * This ensures consistent payload generation across all signers.\n */\nexport const sortOrderInputs = (\n orderInputs: Core.TransactionInput[],\n): Core.TransactionInput[] => {\n return [...orderInputs].sort((a, b) => {\n const txHashA = a.transactionId().toString();\n const txHashB = b.transactionId().toString();\n if (txHashA < txHashB) return -1;\n if (txHashA > txHashB) return 1;\n const indexA = a.index();\n const indexB = b.index();\n return indexA < indexB ? -1 : indexA > indexB ? 1 : 0;\n });\n};\n\n/**\n * Build a nonce from the first order UTxO.\n */\nexport const buildNonceFromUtxo = (\n utxo: Core.TransactionInput,\n): V0_3Types.Nonce => ({\n UTxO: [\n {\n transaction_id: utxo.transactionId().toString(),\n output_index: utxo.index(),\n },\n ],\n});\n\n/**\n * Build the origin ByteArray (CBOR-serialized OutputReference) from a UTxO.\n * Used by v0_4 SDK and shared helpers.\n */\nexport const buildOriginFromUtxo = (\n utxo: Core.TransactionUnspentOutput,\n): string => {\n const input = utxo.input();\n const txId = input.transactionId().toString();\n const outputIndex = input.index();\n const fieldsList = new Core.PlutusList();\n fieldsList.add(Core.PlutusData.newBytes(Buffer.from(txId, \"hex\")));\n fieldsList.add(Core.PlutusData.newInteger(outputIndex));\n const outputRefData = Core.PlutusData.newConstrPlutusData(\n new Core.ConstrPlutusData(0n, fieldsList),\n );\n return outputRefData.toCbor();\n};\n\n/**\n * KeySignature type matching the contract's KeySignature tuple.\n * A tuple of [VerificationKey, COSESign1] where:\n * - VerificationKey: 32-byte Ed25519 public key (hex string)\n * - COSESign1: COSE signature with headers (raw CBOR bytes) and detached payload\n */\nexport type TKeySignature = [\n string, // VerificationKey (32-byte public key hex)\n {\n headers: {\n protected: string; // Raw CBOR hex bytes (HeaderMap = ByteArray in contract)\n unprotected: string; // Raw CBOR hex bytes (empty = \"\")\n };\n payload?: string; // Detached - undefined, actual payload stored separately\n signature: string;\n },\n];\n\nexport const destructureCip30Signature = async (\n cip30Signature: CIP30DataSignature,\n): Promise<{\n publicKey: string;\n coseSign1: {\n headers: {\n protected: string;\n unprotected: string;\n };\n signature: string;\n };\n}> => {\n // Read the COSE_Sign1 with CBOR primitives from the dependency tree.\n // Async for callers that await it.\n const { protected: protectedCbor, signature } = readCoseSign1Parts(\n cip30Signature.signature.toString(),\n );\n // Extract public key from COSE_Key (at label -2)\n const publicKey = extractPublicKeyFromCoseKey(cip30Signature.key.toString());\n return {\n publicKey,\n coseSign1: {\n headers: {\n protected: protectedCbor,\n unprotected: \"\", // Empty ByteArray\n },\n signature,\n },\n };\n};\n\n/**\n * Produce a COSE (CIP-8) signature tuple over `payloadHash` using the connected\n * wallet's key. The reusable building block for signer callbacks — e.g. the\n * settings-governance `signAuthPayload` or an orchestrator signed redeemer —\n * that wraps `signData` + `destructureCip30Signature` into the on-chain tuple.\n */\nexport const signPayloadHashWithWallet = async <\n P extends Provider,\n W extends Wallet,\n>(\n blaze: Blaze,\n payloadHash: string,\n): Promise => {\n const address = await blaze.wallet.getChangeAddress();\n const cip30Signature = await blaze.wallet.signData(address, payloadHash);\n const { publicKey, coseSign1 } =\n await destructureCip30Signature(cip30Signature);\n return [publicKey, coseSign1];\n};\n\n/**\n * Create a SignedRedeemer_ExtraProtocolRedeemer structure for on-chain verification.\n *\n * @param extra - The extra protocol redeemer data (e.g., request_to_outputs mapping)\n * @param payload - The SignedPayload_ProtocolRedeemer CBOR hex string (action + nonce)\n * @param signatures - Array of KeySignature tuples from each signer\n * @returns A SignedRedeemer_ExtraProtocolRedeemer ready for use in transaction\n */\nexport const createSignedRedeemer = (\n extra: V0_3Types.ExtraProtocolRedeemer,\n payload: string,\n signatures: SignatureList,\n): V0_3Types.SignedRedeemer_ExtraProtocolRedeemer => {\n if (signatures.length === 0) {\n throw new Error(\"At least one signature is required\");\n }\n\n return {\n extra,\n payload,\n signatures: signatures as SignatureList,\n };\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// CBOR Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Extract the 32-byte Ed25519 public key from a COSE_Key structure.\n * COSE_Key for Ed25519 has the key at label -2.\n * The COSE_Key CBOR structure looks like: a4 01 01 03 27 20 06 21 5820 <32 bytes>\n * Where 21 5820 indicates label -2 followed by a 32-byte bytestring.\n */\nconst extractPublicKeyFromCoseKey = (coseKeyHex: string): string => {\n // Parse the COSE_Key CBOR manually to find the public key\n // The key at label -2 (encoded as 0x21 in CBOR) contains the 32-byte public key\n // Look for 0x21 0x58 0x20 which indicates: label -2, bytestring, 32 bytes\n const keyBytes = Buffer.from(coseKeyHex, \"hex\");\n\n // Find the pattern: 21 58 20 (label -2, bytes, length 32)\n let pubKeyStart = -1;\n for (let i = 0; i < keyBytes.length - 34; i++) {\n if (\n keyBytes[i] === 0x21 &&\n keyBytes[i + 1] === 0x58 &&\n keyBytes[i + 2] === 0x20\n ) {\n pubKeyStart = i + 3; // Skip the 21 58 20 prefix\n break;\n }\n }\n\n if (pubKeyStart === -1) {\n throw new Error(\"Could not find public key in COSE_Key structure\");\n }\n\n const pubKey = keyBytes.slice(pubKeyStart, pubKeyStart + 32);\n if (pubKey.length !== 32) {\n throw new Error(`Invalid public key length: ${pubKey.length}`);\n }\n\n return pubKey.toString(\"hex\");\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// COSE_Sign1 (CIP-8) reader\n// ─────────────────────────────────────────────────────────────────────────────\n\n// CBOR major types used here.\nconst CBOR_MAJOR_BYTES = 2;\nconst CBOR_MAJOR_TEXT = 3;\nconst CBOR_MAJOR_ARRAY = 4;\nconst CBOR_MAJOR_MAP = 5;\nconst CBOR_MAJOR_TAG = 6;\nconst CBOR_MAJOR_SIMPLE = 7; // simple values (false/true/null) and floats\n\nconst CBOR_ADDITIONAL_INDEFINITE = 31;\nconst CBOR_BREAK = 0xff; // terminates an indefinite-length string/array/map\nconst CBOR_TAG_COSE_SIGN1 = 18; // COSE_Sign1's registered tag (encodes as d2)\nconst CBOR_SIMPLE_NULL = 22; // `f6`\n\n/**\n * Read a CBOR header at `offset`, returning the major type, the argument\n * (length / value), whether the item is indefinite-length, and the offset of\n * the item's content. Supports the definite forms (0-23 inline and the\n * 1/2/4/8-byte arguments) plus indefinite-length strings, arrays, and maps.\n */\nconst readCborHeader = (\n bytes: Uint8Array,\n offset: number,\n): {\n major: number;\n argument: number;\n indefinite: boolean;\n contentOffset: number;\n} => {\n const initial = bytes[offset];\n if (initial === undefined) {\n throw new Error(\"COSE_Sign1 CBOR ended unexpectedly\");\n }\n const major = initial >> 5;\n const additional = initial & 0x1f;\n\n if (additional < 24) {\n return {\n major,\n argument: additional,\n indefinite: false,\n contentOffset: offset + 1,\n };\n }\n\n if (additional === CBOR_ADDITIONAL_INDEFINITE) {\n // Only strings, arrays, and maps have an indefinite-length form. A break\n // byte (0xff) parses as major 7 here, so a stray break is rejected too.\n if (major < CBOR_MAJOR_BYTES || major > CBOR_MAJOR_MAP) {\n throw new Error(\n `Unsupported indefinite-length CBOR major type: ${major}`,\n );\n }\n return { major, argument: 0, indefinite: true, contentOffset: offset + 1 };\n }\n\n // 24/25/26/27 -> 1/2/4/8 following length bytes. 28-30 are reserved.\n if (additional > 27) {\n throw new Error(`Unsupported CBOR additional info: ${additional}`);\n }\n const lengthBytes = 1 << (additional - 24);\n let argument = 0;\n for (let i = 0; i < lengthBytes; i++) {\n const b = bytes[offset + 1 + i];\n if (b === undefined) {\n throw new Error(\"COSE_Sign1 CBOR length ended unexpectedly\");\n }\n argument = argument * 256 + b;\n }\n return {\n major,\n argument,\n indefinite: false,\n contentOffset: offset + 1 + lengthBytes,\n };\n};\n\n/**\n * Read the definite-length chunks of an indefinite-length CBOR string whose\n * first chunk header is at `offset`, returning the concatenated content and\n * the offset just past the closing break byte.\n */\nconst readIndefiniteStringChunks = (\n bytes: Uint8Array,\n major: number,\n offset: number,\n): { content: Uint8Array; nextOffset: number } => {\n const chunks: Uint8Array[] = [];\n let next = offset;\n while (bytes[next] !== CBOR_BREAK) {\n const chunk = readCborHeader(bytes, next);\n if (chunk.major !== major || chunk.indefinite) {\n throw new Error(\"Invalid chunk in an indefinite-length CBOR string\");\n }\n const end = chunk.contentOffset + chunk.argument;\n if (end > bytes.length) {\n throw new Error(\"COSE_Sign1 CBOR ended unexpectedly\");\n }\n chunks.push(bytes.slice(chunk.contentOffset, end));\n next = end;\n }\n return { content: Buffer.concat(chunks), nextOffset: next + 1 };\n};\n\n/**\n * Skip over one complete CBOR data item starting at `offset`, returning the\n * offset immediately after it. Handles the item shapes that occur inside a\n * COSE_Sign1 (byte/text strings, integers, arrays, maps, tags — definite or\n * indefinite length) recursively.\n */\nconst skipCborItem = (bytes: Uint8Array, offset: number): number => {\n const { major, argument, indefinite, contentOffset } = readCborHeader(\n bytes,\n offset,\n );\n if (indefinite) {\n if (major === CBOR_MAJOR_BYTES || major === CBOR_MAJOR_TEXT) {\n return readIndefiniteStringChunks(bytes, major, contentOffset).nextOffset;\n }\n // Indefinite array or map: items until the break byte.\n let next = contentOffset;\n while (bytes[next] !== CBOR_BREAK) {\n if (bytes[next] === undefined) {\n throw new Error(\"COSE_Sign1 CBOR ended unexpectedly\");\n }\n next = skipCborItem(bytes, next); // array item / map key\n if (major === CBOR_MAJOR_MAP) {\n next = skipCborItem(bytes, next); // map value\n }\n }\n return next + 1;\n }\n switch (major) {\n case 0: // unsigned int\n case 1: // negative int\n case CBOR_MAJOR_SIMPLE: // simple value (false/true/null) or float\n // readCborHeader already consumed the value/float bytes into `argument`.\n return contentOffset;\n case CBOR_MAJOR_BYTES:\n case CBOR_MAJOR_TEXT: {\n const end = contentOffset + argument;\n if (end > bytes.length) {\n throw new Error(\"COSE_Sign1 CBOR ended unexpectedly\");\n }\n return end;\n }\n case CBOR_MAJOR_ARRAY: {\n let next = contentOffset;\n for (let i = 0; i < argument; i++) {\n next = skipCborItem(bytes, next);\n }\n return next;\n }\n case CBOR_MAJOR_MAP: {\n let next = contentOffset;\n for (let i = 0; i < argument; i++) {\n next = skipCborItem(bytes, next); // key\n next = skipCborItem(bytes, next); // value\n }\n return next;\n }\n case CBOR_MAJOR_TAG:\n return skipCborItem(bytes, contentOffset); // tagged content\n default:\n throw new Error(`Unsupported CBOR major type in COSE_Sign1: ${major}`);\n }\n};\n\n/**\n * Read the byte-string content at `offset`, returning its hex and the offset\n * after it.\n */\nconst readCborByteString = (\n bytes: Uint8Array,\n offset: number,\n): { hex: string; nextOffset: number } => {\n const { major, argument, indefinite, contentOffset } = readCborHeader(\n bytes,\n offset,\n );\n if (major !== CBOR_MAJOR_BYTES) {\n throw new Error(\n `Expected a CBOR byte string in COSE_Sign1, got major type ${major}`,\n );\n }\n if (indefinite) {\n const { content, nextOffset } = readIndefiniteStringChunks(\n bytes,\n major,\n contentOffset,\n );\n return { hex: Buffer.from(content).toString(\"hex\"), nextOffset };\n }\n const end = contentOffset + argument;\n if (end > bytes.length) {\n throw new Error(\"COSE_Sign1 CBOR ended unexpectedly\");\n }\n return {\n hex: Buffer.from(bytes.slice(contentOffset, end)).toString(\"hex\"),\n nextOffset: end,\n };\n};\n\n/**\n * Parse a CIP-8 COSE_Sign1 and extract the pieces the on-chain KeySignature\n * tuple needs: the protected header map bytes (byte-string content, wrapper\n * removed) and the raw Ed25519 signature bytes.\n *\n * COSE_Sign1 = [ protected: bstr, unprotected: map, payload: bstr / nil,\n * signature: bstr ], optionally wrapped in CBOR tag 18. The protected element\n * is itself a byte string whose content is the serialized header map; reading\n * the byte-string content yields the raw header-map bytes the tuple stores.\n * Indefinite-length encodings of the array, the maps, and the byte strings\n * are accepted alongside the definite forms.\n */\nexport const readCoseSign1Parts = (\n coseSign1Hex: string,\n): { protected: string; signature: string } => {\n const bytes = Buffer.from(coseSign1Hex, \"hex\");\n\n let offset = 0;\n // Optional CBOR tag: only tag 18 (COSE_Sign1's registered tag, the `d2`\n // prefix) is accepted — tagged input is accepted by design, since the\n // Ledger signing path emits d2-tagged COSE_Sign1s, but any other tag means\n // this isn't a COSE_Sign1 and must be rejected rather than silently unwrapped.\n const first = readCborHeader(bytes, offset);\n if (first.major === CBOR_MAJOR_TAG) {\n if (first.argument !== CBOR_TAG_COSE_SIGN1) {\n throw new Error(\n `COSE_Sign1 has unexpected CBOR tag ${first.argument} (expected 18)`,\n );\n }\n offset = first.contentOffset;\n }\n\n const array = readCborHeader(bytes, offset);\n if (array.major !== CBOR_MAJOR_ARRAY) {\n throw new Error(\"COSE_Sign1 is not a CBOR array\");\n }\n if (!array.indefinite && array.argument !== 4) {\n throw new Error(\"COSE_Sign1 is not a 4-element CBOR array\");\n }\n\n // Element 0: protected header byte string (content = serialized header map).\n const protectedRead = readCborByteString(bytes, array.contentOffset);\n\n // Element 1: unprotected header map — must be a CBOR map (major 5),\n // definite or indefinite. Peek the header before skipCborItem consumes it\n // so we assert on the same read the skip performs, not a second one.\n const unprotectedHeader = readCborHeader(bytes, protectedRead.nextOffset);\n if (unprotectedHeader.major !== CBOR_MAJOR_MAP) {\n throw new Error(\n `COSE_Sign1 unprotected header is not a CBOR map (got major type ${unprotectedHeader.major})`,\n );\n }\n const afterUnprotected = skipCborItem(bytes, protectedRead.nextOffset);\n\n // Element 2: payload — must be a byte string (major 2) or null (`f6`).\n const payloadHeader = readCborHeader(bytes, afterUnprotected);\n const isNullPayload =\n payloadHeader.major === CBOR_MAJOR_SIMPLE &&\n !payloadHeader.indefinite &&\n payloadHeader.argument === CBOR_SIMPLE_NULL;\n if (payloadHeader.major !== CBOR_MAJOR_BYTES && !isNullPayload) {\n throw new Error(\n `COSE_Sign1 payload is not a byte string or null (got major type ${payloadHeader.major})`,\n );\n }\n const afterPayload = skipCborItem(bytes, afterUnprotected);\n\n // Element 3: signature byte string.\n const signatureRead = readCborByteString(bytes, afterPayload);\n\n // An indefinite-length COSE_Sign1 array must close right after element 3.\n if (array.indefinite && bytes[signatureRead.nextOffset] !== CBOR_BREAK) {\n throw new Error(\"COSE_Sign1 is not a 4-element CBOR array\");\n }\n\n return { protected: protectedRead.hex, signature: signatureRead.hex };\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Treasury Operation Payload Helpers (Withdraw/Deposit)\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Build the SignedPayload_ProtocolRedeemer for a withdraw operation.\n * Uses the treasury UTxO as the nonce source.\n *\n * @param requests - Array of withdraw requests with destinations and amounts\n * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce)\n * @returns SignedPayload_ProtocolRedeemer CBOR hex string\n */\nexport const getSignedPayloadForWithdraw = (\n amount: bigint,\n treasuryUtxo: Core.TransactionUnspentOutput,\n): string => {\n if (amount <= 0n) {\n throw new Error(\"Withdraw amount must be positive\");\n }\n\n // Reuse existing nonce builder\n const nonce = buildNonceFromUtxo(treasuryUtxo.input());\n\n const action: V0_3Types.ProtocolRedeemer = {\n Withdraw: { withdraw_amount: amount },\n };\n\n const signedPayload: V0_3Types.SignedPayload_ProtocolRedeemer = {\n action,\n nonce,\n };\n return Data.serialize(V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload)\n .toCbor()\n .toString();\n};\n\n/**\n * Build the SignedPayload_ProtocolRedeemer for a deposit operation.\n * Uses the treasury UTxO as the nonce source.\n *\n * @param amount - The amount of reserve tokens to deposit\n * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce)\n * @returns SignedPayload_ProtocolRedeemer CBOR hex string\n */\nexport const getSignedPayloadForDeposit = (\n amount: bigint,\n treasuryUtxo: Core.TransactionUnspentOutput,\n): string => {\n if (amount <= 0n) {\n throw new Error(\"Deposit amount must be positive\");\n }\n\n const nonce = buildNonceFromUtxo(treasuryUtxo.input());\n\n const action: V0_3Types.ProtocolRedeemer = {\n Deposit: { deposit_amount: amount },\n };\n\n const signedPayload: V0_3Types.SignedPayload_ProtocolRedeemer = {\n action,\n nonce,\n };\n return Data.serialize(V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload)\n .toCbor()\n .toString();\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Address Conversion Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Convert a Cardano address to a Destination type for order transactions.\n * Extracts payment and stake credentials from the address.\n *\n * @param address - The Cardano address to convert\n * @param datum - Optional datum for the destination (defaults to \"NoDatum\")\n * @returns A Destination object suitable for order transactions\n */\nexport function addressToDestination(\n address: Core.Address,\n datum: Destination[\"datum\"] = \"NoDatum\",\n): Destination {\n const props = address.getProps();\n const paymentPart = props.paymentPart;\n\n if (!paymentPart) {\n throw new Error(\"Address must have a payment part\");\n }\n\n const paymentCredential =\n paymentPart.type === Core.CredentialType.KeyHash\n ? { VerificationKey: [paymentPart.hash] as [string] }\n : { Script: [paymentPart.hash] as [string] };\n\n let stakeCredential: Destination[\"address\"][\"stake_credential\"] = undefined;\n if (props.delegationPart) {\n const stakeCred =\n props.delegationPart.type === Core.CredentialType.KeyHash\n ? { VerificationKey: [props.delegationPart.hash] as [string] }\n : { Script: [props.delegationPart.hash] as [string] };\n stakeCredential = { Inline: [stakeCred] };\n }\n\n return {\n address: {\n payment_credential: paymentCredential,\n stake_credential: stakeCredential,\n },\n datum,\n };\n}\n\n/**\n * Convert a Destination-like value into a Cardano address.\n * Supports enterprise and base addresses. Pointer credentials are ignored.\n */\nexport function destinationToAddress(\n network: Core.NetworkId,\n destination: TDestinationLike,\n): Core.Address {\n const paymentCred = destination.address.payment_credential;\n const stakingCred = destination.address.stake_credential;\n let paymentCredCore: Core.Credential;\n let stakingCredCore: Core.Credential | undefined;\n\n if (\n stakingCred &&\n typeof stakingCred === \"object\" &&\n \"Inline\" in stakingCred\n ) {\n const inlineCredential = (\n stakingCred as { Inline: [TDestinationCredentialLike] }\n ).Inline[0];\n if (\"VerificationKey\" in inlineCredential) {\n stakingCredCore = Core.Credential.fromCore({\n type: Core.CredentialType.KeyHash,\n hash: inlineCredential.VerificationKey[0],\n });\n } else if (\"Script\" in inlineCredential) {\n stakingCredCore = Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash: inlineCredential.Script[0],\n });\n }\n }\n\n if (\"VerificationKey\" in paymentCred) {\n paymentCredCore = Core.Credential.fromCore({\n type: Core.CredentialType.KeyHash,\n hash: paymentCred.VerificationKey[0],\n });\n } else {\n paymentCredCore = Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash: paymentCred.Script[0],\n });\n }\n\n return addressFromCredentials(network, paymentCredCore, stakingCredCore);\n}\n\n/**\n * Add an output for a Destination, including script-payment addresses and\n * any datum metadata attached to the destination.\n *\n * Attaches the datum directly to a fresh TransactionOutput rather than\n * routing through Core.TransactionOutput.fromCore, because generated\n * TPlutusData values from @blaze-cardano/data are already Blaze\n * PlutusData instances and PlutusData.fromCore does not know how to\n * decode them (throws NotImplementedError).\n */\nexport function addDestinationOutput(\n tx: TxBuilder,\n network: Core.NetworkId,\n destination: TDestinationLike,\n value: Core.Value,\n): void {\n const output = new Core.TransactionOutput(\n destinationToAddress(network, destination),\n value,\n );\n const { datum } = destination;\n if (datum !== \"NoDatum\") {\n if (\"DatumHash\" in datum) {\n output.setDatum(Core.Datum.newDataHash(datum.DatumHash[0]));\n } else {\n output.setDatum(\n Core.Datum.newInlineData(datum.InlineDatum[0] as Core.PlutusData),\n );\n }\n }\n tx.addOutput(output);\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Cross-Version Cancel Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\nconst NORMALIZED_PROTOCOL_VERSION_MAP: Record = {\n v0: \"V0\",\n v0_1: \"V0_1\",\n v0_2: \"V0_2\",\n v0_3: \"V0_3\",\n v0_4: \"V0_4\",\n v1_0: \"V1_0\",\n v1_0_rc1: \"V1_0_Rc1\",\n v1_1_rc1: \"V1_1_Rc1\",\n};\n\n/**\n * Normalize externally-sourced protocol/order version strings into the SDK's\n * canonical `TProtocolVersion` values.\n */\nexport const normalizeProtocolVersion = (\n version: string | null | undefined,\n): TProtocolVersion | undefined => {\n if (!version) {\n return undefined;\n }\n\n return NORMALIZED_PROTOCOL_VERSION_MAP[version.trim().toLowerCase()];\n};\n\n/**\n * Alias for frontend order-version sources (GraphQL/backend strings).\n */\nexport const normalizeOrderVersion = normalizeProtocolVersion;\n\n/**\n * Extract the inline datum from a UTxO.\n */\nexport const getInlineDatumFromUtxo = (\n utxo: Core.TransactionUnspentOutput,\n label = \"Order UTXO\",\n): Core.PlutusData => {\n const datum = utxo.output().datum()?.asInlineData();\n if (!datum) {\n throw new Error(`${label} has no inline datum`);\n }\n return datum;\n};\n\n/**\n * Extract the payment script hash from an order UTxO's output address.\n */\nexport const getScriptHashFromOrderUtxo = (\n utxo: Core.TransactionUnspentOutput,\n): Core.Hash28ByteBase16 => {\n const paymentPart = utxo.output().address().getProps().paymentPart;\n\n if (!paymentPart) {\n throw new Error(\"Order UTXO address has no payment credential\");\n }\n\n if (paymentPart.type !== Core.CredentialType.ScriptHash) {\n throw new Error(\"Order UTXO payment credential is not a script hash\");\n }\n\n return paymentPart.hash;\n};\n\n/**\n * Resolve one reference input per unique script hash.\n */\nexport async function resolveReferenceInputsByScriptHash<\n P extends Provider,\n W extends Wallet,\n>(\n blaze: Blaze,\n scriptHashes: Iterable,\n cachedInputs?:\n | ReadonlyMap\n | Partial>,\n address?: Core.Address,\n): Promise> {\n const referenceInputs = new Map<\n Core.Hash28ByteBase16,\n Core.TransactionUnspentOutput\n >();\n\n for (const hash of new Set(scriptHashes)) {\n const cachedInput =\n cachedInputs instanceof Map\n ? cachedInputs.get(hash)\n : (\n cachedInputs as\n | Partial>\n | undefined\n )?.[hash as string];\n\n if (cachedInput) {\n referenceInputs.set(hash, cachedInput);\n continue;\n }\n\n const refInput =\n (address && (await resolveScriptRefAtAddress(blaze, hash, address))) ||\n (await blaze.provider.resolveScriptRef(hash));\n\n if (!refInput) {\n throw new Error(\n `Missing order reference script input for hash ${hash}. Make sure the order script is deployed.`,\n );\n }\n\n referenceInputs.set(hash, refInput);\n }\n\n return referenceInputs;\n}\n\n/**\n * Resolve the order reference inputs needed to spend a batch of order UTxOs.\n */\nexport async function resolveOrderReferenceInputs<\n P extends Provider,\n W extends Wallet,\n>(\n blaze: Blaze,\n orderUtxos: Iterable,\n cachedInputs?:\n | ReadonlyMap\n | Partial>,\n address?: Core.Address,\n): Promise> {\n const scriptHashes: Core.Hash28ByteBase16[] = [];\n\n for (const utxo of orderUtxos) {\n scriptHashes.push(getScriptHashFromOrderUtxo(utxo));\n }\n\n return resolveReferenceInputsByScriptHash(\n blaze,\n scriptHashes,\n cachedInputs,\n address,\n );\n}\n\n/**\n * Strict owner-only parser for order datums used by cross-version cancel.\n *\n * All currently-supported order datum variants encode as:\n * Constr(0, [owner, destination, action, data]).\n */\nexport const parseOrderOwnerGenericFromDatum = (\n datum: Core.PlutusData,\n): TMultisigScript => {\n const constr = datum.asConstrPlutusData();\n if (!constr) {\n throw new Error(\"Order datum is not a constructor PlutusData\");\n }\n\n if (constr.getAlternative() !== 0n) {\n throw new Error(\n `Order datum has unexpected constructor index ${constr.getAlternative().toString()} (expected 0)`,\n );\n }\n\n const fields = constr.getData();\n if (fields.getLength() < 4) {\n throw new Error(\n `Order datum has ${fields.getLength().toString()} fields (expected at least 4)`,\n );\n }\n\n return parse(V0_3Types.MultisigScript, fields.get(0)) as TMultisigScript;\n};\n\n/**\n * Strict owner-only parser for cancel flows.\n */\nexport const parseOrderOwnerGeneric = (\n utxo: Core.TransactionUnspentOutput,\n): TMultisigScript => {\n return parseOrderOwnerGenericFromDatum(getInlineDatumFromUtxo(utxo));\n};\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v0/index.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v0/index.js new file mode 100644 index 0000000000..9296a4ebfd --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v0/index.js @@ -0,0 +1,264 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.RealfiSDKV0 = exports.AdminDatum = void 0; +var _data = _interopRequireWildcard(require("@blaze-cardano/data")); +var Data = _data; +var _sdk = require("@blaze-cardano/sdk"); +var _index = require("../../generated-types/index.js"); +var _index2 = require("../shared/index.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/** + * V0 datum type - simple datum with logic hash and no settings + */ +var AdminDatum = exports.AdminDatum = Data.Type.Object({ + logic: Data.Type.String(), + settings: Data.Type.Void() +}, { + ctor: 0n +}); +/** + * V0 SDK implementation. + * + * Simple minting without treasury management. + * All operations (oneshot, protocol, mint proxy) are consolidated here. + */ +var RealfiSDKV0 = exports.RealfiSDKV0 = /*#__PURE__*/function (_RealfiSDKBase) { + function RealfiSDKV0(blaze, params, scripts, cachedReferenceInputs) { + var _this; + _classCallCheck(this, RealfiSDKV0); + _this = _callSuper(this, RealfiSDKV0, [blaze, params, cachedReferenceInputs]); + _defineProperty(_this, "version", "V0"); + // Script hashes and policy IDs + _defineProperty(_this, "stablecoinPolicyId", void 0); + _defineProperty(_this, "oneShotPolicyId", void 0); + _defineProperty(_this, "protocolScriptHash", void 0); + // Scripts + _defineProperty(_this, "oneShotScript", void 0); + _defineProperty(_this, "protocolScript", void 0); + _defineProperty(_this, "mintProxyScript", void 0); + _this.oneShotScript = scripts.oneShotScript; + _this.protocolScript = scripts.protocolScript; + _this.mintProxyScript = scripts.mintProxyScript; + _this.oneShotPolicyId = _sdk.Core.PolicyId(_this.oneShotScript.hash()); + _this.protocolScriptHash = _this.protocolScript.hash(); + _this.stablecoinPolicyId = _sdk.Core.PolicyId(_this.mintProxyScript.hash()); + return _this; + } + + /** + * Create a V0 SDK instance. + */ + _inherits(RealfiSDKV0, _RealfiSDKBase); + return _createClass(RealfiSDKV0, [{ + key: "mintOneShot", + value: // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint the one-shot NFT with the initial datum. + * This consumes the bootstrap UTXO and can only be done once. + */ + function () { + var _mintOneShot = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(receiverAddress, datum) { + var utxo, serializedDatum, baseTx, tx; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + _context.n = 1; + return this.resolveBootstrapUtxo(); + case 1: + utxo = _context.v; + serializedDatum = Data.serialize(AdminDatum, { + logic: datum.logic, + settings: datum.settings + }); + baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[_sdk.Core.AssetName(""), 1n]]), Data.Void()); + tx = (0, _index2.lockOrPayAssets)(baseTx, receiverAddress, (0, _sdk.makeValue)(1000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return _context.a(2, { + tx: tx, + policyId: this.oneShotPolicyId + }); + } + }, _callee, this); + })); + function mintOneShot(_x, _x2) { + return _mintOneShot.apply(this, arguments); + } + return mintOneShot; + }() + /** + * Update the one-shot datum. + * This spends the one-shot UTXO and sends it back to the receiver with new datum. + */ + }, { + key: "updateOneShotDatum", + value: (function () { + var _updateOneShotDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(receiverAddress, newDatum) { + var oneshotUtxo, serializedDatum; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + _context2.n = 1; + return this.blaze.provider.getUnspentOutputByNFT(_sdk.Core.AssetId(this.oneShotPolicyId)); + case 1: + oneshotUtxo = _context2.v; + if (oneshotUtxo) { + _context2.n = 2; + break; + } + throw new Error("No UTXO found with the one-shot NFT"); + case 2: + serializedDatum = Data.serialize(AdminDatum, { + logic: newDatum.logic, + settings: newDatum.settings + }); + return _context2.a(2, (0, _index2.lockOrPayAssets)(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, (0, _sdk.makeValue)(1000000n, [this.oneShotPolicyId, 1n]), serializedDatum)); + } + }, _callee2, this); + })); + function updateOneShotDatum(_x3, _x4) { + return _updateOneShotDatum.apply(this, arguments); + } + return updateOneShotDatum; + }() + /** + * Get the proxy datum from the one-shot token UTXO. + * Result is cached after first fetch. + */ + ) + }, { + key: "getParsedProxyDatum", + value: (function () { + var _getParsedProxyDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() { + var _yield$this$getRawPro, proxyUtxo, proxyDatum, parsedProxyDatum, result; + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + if (!this.cachedProxyDatumResult) { + _context3.n = 1; + break; + } + return _context3.a(2, this.cachedProxyDatumResult); + case 1: + _context3.n = 2; + return this.getRawProxyDatum(); + case 2: + _yield$this$getRawPro = _context3.v; + proxyUtxo = _yield$this$getRawPro.proxyUtxo; + proxyDatum = _yield$this$getRawPro.proxyDatum; + parsedProxyDatum = (0, _data.parse)(AdminDatum, proxyDatum); + result = { + proxyUtxo: proxyUtxo, + proxyDatum: proxyDatum, + parsedProxyDatum: parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return _context3.a(2, result); + } + }, _callee3, this); + })); + function getParsedProxyDatum() { + return _getParsedProxyDatum.apply(this, arguments); + } + return getParsedProxyDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0 minting is simple - no treasury involvement. + */ + ) + }, { + key: "buildMintTx", + value: function () { + var _buildMintTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(amount) { + var rewardAccount, utxo, refInputs, tx; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.n) { + case 0: + rewardAccount = this.getProtocolRewardAccount(); + _context4.n = 1; + return this.blaze.provider.getUnspentOutputByNFT(_sdk.Core.AssetId(this.oneShotPolicyId)); + case 1: + utxo = _context4.v; + if (utxo) { + _context4.n = 2; + break; + } + throw new Error("No UTXO found with the one-shot NFT"); + case 2: + _context4.n = 3; + return this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash() + }); + case 3: + refInputs = _context4.v; + tx = this.blaze.newTransaction().addReferenceInput(utxo).addWithdrawal(rewardAccount, 0n, (0, _data.Void)()).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), amount.amount]]), (0, _data.Void)()); + return _context4.a(2, tx); + } + }, _callee4, this); + })); + function buildMintTx(_x5) { + return _buildMintTx.apply(this, arguments); + } + return buildMintTx; + }() + }], [{ + key: "create", + value: function create(blaze, params) { + var _params$enableTrace, _params$referenceInpu, _params$referenceInpu2; + var enableTrace = (_params$enableTrace = params.enableTrace) !== null && _params$enableTrace !== void 0 ? _params$enableTrace : false; + + // Instantiate one-shot script + var oneShotScript = new _index.BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + + // Instantiate protocol script (V0 uses no parameters) + var protocolScript = new _index.V0Types.V0ProtocolProtocolWithdraw(enableTrace).Script; + + // Instantiate mint proxy script (parameterized by one-shot policy ID) + var oneShotPolicyId = oneShotScript.hash(); + var mintProxyScript = new _index.BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV0(blaze, { + version: "V0", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace: enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress + }, { + oneShotScript: oneShotScript, + protocolScript: protocolScript, + mintProxyScript: mintProxyScript + }, { + protocolRefInput: (_params$referenceInpu = params.referenceInputs) === null || _params$referenceInpu === void 0 ? void 0 : _params$referenceInpu.protocolRefInput, + proxyRefInput: (_params$referenceInpu2 = params.referenceInputs) === null || _params$referenceInpu2 === void 0 ? void 0 : _params$referenceInpu2.proxyRefInput + }); + } + }]); +}(_index2.RealfiSDKBase); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v0/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v0/index.js.map new file mode 100644 index 0000000000..d877376717 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v0/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_data","_interopRequireWildcard","require","Data","_sdk","_index","_index2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Symbol","iterator","constructor","prototype","_regenerator","toStringTag","c","Generator","u","create","_regeneratorDefine2","p","y","G","v","a","d","bind","length","l","TypeError","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","_assertThisInitialized","ReferenceError","Boolean","valueOf","_inherits","_setPrototypeOf","_defineProperty","_toPrimitive","toPrimitive","String","Number","AdminDatum","exports","Type","logic","settings","Void","ctor","RealfiSDKV0","_RealfiSDKBase","blaze","params","scripts","cachedReferenceInputs","_this","oneShotScript","protocolScript","mintProxyScript","oneShotPolicyId","Core","PolicyId","hash","protocolScriptHash","stablecoinPolicyId","_mintOneShot","_callee","receiverAddress","datum","utxo","serializedDatum","baseTx","tx","_context","resolveBootstrapUtxo","serialize","newTransaction","addInput","addMint","Map","AssetName","lockOrPayAssets","makeValue","provideScript","policyId","mintOneShot","_x","_x2","_updateOneShotDatum","_callee2","newDatum","oneshotUtxo","_context2","provider","getUnspentOutputByNFT","AssetId","Error","updateOneShotDatum","_x3","_x4","_getParsedProxyDatum","_callee3","_yield$this$getRawPro","proxyUtxo","proxyDatum","parsedProxyDatum","result","_context3","cachedProxyDatumResult","getRawProxyDatum","parse","getParsedProxyDatum","_buildMintTx","_callee4","amount","rewardAccount","refInputs","_context4","getProtocolRewardAccount","getScriptReferenceInputs","protocol","proxy","addReferenceInput","addWithdrawal","assetNameHex","buildMintTx","_x5","_params$enableTrace","_params$referenceInpu","_params$referenceInpu2","enableTrace","BaseTypes","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","V0Types","V0ProtocolProtocolWithdraw","BaseMintProxyMintProxyMint","version","scriptDeploymentAddress","protocolRefInput","referenceInputs","proxyRefInput","RealfiSDKBase"],"sources":["../../../../src/sdk/v0/index.ts"],"sourcesContent":["import * as Data from \"@blaze-cardano/data\";\nimport { parse, Void } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\nimport { AssetAmount } from \"@sundaeswap/asset\";\n\nimport { BaseTypes, V0Types } from \"../../generated-types/index.js\";\nimport {\n type IBaseSDKParams,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n lockOrPayAssets,\n RealfiSDKBase,\n} from \"../shared/index.js\";\n\n/**\n * V0 datum type - simple datum with logic hash and no settings\n */\nexport const AdminDatum = Data.Type.Object(\n {\n logic: Data.Type.String(),\n settings: Data.Type.Void(),\n },\n { ctor: 0n },\n);\n\nexport type TAdminDatumType = {\n logic: string;\n settings: void;\n};\n\nexport interface IRealfiSDKParamsV0 {\n version: \"V0\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n assetNameHex: string;\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n };\n}\n\n/**\n * V0 SDK implementation.\n *\n * Simple minting without treasury management.\n * All operations (oneshot, protocol, mint proxy) are consolidated here.\n */\nexport class RealfiSDKV0<\n P extends Provider,\n W extends Wallet,\n> extends RealfiSDKBase {\n readonly version = \"V0\" as const;\n\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n\n private constructor(\n blaze: Blaze,\n params: IBaseSDKParams,\n scripts: {\n oneShotScript: Core.Script;\n protocolScript: Core.Script;\n mintProxyScript: Core.Script;\n },\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n super(blaze, params, cachedReferenceInputs);\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolScript = scripts.protocolScript;\n this.mintProxyScript = scripts.mintProxyScript;\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n }\n\n /**\n * Create a V0 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0,\n ): RealfiSDKV0 {\n const enableTrace = params.enableTrace ?? false;\n\n // Instantiate one-shot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n\n // Instantiate protocol script (V0 uses no parameters)\n const protocolScript = new V0Types.V0ProtocolProtocolWithdraw(enableTrace)\n .Script;\n\n // Instantiate mint proxy script (parameterized by one-shot policy ID)\n const oneShotPolicyId = oneShotScript.hash();\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV0(\n blaze,\n {\n version: \"V0\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n },\n {\n oneShotScript,\n protocolScript,\n mintProxyScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the one-shot NFT with the initial datum.\n * This consumes the bootstrap UTXO and can only be done once.\n */\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: TAdminDatumType,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(AdminDatum, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(1000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n /**\n * Update the one-shot datum.\n * This spends the one-shot UTXO and sends it back to the receiver with new datum.\n */\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: TAdminDatumType,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(AdminDatum, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(1000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n }\n\n /**\n * Get the proxy datum from the one-shot token UTXO.\n * Result is cached after first fetch.\n */\n async getParsedProxyDatum(): Promise> {\n if (this.cachedProxyDatumResult) {\n return this.cachedProxyDatumResult as IProxyDatumResult;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(AdminDatum, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Minting Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a mint (positive amount) or burn (negative amount) transaction.\n * V0 minting is simple - no treasury involvement.\n */\n async buildMintTx(amount: AssetAmount): Promise {\n const rewardAccount = this.getProtocolRewardAccount();\n\n const utxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!utxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n });\n\n const tx = this.blaze\n .newTransaction()\n .addReferenceInput(utxo)\n .addWithdrawal(rewardAccount, 0n, Void())\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), amount.amount]]),\n Void(),\n );\n\n return tx;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v0_1/index.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_1/index.js new file mode 100644 index 0000000000..0d19ea7f0f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_1/index.js @@ -0,0 +1,442 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.RealfiSDKV0_1 = void 0; +var _core = require("@blaze-cardano/core"); +var _data = _interopRequireWildcard(require("@blaze-cardano/data")); +var Data = _data; +var _sdk = require("@blaze-cardano/sdk"); +var _index = require("../../generated-types/index.js"); +var _index2 = require("../shared/index.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +// eslint-disable-next-line @typescript-eslint/naming-convention +/** + * V0_1 SDK implementation. + * + * Includes treasury management, reserve backing, and circulating supply tracking. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +var RealfiSDKV0_1 = exports.RealfiSDKV0_1 = /*#__PURE__*/function (_RealfiSDKBase) { + function RealfiSDKV0_1(blaze, params, scripts, treasuryNFTAssetId, cachedReferenceInputs) { + var _this; + _classCallCheck(this, RealfiSDKV0_1); + _this = _callSuper(this, RealfiSDKV0_1, [blaze, params, cachedReferenceInputs]); + _defineProperty(_this, "version", "V0_1"); + // Script hashes and policy IDs + _defineProperty(_this, "stablecoinPolicyId", void 0); + _defineProperty(_this, "oneShotPolicyId", void 0); + _defineProperty(_this, "protocolScriptHash", void 0); + _defineProperty(_this, "treasuryScriptHash", void 0); + _defineProperty(_this, "treasuryNFTAssetId", void 0); + // Scripts + _defineProperty(_this, "oneShotScript", void 0); + _defineProperty(_this, "protocolScript", void 0); + _defineProperty(_this, "mintProxyScript", void 0); + _defineProperty(_this, "treasuryScript", void 0); + _this.oneShotScript = scripts.oneShotScript; + _this.protocolScript = scripts.protocolScript; + _this.mintProxyScript = scripts.mintProxyScript; + _this.treasuryScript = scripts.treasuryScript; + _this.oneShotPolicyId = _sdk.Core.PolicyId(_this.oneShotScript.hash()); + _this.protocolScriptHash = _this.protocolScript.hash(); + _this.stablecoinPolicyId = _sdk.Core.PolicyId(_this.mintProxyScript.hash()); + _this.treasuryScriptHash = _this.treasuryScript.hash(); + _this.treasuryNFTAssetId = treasuryNFTAssetId; + return _this; + } + + /** + * Create a V0_1 SDK instance. + */ + _inherits(RealfiSDKV0_1, _RealfiSDKBase); + return _createClass(RealfiSDKV0_1, [{ + key: "mintTreasuryNFT", + value: // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * Uses the treasury bootstrap UTXO that was provided when creating the SDK. + */ + function () { + var _mintTreasuryNFT = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(treasuryBootstrapUtxo) { + var initialDatum, + treasuryPolicyId, + treasuryAssetName, + treasuryAddress, + datum, + tx, + _args = arguments; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + initialDatum = _args.length > 1 && _args[1] !== undefined ? _args[1] : { + circulating_supply: 0n + }; + treasuryPolicyId = _sdk.Core.PolicyId(this.treasuryScript.hash()); + treasuryAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("treasury"))); + treasuryAddress = (0, _core.addressFromValidator)(this.network, this.treasuryScript); + datum = Data.serialize(_index.V0_1Types.TreasuryDatum, initialDatum); + tx = this.blaze.newTransaction().addInput(treasuryBootstrapUtxo).addMint(treasuryPolicyId, new Map([[treasuryAssetName, 1n]]), Data.Void()).lockAssets(treasuryAddress, (0, _sdk.makeValue)(1000000n, [this.treasuryNFTAssetId, 1n]), datum).provideScript(this.treasuryScript); + return _context.a(2, { + tx: tx, + nftAssetId: this.treasuryNFTAssetId + }); + } + }, _callee, this); + })); + function mintTreasuryNFT(_x) { + return _mintTreasuryNFT.apply(this, arguments); + } + return mintTreasuryNFT; + }() + /** + * Deploy the treasury script as a reference script. + */ + }, { + key: "deployTreasury", + value: (function () { + var _deployTreasury = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() { + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + return _context2.a(2, (0, _index2.deployScript)(this.blaze, this.treasuryScript, this.scriptDeploymentAddress)); + } + }, _callee2, this); + })); + function deployTreasury() { + return _deployTreasury.apply(this, arguments); + } + return deployTreasury; + }() + /** + * Get the treasury datum. + */ + ) + }, { + key: "getTreasuryDatum", + value: (function () { + var _getTreasuryDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() { + var _yield$getDatumFromNF, treasuryUtxo, treasuryDatum, parsedTreasuryDatum; + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + _context3.n = 1; + return (0, _index2.getDatumFromNFT)(this.blaze, this.treasuryNFTAssetId, _index.V0_1Types.TreasuryDatum); + case 1: + _yield$getDatumFromNF = _context3.v; + treasuryUtxo = _yield$getDatumFromNF.utxo; + treasuryDatum = _yield$getDatumFromNF.datum; + parsedTreasuryDatum = _yield$getDatumFromNF.parsedDatum; + if (treasuryUtxo) { + _context3.n = 2; + break; + } + throw new Error("No UTXO found with the treasury NFT"); + case 2: + if (treasuryDatum) { + _context3.n = 3; + break; + } + throw new Error("No treasury datum found"); + case 3: + return _context3.a(2, { + treasuryUtxo: treasuryUtxo, + treasuryDatum: treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum + }); + } + }, _callee3, this); + })); + function getTreasuryDatum() { + return _getTreasuryDatum.apply(this, arguments); + } + return getTreasuryDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint the one-shot NFT with the initial datum. + * This consumes the bootstrap UTXO and can only be done once. + */ + ) + }, { + key: "mintOneShot", + value: function () { + var _mintOneShot = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(receiverAddress, datum) { + var utxo, serializedDatum, baseTx, tx; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.n) { + case 0: + _context4.n = 1; + return this.resolveBootstrapUtxo(); + case 1: + utxo = _context4.v; + serializedDatum = Data.serialize(_index.V0_1Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings + }); + baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[_sdk.Core.AssetName(""), 1n]]), Data.Void()); + tx = (0, _index2.lockOrPayAssets)(baseTx, receiverAddress, (0, _sdk.makeValue)(1000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return _context4.a(2, { + tx: tx, + policyId: this.oneShotPolicyId + }); + } + }, _callee4, this); + })); + function mintOneShot(_x2, _x3) { + return _mintOneShot.apply(this, arguments); + } + return mintOneShot; + }() + /** + * Update the one-shot datum. + * This spends the one-shot UTXO and sends it back to the receiver with new datum. + */ + }, { + key: "updateOneShotDatum", + value: (function () { + var _updateOneShotDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(receiverAddress, newDatum) { + var oneshotUtxo, serializedDatum, tx; + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + _context5.n = 1; + return this.blaze.provider.getUnspentOutputByNFT(_sdk.Core.AssetId(this.oneShotPolicyId)); + case 1: + oneshotUtxo = _context5.v; + if (oneshotUtxo) { + _context5.n = 2; + break; + } + throw new Error("No UTXO found with the one-shot NFT"); + case 2: + serializedDatum = Data.serialize(_index.V0_1Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings + }); + tx = (0, _index2.lockOrPayAssets)(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, (0, _sdk.makeValue)(1000000n, [this.oneShotPolicyId, 1n]), serializedDatum); + return _context5.a(2, tx); + } + }, _callee5, this); + })); + function updateOneShotDatum(_x4, _x5) { + return _updateOneShotDatum.apply(this, arguments); + } + return updateOneShotDatum; + }() + /** + * Get the proxy datum from the one-shot token UTXO. + * Result is cached after first fetch. + */ + ) + }, { + key: "getParsedProxyDatum", + value: (function () { + var _getParsedProxyDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() { + var _yield$this$getRawPro, proxyUtxo, proxyDatum, parsedProxyDatum, result; + return _regenerator().w(function (_context6) { + while (1) switch (_context6.n) { + case 0: + if (!this.cachedProxyDatumResult) { + _context6.n = 1; + break; + } + return _context6.a(2, this.cachedProxyDatumResult); + case 1: + _context6.n = 2; + return this.getRawProxyDatum(); + case 2: + _yield$this$getRawPro = _context6.v; + proxyUtxo = _yield$this$getRawPro.proxyUtxo; + proxyDatum = _yield$this$getRawPro.proxyDatum; + parsedProxyDatum = (0, _data.parse)(_index.V0_1Types.ProxyDatum, proxyDatum); + result = { + proxyUtxo: proxyUtxo, + proxyDatum: proxyDatum, + parsedProxyDatum: parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return _context6.a(2, result); + } + }, _callee6, this); + })); + function getParsedProxyDatum() { + return _getParsedProxyDatum.apply(this, arguments); + } + return getParsedProxyDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0_1 minting includes treasury update for circulating supply tracking. + */ + ) + }, { + key: "buildMintTx", + value: function () { + var _buildMintTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(assetAmount) { + var isBurn, rewardAccount, _yield$this$getParsed, proxyUtxo, parsedProxyDatum, treasuryScriptHash, refInputs, _yield$getDatumFromNF2, treasuryUtxo, parsedTreasuryDatum, circulatingSupply, newCirculatingSupply, newTreasuryDatum, reserveToken, treasuryAddress, redeemer, assetName, initialTreasuryValue, valueToAdd, updatedTreasuryValue, tx, requiredSigners, _iterator, _step, signer, receiverAddress, _requiredSigners, _iterator2, _step2, _signer; + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + isBurn = assetAmount.amount < 0n; + rewardAccount = this.getProtocolRewardAccount(); + _context7.n = 1; + return this.getParsedProxyDatum(); + case 1: + _yield$this$getParsed = _context7.v; + proxyUtxo = _yield$this$getParsed.proxyUtxo; + parsedProxyDatum = _yield$this$getParsed.parsedProxyDatum; + treasuryScriptHash = (0, _core.Hash28ByteBase16)(parsedProxyDatum.settings.registry.treasury); // Get all reference inputs in one call (cached after first fetch) + _context7.n = 2; + return this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: treasuryScriptHash + }); + case 2: + refInputs = _context7.v; + _context7.n = 3; + return (0, _index2.getDatumFromNFT)(this.blaze, this.treasuryNFTAssetId, _index.V0_1Types.TreasuryDatum); + case 3: + _yield$getDatumFromNF2 = _context7.v; + treasuryUtxo = _yield$getDatumFromNF2.utxo; + parsedTreasuryDatum = _yield$getDatumFromNF2.parsedDatum; + circulatingSupply = parsedTreasuryDatum.circulating_supply; + newCirculatingSupply = circulatingSupply + assetAmount.amount; + newTreasuryDatum = Data.serialize(_index.V0_1Types.TreasuryDatum, { + circulating_supply: newCirculatingSupply + }); + reserveToken = parsedProxyDatum.settings.reserve_token.join(""); + treasuryAddress = (0, _core.addressFromCredential)(this.network, (0, _index2.credentialFromScriptHash)(treasuryScriptHash)); + redeemer = isBurn ? Data.serialize(_index.V0_1Types.ProtocolRedeemer, "Burn") : Data.serialize(_index.V0_1Types.ProtocolRedeemer, "Mint"); + assetName = _sdk.Core.AssetName(this.assetNameHex); + initialTreasuryValue = treasuryUtxo.output().amount(); + valueToAdd = (0, _sdk.makeValue)(0n, [reserveToken, assetAmount.amount]); + updatedTreasuryValue = _sdk.Value.merge(initialTreasuryValue, valueToAdd); + tx = this.blaze.newTransaction().addReferenceInput(proxyUtxo).addWithdrawal(rewardAccount, 0n, redeemer).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, (0, _data.Void)()).addMint(this.stablecoinPolicyId, new Map([[assetName, assetAmount.amount]]), (0, _data.Void)()).lockAssets(treasuryAddress, updatedTreasuryValue, newTreasuryDatum); + if (!isBurn) { + _context7.n = 5; + break; + } + requiredSigners = (0, _index2.getSignatureKeyHashesFromMultisigScript)(parsedProxyDatum.settings.burn_permission).map(function (key) { + return _sdk.Core.Ed25519KeyHashHex(key); + }); + _iterator = _createForOfIteratorHelper(requiredSigners); + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + signer = _step.value; + tx.addRequiredSigner(signer); + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + _context7.n = 4; + return this.blaze.wallet.getChangeAddress(); + case 4: + receiverAddress = _context7.v; + (0, _index2.addDirectOutput)(tx, receiverAddress, (0, _sdk.makeValue)(0n, [reserveToken, -assetAmount.amount])); + _context7.n = 6; + break; + case 5: + _requiredSigners = (0, _index2.getSignatureKeyHashesFromMultisigScript)(parsedProxyDatum.settings.mint_permission).map(function (key) { + return _sdk.Core.Ed25519KeyHashHex(key); + }); + _iterator2 = _createForOfIteratorHelper(_requiredSigners); + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + _signer = _step2.value; + tx.addRequiredSigner(_signer); + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + case 6: + return _context7.a(2, tx); + } + }, _callee7, this); + })); + function buildMintTx(_x6) { + return _buildMintTx.apply(this, arguments); + } + return buildMintTx; + }() + }], [{ + key: "create", + value: function create(blaze, params) { + var _params$enableTrace, _params$referenceInpu, _params$referenceInpu2, _params$referenceInpu3; + var enableTrace = (_params$enableTrace = params.enableTrace) !== null && _params$enableTrace !== void 0 ? _params$enableTrace : false; + + // Instantiate one-shot script + var oneShotScript = new _index.BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + var oneShotPolicyId = oneShotScript.hash(); + + // Instantiate protocol script (V0_1 parameterized by one-shot policy ID) + var protocolScript = new _index.V0_1Types.V0_1ProtocolProtocolWithdraw(oneShotPolicyId, enableTrace).Script; + + // Instantiate mint proxy script (parameterized by one-shot policy ID) + var mintProxyScript = new _index.BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + + // Instantiate treasury script (parameterized by UTXO ref and one-shot policy ID) + var treasuryScript = new _index.V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + + // Derive treasury NFT asset ID from treasury script hash + var treasuryAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("treasury"))); + var treasuryNFTAssetId = _sdk.Core.AssetId(treasuryScript.hash() + treasuryAssetName.toString()); + return new RealfiSDKV0_1(blaze, { + version: "V0_1", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace: enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress + }, { + oneShotScript: oneShotScript, + protocolScript: protocolScript, + mintProxyScript: mintProxyScript, + treasuryScript: treasuryScript + }, treasuryNFTAssetId, { + protocolRefInput: (_params$referenceInpu = params.referenceInputs) === null || _params$referenceInpu === void 0 ? void 0 : _params$referenceInpu.protocolRefInput, + proxyRefInput: (_params$referenceInpu2 = params.referenceInputs) === null || _params$referenceInpu2 === void 0 ? void 0 : _params$referenceInpu2.proxyRefInput, + treasuryRefInput: (_params$referenceInpu3 = params.referenceInputs) === null || _params$referenceInpu3 === void 0 ? void 0 : _params$referenceInpu3.treasuryRefInput + }); + } + }]); +}(_index2.RealfiSDKBase); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v0_1/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_1/index.js.map new file mode 100644 index 0000000000..21324fcb34 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_core","require","_data","_interopRequireWildcard","Data","_sdk","_index","_index2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Symbol","iterator","constructor","prototype","_createForOfIteratorHelper","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","done","value","TypeError","a","u","next","_arrayLikeToArray","toString","slice","name","from","test","_regenerator","toStringTag","c","Generator","create","_regeneratorDefine2","p","y","G","v","d","bind","l","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","_assertThisInitialized","ReferenceError","Boolean","valueOf","_inherits","_setPrototypeOf","_defineProperty","_toPrimitive","toPrimitive","String","Number","RealfiSDKV0_1","exports","_RealfiSDKBase","blaze","params","scripts","treasuryNFTAssetId","cachedReferenceInputs","_this","oneShotScript","protocolScript","mintProxyScript","treasuryScript","oneShotPolicyId","Core","PolicyId","hash","protocolScriptHash","stablecoinPolicyId","treasuryScriptHash","_mintTreasuryNFT","_callee","treasuryBootstrapUtxo","initialDatum","treasuryPolicyId","treasuryAssetName","treasuryAddress","datum","tx","_args","_context","undefined","circulating_supply","AssetName","toHex","Buffer","addressFromValidator","network","serialize","V0_1Types","TreasuryDatum","newTransaction","addInput","addMint","Map","Void","lockAssets","makeValue","provideScript","nftAssetId","mintTreasuryNFT","_x","_deployTreasury","_callee2","_context2","deployScript","scriptDeploymentAddress","deployTreasury","_getTreasuryDatum","_callee3","_yield$getDatumFromNF","treasuryUtxo","treasuryDatum","parsedTreasuryDatum","_context3","getDatumFromNFT","utxo","parsedDatum","Error","getTreasuryDatum","_mintOneShot","_callee4","receiverAddress","serializedDatum","baseTx","_context4","resolveBootstrapUtxo","ProxyDatum","logic","settings","lockOrPayAssets","policyId","mintOneShot","_x2","_x3","_updateOneShotDatum","_callee5","newDatum","oneshotUtxo","_context5","provider","getUnspentOutputByNFT","AssetId","updateOneShotDatum","_x4","_x5","_getParsedProxyDatum","_callee6","_yield$this$getRawPro","proxyUtxo","proxyDatum","parsedProxyDatum","result","_context6","cachedProxyDatumResult","getRawProxyDatum","parse","getParsedProxyDatum","_buildMintTx","_callee7","assetAmount","isBurn","rewardAccount","_yield$this$getParsed","refInputs","_yield$getDatumFromNF2","circulatingSupply","newCirculatingSupply","newTreasuryDatum","reserveToken","redeemer","assetName","initialTreasuryValue","valueToAdd","updatedTreasuryValue","requiredSigners","_iterator","_step","signer","_requiredSigners","_iterator2","_step2","_signer","_context7","amount","getProtocolRewardAccount","Hash28ByteBase16","registry","treasury","getScriptReferenceInputs","protocol","proxy","reserve_token","join","addressFromCredential","credentialFromScriptHash","ProtocolRedeemer","assetNameHex","output","Value","merge","addReferenceInput","addWithdrawal","getSignatureKeyHashesFromMultisigScript","burn_permission","map","Ed25519KeyHashHex","addRequiredSigner","err","wallet","getChangeAddress","addDirectOutput","mint_permission","buildMintTx","_x6","_params$enableTrace","_params$referenceInpu","_params$referenceInpu2","_params$referenceInpu3","enableTrace","BaseTypes","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","V0_1ProtocolProtocolWithdraw","BaseMintProxyMintProxyMint","V0_1TreasuryTreasurySpend","treasuryBootstrap","version","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","RealfiSDKBase"],"sources":["../../../../src/sdk/v0_1/index.ts"],"sourcesContent":["import {\n addressFromCredential,\n addressFromValidator,\n Hash28ByteBase16,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse, Void } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport { AssetAmount } from \"@sundaeswap/asset\";\nimport { BaseTypes, V0_1Types } from \"../../generated-types/index.js\";\nimport type { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport {\n addDirectOutput,\n credentialFromScriptHash,\n deployScript,\n getDatumFromNFT,\n getSignatureKeyHashesFromMultisigScript,\n type IBaseSDKParams,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n type IRealfiSDKWithTreasury,\n type ITreasuryDatumResult,\n lockOrPayAssets,\n RealfiSDKBase,\n} from \"../shared/index.js\";\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV0_1 {\n version: \"V0_1\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n assetNameHex: string;\n /**\n * The bootstrap UTXO reference for treasury script parameterization.\n * Treasury script and NFT are derived from this.\n */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n };\n}\n\n/**\n * V0_1 SDK implementation.\n *\n * Includes treasury management, reserve backing, and circulating supply tracking.\n * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here.\n */\nexport class RealfiSDKV0_1

\n extends RealfiSDKBase\n implements IRealfiSDKWithTreasury\n{\n readonly version = \"V0_1\" as const;\n\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n readonly treasuryNFTAssetId: Core.AssetId;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n protected readonly treasuryScript: Core.Script;\n\n private constructor(\n blaze: Blaze,\n params: IBaseSDKParams,\n scripts: {\n oneShotScript: Core.Script;\n protocolScript: Core.Script;\n mintProxyScript: Core.Script;\n treasuryScript: Core.Script;\n },\n treasuryNFTAssetId: Core.AssetId,\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n super(blaze, params, cachedReferenceInputs);\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolScript = scripts.protocolScript;\n this.mintProxyScript = scripts.mintProxyScript;\n this.treasuryScript = scripts.treasuryScript;\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n this.treasuryScriptHash = this.treasuryScript.hash();\n this.treasuryNFTAssetId = treasuryNFTAssetId;\n }\n\n /**\n * Create a V0_1 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_1,\n ): RealfiSDKV0_1 {\n const enableTrace = params.enableTrace ?? false;\n\n // Instantiate one-shot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n\n // Instantiate protocol script (V0_1 parameterized by one-shot policy ID)\n const protocolScript = new V0_1Types.V0_1ProtocolProtocolWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Instantiate mint proxy script (parameterized by one-shot policy ID)\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Instantiate treasury script (parameterized by UTXO ref and one-shot policy ID)\n const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Derive treasury NFT asset ID from treasury script hash\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n const treasuryNFTAssetId = Core.AssetId(\n treasuryScript.hash() + treasuryAssetName.toString(),\n );\n\n return new RealfiSDKV0_1(\n blaze,\n {\n version: \"V0_1\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n },\n {\n oneShotScript,\n protocolScript,\n mintProxyScript,\n treasuryScript,\n },\n treasuryNFTAssetId,\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the treasury NFT.\n * This creates a new treasury with an initial datum.\n * Uses the treasury bootstrap UTXO that was provided when creating the SDK.\n */\n async mintTreasuryNFT(\n treasuryBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const treasuryPolicyId = Core.PolicyId(this.treasuryScript.hash());\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n const treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n\n const datum = Data.serialize(V0_1Types.TreasuryDatum, initialDatum);\n const tx = this.blaze\n .newTransaction()\n .addInput(treasuryBootstrapUtxo)\n .addMint(\n treasuryPolicyId,\n new Map([[treasuryAssetName, 1n]]),\n Data.Void(),\n )\n .lockAssets(\n treasuryAddress,\n makeValue(1000000n, [this.treasuryNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.treasuryScript);\n\n return { tx, nftAssetId: this.treasuryNFTAssetId };\n }\n\n /**\n * Deploy the treasury script as a reference script.\n */\n async deployTreasury(): Promise {\n return deployScript(\n this.blaze,\n this.treasuryScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Get the treasury datum.\n */\n async getTreasuryDatum(): Promise> {\n const {\n utxo: treasuryUtxo,\n datum: treasuryDatum,\n parsedDatum: parsedTreasuryDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1Types.TreasuryDatum,\n );\n\n if (!treasuryUtxo) {\n throw new Error(\"No UTXO found with the treasury NFT\");\n }\n if (!treasuryDatum) {\n throw new Error(\"No treasury datum found\");\n }\n\n return {\n treasuryUtxo,\n treasuryDatum,\n parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the one-shot NFT with the initial datum.\n * This consumes the bootstrap UTXO and can only be done once.\n */\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: V0_1Types.ProxyDatum,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(V0_1Types.ProxyDatum, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(1000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n /**\n * Update the one-shot datum.\n * This spends the one-shot UTXO and sends it back to the receiver with new datum.\n */\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: V0_1Types.ProxyDatum,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(V0_1Types.ProxyDatum, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n const tx = lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(1000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n\n return tx;\n }\n\n /**\n * Get the proxy datum from the one-shot token UTXO.\n * Result is cached after first fetch.\n */\n async getParsedProxyDatum(): Promise<\n IProxyDatumResult\n > {\n if (this.cachedProxyDatumResult) {\n return this\n .cachedProxyDatumResult as IProxyDatumResult;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(V0_1Types.ProxyDatum, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Minting Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a mint (positive amount) or burn (negative amount) transaction.\n * V0_1 minting includes treasury update for circulating supply tracking.\n */\n async buildMintTx(assetAmount: AssetAmount): Promise {\n const isBurn = assetAmount.amount < 0n;\n const rewardAccount = this.getProtocolRewardAccount();\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n\n const treasuryScriptHash = Hash28ByteBase16(\n parsedProxyDatum.settings.registry.treasury,\n );\n\n // Get all reference inputs in one call (cached after first fetch)\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: treasuryScriptHash,\n });\n\n const { utxo: treasuryUtxo, parsedDatum: parsedTreasuryDatum } =\n await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1Types.TreasuryDatum,\n );\n\n const circulatingSupply = (parsedTreasuryDatum as V0_1TreasuryDatum)\n .circulating_supply;\n const newCirculatingSupply = circulatingSupply + assetAmount.amount;\n\n const newTreasuryDatum = Data.serialize(V0_1Types.TreasuryDatum, {\n circulating_supply: newCirculatingSupply,\n });\n\n const reserveToken = parsedProxyDatum.settings.reserve_token.join(\"\");\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(treasuryScriptHash),\n );\n\n const redeemer = isBurn\n ? Data.serialize(V0_1Types.ProtocolRedeemer, \"Burn\")\n : Data.serialize(V0_1Types.ProtocolRedeemer, \"Mint\");\n\n const assetName = Core.AssetName(this.assetNameHex);\n\n const initialTreasuryValue = treasuryUtxo!.output().amount();\n const valueToAdd = makeValue(0n, [reserveToken, assetAmount.amount]);\n const updatedTreasuryValue = Value.merge(initialTreasuryValue, valueToAdd);\n\n const tx = this.blaze\n .newTransaction()\n .addReferenceInput(proxyUtxo!)\n .addWithdrawal(rewardAccount, 0n, redeemer)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Void())\n .addMint(\n this.stablecoinPolicyId,\n new Map([[assetName, assetAmount.amount]]),\n Void(),\n )\n .lockAssets(treasuryAddress, updatedTreasuryValue, newTreasuryDatum);\n\n if (isBurn) {\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.burn_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n const receiverAddress = await this.blaze.wallet.getChangeAddress();\n addDirectOutput(\n tx,\n receiverAddress,\n makeValue(0n, [reserveToken, -assetAmount.amount]),\n );\n } else {\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.mint_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n }\n\n return tx;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v0_2/index.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_2/index.js new file mode 100644 index 0000000000..1155c158e3 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_2/index.js @@ -0,0 +1,600 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.RealfiSDKV0_2 = void 0; +var _core = require("@blaze-cardano/core"); +var _data = _interopRequireWildcard(require("@blaze-cardano/data")); +var Data = _data; +var _sdk = require("@blaze-cardano/sdk"); +var _index = require("../../generated-types/index.js"); +var _index2 = require("../../generated-types/v0_1/index.js"); +var _index3 = require("../shared/index.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +// eslint-disable-next-line @typescript-eslint/naming-convention +/** + * V0_2 SDK implementation. + * + * Extends V0_1 with deposit and withdraw operations for treasury management. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +var RealfiSDKV0_2 = exports.RealfiSDKV0_2 = /*#__PURE__*/function (_RealfiSDKBase) { + function RealfiSDKV0_2(blaze, params, scripts, cachedReferenceInputs) { + var _this; + _classCallCheck(this, RealfiSDKV0_2); + _this = _callSuper(this, RealfiSDKV0_2, [blaze, params, cachedReferenceInputs]); + _defineProperty(_this, "version", "V0_2"); + // Script hashes and policy IDs + _defineProperty(_this, "stablecoinPolicyId", void 0); + _defineProperty(_this, "oneShotPolicyId", void 0); + _defineProperty(_this, "protocolScriptHash", void 0); + _defineProperty(_this, "treasuryScriptHash", void 0); + _defineProperty(_this, "treasuryNFTAssetId", void 0); + _defineProperty(_this, "treasuryAddress", void 0); + // Scripts + _defineProperty(_this, "oneShotScript", void 0); + _defineProperty(_this, "protocolScript", void 0); + _defineProperty(_this, "mintProxyScript", void 0); + _defineProperty(_this, "treasuryScript", void 0); + _this.oneShotScript = scripts.oneShotScript; + _this.protocolScript = scripts.protocolScript; + _this.mintProxyScript = scripts.mintProxyScript; + _this.treasuryScript = scripts.treasuryScript; + _this.oneShotPolicyId = _sdk.Core.PolicyId(_this.oneShotScript.hash()); + _this.protocolScriptHash = _this.protocolScript.hash(); + _this.stablecoinPolicyId = _sdk.Core.PolicyId(_this.mintProxyScript.hash()); + _this.treasuryScriptHash = _this.treasuryScript.hash(); + + // Derive treasury NFT asset ID from treasury script hash + var treasuryAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("treasury"))); + _this.treasuryNFTAssetId = _sdk.Core.AssetId(_this.treasuryScriptHash + treasuryAssetName.toString()); + _this.treasuryAddress = (0, _core.addressFromValidator)(_this.network, _this.treasuryScript); + return _this; + } + + /** + * Create a V0_2 SDK instance. + */ + _inherits(RealfiSDKV0_2, _RealfiSDKBase); + return _createClass(RealfiSDKV0_2, [{ + key: "mintTreasuryNFT", + value: // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * The treasury bootstrap UTxO must be provided to consume it. + */ + function () { + var _mintTreasuryNFT = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(treasuryBootstrapUtxo) { + var initialDatum, + treasuryPolicyId, + treasuryAssetName, + treasuryAddress, + datum, + tx, + _args = arguments; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + initialDatum = _args.length > 1 && _args[1] !== undefined ? _args[1] : { + circulating_supply: 0n + }; + treasuryPolicyId = _sdk.Core.PolicyId(this.treasuryScriptHash); + treasuryAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("treasury"))); + treasuryAddress = (0, _core.addressFromValidator)(this.network, this.treasuryScript); + datum = Data.serialize(_index2.TreasuryDatum, initialDatum); + _context.n = 1; + return this.blaze.newTransaction().addInput(treasuryBootstrapUtxo).addMint(treasuryPolicyId, new Map([[treasuryAssetName, 1n]]), Data.Void()).lockAssets(treasuryAddress, (0, _sdk.makeValue)(10000000n, [this.treasuryNFTAssetId, 1n]), datum).provideScript(this.treasuryScript); + case 1: + tx = _context.v; + return _context.a(2, { + tx: tx, + nftAssetId: this.treasuryNFTAssetId + }); + } + }, _callee, this); + })); + function mintTreasuryNFT(_x) { + return _mintTreasuryNFT.apply(this, arguments); + } + return mintTreasuryNFT; + }() + /** + * Deploy the treasury script as a reference script. + */ + }, { + key: "deployTreasury", + value: (function () { + var _deployTreasury = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() { + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + return _context2.a(2, (0, _index3.deployScript)(this.blaze, this.treasuryScript, this.scriptDeploymentAddress)); + } + }, _callee2, this); + })); + function deployTreasury() { + return _deployTreasury.apply(this, arguments); + } + return deployTreasury; + }() + /** + * Get the treasury datum. + */ + ) + }, { + key: "getTreasuryDatum", + value: (function () { + var _getTreasuryDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() { + var _yield$getDatumFromNF, treasuryUtxo, treasuryDatum, parsedTreasuryDatum; + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + _context3.n = 1; + return (0, _index3.getDatumFromNFT)(this.blaze, this.treasuryNFTAssetId, _index2.TreasuryDatum); + case 1: + _yield$getDatumFromNF = _context3.v; + treasuryUtxo = _yield$getDatumFromNF.utxo; + treasuryDatum = _yield$getDatumFromNF.datum; + parsedTreasuryDatum = _yield$getDatumFromNF.parsedDatum; + if (treasuryUtxo) { + _context3.n = 2; + break; + } + throw new Error("No UTXO found with the treasury NFT"); + case 2: + if (treasuryDatum) { + _context3.n = 3; + break; + } + throw new Error("No treasury datum found"); + case 3: + return _context3.a(2, { + treasuryUtxo: treasuryUtxo, + treasuryDatum: treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum + }); + } + }, _callee3, this); + })); + function getTreasuryDatum() { + return _getTreasuryDatum.apply(this, arguments); + } + return getTreasuryDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint the one-shot NFT with the initial datum. + * V0_2 uses V0_2Types.ProxyDatum which includes withdraw/deposit permissions. + */ + ) + }, { + key: "mintOneShot", + value: function () { + var _mintOneShot = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(receiverAddress, datum) { + var utxo, serializedDatum, baseTx, tx; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.n) { + case 0: + _context4.n = 1; + return this.resolveBootstrapUtxo(); + case 1: + utxo = _context4.v; + serializedDatum = Data.serialize(_index.V0_2Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings + }); + baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[_sdk.Core.AssetName(""), 1n]]), Data.Void()); + tx = (0, _index3.lockOrPayAssets)(baseTx, receiverAddress, (0, _sdk.makeValue)(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return _context4.a(2, { + tx: tx, + policyId: this.oneShotPolicyId + }); + } + }, _callee4, this); + })); + function mintOneShot(_x2, _x3) { + return _mintOneShot.apply(this, arguments); + } + return mintOneShot; + }() + /** + * Update the one-shot datum. + */ + }, { + key: "updateOneShotDatum", + value: (function () { + var _updateOneShotDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(receiverAddress, newDatum) { + var oneshotUtxo, serializedDatum; + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + _context5.n = 1; + return this.blaze.provider.getUnspentOutputByNFT(_sdk.Core.AssetId(this.oneShotPolicyId)); + case 1: + oneshotUtxo = _context5.v; + if (oneshotUtxo) { + _context5.n = 2; + break; + } + throw new Error("No UTXO found with the one-shot NFT"); + case 2: + serializedDatum = Data.serialize(_index.V0_2Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings + }); + return _context5.a(2, (0, _index3.lockOrPayAssets)(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, (0, _sdk.makeValue)(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum)); + } + }, _callee5, this); + })); + function updateOneShotDatum(_x4, _x5) { + return _updateOneShotDatum.apply(this, arguments); + } + return updateOneShotDatum; + }() + /** + * Get the proxy datum from the one-shot token UTXO. + * V0_2 returns V0_2Types.ProxyDatum which includes withdraw/deposit permissions. + * Result is cached after first fetch. + */ + ) + }, { + key: "getParsedProxyDatum", + value: (function () { + var _getParsedProxyDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() { + var _yield$this$getRawPro, proxyUtxo, proxyDatum, parsedProxyDatum, result; + return _regenerator().w(function (_context6) { + while (1) switch (_context6.n) { + case 0: + if (!this.cachedProxyDatumResult) { + _context6.n = 1; + break; + } + return _context6.a(2, this.cachedProxyDatumResult); + case 1: + _context6.n = 2; + return this.getRawProxyDatum(); + case 2: + _yield$this$getRawPro = _context6.v; + proxyUtxo = _yield$this$getRawPro.proxyUtxo; + proxyDatum = _yield$this$getRawPro.proxyDatum; + parsedProxyDatum = (0, _data.parse)(_index.V0_2Types.ProxyDatum, proxyDatum); + result = { + proxyUtxo: proxyUtxo, + proxyDatum: proxyDatum, + parsedProxyDatum: parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return _context6.a(2, result); + } + }, _callee6, this); + })); + function getParsedProxyDatum() { + return _getParsedProxyDatum.apply(this, arguments); + } + return getParsedProxyDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0_2 minting uses V0_2Types.ProtocolRedeemer. + */ + ) + }, { + key: "buildMintTx", + value: function () { + var _buildMintTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(assetAmount) { + var isBurn, rewardAccount, conversionRatio, _yield$this$getParsed, proxyUtxo, parsedProxyDatum, treasuryScriptHash, refInputs, _yield$getDatumFromNF2, treasuryUtxo, parsedTreasuryDatum, circulatingSupply, newCirculatingSupply, newTreasuryDatum, reserveToken, reserveTokenAmount, treasuryAddress, redeemer, assetName, initialTreasuryValue, valueToAdd, updatedTreasuryValue, tx, requiredSigners, _iterator, _step, signer, receiverAddress, _requiredSigners, _iterator2, _step2, _signer; + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + isBurn = assetAmount.amount < 0n; + rewardAccount = this.getProtocolRewardAccount(); + conversionRatio = 1; // V0_2 uses 1:1 conversion ratio (no decimals taken into account, etc.) + _context7.n = 1; + return this.getParsedProxyDatum(); + case 1: + _yield$this$getParsed = _context7.v; + proxyUtxo = _yield$this$getParsed.proxyUtxo; + parsedProxyDatum = _yield$this$getParsed.parsedProxyDatum; + treasuryScriptHash = (0, _core.Hash28ByteBase16)(parsedProxyDatum.settings.registry.treasury); // Get all reference inputs in one call (cached after first fetch) + _context7.n = 2; + return this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: treasuryScriptHash + }); + case 2: + refInputs = _context7.v; + _context7.n = 3; + return (0, _index3.getDatumFromNFT)(this.blaze, this.treasuryNFTAssetId, _index.V0_1Types.TreasuryDatum); + case 3: + _yield$getDatumFromNF2 = _context7.v; + treasuryUtxo = _yield$getDatumFromNF2.utxo; + parsedTreasuryDatum = _yield$getDatumFromNF2.parsedDatum; + circulatingSupply = parsedTreasuryDatum.circulating_supply; + newCirculatingSupply = circulatingSupply + assetAmount.amount; + newTreasuryDatum = Data.serialize(_index.V0_1Types.TreasuryDatum, { + circulating_supply: newCirculatingSupply + }); + reserveToken = parsedProxyDatum.settings.reserve_token.join(""); + reserveTokenAmount = BigInt(conversionRatio) * assetAmount.amount; + treasuryAddress = (0, _core.addressFromCredential)(this.network, (0, _index3.credentialFromScriptHash)(treasuryScriptHash)); + redeemer = isBurn ? Data.serialize(_index.V0_2Types.ProtocolRedeemer, "Burn") : Data.serialize(_index.V0_2Types.ProtocolRedeemer, "Mint"); + assetName = _sdk.Core.AssetName(this.assetNameHex); + initialTreasuryValue = treasuryUtxo.output().amount(); + valueToAdd = (0, _sdk.makeValue)(0n, [reserveToken, reserveTokenAmount]); + updatedTreasuryValue = _sdk.Value.merge(initialTreasuryValue, valueToAdd); + tx = this.blaze.newTransaction().addReferenceInput(proxyUtxo).addWithdrawal(rewardAccount, 0n, redeemer).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, (0, _data.Void)()).addMint(this.stablecoinPolicyId, new Map([[assetName, assetAmount.amount]]), (0, _data.Void)()).lockAssets(treasuryAddress, updatedTreasuryValue, newTreasuryDatum); + if (!isBurn) { + _context7.n = 5; + break; + } + requiredSigners = (0, _index3.getSignatureKeyHashesFromMultisigScript)(parsedProxyDatum.settings.burn_permission).map(function (key) { + return _sdk.Core.Ed25519KeyHashHex(key); + }); + _iterator = _createForOfIteratorHelper(requiredSigners); + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + signer = _step.value; + tx.addRequiredSigner(signer); + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + _context7.n = 4; + return this.blaze.wallet.getChangeAddress(); + case 4: + receiverAddress = _context7.v; + (0, _index3.addDirectOutput)(tx, receiverAddress, (0, _sdk.makeValue)(0n, [reserveToken, -assetAmount.amount])); + _context7.n = 6; + break; + case 5: + _requiredSigners = (0, _index3.getSignatureKeyHashesFromMultisigScript)(parsedProxyDatum.settings.mint_permission).map(function (key) { + return _sdk.Core.Ed25519KeyHashHex(key); + }); + _iterator2 = _createForOfIteratorHelper(_requiredSigners); + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + _signer = _step2.value; + tx.addRequiredSigner(_signer); + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + case 6: + return _context7.a(2, tx); + } + }, _callee7, this); + })); + function buildMintTx(_x6) { + return _buildMintTx.apply(this, arguments); + } + return buildMintTx; + }() // ───────────────────────────────────────────────────────────────────────────── + // V0_2-specific Operations: Deposit and Withdraw + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build a deposit transaction to add reserve to the treasury. + */ + }, { + key: "buildDepositTx", + value: function () { + var _buildDepositTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(assetAmount) { + var _assetAmount$id; + var refInputs, _yield$this$getParsed2, proxyUtxo, parsedProxyDatum, _yield$this$getTreasu, treasuryUtxo, treasuryDatum, redeemer, rewardAccount, requiredSigners, reserveToken, treasuryAddress, inititalTreasuryValue, depositValue, newTreasuryValue, tx, _iterator3, _step3, signer; + return _regenerator().w(function (_context8) { + while (1) switch (_context8.n) { + case 0: + _context8.n = 1; + return this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash + }); + case 1: + refInputs = _context8.v; + _context8.n = 2; + return this.getParsedProxyDatum(); + case 2: + _yield$this$getParsed2 = _context8.v; + proxyUtxo = _yield$this$getParsed2.proxyUtxo; + parsedProxyDatum = _yield$this$getParsed2.parsedProxyDatum; + _context8.n = 3; + return this.getTreasuryDatum(); + case 3: + _yield$this$getTreasu = _context8.v; + treasuryUtxo = _yield$this$getTreasu.treasuryUtxo; + treasuryDatum = _yield$this$getTreasu.treasuryDatum; + redeemer = Data.serialize(_index.V0_2Types.ProtocolRedeemer, { + Deposit: { + deposit_amount: assetAmount.amount + } + }); + rewardAccount = this.getProtocolRewardAccount(); + requiredSigners = (0, _index3.getSignatureKeyHashesFromMultisigScript)(parsedProxyDatum.settings.deposit_permission).map(function (key) { + return _sdk.Core.Ed25519KeyHashHex(key); + }); + reserveToken = (0, _core.AssetId)((_assetAmount$id = assetAmount.id) !== null && _assetAmount$id !== void 0 ? _assetAmount$id : parsedProxyDatum.settings.reserve_token.join("")); + treasuryAddress = (0, _core.addressFromCredential)(this.network, (0, _index3.credentialFromScriptHash)((0, _core.Hash28ByteBase16)(parsedProxyDatum.settings.registry.treasury))); + inititalTreasuryValue = treasuryUtxo.output().amount(); + depositValue = (0, _sdk.makeValue)(0n, [reserveToken, assetAmount.amount]); + newTreasuryValue = _sdk.Value.merge(inititalTreasuryValue, depositValue); + tx = this.blaze.newTransaction().addWithdrawal(rewardAccount, 0n, redeemer).addReferenceInput(proxyUtxo).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, Data.Void()).lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + _iterator3 = _createForOfIteratorHelper(requiredSigners); + try { + for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) { + signer = _step3.value; + tx.addRequiredSigner(signer); + } + } catch (err) { + _iterator3.e(err); + } finally { + _iterator3.f(); + } + return _context8.a(2, tx); + } + }, _callee8, this); + })); + function buildDepositTx(_x7) { + return _buildDepositTx.apply(this, arguments); + } + return buildDepositTx; + }() + /** + * Build a withdraw transaction to remove reserve from the treasury. + * @param amount Amount to withdraw from treasury + * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address + */ + }, { + key: "buildWithdrawTx", + value: (function () { + var _buildWithdrawTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(assetAmount, receiverAddress) { + var _assetAmount$id2; + var refInputs, receiver, _yield$this$getParsed3, proxyUtxo, parsedProxyDatum, _yield$this$getTreasu2, treasuryUtxo, treasuryDatum, redeemer, rewardAccount, requiredSigners, reserveToken, treasuryAddress, inititalTreasuryValue, withdrawValue, newTreasuryValue, tx, _iterator4, _step4, signer, _t; + return _regenerator().w(function (_context9) { + while (1) switch (_context9.n) { + case 0: + _context9.n = 1; + return this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash + }); + case 1: + refInputs = _context9.v; + if (!receiverAddress) { + _context9.n = 2; + break; + } + _t = _sdk.Core.Address.fromBech32(receiverAddress); + _context9.n = 4; + break; + case 2: + _context9.n = 3; + return this.blaze.wallet.getChangeAddress(); + case 3: + _t = _context9.v; + case 4: + receiver = _t; + _context9.n = 5; + return this.getParsedProxyDatum(); + case 5: + _yield$this$getParsed3 = _context9.v; + proxyUtxo = _yield$this$getParsed3.proxyUtxo; + parsedProxyDatum = _yield$this$getParsed3.parsedProxyDatum; + _context9.n = 6; + return this.getTreasuryDatum(); + case 6: + _yield$this$getTreasu2 = _context9.v; + treasuryUtxo = _yield$this$getTreasu2.treasuryUtxo; + treasuryDatum = _yield$this$getTreasu2.treasuryDatum; + redeemer = Data.serialize(_index.V0_2Types.ProtocolRedeemer, { + Withdraw: { + withdraw_amount: assetAmount.amount + } + }); + rewardAccount = this.getProtocolRewardAccount(); + requiredSigners = (0, _index3.getSignatureKeyHashesFromMultisigScript)(parsedProxyDatum.settings.withdraw_permission).map(function (key) { + return _sdk.Core.Ed25519KeyHashHex(key); + }); + reserveToken = (0, _core.AssetId)((_assetAmount$id2 = assetAmount.id) !== null && _assetAmount$id2 !== void 0 ? _assetAmount$id2 : parsedProxyDatum.settings.reserve_token.join("")); + treasuryAddress = (0, _core.addressFromCredential)(this.network, (0, _index3.credentialFromScriptHash)((0, _core.Hash28ByteBase16)(parsedProxyDatum.settings.registry.treasury))); + inititalTreasuryValue = treasuryUtxo.output().amount(); + withdrawValue = (0, _sdk.makeValue)(0n, [reserveToken, -assetAmount.amount]); + newTreasuryValue = _sdk.Value.merge(inititalTreasuryValue, withdrawValue); + tx = this.blaze.newTransaction().addWithdrawal(rewardAccount, 0n, redeemer).addReferenceInput(proxyUtxo).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, Data.Void()); + (0, _index3.addDirectOutput)(tx, receiver, (0, _sdk.makeValue)(0n, [reserveToken, assetAmount.amount])); + tx.lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + _iterator4 = _createForOfIteratorHelper(requiredSigners); + try { + for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) { + signer = _step4.value; + tx.addRequiredSigner(signer); + } + } catch (err) { + _iterator4.e(err); + } finally { + _iterator4.f(); + } + return _context9.a(2, tx); + } + }, _callee9, this); + })); + function buildWithdrawTx(_x8, _x9) { + return _buildWithdrawTx.apply(this, arguments); + } + return buildWithdrawTx; + }()) + }], [{ + key: "create", + value: function create(blaze, params) { + var _params$enableTrace, _params$referenceInpu, _params$referenceInpu2, _params$referenceInpu3; + var enableTrace = (_params$enableTrace = params.enableTrace) !== null && _params$enableTrace !== void 0 ? _params$enableTrace : false; + + // Instantiate one-shot script + var oneShotScript = new _index.BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + var oneShotPolicyId = oneShotScript.hash(); + // Instantiate protocol script (V0_2 uses V0_2ProtocolProtocolWithdraw) + var protocolScript = new _index.V0_2Types.V0_2ProtocolProtocolWithdraw(oneShotPolicyId, enableTrace).Script; + + // Instantiate mint proxy script (parameterized by one-shot policy ID) + var mintProxyScript = new _index.BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + // Instantiate treasury script from treasury bootstrap + var treasuryScript = new _index.V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV0_2(blaze, { + version: "V0_2", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace: enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress + }, { + oneShotScript: oneShotScript, + protocolScript: protocolScript, + mintProxyScript: mintProxyScript, + treasuryScript: treasuryScript + }, { + protocolRefInput: (_params$referenceInpu = params.referenceInputs) === null || _params$referenceInpu === void 0 ? void 0 : _params$referenceInpu.protocolRefInput, + proxyRefInput: (_params$referenceInpu2 = params.referenceInputs) === null || _params$referenceInpu2 === void 0 ? void 0 : _params$referenceInpu2.proxyRefInput, + treasuryRefInput: (_params$referenceInpu3 = params.referenceInputs) === null || _params$referenceInpu3 === void 0 ? void 0 : _params$referenceInpu3.treasuryRefInput + }); + } + }]); +}(_index3.RealfiSDKBase); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v0_2/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_2/index.js.map new file mode 100644 index 0000000000..2aea3fea73 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_2/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_core","require","_data","_interopRequireWildcard","Data","_sdk","_index","_index2","_index3","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t2","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Symbol","iterator","constructor","prototype","_createForOfIteratorHelper","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","done","value","TypeError","a","u","next","_arrayLikeToArray","toString","slice","name","from","test","_regenerator","toStringTag","c","Generator","create","_regeneratorDefine2","p","y","G","v","d","bind","l","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","_assertThisInitialized","ReferenceError","Boolean","valueOf","_inherits","_setPrototypeOf","_defineProperty","_toPrimitive","toPrimitive","String","Number","RealfiSDKV0_2","exports","_RealfiSDKBase","blaze","params","scripts","cachedReferenceInputs","_this","oneShotScript","protocolScript","mintProxyScript","treasuryScript","oneShotPolicyId","Core","PolicyId","hash","protocolScriptHash","stablecoinPolicyId","treasuryScriptHash","treasuryAssetName","AssetName","toHex","Buffer","treasuryNFTAssetId","AssetId","treasuryAddress","addressFromValidator","network","_mintTreasuryNFT","_callee","treasuryBootstrapUtxo","initialDatum","treasuryPolicyId","datum","tx","_args","_context","undefined","circulating_supply","serialize","V0_1TreasuryDatum","newTransaction","addInput","addMint","Map","Void","lockAssets","makeValue","provideScript","nftAssetId","mintTreasuryNFT","_x","_deployTreasury","_callee2","_context2","deployScript","scriptDeploymentAddress","deployTreasury","_getTreasuryDatum","_callee3","_yield$getDatumFromNF","treasuryUtxo","treasuryDatum","parsedTreasuryDatum","_context3","getDatumFromNFT","utxo","parsedDatum","Error","getTreasuryDatum","_mintOneShot","_callee4","receiverAddress","serializedDatum","baseTx","_context4","resolveBootstrapUtxo","V0_2Types","ProxyDatum","logic","settings","lockOrPayAssets","policyId","mintOneShot","_x2","_x3","_updateOneShotDatum","_callee5","newDatum","oneshotUtxo","_context5","provider","getUnspentOutputByNFT","updateOneShotDatum","_x4","_x5","_getParsedProxyDatum","_callee6","_yield$this$getRawPro","proxyUtxo","proxyDatum","parsedProxyDatum","result","_context6","cachedProxyDatumResult","getRawProxyDatum","parse","getParsedProxyDatum","_buildMintTx","_callee7","assetAmount","isBurn","rewardAccount","conversionRatio","_yield$this$getParsed","refInputs","_yield$getDatumFromNF2","circulatingSupply","newCirculatingSupply","newTreasuryDatum","reserveToken","reserveTokenAmount","redeemer","assetName","initialTreasuryValue","valueToAdd","updatedTreasuryValue","requiredSigners","_iterator","_step","signer","_requiredSigners","_iterator2","_step2","_signer","_context7","amount","getProtocolRewardAccount","Hash28ByteBase16","registry","treasury","getScriptReferenceInputs","protocol","proxy","V0_1Types","TreasuryDatum","reserve_token","join","BigInt","addressFromCredential","credentialFromScriptHash","ProtocolRedeemer","assetNameHex","output","Value","merge","addReferenceInput","addWithdrawal","getSignatureKeyHashesFromMultisigScript","burn_permission","map","Ed25519KeyHashHex","addRequiredSigner","err","wallet","getChangeAddress","addDirectOutput","mint_permission","buildMintTx","_x6","_buildDepositTx","_callee8","_assetAmount$id","_yield$this$getParsed2","_yield$this$getTreasu","inititalTreasuryValue","depositValue","newTreasuryValue","_iterator3","_step3","_context8","Deposit","deposit_amount","deposit_permission","id","buildDepositTx","_x7","_buildWithdrawTx","_callee9","_assetAmount$id2","receiver","_yield$this$getParsed3","_yield$this$getTreasu2","withdrawValue","_iterator4","_step4","_t","_context9","Address","fromBech32","Withdraw","withdraw_amount","withdraw_permission","buildWithdrawTx","_x8","_x9","_params$enableTrace","_params$referenceInpu","_params$referenceInpu2","_params$referenceInpu3","enableTrace","BaseTypes","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","V0_2ProtocolProtocolWithdraw","BaseMintProxyMintProxyMint","V0_1TreasuryTreasurySpend","treasuryBootstrap","version","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","RealfiSDKBase"],"sources":["../../../../src/sdk/v0_2/index.ts"],"sourcesContent":["import {\n addressFromCredential,\n addressFromValidator,\n AssetId,\n Hash28ByteBase16,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse, Void } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport { AssetAmount } from \"@sundaeswap/asset\";\nimport {\n BaseTypes,\n V0_1Types,\n V0_2Types,\n} from \"../../generated-types/index.js\";\nimport { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport {\n addDirectOutput,\n credentialFromScriptHash,\n deployScript,\n getDatumFromNFT,\n getSignatureKeyHashesFromMultisigScript,\n type IBaseSDKParams,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n type IRealfiSDKWithTreasury,\n type ITreasuryDatumResult,\n lockOrPayAssets,\n RealfiSDKBase,\n} from \"../shared/index.js\";\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV0_2 {\n version: \"V0_2\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n assetNameHex: string;\n /**\n * The treasury bootstrap UTxO reference. The treasury script and NFT asset ID\n * are derived from this reference and the stablecoin policy ID.\n */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n };\n}\n\n/**\n * V0_2 SDK implementation.\n *\n * Extends V0_1 with deposit and withdraw operations for treasury management.\n * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here.\n */\nexport class RealfiSDKV0_2

\n extends RealfiSDKBase\n implements IRealfiSDKWithTreasury\n{\n readonly version = \"V0_2\" as const;\n\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n readonly treasuryNFTAssetId: Core.AssetId;\n readonly treasuryAddress: Core.Address;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n protected readonly treasuryScript: Core.Script;\n\n private constructor(\n blaze: Blaze,\n params: IBaseSDKParams,\n scripts: {\n oneShotScript: Core.Script;\n protocolScript: Core.Script;\n mintProxyScript: Core.Script;\n treasuryScript: Core.Script;\n },\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n super(blaze, params, cachedReferenceInputs);\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolScript = scripts.protocolScript;\n this.mintProxyScript = scripts.mintProxyScript;\n this.treasuryScript = scripts.treasuryScript;\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n this.treasuryScriptHash = this.treasuryScript.hash();\n\n // Derive treasury NFT asset ID from treasury script hash\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n this.treasuryNFTAssetId = Core.AssetId(\n this.treasuryScriptHash + treasuryAssetName.toString(),\n );\n this.treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n }\n\n /**\n * Create a V0_2 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_2,\n ): RealfiSDKV0_2 {\n const enableTrace = params.enableTrace ?? false;\n\n // Instantiate one-shot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n // Instantiate protocol script (V0_2 uses V0_2ProtocolProtocolWithdraw)\n const protocolScript = new V0_2Types.V0_2ProtocolProtocolWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Instantiate mint proxy script (parameterized by one-shot policy ID)\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n // Instantiate treasury script from treasury bootstrap\n const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV0_2(\n blaze,\n {\n version: \"V0_2\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n },\n {\n oneShotScript,\n protocolScript,\n mintProxyScript,\n treasuryScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the treasury NFT.\n * This creates a new treasury with an initial datum.\n * The treasury bootstrap UTxO must be provided to consume it.\n */\n async mintTreasuryNFT(\n treasuryBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash);\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n const treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n\n const datum = Data.serialize(V0_1TreasuryDatum, initialDatum);\n const tx = await this.blaze\n .newTransaction()\n .addInput(treasuryBootstrapUtxo)\n .addMint(\n treasuryPolicyId,\n new Map([[treasuryAssetName, 1n]]),\n Data.Void(),\n )\n .lockAssets(\n treasuryAddress,\n makeValue(10000000n, [this.treasuryNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.treasuryScript);\n\n return { tx, nftAssetId: this.treasuryNFTAssetId };\n }\n\n /**\n * Deploy the treasury script as a reference script.\n */\n async deployTreasury(): Promise {\n return deployScript(\n this.blaze,\n this.treasuryScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Get the treasury datum.\n */\n async getTreasuryDatum(): Promise> {\n const {\n utxo: treasuryUtxo,\n datum: treasuryDatum,\n parsedDatum: parsedTreasuryDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1TreasuryDatum,\n );\n\n if (!treasuryUtxo) {\n throw new Error(\"No UTXO found with the treasury NFT\");\n }\n if (!treasuryDatum) {\n throw new Error(\"No treasury datum found\");\n }\n\n return {\n treasuryUtxo,\n treasuryDatum,\n parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the one-shot NFT with the initial datum.\n * V0_2 uses V0_2Types.ProxyDatum which includes withdraw/deposit permissions.\n */\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: V0_2Types.ProxyDatum,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(V0_2Types.ProxyDatum, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n /**\n * Update the one-shot datum.\n */\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: V0_2Types.ProxyDatum,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(V0_2Types.ProxyDatum, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n }\n\n /**\n * Get the proxy datum from the one-shot token UTXO.\n * V0_2 returns V0_2Types.ProxyDatum which includes withdraw/deposit permissions.\n * Result is cached after first fetch.\n */\n async getParsedProxyDatum(): Promise<\n IProxyDatumResult\n > {\n if (this.cachedProxyDatumResult) {\n return this\n .cachedProxyDatumResult as IProxyDatumResult;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(V0_2Types.ProxyDatum, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Minting Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a mint (positive amount) or burn (negative amount) transaction.\n * V0_2 minting uses V0_2Types.ProtocolRedeemer.\n */\n async buildMintTx(assetAmount: AssetAmount): Promise {\n const isBurn = assetAmount.amount < 0n;\n const rewardAccount = this.getProtocolRewardAccount();\n const conversionRatio = 1; // V0_2 uses 1:1 conversion ratio (no decimals taken into account, etc.)\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n\n const treasuryScriptHash = Hash28ByteBase16(\n parsedProxyDatum.settings.registry.treasury,\n );\n\n // Get all reference inputs in one call (cached after first fetch)\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: treasuryScriptHash,\n });\n\n const { utxo: treasuryUtxo, parsedDatum: parsedTreasuryDatum } =\n await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1Types.TreasuryDatum,\n );\n\n const circulatingSupply = (parsedTreasuryDatum as V0_1TreasuryDatum)\n .circulating_supply;\n const newCirculatingSupply = circulatingSupply + assetAmount.amount;\n\n const newTreasuryDatum = Data.serialize(V0_1Types.TreasuryDatum, {\n circulating_supply: newCirculatingSupply,\n });\n\n const reserveToken = parsedProxyDatum.settings.reserve_token.join(\"\");\n const reserveTokenAmount = BigInt(conversionRatio) * assetAmount.amount;\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(treasuryScriptHash),\n );\n\n const redeemer = isBurn\n ? Data.serialize(V0_2Types.ProtocolRedeemer, \"Burn\")\n : Data.serialize(V0_2Types.ProtocolRedeemer, \"Mint\");\n\n const assetName = Core.AssetName(this.assetNameHex);\n const initialTreasuryValue = treasuryUtxo!.output().amount();\n const valueToAdd = makeValue(0n, [reserveToken, reserveTokenAmount]);\n const updatedTreasuryValue = Value.merge(initialTreasuryValue, valueToAdd);\n\n const tx = this.blaze\n .newTransaction()\n .addReferenceInput(proxyUtxo!)\n .addWithdrawal(rewardAccount, 0n, redeemer)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Void())\n .addMint(\n this.stablecoinPolicyId,\n new Map([[assetName, assetAmount.amount]]),\n Void(),\n )\n .lockAssets(treasuryAddress, updatedTreasuryValue, newTreasuryDatum);\n\n if (isBurn) {\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.burn_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n const receiverAddress = await this.blaze.wallet.getChangeAddress();\n addDirectOutput(\n tx,\n receiverAddress,\n makeValue(0n, [reserveToken, -assetAmount.amount]),\n );\n } else {\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.mint_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n }\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // V0_2-specific Operations: Deposit and Withdraw\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a deposit transaction to add reserve to the treasury.\n */\n async buildDepositTx(assetAmount: AssetAmount): Promise {\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: this.treasuryScriptHash,\n });\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum();\n\n const redeemer = Data.serialize(V0_2Types.ProtocolRedeemer, {\n Deposit: {\n deposit_amount: assetAmount.amount,\n },\n });\n\n const rewardAccount = this.getProtocolRewardAccount();\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.deposit_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n const reserveToken = AssetId(\n assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(\n Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury),\n ),\n );\n\n const inititalTreasuryValue = treasuryUtxo.output().amount();\n const depositValue = makeValue(0n, [reserveToken, assetAmount.amount]);\n const newTreasuryValue = Value.merge(inititalTreasuryValue, depositValue);\n\n const tx = this.blaze\n .newTransaction()\n .addWithdrawal(rewardAccount, 0n, redeemer)\n .addReferenceInput(proxyUtxo)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Data.Void())\n .lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum);\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n return tx;\n }\n\n /**\n * Build a withdraw transaction to remove reserve from the treasury.\n * @param amount Amount to withdraw from treasury\n * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address\n */\n async buildWithdrawTx(\n assetAmount: AssetAmount,\n receiverAddress?: string,\n ): Promise {\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: this.treasuryScriptHash,\n });\n\n const receiver = receiverAddress\n ? Core.Address.fromBech32(receiverAddress)\n : await this.blaze.wallet.getChangeAddress();\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum();\n\n const redeemer = Data.serialize(V0_2Types.ProtocolRedeemer, {\n Withdraw: {\n withdraw_amount: assetAmount.amount,\n },\n });\n\n const rewardAccount = this.getProtocolRewardAccount();\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.withdraw_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n const reserveToken = AssetId(\n assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(\n Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury),\n ),\n );\n\n const inititalTreasuryValue = treasuryUtxo.output().amount();\n const withdrawValue = makeValue(0n, [reserveToken, -assetAmount.amount]);\n const newTreasuryValue = Value.merge(inititalTreasuryValue, withdrawValue);\n\n const tx = this.blaze\n .newTransaction()\n .addWithdrawal(rewardAccount, 0n, redeemer)\n .addReferenceInput(proxyUtxo)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Data.Void());\n addDirectOutput(\n tx,\n receiver,\n makeValue(0n, [reserveToken, assetAmount.amount]),\n );\n tx.lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum);\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n return tx;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v0_3/index.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_3/index.js new file mode 100644 index 0000000000..20f769b15f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_3/index.js @@ -0,0 +1,1205 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.RealfiSDKV0_3 = void 0; +var _core = require("@blaze-cardano/core"); +var _data = _interopRequireWildcard(require("@blaze-cardano/data")); +var Data = _data; +var _sdk = require("@blaze-cardano/sdk"); +var _index = require("../../generated-types/index.js"); +var _index2 = require("../../generated-types/v0_1/index.js"); +var _index3 = require("../shared/index.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t7 in e) "default" !== _t7 && {}.hasOwnProperty.call(e, _t7) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t7)) && (i.get || i.set) ? o(f, _t7, i) : f[_t7] = e[_t7]); return f; })(e, t); } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/** + * Parsed order information extracted from a UTXO. + */ +/** + * Treasury state for order execution. + */ +// eslint-disable-next-line @typescript-eslint/naming-convention +/** + * V0_3 SDK implementation. + * + * Extends V0_1 with deposit and withdraw operations for treasury management. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +var RealfiSDKV0_3 = exports.RealfiSDKV0_3 = /*#__PURE__*/function (_RealfiSDKBase) { + function RealfiSDKV0_3(blaze, params, scripts, cachedReferenceInputs) { + var _this; + _classCallCheck(this, RealfiSDKV0_3); + _this = _callSuper(this, RealfiSDKV0_3, [blaze, params, cachedReferenceInputs]); + _defineProperty(_this, "version", "V0_3"); + // Script hashes and policy IDs + _defineProperty(_this, "stablecoinPolicyId", void 0); + _defineProperty(_this, "oneShotPolicyId", void 0); + _defineProperty(_this, "protocolScriptHash", void 0); + _defineProperty(_this, "treasuryScriptHash", void 0); + _defineProperty(_this, "treasuryNFTAssetId", void 0); + _defineProperty(_this, "orderScriptHash", void 0); + _defineProperty(_this, "orderScriptAddress", void 0); + _defineProperty(_this, "treasuryAddress", void 0); + // Scripts + _defineProperty(_this, "oneShotScript", void 0); + _defineProperty(_this, "protocolScript", void 0); + _defineProperty(_this, "mintProxyScript", void 0); + _defineProperty(_this, "treasuryScript", void 0); + _defineProperty(_this, "orderScript", void 0); + _this.oneShotScript = scripts.oneShotScript; + _this.protocolScript = scripts.protocolScript; + _this.mintProxyScript = scripts.mintProxyScript; + _this.treasuryScript = scripts.treasuryScript; + _this.orderScript = scripts.orderScript; + _this.treasuryAddress = (0, _core.addressFromValidator)(_this.network, _this.treasuryScript); + _this.oneShotPolicyId = _sdk.Core.PolicyId(_this.oneShotScript.hash()); + _this.protocolScriptHash = _this.protocolScript.hash(); + _this.stablecoinPolicyId = _sdk.Core.PolicyId(_this.mintProxyScript.hash()); + _this.treasuryScriptHash = _this.treasuryScript.hash(); + _this.orderScriptHash = _this.orderScript.hash(); + _this.orderScriptAddress = (0, _core.addressFromValidator)(_this.network, _this.orderScript); + + // Derive treasury NFT asset ID from treasury script hash + var treasuryAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("treasury"))); + _this.treasuryNFTAssetId = _sdk.Core.AssetId(_this.treasuryScriptHash + treasuryAssetName.toString()); + return _this; + } + + /** + * Create a V0_3 SDK instance. + */ + _inherits(RealfiSDKV0_3, _RealfiSDKBase); + return _createClass(RealfiSDKV0_3, [{ + key: "mintTreasuryNFT", + value: // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * The treasury bootstrap UTxO must be provided to consume it. + */ + function () { + var _mintTreasuryNFT = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(treasuryBootstrapUtxo) { + var initialDatum, + treasuryPolicyId, + treasuryAssetName, + treasuryAddress, + datum, + tx, + _args = arguments; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + initialDatum = _args.length > 1 && _args[1] !== undefined ? _args[1] : { + circulating_supply: 0n + }; + treasuryPolicyId = _sdk.Core.PolicyId(this.treasuryScriptHash); + treasuryAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("treasury"))); + treasuryAddress = (0, _core.addressFromValidator)(this.network, this.treasuryScript); + datum = Data.serialize(_index2.TreasuryDatum, initialDatum); + _context.n = 1; + return this.blaze.newTransaction().addInput(treasuryBootstrapUtxo).addMint(treasuryPolicyId, new Map([[treasuryAssetName, 1n]]), Data.Void()).lockAssets(treasuryAddress, (0, _sdk.makeValue)(10000000n, [this.treasuryNFTAssetId, 1n]), datum).provideScript(this.treasuryScript); + case 1: + tx = _context.v; + return _context.a(2, { + tx: tx, + nftAssetId: this.treasuryNFTAssetId + }); + } + }, _callee, this); + })); + function mintTreasuryNFT(_x) { + return _mintTreasuryNFT.apply(this, arguments); + } + return mintTreasuryNFT; + }() + /** + * Deploy the treasury script as a reference script. + */ + }, { + key: "deployTreasury", + value: (function () { + var _deployTreasury = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() { + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + return _context2.a(2, (0, _index3.deployScript)(this.blaze, this.treasuryScript, this.scriptDeploymentAddress)); + } + }, _callee2, this); + })); + function deployTreasury() { + return _deployTreasury.apply(this, arguments); + } + return deployTreasury; + }() + /** + * Deploy the Orders script as a reference script. + */ + ) + }, { + key: "deployOrderContract", + value: (function () { + var _deployOrderContract = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() { + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + return _context3.a(2, (0, _index3.deployScript)(this.blaze, this.orderScript, this.scriptDeploymentAddress)); + } + }, _callee3, this); + })); + function deployOrderContract() { + return _deployOrderContract.apply(this, arguments); + } + return deployOrderContract; + }() + /** + * Get the treasury datum. + */ + ) + }, { + key: "getTreasuryDatum", + value: (function () { + var _getTreasuryDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() { + var _yield$getDatumFromNF, treasuryUtxo, treasuryDatum, parsedTreasuryDatum; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.n) { + case 0: + _context4.n = 1; + return (0, _index3.getDatumFromNFT)(this.blaze, this.treasuryNFTAssetId, _index2.TreasuryDatum); + case 1: + _yield$getDatumFromNF = _context4.v; + treasuryUtxo = _yield$getDatumFromNF.utxo; + treasuryDatum = _yield$getDatumFromNF.datum; + parsedTreasuryDatum = _yield$getDatumFromNF.parsedDatum; + if (treasuryUtxo) { + _context4.n = 2; + break; + } + throw new Error("No UTXO found with the treasury NFT"); + case 2: + if (treasuryDatum) { + _context4.n = 3; + break; + } + throw new Error("No treasury datum found"); + case 3: + return _context4.a(2, { + treasuryUtxo: treasuryUtxo, + treasuryDatum: treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum + }); + } + }, _callee4, this); + })); + function getTreasuryDatum() { + return _getTreasuryDatum.apply(this, arguments); + } + return getTreasuryDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint the one-shot NFT with the initial datum. + * V0_3 uses ProxyDatum which includes withdraw/deposit permissions. + */ + ) + }, { + key: "mintOneShot", + value: function () { + var _mintOneShot = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(receiverAddress, datum) { + var utxo, serializedDatum, baseTx, tx; + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + _context5.n = 1; + return this.resolveBootstrapUtxo(); + case 1: + utxo = _context5.v; + serializedDatum = Data.serialize(_index.V0_3Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings + }); + baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[_sdk.Core.AssetName(""), 1n]]), Data.Void()); + tx = (0, _index3.lockOrPayAssets)(baseTx, receiverAddress, (0, _sdk.makeValue)(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return _context5.a(2, { + tx: tx, + policyId: this.oneShotPolicyId + }); + } + }, _callee5, this); + })); + function mintOneShot(_x2, _x3) { + return _mintOneShot.apply(this, arguments); + } + return mintOneShot; + }() + /** + * Update the one-shot datum. + */ + }, { + key: "updateOneShotDatum", + value: (function () { + var _updateOneShotDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(receiverAddress, newDatum) { + var oneshotUtxo, serializedDatum; + return _regenerator().w(function (_context6) { + while (1) switch (_context6.n) { + case 0: + _context6.n = 1; + return this.blaze.provider.getUnspentOutputByNFT(_sdk.Core.AssetId(this.oneShotPolicyId)); + case 1: + oneshotUtxo = _context6.v; + if (oneshotUtxo) { + _context6.n = 2; + break; + } + throw new Error("No UTXO found with the one-shot NFT"); + case 2: + serializedDatum = Data.serialize(_index.V0_3Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings + }); + return _context6.a(2, (0, _index3.lockOrPayAssets)(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, (0, _sdk.makeValue)(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum)); + } + }, _callee6, this); + })); + function updateOneShotDatum(_x4, _x5) { + return _updateOneShotDatum.apply(this, arguments); + } + return updateOneShotDatum; + }() + /** + * Get the proxy datum from the one-shot token UTXO. + * V0_3 returns ProxyDatum which includes withdraw/deposit permissions. + * Result is cached after first fetch. + */ + ) + }, { + key: "getParsedProxyDatum", + value: (function () { + var _getParsedProxyDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() { + var _yield$this$getRawPro, proxyUtxo, proxyDatum, parsedProxyDatum, result; + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + if (!this.cachedProxyDatumResult) { + _context7.n = 1; + break; + } + return _context7.a(2, this.cachedProxyDatumResult); + case 1: + _context7.n = 2; + return this.getRawProxyDatum(); + case 2: + _yield$this$getRawPro = _context7.v; + proxyUtxo = _yield$this$getRawPro.proxyUtxo; + proxyDatum = _yield$this$getRawPro.proxyDatum; + parsedProxyDatum = (0, _data.parse)(_index.V0_3Types.ProxyDatum, proxyDatum); + result = { + proxyUtxo: proxyUtxo, + proxyDatum: proxyDatum, + parsedProxyDatum: parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return _context7.a(2, result); + } + }, _callee7, this); + })); + function getParsedProxyDatum() { + return _getParsedProxyDatum.apply(this, arguments); + } + return getParsedProxyDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // Order Execution Helpers + // ───────────────────────────────────────────────────────────────────────────── + /** + * Parse order UTXOs into IOrderInfo objects and validate they're all the same type. + * @returns The parsed order infos and the action type (mint or burn) + */ + ) + }, { + key: "parseOrderInfos", + value: function parseOrderInfos(orderUtxos) { + var orderInfos = []; + var actionType = null; + var _iterator = _createForOfIteratorHelper(orderUtxos), + _step; + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var _utxo$output$datum; + var utxo = _step.value; + var datumData = (_utxo$output$datum = utxo.output().datum()) === null || _utxo$output$datum === void 0 ? void 0 : _utxo$output$datum.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + var datum = (0, _data.parse)(_index.V0_3Types.OrderDatum, datumData); + var action = void 0; + var amount = void 0; + if ("OMint" in datum.action) { + action = "mint"; + amount = datum.action.OMint.amount; + } else if ("ORedeem" in datum.action) { + action = "burn"; + amount = datum.action.ORedeem.amount; + } else { + throw new Error("Unknown order action type"); + } + + // Verify all orders are the same type + if (actionType === null) { + actionType = action; + } else if (actionType !== action) { + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + } + orderInfos.push({ + utxo: utxo, + datum: datum, + action: action, + amount: amount + }); + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + if (!actionType) { + throw new Error("No orders to execute"); + } + return { + orderInfos: orderInfos, + actionType: actionType + }; + } + + /** + * Calculate treasury state for order execution. + * Validates that treasury has sufficient reserve tokens for burn operations. + */ + }, { + key: "calculateTreasuryState", + value: (function () { + var _calculateTreasuryState = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(totalAmount, actionType, reserveTokenAssetId) { + var _treasuryAssets$get; + var _yield$this$getTreasu, treasuryUtxo, parsedTreasuryDatum, treasuryValue, treasuryAssets, currentReserve, newReserve; + return _regenerator().w(function (_context8) { + while (1) switch (_context8.n) { + case 0: + _context8.n = 1; + return this.getTreasuryDatum(); + case 1: + _yield$this$getTreasu = _context8.v; + treasuryUtxo = _yield$this$getTreasu.treasuryUtxo; + parsedTreasuryDatum = _yield$this$getTreasu.parsedTreasuryDatum; + treasuryValue = treasuryUtxo.output().amount(); + treasuryAssets = treasuryValue.multiasset(); + currentReserve = (_treasuryAssets$get = treasuryAssets === null || treasuryAssets === void 0 ? void 0 : treasuryAssets.get(reserveTokenAssetId)) !== null && _treasuryAssets$get !== void 0 ? _treasuryAssets$get : 0n; + newReserve = currentReserve + totalAmount; // For burn operations, validate treasury has enough reserve tokens + if (!(actionType === "burn")) { + _context8.n = 3; + break; + } + if (!(currentReserve === 0n)) { + _context8.n = 2; + break; + } + throw new Error("Treasury has no reserve tokens. Cannot execute burn orders."); + case 2: + if (!(newReserve < 0n)) { + _context8.n = 3; + break; + } + throw new Error("Insufficient reserve tokens in treasury. Treasury has ".concat(currentReserve, " but burn requires ").concat(-totalAmount, ".")); + case 3: + return _context8.a(2, { + treasuryUtxo: treasuryUtxo, + treasuryValue: treasuryValue, + parsedTreasuryDatum: parsedTreasuryDatum, + currentReserve: currentReserve, + newReserve: newReserve + }); + } + }, _callee8, this); + })); + function calculateTreasuryState(_x6, _x7, _x8) { + return _calculateTreasuryState.apply(this, arguments); + } + return calculateTreasuryState; + }() + /** + * Add destination outputs for executed orders. + * For mints: sends stablecoins to destinations. + * For burns: sends reserve tokens to destinations. + */ + ) + }, { + key: "addDestinationOutputs", + value: function addDestinationOutputs(tx, orderInfos, actionType, stablecoinAssetId, reserveTokenAssetId) { + var _iterator2 = _createForOfIteratorHelper(orderInfos), + _step2; + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + var orderInfo = _step2.value; + var destAddress = (0, _index3.destinationToAddress)(this.network, orderInfo.datum.destination); + if (actionType === "mint") { + var outputValue = (0, _sdk.makeValue)(2000000n, [stablecoinAssetId, orderInfo.amount]); + (0, _index3.addDirectOutput)(tx, destAddress, outputValue); + } else { + // For burns, amount is negative in the datum, so negate it for output + var _outputValue = (0, _sdk.makeValue)(2000000n, [reserveTokenAssetId, -orderInfo.amount]); + console.log(destAddress.toBech32(), orderInfo.amount); + (0, _index3.addDirectOutput)(tx, destAddress, _outputValue); + } + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + } + + /** + * Update treasury with new reserve balance and circulating supply. + */ + }, { + key: "updateTreasury", + value: function updateTreasury(tx, treasuryState, totalAmount, reserveTokenAssetId) { + var newTreasuryDatum = { + circulating_supply: treasuryState.parsedTreasuryDatum.circulating_supply + totalAmount + }; + var serializedTreasuryDatum = Data.serialize(_index2.TreasuryDatum, newTreasuryDatum); + tx.addInput(treasuryState.treasuryUtxo, Data.Void()); + var newTreasuryValue = _sdk.Value.merge((0, _sdk.makeValue)(treasuryState.treasuryValue.coin(), [this.treasuryNFTAssetId, 1n]), (0, _sdk.makeValue)(0n, [reserveTokenAssetId, treasuryState.newReserve])); + tx.lockAssets(this.treasuryAddress, newTreasuryValue, serializedTreasuryDatum); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * + * @param action "mint" | "burn" + * @param amount amount of stablecoin to mint or burn + * @param owner Optional owner multisig script. Defaults to the wallet's change address. + * @param destination When minting, where to send the minted stablecoins. When burning, where to send the redeemed assets. A datum can be attached. + * @param data Optional datum data. Defaults to Data.Void() + * @returns TxBuilder + */ + }, { + key: "buildOrderTx", + value: function () { + var _buildOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(_ref) { + var action, amount, owner, destination, _ref$data, data, CONVERTION_RATIO, stableCoinAssetId, orderContractAddress, scriptTypes, orderAction, orderDatum, serializedDatum, proxyDatum, reserveTokenAssetId, tx, valueToLock, reserveTokenAmount, _t, _t2; + return _regenerator().w(function (_context9) { + while (1) switch (_context9.n) { + case 0: + action = _ref.action, amount = _ref.amount, owner = _ref.owner, destination = _ref.destination, _ref$data = _ref.data, data = _ref$data === void 0 ? Data.Void() : _ref$data; + CONVERTION_RATIO = 1n; // Define conversion ratio between stablecoin and reserve token. Should come from datum/settings + stableCoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + orderContractAddress = (0, _core.addressFromValidator)(this.network, this.orderScript); + if (owner) { + _context9.n = 2; + break; + } + _context9.n = 1; + return this.blaze.wallet.getChangeAddress(); + case 1: + _t = _context9.v.getProps().paymentPart.hash.toString(); + _t2 = { + key_hash: _t + }; + owner = { + Signature: _t2 + }; + _context9.n = 3; + break; + case 2: + scriptTypes = Object.keys(owner); + if (!(scriptTypes.length !== 1 || scriptTypes[0] !== "Signature")) { + _context9.n = 3; + break; + } + throw new Error("Only Signature multisig script is currently supported for owner"); + case 3: + orderAction = action === "mint" ? { + OMint: { + amount: amount + } + } : { + ORedeem: { + amount: -amount + } + }; + orderDatum = { + action: orderAction, + owner: owner, + destination: destination, + data: data + }; + serializedDatum = Data.serialize(_index.V0_3Types.OrderDatum, orderDatum); + _context9.n = 4; + return this.getParsedProxyDatum(); + case 4: + proxyDatum = _context9.v; + reserveTokenAssetId = _sdk.Core.AssetId(proxyDatum.parsedProxyDatum.settings.reserve_token.join("")); + tx = this.blaze.newTransaction(); + //TODO: include fees and min ada for when the order is executed? + if (action === "mint") { + // minting stablecoin, lock reserve token + reserveTokenAmount = amount * CONVERTION_RATIO; + valueToLock = (0, _sdk.makeValue)(1000000n, [reserveTokenAssetId, reserveTokenAmount]); + } else { + // burning stablecoin, lock stablecoin + valueToLock = (0, _sdk.makeValue)(1000000n, [stableCoinAssetId, amount]); + } + tx.lockAssets(orderContractAddress, valueToLock, serializedDatum); + return _context9.a(2, tx); + } + }, _callee9, this); + })); + function buildOrderTx(_x9) { + return _buildOrderTx.apply(this, arguments); + } + return buildOrderTx; + }() + /** + * Build the SignedPayload_ProtocolRedeemer from order inputs. + * Returns CBOR hex string to be signed and included in SignedMessage. + */ + }, { + key: "getSignedPayloadFromOrderInputs", + value: (function () { + var _getSignedPayloadFromOrderInputs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(orderUtxos) { + var sortedInputs, nonce, resolvedUtxos, requestList, actionType, _iterator3, _step3, utxo, parsed, action, signedPayload, serialized, _t3; + return _regenerator().w(function (_context0) { + while (1) switch (_context0.p = _context0.n) { + case 0: + if (!(orderUtxos.length === 0)) { + _context0.n = 1; + break; + } + throw new Error("At least one order UTxO is required"); + case 1: + // Sort inputs for deterministic ordering + sortedInputs = (0, _index3.sortOrderInputs)(orderUtxos); // Build nonce from first UTxO + nonce = (0, _index3.buildNonceFromUtxo)(sortedInputs[0]); // Resolve UTxOs and build request list + _context0.n = 2; + return this.blaze.provider.resolveUnspentOutputs(sortedInputs); + case 2: + resolvedUtxos = _context0.v; + requestList = []; + actionType = null; + _iterator3 = _createForOfIteratorHelper(resolvedUtxos); + _context0.p = 3; + _iterator3.s(); + case 4: + if ((_step3 = _iterator3.n()).done) { + _context0.n = 8; + break; + } + utxo = _step3.value; + parsed = this.parseOrderActionForPayload(utxo); // Validate all orders are the same type + if (!(actionType === null)) { + _context0.n = 5; + break; + } + actionType = parsed.actionType; + _context0.n = 6; + break; + case 5: + if (!(actionType !== parsed.actionType)) { + _context0.n = 6; + break; + } + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + case 6: + requestList.push(this.buildRequestFromUtxo(utxo, parsed.amount, parsed.destination)); + case 7: + _context0.n = 4; + break; + case 8: + _context0.n = 10; + break; + case 9: + _context0.p = 9; + _t3 = _context0.v; + _iterator3.e(_t3); + case 10: + _context0.p = 10; + _iterator3.f(); + return _context0.f(10); + case 11: + // Build the action (ProtocolRedeemer) + action = actionType === "OMint" ? { + Mint: { + requests: requestList + } + } : { + Burn: { + requests: requestList + } + }; // Build and serialize SignedPayload_ProtocolRedeemer + signedPayload = { + action: action, + nonce: nonce + }; + serialized = Data.serialize(_index.V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload); + return _context0.a(2, serialized.toCbor().toString()); + } + }, _callee0, this, [[3, 9, 10, 11]]); + })); + function getSignedPayloadFromOrderInputs(_x0) { + return _getSignedPayloadFromOrderInputs.apply(this, arguments); + } + return getSignedPayloadFromOrderInputs; + }() + /** + * Parse an order UTxO and extract action type, amount, and destination. + */ + ) + }, { + key: "parseOrderActionForPayload", + value: function parseOrderActionForPayload(utxo) { + var _utxo$output$datum2; + var datum = (_utxo$output$datum2 = utxo.output().datum()) === null || _utxo$output$datum2 === void 0 ? void 0 : _utxo$output$datum2.asInlineData(); + if (!datum) { + throw new Error("Order UTXO has no inline datum"); + } + var parsedDatum = (0, _data.parse)(_index.V0_3Types.OrderDatum, datum); + if ("OMint" in parsedDatum.action) { + return { + actionType: "OMint", + amount: parsedDatum.action.OMint.amount, + destination: parsedDatum.destination + }; + } else if ("ORedeem" in parsedDatum.action) { + return { + actionType: "ORedeem", + amount: parsedDatum.action.ORedeem.amount, + destination: parsedDatum.destination + }; + } + throw new Error("Unknown order action type"); + } + + /** + * Build a Request from an order UTxO. + * Serializes the origin (OutputReference) as CBOR to match Aiken's format. + */ + }, { + key: "buildRequestFromUtxo", + value: function buildRequestFromUtxo(utxo, amount, destination) { + var input = utxo.input(); + var txId = input.transactionId().toString(); + var outputIndex = input.index(); + + // Serialize origin as PlutusData (matching Aiken's cbor.serialise format) + // OutputReference struct: { transaction_id: ByteArray, output_index: Int } + var fieldsList = new _sdk.Core.PlutusList(); + fieldsList.add(_sdk.Core.PlutusData.newBytes(Buffer.from(txId, "hex"))); + fieldsList.add(_sdk.Core.PlutusData.newInteger(outputIndex)); + var outputRefData = _sdk.Core.PlutusData.newConstrPlutusData(new _sdk.Core.ConstrPlutusData(0n, fieldsList)); + return { + origin: outputRefData.toCbor(), + amount: amount, + destination: destination + }; + } + + /** + * Build a transaction to execute orders. + * This consumes order UTXOs, validates the signed redeemer, mints/burns stablecoins, + * and sends the results to the destinations specified in the orders. + * + * @param params.orderInputs - The order transaction inputs to execute + * @param params.signedPayload - The signed payload hex string from getSignedPayloadFromOrderInputs + * @param params.signatures - Array of signatures from each signer + * @returns TxBuilder ready to be completed and signed + */ + }, { + key: "buildExecuteOrdersTx", + value: (function () { + var _buildExecuteOrdersTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(params) { + var orderInputs, signedPayload, signatures, sortedOrderInputs, orderUtxos, _this$parseOrderInfos, orderInfos, actionType, _yield$this$getParsed, proxyUtxo, parsedProxyDatum, refInputs, protocolRefInput, orderRefInput, treasuryRefInput, totalAmount, reserveTokenAssetId, stablecoinAssetId, treasuryState, requestToOutputs, i, serializedSignedRedeemer, executeRedeemer, tx, _iterator4, _step4, orderInfo, protocolRewardAccount; + return _regenerator().w(function (_context1) { + while (1) switch (_context1.n) { + case 0: + orderInputs = params.orderInputs, signedPayload = params.signedPayload, signatures = params.signatures; // Sort and resolve order UTXOs + sortedOrderInputs = (0, _index3.sortOrderInputs)(orderInputs); + _context1.n = 1; + return this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + case 1: + orderUtxos = _context1.v; + // Parse orders and validate they're all the same type + _this$parseOrderInfos = this.parseOrderInfos(orderUtxos), orderInfos = _this$parseOrderInfos.orderInfos, actionType = _this$parseOrderInfos.actionType; // Get protocol datum for permissions and registry + _context1.n = 2; + return this.getParsedProxyDatum(); + case 2: + _yield$this$getParsed = _context1.v; + proxyUtxo = _yield$this$getParsed.proxyUtxo; + parsedProxyDatum = _yield$this$getParsed.parsedProxyDatum; + _context1.n = 3; + return this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + order: this.orderScriptHash, + treasury: this.treasuryScriptHash + }); + case 3: + refInputs = _context1.v; + protocolRefInput = refInputs.protocol; + orderRefInput = refInputs.order; + treasuryRefInput = refInputs.treasury; + if (!(!protocolRefInput || !orderRefInput || !treasuryRefInput)) { + _context1.n = 4; + break; + } + throw new Error("Missing reference script inputs. Make sure all scripts are deployed."); + case 4: + // Calculate total amount and get asset IDs + totalAmount = orderInfos.reduce(function (sum, info) { + return sum + info.amount; + }, 0n); + reserveTokenAssetId = _sdk.Core.AssetId(parsedProxyDatum.settings.reserve_token.join("")); + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); // Calculate treasury state and validate for burns + _context1.n = 5; + return this.calculateTreasuryState(totalAmount, actionType, reserveTokenAssetId); + case 5: + treasuryState = _context1.v; + // Build request_to_outputs mapping (1:1 since outputs are in same order as inputs) + requestToOutputs = {}; + for (i = 0; i < orderInfos.length; i++) { + requestToOutputs[i] = BigInt(i); + } + + // Serialize redeemers + serializedSignedRedeemer = Data.serialize(_index.V0_3Types.SignedRedeemer_ExtraProtocolRedeemer, { + extra: { + request_to_outputs: requestToOutputs + }, + payload: signedPayload, + signatures: signatures + }); + executeRedeemer = Data.serialize(_index.V0_3Types.OrderRedeemer, "Execute"); // Build the transaction + tx = this.blaze.newTransaction(); // Add order inputs with Execute redeemer + _iterator4 = _createForOfIteratorHelper(orderInfos); + try { + for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) { + orderInfo = _step4.value; + tx.addInput(orderInfo.utxo, executeRedeemer); + } + + // Add reference inputs + } catch (err) { + _iterator4.e(err); + } finally { + _iterator4.f(); + } + tx.addReferenceInput(protocolRefInput); + tx.addReferenceInput(orderRefInput); + tx.addReferenceInput(proxyUtxo); + tx.addReferenceInput(treasuryRefInput); + + // Add protocol withdrawal with signed redeemer + protocolRewardAccount = _sdk.Core.RewardAccount.fromCredential({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash + }, this.network); + tx.addWithdrawal(protocolRewardAccount, 0n, serializedSignedRedeemer); + + // Mint/burn stablecoins + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Add destination outputs + this.addDestinationOutputs(tx, orderInfos, actionType, stablecoinAssetId, reserveTokenAssetId); + + // Update treasury + this.updateTreasury(tx, treasuryState, totalAmount, reserveTokenAssetId); + + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + return _context1.a(2, tx); + } + }, _callee1, this); + })); + function buildExecuteOrdersTx(_x1) { + return _buildExecuteOrdersTx.apply(this, arguments); + } + return buildExecuteOrdersTx; + }() + /** + * Build a transaction to cancel orders. + * This returns the locked assets to the specified destination address. + * The transaction must be signed by the owner(s) specified in each order's datum. + * + * @param params.orderInputs - The order transaction inputs to cancel + * @param params.destination - Optional destination address. Defaults to the wallet's change address. + * @returns TxBuilder ready to be completed and signed + */ + ) + }, { + key: "buildCancelOrdersTx", + value: (function () { + var _buildCancelOrdersTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(params) { + var orderInputs, destination, versionHint, orderUtxos, cachedOrderRefs, orderRefInputs, cancelRedeemer, destAddress, tx, _iterator5, _step5, orderRefInput, currentOrderRefInput, requiredSigners, _iterator6, _step6, utxo, owner, _iterator8, _step8, keyHash, outputValue, _iterator7, _step7, _keyHash, _t4, _t5; + return _regenerator().w(function (_context10) { + while (1) switch (_context10.p = _context10.n) { + case 0: + orderInputs = params.orderInputs, destination = params.destination, versionHint = params.versionHint; // Resolve order UTXOs + _context10.n = 1; + return this.blaze.provider.resolveUnspentOutputs(orderInputs); + case 1: + orderUtxos = _context10.v; + if (!(orderUtxos.length === 0)) { + _context10.n = 2; + break; + } + throw new Error("No orders to cancel"); + case 2: + cachedOrderRefs = this.cachedReferenceInputs.orderRefInput ? new Map([[this.orderScriptHash, this.cachedReferenceInputs.orderRefInput]]) : undefined; + _context10.n = 3; + return (0, _index3.resolveOrderReferenceInputs)(this.blaze, orderUtxos, cachedOrderRefs, this.scriptDeploymentAddress); + case 3: + orderRefInputs = _context10.v; + // Build the cancel redeemer + cancelRedeemer = Data.serialize(_index.V0_3Types.OrderRedeemer, "Cancel"); // Determine destination address + if (!(destination !== null && destination !== void 0)) { + _context10.n = 4; + break; + } + _t4 = destination; + _context10.n = 6; + break; + case 4: + _context10.n = 5; + return this.blaze.wallet.getChangeAddress(); + case 5: + _t4 = _context10.v; + case 6: + destAddress = _t4; + // Build the transaction + tx = this.blaze.newTransaction(); + _iterator5 = _createForOfIteratorHelper(orderRefInputs.values()); + try { + for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) { + orderRefInput = _step5.value; + tx.addReferenceInput(orderRefInput); + } + + // cache current version of order script reference input + } catch (err) { + _iterator5.e(err); + } finally { + _iterator5.f(); + } + currentOrderRefInput = orderRefInputs.get(this.orderScriptHash); + if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = currentOrderRefInput; + } + + // Collect all required signers from order owners + requiredSigners = new Set(); // Process each order + _iterator6 = _createForOfIteratorHelper(orderUtxos); + _context10.p = 7; + _iterator6.s(); + case 8: + if ((_step6 = _iterator6.n()).done) { + _context10.n = 11; + break; + } + utxo = _step6.value; + _context10.n = 9; + return (0, _index3.parseCancelOwner)(utxo, versionHint); + case 9: + owner = _context10.v; + // Extract required signers from the owner's MultisigScript + _iterator8 = _createForOfIteratorHelper((0, _index3.getSignatureKeyHashesFromMultisigScript)(owner)); + try { + for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) { + keyHash = _step8.value; + requiredSigners.add(keyHash); + } + + // Add order input with Cancel redeemer + } catch (err) { + _iterator8.e(err); + } finally { + _iterator8.f(); + } + tx.addInput(utxo, cancelRedeemer); + + // Return the locked assets to destination + outputValue = utxo.output().amount(); + (0, _index3.addDirectOutput)(tx, destAddress, outputValue); + case 10: + _context10.n = 8; + break; + case 11: + _context10.n = 13; + break; + case 12: + _context10.p = 12; + _t5 = _context10.v; + _iterator6.e(_t5); + case 13: + _context10.p = 13; + _iterator6.f(); + return _context10.f(13); + case 14: + // Add all required signers to the transaction + _iterator7 = _createForOfIteratorHelper(requiredSigners); + try { + for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) { + _keyHash = _step7.value; + tx.addRequiredSigner((0, _core.Ed25519KeyHashHex)(_keyHash)); + } + } catch (err) { + _iterator7.e(err); + } finally { + _iterator7.f(); + } + return _context10.a(2, tx); + } + }, _callee10, this, [[7, 12, 13, 14]]); + })); + function buildCancelOrdersTx(_x10) { + return _buildCancelOrdersTx.apply(this, arguments); + } + return buildCancelOrdersTx; + }() // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations: Withdraw and Deposit + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build a transaction to withdraw reserve tokens from the treasury. + * The transaction must be signed by the authorized withdraw permission signers. + * + * @param params.requests - Array of withdraw requests with destinations and amounts + * @param params.signedPayload - The signed payload hex string from getSignedPayloadForWithdraw + * @param params.signatures - Array of KeySignature tuples from authorized signers + * @returns TxBuilder ready to be completed and signed + */ + /** + * Build a withdraw transaction to remove reserve from the treasury. + * @param amount Amount to withdraw from treasury + * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address + */ + ) + }, { + key: "buildWithdrawTx", + value: function () { + var _buildWithdrawTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(assetAmount, receiverAddress) { + var _assetAmount$id; + var refInputs, receiver, _yield$this$getParsed2, proxyUtxo, parsedProxyDatum, _yield$this$getTreasu2, treasuryUtxo, treasuryDatum, serializedPayload, serializedSignedRedeemer, rewardAccount, requiredSigners, reserveToken, treasuryAddress, inititalTreasuryValue, withdrawValue, newTreasuryValue, tx, _iterator9, _step9, signer, _t6; + return _regenerator().w(function (_context11) { + while (1) switch (_context11.n) { + case 0: + _context11.n = 1; + return this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash + }); + case 1: + refInputs = _context11.v; + if (!receiverAddress) { + _context11.n = 2; + break; + } + _t6 = _sdk.Core.Address.fromBech32(receiverAddress); + _context11.n = 4; + break; + case 2: + _context11.n = 3; + return this.blaze.wallet.getChangeAddress(); + case 3: + _t6 = _context11.v; + case 4: + receiver = _t6; + _context11.n = 5; + return this.getParsedProxyDatum(); + case 5: + _yield$this$getParsed2 = _context11.v; + proxyUtxo = _yield$this$getParsed2.proxyUtxo; + parsedProxyDatum = _yield$this$getParsed2.parsedProxyDatum; + _context11.n = 6; + return this.getTreasuryDatum(); + case 6: + _yield$this$getTreasu2 = _context11.v; + treasuryUtxo = _yield$this$getTreasu2.treasuryUtxo; + treasuryDatum = _yield$this$getTreasu2.treasuryDatum; + serializedPayload = (0, _index3.getSignedPayloadForWithdraw)(assetAmount.amount, treasuryUtxo); // Build SignedRedeemer_ExtraProtocolRedeemer + serializedSignedRedeemer = Data.serialize(_index.V0_3Types.SignedRedeemer_ExtraProtocolRedeemer, { + extra: { + request_to_outputs: { + 0: 0n + } + }, + payload: serializedPayload, + signatures: [] + }); + rewardAccount = this.getProtocolRewardAccount(); + requiredSigners = (0, _index3.getSignatureKeyHashesFromMultisigScript)(parsedProxyDatum.settings.withdraw_permission).map(function (key) { + return _sdk.Core.Ed25519KeyHashHex(key); + }); + reserveToken = (0, _core.AssetId)((_assetAmount$id = assetAmount.id) !== null && _assetAmount$id !== void 0 ? _assetAmount$id : parsedProxyDatum.settings.reserve_token.join("")); + treasuryAddress = (0, _core.addressFromCredential)(this.network, (0, _index3.credentialFromScriptHash)((0, _core.Hash28ByteBase16)(parsedProxyDatum.settings.registry.treasury))); + inititalTreasuryValue = treasuryUtxo.output().amount(); + withdrawValue = (0, _sdk.makeValue)(0n, [reserveToken, -assetAmount.amount]); + newTreasuryValue = _sdk.Value.merge(inititalTreasuryValue, withdrawValue); + tx = this.blaze.newTransaction().addWithdrawal(rewardAccount, 0n, serializedSignedRedeemer).addReferenceInput(proxyUtxo).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, Data.Void()); + (0, _index3.addDirectOutput)(tx, receiver, (0, _sdk.makeValue)(0n, [reserveToken, assetAmount.amount])); + tx.lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + _iterator9 = _createForOfIteratorHelper(requiredSigners); + try { + for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) { + signer = _step9.value; + tx.addRequiredSigner(signer); + } + } catch (err) { + _iterator9.e(err); + } finally { + _iterator9.f(); + } + return _context11.a(2, tx); + } + }, _callee11, this); + })); + function buildWithdrawTx(_x11, _x12) { + return _buildWithdrawTx.apply(this, arguments); + } + return buildWithdrawTx; + }() + }, { + key: "buildDepositTx", + value: function () { + var _buildDepositTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee12(assetAmount) { + var _assetAmount$id2; + var refInputs, _yield$this$getParsed3, proxyUtxo, parsedProxyDatum, _yield$this$getTreasu3, treasuryUtxo, treasuryDatum, serializedPayload, serializedSignedRedeemer, rewardAccount, requiredSigners, reserveToken, treasuryAddress, inititalTreasuryValue, depositValue, newTreasuryValue, tx, _iterator0, _step0, signer; + return _regenerator().w(function (_context12) { + while (1) switch (_context12.n) { + case 0: + _context12.n = 1; + return this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash + }); + case 1: + refInputs = _context12.v; + _context12.n = 2; + return this.getParsedProxyDatum(); + case 2: + _yield$this$getParsed3 = _context12.v; + proxyUtxo = _yield$this$getParsed3.proxyUtxo; + parsedProxyDatum = _yield$this$getParsed3.parsedProxyDatum; + _context12.n = 3; + return this.getTreasuryDatum(); + case 3: + _yield$this$getTreasu3 = _context12.v; + treasuryUtxo = _yield$this$getTreasu3.treasuryUtxo; + treasuryDatum = _yield$this$getTreasu3.treasuryDatum; + serializedPayload = (0, _index3.getSignedPayloadForDeposit)(assetAmount.amount, treasuryUtxo); // Build SignedRedeemer_ExtraProtocolRedeemer + serializedSignedRedeemer = Data.serialize(_index.V0_3Types.SignedRedeemer_ExtraProtocolRedeemer, { + extra: { + request_to_outputs: { + 0: 0n + } + }, + payload: serializedPayload, + signatures: [] + }); + rewardAccount = this.getProtocolRewardAccount(); + requiredSigners = (0, _index3.getSignatureKeyHashesFromMultisigScript)(parsedProxyDatum.settings.deposit_permission).map(function (key) { + return _sdk.Core.Ed25519KeyHashHex(key); + }); + reserveToken = (0, _core.AssetId)((_assetAmount$id2 = assetAmount.id) !== null && _assetAmount$id2 !== void 0 ? _assetAmount$id2 : parsedProxyDatum.settings.reserve_token.join("")); + treasuryAddress = (0, _core.addressFromCredential)(this.network, (0, _index3.credentialFromScriptHash)((0, _core.Hash28ByteBase16)(parsedProxyDatum.settings.registry.treasury))); + inititalTreasuryValue = treasuryUtxo.output().amount(); + depositValue = (0, _sdk.makeValue)(0n, [reserveToken, assetAmount.amount]); + newTreasuryValue = _sdk.Value.merge(inititalTreasuryValue, depositValue); + tx = this.blaze.newTransaction().addWithdrawal(rewardAccount, 0n, serializedSignedRedeemer).addReferenceInput(proxyUtxo).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, Data.Void()).lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + _iterator0 = _createForOfIteratorHelper(requiredSigners); + try { + for (_iterator0.s(); !(_step0 = _iterator0.n()).done;) { + signer = _step0.value; + tx.addRequiredSigner(signer); + } + } catch (err) { + _iterator0.e(err); + } finally { + _iterator0.f(); + } + return _context12.a(2, tx); + } + }, _callee12, this); + })); + function buildDepositTx(_x13) { + return _buildDepositTx.apply(this, arguments); + } + return buildDepositTx; + }() + }], [{ + key: "create", + value: function create(blaze, params) { + var _params$enableTrace, _params$referenceInpu, _params$referenceInpu2, _params$referenceInpu3, _params$referenceInpu4; + var enableTrace = (_params$enableTrace = params.enableTrace) !== null && _params$enableTrace !== void 0 ? _params$enableTrace : false; + + // Instantiate one-shot script + var oneShotScript = new _index.BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + var oneShotPolicyId = oneShotScript.hash(); + // Instantiate protocol script (V0_3 uses V0_3ProtocolProtocolWithdraw) + var protocolScript = new _index.V0_3Types.V0_3ProtocolProtocolWithdraw(oneShotPolicyId, enableTrace).Script; + // Instantiate mint proxy script (parameterized by one-shot policy ID) + var mintProxyScript = new _index.BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + // Instantiate treasury script from treasury bootstrap + var treasuryScript = new _index.V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + var orderScript = new _index.V0_3Types.V0_3OrderOrderSpend(oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV0_3(blaze, { + version: "V0_3", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace: enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress + }, { + oneShotScript: oneShotScript, + protocolScript: protocolScript, + mintProxyScript: mintProxyScript, + treasuryScript: treasuryScript, + orderScript: orderScript + }, { + protocolRefInput: (_params$referenceInpu = params.referenceInputs) === null || _params$referenceInpu === void 0 ? void 0 : _params$referenceInpu.protocolRefInput, + proxyRefInput: (_params$referenceInpu2 = params.referenceInputs) === null || _params$referenceInpu2 === void 0 ? void 0 : _params$referenceInpu2.proxyRefInput, + treasuryRefInput: (_params$referenceInpu3 = params.referenceInputs) === null || _params$referenceInpu3 === void 0 ? void 0 : _params$referenceInpu3.treasuryRefInput, + orderRefInput: (_params$referenceInpu4 = params.referenceInputs) === null || _params$referenceInpu4 === void 0 ? void 0 : _params$referenceInpu4.orderRefInput + }); + } + }]); +}(_index3.RealfiSDKBase); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v0_3/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_3/index.js.map new file mode 100644 index 0000000000..9e354b4c2a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_3/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_core","require","_data","_interopRequireWildcard","Data","_sdk","_index","_index2","_index3","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t7","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Symbol","iterator","constructor","prototype","_createForOfIteratorHelper","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","done","value","TypeError","a","u","next","_arrayLikeToArray","toString","slice","name","from","test","_regenerator","toStringTag","c","Generator","create","_regeneratorDefine2","p","y","G","v","d","bind","l","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","_assertThisInitialized","ReferenceError","Boolean","valueOf","_inherits","_setPrototypeOf","_defineProperty","_toPrimitive","toPrimitive","String","Number","RealfiSDKV0_3","exports","_RealfiSDKBase","blaze","params","scripts","cachedReferenceInputs","_this","oneShotScript","protocolScript","mintProxyScript","treasuryScript","orderScript","treasuryAddress","addressFromValidator","network","oneShotPolicyId","Core","PolicyId","hash","protocolScriptHash","stablecoinPolicyId","treasuryScriptHash","orderScriptHash","orderScriptAddress","treasuryAssetName","AssetName","toHex","Buffer","treasuryNFTAssetId","AssetId","_mintTreasuryNFT","_callee","treasuryBootstrapUtxo","initialDatum","treasuryPolicyId","datum","tx","_args","_context","undefined","circulating_supply","serialize","V0_1TreasuryDatum","newTransaction","addInput","addMint","Map","Void","lockAssets","makeValue","provideScript","nftAssetId","mintTreasuryNFT","_x","_deployTreasury","_callee2","_context2","deployScript","scriptDeploymentAddress","deployTreasury","_deployOrderContract","_callee3","_context3","deployOrderContract","_getTreasuryDatum","_callee4","_yield$getDatumFromNF","treasuryUtxo","treasuryDatum","parsedTreasuryDatum","_context4","getDatumFromNFT","utxo","parsedDatum","Error","getTreasuryDatum","_mintOneShot","_callee5","receiverAddress","serializedDatum","baseTx","_context5","resolveBootstrapUtxo","V0_3Types","ProxyDatum","logic","settings","lockOrPayAssets","policyId","mintOneShot","_x2","_x3","_updateOneShotDatum","_callee6","newDatum","oneshotUtxo","_context6","provider","getUnspentOutputByNFT","updateOneShotDatum","_x4","_x5","_getParsedProxyDatum","_callee7","_yield$this$getRawPro","proxyUtxo","proxyDatum","parsedProxyDatum","result","_context7","cachedProxyDatumResult","getRawProxyDatum","parse","getParsedProxyDatum","parseOrderInfos","orderUtxos","orderInfos","actionType","_iterator","_step","_utxo$output$datum","datumData","output","asInlineData","OrderDatum","action","amount","OMint","ORedeem","push","err","_calculateTreasuryState","_callee8","totalAmount","reserveTokenAssetId","_treasuryAssets$get","_yield$this$getTreasu","treasuryValue","treasuryAssets","currentReserve","newReserve","_context8","multiasset","concat","calculateTreasuryState","_x6","_x7","_x8","addDestinationOutputs","stablecoinAssetId","_iterator2","_step2","orderInfo","destAddress","destinationToAddress","destination","outputValue","addDirectOutput","console","log","toBech32","updateTreasury","treasuryState","newTreasuryDatum","serializedTreasuryDatum","newTreasuryValue","Value","merge","coin","_buildOrderTx","_callee9","_ref","owner","_ref$data","data","CONVERTION_RATIO","stableCoinAssetId","orderContractAddress","scriptTypes","orderAction","orderDatum","valueToLock","reserveTokenAmount","_t","_t2","_context9","assetNameHex","wallet","getChangeAddress","getProps","paymentPart","key_hash","Signature","keys","reserve_token","join","buildOrderTx","_x9","_getSignedPayloadFromOrderInputs","_callee0","sortedInputs","nonce","resolvedUtxos","requestList","_iterator3","_step3","parsed","signedPayload","serialized","_t3","_context0","sortOrderInputs","buildNonceFromUtxo","resolveUnspentOutputs","parseOrderActionForPayload","buildRequestFromUtxo","Mint","requests","Burn","SignedPayload_ProtocolRedeemer","toCbor","getSignedPayloadFromOrderInputs","_x0","_utxo$output$datum2","input","txId","transactionId","outputIndex","index","fieldsList","PlutusList","add","PlutusData","newBytes","newInteger","outputRefData","newConstrPlutusData","ConstrPlutusData","origin","_buildExecuteOrdersTx","_callee1","orderInputs","signatures","sortedOrderInputs","_this$parseOrderInfos","_yield$this$getParsed","refInputs","protocolRefInput","orderRefInput","treasuryRefInput","requestToOutputs","serializedSignedRedeemer","executeRedeemer","_iterator4","_step4","protocolRewardAccount","_context1","getScriptReferenceInputs","protocol","order","treasury","reduce","sum","info","BigInt","SignedRedeemer_ExtraProtocolRedeemer","extra","request_to_outputs","payload","OrderRedeemer","addReferenceInput","RewardAccount","fromCredential","type","CredentialType","ScriptHash","addWithdrawal","buildExecuteOrdersTx","_x1","_buildCancelOrdersTx","_callee10","versionHint","cachedOrderRefs","orderRefInputs","cancelRedeemer","_iterator5","_step5","currentOrderRefInput","requiredSigners","_iterator6","_step6","_iterator8","_step8","keyHash","_iterator7","_step7","_keyHash","_t4","_t5","_context10","resolveOrderReferenceInputs","values","Set","parseCancelOwner","getSignatureKeyHashesFromMultisigScript","addRequiredSigner","Ed25519KeyHashHex","buildCancelOrdersTx","_x10","_buildWithdrawTx","_callee11","assetAmount","_assetAmount$id","receiver","_yield$this$getParsed2","_yield$this$getTreasu2","serializedPayload","rewardAccount","reserveToken","inititalTreasuryValue","withdrawValue","_iterator9","_step9","signer","_t6","_context11","proxy","Address","fromBech32","getSignedPayloadForWithdraw","getProtocolRewardAccount","withdraw_permission","map","id","addressFromCredential","credentialFromScriptHash","Hash28ByteBase16","registry","buildWithdrawTx","_x11","_x12","_buildDepositTx","_callee12","_assetAmount$id2","_yield$this$getParsed3","_yield$this$getTreasu3","depositValue","_iterator0","_step0","_context12","getSignedPayloadForDeposit","deposit_permission","buildDepositTx","_x13","_params$enableTrace","_params$referenceInpu","_params$referenceInpu2","_params$referenceInpu3","_params$referenceInpu4","enableTrace","BaseTypes","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","Script","V0_3ProtocolProtocolWithdraw","BaseMintProxyMintProxyMint","V0_1Types","V0_1TreasuryTreasurySpend","treasuryBootstrap","V0_3OrderOrderSpend","version","referenceInputs","proxyRefInput","RealfiSDKBase"],"sources":["../../../../src/sdk/v0_3/index.ts"],"sourcesContent":["import {\n addressFromCredential,\n addressFromValidator,\n AssetId,\n Ed25519KeyHashHex,\n Hash28ByteBase16,\n PlutusData,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport type { AssetAmount } from \"@sundaeswap/asset\";\nimport {\n BaseTypes,\n V0_1Types,\n V0_3Types,\n} from \"../../generated-types/index.js\";\nimport { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport type {\n Destination,\n MultisigScript,\n OrderDatum,\n ProxyDatum,\n SignatureList,\n} from \"../../generated-types/v0_3/index.js\";\nimport {\n addDirectOutput,\n buildNonceFromUtxo,\n credentialFromScriptHash,\n deployScript,\n destinationToAddress,\n getDatumFromNFT,\n getSignatureKeyHashesFromMultisigScript,\n getSignedPayloadForDeposit,\n getSignedPayloadForWithdraw,\n parseCancelOwner,\n resolveOrderReferenceInputs,\n type IBaseSDKParams,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n type IRealfiSDKWithTreasury,\n type ITreasuryDatumResult,\n type TProtocolVersion,\n lockOrPayAssets,\n RealfiSDKBase,\n sortOrderInputs,\n} from \"../shared/index.js\";\nimport type { Request } from \"../../generated-types/v0_3/index.js\";\n\n/**\n * Parsed order information extracted from a UTXO.\n */\ninterface IOrderInfo {\n utxo: Core.TransactionUnspentOutput;\n datum: OrderDatum;\n action: \"mint\" | \"burn\";\n amount: bigint;\n}\n\n/**\n * Treasury state for order execution.\n */\ninterface ITreasuryState {\n treasuryUtxo: Core.TransactionUnspentOutput;\n treasuryValue: Core.Value;\n parsedTreasuryDatum: V0_1TreasuryDatum;\n currentReserve: bigint;\n newReserve: bigint;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV0_3 {\n version: \"V0_3\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n assetNameHex: string;\n /**\n * The treasury bootstrap UTxO reference. The treasury script and NFT asset ID\n * are derived from this reference and the stablecoin policy ID.\n */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n };\n}\n\n/**\n * V0_3 SDK implementation.\n *\n * Extends V0_1 with deposit and withdraw operations for treasury management.\n * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here.\n */\nexport class RealfiSDKV0_3

\n extends RealfiSDKBase\n implements IRealfiSDKWithTreasury\n{\n readonly version = \"V0_3\" as const;\n\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n readonly treasuryNFTAssetId: Core.AssetId;\n readonly orderScriptHash: Core.Hash28ByteBase16;\n readonly orderScriptAddress: Core.Address;\n readonly treasuryAddress: Core.Address;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n protected readonly treasuryScript: Core.Script;\n protected readonly orderScript: Core.Script;\n\n private constructor(\n blaze: Blaze,\n params: IBaseSDKParams,\n scripts: {\n oneShotScript: Core.Script;\n protocolScript: Core.Script;\n mintProxyScript: Core.Script;\n treasuryScript: Core.Script;\n orderScript: Core.Script;\n },\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n super(blaze, params, cachedReferenceInputs);\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolScript = scripts.protocolScript;\n this.mintProxyScript = scripts.mintProxyScript;\n this.treasuryScript = scripts.treasuryScript;\n this.orderScript = scripts.orderScript;\n this.treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n this.treasuryScriptHash = this.treasuryScript.hash();\n this.orderScriptHash = this.orderScript.hash();\n this.orderScriptAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n\n // Derive treasury NFT asset ID from treasury script hash\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n this.treasuryNFTAssetId = Core.AssetId(\n this.treasuryScriptHash + treasuryAssetName.toString(),\n );\n }\n\n /**\n * Create a V0_3 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_3,\n ): RealfiSDKV0_3 {\n const enableTrace = params.enableTrace ?? false;\n\n // Instantiate one-shot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n // Instantiate protocol script (V0_3 uses V0_3ProtocolProtocolWithdraw)\n const protocolScript = new V0_3Types.V0_3ProtocolProtocolWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n // Instantiate mint proxy script (parameterized by one-shot policy ID)\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n // Instantiate treasury script from treasury bootstrap\n const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const orderScript = new V0_3Types.V0_3OrderOrderSpend(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV0_3(\n blaze,\n {\n version: \"V0_3\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n },\n {\n oneShotScript,\n protocolScript,\n mintProxyScript,\n treasuryScript,\n orderScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n orderRefInput: params.referenceInputs?.orderRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the treasury NFT.\n * This creates a new treasury with an initial datum.\n * The treasury bootstrap UTxO must be provided to consume it.\n */\n async mintTreasuryNFT(\n treasuryBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash);\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n const treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n\n const datum = Data.serialize(V0_1TreasuryDatum, initialDatum);\n const tx = await this.blaze\n .newTransaction()\n .addInput(treasuryBootstrapUtxo)\n .addMint(\n treasuryPolicyId,\n new Map([[treasuryAssetName, 1n]]),\n Data.Void(),\n )\n .lockAssets(\n treasuryAddress,\n makeValue(10000000n, [this.treasuryNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.treasuryScript);\n\n return { tx, nftAssetId: this.treasuryNFTAssetId };\n }\n\n /**\n * Deploy the treasury script as a reference script.\n */\n async deployTreasury(): Promise {\n return deployScript(\n this.blaze,\n this.treasuryScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Deploy the Orders script as a reference script.\n */\n async deployOrderContract(): Promise {\n return deployScript(\n this.blaze,\n this.orderScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Get the treasury datum.\n */\n async getTreasuryDatum(): Promise> {\n const {\n utxo: treasuryUtxo,\n datum: treasuryDatum,\n parsedDatum: parsedTreasuryDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1TreasuryDatum,\n );\n\n if (!treasuryUtxo) {\n throw new Error(\"No UTXO found with the treasury NFT\");\n }\n if (!treasuryDatum) {\n throw new Error(\"No treasury datum found\");\n }\n\n return {\n treasuryUtxo,\n treasuryDatum,\n parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the one-shot NFT with the initial datum.\n * V0_3 uses ProxyDatum which includes withdraw/deposit permissions.\n */\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: ProxyDatum,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(V0_3Types.ProxyDatum, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n /**\n * Update the one-shot datum.\n */\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: ProxyDatum,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(V0_3Types.ProxyDatum, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n }\n\n /**\n * Get the proxy datum from the one-shot token UTXO.\n * V0_3 returns ProxyDatum which includes withdraw/deposit permissions.\n * Result is cached after first fetch.\n */\n async getParsedProxyDatum(): Promise> {\n if (this.cachedProxyDatumResult) {\n return this.cachedProxyDatumResult as IProxyDatumResult;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(V0_3Types.ProxyDatum, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Order Execution Helpers\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Parse order UTXOs into IOrderInfo objects and validate they're all the same type.\n * @returns The parsed order infos and the action type (mint or burn)\n */\n private parseOrderInfos(orderUtxos: Core.TransactionUnspentOutput[]): {\n orderInfos: IOrderInfo[];\n actionType: \"mint\" | \"burn\";\n } {\n const orderInfos: IOrderInfo[] = [];\n let actionType: \"mint\" | \"burn\" | null = null;\n\n for (const utxo of orderUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(V0_3Types.OrderDatum, datumData) as OrderDatum;\n\n let action: \"mint\" | \"burn\";\n let amount: bigint;\n\n if (\"OMint\" in datum.action) {\n action = \"mint\";\n amount = datum.action.OMint.amount;\n } else if (\"ORedeem\" in datum.action) {\n action = \"burn\";\n amount = datum.action.ORedeem.amount;\n } else {\n throw new Error(\"Unknown order action type\");\n }\n\n // Verify all orders are the same type\n if (actionType === null) {\n actionType = action;\n } else if (actionType !== action) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n orderInfos.push({ utxo, datum, action, amount });\n }\n\n if (!actionType) {\n throw new Error(\"No orders to execute\");\n }\n\n return { orderInfos, actionType };\n }\n\n /**\n * Calculate treasury state for order execution.\n * Validates that treasury has sufficient reserve tokens for burn operations.\n */\n private async calculateTreasuryState(\n totalAmount: bigint,\n actionType: \"mint\" | \"burn\",\n reserveTokenAssetId: Core.AssetId,\n ): Promise {\n const { treasuryUtxo, parsedTreasuryDatum } = await this.getTreasuryDatum();\n const treasuryValue = treasuryUtxo.output().amount();\n const treasuryAssets = treasuryValue.multiasset();\n const currentReserve = treasuryAssets?.get(reserveTokenAssetId) ?? 0n;\n const newReserve = currentReserve + totalAmount;\n\n // For burn operations, validate treasury has enough reserve tokens\n if (actionType === \"burn\") {\n if (currentReserve === 0n) {\n throw new Error(\n \"Treasury has no reserve tokens. Cannot execute burn orders.\",\n );\n }\n // totalAmount is negative for burns, so newReserve < 0 means insufficient funds\n if (newReserve < 0n) {\n throw new Error(\n `Insufficient reserve tokens in treasury. Treasury has ${currentReserve} but burn requires ${-totalAmount}.`,\n );\n }\n }\n\n return {\n treasuryUtxo,\n treasuryValue,\n parsedTreasuryDatum,\n currentReserve,\n newReserve,\n };\n }\n\n /**\n * Add destination outputs for executed orders.\n * For mints: sends stablecoins to destinations.\n * For burns: sends reserve tokens to destinations.\n */\n private addDestinationOutputs(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n actionType: \"mint\" | \"burn\",\n stablecoinAssetId: Core.AssetId,\n reserveTokenAssetId: Core.AssetId,\n ): void {\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n\n if (actionType === \"mint\") {\n const outputValue = makeValue(2000000n, [\n stablecoinAssetId,\n orderInfo.amount,\n ]);\n addDirectOutput(tx, destAddress, outputValue);\n } else {\n // For burns, amount is negative in the datum, so negate it for output\n const outputValue = makeValue(2000000n, [\n reserveTokenAssetId,\n -orderInfo.amount,\n ]);\n console.log(destAddress.toBech32(), orderInfo.amount);\n addDirectOutput(tx, destAddress, outputValue);\n }\n }\n }\n\n /**\n * Update treasury with new reserve balance and circulating supply.\n */\n private updateTreasury(\n tx: TxBuilder,\n treasuryState: ITreasuryState,\n totalAmount: bigint,\n reserveTokenAssetId: Core.AssetId,\n ): void {\n const newTreasuryDatum: V0_1TreasuryDatum = {\n circulating_supply:\n treasuryState.parsedTreasuryDatum.circulating_supply + totalAmount,\n };\n const serializedTreasuryDatum = Data.serialize(\n V0_1TreasuryDatum,\n newTreasuryDatum,\n );\n\n tx.addInput(treasuryState.treasuryUtxo, Data.Void());\n const newTreasuryValue = Value.merge(\n makeValue(treasuryState.treasuryValue.coin(), [\n this.treasuryNFTAssetId,\n 1n,\n ]),\n makeValue(0n, [reserveTokenAssetId, treasuryState.newReserve]),\n );\n tx.lockAssets(\n this.treasuryAddress,\n newTreasuryValue,\n serializedTreasuryDatum,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Minting Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n *\n * @param action \"mint\" | \"burn\"\n * @param amount amount of stablecoin to mint or burn\n * @param owner Optional owner multisig script. Defaults to the wallet's change address.\n * @param destination When minting, where to send the minted stablecoins. When burning, where to send the redeemed assets. A datum can be attached.\n * @param data Optional datum data. Defaults to Data.Void()\n * @returns TxBuilder\n */\n async buildOrderTx({\n action,\n amount,\n owner,\n destination,\n data = Data.Void(),\n }: {\n action: \"mint\" | \"burn\";\n amount: bigint;\n owner?: MultisigScript;\n destination: Destination;\n data?: PlutusData;\n }): Promise {\n const CONVERTION_RATIO = 1n; // Define conversion ratio between stablecoin and reserve token. Should come from datum/settings\n const stableCoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const orderContractAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n\n if (!owner) {\n owner = {\n Signature: {\n key_hash: (await this.blaze.wallet.getChangeAddress())\n .getProps()\n .paymentPart!.hash!.toString(),\n },\n };\n } else {\n const scriptTypes = Object.keys(owner);\n if (scriptTypes.length !== 1 || scriptTypes[0] !== \"Signature\") {\n //TODO: support other multisig types once the backend supports them\n throw new Error(\n \"Only Signature multisig script is currently supported for owner\",\n );\n }\n }\n const orderAction =\n action === \"mint\"\n ? { OMint: { amount } }\n : { ORedeem: { amount: -amount } };\n const orderDatum: OrderDatum = {\n action: orderAction,\n owner,\n destination,\n data,\n };\n const serializedDatum = Data.serialize(V0_3Types.OrderDatum, orderDatum);\n const proxyDatum = await this.getParsedProxyDatum();\n const reserveTokenAssetId = Core.AssetId(\n proxyDatum.parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n\n const tx = this.blaze.newTransaction();\n\n let valueToLock: Core.Value;\n //TODO: include fees and min ada for when the order is executed?\n if (action === \"mint\") {\n // minting stablecoin, lock reserve token\n const reserveTokenAmount = amount * CONVERTION_RATIO;\n\n valueToLock = makeValue(1000000n, [\n reserveTokenAssetId,\n reserveTokenAmount,\n ]);\n } else {\n // burning stablecoin, lock stablecoin\n valueToLock = makeValue(1000000n, [stableCoinAssetId, amount]);\n }\n tx.lockAssets(orderContractAddress, valueToLock, serializedDatum);\n\n return tx;\n }\n /**\n * Build the SignedPayload_ProtocolRedeemer from order inputs.\n * Returns CBOR hex string to be signed and included in SignedMessage.\n */\n async getSignedPayloadFromOrderInputs(\n orderUtxos: Core.TransactionInput[],\n ): Promise {\n if (orderUtxos.length === 0) {\n throw new Error(\"At least one order UTxO is required\");\n }\n\n // Sort inputs for deterministic ordering\n const sortedInputs = sortOrderInputs(orderUtxos);\n\n // Build nonce from first UTxO\n const nonce = buildNonceFromUtxo(sortedInputs[0]!);\n\n // Resolve UTxOs and build request list\n const resolvedUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedInputs);\n const requestList: Request[] = [];\n let actionType: \"OMint\" | \"ORedeem\" | null = null;\n\n for (const utxo of resolvedUtxos) {\n const parsed = this.parseOrderActionForPayload(utxo);\n\n // Validate all orders are the same type\n if (actionType === null) {\n actionType = parsed.actionType;\n } else if (actionType !== parsed.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n requestList.push(\n this.buildRequestFromUtxo(utxo, parsed.amount, parsed.destination),\n );\n }\n\n // Build the action (ProtocolRedeemer)\n const action: V0_3Types.ProtocolRedeemer =\n actionType === \"OMint\"\n ? { Mint: { requests: requestList } }\n : { Burn: { requests: requestList } };\n\n // Build and serialize SignedPayload_ProtocolRedeemer\n const signedPayload: V0_3Types.SignedPayload_ProtocolRedeemer = {\n action,\n nonce,\n };\n const serialized = Data.serialize(\n V0_3Types.SignedPayload_ProtocolRedeemer,\n signedPayload,\n );\n return serialized.toCbor().toString();\n }\n\n /**\n * Parse an order UTxO and extract action type, amount, and destination.\n */\n private parseOrderActionForPayload(utxo: Core.TransactionUnspentOutput): {\n actionType: \"OMint\" | \"ORedeem\";\n amount: bigint;\n destination: V0_3Types.Destination;\n } {\n const datum = utxo.output().datum()?.asInlineData();\n if (!datum) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n\n const parsedDatum = parse(V0_3Types.OrderDatum, datum);\n\n if (\"OMint\" in parsedDatum.action) {\n return {\n actionType: \"OMint\",\n amount: parsedDatum.action.OMint.amount,\n destination: parsedDatum.destination,\n };\n } else if (\"ORedeem\" in parsedDatum.action) {\n return {\n actionType: \"ORedeem\",\n amount: parsedDatum.action.ORedeem.amount,\n destination: parsedDatum.destination,\n };\n }\n\n throw new Error(\"Unknown order action type\");\n }\n\n /**\n * Build a Request from an order UTxO.\n * Serializes the origin (OutputReference) as CBOR to match Aiken's format.\n */\n private buildRequestFromUtxo(\n utxo: Core.TransactionUnspentOutput,\n amount: bigint,\n destination: V0_3Types.Destination,\n ): Request {\n const input = utxo.input();\n const txId = input.transactionId().toString();\n const outputIndex = input.index();\n\n // Serialize origin as PlutusData (matching Aiken's cbor.serialise format)\n // OutputReference struct: { transaction_id: ByteArray, output_index: Int }\n const fieldsList = new Core.PlutusList();\n fieldsList.add(Core.PlutusData.newBytes(Buffer.from(txId, \"hex\")));\n fieldsList.add(Core.PlutusData.newInteger(outputIndex));\n const outputRefData = Core.PlutusData.newConstrPlutusData(\n new Core.ConstrPlutusData(0n, fieldsList),\n );\n\n return {\n origin: outputRefData.toCbor(),\n amount,\n destination,\n };\n }\n\n /**\n * Build a transaction to execute orders.\n * This consumes order UTXOs, validates the signed redeemer, mints/burns stablecoins,\n * and sends the results to the destinations specified in the orders.\n *\n * @param params.orderInputs - The order transaction inputs to execute\n * @param params.signedPayload - The signed payload hex string from getSignedPayloadFromOrderInputs\n * @param params.signatures - Array of signatures from each signer\n * @returns TxBuilder ready to be completed and signed\n */\n async buildExecuteOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n signedPayload: string;\n signatures: SignatureList;\n }): Promise {\n const { orderInputs, signedPayload, signatures } = params;\n\n // Sort and resolve order UTXOs\n const sortedOrderInputs = sortOrderInputs(orderInputs);\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs);\n\n // Parse orders and validate they're all the same type\n const { orderInfos, actionType } = this.parseOrderInfos(orderUtxos);\n\n // Get protocol datum for permissions and registry\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n\n // Get script reference inputs (uses caching from base class)\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n order: this.orderScriptHash,\n treasury: this.treasuryScriptHash,\n });\n const protocolRefInput = refInputs.protocol;\n const orderRefInput = refInputs.order;\n const treasuryRefInput = refInputs.treasury;\n\n if (!protocolRefInput || !orderRefInput || !treasuryRefInput) {\n throw new Error(\n \"Missing reference script inputs. Make sure all scripts are deployed.\",\n );\n }\n\n // Calculate total amount and get asset IDs\n const totalAmount = orderInfos.reduce((sum, info) => sum + info.amount, 0n);\n const reserveTokenAssetId = Core.AssetId(\n parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n // Calculate treasury state and validate for burns\n const treasuryState = await this.calculateTreasuryState(\n totalAmount,\n actionType,\n reserveTokenAssetId,\n );\n\n // Build request_to_outputs mapping (1:1 since outputs are in same order as inputs)\n const requestToOutputs: Record = {};\n for (let i = 0; i < orderInfos.length; i++) {\n requestToOutputs[i] = BigInt(i);\n }\n\n // Serialize redeemers\n const serializedSignedRedeemer = Data.serialize(\n V0_3Types.SignedRedeemer_ExtraProtocolRedeemer,\n {\n extra: { request_to_outputs: requestToOutputs },\n payload: signedPayload,\n signatures: signatures,\n },\n );\n const executeRedeemer = Data.serialize(V0_3Types.OrderRedeemer, \"Execute\");\n\n // Build the transaction\n\n const tx = this.blaze.newTransaction();\n\n // Add order inputs with Execute redeemer\n for (const orderInfo of orderInfos) {\n tx.addInput(orderInfo.utxo, executeRedeemer);\n }\n\n // Add reference inputs\n tx.addReferenceInput(protocolRefInput);\n tx.addReferenceInput(orderRefInput);\n tx.addReferenceInput(proxyUtxo);\n tx.addReferenceInput(treasuryRefInput);\n\n // Add protocol withdrawal with signed redeemer\n const protocolRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: this.protocolScriptHash,\n },\n this.network,\n );\n tx.addWithdrawal(protocolRewardAccount, 0n, serializedSignedRedeemer);\n\n // Mint/burn stablecoins\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Add destination outputs\n this.addDestinationOutputs(\n tx,\n orderInfos,\n actionType,\n stablecoinAssetId,\n reserveTokenAssetId,\n );\n\n // Update treasury\n this.updateTreasury(tx, treasuryState, totalAmount, reserveTokenAssetId);\n\n // Provide the mint proxy script for minting\n tx.provideScript(this.mintProxyScript);\n\n return tx;\n }\n\n /**\n * Build a transaction to cancel orders.\n * This returns the locked assets to the specified destination address.\n * The transaction must be signed by the owner(s) specified in each order's datum.\n *\n * @param params.orderInputs - The order transaction inputs to cancel\n * @param params.destination - Optional destination address. Defaults to the wallet's change address.\n * @returns TxBuilder ready to be completed and signed\n */\n async buildCancelOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n destination?: Core.Address;\n versionHint?: TProtocolVersion; // version of the orders to cancel. Optional, only to ensure correct datum parsing.\n }): Promise {\n const { orderInputs, destination, versionHint } = params;\n\n // Resolve order UTXOs\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(orderInputs);\n\n if (orderUtxos.length === 0) {\n throw new Error(\"No orders to cancel\");\n }\n\n const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput\n ? new Map([\n [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput],\n ])\n : undefined;\n\n const orderRefInputs = await resolveOrderReferenceInputs(\n this.blaze,\n orderUtxos,\n cachedOrderRefs,\n this.scriptDeploymentAddress,\n );\n\n // Build the cancel redeemer\n const cancelRedeemer = Data.serialize(V0_3Types.OrderRedeemer, \"Cancel\");\n\n // Determine destination address\n const destAddress =\n destination ?? (await this.blaze.wallet.getChangeAddress());\n\n // Build the transaction\n\n const tx = this.blaze.newTransaction();\n\n for (const orderRefInput of orderRefInputs.values()) {\n tx.addReferenceInput(orderRefInput);\n }\n\n // cache current version of order script reference input\n const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash);\n if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) {\n this.cachedReferenceInputs.orderRefInput = currentOrderRefInput;\n }\n\n // Collect all required signers from order owners\n const requiredSigners = new Set();\n\n // Process each order\n for (const utxo of orderUtxos) {\n const owner = await parseCancelOwner(utxo, versionHint);\n\n // Extract required signers from the owner's MultisigScript\n for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) {\n requiredSigners.add(keyHash);\n }\n\n // Add order input with Cancel redeemer\n tx.addInput(utxo, cancelRedeemer);\n\n // Return the locked assets to destination\n const outputValue = utxo.output().amount();\n addDirectOutput(tx, destAddress, outputValue);\n }\n\n // Add all required signers to the transaction\n for (const keyHash of requiredSigners) {\n tx.addRequiredSigner(Ed25519KeyHashHex(keyHash));\n }\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations: Withdraw and Deposit\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to withdraw reserve tokens from the treasury.\n * The transaction must be signed by the authorized withdraw permission signers.\n *\n * @param params.requests - Array of withdraw requests with destinations and amounts\n * @param params.signedPayload - The signed payload hex string from getSignedPayloadForWithdraw\n * @param params.signatures - Array of KeySignature tuples from authorized signers\n * @returns TxBuilder ready to be completed and signed\n */\n /**\n * Build a withdraw transaction to remove reserve from the treasury.\n * @param amount Amount to withdraw from treasury\n * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address\n */\n async buildWithdrawTx(\n assetAmount: AssetAmount,\n receiverAddress?: string,\n ): Promise {\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: this.treasuryScriptHash,\n });\n\n const receiver = receiverAddress\n ? Core.Address.fromBech32(receiverAddress)\n : await this.blaze.wallet.getChangeAddress();\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum();\n\n const serializedPayload = getSignedPayloadForWithdraw(\n assetAmount.amount,\n treasuryUtxo!,\n );\n // Build SignedRedeemer_ExtraProtocolRedeemer\n const serializedSignedRedeemer = Data.serialize(\n V0_3Types.SignedRedeemer_ExtraProtocolRedeemer,\n {\n extra: { request_to_outputs: { 0: 0n } },\n payload: serializedPayload,\n signatures: [],\n },\n );\n\n const rewardAccount = this.getProtocolRewardAccount();\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.withdraw_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n const reserveToken = AssetId(\n assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(\n Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury),\n ),\n );\n\n const inititalTreasuryValue = treasuryUtxo.output().amount();\n const withdrawValue = makeValue(0n, [reserveToken, -assetAmount.amount]);\n const newTreasuryValue = Value.merge(inititalTreasuryValue, withdrawValue);\n\n const tx = this.blaze\n .newTransaction()\n .addWithdrawal(rewardAccount, 0n, serializedSignedRedeemer)\n .addReferenceInput(proxyUtxo)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Data.Void());\n addDirectOutput(\n tx,\n receiver,\n makeValue(0n, [reserveToken, assetAmount.amount]),\n );\n tx.lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum);\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n return tx;\n }\n\n async buildDepositTx(assetAmount: AssetAmount): Promise {\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: this.treasuryScriptHash,\n });\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum();\n\n const serializedPayload = getSignedPayloadForDeposit(\n assetAmount.amount,\n treasuryUtxo!,\n );\n // Build SignedRedeemer_ExtraProtocolRedeemer\n const serializedSignedRedeemer = Data.serialize(\n V0_3Types.SignedRedeemer_ExtraProtocolRedeemer,\n {\n extra: { request_to_outputs: { 0: 0n } },\n payload: serializedPayload,\n signatures: [],\n },\n );\n\n const rewardAccount = this.getProtocolRewardAccount();\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.deposit_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n const reserveToken = AssetId(\n assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(\n Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury),\n ),\n );\n\n const inititalTreasuryValue = treasuryUtxo.output().amount();\n const depositValue = makeValue(0n, [reserveToken, assetAmount.amount]);\n const newTreasuryValue = Value.merge(inititalTreasuryValue, depositValue);\n\n const tx = this.blaze\n .newTransaction()\n .addWithdrawal(rewardAccount, 0n, serializedSignedRedeemer)\n .addReferenceInput(proxyUtxo)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Data.Void())\n .lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum);\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n return tx;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v0_4/index.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_4/index.js new file mode 100644 index 0000000000..b45eb08dab --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_4/index.js @@ -0,0 +1,2117 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.RealfiSDKV0_4 = void 0; +var _core = require("@blaze-cardano/core"); +var _data = _interopRequireWildcard(require("@blaze-cardano/data")); +var Data = _data; +var _sdk = require("@blaze-cardano/sdk"); +var _index = require("../../generated-types/index.js"); +var _index2 = require("../../generated-types/v0_1/index.js"); +var _index3 = require("../shared/index.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t7 in e) "default" !== _t7 && {}.hasOwnProperty.call(e, _t7) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t7)) && (i.get || i.set) ? o(f, _t7, i) : f[_t7] = e[_t7]); return f; })(e, t); } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } +function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } +function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); } +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); } +function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); } +function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +// ───────────────────────────────────────────────────────────────────────────── +// Types +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Parsed order information extracted from a UTXO. + */ + +var MIN_LOVELACE = 2000000n; + +/** + * Floor division for BigInt (rounds toward negative infinity). + * JavaScript BigInt `/` truncates toward zero, but Aiken (Plutus) + * uses floor division. These differ for negative dividends. + */ +/** + * Extract the requests list from a signed payload action, regardless of action type. + * Both TreasuryRequest and Request have `origin: { transaction_id, output_index }`. + */ +function getRequestsFromAction(action) { + if ("Mint" in action) return action.Mint.requests; + if ("Burn" in action) return action.Burn.requests; + if ("Withdraw" in action) return action.Withdraw.requests; + if ("Deposit" in action) return action.Deposit.requests; + if ("Stake" in action) return action.Stake.requests; + if ("Unstake" in action) return action.Unstake.requests; + throw new Error("Unknown action type in signed payload"); +} +function floorDiv(a, b) { + var q = a / b; + // Adjust if signs differ and there's a remainder + if ((a ^ b) < 0n && q * b !== a) { + return q - 1n; + } + return q; +} + +/** + * Calculate yield split between staked and unstaked portions. + * Matches on-chain deposit.ak logic: staked_yield_share = total_yield * vault_usdr / treasury_circulating + */ +function calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating) { + var stakedYieldShare = treasuryCirculating > 0n ? floorDiv(totalYield * vaultUSDr, treasuryCirculating) : 0n; + var unstakedYieldShare = totalYield - stakedYieldShare; + return { + stakedYieldShare: stakedYieldShare, + unstakedYieldShare: unstakedYieldShare + }; +} +function toSpendOrderingKey(input) { + return "".concat(input.transactionId().toString()).concat(input.index().toString()); +} + +// eslint-disable-next-line @typescript-eslint/naming-convention +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── +/** + * V0_4 SDK implementation. + * + * Extends the protocol with staking (USDr->sUSDr), unstaking (sUSDr->USDr), + * multi-reserve assets, deposit with interest splitting, and index-based optimization. + * All order types (mint, burn, deposit, withdraw, stake, unstake) are request-based. + */ +var RealfiSDKV0_4 = exports.RealfiSDKV0_4 = /*#__PURE__*/function (_RealfiSDKBase) { + function RealfiSDKV0_4(blaze, params, scripts, cachedReferenceInputs) { + var _this; + _classCallCheck(this, RealfiSDKV0_4); + _this = _callSuper(this, RealfiSDKV0_4, [blaze, { + version: "V0_4", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace: params.enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource + }, cachedReferenceInputs]); + _defineProperty(_this, "version", "V0_4"); + // Script hashes and policy IDs + _defineProperty(_this, "stablecoinPolicyId", void 0); + _defineProperty(_this, "oneShotPolicyId", void 0); + _defineProperty(_this, "protocolScriptHash", void 0); + _defineProperty(_this, "treasuryScriptHash", void 0); + _defineProperty(_this, "treasuryNFTAssetId", void 0); + _defineProperty(_this, "orderScriptHash", void 0); + _defineProperty(_this, "orderScriptAddress", void 0); + _defineProperty(_this, "treasuryAddress", void 0); + _defineProperty(_this, "stakingVaultScriptHash", void 0); + _defineProperty(_this, "stakingVaultAddress", void 0); + _defineProperty(_this, "stakingVaultNFTAssetId", void 0); + _defineProperty(_this, "sUSDrAssetNameHex", void 0); + // Scripts + _defineProperty(_this, "oneShotScript", void 0); + _defineProperty(_this, "protocolScript", void 0); + _defineProperty(_this, "mintProxyScript", void 0); + _defineProperty(_this, "treasuryScript", void 0); + _defineProperty(_this, "orderScript", void 0); + _defineProperty(_this, "stakingVaultScript", void 0); + _this.sUSDrAssetNameHex = params.sUSDrAssetNameHex; + _this.oneShotScript = scripts.oneShotScript; + _this.protocolScript = scripts.protocolScript; + _this.mintProxyScript = scripts.mintProxyScript; + _this.treasuryScript = scripts.treasuryScript; + _this.orderScript = scripts.orderScript; + _this.stakingVaultScript = scripts.stakingVaultScript; + _this.oneShotPolicyId = _sdk.Core.PolicyId(_this.oneShotScript.hash()); + _this.protocolScriptHash = _this.protocolScript.hash(); + _this.stablecoinPolicyId = _sdk.Core.PolicyId(_this.mintProxyScript.hash()); + _this.treasuryScriptHash = _this.treasuryScript.hash(); + _this.orderScriptHash = _this.orderScript.hash(); + _this.stakingVaultScriptHash = _this.stakingVaultScript.hash(); + _this.treasuryAddress = (0, _core.addressFromValidator)(_this.network, _this.treasuryScript); + _this.orderScriptAddress = (0, _core.addressFromValidator)(_this.network, _this.orderScript); + _this.stakingVaultAddress = (0, _core.addressFromValidator)(_this.network, _this.stakingVaultScript); + + // Treasury NFT: policy = treasury script hash, name = "treasury" + var treasuryAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("treasury"))); + _this.treasuryNFTAssetId = _sdk.Core.AssetId(_this.treasuryScriptHash + treasuryAssetName.toString()); + + // Staking vault NFT: policy = staking vault script hash, name = "staking_vault" + var vaultAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("staking_vault"))); + _this.stakingVaultNFTAssetId = _sdk.Core.AssetId(_this.stakingVaultScriptHash + vaultAssetName.toString()); + return _this; + } + + /** + * Create a V0_4 SDK instance. + */ + _inherits(RealfiSDKV0_4, _RealfiSDKBase); + return _createClass(RealfiSDKV0_4, [{ + key: "mintTreasuryNFT", + value: // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint the treasury NFT. + */ + function () { + var _mintTreasuryNFT = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(treasuryBootstrapUtxo) { + var initialDatum, + treasuryPolicyId, + treasuryAssetName, + datum, + tx, + _args = arguments; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + initialDatum = _args.length > 1 && _args[1] !== undefined ? _args[1] : { + circulating_supply: 0n + }; + treasuryPolicyId = _sdk.Core.PolicyId(this.treasuryScriptHash); + treasuryAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("treasury"))); + datum = Data.serialize(_index2.TreasuryDatum, initialDatum); + _context.n = 1; + return this.blaze.newTransaction().addInput(treasuryBootstrapUtxo).addMint(treasuryPolicyId, new Map([[treasuryAssetName, 1n]]), Data.Void()).lockAssets(this.treasuryAddress, (0, _sdk.makeValue)(10000000n, [this.treasuryNFTAssetId, 1n]), datum).provideScript(this.treasuryScript); + case 1: + tx = _context.v; + return _context.a(2, { + tx: tx, + nftAssetId: this.treasuryNFTAssetId + }); + } + }, _callee, this); + })); + function mintTreasuryNFT(_x) { + return _mintTreasuryNFT.apply(this, arguments); + } + return mintTreasuryNFT; + }() + }, { + key: "deployTreasury", + value: function () { + var _deployTreasury = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() { + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + return _context2.a(2, (0, _index3.deployScript)(this.blaze, this.treasuryScript, this.scriptDeploymentAddress)); + } + }, _callee2, this); + })); + function deployTreasury() { + return _deployTreasury.apply(this, arguments); + } + return deployTreasury; + }() + }, { + key: "deployOrderContract", + value: function () { + var _deployOrderContract = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() { + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + return _context3.a(2, (0, _index3.deployScript)(this.blaze, this.orderScript, this.scriptDeploymentAddress)); + } + }, _callee3, this); + })); + function deployOrderContract() { + return _deployOrderContract.apply(this, arguments); + } + return deployOrderContract; + }() + }, { + key: "getTreasuryDatum", + value: function () { + var _getTreasuryDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() { + var _yield$getDatumFromNF, treasuryUtxo, treasuryDatum, parsedTreasuryDatum; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.n) { + case 0: + _context4.n = 1; + return (0, _index3.getDatumFromNFT)(this.blaze, this.treasuryNFTAssetId, _index2.TreasuryDatum); + case 1: + _yield$getDatumFromNF = _context4.v; + treasuryUtxo = _yield$getDatumFromNF.utxo; + treasuryDatum = _yield$getDatumFromNF.datum; + parsedTreasuryDatum = _yield$getDatumFromNF.parsedDatum; + if (treasuryUtxo) { + _context4.n = 2; + break; + } + throw new Error("No UTXO found with the treasury NFT"); + case 2: + if (treasuryDatum) { + _context4.n = 3; + break; + } + throw new Error("No treasury datum found"); + case 3: + return _context4.a(2, { + treasuryUtxo: treasuryUtxo, + treasuryDatum: treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum + }); + } + }, _callee4, this); + })); + function getTreasuryDatum() { + return _getTreasuryDatum.apply(this, arguments); + } + return getTreasuryDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // Staking Vault Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint the staking vault NFT and create initial vault UTxO. + */ + }, { + key: "mintStakingVaultNFT", + value: function () { + var _mintStakingVaultNFT = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(stakingVaultBootstrapUtxo) { + var initialDatum, + vaultPolicyId, + vaultAssetName, + datum, + tx, + _args5 = arguments; + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + initialDatum = _args5.length > 1 && _args5[1] !== undefined ? _args5[1] : { + circulating_susdr: 0n + }; + vaultPolicyId = _sdk.Core.PolicyId(this.stakingVaultScriptHash); + vaultAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("staking_vault"))); + datum = Data.serialize(_index.V0_4Types.VaultDatum, initialDatum); + _context5.n = 1; + return this.blaze.newTransaction().addInput(stakingVaultBootstrapUtxo).addMint(vaultPolicyId, new Map([[vaultAssetName, 1n]]), Data.Void()).lockAssets(this.stakingVaultAddress, (0, _sdk.makeValue)(10000000n, [this.stakingVaultNFTAssetId, 1n]), datum).provideScript(this.stakingVaultScript); + case 1: + tx = _context5.v; + return _context5.a(2, { + tx: tx, + nftAssetId: this.stakingVaultNFTAssetId + }); + } + }, _callee5, this); + })); + function mintStakingVaultNFT(_x2) { + return _mintStakingVaultNFT.apply(this, arguments); + } + return mintStakingVaultNFT; + }() + }, { + key: "deployStakingVault", + value: function () { + var _deployStakingVault = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() { + return _regenerator().w(function (_context6) { + while (1) switch (_context6.n) { + case 0: + return _context6.a(2, (0, _index3.deployScript)(this.blaze, this.stakingVaultScript, this.scriptDeploymentAddress)); + } + }, _callee6, this); + })); + function deployStakingVault() { + return _deployStakingVault.apply(this, arguments); + } + return deployStakingVault; + }() /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */ + }, { + key: "getSusdrAssetId", + value: function getSusdrAssetId() { + return _sdk.Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + } + }, { + key: "getVaultDatum", + value: function () { + var _getVaultDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() { + var _yield$getDatumFromNF2, vaultUtxo, vaultDatum, parsedVaultDatum; + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + _context7.n = 1; + return (0, _index3.getDatumFromNFT)(this.blaze, this.stakingVaultNFTAssetId, _index.V0_4Types.VaultDatum); + case 1: + _yield$getDatumFromNF2 = _context7.v; + vaultUtxo = _yield$getDatumFromNF2.utxo; + vaultDatum = _yield$getDatumFromNF2.datum; + parsedVaultDatum = _yield$getDatumFromNF2.parsedDatum; + if (vaultUtxo) { + _context7.n = 2; + break; + } + throw new Error("No UTXO found with the staking vault NFT"); + case 2: + if (vaultDatum) { + _context7.n = 3; + break; + } + throw new Error("No vault datum found"); + case 3: + return _context7.a(2, { + vaultUtxo: vaultUtxo, + vaultDatum: vaultDatum, + parsedVaultDatum: parsedVaultDatum + }); + } + }, _callee7, this); + })); + function getVaultDatum() { + return _getVaultDatum.apply(this, arguments); + } + return getVaultDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + }, { + key: "mintOneShot", + value: function () { + var _mintOneShot = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(receiverAddress, datum) { + var utxo, serializedDatum, baseTx, tx; + return _regenerator().w(function (_context8) { + while (1) switch (_context8.n) { + case 0: + _context8.n = 1; + return this.resolveBootstrapUtxo(); + case 1: + utxo = _context8.v; + serializedDatum = Data.serialize(_index.V0_4Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings + }); + baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[_sdk.Core.AssetName(""), 1n]]), Data.Void()); + tx = (0, _index3.lockOrPayAssets)(baseTx, receiverAddress, (0, _sdk.makeValue)(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return _context8.a(2, { + tx: tx, + policyId: this.oneShotPolicyId + }); + } + }, _callee8, this); + })); + function mintOneShot(_x3, _x4) { + return _mintOneShot.apply(this, arguments); + } + return mintOneShot; + }() + }, { + key: "updateOneShotDatum", + value: function () { + var _updateOneShotDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(receiverAddress, newDatum) { + var oneshotUtxo, serializedDatum; + return _regenerator().w(function (_context9) { + while (1) switch (_context9.n) { + case 0: + _context9.n = 1; + return this.blaze.provider.getUnspentOutputByNFT(_sdk.Core.AssetId(this.oneShotPolicyId)); + case 1: + oneshotUtxo = _context9.v; + if (oneshotUtxo) { + _context9.n = 2; + break; + } + throw new Error("No UTXO found with the one-shot NFT"); + case 2: + serializedDatum = Data.serialize(_index.V0_4Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings + }); + return _context9.a(2, (0, _index3.lockOrPayAssets)(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, (0, _sdk.makeValue)(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum)); + } + }, _callee9, this); + })); + function updateOneShotDatum(_x5, _x6) { + return _updateOneShotDatum.apply(this, arguments); + } + return updateOneShotDatum; + }() + }, { + key: "getParsedProxyDatum", + value: function () { + var _getParsedProxyDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0() { + var _yield$this$getRawPro, proxyUtxo, proxyDatum, parsedProxyDatum, result; + return _regenerator().w(function (_context0) { + while (1) switch (_context0.n) { + case 0: + if (!this.cachedProxyDatumResult) { + _context0.n = 1; + break; + } + return _context0.a(2, this.cachedProxyDatumResult); + case 1: + _context0.n = 2; + return this.getRawProxyDatum(); + case 2: + _yield$this$getRawPro = _context0.v; + proxyUtxo = _yield$this$getRawPro.proxyUtxo; + proxyDatum = _yield$this$getRawPro.proxyDatum; + parsedProxyDatum = (0, _data.parse)(_index.V0_4Types.ProxyDatum, proxyDatum); + result = { + proxyUtxo: proxyUtxo, + proxyDatum: proxyDatum, + parsedProxyDatum: parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return _context0.a(2, result); + } + }, _callee0, this); + })); + function getParsedProxyDatum() { + return _getParsedProxyDatum.apply(this, arguments); + } + return getParsedProxyDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // Order Builder Methods (6 separate methods, shared _buildOrderTx helper) + // ───────────────────────────────────────────────────────────────────────────── + /** + * Internal helper to build an order transaction. + */ + }, { + key: "_buildOrderTx", + value: function () { + var _buildOrderTx2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(params) { + var _params$data; + var orderContractAddress, owner, _addressProps$delegat, _addressProps$delegat2, _addressProps$payment, addressProps, keyHash, orderDatum, serializedDatum, tx; + return _regenerator().w(function (_context1) { + while (1) switch (_context1.n) { + case 0: + orderContractAddress = (0, _core.addressFromValidator)(this.network, this.orderScript); + owner = params.owner; + if (owner) { + _context1.n = 3; + break; + } + _context1.n = 1; + return this.blaze.wallet.getChangeAddress(); + case 1: + addressProps = _context1.v.getProps(); + keyHash = (_addressProps$delegat = (_addressProps$delegat2 = addressProps.delegationPart) === null || _addressProps$delegat2 === void 0 ? void 0 : _addressProps$delegat2.hash) !== null && _addressProps$delegat !== void 0 ? _addressProps$delegat : (_addressProps$payment = addressProps.paymentPart) === null || _addressProps$payment === void 0 ? void 0 : _addressProps$payment.hash; + if (keyHash) { + _context1.n = 2; + break; + } + throw new Error("Could not derive owner key hash from wallet address"); + case 2: + owner = { + Signature: { + key_hash: keyHash.toString() + } + }; + case 3: + orderDatum = { + action: params.action, + owner: owner, + destination: params.destination, + data: (_params$data = params.data) !== null && _params$data !== void 0 ? _params$data : Data.Void() + }; + serializedDatum = Data.serialize(_index.V0_4Types.OrderDatum, orderDatum); + tx = this.newOrderTransaction(params.extraLabels); + tx.lockAssets(orderContractAddress, params.valueToLock, serializedDatum); + return _context1.a(2, tx); + } + }, _callee1, this); + })); + function _buildOrderTx(_x7) { + return _buildOrderTx2.apply(this, arguments); + } + return _buildOrderTx; + }() + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + }, { + key: "buildMintOrderTx", + value: (function () { + var _buildMintOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(params) { + var reserveAssetId, settings, ra, reserveAmount; + return _regenerator().w(function (_context10) { + while (1) switch (_context10.n) { + case 0: + if (!(params.amount <= 0n)) { + _context10.n = 1; + break; + } + throw new Error("Mint amount must be positive"); + case 1: + reserveAssetId = _sdk.Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); // Convert USDr amount to reserve amount using ceiling division + // to ensure enough reserve is locked for on-chain validation + _context10.n = 2; + return this.getVersionSettings(); + case 2: + settings = _context10.v; + ra = (0, _index3.findReserveAsset)(settings, params.reserveAsset); + reserveAmount = (0, _index3.usdrToReserveCeil)(params.amount, ra); + return _context10.a(2, this._buildOrderTx({ + action: { + OMint: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE, [reserveAssetId, reserveAmount]), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee10, this); + })); + function buildMintOrderTx(_x8) { + return _buildMintOrderTx.apply(this, arguments); + } + return buildMintOrderTx; + }() + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + ) + }, { + key: "buildRedeemOrderTx", + value: (function () { + var _buildRedeemOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(params) { + var settings, stablecoinAssetId; + return _regenerator().w(function (_context11) { + while (1) switch (_context11.n) { + case 0: + if (!(params.amount <= 0n)) { + _context11.n = 1; + break; + } + throw new Error("Redeem amount must be positive"); + case 1: + _context11.n = 2; + return this.getVersionSettings(); + case 2: + settings = _context11.v; + (0, _index3.findReserveAsset)(settings, params.reserveAsset); + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + return _context11.a(2, this._buildOrderTx({ + action: { + ORedeem: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee11, this); + })); + function buildRedeemOrderTx(_x9) { + return _buildRedeemOrderTx.apply(this, arguments); + } + return buildRedeemOrderTx; + }() + /** + * Build a deposit order: lock reserve tokens, request treasury deposit. + */ + ) + }, { + key: "buildDepositOrderTx", + value: (function () { + var _buildDepositOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee12(params) { + var settings, ra, reserveAssetId, valueToLock, totalUSDrBacking, reserveAmount, _vaultValue$multiasse, _vaultValue$multiasse2, principalReserve, stablecoinAssetId, _yield$this$getTreasu, parsedTreasuryDatum, vaultUtxo, vaultValue, vaultUSDr, treasuryCirculating, _calculateYieldShares, unstakedYieldShare; + return _regenerator().w(function (_context12) { + while (1) switch (_context12.n) { + case 0: + if (!(params.principal < 0n)) { + _context12.n = 1; + break; + } + throw new Error("Deposit principal must be non-negative"); + case 1: + if (!(params.principal === 0n && params["yield"] === 0n)) { + _context12.n = 2; + break; + } + throw new Error("Deposit must have non-zero principal or yield"); + case 2: + _context12.n = 3; + return this.getVersionSettings(); + case 3: + settings = _context12.v; + ra = (0, _index3.findReserveAsset)(settings, params.reserveAsset); + reserveAssetId = _sdk.Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); + if (!(params["yield"] >= 0n)) { + _context12.n = 4; + break; + } + // POSITIVE YIELD: need reserve backing for BOTH principal AND yield. + // Contract validates: reserve_to_usdr(treasury_delta) >= principal + yield + // So we must lock: usdrToReserveCeil(principal + yield) reserve tokens + totalUSDrBacking = params.principal + params["yield"]; + if (totalUSDrBacking > 0n) { + reserveAmount = (0, _index3.usdrToReserveCeil)(totalUSDrBacking, ra); + valueToLock = (0, _sdk.makeValue)(MIN_LOVELACE, [reserveAssetId, reserveAmount]); + } else { + valueToLock = (0, _sdk.makeValue)(MIN_LOVELACE); + } + _context12.n = 7; + break; + case 4: + // NEGATIVE YIELD: lock principal (in reserve) + unstaked yield share (in USDr). + // The staked share comes from the vault (validated on-chain via vault USDr change). + principalReserve = params.principal > 0n ? (0, _index3.usdrToReserveCeil)(params.principal, ra) : 0n; + valueToLock = principalReserve > 0n ? (0, _sdk.makeValue)(MIN_LOVELACE, [reserveAssetId, principalReserve]) : (0, _sdk.makeValue)(MIN_LOVELACE); + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); // Fetch current state to calculate yield split + _context12.n = 5; + return this.getTreasuryDatum(); + case 5: + _yield$this$getTreasu = _context12.v; + parsedTreasuryDatum = _yield$this$getTreasu.parsedTreasuryDatum; + _context12.n = 6; + return this.getVaultDatum(); + case 6: + vaultUtxo = _context12.v.vaultUtxo; + vaultValue = vaultUtxo.output().amount(); + vaultUSDr = (_vaultValue$multiasse = (_vaultValue$multiasse2 = vaultValue.multiasset()) === null || _vaultValue$multiasse2 === void 0 ? void 0 : _vaultValue$multiasse2.get(stablecoinAssetId)) !== null && _vaultValue$multiasse !== void 0 ? _vaultValue$multiasse : 0n; + treasuryCirculating = parsedTreasuryDatum.circulating_supply; + _calculateYieldShares = calculateYieldShares(params["yield"], vaultUSDr, treasuryCirculating), unstakedYieldShare = _calculateYieldShares.unstakedYieldShare; // Lock only the unstaked portion (negated since unstakedYieldShare is negative) + if (unstakedYieldShare < 0n) { + valueToLock = _sdk.Value.merge(valueToLock, (0, _sdk.makeValue)(0n, [stablecoinAssetId, -unstakedYieldShare])); + } + case 7: + return _context12.a(2, this._buildOrderTx({ + action: { + ODeposit: { + principal: params.principal, + "yield": params["yield"], + reserve_asset: params.reserveAsset + } + }, + valueToLock: valueToLock, + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee12, this); + })); + function buildDepositOrderTx(_x0) { + return _buildDepositOrderTx.apply(this, arguments); + } + return buildDepositOrderTx; + }() + /** + * Build a withdraw order: lock min ADA, request reserve token withdrawal. + */ + ) + }, { + key: "buildWithdrawOrderTx", + value: (function () { + var _buildWithdrawOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee13(params) { + var settings; + return _regenerator().w(function (_context13) { + while (1) switch (_context13.n) { + case 0: + if (!(params.amount <= 0n)) { + _context13.n = 1; + break; + } + throw new Error("Withdraw amount must be positive"); + case 1: + _context13.n = 2; + return this.getVersionSettings(); + case 2: + settings = _context13.v; + (0, _index3.findReserveAsset)(settings, params.reserveAsset); + return _context13.a(2, this._buildOrderTx({ + action: { + OWithdraw: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee13, this); + })); + function buildWithdrawOrderTx(_x1) { + return _buildWithdrawOrderTx.apply(this, arguments); + } + return buildWithdrawOrderTx; + }() + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + ) + }, { + key: "buildStakeOrderTx", + value: (function () { + var _buildStakeOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee14(params) { + var stablecoinAssetId; + return _regenerator().w(function (_context14) { + while (1) switch (_context14.n) { + case 0: + if (!(params.amount <= 0n)) { + _context14.n = 1; + break; + } + throw new Error("Stake amount must be positive"); + case 1: + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + return _context14.a(2, this._buildOrderTx({ + action: { + OStake: { + amount: params.amount + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee14, this); + })); + function buildStakeOrderTx(_x10) { + return _buildStakeOrderTx.apply(this, arguments); + } + return buildStakeOrderTx; + }() + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockTime) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockTime - Slot number after which the user can spend the released USDr + */ + ) + }, { + key: "buildUnstakeOrderTx", + value: (function () { + var _buildUnstakeOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee15(params) { + var sUSDrAssetId, timelockDestination, extraLabels; + return _regenerator().w(function (_context15) { + while (1) switch (_context15.n) { + case 0: + if (!(params.amount <= 0n)) { + _context15.n = 1; + break; + } + throw new Error("Unstake amount must be positive"); + case 1: + sUSDrAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); // Build the timelock native script destination from the user's key hash + timelockDestination = (0, _index3.buildTimelockDestination)(params.destination, params.unlockSlot); + extraLabels = new Map([[_index3.UNSTAKE_METADATA_LABEL, (0, _index3.buildUnstakeMetadatum)(params.destination, params.unlockSlot)]]); + return _context15.a(2, this._buildOrderTx({ + action: { + OUnstake: { + amount: params.amount + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE, [sUSDrAssetId, params.amount]), + owner: params.owner, + destination: timelockDestination, + data: params.data, + extraLabels: extraLabels + })); + } + }, _callee15, this); + })); + function buildUnstakeOrderTx(_x11) { + return _buildUnstakeOrderTx.apply(this, arguments); + } + return buildUnstakeOrderTx; + }() + /** + * Build a timelock Destination from a user's destination and unlock time. + * + * Creates a native script: AllOf { Signature(userKeyHash), After(unlockTime) } + * and returns a Destination pointing to that script's address. + */ + ) + }, { + key: "getSignedPayloadFromOrderInputs", + value: // ───────────────────────────────────────────────────────────────────────────── + // Signed Payload and Signing + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build the V0_4 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + * + * V0.4 contract requires signing the blake2b_256 hash of the payload, + * not the raw CBOR like V0.3. + */ + function () { + var _getSignedPayloadFromOrderInputs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee16(orderInputs) { + var sortedInputs, nonce, resolvedUtxos, actionType, treasuryRequests, requests, _iterator, _step, _utxo$output$datum, utxo, datumData, datum, origin, parsed, _parsed$yield, action, payload, serialized, signedPayload, payloadHash, _t, _t2; + return _regenerator().w(function (_context16) { + while (1) switch (_context16.p = _context16.n) { + case 0: + if (!(orderInputs.length === 0)) { + _context16.n = 1; + break; + } + throw new Error("At least one order input is required"); + case 1: + sortedInputs = (0, _index3.sortOrderInputs)(orderInputs); + nonce = (0, _index3.buildNonceFromUtxo)(sortedInputs[0]); + _context16.n = 2; + return this.blaze.provider.resolveUnspentOutputs(sortedInputs); + case 2: + resolvedUtxos = _context16.v; + actionType = null; + treasuryRequests = []; + requests = []; + _iterator = _createForOfIteratorHelper(resolvedUtxos); + _context16.p = 3; + _iterator.s(); + case 4: + if ((_step = _iterator.n()).done) { + _context16.n = 9; + break; + } + utxo = _step.value; + datumData = (_utxo$output$datum = utxo.output().datum()) === null || _utxo$output$datum === void 0 ? void 0 : _utxo$output$datum.asInlineData(); + if (datumData) { + _context16.n = 5; + break; + } + throw new Error("Order UTXO has no inline datum"); + case 5: + datum = (0, _data.parse)(_index.V0_4Types.OrderDatum, datumData); + origin = { + transaction_id: utxo.input().transactionId().toString(), + output_index: utxo.input().index() + }; + parsed = this.classifyOrderAction(datum); + if (!(actionType === null)) { + _context16.n = 6; + break; + } + actionType = parsed.actionType; + _context16.n = 7; + break; + case 6: + if (!(actionType !== parsed.actionType)) { + _context16.n = 7; + break; + } + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + case 7: + if (parsed.isTreasuryAction) { + treasuryRequests.push({ + destination: datum.destination, + amount: parsed.amount, + "yield": (_parsed$yield = parsed["yield"]) !== null && _parsed$yield !== void 0 ? _parsed$yield : 0n, + origin: origin, + reserve_asset: parsed.reserveAsset + }); + } else { + requests.push({ + destination: datum.destination, + amount: parsed.amount, + origin: origin + }); + } + case 8: + _context16.n = 4; + break; + case 9: + _context16.n = 11; + break; + case 10: + _context16.p = 10; + _t = _context16.v; + _iterator.e(_t); + case 11: + _context16.p = 11; + _iterator.f(); + return _context16.f(11); + case 12: + _t2 = actionType; + _context16.n = _t2 === "mint" ? 13 : _t2 === "burn" ? 14 : _t2 === "withdraw" ? 15 : _t2 === "deposit" ? 16 : _t2 === "stake" ? 17 : _t2 === "unstake" ? 18 : 19; + break; + case 13: + action = { + Mint: { + requests: treasuryRequests + } + }; + return _context16.a(3, 20); + case 14: + action = { + Burn: { + requests: treasuryRequests + } + }; + return _context16.a(3, 20); + case 15: + action = { + Withdraw: { + requests: treasuryRequests + } + }; + return _context16.a(3, 20); + case 16: + action = { + Deposit: { + requests: treasuryRequests + } + }; + return _context16.a(3, 20); + case 17: + action = { + Stake: { + requests: requests + } + }; + return _context16.a(3, 20); + case 18: + action = { + Unstake: { + requests: requests + } + }; + return _context16.a(3, 20); + case 19: + throw new Error("No orders to process"); + case 20: + payload = { + action: action, + nonce: nonce + }; + serialized = Data.serialize(_index.V0_4Types.SignedPayload_ProtocolRedeemer, payload); + signedPayload = serialized.toCbor().toString(); + payloadHash = (0, _core.blake2b_256)((0, _core.HexBlob)(signedPayload)); + return _context16.a(2, { + signedPayload: signedPayload, + payloadHash: payloadHash + }); + } + }, _callee16, this, [[3, 10, 11, 12]]); + })); + function getSignedPayloadFromOrderInputs(_x12) { + return _getSignedPayloadFromOrderInputs.apply(this, arguments); + } + return getSignedPayloadFromOrderInputs; + }() // ───────────────────────────────────────────────────────────────────────────── + // Execute Orders + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build a transaction to execute orders. + * + * Handles all 6 action types: mint, burn, deposit, withdraw, stake, unstake. + * The signedPayload is a CBOR hex string (matching V0.3 style). + * + * NOTE: All wallet fee inputs are pre-added to the transaction so that + * input indices for the ExtraProtocolRedeemer are stable. Coin selection + * during complete() should be a no-op since all wallet UTxOs are already + * included, but it cannot be disabled because Blaze also uses that phase + * to prepare collateral. + */ + }, { + key: "buildExecuteOrdersTx", + value: function () { + var _buildExecuteOrdersTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee17(params) { + var orderInputs, signedPayloadCbor, signatures, signedPayload, sortedOrderInputs, orderUtxos, orderInfos, actionType, _yield$this$getParsed, proxyUtxo, parsedProxyDatum, settings, needsTreasury, needsVault, scriptHashesNeeded, refInputs, treasuryUtxo, parsedTreasuryDatum, treasuryResult, vaultUtxo, parsedVaultDatum, vaultResult, walletUtxos, excludedInputIds, utxoKey, _iterator2, _step2, orderInfo, _i, _Object$values, refUtxo, feeUtxos, allInputRefs, _iterator3, _step3, feeUtxo, sortedAllInputRefs, findInputIdx, treasuryInputIdx, vaultInputIdx, signedRequests, originToRequestIdx, i, o, inputToRequests, requestToOutputs, outputIdx, input, key, requestIdx, numDestOutputs, numExtraOutputs, totalYield, _vaultValue$multiasse3, _vaultValue$multiasse4, vaultValue, _stablecoinAssetId, vaultUSDr, treasuryCirculating, _calculateYieldShares2, unstakedYieldShare, treasuryOutputIdx, vaultOutputIdx, extra, serializedSignedRedeemer, executeRedeemer, feeUtxoByKey, orderInfoByKey, treasuryInputKey, vaultInputKey, spendRedeemerInputs, tx, _iterator4, _step4, inputRef, inputKey, _orderInfo, _feeUtxo, protocolRewardAccount, stablecoinAssetId, sUSDrAssetId, _t3, _t4; + return _regenerator().w(function (_context17) { + while (1) switch (_context17.p = _context17.n) { + case 0: + orderInputs = params.orderInputs, signedPayloadCbor = params.signedPayload, signatures = params.signatures; // Deserialize CBOR hex to object for internal use + signedPayload = (0, _data.parse)(_index.V0_4Types.SignedPayload_ProtocolRedeemer, _core.PlutusData.fromCbor((0, _core.HexBlob)(signedPayloadCbor))); // 1. Sort and resolve order UTxOs + sortedOrderInputs = (0, _index3.sortOrderInputs)(orderInputs); + _context17.n = 1; + return this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + case 1: + orderUtxos = _context17.v; + // 2. Parse orders and validate same type + orderInfos = this.parseOrderInfos(orderUtxos); + actionType = orderInfos[0].actionType; // 3. Get protocol settings + _context17.n = 2; + return this.getParsedProxyDatum(); + case 2: + _yield$this$getParsed = _context17.v; + proxyUtxo = _yield$this$getParsed.proxyUtxo; + parsedProxyDatum = _yield$this$getParsed.parsedProxyDatum; + settings = parsedProxyDatum.settings; // 4. Determine what we need + needsTreasury = ["mint", "burn", "withdraw", "deposit"].includes(actionType); + needsVault = ["stake", "unstake", "deposit"].includes(actionType); // 5. Get script reference inputs + scriptHashesNeeded = { + protocol: this.protocolScriptHash, + order: this.orderScriptHash + }; + if (needsTreasury) { + scriptHashesNeeded.treasury = this.treasuryScriptHash; + } + if (needsVault) { + scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash; + } + _context17.n = 3; + return this.getScriptReferenceInputs(scriptHashesNeeded); + case 3: + refInputs = _context17.v; + if (!needsTreasury) { + _context17.n = 5; + break; + } + _context17.n = 4; + return this.getTreasuryDatum(); + case 4: + treasuryResult = _context17.v; + treasuryUtxo = treasuryResult.treasuryUtxo; + parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum; + case 5: + if (!needsVault) { + _context17.n = 7; + break; + } + _context17.n = 6; + return this.getVaultDatum(); + case 6: + vaultResult = _context17.v; + vaultUtxo = vaultResult.vaultUtxo; + parsedVaultDatum = vaultResult.parsedVaultDatum; + case 7: + _context17.n = 8; + return this.blaze.wallet.getUnspentOutputs(); + case 8: + walletUtxos = _context17.v; + excludedInputIds = new Set(); + utxoKey = function utxoKey(inp) { + return "".concat(inp.transactionId().toString(), "#").concat(inp.index().toString()); + }; // Exclude script inputs (order, treasury, vault) + _iterator2 = _createForOfIteratorHelper(orderInfos); + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + orderInfo = _step2.value; + excludedInputIds.add(utxoKey(orderInfo.utxo.input())); + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + if (treasuryUtxo) { + excludedInputIds.add(utxoKey(treasuryUtxo.input())); + } + if (vaultUtxo) { + excludedInputIds.add(utxoKey(vaultUtxo.input())); + } + // Exclude reference inputs (must be disjoint from regular inputs) + excludedInputIds.add(utxoKey(proxyUtxo.input())); + for (_i = 0, _Object$values = Object.values(refInputs); _i < _Object$values.length; _i++) { + refUtxo = _Object$values[_i]; + if (refUtxo) { + excludedInputIds.add(utxoKey(refUtxo.input())); + } + } + feeUtxos = walletUtxos.filter(function (utxo) { + return !excludedInputIds.has(utxoKey(utxo.input())); + }); // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex). + // Include ALL inputs: order, treasury, vault, AND wallet fee inputs. + allInputRefs = orderInfos.map(function (o) { + return o.utxo.input(); + }); + if (treasuryUtxo) { + allInputRefs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + allInputRefs.push(vaultUtxo.input()); + } + _iterator3 = _createForOfIteratorHelper(feeUtxos); + try { + for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) { + feeUtxo = _step3.value; + allInputRefs.push(feeUtxo.input()); + } + } catch (err) { + _iterator3.e(err); + } finally { + _iterator3.f(); + } + sortedAllInputRefs = _toConsumableArray(allInputRefs).sort(function (a, b) { + var txA = a.transactionId().toString(); + var txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + findInputIdx = function findInputIdx(input) { + var idx = sortedAllInputRefs.findIndex(function (r) { + return r.transactionId().toString() === input.transactionId().toString() && r.index() === input.index(); + }); + return BigInt(idx); + }; + treasuryInputIdx = treasuryUtxo ? findInputIdx(treasuryUtxo.input()) : 0n; + vaultInputIdx = vaultUtxo ? findInputIdx(vaultUtxo.input()) : undefined; // 8a. Correlate order inputs to signed request indices via origin fields. + // When all orders are present this produces the same identity mapping as before. + // When a subset is passed (partial execution), it maps each input to the + // correct request index in the signed payload. + signedRequests = getRequestsFromAction(signedPayload.action); + originToRequestIdx = new Map(); + for (i = 0; i < signedRequests.length; i++) { + o = signedRequests[i].origin; + originToRequestIdx.set("".concat(o.transaction_id, "#").concat(o.output_index), i); + } + inputToRequests = []; + requestToOutputs = []; + outputIdx = 0; + case 9: + if (!(outputIdx < orderInfos.length)) { + _context17.n = 12; + break; + } + input = orderInfos[outputIdx].utxo.input(); + key = "".concat(input.transactionId(), "#").concat(input.index()); + requestIdx = originToRequestIdx.get(key); + if (!(requestIdx === undefined)) { + _context17.n = 10; + break; + } + throw new Error("Order input ".concat(key, " not found in signed payload")); + case 10: + inputToRequests.push(BigInt(requestIdx)); + requestToOutputs.push(BigInt(outputIdx)); + case 11: + outputIdx++; + _context17.n = 9; + break; + case 12: + // 9. Build outputs and compute output indices + // Output layout: + // [destination outputs] [extra outputs*] [treasury output if needed] [vault output if needed] + // *extra outputs: yield pot output for deposit with non-zero positive yield + numDestOutputs = orderInfos.length; // For deposit with positive yield, the yield pot output is inserted after destinations + numExtraOutputs = 0; + if (actionType === "deposit") { + totalYield = orderInfos.reduce(function (sum, o) { + var _o$yield; + return sum + ((_o$yield = o["yield"]) !== null && _o$yield !== void 0 ? _o$yield : 0n); + }, 0n); + if (totalYield > 0n) { + // Check if unstaked yield share is > 0 + vaultValue = vaultUtxo.output().amount(); + _stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + vaultUSDr = (_vaultValue$multiasse3 = (_vaultValue$multiasse4 = vaultValue.multiasset()) === null || _vaultValue$multiasse4 === void 0 ? void 0 : _vaultValue$multiasse4.get(_stablecoinAssetId)) !== null && _vaultValue$multiasse3 !== void 0 ? _vaultValue$multiasse3 : 0n; + treasuryCirculating = parsedTreasuryDatum.circulating_supply; + _calculateYieldShares2 = calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating), unstakedYieldShare = _calculateYieldShares2.unstakedYieldShare; + if (unstakedYieldShare > 0n) { + numExtraOutputs = 1; + } + } + } + treasuryOutputIdx = needsTreasury ? BigInt(numDestOutputs + numExtraOutputs) : 0n; + vaultOutputIdx = needsVault ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0)) : undefined; // 10. Build ExtraProtocolRedeemer + extra = { + request_to_outputs: requestToOutputs, + input_to_requests: inputToRequests, + treasury_input_idx: treasuryInputIdx, + treasury_output_idx: treasuryOutputIdx, + vault_input_idx: vaultInputIdx, + vault_output_idx: vaultOutputIdx + }; // 11. Build SignedRedeemer (payload is deserialized object in v0_4) + serializedSignedRedeemer = Data.serialize(_index.V0_4Types.SignedRedeemer_ExtraProtocolRedeemer, { + extra: extra, + payload: signedPayload, + signatures: signatures + }); + executeRedeemer = Data.serialize(_index.V0_4Types.OrderRedeemer, "Execute"); + feeUtxoByKey = new Map(feeUtxos.map(function (utxo) { + return [utxoKey(utxo.input()), utxo]; + })); + orderInfoByKey = new Map(orderInfos.map(function (orderInfo) { + return [utxoKey(orderInfo.utxo.input()), orderInfo]; + })); + treasuryInputKey = treasuryUtxo ? utxoKey(treasuryUtxo.input()) : null; + vaultInputKey = vaultUtxo ? utxoKey(vaultUtxo.input()) : null; + spendRedeemerInputs = _toConsumableArray(orderInfos.map(function (orderInfo) { + return orderInfo.utxo.input(); + })); + if (treasuryUtxo) { + spendRedeemerInputs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + spendRedeemerInputs.push(vaultUtxo.input()); + } + + // 12. Build the transaction + tx = this.newOrderTransaction(); // Add all spend inputs in ledger order so the generated spend redeemer + // pointers line up with the final transaction input indices. + _iterator4 = _createForOfIteratorHelper(sortedAllInputRefs); + _context17.p = 13; + _iterator4.s(); + case 14: + if ((_step4 = _iterator4.n()).done) { + _context17.n = 20; + break; + } + inputRef = _step4.value; + inputKey = utxoKey(inputRef); + _orderInfo = orderInfoByKey.get(inputKey); + if (!_orderInfo) { + _context17.n = 15; + break; + } + tx.addInput(_orderInfo.utxo, executeRedeemer); + return _context17.a(3, 19); + case 15: + if (!(treasuryInputKey && inputKey === treasuryInputKey)) { + _context17.n = 16; + break; + } + tx.addInput(treasuryUtxo, Data.Void()); + return _context17.a(3, 19); + case 16: + if (!(vaultInputKey && inputKey === vaultInputKey)) { + _context17.n = 17; + break; + } + tx.addInput(vaultUtxo, Data.Void()); + return _context17.a(3, 19); + case 17: + _feeUtxo = feeUtxoByKey.get(inputKey); + if (!_feeUtxo) { + _context17.n = 18; + break; + } + tx.addInput(_feeUtxo); + return _context17.a(3, 19); + case 18: + throw new Error("buildExecuteOrdersTx: missing input metadata for ".concat(inputKey)); + case 19: + _context17.n = 14; + break; + case 20: + _context17.n = 22; + break; + case 21: + _context17.p = 21; + _t3 = _context17.v; + _iterator4.e(_t3); + case 22: + _context17.p = 22; + _iterator4.f(); + return _context17.f(22); + case 23: + // Add reference inputs + tx.addReferenceInput(refInputs.protocol); + tx.addReferenceInput(refInputs.order); + tx.addReferenceInput(proxyUtxo); + if (refInputs.treasury) { + tx.addReferenceInput(refInputs.treasury); + } + if (refInputs.stakingVault) { + tx.addReferenceInput(refInputs.stakingVault); + } + + // Add protocol withdrawal with signed redeemer + protocolRewardAccount = _sdk.Core.RewardAccount.fromCredential({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash + }, this.network); + tx.addWithdrawal(protocolRewardAccount, 0n, serializedSignedRedeemer); + + // Build per-action-type outputs, minting, and state updates + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + sUSDrAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + _t4 = actionType; + _context17.n = _t4 === "mint" ? 24 : _t4 === "burn" ? 25 : _t4 === "withdraw" ? 26 : _t4 === "deposit" ? 27 : _t4 === "stake" ? 28 : _t4 === "unstake" ? 29 : 30; + break; + case 24: + this.buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + return _context17.a(3, 30); + case 25: + this.buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + return _context17.a(3, 30); + case 26: + this.buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings); + return _context17.a(3, 30); + case 27: + this.buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings); + return _context17.a(3, 30); + case 28: + this.buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum); + return _context17.a(3, 30); + case 29: + this.buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum); + return _context17.a(3, 30); + case 30: + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + this.realignSpendRedeemerIndices(tx, spendRedeemerInputs); + return _context17.a(2, tx); + } + }, _callee17, this, [[13, 21, 22, 23]]); + })); + function buildExecuteOrdersTx(_x13) { + return _buildExecuteOrdersTx.apply(this, arguments); + } + return buildExecuteOrdersTx; + }() + }, { + key: "realignSpendRedeemerIndices", + value: function realignSpendRedeemerIndices(tx, spendRedeemerInputs) { + var txInternals = tx; + var bodyInputs = txInternals.body.inputs().values(); + var redeemers = _toConsumableArray(txInternals.redeemers.values()); + var spendRedeemers = redeemers.filter(function (redeemer) { + return redeemer.tag() === _sdk.Core.RedeemerTag.Spend; + }).sort(function (a, b) { + return Number(a.index() - b.index()); + }); + if (spendRedeemers.length !== spendRedeemerInputs.length) { + throw new Error("buildExecuteOrdersTx: spend redeemer count mismatch. inputs=".concat(spendRedeemerInputs.length, " redeemers=").concat(spendRedeemers.length)); + } + var expectedOrdering = _toConsumableArray(spendRedeemerInputs).sort(function (a, b) { + return toSpendOrderingKey(a).localeCompare(toSpendOrderingKey(b)); + }); + var _loop = function _loop() { + var input = expectedOrdering[i]; + var actualIndex = bodyInputs.findIndex(function (bodyInput) { + return bodyInput.transactionId().toString() === input.transactionId().toString() && bodyInput.index() === input.index(); + }); + if (actualIndex < 0) { + throw new Error("buildExecuteOrdersTx: could not find spend input ".concat(input.transactionId().toString(), "#").concat(input.index().toString(), " in tx body")); + } + spendRedeemers[i].setIndex(BigInt(actualIndex)); + }; + for (var i = 0; i < spendRedeemers.length; i++) { + _loop(); + } + txInternals.redeemers.setValues(redeemers); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Per-Action Execute Builders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + */ + }, { + key: "buildMintExecute", + value: function buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + var totalAmount = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // Destination outputs: send USDr to each destination + var _iterator5 = _createForOfIteratorHelper(orderInfos), + _step5; + try { + for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) { + var orderInfo = _step5.value; + (0, _index3.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, (0, _sdk.makeValue)(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount])); + } + + // Mint USDr + } catch (err) { + _iterator5.e(err); + } finally { + _iterator5.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Compute per-reserve-asset deltas + var reserveDeltas = (0, _index3.computeReserveDeltas)(orderInfos, settings); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalAmount); + } + + /** + * Burn: USDr burned, reserve sent to destinations. + */ + }, { + key: "buildBurnExecute", + value: function buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + // Amount is negative in datum for burns + var totalAmount = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // Destination outputs: send reserve tokens to each destination + // Convert USDr amount to reserve amount using floor division (protocol-protective) + var _iterator6 = _createForOfIteratorHelper(orderInfos), + _step6; + try { + for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) { + var orderInfo = _step6.value; + var ra = (0, _index3.findReserveAsset)(settings, orderInfo.reserveAsset); + var reserveAssetId = _sdk.Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + var reserveAmount = (0, _index3.usdrToReserve)(-orderInfo.amount, ra); + (0, _index3.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, (0, _sdk.makeValue)(MIN_LOVELACE, [reserveAssetId, reserveAmount])); + } + + // Burn USDr (totalAmount is negative) + } catch (err) { + _iterator6.e(err); + } finally { + _iterator6.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Compute per-reserve-asset deltas + var reserveDeltas = (0, _index3.computeReserveDeltas)(orderInfos, settings); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalAmount); + } + + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + }, { + key: "buildWithdrawExecute", + value: function buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings) { + // Destination outputs: send reserve tokens to each destination + // Convert USDr amount to reserve amount using floor division + var _iterator7 = _createForOfIteratorHelper(orderInfos), + _step7; + try { + for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) { + var orderInfo = _step7.value; + var ra = (0, _index3.findReserveAsset)(settings, orderInfo.reserveAsset); + var reserveAssetId = _sdk.Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + var reserveAmount = (0, _index3.usdrToReserve)(orderInfo.amount, ra); + (0, _index3.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, (0, _sdk.makeValue)(MIN_LOVELACE, [reserveAssetId, reserveAmount])); + } + + // Update treasury: reserve decreases, no circulating_supply change + // On-chain: amount_sign = -1 for withdraw, expected_delta = usdr_to_reserve(-amount, ra) + } catch (err) { + _iterator7.e(err); + } finally { + _iterator7.f(); + } + var reserveDeltas = (0, _index3.computeReserveDeltas)(orderInfos, settings, true); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, 0n); + } + + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + }, { + key: "buildDepositExecute", + value: function buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings) { + var _vaultValue$multiasse5, _vaultValue$multiasse6; + var totalYield = orderInfos.reduce(function (sum, o) { + var _o$yield2; + return sum + ((_o$yield2 = o["yield"]) !== null && _o$yield2 !== void 0 ? _o$yield2 : 0n); + }, 0n); + + // Destination outputs: min ADA to each destination (contract validates via request_to_outputs) + var _iterator8 = _createForOfIteratorHelper(orderInfos), + _step8; + try { + for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) { + var orderInfo = _step8.value; + (0, _index3.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, (0, _sdk.makeValue)(MIN_LOVELACE)); + } + + // Calculate yield split matching on-chain deposit.ak logic + } catch (err) { + _iterator8.e(err); + } finally { + _iterator8.f(); + } + var vaultValue = vaultUtxo.output().amount(); + var vaultUSDr = (_vaultValue$multiasse5 = (_vaultValue$multiasse6 = vaultValue.multiasset()) === null || _vaultValue$multiasse6 === void 0 ? void 0 : _vaultValue$multiasse6.get(stablecoinAssetId)) !== null && _vaultValue$multiasse5 !== void 0 ? _vaultValue$multiasse5 : 0n; + var treasuryCirculating = parsedTreasuryDatum.circulating_supply; + var _calculateYieldShares3 = calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating), + stakedYieldShare = _calculateYieldShares3.stakedYieldShare, + unstakedYieldShare = _calculateYieldShares3.unstakedYieldShare; + if (totalYield > 0n) { + // Positive yield: mint USDr for the yield amount + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + + // Send unstaked yield share to the yield pot address + if (unstakedYieldShare > 0n) { + (0, _index3.addDestinationOutput)(tx, this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum" + }, (0, _sdk.makeValue)(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare])); + } + } else if (totalYield < 0n) { + // Negative yield: burn USDr (sourced from order inputs already consumed) + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + } + // totalYield === 0n: no mint/burn needed + + // Update treasury: reserve increases, circulating_supply changes by yield. + // For positive yield, treasury receives reserve backing for BOTH principal AND yield. + // For negative yield, treasury only receives reserve backing for principal. + var reserveDeltas = new Map(); + var _iterator9 = _createForOfIteratorHelper(orderInfos), + _step9; + try { + for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) { + var _orderInfo2$yield, _reserveDeltas$get; + var _orderInfo2 = _step9.value; + var assetId = _orderInfo2.reserveAsset[0] + _orderInfo2.reserveAsset[1]; + var ra = (0, _index3.findReserveAsset)(settings, _orderInfo2.reserveAsset); + var yieldValue = (_orderInfo2$yield = _orderInfo2["yield"]) !== null && _orderInfo2$yield !== void 0 ? _orderInfo2$yield : 0n; + + // Calculate USDr backing needed based on yield sign + var usdrBacking = yieldValue >= 0n ? _orderInfo2.amount + yieldValue // principal + yield for positive yield + : _orderInfo2.amount; // just principal for negative yield + + // Convert USDr backing to reserve amount + var reserveAmount = (0, _index3.usdrToReserve)(usdrBacking, ra); + reserveDeltas.set(assetId, ((_reserveDeltas$get = reserveDeltas.get(assetId)) !== null && _reserveDeltas$get !== void 0 ? _reserveDeltas$get : 0n) + reserveAmount); + } + } catch (err) { + _iterator9.e(err); + } finally { + _iterator9.f(); + } + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalYield); + + // Update vault: sUSDr unchanged, USDr changes by staked yield share + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, 0n, stakedYieldShare); + } + + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + */ + }, { + key: "buildStakeExecute", + value: function buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum) { + var _vaultValue$multiasse7, _vaultValue$multiasse8; + var totalUSDrStaked = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // Calculate vault USDr balance + var vaultValue = vaultUtxo.output().amount(); + var vaultUSDr = (_vaultValue$multiasse7 = (_vaultValue$multiasse8 = vaultValue.multiasset()) === null || _vaultValue$multiasse8 === void 0 ? void 0 : _vaultValue$multiasse8.get(stablecoinAssetId)) !== null && _vaultValue$multiasse7 !== void 0 ? _vaultValue$multiasse7 : 0n; + var circulatingSUSDr = parsedVaultDatum.circulating_susdr; + + // Calculate total sUSDr to mint using batch formula (matches on-chain stake.ak) + // On-chain: susdr_to_mint = total_usdr_staked * circulating_susdr_before / vault_usdr_before + var totalSUSDrMinted; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + totalSUSDrMinted = totalUSDrStaked; + } else { + totalSUSDrMinted = totalUSDrStaked * circulatingSUSDr / vaultUSDr; + } + + // Calculate per-order sUSDr for destination outputs (matches validate_stake_outputs). + // Note: sum(per-order floors) may be less than totalSUSDrMinted by at most (n-1) units + // due to floor(sum) >= sum(floor). The difference ("dust") is minted but not assigned + // to any destination output — it ends up in the executor's change output. This is an + // inherent consequence of the on-chain contract requiring both aggregate mint equality + // and per-request floor equality on outputs. + var _iterator0 = _createForOfIteratorHelper(orderInfos), + _step0; + try { + for (_iterator0.s(); !(_step0 = _iterator0.n()).done;) { + var orderInfo = _step0.value; + var sUSDrAmount = void 0; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + sUSDrAmount = orderInfo.amount; + } else { + sUSDrAmount = orderInfo.amount * circulatingSUSDr / vaultUSDr; + } + (0, _index3.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, (0, _sdk.makeValue)(MIN_LOVELACE, [sUSDrAssetId, sUSDrAmount])); + } + + // Mint sUSDr + } catch (err) { + _iterator0.e(err); + } finally { + _iterator0.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]), Data.Void()); + + // Update vault: USDr increases by staked amount, circulating_susdr increases + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, totalSUSDrMinted, totalUSDrStaked); + } + + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + */ + }, { + key: "buildUnstakeExecute", + value: function buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum) { + var _vaultValue$multiasse9, _vaultValue$multiasse0; + var totalSUSDrBurned = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // Calculate vault USDr balance + var vaultValue = vaultUtxo.output().amount(); + var vaultUSDr = (_vaultValue$multiasse9 = (_vaultValue$multiasse0 = vaultValue.multiasset()) === null || _vaultValue$multiasse0 === void 0 ? void 0 : _vaultValue$multiasse0.get(stablecoinAssetId)) !== null && _vaultValue$multiasse9 !== void 0 ? _vaultValue$multiasse9 : 0n; + var circulatingSUSDr = parsedVaultDatum.circulating_susdr; + if (circulatingSUSDr === 0n) { + throw new Error("Cannot unstake: no sUSDr in circulation"); + } + + // Calculate USDr to release for each order + var totalUSDrReleased = 0n; + var _iterator1 = _createForOfIteratorHelper(orderInfos), + _step1; + try { + for (_iterator1.s(); !(_step1 = _iterator1.n()).done;) { + var orderInfo = _step1.value; + var uSDrAmount = orderInfo.amount * vaultUSDr / circulatingSUSDr; + totalUSDrReleased += uSDrAmount; + + // Send USDr to the destination (native script timelock address). + // Use an explicit output because lockAssets requires a datum, but the + // contract expects NoDatum. + var destAddress = (0, _index3.destinationToAddress)(this.network, orderInfo.datum.destination); + var output = new _sdk.Core.TransactionOutput(destAddress, (0, _sdk.makeValue)(MIN_LOVELACE, [stablecoinAssetId, uSDrAmount])); + tx.addOutput(output); + } + + // Burn sUSDr + } catch (err) { + _iterator1.e(err); + } finally { + _iterator1.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]), Data.Void()); + + // Update vault: USDr decreases, circulating_susdr decreases + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, -totalSUSDrBurned, -totalUSDrReleased); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Cancel Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to cancel orders. + */ + }, { + key: "buildCancelOrdersTx", + value: function () { + var _buildCancelOrdersTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee18(params) { + var orderInputs, destination, availableSigners, versionHint, orderUtxos, cachedOrderRefs, orderRefInputs, cancelRedeemer, destAddress, tx, _iterator10, _step10, orderRefInput, currentOrderRefInput, requiredSigners, _iterator11, _step11, utxo, owner, _iterator13, _step13, keyHash, outputValue, effectiveSigners, _iterator12, _step12, _keyHash, _t5, _t6; + return _regenerator().w(function (_context18) { + while (1) switch (_context18.p = _context18.n) { + case 0: + orderInputs = params.orderInputs, destination = params.destination, availableSigners = params.availableSigners, versionHint = params.versionHint; + _context18.n = 1; + return this.blaze.provider.resolveUnspentOutputs(orderInputs); + case 1: + orderUtxos = _context18.v; + if (!(orderUtxos.length === 0)) { + _context18.n = 2; + break; + } + throw new Error("No orders to cancel"); + case 2: + cachedOrderRefs = this.cachedReferenceInputs.orderRefInput ? new Map([[this.orderScriptHash, this.cachedReferenceInputs.orderRefInput]]) : undefined; + _context18.n = 3; + return (0, _index3.resolveOrderReferenceInputs)(this.blaze, orderUtxos, cachedOrderRefs, this.scriptDeploymentAddress); + case 3: + orderRefInputs = _context18.v; + cancelRedeemer = Data.serialize(_index.V0_4Types.OrderRedeemer, "Cancel"); + if (!(destination !== null && destination !== void 0)) { + _context18.n = 4; + break; + } + _t5 = destination; + _context18.n = 6; + break; + case 4: + _context18.n = 5; + return this.blaze.wallet.getChangeAddress(); + case 5: + _t5 = _context18.v; + case 6: + destAddress = _t5; + tx = this.newOrderTransaction(); + _iterator10 = _createForOfIteratorHelper(orderRefInputs.values()); + try { + for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) { + orderRefInput = _step10.value; + tx.addReferenceInput(orderRefInput); + } + + // cache current version of order script reference input + } catch (err) { + _iterator10.e(err); + } finally { + _iterator10.f(); + } + currentOrderRefInput = orderRefInputs.get(this.orderScriptHash); + if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = currentOrderRefInput; + } + requiredSigners = new Set(); + _iterator11 = _createForOfIteratorHelper(orderUtxos); + _context18.p = 7; + _iterator11.s(); + case 8: + if ((_step11 = _iterator11.n()).done) { + _context18.n = 11; + break; + } + utxo = _step11.value; + _context18.n = 9; + return (0, _index3.parseCancelOwner)(utxo, versionHint); + case 9: + owner = _context18.v; + _iterator13 = _createForOfIteratorHelper((0, _index3.getSignatureKeyHashesFromMultisigScript)(owner)); + try { + for (_iterator13.s(); !(_step13 = _iterator13.n()).done;) { + keyHash = _step13.value; + requiredSigners.add(keyHash); + } + } catch (err) { + _iterator13.e(err); + } finally { + _iterator13.f(); + } + tx.addInput(utxo, cancelRedeemer); + outputValue = utxo.output().amount(); + (0, _index3.addDirectOutput)(tx, destAddress, outputValue); + case 10: + _context18.n = 8; + break; + case 11: + _context18.n = 13; + break; + case 12: + _context18.p = 12; + _t6 = _context18.v; + _iterator11.e(_t6); + case 13: + _context18.p = 13; + _iterator11.f(); + return _context18.f(13); + case 14: + effectiveSigners = availableSigners ? new Set(_toConsumableArray(requiredSigners).filter(function (k) { + return availableSigners.has(k); + })) : requiredSigners; + _iterator12 = _createForOfIteratorHelper(effectiveSigners); + try { + for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) { + _keyHash = _step12.value; + tx.addRequiredSigner((0, _core.Ed25519KeyHashHex)(_keyHash)); + } + } catch (err) { + _iterator12.e(err); + } finally { + _iterator12.f(); + } + return _context18.a(2, tx); + } + }, _callee18, this, [[7, 12, 13, 14]]); + })); + function buildCancelOrdersTx(_x14) { + return _buildCancelOrdersTx.apply(this, arguments); + } + return buildCancelOrdersTx; + }() // ───────────────────────────────────────────────────────────────────────────── + // Private Helpers + // ───────────────────────────────────────────────────────────────────────────── + /** + * Parse order UTxOs into IOrderInfo objects and validate they are all the same type. + */ + }, { + key: "parseOrderInfos", + value: function parseOrderInfos(orderUtxos) { + var orderInfos = []; + var expectedActionType = null; + var _iterator14 = _createForOfIteratorHelper(orderUtxos), + _step14; + try { + for (_iterator14.s(); !(_step14 = _iterator14.n()).done;) { + var _utxo$output$datum2; + var utxo = _step14.value; + var datumData = (_utxo$output$datum2 = utxo.output().datum()) === null || _utxo$output$datum2 === void 0 ? void 0 : _utxo$output$datum2.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + var datum = (0, _data.parse)(_index.V0_4Types.OrderDatum, datumData); + var classified = this.classifyOrderAction(datum); + if (expectedActionType === null) { + expectedActionType = classified.actionType; + } else if (expectedActionType !== classified.actionType) { + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + } + orderInfos.push({ + utxo: utxo, + datum: datum, + actionType: classified.actionType, + amount: classified.amount, + "yield": classified["yield"], + reserveAsset: classified.reserveAsset + }); + } + } catch (err) { + _iterator14.e(err); + } finally { + _iterator14.f(); + } + if (orderInfos.length === 0) { + throw new Error("No orders to execute"); + } + return orderInfos; + } + + /** + * Classify an order action from its datum. + */ + }, { + key: "classifyOrderAction", + value: function classifyOrderAction(datum) { + var action = datum.action; + if ("OMint" in action) { + return { + actionType: "mint", + amount: action.OMint.amount, + reserveAsset: action.OMint.reserve_asset, + isTreasuryAction: true + }; + } else if ("ORedeem" in action) { + return { + actionType: "burn", + // ORedeem.amount is positive (absolute value locked in order UTxO). + // Negate it so the request.amount is negative for burn (USDr leaving circulation), + // matching the contract's expectation: ORedeem.amount == -request.amount. + amount: -action.ORedeem.amount, + reserveAsset: action.ORedeem.reserve_asset, + isTreasuryAction: true + }; + } else if ("ODeposit" in action) { + return { + actionType: "deposit", + amount: action.ODeposit.principal, + "yield": action.ODeposit["yield"], + reserveAsset: action.ODeposit.reserve_asset, + isTreasuryAction: true + }; + } else if ("OWithdraw" in action) { + return { + actionType: "withdraw", + amount: action.OWithdraw.amount, + reserveAsset: action.OWithdraw.reserve_asset, + isTreasuryAction: true + }; + } else if ("OStake" in action) { + return { + actionType: "stake", + amount: action.OStake.amount, + isTreasuryAction: false + }; + } else if ("OUnstake" in action) { + return { + actionType: "unstake", + amount: action.OUnstake.amount, + isTreasuryAction: false + }; + } + throw new Error("Unknown order action type"); + } + + /** + * Update treasury output with new reserve and circulating supply. + */ + }, { + key: "updateTreasuryOutput", + value: function updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, circulatingSupplyDelta) { + var newTreasuryDatum = { + circulating_supply: parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta + }; + var serializedTreasuryDatum = Data.serialize(_index2.TreasuryDatum, newTreasuryDatum); + var treasuryValue = treasuryUtxo.output().amount(); + + // Start with ADA + treasury NFT + var newTreasuryValue = (0, _sdk.makeValue)(treasuryValue.coin(), [this.treasuryNFTAssetId, 1n]); + + // Apply all reserve asset deltas + var modifiedAssetIds = new Set([this.treasuryNFTAssetId.toString()]); + var _iterator15 = _createForOfIteratorHelper(reserveDeltas.entries()), + _step15; + try { + for (_iterator15.s(); !(_step15 = _iterator15.n()).done;) { + var _treasuryValue$multia, _treasuryValue$multia2; + var _step15$value = _slicedToArray(_step15.value, 2), + reserveAssetId = _step15$value[0], + delta = _step15$value[1]; + var currentReserve = (_treasuryValue$multia = (_treasuryValue$multia2 = treasuryValue.multiasset()) === null || _treasuryValue$multia2 === void 0 ? void 0 : _treasuryValue$multia2.get(_sdk.Core.AssetId(reserveAssetId))) !== null && _treasuryValue$multia !== void 0 ? _treasuryValue$multia : 0n; + var newReserve = currentReserve + delta; + newTreasuryValue = _sdk.Value.merge(newTreasuryValue, (0, _sdk.makeValue)(0n, [_sdk.Core.AssetId(reserveAssetId), newReserve])); + modifiedAssetIds.add(reserveAssetId); + } + + // Preserve any other assets not modified + } catch (err) { + _iterator15.e(err); + } finally { + _iterator15.f(); + } + var existingMultiasset = treasuryValue.multiasset(); + if (existingMultiasset) { + var _iterator16 = _createForOfIteratorHelper(existingMultiasset.entries()), + _step16; + try { + for (_iterator16.s(); !(_step16 = _iterator16.n()).done;) { + var _step16$value = _slicedToArray(_step16.value, 2), + assetId = _step16$value[0], + amount = _step16$value[1]; + if (!modifiedAssetIds.has(assetId)) { + newTreasuryValue = _sdk.Value.merge(newTreasuryValue, (0, _sdk.makeValue)(0n, [_sdk.Core.AssetId(assetId), amount])); + } + } + } catch (err) { + _iterator16.e(err); + } finally { + _iterator16.f(); + } + } + tx.lockAssets(this.treasuryAddress, newTreasuryValue, serializedTreasuryDatum); + } + + /** + * Update vault output with new circulating_susdr and USDr balance. + */ + }, { + key: "updateVaultOutput", + value: function updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, sUSDrDelta) { + var uSDrDelta = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0n; + var newVaultDatum = { + circulating_susdr: parsedVaultDatum.circulating_susdr + sUSDrDelta + }; + var serializedVaultDatum = Data.serialize(_index.V0_4Types.VaultDatum, newVaultDatum); + var stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + + // Start with existing vault value, then adjust USDr + var newVaultValue = vaultUtxo.output().amount(); + if (uSDrDelta !== 0n) { + var _newVaultValue$multia, _newVaultValue$multia2; + var currentUSDr = (_newVaultValue$multia = (_newVaultValue$multia2 = newVaultValue.multiasset()) === null || _newVaultValue$multia2 === void 0 ? void 0 : _newVaultValue$multia2.get(stablecoinAssetId)) !== null && _newVaultValue$multia !== void 0 ? _newVaultValue$multia : 0n; + var newUSDr = currentUSDr + uSDrDelta; + newVaultValue = (0, _sdk.makeValue)(newVaultValue.coin(), [this.stakingVaultNFTAssetId, 1n]); + if (newUSDr > 0n) { + newVaultValue = _sdk.Value.merge(newVaultValue, (0, _sdk.makeValue)(0n, [stablecoinAssetId, newUSDr])); + } + // Preserve any other assets from the original vault + var existingMultiasset = vaultUtxo.output().amount().multiasset(); + if (existingMultiasset) { + var _iterator17 = _createForOfIteratorHelper(existingMultiasset.entries()), + _step17; + try { + for (_iterator17.s(); !(_step17 = _iterator17.n()).done;) { + var _step17$value = _slicedToArray(_step17.value, 2), + assetId = _step17$value[0], + amount = _step17$value[1]; + if (assetId !== this.stakingVaultNFTAssetId.toString() && assetId !== stablecoinAssetId.toString()) { + newVaultValue = _sdk.Value.merge(newVaultValue, (0, _sdk.makeValue)(0n, [_sdk.Core.AssetId(assetId), amount])); + } + } + } catch (err) { + _iterator17.e(err); + } finally { + _iterator17.f(); + } + } + } + tx.lockAssets(this.stakingVaultAddress, newVaultValue, serializedVaultDatum); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Reserve Asset Conversion Utilities + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Get protocol settings from proxy datum (cached). + */ + }, { + key: "getVersionSettings", + value: function () { + var _getVersionSettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee19() { + var _yield$this$getParsed2, parsedProxyDatum; + return _regenerator().w(function (_context19) { + while (1) switch (_context19.n) { + case 0: + _context19.n = 1; + return this.getParsedProxyDatum(); + case 1: + _yield$this$getParsed2 = _context19.v; + parsedProxyDatum = _yield$this$getParsed2.parsedProxyDatum; + return _context19.a(2, parsedProxyDatum.settings); + } + }, _callee19, this); + })); + function getVersionSettings() { + return _getVersionSettings.apply(this, arguments); + } + return getVersionSettings; + }() + }], [{ + key: "create", + value: function create(blaze, params) { + var _params$enableTrace, _params$referenceInpu, _params$referenceInpu2, _params$referenceInpu3, _params$referenceInpu4, _params$referenceInpu5; + var enableTrace = (_params$enableTrace = params.enableTrace) !== null && _params$enableTrace !== void 0 ? _params$enableTrace : false; + var oneShotScript = new _index.BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + var oneShotPolicyId = oneShotScript.hash(); + var protocolScript = new _index.V0_4Types.V0_4ProtocolProtocolWithdraw(oneShotPolicyId, enableTrace).Script; + var mintProxyScript = new _index.BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + var treasuryScript = new _index.V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + var orderScript = new _index.V0_4Types.V0_4OrderOrderSpend(oneShotPolicyId, enableTrace).Script; + var stakingVaultScript = new _index.V0_4Types.V0_4StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV0_4(blaze, { + version: "V0_4", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace: enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource + }, { + oneShotScript: oneShotScript, + protocolScript: protocolScript, + mintProxyScript: mintProxyScript, + treasuryScript: treasuryScript, + orderScript: orderScript, + stakingVaultScript: stakingVaultScript + }, { + protocolRefInput: (_params$referenceInpu = params.referenceInputs) === null || _params$referenceInpu === void 0 ? void 0 : _params$referenceInpu.protocolRefInput, + proxyRefInput: (_params$referenceInpu2 = params.referenceInputs) === null || _params$referenceInpu2 === void 0 ? void 0 : _params$referenceInpu2.proxyRefInput, + treasuryRefInput: (_params$referenceInpu3 = params.referenceInputs) === null || _params$referenceInpu3 === void 0 ? void 0 : _params$referenceInpu3.treasuryRefInput, + orderRefInput: (_params$referenceInpu4 = params.referenceInputs) === null || _params$referenceInpu4 === void 0 ? void 0 : _params$referenceInpu4.orderRefInput, + stakingVaultRefInput: (_params$referenceInpu5 = params.referenceInputs) === null || _params$referenceInpu5 === void 0 ? void 0 : _params$referenceInpu5.stakingVaultRefInput + }); + } + }]); +}(_index3.RealfiSDKBase); +_defineProperty(RealfiSDKV0_4, "buildTimelockNativeScript", _index3.buildTimelockNativeScript); +_defineProperty(RealfiSDKV0_4, "buildTimelockAddress", _index3.buildTimelockAddress); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v0_4/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_4/index.js.map new file mode 100644 index 0000000000..d81c403340 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v0_4/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_core","require","_data","_interopRequireWildcard","Data","_sdk","_index","_index2","_index3","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t7","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Symbol","iterator","constructor","prototype","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","l","u","a","next","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","from","_arrayLikeToArray","_createForOfIteratorHelper","_n","F","s","toString","slice","name","test","_regenerator","toStringTag","c","Generator","create","_regeneratorDefine2","p","y","G","v","d","bind","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","_assertThisInitialized","ReferenceError","Boolean","valueOf","_inherits","_setPrototypeOf","_defineProperty","_toPrimitive","toPrimitive","String","Number","MIN_LOVELACE","getRequestsFromAction","action","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","Error","floorDiv","b","q","calculateYieldShares","totalYield","vaultUSDr","treasuryCirculating","stakedYieldShare","unstakedYieldShare","toSpendOrderingKey","input","concat","transactionId","index","RealfiSDKV0_4","exports","_RealfiSDKBase","blaze","params","scripts","cachedReferenceInputs","_this","version","proxyBootstrap","assetNameHex","enableTrace","scriptDeploymentAddress","clientSource","sUSDrAssetNameHex","oneShotScript","protocolScript","mintProxyScript","treasuryScript","orderScript","stakingVaultScript","oneShotPolicyId","Core","PolicyId","hash","protocolScriptHash","stablecoinPolicyId","treasuryScriptHash","orderScriptHash","stakingVaultScriptHash","treasuryAddress","addressFromValidator","network","orderScriptAddress","stakingVaultAddress","treasuryAssetName","AssetName","toHex","Buffer","treasuryNFTAssetId","AssetId","vaultAssetName","stakingVaultNFTAssetId","_mintTreasuryNFT","_callee","treasuryBootstrapUtxo","initialDatum","treasuryPolicyId","datum","tx","_args","_context","undefined","circulating_supply","serialize","V0_1TreasuryDatum","newTransaction","addInput","addMint","Map","Void","lockAssets","makeValue","provideScript","nftAssetId","mintTreasuryNFT","_x","_deployTreasury","_callee2","_context2","deployScript","deployTreasury","_deployOrderContract","_callee3","_context3","deployOrderContract","_getTreasuryDatum","_callee4","_yield$getDatumFromNF","treasuryUtxo","treasuryDatum","parsedTreasuryDatum","_context4","getDatumFromNFT","utxo","parsedDatum","getTreasuryDatum","_mintStakingVaultNFT","_callee5","stakingVaultBootstrapUtxo","vaultPolicyId","_args5","_context5","circulating_susdr","V0_4Types","VaultDatum","mintStakingVaultNFT","_x2","_deployStakingVault","_callee6","_context6","deployStakingVault","getSusdrAssetId","_getVaultDatum","_callee7","_yield$getDatumFromNF2","vaultUtxo","vaultDatum","parsedVaultDatum","_context7","getVaultDatum","_mintOneShot","_callee8","receiverAddress","serializedDatum","baseTx","_context8","resolveBootstrapUtxo","ProxyDatum","logic","settings","lockOrPayAssets","policyId","mintOneShot","_x3","_x4","_updateOneShotDatum","_callee9","newDatum","oneshotUtxo","_context9","provider","getUnspentOutputByNFT","updateOneShotDatum","_x5","_x6","_getParsedProxyDatum","_callee0","_yield$this$getRawPro","proxyUtxo","proxyDatum","parsedProxyDatum","result","_context0","cachedProxyDatumResult","getRawProxyDatum","parse","getParsedProxyDatum","_buildOrderTx2","_callee1","_params$data","orderContractAddress","owner","_addressProps$delegat","_addressProps$delegat2","_addressProps$payment","addressProps","keyHash","orderDatum","_context1","wallet","getChangeAddress","getProps","delegationPart","paymentPart","Signature","key_hash","destination","data","OrderDatum","newOrderTransaction","extraLabels","valueToLock","_buildOrderTx","_x7","_buildMintOrderTx","_callee10","reserveAssetId","ra","reserveAmount","_context10","amount","reserveAsset","getVersionSettings","findReserveAsset","usdrToReserveCeil","OMint","reserve_asset","buildMintOrderTx","_x8","_buildRedeemOrderTx","_callee11","stablecoinAssetId","_context11","ORedeem","buildRedeemOrderTx","_x9","_buildDepositOrderTx","_callee12","totalUSDrBacking","_vaultValue$multiasse","_vaultValue$multiasse2","principalReserve","_yield$this$getTreasu","vaultValue","_calculateYieldShares","_context12","principal","output","multiasset","Value","merge","ODeposit","buildDepositOrderTx","_x0","_buildWithdrawOrderTx","_callee13","_context13","OWithdraw","buildWithdrawOrderTx","_x1","_buildStakeOrderTx","_callee14","_context14","OStake","buildStakeOrderTx","_x10","_buildUnstakeOrderTx","_callee15","sUSDrAssetId","timelockDestination","_context15","buildTimelockDestination","unlockSlot","UNSTAKE_METADATA_LABEL","buildUnstakeMetadatum","OUnstake","buildUnstakeOrderTx","_x11","_getSignedPayloadFromOrderInputs","_callee16","orderInputs","sortedInputs","nonce","resolvedUtxos","actionType","treasuryRequests","_iterator","_step","_utxo$output$datum","datumData","origin","parsed","_parsed$yield","payload","serialized","signedPayload","payloadHash","_t","_t2","_context16","sortOrderInputs","buildNonceFromUtxo","resolveUnspentOutputs","asInlineData","transaction_id","output_index","classifyOrderAction","isTreasuryAction","SignedPayload_ProtocolRedeemer","toCbor","blake2b_256","HexBlob","getSignedPayloadFromOrderInputs","_x12","_buildExecuteOrdersTx","_callee17","signedPayloadCbor","signatures","sortedOrderInputs","orderUtxos","orderInfos","_yield$this$getParsed","needsTreasury","needsVault","scriptHashesNeeded","refInputs","treasuryResult","vaultResult","walletUtxos","excludedInputIds","utxoKey","_iterator2","_step2","orderInfo","_i","_Object$values","refUtxo","feeUtxos","allInputRefs","_iterator3","_step3","feeUtxo","sortedAllInputRefs","findInputIdx","treasuryInputIdx","vaultInputIdx","signedRequests","originToRequestIdx","inputToRequests","requestToOutputs","outputIdx","requestIdx","numDestOutputs","numExtraOutputs","_vaultValue$multiasse3","_vaultValue$multiasse4","_stablecoinAssetId","_calculateYieldShares2","treasuryOutputIdx","vaultOutputIdx","extra","serializedSignedRedeemer","executeRedeemer","feeUtxoByKey","orderInfoByKey","treasuryInputKey","vaultInputKey","spendRedeemerInputs","_iterator4","_step4","inputRef","inputKey","_orderInfo","_feeUtxo","protocolRewardAccount","_t3","_t4","_context17","PlutusData","fromCbor","parseOrderInfos","includes","protocol","order","treasury","stakingVault","getScriptReferenceInputs","getUnspentOutputs","Set","inp","add","err","values","filter","map","sort","txA","txB","idx","findIndex","BigInt","reduce","sum","_o$yield","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","SignedRedeemer_ExtraProtocolRedeemer","OrderRedeemer","addReferenceInput","RewardAccount","fromCredential","type","CredentialType","ScriptHash","addWithdrawal","buildMintExecute","buildBurnExecute","buildWithdrawExecute","buildDepositExecute","buildStakeExecute","buildUnstakeExecute","realignSpendRedeemerIndices","buildExecuteOrdersTx","_x13","txInternals","bodyInputs","body","inputs","redeemers","spendRedeemers","redeemer","tag","RedeemerTag","Spend","expectedOrdering","localeCompare","_loop","actualIndex","bodyInput","setIndex","setValues","totalAmount","_iterator5","_step5","addDestinationOutput","reserveDeltas","computeReserveDeltas","updateTreasuryOutput","_iterator6","_step6","usdrToReserve","_iterator7","_step7","_vaultValue$multiasse5","_vaultValue$multiasse6","_o$yield2","_iterator8","_step8","_calculateYieldShares3","address","unstaked_yield_pot","_iterator9","_step9","_orderInfo2$yield","_reserveDeltas$get","assetId","yieldValue","usdrBacking","updateVaultOutput","_vaultValue$multiasse7","_vaultValue$multiasse8","totalUSDrStaked","circulatingSUSDr","totalSUSDrMinted","_iterator0","_step0","sUSDrAmount","_vaultValue$multiasse9","_vaultValue$multiasse0","totalSUSDrBurned","totalUSDrReleased","_iterator1","_step1","uSDrAmount","destAddress","destinationToAddress","TransactionOutput","addOutput","_buildCancelOrdersTx","_callee18","availableSigners","versionHint","cachedOrderRefs","orderRefInputs","cancelRedeemer","_iterator10","_step10","orderRefInput","currentOrderRefInput","requiredSigners","_iterator11","_step11","_iterator13","_step13","outputValue","effectiveSigners","_iterator12","_step12","_keyHash","_t5","_t6","_context18","resolveOrderReferenceInputs","parseCancelOwner","getSignatureKeyHashesFromMultisigScript","addDirectOutput","k","addRequiredSigner","Ed25519KeyHashHex","buildCancelOrdersTx","_x14","expectedActionType","_iterator14","_step14","_utxo$output$datum2","classified","circulatingSupplyDelta","newTreasuryDatum","serializedTreasuryDatum","treasuryValue","newTreasuryValue","coin","modifiedAssetIds","_iterator15","entries","_step15","_treasuryValue$multia","_treasuryValue$multia2","_step15$value","delta","currentReserve","newReserve","existingMultiasset","_iterator16","_step16","_step16$value","sUSDrDelta","uSDrDelta","newVaultDatum","serializedVaultDatum","newVaultValue","_newVaultValue$multia","_newVaultValue$multia2","currentUSDr","newUSDr","_iterator17","_step17","_step17$value","_getVersionSettings","_callee19","_yield$this$getParsed2","_context19","_params$enableTrace","_params$referenceInpu","_params$referenceInpu2","_params$referenceInpu3","_params$referenceInpu4","_params$referenceInpu5","BaseTypes","BaseOneshotOneshotMint","txHash","outputIndex","Script","V0_4ProtocolProtocolWithdraw","BaseMintProxyMintProxyMint","V0_1Types","V0_1TreasuryTreasurySpend","treasuryBootstrap","V0_4OrderOrderSpend","V0_4StakingVaultStakingVaultSpend","stakingVaultBootstrap","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","stakingVaultRefInput","RealfiSDKBase","buildTimelockNativeScript","buildTimelockAddress"],"sources":["../../../../src/sdk/v0_4/index.ts"],"sourcesContent":["import {\n addressFromValidator,\n blake2b_256,\n Ed25519KeyHashHex,\n HexBlob,\n PlutusData,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport {\n BaseTypes,\n V0_1Types,\n V0_4Types,\n} from \"../../generated-types/index.js\";\nimport { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport type {\n Destination,\n MultisigScript,\n OrderDatum,\n ProxyDatum,\n Settings,\n VaultDatum,\n} from \"../../generated-types/v0_4/index.js\";\nimport {\n addDirectOutput,\n addDestinationOutput,\n buildNonceFromUtxo,\n buildTimelockAddress,\n buildTimelockDestination,\n buildTimelockNativeScript,\n buildUnstakeMetadatum,\n UNSTAKE_METADATA_LABEL,\n deployScript,\n destinationToAddress,\n findReserveAsset,\n getDatumFromNFT,\n getSignatureKeyHashesFromMultisigScript,\n usdrToReserve,\n usdrToReserveCeil,\n computeReserveDeltas,\n parseCancelOwner,\n resolveOrderReferenceInputs,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n type IRealfiSDKWithTreasury,\n type ITreasuryDatumResult,\n type IVaultDatumResult,\n type TClientSource,\n type TProtocolVersion,\n lockOrPayAssets,\n RealfiSDKBase,\n sortOrderInputs,\n} from \"../shared/index.js\";\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Types\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Parsed order information extracted from a UTXO.\n */\ninterface IOrderInfo {\n utxo: Core.TransactionUnspentOutput;\n datum: OrderDatum;\n actionType: TOrderActionType;\n amount: bigint;\n /** Yield amount for deposit actions */\n yield?: bigint;\n /** Reserve asset for treasury actions, undefined for stake/unstake */\n reserveAsset?: [string, string];\n}\n\ntype TOrderActionType =\n | \"mint\"\n | \"burn\"\n | \"deposit\"\n | \"withdraw\"\n | \"stake\"\n | \"unstake\";\n\ninterface ITxBuilderWithInternals {\n body: Core.TransactionBody;\n redeemers: Core.Redeemers;\n}\n\nconst MIN_LOVELACE = 2000000n;\n\n/**\n * Floor division for BigInt (rounds toward negative infinity).\n * JavaScript BigInt `/` truncates toward zero, but Aiken (Plutus)\n * uses floor division. These differ for negative dividends.\n */\n/**\n * Extract the requests list from a signed payload action, regardless of action type.\n * Both TreasuryRequest and Request have `origin: { transaction_id, output_index }`.\n */\nfunction getRequestsFromAction(\n action: V0_4Types.ProtocolRedeemer,\n): Array<{ origin: { transaction_id: string; output_index: bigint } }> {\n if (\"Mint\" in action) return action.Mint.requests;\n if (\"Burn\" in action) return action.Burn.requests;\n if (\"Withdraw\" in action) return action.Withdraw.requests;\n if (\"Deposit\" in action) return action.Deposit.requests;\n if (\"Stake\" in action) return action.Stake.requests;\n if (\"Unstake\" in action) return action.Unstake.requests;\n throw new Error(\"Unknown action type in signed payload\");\n}\n\nfunction floorDiv(a: bigint, b: bigint): bigint {\n const q = a / b;\n // Adjust if signs differ and there's a remainder\n if ((a ^ b) < 0n && q * b !== a) {\n return q - 1n;\n }\n return q;\n}\n\n/**\n * Calculate yield split between staked and unstaked portions.\n * Matches on-chain deposit.ak logic: staked_yield_share = total_yield * vault_usdr / treasury_circulating\n */\nfunction calculateYieldShares(\n totalYield: bigint,\n vaultUSDr: bigint,\n treasuryCirculating: bigint,\n): { stakedYieldShare: bigint; unstakedYieldShare: bigint } {\n const stakedYieldShare =\n treasuryCirculating > 0n\n ? floorDiv(totalYield * vaultUSDr, treasuryCirculating)\n : 0n;\n const unstakedYieldShare = totalYield - stakedYieldShare;\n return { stakedYieldShare, unstakedYieldShare };\n}\n\nfunction toSpendOrderingKey(input: Core.TransactionInput): string {\n return `${input.transactionId().toString()}${input.index().toString()}`;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV0_4 {\n version: \"V0_4\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** USDr asset name hex */\n assetNameHex: string;\n /** sUSDr asset name hex */\n sUSDrAssetNameHex: string;\n /** The treasury bootstrap UTxO reference */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** The staking vault bootstrap UTxO reference */\n stakingVaultBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n stakingVaultRefInput?: Core.TransactionUnspentOutput;\n };\n clientSource?: TClientSource;\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// SDK Class\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * V0_4 SDK implementation.\n *\n * Extends the protocol with staking (USDr->sUSDr), unstaking (sUSDr->USDr),\n * multi-reserve assets, deposit with interest splitting, and index-based optimization.\n * All order types (mint, burn, deposit, withdraw, stake, unstake) are request-based.\n */\nexport class RealfiSDKV0_4

\n extends RealfiSDKBase\n implements IRealfiSDKWithTreasury\n{\n readonly version = \"V0_4\" as const;\n\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n readonly treasuryNFTAssetId: Core.AssetId;\n readonly orderScriptHash: Core.Hash28ByteBase16;\n readonly orderScriptAddress: Core.Address;\n readonly treasuryAddress: Core.Address;\n readonly stakingVaultScriptHash: Core.Hash28ByteBase16;\n readonly stakingVaultAddress: Core.Address;\n readonly stakingVaultNFTAssetId: Core.AssetId;\n readonly sUSDrAssetNameHex: string;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n protected readonly treasuryScript: Core.Script;\n protected readonly orderScript: Core.Script;\n protected readonly stakingVaultScript: Core.Script;\n\n private constructor(\n blaze: Blaze,\n params: {\n version: \"V0_4\";\n proxyBootstrap: { txHash: Core.TransactionId; outputIndex: bigint };\n assetNameHex: string;\n sUSDrAssetNameHex: string;\n enableTrace?: boolean;\n scriptDeploymentAddress?: Core.Address;\n clientSource?: TClientSource;\n },\n scripts: {\n oneShotScript: Core.Script;\n protocolScript: Core.Script;\n mintProxyScript: Core.Script;\n treasuryScript: Core.Script;\n orderScript: Core.Script;\n stakingVaultScript: Core.Script;\n },\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n super(\n blaze,\n {\n version: \"V0_4\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace: params.enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n clientSource: params.clientSource,\n },\n cachedReferenceInputs,\n );\n\n this.sUSDrAssetNameHex = params.sUSDrAssetNameHex;\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolScript = scripts.protocolScript;\n this.mintProxyScript = scripts.mintProxyScript;\n this.treasuryScript = scripts.treasuryScript;\n this.orderScript = scripts.orderScript;\n this.stakingVaultScript = scripts.stakingVaultScript;\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n this.treasuryScriptHash = this.treasuryScript.hash();\n this.orderScriptHash = this.orderScript.hash();\n this.stakingVaultScriptHash = this.stakingVaultScript.hash();\n\n this.treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n this.orderScriptAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n this.stakingVaultAddress = addressFromValidator(\n this.network,\n this.stakingVaultScript,\n );\n\n // Treasury NFT: policy = treasury script hash, name = \"treasury\"\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n this.treasuryNFTAssetId = Core.AssetId(\n this.treasuryScriptHash + treasuryAssetName.toString(),\n );\n\n // Staking vault NFT: policy = staking vault script hash, name = \"staking_vault\"\n const vaultAssetName = Core.AssetName(toHex(Buffer.from(\"staking_vault\")));\n this.stakingVaultNFTAssetId = Core.AssetId(\n this.stakingVaultScriptHash + vaultAssetName.toString(),\n );\n }\n\n /**\n * Create a V0_4 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_4,\n ): RealfiSDKV0_4 {\n const enableTrace = params.enableTrace ?? false;\n\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n\n const protocolScript = new V0_4Types.V0_4ProtocolProtocolWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const orderScript = new V0_4Types.V0_4OrderOrderSpend(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const stakingVaultScript = new V0_4Types.V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV0_4(\n blaze,\n {\n version: \"V0_4\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n sUSDrAssetNameHex: params.sUSDrAssetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n clientSource: params.clientSource,\n },\n {\n oneShotScript,\n protocolScript,\n mintProxyScript,\n treasuryScript,\n orderScript,\n stakingVaultScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n orderRefInput: params.referenceInputs?.orderRefInput,\n stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the treasury NFT.\n */\n async mintTreasuryNFT(\n treasuryBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash);\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n\n const datum = Data.serialize(V0_1TreasuryDatum, initialDatum);\n const tx = await this.blaze\n .newTransaction()\n .addInput(treasuryBootstrapUtxo)\n .addMint(\n treasuryPolicyId,\n new Map([[treasuryAssetName, 1n]]),\n Data.Void(),\n )\n .lockAssets(\n this.treasuryAddress,\n makeValue(10000000n, [this.treasuryNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.treasuryScript);\n\n return { tx, nftAssetId: this.treasuryNFTAssetId };\n }\n\n async deployTreasury(): Promise {\n return deployScript(\n this.blaze,\n this.treasuryScript,\n this.scriptDeploymentAddress,\n );\n }\n\n async deployOrderContract(): Promise {\n return deployScript(\n this.blaze,\n this.orderScript,\n this.scriptDeploymentAddress,\n );\n }\n\n async getTreasuryDatum(): Promise> {\n const {\n utxo: treasuryUtxo,\n datum: treasuryDatum,\n parsedDatum: parsedTreasuryDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1TreasuryDatum,\n );\n\n if (!treasuryUtxo) {\n throw new Error(\"No UTXO found with the treasury NFT\");\n }\n if (!treasuryDatum) {\n throw new Error(\"No treasury datum found\");\n }\n\n return {\n treasuryUtxo,\n treasuryDatum,\n parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Staking Vault Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the staking vault NFT and create initial vault UTxO.\n */\n async mintStakingVaultNFT(\n stakingVaultBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: VaultDatum = { circulating_susdr: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const vaultPolicyId = Core.PolicyId(this.stakingVaultScriptHash);\n const vaultAssetName = Core.AssetName(toHex(Buffer.from(\"staking_vault\")));\n\n const datum = Data.serialize(V0_4Types.VaultDatum, initialDatum);\n const tx = await this.blaze\n .newTransaction()\n .addInput(stakingVaultBootstrapUtxo)\n .addMint(vaultPolicyId, new Map([[vaultAssetName, 1n]]), Data.Void())\n .lockAssets(\n this.stakingVaultAddress,\n makeValue(10000000n, [this.stakingVaultNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.stakingVaultScript);\n\n return { tx, nftAssetId: this.stakingVaultNFTAssetId };\n }\n\n async deployStakingVault(): Promise {\n return deployScript(\n this.blaze,\n this.stakingVaultScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */\n getSusdrAssetId(): Core.AssetId {\n return Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex);\n }\n\n async getVaultDatum(): Promise> {\n const {\n utxo: vaultUtxo,\n datum: vaultDatum,\n parsedDatum: parsedVaultDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.stakingVaultNFTAssetId,\n V0_4Types.VaultDatum,\n );\n\n if (!vaultUtxo) {\n throw new Error(\"No UTXO found with the staking vault NFT\");\n }\n if (!vaultDatum) {\n throw new Error(\"No vault datum found\");\n }\n\n return {\n vaultUtxo,\n vaultDatum,\n parsedVaultDatum: parsedVaultDatum as VaultDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: ProxyDatum,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(V0_4Types.ProxyDatum, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: ProxyDatum,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(V0_4Types.ProxyDatum, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n }\n\n async getParsedProxyDatum(): Promise> {\n if (this.cachedProxyDatumResult) {\n return this.cachedProxyDatumResult as IProxyDatumResult;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(V0_4Types.ProxyDatum, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Order Builder Methods (6 separate methods, shared _buildOrderTx helper)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Internal helper to build an order transaction.\n */\n private async _buildOrderTx(params: {\n action: V0_4Types.OrderAction;\n valueToLock: Core.Value;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n extraLabels?: Map;\n }): Promise {\n const orderContractAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n\n let owner = params.owner;\n if (!owner) {\n const addressProps = (\n await this.blaze.wallet.getChangeAddress()\n ).getProps();\n const keyHash =\n addressProps.delegationPart?.hash ?? addressProps.paymentPart?.hash;\n if (!keyHash) {\n throw new Error(\"Could not derive owner key hash from wallet address\");\n }\n owner = {\n Signature: { key_hash: keyHash.toString() },\n };\n }\n\n const orderDatum: OrderDatum = {\n action: params.action,\n owner,\n destination: params.destination,\n data: params.data ?? Data.Void(),\n };\n const serializedDatum = Data.serialize(V0_4Types.OrderDatum, orderDatum);\n\n const tx = this.newOrderTransaction(params.extraLabels);\n tx.lockAssets(orderContractAddress, params.valueToLock, serializedDatum);\n return tx;\n }\n\n /**\n * Build a mint order: lock reserve tokens, request USDr minting.\n */\n async buildMintOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Mint amount must be positive\");\n }\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n // Convert USDr amount to reserve amount using ceiling division\n // to ensure enough reserve is locked for on-chain validation\n const settings = await this.getVersionSettings();\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAmount = usdrToReserveCeil(params.amount, ra);\n return this._buildOrderTx({\n action: {\n OMint: { amount: params.amount, reserve_asset: params.reserveAsset },\n },\n valueToLock: makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a redeem (burn) order: lock USDr, request reserve token redemption.\n */\n async buildRedeemOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Redeem amount must be positive\");\n }\n const settings = await this.getVersionSettings();\n findReserveAsset(settings, params.reserveAsset);\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n return this._buildOrderTx({\n action: {\n ORedeem: {\n amount: params.amount,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a deposit order: lock reserve tokens, request treasury deposit.\n */\n async buildDepositOrderTx(params: {\n principal: bigint;\n yield: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.principal < 0n) {\n throw new Error(\"Deposit principal must be non-negative\");\n }\n if (params.principal === 0n && params.yield === 0n) {\n throw new Error(\"Deposit must have non-zero principal or yield\");\n }\n const settings = await this.getVersionSettings();\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n\n let valueToLock: Core.Value;\n\n if (params.yield >= 0n) {\n // POSITIVE YIELD: need reserve backing for BOTH principal AND yield.\n // Contract validates: reserve_to_usdr(treasury_delta) >= principal + yield\n // So we must lock: usdrToReserveCeil(principal + yield) reserve tokens\n const totalUSDrBacking = params.principal + params.yield;\n if (totalUSDrBacking > 0n) {\n const reserveAmount = usdrToReserveCeil(totalUSDrBacking, ra);\n valueToLock = makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]);\n } else {\n valueToLock = makeValue(MIN_LOVELACE);\n }\n } else {\n // NEGATIVE YIELD: lock principal (in reserve) + unstaked yield share (in USDr).\n // The staked share comes from the vault (validated on-chain via vault USDr change).\n const principalReserve =\n params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n;\n\n valueToLock =\n principalReserve > 0n\n ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve])\n : makeValue(MIN_LOVELACE);\n\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n // Fetch current state to calculate yield split\n const { parsedTreasuryDatum } = await this.getTreasuryDatum();\n const vaultUtxo = (await this.getVaultDatum()).vaultUtxo;\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n\n const { unstakedYieldShare } = calculateYieldShares(\n params.yield,\n vaultUSDr,\n treasuryCirculating,\n );\n\n // Lock only the unstaked portion (negated since unstakedYieldShare is negative)\n if (unstakedYieldShare < 0n) {\n valueToLock = Value.merge(\n valueToLock,\n makeValue(0n, [stablecoinAssetId, -unstakedYieldShare]),\n );\n }\n }\n return this._buildOrderTx({\n action: {\n ODeposit: {\n principal: params.principal,\n yield: params.yield,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock,\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a withdraw order: lock min ADA, request reserve token withdrawal.\n */\n async buildWithdrawOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Withdraw amount must be positive\");\n }\n const settings = await this.getVersionSettings();\n findReserveAsset(settings, params.reserveAsset);\n return this._buildOrderTx({\n action: {\n OWithdraw: {\n amount: params.amount,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a stake order: lock USDr, request sUSDr minting.\n */\n async buildStakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Stake amount must be positive\");\n }\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n return this._buildOrderTx({\n action: { OStake: { amount: params.amount } },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build an unstake order: lock sUSDr, request USDr release.\n *\n * The destination is automatically set to a native script address that\n * enforces a timelock: AllOf { Signature(user), After(unlockTime) }.\n * This means the released USDr can only be spent by the user after the\n * unlock time has passed.\n *\n * @param params.amount - Amount of sUSDr to unstake\n * @param params.destination - The user's actual destination (used to extract payment key hash)\n * @param params.unlockTime - Slot number after which the user can spend the released USDr\n */\n async buildUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n unlockSlot: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Unstake amount must be positive\");\n }\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n\n // Build the timelock native script destination from the user's key hash\n const timelockDestination = buildTimelockDestination(\n params.destination,\n params.unlockSlot,\n );\n const extraLabels = new Map([\n [\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(params.destination, params.unlockSlot),\n ],\n ]);\n\n return this._buildOrderTx({\n action: { OUnstake: { amount: params.amount } },\n valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]),\n owner: params.owner,\n destination: timelockDestination,\n data: params.data,\n extraLabels,\n });\n }\n\n /**\n * Build a timelock Destination from a user's destination and unlock time.\n *\n * Creates a native script: AllOf { Signature(userKeyHash), After(unlockTime) }\n * and returns a Destination pointing to that script's address.\n */\n\n static buildTimelockNativeScript = buildTimelockNativeScript;\n static buildTimelockAddress = buildTimelockAddress;\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Signed Payload and Signing\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build the V0_4 SignedPayload_ProtocolRedeemer from order inputs.\n * Returns both the CBOR hex string (for buildExecuteOrdersTx) and\n * the blake2b_256 hash (for CIP-30 signing).\n *\n * V0.4 contract requires signing the blake2b_256 hash of the payload,\n * not the raw CBOR like V0.3.\n */\n async getSignedPayloadFromOrderInputs(\n orderInputs: Core.TransactionInput[],\n ): Promise<{ signedPayload: string; payloadHash: string }> {\n if (orderInputs.length === 0) {\n throw new Error(\"At least one order input is required\");\n }\n\n const sortedInputs = sortOrderInputs(orderInputs);\n const nonce = buildNonceFromUtxo(sortedInputs[0]!) as V0_4Types.Nonce;\n\n const resolvedUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedInputs);\n\n let actionType: TOrderActionType | null = null;\n const treasuryRequests: V0_4Types.TreasuryRequest[] = [];\n const requests: V0_4Types.Request[] = [];\n\n for (const utxo of resolvedUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(V0_4Types.OrderDatum, datumData) as OrderDatum;\n const origin = {\n transaction_id: utxo.input().transactionId().toString(),\n output_index: utxo.input().index(),\n };\n\n const parsed = this.classifyOrderAction(datum);\n\n if (actionType === null) {\n actionType = parsed.actionType;\n } else if (actionType !== parsed.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n if (parsed.isTreasuryAction) {\n treasuryRequests.push({\n destination: datum.destination,\n amount: parsed.amount,\n yield: parsed.yield ?? 0n,\n origin,\n reserve_asset: parsed.reserveAsset!,\n });\n } else {\n requests.push({\n destination: datum.destination,\n amount: parsed.amount,\n origin,\n });\n }\n }\n\n let action: V0_4Types.ProtocolRedeemer;\n switch (actionType) {\n case \"mint\":\n action = { Mint: { requests: treasuryRequests } };\n break;\n case \"burn\":\n action = { Burn: { requests: treasuryRequests } };\n break;\n case \"withdraw\":\n action = { Withdraw: { requests: treasuryRequests } };\n break;\n case \"deposit\":\n action = { Deposit: { requests: treasuryRequests } };\n break;\n case \"stake\":\n action = { Stake: { requests } };\n break;\n case \"unstake\":\n action = { Unstake: { requests } };\n break;\n default:\n throw new Error(\"No orders to process\");\n }\n\n const payload: V0_4Types.SignedPayload_ProtocolRedeemer = {\n action,\n nonce,\n };\n const serialized = Data.serialize(\n V0_4Types.SignedPayload_ProtocolRedeemer,\n payload,\n );\n const signedPayload = serialized.toCbor().toString();\n const payloadHash = blake2b_256(HexBlob(signedPayload));\n\n return { signedPayload, payloadHash };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Execute Orders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to execute orders.\n *\n * Handles all 6 action types: mint, burn, deposit, withdraw, stake, unstake.\n * The signedPayload is a CBOR hex string (matching V0.3 style).\n *\n * NOTE: All wallet fee inputs are pre-added to the transaction so that\n * input indices for the ExtraProtocolRedeemer are stable. Coin selection\n * during complete() should be a no-op since all wallet UTxOs are already\n * included, but it cannot be disabled because Blaze also uses that phase\n * to prepare collateral.\n */\n async buildExecuteOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n signedPayload: string;\n signatures: V0_4Types.Tuple_VerificationKey_COSESign1[];\n }): Promise {\n const {\n orderInputs,\n signedPayload: signedPayloadCbor,\n signatures,\n } = params;\n\n // Deserialize CBOR hex to object for internal use\n const signedPayload = parse(\n V0_4Types.SignedPayload_ProtocolRedeemer,\n PlutusData.fromCbor(HexBlob(signedPayloadCbor)),\n ) as V0_4Types.SignedPayload_ProtocolRedeemer;\n\n // 1. Sort and resolve order UTxOs\n const sortedOrderInputs = sortOrderInputs(orderInputs);\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs);\n\n // 2. Parse orders and validate same type\n const orderInfos = this.parseOrderInfos(orderUtxos);\n const actionType = orderInfos[0]!.actionType;\n\n // 3. Get protocol settings\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const settings = parsedProxyDatum.settings as Settings;\n\n // 4. Determine what we need\n const needsTreasury = [\"mint\", \"burn\", \"withdraw\", \"deposit\"].includes(\n actionType,\n );\n const needsVault = [\"stake\", \"unstake\", \"deposit\"].includes(actionType);\n\n // 5. Get script reference inputs\n const scriptHashesNeeded: Record = {\n protocol: this.protocolScriptHash,\n order: this.orderScriptHash,\n };\n if (needsTreasury) {\n scriptHashesNeeded.treasury = this.treasuryScriptHash;\n }\n if (needsVault) {\n scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash;\n }\n const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded);\n\n // 6. Fetch treasury and vault if needed\n let treasuryUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedTreasuryDatum: V0_1TreasuryDatum | undefined;\n if (needsTreasury) {\n const treasuryResult = await this.getTreasuryDatum();\n treasuryUtxo = treasuryResult.treasuryUtxo;\n parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum;\n }\n\n let vaultUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedVaultDatum: VaultDatum | undefined;\n if (needsVault) {\n const vaultResult = await this.getVaultDatum();\n vaultUtxo = vaultResult.vaultUtxo;\n parsedVaultDatum = vaultResult.parsedVaultDatum;\n }\n\n // 7. Gather wallet UTxOs so we can include them in index calculations.\n // Blaze's complete() adds wallet inputs for fees, which shifts the\n // ledger-sorted input indices. By fetching wallet UTxOs upfront and\n // adding them explicitly, we know the full input set before computing\n // indices for the ExtraProtocolRedeemer.\n const walletUtxos = await this.blaze.wallet.getUnspentOutputs();\n const excludedInputIds = new Set();\n const utxoKey = (inp: Core.TransactionInput) =>\n `${inp.transactionId().toString()}#${inp.index().toString()}`;\n // Exclude script inputs (order, treasury, vault)\n for (const orderInfo of orderInfos) {\n excludedInputIds.add(utxoKey(orderInfo.utxo.input()));\n }\n if (treasuryUtxo) {\n excludedInputIds.add(utxoKey(treasuryUtxo.input()));\n }\n if (vaultUtxo) {\n excludedInputIds.add(utxoKey(vaultUtxo.input()));\n }\n // Exclude reference inputs (must be disjoint from regular inputs)\n excludedInputIds.add(utxoKey(proxyUtxo.input()));\n for (const refUtxo of Object.values(refInputs)) {\n if (refUtxo) {\n excludedInputIds.add(utxoKey(refUtxo.input()));\n }\n }\n const feeUtxos = walletUtxos.filter(\n (utxo) => !excludedInputIds.has(utxoKey(utxo.input())),\n );\n\n // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex).\n // Include ALL inputs: order, treasury, vault, AND wallet fee inputs.\n const allInputRefs: Core.TransactionInput[] = orderInfos.map((o) =>\n o.utxo.input(),\n );\n if (treasuryUtxo) {\n allInputRefs.push(treasuryUtxo.input());\n }\n if (vaultUtxo) {\n allInputRefs.push(vaultUtxo.input());\n }\n for (const feeUtxo of feeUtxos) {\n allInputRefs.push(feeUtxo.input());\n }\n\n const sortedAllInputRefs = [...allInputRefs].sort((a, b) => {\n const txA = a.transactionId().toString();\n const txB = b.transactionId().toString();\n if (txA < txB) return -1;\n if (txA > txB) return 1;\n return Number(a.index()) - Number(b.index());\n });\n\n const findInputIdx = (input: Core.TransactionInput): bigint => {\n const idx = sortedAllInputRefs.findIndex(\n (r) =>\n r.transactionId().toString() === input.transactionId().toString() &&\n r.index() === input.index(),\n );\n return BigInt(idx);\n };\n\n const treasuryInputIdx = treasuryUtxo\n ? findInputIdx(treasuryUtxo.input())\n : 0n;\n const vaultInputIdx = vaultUtxo\n ? findInputIdx(vaultUtxo.input())\n : undefined;\n\n // 8a. Correlate order inputs to signed request indices via origin fields.\n // When all orders are present this produces the same identity mapping as before.\n // When a subset is passed (partial execution), it maps each input to the\n // correct request index in the signed payload.\n const signedRequests = getRequestsFromAction(signedPayload.action);\n const originToRequestIdx = new Map();\n for (let i = 0; i < signedRequests.length; i++) {\n const o = signedRequests[i]!.origin;\n originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i);\n }\n\n const inputToRequests: bigint[] = [];\n const requestToOutputs: bigint[] = [];\n for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) {\n const input = orderInfos[outputIdx]!.utxo.input();\n const key = `${input.transactionId()}#${input.index()}`;\n const requestIdx = originToRequestIdx.get(key);\n if (requestIdx === undefined) {\n throw new Error(`Order input ${key} not found in signed payload`);\n }\n inputToRequests.push(BigInt(requestIdx));\n requestToOutputs.push(BigInt(outputIdx));\n }\n\n // 9. Build outputs and compute output indices\n // Output layout:\n // [destination outputs] [extra outputs*] [treasury output if needed] [vault output if needed]\n // *extra outputs: yield pot output for deposit with non-zero positive yield\n const numDestOutputs = orderInfos.length;\n\n // For deposit with positive yield, the yield pot output is inserted after destinations\n let numExtraOutputs = 0;\n if (actionType === \"deposit\") {\n const totalYield = orderInfos.reduce(\n (sum, o) => sum + (o.yield ?? 0n),\n 0n,\n );\n if (totalYield > 0n) {\n // Check if unstaked yield share is > 0\n const vaultValue = vaultUtxo!.output().amount();\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum!.circulating_supply;\n const { unstakedYieldShare } = calculateYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n );\n if (unstakedYieldShare > 0n) {\n numExtraOutputs = 1;\n }\n }\n }\n\n const treasuryOutputIdx = needsTreasury\n ? BigInt(numDestOutputs + numExtraOutputs)\n : 0n;\n const vaultOutputIdx = needsVault\n ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0))\n : undefined;\n\n // 10. Build ExtraProtocolRedeemer\n const extra: V0_4Types.ExtraProtocolRedeemer = {\n request_to_outputs: requestToOutputs,\n input_to_requests: inputToRequests,\n treasury_input_idx: treasuryInputIdx,\n treasury_output_idx: treasuryOutputIdx,\n vault_input_idx: vaultInputIdx,\n vault_output_idx: vaultOutputIdx,\n };\n\n // 11. Build SignedRedeemer (payload is deserialized object in v0_4)\n const serializedSignedRedeemer = Data.serialize(\n V0_4Types.SignedRedeemer_ExtraProtocolRedeemer,\n {\n extra,\n payload: signedPayload,\n signatures,\n },\n );\n\n const executeRedeemer = Data.serialize(V0_4Types.OrderRedeemer, \"Execute\");\n\n const feeUtxoByKey = new Map(\n feeUtxos.map((utxo) => [utxoKey(utxo.input()), utxo]),\n );\n const orderInfoByKey = new Map(\n orderInfos.map((orderInfo) => [\n utxoKey(orderInfo.utxo.input()),\n orderInfo,\n ]),\n );\n const treasuryInputKey = treasuryUtxo\n ? utxoKey(treasuryUtxo.input())\n : null;\n const vaultInputKey = vaultUtxo ? utxoKey(vaultUtxo.input()) : null;\n const spendRedeemerInputs = [\n ...orderInfos.map((orderInfo) => orderInfo.utxo.input()),\n ];\n if (treasuryUtxo) {\n spendRedeemerInputs.push(treasuryUtxo.input());\n }\n if (vaultUtxo) {\n spendRedeemerInputs.push(vaultUtxo.input());\n }\n\n // 12. Build the transaction\n const tx = this.newOrderTransaction();\n\n // Add all spend inputs in ledger order so the generated spend redeemer\n // pointers line up with the final transaction input indices.\n for (const inputRef of sortedAllInputRefs) {\n const inputKey = utxoKey(inputRef);\n const orderInfo = orderInfoByKey.get(inputKey);\n if (orderInfo) {\n tx.addInput(orderInfo.utxo, executeRedeemer);\n continue;\n }\n\n if (treasuryInputKey && inputKey === treasuryInputKey) {\n tx.addInput(treasuryUtxo!, Data.Void());\n continue;\n }\n\n if (vaultInputKey && inputKey === vaultInputKey) {\n tx.addInput(vaultUtxo!, Data.Void());\n continue;\n }\n\n const feeUtxo = feeUtxoByKey.get(inputKey);\n if (feeUtxo) {\n tx.addInput(feeUtxo);\n continue;\n }\n\n throw new Error(\n `buildExecuteOrdersTx: missing input metadata for ${inputKey}`,\n );\n }\n\n // Add reference inputs\n tx.addReferenceInput(refInputs.protocol!);\n tx.addReferenceInput(refInputs.order!);\n tx.addReferenceInput(proxyUtxo);\n if (refInputs.treasury) {\n tx.addReferenceInput(refInputs.treasury);\n }\n if (refInputs.stakingVault) {\n tx.addReferenceInput(refInputs.stakingVault);\n }\n\n // Add protocol withdrawal with signed redeemer\n const protocolRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: this.protocolScriptHash,\n },\n this.network,\n );\n tx.addWithdrawal(protocolRewardAccount, 0n, serializedSignedRedeemer);\n\n // Build per-action-type outputs, minting, and state updates\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n\n switch (actionType) {\n case \"mint\":\n this.buildMintExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"burn\":\n this.buildBurnExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"withdraw\":\n this.buildWithdrawExecute(\n tx,\n orderInfos,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"deposit\":\n this.buildDepositExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n vaultUtxo!,\n parsedVaultDatum!,\n settings,\n );\n break;\n case \"stake\":\n this.buildStakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n );\n break;\n case \"unstake\":\n this.buildUnstakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n );\n break;\n }\n\n // Provide the mint proxy script for minting\n tx.provideScript(this.mintProxyScript);\n this.realignSpendRedeemerIndices(tx, spendRedeemerInputs);\n\n return tx;\n }\n\n private realignSpendRedeemerIndices(\n tx: TxBuilder,\n spendRedeemerInputs: Core.TransactionInput[],\n ): void {\n const txInternals = tx as unknown as ITxBuilderWithInternals;\n const bodyInputs = txInternals.body.inputs().values();\n const redeemers = [...txInternals.redeemers.values()];\n const spendRedeemers = redeemers\n .filter((redeemer) => redeemer.tag() === Core.RedeemerTag.Spend)\n .sort((a, b) => Number(a.index() - b.index()));\n\n if (spendRedeemers.length !== spendRedeemerInputs.length) {\n throw new Error(\n `buildExecuteOrdersTx: spend redeemer count mismatch. inputs=${spendRedeemerInputs.length} redeemers=${spendRedeemers.length}`,\n );\n }\n\n const expectedOrdering = [...spendRedeemerInputs].sort((a, b) =>\n toSpendOrderingKey(a).localeCompare(toSpendOrderingKey(b)),\n );\n\n for (let i = 0; i < spendRedeemers.length; i++) {\n const input = expectedOrdering[i]!;\n const actualIndex = bodyInputs.findIndex(\n (bodyInput) =>\n bodyInput.transactionId().toString() ===\n input.transactionId().toString() &&\n bodyInput.index() === input.index(),\n );\n\n if (actualIndex < 0) {\n throw new Error(\n `buildExecuteOrdersTx: could not find spend input ${input.transactionId().toString()}#${input.index().toString()} in tx body`,\n );\n }\n\n spendRedeemers[i]!.setIndex(BigInt(actualIndex));\n }\n\n txInternals.redeemers.setValues(redeemers);\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Per-Action Execute Builders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint: reserve goes to treasury, USDr minted to destinations.\n */\n private buildMintExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: Settings,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send USDr to each destination\n for (const orderInfo of orderInfos) {\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount]),\n );\n }\n\n // Mint USDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Compute per-reserve-asset deltas\n const reserveDeltas = computeReserveDeltas(orderInfos, settings);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalAmount,\n );\n }\n\n /**\n * Burn: USDr burned, reserve sent to destinations.\n */\n private buildBurnExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: Settings,\n ): void {\n // Amount is negative in datum for burns\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send reserve tokens to each destination\n // Convert USDr amount to reserve amount using floor division (protocol-protective)\n for (const orderInfo of orderInfos) {\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserve(-orderInfo.amount, ra);\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n );\n }\n\n // Burn USDr (totalAmount is negative)\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Compute per-reserve-asset deltas\n const reserveDeltas = computeReserveDeltas(orderInfos, settings);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalAmount,\n );\n }\n\n /**\n * Withdraw: reserve sent to destinations, no mint/burn.\n */\n private buildWithdrawExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: Settings,\n ): void {\n // Destination outputs: send reserve tokens to each destination\n // Convert USDr amount to reserve amount using floor division\n for (const orderInfo of orderInfos) {\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserve(orderInfo.amount, ra);\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n );\n }\n\n // Update treasury: reserve decreases, no circulating_supply change\n // On-chain: amount_sign = -1 for withdraw, expected_delta = usdr_to_reserve(-amount, ra)\n const reserveDeltas = computeReserveDeltas(orderInfos, settings, true);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n 0n,\n );\n }\n\n /**\n * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot.\n */\n private buildDepositExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatum,\n settings: Settings,\n ): void {\n const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n);\n\n // Destination outputs: min ADA to each destination (contract validates via request_to_outputs)\n for (const orderInfo of orderInfos) {\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n makeValue(MIN_LOVELACE),\n );\n }\n\n // Calculate yield split matching on-chain deposit.ak logic\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n\n const { stakedYieldShare, unstakedYieldShare } = calculateYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n );\n\n if (totalYield > 0n) {\n // Positive yield: mint USDr for the yield amount\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n\n // Send unstaked yield share to the yield pot address\n if (unstakedYieldShare > 0n) {\n addDestinationOutput(\n tx,\n this.network,\n {\n address: settings.unstaked_yield_pot,\n datum: \"NoDatum\",\n },\n makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare]),\n );\n }\n } else if (totalYield < 0n) {\n // Negative yield: burn USDr (sourced from order inputs already consumed)\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n }\n // totalYield === 0n: no mint/burn needed\n\n // Update treasury: reserve increases, circulating_supply changes by yield.\n // For positive yield, treasury receives reserve backing for BOTH principal AND yield.\n // For negative yield, treasury only receives reserve backing for principal.\n const reserveDeltas = new Map();\n for (const orderInfo of orderInfos) {\n const assetId = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1];\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const yieldValue = orderInfo.yield ?? 0n;\n\n // Calculate USDr backing needed based on yield sign\n const usdrBacking =\n yieldValue >= 0n\n ? orderInfo.amount + yieldValue // principal + yield for positive yield\n : orderInfo.amount; // just principal for negative yield\n\n // Convert USDr backing to reserve amount\n const reserveAmount = usdrToReserve(usdrBacking, ra);\n\n reserveDeltas.set(\n assetId,\n (reserveDeltas.get(assetId) ?? 0n) + reserveAmount,\n );\n }\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalYield,\n );\n\n // Update vault: sUSDr unchanged, USDr changes by staked yield share\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n 0n,\n stakedYieldShare,\n );\n }\n\n /**\n * Stake: USDr locked in vault, sUSDr minted to destinations.\n */\n private buildStakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatum,\n ): void {\n const totalUSDrStaked = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Calculate vault USDr balance\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n // Calculate total sUSDr to mint using batch formula (matches on-chain stake.ak)\n // On-chain: susdr_to_mint = total_usdr_staked * circulating_susdr_before / vault_usdr_before\n let totalSUSDrMinted: bigint;\n if (circulatingSUSDr === 0n || vaultUSDr === 0n) {\n totalSUSDrMinted = totalUSDrStaked;\n } else {\n totalSUSDrMinted = (totalUSDrStaked * circulatingSUSDr) / vaultUSDr;\n }\n\n // Calculate per-order sUSDr for destination outputs (matches validate_stake_outputs).\n // Note: sum(per-order floors) may be less than totalSUSDrMinted by at most (n-1) units\n // due to floor(sum) >= sum(floor). The difference (\"dust\") is minted but not assigned\n // to any destination output — it ends up in the executor's change output. This is an\n // inherent consequence of the on-chain contract requiring both aggregate mint equality\n // and per-request floor equality on outputs.\n for (const orderInfo of orderInfos) {\n let sUSDrAmount: bigint;\n if (circulatingSUSDr === 0n || vaultUSDr === 0n) {\n sUSDrAmount = orderInfo.amount;\n } else {\n sUSDrAmount = (orderInfo.amount * circulatingSUSDr) / vaultUSDr;\n }\n\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n makeValue(MIN_LOVELACE, [sUSDrAssetId, sUSDrAmount]),\n );\n }\n\n // Mint sUSDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]),\n Data.Void(),\n );\n\n // Update vault: USDr increases by staked amount, circulating_susdr increases\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n totalSUSDrMinted,\n totalUSDrStaked,\n );\n }\n\n /**\n * Unstake: sUSDr burned, USDr sent to user's destination address.\n */\n private buildUnstakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatum,\n ): void {\n const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Calculate vault USDr balance\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n if (circulatingSUSDr === 0n) {\n throw new Error(\"Cannot unstake: no sUSDr in circulation\");\n }\n\n // Calculate USDr to release for each order\n let totalUSDrReleased = 0n;\n for (const orderInfo of orderInfos) {\n const uSDrAmount = (orderInfo.amount * vaultUSDr) / circulatingSUSDr;\n totalUSDrReleased += uSDrAmount;\n\n // Send USDr to the destination (native script timelock address).\n // Use an explicit output because lockAssets requires a datum, but the\n // contract expects NoDatum.\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n const output = new Core.TransactionOutput(\n destAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, uSDrAmount]),\n );\n tx.addOutput(output);\n }\n\n // Burn sUSDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]),\n Data.Void(),\n );\n\n // Update vault: USDr decreases, circulating_susdr decreases\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n -totalSUSDrBurned,\n -totalUSDrReleased,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Cancel Orders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to cancel orders.\n */\n async buildCancelOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n destination?: Core.Address;\n /**\n * Optional set of key hashes that the caller can sign with.\n * When provided, only these keys are added as required signers —\n * essential for AnyOf/AtLeast multisig owners where not all keys\n * need to sign. When omitted, all extracted key hashes are added\n * (correct for Signature and AllOf owners, but over-constrains\n * AnyOf/AtLeast).\n */\n availableSigners?: Set;\n versionHint?: TProtocolVersion; // version of the orders to cancel. Optional, only to ensure correct datum parsing.\n }): Promise {\n const { orderInputs, destination, availableSigners, versionHint } = params;\n\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(orderInputs);\n\n if (orderUtxos.length === 0) {\n throw new Error(\"No orders to cancel\");\n }\n\n const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput\n ? new Map([\n [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput],\n ])\n : undefined;\n\n const orderRefInputs = await resolveOrderReferenceInputs(\n this.blaze,\n orderUtxos,\n cachedOrderRefs,\n this.scriptDeploymentAddress,\n );\n\n const cancelRedeemer = Data.serialize(V0_4Types.OrderRedeemer, \"Cancel\");\n const destAddress =\n destination ?? (await this.blaze.wallet.getChangeAddress());\n\n const tx = this.newOrderTransaction();\n\n for (const orderRefInput of orderRefInputs.values()) {\n tx.addReferenceInput(orderRefInput);\n }\n\n // cache current version of order script reference input\n const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash);\n if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) {\n this.cachedReferenceInputs.orderRefInput = currentOrderRefInput;\n }\n\n const requiredSigners = new Set();\n\n for (const utxo of orderUtxos) {\n const owner = await parseCancelOwner(utxo, versionHint);\n for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) {\n requiredSigners.add(keyHash);\n }\n\n tx.addInput(utxo, cancelRedeemer);\n const outputValue = utxo.output().amount();\n addDirectOutput(tx, destAddress, outputValue);\n }\n\n const effectiveSigners = availableSigners\n ? new Set([...requiredSigners].filter((k) => availableSigners.has(k)))\n : requiredSigners;\n\n for (const keyHash of effectiveSigners) {\n tx.addRequiredSigner(Ed25519KeyHashHex(keyHash));\n }\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Private Helpers\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Parse order UTxOs into IOrderInfo objects and validate they are all the same type.\n */\n private parseOrderInfos(\n orderUtxos: Core.TransactionUnspentOutput[],\n ): IOrderInfo[] {\n const orderInfos: IOrderInfo[] = [];\n let expectedActionType: TOrderActionType | null = null;\n\n for (const utxo of orderUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(V0_4Types.OrderDatum, datumData) as OrderDatum;\n const classified = this.classifyOrderAction(datum);\n\n if (expectedActionType === null) {\n expectedActionType = classified.actionType;\n } else if (expectedActionType !== classified.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n orderInfos.push({\n utxo,\n datum,\n actionType: classified.actionType,\n amount: classified.amount,\n yield: classified.yield,\n reserveAsset: classified.reserveAsset,\n });\n }\n\n if (orderInfos.length === 0) {\n throw new Error(\"No orders to execute\");\n }\n\n return orderInfos;\n }\n\n /**\n * Classify an order action from its datum.\n */\n private classifyOrderAction(datum: OrderDatum): {\n actionType: TOrderActionType;\n amount: bigint;\n yield?: bigint;\n reserveAsset?: [string, string];\n isTreasuryAction: boolean;\n } {\n const action = datum.action;\n if (\"OMint\" in action) {\n return {\n actionType: \"mint\",\n amount: action.OMint.amount,\n reserveAsset: action.OMint.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ORedeem\" in action) {\n return {\n actionType: \"burn\",\n // ORedeem.amount is positive (absolute value locked in order UTxO).\n // Negate it so the request.amount is negative for burn (USDr leaving circulation),\n // matching the contract's expectation: ORedeem.amount == -request.amount.\n amount: -action.ORedeem.amount,\n reserveAsset: action.ORedeem.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ODeposit\" in action) {\n return {\n actionType: \"deposit\",\n amount: action.ODeposit.principal,\n yield: action.ODeposit.yield,\n reserveAsset: action.ODeposit.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OWithdraw\" in action) {\n return {\n actionType: \"withdraw\",\n amount: action.OWithdraw.amount,\n reserveAsset: action.OWithdraw.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OStake\" in action) {\n return {\n actionType: \"stake\",\n amount: action.OStake.amount,\n isTreasuryAction: false,\n };\n } else if (\"OUnstake\" in action) {\n return {\n actionType: \"unstake\",\n amount: action.OUnstake.amount,\n isTreasuryAction: false,\n };\n }\n throw new Error(\"Unknown order action type\");\n }\n\n /**\n * Update treasury output with new reserve and circulating supply.\n */\n private updateTreasuryOutput(\n tx: TxBuilder,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n reserveDeltas: Map,\n circulatingSupplyDelta: bigint,\n ): void {\n const newTreasuryDatum: V0_1TreasuryDatum = {\n circulating_supply:\n parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta,\n };\n const serializedTreasuryDatum = Data.serialize(\n V0_1TreasuryDatum,\n newTreasuryDatum,\n );\n\n const treasuryValue = treasuryUtxo.output().amount();\n\n // Start with ADA + treasury NFT\n let newTreasuryValue = makeValue(treasuryValue.coin(), [\n this.treasuryNFTAssetId,\n 1n,\n ]);\n\n // Apply all reserve asset deltas\n const modifiedAssetIds = new Set([\n this.treasuryNFTAssetId.toString(),\n ]);\n for (const [reserveAssetId, delta] of reserveDeltas.entries()) {\n const currentReserve =\n treasuryValue.multiasset()?.get(Core.AssetId(reserveAssetId)) ?? 0n;\n const newReserve = currentReserve + delta;\n newTreasuryValue = Value.merge(\n newTreasuryValue,\n makeValue(0n, [Core.AssetId(reserveAssetId), newReserve]),\n );\n modifiedAssetIds.add(reserveAssetId);\n }\n\n // Preserve any other assets not modified\n const existingMultiasset = treasuryValue.multiasset();\n if (existingMultiasset) {\n for (const [assetId, amount] of existingMultiasset.entries()) {\n if (!modifiedAssetIds.has(assetId)) {\n newTreasuryValue = Value.merge(\n newTreasuryValue,\n makeValue(0n, [Core.AssetId(assetId), amount]),\n );\n }\n }\n }\n tx.lockAssets(\n this.treasuryAddress,\n newTreasuryValue,\n serializedTreasuryDatum,\n );\n }\n\n /**\n * Update vault output with new circulating_susdr and USDr balance.\n */\n private updateVaultOutput(\n tx: TxBuilder,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatum,\n sUSDrDelta: bigint,\n uSDrDelta: bigint = 0n,\n ): void {\n const newVaultDatum: VaultDatum = {\n circulating_susdr: parsedVaultDatum.circulating_susdr + sUSDrDelta,\n };\n const serializedVaultDatum = Data.serialize(\n V0_4Types.VaultDatum,\n newVaultDatum,\n );\n\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n // Start with existing vault value, then adjust USDr\n let newVaultValue = vaultUtxo.output().amount();\n if (uSDrDelta !== 0n) {\n const currentUSDr =\n newVaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const newUSDr = currentUSDr + uSDrDelta;\n newVaultValue = makeValue(newVaultValue.coin(), [\n this.stakingVaultNFTAssetId,\n 1n,\n ]);\n if (newUSDr > 0n) {\n newVaultValue = Value.merge(\n newVaultValue,\n makeValue(0n, [stablecoinAssetId, newUSDr]),\n );\n }\n // Preserve any other assets from the original vault\n const existingMultiasset = vaultUtxo.output().amount().multiasset();\n if (existingMultiasset) {\n for (const [assetId, amount] of existingMultiasset.entries()) {\n if (\n assetId !== this.stakingVaultNFTAssetId.toString() &&\n assetId !== stablecoinAssetId.toString()\n ) {\n newVaultValue = Value.merge(\n newVaultValue,\n makeValue(0n, [Core.AssetId(assetId), amount]),\n );\n }\n }\n }\n }\n\n tx.lockAssets(\n this.stakingVaultAddress,\n newVaultValue,\n serializedVaultDatum,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Reserve Asset Conversion Utilities\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Get protocol settings from proxy datum (cached).\n */\n private async getVersionSettings(): Promise {\n const { parsedProxyDatum } = await this.getParsedProxyDatum();\n return parsedProxyDatum.settings as Settings;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1/family.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/family.js new file mode 100644 index 0000000000..11ab06f469 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/family.js @@ -0,0 +1,3774 @@ +"use strict"; + +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.RealfiSDKV1Family = exports.MIN_LOVELACE = exports.DIRECT_ACTION_PADDING_ASSET = void 0; +exports.calculateYieldShares = calculateYieldShares; +var _core = require("@blaze-cardano/core"); +var _data = _interopRequireWildcard(require("@blaze-cardano/data")); +var Data = _data; +var _sdk = require("@blaze-cardano/sdk"); +var _index = require("../../generated-types/v0_1/index.js"); +var _index2 = require("../shared/index.js"); +var _orderSanity = require("./order-sanity.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t19 in e) "default" !== _t19 && {}.hasOwnProperty.call(e, _t19) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t19)) && (i.get || i.set) ? o(f, _t19, i) : f[_t19] = e[_t19]); return f; })(e, t); } +function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); } +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); } +function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } +function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } +function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +// ───────────────────────────────────────────────────────────────────────────── +// Constants +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Sentinel `reserve_asset` used in V1_0 TreasuryRequestV1 redeemers for + * DirectMint and DirectBurn actions, which have no real reserve asset in + * their order datum. The on-chain validators `direct_mint_logic` and + * `direct_burn_logic` do not inspect this field; this sentinel makes the + * intent explicit both in code and when inspecting on-chain redeemers. + * + * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a + * sentinel and extremely unlikely to occur as a real script hash) + * - `asset_name`: "unused" (ASCII) + * + * Keep in sync with backend `contract.DirectActionPaddingAsset`. + */ +var DIRECT_ACTION_PADDING_ASSET = exports.DIRECT_ACTION_PADDING_ASSET = ["00".repeat(28), (0, _core.toHex)(new TextEncoder().encode("unused"))]; + +// ───────────────────────────────────────────────────────────────────────────── +// Types +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Parsed order information extracted from a UTXO. + */ + +/** Minimal completed-swap shape accepted by the stake continuation builder. */ + +/** Parameters for building a RealFi stake order as another order's destination. */ + +/** Address and inline datum a preceding protocol should pay its result to. */ + +/** Result of {@link RealfiSDKV1Family.classifyOrderAction}. */ + +/** Result of {@link RealfiSDKV1Family.classifyOrderUtxo}. */ + +/** The `origin` field shared by every request kind — the consumed order UTxO. */ + +/** + * Context handed to {@link RealfiSDKV1Family.applyExecutionValidityBounds} + * at the end of `buildExecuteOrdersTx`. The vault fields are set only when + * the executed action consumed the staking vault (stake/unstake/deposit). + */ + +/** + * Version-agnostic constructor parameters for the V1 family. Each version's + * `static create` assembles this from its own public params interface. + */ + +/** Blueprint validator key (within a version slot) -> SDK identity field. */ +var DEPLOYED_VALIDATOR_FIELDS = [["protocol_orchestrator.protocol_orchestrator.withdraw", "protocolScriptHash"], ["protocol_mint.protocol_mint.withdraw", "protocolMintScriptHash"], ["protocol_stake.protocol_stake.withdraw", "protocolStakeScriptHash"], ["protocol_management.protocol_management.withdraw", "protocolManagementScriptHash"], ["order.order.spend", "orderScriptHash"], ["treasury.treasury.spend", "treasuryScriptHash"], ["staking_vault.staking_vault.spend", "stakingVaultScriptHash"]]; +var DEPLOYED_VALIDATOR_PREFIXES = { + V1_0: "v1_0/", + V1_0_Rc1: "v1_0_rc1/", + V1_1_Rc1: "v1_1_rc1/" +}; +var COMPATIBLE_STATE_VALIDATOR_FIELDS = new Set(["treasuryScriptHash", "stakingVaultScriptHash"]); + +/** Hash fields whose address must move with them. */ +var DEPLOYED_ADDRESS_FIELDS = { + orderScriptHash: "orderScriptAddress", + treasuryScriptHash: "treasuryAddress", + stakingVaultScriptHash: "stakingVaultAddress" +}; +var MIN_LOVELACE = exports.MIN_LOVELACE = 2000000n; + +/** + * Calculate yield split between staked and unstaked portions. + * Matches on-chain deposit.ak logic: staked_yield_share = total_yield * vault_usdr / treasury_circulating + * + * IMPORTANT: Uses truncation toward zero (BigInt default `/` operator) to match + * Aiken's builtin.quotient_integer. Do NOT use floor division here, as it + * rounds toward negative infinity which gives different results for negative yields. + * Example: floor(-165/90) = -2, but trunc(-165/90) = -1. + */ +/** + * Extract the requests list from a signed payload action, regardless of action type. + * Both TreasuryRequestV1 and RequestV1 have `origin: { transaction_id, output_index }`. + */ +function getRequestsFromAction(action) { + if ("Mint" in action) return action.Mint.requests; + if ("Burn" in action) return action.Burn.requests; + if ("Withdraw" in action) return action.Withdraw.requests; + if ("Deposit" in action) return action.Deposit.requests; + if ("Stake" in action) return action.Stake.requests; + if ("Unstake" in action) return action.Unstake.requests; + if ("DirectMint" in action) return action.DirectMint.requests; + if ("DirectBurn" in action) return action.DirectBurn.requests; + throw new Error("Unknown action type in signed payload"); +} +function calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating) { + // Note: BigInt / truncates toward zero, matching Aiken's quotient_integer + var stakedYieldShare = treasuryCirculating > 0n ? totalYield * vaultUSDr / treasuryCirculating : 0n; + var unstakedYieldShare = totalYield - stakedYieldShare; + return { + stakedYieldShare: stakedYieldShare, + unstakedYieldShare: unstakedYieldShare + }; +} + +/** + * Refuse to create an order whose `min_received` floor is not strictly + * positive (WTB-1764). + * + * Every v1-family validator predicate that reads `min_received` requires it to + * be > 0, and those predicates run inside a `zip_fold` that `expect`s each + * request in turn — so one order with a zero floor crashes the ENTIRE execution + * transaction, killing every valid order batched alongside it. Such an order can + * never execute; creating it only plants a landmine at the order script address. + * + * This guards both an explicit caller-supplied floor and a computed one that + * rounds or nets down to zero (a dust stake at a high exchange rate, or a + * full-forfeit unstake). + */ +function assertPositiveMinReceived(label, minReceived) { + if (minReceived <= 0n) { + throw new Error("".concat(label, " minReceived must be positive (got ").concat(minReceived, "); an order with a ") + "non-positive min_received can never execute and crashes every batch it joins"); + } +} +function buildOrderDestinationValue(orderInfo, consumedAssets) { + var deliveredAssets = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; + var value = orderInfo.utxo.output().amount(); + var _iterator = _createForOfIteratorHelper(consumedAssets), + _step; + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var _step$value = _slicedToArray(_step.value, 2), + assetId = _step$value[0], + amount = _step$value[1]; + if (amount !== 0n) { + value = _sdk.Value.merge(value, (0, _sdk.makeValue)(0n, [assetId, -amount])); + } + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + var _iterator2 = _createForOfIteratorHelper(deliveredAssets), + _step2; + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + var _step2$value = _slicedToArray(_step2.value, 2), + _assetId = _step2$value[0], + _amount = _step2$value[1]; + if (_amount !== 0n) { + value = _sdk.Value.merge(value, (0, _sdk.makeValue)(0n, [_assetId, _amount])); + } + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + return value; +} + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Family Base Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Shared implementation for the V1 protocol family (v1_0, v1_0_rc1, v1_1+). + * + * The family is generic over the two datum shapes that differ across + * versions — `TSettings` (the proxy settings static) and `TVaultDatum` (the + * staking-vault datum static) — and receives all generated artifacts from the + * subclass: schema VALUES via {@link IV1FamilySchemas} (plus, optionally, + * {@link IV1SigningSchemas}) and instantiated scripts via + * {@link IV1FamilyScripts}. Method bodies never touch a version's generated + * module directly, so this chunk adds no runtime import edge to any + * `generated-types/v1_x` module and per-version code-splitting is preserved. + * + * Method defaults implement v1_0 semantics (fees, min_received, the v1_0 + * protocol-redeemer schema). Versions that diverge override the affected + * members: + * - vault datum construction is NEVER done inline — it goes through the + * abstract `buildInitialVaultDatum` / `buildUpdatedVaultDatum` seam so + * versions with additional vault fields cannot be silently truncated; + * - settings access goes through the abstract `settingsConfig` / + * `settingsRegistry` adapters; + * - `applyExecutionValidityBounds` lets a version constrain the validity + * interval of execution transactions (no-op by default). + */ +var RealfiSDKV1Family = exports.RealfiSDKV1Family = /*#__PURE__*/function (_RealfiSDKBase) { + function RealfiSDKV1Family(blaze, params, schemas, scripts, cachedReferenceInputs, signingSchemas) { + var _this; + _classCallCheck(this, RealfiSDKV1Family); + _this = _callSuper(this, RealfiSDKV1Family, [blaze, { + version: params.version, + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace: params.enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource + }, cachedReferenceInputs]); + // Script hashes and policy IDs + _defineProperty(_this, "stablecoinPolicyId", void 0); + _defineProperty(_this, "oneShotPolicyId", void 0); + _defineProperty(_this, "protocolScriptHash", void 0); + _defineProperty(_this, "protocolMintScriptHash", void 0); + _defineProperty(_this, "protocolStakeScriptHash", void 0); + _defineProperty(_this, "protocolManagementScriptHash", void 0); + _defineProperty(_this, "treasuryScriptHash", void 0); + _defineProperty(_this, "treasuryNFTAssetId", void 0); + _defineProperty(_this, "orderScriptHash", void 0); + _defineProperty(_this, "orderScriptAddress", void 0); + _defineProperty(_this, "treasuryAddress", void 0); + _defineProperty(_this, "stakingVaultScriptHash", void 0); + _defineProperty(_this, "stakingVaultAddress", void 0); + _defineProperty(_this, "stakingVaultNFTAssetId", void 0); + _defineProperty(_this, "sUSDrAssetNameHex", void 0); + // Scripts + _defineProperty(_this, "oneShotScript", void 0); + _defineProperty(_this, "protocolScript", void 0); + // Alias for orchestrator (base class compatibility) + _defineProperty(_this, "protocolOrchestratorScript", void 0); + _defineProperty(_this, "protocolMintScript", void 0); + _defineProperty(_this, "protocolStakeScript", void 0); + _defineProperty(_this, "protocolManagementScript", void 0); + _defineProperty(_this, "mintProxyScript", void 0); + _defineProperty(_this, "treasuryScript", void 0); + _defineProperty(_this, "orderScript", void 0); + _defineProperty(_this, "stakingVaultScript", void 0); + _defineProperty(_this, "defaultSlippageToleranceBps", void 0); + /** Schema values used by every shared serialize/parse site. */ + _defineProperty(_this, "schemas", void 0); + _defineProperty(_this, "signingSchemas", void 0); + _this.schemas = schemas; + _this.signingSchemas = signingSchemas; + _this.sUSDrAssetNameHex = params.sUSDrAssetNameHex; + _this.defaultSlippageToleranceBps = params.defaultSlippageToleranceBps; + _this.oneShotScript = scripts.oneShotScript; + _this.protocolOrchestratorScript = scripts.protocolOrchestratorScript; + _this.protocolScript = scripts.protocolOrchestratorScript; // Alias for base class + _this.protocolMintScript = scripts.protocolMintScript; + _this.protocolStakeScript = scripts.protocolStakeScript; + _this.protocolManagementScript = scripts.protocolManagementScript; + _this.mintProxyScript = scripts.mintProxyScript; + _this.treasuryScript = scripts.treasuryScript; + _this.orderScript = scripts.orderScript; + _this.stakingVaultScript = scripts.stakingVaultScript; + _this.oneShotPolicyId = _sdk.Core.PolicyId(_this.oneShotScript.hash()); + _this.protocolScriptHash = _this.protocolOrchestratorScript.hash(); + _this.protocolMintScriptHash = _this.protocolMintScript.hash(); + _this.protocolStakeScriptHash = _this.protocolStakeScript.hash(); + _this.protocolManagementScriptHash = _this.protocolManagementScript.hash(); + _this.stablecoinPolicyId = _sdk.Core.PolicyId(_this.mintProxyScript.hash()); + _this.treasuryScriptHash = _this.treasuryScript.hash(); + _this.orderScriptHash = _this.orderScript.hash(); + _this.stakingVaultScriptHash = _this.stakingVaultScript.hash(); + _this.treasuryAddress = (0, _core.addressFromValidator)(_this.network, _this.treasuryScript); + _this.orderScriptAddress = (0, _core.addressFromValidator)(_this.network, _this.orderScript); + _this.stakingVaultAddress = (0, _core.addressFromValidator)(_this.network, _this.stakingVaultScript); + + // Every identity above is derived from this package's own artifacts, which + // only describes a deployment running those exact bytes. Where the caller + // knows what the chain actually runs, that wins — otherwise the derived + // order address is one nothing watches, and an order (lockAssets, no + // on-chain validation) would submit successfully into it. + _this.applyDeployedValidators(params.deployedValidators, params.version); + + // Treasury NFT: policy = treasury script hash, name = "treasury" + var treasuryAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("treasury"))); + _this.treasuryNFTAssetId = _sdk.Core.AssetId(_this.treasuryScriptHash + treasuryAssetName.toString()); + + // Staking vault NFT: policy = staking vault script hash, name = "staking_vault" + var vaultAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("staking_vault"))); + _this.stakingVaultNFTAssetId = _sdk.Core.AssetId(_this.stakingVaultScriptHash + vaultAssetName.toString()); + return _this; + } + + /** + * Replace derived script identity with the deployment's own hashes. + * + * Version-owned validators are selected only from this SDK's exact version + * slot. Treasury and staking-vault validators can deliberately survive a + * protocol-only upgrade, so their unversioned entries are used as the + * authoritative active-state fallback. + * + * Unrecognised keys are ignored: a blueprint legitimately carries validators + * outside this family (oneshot, mint_proxy) and future ones this build has + * never heard of. + */ + _inherits(RealfiSDKV1Family, _RealfiSDKBase); + return _createClass(RealfiSDKV1Family, [{ + key: "applyDeployedValidators", + value: function applyDeployedValidators(deployed, version) { + if (!deployed) return; + if (!(version in DEPLOYED_VALIDATOR_PREFIXES)) return; + var prefix = DEPLOYED_VALIDATOR_PREFIXES[version]; + var mutable = this; + for (var _i = 0, _DEPLOYED_VALIDATOR_F = DEPLOYED_VALIDATOR_FIELDS; _i < _DEPLOYED_VALIDATOR_F.length; _i++) { + var _DEPLOYED_VALIDATOR_F2 = _slicedToArray(_DEPLOYED_VALIDATOR_F[_i], 2), + suffix = _DEPLOYED_VALIDATOR_F2[0], + field = _DEPLOYED_VALIDATOR_F2[1]; + var versionedHash = deployed["".concat(prefix).concat(suffix)]; + var activeStateHash = COMPATIBLE_STATE_VALIDATOR_FIELDS.has(field) ? deployed[suffix] : undefined; + var deployedHash = activeStateHash !== null && activeStateHash !== void 0 ? activeStateHash : versionedHash; + if (!deployedHash) continue; + var hash = _sdk.Core.Hash28ByteBase16(deployedHash.toLowerCase()); + mutable[field] = hash; + var addressField = DEPLOYED_ADDRESS_FIELDS[field]; + if (addressField) { + mutable[addressField] = (0, _core.addressFromCredentials)(this.network, _sdk.Core.Credential.fromCore({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: hash + })); + } + } + } + + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Schemas for the v1_0-semantics signing/execute defaults. Throws for + * versions that neither supplied {@link IV1SigningSchemas} nor overrode + * the two consumers (`getSignedPayloadFromOrderInputs`, + * `buildExecuteOrdersTx`). + */ + }, { + key: "signing", + get: function get() { + if (!this.signingSchemas) { + throw new Error("".concat(this.version, ": no signing schemas supplied \u2014 pass signingSchemas to the family constructor or override getSignedPayloadFromOrderInputs and buildExecuteOrdersTx")); + } + return this.signingSchemas; + } + + /** + * Project the version's settings onto the fields the shared tx-builders + * read. v1_0/v1_0_rc1: the settings object itself; v1_1+: `settings.config`. + */ + }, { + key: "settledVaultBacking", + value: + /** + * Version hook: the USDr backing the stake/unstake exchange rate is + * computed against. Defaults to the vault's full USDr balance (v1_0 / + * v1_0_rc1 semantics). Versions with time-diffused yield (v1_1_rc1+) + * override this to exclude the not-yet-diffused pending yield + * (`settled_backing` in utilities.ak). + */ + function settledVaultBacking(_parsedVaultDatum, vaultUSDr) { + return vaultUSDr; + } + + /** + * Version hook: constrain the transaction validity interval on order + * executions. Called once at the end of `buildExecuteOrdersTx`, right + * before the builder is returned. + * + * No-op by default: v1_0 / v1_0_rc1 executions carry no validity + * constraints. Versions with time-diffused yield (v1_1_rc1+) override this + * to attach validFrom/validTo bounds on vault-touching executions. + */ + }, { + key: "applyExecutionValidityBounds", + value: (function () { + var _applyExecutionValidityBounds = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_tx, _context) { + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + return _context2.a(2); + } + }, _callee); + })); + function applyExecutionValidityBounds(_x, _x2) { + return _applyExecutionValidityBounds.apply(this, arguments); + } + return applyExecutionValidityBounds; + }() + /** + * Version hook: build the `Deposit` protocol action that goes into the + * COSE-signed payload. v1_0 / v1_0_rc1 have no yield split — the validator + * recomputes it from live state — so they take no `alpha` and reject one. + * Versions that carry a signed `alpha` (v1_1_rc1+) override this and require + * it: it is the batch's parameter, never something a signer derives. + */ + ) + }, { + key: "buildDepositAction", + value: (function () { + var _buildDepositAction = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(requests, alpha) { + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + if (!alpha) { + _context3.n = 1; + break; + } + throw new Error("".concat(this.version, ": a deposit batch takes no yield-split alpha (the validator recomputes the split from live state)")); + case 1: + return _context3.a(2, { + Deposit: { + requests: requests + } + }); + } + }, _callee2, this); + })); + function buildDepositAction(_x3, _x4) { + return _buildDepositAction.apply(this, arguments); + } + return buildDepositAction; + }() + /** + * Version hook: split a deposit's total yield between the staked vault and + * the unstaked pot at EXECUTION time. + * + * v1_0 / v1_0_rc1 (default): the on-chain validator recomputes the split from + * live vault/treasury state, so recomputing it here from the same state + * matches. v1_1_rc1+ carry a COSE-signed `alpha` in the Deposit action and + * the validator splits against THAT — so those versions override this to echo + * the signed alpha, never a second live read (which would diverge if state + * moved between signing and execution). `action` is the signed action being + * executed; the default ignores it. + */ + ) + }, { + key: "resolveDepositYieldShares", + value: function resolveDepositYieldShares(totalYield, vaultUSDr, treasuryCirculating, _action) { + return calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating); + } + + /** + * Version hook: serialize the redeemer attached to the orchestrator + * withdrawal. Defaults to the bare `SignedRedeemer` + * (v1_0 / v1_0_rc1). Versions whose orchestrator wraps execution in a + * top-level dispatch enum (v1_1_rc1+: `ExecuteOrders(...)`/`PublishYieldOracle`) + * override this to nest the signed redeemer inside that wrapper. + */ + }, { + key: "serializeOrchestratorWithdrawalRedeemer", + value: function serializeOrchestratorWithdrawalRedeemer(redeemer) { + return Data.serialize(this.signing.SignedRedeemer_ExtraProtocolRedeemerV1, redeemer); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + */ + }, { + key: "mintTreasuryNFT", + value: function () { + var _mintTreasuryNFT = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(treasuryBootstrapUtxo) { + var initialDatum, + treasuryPolicyId, + treasuryAssetName, + datum, + tx, + _args3 = arguments; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.n) { + case 0: + initialDatum = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : { + circulating_supply: 0n + }; + treasuryPolicyId = _sdk.Core.PolicyId(this.treasuryScriptHash); + treasuryAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("treasury"))); + datum = Data.serialize(_index.TreasuryDatum, initialDatum); + _context4.n = 1; + return this.blaze.newTransaction().addInput(treasuryBootstrapUtxo).addMint(treasuryPolicyId, new Map([[treasuryAssetName, 1n]]), Data.Void()).lockAssets(this.treasuryAddress, (0, _sdk.makeValue)(10000000n, [this.treasuryNFTAssetId, 1n]), datum).provideScript(this.treasuryScript); + case 1: + tx = _context4.v; + return _context4.a(2, { + tx: tx, + nftAssetId: this.treasuryNFTAssetId + }); + } + }, _callee3, this); + })); + function mintTreasuryNFT(_x5) { + return _mintTreasuryNFT.apply(this, arguments); + } + return mintTreasuryNFT; + }() + }, { + key: "deployTreasury", + value: function () { + var _deployTreasury = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() { + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + return _context5.a(2, (0, _index2.deployScript)(this.blaze, this.treasuryScript, this.scriptDeploymentAddress)); + } + }, _callee4, this); + })); + function deployTreasury() { + return _deployTreasury.apply(this, arguments); + } + return deployTreasury; + }() + }, { + key: "deployOrderContract", + value: function () { + var _deployOrderContract = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() { + return _regenerator().w(function (_context6) { + while (1) switch (_context6.n) { + case 0: + return _context6.a(2, (0, _index2.deployScript)(this.blaze, this.orderScript, this.scriptDeploymentAddress)); + } + }, _callee5, this); + })); + function deployOrderContract() { + return _deployOrderContract.apply(this, arguments); + } + return deployOrderContract; + }() + }, { + key: "getTreasuryDatum", + value: function () { + var _getTreasuryDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() { + var _yield$getDatumFromNF, treasuryUtxo, treasuryDatum, parsedTreasuryDatum; + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + _context7.n = 1; + return (0, _index2.getDatumFromNFT)(this.blaze, this.treasuryNFTAssetId, _index.TreasuryDatum); + case 1: + _yield$getDatumFromNF = _context7.v; + treasuryUtxo = _yield$getDatumFromNF.utxo; + treasuryDatum = _yield$getDatumFromNF.datum; + parsedTreasuryDatum = _yield$getDatumFromNF.parsedDatum; + if (treasuryUtxo) { + _context7.n = 2; + break; + } + throw new Error("No UTXO found with the treasury NFT"); + case 2: + if (treasuryDatum) { + _context7.n = 3; + break; + } + throw new Error("No treasury datum found"); + case 3: + return _context7.a(2, { + treasuryUtxo: treasuryUtxo, + treasuryDatum: treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum + }); + } + }, _callee6, this); + })); + function getTreasuryDatum() { + return _getTreasuryDatum.apply(this, arguments); + } + return getTreasuryDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // Staking Vault Operations + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint the staking vault NFT and create initial vault UTxO. + */ + }, { + key: "mintStakingVaultNFT", + value: function () { + var _mintStakingVaultNFT = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(stakingVaultBootstrapUtxo, initialDatum) { + var vaultPolicyId, vaultAssetName, datum, tx; + return _regenerator().w(function (_context8) { + while (1) switch (_context8.n) { + case 0: + vaultPolicyId = _sdk.Core.PolicyId(this.stakingVaultScriptHash); + vaultAssetName = _sdk.Core.AssetName((0, _core.toHex)(Buffer.from("staking_vault"))); + datum = Data.serialize(this.schemas.VaultDatumV1, initialDatum !== null && initialDatum !== void 0 ? initialDatum : this.buildInitialVaultDatum()); + _context8.n = 1; + return this.blaze.newTransaction().addInput(stakingVaultBootstrapUtxo).addMint(vaultPolicyId, new Map([[vaultAssetName, 1n]]), Data.Void()).lockAssets(this.stakingVaultAddress, (0, _sdk.makeValue)(10000000n, [this.stakingVaultNFTAssetId, 1n]), datum).provideScript(this.stakingVaultScript); + case 1: + tx = _context8.v; + return _context8.a(2, { + tx: tx, + nftAssetId: this.stakingVaultNFTAssetId + }); + } + }, _callee7, this); + })); + function mintStakingVaultNFT(_x6, _x7) { + return _mintStakingVaultNFT.apply(this, arguments); + } + return mintStakingVaultNFT; + }() + }, { + key: "deployStakingVault", + value: function () { + var _deployStakingVault = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() { + return _regenerator().w(function (_context9) { + while (1) switch (_context9.n) { + case 0: + return _context9.a(2, (0, _index2.deployScript)(this.blaze, this.stakingVaultScript, this.scriptDeploymentAddress)); + } + }, _callee8, this); + })); + function deployStakingVault() { + return _deployStakingVault.apply(this, arguments); + } + return deployStakingVault; + }() + /** + * Deploy the protocol mint script as a reference script (V1.0 only). + */ + }, { + key: "deployProtocolMint", + value: (function () { + var _deployProtocolMint = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9() { + return _regenerator().w(function (_context0) { + while (1) switch (_context0.n) { + case 0: + return _context0.a(2, (0, _index2.deployScript)(this.blaze, this.protocolMintScript, this.scriptDeploymentAddress)); + } + }, _callee9, this); + })); + function deployProtocolMint() { + return _deployProtocolMint.apply(this, arguments); + } + return deployProtocolMint; + }() + /** + * Deploy the protocol stake script as a reference script (V1.0 only). + */ + ) + }, { + key: "deployProtocolStake", + value: (function () { + var _deployProtocolStake = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0() { + return _regenerator().w(function (_context1) { + while (1) switch (_context1.n) { + case 0: + return _context1.a(2, (0, _index2.deployScript)(this.blaze, this.protocolStakeScript, this.scriptDeploymentAddress)); + } + }, _callee0, this); + })); + function deployProtocolStake() { + return _deployProtocolStake.apply(this, arguments); + } + return deployProtocolStake; + }() + /** + * Deploy the protocol management script as a reference script (V1.0 only). + */ + ) + }, { + key: "deployProtocolManagement", + value: (function () { + var _deployProtocolManagement = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1() { + return _regenerator().w(function (_context10) { + while (1) switch (_context10.n) { + case 0: + return _context10.a(2, (0, _index2.deployScript)(this.blaze, this.protocolManagementScript, this.scriptDeploymentAddress)); + } + }, _callee1, this); + })); + function deployProtocolManagement() { + return _deployProtocolManagement.apply(this, arguments); + } + return deployProtocolManagement; + }() + /** + * Register the protocol mint stake credential (V1.0 sub-validator). + */ + ) + }, { + key: "registerProtocolMintStake", + value: function registerProtocolMintStake() { + var stakeCredential = (0, _index2.credentialFromScript)(this.protocolMintScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + /** + * Register the protocol stake stake credential (V1.0 sub-validator). + */ + }, { + key: "registerProtocolStakeStake", + value: function registerProtocolStakeStake() { + var stakeCredential = (0, _index2.credentialFromScript)(this.protocolStakeScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + /** + * Register the protocol management stake credential (V1.0 sub-validator). + */ + }, { + key: "registerProtocolManagementStake", + value: function registerProtocolManagementStake() { + var stakeCredential = (0, _index2.credentialFromScript)(this.protocolManagementScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + /** + * Register the staking vault stake credential (for stake/unstake operations). + */ + }, { + key: "registerStakingVaultStake", + value: function registerStakingVaultStake() { + var stakeCredential = (0, _index2.credentialFromScript)(this.stakingVaultScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + // ─────────────────────────────────────────────────────────────────────────── + // Batched bootstrap helpers (fast fresh-deploy path) + // + // The NFT mints CANNOT be batched: each one-shot mint validator runs + // `mint_oneshots_strict`, which flattens the transaction's ENTIRE mint field + // and fails unless it equals exactly that validator's single token. So a tx + // minting more than one NFT fails phase-2 for all of them — the mints stay + // one-tx-each. Deploys and stake registrations have no such constraint and + // batch freely. + // ─────────────────────────────────────────────────────────────────────────── + + /** + * Register all five protocol stake credentials (orchestrator + mint / stake / + * management sub-validators + staking vault) in a SINGLE transaction. + * Certificates are tiny, so there is no size constraint. Replaces five + * `register*Stake` calls (and, for a cold wallet, five sign/submit cycles). + */ + }, { + key: "registerAllStakes", + value: function registerAllStakes() { + return this.blaze.newTransaction().addRegisterStake((0, _index2.credentialFromScript)(this.protocolScript)).addRegisterStake((0, _index2.credentialFromScript)(this.protocolMintScript)).addRegisterStake((0, _index2.credentialFromScript)(this.protocolStakeScript)).addRegisterStake((0, _index2.credentialFromScript)(this.protocolManagementScript)).addRegisterStake((0, _index2.credentialFromScript)(this.stakingVaultScript)); + } + + /** + * Pack the eight protocol reference-script deployments into as few + * transactions as fit under `budgetBytes` of script payload each, returning + * one TxBuilder per batch in deploy order. + * + * Batches by measured script size (`script.toCbor()` bytes) rather than a + * fixed count, because the validators are wildly uneven (~0.5–11 KB) and two + * of the ~10 KB sub-validators cannot share a transaction. The default budget + * (13 000) leaves headroom under the 16 384-byte tx limit for tx overhead and + * future script growth; callers can lower it if a validator grows. + * + * Fresh-deploy only: it does NOT skip already-deployed scripts. To resume a + * partial deploy, use the granular `deploy*` methods (which throw + * `ScriptAlreadyDeployedError` for idempotent reruns). + */ + }, { + key: "deployScriptsBatched", + value: function deployScriptsBatched() { + var _this2 = this; + var budgetBytes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 13000; + var scripts = [this.treasuryScript, this.protocolScript, this.protocolMintScript, this.protocolStakeScript, this.protocolManagementScript, this.mintProxyScript, this.orderScript, this.stakingVaultScript]; + var batches = []; + var current = []; + var currentBytes = 0; + for (var _i2 = 0, _scripts = scripts; _i2 < _scripts.length; _i2++) { + var script = _scripts[_i2]; + var size = script.toCbor().length / 2; + if (current.length > 0 && currentBytes + size > budgetBytes) { + batches.push(current); + current = []; + currentBytes = 0; + } + current.push(script); + currentBytes += size; + } + if (current.length > 0) batches.push(current); + return batches.map(function (batch) { + var tx = _this2.blaze.newTransaction(); + var _iterator3 = _createForOfIteratorHelper(batch), + _step3; + try { + for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) { + var _script = _step3.value; + tx = tx.deployScript(_script, _this2.scriptDeploymentAddress); + } + } catch (err) { + _iterator3.e(err); + } finally { + _iterator3.f(); + } + return tx; + }); + } + + /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */ + }, { + key: "getSusdrAssetId", + value: function getSusdrAssetId() { + return _sdk.Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + } + }, { + key: "getVaultDatum", + value: function () { + var _getVaultDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10() { + var _yield$getDatumFromNF2, vaultUtxo, vaultDatum, parsedVaultDatum; + return _regenerator().w(function (_context11) { + while (1) switch (_context11.n) { + case 0: + _context11.n = 1; + return (0, _index2.getDatumFromNFT)(this.blaze, this.stakingVaultNFTAssetId, this.schemas.VaultDatumV1); + case 1: + _yield$getDatumFromNF2 = _context11.v; + vaultUtxo = _yield$getDatumFromNF2.utxo; + vaultDatum = _yield$getDatumFromNF2.datum; + parsedVaultDatum = _yield$getDatumFromNF2.parsedDatum; + if (vaultUtxo) { + _context11.n = 2; + break; + } + throw new Error("No UTXO found with the staking vault NFT"); + case 2: + if (vaultDatum) { + _context11.n = 3; + break; + } + throw new Error("No vault datum found"); + case 3: + return _context11.a(2, { + vaultUtxo: vaultUtxo, + vaultDatum: vaultDatum, + parsedVaultDatum: parsedVaultDatum + }); + } + }, _callee10, this); + })); + function getVaultDatum() { + return _getVaultDatum.apply(this, arguments); + } + return getVaultDatum; + }() // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + }, { + key: "mintOneShot", + value: function () { + var _mintOneShot = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(receiverAddress, datum) { + var utxo, serializedDatum, baseTx, tx; + return _regenerator().w(function (_context12) { + while (1) switch (_context12.n) { + case 0: + _context12.n = 1; + return this.resolveBootstrapUtxo(); + case 1: + utxo = _context12.v; + serializedDatum = Data.serialize(this.schemas.ProxyDatumV1, { + logic: datum.logic, + settings: datum.settings + }); + baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[_sdk.Core.AssetName(""), 1n]]), Data.Void()); + tx = (0, _index2.lockOrPayAssets)(baseTx, receiverAddress, (0, _sdk.makeValue)(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return _context12.a(2, { + tx: tx, + policyId: this.oneShotPolicyId + }); + } + }, _callee11, this); + })); + function mintOneShot(_x8, _x9) { + return _mintOneShot.apply(this, arguments); + } + return mintOneShot; + }() + }, { + key: "updateOneShotDatum", + value: function () { + var _updateOneShotDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee12(receiverAddress, newDatum) { + var oneshotUtxo, serializedDatum; + return _regenerator().w(function (_context13) { + while (1) switch (_context13.n) { + case 0: + _context13.n = 1; + return this.blaze.provider.getUnspentOutputByNFT(_sdk.Core.AssetId(this.oneShotPolicyId)); + case 1: + oneshotUtxo = _context13.v; + if (oneshotUtxo) { + _context13.n = 2; + break; + } + throw new Error("No UTXO found with the one-shot NFT"); + case 2: + serializedDatum = Data.serialize(this.schemas.ProxyDatumV1, { + logic: newDatum.logic, + settings: newDatum.settings + }); + return _context13.a(2, (0, _index2.lockOrPayAssets)(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, (0, _sdk.makeValue)(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum)); + } + }, _callee12, this); + })); + function updateOneShotDatum(_x0, _x1) { + return _updateOneShotDatum.apply(this, arguments); + } + return updateOneShotDatum; + }() + }, { + key: "getParsedProxyDatum", + value: function () { + var _getParsedProxyDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee13() { + var _yield$this$getRawPro, proxyUtxo, proxyDatum, parsedProxyDatum, result; + return _regenerator().w(function (_context14) { + while (1) switch (_context14.n) { + case 0: + if (!this.cachedProxyDatumResult) { + _context14.n = 1; + break; + } + return _context14.a(2, this.cachedProxyDatumResult); + case 1: + _context14.n = 2; + return this.getRawProxyDatum(); + case 2: + _yield$this$getRawPro = _context14.v; + proxyUtxo = _yield$this$getRawPro.proxyUtxo; + proxyDatum = _yield$this$getRawPro.proxyDatum; + parsedProxyDatum = (0, _data.parse)(this.schemas.ProxyDatumV1, proxyDatum); + result = { + proxyUtxo: proxyUtxo, + proxyDatum: proxyDatum, + parsedProxyDatum: parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return _context14.a(2, result); + } + }, _callee13, this); + })); + function getParsedProxyDatum() { + return _getParsedProxyDatum.apply(this, arguments); + } + return getParsedProxyDatum; + }() + /** + * Check if the protocol has been upgraded past this SDK version. + * + * Returns true if either: + * - The order script hash no longer matches registry.order (order validator upgraded) + * - The protocol logic no longer matches this SDK's protocol script hash (protocol upgraded) + * + * When this returns true, orders created with this SDK version can use the + * `Invalidated` redeemer to recover funds via `buildInvalidatedOrdersTx`. + */ + }, { + key: "isProtocolUpgraded", + value: (function () { + var _isProtocolUpgraded = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee14() { + var _yield$this$getParsed, parsedProxyDatum, registry, orderUpgraded, protocolUpgraded; + return _regenerator().w(function (_context15) { + while (1) switch (_context15.n) { + case 0: + _context15.n = 1; + return this.getParsedProxyDatum(); + case 1: + _yield$this$getParsed = _context15.v; + parsedProxyDatum = _yield$this$getParsed.parsedProxyDatum; + registry = this.settingsRegistry(parsedProxyDatum.settings); + orderUpgraded = registry.order !== this.orderScriptHash; + protocolUpgraded = parsedProxyDatum.logic !== this.protocolScriptHash; + return _context15.a(2, orderUpgraded || protocolUpgraded); + } + }, _callee14, this); + })); + function isProtocolUpgraded() { + return _isProtocolUpgraded.apply(this, arguments); + } + return isProtocolUpgraded; + }() // ───────────────────────────────────────────────────────────────────────────── + // Public Order-Scan / Settings Accessors + // ───────────────────────────────────────────────────────────────────────────── + /** + * Read the version-agnostic settings config (`reserve_assets`, + * `unstaked_yield_pot`) off the live proxy datum. Public accessor over the + * `settingsConfig` / `getVersionSettings` seam so consumers read the shared + * fields without casting a version-specific settings shape: v1_0 / v1_0_rc1 + * project the flat settings, v1_1+ project `settings.config`. + */ + ) + }, { + key: "getSettingsConfig", + value: function () { + var _getSettingsConfig = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee15() { + var _t; + return _regenerator().w(function (_context16) { + while (1) switch (_context16.n) { + case 0: + _t = this; + _context16.n = 1; + return this.getVersionSettings(); + case 1: + return _context16.a(2, _t.settingsConfig.call(_t, _context16.v)); + } + }, _callee15, this); + })); + function getSettingsConfig() { + return _getSettingsConfig.apply(this, arguments); + } + return getSettingsConfig; + }() + /** + * Whether the batch covering these orders needs a yield-split alpha, i.e. it is + * a deposit on a version that splits yield. Callers that both create and sign a + * batch use it to decide whether to pick one (computeDepositAlpha); a co-signer + * has no use for it — it reads the batch's stored alpha either way. + */ + }, { + key: "batchNeedsAlpha", + value: (function () { + var _batchNeedsAlpha = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee16(orderInputs) { + var _yield$this$blaze$pro, _yield$this$blaze$pro2, utxo; + return _regenerator().w(function (_context17) { + while (1) switch (_context17.n) { + case 0: + if (!(orderInputs.length === 0)) { + _context17.n = 1; + break; + } + return _context17.a(2, false); + case 1: + _context17.n = 2; + return this.blaze.provider.resolveUnspentOutputs([orderInputs[0]]); + case 2: + _yield$this$blaze$pro = _context17.v; + _yield$this$blaze$pro2 = _slicedToArray(_yield$this$blaze$pro, 1); + utxo = _yield$this$blaze$pro2[0]; + return _context17.a(2, this.classifyOrderUtxo(utxo).action.actionType === "deposit" && this.splitsYield); + } + }, _callee16, this); + })); + function batchNeedsAlpha(_x10) { + return _batchNeedsAlpha.apply(this, arguments); + } + return batchNeedsAlpha; + }() + /** + * Whether this version's Deposit action carries a signed yield split. False for + * v1_0 / v1_0_rc1, whose validator recomputes the split from live state; + * v1_1_rc1+ override it. + */ + ) + }, { + key: "splitsYield", + get: function get() { + return false; + } + + /** + * Decode and classify a single open order UTxO with this version's schema. + * + * Parses the UTxO's inline datum via `this.schemas.OrderDatumV1` — exactly + * the way {@link parseOrderInfos} does — then classifies the action. Unlike + * {@link parseOrders}, this imposes NO same-action-type constraint, so it is + * the per-UTxO primitive for scanning a MIXED batch of open orders at the + * order script address and handling each by its action type. + * + * @throws if the UTxO carries no inline datum, or the datum fails to decode + * under this version's order schema (e.g. a V1.1 order read by a V1.0 SDK). + */ + }, { + key: "classifyOrderUtxo", + value: function classifyOrderUtxo(utxo) { + var _utxo$output$datum; + var datumData = (_utxo$output$datum = utxo.output().datum()) === null || _utxo$output$datum === void 0 ? void 0 : _utxo$output$datum.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + var datum = (0, _data.parse)(this.schemas.OrderDatumV1, datumData); + return { + datum: datum, + action: this.classifyOrderAction(datum) + }; + } + + /** + * Decode a batch of order UTxOs into {@link IOrderInfo} objects, validating + * they are ALL the same action type (throws on a mixed batch). Public + * wrapper over {@link parseOrderInfos}; use it to prepare inputs for the + * same-type execute builders. To scan a mixed batch, classify each UTxO + * individually with {@link classifyOrderUtxo} instead. + * + * The optional `fees` map (keyed by `${txHash}#${outputIndex}`) stamps each + * order with its locked fee in the action's output unit; missing entries + * default to 0 (no fee retained). + */ + }, { + key: "parseOrders", + value: function parseOrders(orderUtxos, fees) { + return this.parseOrderInfos(orderUtxos, fees); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Order Builder Methods (8 methods: 6 from V0_4 + DirectMint + DirectBurn) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Internal helper to build an order transaction. + */ + }, { + key: "_buildOrderTx", + value: function () { + var _buildOrderTx2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee17(params) { + var owner, serializedDatum, tx; + return _regenerator().w(function (_context18) { + while (1) switch (_context18.n) { + case 0: + _context18.n = 1; + return this.resolveOrderOwner(params.owner); + case 1: + owner = _context18.v; + serializedDatum = this.serializeOrderDatum(params.action, params.destination, owner, params.data); + tx = this.newOrderTransaction(params.extraLabels); + tx.lockAssets(this.orderScriptAddress, params.valueToLock, serializedDatum); + return _context18.a(2, tx); + } + }, _callee17, this); + })); + function _buildOrderTx(_x11) { + return _buildOrderTx2.apply(this, arguments); + } + return _buildOrderTx; + }() /** Resolve the order owner exactly once for transaction and continuation builders. */ + }, { + key: "resolveOrderOwner", + value: (function () { + var _resolveOrderOwner = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee18(owner) { + var _t2, _t3; + return _regenerator().w(function (_context19) { + while (1) switch (_context19.n) { + case 0: + if (!owner) { + _context19.n = 1; + break; + } + return _context19.a(2, owner); + case 1: + _context19.n = 2; + return this.blaze.wallet.getChangeAddress(); + case 2: + _t2 = _context19.v.getProps().paymentPart.hash.toString(); + _t3 = { + key_hash: _t2 + }; + return _context19.a(2, { + Signature: _t3 + }); + } + }, _callee18, this); + })); + function resolveOrderOwner(_x12) { + return _resolveOrderOwner.apply(this, arguments); + } + return resolveOrderOwner; + }() /** Serialize an order datum through the live version instance's schema seam. */) + }, { + key: "serializeOrderDatum", + value: function serializeOrderDatum(action, destination, owner, data) { + var orderDatum = { + action: action, + owner: owner, + destination: destination, + data: data !== null && data !== void 0 ? data : Data.Void() + }; + return Data.serialize(this.schemas.OrderDatumV1, orderDatum); + } + + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + }, { + key: "buildMintOrderTx", + value: (function () { + var _buildMintOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee19(params) { + var _params$orderLovelace, _params$minReceived; + var orderLovelace, reserveAssetId, settings, ra, reserveAmount, minReceived, _t4; + return _regenerator().w(function (_context20) { + while (1) switch (_context20.n) { + case 0: + if (!(params.amount <= 0n)) { + _context20.n = 1; + break; + } + throw new Error("Mint amount must be positive"); + case 1: + orderLovelace = (_params$orderLovelace = params.orderLovelace) !== null && _params$orderLovelace !== void 0 ? _params$orderLovelace : MIN_LOVELACE; + if (!(orderLovelace < MIN_LOVELACE)) { + _context20.n = 2; + break; + } + throw new Error("Mint order lovelace cannot be less than MIN_LOVELACE"); + case 2: + reserveAssetId = _sdk.Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); // Convert USDr amount to reserve amount using ceiling division + // to ensure enough reserve is locked for on-chain validation + _t4 = this; + _context20.n = 3; + return this.getVersionSettings(); + case 3: + settings = _t4.settingsConfig.call(_t4, _context20.v); + ra = (0, _index2.findReserveAsset)(settings, params.reserveAsset); + reserveAmount = (0, _index2.usdrToReserveCeil)(params.amount, ra); // Mint is 1:1 reserve→USDR with no protocol fee in v1_0, so the user + // receives exactly `amount`. Default the floor to `amount`; callers can + // lower it if a future fee makes that too tight. + minReceived = (_params$minReceived = params.minReceived) !== null && _params$minReceived !== void 0 ? _params$minReceived : params.amount; + assertPositiveMinReceived("Mint", minReceived); + return _context20.a(2, this._buildOrderTx({ + action: { + OMint: { + amount: params.amount, + min_received: minReceived, + reserve_asset: params.reserveAsset + } + }, + valueToLock: (0, _sdk.makeValue)(orderLovelace, [reserveAssetId, reserveAmount]), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee19, this); + })); + function buildMintOrderTx(_x13) { + return _buildMintOrderTx.apply(this, arguments); + } + return buildMintOrderTx; + }() + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + ) + }, { + key: "buildRedeemOrderTx", + value: (function () { + var _buildRedeemOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee20(params) { + var _params$minReceived2; + var settings, ra, stablecoinAssetId, minReceived, _t5; + return _regenerator().w(function (_context21) { + while (1) switch (_context21.n) { + case 0: + if (!(params.amount <= 0n)) { + _context21.n = 1; + break; + } + throw new Error("Redeem amount must be positive"); + case 1: + _t5 = this; + _context21.n = 2; + return this.getVersionSettings(); + case 2: + settings = _t5.settingsConfig.call(_t5, _context21.v); + ra = (0, _index2.findReserveAsset)(settings, params.reserveAsset); + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); // burn.ak caps delivery at usdr_to_reserve(amount, ra), so the default + // floor must use the configured reserve multiplier rather than assume 1:1. + minReceived = (_params$minReceived2 = params.minReceived) !== null && _params$minReceived2 !== void 0 ? _params$minReceived2 : (0, _index2.usdrToReserve)(params.amount, ra); + assertPositiveMinReceived("Redeem", minReceived); + return _context21.a(2, this._buildOrderTx({ + action: { + ORedeem: { + amount: params.amount, + min_received: minReceived, + reserve_asset: params.reserveAsset + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee20, this); + })); + function buildRedeemOrderTx(_x14) { + return _buildRedeemOrderTx.apply(this, arguments); + } + return buildRedeemOrderTx; + }() + /** + * Build a deposit order: lock reserve tokens, request treasury deposit. + */ + ) + }, { + key: "buildDepositOrderTx", + value: (function () { + var _buildDepositOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee21(params) { + var settings, ra, reserveAssetId, valueToLock, totalUSDrBacking, reserveAmount, _vaultValue$multiasse, _vaultValue$multiasse2, principalReserve, stablecoinAssetId, _yield$this$getTreasu, parsedTreasuryDatum, vaultUtxo, vaultValue, vaultUSDr, treasuryCirculating, _calculateYieldShares, unstakedYieldShare, _t6; + return _regenerator().w(function (_context22) { + while (1) switch (_context22.n) { + case 0: + if (!(params.principal < 0n)) { + _context22.n = 1; + break; + } + throw new Error("Deposit principal must be non-negative"); + case 1: + if (!(params.principal === 0n && params["yield"] === 0n)) { + _context22.n = 2; + break; + } + throw new Error("Deposit must have non-zero principal or yield"); + case 2: + _t6 = this; + _context22.n = 3; + return this.getVersionSettings(); + case 3: + settings = _t6.settingsConfig.call(_t6, _context22.v); + ra = (0, _index2.findReserveAsset)(settings, params.reserveAsset); + reserveAssetId = _sdk.Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); + if (!(params["yield"] >= 0n)) { + _context22.n = 4; + break; + } + // POSITIVE YIELD: need reserve backing for BOTH principal AND yield. + // Contract validates: reserve_to_usdr(treasury_delta) >= principal + yield + // So we must lock: usdrToReserveCeil(principal + yield) reserve tokens + totalUSDrBacking = params.principal + params["yield"]; + if (totalUSDrBacking > 0n) { + reserveAmount = (0, _index2.usdrToReserveCeil)(totalUSDrBacking, ra); + valueToLock = (0, _sdk.makeValue)(MIN_LOVELACE, [reserveAssetId, reserveAmount]); + } else { + valueToLock = (0, _sdk.makeValue)(MIN_LOVELACE); + } + _context22.n = 7; + break; + case 4: + // NEGATIVE YIELD: lock principal (in reserve) + unstaked yield share (in USDr). + // The staked share comes from the vault (validated on-chain via vault USDr change). + principalReserve = params.principal > 0n ? (0, _index2.usdrToReserveCeil)(params.principal, ra) : 0n; + valueToLock = principalReserve > 0n ? (0, _sdk.makeValue)(MIN_LOVELACE, [reserveAssetId, principalReserve]) : (0, _sdk.makeValue)(MIN_LOVELACE); + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); // Fetch current state to calculate yield split + _context22.n = 5; + return this.getTreasuryDatum(); + case 5: + _yield$this$getTreasu = _context22.v; + parsedTreasuryDatum = _yield$this$getTreasu.parsedTreasuryDatum; + _context22.n = 6; + return this.getVaultDatum(); + case 6: + vaultUtxo = _context22.v.vaultUtxo; + vaultValue = vaultUtxo.output().amount(); + vaultUSDr = (_vaultValue$multiasse = (_vaultValue$multiasse2 = vaultValue.multiasset()) === null || _vaultValue$multiasse2 === void 0 ? void 0 : _vaultValue$multiasse2.get(stablecoinAssetId)) !== null && _vaultValue$multiasse !== void 0 ? _vaultValue$multiasse : 0n; + treasuryCirculating = parsedTreasuryDatum.circulating_supply; + _calculateYieldShares = calculateYieldShares(params["yield"], vaultUSDr, treasuryCirculating), unstakedYieldShare = _calculateYieldShares.unstakedYieldShare; // Lock only the unstaked portion (negated since unstakedYieldShare is negative) + if (unstakedYieldShare < 0n) { + valueToLock = _sdk.Value.merge(valueToLock, (0, _sdk.makeValue)(0n, [stablecoinAssetId, -unstakedYieldShare])); + } + case 7: + return _context22.a(2, this._buildOrderTx({ + action: { + ODeposit: { + principal: params.principal, + "yield": params["yield"], + reserve_asset: params.reserveAsset + } + }, + valueToLock: valueToLock, + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee21, this); + })); + function buildDepositOrderTx(_x15) { + return _buildDepositOrderTx.apply(this, arguments); + } + return buildDepositOrderTx; + }() + /** + * Build a withdraw order: lock min ADA, request reserve token withdrawal. + */ + ) + }, { + key: "buildWithdrawOrderTx", + value: (function () { + var _buildWithdrawOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee22(params) { + var settings, _t7; + return _regenerator().w(function (_context23) { + while (1) switch (_context23.n) { + case 0: + if (!(params.amount <= 0n)) { + _context23.n = 1; + break; + } + throw new Error("Withdraw amount must be positive"); + case 1: + _t7 = this; + _context23.n = 2; + return this.getVersionSettings(); + case 2: + settings = _t7.settingsConfig.call(_t7, _context23.v); + (0, _index2.findReserveAsset)(settings, params.reserveAsset); + return _context23.a(2, this._buildOrderTx({ + action: { + OWithdraw: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee22, this); + })); + function buildWithdrawOrderTx(_x16) { + return _buildWithdrawOrderTx.apply(this, arguments); + } + return buildWithdrawOrderTx; + }() + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + ) + }, { + key: "buildStakeOrderTx", + value: (function () { + var _buildStakeOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee23(params) { + var _params$minReceived3; + var stablecoinAssetId, minReceived, _t8; + return _regenerator().w(function (_context24) { + while (1) switch (_context24.n) { + case 0: + if (!(params.amount <= 0n)) { + _context24.n = 1; + break; + } + throw new Error("Stake amount must be positive"); + case 1: + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + if (!((_params$minReceived3 = params.minReceived) !== null && _params$minReceived3 !== void 0)) { + _context24.n = 2; + break; + } + _t8 = _params$minReceived3; + _context24.n = 4; + break; + case 2: + _context24.n = 3; + return this.computeStakeMinReceived(params.amount, params.slippageToleranceBps); + case 3: + _t8 = _context24.v; + case 4: + minReceived = _t8; + assertPositiveMinReceived("Stake", minReceived); + return _context24.a(2, this._buildOrderTx({ + action: { + OStake: { + amount: params.amount, + min_received: minReceived + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee23, this); + })); + function buildStakeOrderTx(_x17) { + return _buildStakeOrderTx.apply(this, arguments); + } + return buildStakeOrderTx; + }() + /** + * Build a stake-order continuation from a completed swap's guaranteed USDr + * output. The swap quote remains observable to the caller, while the SDK + * owns the RealFi amount, exchange-rate quote, schema, and request address. + */ + ) + }, { + key: "buildStakeContinuation", + value: (function () { + var _buildStakeContinuation = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee24(params) { + var amount, expectedSundaeAssetId, minReceived, owner; + return _regenerator().w(function (_context25) { + while (1) switch (_context25.n) { + case 0: + amount = params.swap.minReceived.amount; + if (!(amount <= 0n)) { + _context25.n = 1; + break; + } + throw new Error("Swap minReceived amount must be positive"); + case 1: + expectedSundaeAssetId = "".concat(this.stablecoinPolicyId, ".").concat(this.assetNameHex); + if (!(params.swap.minReceived.metadata.assetId !== expectedSundaeAssetId)) { + _context25.n = 2; + break; + } + throw new Error("Swap minReceived must be USDr (".concat(expectedSundaeAssetId, "), got ").concat(params.swap.minReceived.metadata.assetId)); + case 2: + _context25.n = 3; + return this.computeStakeMinReceived(amount, params.slippageToleranceBps); + case 3: + minReceived = _context25.v; + assertPositiveMinReceived("Stake", minReceived); + _context25.n = 4; + return this.resolveOrderOwner(params.owner); + case 4: + owner = _context25.v; + return _context25.a(2, { + address: this.orderScriptAddress, + datum: this.serializeOrderDatum({ + OStake: { + amount: amount, + min_received: minReceived + } + }, params.destination, owner, params.data) + }); + } + }, _callee24, this); + })); + function buildStakeContinuation(_x18) { + return _buildStakeContinuation.apply(this, arguments); + } + return buildStakeContinuation; + }()) + }, { + key: "_buildUnstakeOrderTx", + value: function () { + var _buildUnstakeOrderTx2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee25(params) { + var _params$forfeit, _params$minReceived4; + var forfeit, sUSDrAssetId, minReceived, _t9; + return _regenerator().w(function (_context26) { + while (1) switch (_context26.n) { + case 0: + if (!(params.amount <= 0n)) { + _context26.n = 1; + break; + } + throw new Error("Unstake amount must be positive"); + case 1: + forfeit = (_params$forfeit = params.forfeit) !== null && _params$forfeit !== void 0 ? _params$forfeit : 0n; + if (!(forfeit < 0n)) { + _context26.n = 2; + break; + } + throw new Error("Forfeit amount cannot be negative"); + case 2: + sUSDrAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + if (!((_params$minReceived4 = params.minReceived) !== null && _params$minReceived4 !== void 0)) { + _context26.n = 3; + break; + } + _t9 = _params$minReceived4; + _context26.n = 5; + break; + case 3: + _context26.n = 4; + return this.computeUnstakeMinReceived(params.amount, forfeit, params.slippageToleranceBps); + case 4: + _t9 = _context26.v; + case 5: + minReceived = _t9; + // Also catches a full forfeit, where computeUnstakeMinReceived nets to 0: + // unstake.ak's own comment defers that case to `min_received > 0`, i.e. the + // batch-wide crash. Refuse to create the order instead. + assertPositiveMinReceived("Unstake", minReceived); + return _context26.a(2, this._buildOrderTx({ + action: { + OUnstake: { + amount: params.amount, + min_received: minReceived, + forfeit: forfeit + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE, [sUSDrAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + extraLabels: params.extraLabels + })); + } + }, _callee25, this); + })); + function _buildUnstakeOrderTx(_x19) { + return _buildUnstakeOrderTx2.apply(this, arguments); + } + return _buildUnstakeOrderTx; + }() + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockSlot - Slot number after which the user can spend the released USDr + * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0) + * @param params.slippageToleranceBps - Optional min-received tolerance override in basis points + */ + }, { + key: "buildUnstakeOrderTx", + value: (function () { + var _buildUnstakeOrderTx3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee26(params) { + var timelockDestination, extraLabels; + return _regenerator().w(function (_context27) { + while (1) switch (_context27.n) { + case 0: + timelockDestination = (0, _index2.buildTimelockDestination)(params.destination, params.unlockSlot); + extraLabels = new Map([[_index2.UNSTAKE_METADATA_LABEL, (0, _index2.buildUnstakeMetadatum)(params.destination, params.unlockSlot)]]); + return _context27.a(2, this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + minReceived: params.minReceived, + slippageToleranceBps: params.slippageToleranceBps, + owner: params.owner, + data: params.data, + extraLabels: extraLabels + })); + } + }, _callee26, this); + })); + function buildUnstakeOrderTx(_x20) { + return _buildUnstakeOrderTx3.apply(this, arguments); + } + return buildUnstakeOrderTx; + }() + /** + * Build a treasury-managed unstake order that wraps the destination in a + * native timelock script controlled by the order owner. + * + * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps + * treasury multisig ownership on the released USDr while enforcing the same + * unlock slot used by the retail unstake helper. The owner must be convertible + * to a Cardano native script. + */ + ) + }, { + key: "buildTreasuryUnstakeOrderTx", + value: (function () { + var _buildTreasuryUnstakeOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee27(params) { + var nativeScript, timelockDestination, extraLabels, tx; + return _regenerator().w(function (_context28) { + while (1) switch (_context28.n) { + case 0: + nativeScript = (0, _index2.buildMultisigTimelockNativeScript)(params.owner, params.unlockSlot); + timelockDestination = { + address: { + payment_credential: { + Script: [nativeScript.hash()] + }, + stake_credential: params.destination.address.stake_credential + }, + datum: "NoDatum" + }; // Attach the unstake metadata (label 55534472) exactly like the retail + // path (buildUnstakeOrderTx). track-chain requires this label to index the + // order; without it the confirmed unstake output is silently dropped + // (WTB-1466). Mirror retail precisely: the metadatum is built from the + // user-supplied destination (params.destination), not the derived timelock + // destination, and carries the same unlock_time. + extraLabels = new Map([[_index2.UNSTAKE_METADATA_LABEL, (0, _index2.buildUnstakeMetadatum)(params.destination, params.unlockSlot)]]); + _context28.n = 1; + return this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + minReceived: params.minReceived, + slippageToleranceBps: params.slippageToleranceBps, + owner: params.owner, + data: params.data, + extraLabels: extraLabels + }); + case 1: + tx = _context28.v; + return _context28.a(2, { + tx: tx, + nativeScript: nativeScript + }); + } + }, _callee27, this); + })); + function buildTreasuryUnstakeOrderTx(_x21) { + return _buildTreasuryUnstakeOrderTx.apply(this, arguments); + } + return buildTreasuryUnstakeOrderTx; + }() + /** + * Compute the default `min_received` (output sUSDR floor) for a stake order + * by reading the current staking-vault exchange rate and applying a + * slippage tolerance buffer. + * + * Tolerance resolution: per-call > SDK-level (defaultSlippageToleranceBps) + * > built-in 50bps (0.5%). + * + * Yield accrual moves `vault_usdr` up over time, so shares-per-USDR shrinks + * between order placement and execution. The buffer protects the user from + * receiving fewer shares than they expected at sign time. + * + * Bootstrap edge case: when the vault is empty (no USDR locked or no sUSDR + * circulating), the rate is treated as 1:1 and the buffer is skipped. + */ + ) + }, { + key: "computeStakeMinReceived", + value: (function () { + var _computeStakeMinReceived = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee28(amount, perCallToleranceBps) { + var _vaultUtxo$output$amo, _vaultUtxo$output$amo2; + var toleranceBps, stablecoinAssetId, _yield$this$getVaultD, vaultUtxo, parsedVaultDatum, vaultUsdr, circulatingSusdr, expected; + return _regenerator().w(function (_context29) { + while (1) switch (_context29.n) { + case 0: + toleranceBps = this.resolveStakeSlippageToleranceBps(perCallToleranceBps); + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + _context29.n = 1; + return this.getVaultDatum(); + case 1: + _yield$this$getVaultD = _context29.v; + vaultUtxo = _yield$this$getVaultD.vaultUtxo; + parsedVaultDatum = _yield$this$getVaultD.parsedVaultDatum; + vaultUsdr = this.settledVaultBacking(parsedVaultDatum, (_vaultUtxo$output$amo = (_vaultUtxo$output$amo2 = vaultUtxo.output().amount().multiasset()) === null || _vaultUtxo$output$amo2 === void 0 ? void 0 : _vaultUtxo$output$amo2.get(stablecoinAssetId)) !== null && _vaultUtxo$output$amo !== void 0 ? _vaultUtxo$output$amo : 0n); + circulatingSusdr = parsedVaultDatum.circulating_susdr; + if (!(vaultUsdr === 0n || circulatingSusdr === 0n)) { + _context29.n = 2; + break; + } + return _context29.a(2, amount); + case 2: + expected = amount * circulatingSusdr / vaultUsdr; + return _context29.a(2, expected * (10000n - toleranceBps) / 10000n); + } + }, _callee28, this); + })); + function computeStakeMinReceived(_x22, _x23) { + return _computeStakeMinReceived.apply(this, arguments); + } + return computeStakeMinReceived; + }()) + }, { + key: "resolveStakeSlippageToleranceBps", + value: function resolveStakeSlippageToleranceBps(perCallToleranceBps) { + var _ref; + var toleranceBps = (_ref = perCallToleranceBps !== null && perCallToleranceBps !== void 0 ? perCallToleranceBps : this.defaultSlippageToleranceBps) !== null && _ref !== void 0 ? _ref : 50n; + if (toleranceBps < 0n || toleranceBps > 10000n) { + throw new Error("Slippage tolerance must be between 0 and 10000 bps"); + } + return toleranceBps; + } + + /** + * Compute the default `min_received` (output USDR floor) for an unstake + * order by reading the current staking-vault exchange rate. + * + * `forfeit` is subtracted from the gross expected USDR, then a slippage + * tolerance protects the order from quote/provider drift. Tolerance + * resolution is per-call > SDK-level > built-in 50bps (0.5%). + * + * Bootstrap edge case: when the vault is empty, the rate is treated as 1:1. + */ + }, { + key: "computeUnstakeMinReceived", + value: (function () { + var _computeUnstakeMinReceived = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee29(amount, forfeit, perCallToleranceBps) { + var _vaultUtxo$output$amo3, _vaultUtxo$output$amo4; + var stablecoinAssetId, _yield$this$getVaultD2, vaultUtxo, parsedVaultDatum, vaultUsdr, circulatingSusdr, expectedGross, expectedNet, toleranceBps; + return _regenerator().w(function (_context30) { + while (1) switch (_context30.n) { + case 0: + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + _context30.n = 1; + return this.getVaultDatum(); + case 1: + _yield$this$getVaultD2 = _context30.v; + vaultUtxo = _yield$this$getVaultD2.vaultUtxo; + parsedVaultDatum = _yield$this$getVaultD2.parsedVaultDatum; + vaultUsdr = this.settledVaultBacking(parsedVaultDatum, (_vaultUtxo$output$amo3 = (_vaultUtxo$output$amo4 = vaultUtxo.output().amount().multiasset()) === null || _vaultUtxo$output$amo4 === void 0 ? void 0 : _vaultUtxo$output$amo4.get(stablecoinAssetId)) !== null && _vaultUtxo$output$amo3 !== void 0 ? _vaultUtxo$output$amo3 : 0n); + circulatingSusdr = parsedVaultDatum.circulating_susdr; + expectedGross = vaultUsdr === 0n || circulatingSusdr === 0n ? amount : amount * vaultUsdr / circulatingSusdr; + expectedNet = expectedGross > forfeit ? expectedGross - forfeit : 0n; + toleranceBps = this.resolveStakeSlippageToleranceBps(perCallToleranceBps); + return _context30.a(2, expectedNet * (10000n - toleranceBps) / 10000n); + } + }, _callee29, this); + })); + function computeUnstakeMinReceived(_x24, _x25, _x26) { + return _computeUnstakeMinReceived.apply(this, arguments); + } + return computeUnstakeMinReceived; + }() + /** + * Build a direct mint order: mint USDr without reserve asset backing. + * Used for fiat wire scenarios where reserve arrives off-chain. + */ + ) + }, { + key: "buildDirectMintOrderTx", + value: (function () { + var _buildDirectMintOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee30(params) { + return _regenerator().w(function (_context31) { + while (1) switch (_context31.n) { + case 0: + if (!(params.amount <= 0n)) { + _context31.n = 1; + break; + } + throw new Error("Direct mint amount must be positive"); + case 1: + return _context31.a(2, this._buildOrderTx({ + action: { + ODirectMint: { + amount: params.amount + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee30, this); + })); + function buildDirectMintOrderTx(_x27) { + return _buildDirectMintOrderTx.apply(this, arguments); + } + return buildDirectMintOrderTx; + }() + /** + * Build a direct burn order: burn USDr without reserve asset redemption. + * Used for fiat wire scenarios where reserve is sent off-chain. + */ + ) + }, { + key: "buildDirectBurnOrderTx", + value: (function () { + var _buildDirectBurnOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee31(params) { + var stablecoinAssetId; + return _regenerator().w(function (_context32) { + while (1) switch (_context32.n) { + case 0: + if (!(params.amount <= 0n)) { + _context32.n = 1; + break; + } + throw new Error("Direct burn amount must be positive"); + case 1: + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); // DirectBurn orders must lock the USDr being burned + return _context32.a(2, this._buildOrderTx({ + action: { + ODirectBurn: { + amount: params.amount + } + }, + valueToLock: (0, _sdk.makeValue)(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee31, this); + })); + function buildDirectBurnOrderTx(_x28) { + return _buildDirectBurnOrderTx.apply(this, arguments); + } + return buildDirectBurnOrderTx; + }()) + }, { + key: "getSignedPayloadFromOrderInputs", + value: // ───────────────────────────────────────────────────────────────────────────── + // Signed Payload and Signing + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build the V1_0 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + * + * `alpha` is the batch's yield split, required by versions whose Deposit + * action carries one (v1_1_rc1+) and rejected everywhere else. It is a + * parameter of the batch, chosen once by whoever created it and read back from + * the backend by every co-signer: on-chain, all signatures of a batch are + * checked against ONE payload hash, so a signer that derived its own value + * would produce bytes nobody else can co-sign. + */ + function () { + var _getSignedPayloadFromOrderInputs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee32(orderInputs, alpha) { + var sortedInputs, nonce, resolvedUtxos, actionType, exchangeRequests, treasuryRequests, stakeRequests, directRequests, _iterator4, _step4, _utxo$output$datum2, utxo, datumData, datum, origin, parsed, screened, _parsed$minReceived, _parsed$minReceived2, _parsed$forfeit, batchVerdict, action, payload, serialized, signedPayload, payloadHash, _t0, _t1; + return _regenerator().w(function (_context33) { + while (1) switch (_context33.p = _context33.n) { + case 0: + if (!(orderInputs.length === 0)) { + _context33.n = 1; + break; + } + throw new Error("At least one order input is required"); + case 1: + sortedInputs = (0, _index2.sortOrderInputs)(orderInputs); + nonce = (0, _index2.buildNonceFromUtxo)(sortedInputs[0]); + _context33.n = 2; + return this.blaze.provider.resolveUnspentOutputs(sortedInputs); + case 2: + resolvedUtxos = _context33.v; + actionType = null; + exchangeRequests = []; + treasuryRequests = []; + stakeRequests = []; + directRequests = []; + _iterator4 = _createForOfIteratorHelper(resolvedUtxos); + _context33.p = 3; + _iterator4.s(); + case 4: + if ((_step4 = _iterator4.n()).done) { + _context33.n = 11; + break; + } + utxo = _step4.value; + datumData = (_utxo$output$datum2 = utxo.output().datum()) === null || _utxo$output$datum2 === void 0 ? void 0 : _utxo$output$datum2.asInlineData(); + if (datumData) { + _context33.n = 5; + break; + } + throw new Error("Order UTXO has no inline datum"); + case 5: + datum = (0, _data.parse)(this.schemas.OrderDatumV1, datumData); + origin = { + transaction_id: utxo.input().transactionId().toString(), + output_index: utxo.input().index() + }; + parsed = this.classifyOrderAction(datum); // WTB-1764: the validators check each request inside one zip_fold via + // `expect validation(request)`, so a request that fails its predicate + // crashes the WHOLE execution transaction — every valid order batched + // alongside it dies too, with only an opaque "the validator crashed" + // to go on. Refuse to package it, and say which order it was. + _context33.n = 6; + return this.screenOrderForExecution(utxo, parsed); + case 6: + screened = _context33.v; + if (screened.ok) { + _context33.n = 7; + break; + } + throw new Error("Order ".concat(origin.transaction_id, "#").concat(origin.output_index, " cannot be executed: ") + "".concat(screened.reason, ". Every order batched with it would crash on-chain.")); + case 7: + if (!(actionType === null)) { + _context33.n = 8; + break; + } + actionType = parsed.actionType; + _context33.n = 9; + break; + case 8: + if (!(actionType !== parsed.actionType)) { + _context33.n = 9; + break; + } + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + case 9: + if (parsed.actionType === "mint" || parsed.actionType === "burn") { + exchangeRequests.push({ + destination: datum.destination, + amount: parsed.amount, + min_received: (_parsed$minReceived = parsed.minReceived) !== null && _parsed$minReceived !== void 0 ? _parsed$minReceived : 0n, + origin: origin, + reserve_asset: parsed.reserveAsset + }); + } else if (parsed.actionType === "deposit" || parsed.actionType === "withdraw") { + treasuryRequests.push(this.buildTreasuryRequest(datum, parsed, origin)); + } else if (parsed.actionType === "stake" || parsed.actionType === "unstake") { + stakeRequests.push({ + destination: datum.destination, + amount: parsed.amount, + min_received: (_parsed$minReceived2 = parsed.minReceived) !== null && _parsed$minReceived2 !== void 0 ? _parsed$minReceived2 : 0n, + origin: origin, + forfeit: (_parsed$forfeit = parsed.forfeit) !== null && _parsed$forfeit !== void 0 ? _parsed$forfeit : 0n + }); + } else { + directRequests.push({ + destination: datum.destination, + amount: parsed.amount, + origin: origin + }); + } + case 10: + _context33.n = 4; + break; + case 11: + _context33.n = 13; + break; + case 12: + _context33.p = 12; + _t0 = _context33.v; + _iterator4.e(_t0); + case 13: + _context33.p = 13; + _iterator4.f(); + return _context33.f(13); + case 14: + if (!(alpha && actionType !== "deposit")) { + _context33.n = 15; + break; + } + throw new Error("a ".concat(actionType, " batch takes no yield-split alpha (only a deposit splits yield)")); + case 15: + if (!(actionType === "deposit")) { + _context33.n = 16; + break; + } + batchVerdict = (0, _orderSanity.screenDepositBatch)(treasuryRequests.map(function (request) { + return { + actionType: "deposit", + amount: request.amount, + "yield": request["yield"] + }; + })); + if (batchVerdict.ok) { + _context33.n = 16; + break; + } + throw new Error("".concat(batchVerdict.reason, ". Every order batched with it would crash on-chain.")); + case 16: + _t1 = actionType; + _context33.n = _t1 === "mint" ? 17 : _t1 === "burn" ? 18 : _t1 === "withdraw" ? 19 : _t1 === "deposit" ? 20 : _t1 === "stake" ? 22 : _t1 === "unstake" ? 23 : _t1 === "direct_mint" ? 24 : _t1 === "direct_burn" ? 25 : 26; + break; + case 17: + action = { + Mint: { + requests: exchangeRequests + } + }; + return _context33.a(3, 27); + case 18: + action = { + Burn: { + requests: exchangeRequests + } + }; + return _context33.a(3, 27); + case 19: + action = { + Withdraw: { + requests: treasuryRequests + } + }; + return _context33.a(3, 27); + case 20: + _context33.n = 21; + return this.buildDepositAction(treasuryRequests, alpha); + case 21: + action = _context33.v; + return _context33.a(3, 27); + case 22: + action = { + Stake: { + requests: stakeRequests + } + }; + return _context33.a(3, 27); + case 23: + action = { + Unstake: { + requests: stakeRequests + } + }; + return _context33.a(3, 27); + case 24: + action = { + DirectMint: { + requests: directRequests + } + }; + return _context33.a(3, 27); + case 25: + action = { + DirectBurn: { + requests: directRequests + } + }; + return _context33.a(3, 27); + case 26: + throw new Error("No orders to process"); + case 27: + payload = { + action: action, + nonce: nonce + }; + serialized = Data.serialize(this.signing.SignedPayload_ProtocolRedeemerV1, payload); + signedPayload = serialized.toCbor().toString(); + payloadHash = (0, _core.blake2b_256)((0, _core.HexBlob)(signedPayload)); + return _context33.a(2, { + signedPayload: signedPayload, + payloadHash: payloadHash + }); + } + }, _callee32, this, [[3, 12, 13, 14]]); + })); + function getSignedPayloadFromOrderInputs(_x29, _x30) { + return _getSignedPayloadFromOrderInputs.apply(this, arguments); + } + return getSignedPayloadFromOrderInputs; + }() // ───────────────────────────────────────────────────────────────────────────── + // Execute Orders + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build a transaction to execute orders. + * + * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake, + * direct_mint, direct_burn. + */ + }, { + key: "buildExecuteOrdersTx", + value: function () { + var _buildExecuteOrdersTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee33(params) { + var orderInputs, signedPayloadCbor, signatures, fees, signedPayload, sortedOrderInputs, orderUtxos, orderInfos, actionType, _yield$this$getParsed2, proxyUtxo, parsedProxyDatum, settings, needsTreasury, needsVault, isMintAction, isStakeAction, scriptHashesNeeded, refInputs, treasuryUtxo, parsedTreasuryDatum, treasuryResult, vaultUtxo, parsedVaultDatum, vaultResult, walletUtxos, excludedInputIds, utxoKey, _iterator5, _step5, orderInfo, _i3, _Object$values, refUtxo, feeUtxos, allInputRefs, _iterator6, _step6, feeUtxo, sortedAllInputRefs, findInputIdx, treasuryInputIdx, vaultInputIdx, signedRequests, originToRequestIdx, i, o, inputToRequests, requestToOutputs, outputIdx, input, key, requestIdx, numDestOutputs, numExtraOutputs, totalYield, _vaultValue$multiasse3, _vaultValue$multiasse4, vaultValue, _stablecoinAssetId, vaultUSDr, treasuryCirculating, _this$resolveDepositY, unstakedYieldShare, totalForfeit, treasuryOutputIdx, vaultOutputIdx, extra, serializedSignedRedeemer, executeRedeemer, tx, _iterator7, _step7, _orderInfo, _iterator8, _step8, _feeUtxo, orchestratorRewardAccount, subValidatorHash, subValidatorRewardAccount, voidRedeemer, stablecoinAssetId, sUSDrAssetId, _t10; + return _regenerator().w(function (_context34) { + while (1) switch (_context34.n) { + case 0: + orderInputs = params.orderInputs, signedPayloadCbor = params.signedPayload, signatures = params.signatures, fees = params.fees; // Deserialize CBOR hex to object for internal use + signedPayload = (0, _data.parse)(this.signing.SignedPayload_ProtocolRedeemerV1, _core.PlutusData.fromCbor((0, _core.HexBlob)(signedPayloadCbor))); // 1. Sort and resolve order UTxOs + sortedOrderInputs = (0, _index2.sortOrderInputs)(orderInputs); + _context34.n = 1; + return this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + case 1: + orderUtxos = _context34.v; + // 2. Parse orders and validate same type. The fees map (if any) stamps + // each IOrderInfo with the locked fee that buildXxxExecute will subtract. + orderInfos = this.parseOrderInfos(orderUtxos, fees); + actionType = orderInfos[0].actionType; // 3. Get protocol settings + _context34.n = 2; + return this.getParsedProxyDatum(); + case 2: + _yield$this$getParsed2 = _context34.v; + proxyUtxo = _yield$this$getParsed2.proxyUtxo; + parsedProxyDatum = _yield$this$getParsed2.parsedProxyDatum; + settings = this.settingsConfig(parsedProxyDatum.settings); // 4. Determine what we need + needsTreasury = ["mint", "burn", "withdraw", "deposit", "direct_mint", "direct_burn"].includes(actionType); + needsVault = ["stake", "unstake", "deposit"].includes(actionType); // 5. Get script reference inputs + // V1.0 requires the orchestrator and the relevant sub-validator script + isMintAction = ["mint", "burn", "direct_mint", "direct_burn"].includes(actionType); + isStakeAction = ["stake", "unstake"].includes(actionType); + scriptHashesNeeded = { + protocol: this.protocolScriptHash, + order: this.orderScriptHash + }; + if (isMintAction) { + scriptHashesNeeded.protocolMint = this.protocolMintScriptHash; + } else if (isStakeAction) { + scriptHashesNeeded.protocolStake = this.protocolStakeScriptHash; + } else { + scriptHashesNeeded.protocolManagement = this.protocolManagementScriptHash; + } + if (needsTreasury) { + scriptHashesNeeded.treasury = this.treasuryScriptHash; + } + if (needsVault) { + scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash; + } + _context34.n = 3; + return this.getScriptReferenceInputs(scriptHashesNeeded); + case 3: + refInputs = _context34.v; + if (!needsTreasury) { + _context34.n = 5; + break; + } + _context34.n = 4; + return this.getTreasuryDatum(); + case 4: + treasuryResult = _context34.v; + treasuryUtxo = treasuryResult.treasuryUtxo; + parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum; + case 5: + if (!needsVault) { + _context34.n = 7; + break; + } + _context34.n = 6; + return this.getVaultDatum(); + case 6: + vaultResult = _context34.v; + vaultUtxo = vaultResult.vaultUtxo; + parsedVaultDatum = vaultResult.parsedVaultDatum; + case 7: + _context34.n = 8; + return this.blaze.wallet.getUnspentOutputs(); + case 8: + walletUtxos = _context34.v; + excludedInputIds = new Set(); + utxoKey = function utxoKey(inp) { + return "".concat(inp.transactionId().toString(), "#").concat(inp.index().toString()); + }; // Exclude script inputs (order, treasury, vault) + _iterator5 = _createForOfIteratorHelper(orderInfos); + try { + for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) { + orderInfo = _step5.value; + excludedInputIds.add(utxoKey(orderInfo.utxo.input())); + } + } catch (err) { + _iterator5.e(err); + } finally { + _iterator5.f(); + } + if (treasuryUtxo) { + excludedInputIds.add(utxoKey(treasuryUtxo.input())); + } + if (vaultUtxo) { + excludedInputIds.add(utxoKey(vaultUtxo.input())); + } + // Exclude reference inputs (must be disjoint from regular inputs) + excludedInputIds.add(utxoKey(proxyUtxo.input())); + for (_i3 = 0, _Object$values = Object.values(refInputs); _i3 < _Object$values.length; _i3++) { + refUtxo = _Object$values[_i3]; + if (refUtxo) { + excludedInputIds.add(utxoKey(refUtxo.input())); + } + } + feeUtxos = walletUtxos.filter(function (utxo) { + return !excludedInputIds.has(utxoKey(utxo.input())); + }); // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex). + allInputRefs = orderInfos.map(function (o) { + return o.utxo.input(); + }); + if (treasuryUtxo) { + allInputRefs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + allInputRefs.push(vaultUtxo.input()); + } + _iterator6 = _createForOfIteratorHelper(feeUtxos); + try { + for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) { + feeUtxo = _step6.value; + allInputRefs.push(feeUtxo.input()); + } + } catch (err) { + _iterator6.e(err); + } finally { + _iterator6.f(); + } + sortedAllInputRefs = _toConsumableArray(allInputRefs).sort(function (a, b) { + var txA = a.transactionId().toString(); + var txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + findInputIdx = function findInputIdx(input) { + var idx = sortedAllInputRefs.findIndex(function (r) { + return r.transactionId().toString() === input.transactionId().toString() && r.index() === input.index(); + }); + return BigInt(idx); + }; + treasuryInputIdx = treasuryUtxo ? findInputIdx(treasuryUtxo.input()) : 0n; + vaultInputIdx = vaultUtxo ? findInputIdx(vaultUtxo.input()) : undefined; // 8a. Correlate order inputs to signed request indices via origin fields. + // When all orders are present this produces the same identity mapping as before. + // When a subset is passed (partial execution), it maps each input to the + // correct request index in the signed payload. + signedRequests = getRequestsFromAction(signedPayload.action); + originToRequestIdx = new Map(); + for (i = 0; i < signedRequests.length; i++) { + o = signedRequests[i].origin; + originToRequestIdx.set("".concat(o.transaction_id, "#").concat(o.output_index), i); + } + inputToRequests = []; + requestToOutputs = []; + outputIdx = 0; + case 9: + if (!(outputIdx < orderInfos.length)) { + _context34.n = 12; + break; + } + input = orderInfos[outputIdx].utxo.input(); + key = "".concat(input.transactionId(), "#").concat(input.index()); + requestIdx = originToRequestIdx.get(key); + if (!(requestIdx === undefined)) { + _context34.n = 10; + break; + } + throw new Error("Order input ".concat(key, " not found in signed payload")); + case 10: + inputToRequests.push(BigInt(requestIdx)); + requestToOutputs.push(BigInt(outputIdx)); + case 11: + outputIdx++; + _context34.n = 9; + break; + case 12: + // 9. Build outputs and compute output indices + numDestOutputs = orderInfos.length; // For deposit with positive yield, the yield pot output is inserted after destinations + numExtraOutputs = 0; + if (actionType === "deposit") { + totalYield = orderInfos.reduce(function (sum, o) { + var _o$yield; + return sum + ((_o$yield = o["yield"]) !== null && _o$yield !== void 0 ? _o$yield : 0n); + }, 0n); + if (totalYield > 0n) { + vaultValue = vaultUtxo.output().amount(); + _stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + vaultUSDr = (_vaultValue$multiasse3 = (_vaultValue$multiasse4 = vaultValue.multiasset()) === null || _vaultValue$multiasse4 === void 0 ? void 0 : _vaultValue$multiasse4.get(_stablecoinAssetId)) !== null && _vaultValue$multiasse3 !== void 0 ? _vaultValue$multiasse3 : 0n; + treasuryCirculating = parsedTreasuryDatum.circulating_supply; // Use the signed split (rc1 echoes alpha; v1_0 recomputes) so pot-output + // existence/indexing agrees with buildDepositExecute and the validator. + _this$resolveDepositY = this.resolveDepositYieldShares(totalYield, vaultUSDr, treasuryCirculating, signedPayload.action), unstakedYieldShare = _this$resolveDepositY.unstakedYieldShare; + if (unstakedYieldShare > 0n) { + numExtraOutputs = 1; + } + } + } + + // For unstake, add yield pot output if forfeit is non-zero. + if (actionType === "unstake") { + totalForfeit = orderInfos.reduce(function (sum, o) { + var _o$forfeit; + return sum + ((_o$forfeit = o.forfeit) !== null && _o$forfeit !== void 0 ? _o$forfeit : 0n); + }, 0n); + if (totalForfeit > 0n) { + numExtraOutputs = 1; + } + } + treasuryOutputIdx = needsTreasury ? BigInt(numDestOutputs + numExtraOutputs) : 0n; + vaultOutputIdx = needsVault ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0)) : undefined; // 10. Build ExtraProtocolRedeemer + extra = { + request_to_outputs: requestToOutputs, + input_to_requests: inputToRequests, + treasury_input_idx: treasuryInputIdx, + treasury_output_idx: treasuryOutputIdx, + vault_input_idx: vaultInputIdx, + vault_output_idx: vaultOutputIdx + }; // 11. Build SignedRedeemer (versions may wrap it in a dispatch enum) + serializedSignedRedeemer = this.serializeOrchestratorWithdrawalRedeemer({ + extra: extra, + payload: signedPayload, + signatures: signatures + }); + executeRedeemer = Data.serialize(this.schemas.OrderRedeemerV1, "Execute"); // 12. Build the transaction + tx = this.newOrderTransaction(); // Add order inputs with Execute redeemer + _iterator7 = _createForOfIteratorHelper(orderInfos); + try { + for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) { + _orderInfo = _step7.value; + tx.addInput(_orderInfo.utxo, executeRedeemer); + } + + // Add wallet fee inputs explicitly + } catch (err) { + _iterator7.e(err); + } finally { + _iterator7.f(); + } + _iterator8 = _createForOfIteratorHelper(feeUtxos); + try { + for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) { + _feeUtxo = _step8.value; + tx.addInput(_feeUtxo); + } + + // Add reference inputs + } catch (err) { + _iterator8.e(err); + } finally { + _iterator8.f(); + } + tx.addReferenceInput(refInputs.protocol); + tx.addReferenceInput(refInputs.order); + tx.addReferenceInput(proxyUtxo); + // V1.0 sub-validator reference inputs + if (refInputs.protocolMint) { + tx.addReferenceInput(refInputs.protocolMint); + } + if (refInputs.protocolStake) { + tx.addReferenceInput(refInputs.protocolStake); + } + if (refInputs.protocolManagement) { + tx.addReferenceInput(refInputs.protocolManagement); + } + if (refInputs.treasury) { + tx.addReferenceInput(refInputs.treasury); + } + if (refInputs.stakingVault) { + tx.addReferenceInput(refInputs.stakingVault); + } + + // Add orchestrator withdrawal with signed redeemer + orchestratorRewardAccount = _sdk.Core.RewardAccount.fromCredential({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash + }, this.network); + tx.addWithdrawal(orchestratorRewardAccount, 0n, serializedSignedRedeemer); + + // Determine which sub-validator to use based on action type + subValidatorHash = actionType === "mint" || actionType === "burn" || actionType === "direct_mint" || actionType === "direct_burn" ? this.protocolMintScriptHash : actionType === "stake" || actionType === "unstake" ? this.protocolStakeScriptHash : this.protocolManagementScriptHash; // deposit, withdraw + // Add sub-validator withdrawal with void redeemer + subValidatorRewardAccount = _sdk.Core.RewardAccount.fromCredential({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: subValidatorHash + }, this.network); + voidRedeemer = Data.Void(); + tx.addWithdrawal(subValidatorRewardAccount, 0n, voidRedeemer); + + // Build per-action-type outputs, minting, and state updates + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + sUSDrAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + _t10 = actionType; + _context34.n = _t10 === "mint" ? 13 : _t10 === "burn" ? 14 : _t10 === "withdraw" ? 15 : _t10 === "deposit" ? 16 : _t10 === "stake" ? 17 : _t10 === "unstake" ? 18 : _t10 === "direct_mint" ? 19 : _t10 === "direct_burn" ? 20 : 21; + break; + case 13: + this.buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + return _context34.a(3, 21); + case 14: + this.buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + return _context34.a(3, 21); + case 15: + this.buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings); + return _context34.a(3, 21); + case 16: + this.buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings, signedPayload.action); + return _context34.a(3, 21); + case 17: + this.buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum); + return _context34.a(3, 21); + case 18: + this.buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum, settings); + return _context34.a(3, 21); + case 19: + this.buildDirectMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum); + return _context34.a(3, 21); + case 20: + this.buildDirectBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum); + return _context34.a(3, 21); + case 21: + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + _context34.n = 22; + return this.applyExecutionValidityBounds(tx, { + actionType: actionType, + vaultUtxo: vaultUtxo, + parsedVaultDatum: parsedVaultDatum + }); + case 22: + return _context34.a(2, tx); + } + }, _callee33, this); + })); + function buildExecuteOrdersTx(_x31) { + return _buildExecuteOrdersTx.apply(this, arguments); + } + return buildExecuteOrdersTx; + }() // ───────────────────────────────────────────────────────────────────────────── + // Per-Action Execute Builders + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + * + * The per-order fee (in USDr, locked at index time) is retained by the + * treasury: the user receives `amount − fee` USDr while `amount` is still + * minted, so the protocol pockets the difference via the treasury balance. + */ + }, { + key: "buildMintExecute", + value: function buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + // The audited mint contract enforces `mint_amount == total_delivered` + // and `circulating_supply` increases by `total_delivered` (cf. + // utilities.ak::maintain_treasury_mint). So we mint and credit the + // treasury for what users actually receive — `amount − fee` per order — + // while the reserve consumed per request stays based on the full + // signed `amount` (the user paid in reserve for the whole `amount`, + // even though they receive less; the protocol keeps the spread in + // reserve worth — this is the locked fee). + var totalDelivered = orderInfos.reduce(function (sum, o) { + return sum + (o.amount - o.fee); + }, 0n); + + // Destination outputs: send `amount − fee` USDr to each destination. + var _iterator9 = _createForOfIteratorHelper(orderInfos), + _step9; + try { + for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) { + var orderInfo = _step9.value; + var ra = (0, _index2.findReserveAsset)(settings, orderInfo.reserveAsset); + var reserveAssetId = _sdk.Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + var reserveAmount = (0, _index2.usdrToReserveCeil)(orderInfo.amount, ra); + var userAmount = orderInfo.amount - orderInfo.fee; + (0, _index2.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [[reserveAssetId, reserveAmount]], [[stablecoinAssetId, userAmount]])); + } + + // Mint USDr — exactly what was delivered (contract invariant). + } catch (err) { + _iterator9.e(err); + } finally { + _iterator9.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalDelivered]]), Data.Void()); + + // Reserve deltas: based on the full signed amounts (unchanged by fees). + var reserveDeltas = (0, _index2.computeReserveDeltas)(orderInfos, settings); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalDelivered); + } + + /** + * Burn: USDr burned, reserve sent to destinations. + * + * The audited contract decreases circulating_supply by the FULL signed + * `amount` (the user burns the whole `amount` of USDr) and the reserve + * outflow per asset equals what the user actually receives. The locked + * fee (in reserve units) stays in the treasury — by paying out + * `usdr_to_reserve(amount, ra) − fee` instead of the full natural + * amount, the protocol pockets the difference. + */ + }, { + key: "buildBurnExecute", + value: function buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + var totalAmount = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // Destination outputs: send `usdr_to_reserve(amount, ra) − fee` reserve + // to each destination. Track the actually-delivered amount per reserve + // asset so we can subtract the fee from the treasury reserve outflow. + var deliveredByAsset = new Map(); + var _iterator0 = _createForOfIteratorHelper(orderInfos), + _step0; + try { + for (_iterator0.s(); !(_step0 = _iterator0.n()).done;) { + var _deliveredByAsset$get; + var orderInfo = _step0.value; + var ra = (0, _index2.findReserveAsset)(settings, orderInfo.reserveAsset); + var reserveAssetId = _sdk.Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + var naturalReserve = (0, _index2.usdrToReserve)(-orderInfo.amount, ra); + var reserveAmount = naturalReserve - orderInfo.fee; + (0, _index2.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [[stablecoinAssetId, -orderInfo.amount]], [[reserveAssetId, reserveAmount]])); + var assetKey = orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]; + deliveredByAsset.set(assetKey, ((_deliveredByAsset$get = deliveredByAsset.get(assetKey)) !== null && _deliveredByAsset$get !== void 0 ? _deliveredByAsset$get : 0n) + reserveAmount); + } + + // Burn USDr — full signed amount per request (totalAmount is negative). + } catch (err) { + _iterator0.e(err); + } finally { + _iterator0.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Reserve deltas: out by what we actually delivered (negated). The + // protocol keeps the per-order fee inside the treasury balance. + var reserveDeltas = new Map(); + var _iterator1 = _createForOfIteratorHelper(deliveredByAsset.entries()), + _step1; + try { + for (_iterator1.s(); !(_step1 = _iterator1.n()).done;) { + var _step1$value = _slicedToArray(_step1.value, 2), + _assetKey = _step1$value[0], + delivered = _step1$value[1]; + reserveDeltas.set(_assetKey, -delivered); + } + } catch (err) { + _iterator1.e(err); + } finally { + _iterator1.f(); + } + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalAmount); + } + + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + }, { + key: "buildWithdrawExecute", + value: function buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings) { + // Destination outputs: send reserve tokens to each destination + var _iterator10 = _createForOfIteratorHelper(orderInfos), + _step10; + try { + for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) { + var orderInfo = _step10.value; + var ra = (0, _index2.findReserveAsset)(settings, orderInfo.reserveAsset); + var reserveAssetId = _sdk.Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + var reserveAmount = (0, _index2.usdrToReserve)(orderInfo.amount, ra); + (0, _index2.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [], [[reserveAssetId, reserveAmount]])); + } + + // Update treasury: reserve decreases, no circulating_supply change + } catch (err) { + _iterator10.e(err); + } finally { + _iterator10.f(); + } + var reserveDeltas = (0, _index2.computeReserveDeltas)(orderInfos, settings, true); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, 0n); + } + + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + }, { + key: "buildDepositExecute", + value: function buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings, action) { + var _vaultValue$multiasse5, _vaultValue$multiasse6; + var totalYield = orderInfos.reduce(function (sum, o) { + var _o$yield2; + return sum + ((_o$yield2 = o["yield"]) !== null && _o$yield2 !== void 0 ? _o$yield2 : 0n); + }, 0n); + + // Calculate yield split. rc1 echoes the COSE-signed alpha; v1_0 recomputes + // from live state. Must NOT re-derive independently from vault/treasury — + // the validator checks the split against the signed action. + var vaultValue = vaultUtxo.output().amount(); + var vaultUSDr = (_vaultValue$multiasse5 = (_vaultValue$multiasse6 = vaultValue.multiasset()) === null || _vaultValue$multiasse6 === void 0 ? void 0 : _vaultValue$multiasse6.get(stablecoinAssetId)) !== null && _vaultValue$multiasse5 !== void 0 ? _vaultValue$multiasse5 : 0n; + var treasuryCirculating = parsedTreasuryDatum.circulating_supply; + var _this$resolveDepositY2 = this.resolveDepositYieldShares(totalYield, vaultUSDr, treasuryCirculating, action), + stakedYieldShare = _this$resolveDepositY2.stakedYieldShare, + unstakedYieldShare = _this$resolveDepositY2.unstakedYieldShare; + var remainingOrderUSDrToBurn = unstakedYieldShare < 0n ? -unstakedYieldShare : 0n; + + // Destination outputs: return any order surplus after protocol consumption. + var _iterator11 = _createForOfIteratorHelper(orderInfos), + _step11; + try { + for (_iterator11.s(); !(_step11 = _iterator11.n()).done;) { + var _orderInfo$yield; + var orderInfo = _step11.value; + var reserveAssetId = _sdk.Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + var ra = (0, _index2.findReserveAsset)(settings, orderInfo.reserveAsset); + var yieldValue = (_orderInfo$yield = orderInfo["yield"]) !== null && _orderInfo$yield !== void 0 ? _orderInfo$yield : 0n; + var usdrBacking = yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount; + var reserveAmount = (0, _index2.usdrToReserve)(usdrBacking, ra); + var consumedAssets = [[reserveAssetId, reserveAmount]]; + if (remainingOrderUSDrToBurn > 0n) { + var _orderInfo$utxo$outpu, _orderInfo$utxo$outpu2; + var orderUSDr = (_orderInfo$utxo$outpu = (_orderInfo$utxo$outpu2 = orderInfo.utxo.output().amount().multiasset()) === null || _orderInfo$utxo$outpu2 === void 0 ? void 0 : _orderInfo$utxo$outpu2.get(stablecoinAssetId)) !== null && _orderInfo$utxo$outpu !== void 0 ? _orderInfo$utxo$outpu : 0n; + var consumedUSDr = orderUSDr < remainingOrderUSDrToBurn ? orderUSDr : remainingOrderUSDrToBurn; + if (consumedUSDr > 0n) { + consumedAssets.push([stablecoinAssetId, consumedUSDr]); + remainingOrderUSDrToBurn -= consumedUSDr; + } + } + (0, _index2.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, consumedAssets)); + } + } catch (err) { + _iterator11.e(err); + } finally { + _iterator11.f(); + } + if (totalYield > 0n) { + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + if (unstakedYieldShare > 0n) { + // The yield pot is a script address in production (WTB-1172), so + // build the output directly with NoDatum. + (0, _index2.addDestinationOutput)(tx, this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum" + }, (0, _sdk.makeValue)(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare])); + } + } else if (totalYield < 0n) { + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + } + + // Update treasury + var reserveDeltas = new Map(); + var _iterator12 = _createForOfIteratorHelper(orderInfos), + _step12; + try { + for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) { + var _orderInfo2$yield, _reserveDeltas$get; + var _orderInfo2 = _step12.value; + var assetId = _orderInfo2.reserveAsset[0] + _orderInfo2.reserveAsset[1]; + var _ra = (0, _index2.findReserveAsset)(settings, _orderInfo2.reserveAsset); + var _yieldValue = (_orderInfo2$yield = _orderInfo2["yield"]) !== null && _orderInfo2$yield !== void 0 ? _orderInfo2$yield : 0n; + var _usdrBacking = _yieldValue >= 0n ? _orderInfo2.amount + _yieldValue : _orderInfo2.amount; + var _reserveAmount = (0, _index2.usdrToReserve)(_usdrBacking, _ra); + reserveDeltas.set(assetId, ((_reserveDeltas$get = reserveDeltas.get(assetId)) !== null && _reserveDeltas$get !== void 0 ? _reserveDeltas$get : 0n) + _reserveAmount); + } + } catch (err) { + _iterator12.e(err); + } finally { + _iterator12.f(); + } + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalYield); + + // Update vault. Datum construction is delegated so versions with a + // yield-diffusion window (v1_1_rc1) can set it from the batch's requests; + // the v1_0 default just moves the vault USDr by the staked share. + this.updateDepositVaultOutput(tx, vaultUtxo, parsedVaultDatum, { + stakedYieldShare: stakedYieldShare, + totalYield: totalYield, + orderInfos: orderInfos + }); + } + + /** + * Version hook: lock the post-deposit vault output. v1_0 / v1_0_rc1 keep the + * one-field datum and simply add `stakedYieldShare` USDr to the vault. + * Versions with time-diffused yield override this to roll the staked share + * into the diffusion window (`validate_deposit_diffusion` in deposit.ak). + */ + }, { + key: "updateDepositVaultOutput", + value: function updateDepositVaultOutput(tx, vaultUtxo, parsedVaultDatum, ctx) { + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, 0n, ctx.stakedYieldShare); + } + + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + * + * Stake is not fee-filtered (no protocol fee retained on stake), so the + * vault receives the full `amount` USDr and mints sUSDr at the natural + * rate. + */ + }, { + key: "buildStakeExecute", + value: function buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum) { + var _vaultValue$multiasse7, _vaultValue$multiasse8; + var vaultValue = vaultUtxo.output().amount(); + var vaultUSDr = (_vaultValue$multiasse7 = (_vaultValue$multiasse8 = vaultValue.multiasset()) === null || _vaultValue$multiasse8 === void 0 ? void 0 : _vaultValue$multiasse8.get(stablecoinAssetId)) !== null && _vaultValue$multiasse7 !== void 0 ? _vaultValue$multiasse7 : 0n; + // Rate is quoted against settled backing (v1_0: full balance; v1_1_rc1: + // balance minus not-yet-diffused pending yield). + var settledBacking = this.settledVaultBacking(parsedVaultDatum, vaultUSDr); + var circulatingSUSDr = parsedVaultDatum.circulating_susdr; + var totalUSDrToVault = 0n; + var totalSUSDrMinted = 0n; + var _iterator13 = _createForOfIteratorHelper(orderInfos), + _step13; + try { + for (_iterator13.s(); !(_step13 = _iterator13.n()).done;) { + var orderInfo = _step13.value; + var usDrToVault = orderInfo.amount; + totalUSDrToVault += usDrToVault; + var sUSDrAmount = void 0; + if (circulatingSUSDr === 0n || settledBacking === 0n) { + // Bootstrap rate is 1:1 (cf. stake.ak). + sUSDrAmount = usDrToVault; + } else { + sUSDrAmount = usDrToVault * circulatingSUSDr / settledBacking; + } + totalSUSDrMinted += sUSDrAmount; + (0, _index2.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [[stablecoinAssetId, usDrToVault]], [[sUSDrAssetId, sUSDrAmount]])); + } + } catch (err) { + _iterator13.e(err); + } finally { + _iterator13.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]), Data.Void()); + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, totalSUSDrMinted, totalUSDrToVault); + } + + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + * V1_0: Supports forfeit parameter - forfeited USDr goes to yield pot. + */ + }, { + key: "buildUnstakeExecute", + value: function buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum, settings) { + var _vaultValue$multiasse9, _vaultValue$multiasse0; + var totalSUSDrBurned = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + var vaultValue = vaultUtxo.output().amount(); + var vaultUSDr = (_vaultValue$multiasse9 = (_vaultValue$multiasse0 = vaultValue.multiasset()) === null || _vaultValue$multiasse0 === void 0 ? void 0 : _vaultValue$multiasse0.get(stablecoinAssetId)) !== null && _vaultValue$multiasse9 !== void 0 ? _vaultValue$multiasse9 : 0n; + // Entitlement is quoted against settled backing (v1_0: full balance; + // v1_1_rc1: balance minus not-yet-diffused pending yield). + var settledBacking = this.settledVaultBacking(parsedVaultDatum, vaultUSDr); + var circulatingSUSDr = parsedVaultDatum.circulating_susdr; + if (circulatingSUSDr === 0n) { + throw new Error("Cannot unstake: no sUSDr in circulation"); + } + + // The user receives `entitled − forfeit` USDr. Forfeit goes to the + // unstaked yield pot; the vault decreases by the full natural entitlement + // for each order. (Unstake is not fee-filtered.) + var totalUSDrLeavingVault = 0n; + var totalForfeit = 0n; + var _iterator14 = _createForOfIteratorHelper(orderInfos), + _step14; + try { + for (_iterator14.s(); !(_step14 = _iterator14.n()).done;) { + var _orderInfo$forfeit; + var orderInfo = _step14.value; + var uSDrEntitled = orderInfo.amount * settledBacking / circulatingSUSDr; + var forfeit = (_orderInfo$forfeit = orderInfo.forfeit) !== null && _orderInfo$forfeit !== void 0 ? _orderInfo$forfeit : 0n; + var uSDrAmount = uSDrEntitled - forfeit; + totalUSDrLeavingVault += uSDrEntitled; + totalForfeit += forfeit; + (0, _index2.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [[sUSDrAssetId, orderInfo.amount]], [[stablecoinAssetId, uSDrAmount]])); + } + + // Send forfeited USDr to yield pot if any + } catch (err) { + _iterator14.e(err); + } finally { + _iterator14.f(); + } + var totalYieldPot = totalForfeit; + if (totalYieldPot > 0n) { + // Script pot in production (WTB-1172) — see buildDepositExecute. + (0, _index2.addDestinationOutput)(tx, this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum" + }, (0, _sdk.makeValue)(MIN_LOVELACE, [stablecoinAssetId, totalYieldPot])); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]), Data.Void()); + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, -totalSUSDrBurned, -totalUSDrLeavingVault); + } + + /** + * DirectMint: Mint USDr without reserve asset flow. + * USDr is minted to destinations, treasury circulating_supply increases. + * NO reserve asset changes. + */ + }, { + key: "buildDirectMintExecute", + value: function buildDirectMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum) { + var totalAmount = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // Destination outputs: send USDr to each destination + var _iterator15 = _createForOfIteratorHelper(orderInfos), + _step15; + try { + for (_iterator15.s(); !(_step15 = _iterator15.n()).done;) { + var orderInfo = _step15.value; + (0, _index2.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [], [[stablecoinAssetId, orderInfo.amount]])); + } + + // Mint USDr + } catch (err) { + _iterator15.e(err); + } finally { + _iterator15.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Update treasury: circulating_supply increases, NO reserve changes + this.updateTreasuryOutputNoReserve(tx, treasuryUtxo, parsedTreasuryDatum, totalAmount); + } + + /** + * DirectBurn: Burn USDr without reserve asset flow. + * USDr is burned, treasury circulating_supply decreases. + * NO reserve asset changes, NO destination outputs (fiat sent off-chain). + */ + }, { + key: "buildDirectBurnExecute", + value: function buildDirectBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum) { + // totalAmount is negative for burns (from classifyOrderAction) + var totalAmount = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // Fiat is sent off-chain. On-chain, return the order value minus the + // burned USDr to the destination. + var _iterator16 = _createForOfIteratorHelper(orderInfos), + _step16; + try { + for (_iterator16.s(); !(_step16 = _iterator16.n()).done;) { + var orderInfo = _step16.value; + (0, _index2.addDestinationOutput)(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [[stablecoinAssetId, -orderInfo.amount]])); + } + + // Burn USDr (totalAmount is negative) + } catch (err) { + _iterator16.e(err); + } finally { + _iterator16.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Update treasury: circulating_supply decreases, NO reserve changes + this.updateTreasuryOutputNoReserve(tx, treasuryUtxo, parsedTreasuryDatum, totalAmount); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Cancel Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to cancel orders. + */ + }, { + key: "buildCancelOrdersTx", + value: function () { + var _buildCancelOrdersTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee34(params) { + var orderInputs, destination, availableSigners, versionHint, orderUtxos, cachedOrderRefs, orderRefInputs, cancelRedeemer, destAddress, tx, _iterator17, _step17, orderRefInput, currentOrderRefInput, requiredSigners, _iterator18, _step18, utxo, owner, _iterator20, _step20, keyHash, outputValue, effectiveSigners, _iterator19, _step19, _keyHash, _t11, _t12; + return _regenerator().w(function (_context35) { + while (1) switch (_context35.p = _context35.n) { + case 0: + orderInputs = params.orderInputs, destination = params.destination, availableSigners = params.availableSigners, versionHint = params.versionHint; + _context35.n = 1; + return this.blaze.provider.resolveUnspentOutputs(orderInputs); + case 1: + orderUtxos = _context35.v; + if (!(orderUtxos.length === 0)) { + _context35.n = 2; + break; + } + throw new Error("No orders to cancel"); + case 2: + cachedOrderRefs = this.cachedReferenceInputs.orderRefInput ? new Map([[this.orderScriptHash, this.cachedReferenceInputs.orderRefInput]]) : undefined; + _context35.n = 3; + return (0, _index2.resolveOrderReferenceInputs)(this.blaze, orderUtxos, cachedOrderRefs, this.scriptDeploymentAddress); + case 3: + orderRefInputs = _context35.v; + cancelRedeemer = Data.serialize(this.schemas.OrderRedeemerV1, "Cancel"); + if (!(destination !== null && destination !== void 0)) { + _context35.n = 4; + break; + } + _t11 = destination; + _context35.n = 6; + break; + case 4: + _context35.n = 5; + return this.blaze.wallet.getChangeAddress(); + case 5: + _t11 = _context35.v; + case 6: + destAddress = _t11; + tx = this.newOrderTransaction(); + _iterator17 = _createForOfIteratorHelper(orderRefInputs.values()); + try { + for (_iterator17.s(); !(_step17 = _iterator17.n()).done;) { + orderRefInput = _step17.value; + tx.addReferenceInput(orderRefInput); + } + + // cache current version of order script reference input + } catch (err) { + _iterator17.e(err); + } finally { + _iterator17.f(); + } + currentOrderRefInput = orderRefInputs.get(this.orderScriptHash); + if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = currentOrderRefInput; + } + requiredSigners = new Set(); + _iterator18 = _createForOfIteratorHelper(orderUtxos); + _context35.p = 7; + _iterator18.s(); + case 8: + if ((_step18 = _iterator18.n()).done) { + _context35.n = 11; + break; + } + utxo = _step18.value; + _context35.n = 9; + return (0, _index2.parseCancelOwner)(utxo, versionHint); + case 9: + owner = _context35.v; + _iterator20 = _createForOfIteratorHelper((0, _index2.getSignatureKeyHashesFromMultisigScript)(owner)); + try { + for (_iterator20.s(); !(_step20 = _iterator20.n()).done;) { + keyHash = _step20.value; + requiredSigners.add(keyHash); + } + } catch (err) { + _iterator20.e(err); + } finally { + _iterator20.f(); + } + tx.addInput(utxo, cancelRedeemer); + outputValue = utxo.output().amount(); + (0, _index2.addDirectOutput)(tx, destAddress, outputValue); + case 10: + _context35.n = 8; + break; + case 11: + _context35.n = 13; + break; + case 12: + _context35.p = 12; + _t12 = _context35.v; + _iterator18.e(_t12); + case 13: + _context35.p = 13; + _iterator18.f(); + return _context35.f(13); + case 14: + effectiveSigners = availableSigners ? new Set(_toConsumableArray(requiredSigners).filter(function (k) { + return availableSigners.has(k); + })) : requiredSigners; + _iterator19 = _createForOfIteratorHelper(effectiveSigners); + try { + for (_iterator19.s(); !(_step19 = _iterator19.n()).done;) { + _keyHash = _step19.value; + tx.addRequiredSigner((0, _core.Ed25519KeyHashHex)(_keyHash)); + } + } catch (err) { + _iterator19.e(err); + } finally { + _iterator19.f(); + } + return _context35.a(2, tx); + } + }, _callee34, this, [[7, 12, 13, 14]]); + })); + function buildCancelOrdersTx(_x32) { + return _buildCancelOrdersTx.apply(this, arguments); + } + return buildCancelOrdersTx; + }() + /** + * Build a transaction to recover funds from invalidated orders. + * Only works when the protocol has been upgraded and the order validator + * no longer matches the current protocol logic. + * + * IMPORTANT: Only works for orders with simple Signature owners. + * + * Output-at-same-index constraint: Each output must be at the same + * transaction index as its corresponding input. + */ + }, { + key: "buildInvalidatedOrdersTx", + value: (function () { + var _buildInvalidatedOrdersTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee35(params) { + var _this3 = this; + var orderInputs, orderUtxos, cachedOrderRefs, orderRefInputs, _yield$this$getRawPro2, proxyUtxo, proxyDatum, parsedProxyDatum, registry, isProtocolUpgraded, hasActiveOrder, invalidatedRedeemer, walletUtxos, walletAddress, utxoKey, excludedInputIds, FEE_BUFFER, feeCandidates, feeUtxo, items, tx, _iterator21, _step21, orderRefInput, _iterator22, _step22, item, ownerCredential, ownerAddress, inputValue, fillerValue, _t13; + return _regenerator().w(function (_context36) { + while (1) switch (_context36.p = _context36.n) { + case 0: + orderInputs = params.orderInputs; + _context36.n = 1; + return this.blaze.provider.resolveUnspentOutputs(orderInputs); + case 1: + orderUtxos = _context36.v; + if (!(orderUtxos.length === 0)) { + _context36.n = 2; + break; + } + throw new Error("No orders to invalidate"); + case 2: + // Resolve references from the validators that actually hold the supplied + // orders. A current SDK instance may be recovering same-schema orders left + // at a superseded validator, so its own orderScriptHash is not necessarily + // the script needed to spend these inputs. + cachedOrderRefs = this.cachedReferenceInputs.orderRefInput ? new Map([[this.orderScriptHash, this.cachedReferenceInputs.orderRefInput]]) : undefined; + _context36.n = 3; + return (0, _index2.resolveOrderReferenceInputs)(this.blaze, orderUtxos, cachedOrderRefs, this.scriptDeploymentAddress); + case 3: + orderRefInputs = _context36.v; + _context36.n = 4; + return this.getRawProxyDatum(); + case 4: + _yield$this$getRawPro2 = _context36.v; + proxyUtxo = _yield$this$getRawPro2.proxyUtxo; + proxyDatum = _yield$this$getRawPro2.proxyDatum; + _context36.p = 5; + parsedProxyDatum = (0, _data.parse)(this.schemas.ProxyDatumV1, proxyDatum); + registry = this.settingsRegistry(parsedProxyDatum.settings); + isProtocolUpgraded = parsedProxyDatum.logic !== this.protocolScriptHash; + hasActiveOrder = _toConsumableArray(orderRefInputs.keys()).some(function (orderScriptHash) { + return orderScriptHash === registry.order; + }); + if (!(hasActiveOrder && !isProtocolUpgraded)) { + _context36.n = 6; + break; + } + throw new Error("Cannot use Invalidated redeemer: protocol has not been upgraded"); + case 6: + _context36.n = 8; + break; + case 7: + _context36.p = 7; + _t13 = _context36.v; + if (!(_t13 instanceof Error && _t13.message === "Cannot use Invalidated redeemer: protocol has not been upgraded")) { + _context36.n = 8; + break; + } + throw _t13; + case 8: + invalidatedRedeemer = Data.serialize(this.schemas.OrderRedeemerV1, "Invalidated"); // The order validator's Invalidated branch enforces + // `outputs[index_of(self_input)] == owner_address`. The input index + // is computed against the *full* canonical input sort, including any + // wallet fee inputs. To make the alignment deterministic, pre-select + // a single wallet UTxO to act as the fee input, build the canonical + // sort across [orders + fee UTxO] up front, and lay outputs at + // matching positions: owner payouts at order indices, a wallet + // filler at the fee UTxO's index. Modeled on buildExecuteOrdersTx. + _context36.n = 9; + return this.blaze.wallet.getUnspentOutputs(); + case 9: + walletUtxos = _context36.v; + _context36.n = 10; + return this.blaze.wallet.getChangeAddress(); + case 10: + walletAddress = _context36.v; + utxoKey = function utxoKey(inp) { + return "".concat(inp.transactionId().toString(), "#").concat(inp.index().toString()); + }; + excludedInputIds = new Set([utxoKey(proxyUtxo.input())].concat(_toConsumableArray(_toConsumableArray(orderRefInputs.values()).map(function (refInput) { + return utxoKey(refInput.input()); + })), _toConsumableArray(orderUtxos.map(function (u) { + return utxoKey(u.input()); + })))); // 5 ADA buffer comfortably covers tx fees for any realistic invalidate + // batch (1-20 inputs) plus min-UTxO for the change output Blaze appends. + // Prefer an ADA-only input, but safely support a token-bearing one when + // its explicit filler output still satisfies the ledger's min-ADA rule. + FEE_BUFFER = 5000000n; + feeCandidates = walletUtxos.filter(function (u) { + return !excludedInputIds.has(utxoKey(u.input())); + }).sort(function (a, b) { + var _a$output$amount$mult, _a$output$amount$mult2, _b$output$amount$mult, _b$output$amount$mult2; + var aHasAssets = ((_a$output$amount$mult = (_a$output$amount$mult2 = a.output().amount().multiasset()) === null || _a$output$amount$mult2 === void 0 ? void 0 : _a$output$amount$mult2.size) !== null && _a$output$amount$mult !== void 0 ? _a$output$amount$mult : 0) > 0; + var bHasAssets = ((_b$output$amount$mult = (_b$output$amount$mult2 = b.output().amount().multiasset()) === null || _b$output$amount$mult2 === void 0 ? void 0 : _b$output$amount$mult2.size) !== null && _b$output$amount$mult !== void 0 ? _b$output$amount$mult : 0) > 0; + return Number(aHasAssets) - Number(bHasAssets); + }); + feeUtxo = feeCandidates.find(function (u) { + var inputValue = u.output().amount(); + if (inputValue.coin() < FEE_BUFFER) return false; + var fillerValue = new _sdk.Core.Value(inputValue.coin() - FEE_BUFFER, inputValue.multiasset()); + var fillerOutput = new _sdk.Core.TransactionOutput(walletAddress, fillerValue); + return fillerValue.coin() >= (0, _sdk.calculateMinAda)(fillerOutput, _this3.blaze.params.coinsPerUtxoByte); + }); + if (feeUtxo) { + _context36.n = 11; + break; + } + throw new Error("buildInvalidatedOrdersTx: no wallet UTxO can cover fees while retaining its minimum ADA"); + case 11: + items = orderUtxos.map(function (utxo) { + var _utxo$output$datum3; + var datumData = (_utxo$output$datum3 = utxo.output().datum()) === null || _utxo$output$datum3 === void 0 ? void 0 : _utxo$output$datum3.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + var datum = (0, _data.parse)(_this3.schemas.OrderDatumV1, datumData); + if (!("Signature" in datum.owner)) { + throw new Error("Invalidated redeemer only supports simple Signature owners"); + } + return { + kind: "order", + utxo: utxo, + ownerKeyHash: datum.owner.Signature.key_hash + }; + }); + items.push({ + kind: "fee", + utxo: feeUtxo + }); + items.sort(function (a, b) { + var txA = a.utxo.input().transactionId().toString(); + var txB = b.utxo.input().transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.utxo.input().index()) - Number(b.utxo.input().index()); + }); + tx = this.newOrderTransaction(); + _iterator21 = _createForOfIteratorHelper(orderRefInputs.values()); + try { + for (_iterator21.s(); !(_step21 = _iterator21.n()).done;) { + orderRefInput = _step21.value; + tx.addReferenceInput(orderRefInput); + } + } catch (err) { + _iterator21.e(err); + } finally { + _iterator21.f(); + } + tx.addReferenceInput(proxyUtxo); + _iterator22 = _createForOfIteratorHelper(items); + try { + for (_iterator22.s(); !(_step22 = _iterator22.n()).done;) { + item = _step22.value; + if (item.kind === "order") { + ownerCredential = _sdk.Core.Credential.fromCore({ + type: _sdk.Core.CredentialType.KeyHash, + hash: _sdk.Core.Hash28ByteBase16(item.ownerKeyHash) + }); + ownerAddress = (0, _core.addressFromCredentials)(this.network, ownerCredential); + tx.addInput(item.utxo, invalidatedRedeemer); + // Owner gets back the order's full value at the matching output + // index. Per-input check `output_ada >= input_ada - tx.fee` holds + // trivially because output == input here; the tx fee is absorbed + // by the filler+change pair coming out of the wallet fee input. + (0, _index2.addDirectOutput)(tx, ownerAddress, item.utxo.output().amount()); + } else { + tx.addInput(item.utxo); + // Wallet filler at the fee UTxO's canonical index. Sends value + // back to the wallet minus FEE_BUFFER, which Blaze then splits + // into the tx fee and an automatic change output (appended after + // all explicit outputs, beyond any script-input index — so no + // validator ever reads it). + inputValue = item.utxo.output().amount(); + fillerValue = new _sdk.Core.Value(inputValue.coin() - FEE_BUFFER, inputValue.multiasset()); + (0, _index2.addDirectOutput)(tx, walletAddress, fillerValue); + } + } + } catch (err) { + _iterator22.e(err); + } finally { + _iterator22.f(); + } + return _context36.a(2, tx); + } + }, _callee35, this, [[5, 7]]); + })); + function buildInvalidatedOrdersTx(_x33) { + return _buildInvalidatedOrdersTx.apply(this, arguments); + } + return buildInvalidatedOrdersTx; + }() // ───────────────────────────────────────────────────────────────────────────── + // Protected Helpers + // ───────────────────────────────────────────────────────────────────────────── + /** + * Parse order UTxOs into IOrderInfo objects and validate they are all the + * same type. The optional `fees` map (keyed by `${txHash}#${outputIndex}`) + * stamps each order with its locked fee in the action's output unit. + * Missing entries default to 0 (no fee retained). + */ + ) + }, { + key: "parseOrderInfos", + value: function parseOrderInfos(orderUtxos, fees) { + var orderInfos = []; + var expectedActionType = null; + var _iterator23 = _createForOfIteratorHelper(orderUtxos), + _step23; + try { + for (_iterator23.s(); !(_step23 = _iterator23.n()).done;) { + var _utxo$output$datum4, _fees$get; + var utxo = _step23.value; + var datumData = (_utxo$output$datum4 = utxo.output().datum()) === null || _utxo$output$datum4 === void 0 ? void 0 : _utxo$output$datum4.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + var datum = (0, _data.parse)(this.schemas.OrderDatumV1, datumData); + var classified = this.classifyOrderAction(datum); + if (expectedActionType === null) { + expectedActionType = classified.actionType; + } else if (expectedActionType !== classified.actionType) { + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + } + var input = utxo.input(); + var key = "".concat(input.transactionId().toString(), "#").concat(input.index().toString()); + var fee = (_fees$get = fees === null || fees === void 0 ? void 0 : fees.get(key)) !== null && _fees$get !== void 0 ? _fees$get : 0n; + orderInfos.push({ + utxo: utxo, + datum: datum, + actionType: classified.actionType, + amount: classified.amount, + "yield": classified["yield"], + forfeit: classified.forfeit, + minReceived: classified.minReceived, + reserveAsset: classified.reserveAsset, + fee: fee + }); + } + } catch (err) { + _iterator23.e(err); + } finally { + _iterator23.f(); + } + if (orderInfos.length === 0) { + throw new Error("No orders to execute"); + } + return orderInfos; + } + + /** + * Full executability screen for one open order (WTB-1764): the datum + * predicates plus the two value-dependent aborts (input funding, unsatisfiable + * `min_received`). Every consumer that decides whether an order may join a + * batch should call this rather than `screenOrderAction` alone — the datum-only + * screen cannot see an underfunded UTxO, which is the cheapest batch-killer. + * + * Reads settings for the reserve multiplier on mint/burn. `getParsedProxyDatum` + * memoises, so the per-order cost after the first call is local arithmetic — + * safe for the approvals cron's whole-address sweep. + */ + }, { + key: "screenOrderForExecution", + value: (function () { + var _screenOrderForExecution = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee36(utxo, action) { + var datumVerdict, settings, _t14, _t15; + return _regenerator().w(function (_context37) { + while (1) switch (_context37.n) { + case 0: + datumVerdict = (0, _orderSanity.screenOrderAction)(action); + if (datumVerdict.ok) { + _context37.n = 1; + break; + } + return _context37.a(2, datumVerdict); + case 1: + _context37.n = 2; + return this.getValidatedScreeningSettings(); + case 2: + settings = _context37.v; + _t14 = _orderSanity.screenOrderUtxoFacts; + _t15 = action; + _context37.n = 3; + return this.deriveOrderUtxoFacts(utxo, action, settings); + case 3: + return _context37.a(2, _t14(_t15, _context37.v)); + } + }, _callee36, this); + })); + function screenOrderForExecution(_x34, _x35) { + return _screenOrderForExecution.apply(this, arguments); + } + return screenOrderForExecution; + }() + /** + * Derive the value-dependent facts {@link screenOrderUtxoFacts} needs. Mirrors + * the per-action consumed asset and ceiling the validators use; see that + * function's doc comment for the `.ak` line references. + */ + ) + }, { + key: "deriveOrderUtxoFacts", + value: (function () { + var _deriveOrderUtxoFacts = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee37(utxo, action, settings) { + var multiasset, quantityOf, usdrAssetId, _t16; + return _regenerator().w(function (_context38) { + while (1) switch (_context38.p = _context38.n) { + case 0: + multiasset = utxo.output().amount().multiasset(); + quantityOf = function quantityOf(assetId) { + var _multiasset$get; + return (_multiasset$get = multiasset === null || multiasset === void 0 ? void 0 : multiasset.get(assetId)) !== null && _multiasset$get !== void 0 ? _multiasset$get : 0n; + }; // These are deployment settings, not datum fields. Let invalid trusted + // configuration and provider failures propagate to the caller instead of + // hiding an operational outage as a poisoned order. + usdrAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); // Only deterministic datum-derived errors are a rejection: an unknown + // reserve asset or an invalid asset id carried by the order datum. + _context38.p = 1; + return _context38.a(2, this.deriveOrderUtxoFactsUnsafe(action, settings, quantityOf, usdrAssetId)); + case 2: + _context38.p = 2; + _t16 = _context38.v; + return _context38.a(2, { + consumedRequired: 0n, + consumedLocked: 0n, + unresolvable: _t16 instanceof Error ? _t16.message : String(_t16) + }); + } + }, _callee37, this, [[1, 2]]); + })); + function deriveOrderUtxoFacts(_x36, _x37, _x38) { + return _deriveOrderUtxoFacts.apply(this, arguments); + } + return deriveOrderUtxoFacts; + }()) + }, { + key: "deriveOrderUtxoFactsUnsafe", + value: function deriveOrderUtxoFactsUnsafe(action, settings, quantityOf, usdrAssetId) { + switch (action.actionType) { + case "stake": + return { + consumedRequired: action.amount, + consumedLocked: quantityOf(usdrAssetId) + }; + case "unstake": + return { + consumedRequired: action.amount, + consumedLocked: quantityOf(_sdk.Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex)) + }; + case "mint": + { + if (!action.reserveAsset) { + return { + consumedRequired: 0n, + consumedLocked: 0n + }; + } + var ra = (0, _index2.findReserveAsset)(settings, action.reserveAsset); + return { + consumedRequired: (0, _index2.usdrToReserveCeil)(action.amount, ra), + consumedLocked: quantityOf(_sdk.Core.AssetId(action.reserveAsset[0] + action.reserveAsset[1])), + // mint.ak:140 passes request.amount as max_delivered. + maxDelivered: action.amount + }; + } + case "burn": + { + // classifyOrderAction negates ORedeem.amount; the validator compares the + // raw datum amount against the locked USDr. + var rawAmount = -action.amount; + if (!action.reserveAsset) { + return { + consumedRequired: rawAmount, + consumedLocked: quantityOf(usdrAssetId) + }; + } + var _ra2 = (0, _index2.findReserveAsset)(settings, action.reserveAsset); + return { + consumedRequired: rawAmount, + consumedLocked: quantityOf(usdrAssetId), + // burn.ak:136 passes usdr_to_reserve(|amount|, ra) as max_delivered. + maxDelivered: (0, _index2.usdrToReserve)(rawAmount, _ra2) + }; + } + case "direct_burn": + // direct_burn DOES have a per-order funding predicate + // (`v1_0/direct_burn.ak:50`), unlike direct_mint. Same sign flip as burn. + // Unreachable from the approvals cron, which routes direct actions + // out-of-scope, but getSignedPayloadFromOrderInputs builds direct-burn + // batches for the treasury-admin flow. + return { + consumedRequired: -action.amount, + consumedLocked: quantityOf(usdrAssetId) + }; + case "deposit": + { + var _action$yield, _action$yield2; + if (!action.reserveAsset) { + return { + consumedRequired: 0n, + consumedLocked: 0n + }; + } + var _ra3 = (0, _index2.findReserveAsset)(settings, action.reserveAsset); + var usdrBacking = ((_action$yield = action["yield"]) !== null && _action$yield !== void 0 ? _action$yield : 0n) >= 0n ? action.amount + ((_action$yield2 = action["yield"]) !== null && _action$yield2 !== void 0 ? _action$yield2 : 0n) : action.amount; + return { + consumedRequired: (0, _index2.usdrToReserve)(usdrBacking, _ra3), + consumedLocked: quantityOf(_sdk.Core.AssetId(action.reserveAsset[0] + action.reserveAsset[1])) + }; + } + case "withdraw": + if (action.reserveAsset) { + // Withdrawal consumes treasury funds, but the order's asset must be + // registered or buildWithdrawExecute will fail after signing. + (0, _index2.findReserveAsset)(settings, action.reserveAsset); + } + return { + consumedRequired: 0n, + consumedLocked: 0n + }; + default: + // direct_mint has no per-order funding predicate. + return { + consumedRequired: 0n, + consumedLocked: 0n + }; + } + } + }, { + key: "getValidatedScreeningSettings", + value: function () { + var _getValidatedScreeningSettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee38() { + var settings, _iterator24, _step24, reserveAsset, _t17, _t18; + return _regenerator().w(function (_context39) { + while (1) switch (_context39.p = _context39.n) { + case 0: + _t17 = this; + _context39.n = 1; + return this.getVersionSettings(); + case 1: + settings = _t17.settingsConfig.call(_t17, _context39.v); + _iterator24 = _createForOfIteratorHelper(settings.reserve_assets); + _context39.p = 2; + _iterator24.s(); + case 3: + if ((_step24 = _iterator24.n()).done) { + _context39.n = 7; + break; + } + reserveAsset = _step24.value; + if (!(reserveAsset.numerator === 0n)) { + _context39.n = 4; + break; + } + throw new Error("Reserve asset numerator must be non-zero"); + case 4: + if (!(reserveAsset.denominator === 0n)) { + _context39.n = 5; + break; + } + throw new Error("Reserve asset denominator must be non-zero"); + case 5: + _sdk.Core.AssetId(reserveAsset.asset[0] + reserveAsset.asset[1]); + case 6: + _context39.n = 3; + break; + case 7: + _context39.n = 9; + break; + case 8: + _context39.p = 8; + _t18 = _context39.v; + _iterator24.e(_t18); + case 9: + _context39.p = 9; + _iterator24.f(); + return _context39.f(9); + case 10: + return _context39.a(2, settings); + } + }, _callee38, this, [[2, 8, 9, 10]]); + })); + function getValidatedScreeningSettings() { + return _getValidatedScreeningSettings.apply(this, arguments); + } + return getValidatedScreeningSettings; + }() + /** + * Classify an order action from its datum. + */ + }, { + key: "classifyOrderAction", + value: function classifyOrderAction(datum) { + var action = datum.action; + if ("OMint" in action) { + return { + actionType: "mint", + amount: action.OMint.amount, + minReceived: action.OMint.min_received, + reserveAsset: action.OMint.reserve_asset, + isTreasuryAction: true + }; + } else if ("ORedeem" in action) { + return { + actionType: "burn", + amount: -action.ORedeem.amount, + minReceived: action.ORedeem.min_received, + reserveAsset: action.ORedeem.reserve_asset, + isTreasuryAction: true + }; + } else if ("ODeposit" in action) { + return { + actionType: "deposit", + amount: action.ODeposit.principal, + "yield": action.ODeposit["yield"], + reserveAsset: action.ODeposit.reserve_asset, + isTreasuryAction: true + }; + } else if ("OWithdraw" in action) { + return { + actionType: "withdraw", + amount: action.OWithdraw.amount, + reserveAsset: action.OWithdraw.reserve_asset, + isTreasuryAction: true + }; + } else if ("OStake" in action) { + return { + actionType: "stake", + amount: action.OStake.amount, + minReceived: action.OStake.min_received, + isTreasuryAction: false + }; + } else if ("OUnstake" in action) { + return { + actionType: "unstake", + amount: action.OUnstake.amount, + forfeit: action.OUnstake.forfeit, + minReceived: action.OUnstake.min_received, + isTreasuryAction: false + }; + } else if ("ODirectMint" in action) { + return { + actionType: "direct_mint", + amount: action.ODirectMint.amount, + isTreasuryAction: true + }; + } else if ("ODirectBurn" in action) { + return { + actionType: "direct_burn", + amount: -action.ODirectBurn.amount, + isTreasuryAction: true + }; + } + throw new Error("Unknown order action type"); + } + + /** + * Build the signed-payload treasury request for a deposit/withdraw order. + * + * v1_0 / v1_0_rc1 emit the four-field request. Versions whose on-chain + * `TreasuryRequestV1` carries extra fields (v1_1_rc1's `diffusion_end`, which + * the validator requires the signed request to echo from the order datum) + * override this to add them; the return stays assignable to the v1_0 shape, + * and the extra fields are encoded by the version's own payload schema value. + */ + }, { + key: "buildTreasuryRequest", + value: function buildTreasuryRequest(datum, parsed, origin) { + var _parsed$yield; + return { + destination: datum.destination, + amount: parsed.amount, + "yield": (_parsed$yield = parsed["yield"]) !== null && _parsed$yield !== void 0 ? _parsed$yield : 0n, + origin: origin, + reserve_asset: parsed.reserveAsset + }; + } + + /** + * Update treasury output with new reserve and circulating supply. + */ + }, { + key: "updateTreasuryOutput", + value: function updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, circulatingSupplyDelta) { + var newTreasuryDatum = { + circulating_supply: parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta + }; + var serializedTreasuryDatum = Data.serialize(_index.TreasuryDatum, newTreasuryDatum); + tx.addInput(treasuryUtxo, Data.Void()); + var treasuryValue = treasuryUtxo.output().amount(); + var newTreasuryValue = (0, _sdk.makeValue)(treasuryValue.coin(), [this.treasuryNFTAssetId, 1n]); + var modifiedAssetIds = new Set([this.treasuryNFTAssetId.toString()]); + var _iterator25 = _createForOfIteratorHelper(reserveDeltas.entries()), + _step25; + try { + for (_iterator25.s(); !(_step25 = _iterator25.n()).done;) { + var _treasuryValue$multia, _treasuryValue$multia2; + var _step25$value = _slicedToArray(_step25.value, 2), + reserveAssetId = _step25$value[0], + delta = _step25$value[1]; + var currentReserve = (_treasuryValue$multia = (_treasuryValue$multia2 = treasuryValue.multiasset()) === null || _treasuryValue$multia2 === void 0 ? void 0 : _treasuryValue$multia2.get(_sdk.Core.AssetId(reserveAssetId))) !== null && _treasuryValue$multia !== void 0 ? _treasuryValue$multia : 0n; + var newReserve = currentReserve + delta; + newTreasuryValue = _sdk.Value.merge(newTreasuryValue, (0, _sdk.makeValue)(0n, [_sdk.Core.AssetId(reserveAssetId), newReserve])); + modifiedAssetIds.add(reserveAssetId); + } + } catch (err) { + _iterator25.e(err); + } finally { + _iterator25.f(); + } + var existingMultiasset = treasuryValue.multiasset(); + if (existingMultiasset) { + var _iterator26 = _createForOfIteratorHelper(existingMultiasset.entries()), + _step26; + try { + for (_iterator26.s(); !(_step26 = _iterator26.n()).done;) { + var _step26$value = _slicedToArray(_step26.value, 2), + assetId = _step26$value[0], + amount = _step26$value[1]; + if (!modifiedAssetIds.has(assetId)) { + newTreasuryValue = _sdk.Value.merge(newTreasuryValue, (0, _sdk.makeValue)(0n, [_sdk.Core.AssetId(assetId), amount])); + } + } + } catch (err) { + _iterator26.e(err); + } finally { + _iterator26.f(); + } + } + tx.lockAssets(this.treasuryAddress, newTreasuryValue, serializedTreasuryDatum); + } + + /** + * Update treasury output without reserve changes (for DirectMint/DirectBurn). + */ + }, { + key: "updateTreasuryOutputNoReserve", + value: function updateTreasuryOutputNoReserve(tx, treasuryUtxo, parsedTreasuryDatum, circulatingSupplyDelta) { + var newTreasuryDatum = { + circulating_supply: parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta + }; + var serializedTreasuryDatum = Data.serialize(_index.TreasuryDatum, newTreasuryDatum); + tx.addInput(treasuryUtxo, Data.Void()); + + // Preserve exact treasury value (no reserve changes) + var treasuryValue = treasuryUtxo.output().amount(); + tx.lockAssets(this.treasuryAddress, treasuryValue, serializedTreasuryDatum); + } + + /** + * Update vault output with new circulating_susdr and USDr balance. + * + * The datum construction is delegated to the version's + * `buildUpdatedVaultDatum` seam; the value rebuild below is + * datum-shape-agnostic and shared by all versions. + */ + }, { + key: "updateVaultOutput", + value: function updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, sUSDrDelta) { + var uSDrDelta = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0n; + this.updateVaultOutputWithDatum(tx, vaultUtxo, this.buildUpdatedVaultDatum(parsedVaultDatum, sUSDrDelta), uSDrDelta); + } + + /** + * Lock the vault output with an already-constructed datum, rebuilding its + * USDr balance by `uSDrDelta`. The value rebuild is datum-shape-agnostic; + * versions whose datum update needs more than `sUSDrDelta` (v1_1_rc1's + * deposit diffusion window) build the datum themselves and call this. + */ + }, { + key: "updateVaultOutputWithDatum", + value: function updateVaultOutputWithDatum(tx, vaultUtxo, newVaultDatum) { + var uSDrDelta = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0n; + var serializedVaultDatum = Data.serialize(this.schemas.VaultDatumV1, newVaultDatum); + tx.addInput(vaultUtxo, Data.Void()); + var stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + var newVaultValue = vaultUtxo.output().amount(); + if (uSDrDelta !== 0n) { + var _newVaultValue$multia, _newVaultValue$multia2; + var currentUSDr = (_newVaultValue$multia = (_newVaultValue$multia2 = newVaultValue.multiasset()) === null || _newVaultValue$multia2 === void 0 ? void 0 : _newVaultValue$multia2.get(stablecoinAssetId)) !== null && _newVaultValue$multia !== void 0 ? _newVaultValue$multia : 0n; + var newUSDr = currentUSDr + uSDrDelta; + newVaultValue = (0, _sdk.makeValue)(newVaultValue.coin(), [this.stakingVaultNFTAssetId, 1n]); + if (newUSDr > 0n) { + newVaultValue = _sdk.Value.merge(newVaultValue, (0, _sdk.makeValue)(0n, [stablecoinAssetId, newUSDr])); + } + var existingMultiasset = vaultUtxo.output().amount().multiasset(); + if (existingMultiasset) { + var _iterator27 = _createForOfIteratorHelper(existingMultiasset.entries()), + _step27; + try { + for (_iterator27.s(); !(_step27 = _iterator27.n()).done;) { + var _step27$value = _slicedToArray(_step27.value, 2), + assetId = _step27$value[0], + amount = _step27$value[1]; + if (assetId !== this.stakingVaultNFTAssetId.toString() && assetId !== stablecoinAssetId.toString()) { + newVaultValue = _sdk.Value.merge(newVaultValue, (0, _sdk.makeValue)(0n, [_sdk.Core.AssetId(assetId), amount])); + } + } + } catch (err) { + _iterator27.e(err); + } finally { + _iterator27.f(); + } + } + } + tx.lockAssets(this.stakingVaultAddress, newVaultValue, serializedVaultDatum); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Reserve Asset Conversion Utilities + // ───────────────────────────────────────────────────────────────────────────── + }, { + key: "getVersionSettings", + value: function () { + var _getVersionSettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee39() { + var _yield$this$getParsed3, parsedProxyDatum; + return _regenerator().w(function (_context40) { + while (1) switch (_context40.n) { + case 0: + _context40.n = 1; + return this.getParsedProxyDatum(); + case 1: + _yield$this$getParsed3 = _context40.v; + parsedProxyDatum = _yield$this$getParsed3.parsedProxyDatum; + return _context40.a(2, parsedProxyDatum.settings); + } + }, _callee39, this); + })); + function getVersionSettings() { + return _getVersionSettings.apply(this, arguments); + } + return getVersionSettings; + }() + }]); +}(_index2.RealfiSDKBase); +_defineProperty(RealfiSDKV1Family, "buildTimelockNativeScript", _index2.buildTimelockNativeScript); +_defineProperty(RealfiSDKV1Family, "buildTimelockAddress", _index2.buildTimelockAddress); +_defineProperty(RealfiSDKV1Family, "buildMultisigTimelockNativeScript", _index2.buildMultisigTimelockNativeScript); +//# sourceMappingURL=family.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1/family.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/family.js.map new file mode 100644 index 0000000000..34fb06a283 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/family.js.map @@ -0,0 +1 @@ +{"version":3,"file":"family.js","names":["_core","require","_data","_interopRequireWildcard","Data","_sdk","_index","_index2","_orderSanity","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t19","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_regenerator","toStringTag","c","prototype","Generator","u","create","_regeneratorDefine2","p","y","G","v","a","d","bind","length","l","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","constructor","_assertThisInitialized","ReferenceError","Boolean","valueOf","_inherits","_setPrototypeOf","_defineProperty","_toPrimitive","toPrimitive","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","next","push","_createForOfIteratorHelper","_n","F","s","toString","slice","name","test","DIRECT_ACTION_PADDING_ASSET","exports","repeat","toHex","TextEncoder","encode","DEPLOYED_VALIDATOR_FIELDS","DEPLOYED_VALIDATOR_PREFIXES","V1_0","V1_0_Rc1","V1_1_Rc1","COMPATIBLE_STATE_VALIDATOR_FIELDS","Set","DEPLOYED_ADDRESS_FIELDS","orderScriptHash","treasuryScriptHash","stakingVaultScriptHash","MIN_LOVELACE","getRequestsFromAction","action","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","DirectMint","DirectBurn","Error","calculateYieldShares","totalYield","vaultUSDr","treasuryCirculating","stakedYieldShare","unstakedYieldShare","assertPositiveMinReceived","label","minReceived","concat","buildOrderDestinationValue","orderInfo","consumedAssets","deliveredAssets","undefined","utxo","output","amount","_iterator","_step","_step$value","assetId","Value","merge","makeValue","err","_iterator2","_step2","_step2$value","RealfiSDKV1Family","_RealfiSDKBase","blaze","params","schemas","scripts","cachedReferenceInputs","signingSchemas","_this","version","proxyBootstrap","assetNameHex","enableTrace","scriptDeploymentAddress","clientSource","sUSDrAssetNameHex","defaultSlippageToleranceBps","oneShotScript","protocolOrchestratorScript","protocolScript","protocolMintScript","protocolStakeScript","protocolManagementScript","mintProxyScript","treasuryScript","orderScript","stakingVaultScript","oneShotPolicyId","Core","PolicyId","hash","protocolScriptHash","protocolMintScriptHash","protocolStakeScriptHash","protocolManagementScriptHash","stablecoinPolicyId","treasuryAddress","addressFromValidator","network","orderScriptAddress","stakingVaultAddress","applyDeployedValidators","deployedValidators","treasuryAssetName","AssetName","Buffer","treasuryNFTAssetId","AssetId","vaultAssetName","stakingVaultNFTAssetId","deployed","prefix","mutable","_i","_DEPLOYED_VALIDATOR_F","_DEPLOYED_VALIDATOR_F2","suffix","field","versionedHash","activeStateHash","deployedHash","Hash28ByteBase16","toLowerCase","addressField","addressFromCredentials","Credential","fromCore","type","CredentialType","ScriptHash","settledVaultBacking","_parsedVaultDatum","_applyExecutionValidityBounds","_callee","_tx","_context","_context2","applyExecutionValidityBounds","_x","_x2","_buildDepositAction","_callee2","alpha","_context3","buildDepositAction","_x3","_x4","resolveDepositYieldShares","_action","serializeOrchestratorWithdrawalRedeemer","redeemer","serialize","signing","SignedRedeemer_ExtraProtocolRedeemerV1","_mintTreasuryNFT","_callee3","treasuryBootstrapUtxo","initialDatum","treasuryPolicyId","datum","tx","_args3","_context4","circulating_supply","V0_1TreasuryDatum","newTransaction","addInput","addMint","Map","Void","lockAssets","provideScript","nftAssetId","mintTreasuryNFT","_x5","_deployTreasury","_callee4","_context5","deployScript","deployTreasury","_deployOrderContract","_callee5","_context6","deployOrderContract","_getTreasuryDatum","_callee6","_yield$getDatumFromNF","treasuryUtxo","treasuryDatum","parsedTreasuryDatum","_context7","getDatumFromNFT","parsedDatum","getTreasuryDatum","_mintStakingVaultNFT","_callee7","stakingVaultBootstrapUtxo","vaultPolicyId","_context8","VaultDatumV1","buildInitialVaultDatum","mintStakingVaultNFT","_x6","_x7","_deployStakingVault","_callee8","_context9","deployStakingVault","_deployProtocolMint","_callee9","_context0","deployProtocolMint","_deployProtocolStake","_callee0","_context1","deployProtocolStake","_deployProtocolManagement","_callee1","_context10","deployProtocolManagement","registerProtocolMintStake","stakeCredential","credentialFromScript","addRegisterStake","registerProtocolStakeStake","registerProtocolManagementStake","registerStakingVaultStake","registerAllStakes","deployScriptsBatched","_this2","budgetBytes","batches","current","currentBytes","_i2","_scripts","script","size","toCbor","map","batch","_iterator3","_step3","getSusdrAssetId","_getVaultDatum","_callee10","_yield$getDatumFromNF2","vaultUtxo","vaultDatum","parsedVaultDatum","_context11","getVaultDatum","_mintOneShot","_callee11","receiverAddress","serializedDatum","baseTx","_context12","resolveBootstrapUtxo","ProxyDatumV1","logic","settings","lockOrPayAssets","policyId","mintOneShot","_x8","_x9","_updateOneShotDatum","_callee12","newDatum","oneshotUtxo","_context13","provider","getUnspentOutputByNFT","updateOneShotDatum","_x0","_x1","_getParsedProxyDatum","_callee13","_yield$this$getRawPro","proxyUtxo","proxyDatum","parsedProxyDatum","result","_context14","cachedProxyDatumResult","getRawProxyDatum","parse","getParsedProxyDatum","_isProtocolUpgraded","_callee14","_yield$this$getParsed","registry","orderUpgraded","protocolUpgraded","_context15","settingsRegistry","order","isProtocolUpgraded","_getSettingsConfig","_callee15","_t","_context16","getVersionSettings","settingsConfig","getSettingsConfig","_batchNeedsAlpha","_callee16","orderInputs","_yield$this$blaze$pro","_yield$this$blaze$pro2","_context17","resolveUnspentOutputs","classifyOrderUtxo","actionType","splitsYield","batchNeedsAlpha","_x10","_utxo$output$datum","datumData","asInlineData","OrderDatumV1","classifyOrderAction","parseOrders","orderUtxos","fees","parseOrderInfos","_buildOrderTx2","_callee17","owner","_context18","resolveOrderOwner","serializeOrderDatum","destination","data","newOrderTransaction","extraLabels","valueToLock","_buildOrderTx","_x11","_resolveOrderOwner","_callee18","_t2","_t3","_context19","wallet","getChangeAddress","getProps","paymentPart","key_hash","Signature","_x12","orderDatum","_buildMintOrderTx","_callee19","_params$orderLovelace","_params$minReceived","orderLovelace","reserveAssetId","ra","reserveAmount","_t4","_context20","reserveAsset","findReserveAsset","usdrToReserveCeil","OMint","min_received","reserve_asset","buildMintOrderTx","_x13","_buildRedeemOrderTx","_callee20","_params$minReceived2","stablecoinAssetId","_t5","_context21","usdrToReserve","ORedeem","buildRedeemOrderTx","_x14","_buildDepositOrderTx","_callee21","totalUSDrBacking","_vaultValue$multiasse","_vaultValue$multiasse2","principalReserve","_yield$this$getTreasu","vaultValue","_calculateYieldShares","_t6","_context22","principal","multiasset","ODeposit","buildDepositOrderTx","_x15","_buildWithdrawOrderTx","_callee22","_t7","_context23","OWithdraw","buildWithdrawOrderTx","_x16","_buildStakeOrderTx","_callee23","_params$minReceived3","_t8","_context24","computeStakeMinReceived","slippageToleranceBps","OStake","buildStakeOrderTx","_x17","_buildStakeContinuation","_callee24","expectedSundaeAssetId","_context25","swap","metadata","address","buildStakeContinuation","_x18","_buildUnstakeOrderTx2","_callee25","_params$forfeit","_params$minReceived4","forfeit","sUSDrAssetId","_t9","_context26","computeUnstakeMinReceived","OUnstake","_buildUnstakeOrderTx","_x19","_buildUnstakeOrderTx3","_callee26","timelockDestination","_context27","buildTimelockDestination","unlockSlot","UNSTAKE_METADATA_LABEL","buildUnstakeMetadatum","buildUnstakeOrderTx","_x20","_buildTreasuryUnstakeOrderTx","_callee27","nativeScript","_context28","buildMultisigTimelockNativeScript","payment_credential","Script","stake_credential","buildTreasuryUnstakeOrderTx","_x21","_computeStakeMinReceived","_callee28","perCallToleranceBps","_vaultUtxo$output$amo","_vaultUtxo$output$amo2","toleranceBps","_yield$this$getVaultD","vaultUsdr","circulatingSusdr","expected","_context29","resolveStakeSlippageToleranceBps","circulating_susdr","_x22","_x23","_ref","_computeUnstakeMinReceived","_callee29","_vaultUtxo$output$amo3","_vaultUtxo$output$amo4","_yield$this$getVaultD2","expectedGross","expectedNet","_context30","_x24","_x25","_x26","_buildDirectMintOrderTx","_callee30","_context31","ODirectMint","buildDirectMintOrderTx","_x27","_buildDirectBurnOrderTx","_callee31","_context32","ODirectBurn","buildDirectBurnOrderTx","_x28","_getSignedPayloadFromOrderInputs","_callee32","sortedInputs","nonce","resolvedUtxos","exchangeRequests","treasuryRequests","stakeRequests","directRequests","_iterator4","_step4","_utxo$output$datum2","origin","parsed","screened","_parsed$minReceived","_parsed$minReceived2","_parsed$forfeit","batchVerdict","payload","serialized","signedPayload","payloadHash","_t0","_t1","_context33","sortOrderInputs","buildNonceFromUtxo","transaction_id","input","transactionId","output_index","index","screenOrderForExecution","ok","reason","buildTreasuryRequest","screenDepositBatch","request","SignedPayload_ProtocolRedeemerV1","blake2b_256","HexBlob","getSignedPayloadFromOrderInputs","_x29","_x30","_buildExecuteOrdersTx","_callee33","signedPayloadCbor","signatures","sortedOrderInputs","orderInfos","_yield$this$getParsed2","needsTreasury","needsVault","isMintAction","isStakeAction","scriptHashesNeeded","refInputs","treasuryResult","vaultResult","walletUtxos","excludedInputIds","utxoKey","_iterator5","_step5","_i3","_Object$values","refUtxo","feeUtxos","allInputRefs","_iterator6","_step6","feeUtxo","sortedAllInputRefs","findInputIdx","treasuryInputIdx","vaultInputIdx","signedRequests","originToRequestIdx","inputToRequests","requestToOutputs","outputIdx","requestIdx","numDestOutputs","numExtraOutputs","_vaultValue$multiasse3","_vaultValue$multiasse4","_stablecoinAssetId","_this$resolveDepositY","totalForfeit","treasuryOutputIdx","vaultOutputIdx","extra","serializedSignedRedeemer","executeRedeemer","_iterator7","_step7","_orderInfo","_iterator8","_step8","_feeUtxo","orchestratorRewardAccount","subValidatorHash","subValidatorRewardAccount","voidRedeemer","_t10","_context34","PlutusData","fromCbor","includes","protocol","protocolMint","protocolStake","protocolManagement","treasury","stakingVault","getScriptReferenceInputs","getUnspentOutputs","inp","add","values","filter","sort","b","txA","txB","idx","findIndex","BigInt","reduce","sum","_o$yield","_o$forfeit","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","OrderRedeemerV1","addReferenceInput","RewardAccount","fromCredential","addWithdrawal","buildMintExecute","buildBurnExecute","buildWithdrawExecute","buildDepositExecute","buildStakeExecute","buildUnstakeExecute","buildDirectMintExecute","buildDirectBurnExecute","buildExecuteOrdersTx","_x31","totalDelivered","fee","_iterator9","_step9","userAmount","addDestinationOutput","reserveDeltas","computeReserveDeltas","updateTreasuryOutput","totalAmount","deliveredByAsset","_iterator0","_step0","_deliveredByAsset$get","naturalReserve","assetKey","_iterator1","entries","_step1","_step1$value","delivered","_iterator10","_step10","_vaultValue$multiasse5","_vaultValue$multiasse6","_o$yield2","_this$resolveDepositY2","remainingOrderUSDrToBurn","_iterator11","_step11","_orderInfo$yield","yieldValue","usdrBacking","_orderInfo$utxo$outpu","_orderInfo$utxo$outpu2","orderUSDr","consumedUSDr","unstaked_yield_pot","_iterator12","_step12","_orderInfo2$yield","_reserveDeltas$get","updateDepositVaultOutput","ctx","updateVaultOutput","_vaultValue$multiasse7","_vaultValue$multiasse8","settledBacking","circulatingSUSDr","totalUSDrToVault","totalSUSDrMinted","_iterator13","_step13","usDrToVault","sUSDrAmount","_vaultValue$multiasse9","_vaultValue$multiasse0","totalSUSDrBurned","totalUSDrLeavingVault","_iterator14","_step14","_orderInfo$forfeit","uSDrEntitled","uSDrAmount","totalYieldPot","_iterator15","_step15","updateTreasuryOutputNoReserve","_iterator16","_step16","_buildCancelOrdersTx","_callee34","availableSigners","versionHint","cachedOrderRefs","orderRefInputs","cancelRedeemer","destAddress","_iterator17","_step17","orderRefInput","currentOrderRefInput","requiredSigners","_iterator18","_step18","_iterator20","_step20","keyHash","outputValue","effectiveSigners","_iterator19","_step19","_keyHash","_t11","_t12","_context35","resolveOrderReferenceInputs","parseCancelOwner","getSignatureKeyHashesFromMultisigScript","addDirectOutput","k","addRequiredSigner","Ed25519KeyHashHex","buildCancelOrdersTx","_x32","_buildInvalidatedOrdersTx","_callee35","_this3","_yield$this$getRawPro2","hasActiveOrder","invalidatedRedeemer","walletAddress","FEE_BUFFER","feeCandidates","items","_iterator21","_step21","_iterator22","_step22","item","ownerCredential","ownerAddress","inputValue","fillerValue","_t13","_context36","keys","some","message","refInput","_a$output$amount$mult","_a$output$amount$mult2","_b$output$amount$mult","_b$output$amount$mult2","aHasAssets","bHasAssets","find","coin","fillerOutput","TransactionOutput","calculateMinAda","coinsPerUtxoByte","_utxo$output$datum3","kind","ownerKeyHash","KeyHash","buildInvalidatedOrdersTx","_x33","expectedActionType","_iterator23","_step23","_utxo$output$datum4","_fees$get","classified","_screenOrderForExecution","_callee36","datumVerdict","_t14","_t15","_context37","screenOrderAction","getValidatedScreeningSettings","screenOrderUtxoFacts","deriveOrderUtxoFacts","_x34","_x35","_deriveOrderUtxoFacts","_callee37","quantityOf","usdrAssetId","_t16","_context38","_multiasset$get","deriveOrderUtxoFactsUnsafe","consumedRequired","consumedLocked","unresolvable","_x36","_x37","_x38","maxDelivered","rawAmount","_action$yield","_action$yield2","_getValidatedScreeningSettings","_callee38","_iterator24","_step24","_t17","_t18","_context39","reserve_assets","numerator","denominator","asset","isTreasuryAction","_parsed$yield","circulatingSupplyDelta","newTreasuryDatum","serializedTreasuryDatum","treasuryValue","newTreasuryValue","modifiedAssetIds","_iterator25","_step25","_treasuryValue$multia","_treasuryValue$multia2","_step25$value","delta","currentReserve","newReserve","existingMultiasset","_iterator26","_step26","_step26$value","sUSDrDelta","uSDrDelta","updateVaultOutputWithDatum","buildUpdatedVaultDatum","newVaultDatum","serializedVaultDatum","newVaultValue","_newVaultValue$multia","_newVaultValue$multia2","currentUSDr","newUSDr","_iterator27","_step27","_step27$value","_getVersionSettings","_callee39","_yield$this$getParsed3","_context40","RealfiSDKBase","buildTimelockNativeScript","buildTimelockAddress"],"sources":["../../../../src/sdk/v1/family.ts"],"sourcesContent":["import {\n addressFromCredentials,\n addressFromValidator,\n blake2b_256,\n Ed25519KeyHashHex,\n HexBlob,\n PlutusData,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n calculateMinAda,\n Core,\n makeValue,\n TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport type {\n Asset,\n Destination,\n DirectRequestV1,\n ExchangeRequestV1,\n ExtraProtocolRedeemerV1,\n MultisigScript,\n Nonce,\n OrderActionV1,\n OrderDatumV1,\n ProtocolRedeemerV1,\n SignedPayload_ProtocolRedeemerV1,\n StakeRequestV1,\n TreasuryRequestV1,\n Tuple_VerificationKey_COSESign1,\n} from \"../../generated-types/v1_0/index.js\";\n\nimport {\n addDirectOutput,\n addDestinationOutput,\n buildNonceFromUtxo,\n buildMultisigTimelockNativeScript,\n buildTimelockAddress,\n buildTimelockDestination,\n buildTimelockNativeScript,\n buildUnstakeMetadatum,\n UNSTAKE_METADATA_LABEL,\n credentialFromScript,\n deployScript,\n findReserveAsset,\n getDatumFromNFT,\n getSignatureKeyHashesFromMultisigScript,\n usdrToReserve,\n usdrToReserveCeil,\n computeReserveDeltas,\n lockOrPayAssets,\n sortOrderInputs,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n type IRealfiSDKWithTreasury,\n type ITreasuryDatumResult,\n type IVaultDatumResult,\n RealfiSDKBase,\n type TProtocolVersion,\n resolveOrderReferenceInputs,\n parseCancelOwner,\n} from \"../shared/index.js\";\nimport {\n screenOrderAction,\n screenDepositBatch,\n screenOrderUtxoFacts,\n type IOrderUtxoFacts,\n type TOrderSanityResult,\n} from \"./order-sanity.js\";\nimport type {\n IProxyDatum,\n IV1FamilySchemas,\n IV1FamilyScripts,\n IV1SigningSchemas,\n IVaultDatumLike,\n IYieldSplitAlpha,\n TV1Registry,\n TV1SettingsConfig,\n} from \"./types.js\";\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Constants\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Sentinel `reserve_asset` used in V1_0 TreasuryRequestV1 redeemers for\n * DirectMint and DirectBurn actions, which have no real reserve asset in\n * their order datum. The on-chain validators `direct_mint_logic` and\n * `direct_burn_logic` do not inspect this field; this sentinel makes the\n * intent explicit both in code and when inspecting on-chain redeemers.\n *\n * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a\n * sentinel and extremely unlikely to occur as a real script hash)\n * - `asset_name`: \"unused\" (ASCII)\n *\n * Keep in sync with backend `contract.DirectActionPaddingAsset`.\n */\nexport const DIRECT_ACTION_PADDING_ASSET: Asset = [\n \"00\".repeat(28),\n toHex(new TextEncoder().encode(\"unused\")),\n];\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Types\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Parsed order information extracted from a UTXO.\n */\nexport interface IOrderInfo {\n utxo: Core.TransactionUnspentOutput;\n datum: OrderDatumV1;\n actionType: TOrderActionType;\n amount: bigint;\n /** Yield amount for deposit actions */\n yield?: bigint;\n /** Forfeit amount for unstake actions */\n forfeit?: bigint;\n /** Reserve asset for treasury actions, undefined for stake/unstake */\n reserveAsset?: [string, string];\n /**\n * Absolute fee retained by the protocol, in this action's output unit\n * (USDr for Mint, reserve for Burn). Always 0 for Stake/Unstake — the\n * protocol does not retain a fee on those actions. Locked at indexing\n * time by the Go backend; the SDK never recomputes. Zero (the default)\n * means \"no fee\", e.g. when the dispatcher passes no fees map or the\n * map has no entry for this order.\n */\n fee: bigint;\n /**\n * User-enforced output floor copied from the v1.0 datum (in output unit).\n * Used as a defensive sanity check by buildXxxExecute to throw early if\n * the fee somehow pushes the user output below what was signed.\n */\n minReceived?: bigint;\n}\n\n/** Minimal completed-swap shape accepted by the stake continuation builder. */\nexport interface IStakeContinuationSwap {\n minReceived: {\n amount: bigint;\n metadata: {\n assetId: string;\n };\n };\n}\n\n/** Parameters for building a RealFi stake order as another order's destination. */\nexport interface IBuildStakeContinuationParams {\n swap: IStakeContinuationSwap;\n destination: Destination;\n slippageToleranceBps?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n}\n\n/** Address and inline datum a preceding protocol should pay its result to. */\nexport interface IStakeContinuation {\n address: Core.Address;\n datum: PlutusData;\n}\n\nexport type TOrderActionType =\n | \"mint\"\n | \"burn\"\n | \"deposit\"\n | \"withdraw\"\n | \"stake\"\n | \"unstake\"\n | \"direct_mint\"\n | \"direct_burn\";\n\n/** Result of {@link RealfiSDKV1Family.classifyOrderAction}. */\nexport interface IClassifiedOrderAction {\n actionType: TOrderActionType;\n amount: bigint;\n yield?: bigint;\n forfeit?: bigint;\n minReceived?: bigint;\n reserveAsset?: [string, string];\n isTreasuryAction: boolean;\n}\n\n/** Result of {@link RealfiSDKV1Family.classifyOrderUtxo}. */\nexport interface IClassifiedOrderUtxo {\n /** The order datum decoded with this version's `OrderDatumV1` schema. */\n datum: OrderDatumV1;\n /** The action classified from {@link datum}. */\n action: IClassifiedOrderAction;\n}\n\n/** The `origin` field shared by every request kind — the consumed order UTxO. */\nexport interface IRequestOrigin {\n transaction_id: string;\n output_index: bigint;\n}\n\nexport interface ITreasuryUnstakeOrderTxResult {\n /** Transaction builder for the treasury unstake order. */\n tx: TxBuilder;\n /**\n * Native script used as the unstake output destination:\n * AllOf { After(unlockSlot), owner }.\n */\n nativeScript: Core.NativeScript;\n}\n\n/**\n * Context handed to {@link RealfiSDKV1Family.applyExecutionValidityBounds}\n * at the end of `buildExecuteOrdersTx`. The vault fields are set only when\n * the executed action consumed the staking vault (stake/unstake/deposit).\n */\nexport interface IExecutionValidityContext {\n actionType: TOrderActionType;\n vaultUtxo?: Core.TransactionUnspentOutput;\n parsedVaultDatum?: TVaultDatum;\n}\n\n/**\n * Version-agnostic constructor parameters for the V1 family. Each version's\n * `static create` assembles this from its own public params interface.\n */\nexport interface IV1FamilyConstructorParams {\n version: TProtocolVersion;\n proxyBootstrap: { txHash: Core.TransactionId; outputIndex: bigint };\n /** USDr asset name hex */\n assetNameHex: string;\n /** sUSDr asset name hex */\n sUSDrAssetNameHex: string;\n enableTrace?: boolean;\n defaultSlippageToleranceBps?: bigint;\n scriptDeploymentAddress?: Core.Address;\n clientSource?: import(\"../shared/client-id.js\").TClientSource;\n /**\n * Hashes of the validators this deployment actually runs, keyed as in\n * `backend/config/env/.protocol.yaml`.\n *\n * Every identity below is otherwise derived from the Plutus artifacts this\n * package bundles, which is correct only while those bytes match the ones on\n * chain. Where they do not, the derived order address is an address nothing\n * watches — and because an order is `lockAssets` with no on-chain validation,\n * funds go there silently. Supplying the deployment's own hashes overrides\n * the derivation; the scripts themselves still come from on-chain reference\n * inputs, so identity is all that is needed.\n *\n * Partial maps are normal — validators the deployment does not name keep\n * their derived identity.\n */\n deployedValidators?: Readonly>;\n}\n\n/** Blueprint validator key (within a version slot) -> SDK identity field. */\nconst DEPLOYED_VALIDATOR_FIELDS = [\n [\n \"protocol_orchestrator.protocol_orchestrator.withdraw\",\n \"protocolScriptHash\",\n ],\n [\"protocol_mint.protocol_mint.withdraw\", \"protocolMintScriptHash\"],\n [\"protocol_stake.protocol_stake.withdraw\", \"protocolStakeScriptHash\"],\n [\n \"protocol_management.protocol_management.withdraw\",\n \"protocolManagementScriptHash\",\n ],\n [\"order.order.spend\", \"orderScriptHash\"],\n [\"treasury.treasury.spend\", \"treasuryScriptHash\"],\n [\"staking_vault.staking_vault.spend\", \"stakingVaultScriptHash\"],\n] as const;\n\nconst DEPLOYED_VALIDATOR_PREFIXES = {\n V1_0: \"v1_0/\",\n V1_0_Rc1: \"v1_0_rc1/\",\n V1_1_Rc1: \"v1_1_rc1/\",\n} as const;\n\ntype TV1ProtocolVersion = keyof typeof DEPLOYED_VALIDATOR_PREFIXES;\n\nconst COMPATIBLE_STATE_VALIDATOR_FIELDS = new Set([\n \"treasuryScriptHash\",\n \"stakingVaultScriptHash\",\n]);\n\n/** Hash fields whose address must move with them. */\nconst DEPLOYED_ADDRESS_FIELDS = {\n orderScriptHash: \"orderScriptAddress\",\n treasuryScriptHash: \"treasuryAddress\",\n stakingVaultScriptHash: \"stakingVaultAddress\",\n} as const;\n\nexport const MIN_LOVELACE = 2000000n;\n\n/**\n * Calculate yield split between staked and unstaked portions.\n * Matches on-chain deposit.ak logic: staked_yield_share = total_yield * vault_usdr / treasury_circulating\n *\n * IMPORTANT: Uses truncation toward zero (BigInt default `/` operator) to match\n * Aiken's builtin.quotient_integer. Do NOT use floor division here, as it\n * rounds toward negative infinity which gives different results for negative yields.\n * Example: floor(-165/90) = -2, but trunc(-165/90) = -1.\n */\n/**\n * Extract the requests list from a signed payload action, regardless of action type.\n * Both TreasuryRequestV1 and RequestV1 have `origin: { transaction_id, output_index }`.\n */\nfunction getRequestsFromAction(\n action: ProtocolRedeemerV1,\n): Array<{ origin: { transaction_id: string; output_index: bigint } }> {\n if (\"Mint\" in action) return action.Mint.requests;\n if (\"Burn\" in action) return action.Burn.requests;\n if (\"Withdraw\" in action) return action.Withdraw.requests;\n if (\"Deposit\" in action) return action.Deposit.requests;\n if (\"Stake\" in action) return action.Stake.requests;\n if (\"Unstake\" in action) return action.Unstake.requests;\n if (\"DirectMint\" in action) return action.DirectMint.requests;\n if (\"DirectBurn\" in action) return action.DirectBurn.requests;\n throw new Error(\"Unknown action type in signed payload\");\n}\n\nexport function calculateYieldShares(\n totalYield: bigint,\n vaultUSDr: bigint,\n treasuryCirculating: bigint,\n): { stakedYieldShare: bigint; unstakedYieldShare: bigint } {\n // Note: BigInt / truncates toward zero, matching Aiken's quotient_integer\n const stakedYieldShare =\n treasuryCirculating > 0n\n ? (totalYield * vaultUSDr) / treasuryCirculating\n : 0n;\n const unstakedYieldShare = totalYield - stakedYieldShare;\n return { stakedYieldShare, unstakedYieldShare };\n}\n\n/**\n * Refuse to create an order whose `min_received` floor is not strictly\n * positive (WTB-1764).\n *\n * Every v1-family validator predicate that reads `min_received` requires it to\n * be > 0, and those predicates run inside a `zip_fold` that `expect`s each\n * request in turn — so one order with a zero floor crashes the ENTIRE execution\n * transaction, killing every valid order batched alongside it. Such an order can\n * never execute; creating it only plants a landmine at the order script address.\n *\n * This guards both an explicit caller-supplied floor and a computed one that\n * rounds or nets down to zero (a dust stake at a high exchange rate, or a\n * full-forfeit unstake).\n */\nfunction assertPositiveMinReceived(label: string, minReceived: bigint): void {\n if (minReceived <= 0n) {\n throw new Error(\n `${label} minReceived must be positive (got ${minReceived}); an order with a ` +\n \"non-positive min_received can never execute and crashes every batch it joins\",\n );\n }\n}\n\nfunction buildOrderDestinationValue(\n orderInfo: IOrderInfo,\n consumedAssets: Array<[Core.AssetId, bigint]>,\n deliveredAssets: Array<[Core.AssetId, bigint]> = [],\n): Core.Value {\n let value = orderInfo.utxo.output().amount();\n for (const [assetId, amount] of consumedAssets) {\n if (amount !== 0n) {\n value = Value.merge(value, makeValue(0n, [assetId, -amount]));\n }\n }\n for (const [assetId, amount] of deliveredAssets) {\n if (amount !== 0n) {\n value = Value.merge(value, makeValue(0n, [assetId, amount]));\n }\n }\n return value;\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// SDK Family Base Class\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Shared implementation for the V1 protocol family (v1_0, v1_0_rc1, v1_1+).\n *\n * The family is generic over the two datum shapes that differ across\n * versions — `TSettings` (the proxy settings static) and `TVaultDatum` (the\n * staking-vault datum static) — and receives all generated artifacts from the\n * subclass: schema VALUES via {@link IV1FamilySchemas} (plus, optionally,\n * {@link IV1SigningSchemas}) and instantiated scripts via\n * {@link IV1FamilyScripts}. Method bodies never touch a version's generated\n * module directly, so this chunk adds no runtime import edge to any\n * `generated-types/v1_x` module and per-version code-splitting is preserved.\n *\n * Method defaults implement v1_0 semantics (fees, min_received, the v1_0\n * protocol-redeemer schema). Versions that diverge override the affected\n * members:\n * - vault datum construction is NEVER done inline — it goes through the\n * abstract `buildInitialVaultDatum` / `buildUpdatedVaultDatum` seam so\n * versions with additional vault fields cannot be silently truncated;\n * - settings access goes through the abstract `settingsConfig` /\n * `settingsRegistry` adapters;\n * - `applyExecutionValidityBounds` lets a version constrain the validity\n * interval of execution transactions (no-op by default).\n */\nexport abstract class RealfiSDKV1Family<\n P extends Provider,\n W extends Wallet,\n TSettings,\n TVaultDatum extends IVaultDatumLike,\n>\n extends RealfiSDKBase\n implements IRealfiSDKWithTreasury\n{\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n readonly protocolMintScriptHash: Core.Hash28ByteBase16;\n readonly protocolStakeScriptHash: Core.Hash28ByteBase16;\n readonly protocolManagementScriptHash: Core.Hash28ByteBase16;\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n readonly treasuryNFTAssetId: Core.AssetId;\n readonly orderScriptHash: Core.Hash28ByteBase16;\n readonly orderScriptAddress: Core.Address;\n readonly treasuryAddress: Core.Address;\n readonly stakingVaultScriptHash: Core.Hash28ByteBase16;\n readonly stakingVaultAddress: Core.Address;\n readonly stakingVaultNFTAssetId: Core.AssetId;\n readonly sUSDrAssetNameHex: string;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script; // Alias for orchestrator (base class compatibility)\n protected readonly protocolOrchestratorScript: Core.Script;\n protected readonly protocolMintScript: Core.Script;\n protected readonly protocolStakeScript: Core.Script;\n protected readonly protocolManagementScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n protected readonly treasuryScript: Core.Script;\n protected readonly orderScript: Core.Script;\n protected readonly stakingVaultScript: Core.Script;\n\n protected readonly defaultSlippageToleranceBps?: bigint;\n\n /** Schema values used by every shared serialize/parse site. */\n protected readonly schemas: IV1FamilySchemas;\n private readonly signingSchemas?: IV1SigningSchemas;\n\n protected constructor(\n blaze: Blaze,\n params: IV1FamilyConstructorParams,\n schemas: IV1FamilySchemas,\n scripts: IV1FamilyScripts,\n cachedReferenceInputs?: ICachedReferenceInputs,\n signingSchemas?: IV1SigningSchemas,\n ) {\n super(\n blaze,\n {\n version: params.version,\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace: params.enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n clientSource: params.clientSource,\n },\n cachedReferenceInputs,\n );\n\n this.schemas = schemas;\n this.signingSchemas = signingSchemas;\n\n this.sUSDrAssetNameHex = params.sUSDrAssetNameHex;\n this.defaultSlippageToleranceBps = params.defaultSlippageToleranceBps;\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolOrchestratorScript = scripts.protocolOrchestratorScript;\n this.protocolScript = scripts.protocolOrchestratorScript; // Alias for base class\n this.protocolMintScript = scripts.protocolMintScript;\n this.protocolStakeScript = scripts.protocolStakeScript;\n this.protocolManagementScript = scripts.protocolManagementScript;\n this.mintProxyScript = scripts.mintProxyScript;\n this.treasuryScript = scripts.treasuryScript;\n this.orderScript = scripts.orderScript;\n this.stakingVaultScript = scripts.stakingVaultScript;\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolOrchestratorScript.hash();\n this.protocolMintScriptHash = this.protocolMintScript.hash();\n this.protocolStakeScriptHash = this.protocolStakeScript.hash();\n this.protocolManagementScriptHash = this.protocolManagementScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n this.treasuryScriptHash = this.treasuryScript.hash();\n this.orderScriptHash = this.orderScript.hash();\n this.stakingVaultScriptHash = this.stakingVaultScript.hash();\n\n this.treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n this.orderScriptAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n this.stakingVaultAddress = addressFromValidator(\n this.network,\n this.stakingVaultScript,\n );\n\n // Every identity above is derived from this package's own artifacts, which\n // only describes a deployment running those exact bytes. Where the caller\n // knows what the chain actually runs, that wins — otherwise the derived\n // order address is one nothing watches, and an order (lockAssets, no\n // on-chain validation) would submit successfully into it.\n this.applyDeployedValidators(params.deployedValidators, params.version);\n\n // Treasury NFT: policy = treasury script hash, name = \"treasury\"\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n this.treasuryNFTAssetId = Core.AssetId(\n this.treasuryScriptHash + treasuryAssetName.toString(),\n );\n\n // Staking vault NFT: policy = staking vault script hash, name = \"staking_vault\"\n const vaultAssetName = Core.AssetName(toHex(Buffer.from(\"staking_vault\")));\n this.stakingVaultNFTAssetId = Core.AssetId(\n this.stakingVaultScriptHash + vaultAssetName.toString(),\n );\n }\n\n /**\n * Replace derived script identity with the deployment's own hashes.\n *\n * Version-owned validators are selected only from this SDK's exact version\n * slot. Treasury and staking-vault validators can deliberately survive a\n * protocol-only upgrade, so their unversioned entries are used as the\n * authoritative active-state fallback.\n *\n * Unrecognised keys are ignored: a blueprint legitimately carries validators\n * outside this family (oneshot, mint_proxy) and future ones this build has\n * never heard of.\n */\n private applyDeployedValidators(\n deployed: Readonly> | undefined,\n version: TProtocolVersion,\n ): void {\n if (!deployed) return;\n\n if (!(version in DEPLOYED_VALIDATOR_PREFIXES)) return;\n const prefix = DEPLOYED_VALIDATOR_PREFIXES[version as TV1ProtocolVersion];\n\n const mutable = this as unknown as Record;\n for (const [suffix, field] of DEPLOYED_VALIDATOR_FIELDS) {\n const versionedHash = deployed[`${prefix}${suffix}`];\n const activeStateHash = COMPATIBLE_STATE_VALIDATOR_FIELDS.has(field)\n ? deployed[suffix]\n : undefined;\n const deployedHash = activeStateHash ?? versionedHash;\n if (!deployedHash) continue;\n\n const hash = Core.Hash28ByteBase16(deployedHash.toLowerCase());\n mutable[field] = hash;\n\n const addressField =\n DEPLOYED_ADDRESS_FIELDS[field as keyof typeof DEPLOYED_ADDRESS_FIELDS];\n if (addressField) {\n mutable[addressField] = addressFromCredentials(\n this.network,\n Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash,\n }),\n );\n }\n }\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Version Seams\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Schemas for the v1_0-semantics signing/execute defaults. Throws for\n * versions that neither supplied {@link IV1SigningSchemas} nor overrode\n * the two consumers (`getSignedPayloadFromOrderInputs`,\n * `buildExecuteOrdersTx`).\n */\n protected get signing(): IV1SigningSchemas {\n if (!this.signingSchemas) {\n throw new Error(\n `${this.version}: no signing schemas supplied — pass signingSchemas to the family constructor or override getSignedPayloadFromOrderInputs and buildExecuteOrdersTx`,\n );\n }\n return this.signingSchemas;\n }\n\n /**\n * Project the version's settings onto the fields the shared tx-builders\n * read. v1_0/v1_0_rc1: the settings object itself; v1_1+: `settings.config`.\n */\n protected abstract settingsConfig(settings: TSettings): TV1SettingsConfig;\n\n /**\n * Extract the validator registry (the fields the family reads) from the\n * version's settings.\n */\n protected abstract settingsRegistry(settings: TSettings): TV1Registry;\n\n /**\n * Build the vault datum used when bootstrapping the staking vault.\n * This is the ONLY place (together with `buildUpdatedVaultDatum`) that\n * knows the version's full vault-datum shape.\n */\n protected abstract buildInitialVaultDatum(): TVaultDatum;\n\n /**\n * Build the vault datum that replaces `previous` after an execution that\n * changes circulating sUSDr by `sUSDrDelta`. Versions with additional\n * vault fields decide here how each field carries over.\n */\n protected abstract buildUpdatedVaultDatum(\n previous: TVaultDatum,\n sUSDrDelta: bigint,\n ): TVaultDatum;\n\n /**\n * Version hook: the USDr backing the stake/unstake exchange rate is\n * computed against. Defaults to the vault's full USDr balance (v1_0 /\n * v1_0_rc1 semantics). Versions with time-diffused yield (v1_1_rc1+)\n * override this to exclude the not-yet-diffused pending yield\n * (`settled_backing` in utilities.ak).\n */\n protected settledVaultBacking(\n _parsedVaultDatum: TVaultDatum,\n vaultUSDr: bigint,\n ): bigint {\n return vaultUSDr;\n }\n\n /**\n * Version hook: constrain the transaction validity interval on order\n * executions. Called once at the end of `buildExecuteOrdersTx`, right\n * before the builder is returned.\n *\n * No-op by default: v1_0 / v1_0_rc1 executions carry no validity\n * constraints. Versions with time-diffused yield (v1_1_rc1+) override this\n * to attach validFrom/validTo bounds on vault-touching executions.\n */\n protected async applyExecutionValidityBounds(\n _tx: TxBuilder,\n _context: IExecutionValidityContext,\n ): Promise {\n // no-op by default\n }\n\n /**\n * Version hook: build the `Deposit` protocol action that goes into the\n * COSE-signed payload. v1_0 / v1_0_rc1 have no yield split — the validator\n * recomputes it from live state — so they take no `alpha` and reject one.\n * Versions that carry a signed `alpha` (v1_1_rc1+) override this and require\n * it: it is the batch's parameter, never something a signer derives.\n */\n protected async buildDepositAction(\n requests: TreasuryRequestV1[],\n alpha?: IYieldSplitAlpha,\n ): Promise {\n if (alpha) {\n throw new Error(\n `${this.version}: a deposit batch takes no yield-split alpha (the validator recomputes the split from live state)`,\n );\n }\n return { Deposit: { requests } };\n }\n\n /**\n * Version hook: split a deposit's total yield between the staked vault and\n * the unstaked pot at EXECUTION time.\n *\n * v1_0 / v1_0_rc1 (default): the on-chain validator recomputes the split from\n * live vault/treasury state, so recomputing it here from the same state\n * matches. v1_1_rc1+ carry a COSE-signed `alpha` in the Deposit action and\n * the validator splits against THAT — so those versions override this to echo\n * the signed alpha, never a second live read (which would diverge if state\n * moved between signing and execution). `action` is the signed action being\n * executed; the default ignores it.\n */\n protected resolveDepositYieldShares(\n totalYield: bigint,\n vaultUSDr: bigint,\n treasuryCirculating: bigint,\n _action: ProtocolRedeemerV1,\n ): { stakedYieldShare: bigint; unstakedYieldShare: bigint } {\n return calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating);\n }\n\n /**\n * Version hook: serialize the redeemer attached to the orchestrator\n * withdrawal. Defaults to the bare `SignedRedeemer`\n * (v1_0 / v1_0_rc1). Versions whose orchestrator wraps execution in a\n * top-level dispatch enum (v1_1_rc1+: `ExecuteOrders(...)`/`PublishYieldOracle`)\n * override this to nest the signed redeemer inside that wrapper.\n */\n protected serializeOrchestratorWithdrawalRedeemer(redeemer: {\n extra: ExtraProtocolRedeemerV1;\n payload: SignedPayload_ProtocolRedeemerV1;\n signatures: Tuple_VerificationKey_COSESign1[];\n }): PlutusData {\n return Data.serialize(\n this.signing.SignedRedeemer_ExtraProtocolRedeemerV1,\n redeemer,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the treasury NFT.\n */\n async mintTreasuryNFT(\n treasuryBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash);\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n\n const datum = Data.serialize(V0_1TreasuryDatum, initialDatum);\n const tx = await this.blaze\n .newTransaction()\n .addInput(treasuryBootstrapUtxo)\n .addMint(\n treasuryPolicyId,\n new Map([[treasuryAssetName, 1n]]),\n Data.Void(),\n )\n .lockAssets(\n this.treasuryAddress,\n makeValue(10000000n, [this.treasuryNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.treasuryScript);\n\n return { tx, nftAssetId: this.treasuryNFTAssetId };\n }\n\n async deployTreasury(): Promise {\n return deployScript(\n this.blaze,\n this.treasuryScript,\n this.scriptDeploymentAddress,\n );\n }\n\n async deployOrderContract(): Promise {\n return deployScript(\n this.blaze,\n this.orderScript,\n this.scriptDeploymentAddress,\n );\n }\n\n async getTreasuryDatum(): Promise> {\n const {\n utxo: treasuryUtxo,\n datum: treasuryDatum,\n parsedDatum: parsedTreasuryDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1TreasuryDatum,\n );\n\n if (!treasuryUtxo) {\n throw new Error(\"No UTXO found with the treasury NFT\");\n }\n if (!treasuryDatum) {\n throw new Error(\"No treasury datum found\");\n }\n\n return {\n treasuryUtxo,\n treasuryDatum,\n parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Staking Vault Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the staking vault NFT and create initial vault UTxO.\n */\n async mintStakingVaultNFT(\n stakingVaultBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum?: TVaultDatum,\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const vaultPolicyId = Core.PolicyId(this.stakingVaultScriptHash);\n const vaultAssetName = Core.AssetName(toHex(Buffer.from(\"staking_vault\")));\n\n const datum = Data.serialize(\n this.schemas.VaultDatumV1,\n initialDatum ?? this.buildInitialVaultDatum(),\n );\n const tx = await this.blaze\n .newTransaction()\n .addInput(stakingVaultBootstrapUtxo)\n .addMint(vaultPolicyId, new Map([[vaultAssetName, 1n]]), Data.Void())\n .lockAssets(\n this.stakingVaultAddress,\n makeValue(10000000n, [this.stakingVaultNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.stakingVaultScript);\n\n return { tx, nftAssetId: this.stakingVaultNFTAssetId };\n }\n\n async deployStakingVault(): Promise {\n return deployScript(\n this.blaze,\n this.stakingVaultScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Deploy the protocol mint script as a reference script (V1.0 only).\n */\n async deployProtocolMint(): Promise {\n return deployScript(\n this.blaze,\n this.protocolMintScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Deploy the protocol stake script as a reference script (V1.0 only).\n */\n async deployProtocolStake(): Promise {\n return deployScript(\n this.blaze,\n this.protocolStakeScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Deploy the protocol management script as a reference script (V1.0 only).\n */\n async deployProtocolManagement(): Promise {\n return deployScript(\n this.blaze,\n this.protocolManagementScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Register the protocol mint stake credential (V1.0 sub-validator).\n */\n registerProtocolMintStake(): TxBuilder {\n const stakeCredential = credentialFromScript(this.protocolMintScript);\n return this.blaze.newTransaction().addRegisterStake(stakeCredential);\n }\n\n /**\n * Register the protocol stake stake credential (V1.0 sub-validator).\n */\n registerProtocolStakeStake(): TxBuilder {\n const stakeCredential = credentialFromScript(this.protocolStakeScript);\n return this.blaze.newTransaction().addRegisterStake(stakeCredential);\n }\n\n /**\n * Register the protocol management stake credential (V1.0 sub-validator).\n */\n registerProtocolManagementStake(): TxBuilder {\n const stakeCredential = credentialFromScript(this.protocolManagementScript);\n return this.blaze.newTransaction().addRegisterStake(stakeCredential);\n }\n\n /**\n * Register the staking vault stake credential (for stake/unstake operations).\n */\n registerStakingVaultStake(): TxBuilder {\n const stakeCredential = credentialFromScript(this.stakingVaultScript);\n return this.blaze.newTransaction().addRegisterStake(stakeCredential);\n }\n\n // ───────────────────────────────────────────────────────────────────────────\n // Batched bootstrap helpers (fast fresh-deploy path)\n //\n // The NFT mints CANNOT be batched: each one-shot mint validator runs\n // `mint_oneshots_strict`, which flattens the transaction's ENTIRE mint field\n // and fails unless it equals exactly that validator's single token. So a tx\n // minting more than one NFT fails phase-2 for all of them — the mints stay\n // one-tx-each. Deploys and stake registrations have no such constraint and\n // batch freely.\n // ───────────────────────────────────────────────────────────────────────────\n\n /**\n * Register all five protocol stake credentials (orchestrator + mint / stake /\n * management sub-validators + staking vault) in a SINGLE transaction.\n * Certificates are tiny, so there is no size constraint. Replaces five\n * `register*Stake` calls (and, for a cold wallet, five sign/submit cycles).\n */\n registerAllStakes(): TxBuilder {\n return this.blaze\n .newTransaction()\n .addRegisterStake(credentialFromScript(this.protocolScript))\n .addRegisterStake(credentialFromScript(this.protocolMintScript))\n .addRegisterStake(credentialFromScript(this.protocolStakeScript))\n .addRegisterStake(credentialFromScript(this.protocolManagementScript))\n .addRegisterStake(credentialFromScript(this.stakingVaultScript));\n }\n\n /**\n * Pack the eight protocol reference-script deployments into as few\n * transactions as fit under `budgetBytes` of script payload each, returning\n * one TxBuilder per batch in deploy order.\n *\n * Batches by measured script size (`script.toCbor()` bytes) rather than a\n * fixed count, because the validators are wildly uneven (~0.5–11 KB) and two\n * of the ~10 KB sub-validators cannot share a transaction. The default budget\n * (13 000) leaves headroom under the 16 384-byte tx limit for tx overhead and\n * future script growth; callers can lower it if a validator grows.\n *\n * Fresh-deploy only: it does NOT skip already-deployed scripts. To resume a\n * partial deploy, use the granular `deploy*` methods (which throw\n * `ScriptAlreadyDeployedError` for idempotent reruns).\n */\n deployScriptsBatched(budgetBytes = 13_000): TxBuilder[] {\n const scripts: Core.Script[] = [\n this.treasuryScript,\n this.protocolScript,\n this.protocolMintScript,\n this.protocolStakeScript,\n this.protocolManagementScript,\n this.mintProxyScript,\n this.orderScript,\n this.stakingVaultScript,\n ];\n\n const batches: Core.Script[][] = [];\n let current: Core.Script[] = [];\n let currentBytes = 0;\n for (const script of scripts) {\n const size = script.toCbor().length / 2;\n if (current.length > 0 && currentBytes + size > budgetBytes) {\n batches.push(current);\n current = [];\n currentBytes = 0;\n }\n current.push(script);\n currentBytes += size;\n }\n if (current.length > 0) batches.push(current);\n\n return batches.map((batch) => {\n let tx = this.blaze.newTransaction();\n for (const script of batch) {\n tx = tx.deployScript(script, this.scriptDeploymentAddress);\n }\n return tx;\n });\n }\n\n /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */\n getSusdrAssetId(): Core.AssetId {\n return Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex);\n }\n\n async getVaultDatum(): Promise> {\n const {\n utxo: vaultUtxo,\n datum: vaultDatum,\n parsedDatum: parsedVaultDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.stakingVaultNFTAssetId,\n this.schemas.VaultDatumV1,\n );\n\n if (!vaultUtxo) {\n throw new Error(\"No UTXO found with the staking vault NFT\");\n }\n if (!vaultDatum) {\n throw new Error(\"No vault datum found\");\n }\n\n return {\n vaultUtxo,\n vaultDatum,\n parsedVaultDatum: parsedVaultDatum as TVaultDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: IProxyDatum,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(this.schemas.ProxyDatumV1, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: IProxyDatum,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(this.schemas.ProxyDatumV1, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n }\n\n async getParsedProxyDatum(): Promise<\n IProxyDatumResult>\n > {\n if (this.cachedProxyDatumResult) {\n return this.cachedProxyDatumResult as IProxyDatumResult<\n IProxyDatum\n >;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(this.schemas.ProxyDatumV1, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n /**\n * Check if the protocol has been upgraded past this SDK version.\n *\n * Returns true if either:\n * - The order script hash no longer matches registry.order (order validator upgraded)\n * - The protocol logic no longer matches this SDK's protocol script hash (protocol upgraded)\n *\n * When this returns true, orders created with this SDK version can use the\n * `Invalidated` redeemer to recover funds via `buildInvalidatedOrdersTx`.\n */\n async isProtocolUpgraded(): Promise {\n const { parsedProxyDatum } = await this.getParsedProxyDatum();\n const registry = this.settingsRegistry(parsedProxyDatum.settings);\n const orderUpgraded = registry.order !== this.orderScriptHash;\n const protocolUpgraded = parsedProxyDatum.logic !== this.protocolScriptHash;\n return orderUpgraded || protocolUpgraded;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Public Order-Scan / Settings Accessors\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Read the version-agnostic settings config (`reserve_assets`,\n * `unstaked_yield_pot`) off the live proxy datum. Public accessor over the\n * `settingsConfig` / `getVersionSettings` seam so consumers read the shared\n * fields without casting a version-specific settings shape: v1_0 / v1_0_rc1\n * project the flat settings, v1_1+ project `settings.config`.\n */\n async getSettingsConfig(): Promise {\n return this.settingsConfig(await this.getVersionSettings());\n }\n\n /**\n * Whether the batch covering these orders needs a yield-split alpha, i.e. it is\n * a deposit on a version that splits yield. Callers that both create and sign a\n * batch use it to decide whether to pick one (computeDepositAlpha); a co-signer\n * has no use for it — it reads the batch's stored alpha either way.\n */\n async batchNeedsAlpha(\n orderInputs: Core.TransactionInput[],\n ): Promise {\n if (orderInputs.length === 0) {\n return false;\n }\n const [utxo] = await this.blaze.provider.resolveUnspentOutputs([\n orderInputs[0]!,\n ]);\n return (\n this.classifyOrderUtxo(utxo!).action.actionType === \"deposit\" &&\n this.splitsYield\n );\n }\n\n /**\n * Whether this version's Deposit action carries a signed yield split. False for\n * v1_0 / v1_0_rc1, whose validator recomputes the split from live state;\n * v1_1_rc1+ override it.\n */\n protected get splitsYield(): boolean {\n return false;\n }\n\n /**\n * Decode and classify a single open order UTxO with this version's schema.\n *\n * Parses the UTxO's inline datum via `this.schemas.OrderDatumV1` — exactly\n * the way {@link parseOrderInfos} does — then classifies the action. Unlike\n * {@link parseOrders}, this imposes NO same-action-type constraint, so it is\n * the per-UTxO primitive for scanning a MIXED batch of open orders at the\n * order script address and handling each by its action type.\n *\n * @throws if the UTxO carries no inline datum, or the datum fails to decode\n * under this version's order schema (e.g. a V1.1 order read by a V1.0 SDK).\n */\n classifyOrderUtxo(utxo: Core.TransactionUnspentOutput): IClassifiedOrderUtxo {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1;\n return { datum, action: this.classifyOrderAction(datum) };\n }\n\n /**\n * Decode a batch of order UTxOs into {@link IOrderInfo} objects, validating\n * they are ALL the same action type (throws on a mixed batch). Public\n * wrapper over {@link parseOrderInfos}; use it to prepare inputs for the\n * same-type execute builders. To scan a mixed batch, classify each UTxO\n * individually with {@link classifyOrderUtxo} instead.\n *\n * The optional `fees` map (keyed by `${txHash}#${outputIndex}`) stamps each\n * order with its locked fee in the action's output unit; missing entries\n * default to 0 (no fee retained).\n */\n parseOrders(\n orderUtxos: Core.TransactionUnspentOutput[],\n fees?: Map,\n ): IOrderInfo[] {\n return this.parseOrderInfos(orderUtxos, fees);\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Order Builder Methods (8 methods: 6 from V0_4 + DirectMint + DirectBurn)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Internal helper to build an order transaction.\n */\n protected async _buildOrderTx(params: {\n action: OrderActionV1;\n valueToLock: Core.Value;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n extraLabels?: Map;\n }): Promise {\n const owner = await this.resolveOrderOwner(params.owner);\n const serializedDatum = this.serializeOrderDatum(\n params.action,\n params.destination,\n owner,\n params.data,\n );\n\n const tx = this.newOrderTransaction(params.extraLabels);\n tx.lockAssets(this.orderScriptAddress, params.valueToLock, serializedDatum);\n return tx;\n }\n\n /** Resolve the order owner exactly once for transaction and continuation builders. */\n protected async resolveOrderOwner(\n owner?: MultisigScript,\n ): Promise {\n if (owner) return owner;\n return {\n Signature: {\n key_hash: (await this.blaze.wallet.getChangeAddress())\n .getProps()\n .paymentPart!.hash!.toString(),\n },\n };\n }\n\n /** Serialize an order datum through the live version instance's schema seam. */\n protected serializeOrderDatum(\n action: OrderActionV1,\n destination: Destination,\n owner: MultisigScript,\n data?: PlutusData,\n ): PlutusData {\n const orderDatum: OrderDatumV1 = {\n action,\n owner,\n destination,\n data: data ?? Data.Void(),\n };\n return Data.serialize(this.schemas.OrderDatumV1, orderDatum);\n }\n\n /**\n * Build a mint order: lock reserve tokens, request USDr minting.\n */\n async buildMintOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n minReceived?: bigint;\n /**\n * ADA to lock in the RealFi order UTxO and forward to the destination\n * output when the order is executed. Defaults to MIN_LOVELACE.\n */\n orderLovelace?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Mint amount must be positive\");\n }\n const orderLovelace = params.orderLovelace ?? MIN_LOVELACE;\n if (orderLovelace < MIN_LOVELACE) {\n throw new Error(\"Mint order lovelace cannot be less than MIN_LOVELACE\");\n }\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n // Convert USDr amount to reserve amount using ceiling division\n // to ensure enough reserve is locked for on-chain validation\n const settings = this.settingsConfig(await this.getVersionSettings());\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAmount = usdrToReserveCeil(params.amount, ra);\n // Mint is 1:1 reserve→USDR with no protocol fee in v1_0, so the user\n // receives exactly `amount`. Default the floor to `amount`; callers can\n // lower it if a future fee makes that too tight.\n const minReceived = params.minReceived ?? params.amount;\n assertPositiveMinReceived(\"Mint\", minReceived);\n return this._buildOrderTx({\n action: {\n OMint: {\n amount: params.amount,\n min_received: minReceived,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(orderLovelace, [reserveAssetId, reserveAmount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a redeem (burn) order: lock USDr, request reserve token redemption.\n */\n async buildRedeemOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n minReceived?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Redeem amount must be positive\");\n }\n const settings = this.settingsConfig(await this.getVersionSettings());\n const ra = findReserveAsset(settings, params.reserveAsset);\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n // burn.ak caps delivery at usdr_to_reserve(amount, ra), so the default\n // floor must use the configured reserve multiplier rather than assume 1:1.\n const minReceived = params.minReceived ?? usdrToReserve(params.amount, ra);\n assertPositiveMinReceived(\"Redeem\", minReceived);\n return this._buildOrderTx({\n action: {\n ORedeem: {\n amount: params.amount,\n min_received: minReceived,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a deposit order: lock reserve tokens, request treasury deposit.\n */\n async buildDepositOrderTx(params: {\n principal: bigint;\n yield: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.principal < 0n) {\n throw new Error(\"Deposit principal must be non-negative\");\n }\n if (params.principal === 0n && params.yield === 0n) {\n throw new Error(\"Deposit must have non-zero principal or yield\");\n }\n const settings = this.settingsConfig(await this.getVersionSettings());\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n\n let valueToLock: Core.Value;\n\n if (params.yield >= 0n) {\n // POSITIVE YIELD: need reserve backing for BOTH principal AND yield.\n // Contract validates: reserve_to_usdr(treasury_delta) >= principal + yield\n // So we must lock: usdrToReserveCeil(principal + yield) reserve tokens\n const totalUSDrBacking = params.principal + params.yield;\n if (totalUSDrBacking > 0n) {\n const reserveAmount = usdrToReserveCeil(totalUSDrBacking, ra);\n valueToLock = makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]);\n } else {\n valueToLock = makeValue(MIN_LOVELACE);\n }\n } else {\n // NEGATIVE YIELD: lock principal (in reserve) + unstaked yield share (in USDr).\n // The staked share comes from the vault (validated on-chain via vault USDr change).\n const principalReserve =\n params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n;\n\n valueToLock =\n principalReserve > 0n\n ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve])\n : makeValue(MIN_LOVELACE);\n\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n // Fetch current state to calculate yield split\n const { parsedTreasuryDatum } = await this.getTreasuryDatum();\n const vaultUtxo = (await this.getVaultDatum()).vaultUtxo;\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n\n const { unstakedYieldShare } = calculateYieldShares(\n params.yield,\n vaultUSDr,\n treasuryCirculating,\n );\n\n // Lock only the unstaked portion (negated since unstakedYieldShare is negative)\n if (unstakedYieldShare < 0n) {\n valueToLock = Value.merge(\n valueToLock,\n makeValue(0n, [stablecoinAssetId, -unstakedYieldShare]),\n );\n }\n }\n return this._buildOrderTx({\n action: {\n ODeposit: {\n principal: params.principal,\n yield: params.yield,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock,\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a withdraw order: lock min ADA, request reserve token withdrawal.\n */\n async buildWithdrawOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Withdraw amount must be positive\");\n }\n const settings = this.settingsConfig(await this.getVersionSettings());\n findReserveAsset(settings, params.reserveAsset);\n return this._buildOrderTx({\n action: {\n OWithdraw: {\n amount: params.amount,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a stake order: lock USDr, request sUSDr minting.\n */\n async buildStakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n minReceived?: bigint;\n slippageToleranceBps?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Stake amount must be positive\");\n }\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const minReceived =\n params.minReceived ??\n (await this.computeStakeMinReceived(\n params.amount,\n params.slippageToleranceBps,\n ));\n assertPositiveMinReceived(\"Stake\", minReceived);\n return this._buildOrderTx({\n action: {\n OStake: {\n amount: params.amount,\n min_received: minReceived,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a stake-order continuation from a completed swap's guaranteed USDr\n * output. The swap quote remains observable to the caller, while the SDK\n * owns the RealFi amount, exchange-rate quote, schema, and request address.\n */\n async buildStakeContinuation(\n params: IBuildStakeContinuationParams,\n ): Promise {\n const amount = params.swap.minReceived.amount;\n if (amount <= 0n) {\n throw new Error(\"Swap minReceived amount must be positive\");\n }\n\n const expectedSundaeAssetId = `${this.stablecoinPolicyId}.${this.assetNameHex}`;\n if (params.swap.minReceived.metadata.assetId !== expectedSundaeAssetId) {\n throw new Error(\n `Swap minReceived must be USDr (${expectedSundaeAssetId}), got ${params.swap.minReceived.metadata.assetId}`,\n );\n }\n\n const minReceived = await this.computeStakeMinReceived(\n amount,\n params.slippageToleranceBps,\n );\n assertPositiveMinReceived(\"Stake\", minReceived);\n const owner = await this.resolveOrderOwner(params.owner);\n\n return {\n address: this.orderScriptAddress,\n datum: this.serializeOrderDatum(\n {\n OStake: {\n amount,\n min_received: minReceived,\n },\n },\n params.destination,\n owner,\n params.data,\n ),\n };\n }\n\n protected async _buildUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n forfeit?: bigint;\n minReceived?: bigint;\n slippageToleranceBps?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n extraLabels?: Map;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Unstake amount must be positive\");\n }\n const forfeit = params.forfeit ?? 0n;\n if (forfeit < 0n) {\n throw new Error(\"Forfeit amount cannot be negative\");\n }\n\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n const minReceived =\n params.minReceived ??\n (await this.computeUnstakeMinReceived(\n params.amount,\n forfeit,\n params.slippageToleranceBps,\n ));\n // Also catches a full forfeit, where computeUnstakeMinReceived nets to 0:\n // unstake.ak's own comment defers that case to `min_received > 0`, i.e. the\n // batch-wide crash. Refuse to create the order instead.\n assertPositiveMinReceived(\"Unstake\", minReceived);\n\n return this._buildOrderTx({\n action: {\n OUnstake: {\n amount: params.amount,\n min_received: minReceived,\n forfeit,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n extraLabels: params.extraLabels,\n });\n }\n\n /**\n * Build an unstake order: lock sUSDr, request USDr release.\n *\n * The destination is automatically set to a native script address that\n * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }.\n * This means the released USDr can only be spent by the user after the\n * unlock time has passed.\n *\n * @param params.amount - Amount of sUSDr to unstake\n * @param params.destination - The user's actual destination (used to extract payment key hash)\n * @param params.unlockSlot - Slot number after which the user can spend the released USDr\n * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0)\n * @param params.slippageToleranceBps - Optional min-received tolerance override in basis points\n */\n async buildUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n unlockSlot: bigint;\n forfeit?: bigint;\n minReceived?: bigint;\n slippageToleranceBps?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n const timelockDestination = buildTimelockDestination(\n params.destination,\n params.unlockSlot,\n );\n const extraLabels = new Map([\n [\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(params.destination, params.unlockSlot),\n ],\n ]);\n\n return this._buildUnstakeOrderTx({\n amount: params.amount,\n destination: timelockDestination,\n forfeit: params.forfeit,\n minReceived: params.minReceived,\n slippageToleranceBps: params.slippageToleranceBps,\n owner: params.owner,\n data: params.data,\n extraLabels,\n });\n }\n\n /**\n * Build a treasury-managed unstake order that wraps the destination in a\n * native timelock script controlled by the order owner.\n *\n * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps\n * treasury multisig ownership on the released USDr while enforcing the same\n * unlock slot used by the retail unstake helper. The owner must be convertible\n * to a Cardano native script.\n */\n async buildTreasuryUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n unlockSlot: bigint;\n forfeit?: bigint;\n minReceived?: bigint;\n slippageToleranceBps?: bigint;\n owner: MultisigScript;\n data?: PlutusData;\n }): Promise {\n const nativeScript = buildMultisigTimelockNativeScript(\n params.owner,\n params.unlockSlot,\n );\n const timelockDestination: Destination = {\n address: {\n payment_credential: { Script: [nativeScript.hash()] },\n stake_credential: params.destination.address.stake_credential,\n },\n datum: \"NoDatum\",\n };\n\n // Attach the unstake metadata (label 55534472) exactly like the retail\n // path (buildUnstakeOrderTx). track-chain requires this label to index the\n // order; without it the confirmed unstake output is silently dropped\n // (WTB-1466). Mirror retail precisely: the metadatum is built from the\n // user-supplied destination (params.destination), not the derived timelock\n // destination, and carries the same unlock_time.\n const extraLabels = new Map([\n [\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(params.destination, params.unlockSlot),\n ],\n ]);\n\n const tx = await this._buildUnstakeOrderTx({\n amount: params.amount,\n destination: timelockDestination,\n forfeit: params.forfeit,\n minReceived: params.minReceived,\n slippageToleranceBps: params.slippageToleranceBps,\n owner: params.owner,\n data: params.data,\n extraLabels,\n });\n\n return { tx, nativeScript };\n }\n\n /**\n * Compute the default `min_received` (output sUSDR floor) for a stake order\n * by reading the current staking-vault exchange rate and applying a\n * slippage tolerance buffer.\n *\n * Tolerance resolution: per-call > SDK-level (defaultSlippageToleranceBps)\n * > built-in 50bps (0.5%).\n *\n * Yield accrual moves `vault_usdr` up over time, so shares-per-USDR shrinks\n * between order placement and execution. The buffer protects the user from\n * receiving fewer shares than they expected at sign time.\n *\n * Bootstrap edge case: when the vault is empty (no USDR locked or no sUSDR\n * circulating), the rate is treated as 1:1 and the buffer is skipped.\n */\n protected async computeStakeMinReceived(\n amount: bigint,\n perCallToleranceBps?: bigint,\n ): Promise {\n const toleranceBps =\n this.resolveStakeSlippageToleranceBps(perCallToleranceBps);\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const { vaultUtxo, parsedVaultDatum } = await this.getVaultDatum();\n const vaultUsdr = this.settledVaultBacking(\n parsedVaultDatum,\n vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n,\n );\n const circulatingSusdr = parsedVaultDatum.circulating_susdr;\n if (vaultUsdr === 0n || circulatingSusdr === 0n) {\n return amount;\n }\n const expected = (amount * circulatingSusdr) / vaultUsdr;\n return (expected * (10000n - toleranceBps)) / 10000n;\n }\n\n protected resolveStakeSlippageToleranceBps(\n perCallToleranceBps?: bigint,\n ): bigint {\n const toleranceBps =\n perCallToleranceBps ?? this.defaultSlippageToleranceBps ?? 50n;\n if (toleranceBps < 0n || toleranceBps > 10_000n) {\n throw new Error(\"Slippage tolerance must be between 0 and 10000 bps\");\n }\n return toleranceBps;\n }\n\n /**\n * Compute the default `min_received` (output USDR floor) for an unstake\n * order by reading the current staking-vault exchange rate.\n *\n * `forfeit` is subtracted from the gross expected USDR, then a slippage\n * tolerance protects the order from quote/provider drift. Tolerance\n * resolution is per-call > SDK-level > built-in 50bps (0.5%).\n *\n * Bootstrap edge case: when the vault is empty, the rate is treated as 1:1.\n */\n protected async computeUnstakeMinReceived(\n amount: bigint,\n forfeit: bigint,\n perCallToleranceBps?: bigint,\n ): Promise {\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const { vaultUtxo, parsedVaultDatum } = await this.getVaultDatum();\n const vaultUsdr = this.settledVaultBacking(\n parsedVaultDatum,\n vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n,\n );\n const circulatingSusdr = parsedVaultDatum.circulating_susdr;\n const expectedGross =\n vaultUsdr === 0n || circulatingSusdr === 0n\n ? amount\n : (amount * vaultUsdr) / circulatingSusdr;\n const expectedNet = expectedGross > forfeit ? expectedGross - forfeit : 0n;\n const toleranceBps =\n this.resolveStakeSlippageToleranceBps(perCallToleranceBps);\n return (expectedNet * (10000n - toleranceBps)) / 10000n;\n }\n\n /**\n * Build a direct mint order: mint USDr without reserve asset backing.\n * Used for fiat wire scenarios where reserve arrives off-chain.\n */\n async buildDirectMintOrderTx(params: {\n amount: bigint;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Direct mint amount must be positive\");\n }\n // DirectMint orders only need min ADA - no reserve tokens\n return this._buildOrderTx({\n action: { ODirectMint: { amount: params.amount } },\n valueToLock: makeValue(MIN_LOVELACE),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a direct burn order: burn USDr without reserve asset redemption.\n * Used for fiat wire scenarios where reserve is sent off-chain.\n */\n async buildDirectBurnOrderTx(params: {\n amount: bigint;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Direct burn amount must be positive\");\n }\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n // DirectBurn orders must lock the USDr being burned\n return this._buildOrderTx({\n action: { ODirectBurn: { amount: params.amount } },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n static buildTimelockNativeScript = buildTimelockNativeScript;\n static buildTimelockAddress = buildTimelockAddress;\n static buildMultisigTimelockNativeScript = buildMultisigTimelockNativeScript;\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Signed Payload and Signing\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build the V1_0 SignedPayload_ProtocolRedeemer from order inputs.\n * Returns both the CBOR hex string (for buildExecuteOrdersTx) and\n * the blake2b_256 hash (for CIP-30 signing).\n *\n * `alpha` is the batch's yield split, required by versions whose Deposit\n * action carries one (v1_1_rc1+) and rejected everywhere else. It is a\n * parameter of the batch, chosen once by whoever created it and read back from\n * the backend by every co-signer: on-chain, all signatures of a batch are\n * checked against ONE payload hash, so a signer that derived its own value\n * would produce bytes nobody else can co-sign.\n */\n async getSignedPayloadFromOrderInputs(\n orderInputs: Core.TransactionInput[],\n alpha?: IYieldSplitAlpha,\n ): Promise<{ signedPayload: string; payloadHash: string }> {\n if (orderInputs.length === 0) {\n throw new Error(\"At least one order input is required\");\n }\n\n const sortedInputs = sortOrderInputs(orderInputs);\n const nonce = buildNonceFromUtxo(sortedInputs[0]!) as Nonce;\n\n const resolvedUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedInputs);\n\n let actionType: TOrderActionType | null = null;\n const exchangeRequests: ExchangeRequestV1[] = [];\n const treasuryRequests: TreasuryRequestV1[] = [];\n const stakeRequests: StakeRequestV1[] = [];\n const directRequests: DirectRequestV1[] = [];\n\n for (const utxo of resolvedUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1;\n const origin = {\n transaction_id: utxo.input().transactionId().toString(),\n output_index: utxo.input().index(),\n };\n\n const parsed = this.classifyOrderAction(datum);\n\n // WTB-1764: the validators check each request inside one zip_fold via\n // `expect validation(request)`, so a request that fails its predicate\n // crashes the WHOLE execution transaction — every valid order batched\n // alongside it dies too, with only an opaque \"the validator crashed\"\n // to go on. Refuse to package it, and say which order it was.\n const screened = await this.screenOrderForExecution(utxo, parsed);\n if (!screened.ok) {\n throw new Error(\n `Order ${origin.transaction_id}#${origin.output_index} cannot be executed: ` +\n `${screened.reason}. Every order batched with it would crash on-chain.`,\n );\n }\n\n if (actionType === null) {\n actionType = parsed.actionType;\n } else if (actionType !== parsed.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n if (parsed.actionType === \"mint\" || parsed.actionType === \"burn\") {\n exchangeRequests.push({\n destination: datum.destination,\n amount: parsed.amount,\n min_received: parsed.minReceived ?? 0n,\n origin,\n reserve_asset: parsed.reserveAsset!,\n });\n } else if (\n parsed.actionType === \"deposit\" ||\n parsed.actionType === \"withdraw\"\n ) {\n treasuryRequests.push(this.buildTreasuryRequest(datum, parsed, origin));\n } else if (\n parsed.actionType === \"stake\" ||\n parsed.actionType === \"unstake\"\n ) {\n stakeRequests.push({\n destination: datum.destination,\n amount: parsed.amount,\n min_received: parsed.minReceived ?? 0n,\n origin,\n forfeit: parsed.forfeit ?? 0n,\n });\n } else {\n directRequests.push({\n destination: datum.destination,\n amount: parsed.amount,\n origin,\n });\n }\n }\n\n // Only a deposit splits yield. Silently dropping an alpha here would let a\n // caller believe it had parameterised a batch that ignores the value.\n if (alpha && actionType !== \"deposit\") {\n throw new Error(\n `a ${actionType} batch takes no yield-split alpha (only a deposit splits yield)`,\n );\n }\n if (actionType === \"deposit\") {\n const batchVerdict = screenDepositBatch(\n treasuryRequests.map((request) => ({\n actionType: \"deposit\",\n amount: request.amount,\n yield: request.yield,\n })),\n );\n if (!batchVerdict.ok) {\n throw new Error(\n `${batchVerdict.reason}. Every order batched with it would crash on-chain.`,\n );\n }\n }\n\n let action: ProtocolRedeemerV1;\n switch (actionType) {\n case \"mint\":\n action = { Mint: { requests: exchangeRequests } };\n break;\n case \"burn\":\n action = { Burn: { requests: exchangeRequests } };\n break;\n case \"withdraw\":\n action = { Withdraw: { requests: treasuryRequests } };\n break;\n case \"deposit\":\n action = await this.buildDepositAction(treasuryRequests, alpha);\n break;\n case \"stake\":\n action = { Stake: { requests: stakeRequests } };\n break;\n case \"unstake\":\n action = { Unstake: { requests: stakeRequests } };\n break;\n case \"direct_mint\":\n action = { DirectMint: { requests: directRequests } };\n break;\n case \"direct_burn\":\n action = { DirectBurn: { requests: directRequests } };\n break;\n default:\n throw new Error(\"No orders to process\");\n }\n\n const payload: SignedPayload_ProtocolRedeemerV1 = {\n action,\n nonce,\n };\n const serialized = Data.serialize(\n this.signing.SignedPayload_ProtocolRedeemerV1,\n payload,\n );\n const signedPayload = serialized.toCbor().toString();\n const payloadHash = blake2b_256(HexBlob(signedPayload));\n\n return { signedPayload, payloadHash };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Execute Orders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to execute orders.\n *\n * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake,\n * direct_mint, direct_burn.\n */\n async buildExecuteOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n signedPayload: string;\n signatures: Tuple_VerificationKey_COSESign1[];\n /**\n * Per-order fees retained by the protocol, keyed by `${txHash}#${index}`,\n * in the action's output unit (USDr for Mint, reserve for Burn, sUSDr for\n * Stake, USDr for Unstake). Computed and locked by the Go backend at the\n * order's index time. Missing entries default to 0 (no fee retained).\n * The SDK never recomputes a fee — it just subtracts this absolute value\n * from each user's destination output.\n */\n fees?: Map;\n }): Promise {\n const {\n orderInputs,\n signedPayload: signedPayloadCbor,\n signatures,\n fees,\n } = params;\n\n // Deserialize CBOR hex to object for internal use\n const signedPayload = parse(\n this.signing.SignedPayload_ProtocolRedeemerV1,\n PlutusData.fromCbor(HexBlob(signedPayloadCbor)),\n ) as SignedPayload_ProtocolRedeemerV1;\n\n // 1. Sort and resolve order UTxOs\n const sortedOrderInputs = sortOrderInputs(orderInputs);\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs);\n\n // 2. Parse orders and validate same type. The fees map (if any) stamps\n // each IOrderInfo with the locked fee that buildXxxExecute will subtract.\n const orderInfos = this.parseOrderInfos(orderUtxos, fees);\n const actionType = orderInfos[0]!.actionType;\n\n // 3. Get protocol settings\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const settings = this.settingsConfig(parsedProxyDatum.settings);\n\n // 4. Determine what we need\n const needsTreasury = [\n \"mint\",\n \"burn\",\n \"withdraw\",\n \"deposit\",\n \"direct_mint\",\n \"direct_burn\",\n ].includes(actionType);\n const needsVault = [\"stake\", \"unstake\", \"deposit\"].includes(actionType);\n\n // 5. Get script reference inputs\n // V1.0 requires the orchestrator and the relevant sub-validator script\n const isMintAction = [\n \"mint\",\n \"burn\",\n \"direct_mint\",\n \"direct_burn\",\n ].includes(actionType);\n const isStakeAction = [\"stake\", \"unstake\"].includes(actionType);\n\n const scriptHashesNeeded: Record = {\n protocol: this.protocolScriptHash,\n order: this.orderScriptHash,\n };\n if (isMintAction) {\n scriptHashesNeeded.protocolMint = this.protocolMintScriptHash;\n } else if (isStakeAction) {\n scriptHashesNeeded.protocolStake = this.protocolStakeScriptHash;\n } else {\n scriptHashesNeeded.protocolManagement = this.protocolManagementScriptHash;\n }\n if (needsTreasury) {\n scriptHashesNeeded.treasury = this.treasuryScriptHash;\n }\n if (needsVault) {\n scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash;\n }\n const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded);\n\n // 6. Fetch treasury and vault if needed\n let treasuryUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedTreasuryDatum: V0_1TreasuryDatum | undefined;\n if (needsTreasury) {\n const treasuryResult = await this.getTreasuryDatum();\n treasuryUtxo = treasuryResult.treasuryUtxo;\n parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum;\n }\n\n let vaultUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedVaultDatum: TVaultDatum | undefined;\n if (needsVault) {\n const vaultResult = await this.getVaultDatum();\n vaultUtxo = vaultResult.vaultUtxo;\n parsedVaultDatum = vaultResult.parsedVaultDatum;\n }\n\n // 7. Gather wallet UTxOs so we can include them in index calculations.\n const walletUtxos = await this.blaze.wallet.getUnspentOutputs();\n const excludedInputIds = new Set();\n const utxoKey = (inp: Core.TransactionInput) =>\n `${inp.transactionId().toString()}#${inp.index().toString()}`;\n // Exclude script inputs (order, treasury, vault)\n for (const orderInfo of orderInfos) {\n excludedInputIds.add(utxoKey(orderInfo.utxo.input()));\n }\n if (treasuryUtxo) {\n excludedInputIds.add(utxoKey(treasuryUtxo.input()));\n }\n if (vaultUtxo) {\n excludedInputIds.add(utxoKey(vaultUtxo.input()));\n }\n // Exclude reference inputs (must be disjoint from regular inputs)\n excludedInputIds.add(utxoKey(proxyUtxo.input()));\n for (const refUtxo of Object.values(refInputs)) {\n if (refUtxo) {\n excludedInputIds.add(utxoKey(refUtxo.input()));\n }\n }\n const feeUtxos = walletUtxos.filter(\n (utxo) => !excludedInputIds.has(utxoKey(utxo.input())),\n );\n\n // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex).\n const allInputRefs: Core.TransactionInput[] = orderInfos.map((o) =>\n o.utxo.input(),\n );\n if (treasuryUtxo) {\n allInputRefs.push(treasuryUtxo.input());\n }\n if (vaultUtxo) {\n allInputRefs.push(vaultUtxo.input());\n }\n for (const feeUtxo of feeUtxos) {\n allInputRefs.push(feeUtxo.input());\n }\n\n const sortedAllInputRefs = [...allInputRefs].sort((a, b) => {\n const txA = a.transactionId().toString();\n const txB = b.transactionId().toString();\n if (txA < txB) return -1;\n if (txA > txB) return 1;\n return Number(a.index()) - Number(b.index());\n });\n\n const findInputIdx = (input: Core.TransactionInput): bigint => {\n const idx = sortedAllInputRefs.findIndex(\n (r) =>\n r.transactionId().toString() === input.transactionId().toString() &&\n r.index() === input.index(),\n );\n return BigInt(idx);\n };\n\n const treasuryInputIdx = treasuryUtxo\n ? findInputIdx(treasuryUtxo.input())\n : 0n;\n const vaultInputIdx = vaultUtxo\n ? findInputIdx(vaultUtxo.input())\n : undefined;\n\n // 8a. Correlate order inputs to signed request indices via origin fields.\n // When all orders are present this produces the same identity mapping as before.\n // When a subset is passed (partial execution), it maps each input to the\n // correct request index in the signed payload.\n const signedRequests = getRequestsFromAction(signedPayload.action);\n const originToRequestIdx = new Map();\n for (let i = 0; i < signedRequests.length; i++) {\n const o = signedRequests[i]!.origin;\n originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i);\n }\n\n const inputToRequests: bigint[] = [];\n const requestToOutputs: bigint[] = [];\n for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) {\n const input = orderInfos[outputIdx]!.utxo.input();\n const key = `${input.transactionId()}#${input.index()}`;\n const requestIdx = originToRequestIdx.get(key);\n if (requestIdx === undefined) {\n throw new Error(`Order input ${key} not found in signed payload`);\n }\n inputToRequests.push(BigInt(requestIdx));\n requestToOutputs.push(BigInt(outputIdx));\n }\n\n // 9. Build outputs and compute output indices\n const numDestOutputs = orderInfos.length;\n\n // For deposit with positive yield, the yield pot output is inserted after destinations\n let numExtraOutputs = 0;\n if (actionType === \"deposit\") {\n const totalYield = orderInfos.reduce(\n (sum, o) => sum + (o.yield ?? 0n),\n 0n,\n );\n if (totalYield > 0n) {\n const vaultValue = vaultUtxo!.output().amount();\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum!.circulating_supply;\n // Use the signed split (rc1 echoes alpha; v1_0 recomputes) so pot-output\n // existence/indexing agrees with buildDepositExecute and the validator.\n const { unstakedYieldShare } = this.resolveDepositYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n signedPayload.action,\n );\n if (unstakedYieldShare > 0n) {\n numExtraOutputs = 1;\n }\n }\n }\n\n // For unstake, add yield pot output if forfeit is non-zero.\n if (actionType === \"unstake\") {\n const totalForfeit = orderInfos.reduce(\n (sum, o) => sum + (o.forfeit ?? 0n),\n 0n,\n );\n if (totalForfeit > 0n) {\n numExtraOutputs = 1;\n }\n }\n\n const treasuryOutputIdx = needsTreasury\n ? BigInt(numDestOutputs + numExtraOutputs)\n : 0n;\n const vaultOutputIdx = needsVault\n ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0))\n : undefined;\n\n // 10. Build ExtraProtocolRedeemer\n const extra: ExtraProtocolRedeemerV1 = {\n request_to_outputs: requestToOutputs,\n input_to_requests: inputToRequests,\n treasury_input_idx: treasuryInputIdx,\n treasury_output_idx: treasuryOutputIdx,\n vault_input_idx: vaultInputIdx,\n vault_output_idx: vaultOutputIdx,\n };\n\n // 11. Build SignedRedeemer (versions may wrap it in a dispatch enum)\n const serializedSignedRedeemer =\n this.serializeOrchestratorWithdrawalRedeemer({\n extra,\n payload: signedPayload,\n signatures,\n });\n\n const executeRedeemer = Data.serialize(\n this.schemas.OrderRedeemerV1,\n \"Execute\",\n );\n\n // 12. Build the transaction\n const tx = this.newOrderTransaction();\n\n // Add order inputs with Execute redeemer\n for (const orderInfo of orderInfos) {\n tx.addInput(orderInfo.utxo, executeRedeemer);\n }\n\n // Add wallet fee inputs explicitly\n for (const feeUtxo of feeUtxos) {\n tx.addInput(feeUtxo);\n }\n\n // Add reference inputs\n tx.addReferenceInput(refInputs.protocol!);\n tx.addReferenceInput(refInputs.order!);\n tx.addReferenceInput(proxyUtxo);\n // V1.0 sub-validator reference inputs\n if (refInputs.protocolMint) {\n tx.addReferenceInput(refInputs.protocolMint);\n }\n if (refInputs.protocolStake) {\n tx.addReferenceInput(refInputs.protocolStake);\n }\n if (refInputs.protocolManagement) {\n tx.addReferenceInput(refInputs.protocolManagement);\n }\n if (refInputs.treasury) {\n tx.addReferenceInput(refInputs.treasury);\n }\n if (refInputs.stakingVault) {\n tx.addReferenceInput(refInputs.stakingVault);\n }\n\n // Add orchestrator withdrawal with signed redeemer\n const orchestratorRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: this.protocolScriptHash,\n },\n this.network,\n );\n tx.addWithdrawal(orchestratorRewardAccount, 0n, serializedSignedRedeemer);\n\n // Determine which sub-validator to use based on action type\n const subValidatorHash =\n actionType === \"mint\" ||\n actionType === \"burn\" ||\n actionType === \"direct_mint\" ||\n actionType === \"direct_burn\"\n ? this.protocolMintScriptHash\n : actionType === \"stake\" || actionType === \"unstake\"\n ? this.protocolStakeScriptHash\n : this.protocolManagementScriptHash; // deposit, withdraw\n\n // Add sub-validator withdrawal with void redeemer\n const subValidatorRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: subValidatorHash,\n },\n this.network,\n );\n const voidRedeemer = Data.Void();\n tx.addWithdrawal(subValidatorRewardAccount, 0n, voidRedeemer);\n\n // Build per-action-type outputs, minting, and state updates\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n\n switch (actionType) {\n case \"mint\":\n this.buildMintExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"burn\":\n this.buildBurnExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"withdraw\":\n this.buildWithdrawExecute(\n tx,\n orderInfos,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"deposit\":\n this.buildDepositExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n vaultUtxo!,\n parsedVaultDatum!,\n settings,\n signedPayload.action,\n );\n break;\n case \"stake\":\n this.buildStakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n );\n break;\n case \"unstake\":\n this.buildUnstakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n settings,\n );\n break;\n case \"direct_mint\":\n this.buildDirectMintExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n );\n break;\n case \"direct_burn\":\n this.buildDirectBurnExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n );\n break;\n }\n\n // Provide the mint proxy script for minting\n tx.provideScript(this.mintProxyScript);\n\n await this.applyExecutionValidityBounds(tx, {\n actionType,\n vaultUtxo,\n parsedVaultDatum,\n });\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Per-Action Execute Builders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint: reserve goes to treasury, USDr minted to destinations.\n *\n * The per-order fee (in USDr, locked at index time) is retained by the\n * treasury: the user receives `amount − fee` USDr while `amount` is still\n * minted, so the protocol pockets the difference via the treasury balance.\n */\n protected buildMintExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: TV1SettingsConfig,\n ): void {\n // The audited mint contract enforces `mint_amount == total_delivered`\n // and `circulating_supply` increases by `total_delivered` (cf.\n // utilities.ak::maintain_treasury_mint). So we mint and credit the\n // treasury for what users actually receive — `amount − fee` per order —\n // while the reserve consumed per request stays based on the full\n // signed `amount` (the user paid in reserve for the whole `amount`,\n // even though they receive less; the protocol keeps the spread in\n // reserve worth — this is the locked fee).\n const totalDelivered = orderInfos.reduce(\n (sum, o) => sum + (o.amount - o.fee),\n 0n,\n );\n\n // Destination outputs: send `amount − fee` USDr to each destination.\n for (const orderInfo of orderInfos) {\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserveCeil(orderInfo.amount, ra);\n const userAmount = orderInfo.amount - orderInfo.fee;\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [[reserveAssetId, reserveAmount]],\n [[stablecoinAssetId, userAmount]],\n ),\n );\n }\n\n // Mint USDr — exactly what was delivered (contract invariant).\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalDelivered]]),\n Data.Void(),\n );\n\n // Reserve deltas: based on the full signed amounts (unchanged by fees).\n const reserveDeltas = computeReserveDeltas(orderInfos, settings);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalDelivered,\n );\n }\n\n /**\n * Burn: USDr burned, reserve sent to destinations.\n *\n * The audited contract decreases circulating_supply by the FULL signed\n * `amount` (the user burns the whole `amount` of USDr) and the reserve\n * outflow per asset equals what the user actually receives. The locked\n * fee (in reserve units) stays in the treasury — by paying out\n * `usdr_to_reserve(amount, ra) − fee` instead of the full natural\n * amount, the protocol pockets the difference.\n */\n protected buildBurnExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: TV1SettingsConfig,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send `usdr_to_reserve(amount, ra) − fee` reserve\n // to each destination. Track the actually-delivered amount per reserve\n // asset so we can subtract the fee from the treasury reserve outflow.\n const deliveredByAsset = new Map();\n for (const orderInfo of orderInfos) {\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const naturalReserve = usdrToReserve(-orderInfo.amount, ra);\n const reserveAmount = naturalReserve - orderInfo.fee;\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [[stablecoinAssetId, -orderInfo.amount]],\n [[reserveAssetId, reserveAmount]],\n ),\n );\n const assetKey = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1];\n deliveredByAsset.set(\n assetKey,\n (deliveredByAsset.get(assetKey) ?? 0n) + reserveAmount,\n );\n }\n\n // Burn USDr — full signed amount per request (totalAmount is negative).\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Reserve deltas: out by what we actually delivered (negated). The\n // protocol keeps the per-order fee inside the treasury balance.\n const reserveDeltas = new Map();\n for (const [assetKey, delivered] of deliveredByAsset.entries()) {\n reserveDeltas.set(assetKey, -delivered);\n }\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalAmount,\n );\n }\n\n /**\n * Withdraw: reserve sent to destinations, no mint/burn.\n */\n protected buildWithdrawExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: TV1SettingsConfig,\n ): void {\n // Destination outputs: send reserve tokens to each destination\n for (const orderInfo of orderInfos) {\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserve(orderInfo.amount, ra);\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [],\n [[reserveAssetId, reserveAmount]],\n ),\n );\n }\n\n // Update treasury: reserve decreases, no circulating_supply change\n const reserveDeltas = computeReserveDeltas(orderInfos, settings, true);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n 0n,\n );\n }\n\n /**\n * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot.\n */\n protected buildDepositExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: TVaultDatum,\n settings: TV1SettingsConfig,\n action: ProtocolRedeemerV1,\n ): void {\n const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n);\n\n // Calculate yield split. rc1 echoes the COSE-signed alpha; v1_0 recomputes\n // from live state. Must NOT re-derive independently from vault/treasury —\n // the validator checks the split against the signed action.\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n\n const { stakedYieldShare, unstakedYieldShare } =\n this.resolveDepositYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n action,\n );\n\n let remainingOrderUSDrToBurn =\n unstakedYieldShare < 0n ? -unstakedYieldShare : 0n;\n\n // Destination outputs: return any order surplus after protocol consumption.\n for (const orderInfo of orderInfos) {\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const yieldValue = orderInfo.yield ?? 0n;\n const usdrBacking =\n yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount;\n const reserveAmount = usdrToReserve(usdrBacking, ra);\n const consumedAssets: Array<[Core.AssetId, bigint]> = [\n [reserveAssetId, reserveAmount],\n ];\n\n if (remainingOrderUSDrToBurn > 0n) {\n const orderUSDr =\n orderInfo.utxo\n .output()\n .amount()\n .multiasset()\n ?.get(stablecoinAssetId) ?? 0n;\n const consumedUSDr =\n orderUSDr < remainingOrderUSDrToBurn\n ? orderUSDr\n : remainingOrderUSDrToBurn;\n if (consumedUSDr > 0n) {\n consumedAssets.push([stablecoinAssetId, consumedUSDr]);\n remainingOrderUSDrToBurn -= consumedUSDr;\n }\n }\n\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(orderInfo, consumedAssets),\n );\n }\n\n if (totalYield > 0n) {\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n\n if (unstakedYieldShare > 0n) {\n // The yield pot is a script address in production (WTB-1172), so\n // build the output directly with NoDatum.\n addDestinationOutput(\n tx,\n this.network,\n { address: settings.unstaked_yield_pot, datum: \"NoDatum\" },\n makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare]),\n );\n }\n } else if (totalYield < 0n) {\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n }\n\n // Update treasury\n const reserveDeltas = new Map();\n for (const orderInfo of orderInfos) {\n const assetId = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1];\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const yieldValue = orderInfo.yield ?? 0n;\n\n const usdrBacking =\n yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount;\n\n const reserveAmount = usdrToReserve(usdrBacking, ra);\n reserveDeltas.set(\n assetId,\n (reserveDeltas.get(assetId) ?? 0n) + reserveAmount,\n );\n }\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalYield,\n );\n\n // Update vault. Datum construction is delegated so versions with a\n // yield-diffusion window (v1_1_rc1) can set it from the batch's requests;\n // the v1_0 default just moves the vault USDr by the staked share.\n this.updateDepositVaultOutput(tx, vaultUtxo, parsedVaultDatum, {\n stakedYieldShare,\n totalYield,\n orderInfos,\n });\n }\n\n /**\n * Version hook: lock the post-deposit vault output. v1_0 / v1_0_rc1 keep the\n * one-field datum and simply add `stakedYieldShare` USDr to the vault.\n * Versions with time-diffused yield override this to roll the staked share\n * into the diffusion window (`validate_deposit_diffusion` in deposit.ak).\n */\n protected updateDepositVaultOutput(\n tx: TxBuilder,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: TVaultDatum,\n ctx: {\n stakedYieldShare: bigint;\n totalYield: bigint;\n orderInfos: IOrderInfo[];\n },\n ): void {\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n 0n,\n ctx.stakedYieldShare,\n );\n }\n\n /**\n * Stake: USDr locked in vault, sUSDr minted to destinations.\n *\n * Stake is not fee-filtered (no protocol fee retained on stake), so the\n * vault receives the full `amount` USDr and mints sUSDr at the natural\n * rate.\n */\n protected buildStakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: TVaultDatum,\n ): void {\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n // Rate is quoted against settled backing (v1_0: full balance; v1_1_rc1:\n // balance minus not-yet-diffused pending yield).\n const settledBacking = this.settledVaultBacking(\n parsedVaultDatum,\n vaultUSDr,\n );\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n let totalUSDrToVault = 0n;\n let totalSUSDrMinted = 0n;\n\n for (const orderInfo of orderInfos) {\n const usDrToVault = orderInfo.amount;\n totalUSDrToVault += usDrToVault;\n\n let sUSDrAmount: bigint;\n if (circulatingSUSDr === 0n || settledBacking === 0n) {\n // Bootstrap rate is 1:1 (cf. stake.ak).\n sUSDrAmount = usDrToVault;\n } else {\n sUSDrAmount = (usDrToVault * circulatingSUSDr) / settledBacking;\n }\n totalSUSDrMinted += sUSDrAmount;\n\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [[stablecoinAssetId, usDrToVault]],\n [[sUSDrAssetId, sUSDrAmount]],\n ),\n );\n }\n\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]),\n Data.Void(),\n );\n\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n totalSUSDrMinted,\n totalUSDrToVault,\n );\n }\n\n /**\n * Unstake: sUSDr burned, USDr sent to user's destination address.\n * V1_0: Supports forfeit parameter - forfeited USDr goes to yield pot.\n */\n protected buildUnstakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: TVaultDatum,\n settings: TV1SettingsConfig,\n ): void {\n const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n // Entitlement is quoted against settled backing (v1_0: full balance;\n // v1_1_rc1: balance minus not-yet-diffused pending yield).\n const settledBacking = this.settledVaultBacking(\n parsedVaultDatum,\n vaultUSDr,\n );\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n if (circulatingSUSDr === 0n) {\n throw new Error(\"Cannot unstake: no sUSDr in circulation\");\n }\n\n // The user receives `entitled − forfeit` USDr. Forfeit goes to the\n // unstaked yield pot; the vault decreases by the full natural entitlement\n // for each order. (Unstake is not fee-filtered.)\n let totalUSDrLeavingVault = 0n;\n let totalForfeit = 0n;\n\n for (const orderInfo of orderInfos) {\n const uSDrEntitled =\n (orderInfo.amount * settledBacking) / circulatingSUSDr;\n const forfeit = orderInfo.forfeit ?? 0n;\n const uSDrAmount = uSDrEntitled - forfeit;\n\n totalUSDrLeavingVault += uSDrEntitled;\n totalForfeit += forfeit;\n\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [[sUSDrAssetId, orderInfo.amount]],\n [[stablecoinAssetId, uSDrAmount]],\n ),\n );\n }\n\n // Send forfeited USDr to yield pot if any\n const totalYieldPot = totalForfeit;\n if (totalYieldPot > 0n) {\n // Script pot in production (WTB-1172) — see buildDepositExecute.\n addDestinationOutput(\n tx,\n this.network,\n { address: settings.unstaked_yield_pot, datum: \"NoDatum\" },\n makeValue(MIN_LOVELACE, [stablecoinAssetId, totalYieldPot]),\n );\n }\n\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]),\n Data.Void(),\n );\n\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n -totalSUSDrBurned,\n -totalUSDrLeavingVault,\n );\n }\n\n /**\n * DirectMint: Mint USDr without reserve asset flow.\n * USDr is minted to destinations, treasury circulating_supply increases.\n * NO reserve asset changes.\n */\n protected buildDirectMintExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send USDr to each destination\n for (const orderInfo of orderInfos) {\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [],\n [[stablecoinAssetId, orderInfo.amount]],\n ),\n );\n }\n\n // Mint USDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Update treasury: circulating_supply increases, NO reserve changes\n this.updateTreasuryOutputNoReserve(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n totalAmount,\n );\n }\n\n /**\n * DirectBurn: Burn USDr without reserve asset flow.\n * USDr is burned, treasury circulating_supply decreases.\n * NO reserve asset changes, NO destination outputs (fiat sent off-chain).\n */\n protected buildDirectBurnExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n ): void {\n // totalAmount is negative for burns (from classifyOrderAction)\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Fiat is sent off-chain. On-chain, return the order value minus the\n // burned USDr to the destination.\n for (const orderInfo of orderInfos) {\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(orderInfo, [\n [stablecoinAssetId, -orderInfo.amount],\n ]),\n );\n }\n\n // Burn USDr (totalAmount is negative)\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Update treasury: circulating_supply decreases, NO reserve changes\n this.updateTreasuryOutputNoReserve(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n totalAmount,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Cancel Orders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to cancel orders.\n */\n async buildCancelOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n destination?: Core.Address;\n availableSigners?: Set;\n versionHint?: TProtocolVersion; // version of the orders to cancel. Optional, only to ensure correct datum parsing.\n }): Promise {\n const { orderInputs, destination, availableSigners, versionHint } = params;\n\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(orderInputs);\n\n if (orderUtxos.length === 0) {\n throw new Error(\"No orders to cancel\");\n }\n\n const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput\n ? new Map([\n [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput],\n ])\n : undefined;\n\n const orderRefInputs = await resolveOrderReferenceInputs(\n this.blaze,\n orderUtxos,\n cachedOrderRefs,\n this.scriptDeploymentAddress,\n );\n\n const cancelRedeemer = Data.serialize(\n this.schemas.OrderRedeemerV1,\n \"Cancel\",\n );\n const destAddress =\n destination ?? (await this.blaze.wallet.getChangeAddress());\n\n const tx = this.newOrderTransaction();\n\n for (const orderRefInput of orderRefInputs.values()) {\n tx.addReferenceInput(orderRefInput);\n }\n\n // cache current version of order script reference input\n const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash);\n if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) {\n this.cachedReferenceInputs.orderRefInput = currentOrderRefInput;\n }\n\n const requiredSigners = new Set();\n\n for (const utxo of orderUtxos) {\n const owner = await parseCancelOwner(utxo, versionHint);\n for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) {\n requiredSigners.add(keyHash);\n }\n\n tx.addInput(utxo, cancelRedeemer);\n const outputValue = utxo.output().amount();\n addDirectOutput(tx, destAddress, outputValue);\n }\n\n const effectiveSigners = availableSigners\n ? new Set([...requiredSigners].filter((k) => availableSigners.has(k)))\n : requiredSigners;\n\n for (const keyHash of effectiveSigners) {\n tx.addRequiredSigner(Ed25519KeyHashHex(keyHash));\n }\n\n return tx;\n }\n\n /**\n * Build a transaction to recover funds from invalidated orders.\n * Only works when the protocol has been upgraded and the order validator\n * no longer matches the current protocol logic.\n *\n * IMPORTANT: Only works for orders with simple Signature owners.\n *\n * Output-at-same-index constraint: Each output must be at the same\n * transaction index as its corresponding input.\n */\n async buildInvalidatedOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n }): Promise {\n const { orderInputs } = params;\n\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(orderInputs);\n\n if (orderUtxos.length === 0) {\n throw new Error(\"No orders to invalidate\");\n }\n\n // Resolve references from the validators that actually hold the supplied\n // orders. A current SDK instance may be recovering same-schema orders left\n // at a superseded validator, so its own orderScriptHash is not necessarily\n // the script needed to spend these inputs.\n const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput\n ? new Map([\n [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput],\n ])\n : undefined;\n const orderRefInputs = await resolveOrderReferenceInputs(\n this.blaze,\n orderUtxos,\n cachedOrderRefs,\n this.scriptDeploymentAddress,\n );\n\n // The proxy UTxO is always required as a reference input. If the live\n // proxy datum no longer matches this SDK's schema, skip the client-side\n // upgrade check and rely on the validator's on-chain check instead.\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n try {\n const parsedProxyDatum = parse(this.schemas.ProxyDatumV1, proxyDatum);\n const registry = this.settingsRegistry(parsedProxyDatum.settings);\n const isProtocolUpgraded =\n parsedProxyDatum.logic !== this.protocolScriptHash;\n const hasActiveOrder = [...orderRefInputs.keys()].some(\n (orderScriptHash) => orderScriptHash === registry.order,\n );\n\n if (hasActiveOrder && !isProtocolUpgraded) {\n throw new Error(\n \"Cannot use Invalidated redeemer: protocol has not been upgraded\",\n );\n }\n } catch (err) {\n if (\n err instanceof Error &&\n err.message ===\n \"Cannot use Invalidated redeemer: protocol has not been upgraded\"\n ) {\n throw err;\n }\n }\n\n const invalidatedRedeemer = Data.serialize(\n this.schemas.OrderRedeemerV1,\n \"Invalidated\",\n );\n\n // The order validator's Invalidated branch enforces\n // `outputs[index_of(self_input)] == owner_address`. The input index\n // is computed against the *full* canonical input sort, including any\n // wallet fee inputs. To make the alignment deterministic, pre-select\n // a single wallet UTxO to act as the fee input, build the canonical\n // sort across [orders + fee UTxO] up front, and lay outputs at\n // matching positions: owner payouts at order indices, a wallet\n // filler at the fee UTxO's index. Modeled on buildExecuteOrdersTx.\n const walletUtxos = await this.blaze.wallet.getUnspentOutputs();\n const walletAddress = await this.blaze.wallet.getChangeAddress();\n const utxoKey = (inp: Core.TransactionInput) =>\n `${inp.transactionId().toString()}#${inp.index().toString()}`;\n const excludedInputIds = new Set([\n utxoKey(proxyUtxo.input()),\n ...[...orderRefInputs.values()].map((refInput) =>\n utxoKey(refInput.input()),\n ),\n ...orderUtxos.map((u) => utxoKey(u.input())),\n ]);\n // 5 ADA buffer comfortably covers tx fees for any realistic invalidate\n // batch (1-20 inputs) plus min-UTxO for the change output Blaze appends.\n // Prefer an ADA-only input, but safely support a token-bearing one when\n // its explicit filler output still satisfies the ledger's min-ADA rule.\n const FEE_BUFFER = 5_000_000n;\n const feeCandidates = walletUtxos\n .filter((u) => !excludedInputIds.has(utxoKey(u.input())))\n .sort((a, b) => {\n const aHasAssets = (a.output().amount().multiasset()?.size ?? 0) > 0;\n const bHasAssets = (b.output().amount().multiasset()?.size ?? 0) > 0;\n return Number(aHasAssets) - Number(bHasAssets);\n });\n const feeUtxo = feeCandidates.find((u) => {\n const inputValue = u.output().amount();\n if (inputValue.coin() < FEE_BUFFER) return false;\n\n const fillerValue = new Core.Value(\n inputValue.coin() - FEE_BUFFER,\n inputValue.multiasset(),\n );\n const fillerOutput = new Core.TransactionOutput(\n walletAddress,\n fillerValue,\n );\n return (\n fillerValue.coin() >=\n calculateMinAda(fillerOutput, this.blaze.params.coinsPerUtxoByte)\n );\n });\n if (!feeUtxo) {\n throw new Error(\n \"buildInvalidatedOrdersTx: no wallet UTxO can cover fees while retaining its minimum ADA\",\n );\n }\n\n type TSortedItem =\n | {\n kind: \"order\";\n utxo: Core.TransactionUnspentOutput;\n ownerKeyHash: string;\n }\n | { kind: \"fee\"; utxo: Core.TransactionUnspentOutput };\n\n const items: TSortedItem[] = orderUtxos.map((utxo) => {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1;\n if (!(\"Signature\" in datum.owner)) {\n throw new Error(\n \"Invalidated redeemer only supports simple Signature owners\",\n );\n }\n return {\n kind: \"order\" as const,\n utxo,\n ownerKeyHash: datum.owner.Signature.key_hash,\n };\n });\n items.push({ kind: \"fee\" as const, utxo: feeUtxo });\n items.sort((a, b) => {\n const txA = a.utxo.input().transactionId().toString();\n const txB = b.utxo.input().transactionId().toString();\n if (txA < txB) return -1;\n if (txA > txB) return 1;\n return Number(a.utxo.input().index()) - Number(b.utxo.input().index());\n });\n\n const tx = this.newOrderTransaction();\n for (const orderRefInput of orderRefInputs.values()) {\n tx.addReferenceInput(orderRefInput);\n }\n tx.addReferenceInput(proxyUtxo);\n\n for (const item of items) {\n if (item.kind === \"order\") {\n const ownerCredential = Core.Credential.fromCore({\n type: Core.CredentialType.KeyHash,\n hash: Core.Hash28ByteBase16(item.ownerKeyHash),\n });\n const ownerAddress = addressFromCredentials(\n this.network,\n ownerCredential,\n );\n tx.addInput(item.utxo, invalidatedRedeemer);\n // Owner gets back the order's full value at the matching output\n // index. Per-input check `output_ada >= input_ada - tx.fee` holds\n // trivially because output == input here; the tx fee is absorbed\n // by the filler+change pair coming out of the wallet fee input.\n addDirectOutput(tx, ownerAddress, item.utxo.output().amount());\n } else {\n tx.addInput(item.utxo);\n // Wallet filler at the fee UTxO's canonical index. Sends value\n // back to the wallet minus FEE_BUFFER, which Blaze then splits\n // into the tx fee and an automatic change output (appended after\n // all explicit outputs, beyond any script-input index — so no\n // validator ever reads it).\n const inputValue = item.utxo.output().amount();\n const fillerValue = new Core.Value(\n inputValue.coin() - FEE_BUFFER,\n inputValue.multiasset(),\n );\n addDirectOutput(tx, walletAddress, fillerValue);\n }\n }\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Protected Helpers\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Parse order UTxOs into IOrderInfo objects and validate they are all the\n * same type. The optional `fees` map (keyed by `${txHash}#${outputIndex}`)\n * stamps each order with its locked fee in the action's output unit.\n * Missing entries default to 0 (no fee retained).\n */\n protected parseOrderInfos(\n orderUtxos: Core.TransactionUnspentOutput[],\n fees?: Map,\n ): IOrderInfo[] {\n const orderInfos: IOrderInfo[] = [];\n let expectedActionType: TOrderActionType | null = null;\n\n for (const utxo of orderUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1;\n const classified = this.classifyOrderAction(datum);\n\n if (expectedActionType === null) {\n expectedActionType = classified.actionType;\n } else if (expectedActionType !== classified.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n const input = utxo.input();\n const key = `${input.transactionId().toString()}#${input.index().toString()}`;\n const fee = fees?.get(key) ?? 0n;\n\n orderInfos.push({\n utxo,\n datum,\n actionType: classified.actionType,\n amount: classified.amount,\n yield: classified.yield,\n forfeit: classified.forfeit,\n minReceived: classified.minReceived,\n reserveAsset: classified.reserveAsset,\n fee,\n });\n }\n\n if (orderInfos.length === 0) {\n throw new Error(\"No orders to execute\");\n }\n\n return orderInfos;\n }\n\n /**\n * Full executability screen for one open order (WTB-1764): the datum\n * predicates plus the two value-dependent aborts (input funding, unsatisfiable\n * `min_received`). Every consumer that decides whether an order may join a\n * batch should call this rather than `screenOrderAction` alone — the datum-only\n * screen cannot see an underfunded UTxO, which is the cheapest batch-killer.\n *\n * Reads settings for the reserve multiplier on mint/burn. `getParsedProxyDatum`\n * memoises, so the per-order cost after the first call is local arithmetic —\n * safe for the approvals cron's whole-address sweep.\n */\n async screenOrderForExecution(\n utxo: Core.TransactionUnspentOutput,\n action: IClassifiedOrderAction,\n ): Promise {\n const datumVerdict = screenOrderAction(action);\n if (!datumVerdict.ok) {\n return datumVerdict;\n }\n const settings = await this.getValidatedScreeningSettings();\n return screenOrderUtxoFacts(\n action,\n await this.deriveOrderUtxoFacts(utxo, action, settings),\n );\n }\n\n /**\n * Derive the value-dependent facts {@link screenOrderUtxoFacts} needs. Mirrors\n * the per-action consumed asset and ceiling the validators use; see that\n * function's doc comment for the `.ak` line references.\n */\n protected async deriveOrderUtxoFacts(\n utxo: Core.TransactionUnspentOutput,\n action: IClassifiedOrderAction,\n settings: TV1SettingsConfig,\n ): Promise {\n const multiasset = utxo.output().amount().multiasset();\n const quantityOf = (assetId: Core.AssetId): bigint =>\n multiasset?.get(assetId) ?? 0n;\n // These are deployment settings, not datum fields. Let invalid trusted\n // configuration and provider failures propagate to the caller instead of\n // hiding an operational outage as a poisoned order.\n const usdrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n // Only deterministic datum-derived errors are a rejection: an unknown\n // reserve asset or an invalid asset id carried by the order datum.\n try {\n return this.deriveOrderUtxoFactsUnsafe(\n action,\n settings,\n quantityOf,\n usdrAssetId,\n );\n } catch (error) {\n return {\n consumedRequired: 0n,\n consumedLocked: 0n,\n unresolvable: error instanceof Error ? error.message : String(error),\n };\n }\n }\n\n private deriveOrderUtxoFactsUnsafe(\n action: IClassifiedOrderAction,\n settings: TV1SettingsConfig,\n quantityOf: (assetId: Core.AssetId) => bigint,\n usdrAssetId: Core.AssetId,\n ): IOrderUtxoFacts {\n switch (action.actionType) {\n case \"stake\":\n return {\n consumedRequired: action.amount,\n consumedLocked: quantityOf(usdrAssetId),\n };\n case \"unstake\":\n return {\n consumedRequired: action.amount,\n consumedLocked: quantityOf(\n Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex),\n ),\n };\n case \"mint\": {\n if (!action.reserveAsset) {\n return { consumedRequired: 0n, consumedLocked: 0n };\n }\n const ra = findReserveAsset(settings, action.reserveAsset);\n return {\n consumedRequired: usdrToReserveCeil(action.amount, ra),\n consumedLocked: quantityOf(\n Core.AssetId(action.reserveAsset[0] + action.reserveAsset[1]),\n ),\n // mint.ak:140 passes request.amount as max_delivered.\n maxDelivered: action.amount,\n };\n }\n case \"burn\": {\n // classifyOrderAction negates ORedeem.amount; the validator compares the\n // raw datum amount against the locked USDr.\n const rawAmount = -action.amount;\n if (!action.reserveAsset) {\n return {\n consumedRequired: rawAmount,\n consumedLocked: quantityOf(usdrAssetId),\n };\n }\n const ra = findReserveAsset(settings, action.reserveAsset);\n return {\n consumedRequired: rawAmount,\n consumedLocked: quantityOf(usdrAssetId),\n // burn.ak:136 passes usdr_to_reserve(|amount|, ra) as max_delivered.\n maxDelivered: usdrToReserve(rawAmount, ra),\n };\n }\n case \"direct_burn\":\n // direct_burn DOES have a per-order funding predicate\n // (`v1_0/direct_burn.ak:50`), unlike direct_mint. Same sign flip as burn.\n // Unreachable from the approvals cron, which routes direct actions\n // out-of-scope, but getSignedPayloadFromOrderInputs builds direct-burn\n // batches for the treasury-admin flow.\n return {\n consumedRequired: -action.amount,\n consumedLocked: quantityOf(usdrAssetId),\n };\n case \"deposit\": {\n if (!action.reserveAsset) {\n return { consumedRequired: 0n, consumedLocked: 0n };\n }\n const ra = findReserveAsset(settings, action.reserveAsset);\n const usdrBacking =\n (action.yield ?? 0n) >= 0n\n ? action.amount + (action.yield ?? 0n)\n : action.amount;\n return {\n consumedRequired: usdrToReserve(usdrBacking, ra),\n consumedLocked: quantityOf(\n Core.AssetId(action.reserveAsset[0] + action.reserveAsset[1]),\n ),\n };\n }\n case \"withdraw\":\n if (action.reserveAsset) {\n // Withdrawal consumes treasury funds, but the order's asset must be\n // registered or buildWithdrawExecute will fail after signing.\n findReserveAsset(settings, action.reserveAsset);\n }\n return { consumedRequired: 0n, consumedLocked: 0n };\n default:\n // direct_mint has no per-order funding predicate.\n return { consumedRequired: 0n, consumedLocked: 0n };\n }\n }\n\n private async getValidatedScreeningSettings(): Promise {\n const settings = this.settingsConfig(await this.getVersionSettings());\n for (const reserveAsset of settings.reserve_assets) {\n if (reserveAsset.numerator === 0n) {\n throw new Error(\"Reserve asset numerator must be non-zero\");\n }\n if (reserveAsset.denominator === 0n) {\n throw new Error(\"Reserve asset denominator must be non-zero\");\n }\n Core.AssetId(reserveAsset.asset[0] + reserveAsset.asset[1]);\n }\n return settings;\n }\n\n /**\n * Classify an order action from its datum.\n */\n protected classifyOrderAction(datum: OrderDatumV1): IClassifiedOrderAction {\n const action = datum.action;\n if (\"OMint\" in action) {\n return {\n actionType: \"mint\",\n amount: action.OMint.amount,\n minReceived: action.OMint.min_received,\n reserveAsset: action.OMint.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ORedeem\" in action) {\n return {\n actionType: \"burn\",\n amount: -action.ORedeem.amount,\n minReceived: action.ORedeem.min_received,\n reserveAsset: action.ORedeem.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ODeposit\" in action) {\n return {\n actionType: \"deposit\",\n amount: action.ODeposit.principal,\n yield: action.ODeposit.yield,\n reserveAsset: action.ODeposit.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OWithdraw\" in action) {\n return {\n actionType: \"withdraw\",\n amount: action.OWithdraw.amount,\n reserveAsset: action.OWithdraw.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OStake\" in action) {\n return {\n actionType: \"stake\",\n amount: action.OStake.amount,\n minReceived: action.OStake.min_received,\n isTreasuryAction: false,\n };\n } else if (\"OUnstake\" in action) {\n return {\n actionType: \"unstake\",\n amount: action.OUnstake.amount,\n forfeit: action.OUnstake.forfeit,\n minReceived: action.OUnstake.min_received,\n isTreasuryAction: false,\n };\n } else if (\"ODirectMint\" in action) {\n return {\n actionType: \"direct_mint\",\n amount: action.ODirectMint.amount,\n isTreasuryAction: true,\n };\n } else if (\"ODirectBurn\" in action) {\n return {\n actionType: \"direct_burn\",\n amount: -action.ODirectBurn.amount,\n isTreasuryAction: true,\n };\n }\n throw new Error(\"Unknown order action type\");\n }\n\n /**\n * Build the signed-payload treasury request for a deposit/withdraw order.\n *\n * v1_0 / v1_0_rc1 emit the four-field request. Versions whose on-chain\n * `TreasuryRequestV1` carries extra fields (v1_1_rc1's `diffusion_end`, which\n * the validator requires the signed request to echo from the order datum)\n * override this to add them; the return stays assignable to the v1_0 shape,\n * and the extra fields are encoded by the version's own payload schema value.\n */\n protected buildTreasuryRequest(\n datum: OrderDatumV1,\n parsed: IClassifiedOrderAction,\n origin: IRequestOrigin,\n ): TreasuryRequestV1 {\n return {\n destination: datum.destination,\n amount: parsed.amount,\n yield: parsed.yield ?? 0n,\n origin,\n reserve_asset: parsed.reserveAsset!,\n };\n }\n\n /**\n * Update treasury output with new reserve and circulating supply.\n */\n protected updateTreasuryOutput(\n tx: TxBuilder,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n reserveDeltas: Map,\n circulatingSupplyDelta: bigint,\n ): void {\n const newTreasuryDatum: V0_1TreasuryDatum = {\n circulating_supply:\n parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta,\n };\n const serializedTreasuryDatum = Data.serialize(\n V0_1TreasuryDatum,\n newTreasuryDatum,\n );\n\n tx.addInput(treasuryUtxo, Data.Void());\n\n const treasuryValue = treasuryUtxo.output().amount();\n\n let newTreasuryValue = makeValue(treasuryValue.coin(), [\n this.treasuryNFTAssetId,\n 1n,\n ]);\n\n const modifiedAssetIds = new Set([\n this.treasuryNFTAssetId.toString(),\n ]);\n for (const [reserveAssetId, delta] of reserveDeltas.entries()) {\n const currentReserve =\n treasuryValue.multiasset()?.get(Core.AssetId(reserveAssetId)) ?? 0n;\n const newReserve = currentReserve + delta;\n newTreasuryValue = Value.merge(\n newTreasuryValue,\n makeValue(0n, [Core.AssetId(reserveAssetId), newReserve]),\n );\n modifiedAssetIds.add(reserveAssetId);\n }\n\n const existingMultiasset = treasuryValue.multiasset();\n if (existingMultiasset) {\n for (const [assetId, amount] of existingMultiasset.entries()) {\n if (!modifiedAssetIds.has(assetId)) {\n newTreasuryValue = Value.merge(\n newTreasuryValue,\n makeValue(0n, [Core.AssetId(assetId), amount]),\n );\n }\n }\n }\n tx.lockAssets(\n this.treasuryAddress,\n newTreasuryValue,\n serializedTreasuryDatum,\n );\n }\n\n /**\n * Update treasury output without reserve changes (for DirectMint/DirectBurn).\n */\n protected updateTreasuryOutputNoReserve(\n tx: TxBuilder,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n circulatingSupplyDelta: bigint,\n ): void {\n const newTreasuryDatum: V0_1TreasuryDatum = {\n circulating_supply:\n parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta,\n };\n const serializedTreasuryDatum = Data.serialize(\n V0_1TreasuryDatum,\n newTreasuryDatum,\n );\n\n tx.addInput(treasuryUtxo, Data.Void());\n\n // Preserve exact treasury value (no reserve changes)\n const treasuryValue = treasuryUtxo.output().amount();\n tx.lockAssets(this.treasuryAddress, treasuryValue, serializedTreasuryDatum);\n }\n\n /**\n * Update vault output with new circulating_susdr and USDr balance.\n *\n * The datum construction is delegated to the version's\n * `buildUpdatedVaultDatum` seam; the value rebuild below is\n * datum-shape-agnostic and shared by all versions.\n */\n protected updateVaultOutput(\n tx: TxBuilder,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: TVaultDatum,\n sUSDrDelta: bigint,\n uSDrDelta: bigint = 0n,\n ): void {\n this.updateVaultOutputWithDatum(\n tx,\n vaultUtxo,\n this.buildUpdatedVaultDatum(parsedVaultDatum, sUSDrDelta),\n uSDrDelta,\n );\n }\n\n /**\n * Lock the vault output with an already-constructed datum, rebuilding its\n * USDr balance by `uSDrDelta`. The value rebuild is datum-shape-agnostic;\n * versions whose datum update needs more than `sUSDrDelta` (v1_1_rc1's\n * deposit diffusion window) build the datum themselves and call this.\n */\n protected updateVaultOutputWithDatum(\n tx: TxBuilder,\n vaultUtxo: Core.TransactionUnspentOutput,\n newVaultDatum: TVaultDatum,\n uSDrDelta: bigint = 0n,\n ): void {\n const serializedVaultDatum = Data.serialize(\n this.schemas.VaultDatumV1,\n newVaultDatum,\n );\n\n tx.addInput(vaultUtxo, Data.Void());\n\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n let newVaultValue = vaultUtxo.output().amount();\n if (uSDrDelta !== 0n) {\n const currentUSDr =\n newVaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const newUSDr = currentUSDr + uSDrDelta;\n newVaultValue = makeValue(newVaultValue.coin(), [\n this.stakingVaultNFTAssetId,\n 1n,\n ]);\n if (newUSDr > 0n) {\n newVaultValue = Value.merge(\n newVaultValue,\n makeValue(0n, [stablecoinAssetId, newUSDr]),\n );\n }\n const existingMultiasset = vaultUtxo.output().amount().multiasset();\n if (existingMultiasset) {\n for (const [assetId, amount] of existingMultiasset.entries()) {\n if (\n assetId !== this.stakingVaultNFTAssetId.toString() &&\n assetId !== stablecoinAssetId.toString()\n ) {\n newVaultValue = Value.merge(\n newVaultValue,\n makeValue(0n, [Core.AssetId(assetId), amount]),\n );\n }\n }\n }\n }\n\n tx.lockAssets(\n this.stakingVaultAddress,\n newVaultValue,\n serializedVaultDatum,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Reserve Asset Conversion Utilities\n // ─────────────────────────────────────────────────────────────────────────────\n\n protected async getVersionSettings(): Promise {\n const { parsedProxyDatum } = await this.getParsedProxyDatum();\n return parsedProxyDatum.settings;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1/order-sanity.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/order-sanity.js new file mode 100644 index 0000000000..39d50a1e9b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/order-sanity.js @@ -0,0 +1,225 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.screenDepositBatch = screenDepositBatch; +exports.screenOrderAction = screenOrderAction; +exports.screenOrderUtxoFacts = screenOrderUtxoFacts; +/** + * Static, off-chain mirror of the per-request predicates the v1-family + * protocol validators apply to each request in an execution batch. + * + * Why this exists (WTB-1764): `process_exchange_requests`, + * `process_stake_requests` and `process_treasury_requests` + * (`contracts/lib/v1_0/utilities.ak`) validate every request in the batch + * inside one `zip_fold` via `expect validation(request)`. There is no + * per-request graceful exclusion — the first request that fails its predicate + * crashes the WHOLE execution transaction, taking down every valid order + * bundled alongside it. Order creation is permissionless and has no on-chain + * gate (sending funds + an inline datum to the order script address is a plain + * payment; no validator runs on receipt), so a single order carrying, say, + * `min_received = 0` is a cheap, repeatable denial-of-service against the whole + * execution pipeline. + * + * Every request that reaches a batch must therefore be screened off-chain + * first. This module is the one place that mirrors the on-chain predicates, so + * a validator change has a single off-chain counterpart to update. + * + * Two screens live here, because the validators abort the whole transaction from + * two kinds of check and only one of them is answerable from the datum alone: + * + * 1. {@link screenOrderAction} — the `process_*_requests` per-request predicates. + * Pure, datum-only. + * 2. {@link screenOrderUtxoFacts} — the checks that also need the order UTxO's + * value and (for mint/burn) the reserve multiplier: input funding and the + * statically-knowable deliverability ceiling. Callers derive the facts, since + * that is where the asset ids and settings live; `RealfiSDKV1Family` + * .screenOrderForExecution does both in one call. + * + * Still deliberately NOT covered, because it is not decidable from the order in + * isolation: predicates that move with live protocol state — unstake's + * `forfeit <= request_usdr`, and the stake/unstake deliverability ceilings, + * which follow the vault exchange rate between screening and execution. + * + * A caller with a narrower policy (the approvals cron accepts just the + * zero-principal, positive-yield deposit shape) also keeps that policy to + * itself; folding it in here would reject orders other first-party flows + * legitimately create and execute. + * + * | action | on-chain predicate | source | + * | -------- | ------------------------------------------------------- | ----------------------------- | + * | mint | `amount > 0 && min_received > 0` | `v1_0/mint.ak:86` | + * | burn | `amount < 0 && min_received > 0` | `v1_0/burn.ak:90` | + * | stake | `amount > 0 && min_received > 0 && forfeit == 0` | `v1_0/stake.ak:45-47` | + * | unstake | `amount > 0 && min_received > 0` (+ `forfeit >= 0`) | `v1_0/unstake.ak:77,101` | + * | deposit | `amount >= 0` | `v1_0/deposit.ak:67` | + * | withdraw | `amount > 0 && yield == 0` | `v1_0/withdraw.ak:73` | + * + * v1_1_rc1 carries the identical predicates. v1_0_rc1 does NOT — its datum has + * no `min_received` field at all and its predicates are amount-only + * (`v1_0_rc1/stake.ak:64`, `unstake.ak:64`), which is why an absent floor is + * treated as "no floor to check" below rather than as zero. + */ + +/** Machine-stable reason token for a rejected request. */ + +/** + * The subset of `IClassifiedOrderAction` the screen reads. Structural, so a + * full classified action is assignable without this module depending on the + * SDK family module (and without a test needing to construct one). + * + * Sign convention follows `classifyOrderAction`, which matches the on-chain + * request shape: `amount` is already negated for burn. + */ + +var OK = { + ok: true +}; +function reject(code, reason) { + return { + ok: false, + code: code, + reason: reason + }; +} + +/** + * Screen one classified order action against the predicates the validator will + * apply to it. + * + * Unknown actions pass through. Every known action is checked because + * `getSignedPayloadFromOrderInputs` packages both the approvals and + * treasury-admin flows. + */ +function screenOrderAction(action) { + var _action$forfeit, _action$yield; + var actionType = action.actionType; + + // Mint, burn, stake and unstake carry a user-signed output floor that the + // validator requires to be strictly positive — in the versions that HAVE one. + // v1_0_rc1's datum has no min_received field and its validators have no + // min_received predicate, so `undefined` means "this version has no floor to + // check", not "the floor is zero". The v1_0 / v1_1_rc1 schemas make the field + // mandatory, so a genuinely poisoned order always arrives as 0. + var floor = action.minReceived; + switch (actionType) { + case "mint": + case "stake": + case "unstake": + if (action.amount <= 0n) { + return reject("amount_not_positive", "Invalid ".concat(actionType, " amount (<= 0)")); + } + if (floor !== undefined && floor <= 0n) { + return reject("min_received_not_positive", "Invalid ".concat(actionType, " min_received (<= 0)")); + } + // Unstake's forfeit is user-supplied in the datum; a negative one crashes + // the batch on `expect r.forfeit >= 0` exactly like a zero min_received + // does. (Stake requests carry no datum forfeit — OStake has no such + // field, so the validator's `forfeit == 0` holds by construction.) + if (actionType === "unstake" && ((_action$forfeit = action.forfeit) !== null && _action$forfeit !== void 0 ? _action$forfeit : 0n) < 0n) { + return reject("forfeit_negative", "Invalid unstake forfeit (< 0)"); + } + return OK; + case "burn": + // classifyOrderAction negates ORedeem.amount, so the on-chain + // `amount < 0` check is the raw datum amount being positive. + if (action.amount >= 0n) { + return reject("amount_not_positive", "Invalid burn amount (<= 0)"); + } + if (floor !== undefined && floor <= 0n) { + return reject("min_received_not_positive", "Invalid burn min_received (<= 0)"); + } + return OK; + case "withdraw": + if (action.amount <= 0n) { + return reject("amount_not_positive", "Invalid withdraw amount (<= 0)"); + } + if (((_action$yield = action["yield"]) !== null && _action$yield !== void 0 ? _action$yield : 0n) !== 0n) { + return reject("withdraw_yield_not_zero", "Invalid withdraw request (yield must be 0)"); + } + return OK; + case "deposit": + if (action.amount < 0n) { + return reject("deposit_principal_negative", "Invalid deposit principal (< 0)"); + } + return OK; + case "direct_mint": + if (action.amount <= 0n) { + return reject("amount_not_positive", "Invalid direct_mint amount (<= 0)"); + } + return OK; + case "direct_burn": + // classifyOrderAction negates ODirectBurn.amount to match the signed + // request and direct_burn.ak's required negative amount. + if (action.amount >= 0n) { + return reject("amount_not_positive", "Invalid direct_burn amount (<= 0)"); + } + return OK; + default: + return OK; + } +} + +/** + * Screen deposit predicates that the validator applies to the complete batch, + * after it has summed every request. This must not run per order: offsetting + * yields can make a non-empty pair unexecutable, while a zero/zero order can + * validly accompany a principal-bearing one. + */ +function screenDepositBatch(actions) { + var _actions$reduce = actions.reduce(function (totals, action) { + var _action$yield2; + return { + principal: totals.principal + action.amount, + totalYield: totals.totalYield + ((_action$yield2 = action["yield"]) !== null && _action$yield2 !== void 0 ? _action$yield2 : 0n) + }; + }, { + principal: 0n, + totalYield: 0n + }), + principal = _actions$reduce.principal, + totalYield = _actions$reduce.totalYield; + if (principal === 0n && totalYield === 0n) { + return reject("deposit_batch_empty", "Invalid deposit batch (principal and yield both total 0)"); + } + return OK; +} + +/** + * The value-dependent facts about an order UTxO that the validator checks but + * the datum alone cannot answer. The caller derives these because it owns the + * asset ids and the reserve multiplier from settings. + */ + +/** + * Screen the value-dependent aborts. Run alongside {@link screenOrderAction} — + * neither subsumes the other. + * + * Both conditions kill the whole transaction, not just the offending order: + * + * - **Underfunded input.** `validate_stake_inputs` / `validate_unstake_inputs` + * (`v1_0/utilities.ak:417`, `:443`) `expect` the locked quantity to cover + * `request.amount`; mint (`mint.ak:32`) and burn (`burn.ak:31`) fold the same + * comparison into an `and {}` whose `False` fails the enclosing `expect`. An + * order UTxO holding min-ADA and none of the consumed asset is therefore a + * complete batch-killer that costs the planter nothing but the min-ADA. + * - **Unsatisfiable floor.** `validate_destination_value` + * (`v1_0/utilities.ak:594-595`) `expect`s `min_delivered <= delivered <= + * max_delivered`. A `min_received` above the ceiling makes the pair + * unsatisfiable no matter what the operator builds. + */ +function screenOrderUtxoFacts(action, facts) { + if (facts.unresolvable !== undefined) { + return reject("order_facts_unresolvable", "Order datum cannot be resolved against protocol settings: ".concat(facts.unresolvable)); + } + if (facts.consumedRequired > 0n && facts.consumedLocked < facts.consumedRequired) { + return reject("input_underfunded", "Order UTxO locks ".concat(facts.consumedLocked, " of the consumed asset but its ") + "".concat(action.actionType, " datum requires ").concat(facts.consumedRequired)); + } + var floor = action.minReceived; + if (floor !== undefined && facts.maxDelivered !== undefined && floor > facts.maxDelivered) { + return reject("min_received_above_max_delivered", "Invalid ".concat(action.actionType, " min_received (").concat(floor, ") \u2014 above the maximum ") + "deliverable ".concat(facts.maxDelivered, ", so no execution can satisfy it")); + } + return OK; +} +//# sourceMappingURL=order-sanity.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1/order-sanity.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/order-sanity.js.map new file mode 100644 index 0000000000..d8a9eb5e93 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/order-sanity.js.map @@ -0,0 +1 @@ +{"version":3,"file":"order-sanity.js","names":["OK","ok","reject","code","reason","screenOrderAction","action","_action$forfeit","_action$yield","actionType","floor","minReceived","amount","concat","undefined","forfeit","screenDepositBatch","actions","_actions$reduce","reduce","totals","_action$yield2","principal","totalYield","screenOrderUtxoFacts","facts","unresolvable","consumedRequired","consumedLocked","maxDelivered"],"sources":["../../../../src/sdk/v1/order-sanity.ts"],"sourcesContent":["/**\n * Static, off-chain mirror of the per-request predicates the v1-family\n * protocol validators apply to each request in an execution batch.\n *\n * Why this exists (WTB-1764): `process_exchange_requests`,\n * `process_stake_requests` and `process_treasury_requests`\n * (`contracts/lib/v1_0/utilities.ak`) validate every request in the batch\n * inside one `zip_fold` via `expect validation(request)`. There is no\n * per-request graceful exclusion — the first request that fails its predicate\n * crashes the WHOLE execution transaction, taking down every valid order\n * bundled alongside it. Order creation is permissionless and has no on-chain\n * gate (sending funds + an inline datum to the order script address is a plain\n * payment; no validator runs on receipt), so a single order carrying, say,\n * `min_received = 0` is a cheap, repeatable denial-of-service against the whole\n * execution pipeline.\n *\n * Every request that reaches a batch must therefore be screened off-chain\n * first. This module is the one place that mirrors the on-chain predicates, so\n * a validator change has a single off-chain counterpart to update.\n *\n * Two screens live here, because the validators abort the whole transaction from\n * two kinds of check and only one of them is answerable from the datum alone:\n *\n * 1. {@link screenOrderAction} — the `process_*_requests` per-request predicates.\n * Pure, datum-only.\n * 2. {@link screenOrderUtxoFacts} — the checks that also need the order UTxO's\n * value and (for mint/burn) the reserve multiplier: input funding and the\n * statically-knowable deliverability ceiling. Callers derive the facts, since\n * that is where the asset ids and settings live; `RealfiSDKV1Family`\n * .screenOrderForExecution does both in one call.\n *\n * Still deliberately NOT covered, because it is not decidable from the order in\n * isolation: predicates that move with live protocol state — unstake's\n * `forfeit <= request_usdr`, and the stake/unstake deliverability ceilings,\n * which follow the vault exchange rate between screening and execution.\n *\n * A caller with a narrower policy (the approvals cron accepts just the\n * zero-principal, positive-yield deposit shape) also keeps that policy to\n * itself; folding it in here would reject orders other first-party flows\n * legitimately create and execute.\n *\n * | action | on-chain predicate | source |\n * | -------- | ------------------------------------------------------- | ----------------------------- |\n * | mint | `amount > 0 && min_received > 0` | `v1_0/mint.ak:86` |\n * | burn | `amount < 0 && min_received > 0` | `v1_0/burn.ak:90` |\n * | stake | `amount > 0 && min_received > 0 && forfeit == 0` | `v1_0/stake.ak:45-47` |\n * | unstake | `amount > 0 && min_received > 0` (+ `forfeit >= 0`) | `v1_0/unstake.ak:77,101` |\n * | deposit | `amount >= 0` | `v1_0/deposit.ak:67` |\n * | withdraw | `amount > 0 && yield == 0` | `v1_0/withdraw.ak:73` |\n *\n * v1_1_rc1 carries the identical predicates. v1_0_rc1 does NOT — its datum has\n * no `min_received` field at all and its predicates are amount-only\n * (`v1_0_rc1/stake.ak:64`, `unstake.ak:64`), which is why an absent floor is\n * treated as \"no floor to check\" below rather than as zero.\n */\n\n/** Machine-stable reason token for a rejected request. */\nexport type TOrderRejectCode =\n | \"amount_not_positive\"\n | \"min_received_not_positive\"\n | \"forfeit_negative\"\n | \"deposit_principal_negative\"\n | \"deposit_batch_empty\"\n | \"withdraw_yield_not_zero\"\n | \"input_underfunded\"\n | \"min_received_above_max_delivered\"\n | \"order_facts_unresolvable\";\n\n/**\n * The subset of `IClassifiedOrderAction` the screen reads. Structural, so a\n * full classified action is assignable without this module depending on the\n * SDK family module (and without a test needing to construct one).\n *\n * Sign convention follows `classifyOrderAction`, which matches the on-chain\n * request shape: `amount` is already negated for burn.\n */\nexport interface IOrderActionSanityInput {\n actionType: string;\n amount: bigint;\n minReceived?: bigint;\n forfeit?: bigint;\n yield?: bigint;\n}\n\nexport type TOrderSanityResult =\n | { ok: true }\n | { ok: false; code: TOrderRejectCode; reason: string };\n\nconst OK: TOrderSanityResult = { ok: true };\n\nfunction reject(code: TOrderRejectCode, reason: string): TOrderSanityResult {\n return { ok: false, code, reason };\n}\n\n/**\n * Screen one classified order action against the predicates the validator will\n * apply to it.\n *\n * Unknown actions pass through. Every known action is checked because\n * `getSignedPayloadFromOrderInputs` packages both the approvals and\n * treasury-admin flows.\n */\nexport function screenOrderAction(\n action: IOrderActionSanityInput,\n): TOrderSanityResult {\n const { actionType } = action;\n\n // Mint, burn, stake and unstake carry a user-signed output floor that the\n // validator requires to be strictly positive — in the versions that HAVE one.\n // v1_0_rc1's datum has no min_received field and its validators have no\n // min_received predicate, so `undefined` means \"this version has no floor to\n // check\", not \"the floor is zero\". The v1_0 / v1_1_rc1 schemas make the field\n // mandatory, so a genuinely poisoned order always arrives as 0.\n const floor = action.minReceived;\n\n switch (actionType) {\n case \"mint\":\n case \"stake\":\n case \"unstake\":\n if (action.amount <= 0n) {\n return reject(\n \"amount_not_positive\",\n `Invalid ${actionType} amount (<= 0)`,\n );\n }\n if (floor !== undefined && floor <= 0n) {\n return reject(\n \"min_received_not_positive\",\n `Invalid ${actionType} min_received (<= 0)`,\n );\n }\n // Unstake's forfeit is user-supplied in the datum; a negative one crashes\n // the batch on `expect r.forfeit >= 0` exactly like a zero min_received\n // does. (Stake requests carry no datum forfeit — OStake has no such\n // field, so the validator's `forfeit == 0` holds by construction.)\n if (actionType === \"unstake\" && (action.forfeit ?? 0n) < 0n) {\n return reject(\"forfeit_negative\", \"Invalid unstake forfeit (< 0)\");\n }\n return OK;\n\n case \"burn\":\n // classifyOrderAction negates ORedeem.amount, so the on-chain\n // `amount < 0` check is the raw datum amount being positive.\n if (action.amount >= 0n) {\n return reject(\"amount_not_positive\", \"Invalid burn amount (<= 0)\");\n }\n if (floor !== undefined && floor <= 0n) {\n return reject(\n \"min_received_not_positive\",\n \"Invalid burn min_received (<= 0)\",\n );\n }\n return OK;\n\n case \"withdraw\":\n if (action.amount <= 0n) {\n return reject(\"amount_not_positive\", \"Invalid withdraw amount (<= 0)\");\n }\n if ((action.yield ?? 0n) !== 0n) {\n return reject(\n \"withdraw_yield_not_zero\",\n \"Invalid withdraw request (yield must be 0)\",\n );\n }\n return OK;\n\n case \"deposit\":\n if (action.amount < 0n) {\n return reject(\n \"deposit_principal_negative\",\n \"Invalid deposit principal (< 0)\",\n );\n }\n return OK;\n\n case \"direct_mint\":\n if (action.amount <= 0n) {\n return reject(\n \"amount_not_positive\",\n \"Invalid direct_mint amount (<= 0)\",\n );\n }\n return OK;\n\n case \"direct_burn\":\n // classifyOrderAction negates ODirectBurn.amount to match the signed\n // request and direct_burn.ak's required negative amount.\n if (action.amount >= 0n) {\n return reject(\n \"amount_not_positive\",\n \"Invalid direct_burn amount (<= 0)\",\n );\n }\n return OK;\n\n default:\n return OK;\n }\n}\n\n/**\n * Screen deposit predicates that the validator applies to the complete batch,\n * after it has summed every request. This must not run per order: offsetting\n * yields can make a non-empty pair unexecutable, while a zero/zero order can\n * validly accompany a principal-bearing one.\n */\nexport function screenDepositBatch(\n actions: readonly IOrderActionSanityInput[],\n): TOrderSanityResult {\n const { principal, totalYield } = actions.reduce(\n (totals, action) => ({\n principal: totals.principal + action.amount,\n totalYield: totals.totalYield + (action.yield ?? 0n),\n }),\n { principal: 0n, totalYield: 0n },\n );\n if (principal === 0n && totalYield === 0n) {\n return reject(\n \"deposit_batch_empty\",\n \"Invalid deposit batch (principal and yield both total 0)\",\n );\n }\n return OK;\n}\n\n/**\n * The value-dependent facts about an order UTxO that the validator checks but\n * the datum alone cannot answer. The caller derives these because it owns the\n * asset ids and the reserve multiplier from settings.\n */\nexport interface IOrderUtxoFacts {\n /**\n * Quantity of the consumed asset the validator will require this UTxO to\n * hold. Per action: mint → `usdr_to_reserve_ceil(amount, ra)` of the reserve\n * asset; burn → `|amount|` USDr; stake → `amount` USDr; unstake → `amount`\n * sUSDr. Zero for actions with no such check (treasury, direct).\n */\n consumedRequired: bigint;\n /** Quantity of that same asset actually locked in the UTxO. */\n consumedLocked: bigint;\n /**\n * Ceiling on what may be delivered to the destination, when it is knowable\n * without live vault state: mint → `amount`, burn →\n * `usdr_to_reserve(|amount|, ra)`. `undefined` where the ceiling follows the\n * vault exchange rate (stake, unstake) and so cannot be screened here.\n */\n maxDelivered?: bigint;\n /**\n * Set when the facts could not be derived from the datum at all — the reserve\n * asset it names is not in settings, or its policy id is malformed. Every\n * field of the datum is attacker-chosen, so this must be a REJECTION, never a\n * thrown error: a throw from a screen would abort the caller's whole sweep,\n * which is a strictly worse denial of service than the batch-kill the screen\n * exists to prevent. The validator reaches the same conclusion via\n * `expect Some(ra) = find_reserve_asset(...)` (`v1_0/mint.ak:29`).\n */\n unresolvable?: string;\n}\n\n/**\n * Screen the value-dependent aborts. Run alongside {@link screenOrderAction} —\n * neither subsumes the other.\n *\n * Both conditions kill the whole transaction, not just the offending order:\n *\n * - **Underfunded input.** `validate_stake_inputs` / `validate_unstake_inputs`\n * (`v1_0/utilities.ak:417`, `:443`) `expect` the locked quantity to cover\n * `request.amount`; mint (`mint.ak:32`) and burn (`burn.ak:31`) fold the same\n * comparison into an `and {}` whose `False` fails the enclosing `expect`. An\n * order UTxO holding min-ADA and none of the consumed asset is therefore a\n * complete batch-killer that costs the planter nothing but the min-ADA.\n * - **Unsatisfiable floor.** `validate_destination_value`\n * (`v1_0/utilities.ak:594-595`) `expect`s `min_delivered <= delivered <=\n * max_delivered`. A `min_received` above the ceiling makes the pair\n * unsatisfiable no matter what the operator builds.\n */\nexport function screenOrderUtxoFacts(\n action: IOrderActionSanityInput,\n facts: IOrderUtxoFacts,\n): TOrderSanityResult {\n if (facts.unresolvable !== undefined) {\n return reject(\n \"order_facts_unresolvable\",\n `Order datum cannot be resolved against protocol settings: ${facts.unresolvable}`,\n );\n }\n\n if (\n facts.consumedRequired > 0n &&\n facts.consumedLocked < facts.consumedRequired\n ) {\n return reject(\n \"input_underfunded\",\n `Order UTxO locks ${facts.consumedLocked} of the consumed asset but its ` +\n `${action.actionType} datum requires ${facts.consumedRequired}`,\n );\n }\n\n const floor = action.minReceived;\n if (\n floor !== undefined &&\n facts.maxDelivered !== undefined &&\n floor > facts.maxDelivered\n ) {\n return reject(\n \"min_received_above_max_delivered\",\n `Invalid ${action.actionType} min_received (${floor}) — above the maximum ` +\n `deliverable ${facts.maxDelivered}, so no execution can satisfy it`,\n );\n }\n\n return OK;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1/types.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/types.js new file mode 100644 index 0000000000..239667a3d0 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/types.js @@ -0,0 +1,6 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1/types.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/types.js.map new file mode 100644 index 0000000000..e6955f394d --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","names":[],"sources":["../../../../src/sdk/v1/types.ts"],"sourcesContent":["import type { TSchema } from \"@blaze-cardano/data\";\nimport type { Core } from \"@blaze-cardano/sdk\";\n\n// Type-only imports of the canonical V1-family statics. These are erased at\n// compile time (verbatimModuleSyntax), so this module adds NO runtime edge\n// from the family chunk to the v1_0 generated-types chunk — each version's\n// chunk still loads only its own generated module.\nimport type {\n Nonce,\n OrderRedeemerV1,\n RegistryV1,\n SettingsV1 as SettingsV1_0,\n} from \"../../generated-types/v1_0/index.js\";\n\n/**\n * A TypeBox schema whose inferred static is exactly `T`, regardless of which\n * generated module it came from.\n *\n * The generated modules export `TImport` schemas that carry the WHOLE\n * module's `$defs` in their type, so `typeof V1_0Types.X` is not assignable\n * to `typeof V1_1Rc1Types.X` even when the statics are structurally identical.\n * `Data.serialize`/`parse` only infer through `T[\"static\"]`, so this\n * intersection keeps full type safety at every call site while accepting any\n * version's schema value. Runtime ref resolution reads `$defs` off the schema\n * VALUE, so cross-version dispatch is safe.\n */\nexport type TSchemaOf = TSchema & { static: T };\n\n/**\n * Version-agnostic proxy datum shape. `ProxyDatumV1.settings` is the only\n * settings-transitive field in the schemas the family touches, so the family\n * is generic over it instead of using a version's concrete `ProxyDatumV1`.\n */\nexport interface IProxyDatum {\n logic: string;\n settings: TSettings;\n}\n\n/**\n * The minimal vault-datum shape every V1-family version shares. Shared code\n * may READ `circulating_susdr`; it must never construct a whole vault datum —\n * datum construction goes through the version's `buildInitialVaultDatum` /\n * `buildUpdatedVaultDatum` seam so versions with extra fields (v1_1_rc1's\n * yield-diffusion fields) can't be silently truncated.\n */\nexport interface IVaultDatumLike {\n circulating_susdr: bigint;\n}\n\n/**\n * The schema values the family base serializes/parses. Each per-version\n * generated module namespace satisfies this structurally.\n *\n * `OrderDatumV1` is deliberately loose (`TSchema`): the order-datum statics\n * differ across the family (v1_0 actions carry `min_received`, v1_0_rc1's do\n * not), so the base's v1_0-semantics defaults cast parse results to the v1_0\n * static. Versions with a different static override every constructor and\n * consumer of order datums.\n */\nexport interface IV1FamilySchemas {\n ProxyDatumV1: TSchemaOf>;\n SettingsV1: TSchemaOf;\n OrderDatumV1: TSchema;\n OrderRedeemerV1: TSchemaOf;\n VaultDatumV1: TSchemaOf;\n Nonce: TSchemaOf;\n}\n\n/**\n * Schemas used ONLY by the base's v1_0-semantics signing/execute defaults\n * (`getSignedPayloadFromOrderInputs`, `buildExecuteOrdersTx`). Versions whose\n * protocol redeemer is structurally different (v1_0_rc1) omit this bag and\n * override both consumers; the family's guarded accessor throws if neither\n * is done.\n *\n * Both fields are deliberately loose (`TSchema`), for the same reason\n * `OrderDatumV1` above is: the protocol-redeemer static diverges across the\n * family (v1_1_rc1's `Deposit` carries `alpha` and its action union adds\n * `MigrateState`), so a `TSchemaOf` would reject the\n * wider v1_1_rc1 schema value even though runtime ref-resolution reads `$defs`\n * off the schema VALUE and is safe. Versions build their own action shape via\n * the `buildDepositAction` / `serializeOrchestratorWithdrawalRedeemer` seams.\n */\nexport interface IV1SigningSchemas {\n SignedPayload_ProtocolRedeemerV1: TSchema;\n SignedRedeemer_ExtraProtocolRedeemerV1: TSchema;\n}\n\n/**\n * The fraction of a deposit's yield routed to the staked vault, the remainder\n * going to the unstaked yield pot (v1_1_rc1+ `YieldSplitAlpha`).\n *\n * It is a parameter of the batch: its creator picks it, the backend stores it on\n * the batch, and every co-signer signs THAT value. On-chain every signature of a\n * batch is verified against a single payload hash, so a signer deriving its own\n * value from live state could never be co-signed — which is why the signing path\n * takes it as an input instead of reading the vault itself.\n */\nexport interface IYieldSplitAlpha {\n numerator: bigint;\n denominator: bigint;\n}\n\n/**\n * Version-agnostic view over the settings fields the shared tx-builders use.\n * v1_0: the (flat) settings object itself. v1_1_rc1: `settings.config`.\n */\nexport type TV1SettingsConfig = Pick<\n SettingsV1_0,\n \"reserve_assets\" | \"unstaked_yield_pot\"\n>;\n\n/**\n * The registry fields the family base reads (protocol-upgrade checks).\n * Registries differ across versions (v1_0 adds `yield_oracle`), so the\n * seam exposes only the shared field.\n */\nexport type TV1Registry = Pick;\n\n/**\n * Instantiated scripts each version's `create()` builds from its own\n * generated script classes and hands to the family constructor. Method\n * bodies only ever see `Core.Script` values.\n */\nexport interface IV1FamilyScripts {\n oneShotScript: Core.Script;\n protocolOrchestratorScript: Core.Script;\n protocolMintScript: Core.Script;\n protocolStakeScript: Core.Script;\n protocolManagementScript: Core.Script;\n mintProxyScript: Core.Script;\n treasuryScript: Core.Script;\n orderScript: Core.Script;\n stakingVaultScript: Core.Script;\n}\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0/index.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0/index.js new file mode 100644 index 0000000000..6a8a3b2db2 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0/index.js @@ -0,0 +1,166 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "DIRECT_ACTION_PADDING_ASSET", { + enumerable: true, + get: function get() { + return _family.DIRECT_ACTION_PADDING_ASSET; + } +}); +exports.RealfiSDKV1_0 = void 0; +var _index = require("../../generated-types/index.js"); +var _family = require("../v1/family.js"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +// eslint-disable-next-line @typescript-eslint/naming-convention +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── +/** + * V1_0 SDK implementation. + * + * Extends V0_4 with: + * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios) + * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded + * - Forfeit parameter: Support yield forfeiture during unstake operations + * - New Settings fields: direct_mint_permission, direct_burn_permission + * + * All transaction-building logic lives in {@link RealfiSDKV1Family}; this + * class instantiates the V1_0 scripts and implements the version seams + * (flat settings, 1-field vault datum). + */ +var RealfiSDKV1_0 = exports.RealfiSDKV1_0 = /*#__PURE__*/function (_RealfiSDKV1Family) { + function RealfiSDKV1_0() { + var _this; + _classCallCheck(this, RealfiSDKV1_0); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _callSuper(this, RealfiSDKV1_0, [].concat(args)); + _defineProperty(_this, "version", "V1_0"); + return _this; + } + _inherits(RealfiSDKV1_0, _RealfiSDKV1Family); + return _createClass(RealfiSDKV1_0, [{ + key: "settingsConfig", + value: + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + function settingsConfig(settings) { + // V1_0 settings are flat: the settings object IS the config. + return settings; + } + }, { + key: "settingsRegistry", + value: function settingsRegistry(settings) { + return settings.registry; + } + }, { + key: "buildInitialVaultDatum", + value: function buildInitialVaultDatum() { + return { + circulating_susdr: 0n + }; + } + }, { + key: "buildUpdatedVaultDatum", + value: function buildUpdatedVaultDatum(previous, sUSDrDelta) { + return { + circulating_susdr: previous.circulating_susdr + sUSDrDelta + }; + } + }], [{ + key: "create", + value: + /** + * Create a V1_0 SDK instance. + */ + function create(blaze, params) { + var _params$enableTrace, _params$referenceInpu, _params$referenceInpu2, _params$referenceInpu3, _params$referenceInpu4, _params$referenceInpu5; + var enableTrace = (_params$enableTrace = params.enableTrace) !== null && _params$enableTrace !== void 0 ? _params$enableTrace : false; + + // 1. Create oneshot script + var oneShotScript = new _index.BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + var oneShotPolicyId = oneShotScript.hash(); + + // 2. Create sub-validator scripts first (they only need proxy policy) + var protocolMintScript = new _index.V1_0Types.V1_0ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script; + var protocolStakeScript = new _index.V1_0Types.V1_0ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script; + var protocolManagementScript = new _index.V1_0Types.V1_0ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script; + + // 3. Create orchestrator with sub-validator hashes + var protocolOrchestratorScript = new _index.V1_0Types.V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintScript.hash(), protocolStakeScript.hash(), protocolManagementScript.hash(), enableTrace).Script; + var mintProxyScript = new _index.BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + + // Use V0.1 or V1.0 treasury script based on option + // V0.1 is needed for protocol-only upgrades where treasury stays at V0.1 address + var treasuryScript = params.useV0_1Treasury ? new _index.V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new _index.V1_0Types.V1_0TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + + // 4. Create order script with orchestrator hash (order needs to know the protocol) + var orderScript = new _index.V1_0Types.V1_0OrderOrderSpend(oneShotPolicyId, protocolOrchestratorScript.hash(), enableTrace).Script; + + // Use V0.4 or V1.0 staking vault script based on option + // V0.4 is needed for protocol-only upgrades where vault stays at V0.4 address + var stakingVaultScript = params.useV0_4StakingVault ? new _index.V0_4Types.V0_4StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new _index.V1_0Types.V1_0StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV1_0(blaze, { + version: "V1_0", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace: enableTrace, + defaultSlippageToleranceBps: params.defaultSlippageToleranceBps, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource, + deployedValidators: params.deployedValidators + }, _index.V1_0Types, { + oneShotScript: oneShotScript, + protocolOrchestratorScript: protocolOrchestratorScript, + protocolMintScript: protocolMintScript, + protocolStakeScript: protocolStakeScript, + protocolManagementScript: protocolManagementScript, + mintProxyScript: mintProxyScript, + treasuryScript: treasuryScript, + orderScript: orderScript, + stakingVaultScript: stakingVaultScript + }, { + protocolRefInput: (_params$referenceInpu = params.referenceInputs) === null || _params$referenceInpu === void 0 ? void 0 : _params$referenceInpu.protocolRefInput, + proxyRefInput: (_params$referenceInpu2 = params.referenceInputs) === null || _params$referenceInpu2 === void 0 ? void 0 : _params$referenceInpu2.proxyRefInput, + treasuryRefInput: (_params$referenceInpu3 = params.referenceInputs) === null || _params$referenceInpu3 === void 0 ? void 0 : _params$referenceInpu3.treasuryRefInput, + orderRefInput: (_params$referenceInpu4 = params.referenceInputs) === null || _params$referenceInpu4 === void 0 ? void 0 : _params$referenceInpu4.orderRefInput, + stakingVaultRefInput: (_params$referenceInpu5 = params.referenceInputs) === null || _params$referenceInpu5 === void 0 ? void 0 : _params$referenceInpu5.stakingVaultRefInput + }, _index.V1_0Types); + } + }]); +}(_family.RealfiSDKV1Family); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0/index.js.map new file mode 100644 index 0000000000..c59e5b4925 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_index","require","_family","_typeof","o","Symbol","iterator","constructor","prototype","_classCallCheck","a","n","TypeError","_defineProperties","e","r","t","length","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","apply","_assertThisInitialized","ReferenceError","Boolean","valueOf","call","setPrototypeOf","getPrototypeOf","bind","__proto__","_inherits","create","value","_setPrototypeOf","_defineProperty","i","_toPrimitive","toPrimitive","String","Number","RealfiSDKV1_0","exports","_RealfiSDKV1Family","_this","_len","arguments","args","Array","_key","concat","settingsConfig","settings","settingsRegistry","registry","buildInitialVaultDatum","circulating_susdr","buildUpdatedVaultDatum","previous","sUSDrDelta","blaze","params","_params$enableTrace","_params$referenceInpu","_params$referenceInpu2","_params$referenceInpu3","_params$referenceInpu4","_params$referenceInpu5","enableTrace","oneShotScript","BaseTypes","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","oneShotPolicyId","hash","protocolMintScript","V1_0Types","V1_0ProtocolMintProtocolMintWithdraw","protocolStakeScript","V1_0ProtocolStakeProtocolStakeWithdraw","protocolManagementScript","V1_0ProtocolManagementProtocolManagementWithdraw","protocolOrchestratorScript","V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw","mintProxyScript","BaseMintProxyMintProxyMint","treasuryScript","useV0_1Treasury","V0_1Types","V0_1TreasuryTreasurySpend","treasuryBootstrap","V1_0TreasuryTreasurySpend","orderScript","V1_0OrderOrderSpend","stakingVaultScript","useV0_4StakingVault","V0_4Types","V0_4StakingVaultStakingVaultSpend","stakingVaultBootstrap","V1_0StakingVaultStakingVaultSpend","version","assetNameHex","sUSDrAssetNameHex","defaultSlippageToleranceBps","scriptDeploymentAddress","clientSource","deployedValidators","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","orderRefInput","stakingVaultRefInput","RealfiSDKV1Family"],"sources":["../../../../src/sdk/v1_0/index.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport { type Blaze, Core, type Wallet } from \"@blaze-cardano/sdk\";\n\nimport {\n BaseTypes,\n V0_1Types,\n V0_4Types,\n V1_0Types,\n} from \"../../generated-types/index.js\";\nimport type {\n RegistryV1,\n SettingsV1,\n VaultDatumV1,\n} from \"../../generated-types/v1_0/index.js\";\nimport type { TV1SettingsConfig } from \"../v1/types.js\";\nimport { RealfiSDKV1Family } from \"../v1/family.js\";\n\nexport {\n DIRECT_ACTION_PADDING_ASSET,\n type ITreasuryUnstakeOrderTxResult,\n} from \"../v1/family.js\";\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV1_0 {\n version: \"V1_0\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** USDr asset name hex */\n assetNameHex: string;\n /** sUSDr asset name hex */\n sUSDrAssetNameHex: string;\n /** The treasury bootstrap UTxO reference */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** The staking vault bootstrap UTxO reference */\n stakingVaultBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Fallback slippage tolerance (in basis points) used by buildStakeOrderTx /\n * buildUnstakeOrderTx when the caller doesn't pass a per-call value and\n * doesn't pass an explicit `minReceived`. 50n = 0.5%. Default: 50n.\n */\n defaultSlippageToleranceBps?: bigint;\n /**\n * Use V0.1 treasury script instead of V1.0.\n * This is needed for protocol-only upgrades where the treasury NFT\n * remains at the V0.1 treasury address. Default: false\n */\n useV0_1Treasury?: boolean;\n /**\n * Use V0.4 staking vault script instead of V1.0.\n * This is needed for protocol-only upgrades where the vault NFT\n * remains at the V0.4 vault address. Default: false\n */\n useV0_4StakingVault?: boolean;\n /**\n * Hashes of the validators this deployment actually runs. See\n * IV1FamilyConstructorParams.deployedValidators — without them, identity is\n * derived from bundled artifacts and an order can be locked at an address\n * nothing watches.\n */\n deployedValidators?: Readonly>;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n stakingVaultRefInput?: Core.TransactionUnspentOutput;\n };\n clientSource?: import(\"../shared/client-id.js\").TClientSource;\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// SDK Class\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * V1_0 SDK implementation.\n *\n * Extends V0_4 with:\n * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios)\n * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded\n * - Forfeit parameter: Support yield forfeiture during unstake operations\n * - New Settings fields: direct_mint_permission, direct_burn_permission\n *\n * All transaction-building logic lives in {@link RealfiSDKV1Family}; this\n * class instantiates the V1_0 scripts and implements the version seams\n * (flat settings, 1-field vault datum).\n */\nexport class RealfiSDKV1_0<\n P extends Provider,\n W extends Wallet,\n> extends RealfiSDKV1Family {\n readonly version = \"V1_0\" as const;\n\n /**\n * Create a V1_0 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0,\n ): RealfiSDKV1_0 {\n const enableTrace = params.enableTrace ?? false;\n\n // 1. Create oneshot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n\n // 2. Create sub-validator scripts first (they only need proxy policy)\n const protocolMintScript =\n new V1_0Types.V1_0ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolStakeScript =\n new V1_0Types.V1_0ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolManagementScript =\n new V1_0Types.V1_0ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 3. Create orchestrator with sub-validator hashes\n const protocolOrchestratorScript =\n new V1_0Types.V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintScript.hash(),\n protocolStakeScript.hash(),\n protocolManagementScript.hash(),\n enableTrace,\n ).Script;\n\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Use V0.1 or V1.0 treasury script based on option\n // V0.1 is needed for protocol-only upgrades where treasury stays at V0.1 address\n const treasuryScript = params.useV0_1Treasury\n ? new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_0Types.V1_0TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 4. Create order script with orchestrator hash (order needs to know the protocol)\n const orderScript = new V1_0Types.V1_0OrderOrderSpend(\n oneShotPolicyId,\n protocolOrchestratorScript.hash(),\n enableTrace,\n ).Script;\n\n // Use V0.4 or V1.0 staking vault script based on option\n // V0.4 is needed for protocol-only upgrades where vault stays at V0.4 address\n const stakingVaultScript = params.useV0_4StakingVault\n ? new V0_4Types.V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_0Types.V1_0StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV1_0(\n blaze,\n {\n version: \"V1_0\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n sUSDrAssetNameHex: params.sUSDrAssetNameHex,\n enableTrace,\n defaultSlippageToleranceBps: params.defaultSlippageToleranceBps,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n clientSource: params.clientSource,\n deployedValidators: params.deployedValidators,\n },\n V1_0Types,\n {\n oneShotScript,\n protocolOrchestratorScript,\n protocolMintScript,\n protocolStakeScript,\n protocolManagementScript,\n mintProxyScript,\n treasuryScript,\n orderScript,\n stakingVaultScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n orderRefInput: params.referenceInputs?.orderRefInput,\n stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput,\n },\n V1_0Types,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Version Seams\n // ─────────────────────────────────────────────────────────────────────────────\n\n protected settingsConfig(settings: SettingsV1): TV1SettingsConfig {\n // V1_0 settings are flat: the settings object IS the config.\n return settings;\n }\n\n protected settingsRegistry(settings: SettingsV1): RegistryV1 {\n return settings.registry;\n }\n\n protected buildInitialVaultDatum(): VaultDatumV1 {\n return { circulating_susdr: 0n };\n }\n\n protected buildUpdatedVaultDatum(\n previous: VaultDatumV1,\n sUSDrDelta: bigint,\n ): VaultDatumV1 {\n return { circulating_susdr: previous.circulating_susdr + sUSDrDelta };\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0_rc1/index.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0_rc1/index.js new file mode 100644 index 0000000000..02635cabd3 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0_rc1/index.js @@ -0,0 +1,1518 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.RealfiSDKV1_0Rc1 = exports.DIRECT_ACTION_PADDING_ASSET = void 0; +var _core = require("@blaze-cardano/core"); +var _data = _interopRequireWildcard(require("@blaze-cardano/data")); +var Data = _data; +var _sdk = require("@blaze-cardano/sdk"); +var _index = require("../../generated-types/index.js"); +var _index2 = require("../shared/index.js"); +var _family = require("../v1/family.js"); +var _orderSanity = require("../v1/order-sanity.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t6 in e) "default" !== _t6 && {}.hasOwnProperty.call(e, _t6) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t6)) && (i.get || i.set) ? o(f, _t6, i) : f[_t6] = e[_t6]); return f; })(e, t); } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); } +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); } +function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); } +function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +// ───────────────────────────────────────────────────────────────────────────── +// Constants +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Sentinel `reserve_asset` used in V1_0_Rc1 TreasuryRequestV1 redeemers for + * DirectMint and DirectBurn actions, which have no real reserve asset in + * their order datum. The on-chain validators `direct_mint_logic` and + * `direct_burn_logic` do not inspect this field; this sentinel makes the + * intent explicit both in code and when inspecting on-chain redeemers. + * + * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a + * sentinel and extremely unlikely to occur as a real script hash) + * - `asset_name`: "unused" (ASCII) + * + * Keep in sync with backend `contract.DirectActionPaddingAsset`. + */ +var DIRECT_ACTION_PADDING_ASSET = exports.DIRECT_ACTION_PADDING_ASSET = ["00".repeat(28), (0, _core.toHex)(new TextEncoder().encode("unused"))]; + +// ───────────────────────────────────────────────────────────────────────────── +// Types +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Extract the requests list from a signed payload action, regardless of action type. + * Both TreasuryRequestV1 and RequestV1 have `origin: { transaction_id, output_index }`. + */ +function getRequestsFromAction(action) { + if ("Mint" in action) return action.Mint.requests; + if ("Burn" in action) return action.Burn.requests; + if ("Withdraw" in action) return action.Withdraw.requests; + if ("Deposit" in action) return action.Deposit.requests; + if ("Stake" in action) return action.Stake.requests; + if ("Unstake" in action) return action.Unstake.requests; + if ("DirectMint" in action) return action.DirectMint.requests; + if ("DirectBurn" in action) return action.DirectBurn.requests; + throw new Error("Unknown action type in signed payload"); +} + +// eslint-disable-next-line @typescript-eslint/naming-convention +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── +/** + * V1_0Rc1 SDK implementation. + * + * Extends V0_4 with: + * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios) + * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded + * - Forfeit parameter: Support yield forfeiture during unstake operations + * - New Settings fields: direct_mint_permission, direct_burn_permission + * + * Scaffolding (scripts, deploy/register, treasury, vault, one-shot, cancel, + * invalidate) is inherited from {@link RealfiSDKV1Family}. The release + * candidate's protocol redeemer schema is structurally different from v1_0 + * (`TreasuryRequestV1[]` + `RequestV1[]`, no fees, no `min_received`), so the + * order builders, signed-payload construction, and execute builders override + * the family's v1_0-semantics defaults with the rc1 behavior verbatim. No + * signing schemas are passed to the family constructor — both consumers are + * overridden here. + */ +var RealfiSDKV1_0Rc1 = exports.RealfiSDKV1_0Rc1 = /*#__PURE__*/function (_RealfiSDKV1Family) { + function RealfiSDKV1_0Rc1() { + var _this; + _classCallCheck(this, RealfiSDKV1_0Rc1); + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + _this = _callSuper(this, RealfiSDKV1_0Rc1, [].concat(args)); + _defineProperty(_this, "version", "V1_0_Rc1"); + return _this; + } + _inherits(RealfiSDKV1_0Rc1, _RealfiSDKV1Family); + return _createClass(RealfiSDKV1_0Rc1, [{ + key: "settingsConfig", + value: + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + function settingsConfig(settings) { + // V1_0_Rc1 settings are flat: the settings object IS the config. + return settings; + } + }, { + key: "settingsRegistry", + value: function settingsRegistry(settings) { + return settings.registry; + } + }, { + key: "buildInitialVaultDatum", + value: function buildInitialVaultDatum() { + return { + circulating_susdr: 0n + }; + } + }, { + key: "buildUpdatedVaultDatum", + value: function buildUpdatedVaultDatum(previous, sUSDrDelta) { + return { + circulating_susdr: previous.circulating_susdr + sUSDrDelta + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Order Builder Methods (rc1 order datums carry no min_received) + // ───────────────────────────────────────────────────────────────────────────── + }, { + key: "buildStakeContinuation", + value: function () { + var _buildStakeContinuation = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_params) { + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + throw new Error("Stake continuations are not supported on V1_0_Rc1 because its order schema has no min_received"); + case 1: + return _context.a(2); + } + }, _callee); + })); + function buildStakeContinuation(_x) { + return _buildStakeContinuation.apply(this, arguments); + } + return buildStakeContinuation; + }() + /** + * Internal helper to build an order transaction. + */ + }, { + key: "_buildOrderTx", + value: (function () { + var _buildOrderTx2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(params) { + var _params$data; + var orderContractAddress, owner, orderDatum, serializedDatum, tx, _t, _t2; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + orderContractAddress = (0, _core.addressFromValidator)(this.network, this.orderScript); + owner = params.owner; + if (owner) { + _context2.n = 2; + break; + } + _context2.n = 1; + return this.blaze.wallet.getChangeAddress(); + case 1: + _t = _context2.v.getProps().paymentPart.hash.toString(); + _t2 = { + key_hash: _t + }; + owner = { + Signature: _t2 + }; + case 2: + orderDatum = { + action: params.action, + owner: owner, + destination: params.destination, + data: (_params$data = params.data) !== null && _params$data !== void 0 ? _params$data : Data.Void() + }; + serializedDatum = Data.serialize(_index.V1_0Rc1Types.OrderDatumV1, orderDatum); + tx = this.newOrderTransaction(params.extraLabels); + tx.lockAssets(orderContractAddress, params.valueToLock, serializedDatum); + return _context2.a(2, tx); + } + }, _callee2, this); + })); + function _buildOrderTx(_x2) { + return _buildOrderTx2.apply(this, arguments); + } + return _buildOrderTx; + }() + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + ) + }, { + key: "buildMintOrderTx", + value: (function () { + var _buildMintOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(params) { + var reserveAssetId, settings, ra, reserveAmount; + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + if (!(params.amount <= 0n)) { + _context3.n = 1; + break; + } + throw new Error("Mint amount must be positive"); + case 1: + reserveAssetId = _sdk.Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); // Convert USDr amount to reserve amount using ceiling division + // to ensure enough reserve is locked for on-chain validation + _context3.n = 2; + return this.getVersionSettings(); + case 2: + settings = _context3.v; + ra = (0, _index2.findReserveAsset)(settings, params.reserveAsset); + reserveAmount = (0, _index2.usdrToReserveCeil)(params.amount, ra); + return _context3.a(2, this._buildOrderTx({ + action: { + OMint: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: (0, _sdk.makeValue)(_family.MIN_LOVELACE, [reserveAssetId, reserveAmount]), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee3, this); + })); + function buildMintOrderTx(_x3) { + return _buildMintOrderTx.apply(this, arguments); + } + return buildMintOrderTx; + }() + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + ) + }, { + key: "buildRedeemOrderTx", + value: (function () { + var _buildRedeemOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(params) { + var settings, stablecoinAssetId; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.n) { + case 0: + if (!(params.amount <= 0n)) { + _context4.n = 1; + break; + } + throw new Error("Redeem amount must be positive"); + case 1: + _context4.n = 2; + return this.getVersionSettings(); + case 2: + settings = _context4.v; + (0, _index2.findReserveAsset)(settings, params.reserveAsset); + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + return _context4.a(2, this._buildOrderTx({ + action: { + ORedeem: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: (0, _sdk.makeValue)(_family.MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee4, this); + })); + function buildRedeemOrderTx(_x4) { + return _buildRedeemOrderTx.apply(this, arguments); + } + return buildRedeemOrderTx; + }() + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + ) + }, { + key: "buildStakeOrderTx", + value: (function () { + var _buildStakeOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(params) { + var stablecoinAssetId; + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + if (!(params.amount <= 0n)) { + _context5.n = 1; + break; + } + throw new Error("Stake amount must be positive"); + case 1: + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + return _context5.a(2, this._buildOrderTx({ + action: { + OStake: { + amount: params.amount + } + }, + valueToLock: (0, _sdk.makeValue)(_family.MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee5, this); + })); + function buildStakeOrderTx(_x5) { + return _buildStakeOrderTx.apply(this, arguments); + } + return buildStakeOrderTx; + }()) + }, { + key: "_buildUnstakeOrderTx", + value: function () { + var _buildUnstakeOrderTx2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(params) { + var _params$forfeit; + var forfeit, sUSDrAssetId; + return _regenerator().w(function (_context6) { + while (1) switch (_context6.n) { + case 0: + if (!(params.amount <= 0n)) { + _context6.n = 1; + break; + } + throw new Error("Unstake amount must be positive"); + case 1: + forfeit = (_params$forfeit = params.forfeit) !== null && _params$forfeit !== void 0 ? _params$forfeit : 0n; + if (!(forfeit < 0n)) { + _context6.n = 2; + break; + } + throw new Error("Forfeit amount cannot be negative"); + case 2: + sUSDrAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + return _context6.a(2, this._buildOrderTx({ + action: { + OUnstake: { + amount: params.amount, + forfeit: forfeit + } + }, + valueToLock: (0, _sdk.makeValue)(_family.MIN_LOVELACE, [sUSDrAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + extraLabels: params.extraLabels + })); + } + }, _callee6, this); + })); + function _buildUnstakeOrderTx(_x6) { + return _buildUnstakeOrderTx2.apply(this, arguments); + } + return _buildUnstakeOrderTx; + }() + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockSlot - Slot number after which the user can spend the released USDr + * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0) + */ + }, { + key: "buildUnstakeOrderTx", + value: (function () { + var _buildUnstakeOrderTx3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(params) { + var timelockDestination, extraLabels; + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + timelockDestination = (0, _index2.buildTimelockDestination)(params.destination, params.unlockSlot); + extraLabels = new Map([[_index2.UNSTAKE_METADATA_LABEL, (0, _index2.buildUnstakeMetadatum)(params.destination, params.unlockSlot)]]); + return _context7.a(2, this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + owner: params.owner, + data: params.data, + extraLabels: extraLabels + })); + } + }, _callee7, this); + })); + function buildUnstakeOrderTx(_x7) { + return _buildUnstakeOrderTx3.apply(this, arguments); + } + return buildUnstakeOrderTx; + }() + /** + * Build a treasury-managed unstake order that wraps the destination in a + * native timelock script controlled by the order owner. + * + * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps + * treasury multisig ownership on the released USDr while enforcing the same + * unlock slot used by the retail unstake helper. The owner must be convertible + * to a Cardano native script. + */ + ) + }, { + key: "buildTreasuryUnstakeOrderTx", + value: (function () { + var _buildTreasuryUnstakeOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(params) { + var nativeScript, timelockDestination, extraLabels, tx; + return _regenerator().w(function (_context8) { + while (1) switch (_context8.n) { + case 0: + nativeScript = (0, _index2.buildMultisigTimelockNativeScript)(params.owner, params.unlockSlot); + timelockDestination = { + address: { + payment_credential: { + Script: [nativeScript.hash()] + }, + stake_credential: params.destination.address.stake_credential + }, + datum: "NoDatum" + }; // Attach the unstake metadata (label 55534472) exactly like the retail + // path (buildUnstakeOrderTx). track-chain requires this label to index the + // order; without it the confirmed unstake output is silently dropped + // (WTB-1466). Mirror retail precisely: the metadatum is built from the + // user-supplied destination (params.destination), not the derived timelock + // destination, and carries the same unlock_time. + extraLabels = new Map([[_index2.UNSTAKE_METADATA_LABEL, (0, _index2.buildUnstakeMetadatum)(params.destination, params.unlockSlot)]]); + _context8.n = 1; + return this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + owner: params.owner, + data: params.data, + extraLabels: extraLabels + }); + case 1: + tx = _context8.v; + return _context8.a(2, { + tx: tx, + nativeScript: nativeScript + }); + } + }, _callee8, this); + })); + function buildTreasuryUnstakeOrderTx(_x8) { + return _buildTreasuryUnstakeOrderTx.apply(this, arguments); + } + return buildTreasuryUnstakeOrderTx; + }() // ───────────────────────────────────────────────────────────────────────────── + // Signed Payload and Signing + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build the V1_0Rc1 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + */ + ) + }, { + key: "getSignedPayloadFromOrderInputs", + value: function () { + var _getSignedPayloadFromOrderInputs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(orderInputs) { + var sortedInputs, nonce, resolvedUtxos, actionType, treasuryRequests, requests, _iterator, _step, _utxo$output$datum, utxo, datumData, datum, origin, parsed, screened, _parsed$reserveAsset, _parsed$yield, reserveAsset, _parsed$forfeit, batchVerdict, action, payload, serialized, signedPayload, payloadHash, _t3, _t4; + return _regenerator().w(function (_context9) { + while (1) switch (_context9.p = _context9.n) { + case 0: + if (!(orderInputs.length === 0)) { + _context9.n = 1; + break; + } + throw new Error("At least one order input is required"); + case 1: + sortedInputs = (0, _index2.sortOrderInputs)(orderInputs); + nonce = (0, _index2.buildNonceFromUtxo)(sortedInputs[0]); + _context9.n = 2; + return this.blaze.provider.resolveUnspentOutputs(sortedInputs); + case 2: + resolvedUtxos = _context9.v; + actionType = null; + treasuryRequests = []; + requests = []; + _iterator = _createForOfIteratorHelper(resolvedUtxos); + _context9.p = 3; + _iterator.s(); + case 4: + if ((_step = _iterator.n()).done) { + _context9.n = 11; + break; + } + utxo = _step.value; + datumData = (_utxo$output$datum = utxo.output().datum()) === null || _utxo$output$datum === void 0 ? void 0 : _utxo$output$datum.asInlineData(); + if (datumData) { + _context9.n = 5; + break; + } + throw new Error("Order UTXO has no inline datum"); + case 5: + datum = (0, _data.parse)(_index.V1_0Rc1Types.OrderDatumV1, datumData); + origin = { + transaction_id: utxo.input().transactionId().toString(), + output_index: utxo.input().index() + }; + parsed = this.classifyOrderAction(datum); // WTB-1764: same screen the family applies. rc1 has no min_received, but + // its predicates still demand an amount sign (`v1_0_rc1/stake.ak:64`, + // `unstake.ak:64`) and every one of them is an `expect` inside a single + // fold, so a request that fails takes the whole transaction with it. + _context9.n = 6; + return this.screenOrderForExecution(utxo, parsed); + case 6: + screened = _context9.v; + if (screened.ok) { + _context9.n = 7; + break; + } + throw new Error("Order ".concat(origin.transaction_id, "#").concat(origin.output_index, " cannot be executed: ") + "".concat(screened.reason, ". Every order batched with it would crash on-chain.")); + case 7: + if (!(actionType === null)) { + _context9.n = 8; + break; + } + actionType = parsed.actionType; + _context9.n = 9; + break; + case 8: + if (!(actionType !== parsed.actionType)) { + _context9.n = 9; + break; + } + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + case 9: + if (parsed.isTreasuryAction) { + // DirectMint/DirectBurn datums have no reserve_asset; the redeemer + // struct requires one but the on-chain validator ignores it for + // direct actions, so we pad with DIRECT_ACTION_PADDING_ASSET. + reserveAsset = (_parsed$reserveAsset = parsed.reserveAsset) !== null && _parsed$reserveAsset !== void 0 ? _parsed$reserveAsset : DIRECT_ACTION_PADDING_ASSET; + treasuryRequests.push({ + destination: datum.destination, + amount: parsed.amount, + "yield": (_parsed$yield = parsed["yield"]) !== null && _parsed$yield !== void 0 ? _parsed$yield : 0n, + origin: origin, + reserve_asset: reserveAsset + }); + } else { + requests.push({ + destination: datum.destination, + amount: parsed.amount, + origin: origin, + forfeit: (_parsed$forfeit = parsed.forfeit) !== null && _parsed$forfeit !== void 0 ? _parsed$forfeit : 0n + }); + } + case 10: + _context9.n = 4; + break; + case 11: + _context9.n = 13; + break; + case 12: + _context9.p = 12; + _t3 = _context9.v; + _iterator.e(_t3); + case 13: + _context9.p = 13; + _iterator.f(); + return _context9.f(13); + case 14: + if (!(actionType === "deposit")) { + _context9.n = 15; + break; + } + batchVerdict = (0, _orderSanity.screenDepositBatch)(treasuryRequests.map(function (request) { + return { + actionType: "deposit", + amount: request.amount, + "yield": request["yield"] + }; + })); + if (batchVerdict.ok) { + _context9.n = 15; + break; + } + throw new Error("".concat(batchVerdict.reason, ". Every order batched with it would crash on-chain.")); + case 15: + _t4 = actionType; + _context9.n = _t4 === "mint" ? 16 : _t4 === "burn" ? 17 : _t4 === "withdraw" ? 18 : _t4 === "deposit" ? 19 : _t4 === "stake" ? 20 : _t4 === "unstake" ? 21 : _t4 === "direct_mint" ? 22 : _t4 === "direct_burn" ? 23 : 24; + break; + case 16: + action = { + Mint: { + requests: treasuryRequests + } + }; + return _context9.a(3, 25); + case 17: + action = { + Burn: { + requests: treasuryRequests + } + }; + return _context9.a(3, 25); + case 18: + action = { + Withdraw: { + requests: treasuryRequests + } + }; + return _context9.a(3, 25); + case 19: + action = { + Deposit: { + requests: treasuryRequests + } + }; + return _context9.a(3, 25); + case 20: + action = { + Stake: { + requests: requests + } + }; + return _context9.a(3, 25); + case 21: + action = { + Unstake: { + requests: requests + } + }; + return _context9.a(3, 25); + case 22: + action = { + DirectMint: { + requests: treasuryRequests + } + }; + return _context9.a(3, 25); + case 23: + action = { + DirectBurn: { + requests: treasuryRequests + } + }; + return _context9.a(3, 25); + case 24: + throw new Error("No orders to process"); + case 25: + payload = { + action: action, + nonce: nonce + }; + serialized = Data.serialize(_index.V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1, payload); + signedPayload = serialized.toCbor().toString(); + payloadHash = (0, _core.blake2b_256)((0, _core.HexBlob)(signedPayload)); + return _context9.a(2, { + signedPayload: signedPayload, + payloadHash: payloadHash + }); + } + }, _callee9, this, [[3, 12, 13, 14]]); + })); + function getSignedPayloadFromOrderInputs(_x9) { + return _getSignedPayloadFromOrderInputs.apply(this, arguments); + } + return getSignedPayloadFromOrderInputs; + }() // ───────────────────────────────────────────────────────────────────────────── + // Execute Orders + // ───────────────────────────────────────────────────────────────────────────── + /** + * Build a transaction to execute orders. + * + * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake, + * direct_mint, direct_burn. + */ + }, { + key: "buildExecuteOrdersTx", + value: function () { + var _buildExecuteOrdersTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(params) { + var orderInputs, signedPayloadCbor, signatures, signedPayload, sortedOrderInputs, orderUtxos, orderInfos, actionType, _yield$this$getParsed, proxyUtxo, parsedProxyDatum, settings, needsTreasury, needsVault, isMintAction, isStakeAction, scriptHashesNeeded, refInputs, treasuryUtxo, parsedTreasuryDatum, treasuryResult, vaultUtxo, parsedVaultDatum, vaultResult, walletUtxos, excludedInputIds, utxoKey, _iterator2, _step2, orderInfo, _i, _Object$values, refUtxo, feeUtxos, allInputRefs, _iterator3, _step3, feeUtxo, sortedAllInputRefs, findInputIdx, treasuryInputIdx, vaultInputIdx, signedRequests, originToRequestIdx, i, o, inputToRequests, requestToOutputs, outputIdx, input, key, requestIdx, numDestOutputs, numExtraOutputs, totalYield, _vaultValue$multiasse, _vaultValue$multiasse2, vaultValue, _stablecoinAssetId2, vaultUSDr, treasuryCirculating, _calculateYieldShares, unstakedYieldShare, totalForfeit, treasuryOutputIdx, vaultOutputIdx, extra, serializedSignedRedeemer, executeRedeemer, tx, _iterator4, _step4, _orderInfo, _iterator5, _step5, _feeUtxo, orchestratorRewardAccount, subValidatorHash, subValidatorRewardAccount, voidRedeemer, stablecoinAssetId, sUSDrAssetId, _t5; + return _regenerator().w(function (_context0) { + while (1) switch (_context0.n) { + case 0: + orderInputs = params.orderInputs, signedPayloadCbor = params.signedPayload, signatures = params.signatures; // Deserialize CBOR hex to object for internal use + signedPayload = (0, _data.parse)(_index.V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1, _core.PlutusData.fromCbor((0, _core.HexBlob)(signedPayloadCbor))); // 1. Sort and resolve order UTxOs + sortedOrderInputs = (0, _index2.sortOrderInputs)(orderInputs); + _context0.n = 1; + return this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + case 1: + orderUtxos = _context0.v; + // 2. Parse orders and validate same type + orderInfos = this.parseOrderInfos(orderUtxos); + actionType = orderInfos[0].actionType; // 3. Get protocol settings + _context0.n = 2; + return this.getParsedProxyDatum(); + case 2: + _yield$this$getParsed = _context0.v; + proxyUtxo = _yield$this$getParsed.proxyUtxo; + parsedProxyDatum = _yield$this$getParsed.parsedProxyDatum; + settings = parsedProxyDatum.settings; // 4. Determine what we need + needsTreasury = ["mint", "burn", "withdraw", "deposit", "direct_mint", "direct_burn"].includes(actionType); + needsVault = ["stake", "unstake", "deposit"].includes(actionType); // 5. Get script reference inputs + // V1.0 requires the orchestrator and the relevant sub-validator script + isMintAction = ["mint", "burn", "direct_mint", "direct_burn"].includes(actionType); + isStakeAction = ["stake", "unstake"].includes(actionType); + scriptHashesNeeded = { + protocol: this.protocolScriptHash, + order: this.orderScriptHash + }; + if (isMintAction) { + scriptHashesNeeded.protocolMint = this.protocolMintScriptHash; + } else if (isStakeAction) { + scriptHashesNeeded.protocolStake = this.protocolStakeScriptHash; + } else { + scriptHashesNeeded.protocolManagement = this.protocolManagementScriptHash; + } + if (needsTreasury) { + scriptHashesNeeded.treasury = this.treasuryScriptHash; + } + if (needsVault) { + scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash; + } + _context0.n = 3; + return this.getScriptReferenceInputs(scriptHashesNeeded); + case 3: + refInputs = _context0.v; + if (!needsTreasury) { + _context0.n = 5; + break; + } + _context0.n = 4; + return this.getTreasuryDatum(); + case 4: + treasuryResult = _context0.v; + treasuryUtxo = treasuryResult.treasuryUtxo; + parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum; + case 5: + if (!needsVault) { + _context0.n = 7; + break; + } + _context0.n = 6; + return this.getVaultDatum(); + case 6: + vaultResult = _context0.v; + vaultUtxo = vaultResult.vaultUtxo; + parsedVaultDatum = vaultResult.parsedVaultDatum; + case 7: + _context0.n = 8; + return this.blaze.wallet.getUnspentOutputs(); + case 8: + walletUtxos = _context0.v; + excludedInputIds = new Set(); + utxoKey = function utxoKey(inp) { + return "".concat(inp.transactionId().toString(), "#").concat(inp.index().toString()); + }; // Exclude script inputs (order, treasury, vault) + _iterator2 = _createForOfIteratorHelper(orderInfos); + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + orderInfo = _step2.value; + excludedInputIds.add(utxoKey(orderInfo.utxo.input())); + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + if (treasuryUtxo) { + excludedInputIds.add(utxoKey(treasuryUtxo.input())); + } + if (vaultUtxo) { + excludedInputIds.add(utxoKey(vaultUtxo.input())); + } + // Exclude reference inputs (must be disjoint from regular inputs) + excludedInputIds.add(utxoKey(proxyUtxo.input())); + for (_i = 0, _Object$values = Object.values(refInputs); _i < _Object$values.length; _i++) { + refUtxo = _Object$values[_i]; + if (refUtxo) { + excludedInputIds.add(utxoKey(refUtxo.input())); + } + } + feeUtxos = walletUtxos.filter(function (utxo) { + return !excludedInputIds.has(utxoKey(utxo.input())); + }); // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex). + allInputRefs = orderInfos.map(function (o) { + return o.utxo.input(); + }); + if (treasuryUtxo) { + allInputRefs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + allInputRefs.push(vaultUtxo.input()); + } + _iterator3 = _createForOfIteratorHelper(feeUtxos); + try { + for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) { + feeUtxo = _step3.value; + allInputRefs.push(feeUtxo.input()); + } + } catch (err) { + _iterator3.e(err); + } finally { + _iterator3.f(); + } + sortedAllInputRefs = _toConsumableArray(allInputRefs).sort(function (a, b) { + var txA = a.transactionId().toString(); + var txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + findInputIdx = function findInputIdx(input) { + var idx = sortedAllInputRefs.findIndex(function (r) { + return r.transactionId().toString() === input.transactionId().toString() && r.index() === input.index(); + }); + return BigInt(idx); + }; + treasuryInputIdx = treasuryUtxo ? findInputIdx(treasuryUtxo.input()) : 0n; + vaultInputIdx = vaultUtxo ? findInputIdx(vaultUtxo.input()) : undefined; // 8a. Correlate order inputs to signed request indices via origin fields. + // When all orders are present this produces the same identity mapping as before. + // When a subset is passed (partial execution), it maps each input to the + // correct request index in the signed payload. + signedRequests = getRequestsFromAction(signedPayload.action); + originToRequestIdx = new Map(); + for (i = 0; i < signedRequests.length; i++) { + o = signedRequests[i].origin; + originToRequestIdx.set("".concat(o.transaction_id, "#").concat(o.output_index), i); + } + inputToRequests = []; + requestToOutputs = []; + outputIdx = 0; + case 9: + if (!(outputIdx < orderInfos.length)) { + _context0.n = 12; + break; + } + input = orderInfos[outputIdx].utxo.input(); + key = "".concat(input.transactionId(), "#").concat(input.index()); + requestIdx = originToRequestIdx.get(key); + if (!(requestIdx === undefined)) { + _context0.n = 10; + break; + } + throw new Error("Order input ".concat(key, " not found in signed payload")); + case 10: + inputToRequests.push(BigInt(requestIdx)); + requestToOutputs.push(BigInt(outputIdx)); + case 11: + outputIdx++; + _context0.n = 9; + break; + case 12: + // 9. Build outputs and compute output indices + numDestOutputs = orderInfos.length; // For deposit with positive yield, the yield pot output is inserted after destinations + numExtraOutputs = 0; + if (actionType === "deposit") { + totalYield = orderInfos.reduce(function (sum, o) { + var _o$yield; + return sum + ((_o$yield = o["yield"]) !== null && _o$yield !== void 0 ? _o$yield : 0n); + }, 0n); + if (totalYield > 0n) { + vaultValue = vaultUtxo.output().amount(); + _stablecoinAssetId2 = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + vaultUSDr = (_vaultValue$multiasse = (_vaultValue$multiasse2 = vaultValue.multiasset()) === null || _vaultValue$multiasse2 === void 0 ? void 0 : _vaultValue$multiasse2.get(_stablecoinAssetId2)) !== null && _vaultValue$multiasse !== void 0 ? _vaultValue$multiasse : 0n; + treasuryCirculating = parsedTreasuryDatum.circulating_supply; + _calculateYieldShares = (0, _family.calculateYieldShares)(totalYield, vaultUSDr, treasuryCirculating), unstakedYieldShare = _calculateYieldShares.unstakedYieldShare; + if (unstakedYieldShare > 0n) { + numExtraOutputs = 1; + } + } + } + + // For unstake with forfeit, add yield pot output + if (actionType === "unstake") { + totalForfeit = orderInfos.reduce(function (sum, o) { + var _o$forfeit; + return sum + ((_o$forfeit = o.forfeit) !== null && _o$forfeit !== void 0 ? _o$forfeit : 0n); + }, 0n); + if (totalForfeit > 0n) { + numExtraOutputs = 1; + } + } + treasuryOutputIdx = needsTreasury ? BigInt(numDestOutputs + numExtraOutputs) : 0n; + vaultOutputIdx = needsVault ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0)) : undefined; // 10. Build ExtraProtocolRedeemer + extra = { + request_to_outputs: requestToOutputs, + input_to_requests: inputToRequests, + treasury_input_idx: treasuryInputIdx, + treasury_output_idx: treasuryOutputIdx, + vault_input_idx: vaultInputIdx, + vault_output_idx: vaultOutputIdx + }; // 11. Build SignedRedeemer + serializedSignedRedeemer = Data.serialize(_index.V1_0Rc1Types.SignedRedeemer_v1_0_ExtraProtocolRedeemerV1, { + extra: extra, + payload: signedPayload, + signatures: signatures + }); + executeRedeemer = Data.serialize(_index.V1_0Rc1Types.OrderRedeemerV1, "Execute"); // 12. Build the transaction + tx = this.newOrderTransaction(); // Add order inputs with Execute redeemer + _iterator4 = _createForOfIteratorHelper(orderInfos); + try { + for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) { + _orderInfo = _step4.value; + tx.addInput(_orderInfo.utxo, executeRedeemer); + } + + // Add wallet fee inputs explicitly + } catch (err) { + _iterator4.e(err); + } finally { + _iterator4.f(); + } + _iterator5 = _createForOfIteratorHelper(feeUtxos); + try { + for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) { + _feeUtxo = _step5.value; + tx.addInput(_feeUtxo); + } + + // Add reference inputs + } catch (err) { + _iterator5.e(err); + } finally { + _iterator5.f(); + } + tx.addReferenceInput(refInputs.protocol); + tx.addReferenceInput(refInputs.order); + tx.addReferenceInput(proxyUtxo); + // V1.0 sub-validator reference inputs + if (refInputs.protocolMint) { + tx.addReferenceInput(refInputs.protocolMint); + } + if (refInputs.protocolStake) { + tx.addReferenceInput(refInputs.protocolStake); + } + if (refInputs.protocolManagement) { + tx.addReferenceInput(refInputs.protocolManagement); + } + if (refInputs.treasury) { + tx.addReferenceInput(refInputs.treasury); + } + if (refInputs.stakingVault) { + tx.addReferenceInput(refInputs.stakingVault); + } + + // Add orchestrator withdrawal with signed redeemer + orchestratorRewardAccount = _sdk.Core.RewardAccount.fromCredential({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash + }, this.network); + tx.addWithdrawal(orchestratorRewardAccount, 0n, serializedSignedRedeemer); + + // Determine which sub-validator to use based on action type + subValidatorHash = actionType === "mint" || actionType === "burn" || actionType === "direct_mint" || actionType === "direct_burn" ? this.protocolMintScriptHash : actionType === "stake" || actionType === "unstake" ? this.protocolStakeScriptHash : this.protocolManagementScriptHash; // deposit, withdraw + // Add sub-validator withdrawal with void redeemer + subValidatorRewardAccount = _sdk.Core.RewardAccount.fromCredential({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: subValidatorHash + }, this.network); + voidRedeemer = Data.Void(); + tx.addWithdrawal(subValidatorRewardAccount, 0n, voidRedeemer); + + // Build per-action-type outputs, minting, and state updates + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + sUSDrAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + _t5 = actionType; + _context0.n = _t5 === "mint" ? 13 : _t5 === "burn" ? 14 : _t5 === "withdraw" ? 15 : _t5 === "deposit" ? 16 : _t5 === "stake" ? 17 : _t5 === "unstake" ? 18 : _t5 === "direct_mint" ? 19 : _t5 === "direct_burn" ? 20 : 21; + break; + case 13: + this.buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + return _context0.a(3, 21); + case 14: + this.buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + return _context0.a(3, 21); + case 15: + this.buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings); + return _context0.a(3, 21); + case 16: + this.buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings); + return _context0.a(3, 21); + case 17: + this.buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum); + return _context0.a(3, 21); + case 18: + this.buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum, settings); + return _context0.a(3, 21); + case 19: + this.buildDirectMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum); + return _context0.a(3, 21); + case 20: + this.buildDirectBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum); + return _context0.a(3, 21); + case 21: + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + return _context0.a(2, tx); + } + }, _callee0, this); + })); + function buildExecuteOrdersTx(_x0) { + return _buildExecuteOrdersTx.apply(this, arguments); + } + return buildExecuteOrdersTx; + }() // ───────────────────────────────────────────────────────────────────────────── + // Per-Action Execute Builders (rc1: no fees, plain min-ADA destination outputs) + // ───────────────────────────────────────────────────────────────────────────── + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + */ + }, { + key: "buildMintExecute", + value: function buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + var totalAmount = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // Destination outputs: send USDr to each destination + var _iterator6 = _createForOfIteratorHelper(orderInfos), + _step6; + try { + for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) { + var orderInfo = _step6.value; + var destAddress = (0, _index2.destinationToAddress)(this.network, orderInfo.datum.destination); + (0, _index2.addDirectOutput)(tx, destAddress, (0, _sdk.makeValue)(_family.MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount])); + } + + // Mint USDr + } catch (err) { + _iterator6.e(err); + } finally { + _iterator6.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Compute per-reserve-asset deltas + var reserveDeltas = (0, _index2.computeReserveDeltas)(orderInfos, settings); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalAmount); + } + + /** + * Burn: USDr burned, reserve sent to destinations. + */ + }, { + key: "buildBurnExecute", + value: function buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + var totalAmount = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // Destination outputs: send reserve tokens to each destination + var _iterator7 = _createForOfIteratorHelper(orderInfos), + _step7; + try { + for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) { + var orderInfo = _step7.value; + var destAddress = (0, _index2.destinationToAddress)(this.network, orderInfo.datum.destination); + var ra = (0, _index2.findReserveAsset)(settings, orderInfo.reserveAsset); + var reserveAssetId = _sdk.Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + var reserveAmount = (0, _index2.usdrToReserve)(-orderInfo.amount, ra); + (0, _index2.addDirectOutput)(tx, destAddress, (0, _sdk.makeValue)(_family.MIN_LOVELACE, [reserveAssetId, reserveAmount])); + } + + // Burn USDr (totalAmount is negative) + } catch (err) { + _iterator7.e(err); + } finally { + _iterator7.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Compute per-reserve-asset deltas + var reserveDeltas = (0, _index2.computeReserveDeltas)(orderInfos, settings); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalAmount); + } + + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + }, { + key: "buildWithdrawExecute", + value: function buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings) { + // Destination outputs: send reserve tokens to each destination + var _iterator8 = _createForOfIteratorHelper(orderInfos), + _step8; + try { + for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) { + var orderInfo = _step8.value; + var destAddress = (0, _index2.destinationToAddress)(this.network, orderInfo.datum.destination); + var ra = (0, _index2.findReserveAsset)(settings, orderInfo.reserveAsset); + var reserveAssetId = _sdk.Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + var reserveAmount = (0, _index2.usdrToReserve)(orderInfo.amount, ra); + (0, _index2.addDirectOutput)(tx, destAddress, (0, _sdk.makeValue)(_family.MIN_LOVELACE, [reserveAssetId, reserveAmount])); + } + + // Update treasury: reserve decreases, no circulating_supply change + } catch (err) { + _iterator8.e(err); + } finally { + _iterator8.f(); + } + var reserveDeltas = (0, _index2.computeReserveDeltas)(orderInfos, settings, true); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, 0n); + } + + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + }, { + key: "buildDepositExecute", + value: function buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings) { + var _vaultValue$multiasse3, _vaultValue$multiasse4; + var totalYield = orderInfos.reduce(function (sum, o) { + var _o$yield2; + return sum + ((_o$yield2 = o["yield"]) !== null && _o$yield2 !== void 0 ? _o$yield2 : 0n); + }, 0n); + + // Destination outputs: min ADA to each destination + var _iterator9 = _createForOfIteratorHelper(orderInfos), + _step9; + try { + for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) { + var orderInfo = _step9.value; + var destAddress = (0, _index2.destinationToAddress)(this.network, orderInfo.datum.destination); + (0, _index2.addDirectOutput)(tx, destAddress, (0, _sdk.makeValue)(_family.MIN_LOVELACE)); + } + + // Calculate yield split + } catch (err) { + _iterator9.e(err); + } finally { + _iterator9.f(); + } + var vaultValue = vaultUtxo.output().amount(); + var vaultUSDr = (_vaultValue$multiasse3 = (_vaultValue$multiasse4 = vaultValue.multiasset()) === null || _vaultValue$multiasse4 === void 0 ? void 0 : _vaultValue$multiasse4.get(stablecoinAssetId)) !== null && _vaultValue$multiasse3 !== void 0 ? _vaultValue$multiasse3 : 0n; + var treasuryCirculating = parsedTreasuryDatum.circulating_supply; + var _calculateYieldShares2 = (0, _family.calculateYieldShares)(totalYield, vaultUSDr, treasuryCirculating), + stakedYieldShare = _calculateYieldShares2.stakedYieldShare, + unstakedYieldShare = _calculateYieldShares2.unstakedYieldShare; + if (totalYield > 0n) { + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + if (unstakedYieldShare > 0n) { + var yieldPotAddress = (0, _index2.destinationToAddress)(this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum" + }); + (0, _index2.addDirectOutput)(tx, yieldPotAddress, (0, _sdk.makeValue)(_family.MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare])); + } + } else if (totalYield < 0n) { + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + } + + // Update treasury + var reserveDeltas = new Map(); + var _iterator0 = _createForOfIteratorHelper(orderInfos), + _step0; + try { + for (_iterator0.s(); !(_step0 = _iterator0.n()).done;) { + var _orderInfo2$yield, _reserveDeltas$get; + var _orderInfo2 = _step0.value; + var assetId = _orderInfo2.reserveAsset[0] + _orderInfo2.reserveAsset[1]; + var ra = (0, _index2.findReserveAsset)(settings, _orderInfo2.reserveAsset); + var yieldValue = (_orderInfo2$yield = _orderInfo2["yield"]) !== null && _orderInfo2$yield !== void 0 ? _orderInfo2$yield : 0n; + var usdrBacking = yieldValue >= 0n ? _orderInfo2.amount + yieldValue : _orderInfo2.amount; + var reserveAmount = (0, _index2.usdrToReserve)(usdrBacking, ra); + reserveDeltas.set(assetId, ((_reserveDeltas$get = reserveDeltas.get(assetId)) !== null && _reserveDeltas$get !== void 0 ? _reserveDeltas$get : 0n) + reserveAmount); + } + } catch (err) { + _iterator0.e(err); + } finally { + _iterator0.f(); + } + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalYield); + + // Update vault + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, 0n, stakedYieldShare); + } + + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + */ + }, { + key: "buildStakeExecute", + value: function buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum) { + var _vaultValue$multiasse5, _vaultValue$multiasse6; + var totalUSDrStaked = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + var vaultValue = vaultUtxo.output().amount(); + var vaultUSDr = (_vaultValue$multiasse5 = (_vaultValue$multiasse6 = vaultValue.multiasset()) === null || _vaultValue$multiasse6 === void 0 ? void 0 : _vaultValue$multiasse6.get(stablecoinAssetId)) !== null && _vaultValue$multiasse5 !== void 0 ? _vaultValue$multiasse5 : 0n; + var circulatingSUSDr = parsedVaultDatum.circulating_susdr; + var totalSUSDrMinted; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + totalSUSDrMinted = totalUSDrStaked; + } else { + totalSUSDrMinted = totalUSDrStaked * circulatingSUSDr / vaultUSDr; + } + var _iterator1 = _createForOfIteratorHelper(orderInfos), + _step1; + try { + for (_iterator1.s(); !(_step1 = _iterator1.n()).done;) { + var orderInfo = _step1.value; + var sUSDrAmount = void 0; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + sUSDrAmount = orderInfo.amount; + } else { + sUSDrAmount = orderInfo.amount * circulatingSUSDr / vaultUSDr; + } + var destAddress = (0, _index2.destinationToAddress)(this.network, orderInfo.datum.destination); + (0, _index2.addDirectOutput)(tx, destAddress, (0, _sdk.makeValue)(_family.MIN_LOVELACE, [sUSDrAssetId, sUSDrAmount])); + } + } catch (err) { + _iterator1.e(err); + } finally { + _iterator1.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]), Data.Void()); + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, totalSUSDrMinted, totalUSDrStaked); + } + + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + * V1_0Rc1: Supports forfeit parameter - forfeited USDr goes to yield pot. + */ + }, { + key: "buildUnstakeExecute", + value: function buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum, settings) { + var _vaultValue$multiasse7, _vaultValue$multiasse8; + var totalSUSDrBurned = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + var vaultValue = vaultUtxo.output().amount(); + var vaultUSDr = (_vaultValue$multiasse7 = (_vaultValue$multiasse8 = vaultValue.multiasset()) === null || _vaultValue$multiasse8 === void 0 ? void 0 : _vaultValue$multiasse8.get(stablecoinAssetId)) !== null && _vaultValue$multiasse7 !== void 0 ? _vaultValue$multiasse7 : 0n; + var circulatingSUSDr = parsedVaultDatum.circulating_susdr; + if (circulatingSUSDr === 0n) { + throw new Error("Cannot unstake: no sUSDr in circulation"); + } + var totalUSDrReleased = 0n; + var totalForfeit = 0n; + var _iterator10 = _createForOfIteratorHelper(orderInfos), + _step10; + try { + for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) { + var _orderInfo$forfeit; + var orderInfo = _step10.value; + var uSDrEntitled = orderInfo.amount * vaultUSDr / circulatingSUSDr; + var forfeit = (_orderInfo$forfeit = orderInfo.forfeit) !== null && _orderInfo$forfeit !== void 0 ? _orderInfo$forfeit : 0n; + var uSDrAmount = uSDrEntitled - forfeit; + totalUSDrReleased += uSDrEntitled; + totalForfeit += forfeit; + var destAddress = (0, _index2.destinationToAddress)(this.network, orderInfo.datum.destination); + var output = new _sdk.Core.TransactionOutput(destAddress, (0, _sdk.makeValue)(_family.MIN_LOVELACE, [stablecoinAssetId, uSDrAmount])); + tx.addOutput(output); + } + + // Send forfeited USDr to yield pot if any + } catch (err) { + _iterator10.e(err); + } finally { + _iterator10.f(); + } + if (totalForfeit > 0n) { + var yieldPotAddress = (0, _index2.destinationToAddress)(this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum" + }); + (0, _index2.addDirectOutput)(tx, yieldPotAddress, (0, _sdk.makeValue)(_family.MIN_LOVELACE, [stablecoinAssetId, totalForfeit])); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]), Data.Void()); + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, -totalSUSDrBurned, -totalUSDrReleased); + } + + /** + * DirectMint: Mint USDr without reserve asset flow. + * USDr is minted to destinations, treasury circulating_supply increases. + * NO reserve asset changes. + */ + }, { + key: "buildDirectMintExecute", + value: function buildDirectMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum) { + var totalAmount = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // Destination outputs: send USDr to each destination + var _iterator11 = _createForOfIteratorHelper(orderInfos), + _step11; + try { + for (_iterator11.s(); !(_step11 = _iterator11.n()).done;) { + var orderInfo = _step11.value; + var destAddress = (0, _index2.destinationToAddress)(this.network, orderInfo.datum.destination); + (0, _index2.addDirectOutput)(tx, destAddress, (0, _sdk.makeValue)(_family.MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount])); + } + + // Mint USDr + } catch (err) { + _iterator11.e(err); + } finally { + _iterator11.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Update treasury: circulating_supply increases, NO reserve changes + this.updateTreasuryOutputNoReserve(tx, treasuryUtxo, parsedTreasuryDatum, totalAmount); + } + + /** + * DirectBurn: Burn USDr without reserve asset flow. + * USDr is burned, treasury circulating_supply decreases. + * NO reserve asset changes, NO destination outputs (fiat sent off-chain). + * + * The `_stablecoinAssetId` parameter exists only to keep the override + * signature compatible with the family's; rc1's direct-burn output is + * min-ADA only and does not touch the stablecoin asset. + */ + }, { + key: "buildDirectBurnExecute", + value: function buildDirectBurnExecute(tx, orderInfos, _stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum) { + // totalAmount is negative for burns (from classifyOrderAction) + var totalAmount = orderInfos.reduce(function (sum, o) { + return sum + o.amount; + }, 0n); + + // CRITICAL: No destination outputs for DirectBurn + // USDr is burned, fiat is sent off-chain. Nothing goes to user on-chain. + // We just need to return min ADA to the destination (contract may require this) + var _iterator12 = _createForOfIteratorHelper(orderInfos), + _step12; + try { + for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) { + var orderInfo = _step12.value; + var destAddress = (0, _index2.destinationToAddress)(this.network, orderInfo.datum.destination); + (0, _index2.addDirectOutput)(tx, destAddress, (0, _sdk.makeValue)(_family.MIN_LOVELACE)); + } + + // Burn USDr (totalAmount is negative) + } catch (err) { + _iterator12.e(err); + } finally { + _iterator12.f(); + } + tx.addMint(this.stablecoinPolicyId, new Map([[_sdk.Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Update treasury: circulating_supply decreases, NO reserve changes + this.updateTreasuryOutputNoReserve(tx, treasuryUtxo, parsedTreasuryDatum, totalAmount); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Protected Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Classify an order action from its datum (rc1 actions carry no min_received). + */ + }, { + key: "classifyOrderAction", + value: function classifyOrderAction(datum) { + var action = datum.action; + if ("OMint" in action) { + return { + actionType: "mint", + amount: action.OMint.amount, + reserveAsset: action.OMint.reserve_asset, + isTreasuryAction: true + }; + } else if ("ORedeem" in action) { + return { + actionType: "burn", + amount: -action.ORedeem.amount, + reserveAsset: action.ORedeem.reserve_asset, + isTreasuryAction: true + }; + } else if ("ODeposit" in action) { + return { + actionType: "deposit", + amount: action.ODeposit.principal, + "yield": action.ODeposit["yield"], + reserveAsset: action.ODeposit.reserve_asset, + isTreasuryAction: true + }; + } else if ("OWithdraw" in action) { + return { + actionType: "withdraw", + amount: action.OWithdraw.amount, + reserveAsset: action.OWithdraw.reserve_asset, + isTreasuryAction: true + }; + } else if ("OStake" in action) { + return { + actionType: "stake", + amount: action.OStake.amount, + isTreasuryAction: false + }; + } else if ("OUnstake" in action) { + return { + actionType: "unstake", + amount: action.OUnstake.amount, + forfeit: action.OUnstake.forfeit, + isTreasuryAction: false + }; + } else if ("ODirectMint" in action) { + return { + actionType: "direct_mint", + amount: action.ODirectMint.amount, + isTreasuryAction: true + }; + } else if ("ODirectBurn" in action) { + return { + actionType: "direct_burn", + amount: -action.ODirectBurn.amount, + isTreasuryAction: true + }; + } + throw new Error("Unknown order action type"); + } + }], [{ + key: "create", + value: + /** + * Create a V1_0Rc1 SDK instance. + */ + function create(blaze, params) { + var _params$enableTrace, _params$referenceInpu, _params$referenceInpu2, _params$referenceInpu3, _params$referenceInpu4, _params$referenceInpu5; + var enableTrace = (_params$enableTrace = params.enableTrace) !== null && _params$enableTrace !== void 0 ? _params$enableTrace : false; + + // 1. Create oneshot script + var oneShotScript = new _index.BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + var oneShotPolicyId = oneShotScript.hash(); + + // 2. Create sub-validator scripts first (they only need proxy policy) + var protocolMintScript = new _index.V1_0Rc1Types.V1_0Rc1ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script; + var protocolStakeScript = new _index.V1_0Rc1Types.V1_0Rc1ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script; + var protocolManagementScript = new _index.V1_0Rc1Types.V1_0Rc1ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script; + + // 3. Create orchestrator with sub-validator hashes + var protocolOrchestratorScript = new _index.V1_0Rc1Types.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintScript.hash(), protocolStakeScript.hash(), protocolManagementScript.hash(), enableTrace).Script; + var mintProxyScript = new _index.BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + + // Use V0.1 or V1.0 treasury script based on option + // V0.1 is needed for protocol-only upgrades where treasury stays at V0.1 address + var treasuryScript = params.useV0_1Treasury ? new _index.V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new _index.V1_0Rc1Types.V1_0Rc1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + + // 4. Create order script with orchestrator hash (order needs to know the protocol) + var orderScript = new _index.V1_0Rc1Types.V1_0Rc1OrderOrderSpend(oneShotPolicyId, protocolOrchestratorScript.hash(), enableTrace).Script; + + // Use V0.4 or V1.0 staking vault script based on option + // V0.4 is needed for protocol-only upgrades where vault stays at V0.4 address + var stakingVaultScript = params.useV0_4StakingVault ? new _index.V0_4Types.V0_4StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new _index.V1_0Rc1Types.V1_0Rc1StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV1_0Rc1(blaze, { + version: "V1_0_Rc1", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace: enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource, + deployedValidators: params.deployedValidators + }, _index.V1_0Rc1Types, { + oneShotScript: oneShotScript, + protocolOrchestratorScript: protocolOrchestratorScript, + protocolMintScript: protocolMintScript, + protocolStakeScript: protocolStakeScript, + protocolManagementScript: protocolManagementScript, + mintProxyScript: mintProxyScript, + treasuryScript: treasuryScript, + orderScript: orderScript, + stakingVaultScript: stakingVaultScript + }, { + protocolRefInput: (_params$referenceInpu = params.referenceInputs) === null || _params$referenceInpu === void 0 ? void 0 : _params$referenceInpu.protocolRefInput, + proxyRefInput: (_params$referenceInpu2 = params.referenceInputs) === null || _params$referenceInpu2 === void 0 ? void 0 : _params$referenceInpu2.proxyRefInput, + treasuryRefInput: (_params$referenceInpu3 = params.referenceInputs) === null || _params$referenceInpu3 === void 0 ? void 0 : _params$referenceInpu3.treasuryRefInput, + orderRefInput: (_params$referenceInpu4 = params.referenceInputs) === null || _params$referenceInpu4 === void 0 ? void 0 : _params$referenceInpu4.orderRefInput, + stakingVaultRefInput: (_params$referenceInpu5 = params.referenceInputs) === null || _params$referenceInpu5 === void 0 ? void 0 : _params$referenceInpu5.stakingVaultRefInput + }); + } + }]); +}(_family.RealfiSDKV1Family); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0_rc1/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0_rc1/index.js.map new file mode 100644 index 0000000000..80fd54e3b0 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_0_rc1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_core","require","_data","_interopRequireWildcard","Data","_sdk","_index","_index2","_family","_orderSanity","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t6","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Symbol","iterator","constructor","prototype","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","Array","from","isArray","_arrayLikeToArray","_createForOfIteratorHelper","length","_n","F","s","done","value","a","u","next","toString","slice","name","test","_regenerator","toStringTag","c","Generator","create","_regeneratorDefine2","p","y","G","v","d","bind","l","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","_assertThisInitialized","ReferenceError","Boolean","valueOf","_inherits","_setPrototypeOf","_defineProperty","_toPrimitive","toPrimitive","String","Number","DIRECT_ACTION_PADDING_ASSET","exports","repeat","toHex","TextEncoder","encode","getRequestsFromAction","action","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","DirectMint","DirectBurn","Error","RealfiSDKV1_0Rc1","_RealfiSDKV1Family","_this","_len","args","_key","concat","settingsConfig","settings","settingsRegistry","registry","buildInitialVaultDatum","circulating_susdr","buildUpdatedVaultDatum","previous","sUSDrDelta","_buildStakeContinuation","_callee","_params","_context","buildStakeContinuation","_x","_buildOrderTx2","_callee2","params","_params$data","orderContractAddress","owner","orderDatum","serializedDatum","tx","_t","_t2","_context2","addressFromValidator","network","orderScript","blaze","wallet","getChangeAddress","getProps","paymentPart","hash","key_hash","Signature","destination","data","Void","serialize","V1_0Rc1Types","OrderDatumV1","newOrderTransaction","extraLabels","lockAssets","valueToLock","_buildOrderTx","_x2","_buildMintOrderTx","_callee3","reserveAssetId","ra","reserveAmount","_context3","amount","Core","AssetId","reserveAsset","getVersionSettings","findReserveAsset","usdrToReserveCeil","OMint","reserve_asset","makeValue","MIN_LOVELACE","buildMintOrderTx","_x3","_buildRedeemOrderTx","_callee4","stablecoinAssetId","_context4","stablecoinPolicyId","assetNameHex","ORedeem","buildRedeemOrderTx","_x4","_buildStakeOrderTx","_callee5","_context5","OStake","buildStakeOrderTx","_x5","_buildUnstakeOrderTx2","_callee6","_params$forfeit","forfeit","sUSDrAssetId","_context6","sUSDrAssetNameHex","OUnstake","_buildUnstakeOrderTx","_x6","_buildUnstakeOrderTx3","_callee7","timelockDestination","_context7","buildTimelockDestination","unlockSlot","Map","UNSTAKE_METADATA_LABEL","buildUnstakeMetadatum","buildUnstakeOrderTx","_x7","_buildTreasuryUnstakeOrderTx","_callee8","nativeScript","_context8","buildMultisigTimelockNativeScript","address","payment_credential","Script","stake_credential","datum","buildTreasuryUnstakeOrderTx","_x8","_getSignedPayloadFromOrderInputs","_callee9","orderInputs","sortedInputs","nonce","resolvedUtxos","actionType","treasuryRequests","_iterator","_step","_utxo$output$datum","utxo","datumData","origin","parsed","screened","_parsed$reserveAsset","_parsed$yield","_parsed$forfeit","batchVerdict","payload","serialized","signedPayload","payloadHash","_t3","_t4","_context9","sortOrderInputs","buildNonceFromUtxo","provider","resolveUnspentOutputs","output","asInlineData","parse","transaction_id","input","transactionId","output_index","index","classifyOrderAction","screenOrderForExecution","ok","reason","isTreasuryAction","push","screenDepositBatch","map","request","SignedPayload_v1_0_ProtocolRedeemerV1","toCbor","blake2b_256","HexBlob","getSignedPayloadFromOrderInputs","_x9","_buildExecuteOrdersTx","_callee0","signedPayloadCbor","signatures","sortedOrderInputs","orderUtxos","orderInfos","_yield$this$getParsed","proxyUtxo","parsedProxyDatum","needsTreasury","needsVault","isMintAction","isStakeAction","scriptHashesNeeded","refInputs","treasuryUtxo","parsedTreasuryDatum","treasuryResult","vaultUtxo","parsedVaultDatum","vaultResult","walletUtxos","excludedInputIds","utxoKey","_iterator2","_step2","orderInfo","_i","_Object$values","refUtxo","feeUtxos","allInputRefs","_iterator3","_step3","feeUtxo","sortedAllInputRefs","findInputIdx","treasuryInputIdx","vaultInputIdx","signedRequests","originToRequestIdx","inputToRequests","requestToOutputs","outputIdx","requestIdx","numDestOutputs","numExtraOutputs","totalYield","_vaultValue$multiasse","_vaultValue$multiasse2","vaultValue","_stablecoinAssetId2","vaultUSDr","treasuryCirculating","_calculateYieldShares","unstakedYieldShare","totalForfeit","treasuryOutputIdx","vaultOutputIdx","extra","serializedSignedRedeemer","executeRedeemer","_iterator4","_step4","_orderInfo","_iterator5","_step5","_feeUtxo","orchestratorRewardAccount","subValidatorHash","subValidatorRewardAccount","voidRedeemer","_t5","_context0","PlutusData","fromCbor","parseOrderInfos","getParsedProxyDatum","includes","protocol","protocolScriptHash","order","orderScriptHash","protocolMint","protocolMintScriptHash","protocolStake","protocolStakeScriptHash","protocolManagement","protocolManagementScriptHash","treasury","treasuryScriptHash","stakingVault","stakingVaultScriptHash","getScriptReferenceInputs","getTreasuryDatum","getVaultDatum","getUnspentOutputs","Set","inp","add","err","values","filter","sort","b","txA","txB","idx","findIndex","BigInt","undefined","reduce","sum","_o$yield","multiasset","circulating_supply","calculateYieldShares","_o$forfeit","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","SignedRedeemer_v1_0_ExtraProtocolRedeemerV1","OrderRedeemerV1","addInput","addReferenceInput","RewardAccount","fromCredential","type","CredentialType","ScriptHash","addWithdrawal","buildMintExecute","buildBurnExecute","buildWithdrawExecute","buildDepositExecute","buildStakeExecute","buildUnstakeExecute","buildDirectMintExecute","buildDirectBurnExecute","provideScript","mintProxyScript","buildExecuteOrdersTx","_x0","totalAmount","_iterator6","_step6","destAddress","destinationToAddress","addDirectOutput","addMint","AssetName","reserveDeltas","computeReserveDeltas","updateTreasuryOutput","_iterator7","_step7","usdrToReserve","_iterator8","_step8","_vaultValue$multiasse3","_vaultValue$multiasse4","_o$yield2","_iterator9","_step9","_calculateYieldShares2","stakedYieldShare","yieldPotAddress","unstaked_yield_pot","_iterator0","_step0","_orderInfo2$yield","_reserveDeltas$get","assetId","yieldValue","usdrBacking","updateVaultOutput","_vaultValue$multiasse5","_vaultValue$multiasse6","totalUSDrStaked","circulatingSUSDr","totalSUSDrMinted","_iterator1","_step1","sUSDrAmount","_vaultValue$multiasse7","_vaultValue$multiasse8","totalSUSDrBurned","totalUSDrReleased","_iterator10","_step10","_orderInfo$forfeit","uSDrEntitled","uSDrAmount","TransactionOutput","addOutput","_iterator11","_step11","updateTreasuryOutputNoReserve","_stablecoinAssetId","_iterator12","_step12","ODeposit","principal","OWithdraw","ODirectMint","ODirectBurn","_params$enableTrace","_params$referenceInpu","_params$referenceInpu2","_params$referenceInpu3","_params$referenceInpu4","_params$referenceInpu5","enableTrace","oneShotScript","BaseTypes","BaseOneshotOneshotMint","proxyBootstrap","txHash","outputIndex","oneShotPolicyId","protocolMintScript","V1_0Rc1ProtocolMintProtocolMintWithdraw","protocolStakeScript","V1_0Rc1ProtocolStakeProtocolStakeWithdraw","protocolManagementScript","V1_0Rc1ProtocolManagementProtocolManagementWithdraw","protocolOrchestratorScript","V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","BaseMintProxyMintProxyMint","treasuryScript","useV0_1Treasury","V0_1Types","V0_1TreasuryTreasurySpend","treasuryBootstrap","V1_0Rc1TreasuryTreasurySpend","V1_0Rc1OrderOrderSpend","stakingVaultScript","useV0_4StakingVault","V0_4Types","V0_4StakingVaultStakingVaultSpend","stakingVaultBootstrap","V1_0Rc1StakingVaultStakingVaultSpend","version","scriptDeploymentAddress","clientSource","deployedValidators","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","orderRefInput","stakingVaultRefInput","RealfiSDKV1Family"],"sources":["../../../../src/sdk/v1_0_rc1/index.ts"],"sourcesContent":["import {\n addressFromValidator,\n blake2b_256,\n HexBlob,\n PlutusData,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport {\n BaseTypes,\n V0_1Types,\n V0_4Types,\n V1_0Rc1Types,\n} from \"../../generated-types/index.js\";\nimport type { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport type {\n Destination,\n MultisigScript,\n OrderDatumV1,\n RegistryV1,\n SettingsV1,\n VaultDatumV1,\n} from \"../../generated-types/v1_0_rc1/index.js\";\n\nimport {\n addDirectOutput,\n buildNonceFromUtxo,\n buildMultisigTimelockNativeScript,\n buildTimelockDestination,\n buildUnstakeMetadatum,\n UNSTAKE_METADATA_LABEL,\n destinationToAddress,\n findReserveAsset,\n usdrToReserve,\n usdrToReserveCeil,\n computeReserveDeltas,\n sortOrderInputs,\n} from \"../shared/index.js\";\nimport {\n calculateYieldShares,\n MIN_LOVELACE,\n RealfiSDKV1Family,\n type IBuildStakeContinuationParams,\n type IStakeContinuation,\n type IOrderInfo,\n type TOrderActionType,\n} from \"../v1/family.js\";\nimport { screenDepositBatch } from \"../v1/order-sanity.js\";\nimport type { TV1SettingsConfig } from \"../v1/types.js\";\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Constants\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Sentinel `reserve_asset` used in V1_0_Rc1 TreasuryRequestV1 redeemers for\n * DirectMint and DirectBurn actions, which have no real reserve asset in\n * their order datum. The on-chain validators `direct_mint_logic` and\n * `direct_burn_logic` do not inspect this field; this sentinel makes the\n * intent explicit both in code and when inspecting on-chain redeemers.\n *\n * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a\n * sentinel and extremely unlikely to occur as a real script hash)\n * - `asset_name`: \"unused\" (ASCII)\n *\n * Keep in sync with backend `contract.DirectActionPaddingAsset`.\n */\nexport const DIRECT_ACTION_PADDING_ASSET: V1_0Rc1Types.Asset = [\n \"00\".repeat(28),\n toHex(new TextEncoder().encode(\"unused\")),\n];\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Types\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport interface ITreasuryUnstakeOrderTxResultRc1 {\n /** Transaction builder for the treasury unstake order. */\n tx: TxBuilder;\n /**\n * Native script used as the unstake output destination:\n * AllOf { After(unlockSlot), owner }.\n */\n nativeScript: Core.NativeScript;\n}\n\n/**\n * Extract the requests list from a signed payload action, regardless of action type.\n * Both TreasuryRequestV1 and RequestV1 have `origin: { transaction_id, output_index }`.\n */\nfunction getRequestsFromAction(\n action: V1_0Rc1Types.ProtocolRedeemerV1,\n): Array<{ origin: { transaction_id: string; output_index: bigint } }> {\n if (\"Mint\" in action) return action.Mint.requests;\n if (\"Burn\" in action) return action.Burn.requests;\n if (\"Withdraw\" in action) return action.Withdraw.requests;\n if (\"Deposit\" in action) return action.Deposit.requests;\n if (\"Stake\" in action) return action.Stake.requests;\n if (\"Unstake\" in action) return action.Unstake.requests;\n if (\"DirectMint\" in action) return action.DirectMint.requests;\n if (\"DirectBurn\" in action) return action.DirectBurn.requests;\n throw new Error(\"Unknown action type in signed payload\");\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV1_0Rc1 {\n version: \"V1_0_Rc1\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** USDr asset name hex */\n assetNameHex: string;\n /** sUSDr asset name hex */\n sUSDrAssetNameHex: string;\n /** The treasury bootstrap UTxO reference */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** The staking vault bootstrap UTxO reference */\n stakingVaultBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Use V0.1 treasury script instead of V1.0.\n * This is needed for protocol-only upgrades where the treasury NFT\n * remains at the V0.1 treasury address. Default: false\n */\n useV0_1Treasury?: boolean;\n /**\n * Use V0.4 staking vault script instead of V1.0.\n * This is needed for protocol-only upgrades where the vault NFT\n * remains at the V0.4 vault address. Default: false\n */\n useV0_4StakingVault?: boolean;\n /**\n * Hashes of the validators this deployment actually runs. See\n * IV1FamilyConstructorParams.deployedValidators.\n */\n deployedValidators?: Readonly>;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n stakingVaultRefInput?: Core.TransactionUnspentOutput;\n };\n clientSource?: import(\"../shared/client-id.js\").TClientSource;\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// SDK Class\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * V1_0Rc1 SDK implementation.\n *\n * Extends V0_4 with:\n * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios)\n * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded\n * - Forfeit parameter: Support yield forfeiture during unstake operations\n * - New Settings fields: direct_mint_permission, direct_burn_permission\n *\n * Scaffolding (scripts, deploy/register, treasury, vault, one-shot, cancel,\n * invalidate) is inherited from {@link RealfiSDKV1Family}. The release\n * candidate's protocol redeemer schema is structurally different from v1_0\n * (`TreasuryRequestV1[]` + `RequestV1[]`, no fees, no `min_received`), so the\n * order builders, signed-payload construction, and execute builders override\n * the family's v1_0-semantics defaults with the rc1 behavior verbatim. No\n * signing schemas are passed to the family constructor — both consumers are\n * overridden here.\n */\nexport class RealfiSDKV1_0Rc1<\n P extends Provider,\n W extends Wallet,\n> extends RealfiSDKV1Family {\n readonly version = \"V1_0_Rc1\" as const;\n\n /**\n * Create a V1_0Rc1 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0Rc1,\n ): RealfiSDKV1_0Rc1 {\n const enableTrace = params.enableTrace ?? false;\n\n // 1. Create oneshot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n\n // 2. Create sub-validator scripts first (they only need proxy policy)\n const protocolMintScript =\n new V1_0Rc1Types.V1_0Rc1ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolStakeScript =\n new V1_0Rc1Types.V1_0Rc1ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolManagementScript =\n new V1_0Rc1Types.V1_0Rc1ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 3. Create orchestrator with sub-validator hashes\n const protocolOrchestratorScript =\n new V1_0Rc1Types.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintScript.hash(),\n protocolStakeScript.hash(),\n protocolManagementScript.hash(),\n enableTrace,\n ).Script;\n\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Use V0.1 or V1.0 treasury script based on option\n // V0.1 is needed for protocol-only upgrades where treasury stays at V0.1 address\n const treasuryScript = params.useV0_1Treasury\n ? new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_0Rc1Types.V1_0Rc1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 4. Create order script with orchestrator hash (order needs to know the protocol)\n const orderScript = new V1_0Rc1Types.V1_0Rc1OrderOrderSpend(\n oneShotPolicyId,\n protocolOrchestratorScript.hash(),\n enableTrace,\n ).Script;\n\n // Use V0.4 or V1.0 staking vault script based on option\n // V0.4 is needed for protocol-only upgrades where vault stays at V0.4 address\n const stakingVaultScript = params.useV0_4StakingVault\n ? new V0_4Types.V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_0Rc1Types.V1_0Rc1StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV1_0Rc1(\n blaze,\n {\n version: \"V1_0_Rc1\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n sUSDrAssetNameHex: params.sUSDrAssetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n clientSource: params.clientSource,\n deployedValidators: params.deployedValidators,\n },\n V1_0Rc1Types,\n {\n oneShotScript,\n protocolOrchestratorScript,\n protocolMintScript,\n protocolStakeScript,\n protocolManagementScript,\n mintProxyScript,\n treasuryScript,\n orderScript,\n stakingVaultScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n orderRefInput: params.referenceInputs?.orderRefInput,\n stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Version Seams\n // ─────────────────────────────────────────────────────────────────────────────\n\n protected settingsConfig(settings: SettingsV1): TV1SettingsConfig {\n // V1_0_Rc1 settings are flat: the settings object IS the config.\n return settings;\n }\n\n protected settingsRegistry(settings: SettingsV1): RegistryV1 {\n return settings.registry;\n }\n\n protected buildInitialVaultDatum(): VaultDatumV1 {\n return { circulating_susdr: 0n };\n }\n\n protected buildUpdatedVaultDatum(\n previous: VaultDatumV1,\n sUSDrDelta: bigint,\n ): VaultDatumV1 {\n return { circulating_susdr: previous.circulating_susdr + sUSDrDelta };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Order Builder Methods (rc1 order datums carry no min_received)\n // ─────────────────────────────────────────────────────────────────────────────\n\n override async buildStakeContinuation(\n _params: IBuildStakeContinuationParams,\n ): Promise {\n throw new Error(\n \"Stake continuations are not supported on V1_0_Rc1 because its order schema has no min_received\",\n );\n }\n\n /**\n * Internal helper to build an order transaction.\n */\n protected override async _buildOrderTx(params: {\n action: V1_0Rc1Types.OrderActionV1;\n valueToLock: Core.Value;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n extraLabels?: Map;\n }): Promise {\n const orderContractAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n\n let owner = params.owner;\n if (!owner) {\n owner = {\n Signature: {\n key_hash: (await this.blaze.wallet.getChangeAddress())\n .getProps()\n .paymentPart!.hash!.toString(),\n },\n };\n }\n\n const orderDatum: OrderDatumV1 = {\n action: params.action,\n owner,\n destination: params.destination,\n data: params.data ?? Data.Void(),\n };\n const serializedDatum = Data.serialize(\n V1_0Rc1Types.OrderDatumV1,\n orderDatum,\n );\n\n const tx = this.newOrderTransaction(params.extraLabels);\n tx.lockAssets(orderContractAddress, params.valueToLock, serializedDatum);\n return tx;\n }\n\n /**\n * Build a mint order: lock reserve tokens, request USDr minting.\n */\n override async buildMintOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Mint amount must be positive\");\n }\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n // Convert USDr amount to reserve amount using ceiling division\n // to ensure enough reserve is locked for on-chain validation\n const settings = await this.getVersionSettings();\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAmount = usdrToReserveCeil(params.amount, ra);\n return this._buildOrderTx({\n action: {\n OMint: { amount: params.amount, reserve_asset: params.reserveAsset },\n },\n valueToLock: makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a redeem (burn) order: lock USDr, request reserve token redemption.\n */\n override async buildRedeemOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Redeem amount must be positive\");\n }\n const settings = await this.getVersionSettings();\n findReserveAsset(settings, params.reserveAsset);\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n return this._buildOrderTx({\n action: {\n ORedeem: {\n amount: params.amount,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a stake order: lock USDr, request sUSDr minting.\n */\n override async buildStakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Stake amount must be positive\");\n }\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n return this._buildOrderTx({\n action: { OStake: { amount: params.amount } },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n protected override async _buildUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n forfeit?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n extraLabels?: Map;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Unstake amount must be positive\");\n }\n const forfeit = params.forfeit ?? 0n;\n if (forfeit < 0n) {\n throw new Error(\"Forfeit amount cannot be negative\");\n }\n\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n\n return this._buildOrderTx({\n action: { OUnstake: { amount: params.amount, forfeit } },\n valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n extraLabels: params.extraLabels,\n });\n }\n\n /**\n * Build an unstake order: lock sUSDr, request USDr release.\n *\n * The destination is automatically set to a native script address that\n * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }.\n * This means the released USDr can only be spent by the user after the\n * unlock time has passed.\n *\n * @param params.amount - Amount of sUSDr to unstake\n * @param params.destination - The user's actual destination (used to extract payment key hash)\n * @param params.unlockSlot - Slot number after which the user can spend the released USDr\n * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0)\n */\n override async buildUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n unlockSlot: bigint;\n forfeit?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n const timelockDestination = buildTimelockDestination(\n params.destination,\n params.unlockSlot,\n );\n const extraLabels = new Map([\n [\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(params.destination, params.unlockSlot),\n ],\n ]);\n\n return this._buildUnstakeOrderTx({\n amount: params.amount,\n destination: timelockDestination,\n forfeit: params.forfeit,\n owner: params.owner,\n data: params.data,\n extraLabels,\n });\n }\n\n /**\n * Build a treasury-managed unstake order that wraps the destination in a\n * native timelock script controlled by the order owner.\n *\n * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps\n * treasury multisig ownership on the released USDr while enforcing the same\n * unlock slot used by the retail unstake helper. The owner must be convertible\n * to a Cardano native script.\n */\n override async buildTreasuryUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n unlockSlot: bigint;\n forfeit?: bigint;\n owner: MultisigScript;\n data?: PlutusData;\n }): Promise {\n const nativeScript = buildMultisigTimelockNativeScript(\n params.owner,\n params.unlockSlot,\n );\n const timelockDestination: Destination = {\n address: {\n payment_credential: { Script: [nativeScript.hash()] },\n stake_credential: params.destination.address.stake_credential,\n },\n datum: \"NoDatum\",\n };\n\n // Attach the unstake metadata (label 55534472) exactly like the retail\n // path (buildUnstakeOrderTx). track-chain requires this label to index the\n // order; without it the confirmed unstake output is silently dropped\n // (WTB-1466). Mirror retail precisely: the metadatum is built from the\n // user-supplied destination (params.destination), not the derived timelock\n // destination, and carries the same unlock_time.\n const extraLabels = new Map([\n [\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(params.destination, params.unlockSlot),\n ],\n ]);\n\n const tx = await this._buildUnstakeOrderTx({\n amount: params.amount,\n destination: timelockDestination,\n forfeit: params.forfeit,\n owner: params.owner,\n data: params.data,\n extraLabels,\n });\n\n return { tx, nativeScript };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Signed Payload and Signing\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build the V1_0Rc1 SignedPayload_ProtocolRedeemer from order inputs.\n * Returns both the CBOR hex string (for buildExecuteOrdersTx) and\n * the blake2b_256 hash (for CIP-30 signing).\n */\n override async getSignedPayloadFromOrderInputs(\n orderInputs: Core.TransactionInput[],\n ): Promise<{ signedPayload: string; payloadHash: string }> {\n if (orderInputs.length === 0) {\n throw new Error(\"At least one order input is required\");\n }\n\n const sortedInputs = sortOrderInputs(orderInputs);\n const nonce = buildNonceFromUtxo(sortedInputs[0]!) as V1_0Rc1Types.Nonce;\n\n const resolvedUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedInputs);\n\n let actionType: TOrderActionType | null = null;\n const treasuryRequests: V1_0Rc1Types.TreasuryRequestV1[] = [];\n const requests: V1_0Rc1Types.RequestV1[] = [];\n\n for (const utxo of resolvedUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(V1_0Rc1Types.OrderDatumV1, datumData) as OrderDatumV1;\n const origin = {\n transaction_id: utxo.input().transactionId().toString(),\n output_index: utxo.input().index(),\n };\n\n const parsed = this.classifyOrderAction(datum);\n\n // WTB-1764: same screen the family applies. rc1 has no min_received, but\n // its predicates still demand an amount sign (`v1_0_rc1/stake.ak:64`,\n // `unstake.ak:64`) and every one of them is an `expect` inside a single\n // fold, so a request that fails takes the whole transaction with it.\n const screened = await this.screenOrderForExecution(utxo, parsed);\n if (!screened.ok) {\n throw new Error(\n `Order ${origin.transaction_id}#${origin.output_index} cannot be executed: ` +\n `${screened.reason}. Every order batched with it would crash on-chain.`,\n );\n }\n\n if (actionType === null) {\n actionType = parsed.actionType;\n } else if (actionType !== parsed.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n if (parsed.isTreasuryAction) {\n // DirectMint/DirectBurn datums have no reserve_asset; the redeemer\n // struct requires one but the on-chain validator ignores it for\n // direct actions, so we pad with DIRECT_ACTION_PADDING_ASSET.\n const reserveAsset = parsed.reserveAsset ?? DIRECT_ACTION_PADDING_ASSET;\n treasuryRequests.push({\n destination: datum.destination,\n amount: parsed.amount,\n yield: parsed.yield ?? 0n,\n origin,\n reserve_asset: reserveAsset,\n });\n } else {\n requests.push({\n destination: datum.destination,\n amount: parsed.amount,\n origin,\n forfeit: parsed.forfeit ?? 0n,\n });\n }\n }\n\n if (actionType === \"deposit\") {\n const batchVerdict = screenDepositBatch(\n treasuryRequests.map((request) => ({\n actionType: \"deposit\",\n amount: request.amount,\n yield: request.yield,\n })),\n );\n if (!batchVerdict.ok) {\n throw new Error(\n `${batchVerdict.reason}. Every order batched with it would crash on-chain.`,\n );\n }\n }\n\n let action: V1_0Rc1Types.ProtocolRedeemerV1;\n switch (actionType) {\n case \"mint\":\n action = { Mint: { requests: treasuryRequests } };\n break;\n case \"burn\":\n action = { Burn: { requests: treasuryRequests } };\n break;\n case \"withdraw\":\n action = { Withdraw: { requests: treasuryRequests } };\n break;\n case \"deposit\":\n action = { Deposit: { requests: treasuryRequests } };\n break;\n case \"stake\":\n action = { Stake: { requests } };\n break;\n case \"unstake\":\n action = { Unstake: { requests } };\n break;\n case \"direct_mint\":\n action = { DirectMint: { requests: treasuryRequests } };\n break;\n case \"direct_burn\":\n action = { DirectBurn: { requests: treasuryRequests } };\n break;\n default:\n throw new Error(\"No orders to process\");\n }\n\n const payload: V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1 = {\n action,\n nonce,\n };\n const serialized = Data.serialize(\n V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1,\n payload,\n );\n const signedPayload = serialized.toCbor().toString();\n const payloadHash = blake2b_256(HexBlob(signedPayload));\n\n return { signedPayload, payloadHash };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Execute Orders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to execute orders.\n *\n * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake,\n * direct_mint, direct_burn.\n */\n override async buildExecuteOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n signedPayload: string;\n signatures: V1_0Rc1Types.Tuple_VerificationKey_COSESign1[];\n }): Promise {\n const {\n orderInputs,\n signedPayload: signedPayloadCbor,\n signatures,\n } = params;\n\n // Deserialize CBOR hex to object for internal use\n const signedPayload = parse(\n V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1,\n PlutusData.fromCbor(HexBlob(signedPayloadCbor)),\n ) as V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1;\n\n // 1. Sort and resolve order UTxOs\n const sortedOrderInputs = sortOrderInputs(orderInputs);\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs);\n\n // 2. Parse orders and validate same type\n const orderInfos = this.parseOrderInfos(orderUtxos);\n const actionType = orderInfos[0]!.actionType;\n\n // 3. Get protocol settings\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const settings = parsedProxyDatum.settings as SettingsV1;\n\n // 4. Determine what we need\n const needsTreasury = [\n \"mint\",\n \"burn\",\n \"withdraw\",\n \"deposit\",\n \"direct_mint\",\n \"direct_burn\",\n ].includes(actionType);\n const needsVault = [\"stake\", \"unstake\", \"deposit\"].includes(actionType);\n\n // 5. Get script reference inputs\n // V1.0 requires the orchestrator and the relevant sub-validator script\n const isMintAction = [\n \"mint\",\n \"burn\",\n \"direct_mint\",\n \"direct_burn\",\n ].includes(actionType);\n const isStakeAction = [\"stake\", \"unstake\"].includes(actionType);\n\n const scriptHashesNeeded: Record = {\n protocol: this.protocolScriptHash,\n order: this.orderScriptHash,\n };\n if (isMintAction) {\n scriptHashesNeeded.protocolMint = this.protocolMintScriptHash;\n } else if (isStakeAction) {\n scriptHashesNeeded.protocolStake = this.protocolStakeScriptHash;\n } else {\n scriptHashesNeeded.protocolManagement = this.protocolManagementScriptHash;\n }\n if (needsTreasury) {\n scriptHashesNeeded.treasury = this.treasuryScriptHash;\n }\n if (needsVault) {\n scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash;\n }\n const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded);\n\n // 6. Fetch treasury and vault if needed\n let treasuryUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedTreasuryDatum: V0_1TreasuryDatum | undefined;\n if (needsTreasury) {\n const treasuryResult = await this.getTreasuryDatum();\n treasuryUtxo = treasuryResult.treasuryUtxo;\n parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum;\n }\n\n let vaultUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedVaultDatum: VaultDatumV1 | undefined;\n if (needsVault) {\n const vaultResult = await this.getVaultDatum();\n vaultUtxo = vaultResult.vaultUtxo;\n parsedVaultDatum = vaultResult.parsedVaultDatum;\n }\n\n // 7. Gather wallet UTxOs so we can include them in index calculations.\n const walletUtxos = await this.blaze.wallet.getUnspentOutputs();\n const excludedInputIds = new Set();\n const utxoKey = (inp: Core.TransactionInput) =>\n `${inp.transactionId().toString()}#${inp.index().toString()}`;\n // Exclude script inputs (order, treasury, vault)\n for (const orderInfo of orderInfos) {\n excludedInputIds.add(utxoKey(orderInfo.utxo.input()));\n }\n if (treasuryUtxo) {\n excludedInputIds.add(utxoKey(treasuryUtxo.input()));\n }\n if (vaultUtxo) {\n excludedInputIds.add(utxoKey(vaultUtxo.input()));\n }\n // Exclude reference inputs (must be disjoint from regular inputs)\n excludedInputIds.add(utxoKey(proxyUtxo.input()));\n for (const refUtxo of Object.values(refInputs)) {\n if (refUtxo) {\n excludedInputIds.add(utxoKey(refUtxo.input()));\n }\n }\n const feeUtxos = walletUtxos.filter(\n (utxo) => !excludedInputIds.has(utxoKey(utxo.input())),\n );\n\n // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex).\n const allInputRefs: Core.TransactionInput[] = orderInfos.map((o) =>\n o.utxo.input(),\n );\n if (treasuryUtxo) {\n allInputRefs.push(treasuryUtxo.input());\n }\n if (vaultUtxo) {\n allInputRefs.push(vaultUtxo.input());\n }\n for (const feeUtxo of feeUtxos) {\n allInputRefs.push(feeUtxo.input());\n }\n\n const sortedAllInputRefs = [...allInputRefs].sort((a, b) => {\n const txA = a.transactionId().toString();\n const txB = b.transactionId().toString();\n if (txA < txB) return -1;\n if (txA > txB) return 1;\n return Number(a.index()) - Number(b.index());\n });\n\n const findInputIdx = (input: Core.TransactionInput): bigint => {\n const idx = sortedAllInputRefs.findIndex(\n (r) =>\n r.transactionId().toString() === input.transactionId().toString() &&\n r.index() === input.index(),\n );\n return BigInt(idx);\n };\n\n const treasuryInputIdx = treasuryUtxo\n ? findInputIdx(treasuryUtxo.input())\n : 0n;\n const vaultInputIdx = vaultUtxo\n ? findInputIdx(vaultUtxo.input())\n : undefined;\n\n // 8a. Correlate order inputs to signed request indices via origin fields.\n // When all orders are present this produces the same identity mapping as before.\n // When a subset is passed (partial execution), it maps each input to the\n // correct request index in the signed payload.\n const signedRequests = getRequestsFromAction(signedPayload.action);\n const originToRequestIdx = new Map();\n for (let i = 0; i < signedRequests.length; i++) {\n const o = signedRequests[i]!.origin;\n originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i);\n }\n\n const inputToRequests: bigint[] = [];\n const requestToOutputs: bigint[] = [];\n for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) {\n const input = orderInfos[outputIdx]!.utxo.input();\n const key = `${input.transactionId()}#${input.index()}`;\n const requestIdx = originToRequestIdx.get(key);\n if (requestIdx === undefined) {\n throw new Error(`Order input ${key} not found in signed payload`);\n }\n inputToRequests.push(BigInt(requestIdx));\n requestToOutputs.push(BigInt(outputIdx));\n }\n\n // 9. Build outputs and compute output indices\n const numDestOutputs = orderInfos.length;\n\n // For deposit with positive yield, the yield pot output is inserted after destinations\n let numExtraOutputs = 0;\n if (actionType === \"deposit\") {\n const totalYield = orderInfos.reduce(\n (sum, o) => sum + (o.yield ?? 0n),\n 0n,\n );\n if (totalYield > 0n) {\n const vaultValue = vaultUtxo!.output().amount();\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum!.circulating_supply;\n const { unstakedYieldShare } = calculateYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n );\n if (unstakedYieldShare > 0n) {\n numExtraOutputs = 1;\n }\n }\n }\n\n // For unstake with forfeit, add yield pot output\n if (actionType === \"unstake\") {\n const totalForfeit = orderInfos.reduce(\n (sum, o) => sum + (o.forfeit ?? 0n),\n 0n,\n );\n if (totalForfeit > 0n) {\n numExtraOutputs = 1;\n }\n }\n\n const treasuryOutputIdx = needsTreasury\n ? BigInt(numDestOutputs + numExtraOutputs)\n : 0n;\n const vaultOutputIdx = needsVault\n ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0))\n : undefined;\n\n // 10. Build ExtraProtocolRedeemer\n const extra: V1_0Rc1Types.ExtraProtocolRedeemerV1 = {\n request_to_outputs: requestToOutputs,\n input_to_requests: inputToRequests,\n treasury_input_idx: treasuryInputIdx,\n treasury_output_idx: treasuryOutputIdx,\n vault_input_idx: vaultInputIdx,\n vault_output_idx: vaultOutputIdx,\n };\n\n // 11. Build SignedRedeemer\n const serializedSignedRedeemer = Data.serialize(\n V1_0Rc1Types.SignedRedeemer_v1_0_ExtraProtocolRedeemerV1,\n {\n extra,\n payload: signedPayload,\n signatures,\n },\n );\n\n const executeRedeemer = Data.serialize(\n V1_0Rc1Types.OrderRedeemerV1,\n \"Execute\",\n );\n\n // 12. Build the transaction\n const tx = this.newOrderTransaction();\n\n // Add order inputs with Execute redeemer\n for (const orderInfo of orderInfos) {\n tx.addInput(orderInfo.utxo, executeRedeemer);\n }\n\n // Add wallet fee inputs explicitly\n for (const feeUtxo of feeUtxos) {\n tx.addInput(feeUtxo);\n }\n\n // Add reference inputs\n tx.addReferenceInput(refInputs.protocol!);\n tx.addReferenceInput(refInputs.order!);\n tx.addReferenceInput(proxyUtxo);\n // V1.0 sub-validator reference inputs\n if (refInputs.protocolMint) {\n tx.addReferenceInput(refInputs.protocolMint);\n }\n if (refInputs.protocolStake) {\n tx.addReferenceInput(refInputs.protocolStake);\n }\n if (refInputs.protocolManagement) {\n tx.addReferenceInput(refInputs.protocolManagement);\n }\n if (refInputs.treasury) {\n tx.addReferenceInput(refInputs.treasury);\n }\n if (refInputs.stakingVault) {\n tx.addReferenceInput(refInputs.stakingVault);\n }\n\n // Add orchestrator withdrawal with signed redeemer\n const orchestratorRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: this.protocolScriptHash,\n },\n this.network,\n );\n tx.addWithdrawal(orchestratorRewardAccount, 0n, serializedSignedRedeemer);\n\n // Determine which sub-validator to use based on action type\n const subValidatorHash =\n actionType === \"mint\" ||\n actionType === \"burn\" ||\n actionType === \"direct_mint\" ||\n actionType === \"direct_burn\"\n ? this.protocolMintScriptHash\n : actionType === \"stake\" || actionType === \"unstake\"\n ? this.protocolStakeScriptHash\n : this.protocolManagementScriptHash; // deposit, withdraw\n\n // Add sub-validator withdrawal with void redeemer\n const subValidatorRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: subValidatorHash,\n },\n this.network,\n );\n const voidRedeemer = Data.Void();\n tx.addWithdrawal(subValidatorRewardAccount, 0n, voidRedeemer);\n\n // Build per-action-type outputs, minting, and state updates\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n\n switch (actionType) {\n case \"mint\":\n this.buildMintExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"burn\":\n this.buildBurnExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"withdraw\":\n this.buildWithdrawExecute(\n tx,\n orderInfos,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"deposit\":\n this.buildDepositExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n vaultUtxo!,\n parsedVaultDatum!,\n settings,\n );\n break;\n case \"stake\":\n this.buildStakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n );\n break;\n case \"unstake\":\n this.buildUnstakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n settings,\n );\n break;\n case \"direct_mint\":\n this.buildDirectMintExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n );\n break;\n case \"direct_burn\":\n this.buildDirectBurnExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n );\n break;\n }\n\n // Provide the mint proxy script for minting\n tx.provideScript(this.mintProxyScript);\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Per-Action Execute Builders (rc1: no fees, plain min-ADA destination outputs)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint: reserve goes to treasury, USDr minted to destinations.\n */\n protected override buildMintExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: SettingsV1,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send USDr to each destination\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n addDirectOutput(\n tx,\n destAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount]),\n );\n }\n\n // Mint USDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Compute per-reserve-asset deltas\n const reserveDeltas = computeReserveDeltas(orderInfos, settings);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalAmount,\n );\n }\n\n /**\n * Burn: USDr burned, reserve sent to destinations.\n */\n protected override buildBurnExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: SettingsV1,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send reserve tokens to each destination\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserve(-orderInfo.amount, ra);\n addDirectOutput(\n tx,\n destAddress,\n makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n );\n }\n\n // Burn USDr (totalAmount is negative)\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Compute per-reserve-asset deltas\n const reserveDeltas = computeReserveDeltas(orderInfos, settings);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalAmount,\n );\n }\n\n /**\n * Withdraw: reserve sent to destinations, no mint/burn.\n */\n protected override buildWithdrawExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: SettingsV1,\n ): void {\n // Destination outputs: send reserve tokens to each destination\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserve(orderInfo.amount, ra);\n addDirectOutput(\n tx,\n destAddress,\n makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n );\n }\n\n // Update treasury: reserve decreases, no circulating_supply change\n const reserveDeltas = computeReserveDeltas(orderInfos, settings, true);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n 0n,\n );\n }\n\n /**\n * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot.\n */\n protected override buildDepositExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatumV1,\n settings: SettingsV1,\n ): void {\n const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n);\n\n // Destination outputs: min ADA to each destination\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE));\n }\n\n // Calculate yield split\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n\n const { stakedYieldShare, unstakedYieldShare } = calculateYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n );\n\n if (totalYield > 0n) {\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n\n if (unstakedYieldShare > 0n) {\n const yieldPotAddress = destinationToAddress(this.network, {\n address: settings.unstaked_yield_pot,\n datum: \"NoDatum\",\n });\n addDirectOutput(\n tx,\n yieldPotAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare]),\n );\n }\n } else if (totalYield < 0n) {\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n }\n\n // Update treasury\n const reserveDeltas = new Map();\n for (const orderInfo of orderInfos) {\n const assetId = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1];\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const yieldValue = orderInfo.yield ?? 0n;\n\n const usdrBacking =\n yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount;\n\n const reserveAmount = usdrToReserve(usdrBacking, ra);\n reserveDeltas.set(\n assetId,\n (reserveDeltas.get(assetId) ?? 0n) + reserveAmount,\n );\n }\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalYield,\n );\n\n // Update vault\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n 0n,\n stakedYieldShare,\n );\n }\n\n /**\n * Stake: USDr locked in vault, sUSDr minted to destinations.\n */\n protected override buildStakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatumV1,\n ): void {\n const totalUSDrStaked = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n let totalSUSDrMinted: bigint;\n if (circulatingSUSDr === 0n || vaultUSDr === 0n) {\n totalSUSDrMinted = totalUSDrStaked;\n } else {\n totalSUSDrMinted = (totalUSDrStaked * circulatingSUSDr) / vaultUSDr;\n }\n\n for (const orderInfo of orderInfos) {\n let sUSDrAmount: bigint;\n if (circulatingSUSDr === 0n || vaultUSDr === 0n) {\n sUSDrAmount = orderInfo.amount;\n } else {\n sUSDrAmount = (orderInfo.amount * circulatingSUSDr) / vaultUSDr;\n }\n\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n addDirectOutput(\n tx,\n destAddress,\n makeValue(MIN_LOVELACE, [sUSDrAssetId, sUSDrAmount]),\n );\n }\n\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]),\n Data.Void(),\n );\n\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n totalSUSDrMinted,\n totalUSDrStaked,\n );\n }\n\n /**\n * Unstake: sUSDr burned, USDr sent to user's destination address.\n * V1_0Rc1: Supports forfeit parameter - forfeited USDr goes to yield pot.\n */\n protected override buildUnstakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatumV1,\n settings: SettingsV1,\n ): void {\n const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n if (circulatingSUSDr === 0n) {\n throw new Error(\"Cannot unstake: no sUSDr in circulation\");\n }\n\n let totalUSDrReleased = 0n;\n let totalForfeit = 0n;\n\n for (const orderInfo of orderInfos) {\n const uSDrEntitled = (orderInfo.amount * vaultUSDr) / circulatingSUSDr;\n const forfeit = orderInfo.forfeit ?? 0n;\n const uSDrAmount = uSDrEntitled - forfeit;\n\n totalUSDrReleased += uSDrEntitled;\n totalForfeit += forfeit;\n\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n const output = new Core.TransactionOutput(\n destAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, uSDrAmount]),\n );\n tx.addOutput(output);\n }\n\n // Send forfeited USDr to yield pot if any\n if (totalForfeit > 0n) {\n const yieldPotAddress = destinationToAddress(this.network, {\n address: settings.unstaked_yield_pot,\n datum: \"NoDatum\",\n });\n addDirectOutput(\n tx,\n yieldPotAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, totalForfeit]),\n );\n }\n\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]),\n Data.Void(),\n );\n\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n -totalSUSDrBurned,\n -totalUSDrReleased,\n );\n }\n\n /**\n * DirectMint: Mint USDr without reserve asset flow.\n * USDr is minted to destinations, treasury circulating_supply increases.\n * NO reserve asset changes.\n */\n protected override buildDirectMintExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send USDr to each destination\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n addDirectOutput(\n tx,\n destAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount]),\n );\n }\n\n // Mint USDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Update treasury: circulating_supply increases, NO reserve changes\n this.updateTreasuryOutputNoReserve(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n totalAmount,\n );\n }\n\n /**\n * DirectBurn: Burn USDr without reserve asset flow.\n * USDr is burned, treasury circulating_supply decreases.\n * NO reserve asset changes, NO destination outputs (fiat sent off-chain).\n *\n * The `_stablecoinAssetId` parameter exists only to keep the override\n * signature compatible with the family's; rc1's direct-burn output is\n * min-ADA only and does not touch the stablecoin asset.\n */\n protected override buildDirectBurnExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n _stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n ): void {\n // totalAmount is negative for burns (from classifyOrderAction)\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // CRITICAL: No destination outputs for DirectBurn\n // USDr is burned, fiat is sent off-chain. Nothing goes to user on-chain.\n // We just need to return min ADA to the destination (contract may require this)\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE));\n }\n\n // Burn USDr (totalAmount is negative)\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Update treasury: circulating_supply decreases, NO reserve changes\n this.updateTreasuryOutputNoReserve(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n totalAmount,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Protected Helpers\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Classify an order action from its datum (rc1 actions carry no min_received).\n */\n protected override classifyOrderAction(datum: OrderDatumV1): {\n actionType: TOrderActionType;\n amount: bigint;\n yield?: bigint;\n forfeit?: bigint;\n reserveAsset?: [string, string];\n isTreasuryAction: boolean;\n } {\n const action = datum.action;\n if (\"OMint\" in action) {\n return {\n actionType: \"mint\",\n amount: action.OMint.amount,\n reserveAsset: action.OMint.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ORedeem\" in action) {\n return {\n actionType: \"burn\",\n amount: -action.ORedeem.amount,\n reserveAsset: action.ORedeem.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ODeposit\" in action) {\n return {\n actionType: \"deposit\",\n amount: action.ODeposit.principal,\n yield: action.ODeposit.yield,\n reserveAsset: action.ODeposit.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OWithdraw\" in action) {\n return {\n actionType: \"withdraw\",\n amount: action.OWithdraw.amount,\n reserveAsset: action.OWithdraw.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OStake\" in action) {\n return {\n actionType: \"stake\",\n amount: action.OStake.amount,\n isTreasuryAction: false,\n };\n } else if (\"OUnstake\" in action) {\n return {\n actionType: \"unstake\",\n amount: action.OUnstake.amount,\n forfeit: action.OUnstake.forfeit,\n isTreasuryAction: false,\n };\n } else if (\"ODirectMint\" in action) {\n return {\n actionType: \"direct_mint\",\n amount: action.ODirectMint.amount,\n isTreasuryAction: true,\n };\n } else if (\"ODirectBurn\" in action) {\n return {\n actionType: \"direct_burn\",\n amount: -action.ODirectBurn.amount,\n isTreasuryAction: true,\n };\n }\n throw new Error(\"Unknown order action type\");\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/diffusion.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/diffusion.js new file mode 100644 index 0000000000..df4f52a720 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/diffusion.js @@ -0,0 +1,134 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.SUSDR_EXCHANGE_RATE_PRECISION = exports.MAX_DIFFUSION_RATE_SPAN_MS = void 0; +exports.calculateSusdrExchangeRate = calculateSusdrExchangeRate; +exports.nextDepositDiffusion = nextDepositDiffusion; +exports.pendingRemaining = pendingRemaining; +exports.settledBacking = settledBacking; +var SUSDR_EXCHANGE_RATE_PRECISION = exports.SUSDR_EXCHANGE_RATE_PRECISION = 1000000n; + +/** + * Time-diffused yield — a verbatim TypeScript port of the on-chain helpers in + * `contracts/lib/v1_1_rc1/utilities.ak`. Deposited staked yield does not hit + * the exchange rate instantly; it releases linearly over a window so a large + * deposit cannot be sniped by staking right before it and unstaking right + * after. The SDK must reproduce this math exactly to build vault datums and + * rate quotes the validators accept. + * + * All timestamps are absolute POSIX milliseconds, matching the on-chain datum + * and the Plutus validity range (the ledger presents tx validity bounds to the + * script in POSIX ms, not slots). + */ + +/** + * Maximum tx validity-range span (ms) tolerated while a diffusion window is + * active. Mirrors `max_diffusion_rate_span` (utilities.ak). The validator + * rejects a wider range so an interpolated rate can't be read from a stale, + * far-future lower bound. + */ +var MAX_DIFFUSION_RATE_SPAN_MS = exports.MAX_DIFFUSION_RATE_SPAN_MS = 3600000n; + +/** + * USDr not yet diffused into the exchange rate at `atTimeMs`. Releases linearly + * from `diffusion_start` (full `pending_yield`) to `diffusion_end` (zero), + * rounded UP so settled backing is never overstated (conservative on unstake). + * + * Port of `pending_remaining` (utilities.ak:1082). + */ +function pendingRemaining(vault, atTimeMs) { + var pending_yield = vault.pending_yield, + diffusion_start = vault.diffusion_start, + diffusion_end = vault.diffusion_end; + if (pending_yield <= 0n || atTimeMs >= diffusion_end) { + return 0n; + } + if (atTimeMs <= diffusion_start) { + return pending_yield; + } + var span = diffusion_end - diffusion_start; + // Round up: (a + span - 1) / span with BigInt truncating division. + return (pending_yield * (diffusion_end - atTimeMs) + span - 1n) / span; +} + +/** + * Settled backing — the USDr currently backing sUSDr — given the full vault + * USDr balance and diffusion state at `atTimeMs`. Port of `settled_backing` + * (utilities.ak:1099). When no window is active the whole balance is settled + * and `atTimeMs` is irrelevant (matches the validator, which then requires no + * validity bound). + */ +function settledBacking(usdrBalance, vault, atTimeMs) { + if (vault.pending_yield <= 0n) { + return usdrBalance; + } + return usdrBalance - pendingRemaining(vault, atTimeMs); +} + +/** + * Diffusion-aware USDr-per-sUSDr exchange rate, scaled by `precision`. + * Returns 1:1 when no sUSDr is circulating, matching the on-chain convention. + */ +function calculateSusdrExchangeRate(inputs, atTimeMs) { + var precision = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : SUSDR_EXCHANGE_RATE_PRECISION; + if (inputs.circulatingSusdr <= 0n) { + return precision; + } + var vault = { + circulating_susdr: inputs.circulatingSusdr, + pending_yield: inputs.pendingYield, + diffusion_start: inputs.diffusionStartUnixMilli, + diffusion_end: inputs.diffusionEndUnixMilli + }; + return settledBacking(inputs.vaultUsdr, vault, atTimeMs) * precision / inputs.circulatingSusdr; +} + +/** + * The diffusion fields (`pending_yield`, `diffusion_start`, `diffusion_end`) + * the vault output must carry after a deposit. Port of the field expectations + * inside `validate_deposit_diffusion` (utilities.ak:1117). + * + * - Positive yield: the staked share rolls into `pending` on top of whatever + * hasn't diffused yet, and the window becomes `[nowMs, windowEndMs]`. If no + * window is requested (`windowEndMs <= 0`) and none is active, or the + * requested window has already elapsed by execution (`windowEndMs <= nowMs`), + * it collapses to instant `(0, 0, 0)`. + * - Loss (negative yield): the window is frozen (carried over unchanged); the + * loss is recognised immediately rather than diffused. + * + * `windowEndMs` is the max `diffusion_end` across the batch's deposit requests + * (`max_end` in deposit.ak); `nowMs` is the execution time (the tx validity + * lower bound). + */ +function nextDepositDiffusion(vaultIn, stakedYieldShare, totalYield, windowEndMs, nowMs) { + if (totalYield >= 0n) { + if (vaultIn.pending_yield <= 0n && windowEndMs <= 0n) { + return { + pending_yield: 0n, + diffusion_start: 0n, + diffusion_end: 0n + }; + } + if (windowEndMs > nowMs) { + return { + pending_yield: pendingRemaining(vaultIn, nowMs) + stakedYieldShare, + diffusion_start: nowMs, + diffusion_end: windowEndMs + }; + } + return { + pending_yield: 0n, + diffusion_start: 0n, + diffusion_end: 0n + }; + } + // Loss: freeze the existing window. + return { + pending_yield: vaultIn.pending_yield, + diffusion_start: vaultIn.diffusion_start, + diffusion_end: vaultIn.diffusion_end + }; +} +//# sourceMappingURL=diffusion.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/diffusion.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/diffusion.js.map new file mode 100644 index 0000000000..85dcc2ff1c --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/diffusion.js.map @@ -0,0 +1 @@ +{"version":3,"file":"diffusion.js","names":["SUSDR_EXCHANGE_RATE_PRECISION","exports","MAX_DIFFUSION_RATE_SPAN_MS","pendingRemaining","vault","atTimeMs","pending_yield","diffusion_start","diffusion_end","span","settledBacking","usdrBalance","calculateSusdrExchangeRate","inputs","precision","arguments","length","undefined","circulatingSusdr","circulating_susdr","pendingYield","diffusionStartUnixMilli","diffusionEndUnixMilli","vaultUsdr","nextDepositDiffusion","vaultIn","stakedYieldShare","totalYield","windowEndMs","nowMs"],"sources":["../../../../src/sdk/v1_1_rc1/diffusion.ts"],"sourcesContent":["import type { VaultDatumV1 } from \"../../generated-types/v1_1_rc1/index.js\";\n\nexport interface ISusdrExchangeRateInputs {\n circulatingSusdr: bigint;\n vaultUsdr: bigint;\n pendingYield: bigint;\n diffusionStartUnixMilli: bigint;\n diffusionEndUnixMilli: bigint;\n}\n\nexport const SUSDR_EXCHANGE_RATE_PRECISION = 1_000_000n;\n\n/**\n * Time-diffused yield — a verbatim TypeScript port of the on-chain helpers in\n * `contracts/lib/v1_1_rc1/utilities.ak`. Deposited staked yield does not hit\n * the exchange rate instantly; it releases linearly over a window so a large\n * deposit cannot be sniped by staking right before it and unstaking right\n * after. The SDK must reproduce this math exactly to build vault datums and\n * rate quotes the validators accept.\n *\n * All timestamps are absolute POSIX milliseconds, matching the on-chain datum\n * and the Plutus validity range (the ledger presents tx validity bounds to the\n * script in POSIX ms, not slots).\n */\n\n/**\n * Maximum tx validity-range span (ms) tolerated while a diffusion window is\n * active. Mirrors `max_diffusion_rate_span` (utilities.ak). The validator\n * rejects a wider range so an interpolated rate can't be read from a stale,\n * far-future lower bound.\n */\nexport const MAX_DIFFUSION_RATE_SPAN_MS = 3_600_000n;\n\n/**\n * USDr not yet diffused into the exchange rate at `atTimeMs`. Releases linearly\n * from `diffusion_start` (full `pending_yield`) to `diffusion_end` (zero),\n * rounded UP so settled backing is never overstated (conservative on unstake).\n *\n * Port of `pending_remaining` (utilities.ak:1082).\n */\nexport function pendingRemaining(\n vault: VaultDatumV1,\n atTimeMs: bigint,\n): bigint {\n const { pending_yield, diffusion_start, diffusion_end } = vault;\n if (pending_yield <= 0n || atTimeMs >= diffusion_end) {\n return 0n;\n }\n if (atTimeMs <= diffusion_start) {\n return pending_yield;\n }\n const span = diffusion_end - diffusion_start;\n // Round up: (a + span - 1) / span with BigInt truncating division.\n return (pending_yield * (diffusion_end - atTimeMs) + span - 1n) / span;\n}\n\n/**\n * Settled backing — the USDr currently backing sUSDr — given the full vault\n * USDr balance and diffusion state at `atTimeMs`. Port of `settled_backing`\n * (utilities.ak:1099). When no window is active the whole balance is settled\n * and `atTimeMs` is irrelevant (matches the validator, which then requires no\n * validity bound).\n */\nexport function settledBacking(\n usdrBalance: bigint,\n vault: VaultDatumV1,\n atTimeMs: bigint,\n): bigint {\n if (vault.pending_yield <= 0n) {\n return usdrBalance;\n }\n return usdrBalance - pendingRemaining(vault, atTimeMs);\n}\n\n/**\n * Diffusion-aware USDr-per-sUSDr exchange rate, scaled by `precision`.\n * Returns 1:1 when no sUSDr is circulating, matching the on-chain convention.\n */\nexport function calculateSusdrExchangeRate(\n inputs: ISusdrExchangeRateInputs,\n atTimeMs: bigint,\n precision: bigint = SUSDR_EXCHANGE_RATE_PRECISION,\n): bigint {\n if (inputs.circulatingSusdr <= 0n) {\n return precision;\n }\n\n const vault: VaultDatumV1 = {\n circulating_susdr: inputs.circulatingSusdr,\n pending_yield: inputs.pendingYield,\n diffusion_start: inputs.diffusionStartUnixMilli,\n diffusion_end: inputs.diffusionEndUnixMilli,\n };\n\n return (\n (settledBacking(inputs.vaultUsdr, vault, atTimeMs) * precision) /\n inputs.circulatingSusdr\n );\n}\n\n/**\n * The diffusion fields (`pending_yield`, `diffusion_start`, `diffusion_end`)\n * the vault output must carry after a deposit. Port of the field expectations\n * inside `validate_deposit_diffusion` (utilities.ak:1117).\n *\n * - Positive yield: the staked share rolls into `pending` on top of whatever\n * hasn't diffused yet, and the window becomes `[nowMs, windowEndMs]`. If no\n * window is requested (`windowEndMs <= 0`) and none is active, or the\n * requested window has already elapsed by execution (`windowEndMs <= nowMs`),\n * it collapses to instant `(0, 0, 0)`.\n * - Loss (negative yield): the window is frozen (carried over unchanged); the\n * loss is recognised immediately rather than diffused.\n *\n * `windowEndMs` is the max `diffusion_end` across the batch's deposit requests\n * (`max_end` in deposit.ak); `nowMs` is the execution time (the tx validity\n * lower bound).\n */\nexport function nextDepositDiffusion(\n vaultIn: VaultDatumV1,\n stakedYieldShare: bigint,\n totalYield: bigint,\n windowEndMs: bigint,\n nowMs: bigint,\n): { pending_yield: bigint; diffusion_start: bigint; diffusion_end: bigint } {\n if (totalYield >= 0n) {\n if (vaultIn.pending_yield <= 0n && windowEndMs <= 0n) {\n return { pending_yield: 0n, diffusion_start: 0n, diffusion_end: 0n };\n }\n if (windowEndMs > nowMs) {\n return {\n pending_yield: pendingRemaining(vaultIn, nowMs) + stakedYieldShare,\n diffusion_start: nowMs,\n diffusion_end: windowEndMs,\n };\n }\n return { pending_yield: 0n, diffusion_start: 0n, diffusion_end: 0n };\n }\n // Loss: freeze the existing window.\n return {\n pending_yield: vaultIn.pending_yield,\n diffusion_start: vaultIn.diffusion_start,\n diffusion_end: vaultIn.diffusion_end,\n };\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/index.js b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/index.js new file mode 100644 index 0000000000..5bf0f6c5f9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/index.js @@ -0,0 +1,1023 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "MAX_DIFFUSION_RATE_SPAN_MS", { + enumerable: true, + get: function get() { + return _diffusion.MAX_DIFFUSION_RATE_SPAN_MS; + } +}); +exports.RealfiSDKV1_1Rc1 = void 0; +var _core = require("@blaze-cardano/core"); +var _data = _interopRequireWildcard(require("@blaze-cardano/data")); +var Data = _data; +var _sdk = require("@blaze-cardano/sdk"); +var _index = require("../../generated-types/index.js"); +var _index2 = require("../shared/index.js"); +var _family = require("../v1/family.js"); +var _diffusion = require("./diffusion.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); } +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); } +function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); } +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } +function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); } +function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; } +function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } +function _superPropGet(t, o, e, r) { var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; } +function _get() { return _get = "undefined" != typeof Reflect && Reflect.get ? Reflect.get.bind() : function (e, t, r) { var p = _superPropBase(e, t); if (p) { var n = Object.getOwnPropertyDescriptor(p, t); return n.get ? n.get.call(arguments.length < 3 ? e : r) : n.value; } }, _get.apply(null, arguments); } +function _superPropBase(t, o) { for (; !{}.hasOwnProperty.call(t, o) && null !== (t = _getPrototypeOf(t));); return t; } +function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); } +function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); } +function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /** V1_1-specific knobs threaded from the public params to the constructor. */ // eslint-disable-next-line @typescript-eslint/naming-convention +// eslint-disable-next-line @typescript-eslint/naming-convention + +var DEFAULT_EXECUTION_VALIDITY_WINDOW_MS = 1800000n; // 30 minutes + +/** + * How far in the past to open a vault-touching execution's validity interval + * when using the default wall clock. + * + * The validator requires the vault's `diffusion_start` to equal the validity + * lower bound. Backing off both values absorbs submitter clock skew without + * shortening duration-based order windows or the forward execution window. + * Injected clocks are used verbatim for deterministic emulator tests. + */ +var DEFAULT_CLOCK_BACKOFF_MS = 120000n; // 2 minutes + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * V1_1_Rc1 SDK implementation. + * + * The release candidate keeps V1_0's order/redeemer taxonomy (fees, + * `min_received`, `ExchangeRequestV1`/`TreasuryRequestV1`/`StakeRequestV1`) and + * adds **time-diffused yield**: the staking vault datum grows to four fields + * (`circulating_susdr`, `pending_yield`, `diffusion_start`, `diffusion_end`) + * and deposited staked yield releases into the exchange rate linearly over a + * window rather than instantly. + * + * Because the redeemer shape is V1_0 plus an additive `diffusion_end`, this + * class reuses {@link RealfiSDKV1Family}'s V1_0-semantics tx-builders wholesale + * and overrides only the diffusion seams: + * - the four-field vault datum ({@link buildInitialVaultDatum} / + * {@link buildUpdatedVaultDatum}) and nested settings adapters; + * - {@link settledVaultBacking}: quote stake/unstake rates against settled + * backing (balance minus not-yet-diffused pending yield); + * - {@link buildTreasuryRequest}: echo the order datum's `diffusion_end` into + * the signed payload; + * - {@link updateDepositVaultOutput}: roll the staked share into the diffusion + * window on deposit; + * - {@link buildDepositOrderTx}: expose the `diffusion_end` order parameter; + * - {@link applyExecutionValidityBounds}: attach the validity range the + * diffusion rate time is read from. + */ +var RealfiSDKV1_1Rc1 = exports.RealfiSDKV1_1Rc1 = /*#__PURE__*/function (_RealfiSDKV1Family) { + function RealfiSDKV1_1Rc1(blaze, params, schemas, scripts, cachedReferenceInputs, signingSchemas, options) { + var _options$now, _options$diffusionSho, _options$throwOnDiffu, _options$executionVal; + var _this; + _classCallCheck(this, RealfiSDKV1_1Rc1); + _this = _callSuper(this, RealfiSDKV1_1Rc1, [blaze, params, schemas, scripts, cachedReferenceInputs, signingSchemas]); + _defineProperty(_this, "version", "V1_1_Rc1"); + _defineProperty(_this, "nowFn", void 0); + _defineProperty(_this, "defaultDiffusionDurationMs", void 0); + _defineProperty(_this, "executionValidityWindowMs", void 0); + _defineProperty(_this, "executionClockBackoffMs", void 0); + _defineProperty(_this, "diffusionShortfallThresholdMs", void 0); + _defineProperty(_this, "throwOnDiffusionWindowShortfall", void 0); + /** + * The `distribution_oracle` (publish-logic) validator hash. Exposed so + * settings datums can point `registry.yield_oracle` at it — that is the + * withdrawal the orchestrator's PublishYieldOracle path requires. NOTE: this + * is NOT the orchestrator's 5th compile-time parameter; that parameter is the + * `yield_oracle` validator hash (the mint+spend validator that holds the + * oracle UTxO), which is a different validator with a different hash. + */ + _defineProperty(_this, "distributionOracleScriptHash", void 0); + /** + * The `protocol_migration_v1_0_to_v1_1` withdraw validator and its hash. + * The validator is registry-gated (whitelisted via `registry.migration`), NOT + * an orchestrator compile-time parameter, so it lives version-locally on this + * class. Deploy it (`deployMigration`) + register its stake + * (`registerMigrationStake`), then run `buildMigrateStateTx` to migrate a + * v1_0 one-field vault datum to the four-field v1_1 shape in place. + */ + _defineProperty(_this, "migrationScript", void 0); + _defineProperty(_this, "migrationScriptHash", void 0); + /** + * Slot-aligned execution bounds for the in-flight `buildExecuteOrdersTx`. + * `executionNowMs` is the backed-off lower bound used by the diffusion datum + * and rate quote; `executionValidUntilMs` is based on the unshifted wall time. + * Both are undefined outside an execution build. + */ + _defineProperty(_this, "executionNowMs", void 0); + _defineProperty(_this, "executionValidUntilMs", void 0); + _this.nowFn = (_options$now = options.now) !== null && _options$now !== void 0 ? _options$now : function () { + return BigInt(Date.now()); + }; + _this.executionClockBackoffMs = options.now === undefined ? DEFAULT_CLOCK_BACKOFF_MS : 0n; + _this.defaultDiffusionDurationMs = options.defaultDiffusionDurationMs; + _this.diffusionShortfallThresholdMs = (_options$diffusionSho = options.diffusionShortfallThresholdMs) !== null && _options$diffusionSho !== void 0 ? _options$diffusionSho : 0n; + // A negative threshold would silently suppress detection of a window that + // HAS lapsed (remaining is negative by then), defeating the whole guard — + // and, with throwOnDiffusionWindowShortfall set, defeating it silently. + if (_this.diffusionShortfallThresholdMs < 0n) { + throw new RangeError("diffusionShortfallThresholdMs must be non-negative, got ".concat(_this.diffusionShortfallThresholdMs, " ms.")); + } + _this.throwOnDiffusionWindowShortfall = (_options$throwOnDiffu = options.throwOnDiffusionWindowShortfall) !== null && _options$throwOnDiffu !== void 0 ? _options$throwOnDiffu : false; + _this.executionValidityWindowMs = (_options$executionVal = options.executionValidityWindowMs) !== null && _options$executionVal !== void 0 ? _options$executionVal : DEFAULT_EXECUTION_VALIDITY_WINDOW_MS; + var validitySpanMs = _this.executionClockBackoffMs + _this.executionValidityWindowMs; + if (_this.executionValidityWindowMs < 0n || validitySpanMs > _diffusion.MAX_DIFFUSION_RATE_SPAN_MS) { + throw new RangeError("Execution validity span must be at most 1 hour (".concat(_diffusion.MAX_DIFFUSION_RATE_SPAN_MS, " ms), got ").concat(validitySpanMs, " ms.")); + } + _this.distributionOracleScriptHash = options.distributionOracleScriptHash; + _this.migrationScript = options.migrationScript; + _this.migrationScriptHash = options.migrationScript.hash(); + return _this; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + _inherits(RealfiSDKV1_1Rc1, _RealfiSDKV1Family); + return _createClass(RealfiSDKV1_1Rc1, [{ + key: "settingsConfig", + value: function settingsConfig(settings) { + // V1_1 settings are nested: the reserve/pot config lives under `config`. + return settings.config; + } + }, { + key: "settingsRegistry", + value: function settingsRegistry(settings) { + return settings.registry; + } + }, { + key: "buildInitialVaultDatum", + value: function buildInitialVaultDatum() { + return { + circulating_susdr: 0n, + pending_yield: 0n, + diffusion_start: 0n, + diffusion_end: 0n + }; + } + }, { + key: "buildUpdatedVaultDatum", + value: function buildUpdatedVaultDatum(previous, sUSDrDelta) { + // Stake / unstake move only circulating_susdr; the diffusion window passes + // through untouched (stake.ak / unstake.ak enforce this). Deposit builds + // its datum via updateDepositVaultOutput, not this seam. + return { + circulating_susdr: previous.circulating_susdr + sUSDrDelta, + pending_yield: previous.pending_yield, + diffusion_start: previous.diffusion_start, + diffusion_end: previous.diffusion_end + }; + } + }, { + key: "settledVaultBacking", + value: function settledVaultBacking(parsedVaultDatum, vaultUSDr) { + return (0, _diffusion.settledBacking)(vaultUSDr, parsedVaultDatum, this.rateTimeMs()); + } + }, { + key: "buildTreasuryRequest", + value: function buildTreasuryRequest(datum, parsed, origin) { + var _parsed$yield; + // The signed request must echo the order datum's diffusion_end + // (utilities.ak enforces request.diffusion_end == order.diffusion_end). + var action = datum.action; + var diffusionEnd = "ODeposit" in action ? action.ODeposit.diffusion_end : 0n; + return { + destination: datum.destination, + amount: parsed.amount, + "yield": (_parsed$yield = parsed["yield"]) !== null && _parsed$yield !== void 0 ? _parsed$yield : 0n, + diffusion_end: diffusionEnd, + origin: origin, + reserve_asset: parsed.reserveAsset + }; + } + }, { + key: "splitsYield", + get: function get() { + return true; + } + + /** + * The yield split a deposit batch's creator should pick: + * vault_usdr / treasury_circulating, i.e. the share of the circulating supply + * that is staked. Pinning it to that ratio makes the SIGNED split reproduce + * exactly the integer staked share the executor writes to the vault — + * deposit.ak recomputes staked_yield_share = total_yield * numerator / + * denominator with the same truncation-toward-zero, and the same two values + * feed the execute path's calculateYieldShares. + * + * Only the creator of a batch calls this. A co-signer must NOT: it reads live + * state, and two signers reading it at different chain states would produce + * different payload bytes, which cannot be co-signed (the orchestrator checks + * every signature against one payload hash). Co-signers read the batch's alpha + * back from the backend and pass it to getSignedPayloadFromOrderInputs. + */ + }, { + key: "computeDepositAlpha", + value: (function () { + var _computeDepositAlpha = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { + var _vaultUtxo$output$amo, _vaultUtxo$output$amo2; + var stablecoinAssetId, _yield$this$getVaultD, vaultUtxo, vaultUSDr, _yield$this$getTreasu, parsedTreasuryDatum, treasuryCirculating; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + _context.n = 1; + return this.getVaultDatum(); + case 1: + _yield$this$getVaultD = _context.v; + vaultUtxo = _yield$this$getVaultD.vaultUtxo; + vaultUSDr = (_vaultUtxo$output$amo = (_vaultUtxo$output$amo2 = vaultUtxo.output().amount().multiasset()) === null || _vaultUtxo$output$amo2 === void 0 ? void 0 : _vaultUtxo$output$amo2.get(stablecoinAssetId)) !== null && _vaultUtxo$output$amo !== void 0 ? _vaultUtxo$output$amo : 0n; + _context.n = 2; + return this.getTreasuryDatum(); + case 2: + _yield$this$getTreasu = _context.v; + parsedTreasuryDatum = _yield$this$getTreasu.parsedTreasuryDatum; + treasuryCirculating = parsedTreasuryDatum.circulating_supply; + return _context.a(2, treasuryCirculating > 0n ? { + numerator: vaultUSDr, + denominator: treasuryCirculating + } : { + numerator: 0n, + denominator: 1n + }); + } + }, _callee, this); + })); + function computeDepositAlpha() { + return _computeDepositAlpha.apply(this, arguments); + } + return computeDepositAlpha; + }()) + }, { + key: "buildDepositAction", + value: function () { + var _buildDepositAction = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(requests, alpha) { + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + if (alpha) { + _context2.n = 1; + break; + } + throw new Error("v1_1_rc1: a deposit batch needs its yield-split alpha — pass the batch's stored alpha (created with computeDepositAlpha)"); + case 1: + if (!(alpha.denominator <= 0n)) { + _context2.n = 2; + break; + } + throw new Error("v1_1_rc1: yield-split alpha denominator must be positive, got ".concat(alpha.denominator)); + case 2: + if (!(alpha.numerator < 0n || alpha.numerator > alpha.denominator)) { + _context2.n = 3; + break; + } + throw new Error("v1_1_rc1: yield-split alpha must be within [0, 1], got ".concat(alpha.numerator, "/").concat(alpha.denominator)); + case 3: + return _context2.a(2, { + Deposit: { + requests: requests, + alpha: alpha + } + }); + } + }, _callee2); + })); + function buildDepositAction(_x, _x2) { + return _buildDepositAction.apply(this, arguments); + } + return buildDepositAction; + }() + /** + * rc1's Deposit carries a COSE-signed `alpha`; `deposit.ak` splits total_yield + * against that signed ratio (quotient_integer), NOT live vault/treasury state. + * Echo the signed alpha here so the executor's vault/pot outputs (and the + * pot-output indexing) match what the validator checks — re-reading state + * would diverge if the vault or treasury moved between signing and execution. + */ + }, { + key: "resolveDepositYieldShares", + value: function resolveDepositYieldShares(totalYield, vaultUSDr, treasuryCirculating, action) { + var deposit = action.Deposit; + if (!deposit) { + // Defensive: a non-Deposit action routed here → live-state split. + return _superPropGet(RealfiSDKV1_1Rc1, "resolveDepositYieldShares", this, 3)([totalYield, vaultUSDr, treasuryCirculating, action]); + } + var _deposit$alpha = deposit.alpha, + numerator = _deposit$alpha.numerator, + denominator = _deposit$alpha.denominator; + // BigInt division truncates toward zero, matching Aiken quotient_integer. + var stakedYieldShare = denominator > 0n ? totalYield * numerator / denominator : 0n; + return { + stakedYieldShare: stakedYieldShare, + unstakedYieldShare: totalYield - stakedYieldShare + }; + } + }, { + key: "serializeOrchestratorWithdrawalRedeemer", + value: function serializeOrchestratorWithdrawalRedeemer(redeemer) { + // v1_1_rc1's orchestrator dispatch wraps order execution in + // ExecuteOrders(...) (the sibling PublishYieldOracle path is a follow-up + // PR). Nest the family's signed redeemer inside the wrapper. The redeemer is + // v1_0-typed at the family layer (Deposit carries `alpha` only at runtime, + // injected by buildDepositAction); cast to the wrapper's static. + return Data.serialize(_index.V1_1Rc1Types.ProtocolOrchestratorRedeemerV1, { + ExecuteOrders: [redeemer] + }); + } + }, { + key: "updateDepositVaultOutput", + value: function updateDepositVaultOutput(tx, vaultUtxo, parsedVaultDatum, ctx) { + // Vault window end = max diffusion_end across the batch's deposit orders + // (max_end in deposit.ak). Read from each order datum's ODeposit action. + var windowEndMs = 0n; + var _iterator = _createForOfIteratorHelper(ctx.orderInfos), + _step; + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var orderInfo = _step.value; + var action = orderInfo.datum.action; + if ("ODeposit" in action && action.ODeposit.diffusion_end > windowEndMs) { + windowEndMs = action.ODeposit.diffusion_end; + } + } + + // One timestamp for both the shortfall check and the datum, so the warning + // can never describe a different execution time than the one written. + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + var nowMs = this.rateTimeMs(); + this.checkDiffusionWindow(parsedVaultDatum, ctx, windowEndMs, nowMs); + var window = (0, _diffusion.nextDepositDiffusion)(parsedVaultDatum, ctx.stakedYieldShare, ctx.totalYield, windowEndMs, nowMs); + this.updateVaultOutputWithDatum(tx, vaultUtxo, _objectSpread({ + circulating_susdr: parsedVaultDatum.circulating_susdr + }, window), ctx.stakedYieldShare); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Deposit order builder (adds the diffusion_end datum field) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a deposit order. Identical to the family default except the ODeposit + * datum carries `diffusion_end` — the absolute POSIX-ms timestamp the staked + * yield diffuses until, set at ORDER CREATION and echoed by the executed + * request. Resolution: explicit `diffusionEnd` > `diffusionDurationMs` added to + * the order-creation time > the SDK's `defaultDiffusionDurationMs` added to the + * order-creation time > `0n` (instant). + * + * NB: because the window is absolute and fixed here, any delay before the + * execute lands (batching, cold/multisig signature collection) shortens the + * effective window; a window that fully elapses before execution collapses the + * deposit to instant on-chain. + */ + }, { + key: "buildDepositOrderTx", + value: function () { + var _buildDepositOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(params) { + var settings, ra, reserveAssetId, valueToLock, totalUSDrBacking, _vaultUtxo$output$amo3, _vaultUtxo$output$amo4, principalReserve, stablecoinAssetId, _yield$this$getTreasu2, parsedTreasuryDatum, vaultUtxo, vaultUSDr, _calculateYieldShares, unstakedYieldShare, action, _t; + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + if (!(params.principal < 0n)) { + _context3.n = 1; + break; + } + throw new Error("Deposit principal must be non-negative"); + case 1: + if (!(params.principal === 0n && params["yield"] === 0n)) { + _context3.n = 2; + break; + } + throw new Error("Deposit must have non-zero principal or yield"); + case 2: + _t = this; + _context3.n = 3; + return this.getVersionSettings(); + case 3: + settings = _t.settingsConfig.call(_t, _context3.v); + ra = (0, _index2.findReserveAsset)(settings, params.reserveAsset); + reserveAssetId = _sdk.Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); + if (!(params["yield"] >= 0n)) { + _context3.n = 4; + break; + } + // Positive yield: lock reserve backing for BOTH principal AND yield. + totalUSDrBacking = params.principal + params["yield"]; + valueToLock = totalUSDrBacking > 0n ? (0, _sdk.makeValue)(_family.MIN_LOVELACE, [reserveAssetId, (0, _index2.usdrToReserveCeil)(totalUSDrBacking, ra)]) : (0, _sdk.makeValue)(_family.MIN_LOVELACE); + _context3.n = 7; + break; + case 4: + // Negative yield: lock principal (reserve) + unstaked yield share (USDr). + principalReserve = params.principal > 0n ? (0, _index2.usdrToReserveCeil)(params.principal, ra) : 0n; + valueToLock = principalReserve > 0n ? (0, _sdk.makeValue)(_family.MIN_LOVELACE, [reserveAssetId, principalReserve]) : (0, _sdk.makeValue)(_family.MIN_LOVELACE); + stablecoinAssetId = _sdk.Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + _context3.n = 5; + return this.getTreasuryDatum(); + case 5: + _yield$this$getTreasu2 = _context3.v; + parsedTreasuryDatum = _yield$this$getTreasu2.parsedTreasuryDatum; + _context3.n = 6; + return this.getVaultDatum(); + case 6: + vaultUtxo = _context3.v.vaultUtxo; + vaultUSDr = (_vaultUtxo$output$amo3 = (_vaultUtxo$output$amo4 = vaultUtxo.output().amount().multiasset()) === null || _vaultUtxo$output$amo4 === void 0 ? void 0 : _vaultUtxo$output$amo4.get(stablecoinAssetId)) !== null && _vaultUtxo$output$amo3 !== void 0 ? _vaultUtxo$output$amo3 : 0n; + _calculateYieldShares = (0, _family.calculateYieldShares)(params["yield"], vaultUSDr, parsedTreasuryDatum.circulating_supply), unstakedYieldShare = _calculateYieldShares.unstakedYieldShare; + if (unstakedYieldShare < 0n) { + valueToLock = _sdk.Value.merge(valueToLock, (0, _sdk.makeValue)(0n, [stablecoinAssetId, -unstakedYieldShare])); + } + case 7: + // Typed as the v1_1 action (carries diffusion_end); assignable to the + // family's v1_0 action param since the extra field is additive. + action = { + ODeposit: { + principal: params.principal, + "yield": params["yield"], + diffusion_end: this.resolveDiffusionEnd(params), + reserve_asset: params.reserveAsset + } + }; + return _context3.a(2, this._buildOrderTx({ + action: action, + valueToLock: valueToLock, + owner: params.owner, + destination: params.destination, + data: params.data + })); + } + }, _callee3, this); + })); + function buildDepositOrderTx(_x3) { + return _buildDepositOrderTx.apply(this, arguments); + } + return buildDepositOrderTx; + }() // ───────────────────────────────────────────────────────────────────────────── + // Execution validity / diffusion rate time + // ───────────────────────────────────────────────────────────────────────────── + }, { + key: "buildExecuteOrdersTx", + value: function () { + var _buildExecuteOrdersTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(params) { + var provider, wallNowMs; + return _regenerator().w(function (_context4) { + while (1) switch (_context4.p = _context4.n) { + case 0: + // Pin both execution bounds once and align them to integer slots. The + // backed-off lower bound drives diffusion_start and rate math; the upper + // bound stays relative to unshifted wall time so skew protection does not + // shorten the configured forward window. + provider = this.blaze.provider; + wallNowMs = (0, _index2.slotAlignedTimeMs)(provider, this.nowFn()); + this.executionNowMs = (0, _index2.slotAlignedTimeMs)(provider, wallNowMs - this.executionClockBackoffMs); + this.executionValidUntilMs = (0, _index2.slotAlignedTimeMs)(provider, wallNowMs + this.executionValidityWindowMs); + _context4.p = 1; + _context4.n = 2; + return _superPropGet(RealfiSDKV1_1Rc1, "buildExecuteOrdersTx", this, 3)([params]); + case 2: + return _context4.a(2, _context4.v); + case 3: + _context4.p = 3; + this.executionNowMs = undefined; + this.executionValidUntilMs = undefined; + return _context4.f(3); + case 4: + return _context4.a(2); + } + }, _callee4, this, [[1,, 3, 4]]); + })); + function buildExecuteOrdersTx(_x4) { + return _buildExecuteOrdersTx.apply(this, arguments); + } + return buildExecuteOrdersTx; + }() + }, { + key: "applyExecutionValidityBounds", + value: function () { + var _applyExecutionValidityBounds = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(tx, context) { + var _parsedVaultDatum$pen; + var nowMs, validUntilMs, actionType, parsedVaultDatum, needsBounds; + return _regenerator().w(function (_context5) { + while (1) switch (_context5.n) { + case 0: + nowMs = this.executionNowMs; + validUntilMs = this.executionValidUntilMs; + if (!(nowMs === undefined || validUntilMs === undefined)) { + _context5.n = 1; + break; + } + return _context5.a(2); + case 1: + actionType = context.actionType, parsedVaultDatum = context.parsedVaultDatum; // Deposit always reads the diffusion rate time once a window is requested + // or already active; setting bounds unconditionally on deposit is safe + // (the validator only caps the span when it reads it). Stake/unstake need + // bounds only when a diffusion window is active. + needsBounds = actionType === "deposit" || (actionType === "stake" || actionType === "unstake") && ((_parsedVaultDatum$pen = parsedVaultDatum === null || parsedVaultDatum === void 0 ? void 0 : parsedVaultDatum.pending_yield) !== null && _parsedVaultDatum$pen !== void 0 ? _parsedVaultDatum$pen : 0n) > 0n; + if (needsBounds) { + _context5.n = 2; + break; + } + return _context5.a(2); + case 2: + // Both bounds are already slot-aligned times, but go through `slotFloor` + // anyway: it is the only conversion allowed to reach the tx builder, and it + // guarantees an integer slot (the CBOR writer would silently truncate a + // fractional one, putting a different value on-chain than the datum's). + tx.setValidFrom((0, _index2.slotFloor)(this.blaze.provider, nowMs)); + tx.setValidUntil((0, _index2.slotFloor)(this.blaze.provider, validUntilMs)); + case 3: + return _context5.a(2); + } + }, _callee5, this); + })); + function applyExecutionValidityBounds(_x5, _x6) { + return _applyExecutionValidityBounds.apply(this, arguments); + } + return applyExecutionValidityBounds; + }() // ───────────────────────────────────────────────────────────────────────────── + // Helpers + // ───────────────────────────────────────────────────────────────────────────── + /** + * The diffusion rate timestamp (POSIX ms): the pinned execution time during + * an execution build, else the current wall-clock time (used by order-build + * min-received estimation, where an exact rate time is not yet knowable). + */ + }, { + key: "rateTimeMs", + value: function rateTimeMs() { + var _this$executionNowMs; + return (_this$executionNowMs = this.executionNowMs) !== null && _this$executionNowMs !== void 0 ? _this$executionNowMs : this.nowFn(); + } + }, { + key: "resolveDiffusionEnd", + value: function resolveDiffusionEnd(params) { + var _params$diffusionDura; + if (params.diffusionEnd !== undefined) { + return params.diffusionEnd; + } + var duration = (_params$diffusionDura = params.diffusionDurationMs) !== null && _params$diffusionDura !== void 0 ? _params$diffusionDura : this.defaultDiffusionDurationMs; + return duration !== undefined ? this.nowFn() + duration : 0n; + } + + /** + * Surface a diffusion-window shortfall on a deposit execution. + * + * `diffusion_end` is absolute and fixed at ORDER CREATION, so waiting to + * execute (batching, cold/multisig signing) eats the window. Once it is gone, + * `validate_deposit_diffusion` (utilities.ak:1117) zeroes the window and the + * deposit settles instantly — a VALID on-chain outcome, so the tx succeeds and + * nothing else in the stack complains. This is the only place that sees it: + * the operator would otherwise have to read the resulting vault datum. + * + * Advisory by default; {@link IRealfiSDKParamsV1_1Rc1.throwOnDiffusionWindowShortfall} + * turns it into a refusal. + */ + }, { + key: "checkDiffusionWindow", + value: function checkDiffusionWindow(vaultIn, ctx, windowEndMs, nowMs) { + // A loss freezes the window rather than collapsing it (utilities.ak:1143). + if (ctx.totalYield < 0n) { + return; + } + // What the vault still owes the exchange rate — NOT `pending_yield`, which + // keeps its original value in the datum until a tx rewrites it and so stays + // positive long after the window has run its course. Only an unfinished + // window has anything left to lose. + var pendingLeftUsdr = (0, _diffusion.pendingRemaining)(vaultIn, nowMs); + // No window requested and nothing left owed: the validator zeroes the datum + // as its benign no-op case (utilities.ak:1128) — either a plain instant + // deposit, or bookkeeping cleanup after a window ran to completion. + if (windowEndMs <= 0n && pendingLeftUsdr <= 0n) { + return; + } + // Nothing to diffuse: no staked share arriving and nothing still owed. + if (ctx.stakedYieldShare <= 0n && pendingLeftUsdr <= 0n) { + return; + } + var remainingMs = windowEndMs - nowMs; + var message; + if (windowEndMs > 0n) { + if (remainingMs > this.diffusionShortfallThresholdMs) { + return; + } + // Distinct outcomes: a lapsed window collapses to instant, while a + // near-lapsed one still opens and diffuses over what is left. + if (remainingMs <= 0n) { + message = "deposit diffusion window lapsed ".concat(-remainingMs, "ms before execution ") + "(diffusion_end=".concat(windowEndMs, ", execution time=").concat(nowMs, "); the staked ") + "yield settles INSTANTLY instead of diffusing. Re-create the order " + "with a longer window to diffuse it."; + } else { + message = "deposit diffusion window has only ".concat(remainingMs, "ms left at ") + "execution (diffusion_end=".concat(windowEndMs, "); the staked yield diffuses ") + "over that remainder."; + } + } else { + // No window requested while one is unfinished: the validator clears the + // active window instead of carrying it (utilities.ak:1128-1136). + message = "deposit requests no diffusion window while ".concat(pendingLeftUsdr, " USDr has ") + "not yet diffused (of ".concat(vaultIn.pending_yield, " pending, at execution ") + "time ".concat(nowMs, "); the active window is CLEARED and that remainder ") + "settles instantly."; + } + var text = "[realfi-sdk] ".concat(message); + if (this.throwOnDiffusionWindowShortfall) { + throw new Error(text); + } + console.warn(text); + } + + // ─────────────────────────────────────────────────────────────────────────── + // In-place v1_0 → v1_1_rc1 upgrade: vault-datum migration (MigrateState) + // ─────────────────────────────────────────────────────────────────────────── + + /** + * Deploy the migration validator as a reference script. Required before its + * withdrawal can be attached in {@link buildMigrateStateTx}. + */ + }, { + key: "deployMigration", + value: function () { + var _deployMigration = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() { + return _regenerator().w(function (_context6) { + while (1) switch (_context6.n) { + case 0: + return _context6.a(2, (0, _index2.deployScript)(this.blaze, this.migrationScript, this.scriptDeploymentAddress)); + } + }, _callee6, this); + })); + function deployMigration() { + return _deployMigration.apply(this, arguments); + } + return deployMigration; + }() + /** + * Register the migration validator's stake credential. Its withdrawal cannot + * be exercised until the stake credential is registered. + */ + }, { + key: "registerMigrationStake", + value: function registerMigrationStake() { + return this.blaze.newTransaction().addRegisterStake((0, _index2.credentialFromScript)(this.migrationScript)); + } + + /** + * Read the staking-vault UTxO holding a legacy v1_0 (one-field) datum. The + * inherited {@link getVaultDatum} parses the four-field v1_1 schema and THROWS + * on a pre-migration vault, so the migration path reads the input with the + * v1_0 single-field schema (`circulating_susdr` only). + */ + }, { + key: "readLegacyVaultDatum", + value: (function () { + var _readLegacyVaultDatum = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() { + var _yield$getDatumFromNF, utxo, parsedDatum, legacy; + return _regenerator().w(function (_context7) { + while (1) switch (_context7.n) { + case 0: + _context7.n = 1; + return (0, _index2.getDatumFromNFT)(this.blaze, this.stakingVaultNFTAssetId, _index.V1_0Types.VaultDatumV1); + case 1: + _yield$getDatumFromNF = _context7.v; + utxo = _yield$getDatumFromNF.utxo; + parsedDatum = _yield$getDatumFromNF.parsedDatum; + legacy = parsedDatum; + return _context7.a(2, { + vaultUtxo: utxo, + circulatingSusdr: legacy.circulating_susdr + }); + } + }, _callee7, this); + })); + function readLegacyVaultDatum() { + return _readLegacyVaultDatum.apply(this, arguments); + } + return readLegacyVaultDatum; + }() + /** + * Build the COSE payload for a `MigrateState` action. Unlike the order path + * (whose nonce derives from the sorted order inputs), migration spends the + * vault UTxO, so the nonce is anchored to the vault input. Returns the CBOR + * payload (for {@link buildMigrateStateTx}) and its blake2b-256 hash (for + * CIP-30 signing by the `permissions.migrate` signer(s)). + */ + ) + }, { + key: "getMigrateStatePayload", + value: (function () { + var _getMigrateStatePayload = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() { + var _yield$this$readLegac, vaultUtxo, nonce, payload, serialized, signedPayload, payloadHash; + return _regenerator().w(function (_context8) { + while (1) switch (_context8.n) { + case 0: + _context8.n = 1; + return this.readLegacyVaultDatum(); + case 1: + _yield$this$readLegac = _context8.v; + vaultUtxo = _yield$this$readLegac.vaultUtxo; + nonce = (0, _index2.buildNonceFromUtxo)(vaultUtxo.input()); // The family signing-schema key is v1_0-typed at compile time (its action + // union predates MigrateState), but the runtime schema is the v1_1 one whose + // ProtocolRedeemerV1 includes the MigrateState literal (ctor 8). Cast the + // payload to the family payload type the serializer expects. + payload = { + action: "MigrateState", + nonce: nonce + }; + serialized = Data.serialize(this.signing.SignedPayload_ProtocolRedeemerV1, payload); + signedPayload = serialized.toCbor().toString(); + payloadHash = (0, _core.blake2b_256)((0, _core.HexBlob)(signedPayload)); + return _context8.a(2, { + signedPayload: signedPayload, + payloadHash: payloadHash + }); + } + }, _callee8, this); + })); + function getMigrateStatePayload() { + return _getMigrateStatePayload.apply(this, arguments); + } + return getMigrateStatePayload; + }() + /** + * Build the in-place vault-datum migration transaction (`MigrateState`). Spends + * the staking-vault UTxO (still holding the v1_0 one-field datum) and re-locks + * it at the SAME address and value with the four-field v1_1 datum + * (`circulating_susdr` preserved, diffusion window zeroed). Operator-only — not + * on the partner surface, like {@link buildExecuteOrdersTx}. + * + * Requires (per `protocol_migration_v1_0_to_v1_1.ak` + the orchestrator's + * MigrateState branch): the migration validator deployed + stake-registered, + * `registry.migration = Some(migrationScriptHash)` in the live settings, and + * `signatures` = the `permissions.migrate` COSE signatures over the payload + * hash from {@link getMigrateStatePayload}. + */ + ) + }, { + key: "buildMigrateStateTx", + value: (function () { + var _buildMigrateStateTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(params) { + var signedPayload, _yield$this$readLegac2, vaultUtxo, circulatingSusdr, refInputs, _yield$this$getParsed, proxyUtxo, walletUtxos, utxoKey, excluded, _i, _Object$values, ref, feeUtxos, sortedInputRefs, vaultInputIdx, migratedDatum, extra, orchestratorRedeemer, tx, _iterator2, _step2, feeUtxo; + return _regenerator().w(function (_context9) { + while (1) switch (_context9.n) { + case 0: + signedPayload = (0, _data.parse)(this.signing.SignedPayload_ProtocolRedeemerV1, _core.PlutusData.fromCbor((0, _core.HexBlob)(params.signedPayload))); + _context9.n = 1; + return this.readLegacyVaultDatum(); + case 1: + _yield$this$readLegac2 = _context9.v; + vaultUtxo = _yield$this$readLegac2.vaultUtxo; + circulatingSusdr = _yield$this$readLegac2.circulatingSusdr; + _context9.n = 2; + return this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + stakingVault: this.stakingVaultScriptHash, + migration: this.migrationScriptHash + }); + case 2: + refInputs = _context9.v; + _context9.n = 3; + return this.getParsedProxyDatum(); + case 3: + _yield$this$getParsed = _context9.v; + proxyUtxo = _yield$this$getParsed.proxyUtxo; + _context9.n = 4; + return this.blaze.wallet.getUnspentOutputs(); + case 4: + walletUtxos = _context9.v; + utxoKey = function utxoKey(inp) { + return "".concat(inp.transactionId().toString(), "#").concat(inp.index().toString()); + }; + excluded = new Set([utxoKey(vaultUtxo.input()), utxoKey(proxyUtxo.input())]); + for (_i = 0, _Object$values = Object.values(refInputs); _i < _Object$values.length; _i++) { + ref = _Object$values[_i]; + if (ref) { + excluded.add(utxoKey(ref.input())); + } + } + feeUtxos = walletUtxos.filter(function (u) { + return !excluded.has(utxoKey(u.input())); + }); // Vault input index in the ledger-sorted input set (txHash, then index). + sortedInputRefs = [vaultUtxo.input()].concat(_toConsumableArray(feeUtxos.map(function (u) { + return u.input(); + }))).sort(function (a, b) { + var txA = a.transactionId().toString(); + var txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + vaultInputIdx = BigInt(sortedInputRefs.findIndex(function (r) { + return r.transactionId().toString() === vaultUtxo.input().transactionId().toString() && r.index() === vaultUtxo.input().index(); + })); // Migrated datum: preserve circulating_susdr, zero the diffusion window (no + // pending yield at migration time). The vault output is the first output the + // builder adds, so its index is 0 (change outputs are appended after). + migratedDatum = { + circulating_susdr: circulatingSusdr, + pending_yield: 0n, + diffusion_start: 0n, + diffusion_end: 0n + }; // No order requests travel in a migration; the request/treasury indices are + // dummies (the migration branch reads only the vault indices). + extra = { + request_to_outputs: [], + input_to_requests: [], + treasury_input_idx: 0n, + treasury_output_idx: 0n, + vault_input_idx: vaultInputIdx, + vault_output_idx: 0n + }; + orchestratorRedeemer = this.serializeOrchestratorWithdrawalRedeemer({ + extra: extra, + payload: signedPayload, + signatures: params.signatures + }); + tx = this.newOrderTransaction(); // Spend the vault with DeferToProtocol (Void); the vault script resolves + // from the staking-vault reference input. + tx.addInput(vaultUtxo, Data.Void()); + _iterator2 = _createForOfIteratorHelper(feeUtxos); + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + feeUtxo = _step2.value; + tx.addInput(feeUtxo); + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + tx.addReferenceInput(refInputs.protocol); + tx.addReferenceInput(refInputs.stakingVault); + tx.addReferenceInput(refInputs.migration); + tx.addReferenceInput(proxyUtxo); + + // Re-lock exactly one vault output at the SAME address (payment + stake) and + // the SAME value, no reference script, carrying the four-field datum. + tx.lockAssets(vaultUtxo.output().address(), vaultUtxo.output().amount(), Data.serialize(this.schemas.VaultDatumV1, migratedDatum)); + + // Orchestrator withdrawal carries the ExecuteOrders(MigrateState) redeemer + // plus the permissions.migrate COSE signatures. + tx.addWithdrawal(_sdk.Core.RewardAccount.fromCredential({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash + }, this.network), 0n, orchestratorRedeemer); + // Migration validator withdrawal (Void); enforces the migration tx shape. + tx.addWithdrawal(_sdk.Core.RewardAccount.fromCredential({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: this.migrationScriptHash + }, this.network), 0n, Data.Void()); + return _context9.a(2, tx); + } + }, _callee9, this); + })); + function buildMigrateStateTx(_x7) { + return _buildMigrateStateTx.apply(this, arguments); + } + return buildMigrateStateTx; + }()) + }], [{ + key: "create", + value: function create(blaze, params) { + var _params$enableTrace, _params$yieldOracleBo, _params$referenceInpu, _params$referenceInpu2, _params$referenceInpu3, _params$referenceInpu4, _params$referenceInpu5; + var enableTrace = (_params$enableTrace = params.enableTrace) !== null && _params$enableTrace !== void 0 ? _params$enableTrace : false; + + // 1. Create oneshot script + var oneShotScript = new _index.BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + var oneShotPolicyId = oneShotScript.hash(); + + // 2. Create sub-validator scripts first (they only need proxy policy) + var protocolMintScript = new _index.V1_1Rc1Types.V1_1Rc1ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script; + var protocolStakeScript = new _index.V1_1Rc1Types.V1_1Rc1ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script; + var protocolManagementScript = new _index.V1_1Rc1Types.V1_1Rc1ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script; + + // 3. Derive the two oracle validators. They are DISTINCT scripts with + // distinct roles and hashes (the shared "yield_oracle" naming is a contract + // quirk): + // - `yield_oracle` is a mint+spend validator: its single hash is both the + // oracle-NFT policy id AND the address holding the long-lived oracle + // UTxO. This is the orchestrator's `yield_oracle_validator` compile-time + // param — ExecuteOrders' `no_script_input` guard protects that UTxO from + // being drained by a normal execution. + // - `distribution_oracle` is the withdraw-only publish-logic validator. + // Its hash is what `registry.yield_oracle` must hold (PublishYieldOracle + // requires THIS validator's withdrawal). + // Seeded by its OWN dedicated bootstrap UTxO (NOT proxyBootstrap, which the + // proxy NFT mint consumes) so the oracle one-shot stays satisfiable when the + // publish flow later bootstraps the oracle NFT. Only the hashes are needed + // here (the publish path / NFT mint is a follow-up). + // A deferred oracle omits the seed → default to the placeholder (a + // permanently un-consumable reference). A deployment that runs the oracle + // supplies a real seed. Either way the orchestrator hash is deterministic. + var yieldOracleBootstrap = (_params$yieldOracleBo = params.yieldOracleBootstrap) !== null && _params$yieldOracleBo !== void 0 ? _params$yieldOracleBo : _index2.YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER; + var yieldOracleScript = new _index.V1_1Rc1Types.V1_1Rc1YieldOracleYieldOracleMint({ + transaction_id: yieldOracleBootstrap.txHash, + output_index: yieldOracleBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + var yieldOracleValidatorHash = yieldOracleScript.hash(); + // The oracle NFT is minted under the yield_oracle validator's own policy, so + // the NFT policy id equals that validator's hash. + var oracleNftPolicyId = yieldOracleValidatorHash; + var distributionOracleScript = new _index.V1_1Rc1Types.V1_1Rc1DistributionOracleDistributionOracleWithdraw(oneShotPolicyId, oracleNftPolicyId, enableTrace).Script; + var distributionOracleScriptHash = distributionOracleScript.hash(); + + // The v1_0→v1_1 migration validator. Withdraw-only and registry-gated (not + // an orchestrator compile param): whitelisted at runtime via + // `registry.migration`. Only the proxy policy id parametrizes it. + var migrationScript = new _index.V1_1Rc1Types.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw(oneShotPolicyId, enableTrace).Script; + + // 4. Create orchestrator with sub-validator hashes + the yield_oracle + // validator hash (the validator that HOLDS the oracle UTxO — NOT + // distribution_oracle). + var protocolOrchestratorScript = new _index.V1_1Rc1Types.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintScript.hash(), protocolStakeScript.hash(), protocolManagementScript.hash(), yieldOracleValidatorHash, enableTrace).Script; + var mintProxyScript = new _index.BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + + // Use V0.1 or V1.1 treasury script based on option + var treasuryScript = params.useV0_1Treasury ? new _index.V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new _index.V1_1Rc1Types.V1_1Rc1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + + // 4. Create order script with orchestrator hash + var orderScript = new _index.V1_1Rc1Types.V1_1Rc1OrderOrderSpend(oneShotPolicyId, protocolOrchestratorScript.hash(), enableTrace).Script; + + // Use V0.4 or V1.1 staking vault script based on option + var stakingVaultScript = params.useV0_4StakingVault ? new _index.V0_4Types.V0_4StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new _index.V1_1Rc1Types.V1_1Rc1StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV1_1Rc1(blaze, { + version: "V1_1_Rc1", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace: enableTrace, + defaultSlippageToleranceBps: params.defaultSlippageToleranceBps, + scriptDeploymentAddress: params.scriptDeploymentAddress, + deployedValidators: params.deployedValidators + }, _index.V1_1Rc1Types, { + oneShotScript: oneShotScript, + protocolOrchestratorScript: protocolOrchestratorScript, + protocolMintScript: protocolMintScript, + protocolStakeScript: protocolStakeScript, + protocolManagementScript: protocolManagementScript, + mintProxyScript: mintProxyScript, + treasuryScript: treasuryScript, + orderScript: orderScript, + stakingVaultScript: stakingVaultScript + }, { + protocolRefInput: (_params$referenceInpu = params.referenceInputs) === null || _params$referenceInpu === void 0 ? void 0 : _params$referenceInpu.protocolRefInput, + proxyRefInput: (_params$referenceInpu2 = params.referenceInputs) === null || _params$referenceInpu2 === void 0 ? void 0 : _params$referenceInpu2.proxyRefInput, + treasuryRefInput: (_params$referenceInpu3 = params.referenceInputs) === null || _params$referenceInpu3 === void 0 ? void 0 : _params$referenceInpu3.treasuryRefInput, + orderRefInput: (_params$referenceInpu4 = params.referenceInputs) === null || _params$referenceInpu4 === void 0 ? void 0 : _params$referenceInpu4.orderRefInput, + stakingVaultRefInput: (_params$referenceInpu5 = params.referenceInputs) === null || _params$referenceInpu5 === void 0 ? void 0 : _params$referenceInpu5.stakingVaultRefInput + }, + // The v1_1 signed-payload / signed-redeemer schemas are the V1_0-shaped + // payload plus TreasuryRequestV1.diffusion_end (additive), so they map + // onto the family's stable signing-schema keys. blaze mangles the + // orchestrator generics with a `_v1_1_` infix (see the codegen note in + // project_v1_1_rc1_vs_audited_v1_1_divergence); remap them here. + { + SignedPayload_ProtocolRedeemerV1: _index.V1_1Rc1Types.SignedPayload_v1_1_ProtocolRedeemerV1, + SignedRedeemer_ExtraProtocolRedeemerV1: _index.V1_1Rc1Types.SignedRedeemer_v1_1_ExtraProtocolRedeemerV1 + }, { + now: params.now, + defaultDiffusionDurationMs: params.defaultDiffusionDurationMs, + executionValidityWindowMs: params.executionValidityWindowMs, + diffusionShortfallThresholdMs: params.diffusionShortfallThresholdMs, + throwOnDiffusionWindowShortfall: params.throwOnDiffusionWindowShortfall, + distributionOracleScriptHash: distributionOracleScriptHash, + migrationScript: migrationScript + }); + } + }]); +}(_family.RealfiSDKV1Family); +/** Re-exported for parity with the sibling version modules. */ +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/index.js.map new file mode 100644 index 0000000000..c497a72823 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sdk/v1_1_rc1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_core","require","_data","_interopRequireWildcard","Data","_sdk","_index","_index2","_family","_diffusion","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t2","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Symbol","iterator","constructor","prototype","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","Array","from","isArray","_arrayLikeToArray","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_createForOfIteratorHelper","_n","F","s","done","value","a","u","next","toString","slice","name","test","_regenerator","toStringTag","c","Generator","create","_regeneratorDefine2","p","y","G","v","d","bind","l","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","displayName","w","m","_regeneratorDefine","_invoke","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","_next","_throw","_classCallCheck","_defineProperties","_toPropertyKey","key","_createClass","_callSuper","_getPrototypeOf","_possibleConstructorReturn","_isNativeReflectConstruct","Reflect","construct","_assertThisInitialized","ReferenceError","Boolean","valueOf","_superPropGet","_get","_superPropBase","_inherits","_setPrototypeOf","_toPrimitive","toPrimitive","String","Number","DEFAULT_EXECUTION_VALIDITY_WINDOW_MS","DEFAULT_CLOCK_BACKOFF_MS","RealfiSDKV1_1Rc1","exports","_RealfiSDKV1Family","blaze","params","schemas","scripts","cachedReferenceInputs","signingSchemas","options","_options$now","_options$diffusionSho","_options$throwOnDiffu","_options$executionVal","_this","nowFn","now","BigInt","Date","executionClockBackoffMs","undefined","defaultDiffusionDurationMs","diffusionShortfallThresholdMs","RangeError","concat","throwOnDiffusionWindowShortfall","executionValidityWindowMs","validitySpanMs","MAX_DIFFUSION_RATE_SPAN_MS","distributionOracleScriptHash","migrationScript","migrationScriptHash","hash","settingsConfig","settings","config","settingsRegistry","registry","buildInitialVaultDatum","circulating_susdr","pending_yield","diffusion_start","diffusion_end","buildUpdatedVaultDatum","previous","sUSDrDelta","settledVaultBacking","parsedVaultDatum","vaultUSDr","settledBacking","rateTimeMs","buildTreasuryRequest","datum","parsed","origin","_parsed$yield","action","diffusionEnd","ODeposit","destination","amount","reserve_asset","reserveAsset","_computeDepositAlpha","_callee","_vaultUtxo$output$amo","_vaultUtxo$output$amo2","stablecoinAssetId","_yield$this$getVaultD","vaultUtxo","_yield$this$getTreasu","parsedTreasuryDatum","treasuryCirculating","_context","Core","AssetId","stablecoinPolicyId","assetNameHex","getVaultDatum","output","multiasset","getTreasuryDatum","circulating_supply","numerator","denominator","computeDepositAlpha","_buildDepositAction","_callee2","requests","alpha","_context2","Error","Deposit","buildDepositAction","_x","_x2","resolveDepositYieldShares","totalYield","deposit","_deposit$alpha","stakedYieldShare","unstakedYieldShare","serializeOrchestratorWithdrawalRedeemer","redeemer","serialize","V1_1Rc1Types","ProtocolOrchestratorRedeemerV1","ExecuteOrders","updateDepositVaultOutput","tx","ctx","windowEndMs","_iterator","orderInfos","_step","orderInfo","err","nowMs","checkDiffusionWindow","window","nextDepositDiffusion","updateVaultOutputWithDatum","_buildDepositOrderTx","_callee3","ra","reserveAssetId","valueToLock","totalUSDrBacking","_vaultUtxo$output$amo3","_vaultUtxo$output$amo4","principalReserve","_yield$this$getTreasu2","_calculateYieldShares","_t","_context3","principal","getVersionSettings","findReserveAsset","makeValue","MIN_LOVELACE","usdrToReserveCeil","calculateYieldShares","Value","merge","resolveDiffusionEnd","_buildOrderTx","owner","data","buildDepositOrderTx","_x3","_buildExecuteOrdersTx","_callee4","provider","wallNowMs","_context4","slotAlignedTimeMs","executionNowMs","executionValidUntilMs","buildExecuteOrdersTx","_x4","_applyExecutionValidityBounds","_callee5","context","_parsedVaultDatum$pen","validUntilMs","actionType","needsBounds","_context5","setValidFrom","slotFloor","setValidUntil","applyExecutionValidityBounds","_x5","_x6","_this$executionNowMs","_params$diffusionDura","duration","diffusionDurationMs","vaultIn","pendingLeftUsdr","pendingRemaining","remainingMs","message","text","console","warn","_deployMigration","_callee6","_context6","deployScript","scriptDeploymentAddress","deployMigration","registerMigrationStake","newTransaction","addRegisterStake","credentialFromScript","_readLegacyVaultDatum","_callee7","_yield$getDatumFromNF","utxo","parsedDatum","legacy","_context7","getDatumFromNFT","stakingVaultNFTAssetId","V1_0Types","VaultDatumV1","circulatingSusdr","readLegacyVaultDatum","_getMigrateStatePayload","_callee8","_yield$this$readLegac","nonce","payload","serialized","signedPayload","payloadHash","_context8","buildNonceFromUtxo","input","signing","SignedPayload_ProtocolRedeemerV1","toCbor","blake2b_256","HexBlob","getMigrateStatePayload","_buildMigrateStateTx","_callee9","_yield$this$readLegac2","refInputs","_yield$this$getParsed","proxyUtxo","walletUtxos","utxoKey","excluded","_i","_Object$values","ref","feeUtxos","sortedInputRefs","vaultInputIdx","migratedDatum","extra","orchestratorRedeemer","_iterator2","_step2","feeUtxo","_context9","parse","PlutusData","fromCbor","getScriptReferenceInputs","protocol","protocolScriptHash","stakingVault","stakingVaultScriptHash","migration","getParsedProxyDatum","wallet","getUnspentOutputs","inp","transactionId","index","Set","values","add","map","sort","b","txA","txB","findIndex","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","signatures","newOrderTransaction","addInput","Void","addReferenceInput","lockAssets","address","addWithdrawal","RewardAccount","fromCredential","type","CredentialType","ScriptHash","network","buildMigrateStateTx","_x7","_params$enableTrace","_params$yieldOracleBo","_params$referenceInpu","_params$referenceInpu2","_params$referenceInpu3","_params$referenceInpu4","_params$referenceInpu5","enableTrace","oneShotScript","BaseTypes","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","oneShotPolicyId","protocolMintScript","V1_1Rc1ProtocolMintProtocolMintWithdraw","protocolStakeScript","V1_1Rc1ProtocolStakeProtocolStakeWithdraw","protocolManagementScript","V1_1Rc1ProtocolManagementProtocolManagementWithdraw","yieldOracleBootstrap","YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER","yieldOracleScript","V1_1Rc1YieldOracleYieldOracleMint","yieldOracleValidatorHash","oracleNftPolicyId","distributionOracleScript","V1_1Rc1DistributionOracleDistributionOracleWithdraw","V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw","protocolOrchestratorScript","V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","mintProxyScript","BaseMintProxyMintProxyMint","treasuryScript","useV0_1Treasury","V0_1Types","V0_1TreasuryTreasurySpend","treasuryBootstrap","V1_1Rc1TreasuryTreasurySpend","orderScript","V1_1Rc1OrderOrderSpend","stakingVaultScript","useV0_4StakingVault","V0_4Types","V0_4StakingVaultStakingVaultSpend","stakingVaultBootstrap","V1_1Rc1StakingVaultStakingVaultSpend","version","sUSDrAssetNameHex","defaultSlippageToleranceBps","deployedValidators","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","orderRefInput","stakingVaultRefInput","SignedPayload_v1_1_ProtocolRedeemerV1","SignedRedeemer_ExtraProtocolRedeemerV1","SignedRedeemer_v1_1_ExtraProtocolRedeemerV1","RealfiSDKV1Family"],"sources":["../../../../src/sdk/v1_1_rc1/index.ts"],"sourcesContent":["import { blake2b_256, HexBlob, PlutusData } from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse, type Exact } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n type TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport {\n BaseTypes,\n V0_1Types,\n V0_4Types,\n V1_0Types,\n V1_1Rc1Types,\n} from \"../../generated-types/index.js\";\nimport type {\n Destination,\n MultisigScript,\n OrderActionV1,\n SettingsV1,\n TreasuryRequestV1,\n Tuple_VerificationKey_COSESign1,\n VaultDatumV1,\n} from \"../../generated-types/v1_1_rc1/index.js\";\n\nimport {\n buildNonceFromUtxo,\n credentialFromScript,\n deployScript,\n findReserveAsset,\n getDatumFromNFT,\n slotAlignedTimeMs,\n slotFloor,\n usdrToReserveCeil,\n YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER,\n type ICachedReferenceInputs,\n} from \"../shared/index.js\";\nimport {\n calculateYieldShares,\n MIN_LOVELACE,\n RealfiSDKV1Family,\n type IClassifiedOrderAction,\n type IExecutionValidityContext,\n type IOrderInfo,\n type IRequestOrigin,\n type IV1FamilyConstructorParams,\n} from \"../v1/family.js\";\nimport type {\n IV1FamilySchemas,\n IV1FamilyScripts,\n IV1SigningSchemas,\n IYieldSplitAlpha,\n TV1Registry,\n TV1SettingsConfig,\n} from \"../v1/types.js\";\n\n/** V1_1-specific knobs threaded from the public params to the constructor. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\ninterface IV1_1Rc1Options {\n now?: () => bigint;\n defaultDiffusionDurationMs?: bigint;\n executionValidityWindowMs?: bigint;\n diffusionShortfallThresholdMs?: bigint;\n throwOnDiffusionWindowShortfall?: boolean;\n distributionOracleScriptHash: Core.Hash28ByteBase16;\n /**\n * The `protocol_migration_v1_0_to_v1_1` withdraw validator script. Used to\n * deploy/register it and to attach its withdrawal + hash when running the\n * in-place vault-datum migration (`MigrateState`).\n */\n migrationScript: Core.Script;\n}\n\nimport {\n MAX_DIFFUSION_RATE_SPAN_MS,\n nextDepositDiffusion,\n pendingRemaining,\n settledBacking,\n} from \"./diffusion.js\";\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV1_1Rc1 {\n version: \"V1_1_Rc1\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** USDr asset name hex */\n assetNameHex: string;\n /** sUSDr asset name hex */\n sUSDrAssetNameHex: string;\n /** The treasury bootstrap UTxO reference */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** The staking vault bootstrap UTxO reference */\n stakingVaultBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /**\n * Dedicated bootstrap UTxO for the yield_oracle NFT one-shot, baked into the\n * orchestrator's logic hash (via the yield_oracle validator param).\n *\n * OPTIONAL: a deployment that DEFERS the oracle can omit it, in which case the\n * SDK uses {@link YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER} — a permanently\n * un-consumable all-zeros reference. A deployment that intends to actually run\n * the oracle must supply a real, still-unspent UTxO here (distinct from the\n * proxy/treasury/stakingVault seeds, each of which its own NFT mint consumes),\n * so the oracle policy stays mintable when the publish flow bootstraps the\n * oracle NFT.\n */\n yieldOracleBootstrap?: {\n readonly txHash: Core.TransactionId;\n readonly outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Fallback slippage tolerance (bps) for stake/unstake `minReceived`. 50n =\n * 0.5%. Default: 50n. Same semantics as V1_0.\n */\n defaultSlippageToleranceBps?: bigint;\n /**\n * Use V0.1 treasury script instead of V1.1. Needed for protocol-only\n * upgrades where the treasury NFT stays at the V0.1 address. Default: false\n */\n useV0_1Treasury?: boolean;\n /**\n * Use V0.4 staking vault script instead of V1.1. Needed for protocol-only\n * upgrades where the vault NFT stays at the V0.4 address. Default: false\n */\n useV0_4StakingVault?: boolean;\n /**\n * Hashes of the validators this deployment actually runs. See\n * IV1FamilyConstructorParams.deployedValidators.\n */\n deployedValidators?: Readonly>;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n stakingVaultRefInput?: Core.TransactionUnspentOutput;\n };\n /**\n * Default diffusion window length (ms) applied to `buildDepositOrderTx` when\n * the caller passes neither `diffusionEnd` nor `diffusionDurationMs`. Measured\n * from ORDER-CREATION time (not execution). When unset, deposits default to\n * instant (no diffusion window). Choose to match the yield-deposit cadence\n * (~24h for daily deposits, ~5d per epoch).\n */\n defaultDiffusionDurationMs?: bigint;\n /**\n * Forward validity window (ms) attached to vault-touching executions while a\n * diffusion window is active. The window plus any default-clock backoff must\n * not exceed 1h (`MAX_DIFFUSION_RATE_SPAN_MS`). Default: 30 minutes.\n */\n executionValidityWindowMs?: bigint;\n /**\n * Remaining diffusion window (ms) at or below which a deposit execution\n * reports a shortfall (see {@link throwOnDiffusionWindowShortfall} for how).\n * Default: 0n — only a window that has FULLY lapsed by execution time, which\n * is the point the validator collapses it to an instant deposit. Raise it\n * (e.g. 300_000n) to also flag a window that will survive execution but has\n * nearly nothing left to diffuse over.\n */\n diffusionShortfallThresholdMs?: bigint;\n /**\n * Refuse (throw) rather than `console.warn` when a deposit execution hits a\n * diffusion-window shortfall. Default: false — a lapsed window is still a\n * valid, executable deposit on-chain (it just settles instantly), so the\n * default never blocks an execution. Set true in automation that must not\n * silently under-deliver a diffused deposit.\n */\n throwOnDiffusionWindowShortfall?: boolean;\n /**\n * Injectable clock (POSIX ms) for the diffusion rate time and deposit\n * `diffusion_end` defaulting. Defaults to wall-clock `Date.now()`. Tests\n * pass a deterministic function tied to the emulator clock.\n */\n now?: () => bigint;\n}\n\nconst DEFAULT_EXECUTION_VALIDITY_WINDOW_MS = 1_800_000n; // 30 minutes\n\n/**\n * How far in the past to open a vault-touching execution's validity interval\n * when using the default wall clock.\n *\n * The validator requires the vault's `diffusion_start` to equal the validity\n * lower bound. Backing off both values absorbs submitter clock skew without\n * shortening duration-based order windows or the forward execution window.\n * Injected clocks are used verbatim for deterministic emulator tests.\n */\nconst DEFAULT_CLOCK_BACKOFF_MS = 120_000n; // 2 minutes\n\n// ─────────────────────────────────────────────────────────────────────────────\n// SDK Class\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * V1_1_Rc1 SDK implementation.\n *\n * The release candidate keeps V1_0's order/redeemer taxonomy (fees,\n * `min_received`, `ExchangeRequestV1`/`TreasuryRequestV1`/`StakeRequestV1`) and\n * adds **time-diffused yield**: the staking vault datum grows to four fields\n * (`circulating_susdr`, `pending_yield`, `diffusion_start`, `diffusion_end`)\n * and deposited staked yield releases into the exchange rate linearly over a\n * window rather than instantly.\n *\n * Because the redeemer shape is V1_0 plus an additive `diffusion_end`, this\n * class reuses {@link RealfiSDKV1Family}'s V1_0-semantics tx-builders wholesale\n * and overrides only the diffusion seams:\n * - the four-field vault datum ({@link buildInitialVaultDatum} /\n * {@link buildUpdatedVaultDatum}) and nested settings adapters;\n * - {@link settledVaultBacking}: quote stake/unstake rates against settled\n * backing (balance minus not-yet-diffused pending yield);\n * - {@link buildTreasuryRequest}: echo the order datum's `diffusion_end` into\n * the signed payload;\n * - {@link updateDepositVaultOutput}: roll the staked share into the diffusion\n * window on deposit;\n * - {@link buildDepositOrderTx}: expose the `diffusion_end` order parameter;\n * - {@link applyExecutionValidityBounds}: attach the validity range the\n * diffusion rate time is read from.\n */\nexport class RealfiSDKV1_1Rc1<\n P extends Provider,\n W extends Wallet,\n> extends RealfiSDKV1Family {\n readonly version = \"V1_1_Rc1\" as const;\n\n private readonly nowFn: () => bigint;\n private readonly defaultDiffusionDurationMs?: bigint;\n private readonly executionValidityWindowMs: bigint;\n private readonly executionClockBackoffMs: bigint;\n private readonly diffusionShortfallThresholdMs: bigint;\n private readonly throwOnDiffusionWindowShortfall: boolean;\n /**\n * The `distribution_oracle` (publish-logic) validator hash. Exposed so\n * settings datums can point `registry.yield_oracle` at it — that is the\n * withdrawal the orchestrator's PublishYieldOracle path requires. NOTE: this\n * is NOT the orchestrator's 5th compile-time parameter; that parameter is the\n * `yield_oracle` validator hash (the mint+spend validator that holds the\n * oracle UTxO), which is a different validator with a different hash.\n */\n readonly distributionOracleScriptHash: Core.Hash28ByteBase16;\n\n /**\n * The `protocol_migration_v1_0_to_v1_1` withdraw validator and its hash.\n * The validator is registry-gated (whitelisted via `registry.migration`), NOT\n * an orchestrator compile-time parameter, so it lives version-locally on this\n * class. Deploy it (`deployMigration`) + register its stake\n * (`registerMigrationStake`), then run `buildMigrateStateTx` to migrate a\n * v1_0 one-field vault datum to the four-field v1_1 shape in place.\n */\n readonly migrationScript: Core.Script;\n readonly migrationScriptHash: Core.Hash28ByteBase16;\n\n /**\n * Slot-aligned execution bounds for the in-flight `buildExecuteOrdersTx`.\n * `executionNowMs` is the backed-off lower bound used by the diffusion datum\n * and rate quote; `executionValidUntilMs` is based on the unshifted wall time.\n * Both are undefined outside an execution build.\n */\n private executionNowMs?: bigint;\n private executionValidUntilMs?: bigint;\n\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_1Rc1,\n ): RealfiSDKV1_1Rc1 {\n const enableTrace = params.enableTrace ?? false;\n\n // 1. Create oneshot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n\n // 2. Create sub-validator scripts first (they only need proxy policy)\n const protocolMintScript =\n new V1_1Rc1Types.V1_1Rc1ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolStakeScript =\n new V1_1Rc1Types.V1_1Rc1ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolManagementScript =\n new V1_1Rc1Types.V1_1Rc1ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 3. Derive the two oracle validators. They are DISTINCT scripts with\n // distinct roles and hashes (the shared \"yield_oracle\" naming is a contract\n // quirk):\n // - `yield_oracle` is a mint+spend validator: its single hash is both the\n // oracle-NFT policy id AND the address holding the long-lived oracle\n // UTxO. This is the orchestrator's `yield_oracle_validator` compile-time\n // param — ExecuteOrders' `no_script_input` guard protects that UTxO from\n // being drained by a normal execution.\n // - `distribution_oracle` is the withdraw-only publish-logic validator.\n // Its hash is what `registry.yield_oracle` must hold (PublishYieldOracle\n // requires THIS validator's withdrawal).\n // Seeded by its OWN dedicated bootstrap UTxO (NOT proxyBootstrap, which the\n // proxy NFT mint consumes) so the oracle one-shot stays satisfiable when the\n // publish flow later bootstraps the oracle NFT. Only the hashes are needed\n // here (the publish path / NFT mint is a follow-up).\n // A deferred oracle omits the seed → default to the placeholder (a\n // permanently un-consumable reference). A deployment that runs the oracle\n // supplies a real seed. Either way the orchestrator hash is deterministic.\n const yieldOracleBootstrap =\n params.yieldOracleBootstrap ?? YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER;\n const yieldOracleScript =\n new V1_1Rc1Types.V1_1Rc1YieldOracleYieldOracleMint(\n {\n transaction_id: yieldOracleBootstrap.txHash,\n output_index: yieldOracleBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n const yieldOracleValidatorHash = yieldOracleScript.hash();\n // The oracle NFT is minted under the yield_oracle validator's own policy, so\n // the NFT policy id equals that validator's hash.\n const oracleNftPolicyId = yieldOracleValidatorHash;\n const distributionOracleScript =\n new V1_1Rc1Types.V1_1Rc1DistributionOracleDistributionOracleWithdraw(\n oneShotPolicyId,\n oracleNftPolicyId,\n enableTrace,\n ).Script;\n const distributionOracleScriptHash = distributionOracleScript.hash();\n\n // The v1_0→v1_1 migration validator. Withdraw-only and registry-gated (not\n // an orchestrator compile param): whitelisted at runtime via\n // `registry.migration`. Only the proxy policy id parametrizes it.\n const migrationScript =\n new V1_1Rc1Types.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 4. Create orchestrator with sub-validator hashes + the yield_oracle\n // validator hash (the validator that HOLDS the oracle UTxO — NOT\n // distribution_oracle).\n const protocolOrchestratorScript =\n new V1_1Rc1Types.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintScript.hash(),\n protocolStakeScript.hash(),\n protocolManagementScript.hash(),\n yieldOracleValidatorHash,\n enableTrace,\n ).Script;\n\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Use V0.1 or V1.1 treasury script based on option\n const treasuryScript = params.useV0_1Treasury\n ? new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_1Rc1Types.V1_1Rc1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 4. Create order script with orchestrator hash\n const orderScript = new V1_1Rc1Types.V1_1Rc1OrderOrderSpend(\n oneShotPolicyId,\n protocolOrchestratorScript.hash(),\n enableTrace,\n ).Script;\n\n // Use V0.4 or V1.1 staking vault script based on option\n const stakingVaultScript = params.useV0_4StakingVault\n ? new V0_4Types.V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_1Rc1Types.V1_1Rc1StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV1_1Rc1(\n blaze,\n {\n version: \"V1_1_Rc1\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n sUSDrAssetNameHex: params.sUSDrAssetNameHex,\n enableTrace,\n defaultSlippageToleranceBps: params.defaultSlippageToleranceBps,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n deployedValidators: params.deployedValidators,\n },\n V1_1Rc1Types,\n {\n oneShotScript,\n protocolOrchestratorScript,\n protocolMintScript,\n protocolStakeScript,\n protocolManagementScript,\n mintProxyScript,\n treasuryScript,\n orderScript,\n stakingVaultScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n orderRefInput: params.referenceInputs?.orderRefInput,\n stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput,\n },\n // The v1_1 signed-payload / signed-redeemer schemas are the V1_0-shaped\n // payload plus TreasuryRequestV1.diffusion_end (additive), so they map\n // onto the family's stable signing-schema keys. blaze mangles the\n // orchestrator generics with a `_v1_1_` infix (see the codegen note in\n // project_v1_1_rc1_vs_audited_v1_1_divergence); remap them here.\n {\n SignedPayload_ProtocolRedeemerV1:\n V1_1Rc1Types.SignedPayload_v1_1_ProtocolRedeemerV1,\n SignedRedeemer_ExtraProtocolRedeemerV1:\n V1_1Rc1Types.SignedRedeemer_v1_1_ExtraProtocolRedeemerV1,\n },\n {\n now: params.now,\n defaultDiffusionDurationMs: params.defaultDiffusionDurationMs,\n executionValidityWindowMs: params.executionValidityWindowMs,\n diffusionShortfallThresholdMs: params.diffusionShortfallThresholdMs,\n throwOnDiffusionWindowShortfall: params.throwOnDiffusionWindowShortfall,\n distributionOracleScriptHash,\n migrationScript,\n },\n );\n }\n\n protected constructor(\n blaze: Blaze,\n params: IV1FamilyConstructorParams,\n schemas: IV1FamilySchemas,\n scripts: IV1FamilyScripts,\n cachedReferenceInputs: ICachedReferenceInputs | undefined,\n signingSchemas: IV1SigningSchemas,\n options: IV1_1Rc1Options,\n ) {\n super(\n blaze,\n params,\n schemas,\n scripts,\n cachedReferenceInputs,\n signingSchemas,\n );\n this.nowFn = options.now ?? (() => BigInt(Date.now()));\n this.executionClockBackoffMs =\n options.now === undefined ? DEFAULT_CLOCK_BACKOFF_MS : 0n;\n this.defaultDiffusionDurationMs = options.defaultDiffusionDurationMs;\n this.diffusionShortfallThresholdMs =\n options.diffusionShortfallThresholdMs ?? 0n;\n // A negative threshold would silently suppress detection of a window that\n // HAS lapsed (remaining is negative by then), defeating the whole guard —\n // and, with throwOnDiffusionWindowShortfall set, defeating it silently.\n if (this.diffusionShortfallThresholdMs < 0n) {\n throw new RangeError(\n `diffusionShortfallThresholdMs must be non-negative, got ${this.diffusionShortfallThresholdMs} ms.`,\n );\n }\n this.throwOnDiffusionWindowShortfall =\n options.throwOnDiffusionWindowShortfall ?? false;\n this.executionValidityWindowMs =\n options.executionValidityWindowMs ?? DEFAULT_EXECUTION_VALIDITY_WINDOW_MS;\n const validitySpanMs =\n this.executionClockBackoffMs + this.executionValidityWindowMs;\n if (\n this.executionValidityWindowMs < 0n ||\n validitySpanMs > MAX_DIFFUSION_RATE_SPAN_MS\n ) {\n throw new RangeError(\n `Execution validity span must be at most 1 hour (${MAX_DIFFUSION_RATE_SPAN_MS} ms), got ${validitySpanMs} ms.`,\n );\n }\n this.distributionOracleScriptHash = options.distributionOracleScriptHash;\n this.migrationScript = options.migrationScript;\n this.migrationScriptHash = options.migrationScript.hash();\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Version Seams\n // ─────────────────────────────────────────────────────────────────────────────\n\n protected settingsConfig(settings: SettingsV1): TV1SettingsConfig {\n // V1_1 settings are nested: the reserve/pot config lives under `config`.\n return settings.config;\n }\n\n protected settingsRegistry(settings: SettingsV1): TV1Registry {\n return settings.registry;\n }\n\n protected buildInitialVaultDatum(): VaultDatumV1 {\n return {\n circulating_susdr: 0n,\n pending_yield: 0n,\n diffusion_start: 0n,\n diffusion_end: 0n,\n };\n }\n\n protected buildUpdatedVaultDatum(\n previous: VaultDatumV1,\n sUSDrDelta: bigint,\n ): VaultDatumV1 {\n // Stake / unstake move only circulating_susdr; the diffusion window passes\n // through untouched (stake.ak / unstake.ak enforce this). Deposit builds\n // its datum via updateDepositVaultOutput, not this seam.\n return {\n circulating_susdr: previous.circulating_susdr + sUSDrDelta,\n pending_yield: previous.pending_yield,\n diffusion_start: previous.diffusion_start,\n diffusion_end: previous.diffusion_end,\n };\n }\n\n protected override settledVaultBacking(\n parsedVaultDatum: VaultDatumV1,\n vaultUSDr: bigint,\n ): bigint {\n return settledBacking(vaultUSDr, parsedVaultDatum, this.rateTimeMs());\n }\n\n protected override buildTreasuryRequest(\n datum: Parameters<\n RealfiSDKV1Family[\"buildTreasuryRequest\"]\n >[0],\n parsed: IClassifiedOrderAction,\n origin: IRequestOrigin,\n ): TreasuryRequestV1 {\n // The signed request must echo the order datum's diffusion_end\n // (utilities.ak enforces request.diffusion_end == order.diffusion_end).\n const action = datum.action as OrderActionV1;\n const diffusionEnd =\n \"ODeposit\" in action ? action.ODeposit.diffusion_end : 0n;\n return {\n destination: datum.destination,\n amount: parsed.amount,\n yield: parsed.yield ?? 0n,\n diffusion_end: diffusionEnd,\n origin,\n reserve_asset: parsed.reserveAsset!,\n };\n }\n\n protected override get splitsYield(): boolean {\n return true;\n }\n\n /**\n * The yield split a deposit batch's creator should pick:\n * vault_usdr / treasury_circulating, i.e. the share of the circulating supply\n * that is staked. Pinning it to that ratio makes the SIGNED split reproduce\n * exactly the integer staked share the executor writes to the vault —\n * deposit.ak recomputes staked_yield_share = total_yield * numerator /\n * denominator with the same truncation-toward-zero, and the same two values\n * feed the execute path's calculateYieldShares.\n *\n * Only the creator of a batch calls this. A co-signer must NOT: it reads live\n * state, and two signers reading it at different chain states would produce\n * different payload bytes, which cannot be co-signed (the orchestrator checks\n * every signature against one payload hash). Co-signers read the batch's alpha\n * back from the backend and pass it to getSignedPayloadFromOrderInputs.\n */\n async computeDepositAlpha(): Promise {\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const { vaultUtxo } = await this.getVaultDatum();\n const vaultUSDr =\n vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n;\n const { parsedTreasuryDatum } = await this.getTreasuryDatum();\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n return treasuryCirculating > 0n\n ? { numerator: vaultUSDr, denominator: treasuryCirculating }\n : { numerator: 0n, denominator: 1n };\n }\n\n protected override async buildDepositAction(\n requests: TreasuryRequestV1[],\n alpha?: IYieldSplitAlpha,\n ): Promise<\n Awaited<\n ReturnType<\n RealfiSDKV1Family[\"buildDepositAction\"]\n >\n >\n > {\n // No fallback to live state: that is what made two signings of one batch\n // disagree. The batch's alpha has to be handed in — its creator computes it\n // once (computeDepositAlpha), everyone else reads it back from the backend.\n if (!alpha) {\n throw new Error(\n \"v1_1_rc1: a deposit batch needs its yield-split alpha — pass the batch's stored alpha (created with computeDepositAlpha)\",\n );\n }\n if (alpha.denominator <= 0n) {\n throw new Error(\n `v1_1_rc1: yield-split alpha denominator must be positive, got ${alpha.denominator}`,\n );\n }\n if (alpha.numerator < 0n || alpha.numerator > alpha.denominator) {\n throw new Error(\n `v1_1_rc1: yield-split alpha must be within [0, 1], got ${alpha.numerator}/${alpha.denominator}`,\n );\n }\n // The family action type is v1_0-shaped (Deposit has no `alpha`); the rc1\n // signing schema serializes `alpha` via its $defs (see IV1SigningSchemas).\n return { Deposit: { requests, alpha } } as unknown as Awaited<\n ReturnType<\n RealfiSDKV1Family[\"buildDepositAction\"]\n >\n >;\n }\n\n /**\n * rc1's Deposit carries a COSE-signed `alpha`; `deposit.ak` splits total_yield\n * against that signed ratio (quotient_integer), NOT live vault/treasury state.\n * Echo the signed alpha here so the executor's vault/pot outputs (and the\n * pot-output indexing) match what the validator checks — re-reading state\n * would diverge if the vault or treasury moved between signing and execution.\n */\n protected override resolveDepositYieldShares(\n totalYield: bigint,\n vaultUSDr: bigint,\n treasuryCirculating: bigint,\n action: Parameters<\n RealfiSDKV1Family<\n P,\n W,\n SettingsV1,\n VaultDatumV1\n >[\"resolveDepositYieldShares\"]\n >[3],\n ): { stakedYieldShare: bigint; unstakedYieldShare: bigint } {\n const deposit = (\n action as unknown as {\n Deposit?: { alpha: { numerator: bigint; denominator: bigint } };\n }\n ).Deposit;\n if (!deposit) {\n // Defensive: a non-Deposit action routed here → live-state split.\n return super.resolveDepositYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n action,\n );\n }\n const { numerator, denominator } = deposit.alpha;\n // BigInt division truncates toward zero, matching Aiken quotient_integer.\n const stakedYieldShare =\n denominator > 0n ? (totalYield * numerator) / denominator : 0n;\n return {\n stakedYieldShare,\n unstakedYieldShare: totalYield - stakedYieldShare,\n };\n }\n\n protected override serializeOrchestratorWithdrawalRedeemer(\n redeemer: Parameters<\n RealfiSDKV1Family<\n P,\n W,\n SettingsV1,\n VaultDatumV1\n >[\"serializeOrchestratorWithdrawalRedeemer\"]\n >[0],\n ): PlutusData {\n // v1_1_rc1's orchestrator dispatch wraps order execution in\n // ExecuteOrders(...) (the sibling PublishYieldOracle path is a follow-up\n // PR). Nest the family's signed redeemer inside the wrapper. The redeemer is\n // v1_0-typed at the family layer (Deposit carries `alpha` only at runtime,\n // injected by buildDepositAction); cast to the wrapper's static.\n return Data.serialize(V1_1Rc1Types.ProtocolOrchestratorRedeemerV1, {\n ExecuteOrders: [redeemer],\n } as unknown as Exact);\n }\n\n protected override updateDepositVaultOutput(\n tx: TxBuilder,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatumV1,\n ctx: {\n stakedYieldShare: bigint;\n totalYield: bigint;\n orderInfos: IOrderInfo[];\n },\n ): void {\n // Vault window end = max diffusion_end across the batch's deposit orders\n // (max_end in deposit.ak). Read from each order datum's ODeposit action.\n let windowEndMs = 0n;\n for (const orderInfo of ctx.orderInfos) {\n const action = orderInfo.datum.action as OrderActionV1;\n if (\"ODeposit\" in action && action.ODeposit.diffusion_end > windowEndMs) {\n windowEndMs = action.ODeposit.diffusion_end;\n }\n }\n\n // One timestamp for both the shortfall check and the datum, so the warning\n // can never describe a different execution time than the one written.\n const nowMs = this.rateTimeMs();\n this.checkDiffusionWindow(parsedVaultDatum, ctx, windowEndMs, nowMs);\n\n const window = nextDepositDiffusion(\n parsedVaultDatum,\n ctx.stakedYieldShare,\n ctx.totalYield,\n windowEndMs,\n nowMs,\n );\n\n this.updateVaultOutputWithDatum(\n tx,\n vaultUtxo,\n {\n circulating_susdr: parsedVaultDatum.circulating_susdr,\n ...window,\n },\n ctx.stakedYieldShare,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Deposit order builder (adds the diffusion_end datum field)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a deposit order. Identical to the family default except the ODeposit\n * datum carries `diffusion_end` — the absolute POSIX-ms timestamp the staked\n * yield diffuses until, set at ORDER CREATION and echoed by the executed\n * request. Resolution: explicit `diffusionEnd` > `diffusionDurationMs` added to\n * the order-creation time > the SDK's `defaultDiffusionDurationMs` added to the\n * order-creation time > `0n` (instant).\n *\n * NB: because the window is absolute and fixed here, any delay before the\n * execute lands (batching, cold/multisig signature collection) shortens the\n * effective window; a window that fully elapses before execution collapses the\n * deposit to instant on-chain.\n */\n override async buildDepositOrderTx(params: {\n principal: bigint;\n yield: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n /** Absolute POSIX-ms timestamp the staked yield diffuses until. */\n diffusionEnd?: bigint;\n /** Diffusion window length (ms) from order-creation time. */\n diffusionDurationMs?: bigint;\n }): Promise {\n if (params.principal < 0n) {\n throw new Error(\"Deposit principal must be non-negative\");\n }\n if (params.principal === 0n && params.yield === 0n) {\n throw new Error(\"Deposit must have non-zero principal or yield\");\n }\n const settings = this.settingsConfig(await this.getVersionSettings());\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n\n let valueToLock: Core.Value;\n if (params.yield >= 0n) {\n // Positive yield: lock reserve backing for BOTH principal AND yield.\n const totalUSDrBacking = params.principal + params.yield;\n valueToLock =\n totalUSDrBacking > 0n\n ? makeValue(MIN_LOVELACE, [\n reserveAssetId,\n usdrToReserveCeil(totalUSDrBacking, ra),\n ])\n : makeValue(MIN_LOVELACE);\n } else {\n // Negative yield: lock principal (reserve) + unstaked yield share (USDr).\n const principalReserve =\n params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n;\n valueToLock =\n principalReserve > 0n\n ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve])\n : makeValue(MIN_LOVELACE);\n\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const { parsedTreasuryDatum } = await this.getTreasuryDatum();\n const vaultUtxo = (await this.getVaultDatum()).vaultUtxo;\n const vaultUSDr =\n vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n;\n const { unstakedYieldShare } = calculateYieldShares(\n params.yield,\n vaultUSDr,\n parsedTreasuryDatum.circulating_supply,\n );\n if (unstakedYieldShare < 0n) {\n valueToLock = Value.merge(\n valueToLock,\n makeValue(0n, [stablecoinAssetId, -unstakedYieldShare]),\n );\n }\n }\n\n // Typed as the v1_1 action (carries diffusion_end); assignable to the\n // family's v1_0 action param since the extra field is additive.\n const action: OrderActionV1 = {\n ODeposit: {\n principal: params.principal,\n yield: params.yield,\n diffusion_end: this.resolveDiffusionEnd(params),\n reserve_asset: params.reserveAsset,\n },\n };\n\n return this._buildOrderTx({\n action,\n valueToLock,\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Execution validity / diffusion rate time\n // ─────────────────────────────────────────────────────────────────────────────\n\n override async buildExecuteOrdersTx(\n params: Parameters<\n RealfiSDKV1Family[\"buildExecuteOrdersTx\"]\n >[0],\n ): Promise {\n // Pin both execution bounds once and align them to integer slots. The\n // backed-off lower bound drives diffusion_start and rate math; the upper\n // bound stays relative to unshifted wall time so skew protection does not\n // shorten the configured forward window.\n const provider = this.blaze.provider;\n const wallNowMs = slotAlignedTimeMs(provider, this.nowFn());\n this.executionNowMs = slotAlignedTimeMs(\n provider,\n wallNowMs - this.executionClockBackoffMs,\n );\n this.executionValidUntilMs = slotAlignedTimeMs(\n provider,\n wallNowMs + this.executionValidityWindowMs,\n );\n try {\n return await super.buildExecuteOrdersTx(params);\n } finally {\n this.executionNowMs = undefined;\n this.executionValidUntilMs = undefined;\n }\n }\n\n protected override async applyExecutionValidityBounds(\n tx: TxBuilder,\n context: IExecutionValidityContext,\n ): Promise {\n const nowMs = this.executionNowMs;\n const validUntilMs = this.executionValidUntilMs;\n if (nowMs === undefined || validUntilMs === undefined) {\n return;\n }\n const { actionType, parsedVaultDatum } = context;\n\n // Deposit always reads the diffusion rate time once a window is requested\n // or already active; setting bounds unconditionally on deposit is safe\n // (the validator only caps the span when it reads it). Stake/unstake need\n // bounds only when a diffusion window is active.\n const needsBounds =\n actionType === \"deposit\" ||\n ((actionType === \"stake\" || actionType === \"unstake\") &&\n (parsedVaultDatum?.pending_yield ?? 0n) > 0n);\n if (!needsBounds) {\n return;\n }\n\n // Both bounds are already slot-aligned times, but go through `slotFloor`\n // anyway: it is the only conversion allowed to reach the tx builder, and it\n // guarantees an integer slot (the CBOR writer would silently truncate a\n // fractional one, putting a different value on-chain than the datum's).\n tx.setValidFrom(slotFloor(this.blaze.provider, nowMs));\n tx.setValidUntil(slotFloor(this.blaze.provider, validUntilMs));\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Helpers\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * The diffusion rate timestamp (POSIX ms): the pinned execution time during\n * an execution build, else the current wall-clock time (used by order-build\n * min-received estimation, where an exact rate time is not yet knowable).\n */\n private rateTimeMs(): bigint {\n return this.executionNowMs ?? this.nowFn();\n }\n\n private resolveDiffusionEnd(params: {\n diffusionEnd?: bigint;\n diffusionDurationMs?: bigint;\n }): bigint {\n if (params.diffusionEnd !== undefined) {\n return params.diffusionEnd;\n }\n const duration =\n params.diffusionDurationMs ?? this.defaultDiffusionDurationMs;\n return duration !== undefined ? this.nowFn() + duration : 0n;\n }\n\n /**\n * Surface a diffusion-window shortfall on a deposit execution.\n *\n * `diffusion_end` is absolute and fixed at ORDER CREATION, so waiting to\n * execute (batching, cold/multisig signing) eats the window. Once it is gone,\n * `validate_deposit_diffusion` (utilities.ak:1117) zeroes the window and the\n * deposit settles instantly — a VALID on-chain outcome, so the tx succeeds and\n * nothing else in the stack complains. This is the only place that sees it:\n * the operator would otherwise have to read the resulting vault datum.\n *\n * Advisory by default; {@link IRealfiSDKParamsV1_1Rc1.throwOnDiffusionWindowShortfall}\n * turns it into a refusal.\n */\n private checkDiffusionWindow(\n vaultIn: VaultDatumV1,\n ctx: { stakedYieldShare: bigint; totalYield: bigint },\n windowEndMs: bigint,\n nowMs: bigint,\n ): void {\n // A loss freezes the window rather than collapsing it (utilities.ak:1143).\n if (ctx.totalYield < 0n) {\n return;\n }\n // What the vault still owes the exchange rate — NOT `pending_yield`, which\n // keeps its original value in the datum until a tx rewrites it and so stays\n // positive long after the window has run its course. Only an unfinished\n // window has anything left to lose.\n const pendingLeftUsdr = pendingRemaining(vaultIn, nowMs);\n // No window requested and nothing left owed: the validator zeroes the datum\n // as its benign no-op case (utilities.ak:1128) — either a plain instant\n // deposit, or bookkeeping cleanup after a window ran to completion.\n if (windowEndMs <= 0n && pendingLeftUsdr <= 0n) {\n return;\n }\n // Nothing to diffuse: no staked share arriving and nothing still owed.\n if (ctx.stakedYieldShare <= 0n && pendingLeftUsdr <= 0n) {\n return;\n }\n\n const remainingMs = windowEndMs - nowMs;\n let message: string;\n if (windowEndMs > 0n) {\n if (remainingMs > this.diffusionShortfallThresholdMs) {\n return;\n }\n // Distinct outcomes: a lapsed window collapses to instant, while a\n // near-lapsed one still opens and diffuses over what is left.\n if (remainingMs <= 0n) {\n message =\n `deposit diffusion window lapsed ${-remainingMs}ms before execution ` +\n `(diffusion_end=${windowEndMs}, execution time=${nowMs}); the staked ` +\n `yield settles INSTANTLY instead of diffusing. Re-create the order ` +\n `with a longer window to diffuse it.`;\n } else {\n message =\n `deposit diffusion window has only ${remainingMs}ms left at ` +\n `execution (diffusion_end=${windowEndMs}); the staked yield diffuses ` +\n `over that remainder.`;\n }\n } else {\n // No window requested while one is unfinished: the validator clears the\n // active window instead of carrying it (utilities.ak:1128-1136).\n message =\n `deposit requests no diffusion window while ${pendingLeftUsdr} USDr has ` +\n `not yet diffused (of ${vaultIn.pending_yield} pending, at execution ` +\n `time ${nowMs}); the active window is CLEARED and that remainder ` +\n `settles instantly.`;\n }\n\n const text = `[realfi-sdk] ${message}`;\n if (this.throwOnDiffusionWindowShortfall) {\n throw new Error(text);\n }\n console.warn(text);\n }\n\n // ───────────────────────────────────────────────────────────────────────────\n // In-place v1_0 → v1_1_rc1 upgrade: vault-datum migration (MigrateState)\n // ───────────────────────────────────────────────────────────────────────────\n\n /**\n * Deploy the migration validator as a reference script. Required before its\n * withdrawal can be attached in {@link buildMigrateStateTx}.\n */\n async deployMigration(): Promise {\n return deployScript(\n this.blaze,\n this.migrationScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Register the migration validator's stake credential. Its withdrawal cannot\n * be exercised until the stake credential is registered.\n */\n registerMigrationStake(): TxBuilder {\n return this.blaze\n .newTransaction()\n .addRegisterStake(credentialFromScript(this.migrationScript));\n }\n\n /**\n * Read the staking-vault UTxO holding a legacy v1_0 (one-field) datum. The\n * inherited {@link getVaultDatum} parses the four-field v1_1 schema and THROWS\n * on a pre-migration vault, so the migration path reads the input with the\n * v1_0 single-field schema (`circulating_susdr` only).\n */\n private async readLegacyVaultDatum(): Promise<{\n vaultUtxo: Core.TransactionUnspentOutput;\n circulatingSusdr: bigint;\n }> {\n const { utxo, parsedDatum } = await getDatumFromNFT(\n this.blaze,\n this.stakingVaultNFTAssetId,\n V1_0Types.VaultDatumV1,\n );\n const legacy = parsedDatum as V1_0Types.VaultDatumV1;\n return { vaultUtxo: utxo, circulatingSusdr: legacy.circulating_susdr };\n }\n\n /**\n * Build the COSE payload for a `MigrateState` action. Unlike the order path\n * (whose nonce derives from the sorted order inputs), migration spends the\n * vault UTxO, so the nonce is anchored to the vault input. Returns the CBOR\n * payload (for {@link buildMigrateStateTx}) and its blake2b-256 hash (for\n * CIP-30 signing by the `permissions.migrate` signer(s)).\n */\n async getMigrateStatePayload(): Promise<{\n signedPayload: string;\n payloadHash: string;\n }> {\n const { vaultUtxo } = await this.readLegacyVaultDatum();\n const nonce = buildNonceFromUtxo(vaultUtxo.input());\n // The family signing-schema key is v1_0-typed at compile time (its action\n // union predates MigrateState), but the runtime schema is the v1_1 one whose\n // ProtocolRedeemerV1 includes the MigrateState literal (ctor 8). Cast the\n // payload to the family payload type the serializer expects.\n const payload = { action: \"MigrateState\", nonce } as unknown as Parameters<\n RealfiSDKV1Family<\n P,\n W,\n SettingsV1,\n VaultDatumV1\n >[\"serializeOrchestratorWithdrawalRedeemer\"]\n >[0][\"payload\"];\n const serialized = Data.serialize(\n this.signing.SignedPayload_ProtocolRedeemerV1,\n payload,\n );\n const signedPayload = serialized.toCbor().toString();\n const payloadHash = blake2b_256(HexBlob(signedPayload));\n return { signedPayload, payloadHash };\n }\n\n /**\n * Build the in-place vault-datum migration transaction (`MigrateState`). Spends\n * the staking-vault UTxO (still holding the v1_0 one-field datum) and re-locks\n * it at the SAME address and value with the four-field v1_1 datum\n * (`circulating_susdr` preserved, diffusion window zeroed). Operator-only — not\n * on the partner surface, like {@link buildExecuteOrdersTx}.\n *\n * Requires (per `protocol_migration_v1_0_to_v1_1.ak` + the orchestrator's\n * MigrateState branch): the migration validator deployed + stake-registered,\n * `registry.migration = Some(migrationScriptHash)` in the live settings, and\n * `signatures` = the `permissions.migrate` COSE signatures over the payload\n * hash from {@link getMigrateStatePayload}.\n */\n async buildMigrateStateTx(params: {\n signedPayload: string;\n signatures: Tuple_VerificationKey_COSESign1[];\n }): Promise {\n const signedPayload = parse(\n this.signing.SignedPayload_ProtocolRedeemerV1,\n PlutusData.fromCbor(HexBlob(params.signedPayload)),\n ) as Parameters<\n RealfiSDKV1Family<\n P,\n W,\n SettingsV1,\n VaultDatumV1\n >[\"serializeOrchestratorWithdrawalRedeemer\"]\n >[0][\"payload\"];\n\n const { vaultUtxo, circulatingSusdr } = await this.readLegacyVaultDatum();\n\n // Reference inputs: orchestrator + staking-vault + migration scripts, plus\n // the proxy datum (read as a reference input, never spent).\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n stakingVault: this.stakingVaultScriptHash,\n migration: this.migrationScriptHash,\n });\n const { proxyUtxo } = await this.getParsedProxyDatum();\n\n // Fee inputs: wallet UTxOs minus the vault (a script input), the proxy, and\n // every reference input (regular and reference inputs must be disjoint).\n const walletUtxos = await this.blaze.wallet.getUnspentOutputs();\n const utxoKey = (inp: Core.TransactionInput) =>\n `${inp.transactionId().toString()}#${inp.index().toString()}`;\n const excluded = new Set([\n utxoKey(vaultUtxo.input()),\n utxoKey(proxyUtxo.input()),\n ]);\n for (const ref of Object.values(refInputs)) {\n if (ref) {\n excluded.add(utxoKey(ref.input()));\n }\n }\n const feeUtxos = walletUtxos.filter(\n (u) => !excluded.has(utxoKey(u.input())),\n );\n\n // Vault input index in the ledger-sorted input set (txHash, then index).\n const sortedInputRefs = [\n vaultUtxo.input(),\n ...feeUtxos.map((u) => u.input()),\n ].sort((a, b) => {\n const txA = a.transactionId().toString();\n const txB = b.transactionId().toString();\n if (txA < txB) return -1;\n if (txA > txB) return 1;\n return Number(a.index()) - Number(b.index());\n });\n const vaultInputIdx = BigInt(\n sortedInputRefs.findIndex(\n (r) =>\n r.transactionId().toString() ===\n vaultUtxo.input().transactionId().toString() &&\n r.index() === vaultUtxo.input().index(),\n ),\n );\n\n // Migrated datum: preserve circulating_susdr, zero the diffusion window (no\n // pending yield at migration time). The vault output is the first output the\n // builder adds, so its index is 0 (change outputs are appended after).\n const migratedDatum: VaultDatumV1 = {\n circulating_susdr: circulatingSusdr,\n pending_yield: 0n,\n diffusion_start: 0n,\n diffusion_end: 0n,\n };\n\n // No order requests travel in a migration; the request/treasury indices are\n // dummies (the migration branch reads only the vault indices).\n const extra: Parameters<\n RealfiSDKV1Family<\n P,\n W,\n SettingsV1,\n VaultDatumV1\n >[\"serializeOrchestratorWithdrawalRedeemer\"]\n >[0][\"extra\"] = {\n request_to_outputs: [],\n input_to_requests: [],\n treasury_input_idx: 0n,\n treasury_output_idx: 0n,\n vault_input_idx: vaultInputIdx,\n vault_output_idx: 0n,\n };\n\n const orchestratorRedeemer = this.serializeOrchestratorWithdrawalRedeemer({\n extra,\n payload: signedPayload,\n signatures: params.signatures,\n });\n\n const tx = this.newOrderTransaction();\n\n // Spend the vault with DeferToProtocol (Void); the vault script resolves\n // from the staking-vault reference input.\n tx.addInput(vaultUtxo, Data.Void());\n for (const feeUtxo of feeUtxos) {\n tx.addInput(feeUtxo);\n }\n\n tx.addReferenceInput(refInputs.protocol!);\n tx.addReferenceInput(refInputs.stakingVault!);\n tx.addReferenceInput(refInputs.migration!);\n tx.addReferenceInput(proxyUtxo);\n\n // Re-lock exactly one vault output at the SAME address (payment + stake) and\n // the SAME value, no reference script, carrying the four-field datum.\n tx.lockAssets(\n vaultUtxo.output().address(),\n vaultUtxo.output().amount(),\n Data.serialize(this.schemas.VaultDatumV1, migratedDatum),\n );\n\n // Orchestrator withdrawal carries the ExecuteOrders(MigrateState) redeemer\n // plus the permissions.migrate COSE signatures.\n tx.addWithdrawal(\n Core.RewardAccount.fromCredential(\n { type: Core.CredentialType.ScriptHash, hash: this.protocolScriptHash },\n this.network,\n ),\n 0n,\n orchestratorRedeemer,\n );\n // Migration validator withdrawal (Void); enforces the migration tx shape.\n tx.addWithdrawal(\n Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: this.migrationScriptHash,\n },\n this.network,\n ),\n 0n,\n Data.Void(),\n );\n\n return tx;\n }\n}\n\n/** Re-exported for parity with the sibling version modules. */\nexport { MAX_DIFFUSION_RATE_SPAN_MS };\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sundae/discovery.js b/modules/realfi-partner-sdk/dist/cjs/sundae/discovery.js new file mode 100644 index 0000000000..e0e43d5841 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sundae/discovery.js @@ -0,0 +1,210 @@ +"use strict"; + +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.createPoolDiscovery = createPoolDiscovery; +exports.createRuntimeCuratedPoolAssetsLoader = createRuntimeCuratedPoolAssetsLoader; +var _core = require("@sundaeswap/core"); +var _realfiApi = require("../api/realfi-api.js"); +var _registry = require("../api/registry.js"); +var _support = require("./support.js"); +var _v4Curve = require("./v4-curve.js"); +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); } +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); } +function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); } +function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +/** + * Which pools discovery returns, narrowing left to right: + * `curated ⊆ buildable ⊆ all`. + * + * - `all` — every pool the Sundae API returns for the asset, any version. + * - `buildable` — those the SDK can build an order *for*. Note "for", not + * "against": a V4 pool is included because the SDK places a pool-less intent + * for it, even though no order names the pool. + * - `curated` — the buildable pools whose pair RealFi has approved. + */ + +/** Internal seam for RealFi's authoritative runtime pair configuration. */ + +var SUNDAE_POOL_QUERY_RESULT_LIMIT = 50; +var SUNDAE_POOL_DISCOVERY_SCOPES = ["curated", "buildable", "all"]; +function isPoolAsset(assetId, candidate) { + return _core.SundaeUtils.isAssetIdsEqual(assetId, candidate); +} +function poolContainsAsset(pool, assetId) { + return isPoolAsset(pool.assetA.assetId, assetId) || isPoolAsset(pool.assetB.assetId, assetId); +} +function deterministicUniquePools(pools) { + var unique = new Map(); + var _iterator = _createForOfIteratorHelper(pools), + _step; + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var pool = _step.value; + var key = "".concat(pool.version, "\0").concat(pool.ident); + if (!unique.has(key)) { + unique.set(key, pool); + } + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + return _toConsumableArray(unique.values()).sort(function (left, right) { + if (left.ident !== right.ident) { + return left.ident < right.ident ? -1 : 1; + } + if (left.version === right.version) { + return 0; + } + return left.version < right.version ? -1 : 1; + }); +} +function isCuratedPool(pool, _ref) { + var baseAssetId = _ref.baseAssetId, + counterpartAssetIds = _ref.counterpartAssetIds; + var aIsBase = isPoolAsset(pool.assetA.assetId, baseAssetId); + var bIsBase = isPoolAsset(pool.assetB.assetId, baseAssetId); + var counterpartId = aIsBase ? pool.assetB.assetId : bIsBase ? pool.assetA.assetId : undefined; + return counterpartId !== undefined && counterpartAssetIds.some(function (assetId) { + return isPoolAsset(counterpartId, assetId); + }); +} + +/** + * Internal constructor. The loader remains behind the package export boundary + * so RealFi, not partners, owns curated pair selection. + */ +function createPoolDiscovery(network) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var loadCuratedPoolAssets = arguments.length > 2 ? arguments[2] : undefined; + var queryProvider = new _core.QueryProviderSundaeSwap(network); + if (options.endpoint !== undefined) { + queryProvider.baseUrl = options.endpoint; + } + return { + findPoolsByAsset: function findPoolsByAsset(assetId) { + var _arguments = arguments; + return _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { + var _ref2, _ref2$scope, scope, curatedAssets, rawPools, all, buildable, _t; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + _ref2 = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : {}, _ref2$scope = _ref2.scope, scope = _ref2$scope === void 0 ? "curated" : _ref2$scope; + if (!(assetId.trim().length === 0)) { + _context.n = 1; + break; + } + throw new Error("Sundae pool discovery requires a non-empty asset id"); + case 1: + if (SUNDAE_POOL_DISCOVERY_SCOPES.includes(scope)) { + _context.n = 2; + break; + } + throw new Error("Unsupported Sundae pool discovery scope: ".concat(scope)); + case 2: + if (!(scope === "curated" && !loadCuratedPoolAssets)) { + _context.n = 3; + break; + } + throw new Error("Curated Sundae pool discovery requires authoritative RealFi asset configuration"); + case 3: + if (!(scope === "curated")) { + _context.n = 5; + break; + } + _context.n = 4; + return loadCuratedPoolAssets(network); + case 4: + _t = _context.v; + _context.n = 6; + break; + case 5: + _t = undefined; + case 6: + curatedAssets = _t; + _context.n = 7; + return queryProvider.findPoolDataByAssetId(assetId); + case 7: + rawPools = _context.v; + if (!(rawPools.length >= SUNDAE_POOL_QUERY_RESULT_LIMIT)) { + _context.n = 8; + break; + } + throw new Error("Sundae pool discovery returned ".concat(rawPools.length, " pools for ").concat(assetId, "; results may be truncated")); + case 8: + _context.n = 9; + return (0, _v4Curve.withV4CurveData)(deterministicUniquePools(rawPools), assetId, queryProvider.baseUrl); + case 9: + all = _context.v; + if (!(scope === "all")) { + _context.n = 10; + break; + } + return _context.a(2, all); + case 10: + // `swap`, not `buildAgainstPool` — see TSundaePoolDiscoveryScope. The + // narrower capability would hide V4 from `curated` too, since that is + // derived from this. + buildable = all.filter(function (pool) { + return (0, _support.isSwappableSundaeSwapVersion)(pool.version) && poolContainsAsset(pool, assetId); + }); + if (!(scope === "buildable")) { + _context.n = 11; + break; + } + return _context.a(2, buildable); + case 11: + return _context.a(2, buildable.filter(function (pool) { + return isCuratedPool(pool, curatedAssets); + })); + } + }, _callee); + }))(); + } + }; +} + +/** RealFi-owned runtime curation used by the public network factory. */ +function createRuntimeCuratedPoolAssetsLoader(partnerConfigUrl) { + return /*#__PURE__*/function () { + var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(network) { + var api, config; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + api = _realfiApi.RealfiApi.create(_objectSpread(_objectSpread({}, _registry.API_REGISTRY[network]), partnerConfigUrl === undefined ? {} : { + partnerConfigUrl: partnerConfigUrl + })); + _context2.n = 1; + return api.getPartnerConfig(); + case 1: + config = _context2.v; + return _context2.a(2, { + baseAssetId: config.stablecoinAssetId, + counterpartAssetIds: config.swapCounterpartAssets + }); + } + }, _callee2); + })); + return function (_x) { + return _ref3.apply(this, arguments); + }; + }(); +} +//# sourceMappingURL=discovery.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sundae/discovery.js.map b/modules/realfi-partner-sdk/dist/cjs/sundae/discovery.js.map new file mode 100644 index 0000000000..a827ac007b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sundae/discovery.js.map @@ -0,0 +1 @@ +{"version":3,"file":"discovery.js","names":["_core","require","_realfiApi","_registry","_support","_v4Curve","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","_typeof","Symbol","toPrimitive","call","TypeError","String","Number","_regenerator","n","iterator","toStringTag","c","prototype","Generator","u","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","l","done","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","_regeneratorDefine","_invoke","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","_next","_throw","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","_createForOfIteratorHelper","_n","F","s","next","toString","slice","constructor","name","test","SUNDAE_POOL_QUERY_RESULT_LIMIT","SUNDAE_POOL_DISCOVERY_SCOPES","isPoolAsset","assetId","candidate","SundaeUtils","isAssetIdsEqual","poolContainsAsset","pool","assetA","assetB","deterministicUniquePools","pools","unique","Map","_iterator","_step","key","concat","version","ident","has","set","err","values","sort","left","right","isCuratedPool","_ref","baseAssetId","counterpartAssetIds","aIsBase","bIsBase","counterpartId","undefined","some","createPoolDiscovery","network","options","loadCuratedPoolAssets","queryProvider","QueryProviderSundaeSwap","endpoint","baseUrl","findPoolsByAsset","_arguments","_callee","_ref2","_ref2$scope","scope","curatedAssets","rawPools","all","buildable","_t","_context","trim","Error","includes","findPoolDataByAssetId","withV4CurveData","isSwappableSundaeSwapVersion","createRuntimeCuratedPoolAssetsLoader","partnerConfigUrl","_ref3","_callee2","api","config","_context2","RealfiApi","API_REGISTRY","getPartnerConfig","stablecoinAssetId","swapCounterpartAssets","_x"],"sources":["../../../src/sundae/discovery.ts"],"sourcesContent":["import {\n QueryProviderSundaeSwap,\n SundaeUtils,\n type IPoolData,\n type TSupportedNetworks,\n} from \"@sundaeswap/core\";\n\nimport { RealfiApi } from \"../api/realfi-api.js\";\nimport { API_REGISTRY } from \"../api/registry.js\";\nimport { isSwappableSundaeSwapVersion } from \"./support.js\";\nimport { withV4CurveData } from \"./v4-curve.js\";\n\n/**\n * Which pools discovery returns, narrowing left to right:\n * `curated ⊆ buildable ⊆ all`.\n *\n * - `all` — every pool the Sundae API returns for the asset, any version.\n * - `buildable` — those the SDK can build an order *for*. Note \"for\", not\n * \"against\": a V4 pool is included because the SDK places a pool-less intent\n * for it, even though no order names the pool.\n * - `curated` — the buildable pools whose pair RealFi has approved.\n */\nexport type TSundaePoolDiscoveryScope = \"curated\" | \"buildable\" | \"all\";\n\nexport interface ISundaePoolDiscoveryParams {\n /** Defaults to the RealFi-approved `curated` scope. */\n scope?: TSundaePoolDiscoveryScope;\n}\n\nexport interface ISundaePoolDiscoveryOptions {\n /** Overrides Sundae's endpoint while retaining the network for fee math. */\n endpoint?: string;\n /** Overrides RealFi's runtime partner configuration for custom deployments. */\n partnerConfigUrl?: string;\n}\n\nexport interface ISundaePoolDiscoverySDK {\n findPoolsByAsset(\n assetId: string,\n params?: ISundaePoolDiscoveryParams,\n ): Promise;\n}\n\n/** Internal seam for RealFi's authoritative runtime pair configuration. */\nexport interface ISundaeCuratedPoolAssets {\n baseAssetId: string;\n counterpartAssetIds: readonly string[];\n}\n\nexport type TSundaeCuratedPoolAssetsLoader = (\n network: TSupportedNetworks,\n) => Promise;\n\nconst SUNDAE_POOL_QUERY_RESULT_LIMIT = 50;\nconst SUNDAE_POOL_DISCOVERY_SCOPES: readonly TSundaePoolDiscoveryScope[] = [\n \"curated\",\n \"buildable\",\n \"all\",\n];\n\nfunction isPoolAsset(assetId: string, candidate: string): boolean {\n return SundaeUtils.isAssetIdsEqual(assetId, candidate);\n}\n\nfunction poolContainsAsset(pool: IPoolData, assetId: string): boolean {\n return (\n isPoolAsset(pool.assetA.assetId, assetId) ||\n isPoolAsset(pool.assetB.assetId, assetId)\n );\n}\n\nfunction deterministicUniquePools(pools: readonly IPoolData[]): IPoolData[] {\n const unique = new Map();\n for (const pool of pools) {\n const key = `${pool.version}\\u0000${pool.ident}`;\n if (!unique.has(key)) {\n unique.set(key, pool);\n }\n }\n\n return [...unique.values()].sort((left, right) => {\n if (left.ident !== right.ident) {\n return left.ident < right.ident ? -1 : 1;\n }\n if (left.version === right.version) {\n return 0;\n }\n return left.version < right.version ? -1 : 1;\n });\n}\n\nfunction isCuratedPool(\n pool: IPoolData,\n { baseAssetId, counterpartAssetIds }: ISundaeCuratedPoolAssets,\n): boolean {\n const aIsBase = isPoolAsset(pool.assetA.assetId, baseAssetId);\n const bIsBase = isPoolAsset(pool.assetB.assetId, baseAssetId);\n const counterpartId = aIsBase\n ? pool.assetB.assetId\n : bIsBase\n ? pool.assetA.assetId\n : undefined;\n\n return (\n counterpartId !== undefined &&\n counterpartAssetIds.some((assetId) => isPoolAsset(counterpartId, assetId))\n );\n}\n\n/**\n * Internal constructor. The loader remains behind the package export boundary\n * so RealFi, not partners, owns curated pair selection.\n */\nexport function createPoolDiscovery(\n network: TSupportedNetworks,\n options: ISundaePoolDiscoveryOptions = {},\n loadCuratedPoolAssets?: TSundaeCuratedPoolAssetsLoader,\n): ISundaePoolDiscoverySDK {\n const queryProvider = new QueryProviderSundaeSwap(network);\n if (options.endpoint !== undefined) {\n queryProvider.baseUrl = options.endpoint;\n }\n\n return {\n async findPoolsByAsset(\n assetId,\n { scope = \"curated\" }: ISundaePoolDiscoveryParams = {},\n ) {\n if (assetId.trim().length === 0) {\n throw new Error(\"Sundae pool discovery requires a non-empty asset id\");\n }\n if (!SUNDAE_POOL_DISCOVERY_SCOPES.includes(scope)) {\n throw new Error(`Unsupported Sundae pool discovery scope: ${scope}`);\n }\n if (scope === \"curated\" && !loadCuratedPoolAssets) {\n throw new Error(\n \"Curated Sundae pool discovery requires authoritative RealFi asset configuration\",\n );\n }\n\n const curatedAssets =\n scope === \"curated\" ? await loadCuratedPoolAssets!(network) : undefined;\n const rawPools = await queryProvider.findPoolDataByAssetId(assetId);\n // Sundae's byAsset query has no pagination arguments. Treat the gateway's\n // 50-result boundary as incomplete rather than silently hiding pools.\n if (rawPools.length >= SUNDAE_POOL_QUERY_RESULT_LIMIT) {\n throw new Error(\n `Sundae pool discovery returned ${rawPools.length} pools for ${assetId}; results may be truncated`,\n );\n }\n\n // Before any scope filter, so `all` carries the curve data too. Retires\n // itself once Sundae's own query selects these fields — see v4-curve.ts.\n const all = await withV4CurveData(\n deterministicUniquePools(rawPools),\n assetId,\n queryProvider.baseUrl,\n );\n if (scope === \"all\") {\n return all;\n }\n\n // `swap`, not `buildAgainstPool` — see TSundaePoolDiscoveryScope. The\n // narrower capability would hide V4 from `curated` too, since that is\n // derived from this.\n const buildable = all.filter(\n (pool) =>\n isSwappableSundaeSwapVersion(pool.version) &&\n poolContainsAsset(pool, assetId),\n );\n if (scope === \"buildable\") {\n return buildable;\n }\n\n return buildable.filter((pool) => isCuratedPool(pool, curatedAssets!));\n },\n };\n}\n\n/** RealFi-owned runtime curation used by the public network factory. */\nexport function createRuntimeCuratedPoolAssetsLoader(\n partnerConfigUrl?: string,\n): TSundaeCuratedPoolAssetsLoader {\n return async (network) => {\n const api = RealfiApi.create({\n ...API_REGISTRY[network],\n ...(partnerConfigUrl === undefined ? {} : { partnerConfigUrl }),\n });\n const config = await api.getPartnerConfig();\n return {\n baseAssetId: config.stablecoinAssetId,\n counterpartAssetIds: config.swapCounterpartAssets,\n };\n };\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sundae/index.js b/modules/realfi-partner-sdk/dist/cjs/sundae/index.js new file mode 100644 index 0000000000..510eb2f4f2 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sundae/index.js @@ -0,0 +1,644 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "AssetAmount", { + enumerable: true, + get: function get() { + return _asset.AssetAmount; + } +}); +Object.defineProperty(exports, "EContractVersion", { + enumerable: true, + get: function get() { + return _core.EContractVersion; + } +}); +Object.defineProperty(exports, "EDatumType", { + enumerable: true, + get: function get() { + return _core.EDatumType; + } +}); +Object.defineProperty(exports, "EPoolCurve", { + enumerable: true, + get: function get() { + return _core.EPoolCurve; + } +}); +Object.defineProperty(exports, "ESwapType", { + enumerable: true, + get: function get() { + return _core.ESwapType; + } +}); +Object.defineProperty(exports, "SUPPORTED_SUNDAE_SWAP_VERSIONS", { + enumerable: true, + get: function get() { + return _support.SUPPORTED_SUNDAE_SWAP_VERSIONS; + } +}); +Object.defineProperty(exports, "SWAPPABLE_SUNDAE_SWAP_VERSIONS", { + enumerable: true, + get: function get() { + return _support.SWAPPABLE_SUNDAE_SWAP_VERSIONS; + } +}); +Object.defineProperty(exports, "assertSupportedSundaeSwapPool", { + enumerable: true, + get: function get() { + return _support.assertSupportedSundaeSwapPool; + } +}); +Object.defineProperty(exports, "assertSwappableSundaeSwapPool", { + enumerable: true, + get: function get() { + return _support.assertSwappableSundaeSwapPool; + } +}); +exports.buildSwapIntentTx = _buildSwapIntentTx2; +exports.buildSwapOrderTx = _buildSwapOrderTx2; +exports.buildSwapToStakeOrderTx = _buildSwapToStakeOrderTx2; +exports.create = create; +exports.forNetwork = forNetwork; +Object.defineProperty(exports, "isSupportedSundaeSwapVersion", { + enumerable: true, + get: function get() { + return _support.isSupportedSundaeSwapVersion; + } +}); +Object.defineProperty(exports, "isSwappableSundaeSwapVersion", { + enumerable: true, + get: function get() { + return _support.isSwappableSundaeSwapVersion; + } +}); +exports.quoteSwap = quoteSwap; +exports.quoteSwapInput = quoteSwapInput; +exports.selectV4QuotePool = selectV4QuotePool; +var _sdk = require("@blaze-cardano/sdk"); +var _asset = require("@sundaeswap/asset"); +var _core = require("@sundaeswap/core"); +var _destination = require("../tx-builder/destination.js"); +var _discovery = require("./discovery.js"); +var _support = require("./support.js"); +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } +function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } // Keep the partner construction surface self-contained. Consumers can build +// swap inputs through `SundaeSwap` without importing our implementation +// dependencies directly. +/** + * A V4 swap intent: an offer and a floor, naming no pool. + * + * `referralFee` is deliberately not surfaced — no RealFi path takes one. + */ + +/** Creates a network-scoped, Blaze-free Sundae pool discovery adapter. */ +function forNetwork(network) { + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + return (0, _discovery.createPoolDiscovery)(network, options, (0, _discovery.createRuntimeCuratedPoolAssetsLoader)(options.partnerConfigUrl)); +} +function canonicalizePoolAsset(pool, asset) { + var metadata = [pool.assetA, pool.assetB].find(function (poolAsset) { + return _core.SundaeUtils.isAssetIdsEqual(poolAsset.assetId, asset.metadata.assetId); + }); + if (!metadata) { + throw new Error("Asset is not part of the Sundae swap pool: ".concat(asset.metadata.assetId)); + } + return new _asset.AssetAmount(asset.amount, metadata); +} +function oppositePoolAsset(pool, suppliedAsset) { + return suppliedAsset.metadata.assetId === pool.assetA.assetId ? pool.assetB : pool.assetA; +} +function canonicalizeSwapType(pool, suppliedAsset, swapType) { + if (swapType.type === _core.ESwapType.MARKET) { + return swapType; + } + var minReceivable = canonicalizePoolAsset(pool, swapType.minReceivable); + var expectedAsset = oppositePoolAsset(pool, suppliedAsset); + if (minReceivable.metadata.assetId !== expectedAsset.assetId) { + throw new Error("Sundae LIMIT minimum must use the pool asset opposite the supplied asset: ".concat(expectedAsset.assetId)); + } + return _objectSpread(_objectSpread({}, swapType), {}, { + minReceivable: minReceivable + }); +} +function assertValidSlippage(slippage) { + if (!Number.isFinite(slippage) || slippage < 0 || slippage > 1) { + throw new Error("Sundae swap slippage must be a finite number between 0 and 1 inclusive"); + } +} +function decimalFraction(value) { + var _value$toString$toLow = value.toString().toLowerCase().split("e"), + _value$toString$toLow2 = _slicedToArray(_value$toString$toLow, 2), + _value$toString$toLow3 = _value$toString$toLow2[0], + coefficient = _value$toString$toLow3 === void 0 ? "0" : _value$toString$toLow3, + exponentText = _value$toString$toLow2[1]; + var exponent = Number(exponentText !== null && exponentText !== void 0 ? exponentText : 0); + var _coefficient$split = coefficient.split("."), + _coefficient$split2 = _slicedToArray(_coefficient$split, 2), + whole = _coefficient$split2[0], + _coefficient$split2$ = _coefficient$split2[1], + fraction = _coefficient$split2$ === void 0 ? "" : _coefficient$split2$; + var digits = BigInt("".concat(whole).concat(fraction)); + var scale = fraction.length - exponent; + return scale > 0 ? { + numerator: digits, + denominator: Math.pow(10n, BigInt(scale)) + } : { + numerator: digits * Math.pow(10n, BigInt(-scale)), + denominator: 1n + }; +} +function ceilDiv(numerator, denominator) { + return numerator === 0n ? 0n : (numerator + denominator - 1n) / denominator; +} + +/** + * Applies the caller's decimal slippage to an integer quote without coercing + * the quote to a JavaScript number. Sundae's helper performs that coercion, + * which can weaken large minimums after `Number.MAX_SAFE_INTEGER`. + */ +function minReceivableFromSlippage(output, receivedAsset, slippage) { + var _decimalFraction = decimalFraction(slippage), + numerator = _decimalFraction.numerator, + denominator = _decimalFraction.denominator; + var remaining = denominator - numerator; + var amount = ceilDiv(output * remaining, denominator); + return new _asset.AssetAmount(amount, receivedAsset); +} + +/** + * Why this fee cannot quote a constant-sum swap, or undefined if it can. + * + * At a fee of 1 the forward quote settles to nothing and the inverse divides by + * zero; above 1 the forward quote goes negative. The bound matches + * `ConstantSumPool.getSwapInput`'s own `[0, 1)` — the forward direction + * tolerates exactly 1, but a pool taking the whole trade is not one we should be + * quoting either way. + */ +function feeRefusal(currentFee) { + if (!Number.isFinite(currentFee) || currentFee < 0 || currentFee >= 1) { + return "Sundae constant-sum swap requires a fee in [0, 1); got ".concat(currentFee); + } + return undefined; +} + +/** + * The positive-amount rule matches what V3 and Stableswaps already enforce + * through Sundae's "Input and reserves must be positive"; V4 was the only + * version that quietly returned zero instead. + */ +function assertQuotableConstantSum(amount, currentFee) { + if (amount <= 0n) { + throw new Error("Sundae constant-sum swap requires a positive amount"); + } + var refusal = feeRefusal(currentFee); + if (refusal) { + throw new Error(refusal); + } +} + +/** + * Settles a V4 (constant-sum) swap the way Sundae's own engine does: + * + * output = offered − floor(offered × fee) + * + * That is `ConstantSumPool.getSwapOutput` from `@sundaeswap/math` specialised to + * equal per-asset prices, not an approximation of it. We cannot call + * `SundaeUtils.getSwapOutput` for V4 because it dispatches on `pool.curve`, and + * the Sundae API populates neither `curve` nor `prices` — it would fall through + * to `Unsupported v4 pool curve: undefined`. + * + * The rate comes from `currentFee`'s exact decimal expansion rather than a float + * product: past `Number.MAX_SAFE_INTEGER` a float drops the low digits and + * shifts the result, the same hazard {@link minReceivableFromSlippage} avoids. + * + * `priceWeight` is the pool's per-asset constant-sum price, which both assets of + * a supported pool share. It cannot be divided out: the fee is floored at the + * *scaled* value and the quotient is floored again, so the two roundings only + * collapse into one at a weight of `1`. At a weight of `2`, offering `1999` at a + * fee of `0.001` settles to `1997`, where dividing out would say `1998` — and + * since this figure also becomes `minReceived`, the higher answer would leave a + * floor the fill can never clear. + * + * Deliberately does NOT cap the output at the pool's reserve. `ConstantSumPool` + * caps, because it prices one specific pool; a V4 order names no pool, so + * capping here would silently lower `minReceived` — the owner's only guarantee — + * whenever a large order is quoted against a shallow pool. + */ +function constantSumSwapOutput(offered, currentFee, priceWeight) { + assertQuotableConstantSum(offered, currentFee); + var _decimalFraction2 = decimalFraction(currentFee), + numerator = _decimalFraction2.numerator, + denominator = _decimalFraction2.denominator; + var offeredValue = offered * priceWeight; + var feeValue = offeredValue * numerator / denominator; + return (offeredValue - feeValue) / priceWeight; +} + +/** + * Quotes a V4 swap. `slippage` is validated by {@link quoteSwap} and then + * ignored: a constant-sum pool has no price movement to buffer against, and — + * decisively — the surplus above `min_received` is unbound on-chain, so slack in + * the floor is not a safety margin, it is directly skimmable by the scooper. + * `estimatedReceived` and `minReceived` are therefore the same figure. + * + * Assumes the pool weights its two assets equally. That precondition is + * unverifiable from the API, which never serves `prices`; the matching-decimals + * half of it is checked here, and the pools RealFi trades satisfy both. + */ +/** + * Why this pool cannot be priced as an equal-weight constant-sum pool, or + * undefined if it can. {@link constantSumPriceWeight} throws it and + * {@link selectV4QuotePool} filters on it, so the two cannot drift apart. + */ +function constantSumRefusal(pool) { + // A V4 pool's swap math follows its invariant module, not its contract + // version, so "V4" alone does not mean constant-sum. Nor does an absent + // `curve`: that means whoever fetched the pool did not ask for it, which is + // not evidence of anything. Pool discovery asks; Sundae's own query provider + // does not. + if (pool.curve !== _core.EPoolCurve.ConstantSum) { + var _pool$curve; + return "Sundae V4 pool ".concat(pool.ident, " is not known to be ").concat(_core.EPoolCurve.ConstantSum, " ") + "(curve: ".concat((_pool$curve = pool.curve) !== null && _pool$curve !== void 0 ? _pool$curve : "unknown", "). Resolve pools through pool ") + "discovery, which supplies the curve."; + } + // Same story for `prices`: absent means unasked, not 1:1. Unequal weights need + // the two-price form of the constant-sum formula and a reserve orientation + // this quote does not model; equal weights of any magnitude are handled, and + // carried into the arithmetic rather than divided out. + if (pool.prices === undefined) { + return "Sundae V4 pool ".concat(pool.ident, " declares no price weights. Resolve pools ") + "through pool discovery, which supplies them."; + } + var _pool$prices = _slicedToArray(pool.prices, 2), + priceIn = _pool$prices[0], + priceOut = _pool$prices[1]; + if (priceIn !== priceOut) { + return "Sundae V4 pool ".concat(pool.ident, " weights its assets ") + "".concat(priceIn, ":").concat(priceOut, "; only equal weights are priced here"); + } + if (priceIn <= 0n) { + return "Sundae V4 pool ".concat(pool.ident, " declares a non-positive price weight"); + } + // Decimals stand in for the price weights we usually cannot see: a 1:1 + // constant-sum pair settles raw amounts one-for-one only at equal scale. + if (pool.assetA.decimals !== pool.assetB.decimals) { + return "Sundae V4 pool ".concat(pool.ident, " pairs assets of differing decimals ") + "(".concat(pool.assetA.decimals, " and ").concat(pool.assetB.decimals, "); the 1:1 ") + "constant-sum assumption does not hold"; + } + return undefined; +} +function constantSumPriceWeight(pool) { + var refusal = constantSumRefusal(pool); + if (refusal) { + throw new Error(refusal); + } + return pool.prices[0]; +} + +/** + * Stricter than the quote, deliberately: a swap form trades both ways against + * the one pool it selected, so both reserves must be usable, where a single + * quote only checks the side it pays out. + */ +function isSelectableV4Pool(pool) { + return constantSumRefusal(pool) === undefined && feeRefusal(pool.currentFee) === undefined && pool.liquidity.aReserve > 0n && pool.liquidity.bReserve > 0n; +} + +/** + * Picks the V4 pool whose fee should quote a swap, ignoring any non-V4 pool in + * `pools` and any V4 pool {@link quoteSwap} would refuse. Undefined when none + * qualifies, which means the caller should fall back to another version. + * + * A V4 order names no pool, so this routes nothing — it only decides whose fee + * sets `min_received`. Cheapest is both the best rate and the safer pick: the + * floor is the owner's only guarantee, and a pool overstating its fee would drag + * it down into territory a scooper can fill cheaply and pocket the difference. + * A hostile pool can therefore only win by genuinely being the cheapest. + * + * Selection lives here rather than in the caller so that the eligibility rules + * have one home. `SundaeUtils.getBestPoolBySwapOutcome` is the equivalent for + * the other versions and cannot be used: it calls `getSwapOutput`, which throws + * on a V4 pool. + */ +function selectV4QuotePool(pools) { + return pools.filter(function (pool) { + return pool.version === _core.EContractVersion.V4 && isSelectableV4Pool(pool); + }).reduce(function (best, pool) { + return best === undefined || pool.currentFee < best.currentFee ? pool : best; + }, undefined); +} +function quoteConstantSumSwap(pool, suppliedAsset, receivedAsset, outputReserve) { + var priceIn = constantSumPriceWeight(pool); + if (outputReserve <= 0n) { + throw new Error("Sundae V4 pool ".concat(pool.ident, " holds no ").concat(receivedAsset.assetId, " to swap into")); + } + var output = constantSumSwapOutput(suppliedAsset.amount, pool.currentFee, priceIn); + return { + estimatedReceived: new _asset.AssetAmount(output, receivedAsset), + minReceived: new _asset.AssetAmount(output, receivedAsset), + priceImpact: 0 + }; +} + +/** + * Quotes a market swap for any swappable pool version. Callers do not branch on + * `pool.version`; this does. + * + * V3 / Stableswaps use Sundae's own pool math with the caller's slippage applied + * at bigint precision. V4 is constant-sum — see {@link quoteConstantSumSwap} for + * why its quote is exact, why `priceImpact` is `0`, and why `slippage` is + * ignored there. + */ +function quoteSwap(_ref) { + var pool = _ref.pool, + suppliedAsset = _ref.suppliedAsset, + slippage = _ref.slippage; + (0, _support.assertSwappableSundaeSwapPool)(pool); + assertValidSlippage(slippage); + var canonicalSuppliedAsset = canonicalizePoolAsset(pool, suppliedAsset); + var receivesAssetA = _core.SundaeUtils.isAssetIdsEqual(pool.assetB.assetId, canonicalSuppliedAsset.metadata.assetId); + var receivedAsset = receivesAssetA ? pool.assetA : pool.assetB; + if (pool.version === _core.EContractVersion.V4) { + return quoteConstantSumSwap(pool, canonicalSuppliedAsset, receivedAsset, receivesAssetA ? pool.liquidity.aReserve : pool.liquidity.bReserve); + } + var outcome = _core.SundaeUtils.getSwapOutput(pool, canonicalSuppliedAsset); + return { + estimatedReceived: new _asset.AssetAmount(outcome.output, receivedAsset), + minReceived: minReceivableFromSlippage(outcome.output, receivedAsset, slippage), + priceImpact: outcome.priceImpact.toNumber() + }; +} + +/** + * The smallest constant-sum supply that still yields `output`. + * + * Mirrors `ConstantSumPool.getSwapInput`. Not a plain gross-up: the forward + * settlement is `ceil(input·price·(feeDen−feeNum)/feeDen)`, and that clears + * `output·price` exactly when the numerator reaches `feeDen·(target−1)+1`, so + * the `−1n` is what keeps the answer minimal rather than a unit high. + */ +function constantSumSwapInput(output, currentFee, priceWeight) { + // Reasserted here even though `quoteSwapInput` checks the amount: this is + // where a fee of 1 would divide by zero, and the raw error would name the + // division rather than the fee that caused it. + assertQuotableConstantSum(output, currentFee); + var _decimalFraction3 = decimalFraction(currentFee), + feeNum = _decimalFraction3.numerator, + feeDen = _decimalFraction3.denominator; + var targetValue = output * priceWeight; + var numerator = feeDen * (targetValue - 1n) + 1n; + var denominator = (feeDen - feeNum) * priceWeight; + return (numerator + denominator - 1n) / denominator; +} + +/** + * Quotes the supply needed to receive `desiredOutput`, for any swappable pool + * version. The inverse of {@link quoteSwap}, and the direction a swap form needs + * when the user edits the receive field rather than the pay field. + */ +function quoteSwapInput(_ref2) { + var pool = _ref2.pool, + desiredOutput = _ref2.desiredOutput; + (0, _support.assertSwappableSundaeSwapPool)(pool); + var canonicalDesiredOutput = canonicalizePoolAsset(pool, desiredOutput); + var suppliedAsset = oppositePoolAsset(pool, canonicalDesiredOutput); + if (pool.version === _core.EContractVersion.V4) { + if (canonicalDesiredOutput.amount <= 0n) { + throw new Error("Sundae V4 swap requires a positive desired output"); + } + return { + requiredInput: new _asset.AssetAmount(constantSumSwapInput(canonicalDesiredOutput.amount, pool.currentFee, constantSumPriceWeight(pool)), suppliedAsset) + }; + } + return { + requiredInput: new _asset.AssetAmount(_core.SundaeUtils.getSwapInput(pool, canonicalDesiredOutput).input, suppliedAsset) + }; +} + +/** + * Builds a standalone Sundae swap order against a specific pool. + * + * V4 is quotable but not buildable here: its order carries no pool reference at + * all, so it cannot share this pool-taking argument shape. Use + * {@link buildSwapIntentTx}. + */ +function _buildSwapOrderTx2(_x, _x2) { + return _buildSwapOrderTx.apply(this, arguments); +} +/** + * Places a Sundae V4 swap. + * + * A V4 order is an intent: an offer and a floor, naming no pool. The scooper + * decides how to fill it — one pool, a split across the pair's pools, or a + * multi-hop chain — and `minReceived` is what bounds the result. + * + * Goes through `swapIntent` rather than `swap`: `TxBuilderV4.swap` throws by + * design, because a swap order carries the route constraint, which is outside + * the launch's audited surface. + */ +function _buildSwapOrderTx() { + _buildSwapOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(blaze, params) { + var suppliedAsset, swapType, builderSwapType, canonicalParams, builder; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + if (!(params.pool.version === _core.EContractVersion.V4)) { + _context.n = 1; + break; + } + throw new Error("Sundae V4 swaps are placed as pool-less intents; use buildSwapIntentTx"); + case 1: + (0, _support.assertSupportedSundaeSwapPool)(params.pool); + if (params.swapType.type === _core.ESwapType.MARKET) { + assertValidSlippage(params.swapType.slippage); + } + suppliedAsset = canonicalizePoolAsset(params.pool, params.suppliedAsset); + swapType = canonicalizeSwapType(params.pool, suppliedAsset, params.swapType); + builderSwapType = swapType.type === _core.ESwapType.MARKET ? { + type: _core.ESwapType.LIMIT, + minReceivable: minReceivableFromSlippage(_core.SundaeUtils.getSwapOutput(params.pool, suppliedAsset).output, oppositePoolAsset(params.pool, suppliedAsset), swapType.slippage) + } : swapType; + canonicalParams = _objectSpread(_objectSpread({}, params), {}, { + suppliedAsset: suppliedAsset, + // Convert MARKET inputs to the equivalent LIMIT input ourselves so the + // Sundae builder cannot repeat its bigint-unsafe slippage calculation. + swapType: builderSwapType + }); + builder = _core.SundaeSDK["new"]({ + blazeInstance: blaze + }).builder(params.pool.version); + return _context.a(2, builder.swap(canonicalParams)); + } + }, _callee); + })); + return _buildSwapOrderTx.apply(this, arguments); +} +function _buildSwapIntentTx2(_x3, _x4) { + return _buildSwapIntentTx.apply(this, arguments); +} +/** + * Builds a Sundae V3 or Stableswaps order whose proceeds continue into a + * version-aware RealFi stake order. The caller's original Sundae destination + * becomes the RealFi destination, so both sUSDr and any USDr above Sundae's + * guaranteed minimum continue to the intended recipient. + */ +function _buildSwapIntentTx() { + _buildSwapIntentTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(blaze, params) { + var builder; + return _regenerator().w(function (_context2) { + while (1) switch (_context2.n) { + case 0: + if (params.ownerAddress) { + _context2.n = 1; + break; + } + throw new Error("Sundae V4 swap requires ownerAddress so the order remains cancellable"); + case 1: + if (!(params.offered.amount <= 0n)) { + _context2.n = 2; + break; + } + throw new Error("Sundae V4 swap requires a positive offered amount"); + case 2: + if (!(params.minReceived.amount <= 0n)) { + _context2.n = 3; + break; + } + throw new Error("Sundae V4 swap requires a positive minReceived amount"); + case 3: + if (!_core.SundaeUtils.isAssetIdsEqual(params.offered.metadata.assetId, params.minReceived.metadata.assetId)) { + _context2.n = 4; + break; + } + throw new Error("Sundae V4 swap requires the offered and received assets to differ"); + case 4: + builder = _core.SundaeSDK["new"]({ + blazeInstance: blaze + }).builder(_core.EContractVersion.V4); // Each optional is forwarded only when supplied, so Sundae's own defaults + // apply otherwise. + return _context2.a(2, builder.swapIntent(_objectSpread(_objectSpread(_objectSpread(_objectSpread({ + ownerAddress: params.ownerAddress, + offered: params.offered, + minReceived: params.minReceived + }, params.destination === undefined ? {} : { + destination: params.destination + }), params.budget === undefined ? {} : { + budget: params.budget + }), params.maxPerExecution === undefined ? {} : { + maxPerExecution: params.maxPerExecution + }), params.configToken === undefined ? {} : { + configToken: params.configToken + }))); + } + }, _callee2); + })); + return _buildSwapIntentTx.apply(this, arguments); +} +function _buildSwapToStakeOrderTx2(_x5, _x6) { + return _buildSwapToStakeOrderTx.apply(this, arguments); +} +/** Creates a Blaze-scoped partner swap adapter. */ +function _buildSwapToStakeOrderTx() { + _buildSwapToStakeOrderTx = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(blaze, _ref3) { + var _stake$owner; + var sdk, swap, stake, suppliedAsset, swapType, minReceived, continuation; + return _regenerator().w(function (_context3) { + while (1) switch (_context3.n) { + case 0: + sdk = _ref3.sdk, swap = _ref3.swap, stake = _ref3.stake; + (0, _support.assertSupportedSundaeSwapPool)(swap.pool); + if (swap.ownerAddress) { + _context3.n = 1; + break; + } + throw new Error("Sundae swap-to-stake requires ownerAddress so the swap remains cancellable"); + case 1: + // The Sundae builder validates the continuation address that replaces this + // destination. Validate the caller's original final destination first so a + // cross-network address or a script address without a datum cannot be hidden + // by composition and later receive the sUSDr/excess output incorrectly. + _core.BlazeHelper.validateAddressAndDatumAreValid(_objectSpread(_objectSpread({}, swap.orderAddresses.DestinationAddress), {}, { + network: _core.SundaeUtils.getNetworkFromProvider(blaze.provider.networkName) + })); + suppliedAsset = canonicalizePoolAsset(swap.pool, swap.suppliedAsset); + swapType = canonicalizeSwapType(swap.pool, suppliedAsset, swap.swapType); + minReceived = swapType.type === _core.ESwapType.LIMIT ? swapType.minReceivable : quoteSwap({ + pool: swap.pool, + suppliedAsset: suppliedAsset, + slippage: swapType.slippage + }).minReceived; + _context3.n = 2; + return sdk.buildStakeContinuation(_objectSpread(_objectSpread({}, stake), {}, { + owner: (_stake$owner = stake === null || stake === void 0 ? void 0 : stake.owner) !== null && _stake$owner !== void 0 ? _stake$owner : (0, _destination.realfiOwnerFromSundaeV3OwnerAddress)(_sdk.Core.Address.fromBech32(swap.ownerAddress).getNetworkId() === _sdk.Core.NetworkId.Mainnet ? "mainnet" : "preview", swap.ownerAddress), + swap: { + minReceived: minReceived + }, + destination: realfiDestinationFromSundaeDestination(swap.orderAddresses.DestinationAddress) + })); + case 2: + continuation = _context3.v; + return _context3.a(2, _buildSwapOrderTx2(blaze, _objectSpread(_objectSpread({}, swap), {}, { + orderAddresses: _objectSpread({ + DestinationAddress: (0, _destination.sundaeV3DestinationAddressFromStepResult)(continuation) + }, swap.orderAddresses.AlternateAddress ? { + AlternateAddress: swap.orderAddresses.AlternateAddress + } : {}) + }))); + } + }, _callee3); + })); + return _buildSwapToStakeOrderTx.apply(this, arguments); +} +function create(blaze) { + return { + quoteSwap: quoteSwap, + quoteSwapInput: quoteSwapInput, + buildSwapOrderTx: function buildSwapOrderTx(params) { + return _buildSwapOrderTx2(blaze, params); + }, + buildSwapIntentTx: function buildSwapIntentTx(params) { + return _buildSwapIntentTx2(blaze, params); + }, + buildSwapToStakeOrderTx: function buildSwapToStakeOrderTx(params) { + return _buildSwapToStakeOrderTx2(blaze, params); + } + }; +} +function realfiDestinationFromSundaeDestination(_ref4) { + var address = _ref4.address, + datum = _ref4.datum; + var realfiDatum = function () { + switch (datum.type) { + case _core.EDatumType.NONE: + return "NoDatum"; + case _core.EDatumType.HASH: + return { + DatumHash: [datum.value] + }; + case _core.EDatumType.INLINE: + return { + InlineDatum: [(0, _destination.plutusDataFromCbor)(datum.value)] + }; + default: + { + var unreachable = datum; + return unreachable; + } + } + }(); + return (0, _destination.addressToRealFiDestination)(_sdk.Core.Address.fromBech32(address), realfiDatum); +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sundae/index.js.map b/modules/realfi-partner-sdk/dist/cjs/sundae/index.js.map new file mode 100644 index 0000000000..c0ff5fe48e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sundae/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_sdk","require","_asset","_core","_destination","_discovery","_support","_regenerator","e","t","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","_typeof","constructor","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_arrayLikeToArray","toString","slice","name","Array","from","test","next","push","isArray","ownKeys","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","forNetwork","network","options","undefined","createPoolDiscovery","createRuntimeCuratedPoolAssetsLoader","partnerConfigUrl","canonicalizePoolAsset","pool","asset","metadata","assetA","assetB","find","poolAsset","SundaeUtils","isAssetIdsEqual","assetId","Error","concat","AssetAmount","amount","oppositePoolAsset","suppliedAsset","canonicalizeSwapType","swapType","type","ESwapType","MARKET","minReceivable","expectedAsset","assertValidSlippage","slippage","isFinite","decimalFraction","_value$toString$toLow","toLowerCase","split","_value$toString$toLow2","_value$toString$toLow3","coefficient","exponentText","exponent","_coefficient$split","_coefficient$split2","whole","_coefficient$split2$","fraction","digits","BigInt","scale","numerator","denominator","Math","pow","ceilDiv","minReceivableFromSlippage","output","receivedAsset","_decimalFraction","remaining","feeRefusal","currentFee","assertQuotableConstantSum","refusal","constantSumSwapOutput","offered","priceWeight","_decimalFraction2","offeredValue","feeValue","constantSumRefusal","curve","EPoolCurve","ConstantSum","_pool$curve","ident","prices","_pool$prices","priceIn","priceOut","decimals","constantSumPriceWeight","isSelectableV4Pool","liquidity","aReserve","bReserve","selectV4QuotePool","pools","version","EContractVersion","V4","reduce","best","quoteConstantSumSwap","outputReserve","estimatedReceived","minReceived","priceImpact","quoteSwap","_ref","assertSwappableSundaeSwapPool","canonicalSuppliedAsset","receivesAssetA","outcome","getSwapOutput","toNumber","constantSumSwapInput","_decimalFraction3","feeNum","feeDen","targetValue","quoteSwapInput","_ref2","desiredOutput","canonicalDesiredOutput","requiredInput","getSwapInput","input","buildSwapOrderTx","_x","_x2","_buildSwapOrderTx","_callee","blaze","params","builderSwapType","canonicalParams","builder","_context","assertSupportedSundaeSwapPool","LIMIT","SundaeSDK","blazeInstance","swap","buildSwapIntentTx","_x3","_x4","_buildSwapIntentTx","_callee2","_context2","ownerAddress","swapIntent","destination","budget","maxPerExecution","configToken","buildSwapToStakeOrderTx","_x5","_x6","_buildSwapToStakeOrderTx","_callee3","_ref3","_stake$owner","sdk","stake","continuation","_context3","BlazeHelper","validateAddressAndDatumAreValid","orderAddresses","DestinationAddress","getNetworkFromProvider","provider","networkName","buildStakeContinuation","owner","realfiOwnerFromSundaeV3OwnerAddress","Core","Address","fromBech32","getNetworkId","NetworkId","Mainnet","realfiDestinationFromSundaeDestination","sundaeV3DestinationAddressFromStepResult","AlternateAddress","_ref4","address","datum","realfiDatum","EDatumType","NONE","HASH","DatumHash","INLINE","InlineDatum","plutusDataFromCbor","unreachable","addressToRealFiDestination"],"sources":["../../../src/sundae/index.ts"],"sourcesContent":["import {\n Core,\n type Blaze,\n type Provider,\n type TxBuilder as BlazeTxBuilder,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\nimport { AssetAmount, type IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport {\n BlazeHelper,\n EContractVersion,\n EDatumType,\n EPoolCurve,\n ESwapType,\n SundaeSDK,\n SundaeUtils,\n type IComposedTx,\n type IPoolData,\n type ISwapConfigArgs,\n type TDestinationAddress,\n type TOrderAddressesArgs,\n type TSupportedNetworks,\n type TSwapType,\n} from \"@sundaeswap/core\";\n\n// Keep the partner construction surface self-contained. Consumers can build\n// swap inputs through `SundaeSwap` without importing our implementation\n// dependencies directly.\nexport { AssetAmount, EContractVersion, EDatumType, EPoolCurve, ESwapType };\nexport type {\n IAssetAmountMetadata,\n IPoolData,\n ISwapConfigArgs,\n TDestinationAddress,\n TSwapType,\n};\n\nimport type { IBuildStakeContinuationParams } from \"../sdk/v1/family.js\";\nimport {\n addressToRealFiDestination,\n plutusDataFromCbor,\n realfiOwnerFromSundaeV3OwnerAddress,\n sundaeV3DestinationAddressFromStepResult,\n} from \"../tx-builder/destination.js\";\nimport type { RealFiDestinationDatum } from \"../tx-builder/destination.js\";\nimport type { StakeContinuationBuilder } from \"../tx-builder/registry.js\";\nimport {\n createPoolDiscovery,\n createRuntimeCuratedPoolAssetsLoader,\n type ISundaePoolDiscoveryOptions,\n type ISundaePoolDiscoverySDK,\n} from \"./discovery.js\";\nimport {\n assertSupportedSundaeSwapPool,\n assertSwappableSundaeSwapPool,\n} from \"./support.js\";\n\nexport type {\n ISundaePoolDiscoveryOptions,\n ISundaePoolDiscoveryParams,\n ISundaePoolDiscoverySDK,\n TSundaePoolDiscoveryScope,\n} from \"./discovery.js\";\nexport {\n assertSupportedSundaeSwapPool,\n assertSwappableSundaeSwapPool,\n isSupportedSundaeSwapVersion,\n isSwappableSundaeSwapVersion,\n SUPPORTED_SUNDAE_SWAP_VERSIONS,\n SWAPPABLE_SUNDAE_SWAP_VERSIONS,\n type TSundaeSwapVersion,\n type TSwappableSundaeSwapVersion,\n} from \"./support.js\";\n\nexport interface ISundaeSwapQuoteParams {\n pool: IPoolData;\n suppliedAsset: AssetAmount;\n /** Decimal fraction: `0.01` is 1%. No application default is applied. */\n slippage: number;\n}\n\nexport interface ISundaeSwapQuote {\n estimatedReceived: AssetAmount;\n minReceived: AssetAmount;\n /** Decimal fraction: `0.01` is 1%. */\n priceImpact: number;\n}\n\nexport interface ISundaeSwapInputQuoteParams {\n pool: IPoolData;\n /** The amount the owner wants to receive. */\n desiredOutput: AssetAmount;\n}\n\nexport interface ISundaeSwapInputQuote {\n /** The smallest supply that still yields `desiredOutput`. */\n requiredInput: AssetAmount;\n}\n\nexport type TSundaeSwapOrder = IComposedTx;\n\nexport type TSundaeOwnedSwapConfigArgs = Omit<\n ISwapConfigArgs,\n \"ownerAddress\" | \"orderAddresses\"\n> & {\n ownerAddress: string;\n /** Final recipient and optional cancellation address; not a Sundae order route. */\n orderAddresses: Omit;\n};\n\nexport interface ISundaeSwapToStakeParams {\n sdk: StakeContinuationBuilder;\n swap: TSundaeOwnedSwapConfigArgs;\n stake?: Omit;\n}\n\n/**\n * A V4 swap intent: an offer and a floor, naming no pool.\n *\n * `referralFee` is deliberately not surfaced — no RealFi path takes one.\n */\nexport interface ISundaeSwapIntentParams {\n /** Bech32 owner: the cancel authority and the default payout destination. */\n ownerAddress: string;\n /** What the owner pays into the swap. */\n offered: AssetAmount;\n /**\n * The floor the fill must clear, and the owner's only guarantee: the surplus\n * above it is unbound on-chain, so the scooper keeps whatever the fill clears\n * it by. Take it from {@link quoteSwap}; never slacken it to help an order\n * fill.\n */\n minReceived: AssetAmount;\n /** Final recipient. Defaults to a fixed destination at `ownerAddress`. */\n destination?: TDestinationAddress | \"Self\";\n /** Lifetime service-fee allocation, in lovelace. */\n budget?: bigint;\n /**\n * Per-scoop fee cap, in lovelace — also the scooper's routing fan-out budget\n * (`maxPerExecution / costPerPool` pools). Too small and the order cannot be\n * routed at all; a fill spanning more of the pair's pools needs more of it.\n */\n maxPerExecution?: bigint;\n /**\n * The OrderConfig settings entry this order fulfills. Resolved from the\n * protocol query when omitted — but that query returns nothing on a\n * deployment whose API does not serve settings yet, so it stays passable.\n */\n configToken?: string;\n}\n\nexport interface ISundaeSwapSDK {\n quoteSwap(params: ISundaeSwapQuoteParams): ISundaeSwapQuote;\n quoteSwapInput(params: ISundaeSwapInputQuoteParams): ISundaeSwapInputQuote;\n buildSwapOrderTx(params: ISwapConfigArgs): Promise;\n /** V4 only: a pool-less intent. See {@link buildSwapIntentTx}. */\n buildSwapIntentTx(params: ISundaeSwapIntentParams): Promise;\n buildSwapToStakeOrderTx(\n params: ISundaeSwapToStakeParams,\n ): Promise;\n}\n\n/** Creates a network-scoped, Blaze-free Sundae pool discovery adapter. */\nexport function forNetwork(\n network: TSupportedNetworks,\n options: ISundaePoolDiscoveryOptions = {},\n): ISundaePoolDiscoverySDK {\n return createPoolDiscovery(\n network,\n options,\n createRuntimeCuratedPoolAssetsLoader(options.partnerConfigUrl),\n );\n}\n\nfunction canonicalizePoolAsset(\n pool: IPoolData,\n asset: AssetAmount,\n): AssetAmount {\n const metadata = [pool.assetA, pool.assetB].find((poolAsset) =>\n SundaeUtils.isAssetIdsEqual(poolAsset.assetId, asset.metadata.assetId),\n );\n\n if (!metadata) {\n throw new Error(\n `Asset is not part of the Sundae swap pool: ${asset.metadata.assetId}`,\n );\n }\n\n return new AssetAmount(asset.amount, metadata);\n}\n\nfunction oppositePoolAsset(\n pool: IPoolData,\n suppliedAsset: AssetAmount,\n): IAssetAmountMetadata {\n return suppliedAsset.metadata.assetId === pool.assetA.assetId\n ? pool.assetB\n : pool.assetA;\n}\n\nfunction canonicalizeSwapType(\n pool: IPoolData,\n suppliedAsset: AssetAmount,\n swapType: TSwapType,\n): TSwapType {\n if (swapType.type === ESwapType.MARKET) {\n return swapType;\n }\n\n const minReceivable = canonicalizePoolAsset(pool, swapType.minReceivable);\n const expectedAsset = oppositePoolAsset(pool, suppliedAsset);\n if (minReceivable.metadata.assetId !== expectedAsset.assetId) {\n throw new Error(\n `Sundae LIMIT minimum must use the pool asset opposite the supplied asset: ${expectedAsset.assetId}`,\n );\n }\n\n return { ...swapType, minReceivable };\n}\n\nfunction assertValidSlippage(slippage: number): void {\n if (!Number.isFinite(slippage) || slippage < 0 || slippage > 1) {\n throw new Error(\n \"Sundae swap slippage must be a finite number between 0 and 1 inclusive\",\n );\n }\n}\n\nfunction decimalFraction(value: number): {\n numerator: bigint;\n denominator: bigint;\n} {\n const [coefficient = \"0\", exponentText] = value\n .toString()\n .toLowerCase()\n .split(\"e\");\n const exponent = Number(exponentText ?? 0);\n const [whole, fraction = \"\"] = coefficient.split(\".\");\n const digits = BigInt(`${whole}${fraction}`);\n const scale = fraction.length - exponent;\n\n return scale > 0\n ? { numerator: digits, denominator: 10n ** BigInt(scale) }\n : { numerator: digits * 10n ** BigInt(-scale), denominator: 1n };\n}\n\nfunction ceilDiv(numerator: bigint, denominator: bigint): bigint {\n return numerator === 0n ? 0n : (numerator + denominator - 1n) / denominator;\n}\n\n/**\n * Applies the caller's decimal slippage to an integer quote without coercing\n * the quote to a JavaScript number. Sundae's helper performs that coercion,\n * which can weaken large minimums after `Number.MAX_SAFE_INTEGER`.\n */\nfunction minReceivableFromSlippage(\n output: bigint,\n receivedAsset: IAssetAmountMetadata,\n slippage: number,\n): AssetAmount {\n const { numerator, denominator } = decimalFraction(slippage);\n const remaining = denominator - numerator;\n const amount = ceilDiv(output * remaining, denominator);\n\n return new AssetAmount(amount, receivedAsset);\n}\n\n/**\n * Why this fee cannot quote a constant-sum swap, or undefined if it can.\n *\n * At a fee of 1 the forward quote settles to nothing and the inverse divides by\n * zero; above 1 the forward quote goes negative. The bound matches\n * `ConstantSumPool.getSwapInput`'s own `[0, 1)` — the forward direction\n * tolerates exactly 1, but a pool taking the whole trade is not one we should be\n * quoting either way.\n */\nfunction feeRefusal(currentFee: number): string | undefined {\n if (!Number.isFinite(currentFee) || currentFee < 0 || currentFee >= 1) {\n return `Sundae constant-sum swap requires a fee in [0, 1); got ${currentFee}`;\n }\n return undefined;\n}\n\n/**\n * The positive-amount rule matches what V3 and Stableswaps already enforce\n * through Sundae's \"Input and reserves must be positive\"; V4 was the only\n * version that quietly returned zero instead.\n */\nfunction assertQuotableConstantSum(amount: bigint, currentFee: number): void {\n if (amount <= 0n) {\n throw new Error(\"Sundae constant-sum swap requires a positive amount\");\n }\n const refusal = feeRefusal(currentFee);\n if (refusal) {\n throw new Error(refusal);\n }\n}\n\n/**\n * Settles a V4 (constant-sum) swap the way Sundae's own engine does:\n *\n * output = offered − floor(offered × fee)\n *\n * That is `ConstantSumPool.getSwapOutput` from `@sundaeswap/math` specialised to\n * equal per-asset prices, not an approximation of it. We cannot call\n * `SundaeUtils.getSwapOutput` for V4 because it dispatches on `pool.curve`, and\n * the Sundae API populates neither `curve` nor `prices` — it would fall through\n * to `Unsupported v4 pool curve: undefined`.\n *\n * The rate comes from `currentFee`'s exact decimal expansion rather than a float\n * product: past `Number.MAX_SAFE_INTEGER` a float drops the low digits and\n * shifts the result, the same hazard {@link minReceivableFromSlippage} avoids.\n *\n * `priceWeight` is the pool's per-asset constant-sum price, which both assets of\n * a supported pool share. It cannot be divided out: the fee is floored at the\n * *scaled* value and the quotient is floored again, so the two roundings only\n * collapse into one at a weight of `1`. At a weight of `2`, offering `1999` at a\n * fee of `0.001` settles to `1997`, where dividing out would say `1998` — and\n * since this figure also becomes `minReceived`, the higher answer would leave a\n * floor the fill can never clear.\n *\n * Deliberately does NOT cap the output at the pool's reserve. `ConstantSumPool`\n * caps, because it prices one specific pool; a V4 order names no pool, so\n * capping here would silently lower `minReceived` — the owner's only guarantee —\n * whenever a large order is quoted against a shallow pool.\n */\nfunction constantSumSwapOutput(\n offered: bigint,\n currentFee: number,\n priceWeight: bigint,\n): bigint {\n assertQuotableConstantSum(offered, currentFee);\n\n const { numerator, denominator } = decimalFraction(currentFee);\n const offeredValue = offered * priceWeight;\n const feeValue = (offeredValue * numerator) / denominator;\n\n return (offeredValue - feeValue) / priceWeight;\n}\n\n/**\n * Quotes a V4 swap. `slippage` is validated by {@link quoteSwap} and then\n * ignored: a constant-sum pool has no price movement to buffer against, and —\n * decisively — the surplus above `min_received` is unbound on-chain, so slack in\n * the floor is not a safety margin, it is directly skimmable by the scooper.\n * `estimatedReceived` and `minReceived` are therefore the same figure.\n *\n * Assumes the pool weights its two assets equally. That precondition is\n * unverifiable from the API, which never serves `prices`; the matching-decimals\n * half of it is checked here, and the pools RealFi trades satisfy both.\n */\n/**\n * Why this pool cannot be priced as an equal-weight constant-sum pool, or\n * undefined if it can. {@link constantSumPriceWeight} throws it and\n * {@link selectV4QuotePool} filters on it, so the two cannot drift apart.\n */\nfunction constantSumRefusal(pool: IPoolData): string | undefined {\n // A V4 pool's swap math follows its invariant module, not its contract\n // version, so \"V4\" alone does not mean constant-sum. Nor does an absent\n // `curve`: that means whoever fetched the pool did not ask for it, which is\n // not evidence of anything. Pool discovery asks; Sundae's own query provider\n // does not.\n if (pool.curve !== EPoolCurve.ConstantSum) {\n return (\n `Sundae V4 pool ${pool.ident} is not known to be ${EPoolCurve.ConstantSum} ` +\n `(curve: ${pool.curve ?? \"unknown\"}). Resolve pools through pool ` +\n `discovery, which supplies the curve.`\n );\n }\n // Same story for `prices`: absent means unasked, not 1:1. Unequal weights need\n // the two-price form of the constant-sum formula and a reserve orientation\n // this quote does not model; equal weights of any magnitude are handled, and\n // carried into the arithmetic rather than divided out.\n if (pool.prices === undefined) {\n return (\n `Sundae V4 pool ${pool.ident} declares no price weights. Resolve pools ` +\n `through pool discovery, which supplies them.`\n );\n }\n const [priceIn, priceOut] = pool.prices;\n if (priceIn !== priceOut) {\n return (\n `Sundae V4 pool ${pool.ident} weights its assets ` +\n `${priceIn}:${priceOut}; only equal weights are priced here`\n );\n }\n if (priceIn <= 0n) {\n return `Sundae V4 pool ${pool.ident} declares a non-positive price weight`;\n }\n // Decimals stand in for the price weights we usually cannot see: a 1:1\n // constant-sum pair settles raw amounts one-for-one only at equal scale.\n if (pool.assetA.decimals !== pool.assetB.decimals) {\n return (\n `Sundae V4 pool ${pool.ident} pairs assets of differing decimals ` +\n `(${pool.assetA.decimals} and ${pool.assetB.decimals}); the 1:1 ` +\n `constant-sum assumption does not hold`\n );\n }\n return undefined;\n}\n\nfunction constantSumPriceWeight(pool: IPoolData): bigint {\n const refusal = constantSumRefusal(pool);\n if (refusal) {\n throw new Error(refusal);\n }\n return pool.prices![0];\n}\n\n/**\n * Stricter than the quote, deliberately: a swap form trades both ways against\n * the one pool it selected, so both reserves must be usable, where a single\n * quote only checks the side it pays out.\n */\nfunction isSelectableV4Pool(pool: IPoolData): boolean {\n return (\n constantSumRefusal(pool) === undefined &&\n feeRefusal(pool.currentFee) === undefined &&\n pool.liquidity.aReserve > 0n &&\n pool.liquidity.bReserve > 0n\n );\n}\n\n/**\n * Picks the V4 pool whose fee should quote a swap, ignoring any non-V4 pool in\n * `pools` and any V4 pool {@link quoteSwap} would refuse. Undefined when none\n * qualifies, which means the caller should fall back to another version.\n *\n * A V4 order names no pool, so this routes nothing — it only decides whose fee\n * sets `min_received`. Cheapest is both the best rate and the safer pick: the\n * floor is the owner's only guarantee, and a pool overstating its fee would drag\n * it down into territory a scooper can fill cheaply and pocket the difference.\n * A hostile pool can therefore only win by genuinely being the cheapest.\n *\n * Selection lives here rather than in the caller so that the eligibility rules\n * have one home. `SundaeUtils.getBestPoolBySwapOutcome` is the equivalent for\n * the other versions and cannot be used: it calls `getSwapOutput`, which throws\n * on a V4 pool.\n */\nexport function selectV4QuotePool(pools: IPoolData[]): IPoolData | undefined {\n return pools\n .filter(\n (pool) =>\n pool.version === EContractVersion.V4 && isSelectableV4Pool(pool),\n )\n .reduce<\n IPoolData | undefined\n >((best, pool) => (best === undefined || pool.currentFee < best.currentFee ? pool : best), undefined);\n}\n\nfunction quoteConstantSumSwap(\n pool: IPoolData,\n suppliedAsset: AssetAmount,\n receivedAsset: IAssetAmountMetadata,\n outputReserve: bigint,\n): ISundaeSwapQuote {\n const priceIn = constantSumPriceWeight(pool);\n if (outputReserve <= 0n) {\n throw new Error(\n `Sundae V4 pool ${pool.ident} holds no ${receivedAsset.assetId} to swap into`,\n );\n }\n\n const output = constantSumSwapOutput(\n suppliedAsset.amount,\n pool.currentFee,\n priceIn,\n );\n\n return {\n estimatedReceived: new AssetAmount(output, receivedAsset),\n minReceived: new AssetAmount(output, receivedAsset),\n priceImpact: 0,\n };\n}\n\n/**\n * Quotes a market swap for any swappable pool version. Callers do not branch on\n * `pool.version`; this does.\n *\n * V3 / Stableswaps use Sundae's own pool math with the caller's slippage applied\n * at bigint precision. V4 is constant-sum — see {@link quoteConstantSumSwap} for\n * why its quote is exact, why `priceImpact` is `0`, and why `slippage` is\n * ignored there.\n */\nexport function quoteSwap({\n pool,\n suppliedAsset,\n slippage,\n}: ISundaeSwapQuoteParams): ISundaeSwapQuote {\n assertSwappableSundaeSwapPool(pool);\n assertValidSlippage(slippage);\n\n const canonicalSuppliedAsset = canonicalizePoolAsset(pool, suppliedAsset);\n const receivesAssetA = SundaeUtils.isAssetIdsEqual(\n pool.assetB.assetId,\n canonicalSuppliedAsset.metadata.assetId,\n );\n const receivedAsset = receivesAssetA ? pool.assetA : pool.assetB;\n\n if (pool.version === EContractVersion.V4) {\n return quoteConstantSumSwap(\n pool,\n canonicalSuppliedAsset,\n receivedAsset,\n receivesAssetA ? pool.liquidity.aReserve : pool.liquidity.bReserve,\n );\n }\n\n const outcome = SundaeUtils.getSwapOutput(pool, canonicalSuppliedAsset);\n\n return {\n estimatedReceived: new AssetAmount(outcome.output, receivedAsset),\n minReceived: minReceivableFromSlippage(\n outcome.output,\n receivedAsset,\n slippage,\n ),\n priceImpact: outcome.priceImpact.toNumber(),\n };\n}\n\n/**\n * The smallest constant-sum supply that still yields `output`.\n *\n * Mirrors `ConstantSumPool.getSwapInput`. Not a plain gross-up: the forward\n * settlement is `ceil(input·price·(feeDen−feeNum)/feeDen)`, and that clears\n * `output·price` exactly when the numerator reaches `feeDen·(target−1)+1`, so\n * the `−1n` is what keeps the answer minimal rather than a unit high.\n */\nfunction constantSumSwapInput(\n output: bigint,\n currentFee: number,\n priceWeight: bigint,\n): bigint {\n // Reasserted here even though `quoteSwapInput` checks the amount: this is\n // where a fee of 1 would divide by zero, and the raw error would name the\n // division rather than the fee that caused it.\n assertQuotableConstantSum(output, currentFee);\n\n const { numerator: feeNum, denominator: feeDen } =\n decimalFraction(currentFee);\n const targetValue = output * priceWeight;\n const numerator = feeDen * (targetValue - 1n) + 1n;\n const denominator = (feeDen - feeNum) * priceWeight;\n\n return (numerator + denominator - 1n) / denominator;\n}\n\n/**\n * Quotes the supply needed to receive `desiredOutput`, for any swappable pool\n * version. The inverse of {@link quoteSwap}, and the direction a swap form needs\n * when the user edits the receive field rather than the pay field.\n */\nexport function quoteSwapInput({\n pool,\n desiredOutput,\n}: ISundaeSwapInputQuoteParams): ISundaeSwapInputQuote {\n assertSwappableSundaeSwapPool(pool);\n\n const canonicalDesiredOutput = canonicalizePoolAsset(pool, desiredOutput);\n const suppliedAsset = oppositePoolAsset(pool, canonicalDesiredOutput);\n\n if (pool.version === EContractVersion.V4) {\n if (canonicalDesiredOutput.amount <= 0n) {\n throw new Error(\"Sundae V4 swap requires a positive desired output\");\n }\n\n return {\n requiredInput: new AssetAmount(\n constantSumSwapInput(\n canonicalDesiredOutput.amount,\n pool.currentFee,\n constantSumPriceWeight(pool),\n ),\n suppliedAsset,\n ),\n };\n }\n\n return {\n requiredInput: new AssetAmount(\n SundaeUtils.getSwapInput(pool, canonicalDesiredOutput).input,\n suppliedAsset,\n ),\n };\n}\n\n/**\n * Builds a standalone Sundae swap order against a specific pool.\n *\n * V4 is quotable but not buildable here: its order carries no pool reference at\n * all, so it cannot share this pool-taking argument shape. Use\n * {@link buildSwapIntentTx}.\n */\nexport async function buildSwapOrderTx(\n blaze: Blaze,\n params: ISwapConfigArgs,\n): Promise {\n if (params.pool.version === EContractVersion.V4) {\n throw new Error(\n \"Sundae V4 swaps are placed as pool-less intents; use buildSwapIntentTx\",\n );\n }\n assertSupportedSundaeSwapPool(params.pool);\n if (params.swapType.type === ESwapType.MARKET) {\n assertValidSlippage(params.swapType.slippage);\n }\n\n const suppliedAsset = canonicalizePoolAsset(\n params.pool,\n params.suppliedAsset,\n );\n const swapType = canonicalizeSwapType(\n params.pool,\n suppliedAsset,\n params.swapType,\n );\n const builderSwapType: TSwapType =\n swapType.type === ESwapType.MARKET\n ? {\n type: ESwapType.LIMIT,\n minReceivable: minReceivableFromSlippage(\n SundaeUtils.getSwapOutput(params.pool, suppliedAsset).output,\n oppositePoolAsset(params.pool, suppliedAsset),\n swapType.slippage,\n ),\n }\n : swapType;\n const canonicalParams: ISwapConfigArgs = {\n ...params,\n suppliedAsset,\n // Convert MARKET inputs to the equivalent LIMIT input ourselves so the\n // Sundae builder cannot repeat its bigint-unsafe slippage calculation.\n swapType: builderSwapType,\n };\n\n const builder = SundaeSDK.new({ blazeInstance: blaze }).builder(\n params.pool.version,\n );\n return builder.swap(canonicalParams);\n}\n\n/**\n * Places a Sundae V4 swap.\n *\n * A V4 order is an intent: an offer and a floor, naming no pool. The scooper\n * decides how to fill it — one pool, a split across the pair's pools, or a\n * multi-hop chain — and `minReceived` is what bounds the result.\n *\n * Goes through `swapIntent` rather than `swap`: `TxBuilderV4.swap` throws by\n * design, because a swap order carries the route constraint, which is outside\n * the launch's audited surface.\n */\nexport async function buildSwapIntentTx(\n blaze: Blaze,\n params: ISundaeSwapIntentParams,\n): Promise {\n if (!params.ownerAddress) {\n throw new Error(\n \"Sundae V4 swap requires ownerAddress so the order remains cancellable\",\n );\n }\n if (params.offered.amount <= 0n) {\n throw new Error(\"Sundae V4 swap requires a positive offered amount\");\n }\n if (params.minReceived.amount <= 0n) {\n throw new Error(\"Sundae V4 swap requires a positive minReceived amount\");\n }\n if (\n SundaeUtils.isAssetIdsEqual(\n params.offered.metadata.assetId,\n params.minReceived.metadata.assetId,\n )\n ) {\n throw new Error(\n \"Sundae V4 swap requires the offered and received assets to differ\",\n );\n }\n\n const builder = SundaeSDK.new({ blazeInstance: blaze }).builder(\n EContractVersion.V4,\n );\n\n // Each optional is forwarded only when supplied, so Sundae's own defaults\n // apply otherwise.\n return builder.swapIntent({\n ownerAddress: params.ownerAddress,\n offered: params.offered,\n minReceived: params.minReceived,\n ...(params.destination === undefined\n ? {}\n : { destination: params.destination }),\n ...(params.budget === undefined ? {} : { budget: params.budget }),\n ...(params.maxPerExecution === undefined\n ? {}\n : { maxPerExecution: params.maxPerExecution }),\n ...(params.configToken === undefined\n ? {}\n : { configToken: params.configToken }),\n });\n}\n\n/**\n * Builds a Sundae V3 or Stableswaps order whose proceeds continue into a\n * version-aware RealFi stake order. The caller's original Sundae destination\n * becomes the RealFi destination, so both sUSDr and any USDr above Sundae's\n * guaranteed minimum continue to the intended recipient.\n */\nexport async function buildSwapToStakeOrderTx(\n blaze: Blaze,\n { sdk, swap, stake }: ISundaeSwapToStakeParams,\n): Promise {\n assertSupportedSundaeSwapPool(swap.pool);\n if (!swap.ownerAddress) {\n throw new Error(\n \"Sundae swap-to-stake requires ownerAddress so the swap remains cancellable\",\n );\n }\n\n // The Sundae builder validates the continuation address that replaces this\n // destination. Validate the caller's original final destination first so a\n // cross-network address or a script address without a datum cannot be hidden\n // by composition and later receive the sUSDr/excess output incorrectly.\n BlazeHelper.validateAddressAndDatumAreValid({\n ...swap.orderAddresses.DestinationAddress,\n network: SundaeUtils.getNetworkFromProvider(blaze.provider.networkName),\n });\n\n const suppliedAsset = canonicalizePoolAsset(swap.pool, swap.suppliedAsset);\n const swapType = canonicalizeSwapType(\n swap.pool,\n suppliedAsset,\n swap.swapType,\n );\n const minReceived =\n swapType.type === ESwapType.LIMIT\n ? swapType.minReceivable\n : quoteSwap({\n pool: swap.pool,\n suppliedAsset,\n slippage: swapType.slippage,\n }).minReceived;\n\n const continuation = await sdk.buildStakeContinuation({\n ...stake,\n owner:\n stake?.owner ??\n realfiOwnerFromSundaeV3OwnerAddress(\n Core.Address.fromBech32(swap.ownerAddress).getNetworkId() ===\n Core.NetworkId.Mainnet\n ? \"mainnet\"\n : \"preview\",\n swap.ownerAddress,\n ),\n swap: { minReceived },\n destination: realfiDestinationFromSundaeDestination(\n swap.orderAddresses.DestinationAddress,\n ),\n });\n\n return buildSwapOrderTx(blaze, {\n ...swap,\n orderAddresses: {\n DestinationAddress:\n sundaeV3DestinationAddressFromStepResult(continuation),\n ...(swap.orderAddresses.AlternateAddress\n ? { AlternateAddress: swap.orderAddresses.AlternateAddress }\n : {}),\n },\n });\n}\n\n/** Creates a Blaze-scoped partner swap adapter. */\nexport function create(blaze: Blaze): ISundaeSwapSDK {\n return {\n quoteSwap,\n quoteSwapInput,\n buildSwapOrderTx: (params) => buildSwapOrderTx(blaze, params),\n buildSwapIntentTx: (params) => buildSwapIntentTx(blaze, params),\n buildSwapToStakeOrderTx: (params) => buildSwapToStakeOrderTx(blaze, params),\n };\n}\n\nfunction realfiDestinationFromSundaeDestination({\n address,\n datum,\n}: TDestinationAddress) {\n const realfiDatum: RealFiDestinationDatum = (() => {\n switch (datum.type) {\n case EDatumType.NONE:\n return \"NoDatum\";\n case EDatumType.HASH:\n return { DatumHash: [datum.value] };\n case EDatumType.INLINE:\n return { InlineDatum: [plutusDataFromCbor(datum.value)] };\n default: {\n const unreachable: never = datum;\n return unreachable;\n }\n }\n })();\n\n return addressToRealFiDestination(\n Core.Address.fromBech32(address),\n realfiDatum,\n );\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sundae/support.js b/modules/realfi-partner-sdk/dist/cjs/sundae/support.js new file mode 100644 index 0000000000..00cdeac3aa --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sundae/support.js @@ -0,0 +1,90 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.SWAPPABLE_SUNDAE_SWAP_VERSIONS = exports.SUPPORTED_SUNDAE_SWAP_VERSIONS = void 0; +exports.assertSupportedSundaeSwapPool = assertSupportedSundaeSwapPool; +exports.assertSwappableSundaeSwapPool = assertSwappableSundaeSwapPool; +exports.isSupportedSundaeSwapVersion = isSupportedSundaeSwapVersion; +exports.isSwappableSundaeSwapVersion = isSwappableSundaeSwapVersion; +var _core = require("@sundaeswap/core"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/** + * What the SDK can do with a pool, by Sundae contract version. + * + * Deliberately a `Record` over every version: a new Sundae version will not + * compile until someone answers both questions for it, rather than silently + * defaulting to unsupported because nobody remembered a second list. + */ +var POOL_SUPPORT = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, _core.EContractVersion.V1, { + swap: false, + buildAgainstPool: false +}), _core.EContractVersion.V3, { + swap: true, + buildAgainstPool: true +}), _core.EContractVersion.NftCheck, { + swap: false, + buildAgainstPool: false +}), _core.EContractVersion.Condition, { + swap: false, + buildAgainstPool: false +}), _core.EContractVersion.Stableswaps, { + swap: true, + buildAgainstPool: true +}), _core.EContractVersion.V4, { + swap: true, + buildAgainstPool: false +}); +function versionsWhere(capability) { + return Object.keys(POOL_SUPPORT).filter(function (version) { + return POOL_SUPPORT[version][capability]; + }); +} + +/** + * `pool.version` comes off the Sundae API, so a version absent from the table + * reads as unsupported rather than throwing. Fail closed. + */ +function supports(version, capability) { + var _POOL_SUPPORT$version; + return ((_POOL_SUPPORT$version = POOL_SUPPORT[version]) === null || _POOL_SUPPORT$version === void 0 ? void 0 : _POOL_SUPPORT$version[capability]) === true; +} + +/** Versions whose order names the pool. See {@link isSupportedSundaeSwapVersion}. */ +var SUPPORTED_SUNDAE_SWAP_VERSIONS = exports.SUPPORTED_SUNDAE_SWAP_VERSIONS = versionsWhere("buildAgainstPool"); +/** + * Whether the pool-taking `buildSwapOrderTx` accepts this version. Narrower than + * {@link isSwappableSundaeSwapVersion} — a V4 pool is swappable but its order + * names no pool, so it is not buildable *against a pool*. + */ +function isSupportedSundaeSwapVersion(version) { + return supports(version, "buildAgainstPool"); +} +function assertSupportedSundaeSwapPool(pool) { + if (!isSupportedSundaeSwapVersion(pool.version)) { + throw new Error("Unsupported Sundae swap pool version: ".concat(pool.version)); + } +} + +/** Versions the SDK can quote and place a swap for. */ +var SWAPPABLE_SUNDAE_SWAP_VERSIONS = exports.SWAPPABLE_SUNDAE_SWAP_VERSIONS = versionsWhere("swap"); +/** Whether the SDK can quote this version and place a swap for it. */ +function isSwappableSundaeSwapVersion(version) { + return supports(version, "swap"); +} + +/** + * Throws the same message as {@link assertSupportedSundaeSwapPool} on purpose: + * callers and tests treat "Unsupported Sundae swap pool version: X" as the one + * version-rejection string. + */ +function assertSwappableSundaeSwapPool(pool) { + if (!isSwappableSundaeSwapVersion(pool.version)) { + throw new Error("Unsupported Sundae swap pool version: ".concat(pool.version)); + } +} +//# sourceMappingURL=support.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sundae/support.js.map b/modules/realfi-partner-sdk/dist/cjs/sundae/support.js.map new file mode 100644 index 0000000000..f74545ea50 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sundae/support.js.map @@ -0,0 +1 @@ +{"version":3,"file":"support.js","names":["_core","require","_typeof","o","Symbol","iterator","constructor","prototype","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","toPrimitive","call","TypeError","String","Number","POOL_SUPPORT","EContractVersion","V1","swap","buildAgainstPool","V3","NftCheck","Condition","Stableswaps","V4","versionsWhere","capability","keys","filter","version","supports","_POOL_SUPPORT$version","SUPPORTED_SUNDAE_SWAP_VERSIONS","exports","isSupportedSundaeSwapVersion","assertSupportedSundaeSwapPool","pool","Error","concat","SWAPPABLE_SUNDAE_SWAP_VERSIONS","isSwappableSundaeSwapVersion","assertSwappableSundaeSwapPool"],"sources":["../../../src/sundae/support.ts"],"sourcesContent":["import { EContractVersion, type IPoolData } from \"@sundaeswap/core\";\n\ninterface IPoolSupport {\n /** We can quote this pool and place a swap for it. */\n swap: boolean;\n /**\n * The order names the pool, so the pool-taking `buildSwapOrderTx` accepts it.\n * A V4 order is an intent that names no pool — the scooper chooses — so a V4\n * pool is swappable without this.\n */\n buildAgainstPool: boolean;\n}\n\n/**\n * What the SDK can do with a pool, by Sundae contract version.\n *\n * Deliberately a `Record` over every version: a new Sundae version will not\n * compile until someone answers both questions for it, rather than silently\n * defaulting to unsupported because nobody remembered a second list.\n */\nconst POOL_SUPPORT = {\n [EContractVersion.V1]: { swap: false, buildAgainstPool: false },\n [EContractVersion.V3]: { swap: true, buildAgainstPool: true },\n [EContractVersion.NftCheck]: { swap: false, buildAgainstPool: false },\n [EContractVersion.Condition]: { swap: false, buildAgainstPool: false },\n [EContractVersion.Stableswaps]: { swap: true, buildAgainstPool: true },\n [EContractVersion.V4]: { swap: true, buildAgainstPool: false },\n} as const satisfies Record;\n\ntype TVersionsWhere = {\n [V in EContractVersion]: (typeof POOL_SUPPORT)[V][K] extends true ? V : never;\n}[EContractVersion];\n\nfunction versionsWhere(\n capability: K,\n): readonly TVersionsWhere[] {\n return (Object.keys(POOL_SUPPORT) as EContractVersion[]).filter(\n (version): version is TVersionsWhere =>\n POOL_SUPPORT[version][capability],\n );\n}\n\n/**\n * `pool.version` comes off the Sundae API, so a version absent from the table\n * reads as unsupported rather than throwing. Fail closed.\n */\nfunction supports(\n version: EContractVersion,\n capability: keyof IPoolSupport,\n): boolean {\n return POOL_SUPPORT[version]?.[capability] === true;\n}\n\n/** Versions whose order names the pool. See {@link isSupportedSundaeSwapVersion}. */\nexport const SUPPORTED_SUNDAE_SWAP_VERSIONS = versionsWhere(\"buildAgainstPool\");\n\nexport type TSundaeSwapVersion = TVersionsWhere<\"buildAgainstPool\">;\n\n/**\n * Whether the pool-taking `buildSwapOrderTx` accepts this version. Narrower than\n * {@link isSwappableSundaeSwapVersion} — a V4 pool is swappable but its order\n * names no pool, so it is not buildable *against a pool*.\n */\nexport function isSupportedSundaeSwapVersion(\n version: EContractVersion,\n): version is TSundaeSwapVersion {\n return supports(version, \"buildAgainstPool\");\n}\n\nexport function assertSupportedSundaeSwapPool(\n pool: IPoolData,\n): asserts pool is IPoolData & { version: TSundaeSwapVersion } {\n if (!isSupportedSundaeSwapVersion(pool.version)) {\n throw new Error(`Unsupported Sundae swap pool version: ${pool.version}`);\n }\n}\n\n/** Versions the SDK can quote and place a swap for. */\nexport const SWAPPABLE_SUNDAE_SWAP_VERSIONS = versionsWhere(\"swap\");\n\nexport type TSwappableSundaeSwapVersion = TVersionsWhere<\"swap\">;\n\n/** Whether the SDK can quote this version and place a swap for it. */\nexport function isSwappableSundaeSwapVersion(\n version: EContractVersion,\n): version is TSwappableSundaeSwapVersion {\n return supports(version, \"swap\");\n}\n\n/**\n * Throws the same message as {@link assertSupportedSundaeSwapPool} on purpose:\n * callers and tests treat \"Unsupported Sundae swap pool version: X\" as the one\n * version-rejection string.\n */\nexport function assertSwappableSundaeSwapPool(\n pool: IPoolData,\n): asserts pool is IPoolData & { version: TSwappableSundaeSwapVersion } {\n if (!isSwappableSundaeSwapVersion(pool.version)) {\n throw new Error(`Unsupported Sundae swap pool version: ${pool.version}`);\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sundae/v4-curve.js b/modules/realfi-partner-sdk/dist/cjs/sundae/v4-curve.js new file mode 100644 index 0000000000..579016994a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sundae/v4-curve.js @@ -0,0 +1,154 @@ +"use strict"; + +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.withV4CurveData = withV4CurveData; +var _core = require("@sundaeswap/core"); +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); } +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } +function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); } +function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); } +function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +/** + * Fills in the two v4 fields Sundae's own pool query does not select. + * + * `QueryProviderSundaeSwap.findPoolDataByAssetId` builds its query inside + * `@sundaeswap/core`, and that query asks for neither `modules` nor `prices`. + * So every v4 pool it returns arrives with `curve` and `prices` undefined, and + * anything downstream has to assume the curve rather than check it. + * + * This is a stopgap for that gap, deliberately shaped to retire itself: it only + * queries for pools that are *missing* the fields. The day Sundae selects them + * upstream, the candidate list is empty, the extra request never fires, and + * deleting this module is pure cleanup rather than a behaviour change. + */ + +var POOL_CURVE_QUERY = "query poolCurves($asset: ID!) {\n pools { byAsset(asset: $asset) { id modules { identifier } prices } }\n}"; +var CURVES = [_core.EPoolCurve.ConstantProduct, _core.EPoolCurve.ConstantSum, _core.EPoolCurve.ConcentratedLiquidity]; + +/** + * The invariant module identifiers are exactly the `EPoolCurve` values, so match + * on those rather than on the `kind` discriminator — one less shape to depend on. + */ +function curveOf(row) { + return CURVES.find(function (curve) { + var _row$modules; + return ((_row$modules = row.modules) !== null && _row$modules !== void 0 ? _row$modules : []).some(function (module) { + return module.identifier === curve; + }); + }); +} + +/** + * `IPoolData.prices` is a two-tuple aligned to `[assetA, assetB]`, but a v4 pool + * can hold up to 16 assets and the API returns a weight for each. Two cases are + * safe to map: + * + * - every weight is equal, so whichever two `assetA`/`assetB` project to are + * equal as well — this is what RealFi's stablecoin pools look like, including + * the three-asset ones; + * - exactly two weights, which align with the pair directly. + * + * Anything else is left undefined rather than guessed at. A consumer that needs + * the weights then refuses the pool, which is the right answer for a pool we + * cannot describe. + */ +function pricesOf(row) { + var _row$prices; + var raw = (_row$prices = row.prices) !== null && _row$prices !== void 0 ? _row$prices : []; + if (raw.length === 0) return undefined; + var weights = raw.map(function (price) { + return BigInt(price); + }); + if (new Set(weights).size === 1) { + return [weights[0], weights[0]]; + } + return weights.length === 2 ? [weights[0], weights[1]] : undefined; +} +function needsCurveData(pool) { + return pool.version === _core.EContractVersion.V4 && (pool.curve === undefined || pool.prices === undefined); +} + +/** + * Returns `pools` with `curve`/`prices` filled in for the v4 pools that lacked + * them. A pool the query cannot describe is returned untouched; a failed request + * leaves every pool untouched, so discovery degrades to today's behaviour rather + * than failing outright. + */ +function withV4CurveData(_x, _x2, _x3) { + return _withV4CurveData.apply(this, arguments); +} +function _withV4CurveData() { + _withV4CurveData = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(pools, assetId, endpoint) { + var rows, _payload$data$pools$b, _payload$data, response, payload, byIdent, _t; + return _regenerator().w(function (_context) { + while (1) switch (_context.p = _context.n) { + case 0: + if (pools.some(needsCurveData)) { + _context.n = 1; + break; + } + return _context.a(2, _toConsumableArray(pools)); + case 1: + _context.p = 1; + _context.n = 2; + return fetch(endpoint, { + body: JSON.stringify({ + query: POOL_CURVE_QUERY, + variables: { + asset: assetId + } + }), + headers: { + "Content-Type": "application/json" + }, + method: "POST" + }); + case 2: + response = _context.v; + _context.n = 3; + return response.json(); + case 3: + payload = _context.v; + rows = (_payload$data$pools$b = (_payload$data = payload.data) === null || _payload$data === void 0 || (_payload$data = _payload$data.pools) === null || _payload$data === void 0 ? void 0 : _payload$data.byAsset) !== null && _payload$data$pools$b !== void 0 ? _payload$data$pools$b : []; + _context.n = 5; + break; + case 4: + _context.p = 4; + _t = _context.v; + return _context.a(2, _toConsumableArray(pools)); + case 5: + byIdent = new Map(rows.map(function (row) { + return [row.id, row]; + })); + return _context.a(2, pools.map(function (pool) { + var _pool$curve, _pool$prices; + if (!needsCurveData(pool)) return pool; + var row = byIdent.get(pool.ident); + if (!row) return pool; + var curve = (_pool$curve = pool.curve) !== null && _pool$curve !== void 0 ? _pool$curve : curveOf(row); + var prices = (_pool$prices = pool.prices) !== null && _pool$prices !== void 0 ? _pool$prices : pricesOf(row); + return _objectSpread(_objectSpread(_objectSpread({}, pool), curve === undefined ? {} : { + curve: curve + }), prices === undefined ? {} : { + prices: prices + }); + })); + } + }, _callee, null, [[1, 4]]); + })); + return _withV4CurveData.apply(this, arguments); +} +//# sourceMappingURL=v4-curve.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/sundae/v4-curve.js.map b/modules/realfi-partner-sdk/dist/cjs/sundae/v4-curve.js.map new file mode 100644 index 0000000000..00094c37c4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/sundae/v4-curve.js.map @@ -0,0 +1 @@ +{"version":3,"file":"v4-curve.js","names":["_core","require","_regenerator","e","t","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","ownKeys","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","_typeof","toPrimitive","String","Number","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","isArray","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","_next","_throw","POOL_CURVE_QUERY","CURVES","EPoolCurve","ConstantProduct","ConstantSum","ConcentratedLiquidity","curveOf","row","find","curve","_row$modules","modules","some","module","identifier","pricesOf","_row$prices","raw","prices","undefined","weights","map","price","BigInt","Set","size","needsCurveData","pool","version","EContractVersion","V4","withV4CurveData","_x","_x2","_x3","_withV4CurveData","_callee","pools","assetId","endpoint","rows","_payload$data$pools$b","_payload$data","response","payload","byIdent","_t","_context","fetch","body","JSON","stringify","query","variables","asset","headers","method","json","data","byAsset","Map","id","_pool$curve","_pool$prices","get","ident"],"sources":["../../../src/sundae/v4-curve.ts"],"sourcesContent":["import { EContractVersion, EPoolCurve, type IPoolData } from \"@sundaeswap/core\";\n\n/**\n * Fills in the two v4 fields Sundae's own pool query does not select.\n *\n * `QueryProviderSundaeSwap.findPoolDataByAssetId` builds its query inside\n * `@sundaeswap/core`, and that query asks for neither `modules` nor `prices`.\n * So every v4 pool it returns arrives with `curve` and `prices` undefined, and\n * anything downstream has to assume the curve rather than check it.\n *\n * This is a stopgap for that gap, deliberately shaped to retire itself: it only\n * queries for pools that are *missing* the fields. The day Sundae selects them\n * upstream, the candidate list is empty, the extra request never fires, and\n * deleting this module is pure cleanup rather than a behaviour change.\n */\n\ninterface IPoolCurveRow {\n id: string;\n modules?: { identifier: string }[] | null;\n prices?: (string | number)[] | null;\n}\n\nconst POOL_CURVE_QUERY = `query poolCurves($asset: ID!) {\n pools { byAsset(asset: $asset) { id modules { identifier } prices } }\n}`;\n\nconst CURVES: readonly EPoolCurve[] = [\n EPoolCurve.ConstantProduct,\n EPoolCurve.ConstantSum,\n EPoolCurve.ConcentratedLiquidity,\n];\n\n/**\n * The invariant module identifiers are exactly the `EPoolCurve` values, so match\n * on those rather than on the `kind` discriminator — one less shape to depend on.\n */\nfunction curveOf(row: IPoolCurveRow): EPoolCurve | undefined {\n return CURVES.find((curve) =>\n (row.modules ?? []).some((module) => module.identifier === curve),\n );\n}\n\n/**\n * `IPoolData.prices` is a two-tuple aligned to `[assetA, assetB]`, but a v4 pool\n * can hold up to 16 assets and the API returns a weight for each. Two cases are\n * safe to map:\n *\n * - every weight is equal, so whichever two `assetA`/`assetB` project to are\n * equal as well — this is what RealFi's stablecoin pools look like, including\n * the three-asset ones;\n * - exactly two weights, which align with the pair directly.\n *\n * Anything else is left undefined rather than guessed at. A consumer that needs\n * the weights then refuses the pool, which is the right answer for a pool we\n * cannot describe.\n */\nfunction pricesOf(row: IPoolCurveRow): [bigint, bigint] | undefined {\n const raw = row.prices ?? [];\n if (raw.length === 0) return undefined;\n\n const weights = raw.map((price) => BigInt(price));\n if (new Set(weights).size === 1) {\n return [weights[0]!, weights[0]!];\n }\n return weights.length === 2 ? [weights[0]!, weights[1]!] : undefined;\n}\n\nfunction needsCurveData(pool: IPoolData): boolean {\n return (\n pool.version === EContractVersion.V4 &&\n (pool.curve === undefined || pool.prices === undefined)\n );\n}\n\n/**\n * Returns `pools` with `curve`/`prices` filled in for the v4 pools that lacked\n * them. A pool the query cannot describe is returned untouched; a failed request\n * leaves every pool untouched, so discovery degrades to today's behaviour rather\n * than failing outright.\n */\nexport async function withV4CurveData(\n pools: readonly IPoolData[],\n assetId: string,\n endpoint: string,\n): Promise {\n if (!pools.some(needsCurveData)) {\n return [...pools];\n }\n\n let rows: IPoolCurveRow[];\n try {\n const response = await fetch(endpoint, {\n body: JSON.stringify({\n query: POOL_CURVE_QUERY,\n variables: { asset: assetId },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n method: \"POST\",\n });\n const payload = (await response.json()) as {\n data?: { pools?: { byAsset?: IPoolCurveRow[] } };\n };\n rows = payload.data?.pools?.byAsset ?? [];\n } catch {\n return [...pools];\n }\n\n const byIdent = new Map(rows.map((row) => [row.id, row]));\n\n return pools.map((pool) => {\n if (!needsCurveData(pool)) return pool;\n\n const row = byIdent.get(pool.ident);\n if (!row) return pool;\n\n const curve = pool.curve ?? curveOf(row);\n const prices = pool.prices ?? pricesOf(row);\n\n return {\n ...pool,\n ...(curve === undefined ? {} : { curve }),\n ...(prices === undefined ? {} : { prices }),\n };\n });\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/tx-builder/destination.js b/modules/realfi-partner-sdk/dist/cjs/tx-builder/destination.js new file mode 100644 index 0000000000..73eb3a50fa --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/tx-builder/destination.js @@ -0,0 +1,177 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.addressToRealFiDestination = addressToRealFiDestination; +exports.inlineDatumFromStepResult = inlineDatumFromStepResult; +exports.plutusDataFromCbor = plutusDataFromCbor; +exports.realfiDestinationDatumFromStepResult = realfiDestinationDatumFromStepResult; +exports.realfiDestinationFromStepResult = realfiDestinationFromStepResult; +exports.realfiDestinationToAddress = realfiDestinationToAddress; +exports.realfiOwnerFromSundaeV3OwnerAddress = realfiOwnerFromSundaeV3OwnerAddress; +exports.sundaeV3DestinationAddressFromStepResult = sundaeV3DestinationAddressFromStepResult; +exports.sundaeV3DestinationDatumFromStepResult = sundaeV3DestinationDatumFromStepResult; +exports.sundaeV3DestinationFromStepResult = sundaeV3DestinationFromStepResult; +var _core = require("@blaze-cardano/core"); +var _sdk = require("@blaze-cardano/sdk"); +var _core2 = require("@sundaeswap/core"); +/* eslint-disable @typescript-eslint/naming-convention */ + +/** + * Intermediate output produced by one flow step and consumed by the previous + * flow step as its continuation destination. + */ + +/** + * Converts a step result's optional inline datum into the RealFi destination + * datum shape. + */ +function realfiDestinationDatumFromStepResult(stepResult) { + return stepResult.datum ? { + InlineDatum: [stepResult.datum] + } : "NoDatum"; +} + +/** + * Builds a RealFi destination that points to a step result's address and datum. + */ +function realfiDestinationFromStepResult(stepResult) { + return addressToRealFiDestination(stepResult.address, realfiDestinationDatumFromStepResult(stepResult)); +} + +/** + * Converts a Cardano address plus optional datum into the generated RealFi + * destination type. + */ +function addressToRealFiDestination(address) { + var datum = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "NoDatum"; + var props = address.getProps(); + var paymentPart = props.paymentPart; + if (!paymentPart) { + throw new Error("Address must have a payment part"); + } + var paymentCredential = paymentPart.type === _sdk.Core.CredentialType.KeyHash ? { + VerificationKey: [paymentPart.hash] + } : { + Script: [paymentPart.hash] + }; + var stakeCredential = undefined; + if (props.delegationPart) { + var stakeCred = props.delegationPart.type === _sdk.Core.CredentialType.KeyHash ? { + VerificationKey: [props.delegationPart.hash] + } : { + Script: [props.delegationPart.hash] + }; + stakeCredential = { + Inline: [stakeCred] + }; + } + return { + address: { + payment_credential: paymentCredential, + stake_credential: stakeCredential + }, + datum: datum + }; +} + +/** + * Derives a RealFi owner from the exact cancellation authority Sundae V3 + * assigns to an owner address. Sundae prefers a base address's staking hash + * over its payment hash, while deciding Signature vs Script from the address's + * payment credential, so this must use Sundae's builder rather than reimplement + * those semantics from the Blaze address parts. + */ +function realfiOwnerFromSundaeV3OwnerAddress(network, ownerAddress) { + var sundaeOwner = new _core2.DatumBuilderV3(network).buildOwnerDatum(ownerAddress).schema; + if ("Signature" in sundaeOwner) { + return { + Signature: { + key_hash: sundaeOwner.Signature.keyHash + } + }; + } + if ("Script" in sundaeOwner) { + return { + Script: { + script_hash: sundaeOwner.Script.scriptHash + } + }; + } + throw new Error("Unsupported Sundae V3 owner datum derived from address"); +} + +/** + * Reconstructs a Cardano address from a generated RealFi destination address. + */ +function realfiDestinationToAddress(network, destination) { + var paymentCred = destination.address.payment_credential; + var stakingCred = destination.address.stake_credential; + var paymentCredCore = "VerificationKey" in paymentCred ? keyCredential(paymentCred.VerificationKey[0]) : scriptCredential(paymentCred.Script[0]); + var stakingCredCore = undefined; + if (stakingCred && "Inline" in stakingCred) { + var inlineCredential = stakingCred.Inline[0]; + stakingCredCore = "VerificationKey" in inlineCredential ? keyCredential(inlineCredential.VerificationKey[0]) : scriptCredential(inlineCredential.Script[0]); + } + return _sdk.Core.addressFromCredentials(network, paymentCredCore, stakingCredCore); +} + +/** + * Converts a step result's optional inline datum into the Sundae V3 destination + * datum shape. + */ +function sundaeV3DestinationDatumFromStepResult(stepResult) { + return stepResult.datum ? { + type: _core2.EDatumType.INLINE, + value: stepResult.datum.toCbor().toString() + } : { + type: _core2.EDatumType.NONE + }; +} + +/** + * Builds the Sundae V3 destination address payload for a step result. + */ +function sundaeV3DestinationAddressFromStepResult(stepResult) { + return { + address: stepResult.address.toBech32(), + datum: sundaeV3DestinationDatumFromStepResult(stepResult) + }; +} + +/** + * Serializes the Sundae V3 destination used by classic, stableswap, and + * linearswap orders to route proceeds to the next step. + */ +function sundaeV3DestinationFromStepResult(network, stepResult) { + return new _core2.DatumBuilderV3(network).buildDestinationAddresses(sundaeV3DestinationAddressFromStepResult(stepResult)); +} + +/** + * Returns the step result's inline datum for protocols that store continuation + * data directly as an optional Plutus datum. + */ +function inlineDatumFromStepResult(stepResult) { + return stepResult.datum; +} + +/** + * Parses Plutus data from a CBOR hex string. + */ +function plutusDataFromCbor(cborHex) { + return _core.PlutusData.fromCbor((0, _core.HexBlob)(cborHex)); +} +function keyCredential(hash) { + return _sdk.Core.Credential.fromCore({ + type: _sdk.Core.CredentialType.KeyHash, + hash: (0, _core.Hash28ByteBase16)(hash) + }); +} +function scriptCredential(hash) { + return _sdk.Core.Credential.fromCore({ + type: _sdk.Core.CredentialType.ScriptHash, + hash: (0, _core.Hash28ByteBase16)(hash) + }); +} +//# sourceMappingURL=destination.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/tx-builder/destination.js.map b/modules/realfi-partner-sdk/dist/cjs/tx-builder/destination.js.map new file mode 100644 index 0000000000..aadcb1311c --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/tx-builder/destination.js.map @@ -0,0 +1 @@ +{"version":3,"file":"destination.js","names":["_core","require","_sdk","_core2","realfiDestinationDatumFromStepResult","stepResult","datum","InlineDatum","realfiDestinationFromStepResult","addressToRealFiDestination","address","arguments","length","undefined","props","getProps","paymentPart","Error","paymentCredential","type","Core","CredentialType","KeyHash","VerificationKey","hash","Script","stakeCredential","delegationPart","stakeCred","Inline","payment_credential","stake_credential","realfiOwnerFromSundaeV3OwnerAddress","network","ownerAddress","sundaeOwner","DatumBuilderV3","buildOwnerDatum","schema","Signature","key_hash","keyHash","script_hash","scriptHash","realfiDestinationToAddress","destination","paymentCred","stakingCred","paymentCredCore","keyCredential","scriptCredential","stakingCredCore","inlineCredential","addressFromCredentials","sundaeV3DestinationDatumFromStepResult","EDatumType","INLINE","value","toCbor","toString","NONE","sundaeV3DestinationAddressFromStepResult","toBech32","sundaeV3DestinationFromStepResult","buildDestinationAddresses","inlineDatumFromStepResult","plutusDataFromCbor","cborHex","PlutusData","fromCbor","HexBlob","Credential","fromCore","Hash28ByteBase16","ScriptHash"],"sources":["../../../src/tx-builder/destination.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\n\nimport { Hash28ByteBase16, HexBlob, PlutusData } from \"@blaze-cardano/core\";\nimport { Core } from \"@blaze-cardano/sdk\";\nimport {\n DatumBuilderV3,\n EDatumType,\n type TDatum,\n type TDatumResult,\n type TDestinationAddress,\n type TSupportedNetworks,\n} from \"@sundaeswap/core\";\n\nimport type {\n Destination,\n MultisigScript,\n} from \"../generated-types/v1_0/index.js\";\n\n/**\n * Intermediate output produced by one flow step and consumed by the previous\n * flow step as its continuation destination.\n */\nexport interface TxBuilderStepResult {\n address: Core.Address;\n datum?: PlutusData;\n}\n\nexport type RealFiDestinationDatum = Destination[\"datum\"];\nexport type SundaeV3DestinationResult = TDatumResult<\n ReturnType[\"schema\"]\n>;\n\n/**\n * Converts a step result's optional inline datum into the RealFi destination\n * datum shape.\n */\nexport function realfiDestinationDatumFromStepResult(\n stepResult: TxBuilderStepResult,\n): RealFiDestinationDatum {\n return stepResult.datum ? { InlineDatum: [stepResult.datum] } : \"NoDatum\";\n}\n\n/**\n * Builds a RealFi destination that points to a step result's address and datum.\n */\nexport function realfiDestinationFromStepResult(\n stepResult: TxBuilderStepResult,\n): Destination {\n return addressToRealFiDestination(\n stepResult.address,\n realfiDestinationDatumFromStepResult(stepResult),\n );\n}\n\n/**\n * Converts a Cardano address plus optional datum into the generated RealFi\n * destination type.\n */\nexport function addressToRealFiDestination(\n address: Core.Address,\n datum: RealFiDestinationDatum = \"NoDatum\",\n): Destination {\n const props = address.getProps();\n const paymentPart = props.paymentPart;\n\n if (!paymentPart) {\n throw new Error(\"Address must have a payment part\");\n }\n\n const paymentCredential =\n paymentPart.type === Core.CredentialType.KeyHash\n ? { VerificationKey: [paymentPart.hash] as [string] }\n : { Script: [paymentPart.hash] as [string] };\n\n let stakeCredential: Destination[\"address\"][\"stake_credential\"] = undefined;\n if (props.delegationPart) {\n const stakeCred =\n props.delegationPart.type === Core.CredentialType.KeyHash\n ? { VerificationKey: [props.delegationPart.hash] as [string] }\n : { Script: [props.delegationPart.hash] as [string] };\n stakeCredential = { Inline: [stakeCred] };\n }\n\n return {\n address: {\n payment_credential: paymentCredential,\n stake_credential: stakeCredential,\n },\n datum,\n };\n}\n\n/**\n * Derives a RealFi owner from the exact cancellation authority Sundae V3\n * assigns to an owner address. Sundae prefers a base address's staking hash\n * over its payment hash, while deciding Signature vs Script from the address's\n * payment credential, so this must use Sundae's builder rather than reimplement\n * those semantics from the Blaze address parts.\n */\nexport function realfiOwnerFromSundaeV3OwnerAddress(\n network: TSupportedNetworks,\n ownerAddress: string,\n): MultisigScript {\n const sundaeOwner = new DatumBuilderV3(network).buildOwnerDatum(\n ownerAddress,\n ).schema;\n\n if (\"Signature\" in sundaeOwner) {\n return { Signature: { key_hash: sundaeOwner.Signature.keyHash } };\n }\n if (\"Script\" in sundaeOwner) {\n return { Script: { script_hash: sundaeOwner.Script.scriptHash } };\n }\n\n throw new Error(\"Unsupported Sundae V3 owner datum derived from address\");\n}\n\n/**\n * Reconstructs a Cardano address from a generated RealFi destination address.\n */\nexport function realfiDestinationToAddress(\n network: Core.NetworkId,\n destination: Destination,\n): Core.Address {\n const paymentCred = destination.address.payment_credential;\n const stakingCred = destination.address.stake_credential;\n\n const paymentCredCore =\n \"VerificationKey\" in paymentCred\n ? keyCredential(paymentCred.VerificationKey[0])\n : scriptCredential(paymentCred.Script[0]);\n\n let stakingCredCore: Core.Credential | undefined = undefined;\n if (stakingCred && \"Inline\" in stakingCred) {\n const inlineCredential = stakingCred.Inline[0];\n stakingCredCore =\n \"VerificationKey\" in inlineCredential\n ? keyCredential(inlineCredential.VerificationKey[0])\n : scriptCredential(inlineCredential.Script[0]);\n }\n\n return Core.addressFromCredentials(network, paymentCredCore, stakingCredCore);\n}\n\n/**\n * Converts a step result's optional inline datum into the Sundae V3 destination\n * datum shape.\n */\nexport function sundaeV3DestinationDatumFromStepResult(\n stepResult: TxBuilderStepResult,\n): TDatum {\n return stepResult.datum\n ? {\n type: EDatumType.INLINE,\n value: stepResult.datum.toCbor().toString(),\n }\n : { type: EDatumType.NONE };\n}\n\n/**\n * Builds the Sundae V3 destination address payload for a step result.\n */\nexport function sundaeV3DestinationAddressFromStepResult(\n stepResult: TxBuilderStepResult,\n): TDestinationAddress {\n return {\n address: stepResult.address.toBech32(),\n datum: sundaeV3DestinationDatumFromStepResult(stepResult),\n };\n}\n\n/**\n * Serializes the Sundae V3 destination used by classic, stableswap, and\n * linearswap orders to route proceeds to the next step.\n */\nexport function sundaeV3DestinationFromStepResult(\n network: TSupportedNetworks,\n stepResult: TxBuilderStepResult,\n): SundaeV3DestinationResult {\n return new DatumBuilderV3(network).buildDestinationAddresses(\n sundaeV3DestinationAddressFromStepResult(stepResult),\n );\n}\n\n/**\n * Returns the step result's inline datum for protocols that store continuation\n * data directly as an optional Plutus datum.\n */\nexport function inlineDatumFromStepResult(\n stepResult: TxBuilderStepResult,\n): PlutusData | undefined {\n return stepResult.datum;\n}\n\n/**\n * Parses Plutus data from a CBOR hex string.\n */\nexport function plutusDataFromCbor(cborHex: string): PlutusData {\n return PlutusData.fromCbor(HexBlob(cborHex));\n}\n\nfunction keyCredential(hash: string): Core.Credential {\n return Core.Credential.fromCore({\n type: Core.CredentialType.KeyHash,\n hash: Hash28ByteBase16(hash),\n });\n}\n\nfunction scriptCredential(hash: string): Core.Credential {\n return Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash: Hash28ByteBase16(hash),\n });\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/tx-builder/flow.js b/modules/realfi-partner-sdk/dist/cjs/tx-builder/flow.js new file mode 100644 index 0000000000..942919763d --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/tx-builder/flow.js @@ -0,0 +1,190 @@ +"use strict"; + +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.STAKE_VAULT_RATIO_SCALE = exports.DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS = void 0; +exports.buildRealFiStakeAction = buildRealFiStakeAction; +exports.buildRealFiTxFlowStep = buildRealFiTxFlowStep; +exports.buildSundaeV3TxFlowStep = buildSundaeV3TxFlowStep; +exports.buildTxFlow = buildTxFlow; +exports.buildTxFlowStep = buildTxFlowStep; +exports.computeStakeMinReceivedFromVaultRatio = computeStakeMinReceivedFromVaultRatio; +exports.txBuilderFlowResultToCoreOutput = txBuilderFlowResultToCoreOutput; +var Data = _interopRequireWildcard(require("@blaze-cardano/data")); +var _sdk = require("@blaze-cardano/sdk"); +var _core = require("@sundaeswap/core"); +var _index = require("../generated-types/index.js"); +var _destination = require("./destination.js"); +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } +/* eslint-disable @typescript-eslint/naming-convention */ + +/** + * Output produced by one flow step. The previous step consumes only this + * result's address and datum as its continuation destination. The value is the + * Cardano assets locked at this step's output; after the right fold, only the + * outermost folded result is converted into the transaction output. + */ + +var STAKE_VAULT_RATIO_SCALE = exports.STAKE_VAULT_RATIO_SCALE = 1000000n; +var DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS = exports.DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS = 50n; +var BPS_DENOMINATOR = 10000n; + +/** + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ + +/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */ + +/** + * Computes stake order `min_received` from the current vault exchange rate. + * + * `vaultRatio` is USDr per sUSDr scaled by 1e6, so the natural sUSDr output is + * `amount * 1e6 / vaultRatio`. The tolerance is applied to that output floor. + * + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ +function computeStakeMinReceivedFromVaultRatio(amount, vaultRatio) { + var slippageToleranceBps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS; + if (amount <= 0n) { + throw new Error("Stake amount must be positive"); + } + if (vaultRatio <= 0n) { + throw new Error("Vault ratio must be positive"); + } + if (slippageToleranceBps < 0n || slippageToleranceBps > BPS_DENOMINATOR) { + throw new Error("Slippage tolerance must be between 0 and 10000 bps"); + } + var expected = amount * STAKE_VAULT_RATIO_SCALE / vaultRatio; + var minReceived = expected * (BPS_DENOMINATOR - slippageToleranceBps) / BPS_DENOMINATOR; + // WTB-1764: stake.ak requires min_received > 0 and crashes the entire + // execution transaction (not just this request) when it is not, so a floor + // that rounds or tolerances down to zero must not become an order. + if (minReceived <= 0n) { + throw new Error("Quoted min_received must be positive (got ".concat(minReceived, "); the stake amount ") + "is too small for this vault ratio and tolerance to quote a non-zero floor"); + } + return minReceived; +} + +/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */ +function buildRealFiStakeAction(_ref) { + var amount = _ref.amount, + vaultRatio = _ref.vaultRatio, + slippageToleranceBps = _ref.slippageToleranceBps; + return { + OStake: { + amount: amount, + min_received: computeStakeMinReceivedFromVaultRatio(amount, vaultRatio, slippageToleranceBps) + } + }; +} + +/** + * Builds the final flow result by folding from the final step backward through + * each requested flow step. + */ +function buildTxFlow(steps, finalStep) { + return steps.reduceRight(function (nextStep, step) { + return buildTxFlowStep(step, nextStep); + }, finalStep); +} + +/** + * Builds one flow step using the already-built next step as its continuation. + */ +function buildTxFlowStep(step, nextStep) { + switch (step.kind) { + case "realfi": + return buildRealFiTxFlowStep(step, nextStep); + case "sundae-v3": + return buildSundaeV3TxFlowStep(step, nextStep); + default: + { + var unreachable = step; + return unreachable; + } + } +} + +/** + * Builds a RealFi order flow result whose destination points to the next step. + * + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ +function buildRealFiTxFlowStep(step, nextStep) { + var _step$data; + var orderDatum = { + owner: step.owner, + destination: (0, _destination.realfiDestinationFromStepResult)(nextStep), + action: step.action, + data: (_step$data = step.data) !== null && _step$data !== void 0 ? _step$data : Data.Void() + }; + return { + address: step.address, + datum: Data.serialize(_index.V1_0Types.OrderDatumV1, orderDatum), + value: step.value + }; +} + +/** + * Builds a Sundae V3 flow result by injecting the next step as the order + * destination and serializing the selected order datum. + */ +function buildSundaeV3TxFlowStep(step, nextStep) { + var builder = new _core.DatumBuilderV3(step.network); + var destinationAddress = (0, _destination.sundaeV3DestinationAddressFromStepResult)(nextStep); + var inlineDatum; + switch (step.orderKind) { + case "swap": + inlineDatum = builder.buildSwapDatum({ + destinationAddress: destinationAddress, + ident: step.ident, + order: step.order, + ownerAddress: step.ownerAddress, + scooperFee: step.scooperFee + }).inline; + break; + case "deposit": + inlineDatum = builder.buildDepositDatum({ + destinationAddress: destinationAddress, + ident: step.ident, + order: step.order, + ownerAddress: step.ownerAddress, + scooperFee: step.scooperFee + }).inline; + break; + case "withdraw": + inlineDatum = builder.buildWithdrawDatum({ + destinationAddress: destinationAddress, + ident: step.ident, + order: step.order, + ownerAddress: step.ownerAddress, + scooperFee: step.scooperFee + }).inline; + break; + default: + { + var unreachable = step; + return unreachable; + } + } + return { + address: step.address, + datum: (0, _destination.plutusDataFromCbor)(inlineDatum), + value: step.value + }; +} + +/** + * Converts the folded flow result into a transaction output with an inline + * datum when the result includes one. + */ +function txBuilderFlowResultToCoreOutput(result) { + var output = new _sdk.Core.TransactionOutput(result.address, result.value); + if (result.datum) { + output.setDatum(_sdk.Core.Datum.newInlineData(result.datum)); + } + return output; +} +//# sourceMappingURL=flow.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/tx-builder/flow.js.map b/modules/realfi-partner-sdk/dist/cjs/tx-builder/flow.js.map new file mode 100644 index 0000000000..9a81c83313 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/tx-builder/flow.js.map @@ -0,0 +1 @@ +{"version":3,"file":"flow.js","names":["Data","_interopRequireWildcard","require","_sdk","_core","_index","_destination","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","STAKE_VAULT_RATIO_SCALE","exports","DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS","BPS_DENOMINATOR","computeStakeMinReceivedFromVaultRatio","amount","vaultRatio","slippageToleranceBps","arguments","length","undefined","Error","expected","minReceived","concat","buildRealFiStakeAction","_ref","OStake","min_received","buildTxFlow","steps","finalStep","reduceRight","nextStep","step","buildTxFlowStep","kind","buildRealFiTxFlowStep","buildSundaeV3TxFlowStep","unreachable","_step$data","orderDatum","owner","destination","realfiDestinationFromStepResult","action","data","Void","address","datum","serialize","V1_0Types","OrderDatumV1","value","builder","DatumBuilderV3","network","destinationAddress","sundaeV3DestinationAddressFromStepResult","inlineDatum","orderKind","buildSwapDatum","ident","order","ownerAddress","scooperFee","inline","buildDepositDatum","buildWithdrawDatum","plutusDataFromCbor","txBuilderFlowResultToCoreOutput","result","output","Core","TransactionOutput","setDatum","Datum","newInlineData"],"sources":["../../../src/tx-builder/flow.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\n\nimport type { PlutusData } from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { Core } from \"@blaze-cardano/sdk\";\nimport {\n DatumBuilderV3,\n type IDatumBuilderDepositV3Args,\n type IDatumBuilderSwapV3Args,\n type IDatumBuilderWithdrawV3Args,\n type TSupportedNetworks,\n} from \"@sundaeswap/core\";\n\nimport { V1_0Types } from \"../generated-types/index.js\";\nimport type {\n MultisigScript,\n OrderActionV1,\n OrderDatumV1,\n} from \"../generated-types/v1_0/index.js\";\nimport {\n type TxBuilderStepResult,\n plutusDataFromCbor,\n realfiDestinationFromStepResult,\n sundaeV3DestinationAddressFromStepResult,\n} from \"./destination.js\";\n\n/**\n * Output produced by one flow step. The previous step consumes only this\n * result's address and datum as its continuation destination. The value is the\n * Cardano assets locked at this step's output; after the right fold, only the\n * outermost folded result is converted into the transaction output.\n */\nexport interface TxBuilderFlowResult extends TxBuilderStepResult {\n value: Core.Value;\n}\n\nexport interface TxBuilderFinalStep extends TxBuilderFlowResult {}\n\nexport const STAKE_VAULT_RATIO_SCALE = 1_000_000n;\nexport const DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS = 50n;\n\nconst BPS_DENOMINATOR = 10_000n;\n\n/**\n * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper.\n */\nexport interface RealFiStakeActionInput {\n amount: bigint;\n /**\n * Current USDr-per-sUSDr vault ratio scaled by 1e6.\n *\n * This is the shape returned by the RealFi API's latestVaultRatio query.\n */\n vaultRatio: bigint;\n slippageToleranceBps?: bigint;\n}\n\n/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */\nexport interface RealFiTxFlowStep {\n kind: \"realfi\";\n address: Core.Address;\n value: Core.Value;\n owner: MultisigScript;\n action: OrderActionV1;\n data?: PlutusData;\n}\n\nexport interface SundaeV3BaseTxFlowStep {\n kind: \"sundae-v3\";\n network: TSupportedNetworks;\n address: Core.Address;\n value: Core.Value;\n}\n\nexport interface SundaeV3SwapTxFlowStep\n extends\n SundaeV3BaseTxFlowStep,\n Omit {\n orderKind: \"swap\";\n}\n\nexport interface SundaeV3DepositTxFlowStep\n extends\n SundaeV3BaseTxFlowStep,\n Omit {\n orderKind: \"deposit\";\n}\n\nexport interface SundaeV3WithdrawTxFlowStep\n extends\n SundaeV3BaseTxFlowStep,\n Omit {\n orderKind: \"withdraw\";\n}\n\nexport type SundaeV3TxFlowStep =\n | SundaeV3SwapTxFlowStep\n | SundaeV3DepositTxFlowStep\n | SundaeV3WithdrawTxFlowStep;\n\nexport type SundaeTxFlowStep = SundaeV3TxFlowStep;\n\nexport type TxFlowStep = RealFiTxFlowStep | SundaeTxFlowStep;\n\n/**\n * Computes stake order `min_received` from the current vault exchange rate.\n *\n * `vaultRatio` is USDr per sUSDr scaled by 1e6, so the natural sUSDr output is\n * `amount * 1e6 / vaultRatio`. The tolerance is applied to that output floor.\n *\n * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper.\n */\nexport function computeStakeMinReceivedFromVaultRatio(\n amount: bigint,\n vaultRatio: bigint,\n slippageToleranceBps: bigint = DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS,\n): bigint {\n if (amount <= 0n) {\n throw new Error(\"Stake amount must be positive\");\n }\n if (vaultRatio <= 0n) {\n throw new Error(\"Vault ratio must be positive\");\n }\n if (slippageToleranceBps < 0n || slippageToleranceBps > BPS_DENOMINATOR) {\n throw new Error(\"Slippage tolerance must be between 0 and 10000 bps\");\n }\n\n const expected = (amount * STAKE_VAULT_RATIO_SCALE) / vaultRatio;\n const minReceived =\n (expected * (BPS_DENOMINATOR - slippageToleranceBps)) / BPS_DENOMINATOR;\n // WTB-1764: stake.ak requires min_received > 0 and crashes the entire\n // execution transaction (not just this request) when it is not, so a floor\n // that rounds or tolerances down to zero must not become an order.\n if (minReceived <= 0n) {\n throw new Error(\n `Quoted min_received must be positive (got ${minReceived}); the stake amount ` +\n \"is too small for this vault ratio and tolerance to quote a non-zero floor\",\n );\n }\n return minReceived;\n}\n\n/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */\nexport function buildRealFiStakeAction({\n amount,\n vaultRatio,\n slippageToleranceBps,\n}: RealFiStakeActionInput): OrderActionV1 {\n return {\n OStake: {\n amount,\n min_received: computeStakeMinReceivedFromVaultRatio(\n amount,\n vaultRatio,\n slippageToleranceBps,\n ),\n },\n };\n}\n\n/**\n * Builds the final flow result by folding from the final step backward through\n * each requested flow step.\n */\nexport function buildTxFlow(\n steps: readonly TxFlowStep[],\n finalStep: TxBuilderFinalStep,\n): TxBuilderFlowResult {\n return steps.reduceRight(\n (nextStep, step) => buildTxFlowStep(step, nextStep),\n finalStep,\n );\n}\n\n/**\n * Builds one flow step using the already-built next step as its continuation.\n */\nexport function buildTxFlowStep(\n step: TxFlowStep,\n nextStep: TxBuilderFlowResult,\n): TxBuilderFlowResult {\n switch (step.kind) {\n case \"realfi\":\n return buildRealFiTxFlowStep(step, nextStep);\n case \"sundae-v3\":\n return buildSundaeV3TxFlowStep(step, nextStep);\n default: {\n const unreachable: never = step;\n return unreachable;\n }\n }\n}\n\n/**\n * Builds a RealFi order flow result whose destination points to the next step.\n *\n * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper.\n */\nexport function buildRealFiTxFlowStep(\n step: RealFiTxFlowStep,\n nextStep: TxBuilderStepResult,\n): TxBuilderFlowResult {\n const orderDatum: OrderDatumV1 = {\n owner: step.owner,\n destination: realfiDestinationFromStepResult(nextStep),\n action: step.action,\n data: step.data ?? Data.Void(),\n };\n\n return {\n address: step.address,\n datum: Data.serialize(V1_0Types.OrderDatumV1, orderDatum),\n value: step.value,\n };\n}\n\n/**\n * Builds a Sundae V3 flow result by injecting the next step as the order\n * destination and serializing the selected order datum.\n */\nexport function buildSundaeV3TxFlowStep(\n step: SundaeV3TxFlowStep,\n nextStep: TxBuilderStepResult,\n): TxBuilderFlowResult {\n const builder = new DatumBuilderV3(step.network);\n const destinationAddress = sundaeV3DestinationAddressFromStepResult(nextStep);\n let inlineDatum: string;\n\n switch (step.orderKind) {\n case \"swap\":\n inlineDatum = builder.buildSwapDatum({\n destinationAddress,\n ident: step.ident,\n order: step.order,\n ownerAddress: step.ownerAddress,\n scooperFee: step.scooperFee,\n }).inline;\n break;\n case \"deposit\":\n inlineDatum = builder.buildDepositDatum({\n destinationAddress,\n ident: step.ident,\n order: step.order,\n ownerAddress: step.ownerAddress,\n scooperFee: step.scooperFee,\n }).inline;\n break;\n case \"withdraw\":\n inlineDatum = builder.buildWithdrawDatum({\n destinationAddress,\n ident: step.ident,\n order: step.order,\n ownerAddress: step.ownerAddress,\n scooperFee: step.scooperFee,\n }).inline;\n break;\n default: {\n const unreachable: never = step;\n return unreachable;\n }\n }\n\n return {\n address: step.address,\n datum: plutusDataFromCbor(inlineDatum),\n value: step.value,\n };\n}\n\n/**\n * Converts the folded flow result into a transaction output with an inline\n * datum when the result includes one.\n */\nexport function txBuilderFlowResultToCoreOutput(\n result: TxBuilderFlowResult,\n): Core.TransactionOutput {\n const output = new Core.TransactionOutput(result.address, result.value);\n\n if (result.datum) {\n output.setDatum(Core.Datum.newInlineData(result.datum));\n }\n\n return output;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/tx-builder/index.js b/modules/realfi-partner-sdk/dist/cjs/tx-builder/index.js new file mode 100644 index 0000000000..4a443bdbf5 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/tx-builder/index.js @@ -0,0 +1,39 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +var _destination = require("./destination.js"); +Object.keys(_destination).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _destination[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _destination[key]; + } + }); +}); +var _flow = require("./flow.js"); +Object.keys(_flow).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _flow[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _flow[key]; + } + }); +}); +var _registry = require("./registry.js"); +Object.keys(_registry).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _registry[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function get() { + return _registry[key]; + } + }); +}); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/tx-builder/index.js.map b/modules/realfi-partner-sdk/dist/cjs/tx-builder/index.js.map new file mode 100644 index 0000000000..72fd27429f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/tx-builder/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["_destination","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_flow","_registry"],"sources":["../../../src/tx-builder/index.ts"],"sourcesContent":["export * from \"./destination.js\";\nexport * from \"./flow.js\";\nexport * from \"./registry.js\";\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,KAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,KAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,KAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAC,KAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,SAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,SAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,SAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAE,SAAA,CAAAN,GAAA;IAAA;EAAA;AAAA","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/tx-builder/registry.js b/modules/realfi-partner-sdk/dist/cjs/tx-builder/registry.js new file mode 100644 index 0000000000..a8c287d4ea --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/tx-builder/registry.js @@ -0,0 +1,180 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.TX_BUILDER_REGISTRY = void 0; +exports.createTxFlowBuilder = createTxFlowBuilder; +exports.getRealFiRequestAddress = getRealFiRequestAddress; +exports.getSundaeV3RequestAddress = getSundaeV3RequestAddress; +exports.getTxBuilderNetworkRegistry = getTxBuilderNetworkRegistry; +var _sdk = require("@blaze-cardano/sdk"); +var _flow = require("./flow.js"); +var _destination = require("./destination.js"); +var _excluded = ["amount", "vaultRatio", "slippageToleranceBps"]; +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } +function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; } +function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; } +function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } +function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable @typescript-eslint/naming-convention */ +/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */ + +/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */ + +/** A swap leg with explicit cancellation authority for the routed order. */ + +/** + * Any SDK instance exposing `buildStakeContinuation` — the partner facade's + * per-build dispatcher, an `"at-init"` instance, or a raw version-pinned SDK. + * Only the per-build dispatcher fails closed on a stale protocol version; + * the others carry no such guarantee. + */ + +/** + * @deprecated Prefer `RealfiSDK.sundae.create(blaze).buildSwapToStakeOrderTx`. + * This input belongs to the lower-level, V3-only flow composer. + */ + +/** + * Default request address registry. Sundae V3 entries are enterprise order + * script addresses. The RealFi entry is a legacy V1_0-only path; preview runs + * V1_1, so its old V1_0 address is deliberately unset. New stake continuations + * derive the live address from the version-aware SDK instead. + */ +var TX_BUILDER_REGISTRY = exports.TX_BUILDER_REGISTRY = { + preview: { + realfi: {}, + sundaeV3: { + requestAddress: "addr_test1wr866xg5kkvarzll69xjh0tfvqvu9zvuhht2qve9ehmgp0qfgf3wc" + } + }, + preprod: { + realfi: { + requestAddress: "addr_test1wrkgqyfrz7qhlhu737nf4v5dllypylasaqruphlul5jhpeczfzjzl" + }, + sundaeV3: { + requestAddress: "addr_test1wz5cn230um3cve5gvvgk9kxveqcd888r3vl3rtxn3qxpvhcv0tzpr" + } + }, + mainnet: { + realfi: {}, + sundaeV3: { + requestAddress: "addr1w8ax5k9mutg07p2ngscu3chsauktmstq92z9de938j8nqacprc9mw" + } + } +}; + +/** + * Returns the registry entry for the selected network. + */ +function getTxBuilderNetworkRegistry(network) { + var registry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : TX_BUILDER_REGISTRY; + return registry[network]; +} + +/** + * Returns the RealFi request script address for the selected network. + * + * @deprecated V1_0 only. Prefer the version-aware SDK continuation builder. + */ +function getRealFiRequestAddress(network) { + var registry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : TX_BUILDER_REGISTRY; + return requestAddressFromRegistry(getTxBuilderNetworkRegistry(network, registry).realfi.requestAddress, network, "RealFi"); +} + +/** + * Returns the Sundae V3 request script address for the selected network. + */ +function getSundaeV3RequestAddress(network) { + var registry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : TX_BUILDER_REGISTRY; + return requestAddressFromRegistry(getTxBuilderNetworkRegistry(network, registry).sundaeV3.requestAddress, network, "Sundae V3"); +} + +/** + * Creates a network-scoped flow builder that fills request script addresses from + * the registry before building the right-folded transaction flow. + */ +function createTxFlowBuilder(_ref) { + var network = _ref.network, + _ref$registry = _ref.registry, + registry = _ref$registry === void 0 ? TX_BUILDER_REGISTRY : _ref$registry; + var sundaeV3 = function sundaeV3(step) { + return _objectSpread(_objectSpread({}, step), {}, { + kind: "sundae-v3", + network: network, + address: getSundaeV3RequestAddress(network, registry) + }); + }; + return { + network: network, + realfi: function realfi(step) { + return _objectSpread(_objectSpread({}, step), {}, { + kind: "realfi", + address: getRealFiRequestAddress(network, registry) + }); + }, + realfiStake: function realfiStake(_ref2) { + var amount = _ref2.amount, + vaultRatio = _ref2.vaultRatio, + slippageToleranceBps = _ref2.slippageToleranceBps, + step = _objectWithoutProperties(_ref2, _excluded); + return _objectSpread(_objectSpread({}, step), {}, { + kind: "realfi", + address: getRealFiRequestAddress(network, registry), + action: (0, _flow.buildRealFiStakeAction)({ + amount: amount, + vaultRatio: vaultRatio, + slippageToleranceBps: slippageToleranceBps + }) + }); + }, + sundaeV3: sundaeV3, + sundaeV3SwapToStake: function () { + var _sundaeV3SwapToStake = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref3) { + var sdk, swap, finalStep, stake, continuation; + return _regenerator().w(function (_context) { + while (1) switch (_context.n) { + case 0: + sdk = _ref3.sdk, swap = _ref3.swap, finalStep = _ref3.finalStep, stake = _ref3.stake; + if (swap.ownerAddress) { + _context.n = 1; + break; + } + throw new Error("Sundae V3 swap-to-stake requires ownerAddress so the swap remains cancellable"); + case 1: + _context.n = 2; + return sdk.buildStakeContinuation(_objectSpread(_objectSpread({ + owner: (0, _destination.realfiOwnerFromSundaeV3OwnerAddress)(network, swap.ownerAddress) + }, stake), {}, { + swap: swap.order, + destination: (0, _destination.realfiDestinationFromStepResult)(finalStep) + })); + case 2: + continuation = _context.v; + return _context.a(2, (0, _flow.buildSundaeV3TxFlowStep)(sundaeV3(swap), continuation)); + } + }, _callee); + })); + function sundaeV3SwapToStake(_x) { + return _sundaeV3SwapToStake.apply(this, arguments); + } + return sundaeV3SwapToStake; + }(), + build: _flow.buildTxFlow, + toOutput: _flow.txBuilderFlowResultToCoreOutput + }; +} +function requestAddressFromRegistry(requestAddress, network, protocol) { + if (!requestAddress) { + throw new Error("No ".concat(protocol, " request address configured for ").concat(network, ". Add it to the tx-builder registry before building this step.")); + } + return _sdk.Core.Address.fromBech32(requestAddress); +} +//# sourceMappingURL=registry.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/cjs/tx-builder/registry.js.map b/modules/realfi-partner-sdk/dist/cjs/tx-builder/registry.js.map new file mode 100644 index 0000000000..802ce88558 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/cjs/tx-builder/registry.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry.js","names":["_sdk","require","_flow","_destination","_excluded","_typeof","o","Symbol","iterator","constructor","prototype","_regenerator","e","t","r","n","toStringTag","i","c","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","hasOwnProperty","ownKeys","keys","filter","getOwnPropertyDescriptor","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","TX_BUILDER_REGISTRY","exports","preview","realfi","sundaeV3","requestAddress","preprod","mainnet","getTxBuilderNetworkRegistry","network","registry","undefined","getRealFiRequestAddress","requestAddressFromRegistry","getSundaeV3RequestAddress","createTxFlowBuilder","_ref","_ref$registry","step","kind","address","realfiStake","_ref2","amount","vaultRatio","slippageToleranceBps","action","buildRealFiStakeAction","sundaeV3SwapToStake","_sundaeV3SwapToStake","_callee","_ref3","sdk","swap","finalStep","stake","continuation","_context","ownerAddress","Error","buildStakeContinuation","owner","realfiOwnerFromSundaeV3OwnerAddress","order","destination","realfiDestinationFromStepResult","buildSundaeV3TxFlowStep","_x","build","buildTxFlow","toOutput","txBuilderFlowResultToCoreOutput","protocol","concat","Core","Address","fromBech32"],"sources":["../../../src/tx-builder/registry.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\n\nimport { Core } from \"@blaze-cardano/sdk\";\nimport type { TSupportedNetworks } from \"@sundaeswap/core\";\n\nimport type {\n IBuildStakeContinuationParams,\n IStakeContinuation,\n} from \"../sdk/v1/family.js\";\nimport {\n buildRealFiStakeAction,\n buildSundaeV3TxFlowStep,\n buildTxFlow,\n txBuilderFlowResultToCoreOutput,\n type RealFiTxFlowStep,\n type RealFiStakeActionInput,\n type SundaeV3TxFlowStep,\n type TxBuilderFinalStep,\n type TxBuilderFlowResult,\n type TxFlowStep,\n} from \"./flow.js\";\nimport {\n realfiOwnerFromSundaeV3OwnerAddress,\n realfiDestinationFromStepResult,\n} from \"./destination.js\";\n\ntype TxFlowStepInput = TStep extends unknown\n ? Omit\n : never;\n\nexport type TxBuilderNetwork = TSupportedNetworks;\n\nexport interface TxBuilderProtocolRegistry {\n requestAddress?: string;\n}\n\nexport interface TxBuilderNetworkRegistry {\n realfi: TxBuilderProtocolRegistry;\n sundaeV3: TxBuilderProtocolRegistry;\n}\n\nexport type TxBuilderRegistry = Record<\n TxBuilderNetwork,\n TxBuilderNetworkRegistry\n>;\n\n/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */\nexport type RealFiTxFlowStepInput = TxFlowStepInput;\n\n/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */\nexport type RealFiStakeTxFlowStepInput = Omit &\n RealFiStakeActionInput;\n\nexport type SundaeV3TxFlowStepInput = TxFlowStepInput;\n\nexport type SundaeV3SwapTxFlowStepInput = Extract<\n SundaeV3TxFlowStepInput,\n { orderKind: \"swap\" }\n>;\n\n/** A swap leg with explicit cancellation authority for the routed order. */\nexport type SundaeV3OwnedSwapTxFlowStepInput = Omit<\n SundaeV3SwapTxFlowStepInput,\n \"ownerAddress\"\n> & {\n ownerAddress: string;\n};\n\n/**\n * Any SDK instance exposing `buildStakeContinuation` — the partner facade's\n * per-build dispatcher, an `\"at-init\"` instance, or a raw version-pinned SDK.\n * Only the per-build dispatcher fails closed on a stale protocol version;\n * the others carry no such guarantee.\n */\nexport interface StakeContinuationBuilder {\n buildStakeContinuation(\n params: IBuildStakeContinuationParams,\n ): Promise;\n}\n\n/**\n * @deprecated Prefer `RealfiSDK.sundae.create(blaze).buildSwapToStakeOrderTx`.\n * This input belongs to the lower-level, V3-only flow composer.\n */\nexport interface SundaeV3SwapToStakeInput {\n sdk: StakeContinuationBuilder;\n swap: SundaeV3OwnedSwapTxFlowStepInput;\n finalStep: TxBuilderFinalStep;\n stake?: Omit;\n}\n\nexport interface CreateTxFlowBuilderOptions {\n network: TxBuilderNetwork;\n registry?: TxBuilderRegistry;\n}\n\nexport interface TxFlowBuilder {\n network: TxBuilderNetwork;\n /** @deprecated V1_0 only. Prefer `sundaeV3SwapToStake`. */\n realfi: (step: RealFiTxFlowStepInput) => RealFiTxFlowStep;\n /** @deprecated V1_0 only. Prefer `sundaeV3SwapToStake`. */\n realfiStake: (step: RealFiStakeTxFlowStepInput) => RealFiTxFlowStep;\n sundaeV3: (step: SundaeV3TxFlowStepInput) => SundaeV3TxFlowStep;\n /**\n * @deprecated Prefer `RealfiSDK.sundae.create(blaze).buildSwapToStakeOrderTx`,\n * which builds the complete V3 or Stableswaps order transaction.\n */\n sundaeV3SwapToStake: (\n input: SundaeV3SwapToStakeInput,\n ) => Promise;\n build: (\n steps: readonly TxFlowStep[],\n finalStep: TxBuilderFinalStep,\n ) => TxBuilderFlowResult;\n toOutput: (result: TxBuilderFlowResult) => Core.TransactionOutput;\n}\n\n/**\n * Default request address registry. Sundae V3 entries are enterprise order\n * script addresses. The RealFi entry is a legacy V1_0-only path; preview runs\n * V1_1, so its old V1_0 address is deliberately unset. New stake continuations\n * derive the live address from the version-aware SDK instead.\n */\nexport const TX_BUILDER_REGISTRY = {\n preview: {\n realfi: {},\n sundaeV3: {\n requestAddress:\n \"addr_test1wr866xg5kkvarzll69xjh0tfvqvu9zvuhht2qve9ehmgp0qfgf3wc\",\n },\n },\n preprod: {\n realfi: {\n requestAddress:\n \"addr_test1wrkgqyfrz7qhlhu737nf4v5dllypylasaqruphlul5jhpeczfzjzl\",\n },\n sundaeV3: {\n requestAddress:\n \"addr_test1wz5cn230um3cve5gvvgk9kxveqcd888r3vl3rtxn3qxpvhcv0tzpr\",\n },\n },\n mainnet: {\n realfi: {},\n sundaeV3: {\n requestAddress:\n \"addr1w8ax5k9mutg07p2ngscu3chsauktmstq92z9de938j8nqacprc9mw\",\n },\n },\n} satisfies TxBuilderRegistry;\n\n/**\n * Returns the registry entry for the selected network.\n */\nexport function getTxBuilderNetworkRegistry(\n network: TxBuilderNetwork,\n registry: TxBuilderRegistry = TX_BUILDER_REGISTRY,\n): TxBuilderNetworkRegistry {\n return registry[network];\n}\n\n/**\n * Returns the RealFi request script address for the selected network.\n *\n * @deprecated V1_0 only. Prefer the version-aware SDK continuation builder.\n */\nexport function getRealFiRequestAddress(\n network: TxBuilderNetwork,\n registry: TxBuilderRegistry = TX_BUILDER_REGISTRY,\n): Core.Address {\n return requestAddressFromRegistry(\n getTxBuilderNetworkRegistry(network, registry).realfi.requestAddress,\n network,\n \"RealFi\",\n );\n}\n\n/**\n * Returns the Sundae V3 request script address for the selected network.\n */\nexport function getSundaeV3RequestAddress(\n network: TxBuilderNetwork,\n registry: TxBuilderRegistry = TX_BUILDER_REGISTRY,\n): Core.Address {\n return requestAddressFromRegistry(\n getTxBuilderNetworkRegistry(network, registry).sundaeV3.requestAddress,\n network,\n \"Sundae V3\",\n );\n}\n\n/**\n * Creates a network-scoped flow builder that fills request script addresses from\n * the registry before building the right-folded transaction flow.\n */\nexport function createTxFlowBuilder({\n network,\n registry = TX_BUILDER_REGISTRY,\n}: CreateTxFlowBuilderOptions): TxFlowBuilder {\n const sundaeV3 = (step: SundaeV3TxFlowStepInput): SundaeV3TxFlowStep =>\n ({\n ...step,\n kind: \"sundae-v3\",\n network,\n address: getSundaeV3RequestAddress(network, registry),\n }) as SundaeV3TxFlowStep;\n\n return {\n network,\n realfi: (step) => ({\n ...step,\n kind: \"realfi\",\n address: getRealFiRequestAddress(network, registry),\n }),\n realfiStake: ({ amount, vaultRatio, slippageToleranceBps, ...step }) => ({\n ...step,\n kind: \"realfi\",\n address: getRealFiRequestAddress(network, registry),\n action: buildRealFiStakeAction({\n amount,\n vaultRatio,\n slippageToleranceBps,\n }),\n }),\n sundaeV3,\n sundaeV3SwapToStake: async ({ sdk, swap, finalStep, stake }) => {\n if (!swap.ownerAddress) {\n throw new Error(\n \"Sundae V3 swap-to-stake requires ownerAddress so the swap remains cancellable\",\n );\n }\n // Default the inner RealFi order's owner to the Sundae leg's owner, so\n // one address retains cancellation authority over both legs unless the\n // caller deliberately splits it via `stake.owner`.\n const continuation = await sdk.buildStakeContinuation({\n owner: realfiOwnerFromSundaeV3OwnerAddress(network, swap.ownerAddress),\n ...stake,\n swap: swap.order,\n destination: realfiDestinationFromStepResult(finalStep),\n });\n return buildSundaeV3TxFlowStep(sundaeV3(swap), continuation);\n },\n build: buildTxFlow,\n toOutput: txBuilderFlowResultToCoreOutput,\n };\n}\n\nfunction requestAddressFromRegistry(\n requestAddress: string | undefined,\n network: TxBuilderNetwork,\n protocol: string,\n): Core.Address {\n if (!requestAddress) {\n throw new Error(\n `No ${protocol} request address configured for ${network}. Add it to the tx-builder registry before building this step.`,\n );\n }\n\n return Core.Address.fromBech32(requestAddress);\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/index.js b/modules/realfi-partner-sdk/dist/esm/admin/index.js new file mode 100644 index 0000000000..e87a896ea3 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/index.js @@ -0,0 +1,2 @@ +export * from "./settings/index.js"; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/index.js.map b/modules/realfi-partner-sdk/dist/esm/admin/index.js.map new file mode 100644 index 0000000000..d0224c7348 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":[],"sources":["../../../src/admin/index.ts"],"sourcesContent":["export * from \"./settings/index.js\";\n"],"mappings":"AAAA,cAAc,qBAAqB","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/settings/index.js b/modules/realfi-partner-sdk/dist/esm/admin/settings/index.js new file mode 100644 index 0000000000..22225b36fd --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/settings/index.js @@ -0,0 +1,4 @@ +export * from "./types.js"; +export * from "./utils.js"; +export * from "./protocol-settings.js"; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/settings/index.js.map b/modules/realfi-partner-sdk/dist/esm/admin/settings/index.js.map new file mode 100644 index 0000000000..1088d419a7 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/settings/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":[],"sources":["../../../../src/admin/settings/index.ts"],"sourcesContent":["export * from \"./types.js\";\nexport * from \"./utils.js\";\nexport * from \"./protocol-settings.js\";\n"],"mappings":"AAAA,cAAc,YAAY;AAC1B,cAAc,YAAY;AAC1B,cAAc,wBAAwB","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/settings/protocol-settings.js b/modules/realfi-partner-sdk/dist/esm/admin/settings/protocol-settings.js new file mode 100644 index 0000000000..f1008bdfd6 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/settings/protocol-settings.js @@ -0,0 +1,4 @@ +// Version-neutral public entrypoint for the protocol settings admin SDK. +// The current implementation targets the v1.1-era settings shape internally. +export * from "./v1_1_rc1.js"; +//# sourceMappingURL=protocol-settings.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/settings/protocol-settings.js.map b/modules/realfi-partner-sdk/dist/esm/admin/settings/protocol-settings.js.map new file mode 100644 index 0000000000..2c0656d8cb --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/settings/protocol-settings.js.map @@ -0,0 +1 @@ +{"version":3,"file":"protocol-settings.js","names":[],"sources":["../../../../src/admin/settings/protocol-settings.ts"],"sourcesContent":["// Version-neutral public entrypoint for the protocol settings admin SDK.\n// The current implementation targets the v1.1-era settings shape internally.\nexport * from \"./v1_1_rc1.js\";\n"],"mappings":"AAAA;AACA;AACA,cAAc,eAAe","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/settings/types.js b/modules/realfi-partner-sdk/dist/esm/admin/settings/types.js new file mode 100644 index 0000000000..718fd38ae4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/settings/types.js @@ -0,0 +1,2 @@ +export {}; +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/settings/types.js.map b/modules/realfi-partner-sdk/dist/esm/admin/settings/types.js.map new file mode 100644 index 0000000000..fa96ab6443 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/settings/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","names":[],"sources":["../../../../src/admin/settings/types.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport type { Blaze, Core, TxBuilder, Wallet } from \"@blaze-cardano/sdk\";\n\nimport type {\n GovernanceConfig,\n MultisigScript,\n Permissions,\n ProtocolConfig,\n RegistryV1,\n SettingsV1,\n Tuple_VerificationKey_COSESign1,\n} from \"../../generated-types/v1_1_rc1/index.js\";\n\n/**\n * COSE (CIP-8) signatures authorizing a settings change — `(VerificationKey,\n * COSESign1)` tuples over the auth-payload hash from `getSettingsAuthPayloadHash`.\n * Collected out-of-band (e.g. from hardware wallets), then passed to the build\n * method — mirroring the orchestrator's `buildExecuteOrdersTx({ signatures })`.\n */\nexport type TSettingsSignatures = Tuple_VerificationKey_COSESign1[];\n\nexport interface IProtocolSettingsAdminParams {\n proxyPolicyId: Core.PolicyId;\n governanceConfig: GovernanceConfig;\n enableTrace?: boolean;\n referenceInputs?: {\n settingsRefInput?: Core.TransactionUnspentOutput;\n };\n}\n\nexport interface IProtocolSettingsAdminSource<\n P extends Provider,\n W extends Wallet,\n> {\n readonly blaze: Blaze;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly enableTrace: boolean;\n}\n\nexport interface IProtocolSettingsState {\n proxyUtxo: Core.TransactionUnspentOutput;\n proxyDatum: Core.PlutusData;\n proxyAddress: Core.Address;\n logicHash: Core.ScriptHash;\n settingsData: Core.PlutusData;\n liveSettings?: SettingsV1;\n paymentCredentialHash: string;\n isFrozen: boolean;\n isGovernedByThisValidator: boolean;\n}\n\nexport interface IBuildChangePermissionsTxParams {\n nextPermissions: Permissions;\n signatures: TSettingsSignatures;\n}\n\nexport interface IBuildChangeConfigTxParams {\n nextConfig: ProtocolConfig;\n signatures: TSettingsSignatures;\n}\n\nexport interface IBuildChangeLogicTxParams {\n nextLogicHash?: Core.ScriptHash;\n nextRegistry?: RegistryV1;\n signatures: TSettingsSignatures;\n}\n\n/**\n * A settings change resolved against the current on-chain state — the shared\n * intermediate used to both compute the auth-payload hash and build the tx, so\n * the signed message and the submitted tx always agree.\n */\nexport interface IResolvedSettingsChange {\n redeemer:\n | \"ChangeLogic\"\n | \"ChangePermissions\"\n | \"ChangeConfig\"\n | \"Shutdown\"\n | \"Restore\"\n | \"Migrate\";\n nextLogicHash: Core.ScriptHash;\n nextSettingsData: Core.PlutusData;\n receiverAddress: Core.Address;\n coValidateWith?: {\n rewardAccount: Core.RewardAccount;\n applyWitness(tx: TxBuilder): Promise;\n };\n}\n\nexport interface IBuildMigrateTxParams

{\n destination: IProtocolSettingsAdminInstance;\n /** COSE signatures satisfying this (source) validator's `migrate` permission. */\n signatures: TSettingsSignatures;\n /** COSE signatures satisfying the destination validator's `migrate` permission. */\n destinationSignatures: TSettingsSignatures;\n}\n\n/**\n * The change to authorize, passed to both `getSettingsAuthPayloadHash` (to get\n * the hash to sign) and the matching build method — mirroring how the\n * orchestrator passes the same order inputs to `getSignedPayloadFromOrderInputs`\n * and `buildExecuteOrdersTx`.\n */\nexport type TSettingsChange

=\n | { type: \"ChangePermissions\"; nextPermissions: Permissions }\n | { type: \"ChangeConfig\"; nextConfig: ProtocolConfig }\n | {\n type: \"ChangeLogic\";\n nextLogicHash?: Core.ScriptHash;\n nextRegistry?: RegistryV1;\n }\n | { type: \"Shutdown\" }\n | { type: \"Restore\" }\n | { type: \"Migrate\"; destination: IProtocolSettingsAdminInstance };\n\nexport interface IProtocolSettingsAdminInstance<\n P extends Provider,\n W extends Wallet,\n> {\n readonly blaze: Blaze;\n readonly proxyPolicyId: Core.PolicyId;\n readonly governanceConfig: GovernanceConfig;\n readonly settingsScriptHash: Core.ScriptHash;\n readonly settingsValidatorAddress: Core.Address;\n readonly settingsRewardAccount: Core.RewardAccount;\n readonly enableTrace: boolean;\n\n getSettingsState(): Promise;\n applySettingsWitness(tx: TxBuilder): Promise;\n}\n\nexport type TGovernancePermissionKey =\n | \"logic_change\"\n | \"permission_change\"\n | \"config_change\"\n | \"shutdown\"\n | \"restore\"\n | \"migrate\";\n\nexport interface IParsedProxyDatum {\n logicHash: Core.ScriptHash;\n settingsData: Core.PlutusData;\n}\n\nexport type TPermissionedScript = MultisigScript;\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/settings/utils.js b/modules/realfi-partner-sdk/dist/esm/admin/settings/utils.js new file mode 100644 index 0000000000..3200c8d9ec --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/settings/utils.js @@ -0,0 +1,114 @@ +import { addressFromValidator, blake2b_256, HexBlob } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import { Core } from "@blaze-cardano/sdk"; +import * as V1_1Rc1Types from "../../generated-types/v1_1_rc1/index.js"; +export const SETTINGS_FROZEN_CONSTR = 1n; +export function createSettingsValidatorScript(proxyPolicyId, governanceConfig, enableTrace = false) { + return new V1_1Rc1Types.SettingsProtocolSettingsProtocolSettingsWithdraw(proxyPolicyId, governanceConfig, enableTrace).Script; +} +export function createSettingsValidatorAddress(network, proxyPolicyId, governanceConfig, enableTrace = false) { + const script = createSettingsValidatorScript(proxyPolicyId, governanceConfig, enableTrace); + return addressFromValidator(network, script); +} +export function parseProxyDatumRaw(datum) { + const constr = datum.asConstrPlutusData(); + if (!constr) { + throw new Error("Proxy datum is not constructor PlutusData"); + } + const fields = constr.getData(); + const logicBytes = fields.get(0).asBoundedBytes(); + if (!logicBytes) { + throw new Error("Proxy datum logic field is not bytes"); + } + return { + logicHash: Buffer.from(logicBytes).toString("hex"), + settingsData: fields.get(1) + }; +} +export function buildRawProxyDatum(logicHash, settingsData) { + const fields = new Core.PlutusList(); + fields.add(Core.PlutusData.newBytes(Buffer.from(logicHash, "hex"))); + fields.add(settingsData); + return Core.PlutusData.newConstrPlutusData(new Core.ConstrPlutusData(0n, fields)); +} +export function getSettingsAlternative(settingsData) { + const constr = settingsData.asConstrPlutusData(); + if (!constr) { + throw new Error("Settings data is not constructor PlutusData"); + } + return constr.getAlternative(); +} +export function isFrozenSettingsData(settingsData) { + return getSettingsAlternative(settingsData) === SETTINGS_FROZEN_CONSTR; +} +export function freezeSettingsData(settingsData) { + const fields = new Core.PlutusList(); + fields.add(settingsData); + return Core.PlutusData.newConstrPlutusData(new Core.ConstrPlutusData(SETTINGS_FROZEN_CONSTR, fields)); +} +export function unwrapFrozenSettingsData(settingsData) { + const constr = settingsData.asConstrPlutusData(); + if (!constr || constr.getAlternative() !== SETTINGS_FROZEN_CONSTR) { + throw new Error("Settings data is not frozen"); + } + return constr.getData().get(0); +} +export function parseLiveSettings(settingsData) { + if (isFrozenSettingsData(settingsData)) { + return undefined; + } + return parse(V1_1Rc1Types.SettingsV1, settingsData); +} +export function serializeSettings(settings) { + return Data.serialize(V1_1Rc1Types.SettingsV1, settings); +} +export function serializeSettingsRedeemer(redeemer) { + return Data.serialize(V1_1Rc1Types.SettingsRedeemer, redeemer); +} + +/** + * Serialize the `SettingsAuthPayload` the on-chain validator reconstructs from + * the proxy in/out and hashes. `datum` is the resulting proxy output datum + * (`{ logic, settings }`); `nonce` is the proxy input's `OutputReference`. + * + * The `SettingsAuthPayload` schema is emitted into the blueprint via the + * `documentation` validator (see `validators/v1_1_rc1/documentation.ak`), so we + * serialize against the generated type rather than hand-building PlutusData. + */ +export function buildSettingsAuthPayload(change, destinationScriptHash, nextLogicHash, nextSettingsData, nonce) { + const payload = { + change, + destination: destinationScriptHash, + datum: { + logic: nextLogicHash, + settings: nextSettingsData + }, + nonce: { + transaction_id: nonce.transactionId().toString(), + output_index: nonce.index() + } + }; + return Data.serialize(V1_1Rc1Types.SettingsAuthPayload, payload); +} + +/** + * blake2b-256 of the auth payload's CBOR — the 32-byte message each governance + * signer COSE-signs (CIP-8). Mirrors the on-chain + * `blake2b_256(cbor.serialise(payload))` and the orchestrator's payload hashing. + */ +export function hashSettingsAuthPayload(payload) { + return blake2b_256(HexBlob(payload.toCbor())); +} + +/** + * The withdraw-handler redeemer: the change-class selector plus the COSE + * signatures authorizing it (the payload itself is reconstructed on-chain). + */ +export function serializeSettingsSignedRedeemer(change, signatures) { + return Data.serialize(V1_1Rc1Types.SettingsSignedRedeemer, { + change, + signatures + }); +} +//# sourceMappingURL=utils.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/settings/utils.js.map b/modules/realfi-partner-sdk/dist/esm/admin/settings/utils.js.map new file mode 100644 index 0000000000..6761bd6e53 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/settings/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","names":["addressFromValidator","blake2b_256","HexBlob","Data","parse","Core","V1_1Rc1Types","SETTINGS_FROZEN_CONSTR","createSettingsValidatorScript","proxyPolicyId","governanceConfig","enableTrace","SettingsProtocolSettingsProtocolSettingsWithdraw","Script","createSettingsValidatorAddress","network","script","parseProxyDatumRaw","datum","constr","asConstrPlutusData","Error","fields","getData","logicBytes","get","asBoundedBytes","logicHash","Buffer","from","toString","settingsData","buildRawProxyDatum","PlutusList","add","PlutusData","newBytes","newConstrPlutusData","ConstrPlutusData","getSettingsAlternative","getAlternative","isFrozenSettingsData","freezeSettingsData","unwrapFrozenSettingsData","parseLiveSettings","undefined","SettingsV1","serializeSettings","settings","serialize","serializeSettingsRedeemer","redeemer","SettingsRedeemer","buildSettingsAuthPayload","change","destinationScriptHash","nextLogicHash","nextSettingsData","nonce","payload","destination","logic","transaction_id","transactionId","output_index","index","SettingsAuthPayload","hashSettingsAuthPayload","toCbor","serializeSettingsSignedRedeemer","signatures","SettingsSignedRedeemer"],"sources":["../../../../src/admin/settings/utils.ts"],"sourcesContent":["import {\n addressFromValidator,\n blake2b_256,\n HexBlob,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse } from \"@blaze-cardano/data\";\nimport { Core } from \"@blaze-cardano/sdk\";\n\nimport * as V1_1Rc1Types from \"../../generated-types/v1_1_rc1/index.js\";\nimport type {\n GovernanceConfig,\n SettingsV1,\n Tuple_VerificationKey_COSESign1,\n} from \"../../generated-types/v1_1_rc1/index.js\";\nimport type { IParsedProxyDatum } from \"./types.js\";\n\nexport const SETTINGS_FROZEN_CONSTR = 1n;\n\nexport function createSettingsValidatorScript(\n proxyPolicyId: Core.PolicyId,\n governanceConfig: GovernanceConfig,\n enableTrace = false,\n): Core.Script {\n return new V1_1Rc1Types.SettingsProtocolSettingsProtocolSettingsWithdraw(\n proxyPolicyId,\n governanceConfig,\n enableTrace,\n ).Script;\n}\n\nexport function createSettingsValidatorAddress(\n network: Core.NetworkId,\n proxyPolicyId: Core.PolicyId,\n governanceConfig: GovernanceConfig,\n enableTrace = false,\n): Core.Address {\n const script = createSettingsValidatorScript(\n proxyPolicyId,\n governanceConfig,\n enableTrace,\n );\n return addressFromValidator(network, script);\n}\n\nexport function parseProxyDatumRaw(datum: Core.PlutusData): IParsedProxyDatum {\n const constr = datum.asConstrPlutusData();\n if (!constr) {\n throw new Error(\"Proxy datum is not constructor PlutusData\");\n }\n\n const fields = constr.getData();\n const logicBytes = fields.get(0).asBoundedBytes();\n if (!logicBytes) {\n throw new Error(\"Proxy datum logic field is not bytes\");\n }\n\n return {\n logicHash: Buffer.from(logicBytes).toString(\"hex\") as Core.ScriptHash,\n settingsData: fields.get(1),\n };\n}\n\nexport function buildRawProxyDatum(\n logicHash: Core.ScriptHash,\n settingsData: Core.PlutusData,\n): Core.PlutusData {\n const fields = new Core.PlutusList();\n fields.add(Core.PlutusData.newBytes(Buffer.from(logicHash, \"hex\")));\n fields.add(settingsData);\n return Core.PlutusData.newConstrPlutusData(\n new Core.ConstrPlutusData(0n, fields),\n );\n}\n\nexport function getSettingsAlternative(settingsData: Core.PlutusData): bigint {\n const constr = settingsData.asConstrPlutusData();\n if (!constr) {\n throw new Error(\"Settings data is not constructor PlutusData\");\n }\n return constr.getAlternative();\n}\n\nexport function isFrozenSettingsData(settingsData: Core.PlutusData): boolean {\n return getSettingsAlternative(settingsData) === SETTINGS_FROZEN_CONSTR;\n}\n\nexport function freezeSettingsData(\n settingsData: Core.PlutusData,\n): Core.PlutusData {\n const fields = new Core.PlutusList();\n fields.add(settingsData);\n return Core.PlutusData.newConstrPlutusData(\n new Core.ConstrPlutusData(SETTINGS_FROZEN_CONSTR, fields),\n );\n}\n\nexport function unwrapFrozenSettingsData(\n settingsData: Core.PlutusData,\n): Core.PlutusData {\n const constr = settingsData.asConstrPlutusData();\n if (!constr || constr.getAlternative() !== SETTINGS_FROZEN_CONSTR) {\n throw new Error(\"Settings data is not frozen\");\n }\n return constr.getData().get(0);\n}\n\nexport function parseLiveSettings(\n settingsData: Core.PlutusData,\n): SettingsV1 | undefined {\n if (isFrozenSettingsData(settingsData)) {\n return undefined;\n }\n return parse(V1_1Rc1Types.SettingsV1, settingsData) as SettingsV1;\n}\n\nexport function serializeSettings(settings: SettingsV1): Core.PlutusData {\n return Data.serialize(V1_1Rc1Types.SettingsV1, settings);\n}\n\nexport function serializeSettingsRedeemer(\n redeemer: V1_1Rc1Types.SettingsRedeemer,\n): Core.PlutusData {\n return Data.serialize(V1_1Rc1Types.SettingsRedeemer, redeemer);\n}\n\n/**\n * Serialize the `SettingsAuthPayload` the on-chain validator reconstructs from\n * the proxy in/out and hashes. `datum` is the resulting proxy output datum\n * (`{ logic, settings }`); `nonce` is the proxy input's `OutputReference`.\n *\n * The `SettingsAuthPayload` schema is emitted into the blueprint via the\n * `documentation` validator (see `validators/v1_1_rc1/documentation.ak`), so we\n * serialize against the generated type rather than hand-building PlutusData.\n */\nexport function buildSettingsAuthPayload(\n change: V1_1Rc1Types.SettingsRedeemer,\n destinationScriptHash: Core.ScriptHash,\n nextLogicHash: Core.ScriptHash,\n nextSettingsData: Core.PlutusData,\n nonce: Core.TransactionInput,\n): Core.PlutusData {\n const payload: V1_1Rc1Types.SettingsAuthPayload = {\n change,\n destination: destinationScriptHash,\n datum: { logic: nextLogicHash, settings: nextSettingsData },\n nonce: {\n transaction_id: nonce.transactionId().toString(),\n output_index: nonce.index(),\n },\n };\n return Data.serialize(V1_1Rc1Types.SettingsAuthPayload, payload);\n}\n\n/**\n * blake2b-256 of the auth payload's CBOR — the 32-byte message each governance\n * signer COSE-signs (CIP-8). Mirrors the on-chain\n * `blake2b_256(cbor.serialise(payload))` and the orchestrator's payload hashing.\n */\nexport function hashSettingsAuthPayload(payload: Core.PlutusData): string {\n return blake2b_256(HexBlob(payload.toCbor()));\n}\n\n/**\n * The withdraw-handler redeemer: the change-class selector plus the COSE\n * signatures authorizing it (the payload itself is reconstructed on-chain).\n */\nexport function serializeSettingsSignedRedeemer(\n change: V1_1Rc1Types.SettingsRedeemer,\n signatures: Tuple_VerificationKey_COSESign1[],\n): Core.PlutusData {\n return Data.serialize(V1_1Rc1Types.SettingsSignedRedeemer, {\n change,\n signatures,\n });\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/settings/v1_1_rc1.js b/modules/realfi-partner-sdk/dist/esm/admin/settings/v1_1_rc1.js new file mode 100644 index 0000000000..0d71fa63e9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/settings/v1_1_rc1.js @@ -0,0 +1,336 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import { addressFromValidator } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { calculateMinAda, Core } from "@blaze-cardano/sdk"; +import { credentialFromScript, deployScript, lockOrPayAssets, readSingletonDatum, rewardAccountFromScript } from "../../sdk/shared/index.js"; +import { buildRawProxyDatum, buildSettingsAuthPayload, createSettingsValidatorScript, freezeSettingsData, hashSettingsAuthPayload, isFrozenSettingsData, parseLiveSettings, parseProxyDatumRaw, serializeSettings, serializeSettingsSignedRedeemer, unwrapFrozenSettingsData } from "./utils.js"; + +// Internal implementation for the current v1.1-era settings layout. +// Public consumers should import the version-neutral RealfiProtocolSettingsAdmin +// from admin/settings or the package root. +export class RealfiProtocolSettingsAdmin { + constructor(blaze, params) { + _defineProperty(this, "blaze", void 0); + _defineProperty(this, "proxyPolicyId", void 0); + _defineProperty(this, "governanceConfig", void 0); + _defineProperty(this, "settingsScript", void 0); + _defineProperty(this, "settingsScriptHash", void 0); + _defineProperty(this, "settingsValidatorAddress", void 0); + _defineProperty(this, "settingsRewardAccount", void 0); + _defineProperty(this, "enableTrace", void 0); + _defineProperty(this, "settingsRefInput", void 0); + this.blaze = blaze; + this.proxyPolicyId = params.proxyPolicyId; + this.governanceConfig = params.governanceConfig; + this.enableTrace = params.enableTrace ?? false; + this.settingsRefInput = params.referenceInputs?.settingsRefInput; + this.settingsScript = createSettingsValidatorScript(this.proxyPolicyId, this.governanceConfig, this.enableTrace); + this.settingsScriptHash = this.settingsScript.hash(); + this.settingsValidatorAddress = addressFromValidator(this.blaze.provider.network, this.settingsScript); + this.settingsRewardAccount = rewardAccountFromScript(this.settingsScript, this.blaze.provider.network); + } + static create(blaze, params) { + return new RealfiProtocolSettingsAdmin(blaze, params); + } + static fromProtocolSdk(sdk, params) { + return new RealfiProtocolSettingsAdmin(sdk.blaze, { + proxyPolicyId: sdk.oneShotPolicyId, + governanceConfig: params.governanceConfig, + enableTrace: params.enableTrace ?? sdk.enableTrace, + referenceInputs: params.referenceInputs + }); + } + async deploySettingsValidator() { + return deployScript(this.blaze, this.settingsScript); + } + registerSettingsStake() { + return this.blaze.newTransaction().addRegisterStake(credentialFromScript(this.settingsScript)); + } + async getSettingsState() { + const proxyAssetId = Core.AssetId(this.proxyPolicyId); + const { + utxo: proxyUtxo, + datum: proxyDatum + } = await readSingletonDatum(this.blaze.provider, proxyAssetId); + const { + logicHash, + settingsData + } = parseProxyDatumRaw(proxyDatum); + const proxyAddress = proxyUtxo.output().address(); + const paymentCredentialHash = proxyAddress.getProps().paymentPart?.hash; + if (!paymentCredentialHash) { + throw new Error("Proxy UTxO address has no payment credential"); + } + const isFrozen = isFrozenSettingsData(settingsData); + return { + proxyUtxo, + proxyDatum, + proxyAddress, + logicHash, + settingsData, + liveSettings: isFrozen ? undefined : parseLiveSettings(settingsData), + paymentCredentialHash, + isFrozen, + isGovernedByThisValidator: paymentCredentialHash === this.settingsScriptHash + }; + } + async buildDepositProxyTx() { + const state = await this.getSettingsState(); + if (state.isGovernedByThisValidator) { + throw new Error("Proxy NFT is already locked at this settings validator"); + } + if (state.proxyAddress.getProps().paymentPart?.type === Core.CredentialType.ScriptHash) { + throw new Error("Proxy NFT is currently held by another script. Move it with the current controller before depositing into protocol settings."); + } + return lockOrPayAssets(this.blaze.newTransaction().addInput(state.proxyUtxo), this.settingsValidatorAddress, + // Same datum, but a script address is wider than the wallet address the + // proxy is moving from, so the floor can still rise here. + this.valueWithDatumMinAda(this.settingsValidatorAddress, state.proxyUtxo.output().amount(), state.proxyDatum), state.proxyDatum); + } + + /** + * Compute the 32-byte auth-payload hash the governance keys must COSE-sign for + * `change`, against the current on-chain proxy state. Two-phase, mirroring the + * orchestrator's `getSignedPayloadFromOrderInputs`: get this hash, collect the + * signatures out-of-band, then pass them to the matching build method. The + * proxy UTxO must be unchanged between the two calls (it is the nonce). + */ + async getSettingsAuthPayloadHash(change) { + const state = await this.requireGovernedState(); + const resolved = this.resolveChange(state, change); + return hashSettingsAuthPayload(buildSettingsAuthPayload(resolved.redeemer, this.scriptHashOfAddress(resolved.receiverAddress), resolved.nextLogicHash, resolved.nextSettingsData, state.proxyUtxo.input())); + } + async buildChangePermissionsTx(params) { + return this.buildChange({ + type: "ChangePermissions", + nextPermissions: params.nextPermissions + }, params.signatures); + } + async buildChangeConfigTx(params) { + return this.buildChange({ + type: "ChangeConfig", + nextConfig: params.nextConfig + }, params.signatures); + } + async buildChangeLogicTx(params) { + return this.buildChange({ + type: "ChangeLogic", + nextLogicHash: params.nextLogicHash, + nextRegistry: params.nextRegistry + }, params.signatures); + } + async buildShutdownTx(params) { + return this.buildChange({ + type: "Shutdown" + }, params.signatures); + } + async buildRestoreTx(params) { + return this.buildChange({ + type: "Restore" + }, params.signatures); + } + async buildMigrateTx(params) { + return this.buildChange({ + type: "Migrate", + destination: params.destination + }, params.signatures, params.destinationSignatures); + } + + /** + * Resolve a change against the current state into the concrete redeemer + + * resulting proxy output (logic, canonical settings, destination). Shared by + * `getSettingsAuthPayloadHash` and `buildChange` so the signed hash and the + * submitted tx always describe the same resulting state. Settings read from + * chain are canonicalized through the typed schema (see `canonicalizeSettings`) + * so blaze's encoding matches the validator's `cbor.serialise`. + */ + resolveChange(state, change) { + const here = this.settingsValidatorAddress; + switch (change.type) { + case "ChangePermissions": + { + const current = this.requireLive(state); + const next = { + ...current, + permissions: change.nextPermissions + }; + return { + redeemer: "ChangePermissions", + nextLogicHash: state.logicHash, + nextSettingsData: serializeSettings(next), + receiverAddress: here + }; + } + case "ChangeConfig": + { + const current = this.requireLive(state); + const next = { + ...current, + config: change.nextConfig + }; + return { + redeemer: "ChangeConfig", + nextLogicHash: state.logicHash, + nextSettingsData: serializeSettings(next), + receiverAddress: here + }; + } + case "ChangeLogic": + { + const current = this.requireLive(state); + const nextLogicHash = change.nextLogicHash ?? state.logicHash; + const nextRegistry = change.nextRegistry ?? current.registry; + if (nextLogicHash === state.logicHash && JSON.stringify(nextRegistry) === JSON.stringify(current.registry)) { + throw new Error("ChangeLogic requires a logic or registry change"); + } + return { + redeemer: "ChangeLogic", + nextLogicHash, + nextSettingsData: serializeSettings({ + ...current, + registry: nextRegistry + }), + receiverAddress: here + }; + } + case "Shutdown": + { + if (state.isFrozen) { + throw new Error("Settings are already frozen"); + } + return { + redeemer: "Shutdown", + nextLogicHash: state.logicHash, + nextSettingsData: freezeSettingsData(state.settingsData), + receiverAddress: here + }; + } + case "Restore": + { + if (!state.isFrozen) { + throw new Error("Settings are not frozen"); + } + return { + redeemer: "Restore", + nextLogicHash: state.logicHash, + nextSettingsData: this.canonicalizeSettings(unwrapFrozenSettingsData(state.settingsData)), + receiverAddress: here + }; + } + case "Migrate": + { + const destination = change.destination; + if (destination.settingsScriptHash === this.settingsScriptHash) { + throw new Error("Migrate requires a different destination settings validator"); + } + return { + redeemer: "Migrate", + nextLogicHash: state.logicHash, + nextSettingsData: this.canonicalizeSettings(state.settingsData), + receiverAddress: destination.settingsValidatorAddress, + coValidateWith: { + rewardAccount: destination.settingsRewardAccount, + applyWitness: destination.applySettingsWitness.bind(destination) + } + }; + } + } + } + requireLive(state) { + if (state.isFrozen || !state.liveSettings) { + throw new Error("Settings are not in a live state"); + } + return state.liveSettings; + } + + /** + * Re-serialize live settings through the typed schema so the CBOR matches the + * validator's `cbor.serialise` of the parsed output datum. Settings read from + * chain and re-embedded opaquely (Restore's unwrap, Migrate's passthrough) + * otherwise don't. Frozen settings aren't a `SettingsV1`, so pass through. + */ + canonicalizeSettings(settingsData) { + const live = parseLiveSettings(settingsData); + return live ? serializeSettings(live) : settingsData; + } + async buildChange(change, signatures, destinationSignatures) { + const state = await this.requireGovernedState(); + const resolved = this.resolveChange(state, change); + const tx = this.blaze.newTransaction(); + tx.addInput(state.proxyUtxo, Data.Void()); + tx.addWithdrawal(this.settingsRewardAccount, 0n, serializeSettingsSignedRedeemer(resolved.redeemer, signatures)); + await this.applySettingsWitness(tx); + if (resolved.coValidateWith) { + if (!destinationSignatures) { + throw new Error("Migrate requires destinationSignatures for the destination validator"); + } + // The destination validator independently verifies signatures over the + // same auth-payload hash against its own governance config. + tx.addWithdrawal(resolved.coValidateWith.rewardAccount, 0n, serializeSettingsSignedRedeemer("Migrate", destinationSignatures)); + await resolved.coValidateWith.applyWitness(tx); + } + const nextDatum = buildRawProxyDatum(resolved.nextLogicHash, resolved.nextSettingsData); + return lockOrPayAssets(tx, resolved.receiverAddress, this.valueWithDatumMinAda(resolved.receiverAddress, state.proxyUtxo.output().amount(), nextDatum), nextDatum); + } + + /** + * The value to put on a settings output carrying `datum`, topped up to the + * min-ADA floor for that datum when the incoming coin no longer covers it. + * + * A settings edit can grow the datum (appending a reserve asset, a larger + * registry), and the coin comes from the UTxO being spent, which was sized + * for the *previous* datum. `TxBuilder` would raise an under-funded output to + * the floor on its way out, but that happens after balancing has already + * decided what to draw from the wallet, so the bump is never funded and the + * built transaction is short by exactly that amount. Reserving it here means + * `complete()` treats the growth as an ordinary larger payment from the first + * iteration. + * + * The floor is recomputed after each raise: a larger coin is itself a few + * bytes wider on the wire, which can lift the floor again. + */ + valueWithDatumMinAda(address, value, datum) { + let result = value; + // Converges in one or two passes; the bound just refuses to spin. + for (let i = 0; i < 4; i++) { + const output = new Core.TransactionOutput(address, result); + output.setDatum(Core.Datum.newInlineData(datum)); + const floor = calculateMinAda(output, this.blaze.params.coinsPerUtxoByte); + if (result.coin() >= floor) return result; + result = new Core.Value(floor, result.multiasset()); + } + return result; + } + + /** The payment-credential script hash of a settings validator address. */ + scriptHashOfAddress(address) { + const paymentPart = address.getProps().paymentPart; + if (!paymentPart || paymentPart.type !== Core.CredentialType.ScriptHash) { + throw new Error("Governed settings output must be locked at a script (validator) address"); + } + return paymentPart.hash; + } + async requireGovernedState() { + const state = await this.getSettingsState(); + if (!state.isGovernedByThisValidator) { + throw new Error("Proxy NFT is not currently governed by this settings validator. Deposit it first."); + } + return state; + } + async applySettingsWitness(tx) { + if (this.settingsRefInput) { + tx.addReferenceInput(this.settingsRefInput); + return; + } + const refInput = await this.blaze.provider.resolveScriptRef(this.settingsScriptHash); + if (refInput) { + this.settingsRefInput = refInput; + tx.addReferenceInput(refInput); + return; + } + tx.provideScript(this.settingsScript); + } +} +//# sourceMappingURL=v1_1_rc1.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/admin/settings/v1_1_rc1.js.map b/modules/realfi-partner-sdk/dist/esm/admin/settings/v1_1_rc1.js.map new file mode 100644 index 0000000000..47f0a88c56 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/admin/settings/v1_1_rc1.js.map @@ -0,0 +1 @@ +{"version":3,"file":"v1_1_rc1.js","names":["addressFromValidator","Data","calculateMinAda","Core","credentialFromScript","deployScript","lockOrPayAssets","readSingletonDatum","rewardAccountFromScript","buildRawProxyDatum","buildSettingsAuthPayload","createSettingsValidatorScript","freezeSettingsData","hashSettingsAuthPayload","isFrozenSettingsData","parseLiveSettings","parseProxyDatumRaw","serializeSettings","serializeSettingsSignedRedeemer","unwrapFrozenSettingsData","RealfiProtocolSettingsAdmin","constructor","blaze","params","_defineProperty","proxyPolicyId","governanceConfig","enableTrace","settingsRefInput","referenceInputs","settingsScript","settingsScriptHash","hash","settingsValidatorAddress","provider","network","settingsRewardAccount","create","fromProtocolSdk","sdk","oneShotPolicyId","deploySettingsValidator","registerSettingsStake","newTransaction","addRegisterStake","getSettingsState","proxyAssetId","AssetId","utxo","proxyUtxo","datum","proxyDatum","logicHash","settingsData","proxyAddress","output","address","paymentCredentialHash","getProps","paymentPart","Error","isFrozen","liveSettings","undefined","isGovernedByThisValidator","buildDepositProxyTx","state","type","CredentialType","ScriptHash","addInput","valueWithDatumMinAda","amount","getSettingsAuthPayloadHash","change","requireGovernedState","resolved","resolveChange","redeemer","scriptHashOfAddress","receiverAddress","nextLogicHash","nextSettingsData","input","buildChangePermissionsTx","buildChange","nextPermissions","signatures","buildChangeConfigTx","nextConfig","buildChangeLogicTx","nextRegistry","buildShutdownTx","buildRestoreTx","buildMigrateTx","destination","destinationSignatures","here","current","requireLive","next","permissions","config","registry","JSON","stringify","canonicalizeSettings","coValidateWith","rewardAccount","applyWitness","applySettingsWitness","bind","live","tx","Void","addWithdrawal","nextDatum","value","result","i","TransactionOutput","setDatum","Datum","newInlineData","floor","coinsPerUtxoByte","coin","Value","multiasset","addReferenceInput","refInput","resolveScriptRef","provideScript"],"sources":["../../../../src/admin/settings/v1_1_rc1.ts"],"sourcesContent":["import { addressFromValidator } from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n calculateMinAda,\n Core,\n type TxBuilder,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport type {\n GovernanceConfig,\n SettingsV1,\n} from \"../../generated-types/v1_1_rc1/index.js\";\nimport {\n credentialFromScript,\n deployScript,\n lockOrPayAssets,\n readSingletonDatum,\n rewardAccountFromScript,\n} from \"../../sdk/shared/index.js\";\nimport type {\n IBuildChangeConfigTxParams,\n IBuildChangeLogicTxParams,\n IBuildChangePermissionsTxParams,\n IBuildMigrateTxParams,\n IProtocolSettingsAdminInstance,\n IProtocolSettingsAdminParams,\n IProtocolSettingsAdminSource,\n IProtocolSettingsState,\n IResolvedSettingsChange,\n TSettingsChange,\n TSettingsSignatures,\n} from \"./types.js\";\nimport {\n buildRawProxyDatum,\n buildSettingsAuthPayload,\n createSettingsValidatorScript,\n freezeSettingsData,\n hashSettingsAuthPayload,\n isFrozenSettingsData,\n parseLiveSettings,\n parseProxyDatumRaw,\n serializeSettings,\n serializeSettingsSignedRedeemer,\n unwrapFrozenSettingsData,\n} from \"./utils.js\";\n\n// Internal implementation for the current v1.1-era settings layout.\n// Public consumers should import the version-neutral RealfiProtocolSettingsAdmin\n// from admin/settings or the package root.\nexport class RealfiProtocolSettingsAdmin<\n P extends Provider,\n W extends Wallet,\n> implements IProtocolSettingsAdminInstance {\n readonly blaze: Blaze;\n readonly proxyPolicyId: Core.PolicyId;\n readonly governanceConfig: GovernanceConfig;\n readonly settingsScript: Core.Script;\n readonly settingsScriptHash: Core.ScriptHash;\n readonly settingsValidatorAddress: Core.Address;\n readonly settingsRewardAccount: Core.RewardAccount;\n readonly enableTrace: boolean;\n\n private settingsRefInput?: Core.TransactionUnspentOutput;\n\n private constructor(\n blaze: Blaze,\n params: IProtocolSettingsAdminParams,\n ) {\n this.blaze = blaze;\n this.proxyPolicyId = params.proxyPolicyId;\n this.governanceConfig = params.governanceConfig;\n this.enableTrace = params.enableTrace ?? false;\n this.settingsRefInput = params.referenceInputs?.settingsRefInput;\n\n this.settingsScript = createSettingsValidatorScript(\n this.proxyPolicyId,\n this.governanceConfig,\n this.enableTrace,\n );\n this.settingsScriptHash = this.settingsScript.hash();\n this.settingsValidatorAddress = addressFromValidator(\n this.blaze.provider.network,\n this.settingsScript,\n );\n this.settingsRewardAccount = rewardAccountFromScript(\n this.settingsScript,\n this.blaze.provider.network,\n );\n }\n\n static create

(\n blaze: Blaze,\n params: IProtocolSettingsAdminParams,\n ): RealfiProtocolSettingsAdmin {\n return new RealfiProtocolSettingsAdmin(blaze, params);\n }\n\n static fromProtocolSdk

(\n sdk: IProtocolSettingsAdminSource,\n params: Omit<\n IProtocolSettingsAdminParams,\n \"proxyPolicyId\" | \"enableTrace\"\n > & {\n enableTrace?: boolean;\n },\n ): RealfiProtocolSettingsAdmin {\n return new RealfiProtocolSettingsAdmin(sdk.blaze, {\n proxyPolicyId: sdk.oneShotPolicyId,\n governanceConfig: params.governanceConfig,\n enableTrace: params.enableTrace ?? sdk.enableTrace,\n referenceInputs: params.referenceInputs,\n });\n }\n\n async deploySettingsValidator(): Promise {\n return deployScript(this.blaze, this.settingsScript);\n }\n\n registerSettingsStake(): TxBuilder {\n return this.blaze\n .newTransaction()\n .addRegisterStake(credentialFromScript(this.settingsScript));\n }\n\n async getSettingsState(): Promise {\n const proxyAssetId = Core.AssetId(this.proxyPolicyId);\n const { utxo: proxyUtxo, datum: proxyDatum } = await readSingletonDatum(\n this.blaze.provider,\n proxyAssetId,\n );\n\n const { logicHash, settingsData } = parseProxyDatumRaw(proxyDatum);\n const proxyAddress = proxyUtxo.output().address();\n const paymentCredentialHash = proxyAddress.getProps().paymentPart?.hash;\n if (!paymentCredentialHash) {\n throw new Error(\"Proxy UTxO address has no payment credential\");\n }\n\n const isFrozen = isFrozenSettingsData(settingsData);\n return {\n proxyUtxo,\n proxyDatum,\n proxyAddress,\n logicHash,\n settingsData,\n liveSettings: isFrozen ? undefined : parseLiveSettings(settingsData),\n paymentCredentialHash,\n isFrozen,\n isGovernedByThisValidator:\n paymentCredentialHash === this.settingsScriptHash,\n };\n }\n\n async buildDepositProxyTx(): Promise {\n const state = await this.getSettingsState();\n\n if (state.isGovernedByThisValidator) {\n throw new Error(\"Proxy NFT is already locked at this settings validator\");\n }\n\n if (\n state.proxyAddress.getProps().paymentPart?.type ===\n Core.CredentialType.ScriptHash\n ) {\n throw new Error(\n \"Proxy NFT is currently held by another script. Move it with the current controller before depositing into protocol settings.\",\n );\n }\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(state.proxyUtxo),\n this.settingsValidatorAddress,\n // Same datum, but a script address is wider than the wallet address the\n // proxy is moving from, so the floor can still rise here.\n this.valueWithDatumMinAda(\n this.settingsValidatorAddress,\n state.proxyUtxo.output().amount(),\n state.proxyDatum,\n ),\n state.proxyDatum,\n );\n }\n\n /**\n * Compute the 32-byte auth-payload hash the governance keys must COSE-sign for\n * `change`, against the current on-chain proxy state. Two-phase, mirroring the\n * orchestrator's `getSignedPayloadFromOrderInputs`: get this hash, collect the\n * signatures out-of-band, then pass them to the matching build method. The\n * proxy UTxO must be unchanged between the two calls (it is the nonce).\n */\n async getSettingsAuthPayloadHash(\n change: TSettingsChange,\n ): Promise {\n const state = await this.requireGovernedState();\n const resolved = this.resolveChange(state, change);\n return hashSettingsAuthPayload(\n buildSettingsAuthPayload(\n resolved.redeemer,\n this.scriptHashOfAddress(resolved.receiverAddress),\n resolved.nextLogicHash,\n resolved.nextSettingsData,\n state.proxyUtxo.input(),\n ),\n );\n }\n\n async buildChangePermissionsTx(\n params: IBuildChangePermissionsTxParams,\n ): Promise {\n return this.buildChange(\n { type: \"ChangePermissions\", nextPermissions: params.nextPermissions },\n params.signatures,\n );\n }\n\n async buildChangeConfigTx(\n params: IBuildChangeConfigTxParams,\n ): Promise {\n return this.buildChange(\n { type: \"ChangeConfig\", nextConfig: params.nextConfig },\n params.signatures,\n );\n }\n\n async buildChangeLogicTx(\n params: IBuildChangeLogicTxParams,\n ): Promise {\n return this.buildChange(\n {\n type: \"ChangeLogic\",\n nextLogicHash: params.nextLogicHash,\n nextRegistry: params.nextRegistry,\n },\n params.signatures,\n );\n }\n\n async buildShutdownTx(params: {\n signatures: TSettingsSignatures;\n }): Promise {\n return this.buildChange({ type: \"Shutdown\" }, params.signatures);\n }\n\n async buildRestoreTx(params: {\n signatures: TSettingsSignatures;\n }): Promise {\n return this.buildChange({ type: \"Restore\" }, params.signatures);\n }\n\n async buildMigrateTx(\n params: IBuildMigrateTxParams,\n ): Promise {\n return this.buildChange(\n { type: \"Migrate\", destination: params.destination },\n params.signatures,\n params.destinationSignatures,\n );\n }\n\n /**\n * Resolve a change against the current state into the concrete redeemer +\n * resulting proxy output (logic, canonical settings, destination). Shared by\n * `getSettingsAuthPayloadHash` and `buildChange` so the signed hash and the\n * submitted tx always describe the same resulting state. Settings read from\n * chain are canonicalized through the typed schema (see `canonicalizeSettings`)\n * so blaze's encoding matches the validator's `cbor.serialise`.\n */\n private resolveChange(\n state: IProtocolSettingsState,\n change: TSettingsChange,\n ): IResolvedSettingsChange {\n const here = this.settingsValidatorAddress;\n switch (change.type) {\n case \"ChangePermissions\": {\n const current = this.requireLive(state);\n const next: SettingsV1 = {\n ...current,\n permissions: change.nextPermissions,\n };\n return {\n redeemer: \"ChangePermissions\",\n nextLogicHash: state.logicHash,\n nextSettingsData: serializeSettings(next),\n receiverAddress: here,\n };\n }\n case \"ChangeConfig\": {\n const current = this.requireLive(state);\n const next: SettingsV1 = { ...current, config: change.nextConfig };\n return {\n redeemer: \"ChangeConfig\",\n nextLogicHash: state.logicHash,\n nextSettingsData: serializeSettings(next),\n receiverAddress: here,\n };\n }\n case \"ChangeLogic\": {\n const current = this.requireLive(state);\n const nextLogicHash = change.nextLogicHash ?? state.logicHash;\n const nextRegistry = change.nextRegistry ?? current.registry;\n if (\n nextLogicHash === state.logicHash &&\n JSON.stringify(nextRegistry) === JSON.stringify(current.registry)\n ) {\n throw new Error(\"ChangeLogic requires a logic or registry change\");\n }\n return {\n redeemer: \"ChangeLogic\",\n nextLogicHash,\n nextSettingsData: serializeSettings({\n ...current,\n registry: nextRegistry,\n }),\n receiverAddress: here,\n };\n }\n case \"Shutdown\": {\n if (state.isFrozen) {\n throw new Error(\"Settings are already frozen\");\n }\n return {\n redeemer: \"Shutdown\",\n nextLogicHash: state.logicHash,\n nextSettingsData: freezeSettingsData(state.settingsData),\n receiverAddress: here,\n };\n }\n case \"Restore\": {\n if (!state.isFrozen) {\n throw new Error(\"Settings are not frozen\");\n }\n return {\n redeemer: \"Restore\",\n nextLogicHash: state.logicHash,\n nextSettingsData: this.canonicalizeSettings(\n unwrapFrozenSettingsData(state.settingsData),\n ),\n receiverAddress: here,\n };\n }\n case \"Migrate\": {\n const destination = change.destination;\n if (destination.settingsScriptHash === this.settingsScriptHash) {\n throw new Error(\n \"Migrate requires a different destination settings validator\",\n );\n }\n return {\n redeemer: \"Migrate\",\n nextLogicHash: state.logicHash,\n nextSettingsData: this.canonicalizeSettings(state.settingsData),\n receiverAddress: destination.settingsValidatorAddress,\n coValidateWith: {\n rewardAccount: destination.settingsRewardAccount,\n applyWitness: destination.applySettingsWitness.bind(destination),\n },\n };\n }\n }\n }\n\n private requireLive(state: IProtocolSettingsState): SettingsV1 {\n if (state.isFrozen || !state.liveSettings) {\n throw new Error(\"Settings are not in a live state\");\n }\n return state.liveSettings;\n }\n\n /**\n * Re-serialize live settings through the typed schema so the CBOR matches the\n * validator's `cbor.serialise` of the parsed output datum. Settings read from\n * chain and re-embedded opaquely (Restore's unwrap, Migrate's passthrough)\n * otherwise don't. Frozen settings aren't a `SettingsV1`, so pass through.\n */\n private canonicalizeSettings(settingsData: Core.PlutusData): Core.PlutusData {\n const live = parseLiveSettings(settingsData);\n return live ? serializeSettings(live) : settingsData;\n }\n\n private async buildChange(\n change: TSettingsChange,\n signatures: TSettingsSignatures,\n destinationSignatures?: TSettingsSignatures,\n ): Promise {\n const state = await this.requireGovernedState();\n const resolved = this.resolveChange(state, change);\n\n const tx = this.blaze.newTransaction();\n tx.addInput(state.proxyUtxo, Data.Void());\n tx.addWithdrawal(\n this.settingsRewardAccount,\n 0n,\n serializeSettingsSignedRedeemer(resolved.redeemer, signatures),\n );\n\n await this.applySettingsWitness(tx);\n\n if (resolved.coValidateWith) {\n if (!destinationSignatures) {\n throw new Error(\n \"Migrate requires destinationSignatures for the destination validator\",\n );\n }\n // The destination validator independently verifies signatures over the\n // same auth-payload hash against its own governance config.\n tx.addWithdrawal(\n resolved.coValidateWith.rewardAccount,\n 0n,\n serializeSettingsSignedRedeemer(\"Migrate\", destinationSignatures),\n );\n await resolved.coValidateWith.applyWitness(tx);\n }\n\n const nextDatum = buildRawProxyDatum(\n resolved.nextLogicHash,\n resolved.nextSettingsData,\n );\n return lockOrPayAssets(\n tx,\n resolved.receiverAddress,\n this.valueWithDatumMinAda(\n resolved.receiverAddress,\n state.proxyUtxo.output().amount(),\n nextDatum,\n ),\n nextDatum,\n );\n }\n\n /**\n * The value to put on a settings output carrying `datum`, topped up to the\n * min-ADA floor for that datum when the incoming coin no longer covers it.\n *\n * A settings edit can grow the datum (appending a reserve asset, a larger\n * registry), and the coin comes from the UTxO being spent, which was sized\n * for the *previous* datum. `TxBuilder` would raise an under-funded output to\n * the floor on its way out, but that happens after balancing has already\n * decided what to draw from the wallet, so the bump is never funded and the\n * built transaction is short by exactly that amount. Reserving it here means\n * `complete()` treats the growth as an ordinary larger payment from the first\n * iteration.\n *\n * The floor is recomputed after each raise: a larger coin is itself a few\n * bytes wider on the wire, which can lift the floor again.\n */\n private valueWithDatumMinAda(\n address: Core.Address,\n value: Core.Value,\n datum: Core.PlutusData,\n ): Core.Value {\n let result = value;\n // Converges in one or two passes; the bound just refuses to spin.\n for (let i = 0; i < 4; i++) {\n const output = new Core.TransactionOutput(address, result);\n output.setDatum(Core.Datum.newInlineData(datum));\n const floor = calculateMinAda(output, this.blaze.params.coinsPerUtxoByte);\n if (result.coin() >= floor) return result;\n result = new Core.Value(floor, result.multiasset());\n }\n return result;\n }\n\n /** The payment-credential script hash of a settings validator address. */\n private scriptHashOfAddress(address: Core.Address): Core.ScriptHash {\n const paymentPart = address.getProps().paymentPart;\n if (!paymentPart || paymentPart.type !== Core.CredentialType.ScriptHash) {\n throw new Error(\n \"Governed settings output must be locked at a script (validator) address\",\n );\n }\n return paymentPart.hash as Core.ScriptHash;\n }\n\n private async requireGovernedState(): Promise {\n const state = await this.getSettingsState();\n if (!state.isGovernedByThisValidator) {\n throw new Error(\n \"Proxy NFT is not currently governed by this settings validator. Deposit it first.\",\n );\n }\n return state;\n }\n\n async applySettingsWitness(tx: TxBuilder): Promise {\n if (this.settingsRefInput) {\n tx.addReferenceInput(this.settingsRefInput);\n return;\n }\n\n const refInput = await this.blaze.provider.resolveScriptRef(\n this.settingsScriptHash,\n );\n if (refInput) {\n this.settingsRefInput = refInput;\n tx.addReferenceInput(refInput);\n return;\n }\n\n tx.provideScript(this.settingsScript);\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/client.js b/modules/realfi-partner-sdk/dist/esm/api/client.js new file mode 100644 index 0000000000..1cbe048f03 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/client.js @@ -0,0 +1,41 @@ +import * as Core from "@blaze-cardano/core"; +/** POST a GraphQL query and return its `data`, throwing on HTTP or GraphQL errors. */ +export async function gqlRequest(url, query, variables, clientId) { + const payload = { + query, + variables + }; + if (clientId) { + payload.extensions = { + clientId + }; + } + const response = await fetch(url, { + method: "POST", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(payload) + }); + if (!response.ok) { + throw new Error(`RealFi API request failed: ${response.status} ${response.statusText}`); + } + const body = await response.json(); + if (body.errors?.length) { + throw new Error(`RealFi API error: ${body.errors.map(error => error.message).join("; ")}`); + } + if (body.data == null) { + throw new Error("RealFi API returned no data"); + } + return body.data; +} + +/** + * Derive the payment (and stake, when present) key hashes from a bech32 address. + * Wallet-keyed queries match on any supplied hash. + */ +export function ownerKeyHashes(address) { + const props = Core.Address.fromBech32(address).getProps(); + return [props.paymentPart?.hash, props.delegationPart?.hash].filter(hash => Boolean(hash)); +} +//# sourceMappingURL=client.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/client.js.map b/modules/realfi-partner-sdk/dist/esm/api/client.js.map new file mode 100644 index 0000000000..72bdc4bf33 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/client.js.map @@ -0,0 +1 @@ +{"version":3,"file":"client.js","names":["Core","gqlRequest","url","query","variables","clientId","payload","extensions","response","fetch","method","headers","body","JSON","stringify","ok","Error","status","statusText","json","errors","length","map","error","message","join","data","ownerKeyHashes","address","props","Address","fromBech32","getProps","paymentPart","hash","delegationPart","filter","Boolean"],"sources":["../../../src/api/client.ts"],"sourcesContent":["import * as Core from \"@blaze-cardano/core\";\n\ninterface IGraphQLResponse {\n data?: T;\n errors?: { message: string }[];\n}\n\n/** POST a GraphQL query and return its `data`, throwing on HTTP or GraphQL errors. */\nexport async function gqlRequest(\n url: string,\n query: string,\n variables?: Record,\n clientId?: string,\n): Promise {\n const payload: Record = { query, variables };\n if (clientId) {\n payload.extensions = { clientId };\n }\n const response = await fetch(url, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify(payload),\n });\n if (!response.ok) {\n throw new Error(\n `RealFi API request failed: ${response.status} ${response.statusText}`,\n );\n }\n const body = (await response.json()) as IGraphQLResponse;\n if (body.errors?.length) {\n throw new Error(\n `RealFi API error: ${body.errors.map((error) => error.message).join(\"; \")}`,\n );\n }\n if (body.data == null) {\n throw new Error(\"RealFi API returned no data\");\n }\n return body.data;\n}\n\n/**\n * Derive the payment (and stake, when present) key hashes from a bech32 address.\n * Wallet-keyed queries match on any supplied hash.\n */\nexport function ownerKeyHashes(address: string): string[] {\n const props = Core.Address.fromBech32(address).getProps();\n return [props.paymentPart?.hash, props.delegationPart?.hash].filter(\n (hash): hash is string => Boolean(hash),\n );\n}\n"],"mappings":"AAAA,OAAO,KAAKA,IAAI,MAAM,qBAAqB;AAO3C;AACA,OAAO,eAAeC,UAAUA,CAC9BC,GAAW,EACXC,KAAa,EACbC,SAAmC,EACnCC,QAAiB,EACL;EACZ,MAAMC,OAAgC,GAAG;IAAEH,KAAK;IAAEC;EAAU,CAAC;EAC7D,IAAIC,QAAQ,EAAE;IACZC,OAAO,CAACC,UAAU,GAAG;MAAEF;IAAS,CAAC;EACnC;EACA,MAAMG,QAAQ,GAAG,MAAMC,KAAK,CAACP,GAAG,EAAE;IAChCQ,MAAM,EAAE,MAAM;IACdC,OAAO,EAAE;MAAE,cAAc,EAAE;IAAmB,CAAC;IAC/CC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACR,OAAO;EAC9B,CAAC,CAAC;EACF,IAAI,CAACE,QAAQ,CAACO,EAAE,EAAE;IAChB,MAAM,IAAIC,KAAK,CACb,8BAA8BR,QAAQ,CAACS,MAAM,IAAIT,QAAQ,CAACU,UAAU,EACtE,CAAC;EACH;EACA,MAAMN,IAAI,GAAI,MAAMJ,QAAQ,CAACW,IAAI,CAAC,CAAyB;EAC3D,IAAIP,IAAI,CAACQ,MAAM,EAAEC,MAAM,EAAE;IACvB,MAAM,IAAIL,KAAK,CACb,qBAAqBJ,IAAI,CAACQ,MAAM,CAACE,GAAG,CAAEC,KAAK,IAAKA,KAAK,CAACC,OAAO,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC,EAC3E,CAAC;EACH;EACA,IAAIb,IAAI,CAACc,IAAI,IAAI,IAAI,EAAE;IACrB,MAAM,IAAIV,KAAK,CAAC,6BAA6B,CAAC;EAChD;EACA,OAAOJ,IAAI,CAACc,IAAI;AAClB;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAACC,OAAe,EAAY;EACxD,MAAMC,KAAK,GAAG7B,IAAI,CAAC8B,OAAO,CAACC,UAAU,CAACH,OAAO,CAAC,CAACI,QAAQ,CAAC,CAAC;EACzD,OAAO,CAACH,KAAK,CAACI,WAAW,EAAEC,IAAI,EAAEL,KAAK,CAACM,cAAc,EAAED,IAAI,CAAC,CAACE,MAAM,CAChEF,IAAI,IAAqBG,OAAO,CAACH,IAAI,CACxC,CAAC;AACH","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/index.js b/modules/realfi-partner-sdk/dist/esm/api/index.js new file mode 100644 index 0000000000..2fbc5fc6e9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/index.js @@ -0,0 +1,5 @@ +// Off-chain RealFi API part of the SDK. + +export { RealfiApi } from "./realfi-api.js"; +export { API_REGISTRY } from "./registry.js"; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/index.js.map b/modules/realfi-partner-sdk/dist/esm/api/index.js.map new file mode 100644 index 0000000000..a9f4699428 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["RealfiApi","API_REGISTRY"],"sources":["../../../src/api/index.ts"],"sourcesContent":["// Off-chain RealFi API part of the SDK.\n\nexport { RealfiApi, type IRealfiApiSDK } from \"./realfi-api.js\";\nexport { API_REGISTRY } from \"./registry.js\";\nexport type { IApiEndpoints, TApiNetwork } from \"./registry.js\";\nexport type {\n IApiOrderUtxo,\n IOrderFees,\n IOrderInfo,\n IPartnerConfig,\n IPartnerLimits,\n IPointsBalance,\n IReferrerCode,\n IStakeTimes,\n IYieldBreakdown,\n TOrderAction,\n TOrderStatus,\n} from \"./types.js\";\n"],"mappings":"AAAA;;AAEA,SAASA,SAAS,QAA4B,iBAAiB;AAC/D,SAASC,YAAY,QAAQ,eAAe","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/partner-config.js b/modules/realfi-partner-sdk/dist/esm/api/partner-config.js new file mode 100644 index 0000000000..6becf31bef --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/partner-config.js @@ -0,0 +1,56 @@ +function isRecord(value) { + return typeof value === "object" && value !== null && !Array.isArray(value); +} + +// Cardano native asset names are 0-32 bytes, so the canonical dotted form may +// legitimately end after the separator. Policy IDs and byte strings are +// lowercase hex; ADA is Sundae's single canonical non-native sentinel. +const PARTNER_ASSET_ID = /^(?:ada\.lovelace|[0-9a-f]{56}\.(?:[0-9a-f]{2}){0,32})$/; +function readAssetList(source, key) { + const value = source[key]; + if (!Array.isArray(value) || !value.every(asset => typeof asset === "string" && PARTNER_ASSET_ID.test(asset))) { + throw new Error(`invalid partner configuration: ${key} must be an asset ID array`); + } + return [...value]; +} +function readLimit(source, key) { + const value = source[key]; + if (typeof value !== "number" || !Number.isSafeInteger(value) || value < 0) { + throw new Error(`invalid partner configuration: limits.${key} must be a non-negative safe integer`); + } + return value; +} +function readStablecoinAssetId(source) { + const assetId = source.stablecoinAssetId; + if (typeof assetId !== "string" || !/^[0-9a-f]{56}\.(?:[0-9a-f]{2}){1,32}$/.test(assetId)) { + throw new Error("invalid partner configuration: stablecoinAssetId must be a canonical Sundae asset ID"); + } + return assetId; +} + +/** Validate untrusted JSON and return fresh partner-owned values. */ +export function parsePartnerConfig(value) { + if (!isRecord(value)) { + throw new Error("invalid partner configuration: expected an object"); + } + const swapCounterpartAssets = readAssetList(value, "swapCounterpartAssets"); + const swapOrderHistoryAssets = readAssetList(value, "swapOrderHistoryAssets"); + const history = new Set(swapOrderHistoryAssets); + const omittedLiveAsset = swapCounterpartAssets.find(asset => !history.has(asset)); + if (omittedLiveAsset !== undefined) { + throw new Error(`invalid partner configuration: history list omits live swap asset ${omittedLiveAsset}`); + } + if (!isRecord(value.limits)) { + throw new Error("invalid partner configuration: limits must be an object"); + } + return { + stablecoinAssetId: readStablecoinAssetId(value), + swapCounterpartAssets, + swapOrderHistoryAssets, + limits: { + mintMinUsd: readLimit(value.limits, "mintMinUsd"), + redeemMinUsd: readLimit(value.limits, "redeemMinUsd") + } + }; +} +//# sourceMappingURL=partner-config.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/partner-config.js.map b/modules/realfi-partner-sdk/dist/esm/api/partner-config.js.map new file mode 100644 index 0000000000..6bb0da0e1e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/partner-config.js.map @@ -0,0 +1 @@ +{"version":3,"file":"partner-config.js","names":["isRecord","value","Array","isArray","PARTNER_ASSET_ID","readAssetList","source","key","every","asset","test","Error","readLimit","Number","isSafeInteger","readStablecoinAssetId","assetId","stablecoinAssetId","parsePartnerConfig","swapCounterpartAssets","swapOrderHistoryAssets","history","Set","omittedLiveAsset","find","has","undefined","limits","mintMinUsd","redeemMinUsd"],"sources":["../../../src/api/partner-config.ts"],"sourcesContent":["import type { IPartnerConfig } from \"./types.js\";\n\nfunction isRecord(value: unknown): value is Record {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\n// Cardano native asset names are 0-32 bytes, so the canonical dotted form may\n// legitimately end after the separator. Policy IDs and byte strings are\n// lowercase hex; ADA is Sundae's single canonical non-native sentinel.\nconst PARTNER_ASSET_ID =\n /^(?:ada\\.lovelace|[0-9a-f]{56}\\.(?:[0-9a-f]{2}){0,32})$/;\n\nfunction readAssetList(source: Record, key: string): string[] {\n const value = source[key];\n if (\n !Array.isArray(value) ||\n !value.every(\n (asset) => typeof asset === \"string\" && PARTNER_ASSET_ID.test(asset),\n )\n ) {\n throw new Error(\n `invalid partner configuration: ${key} must be an asset ID array`,\n );\n }\n return [...value];\n}\n\nfunction readLimit(source: Record, key: string): number {\n const value = source[key];\n if (typeof value !== \"number\" || !Number.isSafeInteger(value) || value < 0) {\n throw new Error(\n `invalid partner configuration: limits.${key} must be a non-negative safe integer`,\n );\n }\n return value;\n}\n\nfunction readStablecoinAssetId(source: Record): string {\n const assetId = source.stablecoinAssetId;\n if (\n typeof assetId !== \"string\" ||\n !/^[0-9a-f]{56}\\.(?:[0-9a-f]{2}){1,32}$/.test(assetId)\n ) {\n throw new Error(\n \"invalid partner configuration: stablecoinAssetId must be a canonical Sundae asset ID\",\n );\n }\n return assetId;\n}\n\n/** Validate untrusted JSON and return fresh partner-owned values. */\nexport function parsePartnerConfig(value: unknown): IPartnerConfig {\n if (!isRecord(value)) {\n throw new Error(\"invalid partner configuration: expected an object\");\n }\n\n const swapCounterpartAssets = readAssetList(value, \"swapCounterpartAssets\");\n const swapOrderHistoryAssets = readAssetList(value, \"swapOrderHistoryAssets\");\n const history = new Set(swapOrderHistoryAssets);\n const omittedLiveAsset = swapCounterpartAssets.find(\n (asset) => !history.has(asset),\n );\n if (omittedLiveAsset !== undefined) {\n throw new Error(\n `invalid partner configuration: history list omits live swap asset ${omittedLiveAsset}`,\n );\n }\n\n if (!isRecord(value.limits)) {\n throw new Error(\"invalid partner configuration: limits must be an object\");\n }\n\n return {\n stablecoinAssetId: readStablecoinAssetId(value),\n swapCounterpartAssets,\n swapOrderHistoryAssets,\n limits: {\n mintMinUsd: readLimit(value.limits, \"mintMinUsd\"),\n redeemMinUsd: readLimit(value.limits, \"redeemMinUsd\"),\n },\n };\n}\n"],"mappings":"AAEA,SAASA,QAAQA,CAACC,KAAc,EAAoC;EAClE,OAAO,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC;AAC7E;;AAEA;AACA;AACA;AACA,MAAMG,gBAAgB,GACpB,yDAAyD;AAE3D,SAASC,aAAaA,CAACC,MAA+B,EAAEC,GAAW,EAAY;EAC7E,MAAMN,KAAK,GAAGK,MAAM,CAACC,GAAG,CAAC;EACzB,IACE,CAACL,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,IACrB,CAACA,KAAK,CAACO,KAAK,CACTC,KAAK,IAAK,OAAOA,KAAK,KAAK,QAAQ,IAAIL,gBAAgB,CAACM,IAAI,CAACD,KAAK,CACrE,CAAC,EACD;IACA,MAAM,IAAIE,KAAK,CACb,kCAAkCJ,GAAG,4BACvC,CAAC;EACH;EACA,OAAO,CAAC,GAAGN,KAAK,CAAC;AACnB;AAEA,SAASW,SAASA,CAACN,MAA+B,EAAEC,GAAW,EAAU;EACvE,MAAMN,KAAK,GAAGK,MAAM,CAACC,GAAG,CAAC;EACzB,IAAI,OAAON,KAAK,KAAK,QAAQ,IAAI,CAACY,MAAM,CAACC,aAAa,CAACb,KAAK,CAAC,IAAIA,KAAK,GAAG,CAAC,EAAE;IAC1E,MAAM,IAAIU,KAAK,CACb,yCAAyCJ,GAAG,sCAC9C,CAAC;EACH;EACA,OAAON,KAAK;AACd;AAEA,SAASc,qBAAqBA,CAACT,MAA+B,EAAU;EACtE,MAAMU,OAAO,GAAGV,MAAM,CAACW,iBAAiB;EACxC,IACE,OAAOD,OAAO,KAAK,QAAQ,IAC3B,CAAC,uCAAuC,CAACN,IAAI,CAACM,OAAO,CAAC,EACtD;IACA,MAAM,IAAIL,KAAK,CACb,sFACF,CAAC;EACH;EACA,OAAOK,OAAO;AAChB;;AAEA;AACA,OAAO,SAASE,kBAAkBA,CAACjB,KAAc,EAAkB;EACjE,IAAI,CAACD,QAAQ,CAACC,KAAK,CAAC,EAAE;IACpB,MAAM,IAAIU,KAAK,CAAC,mDAAmD,CAAC;EACtE;EAEA,MAAMQ,qBAAqB,GAAGd,aAAa,CAACJ,KAAK,EAAE,uBAAuB,CAAC;EAC3E,MAAMmB,sBAAsB,GAAGf,aAAa,CAACJ,KAAK,EAAE,wBAAwB,CAAC;EAC7E,MAAMoB,OAAO,GAAG,IAAIC,GAAG,CAACF,sBAAsB,CAAC;EAC/C,MAAMG,gBAAgB,GAAGJ,qBAAqB,CAACK,IAAI,CAChDf,KAAK,IAAK,CAACY,OAAO,CAACI,GAAG,CAAChB,KAAK,CAC/B,CAAC;EACD,IAAIc,gBAAgB,KAAKG,SAAS,EAAE;IAClC,MAAM,IAAIf,KAAK,CACb,qEAAqEY,gBAAgB,EACvF,CAAC;EACH;EAEA,IAAI,CAACvB,QAAQ,CAACC,KAAK,CAAC0B,MAAM,CAAC,EAAE;IAC3B,MAAM,IAAIhB,KAAK,CAAC,yDAAyD,CAAC;EAC5E;EAEA,OAAO;IACLM,iBAAiB,EAAEF,qBAAqB,CAACd,KAAK,CAAC;IAC/CkB,qBAAqB;IACrBC,sBAAsB;IACtBO,MAAM,EAAE;MACNC,UAAU,EAAEhB,SAAS,CAACX,KAAK,CAAC0B,MAAM,EAAE,YAAY,CAAC;MACjDE,YAAY,EAAEjB,SAAS,CAACX,KAAK,CAAC0B,MAAM,EAAE,cAAc;IACtD;EACF,CAAC;AACH","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/queries.js b/modules/realfi-partner-sdk/dist/esm/api/queries.js new file mode 100644 index 0000000000..47b06bb3c1 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/queries.js @@ -0,0 +1,65 @@ +// GraphQL operations + their raw response shapes (field names match the schema). +// The clean SDK-facing types live in ./types; the API class maps raw -> clean. + +export const STAKE_TIMES_QUERY = `{ + stakeTimes { + CurrentCooldownPeriodEnd { slot } + NextCooldownPeriodEnd { slot } + } +}`; +export const ORDER_FEES_QUERY = `{ orderFees { mintBps redeemBps } }`; +export const SUSDR_EXCHANGE_RATE_INPUTS_QUERY = `{ + susdrExchangeRateInputs { + circulatingSusdr + vaultUsdr + pendingYield + diffusionStartUnixMilli + diffusionEndUnixMilli + } +}`; +export const YIELD_BREAKDOWN_QUERY = `query ($owner: String!) { + susdrYieldBreakdown(owner: $owner) { + totalSUSDr + totalUSDrValue + principal + yield + yieldPercent + } +}`; +export const ORDERS_BY_OWNER_QUERY = `query ($owner: String!, $status: OrderStatus!) { + ordersByOwner(owner: $owner, status: $status) { + status + order { + Owner + Action + Amount + Principal + Yield + Slot + Forfeit + UnlockSlot + MatureSlot + ClaimTxHash + Version + utxo { txHash index } + resultUtxo { txHash index } + } + } +}`; +export const POINTS_BALANCE_QUERY = `query ($value: String!) { + V_WALLET_POINTS_BALANCE( + filters: [{ field: "WALLET_ADDRESS", operator: IN, value: $value }] + ) { + nodes { WALLET_POINTS_BALANCE } + } +}`; +export const REFERRER_CODE_QUERY = `query ($walletAddress: String!) { + referrerCode(walletAddress: $walletAddress) { code createdAt } +}`; +export const REFERRAL_REWARDS_QUERY = `query ($walletAddress: String!) { + referralRewards(walletAddress: $walletAddress) +}`; +export const INVITED_COUNT_QUERY = `query ($walletAddress: String!) { + invitedCount(walletAddress: $walletAddress) +}`; +//# sourceMappingURL=queries.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/queries.js.map b/modules/realfi-partner-sdk/dist/esm/api/queries.js.map new file mode 100644 index 0000000000..ef1ac7cbfc --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/queries.js.map @@ -0,0 +1 @@ +{"version":3,"file":"queries.js","names":["STAKE_TIMES_QUERY","ORDER_FEES_QUERY","SUSDR_EXCHANGE_RATE_INPUTS_QUERY","YIELD_BREAKDOWN_QUERY","ORDERS_BY_OWNER_QUERY","POINTS_BALANCE_QUERY","REFERRER_CODE_QUERY","REFERRAL_REWARDS_QUERY","INVITED_COUNT_QUERY"],"sources":["../../../src/api/queries.ts"],"sourcesContent":["// GraphQL operations + their raw response shapes (field names match the schema).\n// The clean SDK-facing types live in ./types; the API class maps raw -> clean.\n\nimport type { TOrderAction, TOrderStatus } from \"./types.js\";\n\nexport const STAKE_TIMES_QUERY = `{\n stakeTimes {\n CurrentCooldownPeriodEnd { slot }\n NextCooldownPeriodEnd { slot }\n }\n}`;\n\nexport interface IRawStakeTimes {\n stakeTimes: {\n CurrentCooldownPeriodEnd: { slot: number };\n NextCooldownPeriodEnd: { slot: number };\n };\n}\n\nexport const ORDER_FEES_QUERY = `{ orderFees { mintBps redeemBps } }`;\n\nexport interface IRawOrderFees {\n orderFees: { mintBps: number; redeemBps: number };\n}\n\nexport const SUSDR_EXCHANGE_RATE_INPUTS_QUERY = `{\n susdrExchangeRateInputs {\n circulatingSusdr\n vaultUsdr\n pendingYield\n diffusionStartUnixMilli\n diffusionEndUnixMilli\n }\n}`;\n\nexport interface IRawSusdrExchangeRateInputs {\n susdrExchangeRateInputs: {\n circulatingSusdr: string;\n vaultUsdr: string;\n pendingYield: string;\n diffusionStartUnixMilli: string;\n diffusionEndUnixMilli: string;\n };\n}\n\nexport const YIELD_BREAKDOWN_QUERY = `query ($owner: String!) {\n susdrYieldBreakdown(owner: $owner) {\n totalSUSDr\n totalUSDrValue\n principal\n yield\n yieldPercent\n }\n}`;\n\nexport interface IRawYieldBreakdown {\n susdrYieldBreakdown: {\n totalSUSDr: string;\n totalUSDrValue: string;\n principal: string;\n yield: string;\n yieldPercent: number;\n };\n}\n\nexport const ORDERS_BY_OWNER_QUERY = `query ($owner: String!, $status: OrderStatus!) {\n ordersByOwner(owner: $owner, status: $status) {\n status\n order {\n Owner\n Action\n Amount\n Principal\n Yield\n Slot\n Forfeit\n UnlockSlot\n MatureSlot\n ClaimTxHash\n Version\n utxo { txHash index }\n resultUtxo { txHash index }\n }\n }\n}`;\n\nexport interface IRawUtxo {\n txHash: string;\n index: number;\n}\n\nexport interface IRawOrder {\n Owner: string;\n Action: TOrderAction;\n Amount: string;\n Principal: string | null;\n Yield: string | null;\n Slot: string;\n Forfeit: string;\n UnlockSlot: string | null;\n MatureSlot: string | null;\n ClaimTxHash: string | null;\n Version: string;\n utxo: IRawUtxo;\n resultUtxo: IRawUtxo | null;\n}\n\nexport interface IRawOrdersByOwner {\n ordersByOwner: { status: TOrderStatus; order: IRawOrder }[];\n}\n\nexport const POINTS_BALANCE_QUERY = `query ($value: String!) {\n V_WALLET_POINTS_BALANCE(\n filters: [{ field: \"WALLET_ADDRESS\", operator: IN, value: $value }]\n ) {\n nodes { WALLET_POINTS_BALANCE }\n }\n}`;\n\nexport interface IRawPointsBalance {\n V_WALLET_POINTS_BALANCE: {\n nodes: { WALLET_POINTS_BALANCE: string | null }[];\n };\n}\n\nexport interface IRawPointsBalanceData {\n current_balance?: number;\n potential_points?: number;\n day_multiplier?: number;\n}\n\nexport const REFERRER_CODE_QUERY = `query ($walletAddress: String!) {\n referrerCode(walletAddress: $walletAddress) { code createdAt }\n}`;\n\nexport interface IRawReferrerCode {\n referrerCode: { code: string; createdAt: string } | null;\n}\n\nexport const REFERRAL_REWARDS_QUERY = `query ($walletAddress: String!) {\n referralRewards(walletAddress: $walletAddress)\n}`;\n\nexport interface IRawReferralRewards {\n referralRewards: number | null;\n}\n\nexport const INVITED_COUNT_QUERY = `query ($walletAddress: String!) {\n invitedCount(walletAddress: $walletAddress)\n}`;\n\nexport interface IRawInvitedCount {\n invitedCount: number | null;\n}\n"],"mappings":"AAAA;AACA;;AAIA,OAAO,MAAMA,iBAAiB,GAAG;AACjC;AACA;AACA;AACA;AACA,EAAE;AASF,OAAO,MAAMC,gBAAgB,GAAG,qCAAqC;AAMrE,OAAO,MAAMC,gCAAgC,GAAG;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AAYF,OAAO,MAAMC,qBAAqB,GAAG;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AAYF,OAAO,MAAMC,qBAAqB,GAAG;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AA2BF,OAAO,MAAMC,oBAAoB,GAAG;AACpC;AACA;AACA;AACA;AACA;AACA,EAAE;AAcF,OAAO,MAAMC,mBAAmB,GAAG;AACnC;AACA,EAAE;AAMF,OAAO,MAAMC,sBAAsB,GAAG;AACtC;AACA,EAAE;AAMF,OAAO,MAAMC,mBAAmB,GAAG;AACnC;AACA,EAAE","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/realfi-api.js b/modules/realfi-partner-sdk/dist/esm/api/realfi-api.js new file mode 100644 index 0000000000..0a77698887 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/realfi-api.js @@ -0,0 +1,173 @@ +import { DEFAULT_CLIENT_SOURCE, SDK_VERSION } from "../sdk/shared/client-id.js"; +import { gqlRequest, ownerKeyHashes } from "./client.js"; +import { parsePartnerConfig } from "./partner-config.js"; +import { INVITED_COUNT_QUERY, ORDER_FEES_QUERY, ORDERS_BY_OWNER_QUERY, POINTS_BALANCE_QUERY, REFERRAL_REWARDS_QUERY, REFERRER_CODE_QUERY, STAKE_TIMES_QUERY, SUSDR_EXCHANGE_RATE_INPUTS_QUERY, YIELD_BREAKDOWN_QUERY } from "./queries.js"; +import { API_REGISTRY } from "./registry.js"; +const DEFAULT_ORDER_STATUSES = ["Open", "Validating", "Canceled", "Executed", "Invalidated", "InvalidMinReceived"]; + +/** Off-chain RealFi data: order status, stake times, yield, fees, points, referrals. */ + +function mapOrder(status, order) { + return { + owner: order.Owner, + action: order.Action, + status, + amount: BigInt(order.Amount), + slot: BigInt(order.Slot), + forfeit: BigInt(order.Forfeit), + version: order.Version, + utxo: { + txHash: order.utxo.txHash, + outputIndex: order.utxo.index + }, + resultUtxo: order.resultUtxo ? { + txHash: order.resultUtxo.txHash, + outputIndex: order.resultUtxo.index + } : undefined, + unlockSlot: order.UnlockSlot == null ? undefined : BigInt(order.UnlockSlot), + matureSlot: order.MatureSlot == null ? undefined : BigInt(order.MatureSlot), + principal: order.Principal == null ? undefined : BigInt(order.Principal), + yield: order.Yield == null ? undefined : BigInt(order.Yield), + claimTxHash: order.ClaimTxHash ?? undefined + }; +} + +/** + * Off-chain GraphQL reads. Construct with {@link RealfiApi.forNetwork} or + * {@link RealfiApi.create}; no Blaze instance required. + */ +export class RealfiApi { + constructor(endpoints, clientId = `${DEFAULT_CLIENT_SOURCE}/${SDK_VERSION}`) { + this.endpoints = endpoints; + this.clientId = clientId; + } + request(url, query, variables) { + return gqlRequest(url, query, variables, this.clientId); + } + static forNetwork(network, clientId) { + return new RealfiApi(API_REGISTRY[network], clientId); + } + static create(endpoints, clientId) { + return new RealfiApi(endpoints, clientId); + } + async getPartnerConfig() { + const url = this.endpoints.partnerConfigUrl; + if (!url) { + throw new Error("partnerConfigUrl is required to read partner runtime configuration"); + } + const response = await fetch(url, { + method: "GET", + headers: { + Accept: "application/json" + }, + cache: "no-store" + }); + if (!response.ok) { + throw new Error(`Partner configuration request failed: ${response.status} ${response.statusText}`); + } + let body; + try { + body = await response.json(); + } catch (error) { + throw new Error("invalid partner configuration: response is not JSON", { + cause: error + }); + } + return parsePartnerConfig(body); + } + async getStakeTimes() { + const data = await this.request(this.endpoints.realfiUrl, STAKE_TIMES_QUERY); + return { + currentCooldownSlot: BigInt(data.stakeTimes.CurrentCooldownPeriodEnd.slot), + nextCooldownSlot: BigInt(data.stakeTimes.NextCooldownPeriodEnd.slot) + }; + } + async getCooldownUnlockSlot() { + return (await this.getStakeTimes()).nextCooldownSlot; + } + async getOrdersByOwner(address, statuses = DEFAULT_ORDER_STATUSES) { + const owners = ownerKeyHashes(address); + const batches = await Promise.all(owners.flatMap(owner => statuses.map(status => this.request(this.endpoints.realfiUrl, ORDERS_BY_OWNER_QUERY, { + owner, + status + }).then(data => data.ordersByOwner)))); + const seen = new Set(); + return batches.flat().map(result => mapOrder(result.status, result.order)).filter(order => { + const key = `${order.utxo.txHash}#${order.utxo.outputIndex}`; + if (seen.has(key)) return false; + seen.add(key); + return true; + }).sort((a, b) => Number(b.slot - a.slot)); + } + async getOrderFees() { + const data = await this.request(this.endpoints.realfiUrl, ORDER_FEES_QUERY); + return data.orderFees; + } + async getSusdrExchangeRateInputs() { + const data = await this.request(this.endpoints.realfiUrl, SUSDR_EXCHANGE_RATE_INPUTS_QUERY); + const inputs = data.susdrExchangeRateInputs; + return { + circulatingSusdr: BigInt(inputs.circulatingSusdr), + vaultUsdr: BigInt(inputs.vaultUsdr), + pendingYield: BigInt(inputs.pendingYield), + diffusionStartUnixMilli: BigInt(inputs.diffusionStartUnixMilli), + diffusionEndUnixMilli: BigInt(inputs.diffusionEndUnixMilli) + }; + } + async getYieldBreakdown(address) { + const [owner] = ownerKeyHashes(address); + if (!owner) { + throw new Error("address has no payment credential"); + } + const data = await this.request(this.endpoints.realfiUrl, YIELD_BREAKDOWN_QUERY, { + owner + }); + const breakdown = data.susdrYieldBreakdown; + return { + totalSUSDr: BigInt(breakdown.totalSUSDr), + totalUSDrValue: BigInt(breakdown.totalUSDrValue), + principal: BigInt(breakdown.principal), + yield: BigInt(breakdown.yield), + yieldPercent: breakdown.yieldPercent + }; + } + async getPointsBalance(address) { + const value = ownerKeyHashes(address).join(","); + const data = await this.request(this.endpoints.assetTransparencyUrl, POINTS_BALANCE_QUERY, { + value + }); + const raw = data.V_WALLET_POINTS_BALANCE.nodes[0]?.WALLET_POINTS_BALANCE; + if (!raw) { + return { + pointsBalance: null, + potentialPoints: null, + multiplier: null + }; + } + const parsed = JSON.parse(raw); + return { + pointsBalance: parsed.current_balance ?? null, + potentialPoints: parsed.potential_points ?? null, + multiplier: parsed.day_multiplier ?? null + }; + } + async getReferrerCode(address) { + const data = await this.request(this.endpoints.assetTransparencyUrl, REFERRER_CODE_QUERY, { + walletAddress: ownerKeyHashes(address).join(",") + }); + return data.referrerCode; + } + async getReferralRewards(address) { + const data = await this.request(this.endpoints.assetTransparencyUrl, REFERRAL_REWARDS_QUERY, { + walletAddress: ownerKeyHashes(address).join(",") + }); + return data.referralRewards; + } + async getInvitedCount(address) { + const data = await this.request(this.endpoints.assetTransparencyUrl, INVITED_COUNT_QUERY, { + walletAddress: ownerKeyHashes(address).join(",") + }); + return data.invitedCount; + } +} +//# sourceMappingURL=realfi-api.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/realfi-api.js.map b/modules/realfi-partner-sdk/dist/esm/api/realfi-api.js.map new file mode 100644 index 0000000000..e92418bee8 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/realfi-api.js.map @@ -0,0 +1 @@ +{"version":3,"file":"realfi-api.js","names":["DEFAULT_CLIENT_SOURCE","SDK_VERSION","gqlRequest","ownerKeyHashes","parsePartnerConfig","INVITED_COUNT_QUERY","ORDER_FEES_QUERY","ORDERS_BY_OWNER_QUERY","POINTS_BALANCE_QUERY","REFERRAL_REWARDS_QUERY","REFERRER_CODE_QUERY","STAKE_TIMES_QUERY","SUSDR_EXCHANGE_RATE_INPUTS_QUERY","YIELD_BREAKDOWN_QUERY","API_REGISTRY","DEFAULT_ORDER_STATUSES","mapOrder","status","order","owner","Owner","action","Action","amount","BigInt","Amount","slot","Slot","forfeit","Forfeit","version","Version","utxo","txHash","outputIndex","index","resultUtxo","undefined","unlockSlot","UnlockSlot","matureSlot","MatureSlot","principal","Principal","yield","Yield","claimTxHash","ClaimTxHash","RealfiApi","constructor","endpoints","clientId","request","url","query","variables","forNetwork","network","create","getPartnerConfig","partnerConfigUrl","Error","response","fetch","method","headers","Accept","cache","ok","statusText","body","json","error","cause","getStakeTimes","data","realfiUrl","currentCooldownSlot","stakeTimes","CurrentCooldownPeriodEnd","nextCooldownSlot","NextCooldownPeriodEnd","getCooldownUnlockSlot","getOrdersByOwner","address","statuses","owners","batches","Promise","all","flatMap","map","then","ordersByOwner","seen","Set","flat","result","filter","key","has","add","sort","a","b","Number","getOrderFees","orderFees","getSusdrExchangeRateInputs","inputs","susdrExchangeRateInputs","circulatingSusdr","vaultUsdr","pendingYield","diffusionStartUnixMilli","diffusionEndUnixMilli","getYieldBreakdown","breakdown","susdrYieldBreakdown","totalSUSDr","totalUSDrValue","yieldPercent","getPointsBalance","value","join","assetTransparencyUrl","raw","V_WALLET_POINTS_BALANCE","nodes","WALLET_POINTS_BALANCE","pointsBalance","potentialPoints","multiplier","parsed","JSON","parse","current_balance","potential_points","day_multiplier","getReferrerCode","walletAddress","referrerCode","getReferralRewards","referralRewards","getInvitedCount","invitedCount"],"sources":["../../../src/api/realfi-api.ts"],"sourcesContent":["import { DEFAULT_CLIENT_SOURCE, SDK_VERSION } from \"../sdk/shared/client-id.js\";\nimport type { ISusdrExchangeRateInputs } from \"../sdk/v1_1_rc1/diffusion.js\";\nimport { gqlRequest, ownerKeyHashes } from \"./client.js\";\nimport { parsePartnerConfig } from \"./partner-config.js\";\nimport {\n INVITED_COUNT_QUERY,\n ORDER_FEES_QUERY,\n ORDERS_BY_OWNER_QUERY,\n POINTS_BALANCE_QUERY,\n REFERRAL_REWARDS_QUERY,\n REFERRER_CODE_QUERY,\n STAKE_TIMES_QUERY,\n SUSDR_EXCHANGE_RATE_INPUTS_QUERY,\n YIELD_BREAKDOWN_QUERY,\n type IRawInvitedCount,\n type IRawOrder,\n type IRawOrderFees,\n type IRawOrdersByOwner,\n type IRawPointsBalance,\n type IRawPointsBalanceData,\n type IRawReferralRewards,\n type IRawReferrerCode,\n type IRawStakeTimes,\n type IRawSusdrExchangeRateInputs,\n type IRawYieldBreakdown,\n} from \"./queries.js\";\nimport {\n API_REGISTRY,\n type IApiEndpoints,\n type TApiNetwork,\n} from \"./registry.js\";\nimport type {\n IOrderFees,\n IOrderInfo,\n IPartnerConfig,\n IPointsBalance,\n IReferrerCode,\n IStakeTimes,\n IYieldBreakdown,\n TOrderStatus,\n} from \"./types.js\";\n\nconst DEFAULT_ORDER_STATUSES: TOrderStatus[] = [\n \"Open\",\n \"Validating\",\n \"Canceled\",\n \"Executed\",\n \"Invalidated\",\n \"InvalidMinReceived\",\n];\n\n/** Off-chain RealFi data: order status, stake times, yield, fees, points, referrals. */\nexport interface IRealfiApiSDK {\n /** Product-curated swap lists and USD UX limits from deployed runtime config. */\n getPartnerConfig(): Promise;\n /** Cooldown boundary slots for unstaking. */\n getStakeTimes(): Promise;\n /** The slot to pass as an unstake `unlockSlot` (the next cooldown boundary). */\n getCooldownUnlockSlot(): Promise;\n /** Orders owned by `address` across the given statuses (default: all tracked). */\n getOrdersByOwner(\n address: string,\n statuses?: TOrderStatus[],\n ): Promise;\n /** Per-action minimum-fee policy (basis points). */\n getOrderFees(): Promise;\n /** Inputs for calculating the diffusion-aware USDr-per-sUSDr rate. */\n getSusdrExchangeRateInputs(): Promise;\n /** Yield owed on a wallet's sUSDr holdings. */\n getYieldBreakdown(address: string): Promise;\n /** A wallet's points balance. */\n getPointsBalance(address: string): Promise;\n /** A wallet's referral code, or null if none. */\n getReferrerCode(address: string): Promise;\n /** Cumulative referral-bonus points credited to a wallet. */\n getReferralRewards(address: string): Promise;\n /** Number of referees a wallet has invited. */\n getInvitedCount(address: string): Promise;\n}\n\nfunction mapOrder(status: TOrderStatus, order: IRawOrder): IOrderInfo {\n return {\n owner: order.Owner,\n action: order.Action,\n status,\n amount: BigInt(order.Amount),\n slot: BigInt(order.Slot),\n forfeit: BigInt(order.Forfeit),\n version: order.Version,\n utxo: { txHash: order.utxo.txHash, outputIndex: order.utxo.index },\n resultUtxo: order.resultUtxo\n ? { txHash: order.resultUtxo.txHash, outputIndex: order.resultUtxo.index }\n : undefined,\n unlockSlot: order.UnlockSlot == null ? undefined : BigInt(order.UnlockSlot),\n matureSlot: order.MatureSlot == null ? undefined : BigInt(order.MatureSlot),\n principal: order.Principal == null ? undefined : BigInt(order.Principal),\n yield: order.Yield == null ? undefined : BigInt(order.Yield),\n claimTxHash: order.ClaimTxHash ?? undefined,\n };\n}\n\n/**\n * Off-chain GraphQL reads. Construct with {@link RealfiApi.forNetwork} or\n * {@link RealfiApi.create}; no Blaze instance required.\n */\nexport class RealfiApi implements IRealfiApiSDK {\n private constructor(\n private readonly endpoints: IApiEndpoints,\n private readonly clientId: string = `${DEFAULT_CLIENT_SOURCE}/${SDK_VERSION}`,\n ) {}\n\n private request(\n url: string,\n query: string,\n variables?: Record,\n ): Promise {\n return gqlRequest(url, query, variables, this.clientId);\n }\n\n static forNetwork(network: TApiNetwork, clientId?: string): IRealfiApiSDK {\n return new RealfiApi(API_REGISTRY[network], clientId);\n }\n\n static create(endpoints: IApiEndpoints, clientId?: string): IRealfiApiSDK {\n return new RealfiApi(endpoints, clientId);\n }\n\n async getPartnerConfig(): Promise {\n const url = this.endpoints.partnerConfigUrl;\n if (!url) {\n throw new Error(\n \"partnerConfigUrl is required to read partner runtime configuration\",\n );\n }\n const response = await fetch(url, {\n method: \"GET\",\n headers: { Accept: \"application/json\" },\n cache: \"no-store\",\n });\n if (!response.ok) {\n throw new Error(\n `Partner configuration request failed: ${response.status} ${response.statusText}`,\n );\n }\n let body: unknown;\n try {\n body = await response.json();\n } catch (error) {\n throw new Error(\"invalid partner configuration: response is not JSON\", {\n cause: error,\n });\n }\n return parsePartnerConfig(body);\n }\n\n async getStakeTimes(): Promise {\n const data = await this.request(\n this.endpoints.realfiUrl,\n STAKE_TIMES_QUERY,\n );\n return {\n currentCooldownSlot: BigInt(\n data.stakeTimes.CurrentCooldownPeriodEnd.slot,\n ),\n nextCooldownSlot: BigInt(data.stakeTimes.NextCooldownPeriodEnd.slot),\n };\n }\n\n async getCooldownUnlockSlot(): Promise {\n return (await this.getStakeTimes()).nextCooldownSlot;\n }\n\n async getOrdersByOwner(\n address: string,\n statuses: TOrderStatus[] = DEFAULT_ORDER_STATUSES,\n ): Promise {\n const owners = ownerKeyHashes(address);\n const batches = await Promise.all(\n owners.flatMap((owner) =>\n statuses.map((status) =>\n this.request(\n this.endpoints.realfiUrl,\n ORDERS_BY_OWNER_QUERY,\n { owner, status },\n ).then((data) => data.ordersByOwner),\n ),\n ),\n );\n const seen = new Set();\n return batches\n .flat()\n .map((result) => mapOrder(result.status, result.order))\n .filter((order) => {\n const key = `${order.utxo.txHash}#${order.utxo.outputIndex}`;\n if (seen.has(key)) return false;\n seen.add(key);\n return true;\n })\n .sort((a, b) => Number(b.slot - a.slot));\n }\n\n async getOrderFees(): Promise {\n const data = await this.request(\n this.endpoints.realfiUrl,\n ORDER_FEES_QUERY,\n );\n return data.orderFees;\n }\n\n async getSusdrExchangeRateInputs(): Promise {\n const data = await this.request(\n this.endpoints.realfiUrl,\n SUSDR_EXCHANGE_RATE_INPUTS_QUERY,\n );\n const inputs = data.susdrExchangeRateInputs;\n return {\n circulatingSusdr: BigInt(inputs.circulatingSusdr),\n vaultUsdr: BigInt(inputs.vaultUsdr),\n pendingYield: BigInt(inputs.pendingYield),\n diffusionStartUnixMilli: BigInt(inputs.diffusionStartUnixMilli),\n diffusionEndUnixMilli: BigInt(inputs.diffusionEndUnixMilli),\n };\n }\n\n async getYieldBreakdown(address: string): Promise {\n const [owner] = ownerKeyHashes(address);\n if (!owner) {\n throw new Error(\"address has no payment credential\");\n }\n const data = await this.request(\n this.endpoints.realfiUrl,\n YIELD_BREAKDOWN_QUERY,\n { owner },\n );\n const breakdown = data.susdrYieldBreakdown;\n return {\n totalSUSDr: BigInt(breakdown.totalSUSDr),\n totalUSDrValue: BigInt(breakdown.totalUSDrValue),\n principal: BigInt(breakdown.principal),\n yield: BigInt(breakdown.yield),\n yieldPercent: breakdown.yieldPercent,\n };\n }\n\n async getPointsBalance(address: string): Promise {\n const value = ownerKeyHashes(address).join(\",\");\n const data = await this.request(\n this.endpoints.assetTransparencyUrl,\n POINTS_BALANCE_QUERY,\n { value },\n );\n const raw = data.V_WALLET_POINTS_BALANCE.nodes[0]?.WALLET_POINTS_BALANCE;\n if (!raw) {\n return { pointsBalance: null, potentialPoints: null, multiplier: null };\n }\n const parsed = JSON.parse(raw) as IRawPointsBalanceData;\n return {\n pointsBalance: parsed.current_balance ?? null,\n potentialPoints: parsed.potential_points ?? null,\n multiplier: parsed.day_multiplier ?? null,\n };\n }\n\n async getReferrerCode(address: string): Promise {\n const data = await this.request(\n this.endpoints.assetTransparencyUrl,\n REFERRER_CODE_QUERY,\n { walletAddress: ownerKeyHashes(address).join(\",\") },\n );\n return data.referrerCode;\n }\n\n async getReferralRewards(address: string): Promise {\n const data = await this.request(\n this.endpoints.assetTransparencyUrl,\n REFERRAL_REWARDS_QUERY,\n { walletAddress: ownerKeyHashes(address).join(\",\") },\n );\n return data.referralRewards;\n }\n\n async getInvitedCount(address: string): Promise {\n const data = await this.request(\n this.endpoints.assetTransparencyUrl,\n INVITED_COUNT_QUERY,\n { walletAddress: ownerKeyHashes(address).join(\",\") },\n );\n return data.invitedCount;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/registry.js b/modules/realfi-partner-sdk/dist/esm/api/registry.js new file mode 100644 index 0000000000..393a1d6e32 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/registry.js @@ -0,0 +1,20 @@ +// Per-network GraphQL endpoints for the RealFi off-chain API. + +export const API_REGISTRY = { + mainnet: { + realfiUrl: "https://api.app.realfi.co/graphql", + assetTransparencyUrl: "https://api.app.realfi.co/api/v1/asset-transparency", + partnerConfigUrl: "https://app.realfi.co/partner-config.json" + }, + preprod: { + realfiUrl: "https://api.preprod.realfi.co/graphql", + assetTransparencyUrl: "https://api.preprod.realfi.co/api/v1/asset-transparency", + partnerConfigUrl: "https://preprod.realfi.co/partner-config.json" + }, + preview: { + realfiUrl: "https://api.preview.realfi.co/graphql", + assetTransparencyUrl: "https://api.preview.realfi.co/api/v1/asset-transparency", + partnerConfigUrl: "https://preview.realfi.co/partner-config.json" + } +}; +//# sourceMappingURL=registry.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/registry.js.map b/modules/realfi-partner-sdk/dist/esm/api/registry.js.map new file mode 100644 index 0000000000..07d395c35e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/registry.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry.js","names":["API_REGISTRY","mainnet","realfiUrl","assetTransparencyUrl","partnerConfigUrl","preprod","preview"],"sources":["../../../src/api/registry.ts"],"sourcesContent":["// Per-network GraphQL endpoints for the RealFi off-chain API.\n\nexport type TApiNetwork = \"mainnet\" | \"preprod\" | \"preview\";\n\nexport interface IApiEndpoints {\n /** Main RealFi GraphQL API — orders, stake times, yield, fees, wallet status. */\n realfiUrl: string;\n /** Asset-transparency GraphQL API — points and referral reads. */\n assetTransparencyUrl: string;\n /**\n * Sanitized partner runtime configuration. Optional only for backwards\n * compatibility with custom endpoint objects created before this read was\n * added; `getPartnerConfig()` requires it.\n */\n partnerConfigUrl?: string;\n}\n\nexport const API_REGISTRY: Record = {\n mainnet: {\n realfiUrl: \"https://api.app.realfi.co/graphql\",\n assetTransparencyUrl: \"https://api.app.realfi.co/api/v1/asset-transparency\",\n partnerConfigUrl: \"https://app.realfi.co/partner-config.json\",\n },\n preprod: {\n realfiUrl: \"https://api.preprod.realfi.co/graphql\",\n assetTransparencyUrl:\n \"https://api.preprod.realfi.co/api/v1/asset-transparency\",\n partnerConfigUrl: \"https://preprod.realfi.co/partner-config.json\",\n },\n preview: {\n realfiUrl: \"https://api.preview.realfi.co/graphql\",\n assetTransparencyUrl:\n \"https://api.preview.realfi.co/api/v1/asset-transparency\",\n partnerConfigUrl: \"https://preview.realfi.co/partner-config.json\",\n },\n};\n"],"mappings":"AAAA;;AAiBA,OAAO,MAAMA,YAAgD,GAAG;EAC9DC,OAAO,EAAE;IACPC,SAAS,EAAE,mCAAmC;IAC9CC,oBAAoB,EAAE,qDAAqD;IAC3EC,gBAAgB,EAAE;EACpB,CAAC;EACDC,OAAO,EAAE;IACPH,SAAS,EAAE,uCAAuC;IAClDC,oBAAoB,EAClB,yDAAyD;IAC3DC,gBAAgB,EAAE;EACpB,CAAC;EACDE,OAAO,EAAE;IACPJ,SAAS,EAAE,uCAAuC;IAClDC,oBAAoB,EAClB,yDAAyD;IAC3DC,gBAAgB,EAAE;EACpB;AACF,CAAC","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/types.js b/modules/realfi-partner-sdk/dist/esm/api/types.js new file mode 100644 index 0000000000..718fd38ae4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/types.js @@ -0,0 +1,2 @@ +export {}; +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/api/types.js.map b/modules/realfi-partner-sdk/dist/esm/api/types.js.map new file mode 100644 index 0000000000..80245c7f89 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/api/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","names":[],"sources":["../../../src/api/types.ts"],"sourcesContent":["// Clean, partner-facing result types for the off-chain API.\n\nexport type TOrderStatus =\n | \"Open\"\n | \"Validating\"\n | \"Canceled\"\n | \"Executed\"\n | \"Invalidated\"\n | \"InvalidMinReceived\";\n\nexport type TOrderAction =\n | \"Mint\"\n | \"Redeem\"\n | \"Deposit\"\n | \"Withdraw\"\n | \"Stake\"\n | \"Unstake\"\n | \"DirectMint\"\n | \"DirectBurn\";\n\nexport interface IApiOrderUtxo {\n txHash: string;\n outputIndex: number;\n}\n\nexport interface IOrderInfo {\n owner: string;\n action: TOrderAction;\n status: TOrderStatus;\n amount: bigint;\n slot: bigint;\n forfeit: bigint;\n version: string;\n utxo: IApiOrderUtxo;\n /** Output produced once the order is Executed or Canceled. */\n resultUtxo?: IApiOrderUtxo;\n /** Timelock unlock slot (Unstake only). */\n unlockSlot?: bigint;\n /** Cooldown maturity slot (Unstake only). */\n matureSlot?: bigint;\n /** Populated for Deposit orders. */\n principal?: bigint;\n /** Populated for Deposit orders. */\n yield?: bigint;\n /** Transaction that claimed an Unstake order's cooldown output. */\n claimTxHash?: string;\n}\n\nexport interface IStakeTimes {\n currentCooldownSlot: bigint;\n nextCooldownSlot: bigint;\n}\n\nexport interface IOrderFees {\n mintBps: number;\n redeemBps: number;\n}\n\nexport interface IYieldBreakdown {\n totalSUSDr: bigint;\n totalUSDrValue: bigint;\n principal: bigint;\n yield: bigint;\n yieldPercent: number;\n}\n\nexport interface IPointsBalance {\n pointsBalance: number | null;\n potentialPoints: number | null;\n multiplier: number | null;\n}\n\nexport interface IReferrerCode {\n code: string;\n createdAt: string;\n}\n\n/**\n * Non-negative safe-integer USD UX/business minimums; not protocol\n * `min_received` or fees.\n */\nexport interface IPartnerLimits {\n readonly mintMinUsd: number;\n readonly redeemMinUsd: number;\n}\n\n/**\n * Environment runtime configuration shared with the deployed RealFi dapp.\n *\n * `swapCounterpartAssets` is the product-curated live swap list.\n * `swapOrderHistoryAssets` is its superset for historical and in-flight orders,\n * including disabled pairs. The deploy artifact falls back to the live list\n * when the dapp source leaves the history list unset.\n * Every asset identifier uses Sundae's canonical dotted form\n * (`policyId.assetName`, or `ada.lovelace`), not Cardano Core's concatenated\n * `Core.AssetId` representation. The values can be passed directly to\n * `RealfiSDK.sundae` discovery and builder APIs.\n */\nexport interface IPartnerConfig {\n /** Authoritative USDr ID in Sundae's dotted `policyId.assetName` form. */\n readonly stablecoinAssetId: string;\n readonly swapCounterpartAssets: readonly string[];\n readonly swapOrderHistoryAssets: readonly string[];\n readonly limits: IPartnerLimits;\n}\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/base/index.js b/modules/realfi-partner-sdk/dist/esm/generated-types/base/index.js new file mode 100644 index 0000000000..72b9ab5ac2 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/base/index.js @@ -0,0 +1,44 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { Type } from "@blaze-cardano/data"; +const PolicyId = Type.String(); +const Contracts = Type.Module({}); +export class BaseMintProxyMintProxyMint { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" : "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class BaseMintProxyMintProxyElse { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" : "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class BaseOneshotOneshotMint { + constructor(utxoRef, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "59031f010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd718098019bae3013001899b87375a6026602800290014528201a30133758602400319800801cc04c00a6026002801a294100c2020404114a3153300a491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" : "5901a3010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d159800992cc004cdc79bae3012003375c602400313370e6eb4c048c04c00520028a50403460246eb0c0440063300100398090014c04800500345282018403c807a29462c804a2c8048dd7180618049baa00359800980118041baa0048acc004c024dd500245268b20148b200e8b200e180400098019baa0088a4d1365640041", Type.Tuple([Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + })]), [utxoRef]), "PlutusV3"); + } +} +export class BaseOneshotOneshotElse { + constructor(utxoRef, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "59031f010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd718098019bae3013001899b87375a6026602800290014528201a30133758602400319800801cc04c00a6026002801a294100c2020404114a3153300a491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" : "5901a3010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d159800992cc004cdc79bae3012003375c602400313370e6eb4c048c04c00520028a50403460246eb0c0440063300100398090014c04800500345282018403c807a29462c804a2c8048dd7180618049baa00359800980118041baa0048acc004c024dd500245268b20148b200e8b200e180400098019baa0088a4d1365640041", Type.Tuple([Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + })]), [utxoRef]), "PlutusV3"); + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/base/index.js.map b/modules/realfi-partner-sdk/dist/esm/generated-types/base/index.js.map new file mode 100644 index 0000000000..2891885ad5 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/base/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["applyParamsToScript","cborToScript","Type","PolicyId","String","Contracts","Module","BaseMintProxyMintProxyMint","constructor","proxyPolicyId","trace","_defineProperty","Script","Tuple","BaseMintProxyMintProxyElse","BaseOneshotOneshotMint","utxoRef","Object","transaction_id","output_index","BigInt","ctor","BaseOneshotOneshotElse"],"sources":["../../../../src/generated-types/base/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\nimport { type PlutusData } from \"@blaze-cardano/core\";\ntype Data = PlutusData;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n});\n\n\nexport class BaseMintProxyMintProxyMint {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class BaseMintProxyMintProxyElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class BaseOneshotOneshotMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59031f010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd718098019bae3013001899b87375a6026602800290014528201a30133758602400319800801cc04c00a6026002801a294100c2020404114a3153300a491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"5901a3010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d159800992cc004cdc79bae3012003375c602400313370e6eb4c048c04c00520028a50403460246eb0c0440063300100398090014c04800500345282018403c807a29462c804a2c8048dd7180618049baa00359800980118041baa0048acc004c024dd500245268b20148b200e8b200e180400098019baa0088a4d1365640041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ]),\n [\n utxoRef,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class BaseOneshotOneshotElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59031f010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd718098019bae3013001899b87375a6026602800290014528201a30133758602400319800801cc04c00a6026002801a294100c2020404114a3153300a491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"5901a3010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d159800992cc004cdc79bae3012003375c602400313370e6eb4c048c04c00520028a50403460246eb0c0440063300100398090014c04800500345282018403c807a29462c804a2c8048dd7180618049baa00359800980118041baa0048acc004c024dd500245268b20148b200e8b200e180400098019baa0088a4d1365640041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ]),\n [\n utxoRef,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":";;;AAAA;AACA;AACA,SAASA,mBAAmB,EAAEC,YAAY,QAAQ,qBAAqB;AAEvE,SAASC,IAAI,QAA4B,qBAAqB;AAK9D,MAAMC,QAAQ,GAAGD,IAAI,CAACE,MAAM,CAAC,CAAC;AAG9B,MAAMC,SAAS,GAAGH,IAAI,CAACI,MAAM,CAAC,CAC9B,CAAC,CAAC;AAGF,OAAO,MAAMC,0BAA0B,CAAC;EAEtCC,WAAWA,CACTC,aAAuB,EACvBC,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACC,MAAM,GAAGX,YAAY,CACxBD,mBAAmB,CACjBU,KAAK,GAEH,khGAAkhG,GAElhG,82BAA82B,EACh3BR,IAAI,CAACW,KAAK,CAAC,CACTV,QAAQ,CACT,CAAC,EACF,CACEM,aAAa,CAEjB,CAAC,EACD,UACF,CAAC;EACH;AACF;AACA,OAAO,MAAMK,0BAA0B,CAAC;EAEtCN,WAAWA,CACTC,aAAuB,EACvBC,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACC,MAAM,GAAGX,YAAY,CACxBD,mBAAmB,CACjBU,KAAK,GAEH,khGAAkhG,GAElhG,82BAA82B,EACh3BR,IAAI,CAACW,KAAK,CAAC,CACTV,QAAQ,CACT,CAAC,EACF,CACEM,aAAa,CAEjB,CAAC,EACD,UACF,CAAC;EACH;AACF;AACA,OAAO,MAAMM,sBAAsB,CAAC;EAElCP,WAAWA,CACTQ,OAAwB,EACxBN,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACC,MAAM,GAAGX,YAAY,CACxBD,mBAAmB,CACjBU,KAAK,GAEH,skDAAskD,GAEtkD,80BAA80B,EACh1BR,IAAI,CAACW,KAAK,CAAC,CACTX,IAAI,CAACe,MAAM,CAAC;MACVC,cAAc,EAAEhB,IAAI,CAACE,MAAM,CAAC,CAAC;MAC7Be,YAAY,EAAEjB,IAAI,CAACkB,MAAM,CAAC;IAC5B,CAAC,EAAE;MAAEC,IAAI,EAAE;IAAG,CAAC,CAAC,CACjB,CAAC,EACF,CACEL,OAAO,CAEX,CAAC,EACD,UACF,CAAC;EACH;AACF;AACA,OAAO,MAAMM,sBAAsB,CAAC;EAElCd,WAAWA,CACTQ,OAAwB,EACxBN,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACC,MAAM,GAAGX,YAAY,CACxBD,mBAAmB,CACjBU,KAAK,GAEH,skDAAskD,GAEtkD,80BAA80B,EACh1BR,IAAI,CAACW,KAAK,CAAC,CACTX,IAAI,CAACe,MAAM,CAAC;MACVC,cAAc,EAAEhB,IAAI,CAACE,MAAM,CAAC,CAAC;MAC7Be,YAAY,EAAEjB,IAAI,CAACkB,MAAM,CAAC;IAC5B,CAAC,EAAE;MAAEC,IAAI,EAAE;IAAG,CAAC,CAAC,CACjB,CAAC,EACF,CACEL,OAAO,CAEX,CAAC,EACD,UACF,CAAC;EACH;AACF","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/index.js b/modules/realfi-partner-sdk/dist/esm/generated-types/index.js new file mode 100644 index 0000000000..c92beb32ed --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/index.js @@ -0,0 +1,10 @@ +export * as BaseTypes from "./base/index.js"; +export * as V0Types from "./v0/index.js"; +export * as V0_1Types from "./v0_1/index.js"; +export * as V0_2Types from "./v0_2/index.js"; +export * as V0_3Types from "./v0_3/index.js"; +export * as V0_4Types from "./v0_4/index.js"; +export * as V1_0Types from "./v1_0/index.js"; +export * as V1_0Rc1Types from "./v1_0_rc1/index.js"; +export * as V1_1Rc1Types from "./v1_1_rc1/index.js"; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/index.js.map b/modules/realfi-partner-sdk/dist/esm/generated-types/index.js.map new file mode 100644 index 0000000000..1b2f1a9d10 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["BaseTypes","V0Types","V0_1Types","V0_2Types","V0_3Types","V0_4Types","V1_0Types","V1_0Rc1Types","V1_1Rc1Types"],"sources":["../../../src/generated-types/index.ts"],"sourcesContent":["export * as BaseTypes from \"./base/index.js\";\nexport * as V0Types from \"./v0/index.js\";\nexport * as V0_1Types from \"./v0_1/index.js\";\nexport * as V0_2Types from \"./v0_2/index.js\";\nexport * as V0_3Types from \"./v0_3/index.js\";\nexport * as V0_4Types from \"./v0_4/index.js\";\nexport * as V1_0Types from \"./v1_0/index.js\";\nexport * as V1_0Rc1Types from \"./v1_0_rc1/index.js\";\nexport * as V1_1Rc1Types from \"./v1_1_rc1/index.js\";\n"],"mappings":"AAAA,OAAO,KAAKA,SAAS,MAAM,iBAAiB;AAC5C,OAAO,KAAKC,OAAO,MAAM,eAAe;AACxC,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAC5C,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAC5C,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAC5C,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAC5C,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAC5C,OAAO,KAAKC,YAAY,MAAM,qBAAqB;AACnD,OAAO,KAAKC,YAAY,MAAM,qBAAqB","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v0/index.js b/modules/realfi-partner-sdk/dist/esm/generated-types/v0/index.js new file mode 100644 index 0000000000..b36e31537a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v0/index.js @@ -0,0 +1,22 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/* eslint-disable */ +// @ts-nocheck +import { cborToScript } from "@blaze-cardano/uplc"; +import { Type } from "@blaze-cardano/data"; +const PolicyId = Type.String(); +const Contracts = Type.Module({}); +export class V0ProtocolProtocolWithdraw { + constructor(trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(trace ? "58b601010029800aba4aba2aba1aab9faab9eaab9dab9cab9a488888888c96600264653001300900198049805000cc0240092225980099b8748010c024dd500144c96600200915980099b8748000c028dd5002456600260166ea8012294600e806200e804200f007803c01d00f180618051baa0028b200e180480098029baa00a8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" : "587401010029800aba2aba1aab9faab9eaab9dab9a48888896600264653001300700198039804000cc01c0092225980099b8748010c01cdd500144cc8928980518041baa0025980099b8748000c01cdd5001c56600260106ea800e2934590094590064590060c01c004c00cdd5003c52689b2b200201", "PlutusV3"); + } +} +export class V0ProtocolProtocolElse { + constructor(trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(trace ? "58b601010029800aba4aba2aba1aab9faab9eaab9dab9cab9a488888888c96600264653001300900198049805000cc0240092225980099b8748010c024dd500144c96600200915980099b8748000c028dd5002456600260166ea8012294600e806200e804200f007803c01d00f180618051baa0028b200e180480098029baa00a8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" : "587401010029800aba2aba1aab9faab9eaab9dab9a48888896600264653001300700198039804000cc01c0092225980099b8748010c01cdd500144cc8928980518041baa0025980099b8748000c01cdd5001c56600260106ea800e2934590094590064590060c01c004c00cdd5003c52689b2b200201", "PlutusV3"); + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v0/index.js.map b/modules/realfi-partner-sdk/dist/esm/generated-types/v0/index.js.map new file mode 100644 index 0000000000..af99bf0de7 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v0/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["cborToScript","Type","PolicyId","String","Contracts","Module","V0ProtocolProtocolWithdraw","constructor","trace","_defineProperty","Script","V0ProtocolProtocolElse"],"sources":["../../../../src/generated-types/v0/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\nimport { type PlutusData } from \"@blaze-cardano/core\";\ntype Data = PlutusData;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n});\n\n\nexport class V0ProtocolProtocolWithdraw {\n public Script: Script\n constructor(\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n trace\n ?\n \"58b601010029800aba4aba2aba1aab9faab9eaab9dab9cab9a488888888c96600264653001300900198049805000cc0240092225980099b8748010c024dd500144c96600200915980099b8748000c028dd5002456600260166ea8012294600e806200e804200f007803c01d00f180618051baa0028b200e180480098029baa00a8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"587401010029800aba2aba1aab9faab9eaab9dab9a48888896600264653001300700198039804000cc01c0092225980099b8748010c01cdd500144cc8928980518041baa0025980099b8748000c01cdd5001c56600260106ea800e2934590094590064590060c01c004c00cdd5003c52689b2b200201\",\n \"PlutusV3\"\n );\n }\n}\nexport class V0ProtocolProtocolElse {\n public Script: Script\n constructor(\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n trace\n ?\n \"58b601010029800aba4aba2aba1aab9faab9eaab9dab9cab9a488888888c96600264653001300900198049805000cc0240092225980099b8748010c024dd500144c96600200915980099b8748000c028dd5002456600260166ea8012294600e806200e804200f007803c01d00f180618051baa0028b200e180480098029baa00a8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"587401010029800aba2aba1aab9faab9eaab9dab9a48888896600264653001300700198039804000cc01c0092225980099b8748010c01cdd500144cc8928980518041baa0025980099b8748000c01cdd5001c56600260106ea800e2934590094590064590060c01c004c00cdd5003c52689b2b200201\",\n \"PlutusV3\"\n );\n }\n}"],"mappings":";;;AAAA;AACA;AACA,SAA8BA,YAAY,QAAQ,qBAAqB;AAEvE,SAASC,IAAI,QAA4B,qBAAqB;AAK9D,MAAMC,QAAQ,GAAGD,IAAI,CAACE,MAAM,CAAC,CAAC;AAG9B,MAAMC,SAAS,GAAGH,IAAI,CAACI,MAAM,CAAC,CAC9B,CAAC,CAAC;AAGF,OAAO,MAAMC,0BAA0B,CAAC;EAEtCC,WAAWA,CACTC,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACC,MAAM,GAAGV,YAAY,CACxBQ,KAAK,GAEH,kXAAkX,GAElX,8OAA8O,EAChP,UACF,CAAC;EACH;AACF;AACA,OAAO,MAAMG,sBAAsB,CAAC;EAElCJ,WAAWA,CACTC,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACC,MAAM,GAAGV,YAAY,CACxBQ,KAAK,GAEH,kXAAkX,GAElX,8OAA8O,EAChP,UACF,CAAC;EACH;AACF","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v0_1/index.js b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_1/index.js new file mode 100644 index 0000000000..0467628228 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_1/index.js @@ -0,0 +1,138 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { Type } from "@blaze-cardano/data"; +const PolicyId = Type.String(); +const Contracts = Type.Module({ + MultisigScript: Type.Union([Type.Object({ + Signature: Type.Object({ + key_hash: Type.String() + }, { + ctor: 0n + }) + }), Type.Object({ + AllOf: Type.Object({ + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 1n + }) + }), Type.Object({ + AnyOf: Type.Object({ + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 2n + }) + }), Type.Object({ + AtLeast: Type.Object({ + required: Type.BigInt(), + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 3n + }) + }), Type.Object({ + Before: Type.Object({ + time: Type.BigInt() + }, { + ctor: 4n + }) + }), Type.Object({ + After: Type.Object({ + time: Type.BigInt() + }, { + ctor: 5n + }) + }), Type.Object({ + Script: Type.Object({ + script_hash: Type.String() + }, { + ctor: 6n + }) + })]), + Asset: Type.Tuple([Type.String(), Type.String()]), + ProtocolRedeemer: Type.Union([Type.Literal("Mint", { + ctor: 0n + }), Type.Literal("Burn", { + ctor: 1n + })]), + ProxyDatum: Type.Object({ + logic: Type.String(), + settings: Type.Ref("Settings") + }, { + ctor: 0n + }), + Registry: Type.Object({ + treasury: Type.String(), + usdr: Type.String() + }, { + ctor: 0n + }), + Settings: Type.Object({ + mint_permission: Type.Ref("MultisigScript"), + burn_permission: Type.Ref("MultisigScript"), + registry: Type.Ref("Registry"), + reserve_token: Type.Ref("Asset") + }, { + ctor: 0n + }), + TreasuryDatum: Type.Object({ + circulating_supply: Type.BigInt() + }, { + ctor: 0n + }) +}); +export const MultisigScript = Contracts.Import("MultisigScript"); +export const Asset = Contracts.Import("Asset"); +export const ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +export const ProxyDatum = Contracts.Import("ProxyDatum"); +export const Registry = Contracts.Import("Registry"); +export const Settings = Contracts.Import("Settings"); +export const TreasuryDatum = Contracts.Import("TreasuryDatum"); +export class V0_1ProtocolProtocolWithdraw { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "5914b1010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692015e657870656374205b50616972286e616d652c206d696e745f616d6f756e74295d203d0a2020202074782e6d696e74207c3e20746f6b656e732873657474696e67732e72656769737472792e7573647229207c3e20746f5f7061697273282900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488896600264653001300e00198071807800cdc3a4009300e00248889660026004601c6ea800e264b30010058999119912cc004c00c0062b300130143754013002806202a8acc004c0100062b300130143754013002806202a80620224044330012259800800c52f5c1133016301330170013300200230180014055374a900048c058c05c00644646600200200644b30010018a508acc004cdc79bae30190010038a51899801001180d000a026405d2301630173017001488888c8cc88c8c96600200313232598009806980e9baa0038992cc00400603113259800800c4c96600200301a8992cc004006264b300100180e44c96600200313259800800c07a264b300100180fc07e264b3001302b0038cc004022330010068acc004c058c098dd500244c9660020030218992cc004006045022811408a26644b300100181244c966002003025812c09604b132598009818801c56600200f0268992cc00400604f027813c09e26644b3001001814c4c96600200302a81540aa05513259800981b001c660026e9520029181b181b981b981b981b981b981b981b981b800c8c0d8c0dcc0dcc0dcc0dcc0dcc0dcc0dc0064606c606e606e606e606e606e606e002911119912cc004c09cc0dcdd5016c5660033001303b3038375403b3758600a60706ea80aa600860706ea80aa6eacc00cc0e0dd50152004899b8848000cc0040740aa2a6606c9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d5159800cc004c090c0e0dd500ecdd61802981c1baa02a9802181c1baa02a9bab3003303837540548012266e20cc0040740a920008a9981b2481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d481a88888c8cc00400401488c9660026058003133028006375c6080607a6ea800a2b3001302d001899198008009bac3041303e375400644b30010018a518acc004cc014014c108006266004004608600314a081e1040456600260600031323300100137586082607c6ea800c896600200314a1159800998028029821000c528c4cc008008c10c00503c20808acc004cdc3a400c003132337126eb4c104004c8cc004004dd618211821801112cc0040062900044cc89660026601001000513370000290014400503f1821800998010011822000a082303d375400515980099b874802000626644b3001302f303e3754003132598009818181f9baa302c30403754605860806ea8022266e2400400e266e2000400d03d1bad3042303f375400314a081e0dd69820181e9baa0023040303d37546052607a6ea80162b30013370e9005000c4cc8966002605e607c6ea8006264b30013030303f3754605860806ea8c10cc100dd500444cdc4801800c4cdc4001800a07a375a6084607e6ea8006294103c1bad3040303d37540046080607a6ea8c100c0f4dd5002c4c8c8cc004004018896600200314a115980099baf003303f30430018a518998010011822000a07a410460166607e6080607a6ea80092f5c081d103a207440e881d103a181d9baa001223259800800c0d2264b3001303e0028992cc004cdc79bae303a00248810455534472008992cc004cc896600200314a11329800992cc004c0bcc0fcdd5000c4dd6982018219bab30433040375400314800103d1821000cdd798211821800cdd58012444b30010018acc004c008016266e2520000038a5040fd1325980099baf30420014c10140008acc004cdc49bad304330463756608600200913003374c608e00514a082022b300133712900000244c00c01a294104020803045001410c329800800c00e4466086004660866e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1040066eacc108006608c0069112cc004cdc8a441000038acc004cdc7a441000038998029819198239ba60024bd70000c4cc015300103d87a8000006410919800803c006446600e0046609266ec0dd48029ba6004001401c82106088004821229422942294104319192cc004c0b4c0f4dd5000c4c96600266ebcc108c0fcdd51821181f9baa302b303f3754002601a660826ea400d2f5c1132598009817981f9baa0018992cc004cdd7982218209baa304430413754002601e660866ea40152f5c11329800800cdd5981718211baa00299198008009bab302f30433754605e60866ea8014896600200314bd6f7b63044c8cc11ccdd818220009ba632330010013756608c00444b30010018a5eb7bdb1822646609466ec0c11c004dd419b8148000dd698240009980180198260011825000a09033003003304900230470014114800888966002005100189919914c00401a609600b32330010010052259800800c4cc12ccdd81ba9004374c00697adef6c608994c004dd71824800cdd59825000cc1380092225980099b9000800389982799bb037520106e9801c0162b30013371e01000713259800981e98269baa00189982819bb0375201260a2609c6ea800400a20048258c966002b30010018a518a50413d14c0103d87a80008981d998281ba60014bd702096329800800c022006800888966002005100189919914c00401a60ae00b32330010010052259800800c4cc15ccdd81ba9004375000697adef6c608994c004dd7182a800cdd6982b000cc1680092225980099b9000800389982d99bb037520106ea001c0162b30013371e010007132598009824982c9baa00189982e19bb0375201260ba60b46ea800400a200482b8c966002609200314c0103d87a8000898239982e1ba80014bd7020ae3370000e00513305b337606ea400cdd400119803003000a0ac4158305800141588030dd718280009bad30510013053002414513304f337606ea400cdd300119803003000a0944128304c00141288030dd718220009bab304500130470024115153303f49013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f8608660806ea80062a6607c92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c2073637269707429001640f46604c6eb0c0a4c0fcdd500411981598141bab302c30403754002009153303d49014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f06082607c6ea8006297adef6c6040ec660466eb0c100c0f4dd50030009bae303f303c3754604c60786ea8018dd31981f19bb0303f001374c6607c66ec0c0fcc100004dd400125eb7bdb1812f5bded8c110028a9981d2481786578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612c0a2020202020205b5061697228726573657276655f706f6c6963792c205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74295d295d2c0a2020202020203e3d2c0a2020202029001640e46eb0c0f8c0fcc0fcc0fcc0ecdd5002c54cc0e5240113657870656374206e616d65203d3d2075736472001640e06eb4c0e800606a81d8c0f000503a1991192cc004c0acc0e8dd5000c52f5bded8c113756607c60766ea80050381919800800801912cc0040062980103d87a8000899192cc004cdc8802800c56600266e3c0140062605666080607c00497ae08a60103d87a800040ed133004004304200340ec6eb8c0f0004c0fc00503d1bab303b303c303c303c303c303837540026eb8c090c0e0dd51811181c1baa00240ad0331bae00140d860660028188dd700098190042066303000740b902640b86eb80050311817000a058375c002605a0048170c0ac00502918139baa0048102048810201481020148102050375800301f80fa05630280014098605000501d80ec07603a8148c0980050241813001406e03701b80da04e30240014088604800501980cc0660328128c088005020180f1baa00380ba036222329800800c0120068008888c966002602600313259800800c01a264b3001001803c01e00f0078992cc004c0ac00e00b00840a06eb800502b1814000a04c30243754007159800980a000c4c9660020030068992cc00400600f0078992cc004c0ac00e26601600244b3001002803c4c96600200319800805400626004605c006805201700b805c02d02f1816001205480420503758003007803a0563028001409860486ea800e2b300130170018992cc00400600d13259800800c01e00f132598009815801c4cc02c00489660020050078992cc0040063300100a800c4c008c0b800d00a402e01700b805a05e302c00240a900840a06eb000600f00740ac60500028130c090dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817001c4cc038004896600200500a8992cc0040063300100d800c4c008c0c400d00d403a01d00e8072064302f00240b500b40ac6eb000601500a40b860560028148dd68009815001401d02b1814000a04c3024375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302b003802c0210281bad001803a0563028001409860486ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260560070058042050375a00300740ac60500028130c090dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260560070058042050375c0028158c0a000502618121baa003802a04240848109021204240848108c088dd500111191980080080191198018009801001405602b01580aa0423007301b375464646644646644a6604066e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea407922010013259800980918111baa00189929981119b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980c18121baa0018992cc0040062b300130153025375400313259800800c086264b3001001811408a045022899912cc0040060491325980098178014401a04a8160c0b400502b1bae001302c00240b460540028140c098dd5000c08102340820410208102056302830253754003153302349013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164088601c60486ea8c040c090dd5000981318119baa0018a99810a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640806601000203c60020026eb0c030c080dd5009111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920505980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81110221bac3025002375a60460026466ec0dd418118009ba73024001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6050003337149101023a200098008054c0a400600a805100a181580144ca6002015302800199b8a489023a200098008054c0a4006600e66008008004805100a18158012052302b00140a066e29220102207d0000340946eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006204a3758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc40012402914818229037204e3371666e000056600266e2000520148a40c11481b9027002200c33706002901019b8600148080cdc70020012048375c0068140dc5245022c200022323300100100322598009808000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407880f08888c8cc004004014896600200310058992cc004006266008604e00400d1330053027002330030030014094604e0028120c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901b111980180111980418029bab3009301d37546012603a6ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146603e00297ae089980180198108012034301f0014074600a00a3011375400e6e1d2002370e90004022011008804202a3012300f3754007164030300e0013009375401f149a2a6600e92011856616c696461746f722072657475726e65642066616c7365001365640181" : "590b64010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a4001300937540089111192cc004c00c00a2b3001300f37540130018b20208acc004c01000a2b3001300f37540130018b20208b201a4034330012259800800c52f5c1133012300f30130013300200230140014045374a900048c048c04c00644646600200200644b30010018a508acc004cdc79bae30150010038a51899801001180b000a020404d230123013301300191191980080080191198018009801001244444466446644646644b3001300f301a375400513232323298009bac30220019811001cc08800922259800981300244cc020c09401c4cc020008566002602c60426ea8006264646644b3001302a00389919912cc004c0b400e33001374a900148c0b4c0b8c0b8c0b8c0b8c0b8c0b8c0b8c0b80064605a605c605c605c605c605c605c605c0032302d302e302e302e302e302e302e00148888cc89660026046605c6ea80a62b30019800981918179baa0169bac3005302f375404d3004302f375404d37566006605e6ea809900244cdc4240006600202c04d1640b5159800cc004c07cc0bcdd500b4dd6180298179baa026980218179baa0269bab3003302f375404c8012266e20cc00405809920008b205a40b44444646600200200a4464b300130280018998118031bae3037303437540051598009814800c4c8cc004004dd6181c181a9baa0032259800800c528c5660026600a00a6072003133002002303a0018a5040d081ba2b3001302c001899198008009bac30383035375400644b30010018a508acc004cc014014c0e40062946266004004607400281a1037456600266e1d200600189919b89375a607000264660020026eb0c0e4c0e8008896600200314800226644b300133008008002899b800014800a200281b8c0e8004cc008008c0ec005038181a1baa0028acc004cdc3a401000313322598009815981a9baa0018992cc004c0b0c0d8dd51813981b9baa30273037375401113371200200713371000200681a8dd6981c981b1baa0018a5040d06eb4c0dcc0d0dd5001181b981a1baa30243034375400b15980099b874802800626644b3001302b30353754003132598009816181b1baa3027303737546074606e6ea8022266e2400c006266e2000c0050351bad30393036375400314a081a0dd6981b981a1baa002303730343754606e60686ea8016264646600200200c44b30010018a508acc004cdd7801981b181d000c528c4cc008008c0ec0050352070300b3303630373034375400497ae040c88191032206440c88190c0c8dd500091192cc004c0d000626464b30013371e6eb8c0c40092210455534472008992cc004cc896600200314a11329800992cc004c0acc0d8dd5000c4dd6981b981d1bab303a30373754003148001035181c800cdd7981c981d000cdd58012444b30010018acc004c008016266e2520000038a5040dd1325980099baf30390014c10140008acc004cdc49bad303a303d3756607400200913003374c607c00514a081c22b300133712900000244c00c01a29410382070303c00140e8329800800c00e4466074004660746e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c0e00066eacc0e4006607a0069112cc004cdc8a441000038acc004cdc7a4410000389980298169981f1ba60024bd70000c4cc015300103d87a800000640e919800803c006446600e0046608066ec0dd48029ba6004001401c81d0607600481ca29422942294103a19192cc004c0a4c0d0dd5000c4c96600266ebcc0e4c0d8dd5181c981b1baa302630363754002601a660706ea400d2f5c1132598009815981b1baa0018992cc004cdd7981d981c1baa303b30383754002601e660746ea40152f5c11329800800cdd59814981c9baa00299198008009bab302a303a3754605460746ea8014896600200314bd6f7b63044c8cc0f8cdd8181d8009ba632330010013756607a00444b30010018a5eb7bdb1822646608266ec0c0f8004dd419b8148000dd6981f8009980180198218011820800a07e330030033040002303e00140f0800888966002005100189919914c00401a608400b32330010010052259800800c4cc108cdd81ba9004374c00697adef6c608994c004dd71820000cdd59820800cc1140092225980099b9000800389982319bb037520106e9801c0162b30013371e01000713259800981c98221baa00189982399bb037520126090608a6ea800400a20048218c966002b30010018a518a50411914c0103d87a80008981b198239ba60014bd702086329800800c022006800888966002005100189919914c00401a609c00b32330010010052259800800c4cc138cdd81ba9004375000697adef6c608994c004dd71826000cdd69826800cc1440092225980099b9000800389982919bb037520106ea001c0162b30013371e01000713259800982298281baa00189982999bb0375201260a860a26ea800400a20048278c966002608a00314c0103d87a800089821198299ba80014bd70209e3370000e005133052337606ea400cdd400119803003000a09c4138304f00141348030dd718238009bad3048001304a0024121133046337606ea400cdd300119803003000a0844108304300141048030dd7181d8009bab303c001303e00240f11640d86074606e6ea80062c81a8cc07cdd61812181b1baa00823302630213756604e606e6ea80040122c81a0c0e0c0d4dd5000c52f5bded8c08198cc070dd6181b981a1baa006001375c606c60666ea8c084c0ccdd50031ba63303533760606c0026e98cc0d4cdd8181b181b8009ba80024bd6f7b63025eb7bdb18220051640c46eb0c0d4c0d8c0d8c0d8c0c8dd5002c590301bad303100130330018b206233223259800981398189baa0018a5eb7bdb18226eacc0d4c0c8dd5000a06032330010010032259800800c5300103d87a8000899192cc004cdc8802800c56600266e3c0140062604c6606e606a00497ae08a60103d87a800040cd133004004303900340cc6eb8c0cc004c0d80050341bab30323033303330333033302f37540026eb8c07cc0bcdd5180e98179baa00245902a1bae302a001375c6054010605400f16409c6eb8c09c004dd71813801181380098111baa0018b20408b2046181100098108009810000980d9baa0028b203230093019375464b3001300e30193754003132598009809980d1baa0018992cc004c040c06cdd5000c4c8c8cc8966002604800710058b20423021001375c6042004604200260386ea80062c80d0c078c06cdd5000c590191804180d1baa300a301a3754603a60346ea80062c80c0cc004dd61804980c9baa0100163004004223300300223300a30053756601660366ea8c02cc06cdd500080111801800911919800800801912cc0040062980103d87a80008992cc004c010006260186603a00297ae0899801801980f8012032301d001406c600c00c44464b3001300c001899192cc004c07800a00916406c6eb8c070004c060dd5001c566002601a00313259800980e800c4cc018dd6180e000912cc00400a00b19800803cc07800a26002603e004803901c45901a180c1baa0038acc004c040006264b3001301d0018998031bac301c0012259800801401633001007980f00144c004c07c00900720388b20343018375400715980099b87480180062646644b3001301f0018998041bac301e0012259800801401e33001009981000144c004c084009009203c8b2038375a6038002603a00260306ea800e2b30013370e9004000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9005000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9006000c4c8c966002603c0050048b2036375c603800260306ea800e2c80b1016202c405880b1016202c301637540044590080c024004c010dd5005452689b2b20041", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class V0_1ProtocolProtocolElse { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "5914b1010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692015e657870656374205b50616972286e616d652c206d696e745f616d6f756e74295d203d0a2020202074782e6d696e74207c3e20746f6b656e732873657474696e67732e72656769737472792e7573647229207c3e20746f5f7061697273282900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488896600264653001300e00198071807800cdc3a4009300e00248889660026004601c6ea800e264b30010058999119912cc004c00c0062b300130143754013002806202a8acc004c0100062b300130143754013002806202a80620224044330012259800800c52f5c1133016301330170013300200230180014055374a900048c058c05c00644646600200200644b30010018a508acc004cdc79bae30190010038a51899801001180d000a026405d2301630173017001488888c8cc88c8c96600200313232598009806980e9baa0038992cc00400603113259800800c4c96600200301a8992cc004006264b300100180e44c96600200313259800800c07a264b300100180fc07e264b3001302b0038cc004022330010068acc004c058c098dd500244c9660020030218992cc004006045022811408a26644b300100181244c966002003025812c09604b132598009818801c56600200f0268992cc00400604f027813c09e26644b3001001814c4c96600200302a81540aa05513259800981b001c660026e9520029181b181b981b981b981b981b981b981b981b800c8c0d8c0dcc0dcc0dcc0dcc0dcc0dcc0dc0064606c606e606e606e606e606e606e002911119912cc004c09cc0dcdd5016c5660033001303b3038375403b3758600a60706ea80aa600860706ea80aa6eacc00cc0e0dd50152004899b8848000cc0040740aa2a6606c9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d5159800cc004c090c0e0dd500ecdd61802981c1baa02a9802181c1baa02a9bab3003303837540548012266e20cc0040740a920008a9981b2481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d481a88888c8cc00400401488c9660026058003133028006375c6080607a6ea800a2b3001302d001899198008009bac3041303e375400644b30010018a518acc004cc014014c108006266004004608600314a081e1040456600260600031323300100137586082607c6ea800c896600200314a1159800998028029821000c528c4cc008008c10c00503c20808acc004cdc3a400c003132337126eb4c104004c8cc004004dd618211821801112cc0040062900044cc89660026601001000513370000290014400503f1821800998010011822000a082303d375400515980099b874802000626644b3001302f303e3754003132598009818181f9baa302c30403754605860806ea8022266e2400400e266e2000400d03d1bad3042303f375400314a081e0dd69820181e9baa0023040303d37546052607a6ea80162b30013370e9005000c4cc8966002605e607c6ea8006264b30013030303f3754605860806ea8c10cc100dd500444cdc4801800c4cdc4001800a07a375a6084607e6ea8006294103c1bad3040303d37540046080607a6ea8c100c0f4dd5002c4c8c8cc004004018896600200314a115980099baf003303f30430018a518998010011822000a07a410460166607e6080607a6ea80092f5c081d103a207440e881d103a181d9baa001223259800800c0d2264b3001303e0028992cc004cdc79bae303a00248810455534472008992cc004cc896600200314a11329800992cc004c0bcc0fcdd5000c4dd6982018219bab30433040375400314800103d1821000cdd798211821800cdd58012444b30010018acc004c008016266e2520000038a5040fd1325980099baf30420014c10140008acc004cdc49bad304330463756608600200913003374c608e00514a082022b300133712900000244c00c01a294104020803045001410c329800800c00e4466086004660866e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1040066eacc108006608c0069112cc004cdc8a441000038acc004cdc7a441000038998029819198239ba60024bd70000c4cc015300103d87a8000006410919800803c006446600e0046609266ec0dd48029ba6004001401c82106088004821229422942294104319192cc004c0b4c0f4dd5000c4c96600266ebcc108c0fcdd51821181f9baa302b303f3754002601a660826ea400d2f5c1132598009817981f9baa0018992cc004cdd7982218209baa304430413754002601e660866ea40152f5c11329800800cdd5981718211baa00299198008009bab302f30433754605e60866ea8014896600200314bd6f7b63044c8cc11ccdd818220009ba632330010013756608c00444b30010018a5eb7bdb1822646609466ec0c11c004dd419b8148000dd698240009980180198260011825000a09033003003304900230470014114800888966002005100189919914c00401a609600b32330010010052259800800c4cc12ccdd81ba9004374c00697adef6c608994c004dd71824800cdd59825000cc1380092225980099b9000800389982799bb037520106e9801c0162b30013371e01000713259800981e98269baa00189982819bb0375201260a2609c6ea800400a20048258c966002b30010018a518a50413d14c0103d87a80008981d998281ba60014bd702096329800800c022006800888966002005100189919914c00401a60ae00b32330010010052259800800c4cc15ccdd81ba9004375000697adef6c608994c004dd7182a800cdd6982b000cc1680092225980099b9000800389982d99bb037520106ea001c0162b30013371e010007132598009824982c9baa00189982e19bb0375201260ba60b46ea800400a200482b8c966002609200314c0103d87a8000898239982e1ba80014bd7020ae3370000e00513305b337606ea400cdd400119803003000a0ac4158305800141588030dd718280009bad30510013053002414513304f337606ea400cdd300119803003000a0944128304c00141288030dd718220009bab304500130470024115153303f49013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f8608660806ea80062a6607c92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c2073637269707429001640f46604c6eb0c0a4c0fcdd500411981598141bab302c30403754002009153303d49014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f06082607c6ea8006297adef6c6040ec660466eb0c100c0f4dd50030009bae303f303c3754604c60786ea8018dd31981f19bb0303f001374c6607c66ec0c0fcc100004dd400125eb7bdb1812f5bded8c110028a9981d2481786578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612c0a2020202020205b5061697228726573657276655f706f6c6963792c205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74295d295d2c0a2020202020203e3d2c0a2020202029001640e46eb0c0f8c0fcc0fcc0fcc0ecdd5002c54cc0e5240113657870656374206e616d65203d3d2075736472001640e06eb4c0e800606a81d8c0f000503a1991192cc004c0acc0e8dd5000c52f5bded8c113756607c60766ea80050381919800800801912cc0040062980103d87a8000899192cc004cdc8802800c56600266e3c0140062605666080607c00497ae08a60103d87a800040ed133004004304200340ec6eb8c0f0004c0fc00503d1bab303b303c303c303c303c303837540026eb8c090c0e0dd51811181c1baa00240ad0331bae00140d860660028188dd700098190042066303000740b902640b86eb80050311817000a058375c002605a0048170c0ac00502918139baa0048102048810201481020148102050375800301f80fa05630280014098605000501d80ec07603a8148c0980050241813001406e03701b80da04e30240014088604800501980cc0660328128c088005020180f1baa00380ba036222329800800c0120068008888c966002602600313259800800c01a264b3001001803c01e00f0078992cc004c0ac00e00b00840a06eb800502b1814000a04c30243754007159800980a000c4c9660020030068992cc00400600f0078992cc004c0ac00e26601600244b3001002803c4c96600200319800805400626004605c006805201700b805c02d02f1816001205480420503758003007803a0563028001409860486ea800e2b300130170018992cc00400600d13259800800c01e00f132598009815801c4cc02c00489660020050078992cc0040063300100a800c4c008c0b800d00a402e01700b805a05e302c00240a900840a06eb000600f00740ac60500028130c090dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817001c4cc038004896600200500a8992cc0040063300100d800c4c008c0c400d00d403a01d00e8072064302f00240b500b40ac6eb000601500a40b860560028148dd68009815001401d02b1814000a04c3024375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302b003802c0210281bad001803a0563028001409860486ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260560070058042050375a00300740ac60500028130c090dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260560070058042050375c0028158c0a000502618121baa003802a04240848109021204240848108c088dd500111191980080080191198018009801001405602b01580aa0423007301b375464646644646644a6604066e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea407922010013259800980918111baa00189929981119b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980c18121baa0018992cc0040062b300130153025375400313259800800c086264b3001001811408a045022899912cc0040060491325980098178014401a04a8160c0b400502b1bae001302c00240b460540028140c098dd5000c08102340820410208102056302830253754003153302349013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164088601c60486ea8c040c090dd5000981318119baa0018a99810a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640806601000203c60020026eb0c030c080dd5009111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920505980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81110221bac3025002375a60460026466ec0dd418118009ba73024001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6050003337149101023a200098008054c0a400600a805100a181580144ca6002015302800199b8a489023a200098008054c0a4006600e66008008004805100a18158012052302b00140a066e29220102207d0000340946eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006204a3758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc40012402914818229037204e3371666e000056600266e2000520148a40c11481b9027002200c33706002901019b8600148080cdc70020012048375c0068140dc5245022c200022323300100100322598009808000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407880f08888c8cc004004014896600200310058992cc004006266008604e00400d1330053027002330030030014094604e0028120c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901b111980180111980418029bab3009301d37546012603a6ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146603e00297ae089980180198108012034301f0014074600a00a3011375400e6e1d2002370e90004022011008804202a3012300f3754007164030300e0013009375401f149a2a6600e92011856616c696461746f722072657475726e65642066616c7365001365640181" : "590b64010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a4001300937540089111192cc004c00c00a2b3001300f37540130018b20208acc004c01000a2b3001300f37540130018b20208b201a4034330012259800800c52f5c1133012300f30130013300200230140014045374a900048c048c04c00644646600200200644b30010018a508acc004cdc79bae30150010038a51899801001180b000a020404d230123013301300191191980080080191198018009801001244444466446644646644b3001300f301a375400513232323298009bac30220019811001cc08800922259800981300244cc020c09401c4cc020008566002602c60426ea8006264646644b3001302a00389919912cc004c0b400e33001374a900148c0b4c0b8c0b8c0b8c0b8c0b8c0b8c0b8c0b80064605a605c605c605c605c605c605c605c0032302d302e302e302e302e302e302e00148888cc89660026046605c6ea80a62b30019800981918179baa0169bac3005302f375404d3004302f375404d37566006605e6ea809900244cdc4240006600202c04d1640b5159800cc004c07cc0bcdd500b4dd6180298179baa026980218179baa0269bab3003302f375404c8012266e20cc00405809920008b205a40b44444646600200200a4464b300130280018998118031bae3037303437540051598009814800c4c8cc004004dd6181c181a9baa0032259800800c528c5660026600a00a6072003133002002303a0018a5040d081ba2b3001302c001899198008009bac30383035375400644b30010018a508acc004cc014014c0e40062946266004004607400281a1037456600266e1d200600189919b89375a607000264660020026eb0c0e4c0e8008896600200314800226644b300133008008002899b800014800a200281b8c0e8004cc008008c0ec005038181a1baa0028acc004cdc3a401000313322598009815981a9baa0018992cc004c0b0c0d8dd51813981b9baa30273037375401113371200200713371000200681a8dd6981c981b1baa0018a5040d06eb4c0dcc0d0dd5001181b981a1baa30243034375400b15980099b874802800626644b3001302b30353754003132598009816181b1baa3027303737546074606e6ea8022266e2400c006266e2000c0050351bad30393036375400314a081a0dd6981b981a1baa002303730343754606e60686ea8016264646600200200c44b30010018a508acc004cdd7801981b181d000c528c4cc008008c0ec0050352070300b3303630373034375400497ae040c88191032206440c88190c0c8dd500091192cc004c0d000626464b30013371e6eb8c0c40092210455534472008992cc004cc896600200314a11329800992cc004c0acc0d8dd5000c4dd6981b981d1bab303a30373754003148001035181c800cdd7981c981d000cdd58012444b30010018acc004c008016266e2520000038a5040dd1325980099baf30390014c10140008acc004cdc49bad303a303d3756607400200913003374c607c00514a081c22b300133712900000244c00c01a29410382070303c00140e8329800800c00e4466074004660746e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c0e00066eacc0e4006607a0069112cc004cdc8a441000038acc004cdc7a4410000389980298169981f1ba60024bd70000c4cc015300103d87a800000640e919800803c006446600e0046608066ec0dd48029ba6004001401c81d0607600481ca29422942294103a19192cc004c0a4c0d0dd5000c4c96600266ebcc0e4c0d8dd5181c981b1baa302630363754002601a660706ea400d2f5c1132598009815981b1baa0018992cc004cdd7981d981c1baa303b30383754002601e660746ea40152f5c11329800800cdd59814981c9baa00299198008009bab302a303a3754605460746ea8014896600200314bd6f7b63044c8cc0f8cdd8181d8009ba632330010013756607a00444b30010018a5eb7bdb1822646608266ec0c0f8004dd419b8148000dd6981f8009980180198218011820800a07e330030033040002303e00140f0800888966002005100189919914c00401a608400b32330010010052259800800c4cc108cdd81ba9004374c00697adef6c608994c004dd71820000cdd59820800cc1140092225980099b9000800389982319bb037520106e9801c0162b30013371e01000713259800981c98221baa00189982399bb037520126090608a6ea800400a20048218c966002b30010018a518a50411914c0103d87a80008981b198239ba60014bd702086329800800c022006800888966002005100189919914c00401a609c00b32330010010052259800800c4cc138cdd81ba9004375000697adef6c608994c004dd71826000cdd69826800cc1440092225980099b9000800389982919bb037520106ea001c0162b30013371e01000713259800982298281baa00189982999bb0375201260a860a26ea800400a20048278c966002608a00314c0103d87a800089821198299ba80014bd70209e3370000e005133052337606ea400cdd400119803003000a09c4138304f00141348030dd718238009bad3048001304a0024121133046337606ea400cdd300119803003000a0844108304300141048030dd7181d8009bab303c001303e00240f11640d86074606e6ea80062c81a8cc07cdd61812181b1baa00823302630213756604e606e6ea80040122c81a0c0e0c0d4dd5000c52f5bded8c08198cc070dd6181b981a1baa006001375c606c60666ea8c084c0ccdd50031ba63303533760606c0026e98cc0d4cdd8181b181b8009ba80024bd6f7b63025eb7bdb18220051640c46eb0c0d4c0d8c0d8c0d8c0c8dd5002c590301bad303100130330018b206233223259800981398189baa0018a5eb7bdb18226eacc0d4c0c8dd5000a06032330010010032259800800c5300103d87a8000899192cc004cdc8802800c56600266e3c0140062604c6606e606a00497ae08a60103d87a800040cd133004004303900340cc6eb8c0cc004c0d80050341bab30323033303330333033302f37540026eb8c07cc0bcdd5180e98179baa00245902a1bae302a001375c6054010605400f16409c6eb8c09c004dd71813801181380098111baa0018b20408b2046181100098108009810000980d9baa0028b203230093019375464b3001300e30193754003132598009809980d1baa0018992cc004c040c06cdd5000c4c8c8cc8966002604800710058b20423021001375c6042004604200260386ea80062c80d0c078c06cdd5000c590191804180d1baa300a301a3754603a60346ea80062c80c0cc004dd61804980c9baa0100163004004223300300223300a30053756601660366ea8c02cc06cdd500080111801800911919800800801912cc0040062980103d87a80008992cc004c010006260186603a00297ae0899801801980f8012032301d001406c600c00c44464b3001300c001899192cc004c07800a00916406c6eb8c070004c060dd5001c566002601a00313259800980e800c4cc018dd6180e000912cc00400a00b19800803cc07800a26002603e004803901c45901a180c1baa0038acc004c040006264b3001301d0018998031bac301c0012259800801401633001007980f00144c004c07c00900720388b20343018375400715980099b87480180062646644b3001301f0018998041bac301e0012259800801401e33001009981000144c004c084009009203c8b2038375a6038002603a00260306ea800e2b30013370e9004000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9005000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9006000c4c8c966002603c0050048b2036375c603800260306ea800e2c80b1016202c405880b1016202c301637540044590080c024004c010dd5005452689b2b20041", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class V0_1TreasuryTreasuryMint { + constructor(utxoRef, proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" : "5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201", Type.Tuple([Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); + } +} +export class V0_1TreasuryTreasurySpend { + constructor(utxoRef, proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" : "5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201", Type.Tuple([Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); + } +} +export class V0_1TreasuryTreasuryElse { + constructor(utxoRef, proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" : "5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201", Type.Tuple([Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v0_1/index.js.map b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_1/index.js.map new file mode 100644 index 0000000000..d8b33f8d1a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["applyParamsToScript","cborToScript","Type","PolicyId","String","Contracts","Module","MultisigScript","Union","Object","Signature","key_hash","ctor","AllOf","scripts","Array","Ref","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Tuple","ProtocolRedeemer","Literal","ProxyDatum","logic","settings","Registry","treasury","usdr","Settings","mint_permission","burn_permission","registry","reserve_token","TreasuryDatum","circulating_supply","Import","V0_1ProtocolProtocolWithdraw","constructor","proxyPolicyId","trace","_defineProperty","V0_1ProtocolProtocolElse","V0_1TreasuryTreasuryMint","utxoRef","transaction_id","output_index","V0_1TreasuryTreasurySpend","V0_1TreasuryTreasuryElse"],"sources":["../../../../src/generated-types/v0_1/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\nimport { type PlutusData } from \"@blaze-cardano/core\";\ntype Data = PlutusData;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object({\n key_hash: Type.String(),\n }, { ctor: 0n })\n }),\n Type.Object({\n AllOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n AnyOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n AtLeast: Type.Object({\n required: Type.BigInt(),\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Before: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n After: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n Script: Type.Object({\n script_hash: Type.String(),\n }, { ctor: 6n })\n }),\n ]),\n Asset: Type.Tuple([\n Type.String(),\n Type.String(),\n ]),\n ProtocolRedeemer: Type.Union([\n Type.Literal(\"Mint\", { ctor: 0n }),\n Type.Literal(\"Burn\", { ctor: 1n }),\n ]),\n ProxyDatum: Type.Object({\n logic: Type.String(),\n settings: Type.Ref(\"Settings\"),\n }, { ctor: 0n }),\n Registry: Type.Object({\n treasury: Type.String(),\n usdr: Type.String(),\n }, { ctor: 0n }),\n Settings: Type.Object({\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"Registry\"),\n reserve_token: Type.Ref(\"Asset\"),\n }, { ctor: 0n }),\n TreasuryDatum: Type.Object({\n circulating_supply: Type.BigInt(),\n }, { ctor: 0n }),\n});\n\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const ProtocolRedeemer = Contracts.Import(\"ProtocolRedeemer\");\nexport type ProtocolRedeemer = Exact;\nexport const ProxyDatum = Contracts.Import(\"ProxyDatum\");\nexport type ProxyDatum = Exact;\nexport const Registry = Contracts.Import(\"Registry\");\nexport type Registry = Exact;\nexport const Settings = Contracts.Import(\"Settings\");\nexport type Settings = Exact;\nexport const TreasuryDatum = Contracts.Import(\"TreasuryDatum\");\nexport type TreasuryDatum = Exact;\n\nexport class V0_1ProtocolProtocolWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5914b1010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692015e657870656374205b50616972286e616d652c206d696e745f616d6f756e74295d203d0a2020202074782e6d696e74207c3e20746f6b656e732873657474696e67732e72656769737472792e7573647229207c3e20746f5f7061697273282900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488896600264653001300e00198071807800cdc3a4009300e00248889660026004601c6ea800e264b30010058999119912cc004c00c0062b300130143754013002806202a8acc004c0100062b300130143754013002806202a80620224044330012259800800c52f5c1133016301330170013300200230180014055374a900048c058c05c00644646600200200644b30010018a508acc004cdc79bae30190010038a51899801001180d000a026405d2301630173017001488888c8cc88c8c96600200313232598009806980e9baa0038992cc00400603113259800800c4c96600200301a8992cc004006264b300100180e44c96600200313259800800c07a264b300100180fc07e264b3001302b0038cc004022330010068acc004c058c098dd500244c9660020030218992cc004006045022811408a26644b300100181244c966002003025812c09604b132598009818801c56600200f0268992cc00400604f027813c09e26644b3001001814c4c96600200302a81540aa05513259800981b001c660026e9520029181b181b981b981b981b981b981b981b981b800c8c0d8c0dcc0dcc0dcc0dcc0dcc0dcc0dc0064606c606e606e606e606e606e606e002911119912cc004c09cc0dcdd5016c5660033001303b3038375403b3758600a60706ea80aa600860706ea80aa6eacc00cc0e0dd50152004899b8848000cc0040740aa2a6606c9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d5159800cc004c090c0e0dd500ecdd61802981c1baa02a9802181c1baa02a9bab3003303837540548012266e20cc0040740a920008a9981b2481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d481a88888c8cc00400401488c9660026058003133028006375c6080607a6ea800a2b3001302d001899198008009bac3041303e375400644b30010018a518acc004cc014014c108006266004004608600314a081e1040456600260600031323300100137586082607c6ea800c896600200314a1159800998028029821000c528c4cc008008c10c00503c20808acc004cdc3a400c003132337126eb4c104004c8cc004004dd618211821801112cc0040062900044cc89660026601001000513370000290014400503f1821800998010011822000a082303d375400515980099b874802000626644b3001302f303e3754003132598009818181f9baa302c30403754605860806ea8022266e2400400e266e2000400d03d1bad3042303f375400314a081e0dd69820181e9baa0023040303d37546052607a6ea80162b30013370e9005000c4cc8966002605e607c6ea8006264b30013030303f3754605860806ea8c10cc100dd500444cdc4801800c4cdc4001800a07a375a6084607e6ea8006294103c1bad3040303d37540046080607a6ea8c100c0f4dd5002c4c8c8cc004004018896600200314a115980099baf003303f30430018a518998010011822000a07a410460166607e6080607a6ea80092f5c081d103a207440e881d103a181d9baa001223259800800c0d2264b3001303e0028992cc004cdc79bae303a00248810455534472008992cc004cc896600200314a11329800992cc004c0bcc0fcdd5000c4dd6982018219bab30433040375400314800103d1821000cdd798211821800cdd58012444b30010018acc004c008016266e2520000038a5040fd1325980099baf30420014c10140008acc004cdc49bad304330463756608600200913003374c608e00514a082022b300133712900000244c00c01a294104020803045001410c329800800c00e4466086004660866e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1040066eacc108006608c0069112cc004cdc8a441000038acc004cdc7a441000038998029819198239ba60024bd70000c4cc015300103d87a8000006410919800803c006446600e0046609266ec0dd48029ba6004001401c82106088004821229422942294104319192cc004c0b4c0f4dd5000c4c96600266ebcc108c0fcdd51821181f9baa302b303f3754002601a660826ea400d2f5c1132598009817981f9baa0018992cc004cdd7982218209baa304430413754002601e660866ea40152f5c11329800800cdd5981718211baa00299198008009bab302f30433754605e60866ea8014896600200314bd6f7b63044c8cc11ccdd818220009ba632330010013756608c00444b30010018a5eb7bdb1822646609466ec0c11c004dd419b8148000dd698240009980180198260011825000a09033003003304900230470014114800888966002005100189919914c00401a609600b32330010010052259800800c4cc12ccdd81ba9004374c00697adef6c608994c004dd71824800cdd59825000cc1380092225980099b9000800389982799bb037520106e9801c0162b30013371e01000713259800981e98269baa00189982819bb0375201260a2609c6ea800400a20048258c966002b30010018a518a50413d14c0103d87a80008981d998281ba60014bd702096329800800c022006800888966002005100189919914c00401a60ae00b32330010010052259800800c4cc15ccdd81ba9004375000697adef6c608994c004dd7182a800cdd6982b000cc1680092225980099b9000800389982d99bb037520106ea001c0162b30013371e010007132598009824982c9baa00189982e19bb0375201260ba60b46ea800400a200482b8c966002609200314c0103d87a8000898239982e1ba80014bd7020ae3370000e00513305b337606ea400cdd400119803003000a0ac4158305800141588030dd718280009bad30510013053002414513304f337606ea400cdd300119803003000a0944128304c00141288030dd718220009bab304500130470024115153303f49013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f8608660806ea80062a6607c92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c2073637269707429001640f46604c6eb0c0a4c0fcdd500411981598141bab302c30403754002009153303d49014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f06082607c6ea8006297adef6c6040ec660466eb0c100c0f4dd50030009bae303f303c3754604c60786ea8018dd31981f19bb0303f001374c6607c66ec0c0fcc100004dd400125eb7bdb1812f5bded8c110028a9981d2481786578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612c0a2020202020205b5061697228726573657276655f706f6c6963792c205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74295d295d2c0a2020202020203e3d2c0a2020202029001640e46eb0c0f8c0fcc0fcc0fcc0ecdd5002c54cc0e5240113657870656374206e616d65203d3d2075736472001640e06eb4c0e800606a81d8c0f000503a1991192cc004c0acc0e8dd5000c52f5bded8c113756607c60766ea80050381919800800801912cc0040062980103d87a8000899192cc004cdc8802800c56600266e3c0140062605666080607c00497ae08a60103d87a800040ed133004004304200340ec6eb8c0f0004c0fc00503d1bab303b303c303c303c303c303837540026eb8c090c0e0dd51811181c1baa00240ad0331bae00140d860660028188dd700098190042066303000740b902640b86eb80050311817000a058375c002605a0048170c0ac00502918139baa0048102048810201481020148102050375800301f80fa05630280014098605000501d80ec07603a8148c0980050241813001406e03701b80da04e30240014088604800501980cc0660328128c088005020180f1baa00380ba036222329800800c0120068008888c966002602600313259800800c01a264b3001001803c01e00f0078992cc004c0ac00e00b00840a06eb800502b1814000a04c30243754007159800980a000c4c9660020030068992cc00400600f0078992cc004c0ac00e26601600244b3001002803c4c96600200319800805400626004605c006805201700b805c02d02f1816001205480420503758003007803a0563028001409860486ea800e2b300130170018992cc00400600d13259800800c01e00f132598009815801c4cc02c00489660020050078992cc0040063300100a800c4c008c0b800d00a402e01700b805a05e302c00240a900840a06eb000600f00740ac60500028130c090dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817001c4cc038004896600200500a8992cc0040063300100d800c4c008c0c400d00d403a01d00e8072064302f00240b500b40ac6eb000601500a40b860560028148dd68009815001401d02b1814000a04c3024375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302b003802c0210281bad001803a0563028001409860486ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260560070058042050375a00300740ac60500028130c090dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260560070058042050375c0028158c0a000502618121baa003802a04240848109021204240848108c088dd500111191980080080191198018009801001405602b01580aa0423007301b375464646644646644a6604066e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea407922010013259800980918111baa00189929981119b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980c18121baa0018992cc0040062b300130153025375400313259800800c086264b3001001811408a045022899912cc0040060491325980098178014401a04a8160c0b400502b1bae001302c00240b460540028140c098dd5000c08102340820410208102056302830253754003153302349013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164088601c60486ea8c040c090dd5000981318119baa0018a99810a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640806601000203c60020026eb0c030c080dd5009111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920505980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81110221bac3025002375a60460026466ec0dd418118009ba73024001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6050003337149101023a200098008054c0a400600a805100a181580144ca6002015302800199b8a489023a200098008054c0a4006600e66008008004805100a18158012052302b00140a066e29220102207d0000340946eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006204a3758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc40012402914818229037204e3371666e000056600266e2000520148a40c11481b9027002200c33706002901019b8600148080cdc70020012048375c0068140dc5245022c200022323300100100322598009808000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407880f08888c8cc004004014896600200310058992cc004006266008604e00400d1330053027002330030030014094604e0028120c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901b111980180111980418029bab3009301d37546012603a6ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146603e00297ae089980180198108012034301f0014074600a00a3011375400e6e1d2002370e90004022011008804202a3012300f3754007164030300e0013009375401f149a2a6600e92011856616c696461746f722072657475726e65642066616c7365001365640181\"\n :\n \"590b64010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a4001300937540089111192cc004c00c00a2b3001300f37540130018b20208acc004c01000a2b3001300f37540130018b20208b201a4034330012259800800c52f5c1133012300f30130013300200230140014045374a900048c048c04c00644646600200200644b30010018a508acc004cdc79bae30150010038a51899801001180b000a020404d230123013301300191191980080080191198018009801001244444466446644646644b3001300f301a375400513232323298009bac30220019811001cc08800922259800981300244cc020c09401c4cc020008566002602c60426ea8006264646644b3001302a00389919912cc004c0b400e33001374a900148c0b4c0b8c0b8c0b8c0b8c0b8c0b8c0b8c0b80064605a605c605c605c605c605c605c605c0032302d302e302e302e302e302e302e00148888cc89660026046605c6ea80a62b30019800981918179baa0169bac3005302f375404d3004302f375404d37566006605e6ea809900244cdc4240006600202c04d1640b5159800cc004c07cc0bcdd500b4dd6180298179baa026980218179baa0269bab3003302f375404c8012266e20cc00405809920008b205a40b44444646600200200a4464b300130280018998118031bae3037303437540051598009814800c4c8cc004004dd6181c181a9baa0032259800800c528c5660026600a00a6072003133002002303a0018a5040d081ba2b3001302c001899198008009bac30383035375400644b30010018a508acc004cc014014c0e40062946266004004607400281a1037456600266e1d200600189919b89375a607000264660020026eb0c0e4c0e8008896600200314800226644b300133008008002899b800014800a200281b8c0e8004cc008008c0ec005038181a1baa0028acc004cdc3a401000313322598009815981a9baa0018992cc004c0b0c0d8dd51813981b9baa30273037375401113371200200713371000200681a8dd6981c981b1baa0018a5040d06eb4c0dcc0d0dd5001181b981a1baa30243034375400b15980099b874802800626644b3001302b30353754003132598009816181b1baa3027303737546074606e6ea8022266e2400c006266e2000c0050351bad30393036375400314a081a0dd6981b981a1baa002303730343754606e60686ea8016264646600200200c44b30010018a508acc004cdd7801981b181d000c528c4cc008008c0ec0050352070300b3303630373034375400497ae040c88191032206440c88190c0c8dd500091192cc004c0d000626464b30013371e6eb8c0c40092210455534472008992cc004cc896600200314a11329800992cc004c0acc0d8dd5000c4dd6981b981d1bab303a30373754003148001035181c800cdd7981c981d000cdd58012444b30010018acc004c008016266e2520000038a5040dd1325980099baf30390014c10140008acc004cdc49bad303a303d3756607400200913003374c607c00514a081c22b300133712900000244c00c01a29410382070303c00140e8329800800c00e4466074004660746e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c0e00066eacc0e4006607a0069112cc004cdc8a441000038acc004cdc7a4410000389980298169981f1ba60024bd70000c4cc015300103d87a800000640e919800803c006446600e0046608066ec0dd48029ba6004001401c81d0607600481ca29422942294103a19192cc004c0a4c0d0dd5000c4c96600266ebcc0e4c0d8dd5181c981b1baa302630363754002601a660706ea400d2f5c1132598009815981b1baa0018992cc004cdd7981d981c1baa303b30383754002601e660746ea40152f5c11329800800cdd59814981c9baa00299198008009bab302a303a3754605460746ea8014896600200314bd6f7b63044c8cc0f8cdd8181d8009ba632330010013756607a00444b30010018a5eb7bdb1822646608266ec0c0f8004dd419b8148000dd6981f8009980180198218011820800a07e330030033040002303e00140f0800888966002005100189919914c00401a608400b32330010010052259800800c4cc108cdd81ba9004374c00697adef6c608994c004dd71820000cdd59820800cc1140092225980099b9000800389982319bb037520106e9801c0162b30013371e01000713259800981c98221baa00189982399bb037520126090608a6ea800400a20048218c966002b30010018a518a50411914c0103d87a80008981b198239ba60014bd702086329800800c022006800888966002005100189919914c00401a609c00b32330010010052259800800c4cc138cdd81ba9004375000697adef6c608994c004dd71826000cdd69826800cc1440092225980099b9000800389982919bb037520106ea001c0162b30013371e01000713259800982298281baa00189982999bb0375201260a860a26ea800400a20048278c966002608a00314c0103d87a800089821198299ba80014bd70209e3370000e005133052337606ea400cdd400119803003000a09c4138304f00141348030dd718238009bad3048001304a0024121133046337606ea400cdd300119803003000a0844108304300141048030dd7181d8009bab303c001303e00240f11640d86074606e6ea80062c81a8cc07cdd61812181b1baa00823302630213756604e606e6ea80040122c81a0c0e0c0d4dd5000c52f5bded8c08198cc070dd6181b981a1baa006001375c606c60666ea8c084c0ccdd50031ba63303533760606c0026e98cc0d4cdd8181b181b8009ba80024bd6f7b63025eb7bdb18220051640c46eb0c0d4c0d8c0d8c0d8c0c8dd5002c590301bad303100130330018b206233223259800981398189baa0018a5eb7bdb18226eacc0d4c0c8dd5000a06032330010010032259800800c5300103d87a8000899192cc004cdc8802800c56600266e3c0140062604c6606e606a00497ae08a60103d87a800040cd133004004303900340cc6eb8c0cc004c0d80050341bab30323033303330333033302f37540026eb8c07cc0bcdd5180e98179baa00245902a1bae302a001375c6054010605400f16409c6eb8c09c004dd71813801181380098111baa0018b20408b2046181100098108009810000980d9baa0028b203230093019375464b3001300e30193754003132598009809980d1baa0018992cc004c040c06cdd5000c4c8c8cc8966002604800710058b20423021001375c6042004604200260386ea80062c80d0c078c06cdd5000c590191804180d1baa300a301a3754603a60346ea80062c80c0cc004dd61804980c9baa0100163004004223300300223300a30053756601660366ea8c02cc06cdd500080111801800911919800800801912cc0040062980103d87a80008992cc004c010006260186603a00297ae0899801801980f8012032301d001406c600c00c44464b3001300c001899192cc004c07800a00916406c6eb8c070004c060dd5001c566002601a00313259800980e800c4cc018dd6180e000912cc00400a00b19800803cc07800a26002603e004803901c45901a180c1baa0038acc004c040006264b3001301d0018998031bac301c0012259800801401633001007980f00144c004c07c00900720388b20343018375400715980099b87480180062646644b3001301f0018998041bac301e0012259800801401e33001009981000144c004c084009009203c8b2038375a6038002603a00260306ea800e2b30013370e9004000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9005000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9006000c4c8c966002603c0050048b2036375c603800260306ea800e2c80b1016202c405880b1016202c301637540044590080c024004c010dd5005452689b2b20041\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_1ProtocolProtocolElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5914b1010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692015e657870656374205b50616972286e616d652c206d696e745f616d6f756e74295d203d0a2020202074782e6d696e74207c3e20746f6b656e732873657474696e67732e72656769737472792e7573647229207c3e20746f5f7061697273282900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488896600264653001300e00198071807800cdc3a4009300e00248889660026004601c6ea800e264b30010058999119912cc004c00c0062b300130143754013002806202a8acc004c0100062b300130143754013002806202a80620224044330012259800800c52f5c1133016301330170013300200230180014055374a900048c058c05c00644646600200200644b30010018a508acc004cdc79bae30190010038a51899801001180d000a026405d2301630173017001488888c8cc88c8c96600200313232598009806980e9baa0038992cc00400603113259800800c4c96600200301a8992cc004006264b300100180e44c96600200313259800800c07a264b300100180fc07e264b3001302b0038cc004022330010068acc004c058c098dd500244c9660020030218992cc004006045022811408a26644b300100181244c966002003025812c09604b132598009818801c56600200f0268992cc00400604f027813c09e26644b3001001814c4c96600200302a81540aa05513259800981b001c660026e9520029181b181b981b981b981b981b981b981b981b800c8c0d8c0dcc0dcc0dcc0dcc0dcc0dcc0dc0064606c606e606e606e606e606e606e002911119912cc004c09cc0dcdd5016c5660033001303b3038375403b3758600a60706ea80aa600860706ea80aa6eacc00cc0e0dd50152004899b8848000cc0040740aa2a6606c9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d5159800cc004c090c0e0dd500ecdd61802981c1baa02a9802181c1baa02a9bab3003303837540548012266e20cc0040740a920008a9981b2481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d481a88888c8cc00400401488c9660026058003133028006375c6080607a6ea800a2b3001302d001899198008009bac3041303e375400644b30010018a518acc004cc014014c108006266004004608600314a081e1040456600260600031323300100137586082607c6ea800c896600200314a1159800998028029821000c528c4cc008008c10c00503c20808acc004cdc3a400c003132337126eb4c104004c8cc004004dd618211821801112cc0040062900044cc89660026601001000513370000290014400503f1821800998010011822000a082303d375400515980099b874802000626644b3001302f303e3754003132598009818181f9baa302c30403754605860806ea8022266e2400400e266e2000400d03d1bad3042303f375400314a081e0dd69820181e9baa0023040303d37546052607a6ea80162b30013370e9005000c4cc8966002605e607c6ea8006264b30013030303f3754605860806ea8c10cc100dd500444cdc4801800c4cdc4001800a07a375a6084607e6ea8006294103c1bad3040303d37540046080607a6ea8c100c0f4dd5002c4c8c8cc004004018896600200314a115980099baf003303f30430018a518998010011822000a07a410460166607e6080607a6ea80092f5c081d103a207440e881d103a181d9baa001223259800800c0d2264b3001303e0028992cc004cdc79bae303a00248810455534472008992cc004cc896600200314a11329800992cc004c0bcc0fcdd5000c4dd6982018219bab30433040375400314800103d1821000cdd798211821800cdd58012444b30010018acc004c008016266e2520000038a5040fd1325980099baf30420014c10140008acc004cdc49bad304330463756608600200913003374c608e00514a082022b300133712900000244c00c01a294104020803045001410c329800800c00e4466086004660866e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1040066eacc108006608c0069112cc004cdc8a441000038acc004cdc7a441000038998029819198239ba60024bd70000c4cc015300103d87a8000006410919800803c006446600e0046609266ec0dd48029ba6004001401c82106088004821229422942294104319192cc004c0b4c0f4dd5000c4c96600266ebcc108c0fcdd51821181f9baa302b303f3754002601a660826ea400d2f5c1132598009817981f9baa0018992cc004cdd7982218209baa304430413754002601e660866ea40152f5c11329800800cdd5981718211baa00299198008009bab302f30433754605e60866ea8014896600200314bd6f7b63044c8cc11ccdd818220009ba632330010013756608c00444b30010018a5eb7bdb1822646609466ec0c11c004dd419b8148000dd698240009980180198260011825000a09033003003304900230470014114800888966002005100189919914c00401a609600b32330010010052259800800c4cc12ccdd81ba9004374c00697adef6c608994c004dd71824800cdd59825000cc1380092225980099b9000800389982799bb037520106e9801c0162b30013371e01000713259800981e98269baa00189982819bb0375201260a2609c6ea800400a20048258c966002b30010018a518a50413d14c0103d87a80008981d998281ba60014bd702096329800800c022006800888966002005100189919914c00401a60ae00b32330010010052259800800c4cc15ccdd81ba9004375000697adef6c608994c004dd7182a800cdd6982b000cc1680092225980099b9000800389982d99bb037520106ea001c0162b30013371e010007132598009824982c9baa00189982e19bb0375201260ba60b46ea800400a200482b8c966002609200314c0103d87a8000898239982e1ba80014bd7020ae3370000e00513305b337606ea400cdd400119803003000a0ac4158305800141588030dd718280009bad30510013053002414513304f337606ea400cdd300119803003000a0944128304c00141288030dd718220009bab304500130470024115153303f49013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f8608660806ea80062a6607c92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c2073637269707429001640f46604c6eb0c0a4c0fcdd500411981598141bab302c30403754002009153303d49014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f06082607c6ea8006297adef6c6040ec660466eb0c100c0f4dd50030009bae303f303c3754604c60786ea8018dd31981f19bb0303f001374c6607c66ec0c0fcc100004dd400125eb7bdb1812f5bded8c110028a9981d2481786578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612c0a2020202020205b5061697228726573657276655f706f6c6963792c205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74295d295d2c0a2020202020203e3d2c0a2020202029001640e46eb0c0f8c0fcc0fcc0fcc0ecdd5002c54cc0e5240113657870656374206e616d65203d3d2075736472001640e06eb4c0e800606a81d8c0f000503a1991192cc004c0acc0e8dd5000c52f5bded8c113756607c60766ea80050381919800800801912cc0040062980103d87a8000899192cc004cdc8802800c56600266e3c0140062605666080607c00497ae08a60103d87a800040ed133004004304200340ec6eb8c0f0004c0fc00503d1bab303b303c303c303c303c303837540026eb8c090c0e0dd51811181c1baa00240ad0331bae00140d860660028188dd700098190042066303000740b902640b86eb80050311817000a058375c002605a0048170c0ac00502918139baa0048102048810201481020148102050375800301f80fa05630280014098605000501d80ec07603a8148c0980050241813001406e03701b80da04e30240014088604800501980cc0660328128c088005020180f1baa00380ba036222329800800c0120068008888c966002602600313259800800c01a264b3001001803c01e00f0078992cc004c0ac00e00b00840a06eb800502b1814000a04c30243754007159800980a000c4c9660020030068992cc00400600f0078992cc004c0ac00e26601600244b3001002803c4c96600200319800805400626004605c006805201700b805c02d02f1816001205480420503758003007803a0563028001409860486ea800e2b300130170018992cc00400600d13259800800c01e00f132598009815801c4cc02c00489660020050078992cc0040063300100a800c4c008c0b800d00a402e01700b805a05e302c00240a900840a06eb000600f00740ac60500028130c090dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817001c4cc038004896600200500a8992cc0040063300100d800c4c008c0c400d00d403a01d00e8072064302f00240b500b40ac6eb000601500a40b860560028148dd68009815001401d02b1814000a04c3024375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302b003802c0210281bad001803a0563028001409860486ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260560070058042050375a00300740ac60500028130c090dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260560070058042050375c0028158c0a000502618121baa003802a04240848109021204240848108c088dd500111191980080080191198018009801001405602b01580aa0423007301b375464646644646644a6604066e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea407922010013259800980918111baa00189929981119b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980c18121baa0018992cc0040062b300130153025375400313259800800c086264b3001001811408a045022899912cc0040060491325980098178014401a04a8160c0b400502b1bae001302c00240b460540028140c098dd5000c08102340820410208102056302830253754003153302349013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164088601c60486ea8c040c090dd5000981318119baa0018a99810a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640806601000203c60020026eb0c030c080dd5009111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920505980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81110221bac3025002375a60460026466ec0dd418118009ba73024001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6050003337149101023a200098008054c0a400600a805100a181580144ca6002015302800199b8a489023a200098008054c0a4006600e66008008004805100a18158012052302b00140a066e29220102207d0000340946eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006204a3758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc40012402914818229037204e3371666e000056600266e2000520148a40c11481b9027002200c33706002901019b8600148080cdc70020012048375c0068140dc5245022c200022323300100100322598009808000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407880f08888c8cc004004014896600200310058992cc004006266008604e00400d1330053027002330030030014094604e0028120c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901b111980180111980418029bab3009301d37546012603a6ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146603e00297ae089980180198108012034301f0014074600a00a3011375400e6e1d2002370e90004022011008804202a3012300f3754007164030300e0013009375401f149a2a6600e92011856616c696461746f722072657475726e65642066616c7365001365640181\"\n :\n \"590b64010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a4001300937540089111192cc004c00c00a2b3001300f37540130018b20208acc004c01000a2b3001300f37540130018b20208b201a4034330012259800800c52f5c1133012300f30130013300200230140014045374a900048c048c04c00644646600200200644b30010018a508acc004cdc79bae30150010038a51899801001180b000a020404d230123013301300191191980080080191198018009801001244444466446644646644b3001300f301a375400513232323298009bac30220019811001cc08800922259800981300244cc020c09401c4cc020008566002602c60426ea8006264646644b3001302a00389919912cc004c0b400e33001374a900148c0b4c0b8c0b8c0b8c0b8c0b8c0b8c0b8c0b80064605a605c605c605c605c605c605c605c0032302d302e302e302e302e302e302e00148888cc89660026046605c6ea80a62b30019800981918179baa0169bac3005302f375404d3004302f375404d37566006605e6ea809900244cdc4240006600202c04d1640b5159800cc004c07cc0bcdd500b4dd6180298179baa026980218179baa0269bab3003302f375404c8012266e20cc00405809920008b205a40b44444646600200200a4464b300130280018998118031bae3037303437540051598009814800c4c8cc004004dd6181c181a9baa0032259800800c528c5660026600a00a6072003133002002303a0018a5040d081ba2b3001302c001899198008009bac30383035375400644b30010018a508acc004cc014014c0e40062946266004004607400281a1037456600266e1d200600189919b89375a607000264660020026eb0c0e4c0e8008896600200314800226644b300133008008002899b800014800a200281b8c0e8004cc008008c0ec005038181a1baa0028acc004cdc3a401000313322598009815981a9baa0018992cc004c0b0c0d8dd51813981b9baa30273037375401113371200200713371000200681a8dd6981c981b1baa0018a5040d06eb4c0dcc0d0dd5001181b981a1baa30243034375400b15980099b874802800626644b3001302b30353754003132598009816181b1baa3027303737546074606e6ea8022266e2400c006266e2000c0050351bad30393036375400314a081a0dd6981b981a1baa002303730343754606e60686ea8016264646600200200c44b30010018a508acc004cdd7801981b181d000c528c4cc008008c0ec0050352070300b3303630373034375400497ae040c88191032206440c88190c0c8dd500091192cc004c0d000626464b30013371e6eb8c0c40092210455534472008992cc004cc896600200314a11329800992cc004c0acc0d8dd5000c4dd6981b981d1bab303a30373754003148001035181c800cdd7981c981d000cdd58012444b30010018acc004c008016266e2520000038a5040dd1325980099baf30390014c10140008acc004cdc49bad303a303d3756607400200913003374c607c00514a081c22b300133712900000244c00c01a29410382070303c00140e8329800800c00e4466074004660746e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c0e00066eacc0e4006607a0069112cc004cdc8a441000038acc004cdc7a4410000389980298169981f1ba60024bd70000c4cc015300103d87a800000640e919800803c006446600e0046608066ec0dd48029ba6004001401c81d0607600481ca29422942294103a19192cc004c0a4c0d0dd5000c4c96600266ebcc0e4c0d8dd5181c981b1baa302630363754002601a660706ea400d2f5c1132598009815981b1baa0018992cc004cdd7981d981c1baa303b30383754002601e660746ea40152f5c11329800800cdd59814981c9baa00299198008009bab302a303a3754605460746ea8014896600200314bd6f7b63044c8cc0f8cdd8181d8009ba632330010013756607a00444b30010018a5eb7bdb1822646608266ec0c0f8004dd419b8148000dd6981f8009980180198218011820800a07e330030033040002303e00140f0800888966002005100189919914c00401a608400b32330010010052259800800c4cc108cdd81ba9004374c00697adef6c608994c004dd71820000cdd59820800cc1140092225980099b9000800389982319bb037520106e9801c0162b30013371e01000713259800981c98221baa00189982399bb037520126090608a6ea800400a20048218c966002b30010018a518a50411914c0103d87a80008981b198239ba60014bd702086329800800c022006800888966002005100189919914c00401a609c00b32330010010052259800800c4cc138cdd81ba9004375000697adef6c608994c004dd71826000cdd69826800cc1440092225980099b9000800389982919bb037520106ea001c0162b30013371e01000713259800982298281baa00189982999bb0375201260a860a26ea800400a20048278c966002608a00314c0103d87a800089821198299ba80014bd70209e3370000e005133052337606ea400cdd400119803003000a09c4138304f00141348030dd718238009bad3048001304a0024121133046337606ea400cdd300119803003000a0844108304300141048030dd7181d8009bab303c001303e00240f11640d86074606e6ea80062c81a8cc07cdd61812181b1baa00823302630213756604e606e6ea80040122c81a0c0e0c0d4dd5000c52f5bded8c08198cc070dd6181b981a1baa006001375c606c60666ea8c084c0ccdd50031ba63303533760606c0026e98cc0d4cdd8181b181b8009ba80024bd6f7b63025eb7bdb18220051640c46eb0c0d4c0d8c0d8c0d8c0c8dd5002c590301bad303100130330018b206233223259800981398189baa0018a5eb7bdb18226eacc0d4c0c8dd5000a06032330010010032259800800c5300103d87a8000899192cc004cdc8802800c56600266e3c0140062604c6606e606a00497ae08a60103d87a800040cd133004004303900340cc6eb8c0cc004c0d80050341bab30323033303330333033302f37540026eb8c07cc0bcdd5180e98179baa00245902a1bae302a001375c6054010605400f16409c6eb8c09c004dd71813801181380098111baa0018b20408b2046181100098108009810000980d9baa0028b203230093019375464b3001300e30193754003132598009809980d1baa0018992cc004c040c06cdd5000c4c8c8cc8966002604800710058b20423021001375c6042004604200260386ea80062c80d0c078c06cdd5000c590191804180d1baa300a301a3754603a60346ea80062c80c0cc004dd61804980c9baa0100163004004223300300223300a30053756601660366ea8c02cc06cdd500080111801800911919800800801912cc0040062980103d87a80008992cc004c010006260186603a00297ae0899801801980f8012032301d001406c600c00c44464b3001300c001899192cc004c07800a00916406c6eb8c070004c060dd5001c566002601a00313259800980e800c4cc018dd6180e000912cc00400a00b19800803cc07800a26002603e004803901c45901a180c1baa0038acc004c040006264b3001301d0018998031bac301c0012259800801401633001007980f00144c004c07c00900720388b20343018375400715980099b87480180062646644b3001301f0018998041bac301e0012259800801401e33001009981000144c004c084009009203c8b2038375a6038002603a00260306ea800e2b30013370e9004000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9005000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9006000c4c8c966002603c0050048b2036375c603800260306ea800e2c80b1016202c405880b1016202c301637540044590080c024004c010dd5005452689b2b20041\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_1TreasuryTreasuryMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_1TreasuryTreasurySpend {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_1TreasuryTreasuryElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":";;;AAAA;AACA;AACA,SAASA,mBAAmB,EAAEC,YAAY,QAAQ,qBAAqB;AAEvE,SAASC,IAAI,QAA4B,qBAAqB;AAK9D,MAAMC,QAAQ,GAAGD,IAAI,CAACE,MAAM,CAAC,CAAC;AAG9B,MAAMC,SAAS,GAAGH,IAAI,CAACI,MAAM,CAAC;EAC5BC,cAAc,EAAEL,IAAI,CAACM,KAAK,CAAC,CACzBN,IAAI,CAACO,MAAM,CAAC;IACVC,SAAS,EAAER,IAAI,CAACO,MAAM,CAAC;MACrBE,QAAQ,EAAET,IAAI,CAACE,MAAM,CAAC;IACxB,CAAC,EAAE;MAAEQ,IAAI,EAAE;IAAG,CAAC;EACjB,CAAC,CAAC,EACFV,IAAI,CAACO,MAAM,CAAC;IACVI,KAAK,EAAEX,IAAI,CAACO,MAAM,CAAC;MACjBK,OAAO,EAAEZ,IAAI,CAACa,KAAK,CACjBb,IAAI,CAACc,GAAG,CAAC,gBAAgB,CAC3B;IACF,CAAC,EAAE;MAAEJ,IAAI,EAAE;IAAG,CAAC;EACjB,CAAC,CAAC,EACFV,IAAI,CAACO,MAAM,CAAC;IACVQ,KAAK,EAAEf,IAAI,CAACO,MAAM,CAAC;MACjBK,OAAO,EAAEZ,IAAI,CAACa,KAAK,CACjBb,IAAI,CAACc,GAAG,CAAC,gBAAgB,CAC3B;IACF,CAAC,EAAE;MAAEJ,IAAI,EAAE;IAAG,CAAC;EACjB,CAAC,CAAC,EACFV,IAAI,CAACO,MAAM,CAAC;IACVS,OAAO,EAAEhB,IAAI,CAACO,MAAM,CAAC;MACnBU,QAAQ,EAAEjB,IAAI,CAACkB,MAAM,CAAC,CAAC;MACvBN,OAAO,EAAEZ,IAAI,CAACa,KAAK,CACjBb,IAAI,CAACc,GAAG,CAAC,gBAAgB,CAC3B;IACF,CAAC,EAAE;MAAEJ,IAAI,EAAE;IAAG,CAAC;EACjB,CAAC,CAAC,EACFV,IAAI,CAACO,MAAM,CAAC;IACVY,MAAM,EAAEnB,IAAI,CAACO,MAAM,CAAC;MAClBa,IAAI,EAAEpB,IAAI,CAACkB,MAAM,CAAC;IACpB,CAAC,EAAE;MAAER,IAAI,EAAE;IAAG,CAAC;EACjB,CAAC,CAAC,EACFV,IAAI,CAACO,MAAM,CAAC;IACVc,KAAK,EAAErB,IAAI,CAACO,MAAM,CAAC;MACjBa,IAAI,EAAEpB,IAAI,CAACkB,MAAM,CAAC;IACpB,CAAC,EAAE;MAAER,IAAI,EAAE;IAAG,CAAC;EACjB,CAAC,CAAC,EACFV,IAAI,CAACO,MAAM,CAAC;IACVe,MAAM,EAAEtB,IAAI,CAACO,MAAM,CAAC;MAClBgB,WAAW,EAAEvB,IAAI,CAACE,MAAM,CAAC;IAC3B,CAAC,EAAE;MAAEQ,IAAI,EAAE;IAAG,CAAC;EACjB,CAAC,CAAC,CACH,CAAC;EACFc,KAAK,EAAExB,IAAI,CAACyB,KAAK,CAAC,CAChBzB,IAAI,CAACE,MAAM,CAAC,CAAC,EACbF,IAAI,CAACE,MAAM,CAAC,CAAC,CACd,CAAC;EACFwB,gBAAgB,EAAE1B,IAAI,CAACM,KAAK,CAAC,CAC3BN,IAAI,CAAC2B,OAAO,CAAC,MAAM,EAAE;IAAEjB,IAAI,EAAE;EAAG,CAAC,CAAC,EAClCV,IAAI,CAAC2B,OAAO,CAAC,MAAM,EAAE;IAAEjB,IAAI,EAAE;EAAG,CAAC,CAAC,CACnC,CAAC;EACFkB,UAAU,EAAE5B,IAAI,CAACO,MAAM,CAAC;IACtBsB,KAAK,EAAE7B,IAAI,CAACE,MAAM,CAAC,CAAC;IACpB4B,QAAQ,EAAE9B,IAAI,CAACc,GAAG,CAAC,UAAU;EAC/B,CAAC,EAAE;IAAEJ,IAAI,EAAE;EAAG,CAAC,CAAC;EAChBqB,QAAQ,EAAE/B,IAAI,CAACO,MAAM,CAAC;IACpByB,QAAQ,EAAEhC,IAAI,CAACE,MAAM,CAAC,CAAC;IACvB+B,IAAI,EAAEjC,IAAI,CAACE,MAAM,CAAC;EACpB,CAAC,EAAE;IAAEQ,IAAI,EAAE;EAAG,CAAC,CAAC;EAChBwB,QAAQ,EAAElC,IAAI,CAACO,MAAM,CAAC;IACpB4B,eAAe,EAAEnC,IAAI,CAACc,GAAG,CAAC,gBAAgB,CAAC;IAC3CsB,eAAe,EAAEpC,IAAI,CAACc,GAAG,CAAC,gBAAgB,CAAC;IAC3CuB,QAAQ,EAAErC,IAAI,CAACc,GAAG,CAAC,UAAU,CAAC;IAC9BwB,aAAa,EAAEtC,IAAI,CAACc,GAAG,CAAC,OAAO;EACjC,CAAC,EAAE;IAAEJ,IAAI,EAAE;EAAG,CAAC,CAAC;EAChB6B,aAAa,EAAEvC,IAAI,CAACO,MAAM,CAAC;IACzBiC,kBAAkB,EAAExC,IAAI,CAACkB,MAAM,CAAC;EAClC,CAAC,EAAE;IAAER,IAAI,EAAE;EAAG,CAAC;AACjB,CAAC,CAAC;AAEF,OAAO,MAAML,cAAc,GAAGF,SAAS,CAACsC,MAAM,CAAC,gBAAgB,CAAC;AAEhE,OAAO,MAAMjB,KAAK,GAAGrB,SAAS,CAACsC,MAAM,CAAC,OAAO,CAAC;AAE9C,OAAO,MAAMf,gBAAgB,GAAGvB,SAAS,CAACsC,MAAM,CAAC,kBAAkB,CAAC;AAEpE,OAAO,MAAMb,UAAU,GAAGzB,SAAS,CAACsC,MAAM,CAAC,YAAY,CAAC;AAExD,OAAO,MAAMV,QAAQ,GAAG5B,SAAS,CAACsC,MAAM,CAAC,UAAU,CAAC;AAEpD,OAAO,MAAMP,QAAQ,GAAG/B,SAAS,CAACsC,MAAM,CAAC,UAAU,CAAC;AAEpD,OAAO,MAAMF,aAAa,GAAGpC,SAAS,CAACsC,MAAM,CAAC,eAAe,CAAC;AAG9D,OAAO,MAAMC,4BAA4B,CAAC;EAExCC,WAAWA,CACTC,aAAuB,EACvBC,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACxB,MAAM,GAAGvB,YAAY,CACxBD,mBAAmB,CACjB+C,KAAK,GAEH,02UAA02U,GAE12U,gtLAAgtL,EACltL7C,IAAI,CAACyB,KAAK,CAAC,CACTxB,QAAQ,CACT,CAAC,EACF,CACE2C,aAAa,CAEjB,CAAC,EACD,UACF,CAAC;EACH;AACF;AACA,OAAO,MAAMG,wBAAwB,CAAC;EAEpCJ,WAAWA,CACTC,aAAuB,EACvBC,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACxB,MAAM,GAAGvB,YAAY,CACxBD,mBAAmB,CACjB+C,KAAK,GAEH,02UAA02U,GAE12U,gtLAAgtL,EACltL7C,IAAI,CAACyB,KAAK,CAAC,CACTxB,QAAQ,CACT,CAAC,EACF,CACE2C,aAAa,CAEjB,CAAC,EACD,UACF,CAAC;EACH;AACF;AACA,OAAO,MAAMI,wBAAwB,CAAC;EAEpCL,WAAWA,CACTM,OAAwB,EACxBL,aAAuB,EACvBC,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACxB,MAAM,GAAGvB,YAAY,CACxBD,mBAAmB,CACjB+C,KAAK,GAEH,suIAAsuI,GAEtuI,g9CAAg9C,EACl9C7C,IAAI,CAACyB,KAAK,CAAC,CACTzB,IAAI,CAACO,MAAM,CAAC;MACV2C,cAAc,EAAElD,IAAI,CAACE,MAAM,CAAC,CAAC;MAC7BiD,YAAY,EAAEnD,IAAI,CAACkB,MAAM,CAAC;IAC5B,CAAC,EAAE;MAAER,IAAI,EAAE;IAAG,CAAC,CAAC,EAChBT,QAAQ,CACT,CAAC,EACF,CACEgD,OAAO,EACPL,aAAa,CAEjB,CAAC,EACD,UACF,CAAC;EACH;AACF;AACA,OAAO,MAAMQ,yBAAyB,CAAC;EAErCT,WAAWA,CACTM,OAAwB,EACxBL,aAAuB,EACvBC,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACxB,MAAM,GAAGvB,YAAY,CACxBD,mBAAmB,CACjB+C,KAAK,GAEH,suIAAsuI,GAEtuI,g9CAAg9C,EACl9C7C,IAAI,CAACyB,KAAK,CAAC,CACTzB,IAAI,CAACO,MAAM,CAAC;MACV2C,cAAc,EAAElD,IAAI,CAACE,MAAM,CAAC,CAAC;MAC7BiD,YAAY,EAAEnD,IAAI,CAACkB,MAAM,CAAC;IAC5B,CAAC,EAAE;MAAER,IAAI,EAAE;IAAG,CAAC,CAAC,EAChBT,QAAQ,CACT,CAAC,EACF,CACEgD,OAAO,EACPL,aAAa,CAEjB,CAAC,EACD,UACF,CAAC;EACH;AACF;AACA,OAAO,MAAMS,wBAAwB,CAAC;EAEpCV,WAAWA,CACTM,OAAwB,EACxBL,aAAuB,EACvBC,KAAe,GAAG,KAAK,EACvB;IAAAC,eAAA;IACA,IAAI,CAACxB,MAAM,GAAGvB,YAAY,CACxBD,mBAAmB,CACjB+C,KAAK,GAEH,suIAAsuI,GAEtuI,g9CAAg9C,EACl9C7C,IAAI,CAACyB,KAAK,CAAC,CACTzB,IAAI,CAACO,MAAM,CAAC;MACV2C,cAAc,EAAElD,IAAI,CAACE,MAAM,CAAC,CAAC;MAC7BiD,YAAY,EAAEnD,IAAI,CAACkB,MAAM,CAAC;IAC5B,CAAC,EAAE;MAAER,IAAI,EAAE;IAAG,CAAC,CAAC,EAChBT,QAAQ,CACT,CAAC,EACF,CACEgD,OAAO,EACPL,aAAa,CAEjB,CAAC,EACD,UACF,CAAC;EACH;AACF","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v0_2/index.js b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_2/index.js new file mode 100644 index 0000000000..763ccecf85 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_2/index.js @@ -0,0 +1,113 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { Type } from "@blaze-cardano/data"; +const PolicyId = Type.String(); +const Contracts = Type.Module({ + MultisigScript: Type.Union([Type.Object({ + Signature: Type.Object({ + key_hash: Type.String() + }, { + ctor: 0n + }) + }), Type.Object({ + AllOf: Type.Object({ + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 1n + }) + }), Type.Object({ + AnyOf: Type.Object({ + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 2n + }) + }), Type.Object({ + AtLeast: Type.Object({ + required: Type.BigInt(), + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 3n + }) + }), Type.Object({ + Before: Type.Object({ + time: Type.BigInt() + }, { + ctor: 4n + }) + }), Type.Object({ + After: Type.Object({ + time: Type.BigInt() + }, { + ctor: 5n + }) + }), Type.Object({ + Script: Type.Object({ + script_hash: Type.String() + }, { + ctor: 6n + }) + })]), + Asset: Type.Tuple([Type.String(), Type.String()]), + Registry: Type.Object({ + treasury: Type.String(), + usdr: Type.String() + }, { + ctor: 0n + }), + ProtocolRedeemer: Type.Union([Type.Literal("Mint", { + ctor: 0n + }), Type.Literal("Burn", { + ctor: 1n + }), Type.Object({ + Withdraw: Type.Object({ + withdraw_amount: Type.BigInt() + }, { + ctor: 2n + }) + }), Type.Object({ + Deposit: Type.Object({ + deposit_amount: Type.BigInt() + }, { + ctor: 3n + }) + })]), + ProxyDatum: Type.Object({ + logic: Type.String(), + settings: Type.Ref("Settings") + }, { + ctor: 0n + }), + Settings: Type.Object({ + mint_permission: Type.Ref("MultisigScript"), + burn_permission: Type.Ref("MultisigScript"), + withdraw_permission: Type.Ref("MultisigScript"), + deposit_permission: Type.Ref("MultisigScript"), + registry: Type.Ref("Registry"), + reserve_token: Type.Ref("Asset") + }, { + ctor: 0n + }) +}); +export const MultisigScript = Contracts.Import("MultisigScript"); +export const Asset = Contracts.Import("Asset"); +export const Registry = Contracts.Import("Registry"); +export const ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +export const ProxyDatum = Contracts.Import("ProxyDatum"); +export const Settings = Contracts.Import("Settings"); +export class V0_2ProtocolProtocolWithdraw { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "591944010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920130657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488888896600264653001301100198089809000cdc3a400930110024888966002600460226ea800e264b30010058cc004dc3a4005370e90034dc3a40013012375400a9111192cc004c00c00a2b300130183754015001806a0328acc004c01400a2b300130183754015001806a0328acc004c02000a264b300100180744c96600200300f807c03e264b3001301f003802404101c1bad001807a03e301c001406860306ea802a2b300130040028992cc00400601d13259800800c03e01f00f8992cc004c07c00e00901040706eb400601e80f8c07000501a180c1baa00a806a02a405480a90150cc004896600200314bd7044cc06cc060c070004cc008008c07400501a4dd2a40012301b301c001911919800800801912cc00400629422b30013371e6eb8c07800400e2946266004004603e00280c101c48c06cc070c07000522222323322323259800800c4c8c966002601c60446ea800e264b300100180d44c96600200313259800800c072264b30010018992cc00400603d13259800800c4c9660020030208992cc004006264b300100181144c96600200313259800800c092264b3001001812c096264b300130340038cc0040323300100a8cc004022330010068acc004c06cc0bcdd500244c9660020030278992cc00400605102881440a226644b300100181544c96600200302b815c0ae05713259800981d001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c206113259800981f801c660026e9520029181f98201820182018201820182018201820000c8c0fcc100c100c100c100c100c100c1000064607e608060806080608060806080003222598009814981e9baa0038992cc00400600513259800800c00e0070038992cc004c11400e00b00441086eb40060068228c108005040181f1baa003800a0769181f9820182018201820000c8966002003148002266e01200233002002304100140f9303a375405b371090002444444444646644b300130320058acc00660026094608e6ea809e6eb0c02cc11cdd501b4c028c11cdd501b4dd5980498239baa0364005130049800813c0da900020048a99822a481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981a002c5660033001302e3047375404f37586016608e6ea80da6014608e6ea80da6eacc024c11cdd501b2002899b889800813c0da90002004480022a6608a9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981b802c4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bc005003454cc1192411a6578706563742077697468647261775f616d6f756e74203e20300016411504041146eb4c128c11cdd501cc4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bccdc1000a4002801a2a6608c920119657870656374206465706f7369745f616d6f756e74203e20300016411504041146eb4c128c11cdd501ca08841108220888c8cc896600266e1cdd6982700080144c9660026644b30010018a508994c004c9660026076609e6ea800626eb4c140c14cdd5982998281baa0018a40008268c1480066ebcc148c14c0066eac00922259800800c566002600400b1337129000001c528209e8992cc004cdd79829000a6010140008acc004cdc49bad30533056375660a600200913003374c60ae00514a082822b300133712900000244c00c01a294105020a03055001414c329800800c00e44660a6004660a66e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1440066eacc14800660ac0069112cc004cdc8a441000038acc004cdc7a44100003899802981e9982b9ba60024bd70000c4cc015300103d87a8000006414919800803c006446600e004660b266ec0dd48029ba6004001401c829060a800482922942294229410531bab3033002374c6609c66ec0c13c004dd31982719bb0304f3050001375066e0400c0152f5bded8c097adef6c608801c54cc1292401be6578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a2020202029001641246eb0c138c13cc13cc13cc13cc13cc12cdd5003454cc1252401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e7400164120b3001303430050018a4001159800800c10a264b3001304e0028acc004cdc79bae3049001488104555344720089bad304a0018a998242491d657870656374206e616d65203d3d20636f6e7374616e74732e757364720016411d043412c6098002825104619192cc004c0d8c128dd5000c4c96600266ebcc13cc130dd5182798261baa3033304c375400260226609c6ea400d2f5c113259800981e98261baa0018992cc004006330010018992cc004c0e8c138dd5000c4c96600266ebcc14cc140dd5182998281baa001301533052375200e97ae08992cc004c104c140dd5000c4c96600200319800800c4cc150dd419b81375a60aa60a46ea8004dd6982a98291baa00533054374c6530010019bab303a3053375400932330010013756607660a86ea8c0ecc150dd5004912cc004006297adef6c608991982c19bb03055001374c64660020026eacc15c008896600200314bd6f7b63044c8cc16ccdd8182c0009ba83370290001bad305900133003003305d002305b00141646600600660b400460b000282b10011112cc00400a2003132332298008034c170016646600200200a44b300100189982e19bb037520086e9800d2f5bded8c113298009bae305a0019bab305b001982f8012444b300133720010007133060337606ea4020dd3003802c56600266e3c02000e264b3001304a305e3754003133061337606ea4024c188c17cdd50008014400905c192cc0056600200314a314a083022980103d87a800089823998309ba60014bd7020b8329800800c022006800888966002005100189919914c00401a60d000b32330010010052259800800c4cc1a0cdd81ba9004375000697adef6c608994c004dd71833000cdd69833800cc1ac0092225980099b9000800389983619bb037520106ea001c0162b30013371e01000713259800982b18351baa00189983699bb0375201260dc60d66ea800400a20048340c96600260ac00314c0103d87a800089829998369ba80014bd7020d03370000e00513306c337606ea400cdd400119803003000a0ce419c3069001419c8030dd718308009bad306200130640024189133060337606ea400cdd300119803003000a0b6416c305d001416c8030dd7182a8009bab30560013058002415897ae0826a026826c13609b04d415c60a860a26ea80062a6609e92012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d00164138606a60a06ea80062a6609c92013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016413460a4609e6ea80062a6609a92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c207363726970742900164130660606eb0c0ccc138dd500411981a98191bab3036304f375400200d048403d04882441220908298c140c134dd5000c54cc12d2413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d00164128606260986ea8c0ccc130dd5000c54cc12924014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287363726970742900164124609c60966ea8006297ae110100008101a00020903302b3758609a60946ea8010004dd7182618249baa300930493754008664464b30013038304a375400314bd6f7b63044dd5982718259baa0014120646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606c660a0609c00497ae08a60103d87a8000412d1330040043052003412c6eb8c130004c13c00504d1bab3008304837540046eb8c0bcc120dd5180418241baa00322223233001001005223259800981b800c4cc0c8018dd7182798261baa0028acc004c0e4006264660020026eb0c140c134dd5001912cc00400629462b30013300500530510018998010011829000c5282096413d159800981e000c4c8cc004004dd6182818269baa0032259800800c52845660026600a00a60a200314a31330020023052001412c827a2b3001303800189919b89375a60a000264660020026eb0c144c148008896600200314800226644b300133008008002899b800014800a20028270c148004cc008008c14c00505018261baa0028acc004cdc3a40100031332259800981d98269baa0018992cc004c0f0c138dd5181b18279baa3036304f37540111337120020071337100020068260dd6982898271baa0018a50412c6eb4c13cc130dd5001182798261baa3033304c375400b15980099b874802800626644b3001303b304d375400313259800981e18271baa3036304f375460a4609e6ea8022266e2400c006266e2000c00504c1bad3051304e375400314a08258dd6982798261baa002304f304c3754609e60986ea8016264646600200200c44b30010018a508acc004cdd780198271829000c528c4cc008008c14c00504c20a030113304e304f304c375400497ae041248249049209241248248c128dd50009801801a06281e0dd7000a07e303c00140e86eb8004c0ec02103c181c803a06e816206e375c00281d0c0dc0050351bae001303600240dc60680028190c0c0dd5002409902d409900e409900e409900e409900e40990311bac001812c0950341818800a05e3031002811c08e04702340c8605e0028168c0bc00a043021810c0850301816800a056302d00280fc07e03f01f40b860560028148c0ac00a03b01d80ec07502c1814800a04e302900280dc06e03701b40a8604e0028128c08cdd5001c065020111194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c058006264b300100180344c966002003007803c4c966002606000713300b0012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0c000e26601600244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b300130150018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009819801c4cc038004896600200500a8992cc0040063300100d800c4c008c0d800d00d403a01d00e807206e303400240c900b40c06eb000601500a40cc60600028170dd68009817801401d0301816800a0563029375400715980099b8748020006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c9660026060007005804205a375a00300740c0605a0028158c0a4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa003802a04c40988131026204c40988130c09cdd500111191980080080191198018009801001405e02f01780ba04c30073020375464646644646644a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea408d22010013259800980998139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980d18149baa0018992cc0040062b30013016302a375400313259800800c08e264b30010018124092049024899912cc00400604d13259800981a0014401a04e8188c0c80050301bae001303100240c8605e0028168c0acdd5000c089028408a0450228112060302d302a3754003153302849013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601c60526ea8c040c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601000204660020026eb0c030c094dd500a111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051009205a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81390271bac302a002375a60500026466ec0dd418140009ba73029001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a605a003337149101023a200098008054c0b800600a805100a181800144ca6002015302d00199b8a489023a200098008054c0b8006600e66008008004805100a1818001205c303000140b466e29220102207d0000340a86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900620543758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720583371666e000056600266e2000520148a40c11481b902c002200c33706002901019b8600148080cdc70020012052375c0068168dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003408c81188888c8cc004004014896600200310058992cc004006266008605800400d133005302c0023300300300140a860580028148c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c00028019020111980180111980418029bab300930223754601260446ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146604800297ae08998018019813001203e30240014088600a00a4022011008804203030153012375400716403c3011001300c3754025149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241" : "590d5b010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a400d370e90004c024dd500224444464b300130030028acc004c040dd500540062c808a2b300130050028acc004c040dd500540062c808a2b30013008002899192cc004c05800a00716404c6eb4c050004c040dd5005456600260080051323259800980b001400e2c8098dd6980a00098081baa00a8b201c4038807100e0cc004896600200314bd7044cc04cc040c050004cc008008c0540050124dd2a4001230133014001911919800800801912cc00400629422b30013371e6eb8c05800400e2946266004004602e002808901448c04cc050c05000644646600200200644660060026004004911111199119911919912cc004c03cc06cdd500144c8c8c8c8c8ca60026eb0c094006604a00b30250049812801cc0940092222259800981580344cc030c0a802c4cc0300104cc03000c4cc0300085660026034604c6ea8006264646644b3001302f00389919912cc004c0c800e33001374a900148c0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc00646064606660666066606660666066606600323032303330333033303330333033001912cc004c08cc0bcdd500144c8c966002606c0050038b2066375a606800260606ea800a2c81724606460666066606660660032259800800c52000899b8048008cc008008c0d00050314c0b4dd50144dc4240009111111111919912cc004c0b40162b30019800981e981d1baa0209bac300b303a3754063300a303a37540633756601260746ea80c500144c0126002041031a400080122c81c22b3001302f0058acc0066002605260746ea80826eb0c02cc0e8dd5018cc028c0e8dd5018cdd59804981d1baa03140051337113001020818d2000400890004590384566002606400b13259800cc004c0a0c0ecdd5010cdd61806181d9baa0329805981d9baa0329bab300a303b375406480122b30013005001898174c004086065001400d1640e51640e46eb4c0f4c0e8dd501a44c96600330013028303b37540433758601860766ea80ca601660766ea80ca6eacc028c0ecdd501920048acc004c0140062605d30010218194cdc1000a4002801a2c81ca2c81c8dd6981e981d1baa03440e081c10381111919912cc004cdc39bad30410010028992cc004cc896600200314a11329800992cc004c0d8c108dd5000c4dd6982198231bab3046304337540031480010411822800cdd798229823000cdd58012444b30010018acc004c008016266e2520000038a50410d1325980099baf30450014c010140008acc004cdc49bad304630493756608c00200913003374c609400514a082222b300133712900000244c00c01a2941044208830480014118329800800c00e446608c0046608c6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1100066eacc11400660920069112cc004cdc8a441000038acc004cdc7a44100003899802981c198251ba60024bd70000c4cc015300103d87a8000006411919800803c006446600e0046609866ec0dd48029ba6004001401c8230608e004822a2942294229410461bab302e002374c6608266ec0c108004dd31982099bb030423043001375066e0400c0152f5bded8c097adef6c608801c5903d1bac304130423042304230423042303e375400d1640f0b3001302f30050018a40011598009820000c4c96600266e3cdd7181e000a44104555344720089bad303d0018b2076303f0018b207a40e86464b30013031303d37540031325980099baf3042303f37546084607e6ea8c0b8c0fcdd50009808998209ba90034bd7044c9660026070607e6ea80062646601e002264b30013035304137540031325980099baf304630433754608c60866ea8004c054cc114dd4803a5eb82264b3001303c3043375400313233013001133047375066e04dd6982418229baa001375a6090608a6ea8014cc11cdd3194c0040066eacc0d4c118dd50024c8cc004004dd5981b18239baa30363047375401244b30010018a5eb7bdb1822646609666ec0c120004dd319198008009bab304a0022259800800c52f5bded8c11323304e3376060960026ea0cdc0a40006eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0924004444b30010028800c4c8cc8a600200d304f0059919800800802912cc00400626609e66ec0dd48021ba60034bd6f7b63044ca60026eb8c1340066eacc13800660a40049112cc004cdc8004001c4cc14ccdd81ba9008374c00e00b15980099b8f0080038992cc004c114c144dd5000c4cc150cdd81ba90093055305237540020051002414064b300159800800c528c52820a68a6103d87a8000898211982a1ba60014bd7020a0329800800c022006800888966002005100189919914c00401a60b600b32330010010052259800800c4cc16ccdd81ba9004375000697adef6c608994c004dd7182c800cdd6982d000cc1780092225980099b9000800389982f99bb037520106ea001c0162b30013371e010007132598009828982e9baa00189983019bb0375201260c260bc6ea800400a200482e0c96600260a200314c0103d87a800089827198301ba80014bd7020b83370000e00513305f337606ea400cdd400119803003000a0b6416c305c00141688030dd7182a0009bad305500130570024155133053337606ea400cdd300119803003000a09e413c305000141388030dd718240009bab3049001304b002412497ae0304730443754003164108606060866ea80062c8208c114c108dd5000c59040198149bac302e3041375401046606060566eacc0c4c108dd5000803182198201baa0018b207c302c303f3754605c607e6ea80062c81e8c104c0f8dd5000c52f5c30100008101a00020783302437586080607a6ea8010004dd7181f981e1baa3009303c3754008664464b30013033303d375400314bd6f7b63044dd59820981f1baa00140f0646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606266086608200497ae08a60103d87a800040fd133004004304500340fc6eb8c0fc004c1080050401bab3008303b37540046eb8c0a8c0ecdd51804181d9baa003222232330010010052232598009819000c4cc0b4018dd71821181f9baa0028acc004c0d0006264660020026eb0c10cc100dd5001912cc00400629462b30013300500530440018998010011822800c528207e4109159800981b800c4c8cc004004dd6182198201baa0032259800800c52845660026600a00a608800314a3133002002304500140fc82122b3001303300189919b89375a608600264660020026eb0c110c114008896600200314800226644b300133008008002899b800014800a20028210c114004cc008008c118005043181f9baa0028acc004cdc3a40100031332259800981b18201baa0018992cc004c0dcc104dd5181898211baa3031304237540111337120020071337100020068200dd6982218209baa0018a5040fc6eb4c108c0fcdd50011821181f9baa302e303f375400b15980099b874802800626644b300130363040375400313259800981b98209baa303130423754608a60846ea8022266e2400c006266e2000c0050401bad30443041375400314a081f8dd69821181f9baa0023042303f37546084607e6ea8016264646600200200c44b30010018a508acc004cdd780198209822800c528c4cc008008c11800504020863011330413042303f375400497ae040f481e903d207a40f481e8c0f4dd50009801801a2c8178dd718178009bae302f00a302f0098b2058375c60580026eb8c0b0008c0b0004c09cdd5000c590254590280c094004c090004c08c004c088004c084004c070dd500145901a1804980d1baa32598009807180d1baa0018992cc004c050c06cdd5000c4c966002602060386ea8006264646644b300130250038802c5902218110009bae30220023022001301d375400316406c603e60386ea80062c80d0c020c06cdd51805180d9baa301e301b3754003164064660026eb0c024c068dd500880b9802002111980180111980518029bab300b301c3754601660386ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c010006260186603c00297ae089980180198100012034301e0014070600c00c44464b3001300c001899192cc004c07c00a0091640706eb8c074004c064dd5001c566002601c00313259800980f000c4cc018dd6180e800912cc00400a00b19800803cc07c00a260026040004803901d45901b180c9baa0038acc004c044006264b3001301e0018998031bac301d0012259800801401633001007980f80144c004c080009007203a8b2036301937540071598009806800c4c8cc896600260400031330083758603e00244b3001002803c6600201330210028980098110012012407d1640746eb4c074004c078004c064dd5001c56600266e1d2008001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200a001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200c001899192cc004c07c00a0091640706eb8c074004c064dd5001c59017202e405c80b9017202e405c602e6ea80088b2010180480098021baa00a8a4d13656400801", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class V0_2ProtocolProtocolElse { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "591944010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920130657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488888896600264653001301100198089809000cdc3a400930110024888966002600460226ea800e264b30010058cc004dc3a4005370e90034dc3a40013012375400a9111192cc004c00c00a2b300130183754015001806a0328acc004c01400a2b300130183754015001806a0328acc004c02000a264b300100180744c96600200300f807c03e264b3001301f003802404101c1bad001807a03e301c001406860306ea802a2b300130040028992cc00400601d13259800800c03e01f00f8992cc004c07c00e00901040706eb400601e80f8c07000501a180c1baa00a806a02a405480a90150cc004896600200314bd7044cc06cc060c070004cc008008c07400501a4dd2a40012301b301c001911919800800801912cc00400629422b30013371e6eb8c07800400e2946266004004603e00280c101c48c06cc070c07000522222323322323259800800c4c8c966002601c60446ea800e264b300100180d44c96600200313259800800c072264b30010018992cc00400603d13259800800c4c9660020030208992cc004006264b300100181144c96600200313259800800c092264b3001001812c096264b300130340038cc0040323300100a8cc004022330010068acc004c06cc0bcdd500244c9660020030278992cc00400605102881440a226644b300100181544c96600200302b815c0ae05713259800981d001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c206113259800981f801c660026e9520029181f98201820182018201820182018201820000c8c0fcc100c100c100c100c100c100c1000064607e608060806080608060806080003222598009814981e9baa0038992cc00400600513259800800c00e0070038992cc004c11400e00b00441086eb40060068228c108005040181f1baa003800a0769181f9820182018201820000c8966002003148002266e01200233002002304100140f9303a375405b371090002444444444646644b300130320058acc00660026094608e6ea809e6eb0c02cc11cdd501b4c028c11cdd501b4dd5980498239baa0364005130049800813c0da900020048a99822a481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981a002c5660033001302e3047375404f37586016608e6ea80da6014608e6ea80da6eacc024c11cdd501b2002899b889800813c0da90002004480022a6608a9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981b802c4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bc005003454cc1192411a6578706563742077697468647261775f616d6f756e74203e20300016411504041146eb4c128c11cdd501cc4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bccdc1000a4002801a2a6608c920119657870656374206465706f7369745f616d6f756e74203e20300016411504041146eb4c128c11cdd501ca08841108220888c8cc896600266e1cdd6982700080144c9660026644b30010018a508994c004c9660026076609e6ea800626eb4c140c14cdd5982998281baa0018a40008268c1480066ebcc148c14c0066eac00922259800800c566002600400b1337129000001c528209e8992cc004cdd79829000a6010140008acc004cdc49bad30533056375660a600200913003374c60ae00514a082822b300133712900000244c00c01a294105020a03055001414c329800800c00e44660a6004660a66e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1440066eacc14800660ac0069112cc004cdc8a441000038acc004cdc7a44100003899802981e9982b9ba60024bd70000c4cc015300103d87a8000006414919800803c006446600e004660b266ec0dd48029ba6004001401c829060a800482922942294229410531bab3033002374c6609c66ec0c13c004dd31982719bb0304f3050001375066e0400c0152f5bded8c097adef6c608801c54cc1292401be6578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a2020202029001641246eb0c138c13cc13cc13cc13cc13cc12cdd5003454cc1252401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e7400164120b3001303430050018a4001159800800c10a264b3001304e0028acc004cdc79bae3049001488104555344720089bad304a0018a998242491d657870656374206e616d65203d3d20636f6e7374616e74732e757364720016411d043412c6098002825104619192cc004c0d8c128dd5000c4c96600266ebcc13cc130dd5182798261baa3033304c375400260226609c6ea400d2f5c113259800981e98261baa0018992cc004006330010018992cc004c0e8c138dd5000c4c96600266ebcc14cc140dd5182998281baa001301533052375200e97ae08992cc004c104c140dd5000c4c96600200319800800c4cc150dd419b81375a60aa60a46ea8004dd6982a98291baa00533054374c6530010019bab303a3053375400932330010013756607660a86ea8c0ecc150dd5004912cc004006297adef6c608991982c19bb03055001374c64660020026eacc15c008896600200314bd6f7b63044c8cc16ccdd8182c0009ba83370290001bad305900133003003305d002305b00141646600600660b400460b000282b10011112cc00400a2003132332298008034c170016646600200200a44b300100189982e19bb037520086e9800d2f5bded8c113298009bae305a0019bab305b001982f8012444b300133720010007133060337606ea4020dd3003802c56600266e3c02000e264b3001304a305e3754003133061337606ea4024c188c17cdd50008014400905c192cc0056600200314a314a083022980103d87a800089823998309ba60014bd7020b8329800800c022006800888966002005100189919914c00401a60d000b32330010010052259800800c4cc1a0cdd81ba9004375000697adef6c608994c004dd71833000cdd69833800cc1ac0092225980099b9000800389983619bb037520106ea001c0162b30013371e01000713259800982b18351baa00189983699bb0375201260dc60d66ea800400a20048340c96600260ac00314c0103d87a800089829998369ba80014bd7020d03370000e00513306c337606ea400cdd400119803003000a0ce419c3069001419c8030dd718308009bad306200130640024189133060337606ea400cdd300119803003000a0b6416c305d001416c8030dd7182a8009bab30560013058002415897ae0826a026826c13609b04d415c60a860a26ea80062a6609e92012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d00164138606a60a06ea80062a6609c92013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016413460a4609e6ea80062a6609a92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c207363726970742900164130660606eb0c0ccc138dd500411981a98191bab3036304f375400200d048403d04882441220908298c140c134dd5000c54cc12d2413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d00164128606260986ea8c0ccc130dd5000c54cc12924014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287363726970742900164124609c60966ea8006297ae110100008101a00020903302b3758609a60946ea8010004dd7182618249baa300930493754008664464b30013038304a375400314bd6f7b63044dd5982718259baa0014120646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606c660a0609c00497ae08a60103d87a8000412d1330040043052003412c6eb8c130004c13c00504d1bab3008304837540046eb8c0bcc120dd5180418241baa00322223233001001005223259800981b800c4cc0c8018dd7182798261baa0028acc004c0e4006264660020026eb0c140c134dd5001912cc00400629462b30013300500530510018998010011829000c5282096413d159800981e000c4c8cc004004dd6182818269baa0032259800800c52845660026600a00a60a200314a31330020023052001412c827a2b3001303800189919b89375a60a000264660020026eb0c144c148008896600200314800226644b300133008008002899b800014800a20028270c148004cc008008c14c00505018261baa0028acc004cdc3a40100031332259800981d98269baa0018992cc004c0f0c138dd5181b18279baa3036304f37540111337120020071337100020068260dd6982898271baa0018a50412c6eb4c13cc130dd5001182798261baa3033304c375400b15980099b874802800626644b3001303b304d375400313259800981e18271baa3036304f375460a4609e6ea8022266e2400c006266e2000c00504c1bad3051304e375400314a08258dd6982798261baa002304f304c3754609e60986ea8016264646600200200c44b30010018a508acc004cdd780198271829000c528c4cc008008c14c00504c20a030113304e304f304c375400497ae041248249049209241248248c128dd50009801801a06281e0dd7000a07e303c00140e86eb8004c0ec02103c181c803a06e816206e375c00281d0c0dc0050351bae001303600240dc60680028190c0c0dd5002409902d409900e409900e409900e409900e40990311bac001812c0950341818800a05e3031002811c08e04702340c8605e0028168c0bc00a043021810c0850301816800a056302d00280fc07e03f01f40b860560028148c0ac00a03b01d80ec07502c1814800a04e302900280dc06e03701b40a8604e0028128c08cdd5001c065020111194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c058006264b300100180344c966002003007803c4c966002606000713300b0012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0c000e26601600244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b300130150018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009819801c4cc038004896600200500a8992cc0040063300100d800c4c008c0d800d00d403a01d00e807206e303400240c900b40c06eb000601500a40cc60600028170dd68009817801401d0301816800a0563029375400715980099b8748020006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c9660026060007005804205a375a00300740c0605a0028158c0a4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa003802a04c40988131026204c40988130c09cdd500111191980080080191198018009801001405e02f01780ba04c30073020375464646644646644a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea408d22010013259800980998139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980d18149baa0018992cc0040062b30013016302a375400313259800800c08e264b30010018124092049024899912cc00400604d13259800981a0014401a04e8188c0c80050301bae001303100240c8605e0028168c0acdd5000c089028408a0450228112060302d302a3754003153302849013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601c60526ea8c040c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601000204660020026eb0c030c094dd500a111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051009205a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81390271bac302a002375a60500026466ec0dd418140009ba73029001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a605a003337149101023a200098008054c0b800600a805100a181800144ca6002015302d00199b8a489023a200098008054c0b8006600e66008008004805100a1818001205c303000140b466e29220102207d0000340a86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900620543758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720583371666e000056600266e2000520148a40c11481b902c002200c33706002901019b8600148080cdc70020012052375c0068168dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003408c81188888c8cc004004014896600200310058992cc004006266008605800400d133005302c0023300300300140a860580028148c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c00028019020111980180111980418029bab300930223754601260446ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146604800297ae08998018019813001203e30240014088600a00a4022011008804203030153012375400716403c3011001300c3754025149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241" : "590d5b010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a400d370e90004c024dd500224444464b300130030028acc004c040dd500540062c808a2b300130050028acc004c040dd500540062c808a2b30013008002899192cc004c05800a00716404c6eb4c050004c040dd5005456600260080051323259800980b001400e2c8098dd6980a00098081baa00a8b201c4038807100e0cc004896600200314bd7044cc04cc040c050004cc008008c0540050124dd2a4001230133014001911919800800801912cc00400629422b30013371e6eb8c05800400e2946266004004602e002808901448c04cc050c05000644646600200200644660060026004004911111199119911919912cc004c03cc06cdd500144c8c8c8c8c8ca60026eb0c094006604a00b30250049812801cc0940092222259800981580344cc030c0a802c4cc0300104cc03000c4cc0300085660026034604c6ea8006264646644b3001302f00389919912cc004c0c800e33001374a900148c0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc00646064606660666066606660666066606600323032303330333033303330333033001912cc004c08cc0bcdd500144c8c966002606c0050038b2066375a606800260606ea800a2c81724606460666066606660660032259800800c52000899b8048008cc008008c0d00050314c0b4dd50144dc4240009111111111919912cc004c0b40162b30019800981e981d1baa0209bac300b303a3754063300a303a37540633756601260746ea80c500144c0126002041031a400080122c81c22b3001302f0058acc0066002605260746ea80826eb0c02cc0e8dd5018cc028c0e8dd5018cdd59804981d1baa03140051337113001020818d2000400890004590384566002606400b13259800cc004c0a0c0ecdd5010cdd61806181d9baa0329805981d9baa0329bab300a303b375406480122b30013005001898174c004086065001400d1640e51640e46eb4c0f4c0e8dd501a44c96600330013028303b37540433758601860766ea80ca601660766ea80ca6eacc028c0ecdd501920048acc004c0140062605d30010218194cdc1000a4002801a2c81ca2c81c8dd6981e981d1baa03440e081c10381111919912cc004cdc39bad30410010028992cc004cc896600200314a11329800992cc004c0d8c108dd5000c4dd6982198231bab3046304337540031480010411822800cdd798229823000cdd58012444b30010018acc004c008016266e2520000038a50410d1325980099baf30450014c010140008acc004cdc49bad304630493756608c00200913003374c609400514a082222b300133712900000244c00c01a2941044208830480014118329800800c00e446608c0046608c6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1100066eacc11400660920069112cc004cdc8a441000038acc004cdc7a44100003899802981c198251ba60024bd70000c4cc015300103d87a8000006411919800803c006446600e0046609866ec0dd48029ba6004001401c8230608e004822a2942294229410461bab302e002374c6608266ec0c108004dd31982099bb030423043001375066e0400c0152f5bded8c097adef6c608801c5903d1bac304130423042304230423042303e375400d1640f0b3001302f30050018a40011598009820000c4c96600266e3cdd7181e000a44104555344720089bad303d0018b2076303f0018b207a40e86464b30013031303d37540031325980099baf3042303f37546084607e6ea8c0b8c0fcdd50009808998209ba90034bd7044c9660026070607e6ea80062646601e002264b30013035304137540031325980099baf304630433754608c60866ea8004c054cc114dd4803a5eb82264b3001303c3043375400313233013001133047375066e04dd6982418229baa001375a6090608a6ea8014cc11cdd3194c0040066eacc0d4c118dd50024c8cc004004dd5981b18239baa30363047375401244b30010018a5eb7bdb1822646609666ec0c120004dd319198008009bab304a0022259800800c52f5bded8c11323304e3376060960026ea0cdc0a40006eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0924004444b30010028800c4c8cc8a600200d304f0059919800800802912cc00400626609e66ec0dd48021ba60034bd6f7b63044ca60026eb8c1340066eacc13800660a40049112cc004cdc8004001c4cc14ccdd81ba9008374c00e00b15980099b8f0080038992cc004c114c144dd5000c4cc150cdd81ba90093055305237540020051002414064b300159800800c528c52820a68a6103d87a8000898211982a1ba60014bd7020a0329800800c022006800888966002005100189919914c00401a60b600b32330010010052259800800c4cc16ccdd81ba9004375000697adef6c608994c004dd7182c800cdd6982d000cc1780092225980099b9000800389982f99bb037520106ea001c0162b30013371e010007132598009828982e9baa00189983019bb0375201260c260bc6ea800400a200482e0c96600260a200314c0103d87a800089827198301ba80014bd7020b83370000e00513305f337606ea400cdd400119803003000a0b6416c305c00141688030dd7182a0009bad305500130570024155133053337606ea400cdd300119803003000a09e413c305000141388030dd718240009bab3049001304b002412497ae0304730443754003164108606060866ea80062c8208c114c108dd5000c59040198149bac302e3041375401046606060566eacc0c4c108dd5000803182198201baa0018b207c302c303f3754605c607e6ea80062c81e8c104c0f8dd5000c52f5c30100008101a00020783302437586080607a6ea8010004dd7181f981e1baa3009303c3754008664464b30013033303d375400314bd6f7b63044dd59820981f1baa00140f0646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606266086608200497ae08a60103d87a800040fd133004004304500340fc6eb8c0fc004c1080050401bab3008303b37540046eb8c0a8c0ecdd51804181d9baa003222232330010010052232598009819000c4cc0b4018dd71821181f9baa0028acc004c0d0006264660020026eb0c10cc100dd5001912cc00400629462b30013300500530440018998010011822800c528207e4109159800981b800c4c8cc004004dd6182198201baa0032259800800c52845660026600a00a608800314a3133002002304500140fc82122b3001303300189919b89375a608600264660020026eb0c110c114008896600200314800226644b300133008008002899b800014800a20028210c114004cc008008c118005043181f9baa0028acc004cdc3a40100031332259800981b18201baa0018992cc004c0dcc104dd5181898211baa3031304237540111337120020071337100020068200dd6982218209baa0018a5040fc6eb4c108c0fcdd50011821181f9baa302e303f375400b15980099b874802800626644b300130363040375400313259800981b98209baa303130423754608a60846ea8022266e2400c006266e2000c0050401bad30443041375400314a081f8dd69821181f9baa0023042303f37546084607e6ea8016264646600200200c44b30010018a508acc004cdd780198209822800c528c4cc008008c11800504020863011330413042303f375400497ae040f481e903d207a40f481e8c0f4dd50009801801a2c8178dd718178009bae302f00a302f0098b2058375c60580026eb8c0b0008c0b0004c09cdd5000c590254590280c094004c090004c08c004c088004c084004c070dd500145901a1804980d1baa32598009807180d1baa0018992cc004c050c06cdd5000c4c966002602060386ea8006264646644b300130250038802c5902218110009bae30220023022001301d375400316406c603e60386ea80062c80d0c020c06cdd51805180d9baa301e301b3754003164064660026eb0c024c068dd500880b9802002111980180111980518029bab300b301c3754601660386ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c010006260186603c00297ae089980180198100012034301e0014070600c00c44464b3001300c001899192cc004c07c00a0091640706eb8c074004c064dd5001c566002601c00313259800980f000c4cc018dd6180e800912cc00400a00b19800803cc07c00a260026040004803901d45901b180c9baa0038acc004c044006264b3001301e0018998031bac301d0012259800801401633001007980f80144c004c080009007203a8b2036301937540071598009806800c4c8cc896600260400031330083758603e00244b3001002803c6600201330210028980098110012012407d1640746eb4c074004c078004c064dd5001c56600266e1d2008001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200a001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200c001899192cc004c07c00a0091640706eb8c074004c064dd5001c59017202e405c80b9017202e405c602e6ea80088b2010180480098021baa00a8a4d13656400801", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v0_2/index.js.map b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_2/index.js.map new file mode 100644 index 0000000000..cc62140af2 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_2/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["applyParamsToScript","cborToScript","Type","PolicyId","String","Contracts","Module","MultisigScript","Union","Object","Signature","key_hash","ctor","AllOf","scripts","Array","Ref","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Tuple","Registry","treasury","usdr","ProtocolRedeemer","Literal","Withdraw","withdraw_amount","Deposit","deposit_amount","ProxyDatum","logic","settings","Settings","mint_permission","burn_permission","withdraw_permission","deposit_permission","registry","reserve_token","Import","V0_2ProtocolProtocolWithdraw","constructor","proxyPolicyId","trace","_defineProperty","V0_2ProtocolProtocolElse"],"sources":["../../../../src/generated-types/v0_2/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\nimport { type PlutusData } from \"@blaze-cardano/core\";\ntype Data = PlutusData;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object({\n key_hash: Type.String(),\n }, { ctor: 0n })\n }),\n Type.Object({\n AllOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n AnyOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n AtLeast: Type.Object({\n required: Type.BigInt(),\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Before: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n After: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n Script: Type.Object({\n script_hash: Type.String(),\n }, { ctor: 6n })\n }),\n ]),\n Asset: Type.Tuple([\n Type.String(),\n Type.String(),\n ]),\n Registry: Type.Object({\n treasury: Type.String(),\n usdr: Type.String(),\n }, { ctor: 0n }),\n ProtocolRedeemer: Type.Union([\n Type.Literal(\"Mint\", { ctor: 0n }),\n Type.Literal(\"Burn\", { ctor: 1n }),\n Type.Object({\n Withdraw: Type.Object({\n withdraw_amount: Type.BigInt(),\n }, { ctor: 2n })\n }),\n Type.Object({\n Deposit: Type.Object({\n deposit_amount: Type.BigInt(),\n }, { ctor: 3n })\n }),\n ]),\n ProxyDatum: Type.Object({\n logic: Type.String(),\n settings: Type.Ref(\"Settings\"),\n }, { ctor: 0n }),\n Settings: Type.Object({\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n withdraw_permission: Type.Ref(\"MultisigScript\"),\n deposit_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"Registry\"),\n reserve_token: Type.Ref(\"Asset\"),\n }, { ctor: 0n }),\n});\n\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Registry = Contracts.Import(\"Registry\");\nexport type Registry = Exact;\nexport const ProtocolRedeemer = Contracts.Import(\"ProtocolRedeemer\");\nexport type ProtocolRedeemer = Exact;\nexport const ProxyDatum = Contracts.Import(\"ProxyDatum\");\nexport type ProxyDatum = Exact;\nexport const Settings = Contracts.Import(\"Settings\");\nexport type Settings = Exact;\n\nexport class V0_2ProtocolProtocolWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"591944010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920130657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488888896600264653001301100198089809000cdc3a400930110024888966002600460226ea800e264b30010058cc004dc3a4005370e90034dc3a40013012375400a9111192cc004c00c00a2b300130183754015001806a0328acc004c01400a2b300130183754015001806a0328acc004c02000a264b300100180744c96600200300f807c03e264b3001301f003802404101c1bad001807a03e301c001406860306ea802a2b300130040028992cc00400601d13259800800c03e01f00f8992cc004c07c00e00901040706eb400601e80f8c07000501a180c1baa00a806a02a405480a90150cc004896600200314bd7044cc06cc060c070004cc008008c07400501a4dd2a40012301b301c001911919800800801912cc00400629422b30013371e6eb8c07800400e2946266004004603e00280c101c48c06cc070c07000522222323322323259800800c4c8c966002601c60446ea800e264b300100180d44c96600200313259800800c072264b30010018992cc00400603d13259800800c4c9660020030208992cc004006264b300100181144c96600200313259800800c092264b3001001812c096264b300130340038cc0040323300100a8cc004022330010068acc004c06cc0bcdd500244c9660020030278992cc00400605102881440a226644b300100181544c96600200302b815c0ae05713259800981d001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c206113259800981f801c660026e9520029181f98201820182018201820182018201820000c8c0fcc100c100c100c100c100c100c1000064607e608060806080608060806080003222598009814981e9baa0038992cc00400600513259800800c00e0070038992cc004c11400e00b00441086eb40060068228c108005040181f1baa003800a0769181f9820182018201820000c8966002003148002266e01200233002002304100140f9303a375405b371090002444444444646644b300130320058acc00660026094608e6ea809e6eb0c02cc11cdd501b4c028c11cdd501b4dd5980498239baa0364005130049800813c0da900020048a99822a481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981a002c5660033001302e3047375404f37586016608e6ea80da6014608e6ea80da6eacc024c11cdd501b2002899b889800813c0da90002004480022a6608a9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981b802c4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bc005003454cc1192411a6578706563742077697468647261775f616d6f756e74203e20300016411504041146eb4c128c11cdd501cc4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bccdc1000a4002801a2a6608c920119657870656374206465706f7369745f616d6f756e74203e20300016411504041146eb4c128c11cdd501ca08841108220888c8cc896600266e1cdd6982700080144c9660026644b30010018a508994c004c9660026076609e6ea800626eb4c140c14cdd5982998281baa0018a40008268c1480066ebcc148c14c0066eac00922259800800c566002600400b1337129000001c528209e8992cc004cdd79829000a6010140008acc004cdc49bad30533056375660a600200913003374c60ae00514a082822b300133712900000244c00c01a294105020a03055001414c329800800c00e44660a6004660a66e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1440066eacc14800660ac0069112cc004cdc8a441000038acc004cdc7a44100003899802981e9982b9ba60024bd70000c4cc015300103d87a8000006414919800803c006446600e004660b266ec0dd48029ba6004001401c829060a800482922942294229410531bab3033002374c6609c66ec0c13c004dd31982719bb0304f3050001375066e0400c0152f5bded8c097adef6c608801c54cc1292401be6578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a2020202029001641246eb0c138c13cc13cc13cc13cc13cc12cdd5003454cc1252401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e7400164120b3001303430050018a4001159800800c10a264b3001304e0028acc004cdc79bae3049001488104555344720089bad304a0018a998242491d657870656374206e616d65203d3d20636f6e7374616e74732e757364720016411d043412c6098002825104619192cc004c0d8c128dd5000c4c96600266ebcc13cc130dd5182798261baa3033304c375400260226609c6ea400d2f5c113259800981e98261baa0018992cc004006330010018992cc004c0e8c138dd5000c4c96600266ebcc14cc140dd5182998281baa001301533052375200e97ae08992cc004c104c140dd5000c4c96600200319800800c4cc150dd419b81375a60aa60a46ea8004dd6982a98291baa00533054374c6530010019bab303a3053375400932330010013756607660a86ea8c0ecc150dd5004912cc004006297adef6c608991982c19bb03055001374c64660020026eacc15c008896600200314bd6f7b63044c8cc16ccdd8182c0009ba83370290001bad305900133003003305d002305b00141646600600660b400460b000282b10011112cc00400a2003132332298008034c170016646600200200a44b300100189982e19bb037520086e9800d2f5bded8c113298009bae305a0019bab305b001982f8012444b300133720010007133060337606ea4020dd3003802c56600266e3c02000e264b3001304a305e3754003133061337606ea4024c188c17cdd50008014400905c192cc0056600200314a314a083022980103d87a800089823998309ba60014bd7020b8329800800c022006800888966002005100189919914c00401a60d000b32330010010052259800800c4cc1a0cdd81ba9004375000697adef6c608994c004dd71833000cdd69833800cc1ac0092225980099b9000800389983619bb037520106ea001c0162b30013371e01000713259800982b18351baa00189983699bb0375201260dc60d66ea800400a20048340c96600260ac00314c0103d87a800089829998369ba80014bd7020d03370000e00513306c337606ea400cdd400119803003000a0ce419c3069001419c8030dd718308009bad306200130640024189133060337606ea400cdd300119803003000a0b6416c305d001416c8030dd7182a8009bab30560013058002415897ae0826a026826c13609b04d415c60a860a26ea80062a6609e92012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d00164138606a60a06ea80062a6609c92013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016413460a4609e6ea80062a6609a92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c207363726970742900164130660606eb0c0ccc138dd500411981a98191bab3036304f375400200d048403d04882441220908298c140c134dd5000c54cc12d2413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d00164128606260986ea8c0ccc130dd5000c54cc12924014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287363726970742900164124609c60966ea8006297ae110100008101a00020903302b3758609a60946ea8010004dd7182618249baa300930493754008664464b30013038304a375400314bd6f7b63044dd5982718259baa0014120646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606c660a0609c00497ae08a60103d87a8000412d1330040043052003412c6eb8c130004c13c00504d1bab3008304837540046eb8c0bcc120dd5180418241baa00322223233001001005223259800981b800c4cc0c8018dd7182798261baa0028acc004c0e4006264660020026eb0c140c134dd5001912cc00400629462b30013300500530510018998010011829000c5282096413d159800981e000c4c8cc004004dd6182818269baa0032259800800c52845660026600a00a60a200314a31330020023052001412c827a2b3001303800189919b89375a60a000264660020026eb0c144c148008896600200314800226644b300133008008002899b800014800a20028270c148004cc008008c14c00505018261baa0028acc004cdc3a40100031332259800981d98269baa0018992cc004c0f0c138dd5181b18279baa3036304f37540111337120020071337100020068260dd6982898271baa0018a50412c6eb4c13cc130dd5001182798261baa3033304c375400b15980099b874802800626644b3001303b304d375400313259800981e18271baa3036304f375460a4609e6ea8022266e2400c006266e2000c00504c1bad3051304e375400314a08258dd6982798261baa002304f304c3754609e60986ea8016264646600200200c44b30010018a508acc004cdd780198271829000c528c4cc008008c14c00504c20a030113304e304f304c375400497ae041248249049209241248248c128dd50009801801a06281e0dd7000a07e303c00140e86eb8004c0ec02103c181c803a06e816206e375c00281d0c0dc0050351bae001303600240dc60680028190c0c0dd5002409902d409900e409900e409900e409900e40990311bac001812c0950341818800a05e3031002811c08e04702340c8605e0028168c0bc00a043021810c0850301816800a056302d00280fc07e03f01f40b860560028148c0ac00a03b01d80ec07502c1814800a04e302900280dc06e03701b40a8604e0028128c08cdd5001c065020111194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c058006264b300100180344c966002003007803c4c966002606000713300b0012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0c000e26601600244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b300130150018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009819801c4cc038004896600200500a8992cc0040063300100d800c4c008c0d800d00d403a01d00e807206e303400240c900b40c06eb000601500a40cc60600028170dd68009817801401d0301816800a0563029375400715980099b8748020006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c9660026060007005804205a375a00300740c0605a0028158c0a4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa003802a04c40988131026204c40988130c09cdd500111191980080080191198018009801001405e02f01780ba04c30073020375464646644646644a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea408d22010013259800980998139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980d18149baa0018992cc0040062b30013016302a375400313259800800c08e264b30010018124092049024899912cc00400604d13259800981a0014401a04e8188c0c80050301bae001303100240c8605e0028168c0acdd5000c089028408a0450228112060302d302a3754003153302849013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601c60526ea8c040c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601000204660020026eb0c030c094dd500a111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051009205a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81390271bac302a002375a60500026466ec0dd418140009ba73029001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a605a003337149101023a200098008054c0b800600a805100a181800144ca6002015302d00199b8a489023a200098008054c0b8006600e66008008004805100a1818001205c303000140b466e29220102207d0000340a86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900620543758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720583371666e000056600266e2000520148a40c11481b902c002200c33706002901019b8600148080cdc70020012052375c0068168dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003408c81188888c8cc004004014896600200310058992cc004006266008605800400d133005302c0023300300300140a860580028148c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c00028019020111980180111980418029bab300930223754601260446ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146604800297ae08998018019813001203e30240014088600a00a4022011008804203030153012375400716403c3011001300c3754025149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n :\n \"590d5b010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a400d370e90004c024dd500224444464b300130030028acc004c040dd500540062c808a2b300130050028acc004c040dd500540062c808a2b30013008002899192cc004c05800a00716404c6eb4c050004c040dd5005456600260080051323259800980b001400e2c8098dd6980a00098081baa00a8b201c4038807100e0cc004896600200314bd7044cc04cc040c050004cc008008c0540050124dd2a4001230133014001911919800800801912cc00400629422b30013371e6eb8c05800400e2946266004004602e002808901448c04cc050c05000644646600200200644660060026004004911111199119911919912cc004c03cc06cdd500144c8c8c8c8c8ca60026eb0c094006604a00b30250049812801cc0940092222259800981580344cc030c0a802c4cc0300104cc03000c4cc0300085660026034604c6ea8006264646644b3001302f00389919912cc004c0c800e33001374a900148c0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc00646064606660666066606660666066606600323032303330333033303330333033001912cc004c08cc0bcdd500144c8c966002606c0050038b2066375a606800260606ea800a2c81724606460666066606660660032259800800c52000899b8048008cc008008c0d00050314c0b4dd50144dc4240009111111111919912cc004c0b40162b30019800981e981d1baa0209bac300b303a3754063300a303a37540633756601260746ea80c500144c0126002041031a400080122c81c22b3001302f0058acc0066002605260746ea80826eb0c02cc0e8dd5018cc028c0e8dd5018cdd59804981d1baa03140051337113001020818d2000400890004590384566002606400b13259800cc004c0a0c0ecdd5010cdd61806181d9baa0329805981d9baa0329bab300a303b375406480122b30013005001898174c004086065001400d1640e51640e46eb4c0f4c0e8dd501a44c96600330013028303b37540433758601860766ea80ca601660766ea80ca6eacc028c0ecdd501920048acc004c0140062605d30010218194cdc1000a4002801a2c81ca2c81c8dd6981e981d1baa03440e081c10381111919912cc004cdc39bad30410010028992cc004cc896600200314a11329800992cc004c0d8c108dd5000c4dd6982198231bab3046304337540031480010411822800cdd798229823000cdd58012444b30010018acc004c008016266e2520000038a50410d1325980099baf30450014c010140008acc004cdc49bad304630493756608c00200913003374c609400514a082222b300133712900000244c00c01a2941044208830480014118329800800c00e446608c0046608c6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1100066eacc11400660920069112cc004cdc8a441000038acc004cdc7a44100003899802981c198251ba60024bd70000c4cc015300103d87a8000006411919800803c006446600e0046609866ec0dd48029ba6004001401c8230608e004822a2942294229410461bab302e002374c6608266ec0c108004dd31982099bb030423043001375066e0400c0152f5bded8c097adef6c608801c5903d1bac304130423042304230423042303e375400d1640f0b3001302f30050018a40011598009820000c4c96600266e3cdd7181e000a44104555344720089bad303d0018b2076303f0018b207a40e86464b30013031303d37540031325980099baf3042303f37546084607e6ea8c0b8c0fcdd50009808998209ba90034bd7044c9660026070607e6ea80062646601e002264b30013035304137540031325980099baf304630433754608c60866ea8004c054cc114dd4803a5eb82264b3001303c3043375400313233013001133047375066e04dd6982418229baa001375a6090608a6ea8014cc11cdd3194c0040066eacc0d4c118dd50024c8cc004004dd5981b18239baa30363047375401244b30010018a5eb7bdb1822646609666ec0c120004dd319198008009bab304a0022259800800c52f5bded8c11323304e3376060960026ea0cdc0a40006eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0924004444b30010028800c4c8cc8a600200d304f0059919800800802912cc00400626609e66ec0dd48021ba60034bd6f7b63044ca60026eb8c1340066eacc13800660a40049112cc004cdc8004001c4cc14ccdd81ba9008374c00e00b15980099b8f0080038992cc004c114c144dd5000c4cc150cdd81ba90093055305237540020051002414064b300159800800c528c52820a68a6103d87a8000898211982a1ba60014bd7020a0329800800c022006800888966002005100189919914c00401a60b600b32330010010052259800800c4cc16ccdd81ba9004375000697adef6c608994c004dd7182c800cdd6982d000cc1780092225980099b9000800389982f99bb037520106ea001c0162b30013371e010007132598009828982e9baa00189983019bb0375201260c260bc6ea800400a200482e0c96600260a200314c0103d87a800089827198301ba80014bd7020b83370000e00513305f337606ea400cdd400119803003000a0b6416c305c00141688030dd7182a0009bad305500130570024155133053337606ea400cdd300119803003000a09e413c305000141388030dd718240009bab3049001304b002412497ae0304730443754003164108606060866ea80062c8208c114c108dd5000c59040198149bac302e3041375401046606060566eacc0c4c108dd5000803182198201baa0018b207c302c303f3754605c607e6ea80062c81e8c104c0f8dd5000c52f5c30100008101a00020783302437586080607a6ea8010004dd7181f981e1baa3009303c3754008664464b30013033303d375400314bd6f7b63044dd59820981f1baa00140f0646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606266086608200497ae08a60103d87a800040fd133004004304500340fc6eb8c0fc004c1080050401bab3008303b37540046eb8c0a8c0ecdd51804181d9baa003222232330010010052232598009819000c4cc0b4018dd71821181f9baa0028acc004c0d0006264660020026eb0c10cc100dd5001912cc00400629462b30013300500530440018998010011822800c528207e4109159800981b800c4c8cc004004dd6182198201baa0032259800800c52845660026600a00a608800314a3133002002304500140fc82122b3001303300189919b89375a608600264660020026eb0c110c114008896600200314800226644b300133008008002899b800014800a20028210c114004cc008008c118005043181f9baa0028acc004cdc3a40100031332259800981b18201baa0018992cc004c0dcc104dd5181898211baa3031304237540111337120020071337100020068200dd6982218209baa0018a5040fc6eb4c108c0fcdd50011821181f9baa302e303f375400b15980099b874802800626644b300130363040375400313259800981b98209baa303130423754608a60846ea8022266e2400c006266e2000c0050401bad30443041375400314a081f8dd69821181f9baa0023042303f37546084607e6ea8016264646600200200c44b30010018a508acc004cdd780198209822800c528c4cc008008c11800504020863011330413042303f375400497ae040f481e903d207a40f481e8c0f4dd50009801801a2c8178dd718178009bae302f00a302f0098b2058375c60580026eb8c0b0008c0b0004c09cdd5000c590254590280c094004c090004c08c004c088004c084004c070dd500145901a1804980d1baa32598009807180d1baa0018992cc004c050c06cdd5000c4c966002602060386ea8006264646644b300130250038802c5902218110009bae30220023022001301d375400316406c603e60386ea80062c80d0c020c06cdd51805180d9baa301e301b3754003164064660026eb0c024c068dd500880b9802002111980180111980518029bab300b301c3754601660386ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c010006260186603c00297ae089980180198100012034301e0014070600c00c44464b3001300c001899192cc004c07c00a0091640706eb8c074004c064dd5001c566002601c00313259800980f000c4cc018dd6180e800912cc00400a00b19800803cc07c00a260026040004803901d45901b180c9baa0038acc004c044006264b3001301e0018998031bac301d0012259800801401633001007980f80144c004c080009007203a8b2036301937540071598009806800c4c8cc896600260400031330083758603e00244b3001002803c6600201330210028980098110012012407d1640746eb4c074004c078004c064dd5001c56600266e1d2008001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200a001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200c001899192cc004c07c00a0091640706eb8c074004c064dd5001c59017202e405c80b9017202e405c602e6ea80088b2010180480098021baa00a8a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_2ProtocolProtocolElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"591944010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920130657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488888896600264653001301100198089809000cdc3a400930110024888966002600460226ea800e264b30010058cc004dc3a4005370e90034dc3a40013012375400a9111192cc004c00c00a2b300130183754015001806a0328acc004c01400a2b300130183754015001806a0328acc004c02000a264b300100180744c96600200300f807c03e264b3001301f003802404101c1bad001807a03e301c001406860306ea802a2b300130040028992cc00400601d13259800800c03e01f00f8992cc004c07c00e00901040706eb400601e80f8c07000501a180c1baa00a806a02a405480a90150cc004896600200314bd7044cc06cc060c070004cc008008c07400501a4dd2a40012301b301c001911919800800801912cc00400629422b30013371e6eb8c07800400e2946266004004603e00280c101c48c06cc070c07000522222323322323259800800c4c8c966002601c60446ea800e264b300100180d44c96600200313259800800c072264b30010018992cc00400603d13259800800c4c9660020030208992cc004006264b300100181144c96600200313259800800c092264b3001001812c096264b300130340038cc0040323300100a8cc004022330010068acc004c06cc0bcdd500244c9660020030278992cc00400605102881440a226644b300100181544c96600200302b815c0ae05713259800981d001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c206113259800981f801c660026e9520029181f98201820182018201820182018201820000c8c0fcc100c100c100c100c100c100c1000064607e608060806080608060806080003222598009814981e9baa0038992cc00400600513259800800c00e0070038992cc004c11400e00b00441086eb40060068228c108005040181f1baa003800a0769181f9820182018201820000c8966002003148002266e01200233002002304100140f9303a375405b371090002444444444646644b300130320058acc00660026094608e6ea809e6eb0c02cc11cdd501b4c028c11cdd501b4dd5980498239baa0364005130049800813c0da900020048a99822a481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981a002c5660033001302e3047375404f37586016608e6ea80da6014608e6ea80da6eacc024c11cdd501b2002899b889800813c0da90002004480022a6608a9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981b802c4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bc005003454cc1192411a6578706563742077697468647261775f616d6f756e74203e20300016411504041146eb4c128c11cdd501cc4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bccdc1000a4002801a2a6608c920119657870656374206465706f7369745f616d6f756e74203e20300016411504041146eb4c128c11cdd501ca08841108220888c8cc896600266e1cdd6982700080144c9660026644b30010018a508994c004c9660026076609e6ea800626eb4c140c14cdd5982998281baa0018a40008268c1480066ebcc148c14c0066eac00922259800800c566002600400b1337129000001c528209e8992cc004cdd79829000a6010140008acc004cdc49bad30533056375660a600200913003374c60ae00514a082822b300133712900000244c00c01a294105020a03055001414c329800800c00e44660a6004660a66e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1440066eacc14800660ac0069112cc004cdc8a441000038acc004cdc7a44100003899802981e9982b9ba60024bd70000c4cc015300103d87a8000006414919800803c006446600e004660b266ec0dd48029ba6004001401c829060a800482922942294229410531bab3033002374c6609c66ec0c13c004dd31982719bb0304f3050001375066e0400c0152f5bded8c097adef6c608801c54cc1292401be6578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a2020202029001641246eb0c138c13cc13cc13cc13cc13cc12cdd5003454cc1252401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e7400164120b3001303430050018a4001159800800c10a264b3001304e0028acc004cdc79bae3049001488104555344720089bad304a0018a998242491d657870656374206e616d65203d3d20636f6e7374616e74732e757364720016411d043412c6098002825104619192cc004c0d8c128dd5000c4c96600266ebcc13cc130dd5182798261baa3033304c375400260226609c6ea400d2f5c113259800981e98261baa0018992cc004006330010018992cc004c0e8c138dd5000c4c96600266ebcc14cc140dd5182998281baa001301533052375200e97ae08992cc004c104c140dd5000c4c96600200319800800c4cc150dd419b81375a60aa60a46ea8004dd6982a98291baa00533054374c6530010019bab303a3053375400932330010013756607660a86ea8c0ecc150dd5004912cc004006297adef6c608991982c19bb03055001374c64660020026eacc15c008896600200314bd6f7b63044c8cc16ccdd8182c0009ba83370290001bad305900133003003305d002305b00141646600600660b400460b000282b10011112cc00400a2003132332298008034c170016646600200200a44b300100189982e19bb037520086e9800d2f5bded8c113298009bae305a0019bab305b001982f8012444b300133720010007133060337606ea4020dd3003802c56600266e3c02000e264b3001304a305e3754003133061337606ea4024c188c17cdd50008014400905c192cc0056600200314a314a083022980103d87a800089823998309ba60014bd7020b8329800800c022006800888966002005100189919914c00401a60d000b32330010010052259800800c4cc1a0cdd81ba9004375000697adef6c608994c004dd71833000cdd69833800cc1ac0092225980099b9000800389983619bb037520106ea001c0162b30013371e01000713259800982b18351baa00189983699bb0375201260dc60d66ea800400a20048340c96600260ac00314c0103d87a800089829998369ba80014bd7020d03370000e00513306c337606ea400cdd400119803003000a0ce419c3069001419c8030dd718308009bad306200130640024189133060337606ea400cdd300119803003000a0b6416c305d001416c8030dd7182a8009bab30560013058002415897ae0826a026826c13609b04d415c60a860a26ea80062a6609e92012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d00164138606a60a06ea80062a6609c92013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016413460a4609e6ea80062a6609a92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c207363726970742900164130660606eb0c0ccc138dd500411981a98191bab3036304f375400200d048403d04882441220908298c140c134dd5000c54cc12d2413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d00164128606260986ea8c0ccc130dd5000c54cc12924014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287363726970742900164124609c60966ea8006297ae110100008101a00020903302b3758609a60946ea8010004dd7182618249baa300930493754008664464b30013038304a375400314bd6f7b63044dd5982718259baa0014120646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606c660a0609c00497ae08a60103d87a8000412d1330040043052003412c6eb8c130004c13c00504d1bab3008304837540046eb8c0bcc120dd5180418241baa00322223233001001005223259800981b800c4cc0c8018dd7182798261baa0028acc004c0e4006264660020026eb0c140c134dd5001912cc00400629462b30013300500530510018998010011829000c5282096413d159800981e000c4c8cc004004dd6182818269baa0032259800800c52845660026600a00a60a200314a31330020023052001412c827a2b3001303800189919b89375a60a000264660020026eb0c144c148008896600200314800226644b300133008008002899b800014800a20028270c148004cc008008c14c00505018261baa0028acc004cdc3a40100031332259800981d98269baa0018992cc004c0f0c138dd5181b18279baa3036304f37540111337120020071337100020068260dd6982898271baa0018a50412c6eb4c13cc130dd5001182798261baa3033304c375400b15980099b874802800626644b3001303b304d375400313259800981e18271baa3036304f375460a4609e6ea8022266e2400c006266e2000c00504c1bad3051304e375400314a08258dd6982798261baa002304f304c3754609e60986ea8016264646600200200c44b30010018a508acc004cdd780198271829000c528c4cc008008c14c00504c20a030113304e304f304c375400497ae041248249049209241248248c128dd50009801801a06281e0dd7000a07e303c00140e86eb8004c0ec02103c181c803a06e816206e375c00281d0c0dc0050351bae001303600240dc60680028190c0c0dd5002409902d409900e409900e409900e409900e40990311bac001812c0950341818800a05e3031002811c08e04702340c8605e0028168c0bc00a043021810c0850301816800a056302d00280fc07e03f01f40b860560028148c0ac00a03b01d80ec07502c1814800a04e302900280dc06e03701b40a8604e0028128c08cdd5001c065020111194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c058006264b300100180344c966002003007803c4c966002606000713300b0012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0c000e26601600244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b300130150018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009819801c4cc038004896600200500a8992cc0040063300100d800c4c008c0d800d00d403a01d00e807206e303400240c900b40c06eb000601500a40cc60600028170dd68009817801401d0301816800a0563029375400715980099b8748020006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c9660026060007005804205a375a00300740c0605a0028158c0a4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa003802a04c40988131026204c40988130c09cdd500111191980080080191198018009801001405e02f01780ba04c30073020375464646644646644a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea408d22010013259800980998139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980d18149baa0018992cc0040062b30013016302a375400313259800800c08e264b30010018124092049024899912cc00400604d13259800981a0014401a04e8188c0c80050301bae001303100240c8605e0028168c0acdd5000c089028408a0450228112060302d302a3754003153302849013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601c60526ea8c040c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601000204660020026eb0c030c094dd500a111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051009205a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81390271bac302a002375a60500026466ec0dd418140009ba73029001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a605a003337149101023a200098008054c0b800600a805100a181800144ca6002015302d00199b8a489023a200098008054c0b8006600e66008008004805100a1818001205c303000140b466e29220102207d0000340a86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900620543758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720583371666e000056600266e2000520148a40c11481b902c002200c33706002901019b8600148080cdc70020012052375c0068168dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003408c81188888c8cc004004014896600200310058992cc004006266008605800400d133005302c0023300300300140a860580028148c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c00028019020111980180111980418029bab300930223754601260446ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146604800297ae08998018019813001203e30240014088600a00a4022011008804203030153012375400716403c3011001300c3754025149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n :\n \"590d5b010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a400d370e90004c024dd500224444464b300130030028acc004c040dd500540062c808a2b300130050028acc004c040dd500540062c808a2b30013008002899192cc004c05800a00716404c6eb4c050004c040dd5005456600260080051323259800980b001400e2c8098dd6980a00098081baa00a8b201c4038807100e0cc004896600200314bd7044cc04cc040c050004cc008008c0540050124dd2a4001230133014001911919800800801912cc00400629422b30013371e6eb8c05800400e2946266004004602e002808901448c04cc050c05000644646600200200644660060026004004911111199119911919912cc004c03cc06cdd500144c8c8c8c8c8ca60026eb0c094006604a00b30250049812801cc0940092222259800981580344cc030c0a802c4cc0300104cc03000c4cc0300085660026034604c6ea8006264646644b3001302f00389919912cc004c0c800e33001374a900148c0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc00646064606660666066606660666066606600323032303330333033303330333033001912cc004c08cc0bcdd500144c8c966002606c0050038b2066375a606800260606ea800a2c81724606460666066606660660032259800800c52000899b8048008cc008008c0d00050314c0b4dd50144dc4240009111111111919912cc004c0b40162b30019800981e981d1baa0209bac300b303a3754063300a303a37540633756601260746ea80c500144c0126002041031a400080122c81c22b3001302f0058acc0066002605260746ea80826eb0c02cc0e8dd5018cc028c0e8dd5018cdd59804981d1baa03140051337113001020818d2000400890004590384566002606400b13259800cc004c0a0c0ecdd5010cdd61806181d9baa0329805981d9baa0329bab300a303b375406480122b30013005001898174c004086065001400d1640e51640e46eb4c0f4c0e8dd501a44c96600330013028303b37540433758601860766ea80ca601660766ea80ca6eacc028c0ecdd501920048acc004c0140062605d30010218194cdc1000a4002801a2c81ca2c81c8dd6981e981d1baa03440e081c10381111919912cc004cdc39bad30410010028992cc004cc896600200314a11329800992cc004c0d8c108dd5000c4dd6982198231bab3046304337540031480010411822800cdd798229823000cdd58012444b30010018acc004c008016266e2520000038a50410d1325980099baf30450014c010140008acc004cdc49bad304630493756608c00200913003374c609400514a082222b300133712900000244c00c01a2941044208830480014118329800800c00e446608c0046608c6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1100066eacc11400660920069112cc004cdc8a441000038acc004cdc7a44100003899802981c198251ba60024bd70000c4cc015300103d87a8000006411919800803c006446600e0046609866ec0dd48029ba6004001401c8230608e004822a2942294229410461bab302e002374c6608266ec0c108004dd31982099bb030423043001375066e0400c0152f5bded8c097adef6c608801c5903d1bac304130423042304230423042303e375400d1640f0b3001302f30050018a40011598009820000c4c96600266e3cdd7181e000a44104555344720089bad303d0018b2076303f0018b207a40e86464b30013031303d37540031325980099baf3042303f37546084607e6ea8c0b8c0fcdd50009808998209ba90034bd7044c9660026070607e6ea80062646601e002264b30013035304137540031325980099baf304630433754608c60866ea8004c054cc114dd4803a5eb82264b3001303c3043375400313233013001133047375066e04dd6982418229baa001375a6090608a6ea8014cc11cdd3194c0040066eacc0d4c118dd50024c8cc004004dd5981b18239baa30363047375401244b30010018a5eb7bdb1822646609666ec0c120004dd319198008009bab304a0022259800800c52f5bded8c11323304e3376060960026ea0cdc0a40006eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0924004444b30010028800c4c8cc8a600200d304f0059919800800802912cc00400626609e66ec0dd48021ba60034bd6f7b63044ca60026eb8c1340066eacc13800660a40049112cc004cdc8004001c4cc14ccdd81ba9008374c00e00b15980099b8f0080038992cc004c114c144dd5000c4cc150cdd81ba90093055305237540020051002414064b300159800800c528c52820a68a6103d87a8000898211982a1ba60014bd7020a0329800800c022006800888966002005100189919914c00401a60b600b32330010010052259800800c4cc16ccdd81ba9004375000697adef6c608994c004dd7182c800cdd6982d000cc1780092225980099b9000800389982f99bb037520106ea001c0162b30013371e010007132598009828982e9baa00189983019bb0375201260c260bc6ea800400a200482e0c96600260a200314c0103d87a800089827198301ba80014bd7020b83370000e00513305f337606ea400cdd400119803003000a0b6416c305c00141688030dd7182a0009bad305500130570024155133053337606ea400cdd300119803003000a09e413c305000141388030dd718240009bab3049001304b002412497ae0304730443754003164108606060866ea80062c8208c114c108dd5000c59040198149bac302e3041375401046606060566eacc0c4c108dd5000803182198201baa0018b207c302c303f3754605c607e6ea80062c81e8c104c0f8dd5000c52f5c30100008101a00020783302437586080607a6ea8010004dd7181f981e1baa3009303c3754008664464b30013033303d375400314bd6f7b63044dd59820981f1baa00140f0646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606266086608200497ae08a60103d87a800040fd133004004304500340fc6eb8c0fc004c1080050401bab3008303b37540046eb8c0a8c0ecdd51804181d9baa003222232330010010052232598009819000c4cc0b4018dd71821181f9baa0028acc004c0d0006264660020026eb0c10cc100dd5001912cc00400629462b30013300500530440018998010011822800c528207e4109159800981b800c4c8cc004004dd6182198201baa0032259800800c52845660026600a00a608800314a3133002002304500140fc82122b3001303300189919b89375a608600264660020026eb0c110c114008896600200314800226644b300133008008002899b800014800a20028210c114004cc008008c118005043181f9baa0028acc004cdc3a40100031332259800981b18201baa0018992cc004c0dcc104dd5181898211baa3031304237540111337120020071337100020068200dd6982218209baa0018a5040fc6eb4c108c0fcdd50011821181f9baa302e303f375400b15980099b874802800626644b300130363040375400313259800981b98209baa303130423754608a60846ea8022266e2400c006266e2000c0050401bad30443041375400314a081f8dd69821181f9baa0023042303f37546084607e6ea8016264646600200200c44b30010018a508acc004cdd780198209822800c528c4cc008008c11800504020863011330413042303f375400497ae040f481e903d207a40f481e8c0f4dd50009801801a2c8178dd718178009bae302f00a302f0098b2058375c60580026eb8c0b0008c0b0004c09cdd5000c590254590280c094004c090004c08c004c088004c084004c070dd500145901a1804980d1baa32598009807180d1baa0018992cc004c050c06cdd5000c4c966002602060386ea8006264646644b300130250038802c5902218110009bae30220023022001301d375400316406c603e60386ea80062c80d0c020c06cdd51805180d9baa301e301b3754003164064660026eb0c024c068dd500880b9802002111980180111980518029bab300b301c3754601660386ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c010006260186603c00297ae089980180198100012034301e0014070600c00c44464b3001300c001899192cc004c07c00a0091640706eb8c074004c064dd5001c566002601c00313259800980f000c4cc018dd6180e800912cc00400a00b19800803cc07c00a260026040004803901d45901b180c9baa0038acc004c044006264b3001301e0018998031bac301d0012259800801401633001007980f80144c004c080009007203a8b2036301937540071598009806800c4c8cc896600260400031330083758603e00244b3001002803c6600201330210028980098110012012407d1640746eb4c074004c078004c064dd5001c56600266e1d2008001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200a001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200c001899192cc004c07c00a0091640706eb8c074004c064dd5001c59017202e405c80b9017202e405c602e6ea80088b2010180480098021baa00a8a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v0_3/index.js b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_3/index.js new file mode 100644 index 0000000000..e0c80236a9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_3/index.js @@ -0,0 +1,315 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { Type, TPlutusData } from "@blaze-cardano/data"; +const PolicyId = Type.String(); +const Contracts = Type.Module({ + Bool: Type.Boolean(), + COSESign1: Type.Object({ + headers: Type.Ref("Headers"), + payload: Type.Optional(Type.String()), + signature: Type.String() + }, { + ctor: 0n + }), + HeaderMap: Type.String(), + Headers: Type.Object({ + protected: Type.Ref("HeaderMap"), + unprotected: Type.Ref("HeaderMap") + }, { + ctor: 0n + }), + MultisigScript: Type.Union([Type.Object({ + Signature: Type.Object({ + key_hash: Type.String() + }, { + ctor: 0n + }) + }), Type.Object({ + AllOf: Type.Object({ + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 1n + }) + }), Type.Object({ + AnyOf: Type.Object({ + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 2n + }) + }), Type.Object({ + AtLeast: Type.Object({ + required: Type.BigInt(), + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 3n + }) + }), Type.Object({ + Before: Type.Object({ + time: Type.BigInt() + }, { + ctor: 4n + }) + }), Type.Object({ + After: Type.Object({ + time: Type.BigInt() + }, { + ctor: 5n + }) + }), Type.Object({ + Script: Type.Object({ + script_hash: Type.String() + }, { + ctor: 6n + }) + })]), + Asset: Type.Tuple([Type.String(), Type.String()]), + Destination: Type.Object({ + address: Type.Object({ + payment_credential: Type.Union([Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { + ctor: 0n + }) + }), Type.Object({ + Script: Type.Tuple([Type.String()], { + ctor: 1n + }) + })]), + stake_credential: Type.Optional(Type.Union([Type.Object({ + Inline: Type.Tuple([Type.Union([Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { + ctor: 0n + }) + }), Type.Object({ + Script: Type.Tuple([Type.String()], { + ctor: 1n + }) + })])], { + ctor: 0n + }) + }), Type.Object({ + Pointer: Type.Object({ + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt() + }, { + ctor: 1n + }) + })])) + }, { + ctor: 0n + }), + datum: Type.Union([Type.Literal("NoDatum", { + ctor: 0n + }), Type.Object({ + DatumHash: Type.Tuple([Type.String()], { + ctor: 1n + }) + }), Type.Object({ + InlineDatum: Type.Tuple([TPlutusData], { + ctor: 2n + }) + })]) + }, { + ctor: 0n + }), + ExtraProtocolRedeemer: Type.Object({ + request_to_outputs: Type.Record(Type.Number(), Type.BigInt()) + }, { + ctor: 0n + }), + Nonce: Type.Union([Type.Object({ + UTxO: Type.Tuple([Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + })], { + ctor: 0n + }) + }), Type.Object({ + Validity: Type.Tuple([Type.Object({ + lower_bound: Type.Object({ + bound_type: Type.Union([Type.Literal("NegativeInfinity", { + ctor: 0n + }), Type.Object({ + Finite: Type.Tuple([Type.BigInt()], { + ctor: 1n + }) + }), Type.Literal("PositiveInfinity", { + ctor: 2n + })]), + is_inclusive: Type.Ref("Bool") + }, { + ctor: 0n + }), + upper_bound: Type.Object({ + bound_type: Type.Union([Type.Literal("NegativeInfinity", { + ctor: 0n + }), Type.Object({ + Finite: Type.Tuple([Type.BigInt()], { + ctor: 1n + }) + }), Type.Literal("PositiveInfinity", { + ctor: 2n + })]), + is_inclusive: Type.Ref("Bool") + }, { + ctor: 0n + }) + }, { + ctor: 0n + })], { + ctor: 1n + }) + }), Type.Object({ + Nullifier: Type.Tuple([Type.String()], { + ctor: 2n + }) + })]), + OrderAction: Type.Union([Type.Object({ + OMint: Type.Object({ + amount: Type.BigInt() + }, { + ctor: 0n + }) + }), Type.Object({ + ORedeem: Type.Object({ + amount: Type.BigInt() + }, { + ctor: 1n + }) + })]), + OrderDatum: Type.Object({ + owner: Type.Ref("MultisigScript"), + destination: Type.Ref("Destination"), + action: Type.Ref("OrderAction"), + data: TPlutusData + }, { + ctor: 0n + }), + OrderRedeemer: Type.Union([Type.Literal("Execute", { + ctor: 0n + }), Type.Literal("Cancel", { + ctor: 1n + })]), + ProtocolRedeemer: Type.Union([Type.Object({ + Mint: Type.Object({ + requests: Type.Array(Type.Ref("Request")) + }, { + ctor: 0n + }) + }), Type.Object({ + Burn: Type.Object({ + requests: Type.Array(Type.Ref("Request")) + }, { + ctor: 1n + }) + }), Type.Object({ + Withdraw: Type.Object({ + withdraw_amount: Type.BigInt() + }, { + ctor: 2n + }) + }), Type.Object({ + Deposit: Type.Object({ + deposit_amount: Type.BigInt() + }, { + ctor: 3n + }) + })]), + ProxyDatum: Type.Object({ + logic: Type.String(), + settings: Type.Ref("Settings") + }, { + ctor: 0n + }), + Registry: Type.Object({ + treasury: Type.String(), + usdr: Type.String(), + order: Type.String() + }, { + ctor: 0n + }), + Request: Type.Object({ + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + origin: Type.Optional(Type.String()) + }, { + ctor: 0n + }), + Settings: Type.Object({ + mint_permission: Type.Ref("MultisigScript"), + burn_permission: Type.Ref("MultisigScript"), + withdraw_permission: Type.Ref("MultisigScript"), + deposit_permission: Type.Ref("MultisigScript"), + registry: Type.Ref("Registry"), + reserve_token: Type.Ref("Asset") + }, { + ctor: 0n + }), + SigWithKey: Type.Tuple([Type.String(), Type.Ref("COSESign1")]), + SignatureList: Type.Array(Type.Ref("SigWithKey")), + SignedPayload_ProtocolRedeemer: Type.Object({ + action: Type.Ref("ProtocolRedeemer"), + nonce: Type.Ref("Nonce") + }, { + ctor: 0n + }), + SignedRedeemer_ExtraProtocolRedeemer: Type.Object({ + extra: Type.Ref("ExtraProtocolRedeemer"), + payload: Type.String(), + signatures: Type.Ref("SignatureList") + }, { + ctor: 0n + }) +}); +export const Bool = Contracts.Import("Bool"); +export const COSESign1 = Contracts.Import("COSESign1"); +export const HeaderMap = Contracts.Import("HeaderMap"); +export const Headers = Contracts.Import("Headers"); +export const MultisigScript = Contracts.Import("MultisigScript"); +export const Asset = Contracts.Import("Asset"); +export const Destination = Contracts.Import("Destination"); +export const ExtraProtocolRedeemer = Contracts.Import("ExtraProtocolRedeemer"); +export const Nonce = Contracts.Import("Nonce"); +export const OrderAction = Contracts.Import("OrderAction"); +export const OrderDatum = Contracts.Import("OrderDatum"); +export const OrderRedeemer = Contracts.Import("OrderRedeemer"); +export const ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +export const ProxyDatum = Contracts.Import("ProxyDatum"); +export const Registry = Contracts.Import("Registry"); +export const Request = Contracts.Import("Request"); +export const Settings = Contracts.Import("Settings"); +export const SigWithKey = Contracts.Import("SigWithKey"); +export const SignatureList = Contracts.Import("SignatureList"); +export const SignedPayload_ProtocolRedeemer = Contracts.Import("SignedPayload_ProtocolRedeemer"); +export const SignedRedeemer_ExtraProtocolRedeemer = Contracts.Import("SignedRedeemer_ExtraProtocolRedeemer"); +export class V0_3OrderOrderSpend { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "590e80010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004896600200314bd7044cc068c05cc06c004cc008008c070005019488c8cc00400400c88cc00c004c00800a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80b24444646600200200a44b30010018802c4c9660020031330043020002006899802981000119801801800a03c302000140752232330010010032259800800c5300103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444453001300600698020024888ca6002003004801a00222232598009809800c4c9660020030068992cc00400600f007803c01e264b3001302a003802c0210271bae00140a8604e0028128c08cdd5001c566002603000313259800800c01a264b3001001803c01e264b3001302a003899807800912cc00400a00f13259800800c66002015001898011816801a014805c02e01700b40b86056004814a0108138dd6000c01e00e8150c09c00502518119baa0038acc004c038006264b300100180344c966002003007803c4c966002605400713300f0012259800801401e264b30010018cc00402a00313002302d003402900b805c02e0168170c0ac00902940210271bac001803c01d02a1813800a04a3023375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605a0071330120012259800801402a264b30010018cc004036003130023030003403500e807403a01c8188c0b800902c402d02a1bac001805402902d1815000a050375a002605200500740a8604e0028128c08cdd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0a800e00b008409c6eb400600e8150c09c00502518119baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815001c0160108138dd6800c01d02a1813800a04a3023375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815001c0160108138dd7000a0543027001409460466ea800e00a8101020204040808101020204030213754005330023758603e60386ea80408cdd79810180e9baa00100f48888c8c8cc88c966002602a60486ea801a264b3001301b3025375400315980099b8f375c6052604c6ea8004dd7180598131baa3029302a302a302a302a302637546026604c6ea8c96600200319800800c40060448022045022811408902c198011bac30133026375403404513233225330273372c92010d63726564656e7469616c3a3a200037326600e0049101001330170010023374a9001198149ba90014bd701bab3016302737540366eb8c0a4c098dd5198011bac301330263754034045153302449013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016408d153302449132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f637265640016408c6050604a6ea8c0a0c094dd5180918129baa30283025375400d15330234913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408844a6604866e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980b98131baa00189929981319b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a18141baa0018992cc004006330010018800c095007409604b025812a05e302c3029375400315330274913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601a60506ea8c054c0a0dd5000981518139baa0018a99812a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640906601800446602660166eacc050c09cdd5180a18139baa001002300100122259800980a98121baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302e0028acc004c068c0a4dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200301280944c9660026076007198008064660020151980080446600200d1598009813981b1baa0048992cc00400602913259800800c05602b01580ac4cc89660020030178992cc00400603101880c406226644b300100180d44c96600200301b80dc06e037132598009822001c56600201501c8992cc00400603b01d80ec07626644b300100180fc4c9660020030208104082041132598009824801c08a0428230dd7000a092304600141106eb8004c11402d0461821805208280e2082375c0028220c10400503f1bae00130400024104607c00281e0dd7000981e801207c303b00140e4606e6ea801202681a202680ca02680ca02680ca02680ca02681c0dd6000c04a02481d8c0e0005036181c00140420210108082072303600140d0606c00500e807403a01c81b8c0d0005032181a001403201900c806206a303200140c0606400500a805402a0148198c0c000502e181800140220110088042062302e00140b060546ea800600c813a00c815a00d006803401902f1816000a054375c00260560048160c0a400502718129baa003800a0442223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020545980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81210241bac3027002375a604a0026466ec0dd418128009ba73026001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6054003337149101023a200098008054c0ac00600a805100a181680144ca6002015302a00199b8a489023a200098008054c0ac006600e66008008004805100a18168012056302d00140a866e29220102207d00003409c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d204e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720523371666e000056600266e2000520148a40c11481b9029002200c33706002901019b8600148080cdc7002001204c375c0068150dc5245022c20002232330010010032259800980a000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408481088acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" : "5906f2010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc004896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a60103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a4444646466446644b30013010301c375400313259800980b180e9baa0018acc004cdc79bae3021301e37540026eb8c020c078dd518109811181118111811180f1baa300e301e3754646600c0022002660066eb0c038c078dd500a80dc4cc03cdd59808180f1baa0153374a9001198101810980f1baa330033758601c603c6ea805406d2f5c11640711640706040603a6ea8c080c074dd51806980e9baa3020301d375400316406c4464b30013011301d3754003132598009806980f1baa0018991980380088009811180f9baa0018b203a3008301e3754601c603c6ea8c084c078dd5000c5901c1980400111980698021bab300e301e3754601c603c6ea8004008cc018dd6180f180d9baa01223375e603e60386ea80040448966002601c60346ea800a2646644b300130220018992cc004c048c078dd5000c4c8c8c8c8c8ca60026eb0c0a0006605000b30280049814001cc0a00092222259800981700344cc048c0b402c4cc0480104cc04800c4cc048008566002603a60526ea800626464653001375c6060003375c6060007375c60600049112cc004c0d00122646644b3001303700380cc590341bae3034001375c606801860680171640c43030001302f001302a37540031640a11640ac30280013027001302600130250013024001301f3754003164074604200316407c6eb8c07c004c080004c06cdd500145901918030031800800911192cc004c03800626464b3001302100280245901e1bae301f001301b37540071598009809800c4c96600260400031330083758603e00244b3001002802c6600200f3021002898009811001200e407d16407460366ea800e2b300130090018992cc004c0800062660106eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c56600266e1d200600189919912cc004c0880062660146eb0c08400489660020050078cc00402660460051300130240024024810a2c80f8dd6980f8009810000980d9baa0038acc004cdc3a40100031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40140031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40180031323259800981080140122c80f0dd7180f800980d9baa0038b2032406480c90192032406480c8c064dd500122b300130063012375400f19800980b18099baa30163013375400f3758602c602e602e602e602e602e602e602e602e60266ea802a602c602e602e602e602e602e602e602e60266ea802a6eacc014c04cdd500524444646600200200a4464b3001300d0018998048031bae301d301a37540051598009809000c4c8cc004004dd6180f180d9baa0032259800800c528c5660026600a00a603e00313300200230200018a50406880ea2b30013008001899198008009bac301e301b375400644b30010018a508acc004cc014014c07c0062946266004004604000280d101d456600266e1d200600189919b89375a603c00264660020026eb0c07cc080008896600200314800226644b300133008008002899b800014800a200280e8c080004cc008008c08400501e180d1baa0028acc004cdc3a4010003132332259800980a980e1baa0028acc004c054c070dd518101810801c4cdc49bad3020301d37540040031337106eb4c080c074dd5001000a0368a50406c603c0026eb4c078c06cdd5001980d1baa300a301a375400b15980099b87480280062646644b30013015301c3754005159800980a980e1baa30203021003899b89001375a6040603a6ea800a266e20004dd69810180e9baa002406d14a080d8c078004dd6980f180d9baa003301a3754603a60346ea801626601600866e9520023301c301d301a375400497ae0406080c10182030406080c0c060dd5000a2c80890110c034dd50040c028dd5001c590080c024004c010dd5004c52689b2b200401", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class V0_3OrderOrderElse { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "590e80010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004896600200314bd7044cc068c05cc06c004cc008008c070005019488c8cc00400400c88cc00c004c00800a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80b24444646600200200a44b30010018802c4c9660020031330043020002006899802981000119801801800a03c302000140752232330010010032259800800c5300103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444453001300600698020024888ca6002003004801a00222232598009809800c4c9660020030068992cc00400600f007803c01e264b3001302a003802c0210271bae00140a8604e0028128c08cdd5001c566002603000313259800800c01a264b3001001803c01e264b3001302a003899807800912cc00400a00f13259800800c66002015001898011816801a014805c02e01700b40b86056004814a0108138dd6000c01e00e8150c09c00502518119baa0038acc004c038006264b300100180344c966002003007803c4c966002605400713300f0012259800801401e264b30010018cc00402a00313002302d003402900b805c02e0168170c0ac00902940210271bac001803c01d02a1813800a04a3023375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605a0071330120012259800801402a264b30010018cc004036003130023030003403500e807403a01c8188c0b800902c402d02a1bac001805402902d1815000a050375a002605200500740a8604e0028128c08cdd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0a800e00b008409c6eb400600e8150c09c00502518119baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815001c0160108138dd6800c01d02a1813800a04a3023375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815001c0160108138dd7000a0543027001409460466ea800e00a8101020204040808101020204030213754005330023758603e60386ea80408cdd79810180e9baa00100f48888c8c8cc88c966002602a60486ea801a264b3001301b3025375400315980099b8f375c6052604c6ea8004dd7180598131baa3029302a302a302a302a302637546026604c6ea8c96600200319800800c40060448022045022811408902c198011bac30133026375403404513233225330273372c92010d63726564656e7469616c3a3a200037326600e0049101001330170010023374a9001198149ba90014bd701bab3016302737540366eb8c0a4c098dd5198011bac301330263754034045153302449013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016408d153302449132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f637265640016408c6050604a6ea8c0a0c094dd5180918129baa30283025375400d15330234913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408844a6604866e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980b98131baa00189929981319b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a18141baa0018992cc004006330010018800c095007409604b025812a05e302c3029375400315330274913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601a60506ea8c054c0a0dd5000981518139baa0018a99812a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640906601800446602660166eacc050c09cdd5180a18139baa001002300100122259800980a98121baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302e0028acc004c068c0a4dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200301280944c9660026076007198008064660020151980080446600200d1598009813981b1baa0048992cc00400602913259800800c05602b01580ac4cc89660020030178992cc00400603101880c406226644b300100180d44c96600200301b80dc06e037132598009822001c56600201501c8992cc00400603b01d80ec07626644b300100180fc4c9660020030208104082041132598009824801c08a0428230dd7000a092304600141106eb8004c11402d0461821805208280e2082375c0028220c10400503f1bae00130400024104607c00281e0dd7000981e801207c303b00140e4606e6ea801202681a202680ca02680ca02680ca02680ca02681c0dd6000c04a02481d8c0e0005036181c00140420210108082072303600140d0606c00500e807403a01c81b8c0d0005032181a001403201900c806206a303200140c0606400500a805402a0148198c0c000502e181800140220110088042062302e00140b060546ea800600c813a00c815a00d006803401902f1816000a054375c00260560048160c0a400502718129baa003800a0442223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020545980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81210241bac3027002375a604a0026466ec0dd418128009ba73026001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6054003337149101023a200098008054c0ac00600a805100a181680144ca6002015302a00199b8a489023a200098008054c0ac006600e66008008004805100a18168012056302d00140a866e29220102207d00003409c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d204e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720523371666e000056600266e2000520148a40c11481b9029002200c33706002901019b8600148080cdc7002001204c375c0068150dc5245022c20002232330010010032259800980a000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408481088acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" : "5906f2010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc004896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a60103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a4444646466446644b30013010301c375400313259800980b180e9baa0018acc004cdc79bae3021301e37540026eb8c020c078dd518109811181118111811180f1baa300e301e3754646600c0022002660066eb0c038c078dd500a80dc4cc03cdd59808180f1baa0153374a9001198101810980f1baa330033758601c603c6ea805406d2f5c11640711640706040603a6ea8c080c074dd51806980e9baa3020301d375400316406c4464b30013011301d3754003132598009806980f1baa0018991980380088009811180f9baa0018b203a3008301e3754601c603c6ea8c084c078dd5000c5901c1980400111980698021bab300e301e3754601c603c6ea8004008cc018dd6180f180d9baa01223375e603e60386ea80040448966002601c60346ea800a2646644b300130220018992cc004c048c078dd5000c4c8c8c8c8c8ca60026eb0c0a0006605000b30280049814001cc0a00092222259800981700344cc048c0b402c4cc0480104cc04800c4cc048008566002603a60526ea800626464653001375c6060003375c6060007375c60600049112cc004c0d00122646644b3001303700380cc590341bae3034001375c606801860680171640c43030001302f001302a37540031640a11640ac30280013027001302600130250013024001301f3754003164074604200316407c6eb8c07c004c080004c06cdd500145901918030031800800911192cc004c03800626464b3001302100280245901e1bae301f001301b37540071598009809800c4c96600260400031330083758603e00244b3001002802c6600200f3021002898009811001200e407d16407460366ea800e2b300130090018992cc004c0800062660106eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c56600266e1d200600189919912cc004c0880062660146eb0c08400489660020050078cc00402660460051300130240024024810a2c80f8dd6980f8009810000980d9baa0038acc004cdc3a40100031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40140031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40180031323259800981080140122c80f0dd7180f800980d9baa0038b2032406480c90192032406480c8c064dd500122b300130063012375400f19800980b18099baa30163013375400f3758602c602e602e602e602e602e602e602e602e60266ea802a602c602e602e602e602e602e602e602e60266ea802a6eacc014c04cdd500524444646600200200a4464b3001300d0018998048031bae301d301a37540051598009809000c4c8cc004004dd6180f180d9baa0032259800800c528c5660026600a00a603e00313300200230200018a50406880ea2b30013008001899198008009bac301e301b375400644b30010018a508acc004cc014014c07c0062946266004004604000280d101d456600266e1d200600189919b89375a603c00264660020026eb0c07cc080008896600200314800226644b300133008008002899b800014800a200280e8c080004cc008008c08400501e180d1baa0028acc004cdc3a4010003132332259800980a980e1baa0028acc004c054c070dd518101810801c4cdc49bad3020301d37540040031337106eb4c080c074dd5001000a0368a50406c603c0026eb4c078c06cdd5001980d1baa300a301a375400b15980099b87480280062646644b30013015301c3754005159800980a980e1baa30203021003899b89001375a6040603a6ea800a266e20004dd69810180e9baa002406d14a080d8c078004dd6980f180d9baa003301a3754603a60346ea801626601600866e9520023301c301d301a375400497ae0406080c10182030406080c0c060dd5000a2c80890110c034dd50040c028dd5001c590080c024004c010dd5004c52689b2b200401", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class V0_3ProtocolProtocolWithdraw { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "5948aa010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013a657870656374206d61746368696e675f6f75747075745f6964783a20496e74203d206d61746368696e675f6f75747075745f6964785f6461746100168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a494c657870656374207369676e65645f7061796c6f61643a205369676e65645061796c6f61643c50726f746f636f6c52656465656d65723e203d207369676e65645f7061796c6f61645f6461746100168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888966002646530013014001980a180a800cdc3a400930140024888966002600460286ea800e264b30010058999119912cc004c010c064dd5004c4c96600200300d8992cc004006264b3001001807c4c96600200301080840420211332259800800c04a264b3001001809c04e264b300130260038acc004c030c084dd5003c4c9660020030158992cc00400602d132598009814801c4cc030004896600200513300e0062259800801466002444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c814a6e05200091111919800800802912cc004006200b13259800800c4cc010c0cc00801a26600a6066004660060060028188c0cc0050304dc0240032259800800c52f5c113302d302a302e00133002002302f00140b1374a900048c0b4c0b800644646600200200644b30010018a508acc004cdc79bae30300010038a518998010011818800a05440b92302d302e302e0014888888888cc8a600244646600200200644b30013022001899b8a4890130000038acc004cdc4000a40011337149101012d0033002002300e00189980319b8400148050cdc599b803370a002900a240c000681a903548c00800644646600200200644b30010018a6103d87a80008992cc004c010006260166607600297ae0899801801981e801206c303b00140e4911191991192cc00400633001370e90034dc3a4011370e9005244464b30013029303e375400b13259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c0fa07d132598009828001c6600201919800805466002011198008034566002606c60966ea8012264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4c96600260b20071598008054122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260bc0071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc724503020408003370000490189180119bca4a2003124bded8c101400001012000416c82d905b488888ca600200300380120022225980099b89002480022600297ae08919194c00401a607200b23005330680020019bad3065002401860c60033001009804400500720be9b87483f80e6e0120029119bb00023750002911111991191919192cc004c13cc190dd5000c4c9660020031323298009112cc004c154c1a8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800983b00146600200d19800800c02601082d2010805a010839a0110088044021077183a000a0e4375a00260e600500541d060e20028378c1c400a007003801c00d0721837800a0da306b375400700141a11325330673372c9211c5b70726f746f636f6c5d20566572696679696e67206e6f6e63653a2000373266062607460d26ea801122010019800918369837183718371837183718371837000c89660020031480022601c6600400460de002836244646600200200644b30010018a508acc004c00cc1c0006294626600400460e2002835106e4dd2a40049111191929983699b964901205b70726f746f636f6c5d207665726966795f6e6f6e636520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041b0910100159800800c6600260e460de6ea802a44646600200200644b30010018a40011332259800980280144c06000620028390c1d8004cc008008c1dc005074488c8cc00400400c896600200314a115980099baf003307230760018a51899801001183b800a0e041d12232330010010032259800800c528c566002600660ec00313300200230770018a5041c083a2460e660e860e860e860e860e860e860e860e8003230733074307430743074307430740019112cc004c170c1c4dd5001c4c9660020030028992cc004006007003801c4c96600260f200700580220ec375a00300341e460ec00283a0c1c8dd5001c00506f48c1ccc1d0c1d0c1d0c1d00064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e8899802802983d80220e8375c60e80026eacc1d4004c1dc0050750a5eb7bdb18244b30010018a40011301433002002307500141c923073307430743074307430740019112cc00400a298103d87a80008acc004c17000626088660e860ea00497ae08cc00400e60ec0053046001400c837907348966002003148002260286600400460ea002839244b30010018a5eb82264660e86ea0004cc00c00cc8cc004004c1dc00c896600200314bd7044cc896600330013370e00400b4a14a2839a2660f06ea0008cc0100100062660080080028398dd6983b800983c000a0ea375a60e80028392444646600200200844b300100189983b19bb037520086ea000d2f5bded8c113298009bae30740019bad3075001983c8012444b30013372001000713307a337606ea4020dd4003802c56600266e3c02000e2660f466ec0dd48041ba800700189983d19bb037520066ea0008cc01801800507520ea183b800a0ea911919800800801912cc004006297ae0899912cc004cdd7983c183a9baa307830753754608c60ea6ea8008c024cc1dcdd4802a5eb822660ee0046600800800313300400400141c860ec00260ee00283a244b30010018a40011301433002002307500141c93710900024444444444444444453001222232330010010052232598009839000c4cc160018dd71845809844009baa0028acc004c1c400626602c6eb0c22c04c22004dd5001119802002000c56600260ea00313301d37586116026110026ea80088cc0100100062b3001304d00189919b89375a611802002660326eb0c23004c234040048cc014014004c22004dd500145660026098003132332259800983a1845009baa0028acc004c1d0c22804dd5184700984780801c4cdc49bad308e01308b0137540040031337106eb4c23804c22c04dd5001000a110028a504220046118020026eb4c23004c22404dd50019844009baa3059308801375400b1598009825800c4c8cc896600260e86114026ea800a2b30013074308a013754611c02611e020071337120026eb4c23804c22c04dd500144cdc40009bad308e01308b01375400484400a2941088011846008009bad308c0130890137540066110026ea8c22c04c22004dd5002c4cc05c010c070cc22804c22c04c22004dd500125eb8108501210a0242140484280908501210a02308601375400330090099840009baa0129111191980080080291192cc004c1c8006264a6610e0266e59240121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660a26ea400522010013259800983a1844809baa001899194c004dd7184780800cdd7184780984800800cdd71847808012444a6611a029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308d013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660ae6ea4005220100153308d013372c9201187665726966795f65643235353139207061796c6f61643a20003732660ae6ea4009220100153308d013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660ae6ea400d22010013253308e013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660b13001001a60103d87a8000a60103d879800042340491010010019800800c00a006b950c23c04004dd61846809845009baa0018a998440099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660a46ea400922010014a0843808c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c611e020020091305e3308e01374e00297ae08998018019848008012112023758611c02002846008dd71845809844009baa0028acc004c1c4006264a6610e0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416c6c4f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301700123300500500137586116026110026ea800a2b300130750018992998438099b96490122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416e794f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301e00123300500500137586116026110026ea800a2b3001304d00189919912998448099b96490112436865636b696e672041744c656173743a20003732660a66ea000922010013253308a013372c92011941744c656173742073617469736669656420636f756e743a20003732660a86ea000522010013253308b013372c92011041744c6561737420726573756c743a20003732660ab3001001a60103d87a8000a60103d87980004228049101001001337120060026603600246600e00e0026eb4c23004004dd61846009846808009844009baa0028acc004c130006264a6610e0266e5924111436865636b696e67204265666f72653a20003732660a26ea0005220100132533088013372c92010f4265666f726520726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc49bad308e01308b0137540020071337106eb4c23804c22c04dd5000801a110028a50422004611a020026112026ea8c168c22404dd50031bad308b0130880137540051598009825800c4c94cc21c04cdcb24910436865636b696e672041667465723a20003732660a26ea0005220100132533088013372c92010e416674657220726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc48019bad308e01308b0137540031337100066eb4c23804c22c04dd5000a110028a50422004611a020026112026ea8c23004c22404dd50031bad308b013088013754005132533087013372c920111436865636b696e67205363726970743a20003732660a26ea4005220100132533088013372c92010f53637269707420726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c04910100100133018005301d3308b01375200297ae0375c6116026110026ea800908501210a0242140484280908501210a023086013754003300700798030034c0140164446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803210e02899802802984700802210e02375c610e020026eb4c22004004c2280400508801198070020018a400130020024888888888ca6002444b30013370e60180046010600e646600200200644b30010018a5eb8226612402611e026126020026600400461280200284880a2646600200200644b30010018a5eb8410100008101a0008101a00044c8c8c8cc896600260fe6128026ea800a264b3001300900189984c009ba8337006eb4c26404008dd69833984b009baa0013309801374c64b300130800130960137540031375660d000713756613402612e026ea800509401192cc004c20004c25804dd5000c530103d87a8000898349984c809ba698009bab30680039bae309a013097013754003005406897ae042500460ca612c026ea8004cc26004dd34c004dd598328014dd9984c80984d00802c01101925eb822a66128029211a6578706563742076616c69646174696f6e2872657175657374290016424c04613002612a026ea800a2a661260292012f65787065637420536f6d65287265717565737429203d206c6973742e61742874612c20726571756573745f696478290016424804660120100026600a00a612e020086eb4c25404004cc24c04c24004004cc24c04c244040052f5c061260200284880a2a66118029201886578706563740a202020206c6973742e6c656e67746828726571756573745f746f5f6f75747075747329203d3d206c6973742e6c656e677468280a2020202020206c6973742e756e69717565286c6973742e6d617028726571756573745f746f5f6f7574707574732c20666e286974656d29207b206974656d2e317374207d29292c0a20202020290016422c0522225980099b873022004302200389980e8021192cc004c1ecc24004dd5000c4c96600260f86122026ea800626644b3001308101309301375400313259800800c4c966002610002612a026ea800a264b300100184880c4c96600200313259800800c24c06264b30010018992cc00400612a0313259800800c4c966002003097018992cc004c2880400a330010078cc004016264b30013089010018992cc0040061340313259800800c26c061360309b018992cc004c2980400e01b09c01428c046eb400613602853008c28c040050a101184f809baa0048acc004c22004006264b300100184d00c4c96600200309b0184d80c26c06264b300130a601003806c270050a3011bad00184d80a14c0230a301001428404613e026ea80121320284e00909c01184e809baa00384c00a06e84c00a0c084c00a13e0230a0010014278046140020050960184b00c2580612c02850808c2780400509c01184f00801425006128030940184a00a13e02309c010014268046138020050920184900c248061240284e808c2680400509801184b009baa00284800a1260215980099baf30663095013754002613002612a026ea800e2b3001337126eb4c198c25404dd5001cc004dd59833184a809baa3066309501375400d375c61300200f375c60cc00e806a264b3001308001309501375400313370e6eb4c26404c25804dd50009bad3067309601375400913370e6eb4c26404c25804dd50009bad30673096013754008849808c190c25404dd5000c54cc24c05241666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400164248051533093014913865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001642480508f0184780c23c0611e0284d008c25c04c25004dd5000c54cc248052413365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d0016424404612a026124026ea8004c184c24804dd518319849009baa0038a9984800a4814765787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c206d61746368696e675f726571756573745f696478290016423c046600e00a6eb4c25004c24404dd5000c54cc23c0524016565787065637420536f6d65286d61746368696e675f726571756573745f69647829203d0a2020202020202020646963742e676574286d617070696e672c2063626f722e73657269616c69736528696e7075742e6f75747075745f7265666572656e6365292900164238046644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130693309901375000297ae0803212802899802802984d80802212802375c6128020026eb4c25404004c25c04005095011bb330930130900137540022980103d87a80008a9984680a4933657870656374206c6973742e6c656e67746828696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016423005222253308d0149012d5b76616c69646174655f6f7574707574735d205374617274696e67206f75747075742076616c69646174696f6e0015980099b87300600230220038994c004006900040110011112cc004006294626644a661240266e59241305b76616c69646174655f6f7574707574735d2056616c69646174696e67207265717565737420617420696e6465783a20003732660b86ea001122010013259800983f984a009baa0018992cc004c20004c25404dd5000c4c9660020030920184900c2480626464b300130830130980137540031325980099baf309d01309a013754002613a026134026ea8c27404c26804dd5004456600266ebcc1a4c26804dd50009835984d009baa309d01309a0137540111533098013372c92012d5b76616c69646174655f6f7574707574735d20436865636b696e67206f757470757420617420696e6465783a20003732660c46ea000d2201001533098013372c9201245b76616c69646174655f6f7574707574735d20457870656374656420616d6f756e743a20003732660c460d66134026ea80212201001533098013372c9201225b76616c69646174655f6f7574707574735d2041637475616c20616d6f756e743a20003732660c46ea260026eacc1acc26804dd5000cdd7184e808064dd71835806202448900159800803c4cdc3cc004dd59835984d009baa0019bae309d0100c9bae306b00c404864b300133710002900044c1c4006200284c008dd69835984d009baa0088a50425c0515330980149139657870656374206d61746368696e675f6f75747075742e646174756d203d3d20726571756573742e64657374696e6174696f6e2e646174756d0016425c051533098014913d657870656374206d61746368696e675f6f75747075742e61646472657373203d3d20726571756573742e64657374696e6174696f6e2e616464726573730016425c046138026132026ea80062a6612e0292014465787065637420536f6d65286d61746368696e675f6f757470757429203d206c6973742e6174286f7574707574732c206d61746368696e675f6f75747075745f6964782900164258046601c01a0026eb40061240284e008c26404c25804dd5000c54cc250052415b65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f6461746129203d0a202020202020202063626f722e646573657269616c697365286d61746368696e675f6f75747075745f6964785f6279746573290016424c0460646eb8c26004c25404dd5000c54cc24c0524013e65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f627974657329203d20646963742e66696e64286d617070696e672c2069290016424804646600200201044b30010018a60103d87a80008992cc004cdc38039bad309701001898349984c80984b00800a5eb8226600600661360200484a008c2640400509701184a80800cc00400e606a005309601001400c84980a2a6611a0292013265787065637420646963742e73697a65286d617070696e6729203d3d206c6973742e6c656e6774682872657175657374732900164230052223233225980099b87375a6128020020051325980099912cc004006294226530013259800984000984a809baa00189bad3096013099013756613202612c026ea8006290002126023098010019baf3098013099010019bab0024889660020031598009801002c4cdc4a400000714a084a80a264b30013375e61300200298010140008acc004cdc49bad309901309c01375661320200200913003374c613a0200514a084b00a2b300133712900000244c00c01a294109601212c02309b01001426404329800800c00e44661320200466132026e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c25c040066eacc260040066138020069112cc004cdc8a441000038acc004cdc7a4410000389980298369984e809ba60024bd70000c4cc015300103d87a800000642600519800803c006446600e0046613e0266ec0dd48029ba6004001401c84c00861340200484c00a294229422941099011bab3063002374c661280266ec0c25404004dd31984a0099bb0309501309601001375066e0400c0152f5bded8c097adef6c608801c54cc240052401c56578706563740a202020206173736574732e6d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a20202020290016423c046eb0c060c24404dd5003454cc23c052401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e740016423804b30013079300d0018a4001159800800c21806264b30013094010028acc004cdc79bae308f01001488104555344720089bad3090010018a9984700a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200164234050870142440461240200284800908c0119192cc004c1ecc24004dd5000c4c96600266ebcc25404c24804dd5184a809849009baa30633092013754002604c66128026ea400d2f5c1132598009840009849009baa0018992cc004006330010018992cc004c1fcc25004dd5000c4c96600266ebcc26404c25804dd5184c80984b009baa001302a3309801375200e97ae08992cc004c21004c25804dd5000c4c96600200319800800c4cc26804dd419b81375a6136026130026ea8004dd6984d80984c009baa0053309a01374c6530010019bab306a30990137540093233001001375660d66134026ea8c1acc26804dd5004912cc004006297adef6c608991984f0099bb0309b01001374c64660020026eacc27404008896600200314bd6f7b63044c8cc28404cdd8184f008009ba83075375a613e020026600600661460200461420200284f808cc00c00cc28004008c2780400509c012002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd3001a5eb7bdb1822653001375c614002003375661420200330a50100248896600266e4002000e26614c0266ec0dd48041ba60070058acc004cdc7804001c4c966002b30010018a518a5042980510028998538099bb037520126e980040090a201194c0040060110034004444b30010028800c4c8cc8a600200d30ae010059919800800802912cc00400626615c0266ec0dd48021ba80034bd6f7b63044ca60026eb8c2b0040066eb4c2b4040066162020049112cc004cdc8004001c4cc2c804cdd81ba9008375000e00b15980099b8f0080038992cc004c26c0400620051330b301337606ea4024dd4000801215c023370000e0051330b201337606ea400cdd400119803003000a15a0242b40430af0100142b4048030dd71853808009bad30a80100130aa0100242a0051330a601337606ea400cdd300119803003000a1420242840430a3010014284048030dd7184d808009bab309c01001309e0100242700497ae084880a04684880c244061220309101427404613402612e026ea80062a6612a0292012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642500460ca612c026ea80062a661280292013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016424c04613002612a026ea80062a661260292013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c20736372697074290016424804660bc6eb0c18cc25004dd500411983298301bab3066309501375400200d08c01407d08c0184600c230061180284c808c25804c24c04dd5000c54cc244052413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642400460c26124026ea8c18cc24804dd5000c54cc2400524014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016423c046128026122026ea8006297ae110100008101a000211c023305737586126026120026ea8010004dd71849009847809baa3019308f0137540086602e6eacc060c23804dd50011bae305f308e0137546030611c026ea800d222259800983c80644cc894cc23c052411f5b6d696e745d205374617274696e67206d696e742076616c69646174696f6e00159800cc004c25004c24404dd502bc0a660506122026ea81f66eacc074c24404dd503ea01a8a9984780a49205b6d696e745d207361746973666965645f7061796c6f61647320706173736564001323298009bab3096010019bab3096013097010019bad30960100248894cc25004cdcb24812f5b6d696e745d2070726f636573735f7265717565737473207061737365642c2073756d6d65645f616d6f756e743a20003732660bc6ea0005220100132533095013372c92011b5b6d696e745d206f726465725f696e7075747320636f756e743a20003732660be6ea0c0a8005220100159800cc0040060110049bac301e30970137540ba805a2a6612a0292011d5b6d696e745d2076616c69646174655f696e707574732070617373656400159800cc004dd61833184b809baa08301804400e661320260d0612e026ea8c084c25c04dd502e9984c80a601054455534472004bd7020148a9984a80a4811e5b6d696e745d2076616c69646174655f6f7574707574732070617373656400132533096013372c9201215b6d696e745d206d61696e7461696e5f747265617375727920726573756c743a20003732660c13001001a60103d87a8000a60103d879800042540491010010013370f300105d84180d200040240051533095014901816578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a202020202900164250051533095014917a6578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f726967696e5f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016425004660306eb0c26404c25804dd5041009bae306530960137546040612c026ea8170612c020033001002800c8c048dd698319849009baa0014019153308f014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164238046eb0c24804c23c04dd50101bab309201308f013754612402611e026ea81fa2b3001307800c8992cc006600260c26120026ea815a051302730900137540f9375660386120026ea81f100c44c8c9660033001330143758612a026124026ea81f8dd718309849009baa301c30920137540b10039bab3095010019984a0098319849009baa301c30920137540b066128029801054455534472004bd70200c8acc00660026eb0c184c24804dd503f400e6eacc25404c258040066eb0c064c24804dd502c200a899b87980082c41fa90002008375a612a020051533090014901796578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f75747075745f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016423c05153309001491826578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f726967696e5f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a20202020290016423c04612a0200330010019bab30930130900137546126026120026ea81fe466e20dd698311848809baa00148001005454cc23805241856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164234046eb0c24804c23c04dd5010456600260f801913259800cc004c17cc24004dd502b4dd6180e9848009baa07c98139848009baa07c9bab301c30900137540f8807a2b300130100018983d4c00415a0f90014009153308e014911a6578706563742077697468647261775f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501044c9660033001305f30900137540ad3758603a6120026ea81f2604e6120026ea81f26eacc070c24004dd503e201e8acc004c040006260f5300105683e4cdc1000a400280122a6611c02920119657870656374206465706f7369745f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501021180242300484600844b300133710002900045300103d87a8000899803801000a1120222a660da920113657870656374206e6f6e63655f726573756c74001641b0653001306e37540032323232332259800982f8014528456600260c40051980099baf30783075375400298103d87b8000a50a5141c913233225980098310014528c56600260c200513322598009831983c9baa304b307a375400d13371000400313371200400283b8dd6983d983c1baa003598009830983b9baa30493078375400f10018980d800a0ea8a5041d483a8c1d4dd50009bad30793076375400860f060ea6ea800507220e43072375400260ec60ee00660ea60e46ea8004c1d0004c1c0dd5000c888c8cc896600260be005159800982f983a1baa0018a6103d87a80008a6103d879800041c91598009831001456600260c460e86ea80062980103d87a80008a6103d87b800041c913322598009830800c530103d87b80008acc004c180006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041d483a8dd6983d183b9baa0038a6103d879800041d083a0dd6983c183a9baa00330743754002839107218391baa0013002003300100348896600260b80071325330713372c921215b7665726966795f6e6f6e63655d204c6f6f6b696e6720666f72206f7265663a200037326607600291010015330713372c9201215b7665726966795f6e6f6e63655d204e756d626572206f6620696e707574733a20003732660766ea0c018dd6183b18399baa05f48900133008375860ec60e66ea817c94cc1c8cdcb24811f5b7665726966795f6e6f6e63655d20436865636b696e6720696e7075743a200037326607860ee60e86ea80052201001325330733372c9201185b7665726966795f6e6f6e63655d204d6174636865733a200037326607b3001001a60103d87a8000a60103d879800041c891010010013375e60ee60e86ea8004008c1d4c1c8dd5002456600260b600713322598009802000c528c566002600800514a1159800cc004cdd7cc004c1dcc1d0dd50014c1dcc1d0dd5000c8c8c96600260c060ec6ea8c1e8c1ec00a2003132598009830800c4c030cc1e8dd4180d9bad307b3078375400497ae08acc004c1880062005100241d483a8c1d8dd5000a0e83079001307537540028019300103d87b8000a50a5141c51980099baf98009822983a1baa0029822983a1baa001919192cc004c180c1d8dd5183d183d80144006264b30013061001898061983d1ba8304c375a60f660f06ea80092f5c11598009831000c400a200483a9075183b1baa00141d060f200260ea6ea8005003260103d8798000a50a5141c514a0838907120e2307530723754008601260e46ea817a294106f20de181f98371baa009300300319198008009bac3038306937540b044b30010018a5eb822660d86e9cc8c8cc1b8c1bc008cc1b8c0ecc1b0dd5000998371ba9980091838183898389838800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004835906b1b8d001981f198372610b4a5369676e617475726531003306e306f306c375460de60d86ea8004cc1b93010140003306e303d306c37540b697ae048894cc1b4cdcb249165369675374727563747572652e636f6e746578743a200037326606e60e460de6ea8005220100153306d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e608060de6ea8005220100153306d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607c60de6ea8005220100153306d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e600660de6ea800522010013253306e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b88370dc68009bae3072306f375400266e28c008dd7182018379baa0013371460046eb8c0f8c1bcdd500098011bae3003306f37540024bd70183718378009bac306d00133002002306e00141ad22259800982a98351baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130700018acc004cdc4a400860de0030068992cc004c1d4012264b3001305c0018acc004c1c8dd50034026010839a2b3001305b0018992cc00400601313259800800c02a01500a8992cc004c1e400e01900b41d86eb400601483c8c1d800507418391baa0068acc004c17c0062b30013072375400d00980420e680420de41bc8378c1c0dd5002c01d072182c9837800a0da80320e23754003005802c01600a83a0c1c400506f1838801400e007003801a0e4306f00141b460d66ea800e002834122259800982a98351baa0068992cc0040060c113259800800c4c9660020030628992cc0040062b30013073002899912cc004c16c006264b300100183344c966002003067833c4c96600260f000713305b0012259800801401e264b30010018cc0040062600460f600706b403d06b835c1ae0d683e0c1e400907741a10751bac001833c19d078183a800a0e63071375400b159800982d000c4c9660020030668992cc0040060cf0678992cc004c1e000e2660b600244b3001002803c4c96600200319800800c4c008c1ec00e0d6807a0d706b835c1ad07c183c80120ee83420ea3758003067833a0f0307500141cc60e26ea80162b3001305e0018992cc0040060cd13259800800c19e0cf0678992cc004c1e000e00b06841d46eb40060ce83c0c1d400507318389baa0058acc004c0d8006264b300100183344c966002003067833c19e264b30013078003802c1a10751bad001833a0f0307500141cc60e26ea80160ca837106e20dc41b8264b3001305a0018992cc0040060cb13259800800c56600260ec005159800982e18389baa0018992cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c4c96600260f800700f83620f2375a00306b41f060f200283b8dd7000983c00120f2307600141d060e46ea80060cc837a0cc839a0cd0668334199077183a000a0e430703754005159800982c800c4c9660020030658992cc0040062b300130760028acc004c170c1c4dd5000c4c9660020030678992cc004006264b3001001834c4c966002003159800983d00146600200719800800c0360d480620d480620d483ba0d506a83541a907b183c000a0ec307800283441a20d106841e460ec00283a0c1c8dd5000c19906f4199073419a0cd06683320ee307400141c860e06ea800a2b3001305d0018992cc0040060cb13259800800c19a0cd06683344c96600260ee00700a833a0e8375c00283b8c1d000507218381baa00283220da41b48368c1b8dd500098371baa003831a0e0831c18e0c706341d060e20028378c1c400a0c3061830c1850721837800a0da306b375400d05f41a022259800982a18349baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130720028992cc004c164c1b8dd500244c9660020030078992cc004006264b3001001804c4c966002003159800983b80146600200713259800982f000c4c96600200300c8992cc0040062b3001307a0028992cc004c184006264b3001001807c4c966002003159800983e80146600200300b808202680820f4808404202101041f860f600283c8c1dcdd5001456600260c000313259800800c03e264b300100180840420211332259800800c04a264b3001001809c04e0271332259800800c056264b300100180b405a02d13259800984200801c04a02e840808dd6800c05908401184080800a0fe375a00261000200501342040460fc00283e0dd6800983e801404107e183d800a0f23077375400500e41d083a0c1d4dd5000c035077403601b00d806a0f6307800141d860e86ea800a2b3001305d0018acc004c1d0dd5001401a01683aa016838907118391baa001805201a80520e8805402a01500a41e060ea0028398c1d400a01100880440210761839800a0e2306f375400900641b0264b300130590018acc004c1bcdd5001401e00c83822b300130580018992cc00400600f13259800800c02201100880444c96600260ec00700a804a0e6375c00283b0c1cc00507118379baa0028acc004c170006264b3001001803c4c96600260ea00500980420e4307300141c460de6ea800a00c836106c20d8306d375400300541bd005802c01600a8398c1c000506e1838001400e007003801a0e2306e00141b060d46ea800e0028338888c96600260a800313259800800c00e264b300100180240120090048992cc004c1c400e00d00541b86eb80050711837000a0d8306a37540091598009829800c4c9660020030038992cc0040060090048024012264b30013071003803401506e1bae00141c460dc0028360c1a8dd5002400906720ce3068375400705a82d416a0b48358c1a0c194dd5000c54cc18d24014565787065637420536f6d65287369676e65645f7061796c6f61645f6461746129203d2063626f722e646573657269616c6973652872656465656d65722e7061796c6f6164290016418860026eb8c0d4c190dd50299192cc004c13c006298103d87a80008992cc006600260a06eb4c1980069429450634530103d87a80008981c198341832800a5eb810634c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d06548896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b810010034195001400c8310dc680098008009119800911191919bb032374e660d660d0002660d660d200297ae03376060ce00460ce00260d0003300100691000c012007375a60ce0028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130510018cc004012007002918051ba800140351598009828000c6600200900399b80002480fe460146ea0c0f0c0f800500d456600266e1c00920be0189919800800918059ba9001223300648008966002601c00313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014419d19800802400e66e00009207f918051ba9001401c832106420c88acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300d3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180719ba5003001404080810672cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014198833100d4566002605600315980099b87002482f80a33001004801ccc01801888006460146e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300b374e002806900d20c88acc004c0a80062b30013370e004907f0144c8c8cc0040048c030dd30009119803a40044b3001300f0018980125eb7bdb18224646530010069180319838801000cdd69837001200c323376060e200260e260e40026eb0c1b000660020130089807800a00a41a06600c00c4400519800802400e66e0000920bf02919194c0040060072300d374c00280088896600266e24009200089800a5eb7bdb18224646530010069821802c8c014cc1c80080066eb4c1bc0090061919bb0307200130723073001375860da003300100a804c00500520d23300700722002403483222497bdb181014000010120004190832106420c8337060029020111119198008008011119803240044b3001300a0018980125eb8224646530010069180319836001000cdd69834801200c30670019800804401e6014002803106311114c00401200700291980200091801800a012413505b1bae001417860b600282c8dd7000982d005a0b6305800a415904841586eb8005059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500240fd04940fd00e40fd00e40fd00e40fd00e40fd04d1bac00181f40f90501826800a096304d00281e40f207903c413860960028248c12c00a07503a81d40e904c1824800a08e304900281c40e20710384128608e0028228c11c00a06d03681b40d90481822800a086304500281a40d2069034411860860028208c0fcdd5002c0c903c111194c004006009003400444464b3001302f0018992cc00400600d13259800800c01e00f007803c4c96600260980070058042092375c0028260c12400504718229baa0038acc004c0b8006264b300100180344c966002003007803c4c966002609800713302f0012259800801401e264b30010018cc00402a00313002304f003402900b805c02e0168280c13400904b40210491bac001803c01d04c1824800a08e304537540071598009819000c4c9660020030068992cc00400600f0078992cc004c13000e26605e00244b3001002803c4c96600200319800805400626004609e006805201700b805c02d0501826801209680420923758003007803a0983049001411c608a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009827801c4cc0c8004896600200500a8992cc0040063300100d800c4c008c14800d00d403a01d00e80720a63050002413900b41306eb000601500a413c60980028250dd68009825801401d04c1824800a08e304537540071598009804800c4c9660020030068992cc00400600f007803c4c96600260980070058042092375a003007413060920028238c114dd5001c566002601000313259800800c01a264b3001001803c01e00f132598009826001c0160108248dd6800c01d04c1824800a08e3045375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009826001c0160108248dd7000a0983049001411c608a6ea800e00a821104220844108821104220843043375400481740ba05d02e4100601660746ea8c94cc0e4cdcb24812467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea40dd220100132598009813181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a200037326600a002910100132598009815981e9baa0018992cc0040062b30013029303e375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098240014401a0728228c1180050441bae0013045002411860860028208c0fcdd5000c0d103c40d206903481a20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec6018607a6ea8c038c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46600400206e6eb0c02cc0e8dd50131800800911980200111980598031bab300c303b3754601860766ea8004008888c9660020071323233223300b0023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420805980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d103a1bac303d002375a60760026466ec0dd4181d8009ba7303c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6080003337149101023a200098008054c10400600a805100a182180144ca6002015304000199b8a489023a200098008054c104006600e66008008004805100a182180120823043001410066e29220102207d0000340f46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039011207a3758007133007375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40fc66e2ccdc0000acc004cdc4000a402914818229037207e004401866e0c00520203370c002901019b8e00400240f06eb800d0401b8a4881022c200018048049802802a264b300100180e4072264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0cc00a2b30013019302e375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc00400604f027813c09e264b3001303a0038acc004c080c0d4dd500344c9660020030298992cc00400605502a81540aa26644b300100181644c96600200302d816c0b605b132598009820001c660020151301430400158172048817207a375c0028200c0f400503b1bae001303c00240f4607400281c0c0d8dd500340a103340a10371bae00140e8606e00281a8c0dc00a04b025812c095038181a800a0663035002811c08e04702340d860660028188c0bcdd5000c08502c40850304086043021810a068303100140bc6eb8004c0c00090311817000a058375800301c80e205e302c00240a91323259800800c06e03701b899912cc00400603b01d80ec4c8c018c0c001cdd6800c0750301bad001302900280da05c3027001302a00240a101740986eac00602d01680b20523026001409060446ea801e02880fa0288118dd6000c04e0268130c08c0050211bae0013022002408c604000280f0c08000a01d00e8074039021180f000a038301a375401300c405c44464b300130060018992cc00400600713259800800c01200900480244c9660026046007006802a040375c0028118c08000501e180e1baa0048acc004c0140062b3001301c3754009003801203a8012032406460346ea800c88c8cc00400400c88cc00c004c008008dc3a40006e1d20028044022011008406c6030602a6ea800e2c80906028002601e6ea8056293454cc0352411856616c696461746f722072657475726e65642066616c7365001365640301" : "592497010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a40052232330010010032233003001300200248888c9660026008601c6ea802626464646644b300130180038992cc004c028c050dd5000c4c96600260340031330093756603200244b3001002899805803112cc00400a330012259800800c52f5c113301e301b301f0013300200230200014075374a900048c078c07c00644646600200200644b30010018a508acc004cdc79bae30210010038a518998010011811000a038407d2301e301f301f0019b874801a6e1d20089b8748029222222223322332232332259800980f18141baa00289919191919194c004dd61819000cc0c8016606400930320039819001244444b30013038006899806181b8058998060020998060018998060010acc004c0a4c0ccdd5000c4c8c8ca60026eb8c0e80066eb8c0e800e6eb8c0e800922259800981f00244c8cc896600260820071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc7244103020408003370000490189180119bca4a2003124bded8c10140000101200040fc81f903f4dc024003370e907f01cdc02400522337600046ea00066e052000488888a600244444653001001801c0090011112cc004cdc480124001130014bd70448c8ca600200d30100059180299828801000cdd69827001200c304c0019800804c022002803904948888c8cc00400400888cc01920022598009805800c4c0092f5c1123232980080348c018cc1400080066eb4c1340090061825800cc00402200f300b0014018824244453001004801c00a4660080024600600280512223232323259800981f98249baa00189919914c00489660026088609c6ea800a26464646644b30013058003899804982b802899823001003459055182a8009bad305500230550013054001304f37540051641351980099198008009bac3030304e375409044b30010018a5eb822660a26e9cc8c8cc14cc150008cc14cc0ccc144dd5000998299ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002414c8298dc68009bae30563053375400266e28c008dd7181b98299baa0013371460046eb8c0d4c14cdd500098011bae305630573057305730533754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241448288dc6800981b19829a610b4a5369676e617475726531003305330543051375460a860a26ea8004cc14d3010140003305330353051375409697ae04bd701829982a0009bac30520013300200230530014141230513052305230523052305230523052001911919800800801912cc00400629422b3001300330540018a51899801001182a800a09e4149374a900124444b300132980098289baa001919191919912cc004c13400a29422b300130500028cc004cdd7982d982c1baa0014c103d87b8000a50a51415913233225980098280014528c566002609e00513322598009828982e1baa3041305d375400d13371000400313371200400282d8dd6982f182d9baa003598009827982d1baa303f305b375400f10018980d800a0b28a50416482c8c160dd50009bad305c3059375400860b660b06ea800505620ac3055375400260b260b400660b060aa6ea8004c15c004c14cdd5000c888c8cc8966002609a0051598009826982b9baa0018a6103d87a80008a6103d879800041591598009828001456600260a060ae6ea80062980103d87a80008a6103d87b8000415913322598009827800c530103d87b80008acc004c138006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000416482c8dd6982e982d1baa0038a6103d8798000416082c0dd6982d982c1baa0033057375400282b1056182a9baa00130020033001003488966002609400713233007375860b260ac6ea81348cdd7982d182b9baa0010023058305537540091598009824801c4cc8966002600800314a315980098020014528456600330013375f3001305a30573754005305a3057375400323232598009827182c9baa305d305e0028800c4c966002609e0031300b3305d375060366eb4c178c16cdd500125eb822b3001305000188014400905920b23059375400282c0c170004c160dd5000a0064c0103d87b8000a50a5141551980099baf9800981d982b9baa002981d982b9baa001919192cc004c138c164dd5182e982f00144006264b3001304f001898059982e9ba8301d375a60bc60b66ea80092f5c11598009828000c400a200482c9059182c9baa001416060b800260b06ea8005003260103d8798000a50a51415514a082a905520aa305830553754008600e60aa6ea8132294105320a6181a98289baa0058cc004c150c144dd5002c88c8cc00400400c896600200314800226644b300130050028980b800c4005055182c00099801001182c800a0ac911919800800801912cc00400629422b30013375e00660a860b000314a31330020023059001414c82b244646600200200644b30010018a518acc004c00cc16000626600400460b200314a0829905648c154c158c158c158c158c158c158c158c158006460aa60ac60ac60ac60ac60ac60ac0032259800982418291baa002899192cc004c16400a0071641586eb4c15c004c14cdd500145905148c154c158c158c158c1580064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320ae899802802982e80220ae375c60ac0026eacc15c004c1640050570a5eb7bdb18244b30010018a400113013330020023057001415123055305630563056305630560019112cc00400a2980103d87a80008acc004c12400626072660ac60ae00497ae08cc00400e60b00053016001400c829105548966002003148002260266600400460ae00282a244b30010018a5eb82264660ac6ea0004cc00c00cc8cc004004c16400c896600200314bd7044cc896600330013370e00400b4a14a282b22660b46ea0008cc01001000626600800800282b0dd6982c800982d000a0ae375a60ac00282a2444646600200200844b300100189982c19bb037520086ea000d2f5bded8c113298009bae30560019bad3057001982d8012444b30013372001000713305c337606ea4020dd4003802c56600266e3c02000e2660b866ec0dd48041ba800700189982e19bb037520066ea0008cc01801800505820b0182c800a0ae911919800800801912cc004006297ae0899912cc004cdd7982d182b9baa305a30573754607660ae6ea8008c01ccc164dd4802a5eb822660b200466008008003133004004001415460b000260b200282b244b30010018a40011301333002002305700141512259800800c520008980999801001182b800a0a89b8848001222222222222222222298009111191980080080291192cc004c18000626609c00c6eb8c1b8c1acdd5001456600260be003133017375860dc60d66ea80088cc0100100062b3001306300189980e1bac306e306b37540044660080080031598009826000c4c8cdc49bad306f0013301a375860de60e000246600a00a00260d66ea800a2b3001304b00189919912cc004c188c1b4dd5001456600260c460da6ea8c1c4c1c800e266e24dd6983898371baa002001899b88375a60e260dc6ea800800506c452820d8306f001375a60de60d86ea800cc1acdd5182798359baa0058acc004c1280062646644b30013062306d3754005159800983118369baa30713072003899b89001375a60e260dc6ea800a266e20004dd6983898371baa00241b114a08360c1bc004dd6983798361baa003306b375460dc60d66ea80162660300086036660da60dc60d66ea80092f5c0834906920d241a4834906918349baa00198050054c18cdd5009c8888c8cc00400401488c96600260c00031323259800983118361baa001899194c004dd718390014dd718391839800cdd71839000ae5460e40026eb0c1c0c1b4dd5000c52820d632330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60e40020091305433071374e00297ae0899801801983980120da375860e20028378dd7183718359baa0028acc004c17c00626602e6eb0c1b8c1acdd5001119802002000c56600260c600313301c375860dc60d66ea80088cc0100100062b3001304c00189919b89375a60de002660346eb0c1bcc1c00048cc014014004c1acdd500145660026096003132332259800983118369baa0028acc004c188c1b4dd518389839001c4cdc49bad3071306e37540040031337106eb4c1c4c1b8dd5001000a0d88a5041b060de0026eb4c1bcc1b0dd500198359baa304f306b375400b1598009825000c4c8cc896600260c460da6ea800a2b30013062306d375460e260e40071337120026eb4c1c4c1b8dd500144cdc40009bad3071306e37540048362294106c18378009bad306f306c375400660d66ea8c1b8c1acdd5002c4cc060010c06ccc1b4c1b8c1acdd500125eb8106920d241a4834906920d23069375400330080089803803cc01801a6006007222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906b44cc014014c1c401106b1bae306a001375a60d600260da0028358cc03c01000c520009801001244444444446530012225980099b87300d0023009300832330010010032259800800c52f5c11330763073307700133002002307800141d5132330010010032259800800c52f5c30100008101a0008101a00044c8c8c8cc896600260dc60f06ea800a264b3001300900189983e1ba8337006eb4c1f4008dd6982f183d1baa0013307c374c64b3001306f307a37540031375660be0071375660fc60f66ea8005079192cc004c1bcc1e8dd5000c530103d87a8000898301983e9ba698009bab305f0039bae307e307b3754003005407097ae041e460b860f46ea8004cc1f0dd34c004dd5982e0014dd9983e983f002c01101b25eb822c83c0c1f0c1e4dd50014590771980480400099802802983d8021bad30790013307730740013307730750014bd70183b800a0ea8b20e091112cc004cdc398040021804001c4cc07c0108c96600260d460e86ea8006264b3001306b3075375400313322598009838183b9baa001899192cc004c1bcc1e4dd500144c8c8c8ca60026102020033081010039840808012444b300130850100489982c98420080389981b0010992cc004c1dc00626464b3001308801002805c59085011bad3086010013082013754005159800983b000c4c8c96600261100200500b8b210a02375a610c020026104026ea800a2c840009080011840009baa0018b210402184080800984000800983f800983d1baa0028b20f015980099baf305d3079375400260f860f26ea800e2b3001337126eb4c174c1e4dd5001cc004dd5982e983c9baa305d3079375400d375c60f800f375c60ba00e806a264b3001306f3079375400313370e6eb4c1f4c1e8dd50009bad305e307a375400913370e6eb4c1f4c1e8dd50009bad305e307a375400883c0c16cc1e4dd5000c59077459077183d983c1baa0018b20ec30793076375400260b060ec6ea8c168c1d8dd5001c59074198038029bad3078307537540031641cc6644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130603307d375000297ae080320f2899802802983f80220f2375c60f00026eb4c1e4004c1ec0050791bb3307730743754002298103d87a80008b20e291112cc004cdc398030011804001c4ca60020034800200880088896600200314a313322598009836983b9baa0018992cc004c1b8c1e0dd5000c4c96600260de60f26ea8006264b30013375e60fc60f66ea8004c1f8c1ecdd5183f183d9baa0058acc004cdd7982e983d9baa001305f307b375460fc60f66ea80162b300198008044c0ec01e60fe00c8042266e1e60026eacc17cc1ecdd5000cdd7183f004cdd7182f804a01e325980099b880014800226074003100141e86eb4c17cc1ecdd5002c52820f28b20f28b20f2307d307a37540031641e0660160146eb4c1f0c1e4dd5000c5907718181bae307b307837540031641d860f2002646600200200c44b30010018a60103d87a80008992cc004cdc38029bad30790018982f1983d983c000a5eb8226600600660fa00483b8c1ec00507920ee8b20e29111919912cc004cdc39bad30780010028992cc004cc896600200314a11329800992cc004c1bcc1e4dd5000c4dd6983d183e9bab307d307a3754003148001078183e000cdd7983e183e800cdd58012444b30010018acc004c008016266e2520000038a5041e91325980099baf307c0014c010140008acc004cdc49bad307d308001375660fa00200913003374c61020200514a083da2b300133712900000244c00c01a294107b20f6307f00141f4329800800c00e44660fa004660fa6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1ec0066eacc1f00066100020069112cc004cdc8a441000038acc004cdc7a44100003899802983219840809ba60024bd70000c4cc015300103d87a800000641f519800803c006446600e004661060266ec0dd48029ba6004001401c83e860fc00483e229422942294107d1bab305a002374c660f066ec0c1e4004dd31983c19bb03079307a001375066e0400c0152f5bded8c097adef6c608801c590741bac301a3075375400d1641ccb30013068300e0018a4001159800983b800c4c96600266e3cdd71839800a44104555344720089bad30740018b20e430760018b20e841c46464b3001306a307437540031325980099baf30793076375460f260ec6ea8c168c1d8dd500098131983c1ba90034bd7044c96600260de60ec6ea800626466042002264b3001306e307837540031325980099baf307d307a375460fa60f46ea8004c0a8cc1f0dd4803a5eb82264b30013073307a37540031323302500113307e375066e04dd6983f983e1baa001375a60fe60f86ea8014cc1f8dd3194c0040066eacc184c1f4dd50024c8cc004004dd59831183f1baa3062307e375401244b30010018a5eb7bdb182264661040266ec0c1fc004dd319198008009bab3081010022259800800c52f5bded8c11323308501337606104020026ea0c104dd698418080099801801984380801184280800a1060233003003308401002308201001420004800888966002005100189919914c00401a610c0200b32330010010052259800800c4cc21804cdd81ba9004374c00697adef6c608994c004dd7184200800cdd5984280800cc224040092225980099b900080038998450099bb037520106e9801c0162b30013371e01000713259800acc0040062946294108a014400a2661160266ec0dd48049ba6001002421c04653001001804400d0011112cc00400a2003132332298008034c24804016646600200200a44b30010018998490099bb037520086ea000d2f5bded8c113298009bae3090010019bad309101001984a808012444b30013372001000713309601337606ea4020dd4003802c56600266e3c02000e264b3001308a01001880144cc25c04cdd81ba90093750002004849808cdc000380144cc25804cdd81ba900337500046600c00c002849009092010c24c0400509101200c375c6116020026eb4c23004004c2380400908c0144cc22804cdd81ba9003374c0046600c00c002843009086010c21c0400508501200c375c60fe0026eacc20004004c208040090800125eb80c1f8c1ecdd5000c59079182e183d1baa0018b20f0307c307937540031641dc660a66eb0c168c1e0dd500411982e182a9bab305d3079375400200c60f460ee6ea80062c83a8c160c1d8dd5182d183b1baa0018b20e830783075375400314bd7090100008101a00020e63304e375860ee60e86ea8010004dd7183b18399baa301b30733754008660326eacc068c1c8dd50011bae305630723754603460e46ea800d2222598009834006c4c966003300130773074375409b0279813183a1baa06b9bab301e307437540d6806a26464b300198009980b1bac3079307637540da6eb8c160c1d8dd5180f183b1baa04f801cdd5983c800cdd6180d983b1baa04f4019159800cc004dd6182c183b1baa06d801cdd5983c983d000ccc1e0c168c1d8dd5180f183b1baa04f330784c1054455534472004bd70200a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba460246eb4c164c1d4dd5000a00a8b20e4375860ec60e66ea808a2b3001306700d8992cc006600260b060e86ea813604f3026307437540d73756603c60e86ea81ad00d44c8c966003300133016375860f260ec6ea81b4dd7182c183b1baa301e3076375409f0039bab30790019983c182d183b1baa301e3076375409e660f0981054455534472004bd70200c8acc00660026eb0c160c1d8dd5036c00e6eacc1e4c1e80066eb0c06cc1d8dd5027a00a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba466e20dd6982c983a9baa001480010054590721bac3076307337540451598009835806c4c966003300130563074375409b3758603e60e86ea81ae604c60e86ea81ae6eacc078c1d0dd5035a0208acc004c044006260d3300104d835c0050024590724590721bad30763073375404513259800cc004c158c1d0dd5026cdd6180f983a1baa06b9813183a1baa06b9bab301e307437540d680822b3001301100189834cc0041360d7337040029000a0048b20e48b20e4375a60ec60e66ea808907120e241c4225980099b8800148002298103d87a8000899804001000a0dc22c82792259800982218271baa00289919192cc004c15800a26464b300130490018acc004c150dd5001401a2c82aa2b30013048001899192cc004c16800a01116415c6eb4c160004c150dd500145660026098003159800982a1baa00280345905545905220a4414860a46ea8004c15400e2c8298c96600260a400315980099b8948010c1440062d130463051001414116414c6ea8c150004c150004c13cdd500145904d2444b30013045304f3754009132323259800982b80144c8cc8966002609600513259800982d800c4cc128dd6182d000912cc00400a00913300c305c00213001305d002416916416060ac6ea800e2b3001304a0028992cc004c16c0062660946eb0c1680048966002005004899806182e00109800982e80120b48b20b030563754007159800982700144c8c96600260b80050038b20b2375a60b400260ac6ea800e2b30013037002899192cc004c17000a0071641646eb4c168004c158dd5001c5905420a8415082a0c14cdd50008992cc004c128006264b3001305a0018992cc004c130c158dd5000c4c8c8cc896600260be00700d8b20b8375a60b80026eb8c170008c170004c15cdd5000c59055182c800c59057182a9baa0038acc004c124006264b3001305a0018992cc004c130c158dd5000c4c8c8c96600260bc00513300b305d00313300b00100c8b20b6305c001305c0013057375400316415460b200316415c60aa6ea800e2b3001304d001899192cc004c16c00a0131641606eb8c164004c154dd5001c5905320a6414c60a66ea8008c15800e2c82a0c154004c154004c140dd500245904e08966002608460986ea800a2646464b30013054002899912cc004c11cc144dd500144c8c8c96600260b200513300b3058003132598009825800c4c96600260b600313232598009827000c4c96600260bc003133010305d0010098b20b6305937540051598009826800c4c8c8ca60026eb4c17c0066eb4c17c00e6eb4c17c009222598009831802403a2c830060be00260bc00260b26ea800a2c82b9057182b9baa001305a0018b20b0305637540051598009825000c56600260ac6ea800a00b16415d16415082a0c150dd5000c59056182b800982b80098291baa0028b20a03053003132598009823000c56600260a26ea800a00b1641491598009822800c4c8c96600260ae0050078b20a8375c60aa00260a26ea800a2b30013049001899192cc004c15c00a00f16415060aa00260a26ea800a2c827904f209e304f375400316414460a400260a4002609a6ea800a2c8258c138c12cdd500111192cc004c10800626464b300130530028024590501bae3051001304d37540071598009820800c4c8c96600260a60050048b20a0375c60a2002609a6ea800e2c825904b18259baa0028b20903001375c605a60926ea810c8c966002607e00314c103d87a80008992cc006600260806eb4c12c0069429450494530103d87a800089818198269825000a5eb810494c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d04b48896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b81001003412d001400c8240dc680098008009119800911191919bb032374e660a0609a002660a0609c00297ae03376060980046098002609a003300100691000c012007375a60980028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130410018cc004012007002918061ba8001403d1598009820000c6600200900399b80002480fe460186ea0c03cc02c00500f456600266e1c00920be0189919800800918069ba9001223300648008966002602000313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014413519800802400e66e00009207f918061ba9001401c825104a20948acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300f3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180819ba50030014034809104d2cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014130826100f4566002605800315980099b87002482f80a33001004801ccc01801888006460186e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300d374e002805100f20948acc004c0ac0062b30013370e004907f0144c8c8cc0040048c038dd30009119803a40044b300130110018980125eb7bdb1822464653001006918031982b001000cdd69829801200c323376060ac00260ac60ae0026eb0c14400660020130089808800a00a41386600c00c4400519800802400e66e0000920bf02919194c0040060072300f374c00280088896600266e24009200089800a5eb7bdb1822464653001006980b002c8c014cc15c0080066eb4c1500090061919bb0305700130573058001375860a4003300100a804c005005209e3300700722002403c82522497bdb181014000010120004128825104a209433706002902011640f86eb8c0f8004dd7181f006181f005c5903b0c0e8004c0e4004c0d0dd5000c590324590350c0c8004c0c4004c0c0004c0bc004c0b8004c0a4dd5001459027180598139baa3259800980e98139baa0018992cc004c084c0a0dd5000c4c966002603e60526ea8006264646644b300130320038802c5902f18178009bae302f002302f001302a37540031640a0605860526ea80062c8138c028c0a0dd5180618141baa302b30283754003164098660026eb0c02cc09cdd500f0121802002111980180111980618029bab300d30293754601a60526ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c0100062601c6605600297ae08998018019816801204e302b00140a4601001044464b3001301b001899192cc004c0b000a0091640a46eb8c0a8004c098dd5001c5660026034003132598009815800c4cc068dd61815000912cc00400a00b19800803cc0b000a26002605a004803902a45902818131baa0038acc004c078006264b3001302b00189980d1bac302a0012259800801401633001007981600144c004c0b400900720548b2050302637540071598009803800c4c8cc8966002605a00313301c3758605800244b3001002803c66002013302e002898009817801201240b11640a86eb4c0a8004c0ac004c098dd5001c566002600c0031323259800981600140122c8148dd6981500098131baa0038acc004c01400626464b3001302c0028024590291bad302a0013026375400715980099b874803000626464b3001302c0028024590291bae302a00130263754007164090812102420484090812102418121baa00244c8cc89660026042003132598009809980e9baa0018991919192cc004c09800a264b3001301830223754003132323322598009815801c4cc064c0a80204c038c0ac03e2c8140dd718140009bae3028002302800130233754003164084604a00916408c6eb8c090004c090004c08c004c078dd5000c5901c1810000c5901e1bae301e001301f0013758603a00480da26466446008603e00a6eb4c060004dd6980c800980d80120328b202e3015375400316404c602e00b1640546eb0c054004dd7180a801180a800980a00098079baa0098b201a2232598009803000c4c8c966002602e0050048b2028375c602a00260226ea800e2b300130050018acc004c044dd5001c00a2c80922c807900f18079baa0024590080c024004c010dd5005452689b2b200401", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class V0_3ProtocolProtocolElse { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "5948aa010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013a657870656374206d61746368696e675f6f75747075745f6964783a20496e74203d206d61746368696e675f6f75747075745f6964785f6461746100168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a494c657870656374207369676e65645f7061796c6f61643a205369676e65645061796c6f61643c50726f746f636f6c52656465656d65723e203d207369676e65645f7061796c6f61645f6461746100168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888966002646530013014001980a180a800cdc3a400930140024888966002600460286ea800e264b30010058999119912cc004c010c064dd5004c4c96600200300d8992cc004006264b3001001807c4c96600200301080840420211332259800800c04a264b3001001809c04e264b300130260038acc004c030c084dd5003c4c9660020030158992cc00400602d132598009814801c4cc030004896600200513300e0062259800801466002444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c814a6e05200091111919800800802912cc004006200b13259800800c4cc010c0cc00801a26600a6066004660060060028188c0cc0050304dc0240032259800800c52f5c113302d302a302e00133002002302f00140b1374a900048c0b4c0b800644646600200200644b30010018a508acc004cdc79bae30300010038a518998010011818800a05440b92302d302e302e0014888888888cc8a600244646600200200644b30013022001899b8a4890130000038acc004cdc4000a40011337149101012d0033002002300e00189980319b8400148050cdc599b803370a002900a240c000681a903548c00800644646600200200644b30010018a6103d87a80008992cc004c010006260166607600297ae0899801801981e801206c303b00140e4911191991192cc00400633001370e90034dc3a4011370e9005244464b30013029303e375400b13259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c0fa07d132598009828001c6600201919800805466002011198008034566002606c60966ea8012264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4c96600260b20071598008054122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260bc0071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc724503020408003370000490189180119bca4a2003124bded8c101400001012000416c82d905b488888ca600200300380120022225980099b89002480022600297ae08919194c00401a607200b23005330680020019bad3065002401860c60033001009804400500720be9b87483f80e6e0120029119bb00023750002911111991191919192cc004c13cc190dd5000c4c9660020031323298009112cc004c154c1a8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800983b00146600200d19800800c02601082d2010805a010839a0110088044021077183a000a0e4375a00260e600500541d060e20028378c1c400a007003801c00d0721837800a0da306b375400700141a11325330673372c9211c5b70726f746f636f6c5d20566572696679696e67206e6f6e63653a2000373266062607460d26ea801122010019800918369837183718371837183718371837000c89660020031480022601c6600400460de002836244646600200200644b30010018a508acc004c00cc1c0006294626600400460e2002835106e4dd2a40049111191929983699b964901205b70726f746f636f6c5d207665726966795f6e6f6e636520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041b0910100159800800c6600260e460de6ea802a44646600200200644b30010018a40011332259800980280144c06000620028390c1d8004cc008008c1dc005074488c8cc00400400c896600200314a115980099baf003307230760018a51899801001183b800a0e041d12232330010010032259800800c528c566002600660ec00313300200230770018a5041c083a2460e660e860e860e860e860e860e860e860e8003230733074307430743074307430740019112cc004c170c1c4dd5001c4c9660020030028992cc004006007003801c4c96600260f200700580220ec375a00300341e460ec00283a0c1c8dd5001c00506f48c1ccc1d0c1d0c1d0c1d00064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e8899802802983d80220e8375c60e80026eacc1d4004c1dc0050750a5eb7bdb18244b30010018a40011301433002002307500141c923073307430743074307430740019112cc00400a298103d87a80008acc004c17000626088660e860ea00497ae08cc00400e60ec0053046001400c837907348966002003148002260286600400460ea002839244b30010018a5eb82264660e86ea0004cc00c00cc8cc004004c1dc00c896600200314bd7044cc896600330013370e00400b4a14a2839a2660f06ea0008cc0100100062660080080028398dd6983b800983c000a0ea375a60e80028392444646600200200844b300100189983b19bb037520086ea000d2f5bded8c113298009bae30740019bad3075001983c8012444b30013372001000713307a337606ea4020dd4003802c56600266e3c02000e2660f466ec0dd48041ba800700189983d19bb037520066ea0008cc01801800507520ea183b800a0ea911919800800801912cc004006297ae0899912cc004cdd7983c183a9baa307830753754608c60ea6ea8008c024cc1dcdd4802a5eb822660ee0046600800800313300400400141c860ec00260ee00283a244b30010018a40011301433002002307500141c93710900024444444444444444453001222232330010010052232598009839000c4cc160018dd71845809844009baa0028acc004c1c400626602c6eb0c22c04c22004dd5001119802002000c56600260ea00313301d37586116026110026ea80088cc0100100062b3001304d00189919b89375a611802002660326eb0c23004c234040048cc014014004c22004dd500145660026098003132332259800983a1845009baa0028acc004c1d0c22804dd5184700984780801c4cdc49bad308e01308b0137540040031337106eb4c23804c22c04dd5001000a110028a504220046118020026eb4c23004c22404dd50019844009baa3059308801375400b1598009825800c4c8cc896600260e86114026ea800a2b30013074308a013754611c02611e020071337120026eb4c23804c22c04dd500144cdc40009bad308e01308b01375400484400a2941088011846008009bad308c0130890137540066110026ea8c22c04c22004dd5002c4cc05c010c070cc22804c22c04c22004dd500125eb8108501210a0242140484280908501210a02308601375400330090099840009baa0129111191980080080291192cc004c1c8006264a6610e0266e59240121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660a26ea400522010013259800983a1844809baa001899194c004dd7184780800cdd7184780984800800cdd71847808012444a6611a029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308d013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660ae6ea4005220100153308d013372c9201187665726966795f65643235353139207061796c6f61643a20003732660ae6ea4009220100153308d013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660ae6ea400d22010013253308e013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660b13001001a60103d87a8000a60103d879800042340491010010019800800c00a006b950c23c04004dd61846809845009baa0018a998440099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660a46ea400922010014a0843808c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c611e020020091305e3308e01374e00297ae08998018019848008012112023758611c02002846008dd71845809844009baa0028acc004c1c4006264a6610e0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416c6c4f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301700123300500500137586116026110026ea800a2b300130750018992998438099b96490122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416e794f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301e00123300500500137586116026110026ea800a2b3001304d00189919912998448099b96490112436865636b696e672041744c656173743a20003732660a66ea000922010013253308a013372c92011941744c656173742073617469736669656420636f756e743a20003732660a86ea000522010013253308b013372c92011041744c6561737420726573756c743a20003732660ab3001001a60103d87a8000a60103d87980004228049101001001337120060026603600246600e00e0026eb4c23004004dd61846009846808009844009baa0028acc004c130006264a6610e0266e5924111436865636b696e67204265666f72653a20003732660a26ea0005220100132533088013372c92010f4265666f726520726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc49bad308e01308b0137540020071337106eb4c23804c22c04dd5000801a110028a50422004611a020026112026ea8c168c22404dd50031bad308b0130880137540051598009825800c4c94cc21c04cdcb24910436865636b696e672041667465723a20003732660a26ea0005220100132533088013372c92010e416674657220726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc48019bad308e01308b0137540031337100066eb4c23804c22c04dd5000a110028a50422004611a020026112026ea8c23004c22404dd50031bad308b013088013754005132533087013372c920111436865636b696e67205363726970743a20003732660a26ea4005220100132533088013372c92010f53637269707420726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c04910100100133018005301d3308b01375200297ae0375c6116026110026ea800908501210a0242140484280908501210a023086013754003300700798030034c0140164446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803210e02899802802984700802210e02375c610e020026eb4c22004004c2280400508801198070020018a400130020024888888888ca6002444b30013370e60180046010600e646600200200644b30010018a5eb8226612402611e026126020026600400461280200284880a2646600200200644b30010018a5eb8410100008101a0008101a00044c8c8c8cc896600260fe6128026ea800a264b3001300900189984c009ba8337006eb4c26404008dd69833984b009baa0013309801374c64b300130800130960137540031375660d000713756613402612e026ea800509401192cc004c20004c25804dd5000c530103d87a8000898349984c809ba698009bab30680039bae309a013097013754003005406897ae042500460ca612c026ea8004cc26004dd34c004dd598328014dd9984c80984d00802c01101925eb822a66128029211a6578706563742076616c69646174696f6e2872657175657374290016424c04613002612a026ea800a2a661260292012f65787065637420536f6d65287265717565737429203d206c6973742e61742874612c20726571756573745f696478290016424804660120100026600a00a612e020086eb4c25404004cc24c04c24004004cc24c04c244040052f5c061260200284880a2a66118029201886578706563740a202020206c6973742e6c656e67746828726571756573745f746f5f6f75747075747329203d3d206c6973742e6c656e677468280a2020202020206c6973742e756e69717565286c6973742e6d617028726571756573745f746f5f6f7574707574732c20666e286974656d29207b206974656d2e317374207d29292c0a20202020290016422c0522225980099b873022004302200389980e8021192cc004c1ecc24004dd5000c4c96600260f86122026ea800626644b3001308101309301375400313259800800c4c966002610002612a026ea800a264b300100184880c4c96600200313259800800c24c06264b30010018992cc00400612a0313259800800c4c966002003097018992cc004c2880400a330010078cc004016264b30013089010018992cc0040061340313259800800c26c061360309b018992cc004c2980400e01b09c01428c046eb400613602853008c28c040050a101184f809baa0048acc004c22004006264b300100184d00c4c96600200309b0184d80c26c06264b300130a601003806c270050a3011bad00184d80a14c0230a301001428404613e026ea80121320284e00909c01184e809baa00384c00a06e84c00a0c084c00a13e0230a0010014278046140020050960184b00c2580612c02850808c2780400509c01184f00801425006128030940184a00a13e02309c010014268046138020050920184900c248061240284e808c2680400509801184b009baa00284800a1260215980099baf30663095013754002613002612a026ea800e2b3001337126eb4c198c25404dd5001cc004dd59833184a809baa3066309501375400d375c61300200f375c60cc00e806a264b3001308001309501375400313370e6eb4c26404c25804dd50009bad3067309601375400913370e6eb4c26404c25804dd50009bad30673096013754008849808c190c25404dd5000c54cc24c05241666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400164248051533093014913865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001642480508f0184780c23c0611e0284d008c25c04c25004dd5000c54cc248052413365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d0016424404612a026124026ea8004c184c24804dd518319849009baa0038a9984800a4814765787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c206d61746368696e675f726571756573745f696478290016423c046600e00a6eb4c25004c24404dd5000c54cc23c0524016565787065637420536f6d65286d61746368696e675f726571756573745f69647829203d0a2020202020202020646963742e676574286d617070696e672c2063626f722e73657269616c69736528696e7075742e6f75747075745f7265666572656e6365292900164238046644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130693309901375000297ae0803212802899802802984d80802212802375c6128020026eb4c25404004c25c04005095011bb330930130900137540022980103d87a80008a9984680a4933657870656374206c6973742e6c656e67746828696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016423005222253308d0149012d5b76616c69646174655f6f7574707574735d205374617274696e67206f75747075742076616c69646174696f6e0015980099b87300600230220038994c004006900040110011112cc004006294626644a661240266e59241305b76616c69646174655f6f7574707574735d2056616c69646174696e67207265717565737420617420696e6465783a20003732660b86ea001122010013259800983f984a009baa0018992cc004c20004c25404dd5000c4c9660020030920184900c2480626464b300130830130980137540031325980099baf309d01309a013754002613a026134026ea8c27404c26804dd5004456600266ebcc1a4c26804dd50009835984d009baa309d01309a0137540111533098013372c92012d5b76616c69646174655f6f7574707574735d20436865636b696e67206f757470757420617420696e6465783a20003732660c46ea000d2201001533098013372c9201245b76616c69646174655f6f7574707574735d20457870656374656420616d6f756e743a20003732660c460d66134026ea80212201001533098013372c9201225b76616c69646174655f6f7574707574735d2041637475616c20616d6f756e743a20003732660c46ea260026eacc1acc26804dd5000cdd7184e808064dd71835806202448900159800803c4cdc3cc004dd59835984d009baa0019bae309d0100c9bae306b00c404864b300133710002900044c1c4006200284c008dd69835984d009baa0088a50425c0515330980149139657870656374206d61746368696e675f6f75747075742e646174756d203d3d20726571756573742e64657374696e6174696f6e2e646174756d0016425c051533098014913d657870656374206d61746368696e675f6f75747075742e61646472657373203d3d20726571756573742e64657374696e6174696f6e2e616464726573730016425c046138026132026ea80062a6612e0292014465787065637420536f6d65286d61746368696e675f6f757470757429203d206c6973742e6174286f7574707574732c206d61746368696e675f6f75747075745f6964782900164258046601c01a0026eb40061240284e008c26404c25804dd5000c54cc250052415b65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f6461746129203d0a202020202020202063626f722e646573657269616c697365286d61746368696e675f6f75747075745f6964785f6279746573290016424c0460646eb8c26004c25404dd5000c54cc24c0524013e65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f627974657329203d20646963742e66696e64286d617070696e672c2069290016424804646600200201044b30010018a60103d87a80008992cc004cdc38039bad309701001898349984c80984b00800a5eb8226600600661360200484a008c2640400509701184a80800cc00400e606a005309601001400c84980a2a6611a0292013265787065637420646963742e73697a65286d617070696e6729203d3d206c6973742e6c656e6774682872657175657374732900164230052223233225980099b87375a6128020020051325980099912cc004006294226530013259800984000984a809baa00189bad3096013099013756613202612c026ea8006290002126023098010019baf3098013099010019bab0024889660020031598009801002c4cdc4a400000714a084a80a264b30013375e61300200298010140008acc004cdc49bad309901309c01375661320200200913003374c613a0200514a084b00a2b300133712900000244c00c01a294109601212c02309b01001426404329800800c00e44661320200466132026e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c25c040066eacc260040066138020069112cc004cdc8a441000038acc004cdc7a4410000389980298369984e809ba60024bd70000c4cc015300103d87a800000642600519800803c006446600e0046613e0266ec0dd48029ba6004001401c84c00861340200484c00a294229422941099011bab3063002374c661280266ec0c25404004dd31984a0099bb0309501309601001375066e0400c0152f5bded8c097adef6c608801c54cc240052401c56578706563740a202020206173736574732e6d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a20202020290016423c046eb0c060c24404dd5003454cc23c052401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e740016423804b30013079300d0018a4001159800800c21806264b30013094010028acc004cdc79bae308f01001488104555344720089bad3090010018a9984700a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200164234050870142440461240200284800908c0119192cc004c1ecc24004dd5000c4c96600266ebcc25404c24804dd5184a809849009baa30633092013754002604c66128026ea400d2f5c1132598009840009849009baa0018992cc004006330010018992cc004c1fcc25004dd5000c4c96600266ebcc26404c25804dd5184c80984b009baa001302a3309801375200e97ae08992cc004c21004c25804dd5000c4c96600200319800800c4cc26804dd419b81375a6136026130026ea8004dd6984d80984c009baa0053309a01374c6530010019bab306a30990137540093233001001375660d66134026ea8c1acc26804dd5004912cc004006297adef6c608991984f0099bb0309b01001374c64660020026eacc27404008896600200314bd6f7b63044c8cc28404cdd8184f008009ba83075375a613e020026600600661460200461420200284f808cc00c00cc28004008c2780400509c012002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd3001a5eb7bdb1822653001375c614002003375661420200330a50100248896600266e4002000e26614c0266ec0dd48041ba60070058acc004cdc7804001c4c966002b30010018a518a5042980510028998538099bb037520126e980040090a201194c0040060110034004444b30010028800c4c8cc8a600200d30ae010059919800800802912cc00400626615c0266ec0dd48021ba80034bd6f7b63044ca60026eb8c2b0040066eb4c2b4040066162020049112cc004cdc8004001c4cc2c804cdd81ba9008375000e00b15980099b8f0080038992cc004c26c0400620051330b301337606ea4024dd4000801215c023370000e0051330b201337606ea400cdd400119803003000a15a0242b40430af0100142b4048030dd71853808009bad30a80100130aa0100242a0051330a601337606ea400cdd300119803003000a1420242840430a3010014284048030dd7184d808009bab309c01001309e0100242700497ae084880a04684880c244061220309101427404613402612e026ea80062a6612a0292012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642500460ca612c026ea80062a661280292013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016424c04613002612a026ea80062a661260292013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c20736372697074290016424804660bc6eb0c18cc25004dd500411983298301bab3066309501375400200d08c01407d08c0184600c230061180284c808c25804c24c04dd5000c54cc244052413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642400460c26124026ea8c18cc24804dd5000c54cc2400524014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016423c046128026122026ea8006297ae110100008101a000211c023305737586126026120026ea8010004dd71849009847809baa3019308f0137540086602e6eacc060c23804dd50011bae305f308e0137546030611c026ea800d222259800983c80644cc894cc23c052411f5b6d696e745d205374617274696e67206d696e742076616c69646174696f6e00159800cc004c25004c24404dd502bc0a660506122026ea81f66eacc074c24404dd503ea01a8a9984780a49205b6d696e745d207361746973666965645f7061796c6f61647320706173736564001323298009bab3096010019bab3096013097010019bad30960100248894cc25004cdcb24812f5b6d696e745d2070726f636573735f7265717565737473207061737365642c2073756d6d65645f616d6f756e743a20003732660bc6ea0005220100132533095013372c92011b5b6d696e745d206f726465725f696e7075747320636f756e743a20003732660be6ea0c0a8005220100159800cc0040060110049bac301e30970137540ba805a2a6612a0292011d5b6d696e745d2076616c69646174655f696e707574732070617373656400159800cc004dd61833184b809baa08301804400e661320260d0612e026ea8c084c25c04dd502e9984c80a601054455534472004bd7020148a9984a80a4811e5b6d696e745d2076616c69646174655f6f7574707574732070617373656400132533096013372c9201215b6d696e745d206d61696e7461696e5f747265617375727920726573756c743a20003732660c13001001a60103d87a8000a60103d879800042540491010010013370f300105d84180d200040240051533095014901816578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a202020202900164250051533095014917a6578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f726967696e5f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016425004660306eb0c26404c25804dd5041009bae306530960137546040612c026ea8170612c020033001002800c8c048dd698319849009baa0014019153308f014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164238046eb0c24804c23c04dd50101bab309201308f013754612402611e026ea81fa2b3001307800c8992cc006600260c26120026ea815a051302730900137540f9375660386120026ea81f100c44c8c9660033001330143758612a026124026ea81f8dd718309849009baa301c30920137540b10039bab3095010019984a0098319849009baa301c30920137540b066128029801054455534472004bd70200c8acc00660026eb0c184c24804dd503f400e6eacc25404c258040066eb0c064c24804dd502c200a899b87980082c41fa90002008375a612a020051533090014901796578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f75747075745f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016423c05153309001491826578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f726967696e5f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a20202020290016423c04612a0200330010019bab30930130900137546126026120026ea81fe466e20dd698311848809baa00148001005454cc23805241856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164234046eb0c24804c23c04dd5010456600260f801913259800cc004c17cc24004dd502b4dd6180e9848009baa07c98139848009baa07c9bab301c30900137540f8807a2b300130100018983d4c00415a0f90014009153308e014911a6578706563742077697468647261775f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501044c9660033001305f30900137540ad3758603a6120026ea81f2604e6120026ea81f26eacc070c24004dd503e201e8acc004c040006260f5300105683e4cdc1000a400280122a6611c02920119657870656374206465706f7369745f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501021180242300484600844b300133710002900045300103d87a8000899803801000a1120222a660da920113657870656374206e6f6e63655f726573756c74001641b0653001306e37540032323232332259800982f8014528456600260c40051980099baf30783075375400298103d87b8000a50a5141c913233225980098310014528c56600260c200513322598009831983c9baa304b307a375400d13371000400313371200400283b8dd6983d983c1baa003598009830983b9baa30493078375400f10018980d800a0ea8a5041d483a8c1d4dd50009bad30793076375400860f060ea6ea800507220e43072375400260ec60ee00660ea60e46ea8004c1d0004c1c0dd5000c888c8cc896600260be005159800982f983a1baa0018a6103d87a80008a6103d879800041c91598009831001456600260c460e86ea80062980103d87a80008a6103d87b800041c913322598009830800c530103d87b80008acc004c180006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041d483a8dd6983d183b9baa0038a6103d879800041d083a0dd6983c183a9baa00330743754002839107218391baa0013002003300100348896600260b80071325330713372c921215b7665726966795f6e6f6e63655d204c6f6f6b696e6720666f72206f7265663a200037326607600291010015330713372c9201215b7665726966795f6e6f6e63655d204e756d626572206f6620696e707574733a20003732660766ea0c018dd6183b18399baa05f48900133008375860ec60e66ea817c94cc1c8cdcb24811f5b7665726966795f6e6f6e63655d20436865636b696e6720696e7075743a200037326607860ee60e86ea80052201001325330733372c9201185b7665726966795f6e6f6e63655d204d6174636865733a200037326607b3001001a60103d87a8000a60103d879800041c891010010013375e60ee60e86ea8004008c1d4c1c8dd5002456600260b600713322598009802000c528c566002600800514a1159800cc004cdd7cc004c1dcc1d0dd50014c1dcc1d0dd5000c8c8c96600260c060ec6ea8c1e8c1ec00a2003132598009830800c4c030cc1e8dd4180d9bad307b3078375400497ae08acc004c1880062005100241d483a8c1d8dd5000a0e83079001307537540028019300103d87b8000a50a5141c51980099baf98009822983a1baa0029822983a1baa001919192cc004c180c1d8dd5183d183d80144006264b30013061001898061983d1ba8304c375a60f660f06ea80092f5c11598009831000c400a200483a9075183b1baa00141d060f200260ea6ea8005003260103d8798000a50a5141c514a0838907120e2307530723754008601260e46ea817a294106f20de181f98371baa009300300319198008009bac3038306937540b044b30010018a5eb822660d86e9cc8c8cc1b8c1bc008cc1b8c0ecc1b0dd5000998371ba9980091838183898389838800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004835906b1b8d001981f198372610b4a5369676e617475726531003306e306f306c375460de60d86ea8004cc1b93010140003306e303d306c37540b697ae048894cc1b4cdcb249165369675374727563747572652e636f6e746578743a200037326606e60e460de6ea8005220100153306d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e608060de6ea8005220100153306d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607c60de6ea8005220100153306d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e600660de6ea800522010013253306e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b88370dc68009bae3072306f375400266e28c008dd7182018379baa0013371460046eb8c0f8c1bcdd500098011bae3003306f37540024bd70183718378009bac306d00133002002306e00141ad22259800982a98351baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130700018acc004cdc4a400860de0030068992cc004c1d4012264b3001305c0018acc004c1c8dd50034026010839a2b3001305b0018992cc00400601313259800800c02a01500a8992cc004c1e400e01900b41d86eb400601483c8c1d800507418391baa0068acc004c17c0062b30013072375400d00980420e680420de41bc8378c1c0dd5002c01d072182c9837800a0da80320e23754003005802c01600a83a0c1c400506f1838801400e007003801a0e4306f00141b460d66ea800e002834122259800982a98351baa0068992cc0040060c113259800800c4c9660020030628992cc0040062b30013073002899912cc004c16c006264b300100183344c966002003067833c4c96600260f000713305b0012259800801401e264b30010018cc0040062600460f600706b403d06b835c1ae0d683e0c1e400907741a10751bac001833c19d078183a800a0e63071375400b159800982d000c4c9660020030668992cc0040060cf0678992cc004c1e000e2660b600244b3001002803c4c96600200319800800c4c008c1ec00e0d6807a0d706b835c1ad07c183c80120ee83420ea3758003067833a0f0307500141cc60e26ea80162b3001305e0018992cc0040060cd13259800800c19e0cf0678992cc004c1e000e00b06841d46eb40060ce83c0c1d400507318389baa0058acc004c0d8006264b300100183344c966002003067833c19e264b30013078003802c1a10751bad001833a0f0307500141cc60e26ea80160ca837106e20dc41b8264b3001305a0018992cc0040060cb13259800800c56600260ec005159800982e18389baa0018992cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c4c96600260f800700f83620f2375a00306b41f060f200283b8dd7000983c00120f2307600141d060e46ea80060cc837a0cc839a0cd0668334199077183a000a0e430703754005159800982c800c4c9660020030658992cc0040062b300130760028acc004c170c1c4dd5000c4c9660020030678992cc004006264b3001001834c4c966002003159800983d00146600200719800800c0360d480620d480620d483ba0d506a83541a907b183c000a0ec307800283441a20d106841e460ec00283a0c1c8dd5000c19906f4199073419a0cd06683320ee307400141c860e06ea800a2b3001305d0018992cc0040060cb13259800800c19a0cd06683344c96600260ee00700a833a0e8375c00283b8c1d000507218381baa00283220da41b48368c1b8dd500098371baa003831a0e0831c18e0c706341d060e20028378c1c400a0c3061830c1850721837800a0da306b375400d05f41a022259800982a18349baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130720028992cc004c164c1b8dd500244c9660020030078992cc004006264b3001001804c4c966002003159800983b80146600200713259800982f000c4c96600200300c8992cc0040062b3001307a0028992cc004c184006264b3001001807c4c966002003159800983e80146600200300b808202680820f4808404202101041f860f600283c8c1dcdd5001456600260c000313259800800c03e264b300100180840420211332259800800c04a264b3001001809c04e0271332259800800c056264b300100180b405a02d13259800984200801c04a02e840808dd6800c05908401184080800a0fe375a00261000200501342040460fc00283e0dd6800983e801404107e183d800a0f23077375400500e41d083a0c1d4dd5000c035077403601b00d806a0f6307800141d860e86ea800a2b3001305d0018acc004c1d0dd5001401a01683aa016838907118391baa001805201a80520e8805402a01500a41e060ea0028398c1d400a01100880440210761839800a0e2306f375400900641b0264b300130590018acc004c1bcdd5001401e00c83822b300130580018992cc00400600f13259800800c02201100880444c96600260ec00700a804a0e6375c00283b0c1cc00507118379baa0028acc004c170006264b3001001803c4c96600260ea00500980420e4307300141c460de6ea800a00c836106c20d8306d375400300541bd005802c01600a8398c1c000506e1838001400e007003801a0e2306e00141b060d46ea800e0028338888c96600260a800313259800800c00e264b300100180240120090048992cc004c1c400e00d00541b86eb80050711837000a0d8306a37540091598009829800c4c9660020030038992cc0040060090048024012264b30013071003803401506e1bae00141c460dc0028360c1a8dd5002400906720ce3068375400705a82d416a0b48358c1a0c194dd5000c54cc18d24014565787065637420536f6d65287369676e65645f7061796c6f61645f6461746129203d2063626f722e646573657269616c6973652872656465656d65722e7061796c6f6164290016418860026eb8c0d4c190dd50299192cc004c13c006298103d87a80008992cc006600260a06eb4c1980069429450634530103d87a80008981c198341832800a5eb810634c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d06548896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b810010034195001400c8310dc680098008009119800911191919bb032374e660d660d0002660d660d200297ae03376060ce00460ce00260d0003300100691000c012007375a60ce0028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130510018cc004012007002918051ba800140351598009828000c6600200900399b80002480fe460146ea0c0f0c0f800500d456600266e1c00920be0189919800800918059ba9001223300648008966002601c00313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014419d19800802400e66e00009207f918051ba9001401c832106420c88acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300d3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180719ba5003001404080810672cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014198833100d4566002605600315980099b87002482f80a33001004801ccc01801888006460146e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300b374e002806900d20c88acc004c0a80062b30013370e004907f0144c8c8cc0040048c030dd30009119803a40044b3001300f0018980125eb7bdb18224646530010069180319838801000cdd69837001200c323376060e200260e260e40026eb0c1b000660020130089807800a00a41a06600c00c4400519800802400e66e0000920bf02919194c0040060072300d374c00280088896600266e24009200089800a5eb7bdb18224646530010069821802c8c014cc1c80080066eb4c1bc0090061919bb0307200130723073001375860da003300100a804c00500520d23300700722002403483222497bdb181014000010120004190832106420c8337060029020111119198008008011119803240044b3001300a0018980125eb8224646530010069180319836001000cdd69834801200c30670019800804401e6014002803106311114c00401200700291980200091801800a012413505b1bae001417860b600282c8dd7000982d005a0b6305800a415904841586eb8005059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500240fd04940fd00e40fd00e40fd00e40fd00e40fd04d1bac00181f40f90501826800a096304d00281e40f207903c413860960028248c12c00a07503a81d40e904c1824800a08e304900281c40e20710384128608e0028228c11c00a06d03681b40d90481822800a086304500281a40d2069034411860860028208c0fcdd5002c0c903c111194c004006009003400444464b3001302f0018992cc00400600d13259800800c01e00f007803c4c96600260980070058042092375c0028260c12400504718229baa0038acc004c0b8006264b300100180344c966002003007803c4c966002609800713302f0012259800801401e264b30010018cc00402a00313002304f003402900b805c02e0168280c13400904b40210491bac001803c01d04c1824800a08e304537540071598009819000c4c9660020030068992cc00400600f0078992cc004c13000e26605e00244b3001002803c4c96600200319800805400626004609e006805201700b805c02d0501826801209680420923758003007803a0983049001411c608a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009827801c4cc0c8004896600200500a8992cc0040063300100d800c4c008c14800d00d403a01d00e80720a63050002413900b41306eb000601500a413c60980028250dd68009825801401d04c1824800a08e304537540071598009804800c4c9660020030068992cc00400600f007803c4c96600260980070058042092375a003007413060920028238c114dd5001c566002601000313259800800c01a264b3001001803c01e00f132598009826001c0160108248dd6800c01d04c1824800a08e3045375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009826001c0160108248dd7000a0983049001411c608a6ea800e00a821104220844108821104220843043375400481740ba05d02e4100601660746ea8c94cc0e4cdcb24812467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea40dd220100132598009813181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a200037326600a002910100132598009815981e9baa0018992cc0040062b30013029303e375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098240014401a0728228c1180050441bae0013045002411860860028208c0fcdd5000c0d103c40d206903481a20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec6018607a6ea8c038c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46600400206e6eb0c02cc0e8dd50131800800911980200111980598031bab300c303b3754601860766ea8004008888c9660020071323233223300b0023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420805980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d103a1bac303d002375a60760026466ec0dd4181d8009ba7303c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6080003337149101023a200098008054c10400600a805100a182180144ca6002015304000199b8a489023a200098008054c104006600e66008008004805100a182180120823043001410066e29220102207d0000340f46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039011207a3758007133007375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40fc66e2ccdc0000acc004cdc4000a402914818229037207e004401866e0c00520203370c002901019b8e00400240f06eb800d0401b8a4881022c200018048049802802a264b300100180e4072264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0cc00a2b30013019302e375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc00400604f027813c09e264b3001303a0038acc004c080c0d4dd500344c9660020030298992cc00400605502a81540aa26644b300100181644c96600200302d816c0b605b132598009820001c660020151301430400158172048817207a375c0028200c0f400503b1bae001303c00240f4607400281c0c0d8dd500340a103340a10371bae00140e8606e00281a8c0dc00a04b025812c095038181a800a0663035002811c08e04702340d860660028188c0bcdd5000c08502c40850304086043021810a068303100140bc6eb8004c0c00090311817000a058375800301c80e205e302c00240a91323259800800c06e03701b899912cc00400603b01d80ec4c8c018c0c001cdd6800c0750301bad001302900280da05c3027001302a00240a101740986eac00602d01680b20523026001409060446ea801e02880fa0288118dd6000c04e0268130c08c0050211bae0013022002408c604000280f0c08000a01d00e8074039021180f000a038301a375401300c405c44464b300130060018992cc00400600713259800800c01200900480244c9660026046007006802a040375c0028118c08000501e180e1baa0048acc004c0140062b3001301c3754009003801203a8012032406460346ea800c88c8cc00400400c88cc00c004c008008dc3a40006e1d20028044022011008406c6030602a6ea800e2c80906028002601e6ea8056293454cc0352411856616c696461746f722072657475726e65642066616c7365001365640301" : "592497010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a40052232330010010032233003001300200248888c9660026008601c6ea802626464646644b300130180038992cc004c028c050dd5000c4c96600260340031330093756603200244b3001002899805803112cc00400a330012259800800c52f5c113301e301b301f0013300200230200014075374a900048c078c07c00644646600200200644b30010018a508acc004cdc79bae30210010038a518998010011811000a038407d2301e301f301f0019b874801a6e1d20089b8748029222222223322332232332259800980f18141baa00289919191919194c004dd61819000cc0c8016606400930320039819001244444b30013038006899806181b8058998060020998060018998060010acc004c0a4c0ccdd5000c4c8c8ca60026eb8c0e80066eb8c0e800e6eb8c0e800922259800981f00244c8cc896600260820071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc7244103020408003370000490189180119bca4a2003124bded8c10140000101200040fc81f903f4dc024003370e907f01cdc02400522337600046ea00066e052000488888a600244444653001001801c0090011112cc004cdc480124001130014bd70448c8ca600200d30100059180299828801000cdd69827001200c304c0019800804c022002803904948888c8cc00400400888cc01920022598009805800c4c0092f5c1123232980080348c018cc1400080066eb4c1340090061825800cc00402200f300b0014018824244453001004801c00a4660080024600600280512223232323259800981f98249baa00189919914c00489660026088609c6ea800a26464646644b30013058003899804982b802899823001003459055182a8009bad305500230550013054001304f37540051641351980099198008009bac3030304e375409044b30010018a5eb822660a26e9cc8c8cc14cc150008cc14cc0ccc144dd5000998299ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002414c8298dc68009bae30563053375400266e28c008dd7181b98299baa0013371460046eb8c0d4c14cdd500098011bae305630573057305730533754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241448288dc6800981b19829a610b4a5369676e617475726531003305330543051375460a860a26ea8004cc14d3010140003305330353051375409697ae04bd701829982a0009bac30520013300200230530014141230513052305230523052305230523052001911919800800801912cc00400629422b3001300330540018a51899801001182a800a09e4149374a900124444b300132980098289baa001919191919912cc004c13400a29422b300130500028cc004cdd7982d982c1baa0014c103d87b8000a50a51415913233225980098280014528c566002609e00513322598009828982e1baa3041305d375400d13371000400313371200400282d8dd6982f182d9baa003598009827982d1baa303f305b375400f10018980d800a0b28a50416482c8c160dd50009bad305c3059375400860b660b06ea800505620ac3055375400260b260b400660b060aa6ea8004c15c004c14cdd5000c888c8cc8966002609a0051598009826982b9baa0018a6103d87a80008a6103d879800041591598009828001456600260a060ae6ea80062980103d87a80008a6103d87b8000415913322598009827800c530103d87b80008acc004c138006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000416482c8dd6982e982d1baa0038a6103d8798000416082c0dd6982d982c1baa0033057375400282b1056182a9baa00130020033001003488966002609400713233007375860b260ac6ea81348cdd7982d182b9baa0010023058305537540091598009824801c4cc8966002600800314a315980098020014528456600330013375f3001305a30573754005305a3057375400323232598009827182c9baa305d305e0028800c4c966002609e0031300b3305d375060366eb4c178c16cdd500125eb822b3001305000188014400905920b23059375400282c0c170004c160dd5000a0064c0103d87b8000a50a5141551980099baf9800981d982b9baa002981d982b9baa001919192cc004c138c164dd5182e982f00144006264b3001304f001898059982e9ba8301d375a60bc60b66ea80092f5c11598009828000c400a200482c9059182c9baa001416060b800260b06ea8005003260103d8798000a50a51415514a082a905520aa305830553754008600e60aa6ea8132294105320a6181a98289baa0058cc004c150c144dd5002c88c8cc00400400c896600200314800226644b300130050028980b800c4005055182c00099801001182c800a0ac911919800800801912cc00400629422b30013375e00660a860b000314a31330020023059001414c82b244646600200200644b30010018a518acc004c00cc16000626600400460b200314a0829905648c154c158c158c158c158c158c158c158c158006460aa60ac60ac60ac60ac60ac60ac0032259800982418291baa002899192cc004c16400a0071641586eb4c15c004c14cdd500145905148c154c158c158c158c1580064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320ae899802802982e80220ae375c60ac0026eacc15c004c1640050570a5eb7bdb18244b30010018a400113013330020023057001415123055305630563056305630560019112cc00400a2980103d87a80008acc004c12400626072660ac60ae00497ae08cc00400e60b00053016001400c829105548966002003148002260266600400460ae00282a244b30010018a5eb82264660ac6ea0004cc00c00cc8cc004004c16400c896600200314bd7044cc896600330013370e00400b4a14a282b22660b46ea0008cc01001000626600800800282b0dd6982c800982d000a0ae375a60ac00282a2444646600200200844b300100189982c19bb037520086ea000d2f5bded8c113298009bae30560019bad3057001982d8012444b30013372001000713305c337606ea4020dd4003802c56600266e3c02000e2660b866ec0dd48041ba800700189982e19bb037520066ea0008cc01801800505820b0182c800a0ae911919800800801912cc004006297ae0899912cc004cdd7982d182b9baa305a30573754607660ae6ea8008c01ccc164dd4802a5eb822660b200466008008003133004004001415460b000260b200282b244b30010018a40011301333002002305700141512259800800c520008980999801001182b800a0a89b8848001222222222222222222298009111191980080080291192cc004c18000626609c00c6eb8c1b8c1acdd5001456600260be003133017375860dc60d66ea80088cc0100100062b3001306300189980e1bac306e306b37540044660080080031598009826000c4c8cdc49bad306f0013301a375860de60e000246600a00a00260d66ea800a2b3001304b00189919912cc004c188c1b4dd5001456600260c460da6ea8c1c4c1c800e266e24dd6983898371baa002001899b88375a60e260dc6ea800800506c452820d8306f001375a60de60d86ea800cc1acdd5182798359baa0058acc004c1280062646644b30013062306d3754005159800983118369baa30713072003899b89001375a60e260dc6ea800a266e20004dd6983898371baa00241b114a08360c1bc004dd6983798361baa003306b375460dc60d66ea80162660300086036660da60dc60d66ea80092f5c0834906920d241a4834906918349baa00198050054c18cdd5009c8888c8cc00400401488c96600260c00031323259800983118361baa001899194c004dd718390014dd718391839800cdd71839000ae5460e40026eb0c1c0c1b4dd5000c52820d632330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60e40020091305433071374e00297ae0899801801983980120da375860e20028378dd7183718359baa0028acc004c17c00626602e6eb0c1b8c1acdd5001119802002000c56600260c600313301c375860dc60d66ea80088cc0100100062b3001304c00189919b89375a60de002660346eb0c1bcc1c00048cc014014004c1acdd500145660026096003132332259800983118369baa0028acc004c188c1b4dd518389839001c4cdc49bad3071306e37540040031337106eb4c1c4c1b8dd5001000a0d88a5041b060de0026eb4c1bcc1b0dd500198359baa304f306b375400b1598009825000c4c8cc896600260c460da6ea800a2b30013062306d375460e260e40071337120026eb4c1c4c1b8dd500144cdc40009bad3071306e37540048362294106c18378009bad306f306c375400660d66ea8c1b8c1acdd5002c4cc060010c06ccc1b4c1b8c1acdd500125eb8106920d241a4834906920d23069375400330080089803803cc01801a6006007222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906b44cc014014c1c401106b1bae306a001375a60d600260da0028358cc03c01000c520009801001244444444446530012225980099b87300d0023009300832330010010032259800800c52f5c11330763073307700133002002307800141d5132330010010032259800800c52f5c30100008101a0008101a00044c8c8c8cc896600260dc60f06ea800a264b3001300900189983e1ba8337006eb4c1f4008dd6982f183d1baa0013307c374c64b3001306f307a37540031375660be0071375660fc60f66ea8005079192cc004c1bcc1e8dd5000c530103d87a8000898301983e9ba698009bab305f0039bae307e307b3754003005407097ae041e460b860f46ea8004cc1f0dd34c004dd5982e0014dd9983e983f002c01101b25eb822c83c0c1f0c1e4dd50014590771980480400099802802983d8021bad30790013307730740013307730750014bd70183b800a0ea8b20e091112cc004cdc398040021804001c4cc07c0108c96600260d460e86ea8006264b3001306b3075375400313322598009838183b9baa001899192cc004c1bcc1e4dd500144c8c8c8ca60026102020033081010039840808012444b300130850100489982c98420080389981b0010992cc004c1dc00626464b3001308801002805c59085011bad3086010013082013754005159800983b000c4c8c96600261100200500b8b210a02375a610c020026104026ea800a2c840009080011840009baa0018b210402184080800984000800983f800983d1baa0028b20f015980099baf305d3079375400260f860f26ea800e2b3001337126eb4c174c1e4dd5001cc004dd5982e983c9baa305d3079375400d375c60f800f375c60ba00e806a264b3001306f3079375400313370e6eb4c1f4c1e8dd50009bad305e307a375400913370e6eb4c1f4c1e8dd50009bad305e307a375400883c0c16cc1e4dd5000c59077459077183d983c1baa0018b20ec30793076375400260b060ec6ea8c168c1d8dd5001c59074198038029bad3078307537540031641cc6644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130603307d375000297ae080320f2899802802983f80220f2375c60f00026eb4c1e4004c1ec0050791bb3307730743754002298103d87a80008b20e291112cc004cdc398030011804001c4ca60020034800200880088896600200314a313322598009836983b9baa0018992cc004c1b8c1e0dd5000c4c96600260de60f26ea8006264b30013375e60fc60f66ea8004c1f8c1ecdd5183f183d9baa0058acc004cdd7982e983d9baa001305f307b375460fc60f66ea80162b300198008044c0ec01e60fe00c8042266e1e60026eacc17cc1ecdd5000cdd7183f004cdd7182f804a01e325980099b880014800226074003100141e86eb4c17cc1ecdd5002c52820f28b20f28b20f2307d307a37540031641e0660160146eb4c1f0c1e4dd5000c5907718181bae307b307837540031641d860f2002646600200200c44b30010018a60103d87a80008992cc004cdc38029bad30790018982f1983d983c000a5eb8226600600660fa00483b8c1ec00507920ee8b20e29111919912cc004cdc39bad30780010028992cc004cc896600200314a11329800992cc004c1bcc1e4dd5000c4dd6983d183e9bab307d307a3754003148001078183e000cdd7983e183e800cdd58012444b30010018acc004c008016266e2520000038a5041e91325980099baf307c0014c010140008acc004cdc49bad307d308001375660fa00200913003374c61020200514a083da2b300133712900000244c00c01a294107b20f6307f00141f4329800800c00e44660fa004660fa6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1ec0066eacc1f00066100020069112cc004cdc8a441000038acc004cdc7a44100003899802983219840809ba60024bd70000c4cc015300103d87a800000641f519800803c006446600e004661060266ec0dd48029ba6004001401c83e860fc00483e229422942294107d1bab305a002374c660f066ec0c1e4004dd31983c19bb03079307a001375066e0400c0152f5bded8c097adef6c608801c590741bac301a3075375400d1641ccb30013068300e0018a4001159800983b800c4c96600266e3cdd71839800a44104555344720089bad30740018b20e430760018b20e841c46464b3001306a307437540031325980099baf30793076375460f260ec6ea8c168c1d8dd500098131983c1ba90034bd7044c96600260de60ec6ea800626466042002264b3001306e307837540031325980099baf307d307a375460fa60f46ea8004c0a8cc1f0dd4803a5eb82264b30013073307a37540031323302500113307e375066e04dd6983f983e1baa001375a60fe60f86ea8014cc1f8dd3194c0040066eacc184c1f4dd50024c8cc004004dd59831183f1baa3062307e375401244b30010018a5eb7bdb182264661040266ec0c1fc004dd319198008009bab3081010022259800800c52f5bded8c11323308501337606104020026ea0c104dd698418080099801801984380801184280800a1060233003003308401002308201001420004800888966002005100189919914c00401a610c0200b32330010010052259800800c4cc21804cdd81ba9004374c00697adef6c608994c004dd7184200800cdd5984280800cc224040092225980099b900080038998450099bb037520106e9801c0162b30013371e01000713259800acc0040062946294108a014400a2661160266ec0dd48049ba6001002421c04653001001804400d0011112cc00400a2003132332298008034c24804016646600200200a44b30010018998490099bb037520086ea000d2f5bded8c113298009bae3090010019bad309101001984a808012444b30013372001000713309601337606ea4020dd4003802c56600266e3c02000e264b3001308a01001880144cc25c04cdd81ba90093750002004849808cdc000380144cc25804cdd81ba900337500046600c00c002849009092010c24c0400509101200c375c6116020026eb4c23004004c2380400908c0144cc22804cdd81ba9003374c0046600c00c002843009086010c21c0400508501200c375c60fe0026eacc20004004c208040090800125eb80c1f8c1ecdd5000c59079182e183d1baa0018b20f0307c307937540031641dc660a66eb0c168c1e0dd500411982e182a9bab305d3079375400200c60f460ee6ea80062c83a8c160c1d8dd5182d183b1baa0018b20e830783075375400314bd7090100008101a00020e63304e375860ee60e86ea8010004dd7183b18399baa301b30733754008660326eacc068c1c8dd50011bae305630723754603460e46ea800d2222598009834006c4c966003300130773074375409b0279813183a1baa06b9bab301e307437540d6806a26464b300198009980b1bac3079307637540da6eb8c160c1d8dd5180f183b1baa04f801cdd5983c800cdd6180d983b1baa04f4019159800cc004dd6182c183b1baa06d801cdd5983c983d000ccc1e0c168c1d8dd5180f183b1baa04f330784c1054455534472004bd70200a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba460246eb4c164c1d4dd5000a00a8b20e4375860ec60e66ea808a2b3001306700d8992cc006600260b060e86ea813604f3026307437540d73756603c60e86ea81ad00d44c8c966003300133016375860f260ec6ea81b4dd7182c183b1baa301e3076375409f0039bab30790019983c182d183b1baa301e3076375409e660f0981054455534472004bd70200c8acc00660026eb0c160c1d8dd5036c00e6eacc1e4c1e80066eb0c06cc1d8dd5027a00a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba466e20dd6982c983a9baa001480010054590721bac3076307337540451598009835806c4c966003300130563074375409b3758603e60e86ea81ae604c60e86ea81ae6eacc078c1d0dd5035a0208acc004c044006260d3300104d835c0050024590724590721bad30763073375404513259800cc004c158c1d0dd5026cdd6180f983a1baa06b9813183a1baa06b9bab301e307437540d680822b3001301100189834cc0041360d7337040029000a0048b20e48b20e4375a60ec60e66ea808907120e241c4225980099b8800148002298103d87a8000899804001000a0dc22c82792259800982218271baa00289919192cc004c15800a26464b300130490018acc004c150dd5001401a2c82aa2b30013048001899192cc004c16800a01116415c6eb4c160004c150dd500145660026098003159800982a1baa00280345905545905220a4414860a46ea8004c15400e2c8298c96600260a400315980099b8948010c1440062d130463051001414116414c6ea8c150004c150004c13cdd500145904d2444b30013045304f3754009132323259800982b80144c8cc8966002609600513259800982d800c4cc128dd6182d000912cc00400a00913300c305c00213001305d002416916416060ac6ea800e2b3001304a0028992cc004c16c0062660946eb0c1680048966002005004899806182e00109800982e80120b48b20b030563754007159800982700144c8c96600260b80050038b20b2375a60b400260ac6ea800e2b30013037002899192cc004c17000a0071641646eb4c168004c158dd5001c5905420a8415082a0c14cdd50008992cc004c128006264b3001305a0018992cc004c130c158dd5000c4c8c8cc896600260be00700d8b20b8375a60b80026eb8c170008c170004c15cdd5000c59055182c800c59057182a9baa0038acc004c124006264b3001305a0018992cc004c130c158dd5000c4c8c8c96600260bc00513300b305d00313300b00100c8b20b6305c001305c0013057375400316415460b200316415c60aa6ea800e2b3001304d001899192cc004c16c00a0131641606eb8c164004c154dd5001c5905320a6414c60a66ea8008c15800e2c82a0c154004c154004c140dd500245904e08966002608460986ea800a2646464b30013054002899912cc004c11cc144dd500144c8c8c96600260b200513300b3058003132598009825800c4c96600260b600313232598009827000c4c96600260bc003133010305d0010098b20b6305937540051598009826800c4c8c8ca60026eb4c17c0066eb4c17c00e6eb4c17c009222598009831802403a2c830060be00260bc00260b26ea800a2c82b9057182b9baa001305a0018b20b0305637540051598009825000c56600260ac6ea800a00b16415d16415082a0c150dd5000c59056182b800982b80098291baa0028b20a03053003132598009823000c56600260a26ea800a00b1641491598009822800c4c8c96600260ae0050078b20a8375c60aa00260a26ea800a2b30013049001899192cc004c15c00a00f16415060aa00260a26ea800a2c827904f209e304f375400316414460a400260a4002609a6ea800a2c8258c138c12cdd500111192cc004c10800626464b300130530028024590501bae3051001304d37540071598009820800c4c8c96600260a60050048b20a0375c60a2002609a6ea800e2c825904b18259baa0028b20903001375c605a60926ea810c8c966002607e00314c103d87a80008992cc006600260806eb4c12c0069429450494530103d87a800089818198269825000a5eb810494c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d04b48896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b81001003412d001400c8240dc680098008009119800911191919bb032374e660a0609a002660a0609c00297ae03376060980046098002609a003300100691000c012007375a60980028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130410018cc004012007002918061ba8001403d1598009820000c6600200900399b80002480fe460186ea0c03cc02c00500f456600266e1c00920be0189919800800918069ba9001223300648008966002602000313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014413519800802400e66e00009207f918061ba9001401c825104a20948acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300f3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180819ba50030014034809104d2cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014130826100f4566002605800315980099b87002482f80a33001004801ccc01801888006460186e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300d374e002805100f20948acc004c0ac0062b30013370e004907f0144c8c8cc0040048c038dd30009119803a40044b300130110018980125eb7bdb1822464653001006918031982b001000cdd69829801200c323376060ac00260ac60ae0026eb0c14400660020130089808800a00a41386600c00c4400519800802400e66e0000920bf02919194c0040060072300f374c00280088896600266e24009200089800a5eb7bdb1822464653001006980b002c8c014cc15c0080066eb4c1500090061919bb0305700130573058001375860a4003300100a804c005005209e3300700722002403c82522497bdb181014000010120004128825104a209433706002902011640f86eb8c0f8004dd7181f006181f005c5903b0c0e8004c0e4004c0d0dd5000c590324590350c0c8004c0c4004c0c0004c0bc004c0b8004c0a4dd5001459027180598139baa3259800980e98139baa0018992cc004c084c0a0dd5000c4c966002603e60526ea8006264646644b300130320038802c5902f18178009bae302f002302f001302a37540031640a0605860526ea80062c8138c028c0a0dd5180618141baa302b30283754003164098660026eb0c02cc09cdd500f0121802002111980180111980618029bab300d30293754601a60526ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c0100062601c6605600297ae08998018019816801204e302b00140a4601001044464b3001301b001899192cc004c0b000a0091640a46eb8c0a8004c098dd5001c5660026034003132598009815800c4cc068dd61815000912cc00400a00b19800803cc0b000a26002605a004803902a45902818131baa0038acc004c078006264b3001302b00189980d1bac302a0012259800801401633001007981600144c004c0b400900720548b2050302637540071598009803800c4c8cc8966002605a00313301c3758605800244b3001002803c66002013302e002898009817801201240b11640a86eb4c0a8004c0ac004c098dd5001c566002600c0031323259800981600140122c8148dd6981500098131baa0038acc004c01400626464b3001302c0028024590291bad302a0013026375400715980099b874803000626464b3001302c0028024590291bae302a00130263754007164090812102420484090812102418121baa00244c8cc89660026042003132598009809980e9baa0018991919192cc004c09800a264b3001301830223754003132323322598009815801c4cc064c0a80204c038c0ac03e2c8140dd718140009bae3028002302800130233754003164084604a00916408c6eb8c090004c090004c08c004c078dd5000c5901c1810000c5901e1bae301e001301f0013758603a00480da26466446008603e00a6eb4c060004dd6980c800980d80120328b202e3015375400316404c602e00b1640546eb0c054004dd7180a801180a800980a00098079baa0098b201a2232598009803000c4c8c966002602e0050048b2028375c602a00260226ea800e2b300130050018acc004c044dd5001c00a2c80922c807900f18079baa0024590080c024004c010dd5005452689b2b200401", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v0_3/index.js.map b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_3/index.js.map new file mode 100644 index 0000000000..f03e532240 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_3/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["applyParamsToScript","cborToScript","Type","TPlutusData","PolicyId","String","Contracts","Module","Bool","Boolean","COSESign1","Object","headers","Ref","payload","Optional","signature","ctor","HeaderMap","Headers","protected","unprotected","MultisigScript","Union","Signature","key_hash","AllOf","scripts","Array","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Tuple","Destination","address","payment_credential","VerificationKey","stake_credential","Inline","Pointer","slot_number","transaction_index","certificate_index","datum","Literal","DatumHash","InlineDatum","ExtraProtocolRedeemer","request_to_outputs","Record","Number","Nonce","UTxO","transaction_id","output_index","Validity","lower_bound","bound_type","Finite","is_inclusive","upper_bound","Nullifier","OrderAction","OMint","amount","ORedeem","OrderDatum","owner","destination","action","data","OrderRedeemer","ProtocolRedeemer","Mint","requests","Burn","Withdraw","withdraw_amount","Deposit","deposit_amount","ProxyDatum","logic","settings","Registry","treasury","usdr","order","Request","origin","Settings","mint_permission","burn_permission","withdraw_permission","deposit_permission","registry","reserve_token","SigWithKey","SignatureList","SignedPayload_ProtocolRedeemer","nonce","SignedRedeemer_ExtraProtocolRedeemer","extra","signatures","Import","V0_3OrderOrderSpend","constructor","proxyPolicyId","trace","_defineProperty","V0_3OrderOrderElse","V0_3ProtocolProtocolWithdraw","V0_3ProtocolProtocolElse"],"sources":["../../../../src/generated-types/v0_3/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\ntype Data = Exact;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n Bool: Type.Boolean(),\n COSESign1: Type.Object({\n headers: Type.Ref(\"Headers\"),\n payload: Type.Optional(\n Type.String()\n ),\n signature: Type.String(),\n }, { ctor: 0n }),\n HeaderMap: Type.String(),\n Headers: Type.Object({\n protected: Type.Ref(\"HeaderMap\"),\n unprotected: Type.Ref(\"HeaderMap\"),\n }, { ctor: 0n }),\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object({\n key_hash: Type.String(),\n }, { ctor: 0n })\n }),\n Type.Object({\n AllOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n AnyOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n AtLeast: Type.Object({\n required: Type.BigInt(),\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Before: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n After: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n Script: Type.Object({\n script_hash: Type.String(),\n }, { ctor: 6n })\n }),\n ]),\n Asset: Type.Tuple([\n Type.String(),\n Type.String(),\n ]),\n Destination: Type.Object({\n address: Type.Object({\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple([\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n ], { ctor: 0n })\n }),\n Type.Object({\n Pointer: Type.Object({\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ])\n ),\n }, { ctor: 0n }),\n datum: Type.Union([\n Type.Literal(\"NoDatum\", { ctor: 0n }),\n Type.Object({\n DatumHash: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n Type.Object({\n InlineDatum: Type.Tuple([\n TPlutusData,\n ], { ctor: 2n })\n }),\n ]),\n }, { ctor: 0n }),\n ExtraProtocolRedeemer: Type.Object({\n request_to_outputs: Type.Record(\n Type.Number(),\n Type.BigInt(),\n ),\n }, { ctor: 0n }),\n Nonce: Type.Union([\n Type.Object({\n UTxO: Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ], { ctor: 0n })\n }),\n Type.Object({\n Validity: Type.Tuple([\n Type.Object({\n lower_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n upper_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n ], { ctor: 1n })\n }),\n Type.Object({\n Nullifier: Type.Tuple([\n Type.String(),\n ], { ctor: 2n })\n }),\n ]),\n OrderAction: Type.Union([\n Type.Object({\n OMint: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 0n })\n }),\n Type.Object({\n ORedeem: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ]),\n OrderDatum: Type.Object({\n owner: Type.Ref(\"MultisigScript\"),\n destination: Type.Ref(\"Destination\"),\n action: Type.Ref(\"OrderAction\"),\n data: TPlutusData,\n }, { ctor: 0n }),\n OrderRedeemer: Type.Union([\n Type.Literal(\"Execute\", { ctor: 0n }),\n Type.Literal(\"Cancel\", { ctor: 1n }),\n ]),\n ProtocolRedeemer: Type.Union([\n Type.Object({\n Mint: Type.Object({\n requests: Type.Array(\n Type.Ref(\"Request\")\n ),\n }, { ctor: 0n })\n }),\n Type.Object({\n Burn: Type.Object({\n requests: Type.Array(\n Type.Ref(\"Request\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n Withdraw: Type.Object({\n withdraw_amount: Type.BigInt(),\n }, { ctor: 2n })\n }),\n Type.Object({\n Deposit: Type.Object({\n deposit_amount: Type.BigInt(),\n }, { ctor: 3n })\n }),\n ]),\n ProxyDatum: Type.Object({\n logic: Type.String(),\n settings: Type.Ref(\"Settings\"),\n }, { ctor: 0n }),\n Registry: Type.Object({\n treasury: Type.String(),\n usdr: Type.String(),\n order: Type.String(),\n }, { ctor: 0n }),\n Request: Type.Object({\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n origin: Type.Optional(\n Type.String()\n ),\n }, { ctor: 0n }),\n Settings: Type.Object({\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n withdraw_permission: Type.Ref(\"MultisigScript\"),\n deposit_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"Registry\"),\n reserve_token: Type.Ref(\"Asset\"),\n }, { ctor: 0n }),\n SigWithKey: Type.Tuple([\n Type.String(),\n Type.Ref(\"COSESign1\"),\n ]),\n SignatureList: Type.Array(\n Type.Ref(\"SigWithKey\")\n ),\n SignedPayload_ProtocolRedeemer: Type.Object({\n action: Type.Ref(\"ProtocolRedeemer\"),\n nonce: Type.Ref(\"Nonce\"),\n }, { ctor: 0n }),\n SignedRedeemer_ExtraProtocolRedeemer: Type.Object({\n extra: Type.Ref(\"ExtraProtocolRedeemer\"),\n payload: Type.String(),\n signatures: Type.Ref(\"SignatureList\"),\n }, { ctor: 0n }),\n});\n\nexport const Bool = Contracts.Import(\"Bool\");\nexport type Bool = Exact;\nexport const COSESign1 = Contracts.Import(\"COSESign1\");\nexport type COSESign1 = Exact;\nexport const HeaderMap = Contracts.Import(\"HeaderMap\");\nexport type HeaderMap = Exact;\nexport const Headers = Contracts.Import(\"Headers\");\nexport type Headers = Exact;\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Destination = Contracts.Import(\"Destination\");\nexport type Destination = Exact;\nexport const ExtraProtocolRedeemer = Contracts.Import(\"ExtraProtocolRedeemer\");\nexport type ExtraProtocolRedeemer = Exact;\nexport const Nonce = Contracts.Import(\"Nonce\");\nexport type Nonce = Exact;\nexport const OrderAction = Contracts.Import(\"OrderAction\");\nexport type OrderAction = Exact;\nexport const OrderDatum = Contracts.Import(\"OrderDatum\");\nexport type OrderDatum = Exact;\nexport const OrderRedeemer = Contracts.Import(\"OrderRedeemer\");\nexport type OrderRedeemer = Exact;\nexport const ProtocolRedeemer = Contracts.Import(\"ProtocolRedeemer\");\nexport type ProtocolRedeemer = Exact;\nexport const ProxyDatum = Contracts.Import(\"ProxyDatum\");\nexport type ProxyDatum = Exact;\nexport const Registry = Contracts.Import(\"Registry\");\nexport type Registry = Exact;\nexport const Request = Contracts.Import(\"Request\");\nexport type Request = Exact;\nexport const Settings = Contracts.Import(\"Settings\");\nexport type Settings = Exact;\nexport const SigWithKey = Contracts.Import(\"SigWithKey\");\nexport type SigWithKey = Exact;\nexport const SignatureList = Contracts.Import(\"SignatureList\");\nexport type SignatureList = Exact;\nexport const SignedPayload_ProtocolRedeemer = Contracts.Import(\"SignedPayload_ProtocolRedeemer\");\nexport type SignedPayload_ProtocolRedeemer = Exact;\nexport const SignedRedeemer_ExtraProtocolRedeemer = Contracts.Import(\"SignedRedeemer_ExtraProtocolRedeemer\");\nexport type SignedRedeemer_ExtraProtocolRedeemer = Exact;\n\nexport class V0_3OrderOrderSpend {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590e80010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004896600200314bd7044cc068c05cc06c004cc008008c070005019488c8cc00400400c88cc00c004c00800a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80b24444646600200200a44b30010018802c4c9660020031330043020002006899802981000119801801800a03c302000140752232330010010032259800800c5300103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444453001300600698020024888ca6002003004801a00222232598009809800c4c9660020030068992cc00400600f007803c01e264b3001302a003802c0210271bae00140a8604e0028128c08cdd5001c566002603000313259800800c01a264b3001001803c01e264b3001302a003899807800912cc00400a00f13259800800c66002015001898011816801a014805c02e01700b40b86056004814a0108138dd6000c01e00e8150c09c00502518119baa0038acc004c038006264b300100180344c966002003007803c4c966002605400713300f0012259800801401e264b30010018cc00402a00313002302d003402900b805c02e0168170c0ac00902940210271bac001803c01d02a1813800a04a3023375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605a0071330120012259800801402a264b30010018cc004036003130023030003403500e807403a01c8188c0b800902c402d02a1bac001805402902d1815000a050375a002605200500740a8604e0028128c08cdd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0a800e00b008409c6eb400600e8150c09c00502518119baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815001c0160108138dd6800c01d02a1813800a04a3023375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815001c0160108138dd7000a0543027001409460466ea800e00a8101020204040808101020204030213754005330023758603e60386ea80408cdd79810180e9baa00100f48888c8c8cc88c966002602a60486ea801a264b3001301b3025375400315980099b8f375c6052604c6ea8004dd7180598131baa3029302a302a302a302a302637546026604c6ea8c96600200319800800c40060448022045022811408902c198011bac30133026375403404513233225330273372c92010d63726564656e7469616c3a3a200037326600e0049101001330170010023374a9001198149ba90014bd701bab3016302737540366eb8c0a4c098dd5198011bac301330263754034045153302449013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016408d153302449132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f637265640016408c6050604a6ea8c0a0c094dd5180918129baa30283025375400d15330234913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408844a6604866e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980b98131baa00189929981319b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a18141baa0018992cc004006330010018800c095007409604b025812a05e302c3029375400315330274913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601a60506ea8c054c0a0dd5000981518139baa0018a99812a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640906601800446602660166eacc050c09cdd5180a18139baa001002300100122259800980a98121baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302e0028acc004c068c0a4dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200301280944c9660026076007198008064660020151980080446600200d1598009813981b1baa0048992cc00400602913259800800c05602b01580ac4cc89660020030178992cc00400603101880c406226644b300100180d44c96600200301b80dc06e037132598009822001c56600201501c8992cc00400603b01d80ec07626644b300100180fc4c9660020030208104082041132598009824801c08a0428230dd7000a092304600141106eb8004c11402d0461821805208280e2082375c0028220c10400503f1bae00130400024104607c00281e0dd7000981e801207c303b00140e4606e6ea801202681a202680ca02680ca02680ca02680ca02681c0dd6000c04a02481d8c0e0005036181c00140420210108082072303600140d0606c00500e807403a01c81b8c0d0005032181a001403201900c806206a303200140c0606400500a805402a0148198c0c000502e181800140220110088042062302e00140b060546ea800600c813a00c815a00d006803401902f1816000a054375c00260560048160c0a400502718129baa003800a0442223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020545980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81210241bac3027002375a604a0026466ec0dd418128009ba73026001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6054003337149101023a200098008054c0ac00600a805100a181680144ca6002015302a00199b8a489023a200098008054c0ac006600e66008008004805100a18168012056302d00140a866e29220102207d00003409c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d204e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720523371666e000056600266e2000520148a40c11481b9029002200c33706002901019b8600148080cdc7002001204c375c0068150dc5245022c20002232330010010032259800980a000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408481088acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601\"\n :\n \"5906f2010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc004896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a60103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a4444646466446644b30013010301c375400313259800980b180e9baa0018acc004cdc79bae3021301e37540026eb8c020c078dd518109811181118111811180f1baa300e301e3754646600c0022002660066eb0c038c078dd500a80dc4cc03cdd59808180f1baa0153374a9001198101810980f1baa330033758601c603c6ea805406d2f5c11640711640706040603a6ea8c080c074dd51806980e9baa3020301d375400316406c4464b30013011301d3754003132598009806980f1baa0018991980380088009811180f9baa0018b203a3008301e3754601c603c6ea8c084c078dd5000c5901c1980400111980698021bab300e301e3754601c603c6ea8004008cc018dd6180f180d9baa01223375e603e60386ea80040448966002601c60346ea800a2646644b300130220018992cc004c048c078dd5000c4c8c8c8c8c8ca60026eb0c0a0006605000b30280049814001cc0a00092222259800981700344cc048c0b402c4cc0480104cc04800c4cc048008566002603a60526ea800626464653001375c6060003375c6060007375c60600049112cc004c0d00122646644b3001303700380cc590341bae3034001375c606801860680171640c43030001302f001302a37540031640a11640ac30280013027001302600130250013024001301f3754003164074604200316407c6eb8c07c004c080004c06cdd500145901918030031800800911192cc004c03800626464b3001302100280245901e1bae301f001301b37540071598009809800c4c96600260400031330083758603e00244b3001002802c6600200f3021002898009811001200e407d16407460366ea800e2b300130090018992cc004c0800062660106eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c56600266e1d200600189919912cc004c0880062660146eb0c08400489660020050078cc00402660460051300130240024024810a2c80f8dd6980f8009810000980d9baa0038acc004cdc3a40100031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40140031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40180031323259800981080140122c80f0dd7180f800980d9baa0038b2032406480c90192032406480c8c064dd500122b300130063012375400f19800980b18099baa30163013375400f3758602c602e602e602e602e602e602e602e602e60266ea802a602c602e602e602e602e602e602e602e60266ea802a6eacc014c04cdd500524444646600200200a4464b3001300d0018998048031bae301d301a37540051598009809000c4c8cc004004dd6180f180d9baa0032259800800c528c5660026600a00a603e00313300200230200018a50406880ea2b30013008001899198008009bac301e301b375400644b30010018a508acc004cc014014c07c0062946266004004604000280d101d456600266e1d200600189919b89375a603c00264660020026eb0c07cc080008896600200314800226644b300133008008002899b800014800a200280e8c080004cc008008c08400501e180d1baa0028acc004cdc3a4010003132332259800980a980e1baa0028acc004c054c070dd518101810801c4cdc49bad3020301d37540040031337106eb4c080c074dd5001000a0368a50406c603c0026eb4c078c06cdd5001980d1baa300a301a375400b15980099b87480280062646644b30013015301c3754005159800980a980e1baa30203021003899b89001375a6040603a6ea800a266e20004dd69810180e9baa002406d14a080d8c078004dd6980f180d9baa003301a3754603a60346ea801626601600866e9520023301c301d301a375400497ae0406080c10182030406080c0c060dd5000a2c80890110c034dd50040c028dd5001c590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_3OrderOrderElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590e80010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004896600200314bd7044cc068c05cc06c004cc008008c070005019488c8cc00400400c88cc00c004c00800a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80b24444646600200200a44b30010018802c4c9660020031330043020002006899802981000119801801800a03c302000140752232330010010032259800800c5300103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444453001300600698020024888ca6002003004801a00222232598009809800c4c9660020030068992cc00400600f007803c01e264b3001302a003802c0210271bae00140a8604e0028128c08cdd5001c566002603000313259800800c01a264b3001001803c01e264b3001302a003899807800912cc00400a00f13259800800c66002015001898011816801a014805c02e01700b40b86056004814a0108138dd6000c01e00e8150c09c00502518119baa0038acc004c038006264b300100180344c966002003007803c4c966002605400713300f0012259800801401e264b30010018cc00402a00313002302d003402900b805c02e0168170c0ac00902940210271bac001803c01d02a1813800a04a3023375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605a0071330120012259800801402a264b30010018cc004036003130023030003403500e807403a01c8188c0b800902c402d02a1bac001805402902d1815000a050375a002605200500740a8604e0028128c08cdd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0a800e00b008409c6eb400600e8150c09c00502518119baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815001c0160108138dd6800c01d02a1813800a04a3023375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815001c0160108138dd7000a0543027001409460466ea800e00a8101020204040808101020204030213754005330023758603e60386ea80408cdd79810180e9baa00100f48888c8c8cc88c966002602a60486ea801a264b3001301b3025375400315980099b8f375c6052604c6ea8004dd7180598131baa3029302a302a302a302a302637546026604c6ea8c96600200319800800c40060448022045022811408902c198011bac30133026375403404513233225330273372c92010d63726564656e7469616c3a3a200037326600e0049101001330170010023374a9001198149ba90014bd701bab3016302737540366eb8c0a4c098dd5198011bac301330263754034045153302449013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016408d153302449132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f637265640016408c6050604a6ea8c0a0c094dd5180918129baa30283025375400d15330234913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408844a6604866e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980b98131baa00189929981319b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a18141baa0018992cc004006330010018800c095007409604b025812a05e302c3029375400315330274913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601a60506ea8c054c0a0dd5000981518139baa0018a99812a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640906601800446602660166eacc050c09cdd5180a18139baa001002300100122259800980a98121baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302e0028acc004c068c0a4dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200301280944c9660026076007198008064660020151980080446600200d1598009813981b1baa0048992cc00400602913259800800c05602b01580ac4cc89660020030178992cc00400603101880c406226644b300100180d44c96600200301b80dc06e037132598009822001c56600201501c8992cc00400603b01d80ec07626644b300100180fc4c9660020030208104082041132598009824801c08a0428230dd7000a092304600141106eb8004c11402d0461821805208280e2082375c0028220c10400503f1bae00130400024104607c00281e0dd7000981e801207c303b00140e4606e6ea801202681a202680ca02680ca02680ca02680ca02681c0dd6000c04a02481d8c0e0005036181c00140420210108082072303600140d0606c00500e807403a01c81b8c0d0005032181a001403201900c806206a303200140c0606400500a805402a0148198c0c000502e181800140220110088042062302e00140b060546ea800600c813a00c815a00d006803401902f1816000a054375c00260560048160c0a400502718129baa003800a0442223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020545980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81210241bac3027002375a604a0026466ec0dd418128009ba73026001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6054003337149101023a200098008054c0ac00600a805100a181680144ca6002015302a00199b8a489023a200098008054c0ac006600e66008008004805100a18168012056302d00140a866e29220102207d00003409c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d204e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720523371666e000056600266e2000520148a40c11481b9029002200c33706002901019b8600148080cdc7002001204c375c0068150dc5245022c20002232330010010032259800980a000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408481088acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601\"\n :\n \"5906f2010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc004896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a60103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a4444646466446644b30013010301c375400313259800980b180e9baa0018acc004cdc79bae3021301e37540026eb8c020c078dd518109811181118111811180f1baa300e301e3754646600c0022002660066eb0c038c078dd500a80dc4cc03cdd59808180f1baa0153374a9001198101810980f1baa330033758601c603c6ea805406d2f5c11640711640706040603a6ea8c080c074dd51806980e9baa3020301d375400316406c4464b30013011301d3754003132598009806980f1baa0018991980380088009811180f9baa0018b203a3008301e3754601c603c6ea8c084c078dd5000c5901c1980400111980698021bab300e301e3754601c603c6ea8004008cc018dd6180f180d9baa01223375e603e60386ea80040448966002601c60346ea800a2646644b300130220018992cc004c048c078dd5000c4c8c8c8c8c8ca60026eb0c0a0006605000b30280049814001cc0a00092222259800981700344cc048c0b402c4cc0480104cc04800c4cc048008566002603a60526ea800626464653001375c6060003375c6060007375c60600049112cc004c0d00122646644b3001303700380cc590341bae3034001375c606801860680171640c43030001302f001302a37540031640a11640ac30280013027001302600130250013024001301f3754003164074604200316407c6eb8c07c004c080004c06cdd500145901918030031800800911192cc004c03800626464b3001302100280245901e1bae301f001301b37540071598009809800c4c96600260400031330083758603e00244b3001002802c6600200f3021002898009811001200e407d16407460366ea800e2b300130090018992cc004c0800062660106eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c56600266e1d200600189919912cc004c0880062660146eb0c08400489660020050078cc00402660460051300130240024024810a2c80f8dd6980f8009810000980d9baa0038acc004cdc3a40100031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40140031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40180031323259800981080140122c80f0dd7180f800980d9baa0038b2032406480c90192032406480c8c064dd500122b300130063012375400f19800980b18099baa30163013375400f3758602c602e602e602e602e602e602e602e602e60266ea802a602c602e602e602e602e602e602e602e60266ea802a6eacc014c04cdd500524444646600200200a4464b3001300d0018998048031bae301d301a37540051598009809000c4c8cc004004dd6180f180d9baa0032259800800c528c5660026600a00a603e00313300200230200018a50406880ea2b30013008001899198008009bac301e301b375400644b30010018a508acc004cc014014c07c0062946266004004604000280d101d456600266e1d200600189919b89375a603c00264660020026eb0c07cc080008896600200314800226644b300133008008002899b800014800a200280e8c080004cc008008c08400501e180d1baa0028acc004cdc3a4010003132332259800980a980e1baa0028acc004c054c070dd518101810801c4cdc49bad3020301d37540040031337106eb4c080c074dd5001000a0368a50406c603c0026eb4c078c06cdd5001980d1baa300a301a375400b15980099b87480280062646644b30013015301c3754005159800980a980e1baa30203021003899b89001375a6040603a6ea800a266e20004dd69810180e9baa002406d14a080d8c078004dd6980f180d9baa003301a3754603a60346ea801626601600866e9520023301c301d301a375400497ae0406080c10182030406080c0c060dd5000a2c80890110c034dd50040c028dd5001c590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_3ProtocolProtocolWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5948aa010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013a657870656374206d61746368696e675f6f75747075745f6964783a20496e74203d206d61746368696e675f6f75747075745f6964785f6461746100168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a494c657870656374207369676e65645f7061796c6f61643a205369676e65645061796c6f61643c50726f746f636f6c52656465656d65723e203d207369676e65645f7061796c6f61645f6461746100168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888966002646530013014001980a180a800cdc3a400930140024888966002600460286ea800e264b30010058999119912cc004c010c064dd5004c4c96600200300d8992cc004006264b3001001807c4c96600200301080840420211332259800800c04a264b3001001809c04e264b300130260038acc004c030c084dd5003c4c9660020030158992cc00400602d132598009814801c4cc030004896600200513300e0062259800801466002444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c814a6e05200091111919800800802912cc004006200b13259800800c4cc010c0cc00801a26600a6066004660060060028188c0cc0050304dc0240032259800800c52f5c113302d302a302e00133002002302f00140b1374a900048c0b4c0b800644646600200200644b30010018a508acc004cdc79bae30300010038a518998010011818800a05440b92302d302e302e0014888888888cc8a600244646600200200644b30013022001899b8a4890130000038acc004cdc4000a40011337149101012d0033002002300e00189980319b8400148050cdc599b803370a002900a240c000681a903548c00800644646600200200644b30010018a6103d87a80008992cc004c010006260166607600297ae0899801801981e801206c303b00140e4911191991192cc00400633001370e90034dc3a4011370e9005244464b30013029303e375400b13259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c0fa07d132598009828001c6600201919800805466002011198008034566002606c60966ea8012264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4c96600260b20071598008054122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260bc0071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc724503020408003370000490189180119bca4a2003124bded8c101400001012000416c82d905b488888ca600200300380120022225980099b89002480022600297ae08919194c00401a607200b23005330680020019bad3065002401860c60033001009804400500720be9b87483f80e6e0120029119bb00023750002911111991191919192cc004c13cc190dd5000c4c9660020031323298009112cc004c154c1a8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800983b00146600200d19800800c02601082d2010805a010839a0110088044021077183a000a0e4375a00260e600500541d060e20028378c1c400a007003801c00d0721837800a0da306b375400700141a11325330673372c9211c5b70726f746f636f6c5d20566572696679696e67206e6f6e63653a2000373266062607460d26ea801122010019800918369837183718371837183718371837000c89660020031480022601c6600400460de002836244646600200200644b30010018a508acc004c00cc1c0006294626600400460e2002835106e4dd2a40049111191929983699b964901205b70726f746f636f6c5d207665726966795f6e6f6e636520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041b0910100159800800c6600260e460de6ea802a44646600200200644b30010018a40011332259800980280144c06000620028390c1d8004cc008008c1dc005074488c8cc00400400c896600200314a115980099baf003307230760018a51899801001183b800a0e041d12232330010010032259800800c528c566002600660ec00313300200230770018a5041c083a2460e660e860e860e860e860e860e860e860e8003230733074307430743074307430740019112cc004c170c1c4dd5001c4c9660020030028992cc004006007003801c4c96600260f200700580220ec375a00300341e460ec00283a0c1c8dd5001c00506f48c1ccc1d0c1d0c1d0c1d00064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e8899802802983d80220e8375c60e80026eacc1d4004c1dc0050750a5eb7bdb18244b30010018a40011301433002002307500141c923073307430743074307430740019112cc00400a298103d87a80008acc004c17000626088660e860ea00497ae08cc00400e60ec0053046001400c837907348966002003148002260286600400460ea002839244b30010018a5eb82264660e86ea0004cc00c00cc8cc004004c1dc00c896600200314bd7044cc896600330013370e00400b4a14a2839a2660f06ea0008cc0100100062660080080028398dd6983b800983c000a0ea375a60e80028392444646600200200844b300100189983b19bb037520086ea000d2f5bded8c113298009bae30740019bad3075001983c8012444b30013372001000713307a337606ea4020dd4003802c56600266e3c02000e2660f466ec0dd48041ba800700189983d19bb037520066ea0008cc01801800507520ea183b800a0ea911919800800801912cc004006297ae0899912cc004cdd7983c183a9baa307830753754608c60ea6ea8008c024cc1dcdd4802a5eb822660ee0046600800800313300400400141c860ec00260ee00283a244b30010018a40011301433002002307500141c93710900024444444444444444453001222232330010010052232598009839000c4cc160018dd71845809844009baa0028acc004c1c400626602c6eb0c22c04c22004dd5001119802002000c56600260ea00313301d37586116026110026ea80088cc0100100062b3001304d00189919b89375a611802002660326eb0c23004c234040048cc014014004c22004dd500145660026098003132332259800983a1845009baa0028acc004c1d0c22804dd5184700984780801c4cdc49bad308e01308b0137540040031337106eb4c23804c22c04dd5001000a110028a504220046118020026eb4c23004c22404dd50019844009baa3059308801375400b1598009825800c4c8cc896600260e86114026ea800a2b30013074308a013754611c02611e020071337120026eb4c23804c22c04dd500144cdc40009bad308e01308b01375400484400a2941088011846008009bad308c0130890137540066110026ea8c22c04c22004dd5002c4cc05c010c070cc22804c22c04c22004dd500125eb8108501210a0242140484280908501210a02308601375400330090099840009baa0129111191980080080291192cc004c1c8006264a6610e0266e59240121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660a26ea400522010013259800983a1844809baa001899194c004dd7184780800cdd7184780984800800cdd71847808012444a6611a029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308d013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660ae6ea4005220100153308d013372c9201187665726966795f65643235353139207061796c6f61643a20003732660ae6ea4009220100153308d013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660ae6ea400d22010013253308e013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660b13001001a60103d87a8000a60103d879800042340491010010019800800c00a006b950c23c04004dd61846809845009baa0018a998440099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660a46ea400922010014a0843808c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c611e020020091305e3308e01374e00297ae08998018019848008012112023758611c02002846008dd71845809844009baa0028acc004c1c4006264a6610e0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416c6c4f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301700123300500500137586116026110026ea800a2b300130750018992998438099b96490122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416e794f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301e00123300500500137586116026110026ea800a2b3001304d00189919912998448099b96490112436865636b696e672041744c656173743a20003732660a66ea000922010013253308a013372c92011941744c656173742073617469736669656420636f756e743a20003732660a86ea000522010013253308b013372c92011041744c6561737420726573756c743a20003732660ab3001001a60103d87a8000a60103d87980004228049101001001337120060026603600246600e00e0026eb4c23004004dd61846009846808009844009baa0028acc004c130006264a6610e0266e5924111436865636b696e67204265666f72653a20003732660a26ea0005220100132533088013372c92010f4265666f726520726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc49bad308e01308b0137540020071337106eb4c23804c22c04dd5000801a110028a50422004611a020026112026ea8c168c22404dd50031bad308b0130880137540051598009825800c4c94cc21c04cdcb24910436865636b696e672041667465723a20003732660a26ea0005220100132533088013372c92010e416674657220726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc48019bad308e01308b0137540031337100066eb4c23804c22c04dd5000a110028a50422004611a020026112026ea8c23004c22404dd50031bad308b013088013754005132533087013372c920111436865636b696e67205363726970743a20003732660a26ea4005220100132533088013372c92010f53637269707420726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c04910100100133018005301d3308b01375200297ae0375c6116026110026ea800908501210a0242140484280908501210a023086013754003300700798030034c0140164446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803210e02899802802984700802210e02375c610e020026eb4c22004004c2280400508801198070020018a400130020024888888888ca6002444b30013370e60180046010600e646600200200644b30010018a5eb8226612402611e026126020026600400461280200284880a2646600200200644b30010018a5eb8410100008101a0008101a00044c8c8c8cc896600260fe6128026ea800a264b3001300900189984c009ba8337006eb4c26404008dd69833984b009baa0013309801374c64b300130800130960137540031375660d000713756613402612e026ea800509401192cc004c20004c25804dd5000c530103d87a8000898349984c809ba698009bab30680039bae309a013097013754003005406897ae042500460ca612c026ea8004cc26004dd34c004dd598328014dd9984c80984d00802c01101925eb822a66128029211a6578706563742076616c69646174696f6e2872657175657374290016424c04613002612a026ea800a2a661260292012f65787065637420536f6d65287265717565737429203d206c6973742e61742874612c20726571756573745f696478290016424804660120100026600a00a612e020086eb4c25404004cc24c04c24004004cc24c04c244040052f5c061260200284880a2a66118029201886578706563740a202020206c6973742e6c656e67746828726571756573745f746f5f6f75747075747329203d3d206c6973742e6c656e677468280a2020202020206c6973742e756e69717565286c6973742e6d617028726571756573745f746f5f6f7574707574732c20666e286974656d29207b206974656d2e317374207d29292c0a20202020290016422c0522225980099b873022004302200389980e8021192cc004c1ecc24004dd5000c4c96600260f86122026ea800626644b3001308101309301375400313259800800c4c966002610002612a026ea800a264b300100184880c4c96600200313259800800c24c06264b30010018992cc00400612a0313259800800c4c966002003097018992cc004c2880400a330010078cc004016264b30013089010018992cc0040061340313259800800c26c061360309b018992cc004c2980400e01b09c01428c046eb400613602853008c28c040050a101184f809baa0048acc004c22004006264b300100184d00c4c96600200309b0184d80c26c06264b300130a601003806c270050a3011bad00184d80a14c0230a301001428404613e026ea80121320284e00909c01184e809baa00384c00a06e84c00a0c084c00a13e0230a0010014278046140020050960184b00c2580612c02850808c2780400509c01184f00801425006128030940184a00a13e02309c010014268046138020050920184900c248061240284e808c2680400509801184b009baa00284800a1260215980099baf30663095013754002613002612a026ea800e2b3001337126eb4c198c25404dd5001cc004dd59833184a809baa3066309501375400d375c61300200f375c60cc00e806a264b3001308001309501375400313370e6eb4c26404c25804dd50009bad3067309601375400913370e6eb4c26404c25804dd50009bad30673096013754008849808c190c25404dd5000c54cc24c05241666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400164248051533093014913865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001642480508f0184780c23c0611e0284d008c25c04c25004dd5000c54cc248052413365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d0016424404612a026124026ea8004c184c24804dd518319849009baa0038a9984800a4814765787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c206d61746368696e675f726571756573745f696478290016423c046600e00a6eb4c25004c24404dd5000c54cc23c0524016565787065637420536f6d65286d61746368696e675f726571756573745f69647829203d0a2020202020202020646963742e676574286d617070696e672c2063626f722e73657269616c69736528696e7075742e6f75747075745f7265666572656e6365292900164238046644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130693309901375000297ae0803212802899802802984d80802212802375c6128020026eb4c25404004c25c04005095011bb330930130900137540022980103d87a80008a9984680a4933657870656374206c6973742e6c656e67746828696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016423005222253308d0149012d5b76616c69646174655f6f7574707574735d205374617274696e67206f75747075742076616c69646174696f6e0015980099b87300600230220038994c004006900040110011112cc004006294626644a661240266e59241305b76616c69646174655f6f7574707574735d2056616c69646174696e67207265717565737420617420696e6465783a20003732660b86ea001122010013259800983f984a009baa0018992cc004c20004c25404dd5000c4c9660020030920184900c2480626464b300130830130980137540031325980099baf309d01309a013754002613a026134026ea8c27404c26804dd5004456600266ebcc1a4c26804dd50009835984d009baa309d01309a0137540111533098013372c92012d5b76616c69646174655f6f7574707574735d20436865636b696e67206f757470757420617420696e6465783a20003732660c46ea000d2201001533098013372c9201245b76616c69646174655f6f7574707574735d20457870656374656420616d6f756e743a20003732660c460d66134026ea80212201001533098013372c9201225b76616c69646174655f6f7574707574735d2041637475616c20616d6f756e743a20003732660c46ea260026eacc1acc26804dd5000cdd7184e808064dd71835806202448900159800803c4cdc3cc004dd59835984d009baa0019bae309d0100c9bae306b00c404864b300133710002900044c1c4006200284c008dd69835984d009baa0088a50425c0515330980149139657870656374206d61746368696e675f6f75747075742e646174756d203d3d20726571756573742e64657374696e6174696f6e2e646174756d0016425c051533098014913d657870656374206d61746368696e675f6f75747075742e61646472657373203d3d20726571756573742e64657374696e6174696f6e2e616464726573730016425c046138026132026ea80062a6612e0292014465787065637420536f6d65286d61746368696e675f6f757470757429203d206c6973742e6174286f7574707574732c206d61746368696e675f6f75747075745f6964782900164258046601c01a0026eb40061240284e008c26404c25804dd5000c54cc250052415b65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f6461746129203d0a202020202020202063626f722e646573657269616c697365286d61746368696e675f6f75747075745f6964785f6279746573290016424c0460646eb8c26004c25404dd5000c54cc24c0524013e65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f627974657329203d20646963742e66696e64286d617070696e672c2069290016424804646600200201044b30010018a60103d87a80008992cc004cdc38039bad309701001898349984c80984b00800a5eb8226600600661360200484a008c2640400509701184a80800cc00400e606a005309601001400c84980a2a6611a0292013265787065637420646963742e73697a65286d617070696e6729203d3d206c6973742e6c656e6774682872657175657374732900164230052223233225980099b87375a6128020020051325980099912cc004006294226530013259800984000984a809baa00189bad3096013099013756613202612c026ea8006290002126023098010019baf3098013099010019bab0024889660020031598009801002c4cdc4a400000714a084a80a264b30013375e61300200298010140008acc004cdc49bad309901309c01375661320200200913003374c613a0200514a084b00a2b300133712900000244c00c01a294109601212c02309b01001426404329800800c00e44661320200466132026e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c25c040066eacc260040066138020069112cc004cdc8a441000038acc004cdc7a4410000389980298369984e809ba60024bd70000c4cc015300103d87a800000642600519800803c006446600e0046613e0266ec0dd48029ba6004001401c84c00861340200484c00a294229422941099011bab3063002374c661280266ec0c25404004dd31984a0099bb0309501309601001375066e0400c0152f5bded8c097adef6c608801c54cc240052401c56578706563740a202020206173736574732e6d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a20202020290016423c046eb0c060c24404dd5003454cc23c052401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e740016423804b30013079300d0018a4001159800800c21806264b30013094010028acc004cdc79bae308f01001488104555344720089bad3090010018a9984700a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200164234050870142440461240200284800908c0119192cc004c1ecc24004dd5000c4c96600266ebcc25404c24804dd5184a809849009baa30633092013754002604c66128026ea400d2f5c1132598009840009849009baa0018992cc004006330010018992cc004c1fcc25004dd5000c4c96600266ebcc26404c25804dd5184c80984b009baa001302a3309801375200e97ae08992cc004c21004c25804dd5000c4c96600200319800800c4cc26804dd419b81375a6136026130026ea8004dd6984d80984c009baa0053309a01374c6530010019bab306a30990137540093233001001375660d66134026ea8c1acc26804dd5004912cc004006297adef6c608991984f0099bb0309b01001374c64660020026eacc27404008896600200314bd6f7b63044c8cc28404cdd8184f008009ba83075375a613e020026600600661460200461420200284f808cc00c00cc28004008c2780400509c012002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd3001a5eb7bdb1822653001375c614002003375661420200330a50100248896600266e4002000e26614c0266ec0dd48041ba60070058acc004cdc7804001c4c966002b30010018a518a5042980510028998538099bb037520126e980040090a201194c0040060110034004444b30010028800c4c8cc8a600200d30ae010059919800800802912cc00400626615c0266ec0dd48021ba80034bd6f7b63044ca60026eb8c2b0040066eb4c2b4040066162020049112cc004cdc8004001c4cc2c804cdd81ba9008375000e00b15980099b8f0080038992cc004c26c0400620051330b301337606ea4024dd4000801215c023370000e0051330b201337606ea400cdd400119803003000a15a0242b40430af0100142b4048030dd71853808009bad30a80100130aa0100242a0051330a601337606ea400cdd300119803003000a1420242840430a3010014284048030dd7184d808009bab309c01001309e0100242700497ae084880a04684880c244061220309101427404613402612e026ea80062a6612a0292012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642500460ca612c026ea80062a661280292013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016424c04613002612a026ea80062a661260292013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c20736372697074290016424804660bc6eb0c18cc25004dd500411983298301bab3066309501375400200d08c01407d08c0184600c230061180284c808c25804c24c04dd5000c54cc244052413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642400460c26124026ea8c18cc24804dd5000c54cc2400524014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016423c046128026122026ea8006297ae110100008101a000211c023305737586126026120026ea8010004dd71849009847809baa3019308f0137540086602e6eacc060c23804dd50011bae305f308e0137546030611c026ea800d222259800983c80644cc894cc23c052411f5b6d696e745d205374617274696e67206d696e742076616c69646174696f6e00159800cc004c25004c24404dd502bc0a660506122026ea81f66eacc074c24404dd503ea01a8a9984780a49205b6d696e745d207361746973666965645f7061796c6f61647320706173736564001323298009bab3096010019bab3096013097010019bad30960100248894cc25004cdcb24812f5b6d696e745d2070726f636573735f7265717565737473207061737365642c2073756d6d65645f616d6f756e743a20003732660bc6ea0005220100132533095013372c92011b5b6d696e745d206f726465725f696e7075747320636f756e743a20003732660be6ea0c0a8005220100159800cc0040060110049bac301e30970137540ba805a2a6612a0292011d5b6d696e745d2076616c69646174655f696e707574732070617373656400159800cc004dd61833184b809baa08301804400e661320260d0612e026ea8c084c25c04dd502e9984c80a601054455534472004bd7020148a9984a80a4811e5b6d696e745d2076616c69646174655f6f7574707574732070617373656400132533096013372c9201215b6d696e745d206d61696e7461696e5f747265617375727920726573756c743a20003732660c13001001a60103d87a8000a60103d879800042540491010010013370f300105d84180d200040240051533095014901816578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a202020202900164250051533095014917a6578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f726967696e5f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016425004660306eb0c26404c25804dd5041009bae306530960137546040612c026ea8170612c020033001002800c8c048dd698319849009baa0014019153308f014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164238046eb0c24804c23c04dd50101bab309201308f013754612402611e026ea81fa2b3001307800c8992cc006600260c26120026ea815a051302730900137540f9375660386120026ea81f100c44c8c9660033001330143758612a026124026ea81f8dd718309849009baa301c30920137540b10039bab3095010019984a0098319849009baa301c30920137540b066128029801054455534472004bd70200c8acc00660026eb0c184c24804dd503f400e6eacc25404c258040066eb0c064c24804dd502c200a899b87980082c41fa90002008375a612a020051533090014901796578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f75747075745f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016423c05153309001491826578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f726967696e5f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a20202020290016423c04612a0200330010019bab30930130900137546126026120026ea81fe466e20dd698311848809baa00148001005454cc23805241856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164234046eb0c24804c23c04dd5010456600260f801913259800cc004c17cc24004dd502b4dd6180e9848009baa07c98139848009baa07c9bab301c30900137540f8807a2b300130100018983d4c00415a0f90014009153308e014911a6578706563742077697468647261775f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501044c9660033001305f30900137540ad3758603a6120026ea81f2604e6120026ea81f26eacc070c24004dd503e201e8acc004c040006260f5300105683e4cdc1000a400280122a6611c02920119657870656374206465706f7369745f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501021180242300484600844b300133710002900045300103d87a8000899803801000a1120222a660da920113657870656374206e6f6e63655f726573756c74001641b0653001306e37540032323232332259800982f8014528456600260c40051980099baf30783075375400298103d87b8000a50a5141c913233225980098310014528c56600260c200513322598009831983c9baa304b307a375400d13371000400313371200400283b8dd6983d983c1baa003598009830983b9baa30493078375400f10018980d800a0ea8a5041d483a8c1d4dd50009bad30793076375400860f060ea6ea800507220e43072375400260ec60ee00660ea60e46ea8004c1d0004c1c0dd5000c888c8cc896600260be005159800982f983a1baa0018a6103d87a80008a6103d879800041c91598009831001456600260c460e86ea80062980103d87a80008a6103d87b800041c913322598009830800c530103d87b80008acc004c180006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041d483a8dd6983d183b9baa0038a6103d879800041d083a0dd6983c183a9baa00330743754002839107218391baa0013002003300100348896600260b80071325330713372c921215b7665726966795f6e6f6e63655d204c6f6f6b696e6720666f72206f7265663a200037326607600291010015330713372c9201215b7665726966795f6e6f6e63655d204e756d626572206f6620696e707574733a20003732660766ea0c018dd6183b18399baa05f48900133008375860ec60e66ea817c94cc1c8cdcb24811f5b7665726966795f6e6f6e63655d20436865636b696e6720696e7075743a200037326607860ee60e86ea80052201001325330733372c9201185b7665726966795f6e6f6e63655d204d6174636865733a200037326607b3001001a60103d87a8000a60103d879800041c891010010013375e60ee60e86ea8004008c1d4c1c8dd5002456600260b600713322598009802000c528c566002600800514a1159800cc004cdd7cc004c1dcc1d0dd50014c1dcc1d0dd5000c8c8c96600260c060ec6ea8c1e8c1ec00a2003132598009830800c4c030cc1e8dd4180d9bad307b3078375400497ae08acc004c1880062005100241d483a8c1d8dd5000a0e83079001307537540028019300103d87b8000a50a5141c51980099baf98009822983a1baa0029822983a1baa001919192cc004c180c1d8dd5183d183d80144006264b30013061001898061983d1ba8304c375a60f660f06ea80092f5c11598009831000c400a200483a9075183b1baa00141d060f200260ea6ea8005003260103d8798000a50a5141c514a0838907120e2307530723754008601260e46ea817a294106f20de181f98371baa009300300319198008009bac3038306937540b044b30010018a5eb822660d86e9cc8c8cc1b8c1bc008cc1b8c0ecc1b0dd5000998371ba9980091838183898389838800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004835906b1b8d001981f198372610b4a5369676e617475726531003306e306f306c375460de60d86ea8004cc1b93010140003306e303d306c37540b697ae048894cc1b4cdcb249165369675374727563747572652e636f6e746578743a200037326606e60e460de6ea8005220100153306d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e608060de6ea8005220100153306d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607c60de6ea8005220100153306d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e600660de6ea800522010013253306e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b88370dc68009bae3072306f375400266e28c008dd7182018379baa0013371460046eb8c0f8c1bcdd500098011bae3003306f37540024bd70183718378009bac306d00133002002306e00141ad22259800982a98351baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130700018acc004cdc4a400860de0030068992cc004c1d4012264b3001305c0018acc004c1c8dd50034026010839a2b3001305b0018992cc00400601313259800800c02a01500a8992cc004c1e400e01900b41d86eb400601483c8c1d800507418391baa0068acc004c17c0062b30013072375400d00980420e680420de41bc8378c1c0dd5002c01d072182c9837800a0da80320e23754003005802c01600a83a0c1c400506f1838801400e007003801a0e4306f00141b460d66ea800e002834122259800982a98351baa0068992cc0040060c113259800800c4c9660020030628992cc0040062b30013073002899912cc004c16c006264b300100183344c966002003067833c4c96600260f000713305b0012259800801401e264b30010018cc0040062600460f600706b403d06b835c1ae0d683e0c1e400907741a10751bac001833c19d078183a800a0e63071375400b159800982d000c4c9660020030668992cc0040060cf0678992cc004c1e000e2660b600244b3001002803c4c96600200319800800c4c008c1ec00e0d6807a0d706b835c1ad07c183c80120ee83420ea3758003067833a0f0307500141cc60e26ea80162b3001305e0018992cc0040060cd13259800800c19e0cf0678992cc004c1e000e00b06841d46eb40060ce83c0c1d400507318389baa0058acc004c0d8006264b300100183344c966002003067833c19e264b30013078003802c1a10751bad001833a0f0307500141cc60e26ea80160ca837106e20dc41b8264b3001305a0018992cc0040060cb13259800800c56600260ec005159800982e18389baa0018992cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c4c96600260f800700f83620f2375a00306b41f060f200283b8dd7000983c00120f2307600141d060e46ea80060cc837a0cc839a0cd0668334199077183a000a0e430703754005159800982c800c4c9660020030658992cc0040062b300130760028acc004c170c1c4dd5000c4c9660020030678992cc004006264b3001001834c4c966002003159800983d00146600200719800800c0360d480620d480620d483ba0d506a83541a907b183c000a0ec307800283441a20d106841e460ec00283a0c1c8dd5000c19906f4199073419a0cd06683320ee307400141c860e06ea800a2b3001305d0018992cc0040060cb13259800800c19a0cd06683344c96600260ee00700a833a0e8375c00283b8c1d000507218381baa00283220da41b48368c1b8dd500098371baa003831a0e0831c18e0c706341d060e20028378c1c400a0c3061830c1850721837800a0da306b375400d05f41a022259800982a18349baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130720028992cc004c164c1b8dd500244c9660020030078992cc004006264b3001001804c4c966002003159800983b80146600200713259800982f000c4c96600200300c8992cc0040062b3001307a0028992cc004c184006264b3001001807c4c966002003159800983e80146600200300b808202680820f4808404202101041f860f600283c8c1dcdd5001456600260c000313259800800c03e264b300100180840420211332259800800c04a264b3001001809c04e0271332259800800c056264b300100180b405a02d13259800984200801c04a02e840808dd6800c05908401184080800a0fe375a00261000200501342040460fc00283e0dd6800983e801404107e183d800a0f23077375400500e41d083a0c1d4dd5000c035077403601b00d806a0f6307800141d860e86ea800a2b3001305d0018acc004c1d0dd5001401a01683aa016838907118391baa001805201a80520e8805402a01500a41e060ea0028398c1d400a01100880440210761839800a0e2306f375400900641b0264b300130590018acc004c1bcdd5001401e00c83822b300130580018992cc00400600f13259800800c02201100880444c96600260ec00700a804a0e6375c00283b0c1cc00507118379baa0028acc004c170006264b3001001803c4c96600260ea00500980420e4307300141c460de6ea800a00c836106c20d8306d375400300541bd005802c01600a8398c1c000506e1838001400e007003801a0e2306e00141b060d46ea800e0028338888c96600260a800313259800800c00e264b300100180240120090048992cc004c1c400e00d00541b86eb80050711837000a0d8306a37540091598009829800c4c9660020030038992cc0040060090048024012264b30013071003803401506e1bae00141c460dc0028360c1a8dd5002400906720ce3068375400705a82d416a0b48358c1a0c194dd5000c54cc18d24014565787065637420536f6d65287369676e65645f7061796c6f61645f6461746129203d2063626f722e646573657269616c6973652872656465656d65722e7061796c6f6164290016418860026eb8c0d4c190dd50299192cc004c13c006298103d87a80008992cc006600260a06eb4c1980069429450634530103d87a80008981c198341832800a5eb810634c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d06548896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b810010034195001400c8310dc680098008009119800911191919bb032374e660d660d0002660d660d200297ae03376060ce00460ce00260d0003300100691000c012007375a60ce0028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130510018cc004012007002918051ba800140351598009828000c6600200900399b80002480fe460146ea0c0f0c0f800500d456600266e1c00920be0189919800800918059ba9001223300648008966002601c00313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014419d19800802400e66e00009207f918051ba9001401c832106420c88acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300d3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180719ba5003001404080810672cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014198833100d4566002605600315980099b87002482f80a33001004801ccc01801888006460146e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300b374e002806900d20c88acc004c0a80062b30013370e004907f0144c8c8cc0040048c030dd30009119803a40044b3001300f0018980125eb7bdb18224646530010069180319838801000cdd69837001200c323376060e200260e260e40026eb0c1b000660020130089807800a00a41a06600c00c4400519800802400e66e0000920bf02919194c0040060072300d374c00280088896600266e24009200089800a5eb7bdb18224646530010069821802c8c014cc1c80080066eb4c1bc0090061919bb0307200130723073001375860da003300100a804c00500520d23300700722002403483222497bdb181014000010120004190832106420c8337060029020111119198008008011119803240044b3001300a0018980125eb8224646530010069180319836001000cdd69834801200c30670019800804401e6014002803106311114c00401200700291980200091801800a012413505b1bae001417860b600282c8dd7000982d005a0b6305800a415904841586eb8005059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500240fd04940fd00e40fd00e40fd00e40fd00e40fd04d1bac00181f40f90501826800a096304d00281e40f207903c413860960028248c12c00a07503a81d40e904c1824800a08e304900281c40e20710384128608e0028228c11c00a06d03681b40d90481822800a086304500281a40d2069034411860860028208c0fcdd5002c0c903c111194c004006009003400444464b3001302f0018992cc00400600d13259800800c01e00f007803c4c96600260980070058042092375c0028260c12400504718229baa0038acc004c0b8006264b300100180344c966002003007803c4c966002609800713302f0012259800801401e264b30010018cc00402a00313002304f003402900b805c02e0168280c13400904b40210491bac001803c01d04c1824800a08e304537540071598009819000c4c9660020030068992cc00400600f0078992cc004c13000e26605e00244b3001002803c4c96600200319800805400626004609e006805201700b805c02d0501826801209680420923758003007803a0983049001411c608a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009827801c4cc0c8004896600200500a8992cc0040063300100d800c4c008c14800d00d403a01d00e80720a63050002413900b41306eb000601500a413c60980028250dd68009825801401d04c1824800a08e304537540071598009804800c4c9660020030068992cc00400600f007803c4c96600260980070058042092375a003007413060920028238c114dd5001c566002601000313259800800c01a264b3001001803c01e00f132598009826001c0160108248dd6800c01d04c1824800a08e3045375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009826001c0160108248dd7000a0983049001411c608a6ea800e00a821104220844108821104220843043375400481740ba05d02e4100601660746ea8c94cc0e4cdcb24812467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea40dd220100132598009813181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a200037326600a002910100132598009815981e9baa0018992cc0040062b30013029303e375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098240014401a0728228c1180050441bae0013045002411860860028208c0fcdd5000c0d103c40d206903481a20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec6018607a6ea8c038c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46600400206e6eb0c02cc0e8dd50131800800911980200111980598031bab300c303b3754601860766ea8004008888c9660020071323233223300b0023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420805980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d103a1bac303d002375a60760026466ec0dd4181d8009ba7303c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6080003337149101023a200098008054c10400600a805100a182180144ca6002015304000199b8a489023a200098008054c104006600e66008008004805100a182180120823043001410066e29220102207d0000340f46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039011207a3758007133007375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40fc66e2ccdc0000acc004cdc4000a402914818229037207e004401866e0c00520203370c002901019b8e00400240f06eb800d0401b8a4881022c200018048049802802a264b300100180e4072264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0cc00a2b30013019302e375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc00400604f027813c09e264b3001303a0038acc004c080c0d4dd500344c9660020030298992cc00400605502a81540aa26644b300100181644c96600200302d816c0b605b132598009820001c660020151301430400158172048817207a375c0028200c0f400503b1bae001303c00240f4607400281c0c0d8dd500340a103340a10371bae00140e8606e00281a8c0dc00a04b025812c095038181a800a0663035002811c08e04702340d860660028188c0bcdd5000c08502c40850304086043021810a068303100140bc6eb8004c0c00090311817000a058375800301c80e205e302c00240a91323259800800c06e03701b899912cc00400603b01d80ec4c8c018c0c001cdd6800c0750301bad001302900280da05c3027001302a00240a101740986eac00602d01680b20523026001409060446ea801e02880fa0288118dd6000c04e0268130c08c0050211bae0013022002408c604000280f0c08000a01d00e8074039021180f000a038301a375401300c405c44464b300130060018992cc00400600713259800800c01200900480244c9660026046007006802a040375c0028118c08000501e180e1baa0048acc004c0140062b3001301c3754009003801203a8012032406460346ea800c88c8cc00400400c88cc00c004c008008dc3a40006e1d20028044022011008406c6030602a6ea800e2c80906028002601e6ea8056293454cc0352411856616c696461746f722072657475726e65642066616c7365001365640301\"\n :\n \"592497010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a40052232330010010032233003001300200248888c9660026008601c6ea802626464646644b300130180038992cc004c028c050dd5000c4c96600260340031330093756603200244b3001002899805803112cc00400a330012259800800c52f5c113301e301b301f0013300200230200014075374a900048c078c07c00644646600200200644b30010018a508acc004cdc79bae30210010038a518998010011811000a038407d2301e301f301f0019b874801a6e1d20089b8748029222222223322332232332259800980f18141baa00289919191919194c004dd61819000cc0c8016606400930320039819001244444b30013038006899806181b8058998060020998060018998060010acc004c0a4c0ccdd5000c4c8c8ca60026eb8c0e80066eb8c0e800e6eb8c0e800922259800981f00244c8cc896600260820071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc7244103020408003370000490189180119bca4a2003124bded8c10140000101200040fc81f903f4dc024003370e907f01cdc02400522337600046ea00066e052000488888a600244444653001001801c0090011112cc004cdc480124001130014bd70448c8ca600200d30100059180299828801000cdd69827001200c304c0019800804c022002803904948888c8cc00400400888cc01920022598009805800c4c0092f5c1123232980080348c018cc1400080066eb4c1340090061825800cc00402200f300b0014018824244453001004801c00a4660080024600600280512223232323259800981f98249baa00189919914c00489660026088609c6ea800a26464646644b30013058003899804982b802899823001003459055182a8009bad305500230550013054001304f37540051641351980099198008009bac3030304e375409044b30010018a5eb822660a26e9cc8c8cc14cc150008cc14cc0ccc144dd5000998299ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002414c8298dc68009bae30563053375400266e28c008dd7181b98299baa0013371460046eb8c0d4c14cdd500098011bae305630573057305730533754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241448288dc6800981b19829a610b4a5369676e617475726531003305330543051375460a860a26ea8004cc14d3010140003305330353051375409697ae04bd701829982a0009bac30520013300200230530014141230513052305230523052305230523052001911919800800801912cc00400629422b3001300330540018a51899801001182a800a09e4149374a900124444b300132980098289baa001919191919912cc004c13400a29422b300130500028cc004cdd7982d982c1baa0014c103d87b8000a50a51415913233225980098280014528c566002609e00513322598009828982e1baa3041305d375400d13371000400313371200400282d8dd6982f182d9baa003598009827982d1baa303f305b375400f10018980d800a0b28a50416482c8c160dd50009bad305c3059375400860b660b06ea800505620ac3055375400260b260b400660b060aa6ea8004c15c004c14cdd5000c888c8cc8966002609a0051598009826982b9baa0018a6103d87a80008a6103d879800041591598009828001456600260a060ae6ea80062980103d87a80008a6103d87b8000415913322598009827800c530103d87b80008acc004c138006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000416482c8dd6982e982d1baa0038a6103d8798000416082c0dd6982d982c1baa0033057375400282b1056182a9baa00130020033001003488966002609400713233007375860b260ac6ea81348cdd7982d182b9baa0010023058305537540091598009824801c4cc8966002600800314a315980098020014528456600330013375f3001305a30573754005305a3057375400323232598009827182c9baa305d305e0028800c4c966002609e0031300b3305d375060366eb4c178c16cdd500125eb822b3001305000188014400905920b23059375400282c0c170004c160dd5000a0064c0103d87b8000a50a5141551980099baf9800981d982b9baa002981d982b9baa001919192cc004c138c164dd5182e982f00144006264b3001304f001898059982e9ba8301d375a60bc60b66ea80092f5c11598009828000c400a200482c9059182c9baa001416060b800260b06ea8005003260103d8798000a50a51415514a082a905520aa305830553754008600e60aa6ea8132294105320a6181a98289baa0058cc004c150c144dd5002c88c8cc00400400c896600200314800226644b300130050028980b800c4005055182c00099801001182c800a0ac911919800800801912cc00400629422b30013375e00660a860b000314a31330020023059001414c82b244646600200200644b30010018a518acc004c00cc16000626600400460b200314a0829905648c154c158c158c158c158c158c158c158c158006460aa60ac60ac60ac60ac60ac60ac0032259800982418291baa002899192cc004c16400a0071641586eb4c15c004c14cdd500145905148c154c158c158c158c1580064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320ae899802802982e80220ae375c60ac0026eacc15c004c1640050570a5eb7bdb18244b30010018a400113013330020023057001415123055305630563056305630560019112cc00400a2980103d87a80008acc004c12400626072660ac60ae00497ae08cc00400e60b00053016001400c829105548966002003148002260266600400460ae00282a244b30010018a5eb82264660ac6ea0004cc00c00cc8cc004004c16400c896600200314bd7044cc896600330013370e00400b4a14a282b22660b46ea0008cc01001000626600800800282b0dd6982c800982d000a0ae375a60ac00282a2444646600200200844b300100189982c19bb037520086ea000d2f5bded8c113298009bae30560019bad3057001982d8012444b30013372001000713305c337606ea4020dd4003802c56600266e3c02000e2660b866ec0dd48041ba800700189982e19bb037520066ea0008cc01801800505820b0182c800a0ae911919800800801912cc004006297ae0899912cc004cdd7982d182b9baa305a30573754607660ae6ea8008c01ccc164dd4802a5eb822660b200466008008003133004004001415460b000260b200282b244b30010018a40011301333002002305700141512259800800c520008980999801001182b800a0a89b8848001222222222222222222298009111191980080080291192cc004c18000626609c00c6eb8c1b8c1acdd5001456600260be003133017375860dc60d66ea80088cc0100100062b3001306300189980e1bac306e306b37540044660080080031598009826000c4c8cdc49bad306f0013301a375860de60e000246600a00a00260d66ea800a2b3001304b00189919912cc004c188c1b4dd5001456600260c460da6ea8c1c4c1c800e266e24dd6983898371baa002001899b88375a60e260dc6ea800800506c452820d8306f001375a60de60d86ea800cc1acdd5182798359baa0058acc004c1280062646644b30013062306d3754005159800983118369baa30713072003899b89001375a60e260dc6ea800a266e20004dd6983898371baa00241b114a08360c1bc004dd6983798361baa003306b375460dc60d66ea80162660300086036660da60dc60d66ea80092f5c0834906920d241a4834906918349baa00198050054c18cdd5009c8888c8cc00400401488c96600260c00031323259800983118361baa001899194c004dd718390014dd718391839800cdd71839000ae5460e40026eb0c1c0c1b4dd5000c52820d632330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60e40020091305433071374e00297ae0899801801983980120da375860e20028378dd7183718359baa0028acc004c17c00626602e6eb0c1b8c1acdd5001119802002000c56600260c600313301c375860dc60d66ea80088cc0100100062b3001304c00189919b89375a60de002660346eb0c1bcc1c00048cc014014004c1acdd500145660026096003132332259800983118369baa0028acc004c188c1b4dd518389839001c4cdc49bad3071306e37540040031337106eb4c1c4c1b8dd5001000a0d88a5041b060de0026eb4c1bcc1b0dd500198359baa304f306b375400b1598009825000c4c8cc896600260c460da6ea800a2b30013062306d375460e260e40071337120026eb4c1c4c1b8dd500144cdc40009bad3071306e37540048362294106c18378009bad306f306c375400660d66ea8c1b8c1acdd5002c4cc060010c06ccc1b4c1b8c1acdd500125eb8106920d241a4834906920d23069375400330080089803803cc01801a6006007222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906b44cc014014c1c401106b1bae306a001375a60d600260da0028358cc03c01000c520009801001244444444446530012225980099b87300d0023009300832330010010032259800800c52f5c11330763073307700133002002307800141d5132330010010032259800800c52f5c30100008101a0008101a00044c8c8c8cc896600260dc60f06ea800a264b3001300900189983e1ba8337006eb4c1f4008dd6982f183d1baa0013307c374c64b3001306f307a37540031375660be0071375660fc60f66ea8005079192cc004c1bcc1e8dd5000c530103d87a8000898301983e9ba698009bab305f0039bae307e307b3754003005407097ae041e460b860f46ea8004cc1f0dd34c004dd5982e0014dd9983e983f002c01101b25eb822c83c0c1f0c1e4dd50014590771980480400099802802983d8021bad30790013307730740013307730750014bd70183b800a0ea8b20e091112cc004cdc398040021804001c4cc07c0108c96600260d460e86ea8006264b3001306b3075375400313322598009838183b9baa001899192cc004c1bcc1e4dd500144c8c8c8ca60026102020033081010039840808012444b300130850100489982c98420080389981b0010992cc004c1dc00626464b3001308801002805c59085011bad3086010013082013754005159800983b000c4c8c96600261100200500b8b210a02375a610c020026104026ea800a2c840009080011840009baa0018b210402184080800984000800983f800983d1baa0028b20f015980099baf305d3079375400260f860f26ea800e2b3001337126eb4c174c1e4dd5001cc004dd5982e983c9baa305d3079375400d375c60f800f375c60ba00e806a264b3001306f3079375400313370e6eb4c1f4c1e8dd50009bad305e307a375400913370e6eb4c1f4c1e8dd50009bad305e307a375400883c0c16cc1e4dd5000c59077459077183d983c1baa0018b20ec30793076375400260b060ec6ea8c168c1d8dd5001c59074198038029bad3078307537540031641cc6644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130603307d375000297ae080320f2899802802983f80220f2375c60f00026eb4c1e4004c1ec0050791bb3307730743754002298103d87a80008b20e291112cc004cdc398030011804001c4ca60020034800200880088896600200314a313322598009836983b9baa0018992cc004c1b8c1e0dd5000c4c96600260de60f26ea8006264b30013375e60fc60f66ea8004c1f8c1ecdd5183f183d9baa0058acc004cdd7982e983d9baa001305f307b375460fc60f66ea80162b300198008044c0ec01e60fe00c8042266e1e60026eacc17cc1ecdd5000cdd7183f004cdd7182f804a01e325980099b880014800226074003100141e86eb4c17cc1ecdd5002c52820f28b20f28b20f2307d307a37540031641e0660160146eb4c1f0c1e4dd5000c5907718181bae307b307837540031641d860f2002646600200200c44b30010018a60103d87a80008992cc004cdc38029bad30790018982f1983d983c000a5eb8226600600660fa00483b8c1ec00507920ee8b20e29111919912cc004cdc39bad30780010028992cc004cc896600200314a11329800992cc004c1bcc1e4dd5000c4dd6983d183e9bab307d307a3754003148001078183e000cdd7983e183e800cdd58012444b30010018acc004c008016266e2520000038a5041e91325980099baf307c0014c010140008acc004cdc49bad307d308001375660fa00200913003374c61020200514a083da2b300133712900000244c00c01a294107b20f6307f00141f4329800800c00e44660fa004660fa6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1ec0066eacc1f00066100020069112cc004cdc8a441000038acc004cdc7a44100003899802983219840809ba60024bd70000c4cc015300103d87a800000641f519800803c006446600e004661060266ec0dd48029ba6004001401c83e860fc00483e229422942294107d1bab305a002374c660f066ec0c1e4004dd31983c19bb03079307a001375066e0400c0152f5bded8c097adef6c608801c590741bac301a3075375400d1641ccb30013068300e0018a4001159800983b800c4c96600266e3cdd71839800a44104555344720089bad30740018b20e430760018b20e841c46464b3001306a307437540031325980099baf30793076375460f260ec6ea8c168c1d8dd500098131983c1ba90034bd7044c96600260de60ec6ea800626466042002264b3001306e307837540031325980099baf307d307a375460fa60f46ea8004c0a8cc1f0dd4803a5eb82264b30013073307a37540031323302500113307e375066e04dd6983f983e1baa001375a60fe60f86ea8014cc1f8dd3194c0040066eacc184c1f4dd50024c8cc004004dd59831183f1baa3062307e375401244b30010018a5eb7bdb182264661040266ec0c1fc004dd319198008009bab3081010022259800800c52f5bded8c11323308501337606104020026ea0c104dd698418080099801801984380801184280800a1060233003003308401002308201001420004800888966002005100189919914c00401a610c0200b32330010010052259800800c4cc21804cdd81ba9004374c00697adef6c608994c004dd7184200800cdd5984280800cc224040092225980099b900080038998450099bb037520106e9801c0162b30013371e01000713259800acc0040062946294108a014400a2661160266ec0dd48049ba6001002421c04653001001804400d0011112cc00400a2003132332298008034c24804016646600200200a44b30010018998490099bb037520086ea000d2f5bded8c113298009bae3090010019bad309101001984a808012444b30013372001000713309601337606ea4020dd4003802c56600266e3c02000e264b3001308a01001880144cc25c04cdd81ba90093750002004849808cdc000380144cc25804cdd81ba900337500046600c00c002849009092010c24c0400509101200c375c6116020026eb4c23004004c2380400908c0144cc22804cdd81ba9003374c0046600c00c002843009086010c21c0400508501200c375c60fe0026eacc20004004c208040090800125eb80c1f8c1ecdd5000c59079182e183d1baa0018b20f0307c307937540031641dc660a66eb0c168c1e0dd500411982e182a9bab305d3079375400200c60f460ee6ea80062c83a8c160c1d8dd5182d183b1baa0018b20e830783075375400314bd7090100008101a00020e63304e375860ee60e86ea8010004dd7183b18399baa301b30733754008660326eacc068c1c8dd50011bae305630723754603460e46ea800d2222598009834006c4c966003300130773074375409b0279813183a1baa06b9bab301e307437540d6806a26464b300198009980b1bac3079307637540da6eb8c160c1d8dd5180f183b1baa04f801cdd5983c800cdd6180d983b1baa04f4019159800cc004dd6182c183b1baa06d801cdd5983c983d000ccc1e0c168c1d8dd5180f183b1baa04f330784c1054455534472004bd70200a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba460246eb4c164c1d4dd5000a00a8b20e4375860ec60e66ea808a2b3001306700d8992cc006600260b060e86ea813604f3026307437540d73756603c60e86ea81ad00d44c8c966003300133016375860f260ec6ea81b4dd7182c183b1baa301e3076375409f0039bab30790019983c182d183b1baa301e3076375409e660f0981054455534472004bd70200c8acc00660026eb0c160c1d8dd5036c00e6eacc1e4c1e80066eb0c06cc1d8dd5027a00a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba466e20dd6982c983a9baa001480010054590721bac3076307337540451598009835806c4c966003300130563074375409b3758603e60e86ea81ae604c60e86ea81ae6eacc078c1d0dd5035a0208acc004c044006260d3300104d835c0050024590724590721bad30763073375404513259800cc004c158c1d0dd5026cdd6180f983a1baa06b9813183a1baa06b9bab301e307437540d680822b3001301100189834cc0041360d7337040029000a0048b20e48b20e4375a60ec60e66ea808907120e241c4225980099b8800148002298103d87a8000899804001000a0dc22c82792259800982218271baa00289919192cc004c15800a26464b300130490018acc004c150dd5001401a2c82aa2b30013048001899192cc004c16800a01116415c6eb4c160004c150dd500145660026098003159800982a1baa00280345905545905220a4414860a46ea8004c15400e2c8298c96600260a400315980099b8948010c1440062d130463051001414116414c6ea8c150004c150004c13cdd500145904d2444b30013045304f3754009132323259800982b80144c8cc8966002609600513259800982d800c4cc128dd6182d000912cc00400a00913300c305c00213001305d002416916416060ac6ea800e2b3001304a0028992cc004c16c0062660946eb0c1680048966002005004899806182e00109800982e80120b48b20b030563754007159800982700144c8c96600260b80050038b20b2375a60b400260ac6ea800e2b30013037002899192cc004c17000a0071641646eb4c168004c158dd5001c5905420a8415082a0c14cdd50008992cc004c128006264b3001305a0018992cc004c130c158dd5000c4c8c8cc896600260be00700d8b20b8375a60b80026eb8c170008c170004c15cdd5000c59055182c800c59057182a9baa0038acc004c124006264b3001305a0018992cc004c130c158dd5000c4c8c8c96600260bc00513300b305d00313300b00100c8b20b6305c001305c0013057375400316415460b200316415c60aa6ea800e2b3001304d001899192cc004c16c00a0131641606eb8c164004c154dd5001c5905320a6414c60a66ea8008c15800e2c82a0c154004c154004c140dd500245904e08966002608460986ea800a2646464b30013054002899912cc004c11cc144dd500144c8c8c96600260b200513300b3058003132598009825800c4c96600260b600313232598009827000c4c96600260bc003133010305d0010098b20b6305937540051598009826800c4c8c8ca60026eb4c17c0066eb4c17c00e6eb4c17c009222598009831802403a2c830060be00260bc00260b26ea800a2c82b9057182b9baa001305a0018b20b0305637540051598009825000c56600260ac6ea800a00b16415d16415082a0c150dd5000c59056182b800982b80098291baa0028b20a03053003132598009823000c56600260a26ea800a00b1641491598009822800c4c8c96600260ae0050078b20a8375c60aa00260a26ea800a2b30013049001899192cc004c15c00a00f16415060aa00260a26ea800a2c827904f209e304f375400316414460a400260a4002609a6ea800a2c8258c138c12cdd500111192cc004c10800626464b300130530028024590501bae3051001304d37540071598009820800c4c8c96600260a60050048b20a0375c60a2002609a6ea800e2c825904b18259baa0028b20903001375c605a60926ea810c8c966002607e00314c103d87a80008992cc006600260806eb4c12c0069429450494530103d87a800089818198269825000a5eb810494c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d04b48896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b81001003412d001400c8240dc680098008009119800911191919bb032374e660a0609a002660a0609c00297ae03376060980046098002609a003300100691000c012007375a60980028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130410018cc004012007002918061ba8001403d1598009820000c6600200900399b80002480fe460186ea0c03cc02c00500f456600266e1c00920be0189919800800918069ba9001223300648008966002602000313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014413519800802400e66e00009207f918061ba9001401c825104a20948acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300f3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180819ba50030014034809104d2cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014130826100f4566002605800315980099b87002482f80a33001004801ccc01801888006460186e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300d374e002805100f20948acc004c0ac0062b30013370e004907f0144c8c8cc0040048c038dd30009119803a40044b300130110018980125eb7bdb1822464653001006918031982b001000cdd69829801200c323376060ac00260ac60ae0026eb0c14400660020130089808800a00a41386600c00c4400519800802400e66e0000920bf02919194c0040060072300f374c00280088896600266e24009200089800a5eb7bdb1822464653001006980b002c8c014cc15c0080066eb4c1500090061919bb0305700130573058001375860a4003300100a804c005005209e3300700722002403c82522497bdb181014000010120004128825104a209433706002902011640f86eb8c0f8004dd7181f006181f005c5903b0c0e8004c0e4004c0d0dd5000c590324590350c0c8004c0c4004c0c0004c0bc004c0b8004c0a4dd5001459027180598139baa3259800980e98139baa0018992cc004c084c0a0dd5000c4c966002603e60526ea8006264646644b300130320038802c5902f18178009bae302f002302f001302a37540031640a0605860526ea80062c8138c028c0a0dd5180618141baa302b30283754003164098660026eb0c02cc09cdd500f0121802002111980180111980618029bab300d30293754601a60526ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c0100062601c6605600297ae08998018019816801204e302b00140a4601001044464b3001301b001899192cc004c0b000a0091640a46eb8c0a8004c098dd5001c5660026034003132598009815800c4cc068dd61815000912cc00400a00b19800803cc0b000a26002605a004803902a45902818131baa0038acc004c078006264b3001302b00189980d1bac302a0012259800801401633001007981600144c004c0b400900720548b2050302637540071598009803800c4c8cc8966002605a00313301c3758605800244b3001002803c66002013302e002898009817801201240b11640a86eb4c0a8004c0ac004c098dd5001c566002600c0031323259800981600140122c8148dd6981500098131baa0038acc004c01400626464b3001302c0028024590291bad302a0013026375400715980099b874803000626464b3001302c0028024590291bae302a00130263754007164090812102420484090812102418121baa00244c8cc89660026042003132598009809980e9baa0018991919192cc004c09800a264b3001301830223754003132323322598009815801c4cc064c0a80204c038c0ac03e2c8140dd718140009bae3028002302800130233754003164084604a00916408c6eb8c090004c090004c08c004c078dd5000c5901c1810000c5901e1bae301e001301f0013758603a00480da26466446008603e00a6eb4c060004dd6980c800980d80120328b202e3015375400316404c602e00b1640546eb0c054004dd7180a801180a800980a00098079baa0098b201a2232598009803000c4c8c966002602e0050048b2028375c602a00260226ea800e2b300130050018acc004c044dd5001c00a2c80922c807900f18079baa0024590080c024004c010dd5005452689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_3ProtocolProtocolElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5948aa010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013a657870656374206d61746368696e675f6f75747075745f6964783a20496e74203d206d61746368696e675f6f75747075745f6964785f6461746100168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a494c657870656374207369676e65645f7061796c6f61643a205369676e65645061796c6f61643c50726f746f636f6c52656465656d65723e203d207369676e65645f7061796c6f61645f6461746100168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888966002646530013014001980a180a800cdc3a400930140024888966002600460286ea800e264b30010058999119912cc004c010c064dd5004c4c96600200300d8992cc004006264b3001001807c4c96600200301080840420211332259800800c04a264b3001001809c04e264b300130260038acc004c030c084dd5003c4c9660020030158992cc00400602d132598009814801c4cc030004896600200513300e0062259800801466002444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c814a6e05200091111919800800802912cc004006200b13259800800c4cc010c0cc00801a26600a6066004660060060028188c0cc0050304dc0240032259800800c52f5c113302d302a302e00133002002302f00140b1374a900048c0b4c0b800644646600200200644b30010018a508acc004cdc79bae30300010038a518998010011818800a05440b92302d302e302e0014888888888cc8a600244646600200200644b30013022001899b8a4890130000038acc004cdc4000a40011337149101012d0033002002300e00189980319b8400148050cdc599b803370a002900a240c000681a903548c00800644646600200200644b30010018a6103d87a80008992cc004c010006260166607600297ae0899801801981e801206c303b00140e4911191991192cc00400633001370e90034dc3a4011370e9005244464b30013029303e375400b13259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c0fa07d132598009828001c6600201919800805466002011198008034566002606c60966ea8012264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4c96600260b20071598008054122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260bc0071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc724503020408003370000490189180119bca4a2003124bded8c101400001012000416c82d905b488888ca600200300380120022225980099b89002480022600297ae08919194c00401a607200b23005330680020019bad3065002401860c60033001009804400500720be9b87483f80e6e0120029119bb00023750002911111991191919192cc004c13cc190dd5000c4c9660020031323298009112cc004c154c1a8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800983b00146600200d19800800c02601082d2010805a010839a0110088044021077183a000a0e4375a00260e600500541d060e20028378c1c400a007003801c00d0721837800a0da306b375400700141a11325330673372c9211c5b70726f746f636f6c5d20566572696679696e67206e6f6e63653a2000373266062607460d26ea801122010019800918369837183718371837183718371837000c89660020031480022601c6600400460de002836244646600200200644b30010018a508acc004c00cc1c0006294626600400460e2002835106e4dd2a40049111191929983699b964901205b70726f746f636f6c5d207665726966795f6e6f6e636520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041b0910100159800800c6600260e460de6ea802a44646600200200644b30010018a40011332259800980280144c06000620028390c1d8004cc008008c1dc005074488c8cc00400400c896600200314a115980099baf003307230760018a51899801001183b800a0e041d12232330010010032259800800c528c566002600660ec00313300200230770018a5041c083a2460e660e860e860e860e860e860e860e860e8003230733074307430743074307430740019112cc004c170c1c4dd5001c4c9660020030028992cc004006007003801c4c96600260f200700580220ec375a00300341e460ec00283a0c1c8dd5001c00506f48c1ccc1d0c1d0c1d0c1d00064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e8899802802983d80220e8375c60e80026eacc1d4004c1dc0050750a5eb7bdb18244b30010018a40011301433002002307500141c923073307430743074307430740019112cc00400a298103d87a80008acc004c17000626088660e860ea00497ae08cc00400e60ec0053046001400c837907348966002003148002260286600400460ea002839244b30010018a5eb82264660e86ea0004cc00c00cc8cc004004c1dc00c896600200314bd7044cc896600330013370e00400b4a14a2839a2660f06ea0008cc0100100062660080080028398dd6983b800983c000a0ea375a60e80028392444646600200200844b300100189983b19bb037520086ea000d2f5bded8c113298009bae30740019bad3075001983c8012444b30013372001000713307a337606ea4020dd4003802c56600266e3c02000e2660f466ec0dd48041ba800700189983d19bb037520066ea0008cc01801800507520ea183b800a0ea911919800800801912cc004006297ae0899912cc004cdd7983c183a9baa307830753754608c60ea6ea8008c024cc1dcdd4802a5eb822660ee0046600800800313300400400141c860ec00260ee00283a244b30010018a40011301433002002307500141c93710900024444444444444444453001222232330010010052232598009839000c4cc160018dd71845809844009baa0028acc004c1c400626602c6eb0c22c04c22004dd5001119802002000c56600260ea00313301d37586116026110026ea80088cc0100100062b3001304d00189919b89375a611802002660326eb0c23004c234040048cc014014004c22004dd500145660026098003132332259800983a1845009baa0028acc004c1d0c22804dd5184700984780801c4cdc49bad308e01308b0137540040031337106eb4c23804c22c04dd5001000a110028a504220046118020026eb4c23004c22404dd50019844009baa3059308801375400b1598009825800c4c8cc896600260e86114026ea800a2b30013074308a013754611c02611e020071337120026eb4c23804c22c04dd500144cdc40009bad308e01308b01375400484400a2941088011846008009bad308c0130890137540066110026ea8c22c04c22004dd5002c4cc05c010c070cc22804c22c04c22004dd500125eb8108501210a0242140484280908501210a02308601375400330090099840009baa0129111191980080080291192cc004c1c8006264a6610e0266e59240121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660a26ea400522010013259800983a1844809baa001899194c004dd7184780800cdd7184780984800800cdd71847808012444a6611a029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308d013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660ae6ea4005220100153308d013372c9201187665726966795f65643235353139207061796c6f61643a20003732660ae6ea4009220100153308d013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660ae6ea400d22010013253308e013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660b13001001a60103d87a8000a60103d879800042340491010010019800800c00a006b950c23c04004dd61846809845009baa0018a998440099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660a46ea400922010014a0843808c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c611e020020091305e3308e01374e00297ae08998018019848008012112023758611c02002846008dd71845809844009baa0028acc004c1c4006264a6610e0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416c6c4f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301700123300500500137586116026110026ea800a2b300130750018992998438099b96490122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416e794f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301e00123300500500137586116026110026ea800a2b3001304d00189919912998448099b96490112436865636b696e672041744c656173743a20003732660a66ea000922010013253308a013372c92011941744c656173742073617469736669656420636f756e743a20003732660a86ea000522010013253308b013372c92011041744c6561737420726573756c743a20003732660ab3001001a60103d87a8000a60103d87980004228049101001001337120060026603600246600e00e0026eb4c23004004dd61846009846808009844009baa0028acc004c130006264a6610e0266e5924111436865636b696e67204265666f72653a20003732660a26ea0005220100132533088013372c92010f4265666f726520726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc49bad308e01308b0137540020071337106eb4c23804c22c04dd5000801a110028a50422004611a020026112026ea8c168c22404dd50031bad308b0130880137540051598009825800c4c94cc21c04cdcb24910436865636b696e672041667465723a20003732660a26ea0005220100132533088013372c92010e416674657220726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc48019bad308e01308b0137540031337100066eb4c23804c22c04dd5000a110028a50422004611a020026112026ea8c23004c22404dd50031bad308b013088013754005132533087013372c920111436865636b696e67205363726970743a20003732660a26ea4005220100132533088013372c92010f53637269707420726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c04910100100133018005301d3308b01375200297ae0375c6116026110026ea800908501210a0242140484280908501210a023086013754003300700798030034c0140164446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803210e02899802802984700802210e02375c610e020026eb4c22004004c2280400508801198070020018a400130020024888888888ca6002444b30013370e60180046010600e646600200200644b30010018a5eb8226612402611e026126020026600400461280200284880a2646600200200644b30010018a5eb8410100008101a0008101a00044c8c8c8cc896600260fe6128026ea800a264b3001300900189984c009ba8337006eb4c26404008dd69833984b009baa0013309801374c64b300130800130960137540031375660d000713756613402612e026ea800509401192cc004c20004c25804dd5000c530103d87a8000898349984c809ba698009bab30680039bae309a013097013754003005406897ae042500460ca612c026ea8004cc26004dd34c004dd598328014dd9984c80984d00802c01101925eb822a66128029211a6578706563742076616c69646174696f6e2872657175657374290016424c04613002612a026ea800a2a661260292012f65787065637420536f6d65287265717565737429203d206c6973742e61742874612c20726571756573745f696478290016424804660120100026600a00a612e020086eb4c25404004cc24c04c24004004cc24c04c244040052f5c061260200284880a2a66118029201886578706563740a202020206c6973742e6c656e67746828726571756573745f746f5f6f75747075747329203d3d206c6973742e6c656e677468280a2020202020206c6973742e756e69717565286c6973742e6d617028726571756573745f746f5f6f7574707574732c20666e286974656d29207b206974656d2e317374207d29292c0a20202020290016422c0522225980099b873022004302200389980e8021192cc004c1ecc24004dd5000c4c96600260f86122026ea800626644b3001308101309301375400313259800800c4c966002610002612a026ea800a264b300100184880c4c96600200313259800800c24c06264b30010018992cc00400612a0313259800800c4c966002003097018992cc004c2880400a330010078cc004016264b30013089010018992cc0040061340313259800800c26c061360309b018992cc004c2980400e01b09c01428c046eb400613602853008c28c040050a101184f809baa0048acc004c22004006264b300100184d00c4c96600200309b0184d80c26c06264b300130a601003806c270050a3011bad00184d80a14c0230a301001428404613e026ea80121320284e00909c01184e809baa00384c00a06e84c00a0c084c00a13e0230a0010014278046140020050960184b00c2580612c02850808c2780400509c01184f00801425006128030940184a00a13e02309c010014268046138020050920184900c248061240284e808c2680400509801184b009baa00284800a1260215980099baf30663095013754002613002612a026ea800e2b3001337126eb4c198c25404dd5001cc004dd59833184a809baa3066309501375400d375c61300200f375c60cc00e806a264b3001308001309501375400313370e6eb4c26404c25804dd50009bad3067309601375400913370e6eb4c26404c25804dd50009bad30673096013754008849808c190c25404dd5000c54cc24c05241666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400164248051533093014913865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001642480508f0184780c23c0611e0284d008c25c04c25004dd5000c54cc248052413365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d0016424404612a026124026ea8004c184c24804dd518319849009baa0038a9984800a4814765787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c206d61746368696e675f726571756573745f696478290016423c046600e00a6eb4c25004c24404dd5000c54cc23c0524016565787065637420536f6d65286d61746368696e675f726571756573745f69647829203d0a2020202020202020646963742e676574286d617070696e672c2063626f722e73657269616c69736528696e7075742e6f75747075745f7265666572656e6365292900164238046644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130693309901375000297ae0803212802899802802984d80802212802375c6128020026eb4c25404004c25c04005095011bb330930130900137540022980103d87a80008a9984680a4933657870656374206c6973742e6c656e67746828696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016423005222253308d0149012d5b76616c69646174655f6f7574707574735d205374617274696e67206f75747075742076616c69646174696f6e0015980099b87300600230220038994c004006900040110011112cc004006294626644a661240266e59241305b76616c69646174655f6f7574707574735d2056616c69646174696e67207265717565737420617420696e6465783a20003732660b86ea001122010013259800983f984a009baa0018992cc004c20004c25404dd5000c4c9660020030920184900c2480626464b300130830130980137540031325980099baf309d01309a013754002613a026134026ea8c27404c26804dd5004456600266ebcc1a4c26804dd50009835984d009baa309d01309a0137540111533098013372c92012d5b76616c69646174655f6f7574707574735d20436865636b696e67206f757470757420617420696e6465783a20003732660c46ea000d2201001533098013372c9201245b76616c69646174655f6f7574707574735d20457870656374656420616d6f756e743a20003732660c460d66134026ea80212201001533098013372c9201225b76616c69646174655f6f7574707574735d2041637475616c20616d6f756e743a20003732660c46ea260026eacc1acc26804dd5000cdd7184e808064dd71835806202448900159800803c4cdc3cc004dd59835984d009baa0019bae309d0100c9bae306b00c404864b300133710002900044c1c4006200284c008dd69835984d009baa0088a50425c0515330980149139657870656374206d61746368696e675f6f75747075742e646174756d203d3d20726571756573742e64657374696e6174696f6e2e646174756d0016425c051533098014913d657870656374206d61746368696e675f6f75747075742e61646472657373203d3d20726571756573742e64657374696e6174696f6e2e616464726573730016425c046138026132026ea80062a6612e0292014465787065637420536f6d65286d61746368696e675f6f757470757429203d206c6973742e6174286f7574707574732c206d61746368696e675f6f75747075745f6964782900164258046601c01a0026eb40061240284e008c26404c25804dd5000c54cc250052415b65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f6461746129203d0a202020202020202063626f722e646573657269616c697365286d61746368696e675f6f75747075745f6964785f6279746573290016424c0460646eb8c26004c25404dd5000c54cc24c0524013e65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f627974657329203d20646963742e66696e64286d617070696e672c2069290016424804646600200201044b30010018a60103d87a80008992cc004cdc38039bad309701001898349984c80984b00800a5eb8226600600661360200484a008c2640400509701184a80800cc00400e606a005309601001400c84980a2a6611a0292013265787065637420646963742e73697a65286d617070696e6729203d3d206c6973742e6c656e6774682872657175657374732900164230052223233225980099b87375a6128020020051325980099912cc004006294226530013259800984000984a809baa00189bad3096013099013756613202612c026ea8006290002126023098010019baf3098013099010019bab0024889660020031598009801002c4cdc4a400000714a084a80a264b30013375e61300200298010140008acc004cdc49bad309901309c01375661320200200913003374c613a0200514a084b00a2b300133712900000244c00c01a294109601212c02309b01001426404329800800c00e44661320200466132026e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c25c040066eacc260040066138020069112cc004cdc8a441000038acc004cdc7a4410000389980298369984e809ba60024bd70000c4cc015300103d87a800000642600519800803c006446600e0046613e0266ec0dd48029ba6004001401c84c00861340200484c00a294229422941099011bab3063002374c661280266ec0c25404004dd31984a0099bb0309501309601001375066e0400c0152f5bded8c097adef6c608801c54cc240052401c56578706563740a202020206173736574732e6d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a20202020290016423c046eb0c060c24404dd5003454cc23c052401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e740016423804b30013079300d0018a4001159800800c21806264b30013094010028acc004cdc79bae308f01001488104555344720089bad3090010018a9984700a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200164234050870142440461240200284800908c0119192cc004c1ecc24004dd5000c4c96600266ebcc25404c24804dd5184a809849009baa30633092013754002604c66128026ea400d2f5c1132598009840009849009baa0018992cc004006330010018992cc004c1fcc25004dd5000c4c96600266ebcc26404c25804dd5184c80984b009baa001302a3309801375200e97ae08992cc004c21004c25804dd5000c4c96600200319800800c4cc26804dd419b81375a6136026130026ea8004dd6984d80984c009baa0053309a01374c6530010019bab306a30990137540093233001001375660d66134026ea8c1acc26804dd5004912cc004006297adef6c608991984f0099bb0309b01001374c64660020026eacc27404008896600200314bd6f7b63044c8cc28404cdd8184f008009ba83075375a613e020026600600661460200461420200284f808cc00c00cc28004008c2780400509c012002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd3001a5eb7bdb1822653001375c614002003375661420200330a50100248896600266e4002000e26614c0266ec0dd48041ba60070058acc004cdc7804001c4c966002b30010018a518a5042980510028998538099bb037520126e980040090a201194c0040060110034004444b30010028800c4c8cc8a600200d30ae010059919800800802912cc00400626615c0266ec0dd48021ba80034bd6f7b63044ca60026eb8c2b0040066eb4c2b4040066162020049112cc004cdc8004001c4cc2c804cdd81ba9008375000e00b15980099b8f0080038992cc004c26c0400620051330b301337606ea4024dd4000801215c023370000e0051330b201337606ea400cdd400119803003000a15a0242b40430af0100142b4048030dd71853808009bad30a80100130aa0100242a0051330a601337606ea400cdd300119803003000a1420242840430a3010014284048030dd7184d808009bab309c01001309e0100242700497ae084880a04684880c244061220309101427404613402612e026ea80062a6612a0292012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642500460ca612c026ea80062a661280292013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016424c04613002612a026ea80062a661260292013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c20736372697074290016424804660bc6eb0c18cc25004dd500411983298301bab3066309501375400200d08c01407d08c0184600c230061180284c808c25804c24c04dd5000c54cc244052413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642400460c26124026ea8c18cc24804dd5000c54cc2400524014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016423c046128026122026ea8006297ae110100008101a000211c023305737586126026120026ea8010004dd71849009847809baa3019308f0137540086602e6eacc060c23804dd50011bae305f308e0137546030611c026ea800d222259800983c80644cc894cc23c052411f5b6d696e745d205374617274696e67206d696e742076616c69646174696f6e00159800cc004c25004c24404dd502bc0a660506122026ea81f66eacc074c24404dd503ea01a8a9984780a49205b6d696e745d207361746973666965645f7061796c6f61647320706173736564001323298009bab3096010019bab3096013097010019bad30960100248894cc25004cdcb24812f5b6d696e745d2070726f636573735f7265717565737473207061737365642c2073756d6d65645f616d6f756e743a20003732660bc6ea0005220100132533095013372c92011b5b6d696e745d206f726465725f696e7075747320636f756e743a20003732660be6ea0c0a8005220100159800cc0040060110049bac301e30970137540ba805a2a6612a0292011d5b6d696e745d2076616c69646174655f696e707574732070617373656400159800cc004dd61833184b809baa08301804400e661320260d0612e026ea8c084c25c04dd502e9984c80a601054455534472004bd7020148a9984a80a4811e5b6d696e745d2076616c69646174655f6f7574707574732070617373656400132533096013372c9201215b6d696e745d206d61696e7461696e5f747265617375727920726573756c743a20003732660c13001001a60103d87a8000a60103d879800042540491010010013370f300105d84180d200040240051533095014901816578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a202020202900164250051533095014917a6578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f726967696e5f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016425004660306eb0c26404c25804dd5041009bae306530960137546040612c026ea8170612c020033001002800c8c048dd698319849009baa0014019153308f014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164238046eb0c24804c23c04dd50101bab309201308f013754612402611e026ea81fa2b3001307800c8992cc006600260c26120026ea815a051302730900137540f9375660386120026ea81f100c44c8c9660033001330143758612a026124026ea81f8dd718309849009baa301c30920137540b10039bab3095010019984a0098319849009baa301c30920137540b066128029801054455534472004bd70200c8acc00660026eb0c184c24804dd503f400e6eacc25404c258040066eb0c064c24804dd502c200a899b87980082c41fa90002008375a612a020051533090014901796578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f75747075745f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016423c05153309001491826578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f726967696e5f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a20202020290016423c04612a0200330010019bab30930130900137546126026120026ea81fe466e20dd698311848809baa00148001005454cc23805241856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164234046eb0c24804c23c04dd5010456600260f801913259800cc004c17cc24004dd502b4dd6180e9848009baa07c98139848009baa07c9bab301c30900137540f8807a2b300130100018983d4c00415a0f90014009153308e014911a6578706563742077697468647261775f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501044c9660033001305f30900137540ad3758603a6120026ea81f2604e6120026ea81f26eacc070c24004dd503e201e8acc004c040006260f5300105683e4cdc1000a400280122a6611c02920119657870656374206465706f7369745f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501021180242300484600844b300133710002900045300103d87a8000899803801000a1120222a660da920113657870656374206e6f6e63655f726573756c74001641b0653001306e37540032323232332259800982f8014528456600260c40051980099baf30783075375400298103d87b8000a50a5141c913233225980098310014528c56600260c200513322598009831983c9baa304b307a375400d13371000400313371200400283b8dd6983d983c1baa003598009830983b9baa30493078375400f10018980d800a0ea8a5041d483a8c1d4dd50009bad30793076375400860f060ea6ea800507220e43072375400260ec60ee00660ea60e46ea8004c1d0004c1c0dd5000c888c8cc896600260be005159800982f983a1baa0018a6103d87a80008a6103d879800041c91598009831001456600260c460e86ea80062980103d87a80008a6103d87b800041c913322598009830800c530103d87b80008acc004c180006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041d483a8dd6983d183b9baa0038a6103d879800041d083a0dd6983c183a9baa00330743754002839107218391baa0013002003300100348896600260b80071325330713372c921215b7665726966795f6e6f6e63655d204c6f6f6b696e6720666f72206f7265663a200037326607600291010015330713372c9201215b7665726966795f6e6f6e63655d204e756d626572206f6620696e707574733a20003732660766ea0c018dd6183b18399baa05f48900133008375860ec60e66ea817c94cc1c8cdcb24811f5b7665726966795f6e6f6e63655d20436865636b696e6720696e7075743a200037326607860ee60e86ea80052201001325330733372c9201185b7665726966795f6e6f6e63655d204d6174636865733a200037326607b3001001a60103d87a8000a60103d879800041c891010010013375e60ee60e86ea8004008c1d4c1c8dd5002456600260b600713322598009802000c528c566002600800514a1159800cc004cdd7cc004c1dcc1d0dd50014c1dcc1d0dd5000c8c8c96600260c060ec6ea8c1e8c1ec00a2003132598009830800c4c030cc1e8dd4180d9bad307b3078375400497ae08acc004c1880062005100241d483a8c1d8dd5000a0e83079001307537540028019300103d87b8000a50a5141c51980099baf98009822983a1baa0029822983a1baa001919192cc004c180c1d8dd5183d183d80144006264b30013061001898061983d1ba8304c375a60f660f06ea80092f5c11598009831000c400a200483a9075183b1baa00141d060f200260ea6ea8005003260103d8798000a50a5141c514a0838907120e2307530723754008601260e46ea817a294106f20de181f98371baa009300300319198008009bac3038306937540b044b30010018a5eb822660d86e9cc8c8cc1b8c1bc008cc1b8c0ecc1b0dd5000998371ba9980091838183898389838800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004835906b1b8d001981f198372610b4a5369676e617475726531003306e306f306c375460de60d86ea8004cc1b93010140003306e303d306c37540b697ae048894cc1b4cdcb249165369675374727563747572652e636f6e746578743a200037326606e60e460de6ea8005220100153306d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e608060de6ea8005220100153306d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607c60de6ea8005220100153306d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e600660de6ea800522010013253306e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b88370dc68009bae3072306f375400266e28c008dd7182018379baa0013371460046eb8c0f8c1bcdd500098011bae3003306f37540024bd70183718378009bac306d00133002002306e00141ad22259800982a98351baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130700018acc004cdc4a400860de0030068992cc004c1d4012264b3001305c0018acc004c1c8dd50034026010839a2b3001305b0018992cc00400601313259800800c02a01500a8992cc004c1e400e01900b41d86eb400601483c8c1d800507418391baa0068acc004c17c0062b30013072375400d00980420e680420de41bc8378c1c0dd5002c01d072182c9837800a0da80320e23754003005802c01600a83a0c1c400506f1838801400e007003801a0e4306f00141b460d66ea800e002834122259800982a98351baa0068992cc0040060c113259800800c4c9660020030628992cc0040062b30013073002899912cc004c16c006264b300100183344c966002003067833c4c96600260f000713305b0012259800801401e264b30010018cc0040062600460f600706b403d06b835c1ae0d683e0c1e400907741a10751bac001833c19d078183a800a0e63071375400b159800982d000c4c9660020030668992cc0040060cf0678992cc004c1e000e2660b600244b3001002803c4c96600200319800800c4c008c1ec00e0d6807a0d706b835c1ad07c183c80120ee83420ea3758003067833a0f0307500141cc60e26ea80162b3001305e0018992cc0040060cd13259800800c19e0cf0678992cc004c1e000e00b06841d46eb40060ce83c0c1d400507318389baa0058acc004c0d8006264b300100183344c966002003067833c19e264b30013078003802c1a10751bad001833a0f0307500141cc60e26ea80160ca837106e20dc41b8264b3001305a0018992cc0040060cb13259800800c56600260ec005159800982e18389baa0018992cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c4c96600260f800700f83620f2375a00306b41f060f200283b8dd7000983c00120f2307600141d060e46ea80060cc837a0cc839a0cd0668334199077183a000a0e430703754005159800982c800c4c9660020030658992cc0040062b300130760028acc004c170c1c4dd5000c4c9660020030678992cc004006264b3001001834c4c966002003159800983d00146600200719800800c0360d480620d480620d483ba0d506a83541a907b183c000a0ec307800283441a20d106841e460ec00283a0c1c8dd5000c19906f4199073419a0cd06683320ee307400141c860e06ea800a2b3001305d0018992cc0040060cb13259800800c19a0cd06683344c96600260ee00700a833a0e8375c00283b8c1d000507218381baa00283220da41b48368c1b8dd500098371baa003831a0e0831c18e0c706341d060e20028378c1c400a0c3061830c1850721837800a0da306b375400d05f41a022259800982a18349baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130720028992cc004c164c1b8dd500244c9660020030078992cc004006264b3001001804c4c966002003159800983b80146600200713259800982f000c4c96600200300c8992cc0040062b3001307a0028992cc004c184006264b3001001807c4c966002003159800983e80146600200300b808202680820f4808404202101041f860f600283c8c1dcdd5001456600260c000313259800800c03e264b300100180840420211332259800800c04a264b3001001809c04e0271332259800800c056264b300100180b405a02d13259800984200801c04a02e840808dd6800c05908401184080800a0fe375a00261000200501342040460fc00283e0dd6800983e801404107e183d800a0f23077375400500e41d083a0c1d4dd5000c035077403601b00d806a0f6307800141d860e86ea800a2b3001305d0018acc004c1d0dd5001401a01683aa016838907118391baa001805201a80520e8805402a01500a41e060ea0028398c1d400a01100880440210761839800a0e2306f375400900641b0264b300130590018acc004c1bcdd5001401e00c83822b300130580018992cc00400600f13259800800c02201100880444c96600260ec00700a804a0e6375c00283b0c1cc00507118379baa0028acc004c170006264b3001001803c4c96600260ea00500980420e4307300141c460de6ea800a00c836106c20d8306d375400300541bd005802c01600a8398c1c000506e1838001400e007003801a0e2306e00141b060d46ea800e0028338888c96600260a800313259800800c00e264b300100180240120090048992cc004c1c400e00d00541b86eb80050711837000a0d8306a37540091598009829800c4c9660020030038992cc0040060090048024012264b30013071003803401506e1bae00141c460dc0028360c1a8dd5002400906720ce3068375400705a82d416a0b48358c1a0c194dd5000c54cc18d24014565787065637420536f6d65287369676e65645f7061796c6f61645f6461746129203d2063626f722e646573657269616c6973652872656465656d65722e7061796c6f6164290016418860026eb8c0d4c190dd50299192cc004c13c006298103d87a80008992cc006600260a06eb4c1980069429450634530103d87a80008981c198341832800a5eb810634c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d06548896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b810010034195001400c8310dc680098008009119800911191919bb032374e660d660d0002660d660d200297ae03376060ce00460ce00260d0003300100691000c012007375a60ce0028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130510018cc004012007002918051ba800140351598009828000c6600200900399b80002480fe460146ea0c0f0c0f800500d456600266e1c00920be0189919800800918059ba9001223300648008966002601c00313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014419d19800802400e66e00009207f918051ba9001401c832106420c88acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300d3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180719ba5003001404080810672cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014198833100d4566002605600315980099b87002482f80a33001004801ccc01801888006460146e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300b374e002806900d20c88acc004c0a80062b30013370e004907f0144c8c8cc0040048c030dd30009119803a40044b3001300f0018980125eb7bdb18224646530010069180319838801000cdd69837001200c323376060e200260e260e40026eb0c1b000660020130089807800a00a41a06600c00c4400519800802400e66e0000920bf02919194c0040060072300d374c00280088896600266e24009200089800a5eb7bdb18224646530010069821802c8c014cc1c80080066eb4c1bc0090061919bb0307200130723073001375860da003300100a804c00500520d23300700722002403483222497bdb181014000010120004190832106420c8337060029020111119198008008011119803240044b3001300a0018980125eb8224646530010069180319836001000cdd69834801200c30670019800804401e6014002803106311114c00401200700291980200091801800a012413505b1bae001417860b600282c8dd7000982d005a0b6305800a415904841586eb8005059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500240fd04940fd00e40fd00e40fd00e40fd00e40fd04d1bac00181f40f90501826800a096304d00281e40f207903c413860960028248c12c00a07503a81d40e904c1824800a08e304900281c40e20710384128608e0028228c11c00a06d03681b40d90481822800a086304500281a40d2069034411860860028208c0fcdd5002c0c903c111194c004006009003400444464b3001302f0018992cc00400600d13259800800c01e00f007803c4c96600260980070058042092375c0028260c12400504718229baa0038acc004c0b8006264b300100180344c966002003007803c4c966002609800713302f0012259800801401e264b30010018cc00402a00313002304f003402900b805c02e0168280c13400904b40210491bac001803c01d04c1824800a08e304537540071598009819000c4c9660020030068992cc00400600f0078992cc004c13000e26605e00244b3001002803c4c96600200319800805400626004609e006805201700b805c02d0501826801209680420923758003007803a0983049001411c608a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009827801c4cc0c8004896600200500a8992cc0040063300100d800c4c008c14800d00d403a01d00e80720a63050002413900b41306eb000601500a413c60980028250dd68009825801401d04c1824800a08e304537540071598009804800c4c9660020030068992cc00400600f007803c4c96600260980070058042092375a003007413060920028238c114dd5001c566002601000313259800800c01a264b3001001803c01e00f132598009826001c0160108248dd6800c01d04c1824800a08e3045375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009826001c0160108248dd7000a0983049001411c608a6ea800e00a821104220844108821104220843043375400481740ba05d02e4100601660746ea8c94cc0e4cdcb24812467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea40dd220100132598009813181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a200037326600a002910100132598009815981e9baa0018992cc0040062b30013029303e375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098240014401a0728228c1180050441bae0013045002411860860028208c0fcdd5000c0d103c40d206903481a20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec6018607a6ea8c038c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46600400206e6eb0c02cc0e8dd50131800800911980200111980598031bab300c303b3754601860766ea8004008888c9660020071323233223300b0023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420805980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d103a1bac303d002375a60760026466ec0dd4181d8009ba7303c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6080003337149101023a200098008054c10400600a805100a182180144ca6002015304000199b8a489023a200098008054c104006600e66008008004805100a182180120823043001410066e29220102207d0000340f46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039011207a3758007133007375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40fc66e2ccdc0000acc004cdc4000a402914818229037207e004401866e0c00520203370c002901019b8e00400240f06eb800d0401b8a4881022c200018048049802802a264b300100180e4072264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0cc00a2b30013019302e375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc00400604f027813c09e264b3001303a0038acc004c080c0d4dd500344c9660020030298992cc00400605502a81540aa26644b300100181644c96600200302d816c0b605b132598009820001c660020151301430400158172048817207a375c0028200c0f400503b1bae001303c00240f4607400281c0c0d8dd500340a103340a10371bae00140e8606e00281a8c0dc00a04b025812c095038181a800a0663035002811c08e04702340d860660028188c0bcdd5000c08502c40850304086043021810a068303100140bc6eb8004c0c00090311817000a058375800301c80e205e302c00240a91323259800800c06e03701b899912cc00400603b01d80ec4c8c018c0c001cdd6800c0750301bad001302900280da05c3027001302a00240a101740986eac00602d01680b20523026001409060446ea801e02880fa0288118dd6000c04e0268130c08c0050211bae0013022002408c604000280f0c08000a01d00e8074039021180f000a038301a375401300c405c44464b300130060018992cc00400600713259800800c01200900480244c9660026046007006802a040375c0028118c08000501e180e1baa0048acc004c0140062b3001301c3754009003801203a8012032406460346ea800c88c8cc00400400c88cc00c004c008008dc3a40006e1d20028044022011008406c6030602a6ea800e2c80906028002601e6ea8056293454cc0352411856616c696461746f722072657475726e65642066616c7365001365640301\"\n :\n \"592497010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a40052232330010010032233003001300200248888c9660026008601c6ea802626464646644b300130180038992cc004c028c050dd5000c4c96600260340031330093756603200244b3001002899805803112cc00400a330012259800800c52f5c113301e301b301f0013300200230200014075374a900048c078c07c00644646600200200644b30010018a508acc004cdc79bae30210010038a518998010011811000a038407d2301e301f301f0019b874801a6e1d20089b8748029222222223322332232332259800980f18141baa00289919191919194c004dd61819000cc0c8016606400930320039819001244444b30013038006899806181b8058998060020998060018998060010acc004c0a4c0ccdd5000c4c8c8ca60026eb8c0e80066eb8c0e800e6eb8c0e800922259800981f00244c8cc896600260820071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc7244103020408003370000490189180119bca4a2003124bded8c10140000101200040fc81f903f4dc024003370e907f01cdc02400522337600046ea00066e052000488888a600244444653001001801c0090011112cc004cdc480124001130014bd70448c8ca600200d30100059180299828801000cdd69827001200c304c0019800804c022002803904948888c8cc00400400888cc01920022598009805800c4c0092f5c1123232980080348c018cc1400080066eb4c1340090061825800cc00402200f300b0014018824244453001004801c00a4660080024600600280512223232323259800981f98249baa00189919914c00489660026088609c6ea800a26464646644b30013058003899804982b802899823001003459055182a8009bad305500230550013054001304f37540051641351980099198008009bac3030304e375409044b30010018a5eb822660a26e9cc8c8cc14cc150008cc14cc0ccc144dd5000998299ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002414c8298dc68009bae30563053375400266e28c008dd7181b98299baa0013371460046eb8c0d4c14cdd500098011bae305630573057305730533754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241448288dc6800981b19829a610b4a5369676e617475726531003305330543051375460a860a26ea8004cc14d3010140003305330353051375409697ae04bd701829982a0009bac30520013300200230530014141230513052305230523052305230523052001911919800800801912cc00400629422b3001300330540018a51899801001182a800a09e4149374a900124444b300132980098289baa001919191919912cc004c13400a29422b300130500028cc004cdd7982d982c1baa0014c103d87b8000a50a51415913233225980098280014528c566002609e00513322598009828982e1baa3041305d375400d13371000400313371200400282d8dd6982f182d9baa003598009827982d1baa303f305b375400f10018980d800a0b28a50416482c8c160dd50009bad305c3059375400860b660b06ea800505620ac3055375400260b260b400660b060aa6ea8004c15c004c14cdd5000c888c8cc8966002609a0051598009826982b9baa0018a6103d87a80008a6103d879800041591598009828001456600260a060ae6ea80062980103d87a80008a6103d87b8000415913322598009827800c530103d87b80008acc004c138006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000416482c8dd6982e982d1baa0038a6103d8798000416082c0dd6982d982c1baa0033057375400282b1056182a9baa00130020033001003488966002609400713233007375860b260ac6ea81348cdd7982d182b9baa0010023058305537540091598009824801c4cc8966002600800314a315980098020014528456600330013375f3001305a30573754005305a3057375400323232598009827182c9baa305d305e0028800c4c966002609e0031300b3305d375060366eb4c178c16cdd500125eb822b3001305000188014400905920b23059375400282c0c170004c160dd5000a0064c0103d87b8000a50a5141551980099baf9800981d982b9baa002981d982b9baa001919192cc004c138c164dd5182e982f00144006264b3001304f001898059982e9ba8301d375a60bc60b66ea80092f5c11598009828000c400a200482c9059182c9baa001416060b800260b06ea8005003260103d8798000a50a51415514a082a905520aa305830553754008600e60aa6ea8132294105320a6181a98289baa0058cc004c150c144dd5002c88c8cc00400400c896600200314800226644b300130050028980b800c4005055182c00099801001182c800a0ac911919800800801912cc00400629422b30013375e00660a860b000314a31330020023059001414c82b244646600200200644b30010018a518acc004c00cc16000626600400460b200314a0829905648c154c158c158c158c158c158c158c158c158006460aa60ac60ac60ac60ac60ac60ac0032259800982418291baa002899192cc004c16400a0071641586eb4c15c004c14cdd500145905148c154c158c158c158c1580064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320ae899802802982e80220ae375c60ac0026eacc15c004c1640050570a5eb7bdb18244b30010018a400113013330020023057001415123055305630563056305630560019112cc00400a2980103d87a80008acc004c12400626072660ac60ae00497ae08cc00400e60b00053016001400c829105548966002003148002260266600400460ae00282a244b30010018a5eb82264660ac6ea0004cc00c00cc8cc004004c16400c896600200314bd7044cc896600330013370e00400b4a14a282b22660b46ea0008cc01001000626600800800282b0dd6982c800982d000a0ae375a60ac00282a2444646600200200844b300100189982c19bb037520086ea000d2f5bded8c113298009bae30560019bad3057001982d8012444b30013372001000713305c337606ea4020dd4003802c56600266e3c02000e2660b866ec0dd48041ba800700189982e19bb037520066ea0008cc01801800505820b0182c800a0ae911919800800801912cc004006297ae0899912cc004cdd7982d182b9baa305a30573754607660ae6ea8008c01ccc164dd4802a5eb822660b200466008008003133004004001415460b000260b200282b244b30010018a40011301333002002305700141512259800800c520008980999801001182b800a0a89b8848001222222222222222222298009111191980080080291192cc004c18000626609c00c6eb8c1b8c1acdd5001456600260be003133017375860dc60d66ea80088cc0100100062b3001306300189980e1bac306e306b37540044660080080031598009826000c4c8cdc49bad306f0013301a375860de60e000246600a00a00260d66ea800a2b3001304b00189919912cc004c188c1b4dd5001456600260c460da6ea8c1c4c1c800e266e24dd6983898371baa002001899b88375a60e260dc6ea800800506c452820d8306f001375a60de60d86ea800cc1acdd5182798359baa0058acc004c1280062646644b30013062306d3754005159800983118369baa30713072003899b89001375a60e260dc6ea800a266e20004dd6983898371baa00241b114a08360c1bc004dd6983798361baa003306b375460dc60d66ea80162660300086036660da60dc60d66ea80092f5c0834906920d241a4834906918349baa00198050054c18cdd5009c8888c8cc00400401488c96600260c00031323259800983118361baa001899194c004dd718390014dd718391839800cdd71839000ae5460e40026eb0c1c0c1b4dd5000c52820d632330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60e40020091305433071374e00297ae0899801801983980120da375860e20028378dd7183718359baa0028acc004c17c00626602e6eb0c1b8c1acdd5001119802002000c56600260c600313301c375860dc60d66ea80088cc0100100062b3001304c00189919b89375a60de002660346eb0c1bcc1c00048cc014014004c1acdd500145660026096003132332259800983118369baa0028acc004c188c1b4dd518389839001c4cdc49bad3071306e37540040031337106eb4c1c4c1b8dd5001000a0d88a5041b060de0026eb4c1bcc1b0dd500198359baa304f306b375400b1598009825000c4c8cc896600260c460da6ea800a2b30013062306d375460e260e40071337120026eb4c1c4c1b8dd500144cdc40009bad3071306e37540048362294106c18378009bad306f306c375400660d66ea8c1b8c1acdd5002c4cc060010c06ccc1b4c1b8c1acdd500125eb8106920d241a4834906920d23069375400330080089803803cc01801a6006007222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906b44cc014014c1c401106b1bae306a001375a60d600260da0028358cc03c01000c520009801001244444444446530012225980099b87300d0023009300832330010010032259800800c52f5c11330763073307700133002002307800141d5132330010010032259800800c52f5c30100008101a0008101a00044c8c8c8cc896600260dc60f06ea800a264b3001300900189983e1ba8337006eb4c1f4008dd6982f183d1baa0013307c374c64b3001306f307a37540031375660be0071375660fc60f66ea8005079192cc004c1bcc1e8dd5000c530103d87a8000898301983e9ba698009bab305f0039bae307e307b3754003005407097ae041e460b860f46ea8004cc1f0dd34c004dd5982e0014dd9983e983f002c01101b25eb822c83c0c1f0c1e4dd50014590771980480400099802802983d8021bad30790013307730740013307730750014bd70183b800a0ea8b20e091112cc004cdc398040021804001c4cc07c0108c96600260d460e86ea8006264b3001306b3075375400313322598009838183b9baa001899192cc004c1bcc1e4dd500144c8c8c8ca60026102020033081010039840808012444b300130850100489982c98420080389981b0010992cc004c1dc00626464b3001308801002805c59085011bad3086010013082013754005159800983b000c4c8c96600261100200500b8b210a02375a610c020026104026ea800a2c840009080011840009baa0018b210402184080800984000800983f800983d1baa0028b20f015980099baf305d3079375400260f860f26ea800e2b3001337126eb4c174c1e4dd5001cc004dd5982e983c9baa305d3079375400d375c60f800f375c60ba00e806a264b3001306f3079375400313370e6eb4c1f4c1e8dd50009bad305e307a375400913370e6eb4c1f4c1e8dd50009bad305e307a375400883c0c16cc1e4dd5000c59077459077183d983c1baa0018b20ec30793076375400260b060ec6ea8c168c1d8dd5001c59074198038029bad3078307537540031641cc6644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130603307d375000297ae080320f2899802802983f80220f2375c60f00026eb4c1e4004c1ec0050791bb3307730743754002298103d87a80008b20e291112cc004cdc398030011804001c4ca60020034800200880088896600200314a313322598009836983b9baa0018992cc004c1b8c1e0dd5000c4c96600260de60f26ea8006264b30013375e60fc60f66ea8004c1f8c1ecdd5183f183d9baa0058acc004cdd7982e983d9baa001305f307b375460fc60f66ea80162b300198008044c0ec01e60fe00c8042266e1e60026eacc17cc1ecdd5000cdd7183f004cdd7182f804a01e325980099b880014800226074003100141e86eb4c17cc1ecdd5002c52820f28b20f28b20f2307d307a37540031641e0660160146eb4c1f0c1e4dd5000c5907718181bae307b307837540031641d860f2002646600200200c44b30010018a60103d87a80008992cc004cdc38029bad30790018982f1983d983c000a5eb8226600600660fa00483b8c1ec00507920ee8b20e29111919912cc004cdc39bad30780010028992cc004cc896600200314a11329800992cc004c1bcc1e4dd5000c4dd6983d183e9bab307d307a3754003148001078183e000cdd7983e183e800cdd58012444b30010018acc004c008016266e2520000038a5041e91325980099baf307c0014c010140008acc004cdc49bad307d308001375660fa00200913003374c61020200514a083da2b300133712900000244c00c01a294107b20f6307f00141f4329800800c00e44660fa004660fa6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1ec0066eacc1f00066100020069112cc004cdc8a441000038acc004cdc7a44100003899802983219840809ba60024bd70000c4cc015300103d87a800000641f519800803c006446600e004661060266ec0dd48029ba6004001401c83e860fc00483e229422942294107d1bab305a002374c660f066ec0c1e4004dd31983c19bb03079307a001375066e0400c0152f5bded8c097adef6c608801c590741bac301a3075375400d1641ccb30013068300e0018a4001159800983b800c4c96600266e3cdd71839800a44104555344720089bad30740018b20e430760018b20e841c46464b3001306a307437540031325980099baf30793076375460f260ec6ea8c168c1d8dd500098131983c1ba90034bd7044c96600260de60ec6ea800626466042002264b3001306e307837540031325980099baf307d307a375460fa60f46ea8004c0a8cc1f0dd4803a5eb82264b30013073307a37540031323302500113307e375066e04dd6983f983e1baa001375a60fe60f86ea8014cc1f8dd3194c0040066eacc184c1f4dd50024c8cc004004dd59831183f1baa3062307e375401244b30010018a5eb7bdb182264661040266ec0c1fc004dd319198008009bab3081010022259800800c52f5bded8c11323308501337606104020026ea0c104dd698418080099801801984380801184280800a1060233003003308401002308201001420004800888966002005100189919914c00401a610c0200b32330010010052259800800c4cc21804cdd81ba9004374c00697adef6c608994c004dd7184200800cdd5984280800cc224040092225980099b900080038998450099bb037520106e9801c0162b30013371e01000713259800acc0040062946294108a014400a2661160266ec0dd48049ba6001002421c04653001001804400d0011112cc00400a2003132332298008034c24804016646600200200a44b30010018998490099bb037520086ea000d2f5bded8c113298009bae3090010019bad309101001984a808012444b30013372001000713309601337606ea4020dd4003802c56600266e3c02000e264b3001308a01001880144cc25c04cdd81ba90093750002004849808cdc000380144cc25804cdd81ba900337500046600c00c002849009092010c24c0400509101200c375c6116020026eb4c23004004c2380400908c0144cc22804cdd81ba9003374c0046600c00c002843009086010c21c0400508501200c375c60fe0026eacc20004004c208040090800125eb80c1f8c1ecdd5000c59079182e183d1baa0018b20f0307c307937540031641dc660a66eb0c168c1e0dd500411982e182a9bab305d3079375400200c60f460ee6ea80062c83a8c160c1d8dd5182d183b1baa0018b20e830783075375400314bd7090100008101a00020e63304e375860ee60e86ea8010004dd7183b18399baa301b30733754008660326eacc068c1c8dd50011bae305630723754603460e46ea800d2222598009834006c4c966003300130773074375409b0279813183a1baa06b9bab301e307437540d6806a26464b300198009980b1bac3079307637540da6eb8c160c1d8dd5180f183b1baa04f801cdd5983c800cdd6180d983b1baa04f4019159800cc004dd6182c183b1baa06d801cdd5983c983d000ccc1e0c168c1d8dd5180f183b1baa04f330784c1054455534472004bd70200a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba460246eb4c164c1d4dd5000a00a8b20e4375860ec60e66ea808a2b3001306700d8992cc006600260b060e86ea813604f3026307437540d73756603c60e86ea81ad00d44c8c966003300133016375860f260ec6ea81b4dd7182c183b1baa301e3076375409f0039bab30790019983c182d183b1baa301e3076375409e660f0981054455534472004bd70200c8acc00660026eb0c160c1d8dd5036c00e6eacc1e4c1e80066eb0c06cc1d8dd5027a00a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba466e20dd6982c983a9baa001480010054590721bac3076307337540451598009835806c4c966003300130563074375409b3758603e60e86ea81ae604c60e86ea81ae6eacc078c1d0dd5035a0208acc004c044006260d3300104d835c0050024590724590721bad30763073375404513259800cc004c158c1d0dd5026cdd6180f983a1baa06b9813183a1baa06b9bab301e307437540d680822b3001301100189834cc0041360d7337040029000a0048b20e48b20e4375a60ec60e66ea808907120e241c4225980099b8800148002298103d87a8000899804001000a0dc22c82792259800982218271baa00289919192cc004c15800a26464b300130490018acc004c150dd5001401a2c82aa2b30013048001899192cc004c16800a01116415c6eb4c160004c150dd500145660026098003159800982a1baa00280345905545905220a4414860a46ea8004c15400e2c8298c96600260a400315980099b8948010c1440062d130463051001414116414c6ea8c150004c150004c13cdd500145904d2444b30013045304f3754009132323259800982b80144c8cc8966002609600513259800982d800c4cc128dd6182d000912cc00400a00913300c305c00213001305d002416916416060ac6ea800e2b3001304a0028992cc004c16c0062660946eb0c1680048966002005004899806182e00109800982e80120b48b20b030563754007159800982700144c8c96600260b80050038b20b2375a60b400260ac6ea800e2b30013037002899192cc004c17000a0071641646eb4c168004c158dd5001c5905420a8415082a0c14cdd50008992cc004c128006264b3001305a0018992cc004c130c158dd5000c4c8c8cc896600260be00700d8b20b8375a60b80026eb8c170008c170004c15cdd5000c59055182c800c59057182a9baa0038acc004c124006264b3001305a0018992cc004c130c158dd5000c4c8c8c96600260bc00513300b305d00313300b00100c8b20b6305c001305c0013057375400316415460b200316415c60aa6ea800e2b3001304d001899192cc004c16c00a0131641606eb8c164004c154dd5001c5905320a6414c60a66ea8008c15800e2c82a0c154004c154004c140dd500245904e08966002608460986ea800a2646464b30013054002899912cc004c11cc144dd500144c8c8c96600260b200513300b3058003132598009825800c4c96600260b600313232598009827000c4c96600260bc003133010305d0010098b20b6305937540051598009826800c4c8c8ca60026eb4c17c0066eb4c17c00e6eb4c17c009222598009831802403a2c830060be00260bc00260b26ea800a2c82b9057182b9baa001305a0018b20b0305637540051598009825000c56600260ac6ea800a00b16415d16415082a0c150dd5000c59056182b800982b80098291baa0028b20a03053003132598009823000c56600260a26ea800a00b1641491598009822800c4c8c96600260ae0050078b20a8375c60aa00260a26ea800a2b30013049001899192cc004c15c00a00f16415060aa00260a26ea800a2c827904f209e304f375400316414460a400260a4002609a6ea800a2c8258c138c12cdd500111192cc004c10800626464b300130530028024590501bae3051001304d37540071598009820800c4c8c96600260a60050048b20a0375c60a2002609a6ea800e2c825904b18259baa0028b20903001375c605a60926ea810c8c966002607e00314c103d87a80008992cc006600260806eb4c12c0069429450494530103d87a800089818198269825000a5eb810494c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d04b48896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b81001003412d001400c8240dc680098008009119800911191919bb032374e660a0609a002660a0609c00297ae03376060980046098002609a003300100691000c012007375a60980028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130410018cc004012007002918061ba8001403d1598009820000c6600200900399b80002480fe460186ea0c03cc02c00500f456600266e1c00920be0189919800800918069ba9001223300648008966002602000313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014413519800802400e66e00009207f918061ba9001401c825104a20948acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300f3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180819ba50030014034809104d2cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014130826100f4566002605800315980099b87002482f80a33001004801ccc01801888006460186e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300d374e002805100f20948acc004c0ac0062b30013370e004907f0144c8c8cc0040048c038dd30009119803a40044b300130110018980125eb7bdb1822464653001006918031982b001000cdd69829801200c323376060ac00260ac60ae0026eb0c14400660020130089808800a00a41386600c00c4400519800802400e66e0000920bf02919194c0040060072300f374c00280088896600266e24009200089800a5eb7bdb1822464653001006980b002c8c014cc15c0080066eb4c1500090061919bb0305700130573058001375860a4003300100a804c005005209e3300700722002403c82522497bdb181014000010120004128825104a209433706002902011640f86eb8c0f8004dd7181f006181f005c5903b0c0e8004c0e4004c0d0dd5000c590324590350c0c8004c0c4004c0c0004c0bc004c0b8004c0a4dd5001459027180598139baa3259800980e98139baa0018992cc004c084c0a0dd5000c4c966002603e60526ea8006264646644b300130320038802c5902f18178009bae302f002302f001302a37540031640a0605860526ea80062c8138c028c0a0dd5180618141baa302b30283754003164098660026eb0c02cc09cdd500f0121802002111980180111980618029bab300d30293754601a60526ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c0100062601c6605600297ae08998018019816801204e302b00140a4601001044464b3001301b001899192cc004c0b000a0091640a46eb8c0a8004c098dd5001c5660026034003132598009815800c4cc068dd61815000912cc00400a00b19800803cc0b000a26002605a004803902a45902818131baa0038acc004c078006264b3001302b00189980d1bac302a0012259800801401633001007981600144c004c0b400900720548b2050302637540071598009803800c4c8cc8966002605a00313301c3758605800244b3001002803c66002013302e002898009817801201240b11640a86eb4c0a8004c0ac004c098dd5001c566002600c0031323259800981600140122c8148dd6981500098131baa0038acc004c01400626464b3001302c0028024590291bad302a0013026375400715980099b874803000626464b3001302c0028024590291bae302a00130263754007164090812102420484090812102418121baa00244c8cc89660026042003132598009809980e9baa0018991919192cc004c09800a264b3001301830223754003132323322598009815801c4cc064c0a80204c038c0ac03e2c8140dd718140009bae3028002302800130233754003164084604a00916408c6eb8c090004c090004c08c004c078dd5000c5901c1810000c5901e1bae301e001301f0013758603a00480da26466446008603e00a6eb4c060004dd6980c800980d80120328b202e3015375400316404c602e00b1640546eb0c054004dd7180a801180a800980a00098079baa0098b201a2232598009803000c4c8c966002602e0050048b2028375c602a00260226ea800e2b300130050018acc004c044dd5001c00a2c80922c807900f18079baa0024590080c024004c010dd5005452689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v0_4/index.js b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_4/index.js new file mode 100644 index 0000000000..88747e8271 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_4/index.js @@ -0,0 +1,462 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { Type, TPlutusData } from "@blaze-cardano/data"; +const PolicyId = Type.String(); +const Contracts = Type.Module({ + Bool: Type.Boolean(), + Tuple_VerificationKey_COSESign1: Type.Tuple([Type.String(), Type.Ref("COSESign1")]), + COSESign1: Type.Object({ + headers: Type.Ref("Headers"), + payload: Type.Optional(Type.String()), + signature: Type.String() + }, { + ctor: 0n + }), + HeaderMap: Type.String(), + Headers: Type.Object({ + protected: Type.Ref("HeaderMap"), + unprotected: Type.Ref("HeaderMap") + }, { + ctor: 0n + }), + MultisigScript: Type.Union([Type.Object({ + Signature: Type.Object({ + key_hash: Type.String() + }, { + ctor: 0n + }) + }), Type.Object({ + AllOf: Type.Object({ + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 1n + }) + }), Type.Object({ + AnyOf: Type.Object({ + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 2n + }) + }), Type.Object({ + AtLeast: Type.Object({ + required: Type.BigInt(), + scripts: Type.Array(Type.Ref("MultisigScript")) + }, { + ctor: 3n + }) + }), Type.Object({ + Before: Type.Object({ + time: Type.BigInt() + }, { + ctor: 4n + }) + }), Type.Object({ + After: Type.Object({ + time: Type.BigInt() + }, { + ctor: 5n + }) + }), Type.Object({ + Script: Type.Object({ + script_hash: Type.String() + }, { + ctor: 6n + }) + })]), + Asset: Type.Tuple([Type.String(), Type.String()]), + Destination: Type.Object({ + address: Type.Object({ + payment_credential: Type.Union([Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { + ctor: 0n + }) + }), Type.Object({ + Script: Type.Tuple([Type.String()], { + ctor: 1n + }) + })]), + stake_credential: Type.Optional(Type.Union([Type.Object({ + Inline: Type.Tuple([Type.Union([Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { + ctor: 0n + }) + }), Type.Object({ + Script: Type.Tuple([Type.String()], { + ctor: 1n + }) + })])], { + ctor: 0n + }) + }), Type.Object({ + Pointer: Type.Object({ + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt() + }, { + ctor: 1n + }) + })])) + }, { + ctor: 0n + }), + datum: Type.Union([Type.Literal("NoDatum", { + ctor: 0n + }), Type.Object({ + DatumHash: Type.Tuple([Type.String()], { + ctor: 1n + }) + }), Type.Object({ + InlineDatum: Type.Tuple([TPlutusData], { + ctor: 2n + }) + })]) + }, { + ctor: 0n + }), + ExtraProtocolRedeemer: Type.Object({ + request_to_outputs: Type.Array(Type.BigInt()), + input_to_requests: Type.Array(Type.BigInt()), + treasury_input_idx: Type.BigInt(), + treasury_output_idx: Type.BigInt(), + vault_input_idx: Type.Optional(Type.BigInt()), + vault_output_idx: Type.Optional(Type.BigInt()) + }, { + ctor: 0n + }), + Nonce: Type.Union([Type.Object({ + UTxO: Type.Tuple([Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + })], { + ctor: 0n + }) + }), Type.Object({ + Validity: Type.Tuple([Type.Object({ + lower_bound: Type.Object({ + bound_type: Type.Union([Type.Literal("NegativeInfinity", { + ctor: 0n + }), Type.Object({ + Finite: Type.Tuple([Type.BigInt()], { + ctor: 1n + }) + }), Type.Literal("PositiveInfinity", { + ctor: 2n + })]), + is_inclusive: Type.Ref("Bool") + }, { + ctor: 0n + }), + upper_bound: Type.Object({ + bound_type: Type.Union([Type.Literal("NegativeInfinity", { + ctor: 0n + }), Type.Object({ + Finite: Type.Tuple([Type.BigInt()], { + ctor: 1n + }) + }), Type.Literal("PositiveInfinity", { + ctor: 2n + })]), + is_inclusive: Type.Ref("Bool") + }, { + ctor: 0n + }) + }, { + ctor: 0n + })], { + ctor: 1n + }) + })]), + OrderAction: Type.Union([Type.Object({ + OMint: Type.Object({ + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset") + }, { + ctor: 0n + }) + }), Type.Object({ + ORedeem: Type.Object({ + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset") + }, { + ctor: 1n + }) + }), Type.Object({ + ODeposit: Type.Object({ + principal: Type.BigInt(), + yield: Type.BigInt(), + reserve_asset: Type.Ref("Asset") + }, { + ctor: 2n + }) + }), Type.Object({ + OWithdraw: Type.Object({ + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset") + }, { + ctor: 3n + }) + }), Type.Object({ + OStake: Type.Object({ + amount: Type.BigInt() + }, { + ctor: 4n + }) + }), Type.Object({ + OUnstake: Type.Object({ + amount: Type.BigInt() + }, { + ctor: 5n + }) + })]), + OrderDatum: Type.Object({ + owner: Type.Ref("MultisigScript"), + destination: Type.Ref("Destination"), + action: Type.Ref("OrderAction"), + data: TPlutusData + }, { + ctor: 0n + }), + OrderRedeemer: Type.Union([Type.Literal("Execute", { + ctor: 0n + }), Type.Literal("Cancel", { + ctor: 1n + })]), + ProtocolRedeemer: Type.Union([Type.Object({ + Mint: Type.Object({ + requests: Type.Array(Type.Ref("TreasuryRequest")) + }, { + ctor: 0n + }) + }), Type.Object({ + Burn: Type.Object({ + requests: Type.Array(Type.Ref("TreasuryRequest")) + }, { + ctor: 1n + }) + }), Type.Object({ + Withdraw: Type.Object({ + requests: Type.Array(Type.Ref("TreasuryRequest")) + }, { + ctor: 2n + }) + }), Type.Object({ + Deposit: Type.Object({ + requests: Type.Array(Type.Ref("TreasuryRequest")) + }, { + ctor: 3n + }) + }), Type.Object({ + Stake: Type.Object({ + requests: Type.Array(Type.Ref("Request")) + }, { + ctor: 4n + }) + }), Type.Object({ + Unstake: Type.Object({ + requests: Type.Array(Type.Ref("Request")) + }, { + ctor: 5n + }) + })]), + ProxyDatum: Type.Object({ + logic: Type.String(), + settings: Type.Ref("Settings") + }, { + ctor: 0n + }), + Registry: Type.Object({ + treasury: Type.String(), + usdr: Type.String(), + order: Type.String(), + staking_vault: Type.String(), + susdr: Type.String() + }, { + ctor: 0n + }), + Request: Type.Object({ + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + origin: Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + }) + }, { + ctor: 0n + }), + ReserveAsset: Type.Object({ + asset: Type.Ref("Asset"), + numerator: Type.BigInt(), + denominator: Type.BigInt() + }, { + ctor: 0n + }), + Settings: Type.Object({ + mint_permission: Type.Ref("MultisigScript"), + burn_permission: Type.Ref("MultisigScript"), + withdraw_permission: Type.Ref("MultisigScript"), + deposit_permission: Type.Ref("MultisigScript"), + stake_permission: Type.Ref("MultisigScript"), + unstake_permission: Type.Ref("MultisigScript"), + registry: Type.Ref("Registry"), + reserve_assets: Type.Array(Type.Ref("ReserveAsset")), + unstaked_yield_pot: Type.Object({ + payment_credential: Type.Union([Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { + ctor: 0n + }) + }), Type.Object({ + Script: Type.Tuple([Type.String()], { + ctor: 1n + }) + })]), + stake_credential: Type.Optional(Type.Union([Type.Object({ + Inline: Type.Tuple([Type.Union([Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { + ctor: 0n + }) + }), Type.Object({ + Script: Type.Tuple([Type.String()], { + ctor: 1n + }) + })])], { + ctor: 0n + }) + }), Type.Object({ + Pointer: Type.Object({ + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt() + }, { + ctor: 1n + }) + })])) + }, { + ctor: 0n + }) + }, { + ctor: 0n + }), + SignedPayload_ProtocolRedeemer: Type.Object({ + action: Type.Ref("ProtocolRedeemer"), + nonce: Type.Ref("Nonce") + }, { + ctor: 0n + }), + SignedRedeemer_ExtraProtocolRedeemer: Type.Object({ + extra: Type.Ref("ExtraProtocolRedeemer"), + payload: Type.Ref("SignedPayload_ProtocolRedeemer"), + signatures: Type.Array(Type.Ref("Tuple_VerificationKey_COSESign1")) + }, { + ctor: 0n + }), + StakingVaultRedeemer: Type.Undefined(), + TreasuryRequest: Type.Object({ + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + yield: Type.BigInt(), + origin: Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + }), + reserve_asset: Type.Ref("Asset") + }, { + ctor: 0n + }), + VaultDatum: Type.Object({ + circulating_susdr: Type.BigInt() + }, { + ctor: 0n + }) +}); +export const Bool = Contracts.Import("Bool"); +export const Tuple_VerificationKey_COSESign1 = Contracts.Import("Tuple_VerificationKey_COSESign1"); +export const COSESign1 = Contracts.Import("COSESign1"); +export const HeaderMap = Contracts.Import("HeaderMap"); +export const Headers = Contracts.Import("Headers"); +export const MultisigScript = Contracts.Import("MultisigScript"); +export const Asset = Contracts.Import("Asset"); +export const Destination = Contracts.Import("Destination"); +export const ExtraProtocolRedeemer = Contracts.Import("ExtraProtocolRedeemer"); +export const Nonce = Contracts.Import("Nonce"); +export const OrderAction = Contracts.Import("OrderAction"); +export const OrderDatum = Contracts.Import("OrderDatum"); +export const OrderRedeemer = Contracts.Import("OrderRedeemer"); +export const ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +export const ProxyDatum = Contracts.Import("ProxyDatum"); +export const Registry = Contracts.Import("Registry"); +export const Request = Contracts.Import("Request"); +export const ReserveAsset = Contracts.Import("ReserveAsset"); +export const Settings = Contracts.Import("Settings"); +export const SignedPayload_ProtocolRedeemer = Contracts.Import("SignedPayload_ProtocolRedeemer"); +export const SignedRedeemer_ExtraProtocolRedeemer = Contracts.Import("SignedRedeemer_ExtraProtocolRedeemer"); +export const StakingVaultRedeemer = Contracts.Import("StakingVaultRedeemer"); +export const TreasuryRequest = Contracts.Import("TreasuryRequest"); +export const VaultDatum = Contracts.Import("VaultDatum"); +export class V0_4OrderOrderSpend { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "5911bb010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004888c966002601400313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a37540091598009807800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024009017202e301837540072259800800c52f5c113301a3017301b00133002002301c00140652225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640592232330010010032233003001300200291111919800800802912cc004006200b13259800800c4cc010c08000801a26600a60400046600600600280f0c08000501d488c8cc00400400c896600200314c0103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444445300130060069802802c888ca6002003004801a0022223259800980a000c4c9660020030068992cc00400600f007803c01e264b3001302b003802c0210281bae00140ac60500028130c090dd5001c566002603200313259800800c01a264b3001001803c01e264b3001302b003899807000912cc00400a00f13259800800c66002015001898011817001a014805c02e01700b40bc605800481520108140dd6000c01e00e8158c0a000502618121baa0038acc004c03c006264b300100180344c966002003007803c4c966002605600713300e0012259800801401e264b30010018cc00402a00313002302e003402900b805c02e0168178c0b000902a40210281bac001803c01d02b1814000a04c3024375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605c0071330110012259800801402a264b30010018cc004036003130023031003403500e807403a01c8190c0bc00902d402d02b1bac001805402902e1815800a052375a002605400500740ac60500028130c090dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0ac00e00b00840a06eb400600e8158c0a000502618121baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815801c0160108140dd6800c01d02b1814000a04c3024375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815801c0160108140dd7000a0563028001409860486ea800e00a81090212042408481090212042302237540053300237586040603a6ea80448cdd79810980f1baa00101048888c8c8cc88c966002602c604a6ea801a264b3001301c3026375400315980099b8f375c6054604e6ea8004dd7180598139baa3016302737546028604e6ea8c96600200319800800c40060468022047023811c08d02d198011bac30143027375403604713233225330283372c9210d63726564656e7469616c3a3a200037326600e0049101001330180010023374a9001198151ba90014bd701bab3017302837540386eb8c0a8c09cdd5198011bac301430273754036047153302549013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f7264657200164091153302549132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f63726564001640906052604c6ea8c0a4c098dd5180998131baa30293026375400d15330244913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408c44a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980c18139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a98149baa0018992cc004006330010018800c099007409a04d0268132060302d302a375400315330284913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601a60526ea8c058c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601800446602860166eacc054c0a0dd5180a98141baa001002300100122259800980b18129baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302f0028acc004c06cc0a8dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200313259800800c04e264b30010018992cc00400602b13259800800c05a02d1332259800800c062264b30010018acc004c10800a330010128cc0040423300100e8cc0040323300100a8cc0040222b3001302e303d375400d13259800800c06a264b300100180dc06e03701b899912cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f0278992cc004c14400e26606802444b30010028acc004c0fcc138dd500944c96600200302b8992cc004006264b3001001816c4c966002003159800982b801466002007132598009822000c4c9660020030308992cc0040062b3001305a0028992cc004c11c006264b3001001819c4c966002003159800982e80146600200303581a208681a20b481a40d2069034417860b600282c8c15cdd50014566002609800313259800800c0ce264b300100181a40d20691332259800800c0da264b300100181bc0de06f1332259800800c0e6264b300100181d40ea075132598009832001c0f20768308dd6800c0e90641830800a0be375a00260c0005037418460bc00282e0dd6800982e80140d105e182d800a0b230573754005032415082a0c154dd5000c0c505740c6063031818a0b63058001415860a86ea800a2b300130490018acc004c150dd500140c205e82aa05e828905118291baa001817207a81720a881740ba05d02e416060aa0028298c15400a05902c81640b10561829800a0a2304f375402502a413113259800800c5660026080609e6ea8006264b300100181644c96600200302d816c4cc896600200302f8992cc00400606103081844cc89660020030328992cc004006067033819c4c96600260ba007159800803c0d2264b300100181ac0d606b035899912cc00400606f13259800800c0e207103881c44c96600260c400713010306201181ca0be375c0028310c17c00505d1bae001305e008417c60b800e82d206882d0dd6800c0cd05d182d000a0b0375a00260b2005030416860ae00282a8dd6000982b00140b605a82b8c15000505218281baa001815a09a815c0ae05702b415460a400482820508270dd7000a0a2304e00141306eb8004c13400904e1825800a092375c00260940048258c1200050461bae00130470024120608a0028218dd70009822001208a30420014100607c6ea801a03281da03280fa03280fa03280fa03280fa03280fa03280fa03281fa03301980cc0650431820000a07c3758002607e00501680b2080303d00140ec607a00501480a405202881f0c0ec005039181d801404a0250128092078303900140dc6072005010808404202081d0c0dc005035181b801403a01d00e8072070303500140cc606a00500c806403201881b0c0cc0050311819801402a01500a8052068303100140bc606200500880440220108190c0bc00502d18159baa00180320508032058803401a00d00640c0605a0028158dd70009816001205a302a00140a0604c6ea800e0028118888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020565980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81290251bac3028002375a604c0026466ec0dd418130009ba73027001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6056003337149101023a200098008054c0b000600a805100a181700144ca6002015302b00199b8a489023a200098008054c0b0006600e66008008004805100a18170012058302e00140ac66e29220102207d0000340a06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d20503758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720543371666e000056600266e2000520148a40c11481b902a002200c33706002901019b8600148080cdc7002001204e375c0068158dc5245022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408881108acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" : "590882010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc00488c96600260120031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c03800626464b3001301c0028024590191bae301a0013016375400716405080a0c050dd50014896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a6103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a44444646466446644b30013011301d375400313259800980b980f1baa0018acc004cdc79bae3022301f37540026eb8c020c07cdd51808980f9baa300f301f3754646600c0022002660066eb0c03cc07cdd500b00e44cc040dd59808980f9baa0163374a9001198109811180f9baa330033758601e603e6ea80580712f5c11640751640746042603c6ea8c084c078dd51807180f1baa3021301e37540031640704464b30013012301e3754003132598009807180f9baa001899198038008800981198101baa0018b203c3008301f3754601e603e6ea8c088c07cdd5000c5901d1980400111980718021bab300f301f3754601e603e6ea8004008cc018dd6180f980e1baa01323375e6040603a6ea80040488966002601e60366ea800a2646644b300130230018992cc004c04cc07cdd5000c4c8c8c8c8c8c8c8c8ca60026058003302c0089816003cc0b001a605800b302c0049816001cdd61816001244444444b3001303500989980c181a00889980c00389980c00309980c00289980c00209980c0018acc004c090c0c0dd500144c8c8c8c8ca60026eb8c0e40066eb8c0e40166eb8c0e40126eb8c0e400e6eb8c0e40092222259800981f80344cc09802c89660020051598009818181e1baa01489919192cc004c11000a26605a6086006264b300130340018992cc004c11800626464b300130370018992cc004c124006266064609000205516411860886ea800a2b3001303c00189919194c004dd69825000cdd69825001cdd698250012444b3001304e004817c5904b0c128004c124004c110dd5001459042208430423754002608a00316410c60826ea800a2b300130390018acc004c104dd5001409a2c82122c81f903f181f9baa0018b208230420013042001303d37540291640ed132598009818981e9baa001899191919912cc004c11c00e264646644b3001304b0038980598258064590481bae3048001375c609000460900026eb0c1180162c8220dd698220009bad304400230440013043001303e37540031640f0608000481f22c81e060720026070002606e002606c00260626ea800a2c817a2c819060580026056002605400260520026050002604e002604c002604a00260406ea80062c80f0c0880062c8100dd718100009810800980e1baa0028b20343006006300100122232598009807800c4c8c96600260440050048b203e375c604000260386ea800e2b300130140018992cc004c0840062660106eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c5660026014003132598009810800c4cc020dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004cdc3a400c0031323322598009811800c4cc028dd61811000912cc00400a00f19800804cc09000a26002604a00480490224590201bad30200013021001301c375400715980099b874802000626464b3001302200280245901f1bad3020001301c375400715980099b874802800626464b3001302200280245901f1bad3020001301c375400715980099b874803000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa0024566002600c60246ea801e33001301630133754602c60266ea801e6eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50054c058c05cc05cc05cc05cc05cc05cc05cc04cdd50054dd5980298099baa00a48888c8cc00400401488c966002601a003133009006375c603a60346ea800a2b30013012001899198008009bac301e301b375400644b30010018a518acc004cc014014c07c006266004004604000314a080d101d45660026010003132330010013758603c60366ea800c896600200314a115980099802802980f800c528c4cc008008c08000501a203a8acc004cdc3a400c003132337126eb4c078004c8cc004004dd6180f9810001112cc0040062900044cc89660026601001000513370000290014400501d1810000998010011810800a03c301a375400515980099b87480200062646644b30013015301c3754005159800980a980e1baa30203021003899b89375a6040603a6ea8008006266e20dd69810180e9baa002001406d14a080d8c078004dd6980f180d9baa003301a3754601460346ea80162b30013370e9005000c4c8cc8966002602a60386ea800a2b30013015301c3754604060420071337120026eb4c080c074dd500144cdc40009bad3020301d375400480da294101b180f0009bad301e301b375400660346ea8c074c068dd5002c4cc02c010cdd2a400466038603a60346ea80092f5c080c10182030406080c1018180c1baa001459011202218069baa00818051baa0038b2010180480098021baa0098a4d13656400801", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class V0_4OrderOrderElse { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "5911bb010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004888c966002601400313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a37540091598009807800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024009017202e301837540072259800800c52f5c113301a3017301b00133002002301c00140652225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640592232330010010032233003001300200291111919800800802912cc004006200b13259800800c4cc010c08000801a26600a60400046600600600280f0c08000501d488c8cc00400400c896600200314c0103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444445300130060069802802c888ca6002003004801a0022223259800980a000c4c9660020030068992cc00400600f007803c01e264b3001302b003802c0210281bae00140ac60500028130c090dd5001c566002603200313259800800c01a264b3001001803c01e264b3001302b003899807000912cc00400a00f13259800800c66002015001898011817001a014805c02e01700b40bc605800481520108140dd6000c01e00e8158c0a000502618121baa0038acc004c03c006264b300100180344c966002003007803c4c966002605600713300e0012259800801401e264b30010018cc00402a00313002302e003402900b805c02e0168178c0b000902a40210281bac001803c01d02b1814000a04c3024375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605c0071330110012259800801402a264b30010018cc004036003130023031003403500e807403a01c8190c0bc00902d402d02b1bac001805402902e1815800a052375a002605400500740ac60500028130c090dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0ac00e00b00840a06eb400600e8158c0a000502618121baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815801c0160108140dd6800c01d02b1814000a04c3024375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815801c0160108140dd7000a0563028001409860486ea800e00a81090212042408481090212042302237540053300237586040603a6ea80448cdd79810980f1baa00101048888c8c8cc88c966002602c604a6ea801a264b3001301c3026375400315980099b8f375c6054604e6ea8004dd7180598139baa3016302737546028604e6ea8c96600200319800800c40060468022047023811c08d02d198011bac30143027375403604713233225330283372c9210d63726564656e7469616c3a3a200037326600e0049101001330180010023374a9001198151ba90014bd701bab3017302837540386eb8c0a8c09cdd5198011bac301430273754036047153302549013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f7264657200164091153302549132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f63726564001640906052604c6ea8c0a4c098dd5180998131baa30293026375400d15330244913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408c44a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980c18139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a98149baa0018992cc004006330010018800c099007409a04d0268132060302d302a375400315330284913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601a60526ea8c058c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601800446602860166eacc054c0a0dd5180a98141baa001002300100122259800980b18129baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302f0028acc004c06cc0a8dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200313259800800c04e264b30010018992cc00400602b13259800800c05a02d1332259800800c062264b30010018acc004c10800a330010128cc0040423300100e8cc0040323300100a8cc0040222b3001302e303d375400d13259800800c06a264b300100180dc06e03701b899912cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f0278992cc004c14400e26606802444b30010028acc004c0fcc138dd500944c96600200302b8992cc004006264b3001001816c4c966002003159800982b801466002007132598009822000c4c9660020030308992cc0040062b3001305a0028992cc004c11c006264b3001001819c4c966002003159800982e80146600200303581a208681a20b481a40d2069034417860b600282c8c15cdd50014566002609800313259800800c0ce264b300100181a40d20691332259800800c0da264b300100181bc0de06f1332259800800c0e6264b300100181d40ea075132598009832001c0f20768308dd6800c0e90641830800a0be375a00260c0005037418460bc00282e0dd6800982e80140d105e182d800a0b230573754005032415082a0c154dd5000c0c505740c6063031818a0b63058001415860a86ea800a2b300130490018acc004c150dd500140c205e82aa05e828905118291baa001817207a81720a881740ba05d02e416060aa0028298c15400a05902c81640b10561829800a0a2304f375402502a413113259800800c5660026080609e6ea8006264b300100181644c96600200302d816c4cc896600200302f8992cc00400606103081844cc89660020030328992cc004006067033819c4c96600260ba007159800803c0d2264b300100181ac0d606b035899912cc00400606f13259800800c0e207103881c44c96600260c400713010306201181ca0be375c0028310c17c00505d1bae001305e008417c60b800e82d206882d0dd6800c0cd05d182d000a0b0375a00260b2005030416860ae00282a8dd6000982b00140b605a82b8c15000505218281baa001815a09a815c0ae05702b415460a400482820508270dd7000a0a2304e00141306eb8004c13400904e1825800a092375c00260940048258c1200050461bae00130470024120608a0028218dd70009822001208a30420014100607c6ea801a03281da03280fa03280fa03280fa03280fa03280fa03280fa03281fa03301980cc0650431820000a07c3758002607e00501680b2080303d00140ec607a00501480a405202881f0c0ec005039181d801404a0250128092078303900140dc6072005010808404202081d0c0dc005035181b801403a01d00e8072070303500140cc606a00500c806403201881b0c0cc0050311819801402a01500a8052068303100140bc606200500880440220108190c0bc00502d18159baa00180320508032058803401a00d00640c0605a0028158dd70009816001205a302a00140a0604c6ea800e0028118888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020565980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81290251bac3028002375a604c0026466ec0dd418130009ba73027001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6056003337149101023a200098008054c0b000600a805100a181700144ca6002015302b00199b8a489023a200098008054c0b0006600e66008008004805100a18170012058302e00140ac66e29220102207d0000340a06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d20503758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720543371666e000056600266e2000520148a40c11481b902a002200c33706002901019b8600148080cdc7002001204e375c0068158dc5245022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408881108acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" : "590882010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc00488c96600260120031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c03800626464b3001301c0028024590191bae301a0013016375400716405080a0c050dd50014896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a6103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a44444646466446644b30013011301d375400313259800980b980f1baa0018acc004cdc79bae3022301f37540026eb8c020c07cdd51808980f9baa300f301f3754646600c0022002660066eb0c03cc07cdd500b00e44cc040dd59808980f9baa0163374a9001198109811180f9baa330033758601e603e6ea80580712f5c11640751640746042603c6ea8c084c078dd51807180f1baa3021301e37540031640704464b30013012301e3754003132598009807180f9baa001899198038008800981198101baa0018b203c3008301f3754601e603e6ea8c088c07cdd5000c5901d1980400111980718021bab300f301f3754601e603e6ea8004008cc018dd6180f980e1baa01323375e6040603a6ea80040488966002601e60366ea800a2646644b300130230018992cc004c04cc07cdd5000c4c8c8c8c8c8c8c8c8ca60026058003302c0089816003cc0b001a605800b302c0049816001cdd61816001244444444b3001303500989980c181a00889980c00389980c00309980c00289980c00209980c0018acc004c090c0c0dd500144c8c8c8c8ca60026eb8c0e40066eb8c0e40166eb8c0e40126eb8c0e400e6eb8c0e40092222259800981f80344cc09802c89660020051598009818181e1baa01489919192cc004c11000a26605a6086006264b300130340018992cc004c11800626464b300130370018992cc004c124006266064609000205516411860886ea800a2b3001303c00189919194c004dd69825000cdd69825001cdd698250012444b3001304e004817c5904b0c128004c124004c110dd5001459042208430423754002608a00316410c60826ea800a2b300130390018acc004c104dd5001409a2c82122c81f903f181f9baa0018b208230420013042001303d37540291640ed132598009818981e9baa001899191919912cc004c11c00e264646644b3001304b0038980598258064590481bae3048001375c609000460900026eb0c1180162c8220dd698220009bad304400230440013043001303e37540031640f0608000481f22c81e060720026070002606e002606c00260626ea800a2c817a2c819060580026056002605400260520026050002604e002604c002604a00260406ea80062c80f0c0880062c8100dd718100009810800980e1baa0028b20343006006300100122232598009807800c4c8c96600260440050048b203e375c604000260386ea800e2b300130140018992cc004c0840062660106eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c5660026014003132598009810800c4cc020dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004cdc3a400c0031323322598009811800c4cc028dd61811000912cc00400a00f19800804cc09000a26002604a00480490224590201bad30200013021001301c375400715980099b874802000626464b3001302200280245901f1bad3020001301c375400715980099b874802800626464b3001302200280245901f1bad3020001301c375400715980099b874803000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa0024566002600c60246ea801e33001301630133754602c60266ea801e6eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50054c058c05cc05cc05cc05cc05cc05cc05cc04cdd50054dd5980298099baa00a48888c8cc00400401488c966002601a003133009006375c603a60346ea800a2b30013012001899198008009bac301e301b375400644b30010018a518acc004cc014014c07c006266004004604000314a080d101d45660026010003132330010013758603c60366ea800c896600200314a115980099802802980f800c528c4cc008008c08000501a203a8acc004cdc3a400c003132337126eb4c078004c8cc004004dd6180f9810001112cc0040062900044cc89660026601001000513370000290014400501d1810000998010011810800a03c301a375400515980099b87480200062646644b30013015301c3754005159800980a980e1baa30203021003899b89375a6040603a6ea8008006266e20dd69810180e9baa002001406d14a080d8c078004dd6980f180d9baa003301a3754601460346ea80162b30013370e9005000c4c8cc8966002602a60386ea800a2b30013015301c3754604060420071337120026eb4c080c074dd500144cdc40009bad3020301d375400480da294101b180f0009bad301e301b375400660346ea8c074c068dd5002c4cc02c010cdd2a400466038603a60346ea80092f5c080c10182030406080c1018180c1baa001459011202218069baa00818051baa0038b2010180480098021baa0098a4d13656400801", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class V0_4ProtocolProtocolWithdraw { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "596880010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492b657870656374207661756c745f646174756d3a205661756c74446174756d203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888888888888888896600264653001302100198109811000cdc3a400930210024888966002600460426ea800e264b3001005899914c004888c966002600c00313259800800c00e264b300100180240120090048992cc004c0c000e00d00540b46eb80050301816800a056302937540091598009802800c4c9660020030038992cc0040060090048024012264b30013030003803401502d1bae00140c0605a0028158c0a4dd50024009026204c3027375400722259800980298139baa0038992cc00400600513259800800c4c9660020030048992cc004006264b3001302d0018acc004cdc4a400860580030068992cc004c0c8012264b3001300c0018acc004c0bcdd5003402601081822b3001300b0018992cc00400601313259800800c02a01500a8992cc004c0d800e01900b40cc6eb400601481b0c0cc00503118179baa0068acc004c03c0062b3001302f375400d0098042060804205840b08160c0b4dd5002c01d02f18049816000a054803205c3754003005802c01600a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b300130053027375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0c800e01100740bc6eb400600c8190c0bc00502d1bae001302e00240bc60580028150c0a0dd5001c0050254888c966002600c00313259800800c00e264b30010018024012009132598009818001c01a00a8168dd6800c0110301816800a056302937540091598009802800c56600260526ea801200700240a900240988130c09cdd5001a44446465300122259800980598169baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130390028cc00401a33001001804c02100e402100b402103640220110088042074303700140d46eb4004c0d800a00a81b8c0d0005032181a001400e007003801a06a303200140c0605c6ea800e002815a444b3001300b302d375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0fc00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c11000e02901341046eb80050441820800a07e375c00260800048208c0f800503c40390144039011403903c1bac001806c03503f181e000a074303c002805c02e01700b40f4607400281c0dd6800981c801402103a181b800a06a375a002606c00500540dc60680028190c0d000a007003801c00d0351819000a060302e375400700140ad223233001001003223300300130020024889660026016605a6ea8042264b300100180a44c96600200313259800800c05a264b30010018992cc00400603113259800800c06603313259800981c801c566002602460686ea801a264b300100180dc4c96600200301c80e44cc896600200301e8992cc00400603f01f899912cc00400604313259800800c08a045022899912cc00400604913259800800c09604b025899912cc00400604f13259800800c4c9660020030298992cc0040062b3001304900289980c007112cc00400a26603401a44b30010028cc00401e330010058cc004dc3a400d370e90044dc3a4014911192cc004c0a8c130dd500e44c9660020030338992cc004006264b300100181ac4c966002003159800982a80144cc8966002606000313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205a81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c0bc006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b503e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b1598009819800c4c9660020030398992cc00400607503a8992cc004c16800e26605200244b3001002803c4c96600200319800800c4c008c17400e07c816a07d03e81f40f905e182d80120b281da0ae375800303a81d20b43057001415460a66ea80162b3001300a0018992cc00400607313259800800c0ea07513259800982d001c4cc0a400489660020050078992cc0040063300100189801182e801c0f902d40fa07d03e81f20bc305b002416503b415c6eb000607503a416860ae00282a8c14cdd5002c566002601200313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205c81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c020006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b903e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b0384140828105020a0414082804c966002605e00313259800800c0e2264b30010018acc004c16000a3300100180440e502d40e505540e607303981ca0b23056001415060a46ea800a2b3001302e0018992cc00400607113259800800c56600260b0005159800981898299baa0018992cc00400607513259800800c4c96600200303c8992cc0040062b3001305c0028cc00400e3300100180640f503240f503240f505940f607b03d81ea0ba305a001416060b400503b81dc0ee07682d8c160005056182a1baa00181ca0a281ca0aa81cc0e6073039416460ac00282a0c148dd500140dd04f209e3050375400260a06ea800e06c829206d03681b40d90561829800a0a2305300281a40d2069034415060a20028278c134dd500e40c904a09980f80c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00641393702900048888c8cc004004014896600200310058992cc00400626600860b000400d133005305800233003003001415860b000282aa6e012001918291829800c8c148c14cc14c0066e95200048888888c8c8c8cc88c96600200313259800981c982d9baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b3001001829414a26644b300100182a44c96600200315980098398014660020251980080846600201d19800806466002015198008044566002609860dc6ea801a264b300100182b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a899912cc0040060b913259800800c1760bb05d82ec4cc896600200305f8992cc0040060c1060830418226644b300100183144c966002003063831c18e0c713259800984100801c4cc144048896600200519800809466002605c6100026ea818a4610802610a02610a02610a020032232330010010032259800800c52845660026006610e0200314a313300200230880100142040484280a4610802610a02610a02610a02610a02610a02610a02610a02003374a90014dc02400491111119192cc0066002444646644b3001306b0028acc004c1acc23404dd5000c5300103d87a80008a6103d8798000422c051598009837001456600260dc611a026ea80062980103d87a80008a6103d87b8000422c0513322598009836800c530103d87b80008acc004c1b0006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000423804847008dd69849809848009baa0038a6103d8798000423404846808dd69848809847009baa003308d01375400284580908b011845809baa00130020033001003919191919912cc004c1ac00a29422b3001306e0028cc004cdd79848809847009baa0014c103d87b8000a50a51422c0513233225980098370014528c56600260da005133225980098379849009baa3041309301375400d133710004003133712004002848008dd6984a009848809baa0035980098369848009baa303f309101375400f100189806000a11c028a50423804847008c23804dd50009bad309201308f013754008612202611c026ea800508b01211602308b013754002611e02612002006611c026116026ea8004c23404004c22404dd5000cc0d8c22004dd50042444b30013068308a0137540031323300a3758611e026118026ea81ac8cdd79848009846809baa001002308e01308b01375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c24004c23404dd50014c24004c23404dd5000c8c8c96600260d8611e026ea8c24c04c2500400a2003132598009836800c4c034cc24c04dd418061bad309401309101375400497ae08acc004c1b800620051002423804847008c23c04dd5000a11a02309201001308e0137540028029300103d87b8000a50a514228051980099baf9800981d9846809baa002981d9846809baa001919192cc004c1b0c23c04dd5184980984a0080144006264b3001306d0018980699849809ba83040375a6128026122026ea80092f5c11598009837000c400a200484700908e011847809baa001423404612402002611c026ea8005005260103d8798000a50a5142280514a084500908a01211402308e01308b01375400260106116026ea81a908801233001308b01308801375401122232330010010042259800800c40122660066120020026600400461220200284700a44b30010018a40011300533002002308e01001422c0522980099804001119baf308e01308b013754611c026116026ea8c0e4c22c04dd5000980399846809ba90024bd70528528a10e02918329844009baa308c0132330010010022259800800c52f5c303d87a80008101800044c8cc89660033001306a308d0137546122020074a14a284580a2661200330014a14c103d87a8000a60103d8798000422c0466120026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c24c0400400e29462660040046128020028468090910144cc24006600294298103d87a8000a60103d8798000422c0466120026e9c0092f5c1133090019800a51a60103d87a8000a60103d8798000422c0466120026e9ccc24004dd400080125eb8108b012116023758611e026120020026eb4c23c04008cc008008c23c0400508c01489660020031480022600a66004004611c0200284580a4444653001001802c012006800888896600200710018acc00400a2a6611c029211d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012612802007309401002cc004c24c0400e6eb4c24c0400a0028029004212202424405222598008014530103d87a80008acc004c1a00062606e6611a02611c0200497ae08cc00400e611e02005303a001400c84400908c01488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064234051330050053094010044234046eb8c23404004dd5984700800984800800a11c0214bd6f7b63048896600260d06114026ea800e264b300100180144c966002003003801c00e264b3001309201003802c01108f011bad001801a12402308f010014234046116026ea800e00284400a44646600200200644b30010018a5eb8226644b30013375e612202611c026ea8c24404c23804dd5181e1847009baa002300a3309001375200a97ae08998480080119802002000c4cc01001000508b01184780800984800800a11a029184600984680984680984680984680984680800c8c23004c23404c23404c23404c23404c23404c23404006444653001001802400d0011112cc00400a2b30010018a518a50423c05159800800c5284566002660086122020046eb4c24404006330010039849008014c248040050034528211602423c0484780a444b30013068308a01375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002612e0200519800803c6600200b132598009838800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd5002456600260e000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001309e010038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b300130a30100380b40550a0011bae001428c0461400200284f008dd7000984f80801214002309d01001426c05010426c046eb000601f00f42780461360200284c808dd6800984d00801403109b01184c00800a12c023094013754009159800983a000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c2840400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c2980400e033018428c046eb80050a601185180800a14202375c002614402004851808c2800400509e01404d09e011bac00180940490a101184f00800a13802375a002613a0200500f42780461360200284c808dd6800984d00801403109b01184c00800a12c0230940137540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd50024566002609400313259800800c02e264b3001001806403201913259800984d80801c03a01a84c008dd6800c03109b01184c00800a12c0230940137540091598009824800c4c96600200300b8992cc00400601900c80644c96600261360200700e806a13002375a00300c426c0461300200284b008c25004dd500240290910121220242440484880909101212202309201375400700941a500940e1009425004612a02002849808c2540400a00f007803c01d09601184980800a12202309301002802c01600b005425004612202002847808c2440400a007003801c00d09201184780800a11a02308b013754007001422005222329800800c01200680088896600200510018cc00400e61240200533004309101002001400c84780a4611802611a02611a02611a02611a020032225980098341845009baa0038992cc00400600513259800800c00e0070038992cc004c2480400e00b004423c046eb4006006849008c23c0400508d011845809baa003800a11002912cc0040062900044c014cc008008c2380400508b01488cdc199b82002375a606e6114026ea8004dd6981c1845009baa0019b88480024466062004466ebcc23804c22c04dd50009ba700292cc004cdc4000a40011303a0018800a10c0248888888888888888888888a6002602a02b2301400198090094c0400424446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803214a02899802802985600802214a02375c614a020026eb4c29804004c2a0040050a601198098020018a400123014001984f009baa0179802802c88c9660026104026142026ea8006264b30010018cc0040062b30013375e60446146026ea800cc29804c28c04dd5002456600266ebcc144c28c04dd50009853009851809baa0038800c260050a001425c050a00142580500d42580612c030960184b00a1500230a50130a201375400309001427c04609c6142026ea8c13cc28404dd50012444444445300122223233001001005223259800984600800c4c94cc2b804cdcb248121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660b06ea4005220100132598009847009858009baa001899194c004dd7185b00800cdd7185b00985b80800cdd7185b008012444a66168029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330b4013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660bc6ea400522010015330b4013372c9201187665726966795f65643235353139207061796c6f61643a20003732660bc6ea400922010015330b4013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660bc6ea400d2201001325330b5013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660bf3001001a60103d87a8000a60103d879800042d00491010010019800800c00a006b950c2d804004dd6185a009858809baa0018a998578099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660b26ea400922010014a0857008c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c616c020020091305f330b501374e00297ae0899801801985b808012160023758616a02002859808dd71859009857809baa0028acc004c22c04006264a6615c0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416c6c4f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b804910100100132330010010022259800800c528c5660026600c00c616a0200313300200230b6010018a5042bc04859808dd61859009857809baa0028acc004c23c04006264a6615c0266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416e794f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013302e0012330050050013758616402615e026ea800a2b3001306600189919912998580099b96490112436865636b696e672041744c656173743a20003732660b46ea00092201001325330b1013372c92011941744c656173742073617469736669656420636f756e743a20003732660b66ea00052201001325330b2013372c92011041744c6561737420726573756c743a20003732660b93001001a60103d87a8000a60103d879800042c4049101001001337120060033001001a400122598009980400400144c0bc00620028588090291bad30b3010013758616602616802002615e026ea800a2b300130650018992998570099b9649111436865636b696e67204265666f72653a20003732660b06ea00052201001325330af013372c92010f4265666f726520726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc49bad30b50130b20137540020071337106eb4c2d404c2c804dd5000801a15e028a5042bc046168020026160026ea8c178c2c004dd50031bad30b20130af0137540051598009832000c4c94cc2b804cdcb24910436865636b696e672041667465723a20003732660b06ea00052201001325330af013372c92010e416674657220726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc48019bad30b50130b20137540031337100066eb4c2d404c2c804dd5000a15e028a5042bc046168020026160026ea8c2cc04c2c004dd50031bad30b20130af0137540051325330ae013372c920111436865636b696e67205363726970743a20003732660b06ea40052201001325330af013372c92010f53637269707420726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232330010010072259800800c528456600266ebc00cc2c804c2d8040062946266004004616e020028580090b401181619859009ba90014bd701bae30b20130af0137540048560090ac0121580242b0048560090ac011856809baa0019112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a15002912cc004cdc4000a400114c103d87a8000899804001000a14e029112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a1500248888ca60024444446644646644b30013370e66e04dd6985d80985c009baa30bb01003375a6176026170026ea8c2ec04010006264b30013370f30013758606c6172026ea80329000488cc89660033001309a01001a50a5142e8051325980099b893302300100598008044dd7186080801cdd7186080986100801a036899b800040018a9985e00a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642ec0466e08004016200685d008dd6185f00985d809baa00232980080552000912cc004cdd79813185f009baa002374e0071337000026eb4c1b0c2f804dd5001440050bb01204a3758617c026176026ea800902219b8100200a8801454cc2dc052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001642d804b3001301c0098a40031480090b501454cc2d8052415a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e74001642d4046eacc2e404c2e8040056600261260260200071480022b300100385800c4c96600261760200915980099b8f375c616c0200291104555344720089bad30b7010018a9985a80a491d657870656374206e616d65203d3d20636f6e7374616e74732e75736472001642d0050b10142e00461720200685b8090b301185c80800998119bab301b30b301375400a6eb8c184c2cc04dd5180f9859809baa0069800802cdd7185b009859809baa301f30b301375400d003801200e9111192cc004c23c04c2c404dd5000c4c96600266ebcc2d804c2cc04dd5185b009859809baa001302f330b501375200a97ae08acc004c23c0660026eacc184c2cc04dd5000c01691010d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b5013754007006a4504555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c54cc2c8052412d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001642c40460c06166026ea80062a661620292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b10149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001642bc046600e008003222232598009847809858809baa0018992cc004cdd7985b009859809baa30b60130b301375460c26166026ea8004c0bccc2d404dd4802a5eb822b3001308f0198009bab306130b301375460c26166026ea800600b48810d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b501375460c6616a026ea800e00d48904555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c288050b10118301859809baa306130b301375400315330b1014901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b1014914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001642bc046600e0080029112cc004c2340402e26644b30019800985a809859009baa058815cc0bcc2c804dd504880cdd5980f1859009baa091014029159800998139bac30b50130b2013754122026eb8c0c4c2c804dd5180f1859009baa0588acc0066002660406eb0c2d404c2c804dd5048809bae305f30b2013754603c6164026ea81626eb0c180c2c804dd5000cdd618179859009baa05848896600266e1cc05800cc0580162b300130110028cc00400e005223259800984a80985b809baa001899192cc004c25c04c2e404dd5000c4c8ca60026603e010003375860486178026ea80126eb4c2fc0400922259800984e00985f009baa0038acc004cdc499199119b8330713370066e08004dd698379861009baa003002002375a60dc6180026ea8004dd698371860009baa00830c20130bf0137540073001375660da617e026ea8c1b4c2fc04dd50054dd71861008014dd718610098618080120388acc004cdc38009bad306d30bf01375400f13375e6e9c010c09cc2fc04dd5003c5282178028a5042f00515330bd014914365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001642f0043758617c02617e020026174026ea800629410b7011833185c809baa3301200400130bb0130b80137540030aa0142d4046601a00e002810214c0285900a14a02859009159800cc004dd6182f9859009baa091019bac30b50130b2013754003330b401306030b2013754603c6164026ea8160cc2d0053001054455534472004bd702444b30013370e6028004602c00b19800802c00a4464b300130950130b70137540031325980099baf30bc0130b90137540026178026172026ea8c2f004c2e404dd5002456600266ebcc198c2e404dd50009833985c809baa30bc0130b901375400913370f3001375660ce6172026ea80066eb8c2f0040166eb8c19c015016180d9bad306730b901375400914a085b00a29410b601185d80985c009baa00185780a16a023300d00500140810a10142c804899b87980082c42440690004dd6982f9859009baa0019bad303130b2013754003002401530010029bac30b50130b201375400323017375a60c26166026ea8005007454cc2c005241856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a2020202029001642bc0515330b0014918f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642bc050ad0142bc0515330b0014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642bc046eb0c2cc04c2c004dd50141859809858009baa092018992cc004c2340403226644b3001980098309859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc0066002660426eb0c2d804c2cc04dd5049009bae306030b3013754603e6166026ea81666eb0c184c2cc04dd5000ccc2d404c184c2cc04dd5180f9859809baa059330b5014c1054455534472004bd702444b30013370e602e006602e00b159800980900146600200700291192cc004c25804c2e004dd5000c4c8c966002612e026174026ea800626464b3001337120033001375660d6617a026ea8c1acc2f404dd5003cdd71860008044dd718600098608080420348acc004cdc380098371bad306b30bd01375400913375e618002618202004604a617a026ea801229410ba014528217402375a617e020026176026ea800629410b8011833985d009baa3301300400130bc0130b90137540030ab0142d8046601c00e002810a14e0285980a14c02859809159800cc004dd618301859809baa092018014dd6185b009859809baa0019bac303030b30137540b2801a266e1e60020b309201a4001375a60c06166026ea80066eb4c0c8c2cc04dd5000c0090064c00400a6eb0c2d804c2cc04dd5000c8cdc41bad306230b4013754002900020108a9985880a4819e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001642c0050ae0142c00515330b1014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018acc004c2440403226644b3001980098301859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc004cc896600266e1cc058008c0580122b300130110018cc00400a003223259800984a80985b809baa001899192cc004c1c4c2e404dd5000c4c96600266e1cdd6985f008009bad306930bb01375400713375e617c02617e0200260466176026ea800e29410b801185d009baa0018a5042dc0460cc6172026ea8cc048010004c2ec04c2e004dd5000c2a8050b50119806803000a04085300a1640285280a16402330213758616c026166026ea824804dd718301859809baa301f30b30137540b26eb0c184c2cc04dd5000c5660033001375860c06166026ea8248060053758616c026166026ea80066eb0c0c0c2cc04dd502ca0068984800cc0041661240398008014dd6185b009859809baa00192cc004c060dd69831185a009baa00189848809bad306130b401375400314a08588090084dd698301859809baa0019bad303230b3013754003002401915330b1014901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001642c0050ae0142c00515330b1014901896578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018992cc004c1a4036330013758616a026164026ea80aa44444b30013370e603000a60300091598009809801c4cdc4800cc0040160074800244464b300130980130ba0137540031332259800984e80985e009baa0018992cc004006330010018acc004cdd7981e985f009baa00330c10130be01375400f15980099baf306c30be013754002618202617c026ea800e264b3001309f0130be013754003132325980099b87375a6188020046eb4c1bcc30404dd5003456600266e1cdd69862008009bad306e30c101375400d15980099baf30c40130c501001302930c101375400d1337000113001375660de6182026ea8c1bcc30404dd50054dd71862008064dd7186200986280806203c8a9985f80a493665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001642f80515330bf0149126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001642f80515330bf014912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001642f804618802002617e026ea80062a6617a02921184578706563746564204f4465706f73697420616374696f6e001642f00460d6617c026ea80061660285d80a1640285d80a162028142162030b10185880c2c4050c301186000985e809baa00185580a1740230be0130bb01375400260d06176026ea8c1a4c2ec04dd500242b4050b80119808003801205285400a1680285380a16802985a809859009baa094014889660033001303430b50137540b702e9819185a809baa094019bab302130b501375412802806a26644b300159800980d8014528c660026128020034a14a285a0090b40144c966002612a02616e026ea80063300198009bac30bb0130b801375412e03375c606e6170026ea8c090c2e004dd502f4dd71833185c009baa302430b80137540bd375a6176026170026ea80050094dd6985d80985c009baa30bb01980084b80cdd7185d80985c009baa302430b80137540bd375a60ca6170026ea80126eb4c0dcc2e004dd500220189b810029812985c009baa00448888c8c8cc8966002613a02617e026ea8016264b30013370e66e04dd6986200800802802456600266e1cdd698620098628080080145660026020017159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c01054455534472004bd7052000403915980099b8900398009bac306e30c1013754140034800244b30013375e618c026186026ea8008c31804c31c04c31c04c31c04c31c04c31c04c31c04c31c04c31c04c30c04dd5034c4cdc0000cc004dd598389861809baa0029bae307130c3013754605e6186026ea81a691010455534472004081100143000481c22b3001323371266e0003403260026eb0c0fcc30804dd5034520009119192cc004c0a8006266e0000ccdc199b82001375a60e8618c026ea8010dd698399863009baa0048801a1860298008024dd7186400800cdd7186400986480800a0443758618e026188026ea800902b1bab30c40130c50130c501980085000cdd71862009860809baa302d30c10137540cf375a60dc6182026ea80366eb4c100c30404dd5006a02a899b879800833c28006600e019375a60dc6182026ea80366eb4c100c30404dd5006c03d014005c54cc2fc052418d6578706563740a20202020202076616c69646174655f726573657276655f64656c74615f666f725f6465706f736974280a202020202020202076616c75655f64656c74612c0a202020202020202073657474696e67732e726573657276655f6173736574732c0a202020202020202072657175697265645f757364725f6261636b696e672c0a20202020202029001642f80515330bf014912b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001642f80515330bf014919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001642f805159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c1054455534472004bd704c1c800d00e44cdc3cc00419e14003300700c9bad306e30c101375401b375a60806182026ea803601e80a002e2a6617e02921b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001642f80485f00a2a6617e029213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001642f80515330bf014913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001642f8053001375860da6180026ea827c066eb8c0fcc30004dd518161860009baa0669bae306e30c001375460586180026ea819a6eb4c30c04c30004dd5002a02485500a17a023004001375a61820261840200cb30013021004899b833370400e0020091480010ba011bad30bf010044284050b501180f985b809baa0038a9985a80a4812e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001642d00530010039bac30b80130b501375400323005375a60c8616c026ea800500a4c00400e9000488cdc00009bad306430b701375400480f22a6616602921886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6465706f7369745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c8048acc004c1a003626644b30019800980e185a009baa05a816cc0c4c2d004dd504980cdd59810185a009baa093014031159800998149bac30b70130b4013754126026eb8c2dc04c2d004dd51810185a009baa05a899912cc004c24c04c2d404dd5000c4c8cc896600260100051598009804000c566002b30013096010018a518980e801216c028992cc004c0780062b30019800998141bac30bd0130ba013754132026eb8c19cc2e804dd51813185d009baa0609bac306830ba01375400f330bc01306830ba013754604c6174026ea8180cc2f005301054455534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e8c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b300198009bac306730ba013754132033758617a026174026ea801e661780260446174026ea8c098c2e804dd50301985e00a60106457355534472004bd702444b30013370e6038004603c01719800805c00a4464b3001309d0130bf0137540031325980099baf30c40130c10137540026188026182026ea8c31004c30404dd5002456600266ebcc1b8c30404dd500098379860809baa30c40130c101375400913370f3001375660de6182026ea80066eb8c310040166eb8c1bc01501e2cc004c2780402626eb4c1bcc30404dd500244cdc199b82375a60de6182026ea80100240290be014528217c028a5042f8046186026180026ea800616e0285e808cc05401400502842a4050ba012264b300130980130ba0137540031325980099b87375a617e0200266e000140222b30013370e6eb4c2fc04c30004004cdc0002001c56600266e1e60026eacc090c2f004dd504d80cdd71812185e009baa302830bc0137540c54881057355534472004064007130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd503152201045553447200406515330ba01491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001642e40515330ba014914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001642e40515330ba0149140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b801491dd6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001642dc0515330b801491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001642dc0515330b801491186578706563742073757364725f746f5f6d696e74203e2030001642dc04b30013096010018802c4cdc199b8200500100242d80515330b7014913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001642d80515330b701491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001642d80515330b7014911d657870656374207661756c745f757364725f6265666f7265203e3d2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491866578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa09401899912cc006600260426168026ea816a05b303130b401375412603375660406168026ea824c0500c4566002660526eb0c2dc04c2d004dd5049809bae30b70130b401375460406168026ea816a26644b300130930130b5013754003132332259800980e8014566002603a00313259800980f000c5660033001330283758617a026174026ea826404dd71833985d009baa302630ba0137540c1375860d06174026ea801e661780260446174026ea8c098c2e804dd50301985e00a6106457355534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e4c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b30013370f3001375660446174026ea8264066eb8c088c2e804dd51813185d009baa060a44105735553447200405c60d600d13259800984c00985d009baa0018992cc004cdc39bad30bf010013370200a00715980099b87375a617e0261800200266e040100222b300130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd5031522010455534472004065198009bac306930bc013754136033758617e026178026ea80266617c0260d46178026ea8c0a0c2f004dd50311985f00a61054455534472004bd702444b30013370e603c004604001b19800806c00a4464b3001309f0130c10137540031325980099baf30c60130c3013754002618c026186026ea8c31804c30c04dd5002456600266ebcc1c0c30c04dd500098389861809baa30c60130c301375400913370f3001375660e26186026ea80066eb8c318040166eb8c1c401502019b83337046eb4c1c4c30c04dd5002006005c5282180028a50430004618a026184026ea80061720285f808cc05c01400502a42ac050bc0122a66174029211765787065637420757364725f6d696e746564203d3d2030001642e40515330ba01491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001642e40515330ba014913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b8014912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001642dc0515330b801491a86578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202029001642dc0515330b8014911a65787065637420757364725f746f5f72656c65617365203e2030001642dc053001007a4001223370000266e0ccdc11bad306930bb01375400400800681122a6616e02921236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001642d80515330b7014911c657870656374207661756c745f757364725f6265666f7265203e2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e756e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa0940142bc04857808dc4a40008570090ae0111112cc004cdc39809801180a801c6600200700291192cc004c25004c2d804dd5000c66002617402616e026ea80066eb0c07cc2dc04dd5001ccc068010dd6180f985b809baa003488966002612e026172026ea80062b30013375e617a026174026ea800cc2f404c2e804dd5185e80985d009baa0068acc004cdd79833985d009baa003306830ba013754617a026174026ea801a266e1e60026eacc1a0c2e804dd5001cdd7185e808014dd7185e80985f00801202e3301f301c375a60d06174026ea8018c2f404c2e804dd5000c528216e028a5042dc0515330b80149015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642dc0485700a168023300c006001407d0a00142c404856808444464b3001308e0130b00137540031325980099baf30b50130b2013754616a026164026ea8c180c2c804dd500098171985a009ba90054bd704566002611c033001375660c06164026ea8c180c2c804dd5000c016910108747265617375727900403d132598009849809859009baa0018992cc004006330010018992cc004c24804c2d004dd5000c4c96600266ebcc2e404c2d804dd5185c80985b009baa0013032330b801375201297ae08acc004c2480660026eacc190c2d804dd5000c026910108747265617375727900404d13259800984b80985b009baa0018992cc0040063300100189985d008029985d008009985d009ba6329800800cdd59833985c809baa00499198008009bab306830ba01375460d06174026ea8024896600200314bd6f7b63044c8cc2f804cdd8185d808009ba632330010013756617a0200444b30010018a5eb7bdb182264661820266ec0c2f804004dd418381bad30bf010013300300330c30100230c10100142fc0466006006618002004617c0200285e0090011112cc00400a2003132332298008034c30804016646600200200a44b30010018998610099bb037520086e9800d2f5bded8c113298009bae30c0010019bab30c1010019862808012444b3001337200100071330c601337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528218c02880144cc31c04cdd81ba9009374c002004861008ca6002003008801a002222598008014400626466453001006986700802cc8cc00400401489660020031330ce01337606ea4010dd4001a5eb7bdb1822653001375c619802003375a619a0200330d10100248896600266e4002000e2661a40266ec0dd48041ba80070058acc004cdc7804001c4c966002615c0200310028998698099bb037520126ea00040090ce0119b800070028998690099bb037520066ea0008cc0180180050cd01219a02186780800a19a0240186eb8c31c04004dd69864008009865008012190028998630099bb037520066e98008cc0180180050c101218202186180800a1820240186eb8c2ec04004dd5985e00800985f008012178024bd7042c40501f42c406162030b10185880a17a0230ba0130b701375400315330b50149012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642d00460c6616c026ea80062a6616802920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642cc0515330b40149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642cc04617002616a026ea80062a661660292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001642c804660146eb0c184c2d004dd5004002c2b00501b42b006158030ac0185600a1720230b60130b301375400315330b10149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642c00460be6164026ea8c180c2c804dd5000c54cc2c0052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642bc0515330b0014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642bc046168026162026ea80062a6615e0292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001642b8046600c6eb0c2cc04c2c004dd500200108a9984300a4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001642140464660020026eb0c0d4c22004dd5035112cc004006297ae0899845809ba732323308d01308e010023308d013038308b0137540026611a026ea4cc894cc22c04cdcb2481165369675374727563747572652e636f6e746578743a200037326606a612002611a026ea8005220100153308b013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606a6076611a026ea8005220100153308b013372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606a6074611a026ea8005220100153308b013372c9201165369675374727563747572652e7061796c6f61643a200037326606a6018611a026ea800522010013253308c013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606c6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002423004846008dc68009bae309001308d01375400266e28c008dd7181d9846809baa0013371460046eb8c0e8c23404dd500098011bae300c308d013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002422804845008dc6800981b9984680a610b4a5369676e617475726531003308d01308e01308b013754611c026116026ea8004cc234053010140003308d01375200a97ae04bd701846809847008009bac308c0100133002002308d010014228046e50dd980320cc82ba264b30010018acc004c178c20004dd5000c4c9660020030688992cc0040060d3069899912cc0040060d713259800800c1b20d906c899912cc0040060dd13259800800c1be0df06f8992cc004c2380400e2b300100783844c966002003071838c1c60e31332259800800c1ce264b300100183a41d20e90748992cc004c24c0400e260206126020230754240046eb800509301184800800a11c02375c002611e02010848008c2340401d08b0141c108b011bad001837a11c02308b010014224046eb4004c2280400a0d8845808c22004005086011bac001308701002834c1a508801184280800a10602308101375400306741f9067833c19e0ce843008c20c0400908101419107f1bae00142080460fe00283e8dd7000983f00120fe307c00141e86eb8004c1ec00907c183c800a0ee375c00260f000483c8c1d80050741bae001307500241d860e60028388c1bcdd5003415506c415501441550144155014415501441550144155014415507041560ab05582aa0e8307100141bc6eb0004c1c000a0a505241c460dc0028360c1b800a0a1050828414106f1836000a0d4306c002827413a09d04e41b460d40028340c1a800a09904c826413106b1834000a0cc3068002825412a09504a41a460cc0028320c19800a09104882441210671832000a0c43064002823411a08d046419460c40028300c18800a08904482241110631830000a0bc305c37540050424164444653001001802400d001111192cc004c0fc006264b300100180344c966002003007803c01e00f132598009834801c0160108330dd7000a0d23066001419060c46ea800e2b3001303e0018992cc00400600d13259800800c01e00f132598009834801c4cc0e000489660020050078992cc0040063300100a800c4c008c1b000d00a402e01700b805a0da306a00241a100841986eb000600f00741a460cc0028320c188dd5001c566002608400313259800800c01a264b3001001803c01e264b3001306900389981c000912cc00400a00f13259800800c66002015001898011836001a014805c02e01700b41b460d400483420108330dd6000c01e00e8348c19800506418311baa0038acc004c064006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260d800713303b0012259800801402a264b30010018cc00403600313002306f003403500e807403a01c8380c1b400906b402d0691bac001805402906c1834800a0ce375a00260d000500741a460cc0028320c188dd5001c566002603000313259800800c01a264b3001001803c01e00f132598009834801c0160108330dd6800c01d0691833000a0c830623754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260d200700580420cc375a00300741a460cc0028320c188dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260d200700580420cc375c0028348c19800506418311baa003802a0be417c82f905f20be417c82f8c180dd50014106083041820a0c03008305a3754646644a660b666e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a200037326600a6ea416522010013259800981d982e9baa00189929982e99b9649113666f756e642070726f7879207574786f3a3a200037326600e002910100132598009820182f9baa0018992cc0040062b3001303e3060375400313259800800c126264b3001001825412a09504a899912cc0040060991325980098350014401a09a8338c1a00050661bae001306700241a060ca0028318c184dd5000c12105e412209104882420cc306330603754003153305e49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164174601860be6ea8c034c17cdd50009830982f1baa0018a9982e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016416c660080024646600200260086eacc034c17cdd51806982f9baa0022259800800c528456600266e3cdd7183180082e4528c4cc008008c19000505d20c230010013758601260b66ea80e8896600200314bd7044cc178c16cc17c004cc008008c18000505d1800800911919800800801912cc0040062980103d87a80008992cc004c01000626012660be00297ae0899801801983080120b4305f001417444464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20c05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c82d105a1bac305d002375a60b60026466ec0dd4182d8009ba7305c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60c0003337149101023a200098008054c18400600a805100a183180144ca6002015306000199b8a489023a200098008054c184006600e66008008004805100a183180120c23063001418066e29220102207d0000341746eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c20ba3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e417c66e2ccdc0000acc004cdc4000a40291481822903720be004401866e0c00520203370c002901019b8e00400241706eb800d0601b8a4881022c20002232330010010032259800981b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002300b00189980299b8400148050cdc599b803370a002900a240c000682b90571803803a264b300100181a40d2264b300100181ac4c96600200303681b40da06d1332259800800c0e2264b30010018acc004c16000a264b300130323054375400513259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc0040060810408204102264b300130600038acc004c0e4c16cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d132598009833001c4c966002608000313259800800c126264b3001001825412a09504a8992cc004c1a800e02504b419c6eb800506a1833800a0ca30633754017159800981f800c56600260c66ea802e01f048419104841808300c184dd5005411d0631bae001419860c60028308dd7000983100120c63060001417860b86ea801a08282ca08282e8dd7000a0c0305d001416c60ba00503e81f40fa07c82f0c16c005059182d80140f207903c81e20b83059001415c60aa6ea800a07482904c01cc16002207282aa07303981cc0e5059182b000a0a8375c00260aa00482b0c14c0050511bac00181a40d10541828801209e40b902140b902144c96600200302f817c0be2646006609e0086eb400605e8278c13000904a44c96600200302d816c0b62646006609a0086eb400605a8268c12800904840a904640aa05502a815209430470014114608e00502881440a20508240c1140050431bad0013044002812a08a304200141006eb4004c10400a0448210c0fc00503d1bac001303e00280fc07d03f181e000a0743758002607600501c80e2078303900140dc606a6ea801a034819203481b0dd6000c06603281c8c0d8005034181b001405e02f01780ba06e303400140c8606800501580ac05602a81a8c0c800503018171baa010809a0561112cc004c028c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a801466002007132598009807800c56600260646ea800a00f00640cd1598009807000c4c9660020030078992cc0040060110088044022264b3001303900380540250361bae00140e4606c00281a0c0c8dd50014566002602400313259800800c01e264b30013038002804c021035181b000a0683032375400500640bc817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a8444b30013009302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002601c00313259800800c01e264b30010018acc004c0dc00a264b300130110018992cc00400601513259800800c566002607400519800800c032016808a01681ba01700b805c02d03b181c000a06c303437540051598009808000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0340062b3001303137540050078032064803205c40b8605e6ea800600a805a00a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c0050290dc3a40006e1d2002804402201100840a0604a60446ea800e2c80f8604200260386ea808a293454cc06924011856616c696461746f722072657475726e65642066616c7365001365640641" : "593595010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a4005223233001001003223300300130020024888a60024464b30013006001899192cc004c05c00a0091640506eb8c054004c044dd5001c566002600a0031323259800980b80140122c80a0dd7180a80098089baa0038b201e403c601e6ea800a44b30013005300f3754005132323259800980b80144c8c9660026014003159800980a9baa002803459016456600260120031323259800980d80140222c80c0dd6980c800980a9baa0028acc004c0340062b3001301537540050068b202c8b2026404c8098c04cdd5000980b001c59014192cc004c04c0062b30013371290021809000c5a2600e6024002808a2c80a0dd5180a800980a80098081baa0028b201c912cc004c014c03cdd500144c8c8cc896600260300070058b202a375a602a0026eb8c054008c054004c040dd500145900e488c966002600c0031323259800980b80140122c80a0dd6980a80098089baa0038acc004c0140062b3001301137540070028b20248b201e403c601e6ea8009222232323322598009805980a9baa010899191919912cc004c07c00e264b30013011301b3754003132323232323298009812800cdd61812802cdd698128024dd69812801cc0940092222259800981580344cc068dd61815005912cc00400a26603800c44b300100289980d00289980d0048cc004dc3a400d370e90044dc3a4014911192cc004c090c0b8dd500ac4c8c8c966002606c005132332259800981500144c96600260740031330293758607200244b300100280244cc08cc0ec0084c004c0f0009039459037181a9baa0038acc004c0a400a264b3001303a0018998149bac303900122598008014012266046607600426002607800481ca2c81b8c0d4dd5001c566002605a00513259800981d000c4cc0a4dd6181c800912cc00400a009133023303b00213001303c00240e51640dc606a6ea800e2b3001300a0028992cc004c0e80062660526eb0c0e40048966002005004899811981d80109800981e00120728b206e30353754007159800980480144c96600260740031330293758607200244b300100280244cc090c0ec0084c004c0f0009039459037181a9baa0038acc004c02000a264b3001303a0018998149bac303900122598008014012266048607600426002607800481ca2c81b8c0d4dd5001c59033206640cc8199033206630323754002264b300130290018992cc004c0e400626604a607000200f1640d860686ea800e2b300130280018992cc004c0e4006264b3001302b30353754003132323259800981e80144cc0a8c0f000c4cc0a800402e2c81d0c0ec004c0ec004c0d8dd5000c59034181c000c59036181a1baa0038b206440c860646ea8008c0d400e2c8198c0d0004c0d0004c0bcdd500ac5902d09981080a912cc00400a330012303430350019181a181a981a800cdd2a400122232598009814800c4c8c96600260740050048b206e375c607000260686ea800e2b300130280018992cc004c0e40062660506eb0c0e000489660020050058cc00401e607400513001303b002401c81c22c81b0c0d0dd5001c566002605800313259800981c800c4cc0a0dd6181c000912cc00400a00b19800803cc0e800a2600260760048039038459036181a1baa0038acc004c0240062646644b3001303b0018998151bac303a0012259800801401e33001009981e00144c004c0f400900920748b2070375a6070002607200260686ea800e2b30013008001899192cc004c0e800a0091640dc6eb4c0e0004c0d0dd5001c566002600e0031323259800981d00140122c81b8dd6981c000981a1baa0038acc004cdc3a40180031323259800981d00140122c81b8dd7181c000981a1baa0038b206440c88191032206440c88190c0c8dd500124444646644b3001302c30363754005132323232323232323298009821800cc10c022608600f30430069821802cc10c012608600737586086004911111112cc004c130026266024609602226602400e26602400c26602400a2660240082660240062b3001303d304737540051323232323298009bae30500019bae30500059bae30500049bae30500039bae30500024888896600260ac00d13304500b225980080144cc10805066002604860a86ea813a460b060b260b260b20032232330010010032259800800c5284566002600660b600314a3133002002305c001415882ca460b060b260b260b260b260b260b260b200337009000cdc024005374a9001244444446464b300198009111919912cc004c16000a2b300130583062375400314c0103d87a80008a6103d87980004185159800982d801456600260b660c46ea80062980103d87a80008a6103d87b800041851332259800982d000c530103d87b80008acc004c164006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041908320dd6983418329baa0038a6103d8798000418c8318dd6983318319baa00330623754002830906118301baa00130020033001003919191919912cc004c16000a29422b3001305b0028cc004cdd7983318319baa0014c103d87b8000a50a514185132332259800982d8014528c56600260b40051332259800982e18339baa30383068375400d1337100040031337120040028330dd6983498331baa00359800982d18329baa30363066375400f100189806800a0c88a5041908320c18cdd50009bad30673064375400860cc60c66ea800506120c23060375400260c860ca00660c660c06ea8004c188004c178dd5000cc0b4c174dd5004a444b30013055305f37540031323300b375860c860c26ea81608cdd7983298311baa00100230633060375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c194c188dd50014c194c188dd5000c8c8c96600260b260c86ea8c1a0c1a400a200313259800982d000c4c030cc1a0dd418069bad30693066375400497ae08acc004c16c0062005100241908320c190dd5000a0c63067001306337540028029300103d87b8000a50a5141811980099baf9800981918311baa002981918311baa001919192cc004c164c190dd51834183480144006264b3001305a00189806198341ba8300e375a60d260cc6ea80092f5c1159800982d800c400a2004832106418321baa001418c60ce00260c66ea8005005260103d8798000a50a51418114a0830106020c0306330603754002601260c06ea815d05e2330013060305d375401322232330010010042259800800c401226600660ca0026600400460cc002831a4530013300900223375e60c660c06ea8c18cc180dd5181818301baa001300633062375200497ae0a50a51417523052305d375460c2646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130573062375460cc0074a14a2830a2660cb30014a14c103d87a8000a60103d87980004184660ca6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1a000400e294626600400460d2002831906644cc196600294298103d87a8000a60103d87980004184660ca6e9c0092f5c11330659800a51a60103d87a8000a60103d87980004184660ca6e9ccc194dd400080125eb8106120c2375860c860ca0026eb4c190008cc008008c190005061489660020031480022600c6600400460c6002830244b30010018a40011300633002002306300141812222329800800c01600900340044444b30010038800c66002009306900398348016600260d0007375a60d00050014014802106648896600200514c103d87a80008acc004c1540062605c660c460c600497ae08cc00400e60c80053008001400c82f1061488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006418d1330050053069004418c6eb8c188004dd598318009832800a0c614bd6f7b6304896600260a860bc6ea800a26464b30013065002801c590621bad3063001305f37540051641752232330010010032259800800c52f5c1133225980099baf30663063375460cc60c66ea8c0ccc18cdd50011804998329ba90054bd7044cc194008cc0100100062660080080028308c190004c19400506248c184c188c188c188c188c188006460c260c460c460c460c460c460c4003222329800800c012006800888966002005159800800c528c52820c88acc00400629422b3001330043066002375a60cc00319800801cc19c00a60ce002801a294106120c841912259800982a182f1baa0028991919194c004c19800660cc007306600248896600260d4009133030306900713305300213259800982e000c4c8cc896600260dc003132323322598009839001c0422c8378dd718378009bae306f002306f001375860da0031641ac6eb4c1ac004c1b0004c19cdd5001456600260b60031323322598009837000c4c8c8cc896600260e40070108b20de375c60de0026eb8c1bc008c1bc004dd61836800c5906b1bad306b001306c00130673754005159800982f800c4c8ca60026eb4c1b000660da003375a60d80049112cc004c1c000a264646644b300130740038094590711bae3071001375c60e200460e20026eb0c1bc00a2c836860d800260ce6ea800a2b3001303c00189919912cc004c1b8006264646644b3001307200380845906f1bae306f001375c60de00460de0026eb0c1b40062c8358dd69835800983600098339baa0028acc004c0ec00626464b3001306d002805c5906a1bad306b00130673754005159800981d000c4c8c96600260da00500b8b20d4375a60d600260ce6ea800a2c832906520ca4194832906518329baa0018b20ce183300098328009832000982f9baa0028b20ba911194c0040060090034004444b30010028800c660020073067002998021833001000a0064191230613062306230623062001912cc004c150c178dd500144c8c96600260ca0050038b20c4375a60c600260be6ea800a2c82ea44b30010018a400113006330020023063001418137029000488cdc199b82002375a605c60be6ea8004dd69817982f9baa0019b88480024466056004466ebcc18cc180dd50009ba700248888888888888888888888a60024444646600200200a4464b30013070001899192cc004c1c8c1f0dd5000c4c8ca60026eb8c2080400a6eb8c20804c20c040066eb8c2080400572a308201001375861000260fa6ea8006294107b1919800800804112cc0040062980103d87a80008992cc004cdc79bc8375c6104020020091304d3308101374e00297ae089980180198418080120fa375861020200283f8dd7183f183d9baa0028acc004c1bc006264660020026eb0c1fcc1f0dd5001912cc00400629462b300133005005308001001899801001184080800c52820f641f91598009839800c4cc094dd6183f183d9baa0022330040040018acc004c14000626466e24dd6983f800cc004dd6183f984000800d2000912cc004cc01801800a2604a003100141f080f0c1ecdd50014566002609e0031323322598009839183e9baa0028acc004c1c8c1f4dd5184080984100801c4cdc49bad308101307e37540040031337106eb4c20404c1f8dd5001000a0f88a5041f060fe0026eb4c1fcc1f0dd5001983d9baa304b307b375400b1598009827000c4c8cc896600260e460fa6ea800a2b30013072307d37546102026104020071337120026eb4c20404c1f8dd500144cdc40009bad308101307e375400483e2294107c183f8009bad307f307c375400660f66ea8c1f8c1ecdd5002c4c8c8cc004004018896600200314a115980099baf003307d3081010018a51899801001184100800a0f841fc6042660fa60fc60f66ea80092f5c083c907920f241e483c9079183c9baa0019180a800cc04c04e6024025301001091119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c83da26600a00a61020200883d8dd7183d0009bad307b001307d00141ec660260080062900048c05400660e66ea805e600a00b2232598009837983b1baa001899198068008acc004cdd79811983c1baa003307b3078375400915980099baf30483078375400260f660f06ea800e20031641d91641d860f460ee6ea80062c83a8c114c1d8dd51823183b1baa00292cc004cdc4000a4001130050018800a0e6488888888888c8ca60024444446644646644b30013370e66e04dd69847809846009baa308f01003375a611e026118026ea8c23c04010006264b30013370f30013758606c611a026ea80329000488cc89660033001308601001a50a51423c051325980099b893302100100598008044dd7184a80801cdd7184a80984b00801a032899b800040018b2120023370400200b1003423c046eb0c24804c23c04dd5001194c00402a90004896600266ebcc094c24804dd50011ba7003899b80001375a60c46124026ea800a20028480090241bac309201308f0137540048108cdc08010054400a2c845809660026034013148006290012114028b2114023756611a02611c02002b3001307f300e0038a4001159800984700801c4c96600266e3cdd7184500800a4504555344720089bad308b010018b211202308d010038b211602422004611a02002660446eacc068c21c04dd50029bae30573087013754603c610e026ea801a600200b375c611402610e026ea8c078c21c04dd5003400e004803a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444464b3001307b30850137540031325980099baf308a013087013754611402610e026ea8004c0b4cc22404dd4802a5eb822b3001307b98009bab30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab30593089013754007006a441045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5000c5908501459085011844809843009baa0018b210802330060040019111192cc004c1ecc21404dd5000c4c96600266ebcc22804c21c04dd51845009843809baa30573087013754002605a66112026ea40152f5c1159800983dcc004dd5982b9843809baa30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab3059308901375460b26112026ea800e00d4881045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5182b9843809baa0018b210a028b210a023089013086013754003164210046600c008002911112cc004c1ec02e26644b300198009845809844009baa0538164c0c4c22004dd503fcdd5980f9844009baa07f4051159800998149bac308b0130880137540fe6eb8c0ccc22004dd5180f9844009baa0538acc0066002660426eb0c22c04c22004dd503f9bae30573088013754603e6110026ea814e6eb0c160c22004dd5000cdd618189844009baa05348896600266e1cc05000cc0500162b300130110028cc00400e0052232598009841809846809baa001899192cc004c21404c23c04dd5000c4c8ca60026603e0100033758604a6124026ea80126eb4c2540400922259800984500984a009baa0038acc004cdc499199119b8330403370066e08004dd69833984c009baa003002002375a60cc612c026ea8004dd69833184b009baa00830980130950137540073001375660ca612a026ea8c194c25404dd50054dd7184c008014dd7184c00984c8080120388acc004cdc38009bad3065309501375400f13375e6e9c010c0a0c25404dd5003c5282126028a50424c0516424c043758612802612a020026120026ea8006294108e01182f1847809baa33012004001309101308e013754003164230046601c00e002810a2c84480a2c844809159800cc004dd6182b9844009baa07f9bac308b0130880137540033308a0130583088013754603e6110026ea814ccc228053001054455534472004bd702444b30013370e602a004602800b19800802c00a4464b3001308301308d0137540031325980099baf309201308f013754002612402611e026ea8c24804c23c04dd5002456600266ebcc178c23c04dd5000982f9847809baa309201308f01375400913370f3001375660be611e026ea80066eb8c248040166eb8c17c01501618089bad305f308f01375400914a084680a294108d011848809847009baa0018b2118023300e005001408516422404899b879800829c1fe90004dd6982b9844009baa0019bad30333088013754003002401d30010029bac308b01308801375400323017375a60b26112026ea8005006459086014590860145908601459086011bac3089013086013754052611202610c026ea820006264b3001307b00c899912cc006600260b26112026ea815205b3032308901375410003375660406112026ea8200050154566002660546eb0c23004c22404dd5040009bae3034308901375460406112026ea81522b30019800998111bac308c013089013754100026eb8c160c22404dd518101844809baa0549bac305930890137540033308b013059308901375460406112026ea8150cc22c05301054455534472004bd702444b30013370e602a006602a00b159800980900146600200700291192cc004c21004c23804dd5000c4c8c966002610a026120026ea800626464b3001337120033001375660c66126026ea8c18cc24c04dd5003cdd7184b008044dd7184b00984b8080420348acc004cdc380098119bad3063309301375400913375e612c02612e02004604c6126026ea80122941091014528212202375a612a020026122026ea8006294108f01182f9848009baa33013004001309201308f013754003164234046601e00e00281122c84500a2c845009159800cc004dd6182c1844809baa080018014dd61846009844809baa0019bac303230890137540a8801a266e1e60020a908001a4001375a60b06112026ea80066eb4c0d0c22404dd5000c0090084c00400a6eb0c23004c22404dd5000c8cdc41bad305a308a0137540029000200e8b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c56600260fe0191332259800cc004c160c22404dd502a40b660646112026ea8200066eacc080c22404dd504000a02a8acc004cc0a8dd61846009844809baa08001375c60686112026ea8c080c22404dd502a45660026644b30013370e602800460280091598009808800c6600200500191192cc004c20c04c23404dd5000c4c8c96600260ca611e026ea8006264b30013370e6eb4c25004004dd698309848809baa003899baf3094013095010013024309101375400714a0847808c24004dd5000c528211c02305e308f01375466024008002612202611c026ea80062c846008cc0380180050214590890145908901198111bac308c013089013754100026eb8c160c22404dd518101844809baa054375860b26112026ea80062b300198009bac30583089013754100030029bac308c013089013754003375860646112026ea815100344c1fa60020a908001cc00400a6eb0c23004c22404dd5000c96600260306eb4c168c22804dd5000c4c1fcdd6982c9845009baa0018a50422004803a6eb4c160c22404dd5000cdd6981a1844809baa00180120108b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c4c96600260ba01b198009bac308b013088013754057222225980099b87301600530160048acc004c04c00e266e24006600200b003a400122232598009843009848009baa001899912cc004c22c04c24804dd5000c4c8cc0a400456600266ebcc0fcc25004dd5001984b80984a009baa0078acc004cdd79832184a009baa001309701309401375400713259800984680984a009baa001899192cc004cdc39bad309a01002375a60ce612e026ea801a2b30013370e6eb4c26804004dd69833184b809baa0068acc004cdd7984d00984d808009815184b809baa006899b8000898009bab3067309701375460ce612e026ea802a6eb8c268040326eb8c26804c26c0403101e459095014590950145909501184d00800984a809baa0018b212602306330940137540031642480516424804612c026126026ea80062c848808c25004c24404dd500098301848809baa3061309101375400916423c046602200e00481522c84580a2c84580a6116026110026ea82080522259800cc004c0d8c22c04dd502b40be60686116026ea8208066eacc088c22c04dd504100a02e899912cc00566002603600514a319800984100800d28528a11602422c05132598009841809846809baa0018cc00660026eb0c24404c23804dd504280cdd7181c9847009baa3025308e0137540b3375c60bc611c026ea8c094c23804dd502ccdd69848809847009baa0014025375a612202611c026ea8c24406600210a03375c612202611c026ea8c094c23804dd502ccdd6982e9847009baa0049bad3039308e01375400880726e0400a604c611c026ea8011222232323259800984500984a009baa0048992cc004cdc399b81375a61320200200800715980099b87375a6132026134020026eb4c26404c268040222b3001300f00a8acc00660026605e6eb0c26404c25804dd5046809bae30653096013754605a612c026ea818601d375860cc612c026ea8032661300260cc612c026ea8c0b4c25804dd50309984c00a61054455534472004bd7052000403515980099b8900298009bac3065309601375411a034800244b30013375e6136026130026ea8008c26c04c27004c27004c27004c27004c27004c27004c27004c27004c26004dd5031c4cdc0000cc004dd59834184c009baa0029bae30683098013754605e6130026ea818e9101045553447200407d100142580481c22b3001323371266e0003002e60026eb0c100c25c04dd5031520009119192cc004c0a4006266e0000ccdc199b82001375a60d66136026ea8010dd69835184d809baa0048801a1320298008024dd7184e80800cdd7184e80984f00800a04237586138026132026ea800902b1bab309901309a01309a01980084680cdd7184c80984b009baa302d30960137540c3375a60ca612c026ea80326eb4c104c25804dd5006202c899b879800830c23406600c017375a60ca612c026ea80326eb4c104c25804dd50064039015005459094014590940145909401456600330013302f3758613202612c026ea823404dd71832984b009baa302d30960137540c300e9bac30663096013754019330980130663096013754605a612c026ea8184cc26005301054455534472004bd704c09800900d44cdc3cc00418611a03300600b9bad30653096013754019375a6082612c026ea803201c80a802a2c84a0090940145909401459094014c004dd61832184a809baa08c019bae304030950137546058612a026ea81826eb8c194c25404dd51816184a809baa0609bad3098013095013754008808a2c849808c01000566002604200913370666e0801c00401229000212202375a612a020088b2118023020308d01375400716422c0530010039bac308e01308b01375400323005375a60b86118026ea80050094c00400e9000488cdc00009bad305c308d01375400480fa2c844809159800982e006c4cc89660033001301d308a0137540ab02e98199845009baa081019bab3021308a0137541020280b22b30013302b3758611a026114026ea820404dd71846809845009baa3021308a0137540ab13322598009840809845809baa00189919912cc004c02000a2b300130080018acc0056600261080200314a31301d00242340513259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260c06120026ea8c09cc24004dd502d9984900a601054455534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b8c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c848809159800cc004dd6182f9848009baa087019bac309301309001375400f330920130233090013754604e6120026ea816ccc2480530106457355534472004bd702444b30013370e603a004603801719800805c00a4464b3001308b0130950137540031325980099baf309a013097013754002613402612e026ea8c26804c25c04dd5002456600266ebcc198c25c04dd50009833984b809baa309a01309701375400913370f3001375660ce612e026ea80066eb8c268040166eb8c19c01501e2cc004c2300402626eb4c19cc25c04dd500244cdc199b82375a60ce612e026ea8010024029095014528212a028a50425404613202612c026ea80062c84a008cc058014005029459091012264b300130860130900137540031325980099b87375a612a0200266e000140222b30013370e6eb4c25404c25804004cdc0002001c56600266e1e60026eacc094c24804dd504480cdd718129849009baa302930920137540bb4881057355534472004064007130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed220104555344720040651642400516424005164240053001375860c06122026ea8220066eb8c0f0c24404dd518141848809baa05c9bae3061309101375460506122026ea81726eb4c25004c24404dd5000a01a8b211e023028309001375400f164238051642380516423804b30013084010018802c4cdc199b820050010024234051642340516423405164234046eb4c24004004dd6984800984880800cc004dd61847809846009baa083019bae3037308c01375460466118026ea815e6eb8c170c23004dd518119846009baa0579bad308f01308c013754002803a2c84500a60020053758611a026114026ea8006460326eb4c16cc22c04dd5000a00e301d308a01375400316422005164220046eb0c22c04c22004dd50159845809844009baa08201899912cc006600260446114026ea815605d3033308a01375410203375660426114026ea8204050164566002660566eb0c23404c22804dd5040809bae308d01308a01375460426114026ea815626644b3001308101308b013754003132332259800980e8014566002603a00313259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260466120026ea8c09cc24004dd502d9984900a60106457355534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b4c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c84880915980099b8798009bab3023309001375410e03375c60466120026ea8c09cc24004dd502dd22105735553447200405c604000d132598009843009848009baa0018992cc004cdc39bad3095010013370200a00715980099b87375a612a02612c0200266e040100222b300130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed22010455534472004065198009bac30613092013754112033758612a026124026ea8026661280260c46124026ea8c0a4c24804dd502e9984a00a61054455534472004bd702444b30013370e603e004603c01b19800806c00a4464b3001308d0130970137540031325980099baf309c0130990137540026138026132026ea8c27004c26404dd5002456600266ebcc1a0c26404dd50009834984c809baa309c01309901375400913370f3001375660d26132026ea80066eb8c270040166eb8c1a401502019b83337046eb4c1a4c26404dd5002006005c528212e028a50425c046136026130026ea80062c84b008cc06001400502b4590930122c84800a2c84800a2c84800a60026eb0c180c24404dd504400cdd7181e1848809baa302830910137540b9375c60c26122026ea8c0a0c24404dd502e4dd6984a009848809baa001403516423c0460506120026ea801e2c84700a2c84700a2c84700a600200f480024466e00004cdc199b82375a60c26122026ea800801000d02345908d0145908d011bad309001001375a61200261220200330013758611e026118026ea820c066eb8c0dcc23004dd518119846009baa0579bae305c308c01375460466118026ea815e6eb4c23c04c23004dd5000a00e8b21140298008014dd61846809845009baa0019180c9bad305b308b0137540028038c074c22804dd5000c5908801459088011bac308b0130880137540566116026110026ea82080508601210c0237129000210a024214044444b30013370e6028004602600719800801c00a4464b3001308201308c013754003198009848009846809baa0019bac3020308d0137540073301a00437586040611a026ea800d222598009842809847809baa0018acc004cdd79849809848009baa00330930130900137546126026120026ea801a2b30013375e60be6120026ea800cc180c24004dd51849809848009baa006899b8798009bab30603090013754007375c612602005375c61260261280200480b8cc07cc048dd698301848009baa006309301309001375400314a084700a294108e0145908e0122c845808cc034018005020459088012108021111192cc004c1e8c21004dd5000c4c96600266ebcc22404c21804dd51844809843009baa30563086013754002605866110026ea40152f5c1159800983d4c004dd5982b1843009baa30563086013754003005a4508747265617375727900403513259800983f9843009baa0018991980d0008992cc004c1f8c22004dd5000c4c96600266ebcc23404c22804dd51846809845009baa00130303308c01375201297ae08acc004c1fa60026eacc168c22804dd5000c026911087472656173757279004045132598009841809845009baa0018991980f00089984700802998470080099847009ba6329800800cdd5982e9846809baa00499198008009bab305e308e01375460bc611c026ea8024896600200314bd6f7b63044c8cc24804cdd81847808009ba63233001001375661220200444b30010018a5eb7bdb1822646612a0266ec0c24804004dd418119bad30930100133003003309701002309501001424c04660060066128020046124020028480090011112cc00400a2003132332298008034c25804016646600200200a44b300100189984b0099bb037520086e9800d2f5bded8c113298009bae3094010019bab309501001984c808012444b30013372001000713309a01337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528213402880144cc26c04cdd81ba9009374c00200484b808ca6002003008801a002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd4001a5eb7bdb1822653001375c614002003375a61420200330a50100248896600266e4002000e26614c0266ec0dd48041ba80070058acc004cdc7804001c4c96600261340200310028998538099bb037520126ea00040090a30119b800070028998530099bb037520066ea0008cc0180180050a201214402185180800a1420240186eb8c26c04004dd6984e00800984f0080121380289984d0099bb037520066e98008cc01801800509601212c02184b80800a12a0240186eb8c23c04004dd59848008009849008012120024bd701847009845809baa0018b2112023059308a01375400316422005164220046118026112026ea80062c843808cc024dd6182b9844009baa008005308a0130870137540031642140460aa610c026ea8c158c21804dd5000c5908401459084011844009842809baa0018b210602330053758610e026108026ea8010008896600266e2000520008a6103d87a8000899804801000a0fe22c82d8c8cc004004dd61816182e9baa0572259800800c52f5c1133060374e6464660c460c6004660c4605e60c06ea8004cc188dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241888310dc68009bae30653062375400266e28c008dd7181918311baa0013371460046eb8c0c4c188dd500098011bae300d30623754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241808300dc68009817198312610b4a5369676e617475726531003306230633060375460c660c06ea8004cc18930101400033062375200a97ae04bd70183118318009bac3061001330020023062001417c6e50dd9803a264b3001304a305437540031323232332259800982f001c4c8c8cc896600260c40071300b306200c8b20be375c60be0026eb8c17c008c17c004dd6182e802c5905b1bad305b001375a60b600460b600260b400260aa6ea80062c8298c15c0090554590530c140004c13c004c138004c134004c120dd50014590464590490c10c004c108004c104004c100004c0fc004c0f8004c0f4004c0f0004c0dcdd50014590351802981a9baa323232598009816981b9baa0018992cc004c0c4c0e0dd5000c4c966002605e60726ea8006264646644b300130420038802c5903f181f8009bae303f002303f001303a37540031640e0607860726ea80062c81b8c01cc0e0dd51804181c1baa303b303837540031640d8660066eb0c01cc0dcdd50171191980080098019bab300930393754601260726ea8008896600200314a115980099b8f375c607a00206f14a3133002002303e00140e081d8c004004896600200314bd7044cc0e4c0d8c0e8004cc008008c0ec0050381801001111919800800801912cc0040062980103d87a80008992cc004c0100062600e6607600297ae0899801801981e801206e303b00140e489919912cc004c0dc00626644b3001302a303437540051323232332259800981f001c4c966002606060746ea8006264646644b300130430038992cc004c0d400626464b300130460028074590431bae30440013040375400f159800981a000c56600260806ea801e0191641051640f881f0c0f8dd50034590401bae3040001375c6080004608000260766ea80062c81c8c0f40162c81d8dd7181d800981d801181d800981d000981a9baa0028b206630360011300430370058b2068375c6068002606a0026eb0c0cc0090312264600460600066eb4c0b800902c44c8c008c0b800cdd6981600120548b205018128009812000981180098110009810800980e1baa0018b2034301e0058b203837586038002603800460380026036002602c6ea80422c80a089660026016602a6ea800a26464646644b3001301f003899804180f00289980580100345901c180e0009bad301c002301c001301b0013016375400516405044b3001300b301537540051323232323298009bac301e0019bad301e0049bad301e003980f00124444b30013023005899806181100489980780089919912cc004c09800e01b16408c6eb8c08c004dd7181180298118024590200c078004c074004c070004c06c004c058dd5001459014112cc004c028c050dd500144c8c8c9660026038005133006301b003132598009807000c56600260326ea800a00b1640691598009806800c4c8c966002603e0050078b2038375c603a00260326ea800a2b30013011001899192cc004c07c00a00f164070603a00260326ea800a2c80b9017202e3017375400316406460340026034002602a6ea800a2c80988966002601260266ea800a2646464b3001301b002899804980d0018992cc004c034006264b3001301d001899192cc004c040006264b30013020001899807180f800804c5901d180d9baa0028acc004c03c00626464653001375a6042003375a6042007375a60420049112cc004c09401201d16408830210013020001301b375400516406480c8c064dd5000980e000c5901a180c1baa0028acc004c0300062b3001301837540050058b20328b202c4058602c6ea80062c80c0c064004c064004c050dd50014590121164020300900130043754013149a26cac80101", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class V0_4ProtocolProtocolElse { + constructor(proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "596880010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492b657870656374207661756c745f646174756d3a205661756c74446174756d203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888888888888888896600264653001302100198109811000cdc3a400930210024888966002600460426ea800e264b3001005899914c004888c966002600c00313259800800c00e264b300100180240120090048992cc004c0c000e00d00540b46eb80050301816800a056302937540091598009802800c4c9660020030038992cc0040060090048024012264b30013030003803401502d1bae00140c0605a0028158c0a4dd50024009026204c3027375400722259800980298139baa0038992cc00400600513259800800c4c9660020030048992cc004006264b3001302d0018acc004cdc4a400860580030068992cc004c0c8012264b3001300c0018acc004c0bcdd5003402601081822b3001300b0018992cc00400601313259800800c02a01500a8992cc004c0d800e01900b40cc6eb400601481b0c0cc00503118179baa0068acc004c03c0062b3001302f375400d0098042060804205840b08160c0b4dd5002c01d02f18049816000a054803205c3754003005802c01600a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b300130053027375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0c800e01100740bc6eb400600c8190c0bc00502d1bae001302e00240bc60580028150c0a0dd5001c0050254888c966002600c00313259800800c00e264b30010018024012009132598009818001c01a00a8168dd6800c0110301816800a056302937540091598009802800c56600260526ea801200700240a900240988130c09cdd5001a44446465300122259800980598169baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130390028cc00401a33001001804c02100e402100b402103640220110088042074303700140d46eb4004c0d800a00a81b8c0d0005032181a001400e007003801a06a303200140c0605c6ea800e002815a444b3001300b302d375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0fc00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c11000e02901341046eb80050441820800a07e375c00260800048208c0f800503c40390144039011403903c1bac001806c03503f181e000a074303c002805c02e01700b40f4607400281c0dd6800981c801402103a181b800a06a375a002606c00500540dc60680028190c0d000a007003801c00d0351819000a060302e375400700140ad223233001001003223300300130020024889660026016605a6ea8042264b300100180a44c96600200313259800800c05a264b30010018992cc00400603113259800800c06603313259800981c801c566002602460686ea801a264b300100180dc4c96600200301c80e44cc896600200301e8992cc00400603f01f899912cc00400604313259800800c08a045022899912cc00400604913259800800c09604b025899912cc00400604f13259800800c4c9660020030298992cc0040062b3001304900289980c007112cc00400a26603401a44b30010028cc00401e330010058cc004dc3a400d370e90044dc3a4014911192cc004c0a8c130dd500e44c9660020030338992cc004006264b300100181ac4c966002003159800982a80144cc8966002606000313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205a81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c0bc006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b503e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b1598009819800c4c9660020030398992cc00400607503a8992cc004c16800e26605200244b3001002803c4c96600200319800800c4c008c17400e07c816a07d03e81f40f905e182d80120b281da0ae375800303a81d20b43057001415460a66ea80162b3001300a0018992cc00400607313259800800c0ea07513259800982d001c4cc0a400489660020050078992cc0040063300100189801182e801c0f902d40fa07d03e81f20bc305b002416503b415c6eb000607503a416860ae00282a8c14cdd5002c566002601200313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205c81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c020006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b903e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b0384140828105020a0414082804c966002605e00313259800800c0e2264b30010018acc004c16000a3300100180440e502d40e505540e607303981ca0b23056001415060a46ea800a2b3001302e0018992cc00400607113259800800c56600260b0005159800981898299baa0018992cc00400607513259800800c4c96600200303c8992cc0040062b3001305c0028cc00400e3300100180640f503240f503240f505940f607b03d81ea0ba305a001416060b400503b81dc0ee07682d8c160005056182a1baa00181ca0a281ca0aa81cc0e6073039416460ac00282a0c148dd500140dd04f209e3050375400260a06ea800e06c829206d03681b40d90561829800a0a2305300281a40d2069034415060a20028278c134dd500e40c904a09980f80c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00641393702900048888c8cc004004014896600200310058992cc00400626600860b000400d133005305800233003003001415860b000282aa6e012001918291829800c8c148c14cc14c0066e95200048888888c8c8c8cc88c96600200313259800981c982d9baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b3001001829414a26644b300100182a44c96600200315980098398014660020251980080846600201d19800806466002015198008044566002609860dc6ea801a264b300100182b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a899912cc0040060b913259800800c1760bb05d82ec4cc896600200305f8992cc0040060c1060830418226644b300100183144c966002003063831c18e0c713259800984100801c4cc144048896600200519800809466002605c6100026ea818a4610802610a02610a02610a020032232330010010032259800800c52845660026006610e0200314a313300200230880100142040484280a4610802610a02610a02610a02610a02610a02610a02610a02003374a90014dc02400491111119192cc0066002444646644b3001306b0028acc004c1acc23404dd5000c5300103d87a80008a6103d8798000422c051598009837001456600260dc611a026ea80062980103d87a80008a6103d87b8000422c0513322598009836800c530103d87b80008acc004c1b0006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000423804847008dd69849809848009baa0038a6103d8798000423404846808dd69848809847009baa003308d01375400284580908b011845809baa00130020033001003919191919912cc004c1ac00a29422b3001306e0028cc004cdd79848809847009baa0014c103d87b8000a50a51422c0513233225980098370014528c56600260da005133225980098379849009baa3041309301375400d133710004003133712004002848008dd6984a009848809baa0035980098369848009baa303f309101375400f100189806000a11c028a50423804847008c23804dd50009bad309201308f013754008612202611c026ea800508b01211602308b013754002611e02612002006611c026116026ea8004c23404004c22404dd5000cc0d8c22004dd50042444b30013068308a0137540031323300a3758611e026118026ea81ac8cdd79848009846809baa001002308e01308b01375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c24004c23404dd50014c24004c23404dd5000c8c8c96600260d8611e026ea8c24c04c2500400a2003132598009836800c4c034cc24c04dd418061bad309401309101375400497ae08acc004c1b800620051002423804847008c23c04dd5000a11a02309201001308e0137540028029300103d87b8000a50a514228051980099baf9800981d9846809baa002981d9846809baa001919192cc004c1b0c23c04dd5184980984a0080144006264b3001306d0018980699849809ba83040375a6128026122026ea80092f5c11598009837000c400a200484700908e011847809baa001423404612402002611c026ea8005005260103d8798000a50a5142280514a084500908a01211402308e01308b01375400260106116026ea81a908801233001308b01308801375401122232330010010042259800800c40122660066120020026600400461220200284700a44b30010018a40011300533002002308e01001422c0522980099804001119baf308e01308b013754611c026116026ea8c0e4c22c04dd5000980399846809ba90024bd70528528a10e02918329844009baa308c0132330010010022259800800c52f5c303d87a80008101800044c8cc89660033001306a308d0137546122020074a14a284580a2661200330014a14c103d87a8000a60103d8798000422c0466120026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c24c0400400e29462660040046128020028468090910144cc24006600294298103d87a8000a60103d8798000422c0466120026e9c0092f5c1133090019800a51a60103d87a8000a60103d8798000422c0466120026e9ccc24004dd400080125eb8108b012116023758611e026120020026eb4c23c04008cc008008c23c0400508c01489660020031480022600a66004004611c0200284580a4444653001001802c012006800888896600200710018acc00400a2a6611c029211d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012612802007309401002cc004c24c0400e6eb4c24c0400a0028029004212202424405222598008014530103d87a80008acc004c1a00062606e6611a02611c0200497ae08cc00400e611e02005303a001400c84400908c01488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064234051330050053094010044234046eb8c23404004dd5984700800984800800a11c0214bd6f7b63048896600260d06114026ea800e264b300100180144c966002003003801c00e264b3001309201003802c01108f011bad001801a12402308f010014234046116026ea800e00284400a44646600200200644b30010018a5eb8226644b30013375e612202611c026ea8c24404c23804dd5181e1847009baa002300a3309001375200a97ae08998480080119802002000c4cc01001000508b01184780800984800800a11a029184600984680984680984680984680984680800c8c23004c23404c23404c23404c23404c23404c23404006444653001001802400d0011112cc00400a2b30010018a518a50423c05159800800c5284566002660086122020046eb4c24404006330010039849008014c248040050034528211602423c0484780a444b30013068308a01375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002612e0200519800803c6600200b132598009838800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd5002456600260e000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001309e010038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b300130a30100380b40550a0011bae001428c0461400200284f008dd7000984f80801214002309d01001426c05010426c046eb000601f00f42780461360200284c808dd6800984d00801403109b01184c00800a12c023094013754009159800983a000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c2840400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c2980400e033018428c046eb80050a601185180800a14202375c002614402004851808c2800400509e01404d09e011bac00180940490a101184f00800a13802375a002613a0200500f42780461360200284c808dd6800984d00801403109b01184c00800a12c0230940137540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd50024566002609400313259800800c02e264b3001001806403201913259800984d80801c03a01a84c008dd6800c03109b01184c00800a12c0230940137540091598009824800c4c96600200300b8992cc00400601900c80644c96600261360200700e806a13002375a00300c426c0461300200284b008c25004dd500240290910121220242440484880909101212202309201375400700941a500940e1009425004612a02002849808c2540400a00f007803c01d09601184980800a12202309301002802c01600b005425004612202002847808c2440400a007003801c00d09201184780800a11a02308b013754007001422005222329800800c01200680088896600200510018cc00400e61240200533004309101002001400c84780a4611802611a02611a02611a02611a020032225980098341845009baa0038992cc00400600513259800800c00e0070038992cc004c2480400e00b004423c046eb4006006849008c23c0400508d011845809baa003800a11002912cc0040062900044c014cc008008c2380400508b01488cdc199b82002375a606e6114026ea8004dd6981c1845009baa0019b88480024466062004466ebcc23804c22c04dd50009ba700292cc004cdc4000a40011303a0018800a10c0248888888888888888888888a6002602a02b2301400198090094c0400424446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803214a02899802802985600802214a02375c614a020026eb4c29804004c2a0040050a601198098020018a400123014001984f009baa0179802802c88c9660026104026142026ea8006264b30010018cc0040062b30013375e60446146026ea800cc29804c28c04dd5002456600266ebcc144c28c04dd50009853009851809baa0038800c260050a001425c050a00142580500d42580612c030960184b00a1500230a50130a201375400309001427c04609c6142026ea8c13cc28404dd50012444444445300122223233001001005223259800984600800c4c94cc2b804cdcb248121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660b06ea4005220100132598009847009858009baa001899194c004dd7185b00800cdd7185b00985b80800cdd7185b008012444a66168029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330b4013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660bc6ea400522010015330b4013372c9201187665726966795f65643235353139207061796c6f61643a20003732660bc6ea400922010015330b4013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660bc6ea400d2201001325330b5013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660bf3001001a60103d87a8000a60103d879800042d00491010010019800800c00a006b950c2d804004dd6185a009858809baa0018a998578099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660b26ea400922010014a0857008c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c616c020020091305f330b501374e00297ae0899801801985b808012160023758616a02002859808dd71859009857809baa0028acc004c22c04006264a6615c0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416c6c4f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b804910100100132330010010022259800800c528c5660026600c00c616a0200313300200230b6010018a5042bc04859808dd61859009857809baa0028acc004c23c04006264a6615c0266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416e794f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013302e0012330050050013758616402615e026ea800a2b3001306600189919912998580099b96490112436865636b696e672041744c656173743a20003732660b46ea00092201001325330b1013372c92011941744c656173742073617469736669656420636f756e743a20003732660b66ea00052201001325330b2013372c92011041744c6561737420726573756c743a20003732660b93001001a60103d87a8000a60103d879800042c4049101001001337120060033001001a400122598009980400400144c0bc00620028588090291bad30b3010013758616602616802002615e026ea800a2b300130650018992998570099b9649111436865636b696e67204265666f72653a20003732660b06ea00052201001325330af013372c92010f4265666f726520726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc49bad30b50130b20137540020071337106eb4c2d404c2c804dd5000801a15e028a5042bc046168020026160026ea8c178c2c004dd50031bad30b20130af0137540051598009832000c4c94cc2b804cdcb24910436865636b696e672041667465723a20003732660b06ea00052201001325330af013372c92010e416674657220726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc48019bad30b50130b20137540031337100066eb4c2d404c2c804dd5000a15e028a5042bc046168020026160026ea8c2cc04c2c004dd50031bad30b20130af0137540051325330ae013372c920111436865636b696e67205363726970743a20003732660b06ea40052201001325330af013372c92010f53637269707420726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232330010010072259800800c528456600266ebc00cc2c804c2d8040062946266004004616e020028580090b401181619859009ba90014bd701bae30b20130af0137540048560090ac0121580242b0048560090ac011856809baa0019112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a15002912cc004cdc4000a400114c103d87a8000899804001000a14e029112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a1500248888ca60024444446644646644b30013370e66e04dd6985d80985c009baa30bb01003375a6176026170026ea8c2ec04010006264b30013370f30013758606c6172026ea80329000488cc89660033001309a01001a50a5142e8051325980099b893302300100598008044dd7186080801cdd7186080986100801a036899b800040018a9985e00a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642ec0466e08004016200685d008dd6185f00985d809baa00232980080552000912cc004cdd79813185f009baa002374e0071337000026eb4c1b0c2f804dd5001440050bb01204a3758617c026176026ea800902219b8100200a8801454cc2dc052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001642d804b3001301c0098a40031480090b501454cc2d8052415a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e74001642d4046eacc2e404c2e8040056600261260260200071480022b300100385800c4c96600261760200915980099b8f375c616c0200291104555344720089bad30b7010018a9985a80a491d657870656374206e616d65203d3d20636f6e7374616e74732e75736472001642d0050b10142e00461720200685b8090b301185c80800998119bab301b30b301375400a6eb8c184c2cc04dd5180f9859809baa0069800802cdd7185b009859809baa301f30b301375400d003801200e9111192cc004c23c04c2c404dd5000c4c96600266ebcc2d804c2cc04dd5185b009859809baa001302f330b501375200a97ae08acc004c23c0660026eacc184c2cc04dd5000c01691010d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b5013754007006a4504555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c54cc2c8052412d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001642c40460c06166026ea80062a661620292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b10149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001642bc046600e008003222232598009847809858809baa0018992cc004cdd7985b009859809baa30b60130b301375460c26166026ea8004c0bccc2d404dd4802a5eb822b3001308f0198009bab306130b301375460c26166026ea800600b48810d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b501375460c6616a026ea800e00d48904555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c288050b10118301859809baa306130b301375400315330b1014901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b1014914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001642bc046600e0080029112cc004c2340402e26644b30019800985a809859009baa058815cc0bcc2c804dd504880cdd5980f1859009baa091014029159800998139bac30b50130b2013754122026eb8c0c4c2c804dd5180f1859009baa0588acc0066002660406eb0c2d404c2c804dd5048809bae305f30b2013754603c6164026ea81626eb0c180c2c804dd5000cdd618179859009baa05848896600266e1cc05800cc0580162b300130110028cc00400e005223259800984a80985b809baa001899192cc004c25c04c2e404dd5000c4c8ca60026603e010003375860486178026ea80126eb4c2fc0400922259800984e00985f009baa0038acc004cdc499199119b8330713370066e08004dd698379861009baa003002002375a60dc6180026ea8004dd698371860009baa00830c20130bf0137540073001375660da617e026ea8c1b4c2fc04dd50054dd71861008014dd718610098618080120388acc004cdc38009bad306d30bf01375400f13375e6e9c010c09cc2fc04dd5003c5282178028a5042f00515330bd014914365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001642f0043758617c02617e020026174026ea800629410b7011833185c809baa3301200400130bb0130b80137540030aa0142d4046601a00e002810214c0285900a14a02859009159800cc004dd6182f9859009baa091019bac30b50130b2013754003330b401306030b2013754603c6164026ea8160cc2d0053001054455534472004bd702444b30013370e6028004602c00b19800802c00a4464b300130950130b70137540031325980099baf30bc0130b90137540026178026172026ea8c2f004c2e404dd5002456600266ebcc198c2e404dd50009833985c809baa30bc0130b901375400913370f3001375660ce6172026ea80066eb8c2f0040166eb8c19c015016180d9bad306730b901375400914a085b00a29410b601185d80985c009baa00185780a16a023300d00500140810a10142c804899b87980082c42440690004dd6982f9859009baa0019bad303130b2013754003002401530010029bac30b50130b201375400323017375a60c26166026ea8005007454cc2c005241856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a2020202029001642bc0515330b0014918f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642bc050ad0142bc0515330b0014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642bc046eb0c2cc04c2c004dd50141859809858009baa092018992cc004c2340403226644b3001980098309859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc0066002660426eb0c2d804c2cc04dd5049009bae306030b3013754603e6166026ea81666eb0c184c2cc04dd5000ccc2d404c184c2cc04dd5180f9859809baa059330b5014c1054455534472004bd702444b30013370e602e006602e00b159800980900146600200700291192cc004c25804c2e004dd5000c4c8c966002612e026174026ea800626464b3001337120033001375660d6617a026ea8c1acc2f404dd5003cdd71860008044dd718600098608080420348acc004cdc380098371bad306b30bd01375400913375e618002618202004604a617a026ea801229410ba014528217402375a617e020026176026ea800629410b8011833985d009baa3301300400130bc0130b90137540030ab0142d8046601c00e002810a14e0285980a14c02859809159800cc004dd618301859809baa092018014dd6185b009859809baa0019bac303030b30137540b2801a266e1e60020b309201a4001375a60c06166026ea80066eb4c0c8c2cc04dd5000c0090064c00400a6eb0c2d804c2cc04dd5000c8cdc41bad306230b4013754002900020108a9985880a4819e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001642c0050ae0142c00515330b1014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018acc004c2440403226644b3001980098301859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc004cc896600266e1cc058008c0580122b300130110018cc00400a003223259800984a80985b809baa001899192cc004c1c4c2e404dd5000c4c96600266e1cdd6985f008009bad306930bb01375400713375e617c02617e0200260466176026ea800e29410b801185d009baa0018a5042dc0460cc6172026ea8cc048010004c2ec04c2e004dd5000c2a8050b50119806803000a04085300a1640285280a16402330213758616c026166026ea824804dd718301859809baa301f30b30137540b26eb0c184c2cc04dd5000c5660033001375860c06166026ea8248060053758616c026166026ea80066eb0c0c0c2cc04dd502ca0068984800cc0041661240398008014dd6185b009859809baa00192cc004c060dd69831185a009baa00189848809bad306130b401375400314a08588090084dd698301859809baa0019bad303230b3013754003002401915330b1014901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001642c0050ae0142c00515330b1014901896578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018992cc004c1a4036330013758616a026164026ea80aa44444b30013370e603000a60300091598009809801c4cdc4800cc0040160074800244464b300130980130ba0137540031332259800984e80985e009baa0018992cc004006330010018acc004cdd7981e985f009baa00330c10130be01375400f15980099baf306c30be013754002618202617c026ea800e264b3001309f0130be013754003132325980099b87375a6188020046eb4c1bcc30404dd5003456600266e1cdd69862008009bad306e30c101375400d15980099baf30c40130c501001302930c101375400d1337000113001375660de6182026ea8c1bcc30404dd50054dd71862008064dd7186200986280806203c8a9985f80a493665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001642f80515330bf0149126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001642f80515330bf014912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001642f804618802002617e026ea80062a6617a02921184578706563746564204f4465706f73697420616374696f6e001642f00460d6617c026ea80061660285d80a1640285d80a162028142162030b10185880c2c4050c301186000985e809baa00185580a1740230be0130bb01375400260d06176026ea8c1a4c2ec04dd500242b4050b80119808003801205285400a1680285380a16802985a809859009baa094014889660033001303430b50137540b702e9819185a809baa094019bab302130b501375412802806a26644b300159800980d8014528c660026128020034a14a285a0090b40144c966002612a02616e026ea80063300198009bac30bb0130b801375412e03375c606e6170026ea8c090c2e004dd502f4dd71833185c009baa302430b80137540bd375a6176026170026ea80050094dd6985d80985c009baa30bb01980084b80cdd7185d80985c009baa302430b80137540bd375a60ca6170026ea80126eb4c0dcc2e004dd500220189b810029812985c009baa00448888c8c8cc8966002613a02617e026ea8016264b30013370e66e04dd6986200800802802456600266e1cdd698620098628080080145660026020017159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c01054455534472004bd7052000403915980099b8900398009bac306e30c1013754140034800244b30013375e618c026186026ea8008c31804c31c04c31c04c31c04c31c04c31c04c31c04c31c04c31c04c30c04dd5034c4cdc0000cc004dd598389861809baa0029bae307130c3013754605e6186026ea81a691010455534472004081100143000481c22b3001323371266e0003403260026eb0c0fcc30804dd5034520009119192cc004c0a8006266e0000ccdc199b82001375a60e8618c026ea8010dd698399863009baa0048801a1860298008024dd7186400800cdd7186400986480800a0443758618e026188026ea800902b1bab30c40130c50130c501980085000cdd71862009860809baa302d30c10137540cf375a60dc6182026ea80366eb4c100c30404dd5006a02a899b879800833c28006600e019375a60dc6182026ea80366eb4c100c30404dd5006c03d014005c54cc2fc052418d6578706563740a20202020202076616c69646174655f726573657276655f64656c74615f666f725f6465706f736974280a202020202020202076616c75655f64656c74612c0a202020202020202073657474696e67732e726573657276655f6173736574732c0a202020202020202072657175697265645f757364725f6261636b696e672c0a20202020202029001642f80515330bf014912b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001642f80515330bf014919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001642f805159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c1054455534472004bd704c1c800d00e44cdc3cc00419e14003300700c9bad306e30c101375401b375a60806182026ea803601e80a002e2a6617e02921b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001642f80485f00a2a6617e029213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001642f80515330bf014913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001642f8053001375860da6180026ea827c066eb8c0fcc30004dd518161860009baa0669bae306e30c001375460586180026ea819a6eb4c30c04c30004dd5002a02485500a17a023004001375a61820261840200cb30013021004899b833370400e0020091480010ba011bad30bf010044284050b501180f985b809baa0038a9985a80a4812e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001642d00530010039bac30b80130b501375400323005375a60c8616c026ea800500a4c00400e9000488cdc00009bad306430b701375400480f22a6616602921886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6465706f7369745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c8048acc004c1a003626644b30019800980e185a009baa05a816cc0c4c2d004dd504980cdd59810185a009baa093014031159800998149bac30b70130b4013754126026eb8c2dc04c2d004dd51810185a009baa05a899912cc004c24c04c2d404dd5000c4c8cc896600260100051598009804000c566002b30013096010018a518980e801216c028992cc004c0780062b30019800998141bac30bd0130ba013754132026eb8c19cc2e804dd51813185d009baa0609bac306830ba01375400f330bc01306830ba013754604c6174026ea8180cc2f005301054455534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e8c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b300198009bac306730ba013754132033758617a026174026ea801e661780260446174026ea8c098c2e804dd50301985e00a60106457355534472004bd702444b30013370e6038004603c01719800805c00a4464b3001309d0130bf0137540031325980099baf30c40130c10137540026188026182026ea8c31004c30404dd5002456600266ebcc1b8c30404dd500098379860809baa30c40130c101375400913370f3001375660de6182026ea80066eb8c310040166eb8c1bc01501e2cc004c2780402626eb4c1bcc30404dd500244cdc199b82375a60de6182026ea80100240290be014528217c028a5042f8046186026180026ea800616e0285e808cc05401400502842a4050ba012264b300130980130ba0137540031325980099b87375a617e0200266e000140222b30013370e6eb4c2fc04c30004004cdc0002001c56600266e1e60026eacc090c2f004dd504d80cdd71812185e009baa302830bc0137540c54881057355534472004064007130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd503152201045553447200406515330ba01491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001642e40515330ba014914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001642e40515330ba0149140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b801491dd6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001642dc0515330b801491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001642dc0515330b801491186578706563742073757364725f746f5f6d696e74203e2030001642dc04b30013096010018802c4cdc199b8200500100242d80515330b7014913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001642d80515330b701491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001642d80515330b7014911d657870656374207661756c745f757364725f6265666f7265203e3d2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491866578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa09401899912cc006600260426168026ea816a05b303130b401375412603375660406168026ea824c0500c4566002660526eb0c2dc04c2d004dd5049809bae30b70130b401375460406168026ea816a26644b300130930130b5013754003132332259800980e8014566002603a00313259800980f000c5660033001330283758617a026174026ea826404dd71833985d009baa302630ba0137540c1375860d06174026ea801e661780260446174026ea8c098c2e804dd50301985e00a6106457355534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e4c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b30013370f3001375660446174026ea8264066eb8c088c2e804dd51813185d009baa060a44105735553447200405c60d600d13259800984c00985d009baa0018992cc004cdc39bad30bf010013370200a00715980099b87375a617e0261800200266e040100222b300130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd5031522010455534472004065198009bac306930bc013754136033758617e026178026ea80266617c0260d46178026ea8c0a0c2f004dd50311985f00a61054455534472004bd702444b30013370e603c004604001b19800806c00a4464b3001309f0130c10137540031325980099baf30c60130c3013754002618c026186026ea8c31804c30c04dd5002456600266ebcc1c0c30c04dd500098389861809baa30c60130c301375400913370f3001375660e26186026ea80066eb8c318040166eb8c1c401502019b83337046eb4c1c4c30c04dd5002006005c5282180028a50430004618a026184026ea80061720285f808cc05c01400502a42ac050bc0122a66174029211765787065637420757364725f6d696e746564203d3d2030001642e40515330ba01491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001642e40515330ba014913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b8014912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001642dc0515330b801491a86578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202029001642dc0515330b8014911a65787065637420757364725f746f5f72656c65617365203e2030001642dc053001007a4001223370000266e0ccdc11bad306930bb01375400400800681122a6616e02921236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001642d80515330b7014911c657870656374207661756c745f757364725f6265666f7265203e2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e756e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa0940142bc04857808dc4a40008570090ae0111112cc004cdc39809801180a801c6600200700291192cc004c25004c2d804dd5000c66002617402616e026ea80066eb0c07cc2dc04dd5001ccc068010dd6180f985b809baa003488966002612e026172026ea80062b30013375e617a026174026ea800cc2f404c2e804dd5185e80985d009baa0068acc004cdd79833985d009baa003306830ba013754617a026174026ea801a266e1e60026eacc1a0c2e804dd5001cdd7185e808014dd7185e80985f00801202e3301f301c375a60d06174026ea8018c2f404c2e804dd5000c528216e028a5042dc0515330b80149015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642dc0485700a168023300c006001407d0a00142c404856808444464b3001308e0130b00137540031325980099baf30b50130b2013754616a026164026ea8c180c2c804dd500098171985a009ba90054bd704566002611c033001375660c06164026ea8c180c2c804dd5000c016910108747265617375727900403d132598009849809859009baa0018992cc004006330010018992cc004c24804c2d004dd5000c4c96600266ebcc2e404c2d804dd5185c80985b009baa0013032330b801375201297ae08acc004c2480660026eacc190c2d804dd5000c026910108747265617375727900404d13259800984b80985b009baa0018992cc0040063300100189985d008029985d008009985d009ba6329800800cdd59833985c809baa00499198008009bab306830ba01375460d06174026ea8024896600200314bd6f7b63044c8cc2f804cdd8185d808009ba632330010013756617a0200444b30010018a5eb7bdb182264661820266ec0c2f804004dd418381bad30bf010013300300330c30100230c10100142fc0466006006618002004617c0200285e0090011112cc00400a2003132332298008034c30804016646600200200a44b30010018998610099bb037520086e9800d2f5bded8c113298009bae30c0010019bab30c1010019862808012444b3001337200100071330c601337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528218c02880144cc31c04cdd81ba9009374c002004861008ca6002003008801a002222598008014400626466453001006986700802cc8cc00400401489660020031330ce01337606ea4010dd4001a5eb7bdb1822653001375c619802003375a619a0200330d10100248896600266e4002000e2661a40266ec0dd48041ba80070058acc004cdc7804001c4c966002615c0200310028998698099bb037520126ea00040090ce0119b800070028998690099bb037520066ea0008cc0180180050cd01219a02186780800a19a0240186eb8c31c04004dd69864008009865008012190028998630099bb037520066e98008cc0180180050c101218202186180800a1820240186eb8c2ec04004dd5985e00800985f008012178024bd7042c40501f42c406162030b10185880a17a0230ba0130b701375400315330b50149012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642d00460c6616c026ea80062a6616802920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642cc0515330b40149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642cc04617002616a026ea80062a661660292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001642c804660146eb0c184c2d004dd5004002c2b00501b42b006158030ac0185600a1720230b60130b301375400315330b10149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642c00460be6164026ea8c180c2c804dd5000c54cc2c0052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642bc0515330b0014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642bc046168026162026ea80062a6615e0292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001642b8046600c6eb0c2cc04c2c004dd500200108a9984300a4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001642140464660020026eb0c0d4c22004dd5035112cc004006297ae0899845809ba732323308d01308e010023308d013038308b0137540026611a026ea4cc894cc22c04cdcb2481165369675374727563747572652e636f6e746578743a200037326606a612002611a026ea8005220100153308b013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606a6076611a026ea8005220100153308b013372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606a6074611a026ea8005220100153308b013372c9201165369675374727563747572652e7061796c6f61643a200037326606a6018611a026ea800522010013253308c013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606c6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002423004846008dc68009bae309001308d01375400266e28c008dd7181d9846809baa0013371460046eb8c0e8c23404dd500098011bae300c308d013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002422804845008dc6800981b9984680a610b4a5369676e617475726531003308d01308e01308b013754611c026116026ea8004cc234053010140003308d01375200a97ae04bd701846809847008009bac308c0100133002002308d010014228046e50dd980320cc82ba264b30010018acc004c178c20004dd5000c4c9660020030688992cc0040060d3069899912cc0040060d713259800800c1b20d906c899912cc0040060dd13259800800c1be0df06f8992cc004c2380400e2b300100783844c966002003071838c1c60e31332259800800c1ce264b300100183a41d20e90748992cc004c24c0400e260206126020230754240046eb800509301184800800a11c02375c002611e02010848008c2340401d08b0141c108b011bad001837a11c02308b010014224046eb4004c2280400a0d8845808c22004005086011bac001308701002834c1a508801184280800a10602308101375400306741f9067833c19e0ce843008c20c0400908101419107f1bae00142080460fe00283e8dd7000983f00120fe307c00141e86eb8004c1ec00907c183c800a0ee375c00260f000483c8c1d80050741bae001307500241d860e60028388c1bcdd5003415506c415501441550144155014415501441550144155014415507041560ab05582aa0e8307100141bc6eb0004c1c000a0a505241c460dc0028360c1b800a0a1050828414106f1836000a0d4306c002827413a09d04e41b460d40028340c1a800a09904c826413106b1834000a0cc3068002825412a09504a41a460cc0028320c19800a09104882441210671832000a0c43064002823411a08d046419460c40028300c18800a08904482241110631830000a0bc305c37540050424164444653001001802400d001111192cc004c0fc006264b300100180344c966002003007803c01e00f132598009834801c0160108330dd7000a0d23066001419060c46ea800e2b3001303e0018992cc00400600d13259800800c01e00f132598009834801c4cc0e000489660020050078992cc0040063300100a800c4c008c1b000d00a402e01700b805a0da306a00241a100841986eb000600f00741a460cc0028320c188dd5001c566002608400313259800800c01a264b3001001803c01e264b3001306900389981c000912cc00400a00f13259800800c66002015001898011836001a014805c02e01700b41b460d400483420108330dd6000c01e00e8348c19800506418311baa0038acc004c064006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260d800713303b0012259800801402a264b30010018cc00403600313002306f003403500e807403a01c8380c1b400906b402d0691bac001805402906c1834800a0ce375a00260d000500741a460cc0028320c188dd5001c566002603000313259800800c01a264b3001001803c01e00f132598009834801c0160108330dd6800c01d0691833000a0c830623754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260d200700580420cc375a00300741a460cc0028320c188dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260d200700580420cc375c0028348c19800506418311baa003802a0be417c82f905f20be417c82f8c180dd50014106083041820a0c03008305a3754646644a660b666e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a200037326600a6ea416522010013259800981d982e9baa00189929982e99b9649113666f756e642070726f7879207574786f3a3a200037326600e002910100132598009820182f9baa0018992cc0040062b3001303e3060375400313259800800c126264b3001001825412a09504a899912cc0040060991325980098350014401a09a8338c1a00050661bae001306700241a060ca0028318c184dd5000c12105e412209104882420cc306330603754003153305e49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164174601860be6ea8c034c17cdd50009830982f1baa0018a9982e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016416c660080024646600200260086eacc034c17cdd51806982f9baa0022259800800c528456600266e3cdd7183180082e4528c4cc008008c19000505d20c230010013758601260b66ea80e8896600200314bd7044cc178c16cc17c004cc008008c18000505d1800800911919800800801912cc0040062980103d87a80008992cc004c01000626012660be00297ae0899801801983080120b4305f001417444464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20c05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c82d105a1bac305d002375a60b60026466ec0dd4182d8009ba7305c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60c0003337149101023a200098008054c18400600a805100a183180144ca6002015306000199b8a489023a200098008054c184006600e66008008004805100a183180120c23063001418066e29220102207d0000341746eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c20ba3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e417c66e2ccdc0000acc004cdc4000a40291481822903720be004401866e0c00520203370c002901019b8e00400241706eb800d0601b8a4881022c20002232330010010032259800981b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002300b00189980299b8400148050cdc599b803370a002900a240c000682b90571803803a264b300100181a40d2264b300100181ac4c96600200303681b40da06d1332259800800c0e2264b30010018acc004c16000a264b300130323054375400513259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc0040060810408204102264b300130600038acc004c0e4c16cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d132598009833001c4c966002608000313259800800c126264b3001001825412a09504a8992cc004c1a800e02504b419c6eb800506a1833800a0ca30633754017159800981f800c56600260c66ea802e01f048419104841808300c184dd5005411d0631bae001419860c60028308dd7000983100120c63060001417860b86ea801a08282ca08282e8dd7000a0c0305d001416c60ba00503e81f40fa07c82f0c16c005059182d80140f207903c81e20b83059001415c60aa6ea800a07482904c01cc16002207282aa07303981cc0e5059182b000a0a8375c00260aa00482b0c14c0050511bac00181a40d10541828801209e40b902140b902144c96600200302f817c0be2646006609e0086eb400605e8278c13000904a44c96600200302d816c0b62646006609a0086eb400605a8268c12800904840a904640aa05502a815209430470014114608e00502881440a20508240c1140050431bad0013044002812a08a304200141006eb4004c10400a0448210c0fc00503d1bac001303e00280fc07d03f181e000a0743758002607600501c80e2078303900140dc606a6ea801a034819203481b0dd6000c06603281c8c0d8005034181b001405e02f01780ba06e303400140c8606800501580ac05602a81a8c0c800503018171baa010809a0561112cc004c028c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a801466002007132598009807800c56600260646ea800a00f00640cd1598009807000c4c9660020030078992cc0040060110088044022264b3001303900380540250361bae00140e4606c00281a0c0c8dd50014566002602400313259800800c01e264b30013038002804c021035181b000a0683032375400500640bc817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a8444b30013009302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002601c00313259800800c01e264b30010018acc004c0dc00a264b300130110018992cc00400601513259800800c566002607400519800800c032016808a01681ba01700b805c02d03b181c000a06c303437540051598009808000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0340062b3001303137540050078032064803205c40b8605e6ea800600a805a00a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c0050290dc3a40006e1d2002804402201100840a0604a60446ea800e2c80f8604200260386ea808a293454cc06924011856616c696461746f722072657475726e65642066616c7365001365640641" : "593595010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a4005223233001001003223300300130020024888a60024464b30013006001899192cc004c05c00a0091640506eb8c054004c044dd5001c566002600a0031323259800980b80140122c80a0dd7180a80098089baa0038b201e403c601e6ea800a44b30013005300f3754005132323259800980b80144c8c9660026014003159800980a9baa002803459016456600260120031323259800980d80140222c80c0dd6980c800980a9baa0028acc004c0340062b3001301537540050068b202c8b2026404c8098c04cdd5000980b001c59014192cc004c04c0062b30013371290021809000c5a2600e6024002808a2c80a0dd5180a800980a80098081baa0028b201c912cc004c014c03cdd500144c8c8cc896600260300070058b202a375a602a0026eb8c054008c054004c040dd500145900e488c966002600c0031323259800980b80140122c80a0dd6980a80098089baa0038acc004c0140062b3001301137540070028b20248b201e403c601e6ea8009222232323322598009805980a9baa010899191919912cc004c07c00e264b30013011301b3754003132323232323298009812800cdd61812802cdd698128024dd69812801cc0940092222259800981580344cc068dd61815005912cc00400a26603800c44b300100289980d00289980d0048cc004dc3a400d370e90044dc3a4014911192cc004c090c0b8dd500ac4c8c8c966002606c005132332259800981500144c96600260740031330293758607200244b300100280244cc08cc0ec0084c004c0f0009039459037181a9baa0038acc004c0a400a264b3001303a0018998149bac303900122598008014012266046607600426002607800481ca2c81b8c0d4dd5001c566002605a00513259800981d000c4cc0a4dd6181c800912cc00400a009133023303b00213001303c00240e51640dc606a6ea800e2b3001300a0028992cc004c0e80062660526eb0c0e40048966002005004899811981d80109800981e00120728b206e30353754007159800980480144c96600260740031330293758607200244b300100280244cc090c0ec0084c004c0f0009039459037181a9baa0038acc004c02000a264b3001303a0018998149bac303900122598008014012266048607600426002607800481ca2c81b8c0d4dd5001c59033206640cc8199033206630323754002264b300130290018992cc004c0e400626604a607000200f1640d860686ea800e2b300130280018992cc004c0e4006264b3001302b30353754003132323259800981e80144cc0a8c0f000c4cc0a800402e2c81d0c0ec004c0ec004c0d8dd5000c59034181c000c59036181a1baa0038b206440c860646ea8008c0d400e2c8198c0d0004c0d0004c0bcdd500ac5902d09981080a912cc00400a330012303430350019181a181a981a800cdd2a400122232598009814800c4c8c96600260740050048b206e375c607000260686ea800e2b300130280018992cc004c0e40062660506eb0c0e000489660020050058cc00401e607400513001303b002401c81c22c81b0c0d0dd5001c566002605800313259800981c800c4cc0a0dd6181c000912cc00400a00b19800803cc0e800a2600260760048039038459036181a1baa0038acc004c0240062646644b3001303b0018998151bac303a0012259800801401e33001009981e00144c004c0f400900920748b2070375a6070002607200260686ea800e2b30013008001899192cc004c0e800a0091640dc6eb4c0e0004c0d0dd5001c566002600e0031323259800981d00140122c81b8dd6981c000981a1baa0038acc004cdc3a40180031323259800981d00140122c81b8dd7181c000981a1baa0038b206440c88191032206440c88190c0c8dd500124444646644b3001302c30363754005132323232323232323298009821800cc10c022608600f30430069821802cc10c012608600737586086004911111112cc004c130026266024609602226602400e26602400c26602400a2660240082660240062b3001303d304737540051323232323298009bae30500019bae30500059bae30500049bae30500039bae30500024888896600260ac00d13304500b225980080144cc10805066002604860a86ea813a460b060b260b260b20032232330010010032259800800c5284566002600660b600314a3133002002305c001415882ca460b060b260b260b260b260b260b260b200337009000cdc024005374a9001244444446464b300198009111919912cc004c16000a2b300130583062375400314c0103d87a80008a6103d87980004185159800982d801456600260b660c46ea80062980103d87a80008a6103d87b800041851332259800982d000c530103d87b80008acc004c164006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041908320dd6983418329baa0038a6103d8798000418c8318dd6983318319baa00330623754002830906118301baa00130020033001003919191919912cc004c16000a29422b3001305b0028cc004cdd7983318319baa0014c103d87b8000a50a514185132332259800982d8014528c56600260b40051332259800982e18339baa30383068375400d1337100040031337120040028330dd6983498331baa00359800982d18329baa30363066375400f100189806800a0c88a5041908320c18cdd50009bad30673064375400860cc60c66ea800506120c23060375400260c860ca00660c660c06ea8004c188004c178dd5000cc0b4c174dd5004a444b30013055305f37540031323300b375860c860c26ea81608cdd7983298311baa00100230633060375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c194c188dd50014c194c188dd5000c8c8c96600260b260c86ea8c1a0c1a400a200313259800982d000c4c030cc1a0dd418069bad30693066375400497ae08acc004c16c0062005100241908320c190dd5000a0c63067001306337540028029300103d87b8000a50a5141811980099baf9800981918311baa002981918311baa001919192cc004c164c190dd51834183480144006264b3001305a00189806198341ba8300e375a60d260cc6ea80092f5c1159800982d800c400a2004832106418321baa001418c60ce00260c66ea8005005260103d8798000a50a51418114a0830106020c0306330603754002601260c06ea815d05e2330013060305d375401322232330010010042259800800c401226600660ca0026600400460cc002831a4530013300900223375e60c660c06ea8c18cc180dd5181818301baa001300633062375200497ae0a50a51417523052305d375460c2646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130573062375460cc0074a14a2830a2660cb30014a14c103d87a8000a60103d87980004184660ca6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1a000400e294626600400460d2002831906644cc196600294298103d87a8000a60103d87980004184660ca6e9c0092f5c11330659800a51a60103d87a8000a60103d87980004184660ca6e9ccc194dd400080125eb8106120c2375860c860ca0026eb4c190008cc008008c190005061489660020031480022600c6600400460c6002830244b30010018a40011300633002002306300141812222329800800c01600900340044444b30010038800c66002009306900398348016600260d0007375a60d00050014014802106648896600200514c103d87a80008acc004c1540062605c660c460c600497ae08cc00400e60c80053008001400c82f1061488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006418d1330050053069004418c6eb8c188004dd598318009832800a0c614bd6f7b6304896600260a860bc6ea800a26464b30013065002801c590621bad3063001305f37540051641752232330010010032259800800c52f5c1133225980099baf30663063375460cc60c66ea8c0ccc18cdd50011804998329ba90054bd7044cc194008cc0100100062660080080028308c190004c19400506248c184c188c188c188c188c188006460c260c460c460c460c460c460c4003222329800800c012006800888966002005159800800c528c52820c88acc00400629422b3001330043066002375a60cc00319800801cc19c00a60ce002801a294106120c841912259800982a182f1baa0028991919194c004c19800660cc007306600248896600260d4009133030306900713305300213259800982e000c4c8cc896600260dc003132323322598009839001c0422c8378dd718378009bae306f002306f001375860da0031641ac6eb4c1ac004c1b0004c19cdd5001456600260b60031323322598009837000c4c8c8cc896600260e40070108b20de375c60de0026eb8c1bc008c1bc004dd61836800c5906b1bad306b001306c00130673754005159800982f800c4c8ca60026eb4c1b000660da003375a60d80049112cc004c1c000a264646644b300130740038094590711bae3071001375c60e200460e20026eb0c1bc00a2c836860d800260ce6ea800a2b3001303c00189919912cc004c1b8006264646644b3001307200380845906f1bae306f001375c60de00460de0026eb0c1b40062c8358dd69835800983600098339baa0028acc004c0ec00626464b3001306d002805c5906a1bad306b00130673754005159800981d000c4c8c96600260da00500b8b20d4375a60d600260ce6ea800a2c832906520ca4194832906518329baa0018b20ce183300098328009832000982f9baa0028b20ba911194c0040060090034004444b30010028800c660020073067002998021833001000a0064191230613062306230623062001912cc004c150c178dd500144c8c96600260ca0050038b20c4375a60c600260be6ea800a2c82ea44b30010018a400113006330020023063001418137029000488cdc199b82002375a605c60be6ea8004dd69817982f9baa0019b88480024466056004466ebcc18cc180dd50009ba700248888888888888888888888a60024444646600200200a4464b30013070001899192cc004c1c8c1f0dd5000c4c8ca60026eb8c2080400a6eb8c20804c20c040066eb8c2080400572a308201001375861000260fa6ea8006294107b1919800800804112cc0040062980103d87a80008992cc004cdc79bc8375c6104020020091304d3308101374e00297ae089980180198418080120fa375861020200283f8dd7183f183d9baa0028acc004c1bc006264660020026eb0c1fcc1f0dd5001912cc00400629462b300133005005308001001899801001184080800c52820f641f91598009839800c4cc094dd6183f183d9baa0022330040040018acc004c14000626466e24dd6983f800cc004dd6183f984000800d2000912cc004cc01801800a2604a003100141f080f0c1ecdd50014566002609e0031323322598009839183e9baa0028acc004c1c8c1f4dd5184080984100801c4cdc49bad308101307e37540040031337106eb4c20404c1f8dd5001000a0f88a5041f060fe0026eb4c1fcc1f0dd5001983d9baa304b307b375400b1598009827000c4c8cc896600260e460fa6ea800a2b30013072307d37546102026104020071337120026eb4c20404c1f8dd500144cdc40009bad308101307e375400483e2294107c183f8009bad307f307c375400660f66ea8c1f8c1ecdd5002c4c8c8cc004004018896600200314a115980099baf003307d3081010018a51899801001184100800a0f841fc6042660fa60fc60f66ea80092f5c083c907920f241e483c9079183c9baa0019180a800cc04c04e6024025301001091119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c83da26600a00a61020200883d8dd7183d0009bad307b001307d00141ec660260080062900048c05400660e66ea805e600a00b2232598009837983b1baa001899198068008acc004cdd79811983c1baa003307b3078375400915980099baf30483078375400260f660f06ea800e20031641d91641d860f460ee6ea80062c83a8c114c1d8dd51823183b1baa00292cc004cdc4000a4001130050018800a0e6488888888888c8ca60024444446644646644b30013370e66e04dd69847809846009baa308f01003375a611e026118026ea8c23c04010006264b30013370f30013758606c611a026ea80329000488cc89660033001308601001a50a51423c051325980099b893302100100598008044dd7184a80801cdd7184a80984b00801a032899b800040018b2120023370400200b1003423c046eb0c24804c23c04dd5001194c00402a90004896600266ebcc094c24804dd50011ba7003899b80001375a60c46124026ea800a20028480090241bac309201308f0137540048108cdc08010054400a2c845809660026034013148006290012114028b2114023756611a02611c02002b3001307f300e0038a4001159800984700801c4c96600266e3cdd7184500800a4504555344720089bad308b010018b211202308d010038b211602422004611a02002660446eacc068c21c04dd50029bae30573087013754603c610e026ea801a600200b375c611402610e026ea8c078c21c04dd5003400e004803a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444464b3001307b30850137540031325980099baf308a013087013754611402610e026ea8004c0b4cc22404dd4802a5eb822b3001307b98009bab30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab30593089013754007006a441045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5000c5908501459085011844809843009baa0018b210802330060040019111192cc004c1ecc21404dd5000c4c96600266ebcc22804c21c04dd51845009843809baa30573087013754002605a66112026ea40152f5c1159800983dcc004dd5982b9843809baa30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab3059308901375460b26112026ea800e00d4881045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5182b9843809baa0018b210a028b210a023089013086013754003164210046600c008002911112cc004c1ec02e26644b300198009845809844009baa0538164c0c4c22004dd503fcdd5980f9844009baa07f4051159800998149bac308b0130880137540fe6eb8c0ccc22004dd5180f9844009baa0538acc0066002660426eb0c22c04c22004dd503f9bae30573088013754603e6110026ea814e6eb0c160c22004dd5000cdd618189844009baa05348896600266e1cc05000cc0500162b300130110028cc00400e0052232598009841809846809baa001899192cc004c21404c23c04dd5000c4c8ca60026603e0100033758604a6124026ea80126eb4c2540400922259800984500984a009baa0038acc004cdc499199119b8330403370066e08004dd69833984c009baa003002002375a60cc612c026ea8004dd69833184b009baa00830980130950137540073001375660ca612a026ea8c194c25404dd50054dd7184c008014dd7184c00984c8080120388acc004cdc38009bad3065309501375400f13375e6e9c010c0a0c25404dd5003c5282126028a50424c0516424c043758612802612a020026120026ea8006294108e01182f1847809baa33012004001309101308e013754003164230046601c00e002810a2c84480a2c844809159800cc004dd6182b9844009baa07f9bac308b0130880137540033308a0130583088013754603e6110026ea814ccc228053001054455534472004bd702444b30013370e602a004602800b19800802c00a4464b3001308301308d0137540031325980099baf309201308f013754002612402611e026ea8c24804c23c04dd5002456600266ebcc178c23c04dd5000982f9847809baa309201308f01375400913370f3001375660be611e026ea80066eb8c248040166eb8c17c01501618089bad305f308f01375400914a084680a294108d011848809847009baa0018b2118023300e005001408516422404899b879800829c1fe90004dd6982b9844009baa0019bad30333088013754003002401d30010029bac308b01308801375400323017375a60b26112026ea8005006459086014590860145908601459086011bac3089013086013754052611202610c026ea820006264b3001307b00c899912cc006600260b26112026ea815205b3032308901375410003375660406112026ea8200050154566002660546eb0c23004c22404dd5040009bae3034308901375460406112026ea81522b30019800998111bac308c013089013754100026eb8c160c22404dd518101844809baa0549bac305930890137540033308b013059308901375460406112026ea8150cc22c05301054455534472004bd702444b30013370e602a006602a00b159800980900146600200700291192cc004c21004c23804dd5000c4c8c966002610a026120026ea800626464b3001337120033001375660c66126026ea8c18cc24c04dd5003cdd7184b008044dd7184b00984b8080420348acc004cdc380098119bad3063309301375400913375e612c02612e02004604c6126026ea80122941091014528212202375a612a020026122026ea8006294108f01182f9848009baa33013004001309201308f013754003164234046601e00e00281122c84500a2c845009159800cc004dd6182c1844809baa080018014dd61846009844809baa0019bac303230890137540a8801a266e1e60020a908001a4001375a60b06112026ea80066eb4c0d0c22404dd5000c0090084c00400a6eb0c23004c22404dd5000c8cdc41bad305a308a0137540029000200e8b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c56600260fe0191332259800cc004c160c22404dd502a40b660646112026ea8200066eacc080c22404dd504000a02a8acc004cc0a8dd61846009844809baa08001375c60686112026ea8c080c22404dd502a45660026644b30013370e602800460280091598009808800c6600200500191192cc004c20c04c23404dd5000c4c8c96600260ca611e026ea8006264b30013370e6eb4c25004004dd698309848809baa003899baf3094013095010013024309101375400714a0847808c24004dd5000c528211c02305e308f01375466024008002612202611c026ea80062c846008cc0380180050214590890145908901198111bac308c013089013754100026eb8c160c22404dd518101844809baa054375860b26112026ea80062b300198009bac30583089013754100030029bac308c013089013754003375860646112026ea815100344c1fa60020a908001cc00400a6eb0c23004c22404dd5000c96600260306eb4c168c22804dd5000c4c1fcdd6982c9845009baa0018a50422004803a6eb4c160c22404dd5000cdd6981a1844809baa00180120108b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c4c96600260ba01b198009bac308b013088013754057222225980099b87301600530160048acc004c04c00e266e24006600200b003a400122232598009843009848009baa001899912cc004c22c04c24804dd5000c4c8cc0a400456600266ebcc0fcc25004dd5001984b80984a009baa0078acc004cdd79832184a009baa001309701309401375400713259800984680984a009baa001899192cc004cdc39bad309a01002375a60ce612e026ea801a2b30013370e6eb4c26804004dd69833184b809baa0068acc004cdd7984d00984d808009815184b809baa006899b8000898009bab3067309701375460ce612e026ea802a6eb8c268040326eb8c26804c26c0403101e459095014590950145909501184d00800984a809baa0018b212602306330940137540031642480516424804612c026126026ea80062c848808c25004c24404dd500098301848809baa3061309101375400916423c046602200e00481522c84580a2c84580a6116026110026ea82080522259800cc004c0d8c22c04dd502b40be60686116026ea8208066eacc088c22c04dd504100a02e899912cc00566002603600514a319800984100800d28528a11602422c05132598009841809846809baa0018cc00660026eb0c24404c23804dd504280cdd7181c9847009baa3025308e0137540b3375c60bc611c026ea8c094c23804dd502ccdd69848809847009baa0014025375a612202611c026ea8c24406600210a03375c612202611c026ea8c094c23804dd502ccdd6982e9847009baa0049bad3039308e01375400880726e0400a604c611c026ea8011222232323259800984500984a009baa0048992cc004cdc399b81375a61320200200800715980099b87375a6132026134020026eb4c26404c268040222b3001300f00a8acc00660026605e6eb0c26404c25804dd5046809bae30653096013754605a612c026ea818601d375860cc612c026ea8032661300260cc612c026ea8c0b4c25804dd50309984c00a61054455534472004bd7052000403515980099b8900298009bac3065309601375411a034800244b30013375e6136026130026ea8008c26c04c27004c27004c27004c27004c27004c27004c27004c27004c26004dd5031c4cdc0000cc004dd59834184c009baa0029bae30683098013754605e6130026ea818e9101045553447200407d100142580481c22b3001323371266e0003002e60026eb0c100c25c04dd5031520009119192cc004c0a4006266e0000ccdc199b82001375a60d66136026ea8010dd69835184d809baa0048801a1320298008024dd7184e80800cdd7184e80984f00800a04237586138026132026ea800902b1bab309901309a01309a01980084680cdd7184c80984b009baa302d30960137540c3375a60ca612c026ea80326eb4c104c25804dd5006202c899b879800830c23406600c017375a60ca612c026ea80326eb4c104c25804dd50064039015005459094014590940145909401456600330013302f3758613202612c026ea823404dd71832984b009baa302d30960137540c300e9bac30663096013754019330980130663096013754605a612c026ea8184cc26005301054455534472004bd704c09800900d44cdc3cc00418611a03300600b9bad30653096013754019375a6082612c026ea803201c80a802a2c84a0090940145909401459094014c004dd61832184a809baa08c019bae304030950137546058612a026ea81826eb8c194c25404dd51816184a809baa0609bad3098013095013754008808a2c849808c01000566002604200913370666e0801c00401229000212202375a612a020088b2118023020308d01375400716422c0530010039bac308e01308b01375400323005375a60b86118026ea80050094c00400e9000488cdc00009bad305c308d01375400480fa2c844809159800982e006c4cc89660033001301d308a0137540ab02e98199845009baa081019bab3021308a0137541020280b22b30013302b3758611a026114026ea820404dd71846809845009baa3021308a0137540ab13322598009840809845809baa00189919912cc004c02000a2b300130080018acc0056600261080200314a31301d00242340513259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260c06120026ea8c09cc24004dd502d9984900a601054455534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b8c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c848809159800cc004dd6182f9848009baa087019bac309301309001375400f330920130233090013754604e6120026ea816ccc2480530106457355534472004bd702444b30013370e603a004603801719800805c00a4464b3001308b0130950137540031325980099baf309a013097013754002613402612e026ea8c26804c25c04dd5002456600266ebcc198c25c04dd50009833984b809baa309a01309701375400913370f3001375660ce612e026ea80066eb8c268040166eb8c19c01501e2cc004c2300402626eb4c19cc25c04dd500244cdc199b82375a60ce612e026ea8010024029095014528212a028a50425404613202612c026ea80062c84a008cc058014005029459091012264b300130860130900137540031325980099b87375a612a0200266e000140222b30013370e6eb4c25404c25804004cdc0002001c56600266e1e60026eacc094c24804dd504480cdd718129849009baa302930920137540bb4881057355534472004064007130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed220104555344720040651642400516424005164240053001375860c06122026ea8220066eb8c0f0c24404dd518141848809baa05c9bae3061309101375460506122026ea81726eb4c25004c24404dd5000a01a8b211e023028309001375400f164238051642380516423804b30013084010018802c4cdc199b820050010024234051642340516423405164234046eb4c24004004dd6984800984880800cc004dd61847809846009baa083019bae3037308c01375460466118026ea815e6eb8c170c23004dd518119846009baa0579bad308f01308c013754002803a2c84500a60020053758611a026114026ea8006460326eb4c16cc22c04dd5000a00e301d308a01375400316422005164220046eb0c22c04c22004dd50159845809844009baa08201899912cc006600260446114026ea815605d3033308a01375410203375660426114026ea8204050164566002660566eb0c23404c22804dd5040809bae308d01308a01375460426114026ea815626644b3001308101308b013754003132332259800980e8014566002603a00313259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260466120026ea8c09cc24004dd502d9984900a60106457355534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b4c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c84880915980099b8798009bab3023309001375410e03375c60466120026ea8c09cc24004dd502dd22105735553447200405c604000d132598009843009848009baa0018992cc004cdc39bad3095010013370200a00715980099b87375a612a02612c0200266e040100222b300130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed22010455534472004065198009bac30613092013754112033758612a026124026ea8026661280260c46124026ea8c0a4c24804dd502e9984a00a61054455534472004bd702444b30013370e603e004603c01b19800806c00a4464b3001308d0130970137540031325980099baf309c0130990137540026138026132026ea8c27004c26404dd5002456600266ebcc1a0c26404dd50009834984c809baa309c01309901375400913370f3001375660d26132026ea80066eb8c270040166eb8c1a401502019b83337046eb4c1a4c26404dd5002006005c528212e028a50425c046136026130026ea80062c84b008cc06001400502b4590930122c84800a2c84800a2c84800a60026eb0c180c24404dd504400cdd7181e1848809baa302830910137540b9375c60c26122026ea8c0a0c24404dd502e4dd6984a009848809baa001403516423c0460506120026ea801e2c84700a2c84700a2c84700a600200f480024466e00004cdc199b82375a60c26122026ea800801000d02345908d0145908d011bad309001001375a61200261220200330013758611e026118026ea820c066eb8c0dcc23004dd518119846009baa0579bae305c308c01375460466118026ea815e6eb4c23c04c23004dd5000a00e8b21140298008014dd61846809845009baa0019180c9bad305b308b0137540028038c074c22804dd5000c5908801459088011bac308b0130880137540566116026110026ea82080508601210c0237129000210a024214044444b30013370e6028004602600719800801c00a4464b3001308201308c013754003198009848009846809baa0019bac3020308d0137540073301a00437586040611a026ea800d222598009842809847809baa0018acc004cdd79849809848009baa00330930130900137546126026120026ea801a2b30013375e60be6120026ea800cc180c24004dd51849809848009baa006899b8798009bab30603090013754007375c612602005375c61260261280200480b8cc07cc048dd698301848009baa006309301309001375400314a084700a294108e0145908e0122c845808cc034018005020459088012108021111192cc004c1e8c21004dd5000c4c96600266ebcc22404c21804dd51844809843009baa30563086013754002605866110026ea40152f5c1159800983d4c004dd5982b1843009baa30563086013754003005a4508747265617375727900403513259800983f9843009baa0018991980d0008992cc004c1f8c22004dd5000c4c96600266ebcc23404c22804dd51846809845009baa00130303308c01375201297ae08acc004c1fa60026eacc168c22804dd5000c026911087472656173757279004045132598009841809845009baa0018991980f00089984700802998470080099847009ba6329800800cdd5982e9846809baa00499198008009bab305e308e01375460bc611c026ea8024896600200314bd6f7b63044c8cc24804cdd81847808009ba63233001001375661220200444b30010018a5eb7bdb1822646612a0266ec0c24804004dd418119bad30930100133003003309701002309501001424c04660060066128020046124020028480090011112cc00400a2003132332298008034c25804016646600200200a44b300100189984b0099bb037520086e9800d2f5bded8c113298009bae3094010019bab309501001984c808012444b30013372001000713309a01337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528213402880144cc26c04cdd81ba9009374c00200484b808ca6002003008801a002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd4001a5eb7bdb1822653001375c614002003375a61420200330a50100248896600266e4002000e26614c0266ec0dd48041ba80070058acc004cdc7804001c4c96600261340200310028998538099bb037520126ea00040090a30119b800070028998530099bb037520066ea0008cc0180180050a201214402185180800a1420240186eb8c26c04004dd6984e00800984f0080121380289984d0099bb037520066e98008cc01801800509601212c02184b80800a12a0240186eb8c23c04004dd59848008009849008012120024bd701847009845809baa0018b2112023059308a01375400316422005164220046118026112026ea80062c843808cc024dd6182b9844009baa008005308a0130870137540031642140460aa610c026ea8c158c21804dd5000c5908401459084011844009842809baa0018b210602330053758610e026108026ea8010008896600266e2000520008a6103d87a8000899804801000a0fe22c82d8c8cc004004dd61816182e9baa0572259800800c52f5c1133060374e6464660c460c6004660c4605e60c06ea8004cc188dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241888310dc68009bae30653062375400266e28c008dd7181918311baa0013371460046eb8c0c4c188dd500098011bae300d30623754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241808300dc68009817198312610b4a5369676e617475726531003306230633060375460c660c06ea8004cc18930101400033062375200a97ae04bd70183118318009bac3061001330020023062001417c6e50dd9803a264b3001304a305437540031323232332259800982f001c4c8c8cc896600260c40071300b306200c8b20be375c60be0026eb8c17c008c17c004dd6182e802c5905b1bad305b001375a60b600460b600260b400260aa6ea80062c8298c15c0090554590530c140004c13c004c138004c134004c120dd50014590464590490c10c004c108004c104004c100004c0fc004c0f8004c0f4004c0f0004c0dcdd50014590351802981a9baa323232598009816981b9baa0018992cc004c0c4c0e0dd5000c4c966002605e60726ea8006264646644b300130420038802c5903f181f8009bae303f002303f001303a37540031640e0607860726ea80062c81b8c01cc0e0dd51804181c1baa303b303837540031640d8660066eb0c01cc0dcdd50171191980080098019bab300930393754601260726ea8008896600200314a115980099b8f375c607a00206f14a3133002002303e00140e081d8c004004896600200314bd7044cc0e4c0d8c0e8004cc008008c0ec0050381801001111919800800801912cc0040062980103d87a80008992cc004c0100062600e6607600297ae0899801801981e801206e303b00140e489919912cc004c0dc00626644b3001302a303437540051323232332259800981f001c4c966002606060746ea8006264646644b300130430038992cc004c0d400626464b300130460028074590431bae30440013040375400f159800981a000c56600260806ea801e0191641051640f881f0c0f8dd50034590401bae3040001375c6080004608000260766ea80062c81c8c0f40162c81d8dd7181d800981d801181d800981d000981a9baa0028b206630360011300430370058b2068375c6068002606a0026eb0c0cc0090312264600460600066eb4c0b800902c44c8c008c0b800cdd6981600120548b205018128009812000981180098110009810800980e1baa0018b2034301e0058b203837586038002603800460380026036002602c6ea80422c80a089660026016602a6ea800a26464646644b3001301f003899804180f00289980580100345901c180e0009bad301c002301c001301b0013016375400516405044b3001300b301537540051323232323298009bac301e0019bad301e0049bad301e003980f00124444b30013023005899806181100489980780089919912cc004c09800e01b16408c6eb8c08c004dd7181180298118024590200c078004c074004c070004c06c004c058dd5001459014112cc004c028c050dd500144c8c8c9660026038005133006301b003132598009807000c56600260326ea800a00b1640691598009806800c4c8c966002603e0050078b2038375c603a00260326ea800a2b30013011001899192cc004c07c00a00f164070603a00260326ea800a2c80b9017202e3017375400316406460340026034002602a6ea800a2c80988966002601260266ea800a2646464b3001301b002899804980d0018992cc004c034006264b3001301d001899192cc004c040006264b30013020001899807180f800804c5901d180d9baa0028acc004c03c00626464653001375a6042003375a6042007375a60420049112cc004c09401201d16408830210013020001301b375400516406480c8c064dd5000980e000c5901a180c1baa0028acc004c0300062b3001301837540050058b20328b202c4058602c6ea80062c80c0c064004c064004c050dd50014590121164020300900130043754013149a26cac80101", Type.Tuple([PolicyId]), [proxyPolicyId]), "PlutusV3"); + } +} +export class V0_4StakingVaultStakingVaultMint { + constructor(utxoRef, proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601" : "5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201", Type.Tuple([Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); + } +} +export class V0_4StakingVaultStakingVaultSpend { + constructor(utxoRef, proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601" : "5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201", Type.Tuple([Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); + } +} +export class V0_4StakingVaultStakingVaultElse { + constructor(utxoRef, proxyPolicyId, trace = false) { + _defineProperty(this, "Script", void 0); + this.Script = cborToScript(applyParamsToScript(trace ? "5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601" : "5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201", Type.Tuple([Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt() + }, { + ctor: 0n + }), PolicyId]), [utxoRef, proxyPolicyId]), "PlutusV3"); + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v0_4/index.js.map b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_4/index.js.map new file mode 100644 index 0000000000..18b3158f6e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v0_4/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["applyParamsToScript","cborToScript","Type","TPlutusData","PolicyId","String","Contracts","Module","Bool","Boolean","Tuple_VerificationKey_COSESign1","Tuple","Ref","COSESign1","Object","headers","payload","Optional","signature","ctor","HeaderMap","Headers","protected","unprotected","MultisigScript","Union","Signature","key_hash","AllOf","scripts","Array","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Destination","address","payment_credential","VerificationKey","stake_credential","Inline","Pointer","slot_number","transaction_index","certificate_index","datum","Literal","DatumHash","InlineDatum","ExtraProtocolRedeemer","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","Nonce","UTxO","transaction_id","output_index","Validity","lower_bound","bound_type","Finite","is_inclusive","upper_bound","OrderAction","OMint","amount","reserve_asset","ORedeem","ODeposit","principal","yield","OWithdraw","OStake","OUnstake","OrderDatum","owner","destination","action","data","OrderRedeemer","ProtocolRedeemer","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","ProxyDatum","logic","settings","Registry","treasury","usdr","order","staking_vault","susdr","Request","origin","ReserveAsset","asset","numerator","denominator","Settings","mint_permission","burn_permission","withdraw_permission","deposit_permission","stake_permission","unstake_permission","registry","reserve_assets","unstaked_yield_pot","SignedPayload_ProtocolRedeemer","nonce","SignedRedeemer_ExtraProtocolRedeemer","extra","signatures","StakingVaultRedeemer","Undefined","TreasuryRequest","VaultDatum","circulating_susdr","Import","V0_4OrderOrderSpend","constructor","proxyPolicyId","trace","_defineProperty","V0_4OrderOrderElse","V0_4ProtocolProtocolWithdraw","V0_4ProtocolProtocolElse","V0_4StakingVaultStakingVaultMint","utxoRef","V0_4StakingVaultStakingVaultSpend","V0_4StakingVaultStakingVaultElse"],"sources":["../../../../src/generated-types/v0_4/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\ntype Data = Exact;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n Bool: Type.Boolean(),\n Tuple_VerificationKey_COSESign1: Type.Tuple([\n Type.String(),\n Type.Ref(\"COSESign1\"),\n ]),\n COSESign1: Type.Object({\n headers: Type.Ref(\"Headers\"),\n payload: Type.Optional(\n Type.String()\n ),\n signature: Type.String(),\n }, { ctor: 0n }),\n HeaderMap: Type.String(),\n Headers: Type.Object({\n protected: Type.Ref(\"HeaderMap\"),\n unprotected: Type.Ref(\"HeaderMap\"),\n }, { ctor: 0n }),\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object({\n key_hash: Type.String(),\n }, { ctor: 0n })\n }),\n Type.Object({\n AllOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n AnyOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n AtLeast: Type.Object({\n required: Type.BigInt(),\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Before: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n After: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n Script: Type.Object({\n script_hash: Type.String(),\n }, { ctor: 6n })\n }),\n ]),\n Asset: Type.Tuple([\n Type.String(),\n Type.String(),\n ]),\n Destination: Type.Object({\n address: Type.Object({\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple([\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n ], { ctor: 0n })\n }),\n Type.Object({\n Pointer: Type.Object({\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ])\n ),\n }, { ctor: 0n }),\n datum: Type.Union([\n Type.Literal(\"NoDatum\", { ctor: 0n }),\n Type.Object({\n DatumHash: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n Type.Object({\n InlineDatum: Type.Tuple([\n TPlutusData,\n ], { ctor: 2n })\n }),\n ]),\n }, { ctor: 0n }),\n ExtraProtocolRedeemer: Type.Object({\n request_to_outputs: Type.Array(\n Type.BigInt()\n ),\n input_to_requests: Type.Array(\n Type.BigInt()\n ),\n treasury_input_idx: Type.BigInt(),\n treasury_output_idx: Type.BigInt(),\n vault_input_idx: Type.Optional(\n Type.BigInt()\n ),\n vault_output_idx: Type.Optional(\n Type.BigInt()\n ),\n }, { ctor: 0n }),\n Nonce: Type.Union([\n Type.Object({\n UTxO: Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ], { ctor: 0n })\n }),\n Type.Object({\n Validity: Type.Tuple([\n Type.Object({\n lower_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n upper_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n ], { ctor: 1n })\n }),\n ]),\n OrderAction: Type.Union([\n Type.Object({\n OMint: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 0n })\n }),\n Type.Object({\n ORedeem: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 1n })\n }),\n Type.Object({\n ODeposit: Type.Object({\n principal: Type.BigInt(),\n yield: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 2n })\n }),\n Type.Object({\n OWithdraw: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 3n })\n }),\n Type.Object({\n OStake: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n OUnstake: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 5n })\n }),\n ]),\n OrderDatum: Type.Object({\n owner: Type.Ref(\"MultisigScript\"),\n destination: Type.Ref(\"Destination\"),\n action: Type.Ref(\"OrderAction\"),\n data: TPlutusData,\n }, { ctor: 0n }),\n OrderRedeemer: Type.Union([\n Type.Literal(\"Execute\", { ctor: 0n }),\n Type.Literal(\"Cancel\", { ctor: 1n }),\n ]),\n ProtocolRedeemer: Type.Union([\n Type.Object({\n Mint: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequest\")\n ),\n }, { ctor: 0n })\n }),\n Type.Object({\n Burn: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequest\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n Withdraw: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequest\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n Deposit: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequest\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Stake: Type.Object({\n requests: Type.Array(\n Type.Ref(\"Request\")\n ),\n }, { ctor: 4n })\n }),\n Type.Object({\n Unstake: Type.Object({\n requests: Type.Array(\n Type.Ref(\"Request\")\n ),\n }, { ctor: 5n })\n }),\n ]),\n ProxyDatum: Type.Object({\n logic: Type.String(),\n settings: Type.Ref(\"Settings\"),\n }, { ctor: 0n }),\n Registry: Type.Object({\n treasury: Type.String(),\n usdr: Type.String(),\n order: Type.String(),\n staking_vault: Type.String(),\n susdr: Type.String(),\n }, { ctor: 0n }),\n Request: Type.Object({\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n origin: Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n ReserveAsset: Type.Object({\n asset: Type.Ref(\"Asset\"),\n numerator: Type.BigInt(),\n denominator: Type.BigInt(),\n }, { ctor: 0n }),\n Settings: Type.Object({\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n withdraw_permission: Type.Ref(\"MultisigScript\"),\n deposit_permission: Type.Ref(\"MultisigScript\"),\n stake_permission: Type.Ref(\"MultisigScript\"),\n unstake_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"Registry\"),\n reserve_assets: Type.Array(\n Type.Ref(\"ReserveAsset\")\n ),\n unstaked_yield_pot: Type.Object({\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple([\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n ], { ctor: 0n })\n }),\n Type.Object({\n Pointer: Type.Object({\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ])\n ),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n SignedPayload_ProtocolRedeemer: Type.Object({\n action: Type.Ref(\"ProtocolRedeemer\"),\n nonce: Type.Ref(\"Nonce\"),\n }, { ctor: 0n }),\n SignedRedeemer_ExtraProtocolRedeemer: Type.Object({\n extra: Type.Ref(\"ExtraProtocolRedeemer\"),\n payload: Type.Ref(\"SignedPayload_ProtocolRedeemer\"),\n signatures: Type.Array(\n Type.Ref(\"Tuple_VerificationKey_COSESign1\")\n ),\n }, { ctor: 0n }),\n StakingVaultRedeemer: Type.Undefined(),\n TreasuryRequest: Type.Object({\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n yield: Type.BigInt(),\n origin: Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 0n }),\n VaultDatum: Type.Object({\n circulating_susdr: Type.BigInt(),\n }, { ctor: 0n }),\n});\n\nexport const Bool = Contracts.Import(\"Bool\");\nexport type Bool = Exact;\nexport const Tuple_VerificationKey_COSESign1 = Contracts.Import(\"Tuple_VerificationKey_COSESign1\");\nexport type Tuple_VerificationKey_COSESign1 = Exact;\nexport const COSESign1 = Contracts.Import(\"COSESign1\");\nexport type COSESign1 = Exact;\nexport const HeaderMap = Contracts.Import(\"HeaderMap\");\nexport type HeaderMap = Exact;\nexport const Headers = Contracts.Import(\"Headers\");\nexport type Headers = Exact;\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Destination = Contracts.Import(\"Destination\");\nexport type Destination = Exact;\nexport const ExtraProtocolRedeemer = Contracts.Import(\"ExtraProtocolRedeemer\");\nexport type ExtraProtocolRedeemer = Exact;\nexport const Nonce = Contracts.Import(\"Nonce\");\nexport type Nonce = Exact;\nexport const OrderAction = Contracts.Import(\"OrderAction\");\nexport type OrderAction = Exact;\nexport const OrderDatum = Contracts.Import(\"OrderDatum\");\nexport type OrderDatum = Exact;\nexport const OrderRedeemer = Contracts.Import(\"OrderRedeemer\");\nexport type OrderRedeemer = Exact;\nexport const ProtocolRedeemer = Contracts.Import(\"ProtocolRedeemer\");\nexport type ProtocolRedeemer = Exact;\nexport const ProxyDatum = Contracts.Import(\"ProxyDatum\");\nexport type ProxyDatum = Exact;\nexport const Registry = Contracts.Import(\"Registry\");\nexport type Registry = Exact;\nexport const Request = Contracts.Import(\"Request\");\nexport type Request = Exact;\nexport const ReserveAsset = Contracts.Import(\"ReserveAsset\");\nexport type ReserveAsset = Exact;\nexport const Settings = Contracts.Import(\"Settings\");\nexport type Settings = Exact;\nexport const SignedPayload_ProtocolRedeemer = Contracts.Import(\"SignedPayload_ProtocolRedeemer\");\nexport type SignedPayload_ProtocolRedeemer = Exact;\nexport const SignedRedeemer_ExtraProtocolRedeemer = Contracts.Import(\"SignedRedeemer_ExtraProtocolRedeemer\");\nexport type SignedRedeemer_ExtraProtocolRedeemer = Exact;\nexport const StakingVaultRedeemer = Contracts.Import(\"StakingVaultRedeemer\");\nexport type StakingVaultRedeemer = Exact;\nexport const TreasuryRequest = Contracts.Import(\"TreasuryRequest\");\nexport type TreasuryRequest = Exact;\nexport const VaultDatum = Contracts.Import(\"VaultDatum\");\nexport type VaultDatum = Exact;\n\nexport class V0_4OrderOrderSpend {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5911bb010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004888c966002601400313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a37540091598009807800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024009017202e301837540072259800800c52f5c113301a3017301b00133002002301c00140652225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640592232330010010032233003001300200291111919800800802912cc004006200b13259800800c4cc010c08000801a26600a60400046600600600280f0c08000501d488c8cc00400400c896600200314c0103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444445300130060069802802c888ca6002003004801a0022223259800980a000c4c9660020030068992cc00400600f007803c01e264b3001302b003802c0210281bae00140ac60500028130c090dd5001c566002603200313259800800c01a264b3001001803c01e264b3001302b003899807000912cc00400a00f13259800800c66002015001898011817001a014805c02e01700b40bc605800481520108140dd6000c01e00e8158c0a000502618121baa0038acc004c03c006264b300100180344c966002003007803c4c966002605600713300e0012259800801401e264b30010018cc00402a00313002302e003402900b805c02e0168178c0b000902a40210281bac001803c01d02b1814000a04c3024375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605c0071330110012259800801402a264b30010018cc004036003130023031003403500e807403a01c8190c0bc00902d402d02b1bac001805402902e1815800a052375a002605400500740ac60500028130c090dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0ac00e00b00840a06eb400600e8158c0a000502618121baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815801c0160108140dd6800c01d02b1814000a04c3024375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815801c0160108140dd7000a0563028001409860486ea800e00a81090212042408481090212042302237540053300237586040603a6ea80448cdd79810980f1baa00101048888c8c8cc88c966002602c604a6ea801a264b3001301c3026375400315980099b8f375c6054604e6ea8004dd7180598139baa3016302737546028604e6ea8c96600200319800800c40060468022047023811c08d02d198011bac30143027375403604713233225330283372c9210d63726564656e7469616c3a3a200037326600e0049101001330180010023374a9001198151ba90014bd701bab3017302837540386eb8c0a8c09cdd5198011bac301430273754036047153302549013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f7264657200164091153302549132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f63726564001640906052604c6ea8c0a4c098dd5180998131baa30293026375400d15330244913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408c44a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980c18139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a98149baa0018992cc004006330010018800c099007409a04d0268132060302d302a375400315330284913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601a60526ea8c058c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601800446602860166eacc054c0a0dd5180a98141baa001002300100122259800980b18129baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302f0028acc004c06cc0a8dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200313259800800c04e264b30010018992cc00400602b13259800800c05a02d1332259800800c062264b30010018acc004c10800a330010128cc0040423300100e8cc0040323300100a8cc0040222b3001302e303d375400d13259800800c06a264b300100180dc06e03701b899912cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f0278992cc004c14400e26606802444b30010028acc004c0fcc138dd500944c96600200302b8992cc004006264b3001001816c4c966002003159800982b801466002007132598009822000c4c9660020030308992cc0040062b3001305a0028992cc004c11c006264b3001001819c4c966002003159800982e80146600200303581a208681a20b481a40d2069034417860b600282c8c15cdd50014566002609800313259800800c0ce264b300100181a40d20691332259800800c0da264b300100181bc0de06f1332259800800c0e6264b300100181d40ea075132598009832001c0f20768308dd6800c0e90641830800a0be375a00260c0005037418460bc00282e0dd6800982e80140d105e182d800a0b230573754005032415082a0c154dd5000c0c505740c6063031818a0b63058001415860a86ea800a2b300130490018acc004c150dd500140c205e82aa05e828905118291baa001817207a81720a881740ba05d02e416060aa0028298c15400a05902c81640b10561829800a0a2304f375402502a413113259800800c5660026080609e6ea8006264b300100181644c96600200302d816c4cc896600200302f8992cc00400606103081844cc89660020030328992cc004006067033819c4c96600260ba007159800803c0d2264b300100181ac0d606b035899912cc00400606f13259800800c0e207103881c44c96600260c400713010306201181ca0be375c0028310c17c00505d1bae001305e008417c60b800e82d206882d0dd6800c0cd05d182d000a0b0375a00260b2005030416860ae00282a8dd6000982b00140b605a82b8c15000505218281baa001815a09a815c0ae05702b415460a400482820508270dd7000a0a2304e00141306eb8004c13400904e1825800a092375c00260940048258c1200050461bae00130470024120608a0028218dd70009822001208a30420014100607c6ea801a03281da03280fa03280fa03280fa03280fa03280fa03280fa03281fa03301980cc0650431820000a07c3758002607e00501680b2080303d00140ec607a00501480a405202881f0c0ec005039181d801404a0250128092078303900140dc6072005010808404202081d0c0dc005035181b801403a01d00e8072070303500140cc606a00500c806403201881b0c0cc0050311819801402a01500a8052068303100140bc606200500880440220108190c0bc00502d18159baa00180320508032058803401a00d00640c0605a0028158dd70009816001205a302a00140a0604c6ea800e0028118888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020565980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81290251bac3028002375a604c0026466ec0dd418130009ba73027001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6056003337149101023a200098008054c0b000600a805100a181700144ca6002015302b00199b8a489023a200098008054c0b0006600e66008008004805100a18170012058302e00140ac66e29220102207d0000340a06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d20503758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720543371666e000056600266e2000520148a40c11481b902a002200c33706002901019b8600148080cdc7002001204e375c0068158dc5245022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408881108acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601\"\n :\n \"590882010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc00488c96600260120031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c03800626464b3001301c0028024590191bae301a0013016375400716405080a0c050dd50014896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a6103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a44444646466446644b30013011301d375400313259800980b980f1baa0018acc004cdc79bae3022301f37540026eb8c020c07cdd51808980f9baa300f301f3754646600c0022002660066eb0c03cc07cdd500b00e44cc040dd59808980f9baa0163374a9001198109811180f9baa330033758601e603e6ea80580712f5c11640751640746042603c6ea8c084c078dd51807180f1baa3021301e37540031640704464b30013012301e3754003132598009807180f9baa001899198038008800981198101baa0018b203c3008301f3754601e603e6ea8c088c07cdd5000c5901d1980400111980718021bab300f301f3754601e603e6ea8004008cc018dd6180f980e1baa01323375e6040603a6ea80040488966002601e60366ea800a2646644b300130230018992cc004c04cc07cdd5000c4c8c8c8c8c8c8c8c8ca60026058003302c0089816003cc0b001a605800b302c0049816001cdd61816001244444444b3001303500989980c181a00889980c00389980c00309980c00289980c00209980c0018acc004c090c0c0dd500144c8c8c8c8ca60026eb8c0e40066eb8c0e40166eb8c0e40126eb8c0e400e6eb8c0e40092222259800981f80344cc09802c89660020051598009818181e1baa01489919192cc004c11000a26605a6086006264b300130340018992cc004c11800626464b300130370018992cc004c124006266064609000205516411860886ea800a2b3001303c00189919194c004dd69825000cdd69825001cdd698250012444b3001304e004817c5904b0c128004c124004c110dd5001459042208430423754002608a00316410c60826ea800a2b300130390018acc004c104dd5001409a2c82122c81f903f181f9baa0018b208230420013042001303d37540291640ed132598009818981e9baa001899191919912cc004c11c00e264646644b3001304b0038980598258064590481bae3048001375c609000460900026eb0c1180162c8220dd698220009bad304400230440013043001303e37540031640f0608000481f22c81e060720026070002606e002606c00260626ea800a2c817a2c819060580026056002605400260520026050002604e002604c002604a00260406ea80062c80f0c0880062c8100dd718100009810800980e1baa0028b20343006006300100122232598009807800c4c8c96600260440050048b203e375c604000260386ea800e2b300130140018992cc004c0840062660106eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c5660026014003132598009810800c4cc020dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004cdc3a400c0031323322598009811800c4cc028dd61811000912cc00400a00f19800804cc09000a26002604a00480490224590201bad30200013021001301c375400715980099b874802000626464b3001302200280245901f1bad3020001301c375400715980099b874802800626464b3001302200280245901f1bad3020001301c375400715980099b874803000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa0024566002600c60246ea801e33001301630133754602c60266ea801e6eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50054c058c05cc05cc05cc05cc05cc05cc05cc04cdd50054dd5980298099baa00a48888c8cc00400401488c966002601a003133009006375c603a60346ea800a2b30013012001899198008009bac301e301b375400644b30010018a518acc004cc014014c07c006266004004604000314a080d101d45660026010003132330010013758603c60366ea800c896600200314a115980099802802980f800c528c4cc008008c08000501a203a8acc004cdc3a400c003132337126eb4c078004c8cc004004dd6180f9810001112cc0040062900044cc89660026601001000513370000290014400501d1810000998010011810800a03c301a375400515980099b87480200062646644b30013015301c3754005159800980a980e1baa30203021003899b89375a6040603a6ea8008006266e20dd69810180e9baa002001406d14a080d8c078004dd6980f180d9baa003301a3754601460346ea80162b30013370e9005000c4c8cc8966002602a60386ea800a2b30013015301c3754604060420071337120026eb4c080c074dd500144cdc40009bad3020301d375400480da294101b180f0009bad301e301b375400660346ea8c074c068dd5002c4cc02c010cdd2a400466038603a60346ea80092f5c080c10182030406080c1018180c1baa001459011202218069baa00818051baa0038b2010180480098021baa0098a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4OrderOrderElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5911bb010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004888c966002601400313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a37540091598009807800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024009017202e301837540072259800800c52f5c113301a3017301b00133002002301c00140652225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640592232330010010032233003001300200291111919800800802912cc004006200b13259800800c4cc010c08000801a26600a60400046600600600280f0c08000501d488c8cc00400400c896600200314c0103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444445300130060069802802c888ca6002003004801a0022223259800980a000c4c9660020030068992cc00400600f007803c01e264b3001302b003802c0210281bae00140ac60500028130c090dd5001c566002603200313259800800c01a264b3001001803c01e264b3001302b003899807000912cc00400a00f13259800800c66002015001898011817001a014805c02e01700b40bc605800481520108140dd6000c01e00e8158c0a000502618121baa0038acc004c03c006264b300100180344c966002003007803c4c966002605600713300e0012259800801401e264b30010018cc00402a00313002302e003402900b805c02e0168178c0b000902a40210281bac001803c01d02b1814000a04c3024375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605c0071330110012259800801402a264b30010018cc004036003130023031003403500e807403a01c8190c0bc00902d402d02b1bac001805402902e1815800a052375a002605400500740ac60500028130c090dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0ac00e00b00840a06eb400600e8158c0a000502618121baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815801c0160108140dd6800c01d02b1814000a04c3024375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815801c0160108140dd7000a0563028001409860486ea800e00a81090212042408481090212042302237540053300237586040603a6ea80448cdd79810980f1baa00101048888c8c8cc88c966002602c604a6ea801a264b3001301c3026375400315980099b8f375c6054604e6ea8004dd7180598139baa3016302737546028604e6ea8c96600200319800800c40060468022047023811c08d02d198011bac30143027375403604713233225330283372c9210d63726564656e7469616c3a3a200037326600e0049101001330180010023374a9001198151ba90014bd701bab3017302837540386eb8c0a8c09cdd5198011bac301430273754036047153302549013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f7264657200164091153302549132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f63726564001640906052604c6ea8c0a4c098dd5180998131baa30293026375400d15330244913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408c44a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980c18139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a98149baa0018992cc004006330010018800c099007409a04d0268132060302d302a375400315330284913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601a60526ea8c058c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601800446602860166eacc054c0a0dd5180a98141baa001002300100122259800980b18129baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302f0028acc004c06cc0a8dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200313259800800c04e264b30010018992cc00400602b13259800800c05a02d1332259800800c062264b30010018acc004c10800a330010128cc0040423300100e8cc0040323300100a8cc0040222b3001302e303d375400d13259800800c06a264b300100180dc06e03701b899912cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f0278992cc004c14400e26606802444b30010028acc004c0fcc138dd500944c96600200302b8992cc004006264b3001001816c4c966002003159800982b801466002007132598009822000c4c9660020030308992cc0040062b3001305a0028992cc004c11c006264b3001001819c4c966002003159800982e80146600200303581a208681a20b481a40d2069034417860b600282c8c15cdd50014566002609800313259800800c0ce264b300100181a40d20691332259800800c0da264b300100181bc0de06f1332259800800c0e6264b300100181d40ea075132598009832001c0f20768308dd6800c0e90641830800a0be375a00260c0005037418460bc00282e0dd6800982e80140d105e182d800a0b230573754005032415082a0c154dd5000c0c505740c6063031818a0b63058001415860a86ea800a2b300130490018acc004c150dd500140c205e82aa05e828905118291baa001817207a81720a881740ba05d02e416060aa0028298c15400a05902c81640b10561829800a0a2304f375402502a413113259800800c5660026080609e6ea8006264b300100181644c96600200302d816c4cc896600200302f8992cc00400606103081844cc89660020030328992cc004006067033819c4c96600260ba007159800803c0d2264b300100181ac0d606b035899912cc00400606f13259800800c0e207103881c44c96600260c400713010306201181ca0be375c0028310c17c00505d1bae001305e008417c60b800e82d206882d0dd6800c0cd05d182d000a0b0375a00260b2005030416860ae00282a8dd6000982b00140b605a82b8c15000505218281baa001815a09a815c0ae05702b415460a400482820508270dd7000a0a2304e00141306eb8004c13400904e1825800a092375c00260940048258c1200050461bae00130470024120608a0028218dd70009822001208a30420014100607c6ea801a03281da03280fa03280fa03280fa03280fa03280fa03280fa03281fa03301980cc0650431820000a07c3758002607e00501680b2080303d00140ec607a00501480a405202881f0c0ec005039181d801404a0250128092078303900140dc6072005010808404202081d0c0dc005035181b801403a01d00e8072070303500140cc606a00500c806403201881b0c0cc0050311819801402a01500a8052068303100140bc606200500880440220108190c0bc00502d18159baa00180320508032058803401a00d00640c0605a0028158dd70009816001205a302a00140a0604c6ea800e0028118888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020565980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81290251bac3028002375a604c0026466ec0dd418130009ba73027001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6056003337149101023a200098008054c0b000600a805100a181700144ca6002015302b00199b8a489023a200098008054c0b0006600e66008008004805100a18170012058302e00140ac66e29220102207d0000340a06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d20503758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720543371666e000056600266e2000520148a40c11481b902a002200c33706002901019b8600148080cdc7002001204e375c0068158dc5245022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408881108acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601\"\n :\n \"590882010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc00488c96600260120031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c03800626464b3001301c0028024590191bae301a0013016375400716405080a0c050dd50014896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a6103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a44444646466446644b30013011301d375400313259800980b980f1baa0018acc004cdc79bae3022301f37540026eb8c020c07cdd51808980f9baa300f301f3754646600c0022002660066eb0c03cc07cdd500b00e44cc040dd59808980f9baa0163374a9001198109811180f9baa330033758601e603e6ea80580712f5c11640751640746042603c6ea8c084c078dd51807180f1baa3021301e37540031640704464b30013012301e3754003132598009807180f9baa001899198038008800981198101baa0018b203c3008301f3754601e603e6ea8c088c07cdd5000c5901d1980400111980718021bab300f301f3754601e603e6ea8004008cc018dd6180f980e1baa01323375e6040603a6ea80040488966002601e60366ea800a2646644b300130230018992cc004c04cc07cdd5000c4c8c8c8c8c8c8c8c8ca60026058003302c0089816003cc0b001a605800b302c0049816001cdd61816001244444444b3001303500989980c181a00889980c00389980c00309980c00289980c00209980c0018acc004c090c0c0dd500144c8c8c8c8ca60026eb8c0e40066eb8c0e40166eb8c0e40126eb8c0e400e6eb8c0e40092222259800981f80344cc09802c89660020051598009818181e1baa01489919192cc004c11000a26605a6086006264b300130340018992cc004c11800626464b300130370018992cc004c124006266064609000205516411860886ea800a2b3001303c00189919194c004dd69825000cdd69825001cdd698250012444b3001304e004817c5904b0c128004c124004c110dd5001459042208430423754002608a00316410c60826ea800a2b300130390018acc004c104dd5001409a2c82122c81f903f181f9baa0018b208230420013042001303d37540291640ed132598009818981e9baa001899191919912cc004c11c00e264646644b3001304b0038980598258064590481bae3048001375c609000460900026eb0c1180162c8220dd698220009bad304400230440013043001303e37540031640f0608000481f22c81e060720026070002606e002606c00260626ea800a2c817a2c819060580026056002605400260520026050002604e002604c002604a00260406ea80062c80f0c0880062c8100dd718100009810800980e1baa0028b20343006006300100122232598009807800c4c8c96600260440050048b203e375c604000260386ea800e2b300130140018992cc004c0840062660106eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c5660026014003132598009810800c4cc020dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004cdc3a400c0031323322598009811800c4cc028dd61811000912cc00400a00f19800804cc09000a26002604a00480490224590201bad30200013021001301c375400715980099b874802000626464b3001302200280245901f1bad3020001301c375400715980099b874802800626464b3001302200280245901f1bad3020001301c375400715980099b874803000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa0024566002600c60246ea801e33001301630133754602c60266ea801e6eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50054c058c05cc05cc05cc05cc05cc05cc05cc04cdd50054dd5980298099baa00a48888c8cc00400401488c966002601a003133009006375c603a60346ea800a2b30013012001899198008009bac301e301b375400644b30010018a518acc004cc014014c07c006266004004604000314a080d101d45660026010003132330010013758603c60366ea800c896600200314a115980099802802980f800c528c4cc008008c08000501a203a8acc004cdc3a400c003132337126eb4c078004c8cc004004dd6180f9810001112cc0040062900044cc89660026601001000513370000290014400501d1810000998010011810800a03c301a375400515980099b87480200062646644b30013015301c3754005159800980a980e1baa30203021003899b89375a6040603a6ea8008006266e20dd69810180e9baa002001406d14a080d8c078004dd6980f180d9baa003301a3754601460346ea80162b30013370e9005000c4c8cc8966002602a60386ea800a2b30013015301c3754604060420071337120026eb4c080c074dd500144cdc40009bad3020301d375400480da294101b180f0009bad301e301b375400660346ea8c074c068dd5002c4cc02c010cdd2a400466038603a60346ea80092f5c080c10182030406080c1018180c1baa001459011202218069baa00818051baa0038b2010180480098021baa0098a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4ProtocolProtocolWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"596880010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492b657870656374207661756c745f646174756d3a205661756c74446174756d203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888888888888888896600264653001302100198109811000cdc3a400930210024888966002600460426ea800e264b3001005899914c004888c966002600c00313259800800c00e264b300100180240120090048992cc004c0c000e00d00540b46eb80050301816800a056302937540091598009802800c4c9660020030038992cc0040060090048024012264b30013030003803401502d1bae00140c0605a0028158c0a4dd50024009026204c3027375400722259800980298139baa0038992cc00400600513259800800c4c9660020030048992cc004006264b3001302d0018acc004cdc4a400860580030068992cc004c0c8012264b3001300c0018acc004c0bcdd5003402601081822b3001300b0018992cc00400601313259800800c02a01500a8992cc004c0d800e01900b40cc6eb400601481b0c0cc00503118179baa0068acc004c03c0062b3001302f375400d0098042060804205840b08160c0b4dd5002c01d02f18049816000a054803205c3754003005802c01600a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b300130053027375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0c800e01100740bc6eb400600c8190c0bc00502d1bae001302e00240bc60580028150c0a0dd5001c0050254888c966002600c00313259800800c00e264b30010018024012009132598009818001c01a00a8168dd6800c0110301816800a056302937540091598009802800c56600260526ea801200700240a900240988130c09cdd5001a44446465300122259800980598169baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130390028cc00401a33001001804c02100e402100b402103640220110088042074303700140d46eb4004c0d800a00a81b8c0d0005032181a001400e007003801a06a303200140c0605c6ea800e002815a444b3001300b302d375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0fc00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c11000e02901341046eb80050441820800a07e375c00260800048208c0f800503c40390144039011403903c1bac001806c03503f181e000a074303c002805c02e01700b40f4607400281c0dd6800981c801402103a181b800a06a375a002606c00500540dc60680028190c0d000a007003801c00d0351819000a060302e375400700140ad223233001001003223300300130020024889660026016605a6ea8042264b300100180a44c96600200313259800800c05a264b30010018992cc00400603113259800800c06603313259800981c801c566002602460686ea801a264b300100180dc4c96600200301c80e44cc896600200301e8992cc00400603f01f899912cc00400604313259800800c08a045022899912cc00400604913259800800c09604b025899912cc00400604f13259800800c4c9660020030298992cc0040062b3001304900289980c007112cc00400a26603401a44b30010028cc00401e330010058cc004dc3a400d370e90044dc3a4014911192cc004c0a8c130dd500e44c9660020030338992cc004006264b300100181ac4c966002003159800982a80144cc8966002606000313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205a81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c0bc006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b503e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b1598009819800c4c9660020030398992cc00400607503a8992cc004c16800e26605200244b3001002803c4c96600200319800800c4c008c17400e07c816a07d03e81f40f905e182d80120b281da0ae375800303a81d20b43057001415460a66ea80162b3001300a0018992cc00400607313259800800c0ea07513259800982d001c4cc0a400489660020050078992cc0040063300100189801182e801c0f902d40fa07d03e81f20bc305b002416503b415c6eb000607503a416860ae00282a8c14cdd5002c566002601200313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205c81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c020006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b903e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b0384140828105020a0414082804c966002605e00313259800800c0e2264b30010018acc004c16000a3300100180440e502d40e505540e607303981ca0b23056001415060a46ea800a2b3001302e0018992cc00400607113259800800c56600260b0005159800981898299baa0018992cc00400607513259800800c4c96600200303c8992cc0040062b3001305c0028cc00400e3300100180640f503240f503240f505940f607b03d81ea0ba305a001416060b400503b81dc0ee07682d8c160005056182a1baa00181ca0a281ca0aa81cc0e6073039416460ac00282a0c148dd500140dd04f209e3050375400260a06ea800e06c829206d03681b40d90561829800a0a2305300281a40d2069034415060a20028278c134dd500e40c904a09980f80c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00641393702900048888c8cc004004014896600200310058992cc00400626600860b000400d133005305800233003003001415860b000282aa6e012001918291829800c8c148c14cc14c0066e95200048888888c8c8c8cc88c96600200313259800981c982d9baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b3001001829414a26644b300100182a44c96600200315980098398014660020251980080846600201d19800806466002015198008044566002609860dc6ea801a264b300100182b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a899912cc0040060b913259800800c1760bb05d82ec4cc896600200305f8992cc0040060c1060830418226644b300100183144c966002003063831c18e0c713259800984100801c4cc144048896600200519800809466002605c6100026ea818a4610802610a02610a02610a020032232330010010032259800800c52845660026006610e0200314a313300200230880100142040484280a4610802610a02610a02610a02610a02610a02610a02610a02003374a90014dc02400491111119192cc0066002444646644b3001306b0028acc004c1acc23404dd5000c5300103d87a80008a6103d8798000422c051598009837001456600260dc611a026ea80062980103d87a80008a6103d87b8000422c0513322598009836800c530103d87b80008acc004c1b0006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000423804847008dd69849809848009baa0038a6103d8798000423404846808dd69848809847009baa003308d01375400284580908b011845809baa00130020033001003919191919912cc004c1ac00a29422b3001306e0028cc004cdd79848809847009baa0014c103d87b8000a50a51422c0513233225980098370014528c56600260da005133225980098379849009baa3041309301375400d133710004003133712004002848008dd6984a009848809baa0035980098369848009baa303f309101375400f100189806000a11c028a50423804847008c23804dd50009bad309201308f013754008612202611c026ea800508b01211602308b013754002611e02612002006611c026116026ea8004c23404004c22404dd5000cc0d8c22004dd50042444b30013068308a0137540031323300a3758611e026118026ea81ac8cdd79848009846809baa001002308e01308b01375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c24004c23404dd50014c24004c23404dd5000c8c8c96600260d8611e026ea8c24c04c2500400a2003132598009836800c4c034cc24c04dd418061bad309401309101375400497ae08acc004c1b800620051002423804847008c23c04dd5000a11a02309201001308e0137540028029300103d87b8000a50a514228051980099baf9800981d9846809baa002981d9846809baa001919192cc004c1b0c23c04dd5184980984a0080144006264b3001306d0018980699849809ba83040375a6128026122026ea80092f5c11598009837000c400a200484700908e011847809baa001423404612402002611c026ea8005005260103d8798000a50a5142280514a084500908a01211402308e01308b01375400260106116026ea81a908801233001308b01308801375401122232330010010042259800800c40122660066120020026600400461220200284700a44b30010018a40011300533002002308e01001422c0522980099804001119baf308e01308b013754611c026116026ea8c0e4c22c04dd5000980399846809ba90024bd70528528a10e02918329844009baa308c0132330010010022259800800c52f5c303d87a80008101800044c8cc89660033001306a308d0137546122020074a14a284580a2661200330014a14c103d87a8000a60103d8798000422c0466120026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c24c0400400e29462660040046128020028468090910144cc24006600294298103d87a8000a60103d8798000422c0466120026e9c0092f5c1133090019800a51a60103d87a8000a60103d8798000422c0466120026e9ccc24004dd400080125eb8108b012116023758611e026120020026eb4c23c04008cc008008c23c0400508c01489660020031480022600a66004004611c0200284580a4444653001001802c012006800888896600200710018acc00400a2a6611c029211d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012612802007309401002cc004c24c0400e6eb4c24c0400a0028029004212202424405222598008014530103d87a80008acc004c1a00062606e6611a02611c0200497ae08cc00400e611e02005303a001400c84400908c01488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064234051330050053094010044234046eb8c23404004dd5984700800984800800a11c0214bd6f7b63048896600260d06114026ea800e264b300100180144c966002003003801c00e264b3001309201003802c01108f011bad001801a12402308f010014234046116026ea800e00284400a44646600200200644b30010018a5eb8226644b30013375e612202611c026ea8c24404c23804dd5181e1847009baa002300a3309001375200a97ae08998480080119802002000c4cc01001000508b01184780800984800800a11a029184600984680984680984680984680984680800c8c23004c23404c23404c23404c23404c23404c23404006444653001001802400d0011112cc00400a2b30010018a518a50423c05159800800c5284566002660086122020046eb4c24404006330010039849008014c248040050034528211602423c0484780a444b30013068308a01375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002612e0200519800803c6600200b132598009838800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd5002456600260e000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001309e010038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b300130a30100380b40550a0011bae001428c0461400200284f008dd7000984f80801214002309d01001426c05010426c046eb000601f00f42780461360200284c808dd6800984d00801403109b01184c00800a12c023094013754009159800983a000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c2840400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c2980400e033018428c046eb80050a601185180800a14202375c002614402004851808c2800400509e01404d09e011bac00180940490a101184f00800a13802375a002613a0200500f42780461360200284c808dd6800984d00801403109b01184c00800a12c0230940137540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd50024566002609400313259800800c02e264b3001001806403201913259800984d80801c03a01a84c008dd6800c03109b01184c00800a12c0230940137540091598009824800c4c96600200300b8992cc00400601900c80644c96600261360200700e806a13002375a00300c426c0461300200284b008c25004dd500240290910121220242440484880909101212202309201375400700941a500940e1009425004612a02002849808c2540400a00f007803c01d09601184980800a12202309301002802c01600b005425004612202002847808c2440400a007003801c00d09201184780800a11a02308b013754007001422005222329800800c01200680088896600200510018cc00400e61240200533004309101002001400c84780a4611802611a02611a02611a02611a020032225980098341845009baa0038992cc00400600513259800800c00e0070038992cc004c2480400e00b004423c046eb4006006849008c23c0400508d011845809baa003800a11002912cc0040062900044c014cc008008c2380400508b01488cdc199b82002375a606e6114026ea8004dd6981c1845009baa0019b88480024466062004466ebcc23804c22c04dd50009ba700292cc004cdc4000a40011303a0018800a10c0248888888888888888888888a6002602a02b2301400198090094c0400424446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803214a02899802802985600802214a02375c614a020026eb4c29804004c2a0040050a601198098020018a400123014001984f009baa0179802802c88c9660026104026142026ea8006264b30010018cc0040062b30013375e60446146026ea800cc29804c28c04dd5002456600266ebcc144c28c04dd50009853009851809baa0038800c260050a001425c050a00142580500d42580612c030960184b00a1500230a50130a201375400309001427c04609c6142026ea8c13cc28404dd50012444444445300122223233001001005223259800984600800c4c94cc2b804cdcb248121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660b06ea4005220100132598009847009858009baa001899194c004dd7185b00800cdd7185b00985b80800cdd7185b008012444a66168029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330b4013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660bc6ea400522010015330b4013372c9201187665726966795f65643235353139207061796c6f61643a20003732660bc6ea400922010015330b4013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660bc6ea400d2201001325330b5013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660bf3001001a60103d87a8000a60103d879800042d00491010010019800800c00a006b950c2d804004dd6185a009858809baa0018a998578099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660b26ea400922010014a0857008c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c616c020020091305f330b501374e00297ae0899801801985b808012160023758616a02002859808dd71859009857809baa0028acc004c22c04006264a6615c0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416c6c4f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b804910100100132330010010022259800800c528c5660026600c00c616a0200313300200230b6010018a5042bc04859808dd61859009857809baa0028acc004c23c04006264a6615c0266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416e794f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013302e0012330050050013758616402615e026ea800a2b3001306600189919912998580099b96490112436865636b696e672041744c656173743a20003732660b46ea00092201001325330b1013372c92011941744c656173742073617469736669656420636f756e743a20003732660b66ea00052201001325330b2013372c92011041744c6561737420726573756c743a20003732660b93001001a60103d87a8000a60103d879800042c4049101001001337120060033001001a400122598009980400400144c0bc00620028588090291bad30b3010013758616602616802002615e026ea800a2b300130650018992998570099b9649111436865636b696e67204265666f72653a20003732660b06ea00052201001325330af013372c92010f4265666f726520726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc49bad30b50130b20137540020071337106eb4c2d404c2c804dd5000801a15e028a5042bc046168020026160026ea8c178c2c004dd50031bad30b20130af0137540051598009832000c4c94cc2b804cdcb24910436865636b696e672041667465723a20003732660b06ea00052201001325330af013372c92010e416674657220726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc48019bad30b50130b20137540031337100066eb4c2d404c2c804dd5000a15e028a5042bc046168020026160026ea8c2cc04c2c004dd50031bad30b20130af0137540051325330ae013372c920111436865636b696e67205363726970743a20003732660b06ea40052201001325330af013372c92010f53637269707420726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232330010010072259800800c528456600266ebc00cc2c804c2d8040062946266004004616e020028580090b401181619859009ba90014bd701bae30b20130af0137540048560090ac0121580242b0048560090ac011856809baa0019112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a15002912cc004cdc4000a400114c103d87a8000899804001000a14e029112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a1500248888ca60024444446644646644b30013370e66e04dd6985d80985c009baa30bb01003375a6176026170026ea8c2ec04010006264b30013370f30013758606c6172026ea80329000488cc89660033001309a01001a50a5142e8051325980099b893302300100598008044dd7186080801cdd7186080986100801a036899b800040018a9985e00a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642ec0466e08004016200685d008dd6185f00985d809baa00232980080552000912cc004cdd79813185f009baa002374e0071337000026eb4c1b0c2f804dd5001440050bb01204a3758617c026176026ea800902219b8100200a8801454cc2dc052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001642d804b3001301c0098a40031480090b501454cc2d8052415a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e74001642d4046eacc2e404c2e8040056600261260260200071480022b300100385800c4c96600261760200915980099b8f375c616c0200291104555344720089bad30b7010018a9985a80a491d657870656374206e616d65203d3d20636f6e7374616e74732e75736472001642d0050b10142e00461720200685b8090b301185c80800998119bab301b30b301375400a6eb8c184c2cc04dd5180f9859809baa0069800802cdd7185b009859809baa301f30b301375400d003801200e9111192cc004c23c04c2c404dd5000c4c96600266ebcc2d804c2cc04dd5185b009859809baa001302f330b501375200a97ae08acc004c23c0660026eacc184c2cc04dd5000c01691010d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b5013754007006a4504555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c54cc2c8052412d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001642c40460c06166026ea80062a661620292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b10149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001642bc046600e008003222232598009847809858809baa0018992cc004cdd7985b009859809baa30b60130b301375460c26166026ea8004c0bccc2d404dd4802a5eb822b3001308f0198009bab306130b301375460c26166026ea800600b48810d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b501375460c6616a026ea800e00d48904555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c288050b10118301859809baa306130b301375400315330b1014901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b1014914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001642bc046600e0080029112cc004c2340402e26644b30019800985a809859009baa058815cc0bcc2c804dd504880cdd5980f1859009baa091014029159800998139bac30b50130b2013754122026eb8c0c4c2c804dd5180f1859009baa0588acc0066002660406eb0c2d404c2c804dd5048809bae305f30b2013754603c6164026ea81626eb0c180c2c804dd5000cdd618179859009baa05848896600266e1cc05800cc0580162b300130110028cc00400e005223259800984a80985b809baa001899192cc004c25c04c2e404dd5000c4c8ca60026603e010003375860486178026ea80126eb4c2fc0400922259800984e00985f009baa0038acc004cdc499199119b8330713370066e08004dd698379861009baa003002002375a60dc6180026ea8004dd698371860009baa00830c20130bf0137540073001375660da617e026ea8c1b4c2fc04dd50054dd71861008014dd718610098618080120388acc004cdc38009bad306d30bf01375400f13375e6e9c010c09cc2fc04dd5003c5282178028a5042f00515330bd014914365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001642f0043758617c02617e020026174026ea800629410b7011833185c809baa3301200400130bb0130b80137540030aa0142d4046601a00e002810214c0285900a14a02859009159800cc004dd6182f9859009baa091019bac30b50130b2013754003330b401306030b2013754603c6164026ea8160cc2d0053001054455534472004bd702444b30013370e6028004602c00b19800802c00a4464b300130950130b70137540031325980099baf30bc0130b90137540026178026172026ea8c2f004c2e404dd5002456600266ebcc198c2e404dd50009833985c809baa30bc0130b901375400913370f3001375660ce6172026ea80066eb8c2f0040166eb8c19c015016180d9bad306730b901375400914a085b00a29410b601185d80985c009baa00185780a16a023300d00500140810a10142c804899b87980082c42440690004dd6982f9859009baa0019bad303130b2013754003002401530010029bac30b50130b201375400323017375a60c26166026ea8005007454cc2c005241856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a2020202029001642bc0515330b0014918f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642bc050ad0142bc0515330b0014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642bc046eb0c2cc04c2c004dd50141859809858009baa092018992cc004c2340403226644b3001980098309859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc0066002660426eb0c2d804c2cc04dd5049009bae306030b3013754603e6166026ea81666eb0c184c2cc04dd5000ccc2d404c184c2cc04dd5180f9859809baa059330b5014c1054455534472004bd702444b30013370e602e006602e00b159800980900146600200700291192cc004c25804c2e004dd5000c4c8c966002612e026174026ea800626464b3001337120033001375660d6617a026ea8c1acc2f404dd5003cdd71860008044dd718600098608080420348acc004cdc380098371bad306b30bd01375400913375e618002618202004604a617a026ea801229410ba014528217402375a617e020026176026ea800629410b8011833985d009baa3301300400130bc0130b90137540030ab0142d8046601c00e002810a14e0285980a14c02859809159800cc004dd618301859809baa092018014dd6185b009859809baa0019bac303030b30137540b2801a266e1e60020b309201a4001375a60c06166026ea80066eb4c0c8c2cc04dd5000c0090064c00400a6eb0c2d804c2cc04dd5000c8cdc41bad306230b4013754002900020108a9985880a4819e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001642c0050ae0142c00515330b1014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018acc004c2440403226644b3001980098301859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc004cc896600266e1cc058008c0580122b300130110018cc00400a003223259800984a80985b809baa001899192cc004c1c4c2e404dd5000c4c96600266e1cdd6985f008009bad306930bb01375400713375e617c02617e0200260466176026ea800e29410b801185d009baa0018a5042dc0460cc6172026ea8cc048010004c2ec04c2e004dd5000c2a8050b50119806803000a04085300a1640285280a16402330213758616c026166026ea824804dd718301859809baa301f30b30137540b26eb0c184c2cc04dd5000c5660033001375860c06166026ea8248060053758616c026166026ea80066eb0c0c0c2cc04dd502ca0068984800cc0041661240398008014dd6185b009859809baa00192cc004c060dd69831185a009baa00189848809bad306130b401375400314a08588090084dd698301859809baa0019bad303230b3013754003002401915330b1014901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001642c0050ae0142c00515330b1014901896578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018992cc004c1a4036330013758616a026164026ea80aa44444b30013370e603000a60300091598009809801c4cdc4800cc0040160074800244464b300130980130ba0137540031332259800984e80985e009baa0018992cc004006330010018acc004cdd7981e985f009baa00330c10130be01375400f15980099baf306c30be013754002618202617c026ea800e264b3001309f0130be013754003132325980099b87375a6188020046eb4c1bcc30404dd5003456600266e1cdd69862008009bad306e30c101375400d15980099baf30c40130c501001302930c101375400d1337000113001375660de6182026ea8c1bcc30404dd50054dd71862008064dd7186200986280806203c8a9985f80a493665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001642f80515330bf0149126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001642f80515330bf014912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001642f804618802002617e026ea80062a6617a02921184578706563746564204f4465706f73697420616374696f6e001642f00460d6617c026ea80061660285d80a1640285d80a162028142162030b10185880c2c4050c301186000985e809baa00185580a1740230be0130bb01375400260d06176026ea8c1a4c2ec04dd500242b4050b80119808003801205285400a1680285380a16802985a809859009baa094014889660033001303430b50137540b702e9819185a809baa094019bab302130b501375412802806a26644b300159800980d8014528c660026128020034a14a285a0090b40144c966002612a02616e026ea80063300198009bac30bb0130b801375412e03375c606e6170026ea8c090c2e004dd502f4dd71833185c009baa302430b80137540bd375a6176026170026ea80050094dd6985d80985c009baa30bb01980084b80cdd7185d80985c009baa302430b80137540bd375a60ca6170026ea80126eb4c0dcc2e004dd500220189b810029812985c009baa00448888c8c8cc8966002613a02617e026ea8016264b30013370e66e04dd6986200800802802456600266e1cdd698620098628080080145660026020017159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c01054455534472004bd7052000403915980099b8900398009bac306e30c1013754140034800244b30013375e618c026186026ea8008c31804c31c04c31c04c31c04c31c04c31c04c31c04c31c04c31c04c30c04dd5034c4cdc0000cc004dd598389861809baa0029bae307130c3013754605e6186026ea81a691010455534472004081100143000481c22b3001323371266e0003403260026eb0c0fcc30804dd5034520009119192cc004c0a8006266e0000ccdc199b82001375a60e8618c026ea8010dd698399863009baa0048801a1860298008024dd7186400800cdd7186400986480800a0443758618e026188026ea800902b1bab30c40130c50130c501980085000cdd71862009860809baa302d30c10137540cf375a60dc6182026ea80366eb4c100c30404dd5006a02a899b879800833c28006600e019375a60dc6182026ea80366eb4c100c30404dd5006c03d014005c54cc2fc052418d6578706563740a20202020202076616c69646174655f726573657276655f64656c74615f666f725f6465706f736974280a202020202020202076616c75655f64656c74612c0a202020202020202073657474696e67732e726573657276655f6173736574732c0a202020202020202072657175697265645f757364725f6261636b696e672c0a20202020202029001642f80515330bf014912b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001642f80515330bf014919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001642f805159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c1054455534472004bd704c1c800d00e44cdc3cc00419e14003300700c9bad306e30c101375401b375a60806182026ea803601e80a002e2a6617e02921b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001642f80485f00a2a6617e029213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001642f80515330bf014913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001642f8053001375860da6180026ea827c066eb8c0fcc30004dd518161860009baa0669bae306e30c001375460586180026ea819a6eb4c30c04c30004dd5002a02485500a17a023004001375a61820261840200cb30013021004899b833370400e0020091480010ba011bad30bf010044284050b501180f985b809baa0038a9985a80a4812e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001642d00530010039bac30b80130b501375400323005375a60c8616c026ea800500a4c00400e9000488cdc00009bad306430b701375400480f22a6616602921886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6465706f7369745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c8048acc004c1a003626644b30019800980e185a009baa05a816cc0c4c2d004dd504980cdd59810185a009baa093014031159800998149bac30b70130b4013754126026eb8c2dc04c2d004dd51810185a009baa05a899912cc004c24c04c2d404dd5000c4c8cc896600260100051598009804000c566002b30013096010018a518980e801216c028992cc004c0780062b30019800998141bac30bd0130ba013754132026eb8c19cc2e804dd51813185d009baa0609bac306830ba01375400f330bc01306830ba013754604c6174026ea8180cc2f005301054455534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e8c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b300198009bac306730ba013754132033758617a026174026ea801e661780260446174026ea8c098c2e804dd50301985e00a60106457355534472004bd702444b30013370e6038004603c01719800805c00a4464b3001309d0130bf0137540031325980099baf30c40130c10137540026188026182026ea8c31004c30404dd5002456600266ebcc1b8c30404dd500098379860809baa30c40130c101375400913370f3001375660de6182026ea80066eb8c310040166eb8c1bc01501e2cc004c2780402626eb4c1bcc30404dd500244cdc199b82375a60de6182026ea80100240290be014528217c028a5042f8046186026180026ea800616e0285e808cc05401400502842a4050ba012264b300130980130ba0137540031325980099b87375a617e0200266e000140222b30013370e6eb4c2fc04c30004004cdc0002001c56600266e1e60026eacc090c2f004dd504d80cdd71812185e009baa302830bc0137540c54881057355534472004064007130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd503152201045553447200406515330ba01491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001642e40515330ba014914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001642e40515330ba0149140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b801491dd6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001642dc0515330b801491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001642dc0515330b801491186578706563742073757364725f746f5f6d696e74203e2030001642dc04b30013096010018802c4cdc199b8200500100242d80515330b7014913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001642d80515330b701491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001642d80515330b7014911d657870656374207661756c745f757364725f6265666f7265203e3d2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491866578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa09401899912cc006600260426168026ea816a05b303130b401375412603375660406168026ea824c0500c4566002660526eb0c2dc04c2d004dd5049809bae30b70130b401375460406168026ea816a26644b300130930130b5013754003132332259800980e8014566002603a00313259800980f000c5660033001330283758617a026174026ea826404dd71833985d009baa302630ba0137540c1375860d06174026ea801e661780260446174026ea8c098c2e804dd50301985e00a6106457355534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e4c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b30013370f3001375660446174026ea8264066eb8c088c2e804dd51813185d009baa060a44105735553447200405c60d600d13259800984c00985d009baa0018992cc004cdc39bad30bf010013370200a00715980099b87375a617e0261800200266e040100222b300130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd5031522010455534472004065198009bac306930bc013754136033758617e026178026ea80266617c0260d46178026ea8c0a0c2f004dd50311985f00a61054455534472004bd702444b30013370e603c004604001b19800806c00a4464b3001309f0130c10137540031325980099baf30c60130c3013754002618c026186026ea8c31804c30c04dd5002456600266ebcc1c0c30c04dd500098389861809baa30c60130c301375400913370f3001375660e26186026ea80066eb8c318040166eb8c1c401502019b83337046eb4c1c4c30c04dd5002006005c5282180028a50430004618a026184026ea80061720285f808cc05c01400502a42ac050bc0122a66174029211765787065637420757364725f6d696e746564203d3d2030001642e40515330ba01491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001642e40515330ba014913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b8014912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001642dc0515330b801491a86578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202029001642dc0515330b8014911a65787065637420757364725f746f5f72656c65617365203e2030001642dc053001007a4001223370000266e0ccdc11bad306930bb01375400400800681122a6616e02921236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001642d80515330b7014911c657870656374207661756c745f757364725f6265666f7265203e2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e756e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa0940142bc04857808dc4a40008570090ae0111112cc004cdc39809801180a801c6600200700291192cc004c25004c2d804dd5000c66002617402616e026ea80066eb0c07cc2dc04dd5001ccc068010dd6180f985b809baa003488966002612e026172026ea80062b30013375e617a026174026ea800cc2f404c2e804dd5185e80985d009baa0068acc004cdd79833985d009baa003306830ba013754617a026174026ea801a266e1e60026eacc1a0c2e804dd5001cdd7185e808014dd7185e80985f00801202e3301f301c375a60d06174026ea8018c2f404c2e804dd5000c528216e028a5042dc0515330b80149015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642dc0485700a168023300c006001407d0a00142c404856808444464b3001308e0130b00137540031325980099baf30b50130b2013754616a026164026ea8c180c2c804dd500098171985a009ba90054bd704566002611c033001375660c06164026ea8c180c2c804dd5000c016910108747265617375727900403d132598009849809859009baa0018992cc004006330010018992cc004c24804c2d004dd5000c4c96600266ebcc2e404c2d804dd5185c80985b009baa0013032330b801375201297ae08acc004c2480660026eacc190c2d804dd5000c026910108747265617375727900404d13259800984b80985b009baa0018992cc0040063300100189985d008029985d008009985d009ba6329800800cdd59833985c809baa00499198008009bab306830ba01375460d06174026ea8024896600200314bd6f7b63044c8cc2f804cdd8185d808009ba632330010013756617a0200444b30010018a5eb7bdb182264661820266ec0c2f804004dd418381bad30bf010013300300330c30100230c10100142fc0466006006618002004617c0200285e0090011112cc00400a2003132332298008034c30804016646600200200a44b30010018998610099bb037520086e9800d2f5bded8c113298009bae30c0010019bab30c1010019862808012444b3001337200100071330c601337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528218c02880144cc31c04cdd81ba9009374c002004861008ca6002003008801a002222598008014400626466453001006986700802cc8cc00400401489660020031330ce01337606ea4010dd4001a5eb7bdb1822653001375c619802003375a619a0200330d10100248896600266e4002000e2661a40266ec0dd48041ba80070058acc004cdc7804001c4c966002615c0200310028998698099bb037520126ea00040090ce0119b800070028998690099bb037520066ea0008cc0180180050cd01219a02186780800a19a0240186eb8c31c04004dd69864008009865008012190028998630099bb037520066e98008cc0180180050c101218202186180800a1820240186eb8c2ec04004dd5985e00800985f008012178024bd7042c40501f42c406162030b10185880a17a0230ba0130b701375400315330b50149012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642d00460c6616c026ea80062a6616802920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642cc0515330b40149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642cc04617002616a026ea80062a661660292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001642c804660146eb0c184c2d004dd5004002c2b00501b42b006158030ac0185600a1720230b60130b301375400315330b10149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642c00460be6164026ea8c180c2c804dd5000c54cc2c0052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642bc0515330b0014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642bc046168026162026ea80062a6615e0292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001642b8046600c6eb0c2cc04c2c004dd500200108a9984300a4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001642140464660020026eb0c0d4c22004dd5035112cc004006297ae0899845809ba732323308d01308e010023308d013038308b0137540026611a026ea4cc894cc22c04cdcb2481165369675374727563747572652e636f6e746578743a200037326606a612002611a026ea8005220100153308b013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606a6076611a026ea8005220100153308b013372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606a6074611a026ea8005220100153308b013372c9201165369675374727563747572652e7061796c6f61643a200037326606a6018611a026ea800522010013253308c013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606c6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002423004846008dc68009bae309001308d01375400266e28c008dd7181d9846809baa0013371460046eb8c0e8c23404dd500098011bae300c308d013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002422804845008dc6800981b9984680a610b4a5369676e617475726531003308d01308e01308b013754611c026116026ea8004cc234053010140003308d01375200a97ae04bd701846809847008009bac308c0100133002002308d010014228046e50dd980320cc82ba264b30010018acc004c178c20004dd5000c4c9660020030688992cc0040060d3069899912cc0040060d713259800800c1b20d906c899912cc0040060dd13259800800c1be0df06f8992cc004c2380400e2b300100783844c966002003071838c1c60e31332259800800c1ce264b300100183a41d20e90748992cc004c24c0400e260206126020230754240046eb800509301184800800a11c02375c002611e02010848008c2340401d08b0141c108b011bad001837a11c02308b010014224046eb4004c2280400a0d8845808c22004005086011bac001308701002834c1a508801184280800a10602308101375400306741f9067833c19e0ce843008c20c0400908101419107f1bae00142080460fe00283e8dd7000983f00120fe307c00141e86eb8004c1ec00907c183c800a0ee375c00260f000483c8c1d80050741bae001307500241d860e60028388c1bcdd5003415506c415501441550144155014415501441550144155014415507041560ab05582aa0e8307100141bc6eb0004c1c000a0a505241c460dc0028360c1b800a0a1050828414106f1836000a0d4306c002827413a09d04e41b460d40028340c1a800a09904c826413106b1834000a0cc3068002825412a09504a41a460cc0028320c19800a09104882441210671832000a0c43064002823411a08d046419460c40028300c18800a08904482241110631830000a0bc305c37540050424164444653001001802400d001111192cc004c0fc006264b300100180344c966002003007803c01e00f132598009834801c0160108330dd7000a0d23066001419060c46ea800e2b3001303e0018992cc00400600d13259800800c01e00f132598009834801c4cc0e000489660020050078992cc0040063300100a800c4c008c1b000d00a402e01700b805a0da306a00241a100841986eb000600f00741a460cc0028320c188dd5001c566002608400313259800800c01a264b3001001803c01e264b3001306900389981c000912cc00400a00f13259800800c66002015001898011836001a014805c02e01700b41b460d400483420108330dd6000c01e00e8348c19800506418311baa0038acc004c064006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260d800713303b0012259800801402a264b30010018cc00403600313002306f003403500e807403a01c8380c1b400906b402d0691bac001805402906c1834800a0ce375a00260d000500741a460cc0028320c188dd5001c566002603000313259800800c01a264b3001001803c01e00f132598009834801c0160108330dd6800c01d0691833000a0c830623754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260d200700580420cc375a00300741a460cc0028320c188dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260d200700580420cc375c0028348c19800506418311baa003802a0be417c82f905f20be417c82f8c180dd50014106083041820a0c03008305a3754646644a660b666e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a200037326600a6ea416522010013259800981d982e9baa00189929982e99b9649113666f756e642070726f7879207574786f3a3a200037326600e002910100132598009820182f9baa0018992cc0040062b3001303e3060375400313259800800c126264b3001001825412a09504a899912cc0040060991325980098350014401a09a8338c1a00050661bae001306700241a060ca0028318c184dd5000c12105e412209104882420cc306330603754003153305e49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164174601860be6ea8c034c17cdd50009830982f1baa0018a9982e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016416c660080024646600200260086eacc034c17cdd51806982f9baa0022259800800c528456600266e3cdd7183180082e4528c4cc008008c19000505d20c230010013758601260b66ea80e8896600200314bd7044cc178c16cc17c004cc008008c18000505d1800800911919800800801912cc0040062980103d87a80008992cc004c01000626012660be00297ae0899801801983080120b4305f001417444464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20c05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c82d105a1bac305d002375a60b60026466ec0dd4182d8009ba7305c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60c0003337149101023a200098008054c18400600a805100a183180144ca6002015306000199b8a489023a200098008054c184006600e66008008004805100a183180120c23063001418066e29220102207d0000341746eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c20ba3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e417c66e2ccdc0000acc004cdc4000a40291481822903720be004401866e0c00520203370c002901019b8e00400241706eb800d0601b8a4881022c20002232330010010032259800981b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002300b00189980299b8400148050cdc599b803370a002900a240c000682b90571803803a264b300100181a40d2264b300100181ac4c96600200303681b40da06d1332259800800c0e2264b30010018acc004c16000a264b300130323054375400513259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc0040060810408204102264b300130600038acc004c0e4c16cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d132598009833001c4c966002608000313259800800c126264b3001001825412a09504a8992cc004c1a800e02504b419c6eb800506a1833800a0ca30633754017159800981f800c56600260c66ea802e01f048419104841808300c184dd5005411d0631bae001419860c60028308dd7000983100120c63060001417860b86ea801a08282ca08282e8dd7000a0c0305d001416c60ba00503e81f40fa07c82f0c16c005059182d80140f207903c81e20b83059001415c60aa6ea800a07482904c01cc16002207282aa07303981cc0e5059182b000a0a8375c00260aa00482b0c14c0050511bac00181a40d10541828801209e40b902140b902144c96600200302f817c0be2646006609e0086eb400605e8278c13000904a44c96600200302d816c0b62646006609a0086eb400605a8268c12800904840a904640aa05502a815209430470014114608e00502881440a20508240c1140050431bad0013044002812a08a304200141006eb4004c10400a0448210c0fc00503d1bac001303e00280fc07d03f181e000a0743758002607600501c80e2078303900140dc606a6ea801a034819203481b0dd6000c06603281c8c0d8005034181b001405e02f01780ba06e303400140c8606800501580ac05602a81a8c0c800503018171baa010809a0561112cc004c028c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a801466002007132598009807800c56600260646ea800a00f00640cd1598009807000c4c9660020030078992cc0040060110088044022264b3001303900380540250361bae00140e4606c00281a0c0c8dd50014566002602400313259800800c01e264b30013038002804c021035181b000a0683032375400500640bc817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a8444b30013009302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002601c00313259800800c01e264b30010018acc004c0dc00a264b300130110018992cc00400601513259800800c566002607400519800800c032016808a01681ba01700b805c02d03b181c000a06c303437540051598009808000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0340062b3001303137540050078032064803205c40b8605e6ea800600a805a00a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c0050290dc3a40006e1d2002804402201100840a0604a60446ea800e2c80f8604200260386ea808a293454cc06924011856616c696461746f722072657475726e65642066616c7365001365640641\"\n :\n \"593595010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a4005223233001001003223300300130020024888a60024464b30013006001899192cc004c05c00a0091640506eb8c054004c044dd5001c566002600a0031323259800980b80140122c80a0dd7180a80098089baa0038b201e403c601e6ea800a44b30013005300f3754005132323259800980b80144c8c9660026014003159800980a9baa002803459016456600260120031323259800980d80140222c80c0dd6980c800980a9baa0028acc004c0340062b3001301537540050068b202c8b2026404c8098c04cdd5000980b001c59014192cc004c04c0062b30013371290021809000c5a2600e6024002808a2c80a0dd5180a800980a80098081baa0028b201c912cc004c014c03cdd500144c8c8cc896600260300070058b202a375a602a0026eb8c054008c054004c040dd500145900e488c966002600c0031323259800980b80140122c80a0dd6980a80098089baa0038acc004c0140062b3001301137540070028b20248b201e403c601e6ea8009222232323322598009805980a9baa010899191919912cc004c07c00e264b30013011301b3754003132323232323298009812800cdd61812802cdd698128024dd69812801cc0940092222259800981580344cc068dd61815005912cc00400a26603800c44b300100289980d00289980d0048cc004dc3a400d370e90044dc3a4014911192cc004c090c0b8dd500ac4c8c8c966002606c005132332259800981500144c96600260740031330293758607200244b300100280244cc08cc0ec0084c004c0f0009039459037181a9baa0038acc004c0a400a264b3001303a0018998149bac303900122598008014012266046607600426002607800481ca2c81b8c0d4dd5001c566002605a00513259800981d000c4cc0a4dd6181c800912cc00400a009133023303b00213001303c00240e51640dc606a6ea800e2b3001300a0028992cc004c0e80062660526eb0c0e40048966002005004899811981d80109800981e00120728b206e30353754007159800980480144c96600260740031330293758607200244b300100280244cc090c0ec0084c004c0f0009039459037181a9baa0038acc004c02000a264b3001303a0018998149bac303900122598008014012266048607600426002607800481ca2c81b8c0d4dd5001c59033206640cc8199033206630323754002264b300130290018992cc004c0e400626604a607000200f1640d860686ea800e2b300130280018992cc004c0e4006264b3001302b30353754003132323259800981e80144cc0a8c0f000c4cc0a800402e2c81d0c0ec004c0ec004c0d8dd5000c59034181c000c59036181a1baa0038b206440c860646ea8008c0d400e2c8198c0d0004c0d0004c0bcdd500ac5902d09981080a912cc00400a330012303430350019181a181a981a800cdd2a400122232598009814800c4c8c96600260740050048b206e375c607000260686ea800e2b300130280018992cc004c0e40062660506eb0c0e000489660020050058cc00401e607400513001303b002401c81c22c81b0c0d0dd5001c566002605800313259800981c800c4cc0a0dd6181c000912cc00400a00b19800803cc0e800a2600260760048039038459036181a1baa0038acc004c0240062646644b3001303b0018998151bac303a0012259800801401e33001009981e00144c004c0f400900920748b2070375a6070002607200260686ea800e2b30013008001899192cc004c0e800a0091640dc6eb4c0e0004c0d0dd5001c566002600e0031323259800981d00140122c81b8dd6981c000981a1baa0038acc004cdc3a40180031323259800981d00140122c81b8dd7181c000981a1baa0038b206440c88191032206440c88190c0c8dd500124444646644b3001302c30363754005132323232323232323298009821800cc10c022608600f30430069821802cc10c012608600737586086004911111112cc004c130026266024609602226602400e26602400c26602400a2660240082660240062b3001303d304737540051323232323298009bae30500019bae30500059bae30500049bae30500039bae30500024888896600260ac00d13304500b225980080144cc10805066002604860a86ea813a460b060b260b260b20032232330010010032259800800c5284566002600660b600314a3133002002305c001415882ca460b060b260b260b260b260b260b260b200337009000cdc024005374a9001244444446464b300198009111919912cc004c16000a2b300130583062375400314c0103d87a80008a6103d87980004185159800982d801456600260b660c46ea80062980103d87a80008a6103d87b800041851332259800982d000c530103d87b80008acc004c164006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041908320dd6983418329baa0038a6103d8798000418c8318dd6983318319baa00330623754002830906118301baa00130020033001003919191919912cc004c16000a29422b3001305b0028cc004cdd7983318319baa0014c103d87b8000a50a514185132332259800982d8014528c56600260b40051332259800982e18339baa30383068375400d1337100040031337120040028330dd6983498331baa00359800982d18329baa30363066375400f100189806800a0c88a5041908320c18cdd50009bad30673064375400860cc60c66ea800506120c23060375400260c860ca00660c660c06ea8004c188004c178dd5000cc0b4c174dd5004a444b30013055305f37540031323300b375860c860c26ea81608cdd7983298311baa00100230633060375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c194c188dd50014c194c188dd5000c8c8c96600260b260c86ea8c1a0c1a400a200313259800982d000c4c030cc1a0dd418069bad30693066375400497ae08acc004c16c0062005100241908320c190dd5000a0c63067001306337540028029300103d87b8000a50a5141811980099baf9800981918311baa002981918311baa001919192cc004c164c190dd51834183480144006264b3001305a00189806198341ba8300e375a60d260cc6ea80092f5c1159800982d800c400a2004832106418321baa001418c60ce00260c66ea8005005260103d8798000a50a51418114a0830106020c0306330603754002601260c06ea815d05e2330013060305d375401322232330010010042259800800c401226600660ca0026600400460cc002831a4530013300900223375e60c660c06ea8c18cc180dd5181818301baa001300633062375200497ae0a50a51417523052305d375460c2646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130573062375460cc0074a14a2830a2660cb30014a14c103d87a8000a60103d87980004184660ca6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1a000400e294626600400460d2002831906644cc196600294298103d87a8000a60103d87980004184660ca6e9c0092f5c11330659800a51a60103d87a8000a60103d87980004184660ca6e9ccc194dd400080125eb8106120c2375860c860ca0026eb4c190008cc008008c190005061489660020031480022600c6600400460c6002830244b30010018a40011300633002002306300141812222329800800c01600900340044444b30010038800c66002009306900398348016600260d0007375a60d00050014014802106648896600200514c103d87a80008acc004c1540062605c660c460c600497ae08cc00400e60c80053008001400c82f1061488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006418d1330050053069004418c6eb8c188004dd598318009832800a0c614bd6f7b6304896600260a860bc6ea800a26464b30013065002801c590621bad3063001305f37540051641752232330010010032259800800c52f5c1133225980099baf30663063375460cc60c66ea8c0ccc18cdd50011804998329ba90054bd7044cc194008cc0100100062660080080028308c190004c19400506248c184c188c188c188c188c188006460c260c460c460c460c460c460c4003222329800800c012006800888966002005159800800c528c52820c88acc00400629422b3001330043066002375a60cc00319800801cc19c00a60ce002801a294106120c841912259800982a182f1baa0028991919194c004c19800660cc007306600248896600260d4009133030306900713305300213259800982e000c4c8cc896600260dc003132323322598009839001c0422c8378dd718378009bae306f002306f001375860da0031641ac6eb4c1ac004c1b0004c19cdd5001456600260b60031323322598009837000c4c8c8cc896600260e40070108b20de375c60de0026eb8c1bc008c1bc004dd61836800c5906b1bad306b001306c00130673754005159800982f800c4c8ca60026eb4c1b000660da003375a60d80049112cc004c1c000a264646644b300130740038094590711bae3071001375c60e200460e20026eb0c1bc00a2c836860d800260ce6ea800a2b3001303c00189919912cc004c1b8006264646644b3001307200380845906f1bae306f001375c60de00460de0026eb0c1b40062c8358dd69835800983600098339baa0028acc004c0ec00626464b3001306d002805c5906a1bad306b00130673754005159800981d000c4c8c96600260da00500b8b20d4375a60d600260ce6ea800a2c832906520ca4194832906518329baa0018b20ce183300098328009832000982f9baa0028b20ba911194c0040060090034004444b30010028800c660020073067002998021833001000a0064191230613062306230623062001912cc004c150c178dd500144c8c96600260ca0050038b20c4375a60c600260be6ea800a2c82ea44b30010018a400113006330020023063001418137029000488cdc199b82002375a605c60be6ea8004dd69817982f9baa0019b88480024466056004466ebcc18cc180dd50009ba700248888888888888888888888a60024444646600200200a4464b30013070001899192cc004c1c8c1f0dd5000c4c8ca60026eb8c2080400a6eb8c20804c20c040066eb8c2080400572a308201001375861000260fa6ea8006294107b1919800800804112cc0040062980103d87a80008992cc004cdc79bc8375c6104020020091304d3308101374e00297ae089980180198418080120fa375861020200283f8dd7183f183d9baa0028acc004c1bc006264660020026eb0c1fcc1f0dd5001912cc00400629462b300133005005308001001899801001184080800c52820f641f91598009839800c4cc094dd6183f183d9baa0022330040040018acc004c14000626466e24dd6983f800cc004dd6183f984000800d2000912cc004cc01801800a2604a003100141f080f0c1ecdd50014566002609e0031323322598009839183e9baa0028acc004c1c8c1f4dd5184080984100801c4cdc49bad308101307e37540040031337106eb4c20404c1f8dd5001000a0f88a5041f060fe0026eb4c1fcc1f0dd5001983d9baa304b307b375400b1598009827000c4c8cc896600260e460fa6ea800a2b30013072307d37546102026104020071337120026eb4c20404c1f8dd500144cdc40009bad308101307e375400483e2294107c183f8009bad307f307c375400660f66ea8c1f8c1ecdd5002c4c8c8cc004004018896600200314a115980099baf003307d3081010018a51899801001184100800a0f841fc6042660fa60fc60f66ea80092f5c083c907920f241e483c9079183c9baa0019180a800cc04c04e6024025301001091119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c83da26600a00a61020200883d8dd7183d0009bad307b001307d00141ec660260080062900048c05400660e66ea805e600a00b2232598009837983b1baa001899198068008acc004cdd79811983c1baa003307b3078375400915980099baf30483078375400260f660f06ea800e20031641d91641d860f460ee6ea80062c83a8c114c1d8dd51823183b1baa00292cc004cdc4000a4001130050018800a0e6488888888888c8ca60024444446644646644b30013370e66e04dd69847809846009baa308f01003375a611e026118026ea8c23c04010006264b30013370f30013758606c611a026ea80329000488cc89660033001308601001a50a51423c051325980099b893302100100598008044dd7184a80801cdd7184a80984b00801a032899b800040018b2120023370400200b1003423c046eb0c24804c23c04dd5001194c00402a90004896600266ebcc094c24804dd50011ba7003899b80001375a60c46124026ea800a20028480090241bac309201308f0137540048108cdc08010054400a2c845809660026034013148006290012114028b2114023756611a02611c02002b3001307f300e0038a4001159800984700801c4c96600266e3cdd7184500800a4504555344720089bad308b010018b211202308d010038b211602422004611a02002660446eacc068c21c04dd50029bae30573087013754603c610e026ea801a600200b375c611402610e026ea8c078c21c04dd5003400e004803a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444464b3001307b30850137540031325980099baf308a013087013754611402610e026ea8004c0b4cc22404dd4802a5eb822b3001307b98009bab30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab30593089013754007006a441045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5000c5908501459085011844809843009baa0018b210802330060040019111192cc004c1ecc21404dd5000c4c96600266ebcc22804c21c04dd51845009843809baa30573087013754002605a66112026ea40152f5c1159800983dcc004dd5982b9843809baa30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab3059308901375460b26112026ea800e00d4881045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5182b9843809baa0018b210a028b210a023089013086013754003164210046600c008002911112cc004c1ec02e26644b300198009845809844009baa0538164c0c4c22004dd503fcdd5980f9844009baa07f4051159800998149bac308b0130880137540fe6eb8c0ccc22004dd5180f9844009baa0538acc0066002660426eb0c22c04c22004dd503f9bae30573088013754603e6110026ea814e6eb0c160c22004dd5000cdd618189844009baa05348896600266e1cc05000cc0500162b300130110028cc00400e0052232598009841809846809baa001899192cc004c21404c23c04dd5000c4c8ca60026603e0100033758604a6124026ea80126eb4c2540400922259800984500984a009baa0038acc004cdc499199119b8330403370066e08004dd69833984c009baa003002002375a60cc612c026ea8004dd69833184b009baa00830980130950137540073001375660ca612a026ea8c194c25404dd50054dd7184c008014dd7184c00984c8080120388acc004cdc38009bad3065309501375400f13375e6e9c010c0a0c25404dd5003c5282126028a50424c0516424c043758612802612a020026120026ea8006294108e01182f1847809baa33012004001309101308e013754003164230046601c00e002810a2c84480a2c844809159800cc004dd6182b9844009baa07f9bac308b0130880137540033308a0130583088013754603e6110026ea814ccc228053001054455534472004bd702444b30013370e602a004602800b19800802c00a4464b3001308301308d0137540031325980099baf309201308f013754002612402611e026ea8c24804c23c04dd5002456600266ebcc178c23c04dd5000982f9847809baa309201308f01375400913370f3001375660be611e026ea80066eb8c248040166eb8c17c01501618089bad305f308f01375400914a084680a294108d011848809847009baa0018b2118023300e005001408516422404899b879800829c1fe90004dd6982b9844009baa0019bad30333088013754003002401d30010029bac308b01308801375400323017375a60b26112026ea8005006459086014590860145908601459086011bac3089013086013754052611202610c026ea820006264b3001307b00c899912cc006600260b26112026ea815205b3032308901375410003375660406112026ea8200050154566002660546eb0c23004c22404dd5040009bae3034308901375460406112026ea81522b30019800998111bac308c013089013754100026eb8c160c22404dd518101844809baa0549bac305930890137540033308b013059308901375460406112026ea8150cc22c05301054455534472004bd702444b30013370e602a006602a00b159800980900146600200700291192cc004c21004c23804dd5000c4c8c966002610a026120026ea800626464b3001337120033001375660c66126026ea8c18cc24c04dd5003cdd7184b008044dd7184b00984b8080420348acc004cdc380098119bad3063309301375400913375e612c02612e02004604c6126026ea80122941091014528212202375a612a020026122026ea8006294108f01182f9848009baa33013004001309201308f013754003164234046601e00e00281122c84500a2c845009159800cc004dd6182c1844809baa080018014dd61846009844809baa0019bac303230890137540a8801a266e1e60020a908001a4001375a60b06112026ea80066eb4c0d0c22404dd5000c0090084c00400a6eb0c23004c22404dd5000c8cdc41bad305a308a0137540029000200e8b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c56600260fe0191332259800cc004c160c22404dd502a40b660646112026ea8200066eacc080c22404dd504000a02a8acc004cc0a8dd61846009844809baa08001375c60686112026ea8c080c22404dd502a45660026644b30013370e602800460280091598009808800c6600200500191192cc004c20c04c23404dd5000c4c8c96600260ca611e026ea8006264b30013370e6eb4c25004004dd698309848809baa003899baf3094013095010013024309101375400714a0847808c24004dd5000c528211c02305e308f01375466024008002612202611c026ea80062c846008cc0380180050214590890145908901198111bac308c013089013754100026eb8c160c22404dd518101844809baa054375860b26112026ea80062b300198009bac30583089013754100030029bac308c013089013754003375860646112026ea815100344c1fa60020a908001cc00400a6eb0c23004c22404dd5000c96600260306eb4c168c22804dd5000c4c1fcdd6982c9845009baa0018a50422004803a6eb4c160c22404dd5000cdd6981a1844809baa00180120108b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c4c96600260ba01b198009bac308b013088013754057222225980099b87301600530160048acc004c04c00e266e24006600200b003a400122232598009843009848009baa001899912cc004c22c04c24804dd5000c4c8cc0a400456600266ebcc0fcc25004dd5001984b80984a009baa0078acc004cdd79832184a009baa001309701309401375400713259800984680984a009baa001899192cc004cdc39bad309a01002375a60ce612e026ea801a2b30013370e6eb4c26804004dd69833184b809baa0068acc004cdd7984d00984d808009815184b809baa006899b8000898009bab3067309701375460ce612e026ea802a6eb8c268040326eb8c26804c26c0403101e459095014590950145909501184d00800984a809baa0018b212602306330940137540031642480516424804612c026126026ea80062c848808c25004c24404dd500098301848809baa3061309101375400916423c046602200e00481522c84580a2c84580a6116026110026ea82080522259800cc004c0d8c22c04dd502b40be60686116026ea8208066eacc088c22c04dd504100a02e899912cc00566002603600514a319800984100800d28528a11602422c05132598009841809846809baa0018cc00660026eb0c24404c23804dd504280cdd7181c9847009baa3025308e0137540b3375c60bc611c026ea8c094c23804dd502ccdd69848809847009baa0014025375a612202611c026ea8c24406600210a03375c612202611c026ea8c094c23804dd502ccdd6982e9847009baa0049bad3039308e01375400880726e0400a604c611c026ea8011222232323259800984500984a009baa0048992cc004cdc399b81375a61320200200800715980099b87375a6132026134020026eb4c26404c268040222b3001300f00a8acc00660026605e6eb0c26404c25804dd5046809bae30653096013754605a612c026ea818601d375860cc612c026ea8032661300260cc612c026ea8c0b4c25804dd50309984c00a61054455534472004bd7052000403515980099b8900298009bac3065309601375411a034800244b30013375e6136026130026ea8008c26c04c27004c27004c27004c27004c27004c27004c27004c27004c26004dd5031c4cdc0000cc004dd59834184c009baa0029bae30683098013754605e6130026ea818e9101045553447200407d100142580481c22b3001323371266e0003002e60026eb0c100c25c04dd5031520009119192cc004c0a4006266e0000ccdc199b82001375a60d66136026ea8010dd69835184d809baa0048801a1320298008024dd7184e80800cdd7184e80984f00800a04237586138026132026ea800902b1bab309901309a01309a01980084680cdd7184c80984b009baa302d30960137540c3375a60ca612c026ea80326eb4c104c25804dd5006202c899b879800830c23406600c017375a60ca612c026ea80326eb4c104c25804dd50064039015005459094014590940145909401456600330013302f3758613202612c026ea823404dd71832984b009baa302d30960137540c300e9bac30663096013754019330980130663096013754605a612c026ea8184cc26005301054455534472004bd704c09800900d44cdc3cc00418611a03300600b9bad30653096013754019375a6082612c026ea803201c80a802a2c84a0090940145909401459094014c004dd61832184a809baa08c019bae304030950137546058612a026ea81826eb8c194c25404dd51816184a809baa0609bad3098013095013754008808a2c849808c01000566002604200913370666e0801c00401229000212202375a612a020088b2118023020308d01375400716422c0530010039bac308e01308b01375400323005375a60b86118026ea80050094c00400e9000488cdc00009bad305c308d01375400480fa2c844809159800982e006c4cc89660033001301d308a0137540ab02e98199845009baa081019bab3021308a0137541020280b22b30013302b3758611a026114026ea820404dd71846809845009baa3021308a0137540ab13322598009840809845809baa00189919912cc004c02000a2b300130080018acc0056600261080200314a31301d00242340513259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260c06120026ea8c09cc24004dd502d9984900a601054455534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b8c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c848809159800cc004dd6182f9848009baa087019bac309301309001375400f330920130233090013754604e6120026ea816ccc2480530106457355534472004bd702444b30013370e603a004603801719800805c00a4464b3001308b0130950137540031325980099baf309a013097013754002613402612e026ea8c26804c25c04dd5002456600266ebcc198c25c04dd50009833984b809baa309a01309701375400913370f3001375660ce612e026ea80066eb8c268040166eb8c19c01501e2cc004c2300402626eb4c19cc25c04dd500244cdc199b82375a60ce612e026ea8010024029095014528212a028a50425404613202612c026ea80062c84a008cc058014005029459091012264b300130860130900137540031325980099b87375a612a0200266e000140222b30013370e6eb4c25404c25804004cdc0002001c56600266e1e60026eacc094c24804dd504480cdd718129849009baa302930920137540bb4881057355534472004064007130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed220104555344720040651642400516424005164240053001375860c06122026ea8220066eb8c0f0c24404dd518141848809baa05c9bae3061309101375460506122026ea81726eb4c25004c24404dd5000a01a8b211e023028309001375400f164238051642380516423804b30013084010018802c4cdc199b820050010024234051642340516423405164234046eb4c24004004dd6984800984880800cc004dd61847809846009baa083019bae3037308c01375460466118026ea815e6eb8c170c23004dd518119846009baa0579bad308f01308c013754002803a2c84500a60020053758611a026114026ea8006460326eb4c16cc22c04dd5000a00e301d308a01375400316422005164220046eb0c22c04c22004dd50159845809844009baa08201899912cc006600260446114026ea815605d3033308a01375410203375660426114026ea8204050164566002660566eb0c23404c22804dd5040809bae308d01308a01375460426114026ea815626644b3001308101308b013754003132332259800980e8014566002603a00313259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260466120026ea8c09cc24004dd502d9984900a60106457355534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b4c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c84880915980099b8798009bab3023309001375410e03375c60466120026ea8c09cc24004dd502dd22105735553447200405c604000d132598009843009848009baa0018992cc004cdc39bad3095010013370200a00715980099b87375a612a02612c0200266e040100222b300130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed22010455534472004065198009bac30613092013754112033758612a026124026ea8026661280260c46124026ea8c0a4c24804dd502e9984a00a61054455534472004bd702444b30013370e603e004603c01b19800806c00a4464b3001308d0130970137540031325980099baf309c0130990137540026138026132026ea8c27004c26404dd5002456600266ebcc1a0c26404dd50009834984c809baa309c01309901375400913370f3001375660d26132026ea80066eb8c270040166eb8c1a401502019b83337046eb4c1a4c26404dd5002006005c528212e028a50425c046136026130026ea80062c84b008cc06001400502b4590930122c84800a2c84800a2c84800a60026eb0c180c24404dd504400cdd7181e1848809baa302830910137540b9375c60c26122026ea8c0a0c24404dd502e4dd6984a009848809baa001403516423c0460506120026ea801e2c84700a2c84700a2c84700a600200f480024466e00004cdc199b82375a60c26122026ea800801000d02345908d0145908d011bad309001001375a61200261220200330013758611e026118026ea820c066eb8c0dcc23004dd518119846009baa0579bae305c308c01375460466118026ea815e6eb4c23c04c23004dd5000a00e8b21140298008014dd61846809845009baa0019180c9bad305b308b0137540028038c074c22804dd5000c5908801459088011bac308b0130880137540566116026110026ea82080508601210c0237129000210a024214044444b30013370e6028004602600719800801c00a4464b3001308201308c013754003198009848009846809baa0019bac3020308d0137540073301a00437586040611a026ea800d222598009842809847809baa0018acc004cdd79849809848009baa00330930130900137546126026120026ea801a2b30013375e60be6120026ea800cc180c24004dd51849809848009baa006899b8798009bab30603090013754007375c612602005375c61260261280200480b8cc07cc048dd698301848009baa006309301309001375400314a084700a294108e0145908e0122c845808cc034018005020459088012108021111192cc004c1e8c21004dd5000c4c96600266ebcc22404c21804dd51844809843009baa30563086013754002605866110026ea40152f5c1159800983d4c004dd5982b1843009baa30563086013754003005a4508747265617375727900403513259800983f9843009baa0018991980d0008992cc004c1f8c22004dd5000c4c96600266ebcc23404c22804dd51846809845009baa00130303308c01375201297ae08acc004c1fa60026eacc168c22804dd5000c026911087472656173757279004045132598009841809845009baa0018991980f00089984700802998470080099847009ba6329800800cdd5982e9846809baa00499198008009bab305e308e01375460bc611c026ea8024896600200314bd6f7b63044c8cc24804cdd81847808009ba63233001001375661220200444b30010018a5eb7bdb1822646612a0266ec0c24804004dd418119bad30930100133003003309701002309501001424c04660060066128020046124020028480090011112cc00400a2003132332298008034c25804016646600200200a44b300100189984b0099bb037520086e9800d2f5bded8c113298009bae3094010019bab309501001984c808012444b30013372001000713309a01337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528213402880144cc26c04cdd81ba9009374c00200484b808ca6002003008801a002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd4001a5eb7bdb1822653001375c614002003375a61420200330a50100248896600266e4002000e26614c0266ec0dd48041ba80070058acc004cdc7804001c4c96600261340200310028998538099bb037520126ea00040090a30119b800070028998530099bb037520066ea0008cc0180180050a201214402185180800a1420240186eb8c26c04004dd6984e00800984f0080121380289984d0099bb037520066e98008cc01801800509601212c02184b80800a12a0240186eb8c23c04004dd59848008009849008012120024bd701847009845809baa0018b2112023059308a01375400316422005164220046118026112026ea80062c843808cc024dd6182b9844009baa008005308a0130870137540031642140460aa610c026ea8c158c21804dd5000c5908401459084011844009842809baa0018b210602330053758610e026108026ea8010008896600266e2000520008a6103d87a8000899804801000a0fe22c82d8c8cc004004dd61816182e9baa0572259800800c52f5c1133060374e6464660c460c6004660c4605e60c06ea8004cc188dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241888310dc68009bae30653062375400266e28c008dd7181918311baa0013371460046eb8c0c4c188dd500098011bae300d30623754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241808300dc68009817198312610b4a5369676e617475726531003306230633060375460c660c06ea8004cc18930101400033062375200a97ae04bd70183118318009bac3061001330020023062001417c6e50dd9803a264b3001304a305437540031323232332259800982f001c4c8c8cc896600260c40071300b306200c8b20be375c60be0026eb8c17c008c17c004dd6182e802c5905b1bad305b001375a60b600460b600260b400260aa6ea80062c8298c15c0090554590530c140004c13c004c138004c134004c120dd50014590464590490c10c004c108004c104004c100004c0fc004c0f8004c0f4004c0f0004c0dcdd50014590351802981a9baa323232598009816981b9baa0018992cc004c0c4c0e0dd5000c4c966002605e60726ea8006264646644b300130420038802c5903f181f8009bae303f002303f001303a37540031640e0607860726ea80062c81b8c01cc0e0dd51804181c1baa303b303837540031640d8660066eb0c01cc0dcdd50171191980080098019bab300930393754601260726ea8008896600200314a115980099b8f375c607a00206f14a3133002002303e00140e081d8c004004896600200314bd7044cc0e4c0d8c0e8004cc008008c0ec0050381801001111919800800801912cc0040062980103d87a80008992cc004c0100062600e6607600297ae0899801801981e801206e303b00140e489919912cc004c0dc00626644b3001302a303437540051323232332259800981f001c4c966002606060746ea8006264646644b300130430038992cc004c0d400626464b300130460028074590431bae30440013040375400f159800981a000c56600260806ea801e0191641051640f881f0c0f8dd50034590401bae3040001375c6080004608000260766ea80062c81c8c0f40162c81d8dd7181d800981d801181d800981d000981a9baa0028b206630360011300430370058b2068375c6068002606a0026eb0c0cc0090312264600460600066eb4c0b800902c44c8c008c0b800cdd6981600120548b205018128009812000981180098110009810800980e1baa0018b2034301e0058b203837586038002603800460380026036002602c6ea80422c80a089660026016602a6ea800a26464646644b3001301f003899804180f00289980580100345901c180e0009bad301c002301c001301b0013016375400516405044b3001300b301537540051323232323298009bac301e0019bad301e0049bad301e003980f00124444b30013023005899806181100489980780089919912cc004c09800e01b16408c6eb8c08c004dd7181180298118024590200c078004c074004c070004c06c004c058dd5001459014112cc004c028c050dd500144c8c8c9660026038005133006301b003132598009807000c56600260326ea800a00b1640691598009806800c4c8c966002603e0050078b2038375c603a00260326ea800a2b30013011001899192cc004c07c00a00f164070603a00260326ea800a2c80b9017202e3017375400316406460340026034002602a6ea800a2c80988966002601260266ea800a2646464b3001301b002899804980d0018992cc004c034006264b3001301d001899192cc004c040006264b30013020001899807180f800804c5901d180d9baa0028acc004c03c00626464653001375a6042003375a6042007375a60420049112cc004c09401201d16408830210013020001301b375400516406480c8c064dd5000980e000c5901a180c1baa0028acc004c0300062b3001301837540050058b20328b202c4058602c6ea80062c80c0c064004c064004c050dd50014590121164020300900130043754013149a26cac80101\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4ProtocolProtocolElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"596880010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492b657870656374207661756c745f646174756d3a205661756c74446174756d203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888888888888888896600264653001302100198109811000cdc3a400930210024888966002600460426ea800e264b3001005899914c004888c966002600c00313259800800c00e264b300100180240120090048992cc004c0c000e00d00540b46eb80050301816800a056302937540091598009802800c4c9660020030038992cc0040060090048024012264b30013030003803401502d1bae00140c0605a0028158c0a4dd50024009026204c3027375400722259800980298139baa0038992cc00400600513259800800c4c9660020030048992cc004006264b3001302d0018acc004cdc4a400860580030068992cc004c0c8012264b3001300c0018acc004c0bcdd5003402601081822b3001300b0018992cc00400601313259800800c02a01500a8992cc004c0d800e01900b40cc6eb400601481b0c0cc00503118179baa0068acc004c03c0062b3001302f375400d0098042060804205840b08160c0b4dd5002c01d02f18049816000a054803205c3754003005802c01600a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b300130053027375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0c800e01100740bc6eb400600c8190c0bc00502d1bae001302e00240bc60580028150c0a0dd5001c0050254888c966002600c00313259800800c00e264b30010018024012009132598009818001c01a00a8168dd6800c0110301816800a056302937540091598009802800c56600260526ea801200700240a900240988130c09cdd5001a44446465300122259800980598169baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130390028cc00401a33001001804c02100e402100b402103640220110088042074303700140d46eb4004c0d800a00a81b8c0d0005032181a001400e007003801a06a303200140c0605c6ea800e002815a444b3001300b302d375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0fc00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c11000e02901341046eb80050441820800a07e375c00260800048208c0f800503c40390144039011403903c1bac001806c03503f181e000a074303c002805c02e01700b40f4607400281c0dd6800981c801402103a181b800a06a375a002606c00500540dc60680028190c0d000a007003801c00d0351819000a060302e375400700140ad223233001001003223300300130020024889660026016605a6ea8042264b300100180a44c96600200313259800800c05a264b30010018992cc00400603113259800800c06603313259800981c801c566002602460686ea801a264b300100180dc4c96600200301c80e44cc896600200301e8992cc00400603f01f899912cc00400604313259800800c08a045022899912cc00400604913259800800c09604b025899912cc00400604f13259800800c4c9660020030298992cc0040062b3001304900289980c007112cc00400a26603401a44b30010028cc00401e330010058cc004dc3a400d370e90044dc3a4014911192cc004c0a8c130dd500e44c9660020030338992cc004006264b300100181ac4c966002003159800982a80144cc8966002606000313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205a81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c0bc006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b503e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b1598009819800c4c9660020030398992cc00400607503a8992cc004c16800e26605200244b3001002803c4c96600200319800800c4c008c17400e07c816a07d03e81f40f905e182d80120b281da0ae375800303a81d20b43057001415460a66ea80162b3001300a0018992cc00400607313259800800c0ea07513259800982d001c4cc0a400489660020050078992cc0040063300100189801182e801c0f902d40fa07d03e81f20bc305b002416503b415c6eb000607503a416860ae00282a8c14cdd5002c566002601200313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205c81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c020006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b903e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b0384140828105020a0414082804c966002605e00313259800800c0e2264b30010018acc004c16000a3300100180440e502d40e505540e607303981ca0b23056001415060a46ea800a2b3001302e0018992cc00400607113259800800c56600260b0005159800981898299baa0018992cc00400607513259800800c4c96600200303c8992cc0040062b3001305c0028cc00400e3300100180640f503240f503240f505940f607b03d81ea0ba305a001416060b400503b81dc0ee07682d8c160005056182a1baa00181ca0a281ca0aa81cc0e6073039416460ac00282a0c148dd500140dd04f209e3050375400260a06ea800e06c829206d03681b40d90561829800a0a2305300281a40d2069034415060a20028278c134dd500e40c904a09980f80c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00641393702900048888c8cc004004014896600200310058992cc00400626600860b000400d133005305800233003003001415860b000282aa6e012001918291829800c8c148c14cc14c0066e95200048888888c8c8c8cc88c96600200313259800981c982d9baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b3001001829414a26644b300100182a44c96600200315980098398014660020251980080846600201d19800806466002015198008044566002609860dc6ea801a264b300100182b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a899912cc0040060b913259800800c1760bb05d82ec4cc896600200305f8992cc0040060c1060830418226644b300100183144c966002003063831c18e0c713259800984100801c4cc144048896600200519800809466002605c6100026ea818a4610802610a02610a02610a020032232330010010032259800800c52845660026006610e0200314a313300200230880100142040484280a4610802610a02610a02610a02610a02610a02610a02610a02003374a90014dc02400491111119192cc0066002444646644b3001306b0028acc004c1acc23404dd5000c5300103d87a80008a6103d8798000422c051598009837001456600260dc611a026ea80062980103d87a80008a6103d87b8000422c0513322598009836800c530103d87b80008acc004c1b0006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000423804847008dd69849809848009baa0038a6103d8798000423404846808dd69848809847009baa003308d01375400284580908b011845809baa00130020033001003919191919912cc004c1ac00a29422b3001306e0028cc004cdd79848809847009baa0014c103d87b8000a50a51422c0513233225980098370014528c56600260da005133225980098379849009baa3041309301375400d133710004003133712004002848008dd6984a009848809baa0035980098369848009baa303f309101375400f100189806000a11c028a50423804847008c23804dd50009bad309201308f013754008612202611c026ea800508b01211602308b013754002611e02612002006611c026116026ea8004c23404004c22404dd5000cc0d8c22004dd50042444b30013068308a0137540031323300a3758611e026118026ea81ac8cdd79848009846809baa001002308e01308b01375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c24004c23404dd50014c24004c23404dd5000c8c8c96600260d8611e026ea8c24c04c2500400a2003132598009836800c4c034cc24c04dd418061bad309401309101375400497ae08acc004c1b800620051002423804847008c23c04dd5000a11a02309201001308e0137540028029300103d87b8000a50a514228051980099baf9800981d9846809baa002981d9846809baa001919192cc004c1b0c23c04dd5184980984a0080144006264b3001306d0018980699849809ba83040375a6128026122026ea80092f5c11598009837000c400a200484700908e011847809baa001423404612402002611c026ea8005005260103d8798000a50a5142280514a084500908a01211402308e01308b01375400260106116026ea81a908801233001308b01308801375401122232330010010042259800800c40122660066120020026600400461220200284700a44b30010018a40011300533002002308e01001422c0522980099804001119baf308e01308b013754611c026116026ea8c0e4c22c04dd5000980399846809ba90024bd70528528a10e02918329844009baa308c0132330010010022259800800c52f5c303d87a80008101800044c8cc89660033001306a308d0137546122020074a14a284580a2661200330014a14c103d87a8000a60103d8798000422c0466120026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c24c0400400e29462660040046128020028468090910144cc24006600294298103d87a8000a60103d8798000422c0466120026e9c0092f5c1133090019800a51a60103d87a8000a60103d8798000422c0466120026e9ccc24004dd400080125eb8108b012116023758611e026120020026eb4c23c04008cc008008c23c0400508c01489660020031480022600a66004004611c0200284580a4444653001001802c012006800888896600200710018acc00400a2a6611c029211d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012612802007309401002cc004c24c0400e6eb4c24c0400a0028029004212202424405222598008014530103d87a80008acc004c1a00062606e6611a02611c0200497ae08cc00400e611e02005303a001400c84400908c01488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064234051330050053094010044234046eb8c23404004dd5984700800984800800a11c0214bd6f7b63048896600260d06114026ea800e264b300100180144c966002003003801c00e264b3001309201003802c01108f011bad001801a12402308f010014234046116026ea800e00284400a44646600200200644b30010018a5eb8226644b30013375e612202611c026ea8c24404c23804dd5181e1847009baa002300a3309001375200a97ae08998480080119802002000c4cc01001000508b01184780800984800800a11a029184600984680984680984680984680984680800c8c23004c23404c23404c23404c23404c23404c23404006444653001001802400d0011112cc00400a2b30010018a518a50423c05159800800c5284566002660086122020046eb4c24404006330010039849008014c248040050034528211602423c0484780a444b30013068308a01375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002612e0200519800803c6600200b132598009838800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd5002456600260e000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001309e010038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b300130a30100380b40550a0011bae001428c0461400200284f008dd7000984f80801214002309d01001426c05010426c046eb000601f00f42780461360200284c808dd6800984d00801403109b01184c00800a12c023094013754009159800983a000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c2840400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c2980400e033018428c046eb80050a601185180800a14202375c002614402004851808c2800400509e01404d09e011bac00180940490a101184f00800a13802375a002613a0200500f42780461360200284c808dd6800984d00801403109b01184c00800a12c0230940137540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd50024566002609400313259800800c02e264b3001001806403201913259800984d80801c03a01a84c008dd6800c03109b01184c00800a12c0230940137540091598009824800c4c96600200300b8992cc00400601900c80644c96600261360200700e806a13002375a00300c426c0461300200284b008c25004dd500240290910121220242440484880909101212202309201375400700941a500940e1009425004612a02002849808c2540400a00f007803c01d09601184980800a12202309301002802c01600b005425004612202002847808c2440400a007003801c00d09201184780800a11a02308b013754007001422005222329800800c01200680088896600200510018cc00400e61240200533004309101002001400c84780a4611802611a02611a02611a02611a020032225980098341845009baa0038992cc00400600513259800800c00e0070038992cc004c2480400e00b004423c046eb4006006849008c23c0400508d011845809baa003800a11002912cc0040062900044c014cc008008c2380400508b01488cdc199b82002375a606e6114026ea8004dd6981c1845009baa0019b88480024466062004466ebcc23804c22c04dd50009ba700292cc004cdc4000a40011303a0018800a10c0248888888888888888888888a6002602a02b2301400198090094c0400424446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803214a02899802802985600802214a02375c614a020026eb4c29804004c2a0040050a601198098020018a400123014001984f009baa0179802802c88c9660026104026142026ea8006264b30010018cc0040062b30013375e60446146026ea800cc29804c28c04dd5002456600266ebcc144c28c04dd50009853009851809baa0038800c260050a001425c050a00142580500d42580612c030960184b00a1500230a50130a201375400309001427c04609c6142026ea8c13cc28404dd50012444444445300122223233001001005223259800984600800c4c94cc2b804cdcb248121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660b06ea4005220100132598009847009858009baa001899194c004dd7185b00800cdd7185b00985b80800cdd7185b008012444a66168029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330b4013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660bc6ea400522010015330b4013372c9201187665726966795f65643235353139207061796c6f61643a20003732660bc6ea400922010015330b4013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660bc6ea400d2201001325330b5013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660bf3001001a60103d87a8000a60103d879800042d00491010010019800800c00a006b950c2d804004dd6185a009858809baa0018a998578099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660b26ea400922010014a0857008c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c616c020020091305f330b501374e00297ae0899801801985b808012160023758616a02002859808dd71859009857809baa0028acc004c22c04006264a6615c0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416c6c4f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b804910100100132330010010022259800800c528c5660026600c00c616a0200313300200230b6010018a5042bc04859808dd61859009857809baa0028acc004c23c04006264a6615c0266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416e794f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013302e0012330050050013758616402615e026ea800a2b3001306600189919912998580099b96490112436865636b696e672041744c656173743a20003732660b46ea00092201001325330b1013372c92011941744c656173742073617469736669656420636f756e743a20003732660b66ea00052201001325330b2013372c92011041744c6561737420726573756c743a20003732660b93001001a60103d87a8000a60103d879800042c4049101001001337120060033001001a400122598009980400400144c0bc00620028588090291bad30b3010013758616602616802002615e026ea800a2b300130650018992998570099b9649111436865636b696e67204265666f72653a20003732660b06ea00052201001325330af013372c92010f4265666f726520726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc49bad30b50130b20137540020071337106eb4c2d404c2c804dd5000801a15e028a5042bc046168020026160026ea8c178c2c004dd50031bad30b20130af0137540051598009832000c4c94cc2b804cdcb24910436865636b696e672041667465723a20003732660b06ea00052201001325330af013372c92010e416674657220726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc48019bad30b50130b20137540031337100066eb4c2d404c2c804dd5000a15e028a5042bc046168020026160026ea8c2cc04c2c004dd50031bad30b20130af0137540051325330ae013372c920111436865636b696e67205363726970743a20003732660b06ea40052201001325330af013372c92010f53637269707420726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232330010010072259800800c528456600266ebc00cc2c804c2d8040062946266004004616e020028580090b401181619859009ba90014bd701bae30b20130af0137540048560090ac0121580242b0048560090ac011856809baa0019112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a15002912cc004cdc4000a400114c103d87a8000899804001000a14e029112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a1500248888ca60024444446644646644b30013370e66e04dd6985d80985c009baa30bb01003375a6176026170026ea8c2ec04010006264b30013370f30013758606c6172026ea80329000488cc89660033001309a01001a50a5142e8051325980099b893302300100598008044dd7186080801cdd7186080986100801a036899b800040018a9985e00a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642ec0466e08004016200685d008dd6185f00985d809baa00232980080552000912cc004cdd79813185f009baa002374e0071337000026eb4c1b0c2f804dd5001440050bb01204a3758617c026176026ea800902219b8100200a8801454cc2dc052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001642d804b3001301c0098a40031480090b501454cc2d8052415a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e74001642d4046eacc2e404c2e8040056600261260260200071480022b300100385800c4c96600261760200915980099b8f375c616c0200291104555344720089bad30b7010018a9985a80a491d657870656374206e616d65203d3d20636f6e7374616e74732e75736472001642d0050b10142e00461720200685b8090b301185c80800998119bab301b30b301375400a6eb8c184c2cc04dd5180f9859809baa0069800802cdd7185b009859809baa301f30b301375400d003801200e9111192cc004c23c04c2c404dd5000c4c96600266ebcc2d804c2cc04dd5185b009859809baa001302f330b501375200a97ae08acc004c23c0660026eacc184c2cc04dd5000c01691010d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b5013754007006a4504555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c54cc2c8052412d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001642c40460c06166026ea80062a661620292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b10149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001642bc046600e008003222232598009847809858809baa0018992cc004cdd7985b009859809baa30b60130b301375460c26166026ea8004c0bccc2d404dd4802a5eb822b3001308f0198009bab306130b301375460c26166026ea800600b48810d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b501375460c6616a026ea800e00d48904555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c288050b10118301859809baa306130b301375400315330b1014901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b1014914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001642bc046600e0080029112cc004c2340402e26644b30019800985a809859009baa058815cc0bcc2c804dd504880cdd5980f1859009baa091014029159800998139bac30b50130b2013754122026eb8c0c4c2c804dd5180f1859009baa0588acc0066002660406eb0c2d404c2c804dd5048809bae305f30b2013754603c6164026ea81626eb0c180c2c804dd5000cdd618179859009baa05848896600266e1cc05800cc0580162b300130110028cc00400e005223259800984a80985b809baa001899192cc004c25c04c2e404dd5000c4c8ca60026603e010003375860486178026ea80126eb4c2fc0400922259800984e00985f009baa0038acc004cdc499199119b8330713370066e08004dd698379861009baa003002002375a60dc6180026ea8004dd698371860009baa00830c20130bf0137540073001375660da617e026ea8c1b4c2fc04dd50054dd71861008014dd718610098618080120388acc004cdc38009bad306d30bf01375400f13375e6e9c010c09cc2fc04dd5003c5282178028a5042f00515330bd014914365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001642f0043758617c02617e020026174026ea800629410b7011833185c809baa3301200400130bb0130b80137540030aa0142d4046601a00e002810214c0285900a14a02859009159800cc004dd6182f9859009baa091019bac30b50130b2013754003330b401306030b2013754603c6164026ea8160cc2d0053001054455534472004bd702444b30013370e6028004602c00b19800802c00a4464b300130950130b70137540031325980099baf30bc0130b90137540026178026172026ea8c2f004c2e404dd5002456600266ebcc198c2e404dd50009833985c809baa30bc0130b901375400913370f3001375660ce6172026ea80066eb8c2f0040166eb8c19c015016180d9bad306730b901375400914a085b00a29410b601185d80985c009baa00185780a16a023300d00500140810a10142c804899b87980082c42440690004dd6982f9859009baa0019bad303130b2013754003002401530010029bac30b50130b201375400323017375a60c26166026ea8005007454cc2c005241856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a2020202029001642bc0515330b0014918f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642bc050ad0142bc0515330b0014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642bc046eb0c2cc04c2c004dd50141859809858009baa092018992cc004c2340403226644b3001980098309859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc0066002660426eb0c2d804c2cc04dd5049009bae306030b3013754603e6166026ea81666eb0c184c2cc04dd5000ccc2d404c184c2cc04dd5180f9859809baa059330b5014c1054455534472004bd702444b30013370e602e006602e00b159800980900146600200700291192cc004c25804c2e004dd5000c4c8c966002612e026174026ea800626464b3001337120033001375660d6617a026ea8c1acc2f404dd5003cdd71860008044dd718600098608080420348acc004cdc380098371bad306b30bd01375400913375e618002618202004604a617a026ea801229410ba014528217402375a617e020026176026ea800629410b8011833985d009baa3301300400130bc0130b90137540030ab0142d8046601c00e002810a14e0285980a14c02859809159800cc004dd618301859809baa092018014dd6185b009859809baa0019bac303030b30137540b2801a266e1e60020b309201a4001375a60c06166026ea80066eb4c0c8c2cc04dd5000c0090064c00400a6eb0c2d804c2cc04dd5000c8cdc41bad306230b4013754002900020108a9985880a4819e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001642c0050ae0142c00515330b1014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018acc004c2440403226644b3001980098301859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc004cc896600266e1cc058008c0580122b300130110018cc00400a003223259800984a80985b809baa001899192cc004c1c4c2e404dd5000c4c96600266e1cdd6985f008009bad306930bb01375400713375e617c02617e0200260466176026ea800e29410b801185d009baa0018a5042dc0460cc6172026ea8cc048010004c2ec04c2e004dd5000c2a8050b50119806803000a04085300a1640285280a16402330213758616c026166026ea824804dd718301859809baa301f30b30137540b26eb0c184c2cc04dd5000c5660033001375860c06166026ea8248060053758616c026166026ea80066eb0c0c0c2cc04dd502ca0068984800cc0041661240398008014dd6185b009859809baa00192cc004c060dd69831185a009baa00189848809bad306130b401375400314a08588090084dd698301859809baa0019bad303230b3013754003002401915330b1014901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001642c0050ae0142c00515330b1014901896578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018992cc004c1a4036330013758616a026164026ea80aa44444b30013370e603000a60300091598009809801c4cdc4800cc0040160074800244464b300130980130ba0137540031332259800984e80985e009baa0018992cc004006330010018acc004cdd7981e985f009baa00330c10130be01375400f15980099baf306c30be013754002618202617c026ea800e264b3001309f0130be013754003132325980099b87375a6188020046eb4c1bcc30404dd5003456600266e1cdd69862008009bad306e30c101375400d15980099baf30c40130c501001302930c101375400d1337000113001375660de6182026ea8c1bcc30404dd50054dd71862008064dd7186200986280806203c8a9985f80a493665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001642f80515330bf0149126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001642f80515330bf014912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001642f804618802002617e026ea80062a6617a02921184578706563746564204f4465706f73697420616374696f6e001642f00460d6617c026ea80061660285d80a1640285d80a162028142162030b10185880c2c4050c301186000985e809baa00185580a1740230be0130bb01375400260d06176026ea8c1a4c2ec04dd500242b4050b80119808003801205285400a1680285380a16802985a809859009baa094014889660033001303430b50137540b702e9819185a809baa094019bab302130b501375412802806a26644b300159800980d8014528c660026128020034a14a285a0090b40144c966002612a02616e026ea80063300198009bac30bb0130b801375412e03375c606e6170026ea8c090c2e004dd502f4dd71833185c009baa302430b80137540bd375a6176026170026ea80050094dd6985d80985c009baa30bb01980084b80cdd7185d80985c009baa302430b80137540bd375a60ca6170026ea80126eb4c0dcc2e004dd500220189b810029812985c009baa00448888c8c8cc8966002613a02617e026ea8016264b30013370e66e04dd6986200800802802456600266e1cdd698620098628080080145660026020017159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c01054455534472004bd7052000403915980099b8900398009bac306e30c1013754140034800244b30013375e618c026186026ea8008c31804c31c04c31c04c31c04c31c04c31c04c31c04c31c04c31c04c30c04dd5034c4cdc0000cc004dd598389861809baa0029bae307130c3013754605e6186026ea81a691010455534472004081100143000481c22b3001323371266e0003403260026eb0c0fcc30804dd5034520009119192cc004c0a8006266e0000ccdc199b82001375a60e8618c026ea8010dd698399863009baa0048801a1860298008024dd7186400800cdd7186400986480800a0443758618e026188026ea800902b1bab30c40130c50130c501980085000cdd71862009860809baa302d30c10137540cf375a60dc6182026ea80366eb4c100c30404dd5006a02a899b879800833c28006600e019375a60dc6182026ea80366eb4c100c30404dd5006c03d014005c54cc2fc052418d6578706563740a20202020202076616c69646174655f726573657276655f64656c74615f666f725f6465706f736974280a202020202020202076616c75655f64656c74612c0a202020202020202073657474696e67732e726573657276655f6173736574732c0a202020202020202072657175697265645f757364725f6261636b696e672c0a20202020202029001642f80515330bf014912b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001642f80515330bf014919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001642f805159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c1054455534472004bd704c1c800d00e44cdc3cc00419e14003300700c9bad306e30c101375401b375a60806182026ea803601e80a002e2a6617e02921b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001642f80485f00a2a6617e029213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001642f80515330bf014913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001642f8053001375860da6180026ea827c066eb8c0fcc30004dd518161860009baa0669bae306e30c001375460586180026ea819a6eb4c30c04c30004dd5002a02485500a17a023004001375a61820261840200cb30013021004899b833370400e0020091480010ba011bad30bf010044284050b501180f985b809baa0038a9985a80a4812e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001642d00530010039bac30b80130b501375400323005375a60c8616c026ea800500a4c00400e9000488cdc00009bad306430b701375400480f22a6616602921886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6465706f7369745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c8048acc004c1a003626644b30019800980e185a009baa05a816cc0c4c2d004dd504980cdd59810185a009baa093014031159800998149bac30b70130b4013754126026eb8c2dc04c2d004dd51810185a009baa05a899912cc004c24c04c2d404dd5000c4c8cc896600260100051598009804000c566002b30013096010018a518980e801216c028992cc004c0780062b30019800998141bac30bd0130ba013754132026eb8c19cc2e804dd51813185d009baa0609bac306830ba01375400f330bc01306830ba013754604c6174026ea8180cc2f005301054455534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e8c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b300198009bac306730ba013754132033758617a026174026ea801e661780260446174026ea8c098c2e804dd50301985e00a60106457355534472004bd702444b30013370e6038004603c01719800805c00a4464b3001309d0130bf0137540031325980099baf30c40130c10137540026188026182026ea8c31004c30404dd5002456600266ebcc1b8c30404dd500098379860809baa30c40130c101375400913370f3001375660de6182026ea80066eb8c310040166eb8c1bc01501e2cc004c2780402626eb4c1bcc30404dd500244cdc199b82375a60de6182026ea80100240290be014528217c028a5042f8046186026180026ea800616e0285e808cc05401400502842a4050ba012264b300130980130ba0137540031325980099b87375a617e0200266e000140222b30013370e6eb4c2fc04c30004004cdc0002001c56600266e1e60026eacc090c2f004dd504d80cdd71812185e009baa302830bc0137540c54881057355534472004064007130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd503152201045553447200406515330ba01491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001642e40515330ba014914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001642e40515330ba0149140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b801491dd6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001642dc0515330b801491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001642dc0515330b801491186578706563742073757364725f746f5f6d696e74203e2030001642dc04b30013096010018802c4cdc199b8200500100242d80515330b7014913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001642d80515330b701491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001642d80515330b7014911d657870656374207661756c745f757364725f6265666f7265203e3d2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491866578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa09401899912cc006600260426168026ea816a05b303130b401375412603375660406168026ea824c0500c4566002660526eb0c2dc04c2d004dd5049809bae30b70130b401375460406168026ea816a26644b300130930130b5013754003132332259800980e8014566002603a00313259800980f000c5660033001330283758617a026174026ea826404dd71833985d009baa302630ba0137540c1375860d06174026ea801e661780260446174026ea8c098c2e804dd50301985e00a6106457355534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e4c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b30013370f3001375660446174026ea8264066eb8c088c2e804dd51813185d009baa060a44105735553447200405c60d600d13259800984c00985d009baa0018992cc004cdc39bad30bf010013370200a00715980099b87375a617e0261800200266e040100222b300130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd5031522010455534472004065198009bac306930bc013754136033758617e026178026ea80266617c0260d46178026ea8c0a0c2f004dd50311985f00a61054455534472004bd702444b30013370e603c004604001b19800806c00a4464b3001309f0130c10137540031325980099baf30c60130c3013754002618c026186026ea8c31804c30c04dd5002456600266ebcc1c0c30c04dd500098389861809baa30c60130c301375400913370f3001375660e26186026ea80066eb8c318040166eb8c1c401502019b83337046eb4c1c4c30c04dd5002006005c5282180028a50430004618a026184026ea80061720285f808cc05c01400502a42ac050bc0122a66174029211765787065637420757364725f6d696e746564203d3d2030001642e40515330ba01491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001642e40515330ba014913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b8014912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001642dc0515330b801491a86578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202029001642dc0515330b8014911a65787065637420757364725f746f5f72656c65617365203e2030001642dc053001007a4001223370000266e0ccdc11bad306930bb01375400400800681122a6616e02921236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001642d80515330b7014911c657870656374207661756c745f757364725f6265666f7265203e2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e756e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa0940142bc04857808dc4a40008570090ae0111112cc004cdc39809801180a801c6600200700291192cc004c25004c2d804dd5000c66002617402616e026ea80066eb0c07cc2dc04dd5001ccc068010dd6180f985b809baa003488966002612e026172026ea80062b30013375e617a026174026ea800cc2f404c2e804dd5185e80985d009baa0068acc004cdd79833985d009baa003306830ba013754617a026174026ea801a266e1e60026eacc1a0c2e804dd5001cdd7185e808014dd7185e80985f00801202e3301f301c375a60d06174026ea8018c2f404c2e804dd5000c528216e028a5042dc0515330b80149015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642dc0485700a168023300c006001407d0a00142c404856808444464b3001308e0130b00137540031325980099baf30b50130b2013754616a026164026ea8c180c2c804dd500098171985a009ba90054bd704566002611c033001375660c06164026ea8c180c2c804dd5000c016910108747265617375727900403d132598009849809859009baa0018992cc004006330010018992cc004c24804c2d004dd5000c4c96600266ebcc2e404c2d804dd5185c80985b009baa0013032330b801375201297ae08acc004c2480660026eacc190c2d804dd5000c026910108747265617375727900404d13259800984b80985b009baa0018992cc0040063300100189985d008029985d008009985d009ba6329800800cdd59833985c809baa00499198008009bab306830ba01375460d06174026ea8024896600200314bd6f7b63044c8cc2f804cdd8185d808009ba632330010013756617a0200444b30010018a5eb7bdb182264661820266ec0c2f804004dd418381bad30bf010013300300330c30100230c10100142fc0466006006618002004617c0200285e0090011112cc00400a2003132332298008034c30804016646600200200a44b30010018998610099bb037520086e9800d2f5bded8c113298009bae30c0010019bab30c1010019862808012444b3001337200100071330c601337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528218c02880144cc31c04cdd81ba9009374c002004861008ca6002003008801a002222598008014400626466453001006986700802cc8cc00400401489660020031330ce01337606ea4010dd4001a5eb7bdb1822653001375c619802003375a619a0200330d10100248896600266e4002000e2661a40266ec0dd48041ba80070058acc004cdc7804001c4c966002615c0200310028998698099bb037520126ea00040090ce0119b800070028998690099bb037520066ea0008cc0180180050cd01219a02186780800a19a0240186eb8c31c04004dd69864008009865008012190028998630099bb037520066e98008cc0180180050c101218202186180800a1820240186eb8c2ec04004dd5985e00800985f008012178024bd7042c40501f42c406162030b10185880a17a0230ba0130b701375400315330b50149012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642d00460c6616c026ea80062a6616802920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642cc0515330b40149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642cc04617002616a026ea80062a661660292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001642c804660146eb0c184c2d004dd5004002c2b00501b42b006158030ac0185600a1720230b60130b301375400315330b10149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642c00460be6164026ea8c180c2c804dd5000c54cc2c0052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642bc0515330b0014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642bc046168026162026ea80062a6615e0292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001642b8046600c6eb0c2cc04c2c004dd500200108a9984300a4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001642140464660020026eb0c0d4c22004dd5035112cc004006297ae0899845809ba732323308d01308e010023308d013038308b0137540026611a026ea4cc894cc22c04cdcb2481165369675374727563747572652e636f6e746578743a200037326606a612002611a026ea8005220100153308b013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606a6076611a026ea8005220100153308b013372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606a6074611a026ea8005220100153308b013372c9201165369675374727563747572652e7061796c6f61643a200037326606a6018611a026ea800522010013253308c013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606c6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002423004846008dc68009bae309001308d01375400266e28c008dd7181d9846809baa0013371460046eb8c0e8c23404dd500098011bae300c308d013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002422804845008dc6800981b9984680a610b4a5369676e617475726531003308d01308e01308b013754611c026116026ea8004cc234053010140003308d01375200a97ae04bd701846809847008009bac308c0100133002002308d010014228046e50dd980320cc82ba264b30010018acc004c178c20004dd5000c4c9660020030688992cc0040060d3069899912cc0040060d713259800800c1b20d906c899912cc0040060dd13259800800c1be0df06f8992cc004c2380400e2b300100783844c966002003071838c1c60e31332259800800c1ce264b300100183a41d20e90748992cc004c24c0400e260206126020230754240046eb800509301184800800a11c02375c002611e02010848008c2340401d08b0141c108b011bad001837a11c02308b010014224046eb4004c2280400a0d8845808c22004005086011bac001308701002834c1a508801184280800a10602308101375400306741f9067833c19e0ce843008c20c0400908101419107f1bae00142080460fe00283e8dd7000983f00120fe307c00141e86eb8004c1ec00907c183c800a0ee375c00260f000483c8c1d80050741bae001307500241d860e60028388c1bcdd5003415506c415501441550144155014415501441550144155014415507041560ab05582aa0e8307100141bc6eb0004c1c000a0a505241c460dc0028360c1b800a0a1050828414106f1836000a0d4306c002827413a09d04e41b460d40028340c1a800a09904c826413106b1834000a0cc3068002825412a09504a41a460cc0028320c19800a09104882441210671832000a0c43064002823411a08d046419460c40028300c18800a08904482241110631830000a0bc305c37540050424164444653001001802400d001111192cc004c0fc006264b300100180344c966002003007803c01e00f132598009834801c0160108330dd7000a0d23066001419060c46ea800e2b3001303e0018992cc00400600d13259800800c01e00f132598009834801c4cc0e000489660020050078992cc0040063300100a800c4c008c1b000d00a402e01700b805a0da306a00241a100841986eb000600f00741a460cc0028320c188dd5001c566002608400313259800800c01a264b3001001803c01e264b3001306900389981c000912cc00400a00f13259800800c66002015001898011836001a014805c02e01700b41b460d400483420108330dd6000c01e00e8348c19800506418311baa0038acc004c064006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260d800713303b0012259800801402a264b30010018cc00403600313002306f003403500e807403a01c8380c1b400906b402d0691bac001805402906c1834800a0ce375a00260d000500741a460cc0028320c188dd5001c566002603000313259800800c01a264b3001001803c01e00f132598009834801c0160108330dd6800c01d0691833000a0c830623754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260d200700580420cc375a00300741a460cc0028320c188dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260d200700580420cc375c0028348c19800506418311baa003802a0be417c82f905f20be417c82f8c180dd50014106083041820a0c03008305a3754646644a660b666e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a200037326600a6ea416522010013259800981d982e9baa00189929982e99b9649113666f756e642070726f7879207574786f3a3a200037326600e002910100132598009820182f9baa0018992cc0040062b3001303e3060375400313259800800c126264b3001001825412a09504a899912cc0040060991325980098350014401a09a8338c1a00050661bae001306700241a060ca0028318c184dd5000c12105e412209104882420cc306330603754003153305e49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164174601860be6ea8c034c17cdd50009830982f1baa0018a9982e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016416c660080024646600200260086eacc034c17cdd51806982f9baa0022259800800c528456600266e3cdd7183180082e4528c4cc008008c19000505d20c230010013758601260b66ea80e8896600200314bd7044cc178c16cc17c004cc008008c18000505d1800800911919800800801912cc0040062980103d87a80008992cc004c01000626012660be00297ae0899801801983080120b4305f001417444464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20c05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c82d105a1bac305d002375a60b60026466ec0dd4182d8009ba7305c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60c0003337149101023a200098008054c18400600a805100a183180144ca6002015306000199b8a489023a200098008054c184006600e66008008004805100a183180120c23063001418066e29220102207d0000341746eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c20ba3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e417c66e2ccdc0000acc004cdc4000a40291481822903720be004401866e0c00520203370c002901019b8e00400241706eb800d0601b8a4881022c20002232330010010032259800981b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002300b00189980299b8400148050cdc599b803370a002900a240c000682b90571803803a264b300100181a40d2264b300100181ac4c96600200303681b40da06d1332259800800c0e2264b30010018acc004c16000a264b300130323054375400513259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc0040060810408204102264b300130600038acc004c0e4c16cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d132598009833001c4c966002608000313259800800c126264b3001001825412a09504a8992cc004c1a800e02504b419c6eb800506a1833800a0ca30633754017159800981f800c56600260c66ea802e01f048419104841808300c184dd5005411d0631bae001419860c60028308dd7000983100120c63060001417860b86ea801a08282ca08282e8dd7000a0c0305d001416c60ba00503e81f40fa07c82f0c16c005059182d80140f207903c81e20b83059001415c60aa6ea800a07482904c01cc16002207282aa07303981cc0e5059182b000a0a8375c00260aa00482b0c14c0050511bac00181a40d10541828801209e40b902140b902144c96600200302f817c0be2646006609e0086eb400605e8278c13000904a44c96600200302d816c0b62646006609a0086eb400605a8268c12800904840a904640aa05502a815209430470014114608e00502881440a20508240c1140050431bad0013044002812a08a304200141006eb4004c10400a0448210c0fc00503d1bac001303e00280fc07d03f181e000a0743758002607600501c80e2078303900140dc606a6ea801a034819203481b0dd6000c06603281c8c0d8005034181b001405e02f01780ba06e303400140c8606800501580ac05602a81a8c0c800503018171baa010809a0561112cc004c028c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a801466002007132598009807800c56600260646ea800a00f00640cd1598009807000c4c9660020030078992cc0040060110088044022264b3001303900380540250361bae00140e4606c00281a0c0c8dd50014566002602400313259800800c01e264b30013038002804c021035181b000a0683032375400500640bc817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a8444b30013009302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002601c00313259800800c01e264b30010018acc004c0dc00a264b300130110018992cc00400601513259800800c566002607400519800800c032016808a01681ba01700b805c02d03b181c000a06c303437540051598009808000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0340062b3001303137540050078032064803205c40b8605e6ea800600a805a00a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c0050290dc3a40006e1d2002804402201100840a0604a60446ea800e2c80f8604200260386ea808a293454cc06924011856616c696461746f722072657475726e65642066616c7365001365640641\"\n :\n \"593595010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a4005223233001001003223300300130020024888a60024464b30013006001899192cc004c05c00a0091640506eb8c054004c044dd5001c566002600a0031323259800980b80140122c80a0dd7180a80098089baa0038b201e403c601e6ea800a44b30013005300f3754005132323259800980b80144c8c9660026014003159800980a9baa002803459016456600260120031323259800980d80140222c80c0dd6980c800980a9baa0028acc004c0340062b3001301537540050068b202c8b2026404c8098c04cdd5000980b001c59014192cc004c04c0062b30013371290021809000c5a2600e6024002808a2c80a0dd5180a800980a80098081baa0028b201c912cc004c014c03cdd500144c8c8cc896600260300070058b202a375a602a0026eb8c054008c054004c040dd500145900e488c966002600c0031323259800980b80140122c80a0dd6980a80098089baa0038acc004c0140062b3001301137540070028b20248b201e403c601e6ea8009222232323322598009805980a9baa010899191919912cc004c07c00e264b30013011301b3754003132323232323298009812800cdd61812802cdd698128024dd69812801cc0940092222259800981580344cc068dd61815005912cc00400a26603800c44b300100289980d00289980d0048cc004dc3a400d370e90044dc3a4014911192cc004c090c0b8dd500ac4c8c8c966002606c005132332259800981500144c96600260740031330293758607200244b300100280244cc08cc0ec0084c004c0f0009039459037181a9baa0038acc004c0a400a264b3001303a0018998149bac303900122598008014012266046607600426002607800481ca2c81b8c0d4dd5001c566002605a00513259800981d000c4cc0a4dd6181c800912cc00400a009133023303b00213001303c00240e51640dc606a6ea800e2b3001300a0028992cc004c0e80062660526eb0c0e40048966002005004899811981d80109800981e00120728b206e30353754007159800980480144c96600260740031330293758607200244b300100280244cc090c0ec0084c004c0f0009039459037181a9baa0038acc004c02000a264b3001303a0018998149bac303900122598008014012266048607600426002607800481ca2c81b8c0d4dd5001c59033206640cc8199033206630323754002264b300130290018992cc004c0e400626604a607000200f1640d860686ea800e2b300130280018992cc004c0e4006264b3001302b30353754003132323259800981e80144cc0a8c0f000c4cc0a800402e2c81d0c0ec004c0ec004c0d8dd5000c59034181c000c59036181a1baa0038b206440c860646ea8008c0d400e2c8198c0d0004c0d0004c0bcdd500ac5902d09981080a912cc00400a330012303430350019181a181a981a800cdd2a400122232598009814800c4c8c96600260740050048b206e375c607000260686ea800e2b300130280018992cc004c0e40062660506eb0c0e000489660020050058cc00401e607400513001303b002401c81c22c81b0c0d0dd5001c566002605800313259800981c800c4cc0a0dd6181c000912cc00400a00b19800803cc0e800a2600260760048039038459036181a1baa0038acc004c0240062646644b3001303b0018998151bac303a0012259800801401e33001009981e00144c004c0f400900920748b2070375a6070002607200260686ea800e2b30013008001899192cc004c0e800a0091640dc6eb4c0e0004c0d0dd5001c566002600e0031323259800981d00140122c81b8dd6981c000981a1baa0038acc004cdc3a40180031323259800981d00140122c81b8dd7181c000981a1baa0038b206440c88191032206440c88190c0c8dd500124444646644b3001302c30363754005132323232323232323298009821800cc10c022608600f30430069821802cc10c012608600737586086004911111112cc004c130026266024609602226602400e26602400c26602400a2660240082660240062b3001303d304737540051323232323298009bae30500019bae30500059bae30500049bae30500039bae30500024888896600260ac00d13304500b225980080144cc10805066002604860a86ea813a460b060b260b260b20032232330010010032259800800c5284566002600660b600314a3133002002305c001415882ca460b060b260b260b260b260b260b260b200337009000cdc024005374a9001244444446464b300198009111919912cc004c16000a2b300130583062375400314c0103d87a80008a6103d87980004185159800982d801456600260b660c46ea80062980103d87a80008a6103d87b800041851332259800982d000c530103d87b80008acc004c164006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041908320dd6983418329baa0038a6103d8798000418c8318dd6983318319baa00330623754002830906118301baa00130020033001003919191919912cc004c16000a29422b3001305b0028cc004cdd7983318319baa0014c103d87b8000a50a514185132332259800982d8014528c56600260b40051332259800982e18339baa30383068375400d1337100040031337120040028330dd6983498331baa00359800982d18329baa30363066375400f100189806800a0c88a5041908320c18cdd50009bad30673064375400860cc60c66ea800506120c23060375400260c860ca00660c660c06ea8004c188004c178dd5000cc0b4c174dd5004a444b30013055305f37540031323300b375860c860c26ea81608cdd7983298311baa00100230633060375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c194c188dd50014c194c188dd5000c8c8c96600260b260c86ea8c1a0c1a400a200313259800982d000c4c030cc1a0dd418069bad30693066375400497ae08acc004c16c0062005100241908320c190dd5000a0c63067001306337540028029300103d87b8000a50a5141811980099baf9800981918311baa002981918311baa001919192cc004c164c190dd51834183480144006264b3001305a00189806198341ba8300e375a60d260cc6ea80092f5c1159800982d800c400a2004832106418321baa001418c60ce00260c66ea8005005260103d8798000a50a51418114a0830106020c0306330603754002601260c06ea815d05e2330013060305d375401322232330010010042259800800c401226600660ca0026600400460cc002831a4530013300900223375e60c660c06ea8c18cc180dd5181818301baa001300633062375200497ae0a50a51417523052305d375460c2646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130573062375460cc0074a14a2830a2660cb30014a14c103d87a8000a60103d87980004184660ca6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1a000400e294626600400460d2002831906644cc196600294298103d87a8000a60103d87980004184660ca6e9c0092f5c11330659800a51a60103d87a8000a60103d87980004184660ca6e9ccc194dd400080125eb8106120c2375860c860ca0026eb4c190008cc008008c190005061489660020031480022600c6600400460c6002830244b30010018a40011300633002002306300141812222329800800c01600900340044444b30010038800c66002009306900398348016600260d0007375a60d00050014014802106648896600200514c103d87a80008acc004c1540062605c660c460c600497ae08cc00400e60c80053008001400c82f1061488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006418d1330050053069004418c6eb8c188004dd598318009832800a0c614bd6f7b6304896600260a860bc6ea800a26464b30013065002801c590621bad3063001305f37540051641752232330010010032259800800c52f5c1133225980099baf30663063375460cc60c66ea8c0ccc18cdd50011804998329ba90054bd7044cc194008cc0100100062660080080028308c190004c19400506248c184c188c188c188c188c188006460c260c460c460c460c460c460c4003222329800800c012006800888966002005159800800c528c52820c88acc00400629422b3001330043066002375a60cc00319800801cc19c00a60ce002801a294106120c841912259800982a182f1baa0028991919194c004c19800660cc007306600248896600260d4009133030306900713305300213259800982e000c4c8cc896600260dc003132323322598009839001c0422c8378dd718378009bae306f002306f001375860da0031641ac6eb4c1ac004c1b0004c19cdd5001456600260b60031323322598009837000c4c8c8cc896600260e40070108b20de375c60de0026eb8c1bc008c1bc004dd61836800c5906b1bad306b001306c00130673754005159800982f800c4c8ca60026eb4c1b000660da003375a60d80049112cc004c1c000a264646644b300130740038094590711bae3071001375c60e200460e20026eb0c1bc00a2c836860d800260ce6ea800a2b3001303c00189919912cc004c1b8006264646644b3001307200380845906f1bae306f001375c60de00460de0026eb0c1b40062c8358dd69835800983600098339baa0028acc004c0ec00626464b3001306d002805c5906a1bad306b00130673754005159800981d000c4c8c96600260da00500b8b20d4375a60d600260ce6ea800a2c832906520ca4194832906518329baa0018b20ce183300098328009832000982f9baa0028b20ba911194c0040060090034004444b30010028800c660020073067002998021833001000a0064191230613062306230623062001912cc004c150c178dd500144c8c96600260ca0050038b20c4375a60c600260be6ea800a2c82ea44b30010018a400113006330020023063001418137029000488cdc199b82002375a605c60be6ea8004dd69817982f9baa0019b88480024466056004466ebcc18cc180dd50009ba700248888888888888888888888a60024444646600200200a4464b30013070001899192cc004c1c8c1f0dd5000c4c8ca60026eb8c2080400a6eb8c20804c20c040066eb8c2080400572a308201001375861000260fa6ea8006294107b1919800800804112cc0040062980103d87a80008992cc004cdc79bc8375c6104020020091304d3308101374e00297ae089980180198418080120fa375861020200283f8dd7183f183d9baa0028acc004c1bc006264660020026eb0c1fcc1f0dd5001912cc00400629462b300133005005308001001899801001184080800c52820f641f91598009839800c4cc094dd6183f183d9baa0022330040040018acc004c14000626466e24dd6983f800cc004dd6183f984000800d2000912cc004cc01801800a2604a003100141f080f0c1ecdd50014566002609e0031323322598009839183e9baa0028acc004c1c8c1f4dd5184080984100801c4cdc49bad308101307e37540040031337106eb4c20404c1f8dd5001000a0f88a5041f060fe0026eb4c1fcc1f0dd5001983d9baa304b307b375400b1598009827000c4c8cc896600260e460fa6ea800a2b30013072307d37546102026104020071337120026eb4c20404c1f8dd500144cdc40009bad308101307e375400483e2294107c183f8009bad307f307c375400660f66ea8c1f8c1ecdd5002c4c8c8cc004004018896600200314a115980099baf003307d3081010018a51899801001184100800a0f841fc6042660fa60fc60f66ea80092f5c083c907920f241e483c9079183c9baa0019180a800cc04c04e6024025301001091119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c83da26600a00a61020200883d8dd7183d0009bad307b001307d00141ec660260080062900048c05400660e66ea805e600a00b2232598009837983b1baa001899198068008acc004cdd79811983c1baa003307b3078375400915980099baf30483078375400260f660f06ea800e20031641d91641d860f460ee6ea80062c83a8c114c1d8dd51823183b1baa00292cc004cdc4000a4001130050018800a0e6488888888888c8ca60024444446644646644b30013370e66e04dd69847809846009baa308f01003375a611e026118026ea8c23c04010006264b30013370f30013758606c611a026ea80329000488cc89660033001308601001a50a51423c051325980099b893302100100598008044dd7184a80801cdd7184a80984b00801a032899b800040018b2120023370400200b1003423c046eb0c24804c23c04dd5001194c00402a90004896600266ebcc094c24804dd50011ba7003899b80001375a60c46124026ea800a20028480090241bac309201308f0137540048108cdc08010054400a2c845809660026034013148006290012114028b2114023756611a02611c02002b3001307f300e0038a4001159800984700801c4c96600266e3cdd7184500800a4504555344720089bad308b010018b211202308d010038b211602422004611a02002660446eacc068c21c04dd50029bae30573087013754603c610e026ea801a600200b375c611402610e026ea8c078c21c04dd5003400e004803a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444464b3001307b30850137540031325980099baf308a013087013754611402610e026ea8004c0b4cc22404dd4802a5eb822b3001307b98009bab30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab30593089013754007006a441045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5000c5908501459085011844809843009baa0018b210802330060040019111192cc004c1ecc21404dd5000c4c96600266ebcc22804c21c04dd51845009843809baa30573087013754002605a66112026ea40152f5c1159800983dcc004dd5982b9843809baa30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab3059308901375460b26112026ea800e00d4881045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5182b9843809baa0018b210a028b210a023089013086013754003164210046600c008002911112cc004c1ec02e26644b300198009845809844009baa0538164c0c4c22004dd503fcdd5980f9844009baa07f4051159800998149bac308b0130880137540fe6eb8c0ccc22004dd5180f9844009baa0538acc0066002660426eb0c22c04c22004dd503f9bae30573088013754603e6110026ea814e6eb0c160c22004dd5000cdd618189844009baa05348896600266e1cc05000cc0500162b300130110028cc00400e0052232598009841809846809baa001899192cc004c21404c23c04dd5000c4c8ca60026603e0100033758604a6124026ea80126eb4c2540400922259800984500984a009baa0038acc004cdc499199119b8330403370066e08004dd69833984c009baa003002002375a60cc612c026ea8004dd69833184b009baa00830980130950137540073001375660ca612a026ea8c194c25404dd50054dd7184c008014dd7184c00984c8080120388acc004cdc38009bad3065309501375400f13375e6e9c010c0a0c25404dd5003c5282126028a50424c0516424c043758612802612a020026120026ea8006294108e01182f1847809baa33012004001309101308e013754003164230046601c00e002810a2c84480a2c844809159800cc004dd6182b9844009baa07f9bac308b0130880137540033308a0130583088013754603e6110026ea814ccc228053001054455534472004bd702444b30013370e602a004602800b19800802c00a4464b3001308301308d0137540031325980099baf309201308f013754002612402611e026ea8c24804c23c04dd5002456600266ebcc178c23c04dd5000982f9847809baa309201308f01375400913370f3001375660be611e026ea80066eb8c248040166eb8c17c01501618089bad305f308f01375400914a084680a294108d011848809847009baa0018b2118023300e005001408516422404899b879800829c1fe90004dd6982b9844009baa0019bad30333088013754003002401d30010029bac308b01308801375400323017375a60b26112026ea8005006459086014590860145908601459086011bac3089013086013754052611202610c026ea820006264b3001307b00c899912cc006600260b26112026ea815205b3032308901375410003375660406112026ea8200050154566002660546eb0c23004c22404dd5040009bae3034308901375460406112026ea81522b30019800998111bac308c013089013754100026eb8c160c22404dd518101844809baa0549bac305930890137540033308b013059308901375460406112026ea8150cc22c05301054455534472004bd702444b30013370e602a006602a00b159800980900146600200700291192cc004c21004c23804dd5000c4c8c966002610a026120026ea800626464b3001337120033001375660c66126026ea8c18cc24c04dd5003cdd7184b008044dd7184b00984b8080420348acc004cdc380098119bad3063309301375400913375e612c02612e02004604c6126026ea80122941091014528212202375a612a020026122026ea8006294108f01182f9848009baa33013004001309201308f013754003164234046601e00e00281122c84500a2c845009159800cc004dd6182c1844809baa080018014dd61846009844809baa0019bac303230890137540a8801a266e1e60020a908001a4001375a60b06112026ea80066eb4c0d0c22404dd5000c0090084c00400a6eb0c23004c22404dd5000c8cdc41bad305a308a0137540029000200e8b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c56600260fe0191332259800cc004c160c22404dd502a40b660646112026ea8200066eacc080c22404dd504000a02a8acc004cc0a8dd61846009844809baa08001375c60686112026ea8c080c22404dd502a45660026644b30013370e602800460280091598009808800c6600200500191192cc004c20c04c23404dd5000c4c8c96600260ca611e026ea8006264b30013370e6eb4c25004004dd698309848809baa003899baf3094013095010013024309101375400714a0847808c24004dd5000c528211c02305e308f01375466024008002612202611c026ea80062c846008cc0380180050214590890145908901198111bac308c013089013754100026eb8c160c22404dd518101844809baa054375860b26112026ea80062b300198009bac30583089013754100030029bac308c013089013754003375860646112026ea815100344c1fa60020a908001cc00400a6eb0c23004c22404dd5000c96600260306eb4c168c22804dd5000c4c1fcdd6982c9845009baa0018a50422004803a6eb4c160c22404dd5000cdd6981a1844809baa00180120108b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c4c96600260ba01b198009bac308b013088013754057222225980099b87301600530160048acc004c04c00e266e24006600200b003a400122232598009843009848009baa001899912cc004c22c04c24804dd5000c4c8cc0a400456600266ebcc0fcc25004dd5001984b80984a009baa0078acc004cdd79832184a009baa001309701309401375400713259800984680984a009baa001899192cc004cdc39bad309a01002375a60ce612e026ea801a2b30013370e6eb4c26804004dd69833184b809baa0068acc004cdd7984d00984d808009815184b809baa006899b8000898009bab3067309701375460ce612e026ea802a6eb8c268040326eb8c26804c26c0403101e459095014590950145909501184d00800984a809baa0018b212602306330940137540031642480516424804612c026126026ea80062c848808c25004c24404dd500098301848809baa3061309101375400916423c046602200e00481522c84580a2c84580a6116026110026ea82080522259800cc004c0d8c22c04dd502b40be60686116026ea8208066eacc088c22c04dd504100a02e899912cc00566002603600514a319800984100800d28528a11602422c05132598009841809846809baa0018cc00660026eb0c24404c23804dd504280cdd7181c9847009baa3025308e0137540b3375c60bc611c026ea8c094c23804dd502ccdd69848809847009baa0014025375a612202611c026ea8c24406600210a03375c612202611c026ea8c094c23804dd502ccdd6982e9847009baa0049bad3039308e01375400880726e0400a604c611c026ea8011222232323259800984500984a009baa0048992cc004cdc399b81375a61320200200800715980099b87375a6132026134020026eb4c26404c268040222b3001300f00a8acc00660026605e6eb0c26404c25804dd5046809bae30653096013754605a612c026ea818601d375860cc612c026ea8032661300260cc612c026ea8c0b4c25804dd50309984c00a61054455534472004bd7052000403515980099b8900298009bac3065309601375411a034800244b30013375e6136026130026ea8008c26c04c27004c27004c27004c27004c27004c27004c27004c27004c26004dd5031c4cdc0000cc004dd59834184c009baa0029bae30683098013754605e6130026ea818e9101045553447200407d100142580481c22b3001323371266e0003002e60026eb0c100c25c04dd5031520009119192cc004c0a4006266e0000ccdc199b82001375a60d66136026ea8010dd69835184d809baa0048801a1320298008024dd7184e80800cdd7184e80984f00800a04237586138026132026ea800902b1bab309901309a01309a01980084680cdd7184c80984b009baa302d30960137540c3375a60ca612c026ea80326eb4c104c25804dd5006202c899b879800830c23406600c017375a60ca612c026ea80326eb4c104c25804dd50064039015005459094014590940145909401456600330013302f3758613202612c026ea823404dd71832984b009baa302d30960137540c300e9bac30663096013754019330980130663096013754605a612c026ea8184cc26005301054455534472004bd704c09800900d44cdc3cc00418611a03300600b9bad30653096013754019375a6082612c026ea803201c80a802a2c84a0090940145909401459094014c004dd61832184a809baa08c019bae304030950137546058612a026ea81826eb8c194c25404dd51816184a809baa0609bad3098013095013754008808a2c849808c01000566002604200913370666e0801c00401229000212202375a612a020088b2118023020308d01375400716422c0530010039bac308e01308b01375400323005375a60b86118026ea80050094c00400e9000488cdc00009bad305c308d01375400480fa2c844809159800982e006c4cc89660033001301d308a0137540ab02e98199845009baa081019bab3021308a0137541020280b22b30013302b3758611a026114026ea820404dd71846809845009baa3021308a0137540ab13322598009840809845809baa00189919912cc004c02000a2b300130080018acc0056600261080200314a31301d00242340513259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260c06120026ea8c09cc24004dd502d9984900a601054455534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b8c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c848809159800cc004dd6182f9848009baa087019bac309301309001375400f330920130233090013754604e6120026ea816ccc2480530106457355534472004bd702444b30013370e603a004603801719800805c00a4464b3001308b0130950137540031325980099baf309a013097013754002613402612e026ea8c26804c25c04dd5002456600266ebcc198c25c04dd50009833984b809baa309a01309701375400913370f3001375660ce612e026ea80066eb8c268040166eb8c19c01501e2cc004c2300402626eb4c19cc25c04dd500244cdc199b82375a60ce612e026ea8010024029095014528212a028a50425404613202612c026ea80062c84a008cc058014005029459091012264b300130860130900137540031325980099b87375a612a0200266e000140222b30013370e6eb4c25404c25804004cdc0002001c56600266e1e60026eacc094c24804dd504480cdd718129849009baa302930920137540bb4881057355534472004064007130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed220104555344720040651642400516424005164240053001375860c06122026ea8220066eb8c0f0c24404dd518141848809baa05c9bae3061309101375460506122026ea81726eb4c25004c24404dd5000a01a8b211e023028309001375400f164238051642380516423804b30013084010018802c4cdc199b820050010024234051642340516423405164234046eb4c24004004dd6984800984880800cc004dd61847809846009baa083019bae3037308c01375460466118026ea815e6eb8c170c23004dd518119846009baa0579bad308f01308c013754002803a2c84500a60020053758611a026114026ea8006460326eb4c16cc22c04dd5000a00e301d308a01375400316422005164220046eb0c22c04c22004dd50159845809844009baa08201899912cc006600260446114026ea815605d3033308a01375410203375660426114026ea8204050164566002660566eb0c23404c22804dd5040809bae308d01308a01375460426114026ea815626644b3001308101308b013754003132332259800980e8014566002603a00313259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260466120026ea8c09cc24004dd502d9984900a60106457355534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b4c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c84880915980099b8798009bab3023309001375410e03375c60466120026ea8c09cc24004dd502dd22105735553447200405c604000d132598009843009848009baa0018992cc004cdc39bad3095010013370200a00715980099b87375a612a02612c0200266e040100222b300130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed22010455534472004065198009bac30613092013754112033758612a026124026ea8026661280260c46124026ea8c0a4c24804dd502e9984a00a61054455534472004bd702444b30013370e603e004603c01b19800806c00a4464b3001308d0130970137540031325980099baf309c0130990137540026138026132026ea8c27004c26404dd5002456600266ebcc1a0c26404dd50009834984c809baa309c01309901375400913370f3001375660d26132026ea80066eb8c270040166eb8c1a401502019b83337046eb4c1a4c26404dd5002006005c528212e028a50425c046136026130026ea80062c84b008cc06001400502b4590930122c84800a2c84800a2c84800a60026eb0c180c24404dd504400cdd7181e1848809baa302830910137540b9375c60c26122026ea8c0a0c24404dd502e4dd6984a009848809baa001403516423c0460506120026ea801e2c84700a2c84700a2c84700a600200f480024466e00004cdc199b82375a60c26122026ea800801000d02345908d0145908d011bad309001001375a61200261220200330013758611e026118026ea820c066eb8c0dcc23004dd518119846009baa0579bae305c308c01375460466118026ea815e6eb4c23c04c23004dd5000a00e8b21140298008014dd61846809845009baa0019180c9bad305b308b0137540028038c074c22804dd5000c5908801459088011bac308b0130880137540566116026110026ea82080508601210c0237129000210a024214044444b30013370e6028004602600719800801c00a4464b3001308201308c013754003198009848009846809baa0019bac3020308d0137540073301a00437586040611a026ea800d222598009842809847809baa0018acc004cdd79849809848009baa00330930130900137546126026120026ea801a2b30013375e60be6120026ea800cc180c24004dd51849809848009baa006899b8798009bab30603090013754007375c612602005375c61260261280200480b8cc07cc048dd698301848009baa006309301309001375400314a084700a294108e0145908e0122c845808cc034018005020459088012108021111192cc004c1e8c21004dd5000c4c96600266ebcc22404c21804dd51844809843009baa30563086013754002605866110026ea40152f5c1159800983d4c004dd5982b1843009baa30563086013754003005a4508747265617375727900403513259800983f9843009baa0018991980d0008992cc004c1f8c22004dd5000c4c96600266ebcc23404c22804dd51846809845009baa00130303308c01375201297ae08acc004c1fa60026eacc168c22804dd5000c026911087472656173757279004045132598009841809845009baa0018991980f00089984700802998470080099847009ba6329800800cdd5982e9846809baa00499198008009bab305e308e01375460bc611c026ea8024896600200314bd6f7b63044c8cc24804cdd81847808009ba63233001001375661220200444b30010018a5eb7bdb1822646612a0266ec0c24804004dd418119bad30930100133003003309701002309501001424c04660060066128020046124020028480090011112cc00400a2003132332298008034c25804016646600200200a44b300100189984b0099bb037520086e9800d2f5bded8c113298009bae3094010019bab309501001984c808012444b30013372001000713309a01337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528213402880144cc26c04cdd81ba9009374c00200484b808ca6002003008801a002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd4001a5eb7bdb1822653001375c614002003375a61420200330a50100248896600266e4002000e26614c0266ec0dd48041ba80070058acc004cdc7804001c4c96600261340200310028998538099bb037520126ea00040090a30119b800070028998530099bb037520066ea0008cc0180180050a201214402185180800a1420240186eb8c26c04004dd6984e00800984f0080121380289984d0099bb037520066e98008cc01801800509601212c02184b80800a12a0240186eb8c23c04004dd59848008009849008012120024bd701847009845809baa0018b2112023059308a01375400316422005164220046118026112026ea80062c843808cc024dd6182b9844009baa008005308a0130870137540031642140460aa610c026ea8c158c21804dd5000c5908401459084011844009842809baa0018b210602330053758610e026108026ea8010008896600266e2000520008a6103d87a8000899804801000a0fe22c82d8c8cc004004dd61816182e9baa0572259800800c52f5c1133060374e6464660c460c6004660c4605e60c06ea8004cc188dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241888310dc68009bae30653062375400266e28c008dd7181918311baa0013371460046eb8c0c4c188dd500098011bae300d30623754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241808300dc68009817198312610b4a5369676e617475726531003306230633060375460c660c06ea8004cc18930101400033062375200a97ae04bd70183118318009bac3061001330020023062001417c6e50dd9803a264b3001304a305437540031323232332259800982f001c4c8c8cc896600260c40071300b306200c8b20be375c60be0026eb8c17c008c17c004dd6182e802c5905b1bad305b001375a60b600460b600260b400260aa6ea80062c8298c15c0090554590530c140004c13c004c138004c134004c120dd50014590464590490c10c004c108004c104004c100004c0fc004c0f8004c0f4004c0f0004c0dcdd50014590351802981a9baa323232598009816981b9baa0018992cc004c0c4c0e0dd5000c4c966002605e60726ea8006264646644b300130420038802c5903f181f8009bae303f002303f001303a37540031640e0607860726ea80062c81b8c01cc0e0dd51804181c1baa303b303837540031640d8660066eb0c01cc0dcdd50171191980080098019bab300930393754601260726ea8008896600200314a115980099b8f375c607a00206f14a3133002002303e00140e081d8c004004896600200314bd7044cc0e4c0d8c0e8004cc008008c0ec0050381801001111919800800801912cc0040062980103d87a80008992cc004c0100062600e6607600297ae0899801801981e801206e303b00140e489919912cc004c0dc00626644b3001302a303437540051323232332259800981f001c4c966002606060746ea8006264646644b300130430038992cc004c0d400626464b300130460028074590431bae30440013040375400f159800981a000c56600260806ea801e0191641051640f881f0c0f8dd50034590401bae3040001375c6080004608000260766ea80062c81c8c0f40162c81d8dd7181d800981d801181d800981d000981a9baa0028b206630360011300430370058b2068375c6068002606a0026eb0c0cc0090312264600460600066eb4c0b800902c44c8c008c0b800cdd6981600120548b205018128009812000981180098110009810800980e1baa0018b2034301e0058b203837586038002603800460380026036002602c6ea80422c80a089660026016602a6ea800a26464646644b3001301f003899804180f00289980580100345901c180e0009bad301c002301c001301b0013016375400516405044b3001300b301537540051323232323298009bac301e0019bad301e0049bad301e003980f00124444b30013023005899806181100489980780089919912cc004c09800e01b16408c6eb8c08c004dd7181180298118024590200c078004c074004c070004c06c004c058dd5001459014112cc004c028c050dd500144c8c8c9660026038005133006301b003132598009807000c56600260326ea800a00b1640691598009806800c4c8c966002603e0050078b2038375c603a00260326ea800a2b30013011001899192cc004c07c00a00f164070603a00260326ea800a2c80b9017202e3017375400316406460340026034002602a6ea800a2c80988966002601260266ea800a2646464b3001301b002899804980d0018992cc004c034006264b3001301d001899192cc004c040006264b30013020001899807180f800804c5901d180d9baa0028acc004c03c00626464653001375a6042003375a6042007375a60420049112cc004c09401201d16408830210013020001301b375400516406480c8c064dd5000980e000c5901a180c1baa0028acc004c0300062b3001301837540050058b20328b202c4058602c6ea80062c80c0c064004c064004c050dd50014590121164020300900130043754013149a26cac80101\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4StakingVaultStakingVaultMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601\"\n :\n \"5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4StakingVaultStakingVaultSpend {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601\"\n :\n \"5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V0_4StakingVaultStakingVaultElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601\"\n :\n \"5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0/index.js b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0/index.js new file mode 100644 index 0000000000..60697cbea6 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0/index.js @@ -0,0 +1,3 @@ +function _defineProperty(e,r,t){return(r=_toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==typeof i?i:i+"";}function _toPrimitive(t,r){if("object"!=typeof t||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}/* eslint-disable */// @ts-nocheck +import{applyParamsToScript,cborToScript}from"@blaze-cardano/uplc";import{Type,TPlutusData}from"@blaze-cardano/data";const PolicyId=Type.String();const ScriptHash=Type.String();const Contracts=Type.Module({Bool:Type.Boolean(),Tuple_VerificationKey_COSESign1:Type.Tuple([Type.String(),Type.Ref("COSESign1")]),COSESign1:Type.Object({headers:Type.Ref("Headers"),payload:Type.Optional(Type.String()),signature:Type.String()},{ctor:0n}),HeaderMap:Type.String(),Headers:Type.Object({protected:Type.Ref("HeaderMap"),unprotected:Type.Ref("HeaderMap")},{ctor:0n}),MultisigScript:Type.Union([Type.Object({Signature:Type.Object({key_hash:Type.String()},{ctor:0n})}),Type.Object({AllOf:Type.Object({scripts:Type.Array(Type.Ref("MultisigScript"))},{ctor:1n})}),Type.Object({AnyOf:Type.Object({scripts:Type.Array(Type.Ref("MultisigScript"))},{ctor:2n})}),Type.Object({AtLeast:Type.Object({required:Type.BigInt(),scripts:Type.Array(Type.Ref("MultisigScript"))},{ctor:3n})}),Type.Object({Before:Type.Object({time:Type.BigInt()},{ctor:4n})}),Type.Object({After:Type.Object({time:Type.BigInt()},{ctor:5n})}),Type.Object({Script:Type.Object({script_hash:Type.String()},{ctor:6n})})]),Asset:Type.Tuple([Type.String(),Type.String()]),Destination:Type.Object({address:Type.Object({payment_credential:Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})]),stake_credential:Type.Optional(Type.Union([Type.Object({Inline:Type.Tuple([Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})])],{ctor:0n})}),Type.Object({Pointer:Type.Object({slot_number:Type.BigInt(),transaction_index:Type.BigInt(),certificate_index:Type.BigInt()},{ctor:1n})})]))},{ctor:0n}),datum:Type.Union([Type.Literal("NoDatum",{ctor:0n}),Type.Object({DatumHash:Type.Tuple([Type.String()],{ctor:1n})}),Type.Object({InlineDatum:Type.Tuple([TPlutusData],{ctor:2n})})])},{ctor:0n}),DirectRequestV1:Type.Object({destination:Type.Ref("Destination"),amount:Type.BigInt(),origin:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})},{ctor:0n}),ExchangeRequestV1:Type.Object({destination:Type.Ref("Destination"),amount:Type.BigInt(),min_received:Type.BigInt(),origin:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),reserve_asset:Type.Ref("Asset")},{ctor:0n}),ExtraProtocolRedeemerV1:Type.Object({request_to_outputs:Type.Array(Type.BigInt()),input_to_requests:Type.Array(Type.BigInt()),treasury_input_idx:Type.BigInt(),treasury_output_idx:Type.BigInt(),vault_input_idx:Type.Optional(Type.BigInt()),vault_output_idx:Type.Optional(Type.BigInt())},{ctor:0n}),Nonce:Type.Union([Type.Object({UTxO:Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})],{ctor:0n})}),Type.Object({Validity:Type.Tuple([Type.Object({lower_bound:Type.Object({bound_type:Type.Union([Type.Literal("NegativeInfinity",{ctor:0n}),Type.Object({Finite:Type.Tuple([Type.BigInt()],{ctor:1n})}),Type.Literal("PositiveInfinity",{ctor:2n})]),is_inclusive:Type.Ref("Bool")},{ctor:0n}),upper_bound:Type.Object({bound_type:Type.Union([Type.Literal("NegativeInfinity",{ctor:0n}),Type.Object({Finite:Type.Tuple([Type.BigInt()],{ctor:1n})}),Type.Literal("PositiveInfinity",{ctor:2n})]),is_inclusive:Type.Ref("Bool")},{ctor:0n})},{ctor:0n})],{ctor:1n})})]),OrderActionV1:Type.Union([Type.Object({OMint:Type.Object({amount:Type.BigInt(),min_received:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:0n})}),Type.Object({ORedeem:Type.Object({amount:Type.BigInt(),min_received:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:1n})}),Type.Object({ODeposit:Type.Object({principal:Type.BigInt(),yield:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:2n})}),Type.Object({OWithdraw:Type.Object({amount:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:3n})}),Type.Object({OStake:Type.Object({amount:Type.BigInt(),min_received:Type.BigInt()},{ctor:4n})}),Type.Object({OUnstake:Type.Object({amount:Type.BigInt(),min_received:Type.BigInt(),forfeit:Type.BigInt()},{ctor:5n})}),Type.Object({ODirectMint:Type.Object({amount:Type.BigInt()},{ctor:6n})}),Type.Object({ODirectBurn:Type.Object({amount:Type.BigInt()},{ctor:7n})})]),OrderDatumV1:Type.Object({owner:Type.Ref("MultisigScript"),destination:Type.Ref("Destination"),action:Type.Ref("OrderActionV1"),data:TPlutusData},{ctor:0n}),OrderRedeemerV1:Type.Union([Type.Literal("Execute",{ctor:0n}),Type.Literal("Cancel",{ctor:1n}),Type.Literal("Invalidated",{ctor:2n})]),ProtocolRedeemerV1:Type.Union([Type.Object({Mint:Type.Object({requests:Type.Array(Type.Ref("ExchangeRequestV1"))},{ctor:0n})}),Type.Object({Burn:Type.Object({requests:Type.Array(Type.Ref("ExchangeRequestV1"))},{ctor:1n})}),Type.Object({Withdraw:Type.Object({requests:Type.Array(Type.Ref("TreasuryRequestV1"))},{ctor:2n})}),Type.Object({Deposit:Type.Object({requests:Type.Array(Type.Ref("TreasuryRequestV1"))},{ctor:3n})}),Type.Object({Stake:Type.Object({requests:Type.Array(Type.Ref("StakeRequestV1"))},{ctor:4n})}),Type.Object({Unstake:Type.Object({requests:Type.Array(Type.Ref("StakeRequestV1"))},{ctor:5n})}),Type.Object({DirectMint:Type.Object({requests:Type.Array(Type.Ref("DirectRequestV1"))},{ctor:6n})}),Type.Object({DirectBurn:Type.Object({requests:Type.Array(Type.Ref("DirectRequestV1"))},{ctor:7n})})]),ProxyDatumV1:Type.Object({logic:Type.String(),settings:Type.Ref("SettingsV1")},{ctor:0n}),RegistryV1:Type.Object({treasury:Type.String(),usdr:Type.String(),order:Type.String(),staking_vault:Type.String(),yield_oracle:Type.String()},{ctor:0n}),ReserveAsset:Type.Object({asset:Type.Ref("Asset"),numerator:Type.BigInt(),denominator:Type.BigInt()},{ctor:0n}),SettingsV1:Type.Object({mint_permission:Type.Ref("MultisigScript"),burn_permission:Type.Ref("MultisigScript"),withdraw_permission:Type.Ref("MultisigScript"),deposit_permission:Type.Ref("MultisigScript"),stake_permission:Type.Ref("MultisigScript"),unstake_permission:Type.Ref("MultisigScript"),direct_mint_permission:Type.Ref("MultisigScript"),direct_burn_permission:Type.Ref("MultisigScript"),yield_oracle_permission:Type.Ref("MultisigScript"),registry:Type.Ref("RegistryV1"),reserve_assets:Type.Array(Type.Ref("ReserveAsset")),unstaked_yield_pot:Type.Object({payment_credential:Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})]),stake_credential:Type.Optional(Type.Union([Type.Object({Inline:Type.Tuple([Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})])],{ctor:0n})}),Type.Object({Pointer:Type.Object({slot_number:Type.BigInt(),transaction_index:Type.BigInt(),certificate_index:Type.BigInt()},{ctor:1n})})]))},{ctor:0n})},{ctor:0n}),SignedPayload_ProtocolRedeemerV1:Type.Object({action:Type.Ref("ProtocolRedeemerV1"),nonce:Type.Ref("Nonce")},{ctor:0n}),SignedRedeemer_ExtraProtocolRedeemerV1:Type.Object({extra:Type.Ref("ExtraProtocolRedeemerV1"),payload:Type.Ref("SignedPayload_ProtocolRedeemerV1"),signatures:Type.Array(Type.Ref("Tuple_VerificationKey_COSESign1"))},{ctor:0n}),StakeRequestV1:Type.Object({destination:Type.Ref("Destination"),amount:Type.BigInt(),min_received:Type.BigInt(),origin:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),forfeit:Type.BigInt()},{ctor:0n}),StakingVaultRedeemerV1:Type.Undefined(),TreasuryDatumV1:Type.Object({circulating_supply:Type.BigInt()},{ctor:0n}),TreasuryRequestV1:Type.Object({destination:Type.Ref("Destination"),amount:Type.BigInt(),yield:Type.BigInt(),origin:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),reserve_asset:Type.Ref("Asset")},{ctor:0n}),VaultDatumV1:Type.Object({circulating_susdr:Type.BigInt()},{ctor:0n})});export const Bool=Contracts.Import("Bool");export const Tuple_VerificationKey_COSESign1=Contracts.Import("Tuple_VerificationKey_COSESign1");export const COSESign1=Contracts.Import("COSESign1");export const HeaderMap=Contracts.Import("HeaderMap");export const Headers=Contracts.Import("Headers");export const MultisigScript=Contracts.Import("MultisigScript");export const Asset=Contracts.Import("Asset");export const Destination=Contracts.Import("Destination");export const DirectRequestV1=Contracts.Import("DirectRequestV1");export const ExchangeRequestV1=Contracts.Import("ExchangeRequestV1");export const ExtraProtocolRedeemerV1=Contracts.Import("ExtraProtocolRedeemerV1");export const Nonce=Contracts.Import("Nonce");export const OrderActionV1=Contracts.Import("OrderActionV1");export const OrderDatumV1=Contracts.Import("OrderDatumV1");export const OrderRedeemerV1=Contracts.Import("OrderRedeemerV1");export const ProtocolRedeemerV1=Contracts.Import("ProtocolRedeemerV1");export const ProxyDatumV1=Contracts.Import("ProxyDatumV1");export const RegistryV1=Contracts.Import("RegistryV1");export const ReserveAsset=Contracts.Import("ReserveAsset");export const SettingsV1=Contracts.Import("SettingsV1");export const SignedPayload_ProtocolRedeemerV1=Contracts.Import("SignedPayload_ProtocolRedeemerV1");export const SignedRedeemer_ExtraProtocolRedeemerV1=Contracts.Import("SignedRedeemer_ExtraProtocolRedeemerV1");export const StakeRequestV1=Contracts.Import("StakeRequestV1");export const StakingVaultRedeemerV1=Contracts.Import("StakingVaultRedeemerV1");export const TreasuryDatumV1=Contracts.Import("TreasuryDatumV1");export const TreasuryRequestV1=Contracts.Import("TreasuryRequestV1");export const VaultDatumV1=Contracts.Import("VaultDatumV1");export class V1_0OrderOrderSpend{constructor(proxyPolicyId,protocolScripthash,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5916b70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d6572563100164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b30010078999119912cc004c00c0062b30013018375401700280720328acc004c0240062b30013018375401700280720328acc004c0100062b3001301837540170028072032807202a405480a8660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009810801c01a00a80f0dd7000a042301e001407060346ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026042007006802a03c375c0028108c07800501c180d1baa004801202e405c60306ea800e44b30010018a5eb82266034602e603600266004004603800280ca44646600200200644b30010018a508acc004cdc79bae301d0010038a51899801001180f000a02e406d223233001001003223300300130020029180d180d800c8c068c06cc06c00646034603660366036603660366036603660366036003301537540132301a301b301b301b301b301b301b001911919800800801912cc00400629422b30013375e0066032603a00314a3133002002301e001405c80da6e012001488888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260226605200297ae0899801801981580120483029001409d300a00a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c068006264b300100180344c966002003007803c4c96600260600071330120012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980a800c4c9660020030068992cc00400600f0078992cc004c0c000e26602400244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b30013370e9003000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0cc00e26602a00244b300100280544c96600200319800806c00626004606c006806a01d00e8074039037181a0012064805a060375800300a8052066303000140b86eb4004c0bc00a00e8180c0b400502b18149baa0038acc004cdc3a401000313259800800c01a264b3001001803c01e00f132598009818001c0160108168dd6800c01d0301816800a0563029375400715980099b8748028006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013030003802c02102d1bae00140c0605a0028158c0a4dd5001c015026204c40988131026204c4098604e6ea80092223322598009809004c4cc8966002602860506ea8006264b3001301b3029375400315980099b8f375c605a60546ea8004dd7180718151baa300d302a3754601e60546ea800e330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640a9222232330010010052259800800c4016264b3001001899802181a00100344cc014c0d0008cc00c00c005032181a000a0629bab300b302a37540353374a9001198161ba90254bd7024444646464a6605e66e592410d63726564656e7469616c3a3a200037333001001802522100400426602200a00844464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20725980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81990331bac3036002375a60680026466ec0dd4181a0009ba73035001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6072003337149101023a200098008054c0e800600a805100a181e00144ca6002015303900199b8a489023a200098008054c0e8006600e66008008004805100a181e0012074303c00140e466e29220102207d0000340d86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a206c3758007133005375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40e066e2ccdc0000acc004cdc4000a4029148182290372070004401866e0c00520203370c002901019b8e00400240d46eb800d0391b8a4881022c20002232330010010032259800980f000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c08180c010011153302849013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016409d023409c605860526ea8c0b0c0a4dd5180718149baa302c302937540030214098660026eb0c030c09cdd500b811998011bac302a3027375402e02b159800980c004c5660026024604c6ea805233001302a302737546054604e6ea80526eb0c0a8c0acc0acc0acc0acc0acc0acc0acc0acc09cdd500bcc0a8c0acc0acc0acc0acc0acc0acc0acc09cdd500bcdd5980418139baa01748888c8cc00400401488c9660026032003133015006375c6062605c6ea800a2b3001301f001899198008009bac3032302f375400644b30010018a518acc004cc014014c0cc006266004004606800314a08169031456600260340031323300100137586064605e6ea800c896600200314a1159800998028029819800c528c4cc008008c0d000502d20628acc004cdc3a400c003132337126eb4c0c8004c8cc004004dd61819981a001112cc0040062900044cc896600266010010005133700002900144005030181a00099801001181a800a064302e375400515980099b87480200062646644b3001302230303754005159800981118181baa30343035003899b89375a606860626ea8008006266e20dd6981a18189baa00200140b914a08170c0c8004dd6981918179baa003302e37546026605c6ea80162b30013370e9005000c4c8cc8966002604460606ea800a2b30013022303037546068606a0071337120026eb4c0d0c0c4dd500144cdc40009bad3034303137540048172294102e18190009bad3032302f3754006605c6ea8c0c4c0b8dd5002c4cc038010cdd2a4004660606062605c6ea80092f5c0815902b205640ac815902b18161baa001407902445660026024604c6ea805233001302a302737540293300137586018604e6ea805c08e660046eb0c0a8c09cdd500b80aa444b30013015302937540031323259800980e98159baa0018acc0056600330013371e6eb8c040c0b0dd5180798161baa3011302c37540086eb8c0bcc0b0dd5000d28528a0528a518cc004cdc79bae302f302c375400804f4a14a2814902944c966002603060586ea8006264b30013019302d375400313259800980d18171baa0018992cc004cdd7981998181baa001301a33032301a3303230333030375400897ae0330324c103d87a80004bd704660026eacc054c0c0dd5000cc054c0c0dd5180a98181baa0069119b89337020026eb4c0d4c0d8c0d8c0d8c0c8dd50110012444b30010028a508994c004c966002604060686ea800626eb4c0d4c0e0dd5981c181a9baa0018a40008190c0dc0066ebcc0dcc0e00066eac00d22259800800c566002600400d13300500348002294103444c96600266ebcc0dc0053010140008acc004cc018010dd6981c181d9bab3038001898019ba6303c0028a5040d51598009980300224001130030078a5040d481a8c0e80050380ca6002003004911981c0011981c1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0d80066eacc0dc00660760069112cc004cdc8a441000038acc004cdc7a4410000389980298121981e1ba60024bd70000c4cc015300103d87a800000640dd19800803c006446600e0046607c66ec0dd48029ba6004001401c81b8607200481ba2942294229410382294102d181918179baa0018a99816a493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640b065300130010019bad3032302f375400537586026605e6ea807d2225980099b8800248002298103d87a8000899801800801205e1112cc00400a298103d87a80008acc004c0700062603666066606800497ae08cc00400e606a0053010001400c8171032454cc0b124014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640ac6530010019bac3031302e375403d480010011112cc00400a298103d87a80008acc004cdd7981980100344c068cc0c8dd4000a5eb8233001003981a0014cdc0000a4004801902d20628a99815a48131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640a8605e60586ea80162a660549201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640a502540a4605c60566ea8c0b8c0acdd5180818159baa001302d302a3754003022409c80f20484090812088cc0140088cdd7981598141baa001002223259800800c4c966002602860506ea800a264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0c800a2b30013019302d375400313259800800c0a6264b30010018992cc00400605713259800800c4c96600200302d8992cc004006264b3001001817c4c96600200313259800800c0c6264b30010018992cc00400606713259800800c4c9660020030358992cc004006264b300100181bc4c96600200313259800800c0e6264b30010018992cc00400607713259800800c4c96600200303d8992cc00400607d03e899912cc00400608113259800800c56600260960051980080c46600202d1980080a4660020251980080846600201d198008064660020151980080445660026064608c6ea801a264b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4cc896600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f13259800982d001c4cc0f004889660020051598009821982b9baa0128992cc0040060a713259800800c4c9660020030558992cc0040062b300130600028cc00400e264b300130480018992cc0040060b113259800800c56600260c6005132598009825800c4c96600200305b8992cc0040062b300130660028cc00400607505c412d05c418d05c82e41720b88338c19000506218301baa0028acc004c144006264b300100182dc4c96600200305c82e417226644b300100182f44c96600200305f82fc17e26644b3001001830c4c966002003062831418a264b3001306d003820c18d06a1bad00183120da306a00141a06eb4004c1a400a0be8350c19c0050651bad001306600282e20ce3064001418860c06ea800a0b482e905d182f1baa00182ca0c082cc1660b3059419060c200282f8c174dd50014566002609c003159800982e9baa00281ac15d05e415d05a20b4305b37540030564115056417505682b415a0ac8308c17800505c182f00141520a905482a20be305c001416860b06ea804a0a482aa264b30010018acc004c110c160dd5000c4c9660020030548992cc0040060ab055899912cc0040060af13259800800c1620b1058899912cc0040060b513259800800c16e0b705b8992cc004c19800e2b300100782e44c96600200305d82ec1760bb1332259800800c17e264b300100183041820c10608992cc004c1ac00e2602060d602306141a06eb800506b1834000a0cc375c00260ce0108340c19401d06341710631bad00182da0cc306300141846eb4004c18800a0b08318c18000505e1bac001305f00282ac155060182e800a0b6305937540030534159053829c14e0a682f0c16c00905941410571bae001416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c1bae001304d002413860960028248c11cdd5003410504441050234105023410502341050234105023410502341050234105023410502341050484106083041820a0983049001411c6eb0004c12000a07d03e4124608c0028220c11800a07903c81e40f10471822000a084304400281d40ea07503a411460840028200c10800a07103881c40e10431820000a07c304000281b40da06d0364104607c00281e0c0f800a06903481a40d103f181e000a074303c00281940ca06503240f4607400281c0c0e800a06103081840c103b181c000a06c303800281740ba05d02e40e4606c00281a0c0d800a05902c81640b1037181a000a064303400281540aa05502a40d460640028180c0b8dd5000c0a102b40a102f40a20510288142066303000140b86eb8004c0bc0090301816800a0563029375400502340982003022811408a0448168c9660026026604e6ea8006264b30013015302837540031302c30293754003153302749013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601860506ea8c034c0a0dd5181598141baa0018a998132494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946600a00446601e600a6eacc034c0a0dd5180698141baa0010020c054dd50049b8748010dc3a400100a805402a01480c8c054004c054c058004c044dd5001c5900e0c040004c02cdd5008c5268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"590c000101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758604a604c604c604c604c604c604c604c604c60446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8c8ca6002606e003303700b981b8054c0dc026606e0113037007981b8034c0dc016606e00930370039bac3037002488888888889660026086019133021304201713302100a1330210091330210081330210071330210061330210051330210041330210031598009819181f1baa002899191919194c004dd71823800cdd71823802cdd718238024dd71823801cdd71823801244444b3001304d00689981a005912cc00400a2b3001303e304a375402f132323259800982900144cc0f0c14400c4c966002608400313259800982a000c4c8c966002608a00313259800982b800c4cc104c1580040c22c82a0c148dd500145660026092003132323298009bad30580019bad30580039bad305800248896600260b80090358b20b2182c000982b80098291baa0028b20a0414060a06ea8004c14c0062c8288c13cdd50014566002608c00315980098279baa00281645905045904d209a304d375400316413c60a000260a000260966ea805e2c824a264b3001303f304b37540031323232332259800982a801c4c8c8cc896600260b20071300b305900c8b20ac375c60ac0026eb8c158008c158004dd6182a002c590521bad3052001375a60a400460a400260a200260986ea80062c8250c13800904c45904a0c11c004c118004c114004c110004c0fcdd500145903d4590400c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815000c590281bae3028001302900130243754005164088200264b300130163022375400313259800980c18119baa0018981398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601",Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");}}export class V1_0OrderOrderElse{constructor(proxyPolicyId,protocolScripthash,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5916b70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d6572563100164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b30010078999119912cc004c00c0062b30013018375401700280720328acc004c0240062b30013018375401700280720328acc004c0100062b3001301837540170028072032807202a405480a8660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009810801c01a00a80f0dd7000a042301e001407060346ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026042007006802a03c375c0028108c07800501c180d1baa004801202e405c60306ea800e44b30010018a5eb82266034602e603600266004004603800280ca44646600200200644b30010018a508acc004cdc79bae301d0010038a51899801001180f000a02e406d223233001001003223300300130020029180d180d800c8c068c06cc06c00646034603660366036603660366036603660366036003301537540132301a301b301b301b301b301b301b001911919800800801912cc00400629422b30013375e0066032603a00314a3133002002301e001405c80da6e012001488888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260226605200297ae0899801801981580120483029001409d300a00a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c068006264b300100180344c966002003007803c4c96600260600071330120012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980a800c4c9660020030068992cc00400600f0078992cc004c0c000e26602400244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b30013370e9003000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0cc00e26602a00244b300100280544c96600200319800806c00626004606c006806a01d00e8074039037181a0012064805a060375800300a8052066303000140b86eb4004c0bc00a00e8180c0b400502b18149baa0038acc004cdc3a401000313259800800c01a264b3001001803c01e00f132598009818001c0160108168dd6800c01d0301816800a0563029375400715980099b8748028006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013030003802c02102d1bae00140c0605a0028158c0a4dd5001c015026204c40988131026204c4098604e6ea80092223322598009809004c4cc8966002602860506ea8006264b3001301b3029375400315980099b8f375c605a60546ea8004dd7180718151baa300d302a3754601e60546ea800e330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640a9222232330010010052259800800c4016264b3001001899802181a00100344cc014c0d0008cc00c00c005032181a000a0629bab300b302a37540353374a9001198161ba90254bd7024444646464a6605e66e592410d63726564656e7469616c3a3a200037333001001802522100400426602200a00844464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20725980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81990331bac3036002375a60680026466ec0dd4181a0009ba73035001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6072003337149101023a200098008054c0e800600a805100a181e00144ca6002015303900199b8a489023a200098008054c0e8006600e66008008004805100a181e0012074303c00140e466e29220102207d0000340d86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a206c3758007133005375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40e066e2ccdc0000acc004cdc4000a4029148182290372070004401866e0c00520203370c002901019b8e00400240d46eb800d0391b8a4881022c20002232330010010032259800980f000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c08180c010011153302849013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016409d023409c605860526ea8c0b0c0a4dd5180718149baa302c302937540030214098660026eb0c030c09cdd500b811998011bac302a3027375402e02b159800980c004c5660026024604c6ea805233001302a302737546054604e6ea80526eb0c0a8c0acc0acc0acc0acc0acc0acc0acc0acc09cdd500bcc0a8c0acc0acc0acc0acc0acc0acc0acc09cdd500bcdd5980418139baa01748888c8cc00400401488c9660026032003133015006375c6062605c6ea800a2b3001301f001899198008009bac3032302f375400644b30010018a518acc004cc014014c0cc006266004004606800314a08169031456600260340031323300100137586064605e6ea800c896600200314a1159800998028029819800c528c4cc008008c0d000502d20628acc004cdc3a400c003132337126eb4c0c8004c8cc004004dd61819981a001112cc0040062900044cc896600266010010005133700002900144005030181a00099801001181a800a064302e375400515980099b87480200062646644b3001302230303754005159800981118181baa30343035003899b89375a606860626ea8008006266e20dd6981a18189baa00200140b914a08170c0c8004dd6981918179baa003302e37546026605c6ea80162b30013370e9005000c4c8cc8966002604460606ea800a2b30013022303037546068606a0071337120026eb4c0d0c0c4dd500144cdc40009bad3034303137540048172294102e18190009bad3032302f3754006605c6ea8c0c4c0b8dd5002c4cc038010cdd2a4004660606062605c6ea80092f5c0815902b205640ac815902b18161baa001407902445660026024604c6ea805233001302a302737540293300137586018604e6ea805c08e660046eb0c0a8c09cdd500b80aa444b30013015302937540031323259800980e98159baa0018acc0056600330013371e6eb8c040c0b0dd5180798161baa3011302c37540086eb8c0bcc0b0dd5000d28528a0528a518cc004cdc79bae302f302c375400804f4a14a2814902944c966002603060586ea8006264b30013019302d375400313259800980d18171baa0018992cc004cdd7981998181baa001301a33032301a3303230333030375400897ae0330324c103d87a80004bd704660026eacc054c0c0dd5000cc054c0c0dd5180a98181baa0069119b89337020026eb4c0d4c0d8c0d8c0d8c0c8dd50110012444b30010028a508994c004c966002604060686ea800626eb4c0d4c0e0dd5981c181a9baa0018a40008190c0dc0066ebcc0dcc0e00066eac00d22259800800c566002600400d13300500348002294103444c96600266ebcc0dc0053010140008acc004cc018010dd6981c181d9bab3038001898019ba6303c0028a5040d51598009980300224001130030078a5040d481a8c0e80050380ca6002003004911981c0011981c1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0d80066eacc0dc00660760069112cc004cdc8a441000038acc004cdc7a4410000389980298121981e1ba60024bd70000c4cc015300103d87a800000640dd19800803c006446600e0046607c66ec0dd48029ba6004001401c81b8607200481ba2942294229410382294102d181918179baa0018a99816a493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640b065300130010019bad3032302f375400537586026605e6ea807d2225980099b8800248002298103d87a8000899801800801205e1112cc00400a298103d87a80008acc004c0700062603666066606800497ae08cc00400e606a0053010001400c8171032454cc0b124014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640ac6530010019bac3031302e375403d480010011112cc00400a298103d87a80008acc004cdd7981980100344c068cc0c8dd4000a5eb8233001003981a0014cdc0000a4004801902d20628a99815a48131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640a8605e60586ea80162a660549201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640a502540a4605c60566ea8c0b8c0acdd5180818159baa001302d302a3754003022409c80f20484090812088cc0140088cdd7981598141baa001002223259800800c4c966002602860506ea800a264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0c800a2b30013019302d375400313259800800c0a6264b30010018992cc00400605713259800800c4c96600200302d8992cc004006264b3001001817c4c96600200313259800800c0c6264b30010018992cc00400606713259800800c4c9660020030358992cc004006264b300100181bc4c96600200313259800800c0e6264b30010018992cc00400607713259800800c4c96600200303d8992cc00400607d03e899912cc00400608113259800800c56600260960051980080c46600202d1980080a4660020251980080846600201d198008064660020151980080445660026064608c6ea801a264b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4cc896600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f13259800982d001c4cc0f004889660020051598009821982b9baa0128992cc0040060a713259800800c4c9660020030558992cc0040062b300130600028cc00400e264b300130480018992cc0040060b113259800800c56600260c6005132598009825800c4c96600200305b8992cc0040062b300130660028cc00400607505c412d05c418d05c82e41720b88338c19000506218301baa0028acc004c144006264b300100182dc4c96600200305c82e417226644b300100182f44c96600200305f82fc17e26644b3001001830c4c966002003062831418a264b3001306d003820c18d06a1bad00183120da306a00141a06eb4004c1a400a0be8350c19c0050651bad001306600282e20ce3064001418860c06ea800a0b482e905d182f1baa00182ca0c082cc1660b3059419060c200282f8c174dd50014566002609c003159800982e9baa00281ac15d05e415d05a20b4305b37540030564115056417505682b415a0ac8308c17800505c182f00141520a905482a20be305c001416860b06ea804a0a482aa264b30010018acc004c110c160dd5000c4c9660020030548992cc0040060ab055899912cc0040060af13259800800c1620b1058899912cc0040060b513259800800c16e0b705b8992cc004c19800e2b300100782e44c96600200305d82ec1760bb1332259800800c17e264b300100183041820c10608992cc004c1ac00e2602060d602306141a06eb800506b1834000a0cc375c00260ce0108340c19401d06341710631bad00182da0cc306300141846eb4004c18800a0b08318c18000505e1bac001305f00282ac155060182e800a0b6305937540030534159053829c14e0a682f0c16c00905941410571bae001416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c1bae001304d002413860960028248c11cdd5003410504441050234105023410502341050234105023410502341050234105023410502341050484106083041820a0983049001411c6eb0004c12000a07d03e4124608c0028220c11800a07903c81e40f10471822000a084304400281d40ea07503a411460840028200c10800a07103881c40e10431820000a07c304000281b40da06d0364104607c00281e0c0f800a06903481a40d103f181e000a074303c00281940ca06503240f4607400281c0c0e800a06103081840c103b181c000a06c303800281740ba05d02e40e4606c00281a0c0d800a05902c81640b1037181a000a064303400281540aa05502a40d460640028180c0b8dd5000c0a102b40a102f40a20510288142066303000140b86eb8004c0bc0090301816800a0563029375400502340982003022811408a0448168c9660026026604e6ea8006264b30013015302837540031302c30293754003153302749013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601860506ea8c034c0a0dd5181598141baa0018a998132494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946600a00446601e600a6eacc034c0a0dd5180698141baa0010020c054dd50049b8748010dc3a400100a805402a01480c8c054004c054c058004c044dd5001c5900e0c040004c02cdd5008c5268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"590c000101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758604a604c604c604c604c604c604c604c604c60446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8c8ca6002606e003303700b981b8054c0dc026606e0113037007981b8034c0dc016606e00930370039bac3037002488888888889660026086019133021304201713302100a1330210091330210081330210071330210061330210051330210041330210031598009819181f1baa002899191919194c004dd71823800cdd71823802cdd718238024dd71823801cdd71823801244444b3001304d00689981a005912cc00400a2b3001303e304a375402f132323259800982900144cc0f0c14400c4c966002608400313259800982a000c4c8c966002608a00313259800982b800c4cc104c1580040c22c82a0c148dd500145660026092003132323298009bad30580019bad30580039bad305800248896600260b80090358b20b2182c000982b80098291baa0028b20a0414060a06ea8004c14c0062c8288c13cdd50014566002608c00315980098279baa00281645905045904d209a304d375400316413c60a000260a000260966ea805e2c824a264b3001303f304b37540031323232332259800982a801c4c8c8cc896600260b20071300b305900c8b20ac375c60ac0026eb8c158008c158004dd6182a002c590521bad3052001375a60a400460a400260a200260986ea80062c8250c13800904c45904a0c11c004c118004c114004c110004c0fcdd500145903d4590400c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815000c590281bae3028001302900130243754005164088200264b300130163022375400313259800980c18119baa0018981398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601",Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");}}export class V1_0ProtocolManagementProtocolManagementWithdraw{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401":"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0ProtocolManagementProtocolManagementPublish{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401":"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0ProtocolManagementProtocolManagementElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401":"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0ProtocolMintProtocolMintWithdraw{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0ProtocolMintProtocolMintPublish{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0ProtocolMintProtocolMintElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw{constructor(proxyPolicyId,mintValidator,stakeValidator,managementValidator,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");}}export class V1_0ProtocolOrchestratorProtocolOrchestratorPublish{constructor(proxyPolicyId,mintValidator,stakeValidator,managementValidator,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");}}export class V1_0ProtocolOrchestratorProtocolOrchestratorElse{constructor(proxyPolicyId,mintValidator,stakeValidator,managementValidator,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");}}export class V1_0ProtocolStakeProtocolStakeWithdraw{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441":"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0ProtocolStakeProtocolStakePublish{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441":"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0ProtocolStakeProtocolStakeElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441":"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0ProxyNftProxyNftMint{constructor(utxoRef,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");}}export class V1_0ProxyNftProxyNftElse{constructor(utxoRef,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");}}export class V1_0RealfiMintingPolicyRealfiMintingPolicyMint{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0RealfiMintingPolicyRealfiMintingPolicyElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0StakingVaultStakingVaultMint{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_0StakingVaultStakingVaultSpend{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_0StakingVaultStakingVaultElse{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_0TreasuryTreasuryMint{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_0TreasuryTreasurySpend{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_0TreasuryTreasuryElse{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0/index.js.map b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0/index.js.map new file mode 100644 index 0000000000..96b2f2289f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["applyParamsToScript","cborToScript","Type","TPlutusData","PolicyId","String","ScriptHash","Contracts","Module","Bool","Boolean","Tuple_VerificationKey_COSESign1","Tuple","Ref","COSESign1","Object","headers","payload","Optional","signature","ctor","HeaderMap","Headers","protected","unprotected","MultisigScript","Union","Signature","key_hash","AllOf","scripts","Array","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Destination","address","payment_credential","VerificationKey","stake_credential","Inline","Pointer","slot_number","transaction_index","certificate_index","datum","Literal","DatumHash","InlineDatum","DirectRequestV1","destination","amount","origin","transaction_id","output_index","ExchangeRequestV1","min_received","reserve_asset","ExtraProtocolRedeemerV1","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","Nonce","UTxO","Validity","lower_bound","bound_type","Finite","is_inclusive","upper_bound","OrderActionV1","OMint","ORedeem","ODeposit","principal","yield","OWithdraw","OStake","OUnstake","forfeit","ODirectMint","ODirectBurn","OrderDatumV1","owner","action","data","OrderRedeemerV1","ProtocolRedeemerV1","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","DirectMint","DirectBurn","ProxyDatumV1","logic","settings","RegistryV1","treasury","usdr","order","staking_vault","yield_oracle","ReserveAsset","asset","numerator","denominator","SettingsV1","mint_permission","burn_permission","withdraw_permission","deposit_permission","stake_permission","unstake_permission","direct_mint_permission","direct_burn_permission","yield_oracle_permission","registry","reserve_assets","unstaked_yield_pot","SignedPayload_ProtocolRedeemerV1","nonce","SignedRedeemer_ExtraProtocolRedeemerV1","extra","signatures","StakeRequestV1","StakingVaultRedeemerV1","Undefined","TreasuryDatumV1","circulating_supply","TreasuryRequestV1","VaultDatumV1","circulating_susdr","Import","V1_0OrderOrderSpend","constructor","proxyPolicyId","protocolScripthash","trace","_defineProperty","V1_0OrderOrderElse","V1_0ProtocolManagementProtocolManagementWithdraw","V1_0ProtocolManagementProtocolManagementPublish","V1_0ProtocolManagementProtocolManagementElse","V1_0ProtocolMintProtocolMintWithdraw","V1_0ProtocolMintProtocolMintPublish","V1_0ProtocolMintProtocolMintElse","V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw","mintValidator","stakeValidator","managementValidator","V1_0ProtocolOrchestratorProtocolOrchestratorPublish","V1_0ProtocolOrchestratorProtocolOrchestratorElse","V1_0ProtocolStakeProtocolStakeWithdraw","V1_0ProtocolStakeProtocolStakePublish","V1_0ProtocolStakeProtocolStakeElse","V1_0ProxyNftProxyNftMint","utxoRef","V1_0ProxyNftProxyNftElse","V1_0RealfiMintingPolicyRealfiMintingPolicyMint","V1_0RealfiMintingPolicyRealfiMintingPolicyElse","V1_0StakingVaultStakingVaultMint","V1_0StakingVaultStakingVaultSpend","V1_0StakingVaultStakingVaultElse","V1_0TreasuryTreasuryMint","V1_0TreasuryTreasurySpend","V1_0TreasuryTreasuryElse"],"sources":["../../../../src/generated-types/v1_0/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\ntype Data = Exact;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\nconst ScriptHash = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n Bool: Type.Boolean(),\n Tuple_VerificationKey_COSESign1: Type.Tuple([\n Type.String(),\n Type.Ref(\"COSESign1\"),\n ]),\n COSESign1: Type.Object(\n {\n headers: Type.Ref(\"Headers\"),\n payload: Type.Optional(Type.String()),\n signature: Type.String(),\n },\n { ctor: 0n },\n ),\n HeaderMap: Type.String(),\n Headers: Type.Object(\n {\n protected: Type.Ref(\"HeaderMap\"),\n unprotected: Type.Ref(\"HeaderMap\"),\n },\n { ctor: 0n },\n ),\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object(\n {\n key_hash: Type.String(),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n AllOf: Type.Object(\n {\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n AnyOf: Type.Object(\n {\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n AtLeast: Type.Object(\n {\n required: Type.BigInt(),\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n Before: Type.Object(\n {\n time: Type.BigInt(),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n After: Type.Object(\n {\n time: Type.BigInt(),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n Script: Type.Object(\n {\n script_hash: Type.String(),\n },\n { ctor: 6n },\n ),\n }),\n ]),\n Asset: Type.Tuple([Type.String(), Type.String()]),\n Destination: Type.Object(\n {\n address: Type.Object(\n {\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple(\n [\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], {\n ctor: 0n,\n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Pointer: Type.Object(\n {\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n },\n { ctor: 1n },\n ),\n }),\n ]),\n ),\n },\n { ctor: 0n },\n ),\n datum: Type.Union([\n Type.Literal(\"NoDatum\", { ctor: 0n }),\n Type.Object({\n DatumHash: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n Type.Object({\n InlineDatum: Type.Tuple([TPlutusData], { ctor: 2n }),\n }),\n ]),\n },\n { ctor: 0n },\n ),\n DirectRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n ExchangeRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n ExtraProtocolRedeemerV1: Type.Object(\n {\n request_to_outputs: Type.Array(Type.BigInt()),\n input_to_requests: Type.Array(Type.BigInt()),\n treasury_input_idx: Type.BigInt(),\n treasury_output_idx: Type.BigInt(),\n vault_input_idx: Type.Optional(Type.BigInt()),\n vault_output_idx: Type.Optional(Type.BigInt()),\n },\n { ctor: 0n },\n ),\n Nonce: Type.Union([\n Type.Object({\n UTxO: Type.Tuple(\n [\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Validity: Type.Tuple(\n [\n Type.Object(\n {\n lower_bound: Type.Object(\n {\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }),\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n },\n { ctor: 0n },\n ),\n upper_bound: Type.Object(\n {\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }),\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n ],\n { ctor: 1n },\n ),\n }),\n ]),\n OrderActionV1: Type.Union([\n Type.Object({\n OMint: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n ORedeem: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n ODeposit: Type.Object(\n {\n principal: Type.BigInt(),\n yield: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n OWithdraw: Type.Object(\n {\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n OStake: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n OUnstake: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n forfeit: Type.BigInt(),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n ODirectMint: Type.Object(\n {\n amount: Type.BigInt(),\n },\n { ctor: 6n },\n ),\n }),\n Type.Object({\n ODirectBurn: Type.Object(\n {\n amount: Type.BigInt(),\n },\n { ctor: 7n },\n ),\n }),\n ]),\n OrderDatumV1: Type.Object(\n {\n owner: Type.Ref(\"MultisigScript\"),\n destination: Type.Ref(\"Destination\"),\n action: Type.Ref(\"OrderActionV1\"),\n data: TPlutusData,\n },\n { ctor: 0n },\n ),\n OrderRedeemerV1: Type.Union([\n Type.Literal(\"Execute\", { ctor: 0n }),\n Type.Literal(\"Cancel\", { ctor: 1n }),\n Type.Literal(\"Invalidated\", { ctor: 2n }),\n ]),\n ProtocolRedeemerV1: Type.Union([\n Type.Object({\n Mint: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"ExchangeRequestV1\")),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Burn: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"ExchangeRequestV1\")),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n Withdraw: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"TreasuryRequestV1\")),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n Deposit: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"TreasuryRequestV1\")),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n Stake: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"StakeRequestV1\")),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n Unstake: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"StakeRequestV1\")),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n DirectMint: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"DirectRequestV1\")),\n },\n { ctor: 6n },\n ),\n }),\n Type.Object({\n DirectBurn: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"DirectRequestV1\")),\n },\n { ctor: 7n },\n ),\n }),\n ]),\n ProxyDatumV1: Type.Object(\n {\n logic: Type.String(),\n settings: Type.Ref(\"SettingsV1\"),\n },\n { ctor: 0n },\n ),\n RegistryV1: Type.Object(\n {\n treasury: Type.String(),\n usdr: Type.String(),\n order: Type.String(),\n staking_vault: Type.String(),\n yield_oracle: Type.String(),\n },\n { ctor: 0n },\n ),\n ReserveAsset: Type.Object(\n {\n asset: Type.Ref(\"Asset\"),\n numerator: Type.BigInt(),\n denominator: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n SettingsV1: Type.Object(\n {\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n withdraw_permission: Type.Ref(\"MultisigScript\"),\n deposit_permission: Type.Ref(\"MultisigScript\"),\n stake_permission: Type.Ref(\"MultisigScript\"),\n unstake_permission: Type.Ref(\"MultisigScript\"),\n direct_mint_permission: Type.Ref(\"MultisigScript\"),\n direct_burn_permission: Type.Ref(\"MultisigScript\"),\n yield_oracle_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"RegistryV1\"),\n reserve_assets: Type.Array(Type.Ref(\"ReserveAsset\")),\n unstaked_yield_pot: Type.Object(\n {\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple(\n [\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], {\n ctor: 0n,\n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Pointer: Type.Object(\n {\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n },\n { ctor: 1n },\n ),\n }),\n ]),\n ),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n SignedPayload_ProtocolRedeemerV1: Type.Object(\n {\n action: Type.Ref(\"ProtocolRedeemerV1\"),\n nonce: Type.Ref(\"Nonce\"),\n },\n { ctor: 0n },\n ),\n SignedRedeemer_ExtraProtocolRedeemerV1: Type.Object(\n {\n extra: Type.Ref(\"ExtraProtocolRedeemerV1\"),\n payload: Type.Ref(\"SignedPayload_ProtocolRedeemerV1\"),\n signatures: Type.Array(Type.Ref(\"Tuple_VerificationKey_COSESign1\")),\n },\n { ctor: 0n },\n ),\n StakeRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n forfeit: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n StakingVaultRedeemerV1: Type.Undefined(),\n TreasuryDatumV1: Type.Object(\n {\n circulating_supply: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n TreasuryRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n yield: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n VaultDatumV1: Type.Object(\n {\n circulating_susdr: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n});\n\nexport const Bool = Contracts.Import(\"Bool\");\nexport type Bool = Exact;\nexport const Tuple_VerificationKey_COSESign1 = Contracts.Import(\n \"Tuple_VerificationKey_COSESign1\",\n);\nexport type Tuple_VerificationKey_COSESign1 = Exact<\n typeof Tuple_VerificationKey_COSESign1\n>;\nexport const COSESign1 = Contracts.Import(\"COSESign1\");\nexport type COSESign1 = Exact;\nexport const HeaderMap = Contracts.Import(\"HeaderMap\");\nexport type HeaderMap = Exact;\nexport const Headers = Contracts.Import(\"Headers\");\nexport type Headers = Exact;\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Destination = Contracts.Import(\"Destination\");\nexport type Destination = Exact;\nexport const DirectRequestV1 = Contracts.Import(\"DirectRequestV1\");\nexport type DirectRequestV1 = Exact;\nexport const ExchangeRequestV1 = Contracts.Import(\"ExchangeRequestV1\");\nexport type ExchangeRequestV1 = Exact;\nexport const ExtraProtocolRedeemerV1 = Contracts.Import(\n \"ExtraProtocolRedeemerV1\",\n);\nexport type ExtraProtocolRedeemerV1 = Exact;\nexport const Nonce = Contracts.Import(\"Nonce\");\nexport type Nonce = Exact;\nexport const OrderActionV1 = Contracts.Import(\"OrderActionV1\");\nexport type OrderActionV1 = Exact;\nexport const OrderDatumV1 = Contracts.Import(\"OrderDatumV1\");\nexport type OrderDatumV1 = Exact;\nexport const OrderRedeemerV1 = Contracts.Import(\"OrderRedeemerV1\");\nexport type OrderRedeemerV1 = Exact;\nexport const ProtocolRedeemerV1 = Contracts.Import(\"ProtocolRedeemerV1\");\nexport type ProtocolRedeemerV1 = Exact;\nexport const ProxyDatumV1 = Contracts.Import(\"ProxyDatumV1\");\nexport type ProxyDatumV1 = Exact;\nexport const RegistryV1 = Contracts.Import(\"RegistryV1\");\nexport type RegistryV1 = Exact;\nexport const ReserveAsset = Contracts.Import(\"ReserveAsset\");\nexport type ReserveAsset = Exact;\nexport const SettingsV1 = Contracts.Import(\"SettingsV1\");\nexport type SettingsV1 = Exact;\nexport const SignedPayload_ProtocolRedeemerV1 = Contracts.Import(\n \"SignedPayload_ProtocolRedeemerV1\",\n);\nexport type SignedPayload_ProtocolRedeemerV1 = Exact<\n typeof SignedPayload_ProtocolRedeemerV1\n>;\nexport const SignedRedeemer_ExtraProtocolRedeemerV1 = Contracts.Import(\n \"SignedRedeemer_ExtraProtocolRedeemerV1\",\n);\nexport type SignedRedeemer_ExtraProtocolRedeemerV1 = Exact<\n typeof SignedRedeemer_ExtraProtocolRedeemerV1\n>;\nexport const StakeRequestV1 = Contracts.Import(\"StakeRequestV1\");\nexport type StakeRequestV1 = Exact;\nexport const StakingVaultRedeemerV1 = Contracts.Import(\n \"StakingVaultRedeemerV1\",\n);\nexport type StakingVaultRedeemerV1 = Exact;\nexport const TreasuryDatumV1 = Contracts.Import(\"TreasuryDatumV1\");\nexport type TreasuryDatumV1 = Exact;\nexport const TreasuryRequestV1 = Contracts.Import(\"TreasuryRequestV1\");\nexport type TreasuryRequestV1 = Exact;\nexport const VaultDatumV1 = Contracts.Import(\"VaultDatumV1\");\nexport type VaultDatumV1 = Exact;\n\nexport class V1_0OrderOrderSpend {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5916b70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d6572563100164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b30010078999119912cc004c00c0062b30013018375401700280720328acc004c0240062b30013018375401700280720328acc004c0100062b3001301837540170028072032807202a405480a8660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009810801c01a00a80f0dd7000a042301e001407060346ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026042007006802a03c375c0028108c07800501c180d1baa004801202e405c60306ea800e44b30010018a5eb82266034602e603600266004004603800280ca44646600200200644b30010018a508acc004cdc79bae301d0010038a51899801001180f000a02e406d223233001001003223300300130020029180d180d800c8c068c06cc06c00646034603660366036603660366036603660366036003301537540132301a301b301b301b301b301b301b001911919800800801912cc00400629422b30013375e0066032603a00314a3133002002301e001405c80da6e012001488888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260226605200297ae0899801801981580120483029001409d300a00a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c068006264b300100180344c966002003007803c4c96600260600071330120012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980a800c4c9660020030068992cc00400600f0078992cc004c0c000e26602400244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b30013370e9003000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0cc00e26602a00244b300100280544c96600200319800806c00626004606c006806a01d00e8074039037181a0012064805a060375800300a8052066303000140b86eb4004c0bc00a00e8180c0b400502b18149baa0038acc004cdc3a401000313259800800c01a264b3001001803c01e00f132598009818001c0160108168dd6800c01d0301816800a0563029375400715980099b8748028006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013030003802c02102d1bae00140c0605a0028158c0a4dd5001c015026204c40988131026204c4098604e6ea80092223322598009809004c4cc8966002602860506ea8006264b3001301b3029375400315980099b8f375c605a60546ea8004dd7180718151baa300d302a3754601e60546ea800e330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640a9222232330010010052259800800c4016264b3001001899802181a00100344cc014c0d0008cc00c00c005032181a000a0629bab300b302a37540353374a9001198161ba90254bd7024444646464a6605e66e592410d63726564656e7469616c3a3a200037333001001802522100400426602200a00844464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20725980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81990331bac3036002375a60680026466ec0dd4181a0009ba73035001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6072003337149101023a200098008054c0e800600a805100a181e00144ca6002015303900199b8a489023a200098008054c0e8006600e66008008004805100a181e0012074303c00140e466e29220102207d0000340d86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a206c3758007133005375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40e066e2ccdc0000acc004cdc4000a4029148182290372070004401866e0c00520203370c002901019b8e00400240d46eb800d0391b8a4881022c20002232330010010032259800980f000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c08180c010011153302849013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016409d023409c605860526ea8c0b0c0a4dd5180718149baa302c302937540030214098660026eb0c030c09cdd500b811998011bac302a3027375402e02b159800980c004c5660026024604c6ea805233001302a302737546054604e6ea80526eb0c0a8c0acc0acc0acc0acc0acc0acc0acc0acc09cdd500bcc0a8c0acc0acc0acc0acc0acc0acc0acc09cdd500bcdd5980418139baa01748888c8cc00400401488c9660026032003133015006375c6062605c6ea800a2b3001301f001899198008009bac3032302f375400644b30010018a518acc004cc014014c0cc006266004004606800314a08169031456600260340031323300100137586064605e6ea800c896600200314a1159800998028029819800c528c4cc008008c0d000502d20628acc004cdc3a400c003132337126eb4c0c8004c8cc004004dd61819981a001112cc0040062900044cc896600266010010005133700002900144005030181a00099801001181a800a064302e375400515980099b87480200062646644b3001302230303754005159800981118181baa30343035003899b89375a606860626ea8008006266e20dd6981a18189baa00200140b914a08170c0c8004dd6981918179baa003302e37546026605c6ea80162b30013370e9005000c4c8cc8966002604460606ea800a2b30013022303037546068606a0071337120026eb4c0d0c0c4dd500144cdc40009bad3034303137540048172294102e18190009bad3032302f3754006605c6ea8c0c4c0b8dd5002c4cc038010cdd2a4004660606062605c6ea80092f5c0815902b205640ac815902b18161baa001407902445660026024604c6ea805233001302a302737540293300137586018604e6ea805c08e660046eb0c0a8c09cdd500b80aa444b30013015302937540031323259800980e98159baa0018acc0056600330013371e6eb8c040c0b0dd5180798161baa3011302c37540086eb8c0bcc0b0dd5000d28528a0528a518cc004cdc79bae302f302c375400804f4a14a2814902944c966002603060586ea8006264b30013019302d375400313259800980d18171baa0018992cc004cdd7981998181baa001301a33032301a3303230333030375400897ae0330324c103d87a80004bd704660026eacc054c0c0dd5000cc054c0c0dd5180a98181baa0069119b89337020026eb4c0d4c0d8c0d8c0d8c0c8dd50110012444b30010028a508994c004c966002604060686ea800626eb4c0d4c0e0dd5981c181a9baa0018a40008190c0dc0066ebcc0dcc0e00066eac00d22259800800c566002600400d13300500348002294103444c96600266ebcc0dc0053010140008acc004cc018010dd6981c181d9bab3038001898019ba6303c0028a5040d51598009980300224001130030078a5040d481a8c0e80050380ca6002003004911981c0011981c1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0d80066eacc0dc00660760069112cc004cdc8a441000038acc004cdc7a4410000389980298121981e1ba60024bd70000c4cc015300103d87a800000640dd19800803c006446600e0046607c66ec0dd48029ba6004001401c81b8607200481ba2942294229410382294102d181918179baa0018a99816a493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640b065300130010019bad3032302f375400537586026605e6ea807d2225980099b8800248002298103d87a8000899801800801205e1112cc00400a298103d87a80008acc004c0700062603666066606800497ae08cc00400e606a0053010001400c8171032454cc0b124014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640ac6530010019bac3031302e375403d480010011112cc00400a298103d87a80008acc004cdd7981980100344c068cc0c8dd4000a5eb8233001003981a0014cdc0000a4004801902d20628a99815a48131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640a8605e60586ea80162a660549201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640a502540a4605c60566ea8c0b8c0acdd5180818159baa001302d302a3754003022409c80f20484090812088cc0140088cdd7981598141baa001002223259800800c4c966002602860506ea800a264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0c800a2b30013019302d375400313259800800c0a6264b30010018992cc00400605713259800800c4c96600200302d8992cc004006264b3001001817c4c96600200313259800800c0c6264b30010018992cc00400606713259800800c4c9660020030358992cc004006264b300100181bc4c96600200313259800800c0e6264b30010018992cc00400607713259800800c4c96600200303d8992cc00400607d03e899912cc00400608113259800800c56600260960051980080c46600202d1980080a4660020251980080846600201d198008064660020151980080445660026064608c6ea801a264b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4cc896600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f13259800982d001c4cc0f004889660020051598009821982b9baa0128992cc0040060a713259800800c4c9660020030558992cc0040062b300130600028cc00400e264b300130480018992cc0040060b113259800800c56600260c6005132598009825800c4c96600200305b8992cc0040062b300130660028cc00400607505c412d05c418d05c82e41720b88338c19000506218301baa0028acc004c144006264b300100182dc4c96600200305c82e417226644b300100182f44c96600200305f82fc17e26644b3001001830c4c966002003062831418a264b3001306d003820c18d06a1bad00183120da306a00141a06eb4004c1a400a0be8350c19c0050651bad001306600282e20ce3064001418860c06ea800a0b482e905d182f1baa00182ca0c082cc1660b3059419060c200282f8c174dd50014566002609c003159800982e9baa00281ac15d05e415d05a20b4305b37540030564115056417505682b415a0ac8308c17800505c182f00141520a905482a20be305c001416860b06ea804a0a482aa264b30010018acc004c110c160dd5000c4c9660020030548992cc0040060ab055899912cc0040060af13259800800c1620b1058899912cc0040060b513259800800c16e0b705b8992cc004c19800e2b300100782e44c96600200305d82ec1760bb1332259800800c17e264b300100183041820c10608992cc004c1ac00e2602060d602306141a06eb800506b1834000a0cc375c00260ce0108340c19401d06341710631bad00182da0cc306300141846eb4004c18800a0b08318c18000505e1bac001305f00282ac155060182e800a0b6305937540030534159053829c14e0a682f0c16c00905941410571bae001416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c1bae001304d002413860960028248c11cdd5003410504441050234105023410502341050234105023410502341050234105023410502341050484106083041820a0983049001411c6eb0004c12000a07d03e4124608c0028220c11800a07903c81e40f10471822000a084304400281d40ea07503a411460840028200c10800a07103881c40e10431820000a07c304000281b40da06d0364104607c00281e0c0f800a06903481a40d103f181e000a074303c00281940ca06503240f4607400281c0c0e800a06103081840c103b181c000a06c303800281740ba05d02e40e4606c00281a0c0d800a05902c81640b1037181a000a064303400281540aa05502a40d460640028180c0b8dd5000c0a102b40a102f40a20510288142066303000140b86eb8004c0bc0090301816800a0563029375400502340982003022811408a0448168c9660026026604e6ea8006264b30013015302837540031302c30293754003153302749013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601860506ea8c034c0a0dd5181598141baa0018a998132494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946600a00446601e600a6eacc034c0a0dd5180698141baa0010020c054dd50049b8748010dc3a400100a805402a01480c8c054004c054c058004c044dd5001c5900e0c040004c02cdd5008c5268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"590c000101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758604a604c604c604c604c604c604c604c604c60446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8c8ca6002606e003303700b981b8054c0dc026606e0113037007981b8034c0dc016606e00930370039bac3037002488888888889660026086019133021304201713302100a1330210091330210081330210071330210061330210051330210041330210031598009819181f1baa002899191919194c004dd71823800cdd71823802cdd718238024dd71823801cdd71823801244444b3001304d00689981a005912cc00400a2b3001303e304a375402f132323259800982900144cc0f0c14400c4c966002608400313259800982a000c4c8c966002608a00313259800982b800c4cc104c1580040c22c82a0c148dd500145660026092003132323298009bad30580019bad30580039bad305800248896600260b80090358b20b2182c000982b80098291baa0028b20a0414060a06ea8004c14c0062c8288c13cdd50014566002608c00315980098279baa00281645905045904d209a304d375400316413c60a000260a000260966ea805e2c824a264b3001303f304b37540031323232332259800982a801c4c8c8cc896600260b20071300b305900c8b20ac375c60ac0026eb8c158008c158004dd6182a002c590521bad3052001375a60a400460a400260a200260986ea80062c8250c13800904c45904a0c11c004c118004c114004c110004c0fcdd500145903d4590400c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815000c590281bae3028001302900130243754005164088200264b300130163022375400313259800980c18119baa0018981398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601\",\n Type.Tuple([PolicyId, ScriptHash]),\n [proxyPolicyId, protocolScripthash],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0OrderOrderElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5916b70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d6572563100164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b30010078999119912cc004c00c0062b30013018375401700280720328acc004c0240062b30013018375401700280720328acc004c0100062b3001301837540170028072032807202a405480a8660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009810801c01a00a80f0dd7000a042301e001407060346ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026042007006802a03c375c0028108c07800501c180d1baa004801202e405c60306ea800e44b30010018a5eb82266034602e603600266004004603800280ca44646600200200644b30010018a508acc004cdc79bae301d0010038a51899801001180f000a02e406d223233001001003223300300130020029180d180d800c8c068c06cc06c00646034603660366036603660366036603660366036003301537540132301a301b301b301b301b301b301b001911919800800801912cc00400629422b30013375e0066032603a00314a3133002002301e001405c80da6e012001488888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260226605200297ae0899801801981580120483029001409d300a00a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c068006264b300100180344c966002003007803c4c96600260600071330120012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980a800c4c9660020030068992cc00400600f0078992cc004c0c000e26602400244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b30013370e9003000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0cc00e26602a00244b300100280544c96600200319800806c00626004606c006806a01d00e8074039037181a0012064805a060375800300a8052066303000140b86eb4004c0bc00a00e8180c0b400502b18149baa0038acc004cdc3a401000313259800800c01a264b3001001803c01e00f132598009818001c0160108168dd6800c01d0301816800a0563029375400715980099b8748028006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013030003802c02102d1bae00140c0605a0028158c0a4dd5001c015026204c40988131026204c4098604e6ea80092223322598009809004c4cc8966002602860506ea8006264b3001301b3029375400315980099b8f375c605a60546ea8004dd7180718151baa300d302a3754601e60546ea800e330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640a9222232330010010052259800800c4016264b3001001899802181a00100344cc014c0d0008cc00c00c005032181a000a0629bab300b302a37540353374a9001198161ba90254bd7024444646464a6605e66e592410d63726564656e7469616c3a3a200037333001001802522100400426602200a00844464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20725980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81990331bac3036002375a60680026466ec0dd4181a0009ba73035001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6072003337149101023a200098008054c0e800600a805100a181e00144ca6002015303900199b8a489023a200098008054c0e8006600e66008008004805100a181e0012074303c00140e466e29220102207d0000340d86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a206c3758007133005375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40e066e2ccdc0000acc004cdc4000a4029148182290372070004401866e0c00520203370c002901019b8e00400240d46eb800d0391b8a4881022c20002232330010010032259800980f000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c08180c010011153302849013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016409d023409c605860526ea8c0b0c0a4dd5180718149baa302c302937540030214098660026eb0c030c09cdd500b811998011bac302a3027375402e02b159800980c004c5660026024604c6ea805233001302a302737546054604e6ea80526eb0c0a8c0acc0acc0acc0acc0acc0acc0acc0acc09cdd500bcc0a8c0acc0acc0acc0acc0acc0acc0acc09cdd500bcdd5980418139baa01748888c8cc00400401488c9660026032003133015006375c6062605c6ea800a2b3001301f001899198008009bac3032302f375400644b30010018a518acc004cc014014c0cc006266004004606800314a08169031456600260340031323300100137586064605e6ea800c896600200314a1159800998028029819800c528c4cc008008c0d000502d20628acc004cdc3a400c003132337126eb4c0c8004c8cc004004dd61819981a001112cc0040062900044cc896600266010010005133700002900144005030181a00099801001181a800a064302e375400515980099b87480200062646644b3001302230303754005159800981118181baa30343035003899b89375a606860626ea8008006266e20dd6981a18189baa00200140b914a08170c0c8004dd6981918179baa003302e37546026605c6ea80162b30013370e9005000c4c8cc8966002604460606ea800a2b30013022303037546068606a0071337120026eb4c0d0c0c4dd500144cdc40009bad3034303137540048172294102e18190009bad3032302f3754006605c6ea8c0c4c0b8dd5002c4cc038010cdd2a4004660606062605c6ea80092f5c0815902b205640ac815902b18161baa001407902445660026024604c6ea805233001302a302737540293300137586018604e6ea805c08e660046eb0c0a8c09cdd500b80aa444b30013015302937540031323259800980e98159baa0018acc0056600330013371e6eb8c040c0b0dd5180798161baa3011302c37540086eb8c0bcc0b0dd5000d28528a0528a518cc004cdc79bae302f302c375400804f4a14a2814902944c966002603060586ea8006264b30013019302d375400313259800980d18171baa0018992cc004cdd7981998181baa001301a33032301a3303230333030375400897ae0330324c103d87a80004bd704660026eacc054c0c0dd5000cc054c0c0dd5180a98181baa0069119b89337020026eb4c0d4c0d8c0d8c0d8c0c8dd50110012444b30010028a508994c004c966002604060686ea800626eb4c0d4c0e0dd5981c181a9baa0018a40008190c0dc0066ebcc0dcc0e00066eac00d22259800800c566002600400d13300500348002294103444c96600266ebcc0dc0053010140008acc004cc018010dd6981c181d9bab3038001898019ba6303c0028a5040d51598009980300224001130030078a5040d481a8c0e80050380ca6002003004911981c0011981c1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0d80066eacc0dc00660760069112cc004cdc8a441000038acc004cdc7a4410000389980298121981e1ba60024bd70000c4cc015300103d87a800000640dd19800803c006446600e0046607c66ec0dd48029ba6004001401c81b8607200481ba2942294229410382294102d181918179baa0018a99816a493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640b065300130010019bad3032302f375400537586026605e6ea807d2225980099b8800248002298103d87a8000899801800801205e1112cc00400a298103d87a80008acc004c0700062603666066606800497ae08cc00400e606a0053010001400c8171032454cc0b124014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640ac6530010019bac3031302e375403d480010011112cc00400a298103d87a80008acc004cdd7981980100344c068cc0c8dd4000a5eb8233001003981a0014cdc0000a4004801902d20628a99815a48131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640a8605e60586ea80162a660549201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640a502540a4605c60566ea8c0b8c0acdd5180818159baa001302d302a3754003022409c80f20484090812088cc0140088cdd7981598141baa001002223259800800c4c966002602860506ea800a264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0c800a2b30013019302d375400313259800800c0a6264b30010018992cc00400605713259800800c4c96600200302d8992cc004006264b3001001817c4c96600200313259800800c0c6264b30010018992cc00400606713259800800c4c9660020030358992cc004006264b300100181bc4c96600200313259800800c0e6264b30010018992cc00400607713259800800c4c96600200303d8992cc00400607d03e899912cc00400608113259800800c56600260960051980080c46600202d1980080a4660020251980080846600201d198008064660020151980080445660026064608c6ea801a264b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4cc896600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f13259800982d001c4cc0f004889660020051598009821982b9baa0128992cc0040060a713259800800c4c9660020030558992cc0040062b300130600028cc00400e264b300130480018992cc0040060b113259800800c56600260c6005132598009825800c4c96600200305b8992cc0040062b300130660028cc00400607505c412d05c418d05c82e41720b88338c19000506218301baa0028acc004c144006264b300100182dc4c96600200305c82e417226644b300100182f44c96600200305f82fc17e26644b3001001830c4c966002003062831418a264b3001306d003820c18d06a1bad00183120da306a00141a06eb4004c1a400a0be8350c19c0050651bad001306600282e20ce3064001418860c06ea800a0b482e905d182f1baa00182ca0c082cc1660b3059419060c200282f8c174dd50014566002609c003159800982e9baa00281ac15d05e415d05a20b4305b37540030564115056417505682b415a0ac8308c17800505c182f00141520a905482a20be305c001416860b06ea804a0a482aa264b30010018acc004c110c160dd5000c4c9660020030548992cc0040060ab055899912cc0040060af13259800800c1620b1058899912cc0040060b513259800800c16e0b705b8992cc004c19800e2b300100782e44c96600200305d82ec1760bb1332259800800c17e264b300100183041820c10608992cc004c1ac00e2602060d602306141a06eb800506b1834000a0cc375c00260ce0108340c19401d06341710631bad00182da0cc306300141846eb4004c18800a0b08318c18000505e1bac001305f00282ac155060182e800a0b6305937540030534159053829c14e0a682f0c16c00905941410571bae001416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c1bae001304d002413860960028248c11cdd5003410504441050234105023410502341050234105023410502341050234105023410502341050484106083041820a0983049001411c6eb0004c12000a07d03e4124608c0028220c11800a07903c81e40f10471822000a084304400281d40ea07503a411460840028200c10800a07103881c40e10431820000a07c304000281b40da06d0364104607c00281e0c0f800a06903481a40d103f181e000a074303c00281940ca06503240f4607400281c0c0e800a06103081840c103b181c000a06c303800281740ba05d02e40e4606c00281a0c0d800a05902c81640b1037181a000a064303400281540aa05502a40d460640028180c0b8dd5000c0a102b40a102f40a20510288142066303000140b86eb8004c0bc0090301816800a0563029375400502340982003022811408a0448168c9660026026604e6ea8006264b30013015302837540031302c30293754003153302749013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601860506ea8c034c0a0dd5181598141baa0018a998132494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946600a00446601e600a6eacc034c0a0dd5180698141baa0010020c054dd50049b8748010dc3a400100a805402a01480c8c054004c054c058004c044dd5001c5900e0c040004c02cdd5008c5268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"590c000101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758604a604c604c604c604c604c604c604c604c60446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8c8ca6002606e003303700b981b8054c0dc026606e0113037007981b8034c0dc016606e00930370039bac3037002488888888889660026086019133021304201713302100a1330210091330210081330210071330210061330210051330210041330210031598009819181f1baa002899191919194c004dd71823800cdd71823802cdd718238024dd71823801cdd71823801244444b3001304d00689981a005912cc00400a2b3001303e304a375402f132323259800982900144cc0f0c14400c4c966002608400313259800982a000c4c8c966002608a00313259800982b800c4cc104c1580040c22c82a0c148dd500145660026092003132323298009bad30580019bad30580039bad305800248896600260b80090358b20b2182c000982b80098291baa0028b20a0414060a06ea8004c14c0062c8288c13cdd50014566002608c00315980098279baa00281645905045904d209a304d375400316413c60a000260a000260966ea805e2c824a264b3001303f304b37540031323232332259800982a801c4c8c8cc896600260b20071300b305900c8b20ac375c60ac0026eb8c158008c158004dd6182a002c590521bad3052001375a60a400460a400260a200260986ea80062c8250c13800904c45904a0c11c004c118004c114004c110004c0fcdd500145903d4590400c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815000c590281bae3028001302900130243754005164088200264b300130163022375400313259800980c18119baa0018981398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601\",\n Type.Tuple([PolicyId, ScriptHash]),\n [proxyPolicyId, protocolScripthash],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolManagementProtocolManagementWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolManagementProtocolManagementPublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolManagementProtocolManagementElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolMintProtocolMintWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolMintProtocolMintPublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolMintProtocolMintElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash]),\n [proxyPolicyId, mintValidator, stakeValidator, managementValidator],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolOrchestratorProtocolOrchestratorPublish {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash]),\n [proxyPolicyId, mintValidator, stakeValidator, managementValidator],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolOrchestratorProtocolOrchestratorElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash]),\n [proxyPolicyId, mintValidator, stakeValidator, managementValidator],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolStakeProtocolStakeWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441\"\n : \"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolStakeProtocolStakePublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441\"\n : \"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProtocolStakeProtocolStakeElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441\"\n : \"592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProxyNftProxyNftMint {\n public Script: Script;\n constructor(utxoRef: OutputReference, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n : \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ]),\n [utxoRef],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0ProxyNftProxyNftElse {\n public Script: Script;\n constructor(utxoRef: OutputReference, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n : \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ]),\n [utxoRef],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0RealfiMintingPolicyRealfiMintingPolicyMint {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0RealfiMintingPolicyRealfiMintingPolicyElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0StakingVaultStakingVaultMint {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0StakingVaultStakingVaultSpend {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0StakingVaultStakingVaultElse {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0TreasuryTreasuryMint {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0TreasuryTreasurySpend {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_0TreasuryTreasuryElse {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0_rc1/index.js b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0_rc1/index.js new file mode 100644 index 0000000000..42b5b25f57 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0_rc1/index.js @@ -0,0 +1,3 @@ +function _defineProperty(e,r,t){return(r=_toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==typeof i?i:i+"";}function _toPrimitive(t,r){if("object"!=typeof t||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}/* eslint-disable */// @ts-nocheck +import{applyParamsToScript,cborToScript}from"@blaze-cardano/uplc";import{Type,TPlutusData}from"@blaze-cardano/data";const PolicyId=Type.String();const ScriptHash=Type.String();const Contracts=Type.Module({Bool:Type.Boolean(),Tuple_VerificationKey_COSESign1:Type.Tuple([Type.String(),Type.Ref("COSESign1")]),COSESign1:Type.Object({headers:Type.Ref("Headers"),payload:Type.Optional(Type.String()),signature:Type.String()},{ctor:0n}),HeaderMap:Type.String(),Headers:Type.Object({protected:Type.Ref("HeaderMap"),unprotected:Type.Ref("HeaderMap")},{ctor:0n}),MultisigScript:Type.Union([Type.Object({Signature:Type.Object({key_hash:Type.String()},{ctor:0n})}),Type.Object({AllOf:Type.Object({scripts:Type.Array(Type.Ref("MultisigScript"))},{ctor:1n})}),Type.Object({AnyOf:Type.Object({scripts:Type.Array(Type.Ref("MultisigScript"))},{ctor:2n})}),Type.Object({AtLeast:Type.Object({required:Type.BigInt(),scripts:Type.Array(Type.Ref("MultisigScript"))},{ctor:3n})}),Type.Object({Before:Type.Object({time:Type.BigInt()},{ctor:4n})}),Type.Object({After:Type.Object({time:Type.BigInt()},{ctor:5n})}),Type.Object({Script:Type.Object({script_hash:Type.String()},{ctor:6n})})]),Asset:Type.Tuple([Type.String(),Type.String()]),Destination:Type.Object({address:Type.Object({payment_credential:Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})]),stake_credential:Type.Optional(Type.Union([Type.Object({Inline:Type.Tuple([Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})])],{ctor:0n})}),Type.Object({Pointer:Type.Object({slot_number:Type.BigInt(),transaction_index:Type.BigInt(),certificate_index:Type.BigInt()},{ctor:1n})})]))},{ctor:0n}),datum:Type.Union([Type.Literal("NoDatum",{ctor:0n}),Type.Object({DatumHash:Type.Tuple([Type.String()],{ctor:1n})}),Type.Object({InlineDatum:Type.Tuple([TPlutusData],{ctor:2n})})])},{ctor:0n}),ExtraProtocolRedeemerV1:Type.Object({request_to_outputs:Type.Array(Type.BigInt()),input_to_requests:Type.Array(Type.BigInt()),treasury_input_idx:Type.BigInt(),treasury_output_idx:Type.BigInt(),vault_input_idx:Type.Optional(Type.BigInt()),vault_output_idx:Type.Optional(Type.BigInt())},{ctor:0n}),Nonce:Type.Union([Type.Object({UTxO:Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})],{ctor:0n})}),Type.Object({Validity:Type.Tuple([Type.Object({lower_bound:Type.Object({bound_type:Type.Union([Type.Literal("NegativeInfinity",{ctor:0n}),Type.Object({Finite:Type.Tuple([Type.BigInt()],{ctor:1n})}),Type.Literal("PositiveInfinity",{ctor:2n})]),is_inclusive:Type.Ref("Bool")},{ctor:0n}),upper_bound:Type.Object({bound_type:Type.Union([Type.Literal("NegativeInfinity",{ctor:0n}),Type.Object({Finite:Type.Tuple([Type.BigInt()],{ctor:1n})}),Type.Literal("PositiveInfinity",{ctor:2n})]),is_inclusive:Type.Ref("Bool")},{ctor:0n})},{ctor:0n})],{ctor:1n})})]),OrderActionV1:Type.Union([Type.Object({OMint:Type.Object({amount:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:0n})}),Type.Object({ORedeem:Type.Object({amount:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:1n})}),Type.Object({ODeposit:Type.Object({principal:Type.BigInt(),yield:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:2n})}),Type.Object({OWithdraw:Type.Object({amount:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:3n})}),Type.Object({OStake:Type.Object({amount:Type.BigInt()},{ctor:4n})}),Type.Object({OUnstake:Type.Object({amount:Type.BigInt(),forfeit:Type.BigInt()},{ctor:5n})}),Type.Object({ODirectMint:Type.Object({amount:Type.BigInt()},{ctor:6n})}),Type.Object({ODirectBurn:Type.Object({amount:Type.BigInt()},{ctor:7n})})]),OrderDatumV1:Type.Object({owner:Type.Ref("MultisigScript"),destination:Type.Ref("Destination"),action:Type.Ref("OrderActionV1"),data:TPlutusData},{ctor:0n}),OrderRedeemerV1:Type.Union([Type.Literal("Execute",{ctor:0n}),Type.Literal("Cancel",{ctor:1n}),Type.Literal("Invalidated",{ctor:2n})]),ProtocolRedeemerV1:Type.Union([Type.Object({Mint:Type.Object({requests:Type.Array(Type.Ref("TreasuryRequestV1"))},{ctor:0n})}),Type.Object({Burn:Type.Object({requests:Type.Array(Type.Ref("TreasuryRequestV1"))},{ctor:1n})}),Type.Object({Withdraw:Type.Object({requests:Type.Array(Type.Ref("TreasuryRequestV1"))},{ctor:2n})}),Type.Object({Deposit:Type.Object({requests:Type.Array(Type.Ref("TreasuryRequestV1"))},{ctor:3n})}),Type.Object({Stake:Type.Object({requests:Type.Array(Type.Ref("RequestV1"))},{ctor:4n})}),Type.Object({Unstake:Type.Object({requests:Type.Array(Type.Ref("RequestV1"))},{ctor:5n})}),Type.Object({DirectMint:Type.Object({requests:Type.Array(Type.Ref("TreasuryRequestV1"))},{ctor:6n})}),Type.Object({DirectBurn:Type.Object({requests:Type.Array(Type.Ref("TreasuryRequestV1"))},{ctor:7n})})]),ProxyDatumV1:Type.Object({logic:Type.String(),settings:Type.Ref("SettingsV1")},{ctor:0n}),RegistryV1:Type.Object({treasury:Type.String(),usdr:Type.String(),order:Type.String(),staking_vault:Type.String()},{ctor:0n}),RequestV1:Type.Object({destination:Type.Ref("Destination"),amount:Type.BigInt(),origin:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),forfeit:Type.BigInt()},{ctor:0n}),ReserveAsset:Type.Object({asset:Type.Ref("Asset"),numerator:Type.BigInt(),denominator:Type.BigInt()},{ctor:0n}),SettingsV1:Type.Object({mint_permission:Type.Ref("MultisigScript"),burn_permission:Type.Ref("MultisigScript"),withdraw_permission:Type.Ref("MultisigScript"),deposit_permission:Type.Ref("MultisigScript"),stake_permission:Type.Ref("MultisigScript"),unstake_permission:Type.Ref("MultisigScript"),direct_mint_permission:Type.Ref("MultisigScript"),direct_burn_permission:Type.Ref("MultisigScript"),registry:Type.Ref("RegistryV1"),reserve_assets:Type.Array(Type.Ref("ReserveAsset")),unstaked_yield_pot:Type.Object({payment_credential:Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})]),stake_credential:Type.Optional(Type.Union([Type.Object({Inline:Type.Tuple([Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})])],{ctor:0n})}),Type.Object({Pointer:Type.Object({slot_number:Type.BigInt(),transaction_index:Type.BigInt(),certificate_index:Type.BigInt()},{ctor:1n})})]))},{ctor:0n})},{ctor:0n}),SignedPayload_v1_0_ProtocolRedeemerV1:Type.Object({action:Type.Ref("ProtocolRedeemerV1"),nonce:Type.Ref("Nonce")},{ctor:0n}),SignedRedeemer_v1_0_ExtraProtocolRedeemerV1:Type.Object({extra:Type.Ref("ExtraProtocolRedeemerV1"),payload:Type.Ref("SignedPayload_v1_0_ProtocolRedeemerV1"),signatures:Type.Array(Type.Ref("Tuple_VerificationKey_COSESign1"))},{ctor:0n}),StakingVaultRedeemerV1:Type.Undefined(),TreasuryDatumV1:Type.Object({circulating_supply:Type.BigInt()},{ctor:0n}),TreasuryRequestV1:Type.Object({destination:Type.Ref("Destination"),amount:Type.BigInt(),yield:Type.BigInt(),origin:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),reserve_asset:Type.Ref("Asset")},{ctor:0n}),VaultDatumV1:Type.Object({circulating_susdr:Type.BigInt()},{ctor:0n})});export const Bool=Contracts.Import("Bool");export const Tuple_VerificationKey_COSESign1=Contracts.Import("Tuple_VerificationKey_COSESign1");export const COSESign1=Contracts.Import("COSESign1");export const HeaderMap=Contracts.Import("HeaderMap");export const Headers=Contracts.Import("Headers");export const MultisigScript=Contracts.Import("MultisigScript");export const Asset=Contracts.Import("Asset");export const Destination=Contracts.Import("Destination");export const ExtraProtocolRedeemerV1=Contracts.Import("ExtraProtocolRedeemerV1");export const Nonce=Contracts.Import("Nonce");export const OrderActionV1=Contracts.Import("OrderActionV1");export const OrderDatumV1=Contracts.Import("OrderDatumV1");export const OrderRedeemerV1=Contracts.Import("OrderRedeemerV1");export const ProtocolRedeemerV1=Contracts.Import("ProtocolRedeemerV1");export const ProxyDatumV1=Contracts.Import("ProxyDatumV1");export const RegistryV1=Contracts.Import("RegistryV1");export const RequestV1=Contracts.Import("RequestV1");export const ReserveAsset=Contracts.Import("ReserveAsset");export const SettingsV1=Contracts.Import("SettingsV1");export const SignedPayload_v1_0_ProtocolRedeemerV1=Contracts.Import("SignedPayload_v1_0_ProtocolRedeemerV1");export const SignedRedeemer_v1_0_ExtraProtocolRedeemerV1=Contracts.Import("SignedRedeemer_v1_0_ExtraProtocolRedeemerV1");export const StakingVaultRedeemerV1=Contracts.Import("StakingVaultRedeemerV1");export const TreasuryDatumV1=Contracts.Import("TreasuryDatumV1");export const TreasuryRequestV1=Contracts.Import("TreasuryRequestV1");export const VaultDatumV1=Contracts.Import("VaultDatumV1");export class V1_0Rc1OrderOrderSpend{constructor(proxyPolicyId,protocolScripthash,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5917090101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99802249286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d65725631001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b30010078999119912cc004c00c0062b30013019375401700280720348acc004c0240062b30013019375401700280720348acc004c0100062b3001301937540170028072034807202c405880b0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009811001c01a00a80f8dd7000a044301f001407460366ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026044007006802a03e375c0028110c07c00501d180d9baa0048012030406060326ea800e44b30010018a5eb822660366030603800266004004603a00280d2444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80ba44646600200200644b30010018a508acc004cdc79bae301e0010038a51899801001180f800a0304071222232330010010052259800800c4016264b3001001899802181080100344cc014c084008cc00c00c00501f1810800a03c9119198008008019119801800980100148c06cc070006460366038603800337009000c8c06cc070c070c070c070c070c070c070c070006602c6ea8026460366038603860386038603860380032232330010010032259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c24444444444444530012232330010010032259800800c530103d87a80008992cc004c010006260266605800297ae08998018019817001204e302c00140a9300c00c9805805c888ca6002003004801a0022223259800980b000c4c9660020030068992cc00400600f007803c01e264b30013033003802c0210301bae00140cc60600028170c0b0dd5001c566002603800313259800800c01a264b3001001803c01e264b30013033003899809000912cc00400a00f13259800800c6600201500189801181b001a014805c02e01700b40dc606800481920108180dd6000c01e00e8198c0c000502e18161baa0038acc004c05c006264b300100180344c966002003007803c4c96600260660071330120012259800801401e264b30010018cc00402a003130023036003402900b805c02e01681b8c0d000903240210301bac001803c01d0331818000a05c302c375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002606c0071330150012259800801402a264b30010018cc004036003130023039003403500e807403a01c81d0c0dc009035402d0331bac00180540290361819800a062375a002606400500740cc60600028170c0b0dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0cc00e00b00840c06eb400600e8198c0c000502e18161baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009819801c0160108180dd6800c01d0331818000a05c302c375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009819801c0160108180dd7000a066303000140b860586ea800e00a8149029205240a481490292052302a3754004911119191919912cc004c06003226644b3001301a302f375400313259800981098181baa0018acc004cdc79bae3034303137540026eb8c048c0c4dd5180818189baa301330313754007133225330313372c92010d63726564656e7469616c3a3a200037326601000291010013300f0020013756601c60626ea8080cdd2a4004660666ea40b12f5c1153302f49013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640b902940b8606660606ea8c0ccc0c0dd5180918181baa30333030375400302740b4660046eb0c040c0b8dd500e815198009bac3031302e375403a037159800980f00645660026030605a6ea806a330013031302e37546062605c6ea806a6eb0c034c0b8dd500ecc0c4c0c8c0c8c0c8c0c8c0c8c0c8c0c8c0b8dd500ecdd5980598171baa01d48888c8cc00400401488c966002603e00313301a006375c6070606a6ea800a2b30013025001899198008009bac30393036375400644b30010018a518acc004cc014014c0e8006266004004607600314a081a1038456600260400031323300100137586072606c6ea800c896600200314a115980099802802981d000c528c4cc008008c0ec00503420708acc004cdc3a400c003132337126eb4c0e4004c8cc004004dd6181d181d801112cc0040062900044cc896600266010010005133700002900144005037181d80099801001181e000a0723035375400515980099b87480200062646644b30013028303737540051598009814181b9baa303b303c003899b89375a607660706ea8008006266e20dd6981d981c1baa00200140d514a081a8c0e4004dd6981c981b1baa00330353754602e606a6ea80162b30013370e9005000c4c8cc89660026050606e6ea800a2b3001302830373754607660780071337120026eb4c0ecc0e0dd500144cdc40009bad303b3038375400481aa2941035181c8009bad303930363754006606a6ea8c0e0c0d4dd5002c4cc044010cdd2a40046606e6070606a6ea80092f5c08191032206440c8819103218199baa001409102b45660026030605a6ea806a330013031302e37540353300237586020605c6ea80740aa660026eb0c0c4c0b8dd500e80da444b3001301b303037540031323259800981198191baa0018acc0056600330013371e6eb8c050c0ccdd5180918199baa3015303337540086eb8c0d8c0ccdd5000d28528a0608a518cc004cdc79bae30363033375400805d4a14a2818103044c966002603c60666ea8006264b3001301f30343754003132598009810181a9baa0018992cc004cdd7981d181b9baa001302033039302033039303a3037375400897ae0330394c103d87a80004bd704660026eacc064c0dcdd5000cc064c0dcdd5180c981b9baa0069119b89337020026eb4c0f0c0f4c0f4c0f4c0e4dd50140012444b30010028a508994c004c966002604c60766ea800626eb4c0f0c0fcdd5981f981e1baa0018a400081c8c0f80066ebcc0f8c0fc0066eac00d22259800800c566002600400d13300500348002294103b44c96600266ebcc0f80053010140008acc004cc018010dd6981f98211bab303f001898019ba630430028a5040f11598009980300224001130030078a5040f081e0c10400503f0ca6002003004911981f8011981f9ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0f40066eacc0f800660840069112cc004cdc8a441000038acc004cdc7a441000038998029815198219ba60024bd70000c4cc015300103d87a800000640f919800803c006446600e0046608a66ec0dd48029ba6004001401c81f0608000481f229422942294103f22941034181c981b1baa0018a9981a2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640cc65300130010019bad3039303637540053758602e606c6ea80952225980099b8800248002298103d87a8000899801800801206c1112cc00400a298103d87a80008acc004c0880062604266074607600497ae08cc00400e60780053018001400c81a9039454cc0cd24014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640c86530010019bac303830353754049480010011112cc00400a298103d87a80008acc004cdd7981d00100344c080cc0e4dd4000a5eb8233001003981d8014cdc0000a4004801903420708a99819248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640c4606c60666ea80162a660629201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c102b40c0606a60646ea8c0d4c0c8dd5180a18191baa00130343031375400302840b8812205640ac815888c96600200313259800980d18179baa0028992cc00400605513259800800c0ae05702b815c4cc896600200302d8992cc0040062b300130390028acc004c07cc0d0dd5000c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c96600200304282144cc89660020030448992cc0040062b300130500028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c12cdd500344c9660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b3001001826c13609b04d899912cc00400609f13259800800c1420a105082844c96600260b800713303b00f22598008014566002608860b26ea803e264b300100182a44c96600200313259800800c15a264b30010018acc004c18800a330010038992cc004c124006264b300100182cc4c966002003159800983280144c966002609800313259800800c172264b30010018acc004c1a000a3300100181ac17504c417506541760bb05d82ea0d23066001419060c46ea800a2b300130520018992cc0040060b913259800800c1760bb05d899912cc0040060bf13259800800c1820c1060899912cc0040060c513259800800c18e0c70638992cc004c1bc00e07906441b06eb40060c68378c1b000506a1bad001306b00283020d83069001419c6eb4004c1a000a0ba8348c19800506418311baa00282da0be417c60c06ea80060b483120b505a82d41690661831800a0c2305f37540051598009827800c56600260be6ea800a0610584181058417082e0c174dd5000c15d046415d05f415e0af05782ba0c63060001417860c000505582ac1560aa8308c17800505c182d1baa00f829a0ae8992cc0040062b30013045305a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130680038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001306d003898081836808c18906a1bae00141b460d40028340dd7000983480420d43067007419505d41946eb40060b88340c1940050631bad001306400282ca0ca306200141806eb0004c18400a0ad056418860be00282e8c16cdd5000c15105841520a905482a20c0305d002416d05141646eb800505c182c800a0ae375c00260b000482c8c1580050541bae0013055002415860a60028288dd7000982900120a63050001413860986ea801a08a824a08a812208a812208a812208a812208a812208a812208a812208a812208a826a08b045822c1150511827000a0983758002609a005042821209c304b0014124609600504082041020808260c124005047182480140fa07d03e81f209430470014114608e00503c81e40f20788240c114005043182280140ea07503a81d208c30430014104608600503881c40e20708220c10400503f182080140da06d03681b2084303f00140f4607e00503481a40d20688200c0f400503b181e80140ca065032819207c303b00140e4607600503081840c206081e0c0e4005037181a9baa0018172064817206c81740ba05d02e40e8606e00281a8dd7000981b001206e303400140c860606ea800a0528168400605102881440a103429981619b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea400522010013259800980c98171baa00189929981719b9649113666f756e642070726f7879207574786f3a3a200037326600a00291010013259800980e18181baa0018992cc0040062b3001301c3031375400313259800800c0b6264b300100181740ba05d02e899912cc00400606113259800981d8014401a06281c0c0e40050371bae001303800240e4606c00281a0c0c8dd5000c0b102f40b205902c816206e303430313754003153302f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b8602260606ea8c048c0c0dd5000981918179baa0018a99816a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640b06601200446602860126eacc044c0bcdd5180898179baa001002223300900223375e6064605e6ea8004008c004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101620665980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c816902d1bac3030002375a605c0026466ec0dd418170009ba7302f001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6066003337149101023a200098008054c0d000600a805100a181b00144ca6002015303300199b8a489023a200098008054c0d0006600e66008008004805100a181b0012068303600140cc66e29220102207d0000340c06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901320603758007133005375a0060051323371491102682700329800800cc040dc68014cdc52450127000044004444b30013371000490004400626466453001006980a802ccdc599b800025980099b88002480522903045206e40c866e2ccdc0000acc004cdc4000a4029148182290372064004401866e0c00520203370c002901019b8e00400240bc6eb800d0331b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340a88150301637540126e1d2004370e9000402a01500a80520343016001301630170013012375400716403c3011001300c3754025149a2a6601492011856616c696461746f722072657475726e65642066616c7365001365640241":"590c060101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758601460446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8ca6002606c003303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c00491111111112cc004c10402e26603e608002a26603e01226603e01026603e00e26603e00c26603e00a26603e00826603e0062b30013030303c375400513232323298009bae30440019bae30440049bae30440039bae30440024888966002609200b133030009225980080145660026074608c6ea80522646464b3001304e00289981c18268018992cc004c0f8006264b30013050001899192cc004c104006264b3001305300189981e982900081645905018271baa0028acc004c11400626464653001375a60a8003375a60a8007375a60a80049112cc004c16001206316415430540013053001304e37540051641308260c130dd50009827800c5904d18259baa0028acc004c1080062b3001304b37540050288b20988b2092412460926ea80062c8258c130004c130004c11cdd500a45904544c9660026076608e6ea800626464646644b300130510038991919912cc004c15400e2601660aa0191641486eb8c148004dd7182900118290009bac30500058b209c375a609c0026eb4c138008c138004c134004c120dd5000c59046182500120908b208c182200098218009821000981e9baa0028b20768b207c181b000981a800981a000981980098190009818800981800098178009817000981680098141baa0018b204c302a0018b2050375c6050002605200260486ea800a2c81104004c966002602c60446ea8006264b300130183023375400313259800980c18121baa0018991919912cc004c0b400e200b1640a860540026eb8c0a8008c0a8004c094dd5000c59023181398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601",Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");}}export class V1_0Rc1OrderOrderElse{constructor(proxyPolicyId,protocolScripthash,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5917090101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99802249286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d65725631001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b30010078999119912cc004c00c0062b30013019375401700280720348acc004c0240062b30013019375401700280720348acc004c0100062b3001301937540170028072034807202c405880b0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009811001c01a00a80f8dd7000a044301f001407460366ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026044007006802a03e375c0028110c07c00501d180d9baa0048012030406060326ea800e44b30010018a5eb822660366030603800266004004603a00280d2444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80ba44646600200200644b30010018a508acc004cdc79bae301e0010038a51899801001180f800a0304071222232330010010052259800800c4016264b3001001899802181080100344cc014c084008cc00c00c00501f1810800a03c9119198008008019119801800980100148c06cc070006460366038603800337009000c8c06cc070c070c070c070c070c070c070c070006602c6ea8026460366038603860386038603860380032232330010010032259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c24444444444444530012232330010010032259800800c530103d87a80008992cc004c010006260266605800297ae08998018019817001204e302c00140a9300c00c9805805c888ca6002003004801a0022223259800980b000c4c9660020030068992cc00400600f007803c01e264b30013033003802c0210301bae00140cc60600028170c0b0dd5001c566002603800313259800800c01a264b3001001803c01e264b30013033003899809000912cc00400a00f13259800800c6600201500189801181b001a014805c02e01700b40dc606800481920108180dd6000c01e00e8198c0c000502e18161baa0038acc004c05c006264b300100180344c966002003007803c4c96600260660071330120012259800801401e264b30010018cc00402a003130023036003402900b805c02e01681b8c0d000903240210301bac001803c01d0331818000a05c302c375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002606c0071330150012259800801402a264b30010018cc004036003130023039003403500e807403a01c81d0c0dc009035402d0331bac00180540290361819800a062375a002606400500740cc60600028170c0b0dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0cc00e00b00840c06eb400600e8198c0c000502e18161baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009819801c0160108180dd6800c01d0331818000a05c302c375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009819801c0160108180dd7000a066303000140b860586ea800e00a8149029205240a481490292052302a3754004911119191919912cc004c06003226644b3001301a302f375400313259800981098181baa0018acc004cdc79bae3034303137540026eb8c048c0c4dd5180818189baa301330313754007133225330313372c92010d63726564656e7469616c3a3a200037326601000291010013300f0020013756601c60626ea8080cdd2a4004660666ea40b12f5c1153302f49013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640b902940b8606660606ea8c0ccc0c0dd5180918181baa30333030375400302740b4660046eb0c040c0b8dd500e815198009bac3031302e375403a037159800980f00645660026030605a6ea806a330013031302e37546062605c6ea806a6eb0c034c0b8dd500ecc0c4c0c8c0c8c0c8c0c8c0c8c0c8c0c8c0b8dd500ecdd5980598171baa01d48888c8cc00400401488c966002603e00313301a006375c6070606a6ea800a2b30013025001899198008009bac30393036375400644b30010018a518acc004cc014014c0e8006266004004607600314a081a1038456600260400031323300100137586072606c6ea800c896600200314a115980099802802981d000c528c4cc008008c0ec00503420708acc004cdc3a400c003132337126eb4c0e4004c8cc004004dd6181d181d801112cc0040062900044cc896600266010010005133700002900144005037181d80099801001181e000a0723035375400515980099b87480200062646644b30013028303737540051598009814181b9baa303b303c003899b89375a607660706ea8008006266e20dd6981d981c1baa00200140d514a081a8c0e4004dd6981c981b1baa00330353754602e606a6ea80162b30013370e9005000c4c8cc89660026050606e6ea800a2b3001302830373754607660780071337120026eb4c0ecc0e0dd500144cdc40009bad303b3038375400481aa2941035181c8009bad303930363754006606a6ea8c0e0c0d4dd5002c4cc044010cdd2a40046606e6070606a6ea80092f5c08191032206440c8819103218199baa001409102b45660026030605a6ea806a330013031302e37540353300237586020605c6ea80740aa660026eb0c0c4c0b8dd500e80da444b3001301b303037540031323259800981198191baa0018acc0056600330013371e6eb8c050c0ccdd5180918199baa3015303337540086eb8c0d8c0ccdd5000d28528a0608a518cc004cdc79bae30363033375400805d4a14a2818103044c966002603c60666ea8006264b3001301f30343754003132598009810181a9baa0018992cc004cdd7981d181b9baa001302033039302033039303a3037375400897ae0330394c103d87a80004bd704660026eacc064c0dcdd5000cc064c0dcdd5180c981b9baa0069119b89337020026eb4c0f0c0f4c0f4c0f4c0e4dd50140012444b30010028a508994c004c966002604c60766ea800626eb4c0f0c0fcdd5981f981e1baa0018a400081c8c0f80066ebcc0f8c0fc0066eac00d22259800800c566002600400d13300500348002294103b44c96600266ebcc0f80053010140008acc004cc018010dd6981f98211bab303f001898019ba630430028a5040f11598009980300224001130030078a5040f081e0c10400503f0ca6002003004911981f8011981f9ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0f40066eacc0f800660840069112cc004cdc8a441000038acc004cdc7a441000038998029815198219ba60024bd70000c4cc015300103d87a800000640f919800803c006446600e0046608a66ec0dd48029ba6004001401c81f0608000481f229422942294103f22941034181c981b1baa0018a9981a2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640cc65300130010019bad3039303637540053758602e606c6ea80952225980099b8800248002298103d87a8000899801800801206c1112cc00400a298103d87a80008acc004c0880062604266074607600497ae08cc00400e60780053018001400c81a9039454cc0cd24014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640c86530010019bac303830353754049480010011112cc00400a298103d87a80008acc004cdd7981d00100344c080cc0e4dd4000a5eb8233001003981d8014cdc0000a4004801903420708a99819248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640c4606c60666ea80162a660629201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c102b40c0606a60646ea8c0d4c0c8dd5180a18191baa00130343031375400302840b8812205640ac815888c96600200313259800980d18179baa0028992cc00400605513259800800c0ae05702b815c4cc896600200302d8992cc0040062b300130390028acc004c07cc0d0dd5000c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c96600200304282144cc89660020030448992cc0040062b300130500028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c12cdd500344c9660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b3001001826c13609b04d899912cc00400609f13259800800c1420a105082844c96600260b800713303b00f22598008014566002608860b26ea803e264b300100182a44c96600200313259800800c15a264b30010018acc004c18800a330010038992cc004c124006264b300100182cc4c966002003159800983280144c966002609800313259800800c172264b30010018acc004c1a000a3300100181ac17504c417506541760bb05d82ea0d23066001419060c46ea800a2b300130520018992cc0040060b913259800800c1760bb05d899912cc0040060bf13259800800c1820c1060899912cc0040060c513259800800c18e0c70638992cc004c1bc00e07906441b06eb40060c68378c1b000506a1bad001306b00283020d83069001419c6eb4004c1a000a0ba8348c19800506418311baa00282da0be417c60c06ea80060b483120b505a82d41690661831800a0c2305f37540051598009827800c56600260be6ea800a0610584181058417082e0c174dd5000c15d046415d05f415e0af05782ba0c63060001417860c000505582ac1560aa8308c17800505c182d1baa00f829a0ae8992cc0040062b30013045305a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130680038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001306d003898081836808c18906a1bae00141b460d40028340dd7000983480420d43067007419505d41946eb40060b88340c1940050631bad001306400282ca0ca306200141806eb0004c18400a0ad056418860be00282e8c16cdd5000c15105841520a905482a20c0305d002416d05141646eb800505c182c800a0ae375c00260b000482c8c1580050541bae0013055002415860a60028288dd7000982900120a63050001413860986ea801a08a824a08a812208a812208a812208a812208a812208a812208a812208a812208a826a08b045822c1150511827000a0983758002609a005042821209c304b0014124609600504082041020808260c124005047182480140fa07d03e81f209430470014114608e00503c81e40f20788240c114005043182280140ea07503a81d208c30430014104608600503881c40e20708220c10400503f182080140da06d03681b2084303f00140f4607e00503481a40d20688200c0f400503b181e80140ca065032819207c303b00140e4607600503081840c206081e0c0e4005037181a9baa0018172064817206c81740ba05d02e40e8606e00281a8dd7000981b001206e303400140c860606ea800a0528168400605102881440a103429981619b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea400522010013259800980c98171baa00189929981719b9649113666f756e642070726f7879207574786f3a3a200037326600a00291010013259800980e18181baa0018992cc0040062b3001301c3031375400313259800800c0b6264b300100181740ba05d02e899912cc00400606113259800981d8014401a06281c0c0e40050371bae001303800240e4606c00281a0c0c8dd5000c0b102f40b205902c816206e303430313754003153302f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b8602260606ea8c048c0c0dd5000981918179baa0018a99816a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640b06601200446602860126eacc044c0bcdd5180898179baa001002223300900223375e6064605e6ea8004008c004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101620665980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c816902d1bac3030002375a605c0026466ec0dd418170009ba7302f001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6066003337149101023a200098008054c0d000600a805100a181b00144ca6002015303300199b8a489023a200098008054c0d0006600e66008008004805100a181b0012068303600140cc66e29220102207d0000340c06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901320603758007133005375a0060051323371491102682700329800800cc040dc68014cdc52450127000044004444b30013371000490004400626466453001006980a802ccdc599b800025980099b88002480522903045206e40c866e2ccdc0000acc004cdc4000a4029148182290372064004401866e0c00520203370c002901019b8e00400240bc6eb800d0331b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340a88150301637540126e1d2004370e9000402a01500a80520343016001301630170013012375400716403c3011001300c3754025149a2a6601492011856616c696461746f722072657475726e65642066616c7365001365640241":"590c060101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758601460446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8ca6002606c003303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c00491111111112cc004c10402e26603e608002a26603e01226603e01026603e00e26603e00c26603e00a26603e00826603e0062b30013030303c375400513232323298009bae30440019bae30440049bae30440039bae30440024888966002609200b133030009225980080145660026074608c6ea80522646464b3001304e00289981c18268018992cc004c0f8006264b30013050001899192cc004c104006264b3001305300189981e982900081645905018271baa0028acc004c11400626464653001375a60a8003375a60a8007375a60a80049112cc004c16001206316415430540013053001304e37540051641308260c130dd50009827800c5904d18259baa0028acc004c1080062b3001304b37540050288b20988b2092412460926ea80062c8258c130004c130004c11cdd500a45904544c9660026076608e6ea800626464646644b300130510038991919912cc004c15400e2601660aa0191641486eb8c148004dd7182900118290009bac30500058b209c375a609c0026eb4c138008c138004c134004c120dd5000c59046182500120908b208c182200098218009821000981e9baa0028b20768b207c181b000981a800981a000981980098190009818800981800098178009817000981680098141baa0018b204c302a0018b2050375c6050002605200260486ea800a2c81104004c966002602c60446ea8006264b300130183023375400313259800980c18121baa0018991919912cc004c0b400e200b1640a860540026eb8c0a8008c0a8004c094dd5000c59023181398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601",Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");}}export class V1_0Rc1ProtocolManagementProtocolManagementWithdraw{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594460010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888888896600264653001301c001980e180e800cdc3a4009301c0024888966002600460386ea800e330013020301d3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b874803246042604400323021302230220019b80480066e05200091810981118111811181118111811181118111811000cdd2a4004911111111111111194c004889660026020605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c054006264b3001001803c4c966002003159800981d80144c966002603000313259800800c02a264b30010018acc004c0f800a33001001806402d00e402d03b402e01700b805a07e303c00140e860706ea800a2b300130170018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11400e02701241086eb40060228228c1080050401bad00130410028072084303f00140f46eb4004c0f800a01681f8c0f000503a181c1baa002804a06a40d4606c6ea800601081c2011008804402103c181c800a06e30353754005159800980a000c566002606a6ea800a00f00640d900640c88190c0ccdd5000c0150084015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c96600260760070058042070375c00281d8c0e0005036181a1baa0038acc004c04c006264b300100180344c966002003007803c4c96600260760071330180012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0ec00e26603000244b3001002803c4c96600200319800805400626004607c006805201700b805c02d03f181e001207480420703758003007803a076303800140d860686ea800e2b300130120018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981f001c4cc06c004896600200500a8992cc0040063300100d800c4c008c10400d00d403a01d00e8072084303f00240f500b40ec6eb000601500a40f8607600281c8dd6800981d001401d03b181c000a06c303437540071598009808800c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002602000313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009807800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c015031206240c48189031206240c460646ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260286606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980a981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301a0018acc004c0e8dd5001401e00c81da2b300130190018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026038003159800981e1baa006804c02103d4566002603600313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783019303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002602a60686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c058006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130150018acc004c0d8dd5002400e00481ba0048199033181a1baa00348888cc89660026030606e6ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009821801c566002603e607c6ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013053002899818007112cc00400a26606401a44b30010028cc00401e330010058992cc004c0d0c14cdd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982e00144cc8966002607400313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252052825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0e4006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a504a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981f800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b300130380018992cc00400608b13259800800c11a08d132598009830801c4cc0f800489660020050078992cc00400633001001898011832001c129029412a09504a82520ca3062002418104741786eb000608d046418460bc00282e0c168dd5002c566002606e00313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252054825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a904a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981a800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea801608882b905720ae415c82b905720ae415c264b300130390018992cc00400608913259800800c56600260be00519800800c02208a813a08a82e208b045822c115060182e800a0b630593754005159800981c000c4c9660020030448992cc0040062b3001305f0028acc004c0ecc168dd5000c4c9660020030468992cc004006264b300100182444c966002003159800983180146600200719800800c032092816209281620928302093049824c1250641830800a0be3061002823c11e08f047418860be00282e8c16cdd5000c115058411505c411608b045822a0c0305d001416c60b26ea800a08682b1056182b9baa001305737540070424165042821410a08482e8c168005058182d001410208104082020b63058001415860a86ea806607c82884cc0d0054896600200519800982c182a9baa302f30553754049230353055375460b2646600200200444b30010018a5eb8503d87a80008101800044c8cc89660033001303a305a375460bc0074a14a282c22660bb30014a14c103d87a8000a60103d87980004160660ba6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18000400e294626600400460c200282d105e44cc176600294298103d87a8000a60103d87980004160660ba6e9c0092f5c113305d9800a51a60103d87a8000a60103d87980004160660ba6e9ccc174dd400080125eb8105820b0375860b860ba0026eb4c170008cc008008c17000505948888ca6002003005802400d00111112cc00400e2b30010028800c54cc16d24112657870656374205b5d203d206c6973745f6200164179159800801454cc16d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c20073061002cc004c18000e6eb4c18000a002802900420bc41792232330010010032259800800c52f5c1133225980099baf305e305b375460bc60b66ea8c0d4c16cdd500118181982e9ba90054bd7044cc174008cc01001000626600800800282c0c170004c17400505a4dc02400523059305a305a305a305a305a305a305a305a0019112cc00400a2980103d87a80008acc004c0e000626074660b460b600497ae08cc00400e60b80053030001400c82a9059488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd5982d800982e800a0b614bd6f7b630488966002607060ae6ea800e264b300100180144c966002003003801c00e264b3001305f003802c01105c1bad001801a0be305c001416860b06ea800e00282aa460b260b460b460b40032232330010010032259800800c52f5c113305b374e600660b80026600400460ba00282d2444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c17c0066eb4c1800066600600660c80048048c1880050601bab305d003375c60b40026600600660be00460ba00282da44646600200200644b30010018a508acc004cdd7982e0009ba70038a51899801001182e800a0ac416922259800981c182b9baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c96600200313259800800c022264b300130640028cc00401e330010058992cc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b300130400018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009835801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009838001c05a02a8368dd7000a0e0306d00141ac6eb8004c1b000906d1835000a0d080820d0375800300f807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c118006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c96600200301280944c96600260dc007159800800c04e264b300100180a4052029014899912cc00400602d13259800800c05e02f01780bc4c96600260e600701980c20e0375c0028398c1c000506e1bae001306f00241c060da002835a0268358dd6000c04a0248370c1ac0050691bad001306a002807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0fc006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b3001303e0018992cc00400601713259800800c03201900c8992cc004c1a000e01d00d41946eb40060188340c19400506318309baa0048acc004c0f4006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306b003808c0410681bad001807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0f0006264b3001001805c4c96600200300c8064032264b3001306800380740350651bad00180620d03065001418c60c26ea80122b30013370e9007000c4c96600200300b8992cc00400601900c80644c96600260d000700e806a0ca375a00300c41a060ca0028318c184dd5002402905e20bc417882f105e20bc417882f0c17cdd5001c02502e402503240250611831000a0c03062002803c01e00f007418c60c000282f0c18000a00b005802c015061182f000a0b8305e002801c00e007003417c60b800282d0c160dd5001c00505548c164c168c168c168c168006444653001001802400d0011112cc00400a200319800801cc17c00a6600860bc004002801905c4dc424000911111111111111114c004c194dd5008c88966002602600519800801c00a900048896600260080071337000026eb4c118c1b0dd5001c54cc1a924011a6578706563742076616c69646174696f6e287265717565737429001641a480922a660ce9212e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641992259800800c5200089807998010011836000a0d291808800c89660020031480022601e6600400460d8002834a6016017222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906c44cc014014c1cc01106c1bae306c001375a60da00260de0028368cc03801000c5200048888888ca6002444464b30013053307237540031325980099baf30773074375460ee60e86ea8c138c1d0dd500098249983b1ba90054bd70456600260a730013756609c60e86ea8c138c1d0dd5000c01691108747265617375727900402113259800982d183a1baa0018992cc004006330010018992cc004c15cc1d8dd5000c4c96600266ebcc1ecc1e0dd5183d983c1baa001304d3307a375201297ae08acc004c15e60026eacc148c1e0dd5000c026910108747265617375727900403113259800982f183c1baa0018992cc004006330010018acc004cdd7980e183d1baa0034c103d87a800089983e0029983e0009983e1ba6329800800cdd5982a983d9baa00499198008009bab3056307c375460ac60f86ea8024896600200314bd6f7b63044c8cc20004cdd8183e8009ba63233001001375660fe00444b30010018a5eb7bdb182264661060266ec0c20004004dd4182c1bad308101001330030033085010023083010014204046600600661040200461000200283f10011112cc00400a2003132332298008034c21004016646600200200a44b30010018998420099bb037520086e9800d2f5bded8c113298009bae3082010019bab3083010019843808012444b30013372001000713308801337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528211002880144cc22404cdd81ba9009374c002004842008ca6002003008801a002222598008014400626466453001006984800802cc8cc004004014896600200313309001337606ea4010dd4001a5eb7bdb1822653001375c611c02003375a611e0200330930100248896600266e4002000e2661280266ec0dd48041ba80070058acc004cdc7804001c4c96600260e6003100289984a8099bb037520126ea00040090900119b8000700289984a0099bb037520066ea0008cc01801800508f01211e02184880800a11e0240186eb8c22404004dd69845008009846008012114028998440099bb037520066e98008cc01801800508301210602184280800a1060240186eb8c1f4004dd5983f00098400080120fc4bd7041bd07741b901d41ba0dd06e83720fe307c30793754003153307749012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641d860a260f06ea80062a660ec920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641d5153307649143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641d460f460ee6ea80062a660ea92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641d0660126eb0c13cc1d8dd5004002c1a501941a60d3069834a0f6307830753754003153307349013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641c8609a60e86ea8c138c1d0dd5000c54cc1c92401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c515330724914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c460ec60e66ea80062a660e292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641c06600a6eb0c1d4c1c8dd50020014c010012600c00c9112cc004c13c02e33001375860e860e26ea8072444b300130543073375400713259800800c00a264b3001001801c00e00713259800983d801c01600883c0dd6800c00d07b183c000a0ec3074375400700141c5222225980099b87300600530060048acc004c03400e266e24006600200b003a40012223259800982d183c9baa001899912cc004c184c1ecdd5000c4c96600200319800800c56600266ebcc07cc1f4dd5001984000983e9baa0078acc004cdd7982b983e9baa001308001307d3754007132598009831983e9baa001899192cc004cdc39bad308301002375a60b46100026ea801a2b30013370e6eb4c20c04004dd6982c9840009baa0068acc004cdd7984180984200800980e9840009baa006899b8000898009bab305a308001375460b46100026ea802a6eb8c20c040326eb8c20c04c21004031014454cc1f92413665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001641f5153307e49126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001641f5153307e4912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001641f461060200260fc6ea80062a660f8921184578706563746564204f4465706f73697420616374696f6e001641ec60ac60fa6ea80060ec83d20ea83d20e880da0e907483a41d108201183f983e1baa00183920f2307d307a375400260a660f46ea8c150c1e8dd500241a107719806003801203e831a0e683120e691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307f307c375460fe0046eb4c1fcc1f0dd5183f80180244c9660033001002a5191112cc0040062b30013371e008911008a5189981000299841809ba90043308301375200697ae041f914a083f101d44cdc4803cc004dd61829983e9baa00ca400122323259800980e000c4cdc000199b83337040026eb4c16cc20404dd50021bad305a3081013754009100341f930010059bae3083010019bae30830130840100140506eb0c20804c1fcdd5001203283720f43301d375860a460f86ea802c8dd6184000983e9baa00183720f2375660fc60fe00260fc00330010079bae307c30793754603e60f26ea802200d005402d1533077490123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641d8b3001305830090018a4001159800800c19e264b3001307d0028992cc004cdc79bae307900248810455534472008800c1a90771bad307900183420f4307b00141e483a8cc06cdd5980a183b9baa005375c60a260ee6ea8c074c1dcdd50034c1d0c1c4dd50204c12cc1c4dd5020a4444446644b300159800980a0014528c6600260b20034a14a283b107644c96600260b460f26ea80062646644646644b30013060307f37540031325980099b87337026eb4c210040040180122b30013370e6eb4c21004c21404004dd6984200984280803c56600266e2520000098acc0066002660526eb0c21004c20404dd50329bae305a3081013754604e6102026ea802e021375860b66102026ea8032661060260b66102026ea8c09cc20404dd50059984180a61054455534472004bd7052000403915980099b890033233001001375860b66104026ea8198896600200314800226644b30013375e611002610a026ea8008c22004c22404c22404c22404c22404c22404c22404c22404c22404c22404c22404c21404dd5007c4cdc0000cc004dd5982f9842809baa0029bae305f30850137546056610a026ea803e910104555344720040651001420804610c0200266004004610e0200284200a3300100b832cdd6982d1840809baa00c9bad3023308101375401900999b8000a0094035153307f49012b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641f9153307f4919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001641f9159800cc004cc0a4dd61842009840809baa065375c60b46102026ea8c09cc20404dd5005c0426eb0c16cc20404dd50064cc20c04c16cc20404dd518139840809baa00b33083014c1054455534472004bd704c16000d00e4660020170659bad305a3081013754019375a60466102026ea803201300a4035153307f491b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641f883f22a660fe9213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641f9153307f4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641f865300133014001375a6108026102026ea800a6eb8c16cc20404dd518139840809baa00b9bae30233081013754604e6102026ea802d2225980098321841809baa0038992cc004cdd79844009842809baa308801308501375400260b46610e026ea40092f5c115980098324c004dd5982f9842809baa00180152210d7374616b696e675f7661756c740040651325980098359842809baa0018992cc004006330010018acc004cdd798149843809baa0034c103d87a8000899844809ba898009bab30613087013754007005a441045553447200406c6611202611402610e026ea8004cc2240400d2f5c107c4210050810140550810184080c2040610202846008c22404c21804dd5000c54cc2100524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016420c0460bc610a026ea80062a661060292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642080515330830149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016420804610e026108026ea800e2a661040292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f696478290016420404375860b26100026ea81922a660fc92013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641f466e04018004c20404c20804c20804c20804c20804c20804c1f8dd5004acc004c060006266e10cdc1002801000c5200041e86eb4c1f8004dd6983f183d9baa307e980082fcdd7183f183d9baa3021307b375400b375a60a860f66ea801a6eb4c074c1ecdd5003201a329800998070009bad307e307b3754005375c60aa60f66ea8c084c1ecdd5002cdd7180e983d9baa3021307b375400a9112cc004c178c1f4dd5001c4c96600266ebcc20804c1fcdd5184100983f9baa3059307f375400260a866102026ea40092f5c1159800982f4c004dd5982c983f9baa3059307f3754003002a4410d7374616b696e675f7661756c7400404d132598009832983f9baa0018992cc00400633001001899841809ba898009bab305b308101375460b66102026ea800e00b489045553447200405466106026108026102026ea8004cc20c0400d2f5c107b403d07b83dc1ee0f6843008c20c04c20004dd5000c1d907d182c183f9baa3059307f3754003153307d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f1153307d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f061020260fc6ea800e2a660f892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ec375860fa60f46ea817a2a660f092013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641dc602c60f26ea80122a660ee92012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641d930010069bac307a3077375400523371290001bad3052307837540028082600200d480024466e00004dd69829183c9baa002404c8acc004c15802e33001375860e860e26ea8072444653001001802400d0011112cc00400a2b30010018a518a5041e1159800800c52845660026600860f40046eb4c1e800633001003983d8014c1ec005003452820e841e083c244b30010018a40011301a33002002307700141d1223370666e08008dd6982618399baa001375a609a60e66ea800660e860e26ea8102609660e26ea8105222222325980099914c004c8cc00400400c896600200314a115980099baf307f307c375460fe60f86ea8c158c1f0dd5183f80098289983f1ba90034bd704528c4cc008008c2000400507920faa50a5141dc6eb0c1ecc1e0dd502e1bae301a30783754603c60f06ea800a2b300133225980099b87300a002300a0098acc004c04400633001002800c88c96600260ba60f86ea800626464b3001305d307e37540031325980099b87375a6106020026eb4c168c20004dd5001c4cdd7984180984200800980e9840009baa0038a5041f460fe6ea8006294107c182b983f1baa32598009832183f1baa0018992cc004006330010018acc004cdd798111840009baa003308301308001375400d15980099baf305a30800137540026106026100026ea800e200307941f507841f5077407907783bc1de0ee842808c20804c1fcdd5000c1d507c182b983f1baa3058307e375400861000260fa6ea80060d683d0cc03c02c005008419d0774199077198101bac307b307837540b86eb8c144c1e0dd5180f183c1baa002375860a460f06ea800e2b300198009bac3051307837540b9375860f660f06ea800e6eb0c138c1e0dd50012444b30013370e6008004601601519800805400a4464b3001305e307d375400319800984080983f1baa0019bac301b307e3754007323305000523375e6106026100026ea8004dd38011bac301b307e37540069112cc004c184c20004dd5000c56600266ebcc21004c20404dd50019842009840809baa308401308101375400d15980099baf305a308101375400660b66102026ea8c21004c20404dd500344cdc3cc004dd5982d9840809baa0039bae3084010029bae30840130850100240546601a64b300133710002900044c164006200283f8dd6982d9840809baa006308401308101375400314a083f2294107e454cc1fd24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641f88a9983e2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641ec6602000a002804a2a660f292013b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e67746828726571756573747329001641e08982c4c006600200f375860f660f06ea800e4b30013014375a60a660f26ea8006260b26eb4c148c1e4dd5000c52820ec40453301c3756602a60f06ea8170dd71829183c1baa301e30783754005980082e4dd7183d983c1baa301e30783754005375a60a260f06ea800e6eb4c068c1e0dd5001a0149980c9bac304e3078375400446eb0c1f0c1e4dd5000a44446530013080010019bab308001308101001984000801d6600260ba601c0091480022b300100483644c96600261040200b1325980099b8f375c60fc0049110455534472008800c1bd07c1bad307e001836a0fe30800100441f883d1222259800cc00400e9464444b30010018acc004cdc78022441008a5189981200519843809ba90043308701375200697ae042080514a0841009021456600266e1ccdc09bad30840130810137540086eb4c21004c20404dd5001000c4c96600266e1e60026eb0c160c20804dd5006520009119912cc006600260cc0034a14a284180a264b3001337126602600200b30010099bae308a010039bae308a01308b01003406d1337000080031533085014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642100466e080040162006841808dd61843809842009baa00232980080a52000912cc004cdd798121843809baa002374e0071337000026eb4c184c21c04dd5001440050840120423758610e026108026ea800901e19b8100200a8801454cc200052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641fcb3001301c0098a400314800907e41cd07e41c907e0c2000400915330764901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641d51533076491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641d5153307649142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641d460080088a5041b8837044b300133710002900045300103d87a8000899802001000a0d82264b30010018204102264b3001001820c4c966002003042821410a0851332259800800c112264b30010018acc004c17c00a264b3001303c305b375400513259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc00400609904c8264132264b300130670038acc004c10cc188dd500344c96600200304e8992cc00400609f04f827c13e26644b3001001828c4c966002003052829414a0a5132598009836801c4c966002609400313259800800c156264b300100182b415a0ad0568992cc004c1c400e02505741b86eb80050711837000a0d8306a37540171598009824800c56600260d46ea802e01f05441ad054419c8338c1a0dd5005414d06a1bae00141b460d40028340dd7000983480120d43067001419460c66ea801a09a830209a8320dd7000a0ce3064001418860c800504a825412a0948328c1880050601831001412209104882420c63060001417860b86ea800a08c82c84c01cc17c02208a82e208b045822c115060182e800a0b6375c00260b800482e8c1680050581bac001820410105b182c00120ac81ea03c81ea03c8992cc00400607d03e81f44c8c00cc164010dd6800c0f9059182b00120a88992cc00400607903c81e44c8c00cc15c010dd6800c0f1057182a00120a481ca0a081cc0e6073039415060a20028278c14400a06f03781bc0dd0521827800a09a375a002609c005034413c60980028250dd6800982580140c504c1824800a08e3758002609000502e8172092304600141106eb0004c11400a05702b411860860028208c0fcdd500340a503c40a50401bac00181440a10431820000a07c3040002813409a04d0264104607c00281e0c0f800a049024812409103f181e000a0743038375400f02240d4444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608e00719800804c6600200900c805a01e805a022805a088375a00300a411c60880028210c11000a01100880440210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d8444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c12800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13c00e02901341306eb800504f1826000a094375c00260960048260c1240050474039012403901440390471bac001806c03504a1823800a08a3047002805c02e01700b4120608a0028218dd6800982200140210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d880e407203901c40dc664464b30013014303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301833038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8054dd7181a18189baa0019800912cc004006297ae089981a1818981a80099801001181b000a0669112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206091111919800800802912cc004006200b13259800800c4cc010c0e800801a26600a60740046600600600281c0c0e80050374dd6180518181baa01448888c8c8c8cc88c966002003159800980d181c9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130430028acc004c07cc0f8dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305a0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c154dd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260cc00713304300f225980080146600201f102b827a06e8992cc0040062b300130453064375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130720038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307700389808183b808c1790741bae00141dc60e80028390dd7000983980420e8307100741bd05941bc6eb40060b08390c1bc00506d1bad001306e00282aa0de306c00141a86eb0004c1ac00a0a505241b060d20028338c194dd5000c14106241420a105082820d43067002419504d418c6eb80050661831800a0c2375c00260c40048318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a001416060ac6ea801a082829a0828142082814208281420828142082814208281420828142082814208282ba083041820c10505b182c000a0ac375800260ae00503e81f20b03055001414c60aa00503c81e40f207882b0c14c005051182980140ea07503a81d20a83051001413c60a200503881c40e20708290c13c00504d182780140da06d03681b20a0304d001412c609a00503481a40d20688270c12c005049182580140ca06503281920983049001411c609200503081840c20608250c11c005045182380140ba05d02e81720903045001410c608a00502c81640b20588230c10c005041181f9baa0018152078815208081540aa05502a4110608200281f8dd700098200012082303e00140f060746ea800604a81ba04b025812c09503f29981b99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40d522010013259800980d181c9baa00189929981c99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981d9baa0018992cc0040062b3001301d303c375400313259800800c0e6264b300100181d40ea07503a899912cc0040060791325980098230014401a07a8218c1100050421bae00130430024110608200281f8c0f4dd5000c0e103a40e207103881c2084303f303c3754003153303a49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640e4602860766ea8c054c0ecdd5000981e981d1baa0018a9981c24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640dc6601400c4646600200260066eacc054c0ecdd5180a981d9baa0022259800800c528456600266e3cdd7181f80081c4528c4cc008008c100005039207a300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c207e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81c90391bac303c002375a60740026466ec0dd4181d0009ba7303b001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a607e003337149101023a200098008054c10000600a805100a182100144ca6002015303f00199b8a489023a200098008054c100006600e66008008004805100a18210012080304200140fc66e29220102207d0000340f06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920783758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e40f866e2ccdc0000acc004cdc4000a402914818229037207c004401866e0c00520203370c002901019b8e00400240ec6eb800d03f1b8a4881022c20002232330010010032259800980c800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681b10361801801844464b300130100018992cc00400600713259800800c01200900480244c966002606e007006802a068375c00281b8c0d000503218181baa0048acc004c03c006264b3001001801c4c966002003004802401200913259800981b801c01a00a81a0dd7000a06e303400140c860606ea8012004816902d18171baa00345901a0c070004c05cdd500ec5268a9980aa491856616c696461746f722072657475726e65642066616c7365001365640501":"5921fd010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480324601c601e0032300e300f300f00191807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c010006260226603c00297ae089980180198100012034301e001407122232598009807000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300d0018992cc004c0800062660206eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc040dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0300062646644b300130220018998091bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b3001300b001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260140031323259800981080140122c80f0dd6980f800980d9baa0038acc004c02400626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c03400626464b3001302000280245901d1bae301e001301a37540071598009806000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c030c060dd500144c8c8c966002604000513232598009808800c566002603c6ea800a00d16407d1598009808000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689807180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300c30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009806800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300c0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013017302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301b33028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c058c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980b18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980b98119baa003899191919912cc004c0b400e264b3001301d30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc0a4dd6181c005912cc00400a26605600c44b300100289980e80289980e8048992cc004c0b4c0e4dd500944c8c8c9660026082005132332259800981980144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038acc004c0c800a264b3001304500189981a9bac304400122598008014012266040608c00426002608e00482222c8210c100dd5001c5660026070005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b300130310028992cc004c11400626606a6eb0c1100048966002005004899810182300109800982380120888b208430403754007159800981800144c966002608a0031330353758608800244b300100280244cc084c1180084c004c11c00904445904218201baa0038acc004c0bc00a264b3001304500189981a9bac304400122598008014012266042608c00426002608e00482222c8210c100dd5001c566002605c005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b30013370e900700144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038b207c40f881f103e207c40f881f103e181e9baa001132598009819000c4c966002608800313302530430010078b2082303f37540071598009818800c4c966002608800313259800981a18201baa00189919192cc004c12000a266054608e006266054002017164114608c002608c00260826ea80062c81f8c10c0062c8208c0fcdd5001c5903d207a303d375400460800071640f8607e002607e00260746ea804a2c81c04cc0b4048896600200519800981f181d9baa3028303b37540352302e303b3754607e646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130333040375460880074a14a281fa26608730014a14c103d87a8000a60103d879800040fc660866e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11800400e2946266004004608e002820904444cc10e600294298103d87a8000a60103d879800040fc660866e9c0092f5c11330439800a51a60103d87a8000a60103d879800040fc660866e9ccc10cdd400080125eb8103f207e3758608460860026eb4c108008cc008008c10800503f48888ca6002003005802400d00111112cc00400e2b30010028800c590444660020093047003982380166002608c007375a608c00500140148021044488c8cc00400400c896600200314bd7044cc896600266ebcc110c104dd5182218209baa302e304137540046056660866ea40152f5c113304300233004004001899802002000a07e3042001304300141013700900148c0fcc100c100c100c100c100c100c100c100006444b30010028a6103d87a80008acc004c0c40062606666080608200497ae08cc00400e6084005337000029000a00640f081fa4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208289980280298238022082375c60800026eacc104004c10c0050410a5eb7bdb18244b30013030303c375400513232598009821801400e2c8200dd69820800981e9baa0028b20769181f982018201820000cdc0a40012232330010010032259800800c52f5c1133041374e600660840026600400460860028202444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1140066eb4c1180066600600660940048048c1200050461bab3043003375c608000266006006608a0046086002820a44646600200200644b30010018a508acc004cdd798210009ba70038a518998010011821800a07a410122598009818181e1baa0028991919194c004c110006608800730440024889660026090009133027304700713302400213259800981c000c4c8cc89660026098003132323322598009828001c0422c8268dd718268009bae304d002304d001375860960031641246eb4c124004c128004c114dd50014566002606e0031323322598009826000c4c8c8cc896600260a00070108b209a375c609a0026eb8c134008c134004dd61825800c590491bad3049001304a00130453754005159800981e800c4c8ca60026eb4c1280066096003375a60940049112cc004c13800a264646644b3001305200380945904f1bae304f001375c609e004609e0026eb0c13400a2c82586094002608a6ea800a2b3001303600189919912cc004c130006264646644b3001305000380845904d1bae304d001375c609a004609a0026eb0c12c0062c8248dd69824800982500098229baa0028acc004c0d400626464b3001304b002805c590481bad304900130453754005159800981a000c4c8c8cc8966002609a00700d8b2094375a60940026eb4c128008c128004c114dd50014566002606600313232598009825801402e2c8240dd6982480098229baa0028acc004cdc3a401c00313232598009825801402e2c8240dd6982480098229baa0028b2086410c82190432086410c821904318219baa0018b208a182200098218009821000981e9baa0028b20769181f9820182018201820000c888ca6002003004801a00222259800801440063300100398228014cc010c11000800500320849b8848001222222222222222222980098261baa0129112cc004c05000a33001003801520009112cc004c01000e266e00004dd6982018299baa0038b20a2404d1641392259800800c5200089808198010011829800a0a091809000c8966002003148002260206600400460a600282826018019222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905444cc014014c1680110541bae3053001375a60a800260ac00282a0cc03c01000c5200048888888ca6002444464b3001304d305937540031325980099baf305e305b375460bc60b66ea8c120c16cdd500098229982e9ba90054bd704566002609b30013756609060b66ea8c120c16cdd5000c01691108747265617375727900402113259800982a182d9baa0018991980d0008992cc004c144c174dd5000c4c96600266ebcc188c17cdd51831182f9baa001304933061375201297ae08acc004c14660026eacc130c17cdd5000c02691108747265617375727900403113259800982c182f9baa0018991980f0008acc004cdd7980e98309baa0034c0103d87a800089983180299831800998319ba6329800800cdd5982798311baa00499198008009bab30503063375460a060c66ea8024896600200314bd6f7b63044c8cc19ccdd818320009ba63233001001375660cc00444b30010018a5eb7bdb182264660d466ec0c19c004dd418119bad306800133003003306c002306a00141a06600600660d200460ce00283290011112cc00400a2003132332298008034c1ac016646600200200a44b300100189983599bb037520086e9800d2f5bded8c113298009bae30690019bab306a00198370012444b30013372001000713306f337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820de880144cc1c0cdd81ba9009374c0020048360ca6002003008801a002222598008014400626466453001006983b802cc8cc0040040148966002003133077337606ea4010dd4001a5eb7bdb1822653001375c60ea003375a60ec003307a00248896600266e4002000e2660f666ec0dd48041ba80070058acc004cdc7804001c4c96600260da003100289983e19bb037520126ea000400907819b8000700289983d99bb037520066ea0008cc01801800507720ee183c000a0ec40186eb8c1c0004dd69838800983980120e289983799bb037520066e98008cc01801800506b20d61836000a0d440186eb8c190004dd59832800983380120ca4bd7045905f183198301baa0018b20bc304b305f375400316417516417460c260bc6ea80062c82e0cc024dd61824982e9baa008005305f305c3754003164168608e60b66ea8c120c16cdd5000c59059459059182e982d1baa0018b20b033005375860b860b26ea801000a600800930060064889660026092017198009bac305b3058375403b22598009826982c9baa002899192cc004c18000a0071641746eb4c178004c168dd50014590584888896600266e1cc018014c0180122b3001300d003899b890019800802c00e90004888c96600260a860c06ea800626644b3001305b306237540031323301b00115980099baf30203064375400660ce60c86ea801e2b30013375e60a260c86ea8004c19cc190dd5001c4c96600260ba60c86ea800626464b30013370e6eb4c1a8008dd6982a18339baa0068acc004cdc39bad306a001375a60a660ce6ea801a2b30013375e60d460d6002603a60ce6ea801a266e0002260026eacc150c19cdd5182a18339baa00a9bae306a00c9bae306a306b00c405116419516419516419460d400260ca6ea80062c8318c140c190dd5000c59062459062183318319baa0018b20c2306430613754002609a60c26ea8c138c184dd500245905f1980600380120408b20b68b20b691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad30663063375460cc0046eb4c198c18cdd5183300180244c9660033001002a5191112cc0040062b30013371e008911008a51899810002998351ba90043306a375200697ae0419914a0833101d44cdc4803cc004dd6182798321baa00ca400122323259800980e000c4cdc000199b83337040026eb4c154c1a0dd50021bad3054306837540091003419930010059bae306a0019bae306a306b00140506eb0c1a4c198dd500120328b20c43301d3758609c60c66ea802c8dd6183398321baa0018b20c2375660ca60cc00260ca00330010079bae306330603754604060c06ea802200d005402d164178b3001305230090018a40011598009831800c4c96600266e3cdd7182f800a44104555344720089bad30600018b20bc30620018b20c04174660386eacc050c178dd50029bae304b305e3754603c60bc6ea801a60b660b06ea80de608a60b06ea80e5222222332259800acc004c05000a2946330013053001a50a51417882f2264b3001305430603754003132332232332259800982d18331baa0018992cc004cdc399b81375a60d600200c00915980099b87375a60d660d80026eb4c1acc1b001e2b3001337129000004c56600330013302a375860d660d06ea817cdd7182a18341baa3028306837540170109bac3055306837540193306a305530683754605060d06ea802ccc1a9301054455534472004bd7052000403915980099b890033233001001375860aa60d26ea8180896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c98361baa0029bae3059306c3754605860d86ea803e91010455534472004065100141a860da0026600400460dc002835a3300100b82fcdd6982a18341baa00c9bad30243068375401900999b8000a0094035164199164199159800cc004cc0a8dd6183598341baa05f375c60a860d06ea8c0a0c1a0dd5005c0426eb0c154c1a0dd50064cc1a8c154c1a0dd5181418341baa00b3306a4c01054455534472004bd704c08c00d00e46600201705f9bad305430683754019375a604860d06ea803201300a403516419883322c83322c8330ca6002660280026eb4c1acc1a0dd50014dd7182a98341baa302830683754017375c604860d06ea8c0a0c1a0dd5005a444b3001305e306a37540071325980099baf306f306c375460de60d86ea8004c158cc1b8dd480125eb822b3001305e98009bab3059306c3754003002a4410d7374616b696e675f7661756c7400406513259800983298361baa0018991980a8008acc004cdd7981518371baa0034c0103d87a80008998381ba898009bab305b306e3754007005a441045553447200406c660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c160c1b0dd5000c5906a45906a183718359baa0038b20d21bac3053306737540bd16419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5004acc004c060006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082ccdd7183298311baa30223062375400b375a609c60c46ea801a6eb4c078c188dd5003201a329800998070009bad306530623754005375c609e60c46ea8c088c188dd5002cdd7180f18311baa30223062375400a9112cc004c160c190dd5001c4c96600266ebcc1a4c198dd5183498331baa30533066375400260a0660d06ea40092f5c1159800982c4c004dd5982998331baa305330663754003002a4410d7374616b696e675f7661756c7400404d13259800982f98331baa001899198078008998351ba898009bab30553068375460aa60d06ea800e00b48810455534472004054660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c148c198dd5182998331baa0018b20c88b20c830683065375400716418c375860c860c26ea81622c82f8c058c180dd500245905e4c00401a6eb0c184c178dd500148cdc4a40006eb4c130c17cdd5000a0209800803520009119b80001375a609860c06ea800901322b3001305000b8cc004dd6182d982c1baa01d911194c0040060090034004444b30010028acc0040062946294105f456600200314a11598009980218308011bad30610018cc00400e60c40053062001400d14a082e105f20be912cc0040062900044c06ccc008008c17800505b488cdc199b82002375a608c60b46ea8004dd69823982d1baa001982d982c1baa0379822982c1baa0394888888c9660026645300132330010010032259800800c528456600266ebcc198c18cdd5183318319baa30503063375460cc002609a660ca6ea400d2f5c114a313300200230670014184832294294505f1bac3062305f37540ac6eb8c06cc17cdd5180f982f9baa0028acc004cc896600266e1cc028008c0280262b300130110018cc00400a003223259800982b98319baa001899192cc004c15cc194dd5000c4c96600266e1cdd698350009bad30543067375400713375e60d460d6002603a60ce6ea800e294106518331baa0018a50419060a260ca6ea8c96600260bc60ca6ea80062646603c0022b30013375e604660ce6ea800cc1a8c19cdd5003456600266ebcc150c19cdd5000983518339baa0038800c59065459065183498331baa0018b20c830513065375460a460ca6ea8010c19cc190dd5000c5906219807805800a0108b20be8b20be33021375860c460be6ea8158dd71825982f9baa301f305f37540046eb0c130c17cdd5001c56600330013758609660be6ea815a6eb0c188c17cdd5001cdd61825182f9baa00248896600266e1cc010008c02c02a3300100a801488c96600260b060c86ea8006330013068306537540033758603660ca6ea800e646609e00a466ebcc1a8c19cdd50009ba70023758603660ca6ea800d22259800982d98339baa0018acc004cdd7983598341baa003306b3068375460d660d06ea801a2b30013375e60a860d06ea800cc154c1a0dd5183598341baa006899b8798009bab305530683754007375c60d6005375c60d660d800480a8cc034c96600266e20005200089812000c40050671bad30553068375400c60d660d06ea80062941066452820cc8b20cc45906319808002800a0128b20c044c14a600330010079bac3062305f3754007259800980a1bad304d3060375400313053375a609860c06ea8006294105e20229980e9bab3015305f37540ac6eb8c130c17cdd5180f982f9baa002cc00415a6eb8c188c17cdd5180f982f9baa0029bad304b305f3754007375a603660be6ea800d00a4cc064dd61825182f9baa0022375860c660c06ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a51899811004198361ba90043306c375200697ae041a114a0834101f456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c148c19cdd5005520009119912cc006600260bc0034a14a2834a264b3001337126602200200b30010089bae306f0039bae306f307000340651337000080031641a866e0800401620068348dd6183618349baa00232980080952000912cc004cdd7981118361baa002374e0071337000026eb4c164c1b0dd50014400506a203e375860d860d26ea800901c19b8100200888014590652cc004c06801e29000c5200241911641911641906eacc19cc1a00056600260ae601c0091480022b300130680048992cc004cdc79bae306400148904555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3004004452820ac4158225980099b88001480022980103d87a8000899802001000a0a822646644b30013042001899912cc004c0ccc0fcdd500144c8c8c8cc8966002609200713259800981c98229baa0018991919912cc004c13800e264b3001303e001899192cc004c14400a01d1641386eb8c13c004c12cdd5003c566002607a00315980098259baa00780645904c45904920923049375400d16412c6eb8c12c004dd71825801182580098231baa0018b208830480058b208c375c608c002608c004608c002608a00260806ea800a2c81f0c1040044c010c1080162c81f8dd7181f80098200009bac303e00240f11323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980a98109baa00189919912cc004c0a4006264b3001301930253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b8c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0dc024896600200513302701410248992cc004c0e4c114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c054c084dd5000c4c966002603660446ea8006264b3001301730233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084601c60446ea8c03cc088dd5181298111baa0018b20403300a3758601c60426ea80608c8cc004004c00cdd5980818119baa30103023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602860406ea800a2646464b3001302800289980318138018992cc004c0600062b3001302537540050058b204c8acc004c05c00626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013012301e3754005132323259800981300144cc024c09400c4c966002602c003132598009814000c4c8c9660026032003132598009815800c4cc038c0a80040262c8140c098dd500145660026030003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602a00315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d13656400801",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1ProtocolManagementProtocolManagementElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594460010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888888896600264653001301c001980e180e800cdc3a4009301c0024888966002600460386ea800e330013020301d3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b874803246042604400323021302230220019b80480066e05200091810981118111811181118111811181118111811000cdd2a4004911111111111111194c004889660026020605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c054006264b3001001803c4c966002003159800981d80144c966002603000313259800800c02a264b30010018acc004c0f800a33001001806402d00e402d03b402e01700b805a07e303c00140e860706ea800a2b300130170018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11400e02701241086eb40060228228c1080050401bad00130410028072084303f00140f46eb4004c0f800a01681f8c0f000503a181c1baa002804a06a40d4606c6ea800601081c2011008804402103c181c800a06e30353754005159800980a000c566002606a6ea800a00f00640d900640c88190c0ccdd5000c0150084015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c96600260760070058042070375c00281d8c0e0005036181a1baa0038acc004c04c006264b300100180344c966002003007803c4c96600260760071330180012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0ec00e26603000244b3001002803c4c96600200319800805400626004607c006805201700b805c02d03f181e001207480420703758003007803a076303800140d860686ea800e2b300130120018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981f001c4cc06c004896600200500a8992cc0040063300100d800c4c008c10400d00d403a01d00e8072084303f00240f500b40ec6eb000601500a40f8607600281c8dd6800981d001401d03b181c000a06c303437540071598009808800c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002602000313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009807800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c015031206240c48189031206240c460646ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260286606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980a981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301a0018acc004c0e8dd5001401e00c81da2b300130190018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026038003159800981e1baa006804c02103d4566002603600313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783019303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002602a60686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c058006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130150018acc004c0d8dd5002400e00481ba0048199033181a1baa00348888cc89660026030606e6ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009821801c566002603e607c6ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013053002899818007112cc00400a26606401a44b30010028cc00401e330010058992cc004c0d0c14cdd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982e00144cc8966002607400313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252052825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0e4006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a504a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981f800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b300130380018992cc00400608b13259800800c11a08d132598009830801c4cc0f800489660020050078992cc00400633001001898011832001c129029412a09504a82520ca3062002418104741786eb000608d046418460bc00282e0c168dd5002c566002606e00313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252054825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a904a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981a800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea801608882b905720ae415c82b905720ae415c264b300130390018992cc00400608913259800800c56600260be00519800800c02208a813a08a82e208b045822c115060182e800a0b630593754005159800981c000c4c9660020030448992cc0040062b3001305f0028acc004c0ecc168dd5000c4c9660020030468992cc004006264b300100182444c966002003159800983180146600200719800800c032092816209281620928302093049824c1250641830800a0be3061002823c11e08f047418860be00282e8c16cdd5000c115058411505c411608b045822a0c0305d001416c60b26ea800a08682b1056182b9baa001305737540070424165042821410a08482e8c168005058182d001410208104082020b63058001415860a86ea806607c82884cc0d0054896600200519800982c182a9baa302f30553754049230353055375460b2646600200200444b30010018a5eb8503d87a80008101800044c8cc89660033001303a305a375460bc0074a14a282c22660bb30014a14c103d87a8000a60103d87980004160660ba6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18000400e294626600400460c200282d105e44cc176600294298103d87a8000a60103d87980004160660ba6e9c0092f5c113305d9800a51a60103d87a8000a60103d87980004160660ba6e9ccc174dd400080125eb8105820b0375860b860ba0026eb4c170008cc008008c17000505948888ca6002003005802400d00111112cc00400e2b30010028800c54cc16d24112657870656374205b5d203d206c6973745f6200164179159800801454cc16d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c20073061002cc004c18000e6eb4c18000a002802900420bc41792232330010010032259800800c52f5c1133225980099baf305e305b375460bc60b66ea8c0d4c16cdd500118181982e9ba90054bd7044cc174008cc01001000626600800800282c0c170004c17400505a4dc02400523059305a305a305a305a305a305a305a305a0019112cc00400a2980103d87a80008acc004c0e000626074660b460b600497ae08cc00400e60b80053030001400c82a9059488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd5982d800982e800a0b614bd6f7b630488966002607060ae6ea800e264b300100180144c966002003003801c00e264b3001305f003802c01105c1bad001801a0be305c001416860b06ea800e00282aa460b260b460b460b40032232330010010032259800800c52f5c113305b374e600660b80026600400460ba00282d2444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c17c0066eb4c1800066600600660c80048048c1880050601bab305d003375c60b40026600600660be00460ba00282da44646600200200644b30010018a508acc004cdd7982e0009ba70038a51899801001182e800a0ac416922259800981c182b9baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c96600200313259800800c022264b300130640028cc00401e330010058992cc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b300130400018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009835801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009838001c05a02a8368dd7000a0e0306d00141ac6eb8004c1b000906d1835000a0d080820d0375800300f807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c118006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c96600200301280944c96600260dc007159800800c04e264b300100180a4052029014899912cc00400602d13259800800c05e02f01780bc4c96600260e600701980c20e0375c0028398c1c000506e1bae001306f00241c060da002835a0268358dd6000c04a0248370c1ac0050691bad001306a002807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0fc006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b3001303e0018992cc00400601713259800800c03201900c8992cc004c1a000e01d00d41946eb40060188340c19400506318309baa0048acc004c0f4006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306b003808c0410681bad001807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0f0006264b3001001805c4c96600200300c8064032264b3001306800380740350651bad00180620d03065001418c60c26ea80122b30013370e9007000c4c96600200300b8992cc00400601900c80644c96600260d000700e806a0ca375a00300c41a060ca0028318c184dd5002402905e20bc417882f105e20bc417882f0c17cdd5001c02502e402503240250611831000a0c03062002803c01e00f007418c60c000282f0c18000a00b005802c015061182f000a0b8305e002801c00e007003417c60b800282d0c160dd5001c00505548c164c168c168c168c168006444653001001802400d0011112cc00400a200319800801cc17c00a6600860bc004002801905c4dc424000911111111111111114c004c194dd5008c88966002602600519800801c00a900048896600260080071337000026eb4c118c1b0dd5001c54cc1a924011a6578706563742076616c69646174696f6e287265717565737429001641a480922a660ce9212e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641992259800800c5200089807998010011836000a0d291808800c89660020031480022601e6600400460d8002834a6016017222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906c44cc014014c1cc01106c1bae306c001375a60da00260de0028368cc03801000c5200048888888ca6002444464b30013053307237540031325980099baf30773074375460ee60e86ea8c138c1d0dd500098249983b1ba90054bd70456600260a730013756609c60e86ea8c138c1d0dd5000c01691108747265617375727900402113259800982d183a1baa0018992cc004006330010018992cc004c15cc1d8dd5000c4c96600266ebcc1ecc1e0dd5183d983c1baa001304d3307a375201297ae08acc004c15e60026eacc148c1e0dd5000c026910108747265617375727900403113259800982f183c1baa0018992cc004006330010018acc004cdd7980e183d1baa0034c103d87a800089983e0029983e0009983e1ba6329800800cdd5982a983d9baa00499198008009bab3056307c375460ac60f86ea8024896600200314bd6f7b63044c8cc20004cdd8183e8009ba63233001001375660fe00444b30010018a5eb7bdb182264661060266ec0c20004004dd4182c1bad308101001330030033085010023083010014204046600600661040200461000200283f10011112cc00400a2003132332298008034c21004016646600200200a44b30010018998420099bb037520086e9800d2f5bded8c113298009bae3082010019bab3083010019843808012444b30013372001000713308801337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528211002880144cc22404cdd81ba9009374c002004842008ca6002003008801a002222598008014400626466453001006984800802cc8cc004004014896600200313309001337606ea4010dd4001a5eb7bdb1822653001375c611c02003375a611e0200330930100248896600266e4002000e2661280266ec0dd48041ba80070058acc004cdc7804001c4c96600260e6003100289984a8099bb037520126ea00040090900119b8000700289984a0099bb037520066ea0008cc01801800508f01211e02184880800a11e0240186eb8c22404004dd69845008009846008012114028998440099bb037520066e98008cc01801800508301210602184280800a1060240186eb8c1f4004dd5983f00098400080120fc4bd7041bd07741b901d41ba0dd06e83720fe307c30793754003153307749012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641d860a260f06ea80062a660ec920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641d5153307649143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641d460f460ee6ea80062a660ea92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641d0660126eb0c13cc1d8dd5004002c1a501941a60d3069834a0f6307830753754003153307349013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641c8609a60e86ea8c138c1d0dd5000c54cc1c92401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c515330724914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c460ec60e66ea80062a660e292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641c06600a6eb0c1d4c1c8dd50020014c010012600c00c9112cc004c13c02e33001375860e860e26ea8072444b300130543073375400713259800800c00a264b3001001801c00e00713259800983d801c01600883c0dd6800c00d07b183c000a0ec3074375400700141c5222225980099b87300600530060048acc004c03400e266e24006600200b003a40012223259800982d183c9baa001899912cc004c184c1ecdd5000c4c96600200319800800c56600266ebcc07cc1f4dd5001984000983e9baa0078acc004cdd7982b983e9baa001308001307d3754007132598009831983e9baa001899192cc004cdc39bad308301002375a60b46100026ea801a2b30013370e6eb4c20c04004dd6982c9840009baa0068acc004cdd7984180984200800980e9840009baa006899b8000898009bab305a308001375460b46100026ea802a6eb8c20c040326eb8c20c04c21004031014454cc1f92413665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001641f5153307e49126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001641f5153307e4912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001641f461060200260fc6ea80062a660f8921184578706563746564204f4465706f73697420616374696f6e001641ec60ac60fa6ea80060ec83d20ea83d20e880da0e907483a41d108201183f983e1baa00183920f2307d307a375400260a660f46ea8c150c1e8dd500241a107719806003801203e831a0e683120e691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307f307c375460fe0046eb4c1fcc1f0dd5183f80180244c9660033001002a5191112cc0040062b30013371e008911008a5189981000299841809ba90043308301375200697ae041f914a083f101d44cdc4803cc004dd61829983e9baa00ca400122323259800980e000c4cdc000199b83337040026eb4c16cc20404dd50021bad305a3081013754009100341f930010059bae3083010019bae30830130840100140506eb0c20804c1fcdd5001203283720f43301d375860a460f86ea802c8dd6184000983e9baa00183720f2375660fc60fe00260fc00330010079bae307c30793754603e60f26ea802200d005402d1533077490123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641d8b3001305830090018a4001159800800c19e264b3001307d0028992cc004cdc79bae307900248810455534472008800c1a90771bad307900183420f4307b00141e483a8cc06cdd5980a183b9baa005375c60a260ee6ea8c074c1dcdd50034c1d0c1c4dd50204c12cc1c4dd5020a4444446644b300159800980a0014528c6600260b20034a14a283b107644c96600260b460f26ea80062646644646644b30013060307f37540031325980099b87337026eb4c210040040180122b30013370e6eb4c21004c21404004dd6984200984280803c56600266e2520000098acc0066002660526eb0c21004c20404dd50329bae305a3081013754604e6102026ea802e021375860b66102026ea8032661060260b66102026ea8c09cc20404dd50059984180a61054455534472004bd7052000403915980099b890033233001001375860b66104026ea8198896600200314800226644b30013375e611002610a026ea8008c22004c22404c22404c22404c22404c22404c22404c22404c22404c22404c22404c21404dd5007c4cdc0000cc004dd5982f9842809baa0029bae305f30850137546056610a026ea803e910104555344720040651001420804610c0200266004004610e0200284200a3300100b832cdd6982d1840809baa00c9bad3023308101375401900999b8000a0094035153307f49012b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641f9153307f4919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001641f9159800cc004cc0a4dd61842009840809baa065375c60b46102026ea8c09cc20404dd5005c0426eb0c16cc20404dd50064cc20c04c16cc20404dd518139840809baa00b33083014c1054455534472004bd704c16000d00e4660020170659bad305a3081013754019375a60466102026ea803201300a4035153307f491b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641f883f22a660fe9213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641f9153307f4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641f865300133014001375a6108026102026ea800a6eb8c16cc20404dd518139840809baa00b9bae30233081013754604e6102026ea802d2225980098321841809baa0038992cc004cdd79844009842809baa308801308501375400260b46610e026ea40092f5c115980098324c004dd5982f9842809baa00180152210d7374616b696e675f7661756c740040651325980098359842809baa0018992cc004006330010018acc004cdd798149843809baa0034c103d87a8000899844809ba898009bab30613087013754007005a441045553447200406c6611202611402610e026ea8004cc2240400d2f5c107c4210050810140550810184080c2040610202846008c22404c21804dd5000c54cc2100524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016420c0460bc610a026ea80062a661060292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642080515330830149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016420804610e026108026ea800e2a661040292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f696478290016420404375860b26100026ea81922a660fc92013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641f466e04018004c20404c20804c20804c20804c20804c20804c1f8dd5004acc004c060006266e10cdc1002801000c5200041e86eb4c1f8004dd6983f183d9baa307e980082fcdd7183f183d9baa3021307b375400b375a60a860f66ea801a6eb4c074c1ecdd5003201a329800998070009bad307e307b3754005375c60aa60f66ea8c084c1ecdd5002cdd7180e983d9baa3021307b375400a9112cc004c178c1f4dd5001c4c96600266ebcc20804c1fcdd5184100983f9baa3059307f375400260a866102026ea40092f5c1159800982f4c004dd5982c983f9baa3059307f3754003002a4410d7374616b696e675f7661756c7400404d132598009832983f9baa0018992cc00400633001001899841809ba898009bab305b308101375460b66102026ea800e00b489045553447200405466106026108026102026ea8004cc20c0400d2f5c107b403d07b83dc1ee0f6843008c20c04c20004dd5000c1d907d182c183f9baa3059307f3754003153307d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f1153307d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f061020260fc6ea800e2a660f892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ec375860fa60f46ea817a2a660f092013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641dc602c60f26ea80122a660ee92012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641d930010069bac307a3077375400523371290001bad3052307837540028082600200d480024466e00004dd69829183c9baa002404c8acc004c15802e33001375860e860e26ea8072444653001001802400d0011112cc00400a2b30010018a518a5041e1159800800c52845660026600860f40046eb4c1e800633001003983d8014c1ec005003452820e841e083c244b30010018a40011301a33002002307700141d1223370666e08008dd6982618399baa001375a609a60e66ea800660e860e26ea8102609660e26ea8105222222325980099914c004c8cc00400400c896600200314a115980099baf307f307c375460fe60f86ea8c158c1f0dd5183f80098289983f1ba90034bd704528c4cc008008c2000400507920faa50a5141dc6eb0c1ecc1e0dd502e1bae301a30783754603c60f06ea800a2b300133225980099b87300a002300a0098acc004c04400633001002800c88c96600260ba60f86ea800626464b3001305d307e37540031325980099b87375a6106020026eb4c168c20004dd5001c4cdd7984180984200800980e9840009baa0038a5041f460fe6ea8006294107c182b983f1baa32598009832183f1baa0018992cc004006330010018acc004cdd798111840009baa003308301308001375400d15980099baf305a30800137540026106026100026ea800e200307941f507841f5077407907783bc1de0ee842808c20804c1fcdd5000c1d507c182b983f1baa3058307e375400861000260fa6ea80060d683d0cc03c02c005008419d0774199077198101bac307b307837540b86eb8c144c1e0dd5180f183c1baa002375860a460f06ea800e2b300198009bac3051307837540b9375860f660f06ea800e6eb0c138c1e0dd50012444b30013370e6008004601601519800805400a4464b3001305e307d375400319800984080983f1baa0019bac301b307e3754007323305000523375e6106026100026ea8004dd38011bac301b307e37540069112cc004c184c20004dd5000c56600266ebcc21004c20404dd50019842009840809baa308401308101375400d15980099baf305a308101375400660b66102026ea8c21004c20404dd500344cdc3cc004dd5982d9840809baa0039bae3084010029bae30840130850100240546601a64b300133710002900044c164006200283f8dd6982d9840809baa006308401308101375400314a083f2294107e454cc1fd24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641f88a9983e2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641ec6602000a002804a2a660f292013b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e67746828726571756573747329001641e08982c4c006600200f375860f660f06ea800e4b30013014375a60a660f26ea8006260b26eb4c148c1e4dd5000c52820ec40453301c3756602a60f06ea8170dd71829183c1baa301e30783754005980082e4dd7183d983c1baa301e30783754005375a60a260f06ea800e6eb4c068c1e0dd5001a0149980c9bac304e3078375400446eb0c1f0c1e4dd5000a44446530013080010019bab308001308101001984000801d6600260ba601c0091480022b300100483644c96600261040200b1325980099b8f375c60fc0049110455534472008800c1bd07c1bad307e001836a0fe30800100441f883d1222259800cc00400e9464444b30010018acc004cdc78022441008a5189981200519843809ba90043308701375200697ae042080514a0841009021456600266e1ccdc09bad30840130810137540086eb4c21004c20404dd5001000c4c96600266e1e60026eb0c160c20804dd5006520009119912cc006600260cc0034a14a284180a264b3001337126602600200b30010099bae308a010039bae308a01308b01003406d1337000080031533085014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642100466e080040162006841808dd61843809842009baa00232980080a52000912cc004cdd798121843809baa002374e0071337000026eb4c184c21c04dd5001440050840120423758610e026108026ea800901e19b8100200a8801454cc200052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641fcb3001301c0098a400314800907e41cd07e41c907e0c2000400915330764901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641d51533076491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641d5153307649142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641d460080088a5041b8837044b300133710002900045300103d87a8000899802001000a0d82264b30010018204102264b3001001820c4c966002003042821410a0851332259800800c112264b30010018acc004c17c00a264b3001303c305b375400513259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc00400609904c8264132264b300130670038acc004c10cc188dd500344c96600200304e8992cc00400609f04f827c13e26644b3001001828c4c966002003052829414a0a5132598009836801c4c966002609400313259800800c156264b300100182b415a0ad0568992cc004c1c400e02505741b86eb80050711837000a0d8306a37540171598009824800c56600260d46ea802e01f05441ad054419c8338c1a0dd5005414d06a1bae00141b460d40028340dd7000983480120d43067001419460c66ea801a09a830209a8320dd7000a0ce3064001418860c800504a825412a0948328c1880050601831001412209104882420c63060001417860b86ea800a08c82c84c01cc17c02208a82e208b045822c115060182e800a0b6375c00260b800482e8c1680050581bac001820410105b182c00120ac81ea03c81ea03c8992cc00400607d03e81f44c8c00cc164010dd6800c0f9059182b00120a88992cc00400607903c81e44c8c00cc15c010dd6800c0f1057182a00120a481ca0a081cc0e6073039415060a20028278c14400a06f03781bc0dd0521827800a09a375a002609c005034413c60980028250dd6800982580140c504c1824800a08e3758002609000502e8172092304600141106eb0004c11400a05702b411860860028208c0fcdd500340a503c40a50401bac00181440a10431820000a07c3040002813409a04d0264104607c00281e0c0f800a049024812409103f181e000a0743038375400f02240d4444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608e00719800804c6600200900c805a01e805a022805a088375a00300a411c60880028210c11000a01100880440210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d8444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c12800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13c00e02901341306eb800504f1826000a094375c00260960048260c1240050474039012403901440390471bac001806c03504a1823800a08a3047002805c02e01700b4120608a0028218dd6800982200140210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d880e407203901c40dc664464b30013014303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301833038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8054dd7181a18189baa0019800912cc004006297ae089981a1818981a80099801001181b000a0669112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206091111919800800802912cc004006200b13259800800c4cc010c0e800801a26600a60740046600600600281c0c0e80050374dd6180518181baa01448888c8c8c8cc88c966002003159800980d181c9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130430028acc004c07cc0f8dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305a0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c154dd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260cc00713304300f225980080146600201f102b827a06e8992cc0040062b300130453064375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130720038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307700389808183b808c1790741bae00141dc60e80028390dd7000983980420e8307100741bd05941bc6eb40060b08390c1bc00506d1bad001306e00282aa0de306c00141a86eb0004c1ac00a0a505241b060d20028338c194dd5000c14106241420a105082820d43067002419504d418c6eb80050661831800a0c2375c00260c40048318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a001416060ac6ea801a082829a0828142082814208281420828142082814208281420828142082814208282ba083041820c10505b182c000a0ac375800260ae00503e81f20b03055001414c60aa00503c81e40f207882b0c14c005051182980140ea07503a81d20a83051001413c60a200503881c40e20708290c13c00504d182780140da06d03681b20a0304d001412c609a00503481a40d20688270c12c005049182580140ca06503281920983049001411c609200503081840c20608250c11c005045182380140ba05d02e81720903045001410c608a00502c81640b20588230c10c005041181f9baa0018152078815208081540aa05502a4110608200281f8dd700098200012082303e00140f060746ea800604a81ba04b025812c09503f29981b99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40d522010013259800980d181c9baa00189929981c99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981d9baa0018992cc0040062b3001301d303c375400313259800800c0e6264b300100181d40ea07503a899912cc0040060791325980098230014401a07a8218c1100050421bae00130430024110608200281f8c0f4dd5000c0e103a40e207103881c2084303f303c3754003153303a49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640e4602860766ea8c054c0ecdd5000981e981d1baa0018a9981c24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640dc6601400c4646600200260066eacc054c0ecdd5180a981d9baa0022259800800c528456600266e3cdd7181f80081c4528c4cc008008c100005039207a300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c207e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81c90391bac303c002375a60740026466ec0dd4181d0009ba7303b001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a607e003337149101023a200098008054c10000600a805100a182100144ca6002015303f00199b8a489023a200098008054c100006600e66008008004805100a18210012080304200140fc66e29220102207d0000340f06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920783758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e40f866e2ccdc0000acc004cdc4000a402914818229037207c004401866e0c00520203370c002901019b8e00400240ec6eb800d03f1b8a4881022c20002232330010010032259800980c800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681b10361801801844464b300130100018992cc00400600713259800800c01200900480244c966002606e007006802a068375c00281b8c0d000503218181baa0048acc004c03c006264b3001001801c4c966002003004802401200913259800981b801c01a00a81a0dd7000a06e303400140c860606ea8012004816902d18171baa00345901a0c070004c05cdd500ec5268a9980aa491856616c696461746f722072657475726e65642066616c7365001365640501":"5921fd010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480324601c601e0032300e300f300f00191807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c010006260226603c00297ae089980180198100012034301e001407122232598009807000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300d0018992cc004c0800062660206eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc040dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0300062646644b300130220018998091bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b3001300b001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260140031323259800981080140122c80f0dd6980f800980d9baa0038acc004c02400626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c03400626464b3001302000280245901d1bae301e001301a37540071598009806000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c030c060dd500144c8c8c966002604000513232598009808800c566002603c6ea800a00d16407d1598009808000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689807180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300c30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009806800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300c0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013017302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301b33028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c058c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980b18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980b98119baa003899191919912cc004c0b400e264b3001301d30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc0a4dd6181c005912cc00400a26605600c44b300100289980e80289980e8048992cc004c0b4c0e4dd500944c8c8c9660026082005132332259800981980144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038acc004c0c800a264b3001304500189981a9bac304400122598008014012266040608c00426002608e00482222c8210c100dd5001c5660026070005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b300130310028992cc004c11400626606a6eb0c1100048966002005004899810182300109800982380120888b208430403754007159800981800144c966002608a0031330353758608800244b300100280244cc084c1180084c004c11c00904445904218201baa0038acc004c0bc00a264b3001304500189981a9bac304400122598008014012266042608c00426002608e00482222c8210c100dd5001c566002605c005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b30013370e900700144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038b207c40f881f103e207c40f881f103e181e9baa001132598009819000c4c966002608800313302530430010078b2082303f37540071598009818800c4c966002608800313259800981a18201baa00189919192cc004c12000a266054608e006266054002017164114608c002608c00260826ea80062c81f8c10c0062c8208c0fcdd5001c5903d207a303d375400460800071640f8607e002607e00260746ea804a2c81c04cc0b4048896600200519800981f181d9baa3028303b37540352302e303b3754607e646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130333040375460880074a14a281fa26608730014a14c103d87a8000a60103d879800040fc660866e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11800400e2946266004004608e002820904444cc10e600294298103d87a8000a60103d879800040fc660866e9c0092f5c11330439800a51a60103d87a8000a60103d879800040fc660866e9ccc10cdd400080125eb8103f207e3758608460860026eb4c108008cc008008c10800503f48888ca6002003005802400d00111112cc00400e2b30010028800c590444660020093047003982380166002608c007375a608c00500140148021044488c8cc00400400c896600200314bd7044cc896600266ebcc110c104dd5182218209baa302e304137540046056660866ea40152f5c113304300233004004001899802002000a07e3042001304300141013700900148c0fcc100c100c100c100c100c100c100c100006444b30010028a6103d87a80008acc004c0c40062606666080608200497ae08cc00400e6084005337000029000a00640f081fa4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208289980280298238022082375c60800026eacc104004c10c0050410a5eb7bdb18244b30013030303c375400513232598009821801400e2c8200dd69820800981e9baa0028b20769181f982018201820000cdc0a40012232330010010032259800800c52f5c1133041374e600660840026600400460860028202444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1140066eb4c1180066600600660940048048c1200050461bab3043003375c608000266006006608a0046086002820a44646600200200644b30010018a508acc004cdd798210009ba70038a518998010011821800a07a410122598009818181e1baa0028991919194c004c110006608800730440024889660026090009133027304700713302400213259800981c000c4c8cc89660026098003132323322598009828001c0422c8268dd718268009bae304d002304d001375860960031641246eb4c124004c128004c114dd50014566002606e0031323322598009826000c4c8c8cc896600260a00070108b209a375c609a0026eb8c134008c134004dd61825800c590491bad3049001304a00130453754005159800981e800c4c8ca60026eb4c1280066096003375a60940049112cc004c13800a264646644b3001305200380945904f1bae304f001375c609e004609e0026eb0c13400a2c82586094002608a6ea800a2b3001303600189919912cc004c130006264646644b3001305000380845904d1bae304d001375c609a004609a0026eb0c12c0062c8248dd69824800982500098229baa0028acc004c0d400626464b3001304b002805c590481bad304900130453754005159800981a000c4c8c8cc8966002609a00700d8b2094375a60940026eb4c128008c128004c114dd50014566002606600313232598009825801402e2c8240dd6982480098229baa0028acc004cdc3a401c00313232598009825801402e2c8240dd6982480098229baa0028b2086410c82190432086410c821904318219baa0018b208a182200098218009821000981e9baa0028b20769181f9820182018201820000c888ca6002003004801a00222259800801440063300100398228014cc010c11000800500320849b8848001222222222222222222980098261baa0129112cc004c05000a33001003801520009112cc004c01000e266e00004dd6982018299baa0038b20a2404d1641392259800800c5200089808198010011829800a0a091809000c8966002003148002260206600400460a600282826018019222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905444cc014014c1680110541bae3053001375a60a800260ac00282a0cc03c01000c5200048888888ca6002444464b3001304d305937540031325980099baf305e305b375460bc60b66ea8c120c16cdd500098229982e9ba90054bd704566002609b30013756609060b66ea8c120c16cdd5000c01691108747265617375727900402113259800982a182d9baa0018991980d0008992cc004c144c174dd5000c4c96600266ebcc188c17cdd51831182f9baa001304933061375201297ae08acc004c14660026eacc130c17cdd5000c02691108747265617375727900403113259800982c182f9baa0018991980f0008acc004cdd7980e98309baa0034c0103d87a800089983180299831800998319ba6329800800cdd5982798311baa00499198008009bab30503063375460a060c66ea8024896600200314bd6f7b63044c8cc19ccdd818320009ba63233001001375660cc00444b30010018a5eb7bdb182264660d466ec0c19c004dd418119bad306800133003003306c002306a00141a06600600660d200460ce00283290011112cc00400a2003132332298008034c1ac016646600200200a44b300100189983599bb037520086e9800d2f5bded8c113298009bae30690019bab306a00198370012444b30013372001000713306f337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820de880144cc1c0cdd81ba9009374c0020048360ca6002003008801a002222598008014400626466453001006983b802cc8cc0040040148966002003133077337606ea4010dd4001a5eb7bdb1822653001375c60ea003375a60ec003307a00248896600266e4002000e2660f666ec0dd48041ba80070058acc004cdc7804001c4c96600260da003100289983e19bb037520126ea000400907819b8000700289983d99bb037520066ea0008cc01801800507720ee183c000a0ec40186eb8c1c0004dd69838800983980120e289983799bb037520066e98008cc01801800506b20d61836000a0d440186eb8c190004dd59832800983380120ca4bd7045905f183198301baa0018b20bc304b305f375400316417516417460c260bc6ea80062c82e0cc024dd61824982e9baa008005305f305c3754003164168608e60b66ea8c120c16cdd5000c59059459059182e982d1baa0018b20b033005375860b860b26ea801000a600800930060064889660026092017198009bac305b3058375403b22598009826982c9baa002899192cc004c18000a0071641746eb4c178004c168dd50014590584888896600266e1cc018014c0180122b3001300d003899b890019800802c00e90004888c96600260a860c06ea800626644b3001305b306237540031323301b00115980099baf30203064375400660ce60c86ea801e2b30013375e60a260c86ea8004c19cc190dd5001c4c96600260ba60c86ea800626464b30013370e6eb4c1a8008dd6982a18339baa0068acc004cdc39bad306a001375a60a660ce6ea801a2b30013375e60d460d6002603a60ce6ea801a266e0002260026eacc150c19cdd5182a18339baa00a9bae306a00c9bae306a306b00c405116419516419516419460d400260ca6ea80062c8318c140c190dd5000c59062459062183318319baa0018b20c2306430613754002609a60c26ea8c138c184dd500245905f1980600380120408b20b68b20b691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad30663063375460cc0046eb4c198c18cdd5183300180244c9660033001002a5191112cc0040062b30013371e008911008a51899810002998351ba90043306a375200697ae0419914a0833101d44cdc4803cc004dd6182798321baa00ca400122323259800980e000c4cdc000199b83337040026eb4c154c1a0dd50021bad3054306837540091003419930010059bae306a0019bae306a306b00140506eb0c1a4c198dd500120328b20c43301d3758609c60c66ea802c8dd6183398321baa0018b20c2375660ca60cc00260ca00330010079bae306330603754604060c06ea802200d005402d164178b3001305230090018a40011598009831800c4c96600266e3cdd7182f800a44104555344720089bad30600018b20bc30620018b20c04174660386eacc050c178dd50029bae304b305e3754603c60bc6ea801a60b660b06ea80de608a60b06ea80e5222222332259800acc004c05000a2946330013053001a50a51417882f2264b3001305430603754003132332232332259800982d18331baa0018992cc004cdc399b81375a60d600200c00915980099b87375a60d660d80026eb4c1acc1b001e2b3001337129000004c56600330013302a375860d660d06ea817cdd7182a18341baa3028306837540170109bac3055306837540193306a305530683754605060d06ea802ccc1a9301054455534472004bd7052000403915980099b890033233001001375860aa60d26ea8180896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c98361baa0029bae3059306c3754605860d86ea803e91010455534472004065100141a860da0026600400460dc002835a3300100b82fcdd6982a18341baa00c9bad30243068375401900999b8000a0094035164199164199159800cc004cc0a8dd6183598341baa05f375c60a860d06ea8c0a0c1a0dd5005c0426eb0c154c1a0dd50064cc1a8c154c1a0dd5181418341baa00b3306a4c01054455534472004bd704c08c00d00e46600201705f9bad305430683754019375a604860d06ea803201300a403516419883322c83322c8330ca6002660280026eb4c1acc1a0dd50014dd7182a98341baa302830683754017375c604860d06ea8c0a0c1a0dd5005a444b3001305e306a37540071325980099baf306f306c375460de60d86ea8004c158cc1b8dd480125eb822b3001305e98009bab3059306c3754003002a4410d7374616b696e675f7661756c7400406513259800983298361baa0018991980a8008acc004cdd7981518371baa0034c0103d87a80008998381ba898009bab305b306e3754007005a441045553447200406c660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c160c1b0dd5000c5906a45906a183718359baa0038b20d21bac3053306737540bd16419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5004acc004c060006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082ccdd7183298311baa30223062375400b375a609c60c46ea801a6eb4c078c188dd5003201a329800998070009bad306530623754005375c609e60c46ea8c088c188dd5002cdd7180f18311baa30223062375400a9112cc004c160c190dd5001c4c96600266ebcc1a4c198dd5183498331baa30533066375400260a0660d06ea40092f5c1159800982c4c004dd5982998331baa305330663754003002a4410d7374616b696e675f7661756c7400404d13259800982f98331baa001899198078008998351ba898009bab30553068375460aa60d06ea800e00b48810455534472004054660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c148c198dd5182998331baa0018b20c88b20c830683065375400716418c375860c860c26ea81622c82f8c058c180dd500245905e4c00401a6eb0c184c178dd500148cdc4a40006eb4c130c17cdd5000a0209800803520009119b80001375a609860c06ea800901322b3001305000b8cc004dd6182d982c1baa01d911194c0040060090034004444b30010028acc0040062946294105f456600200314a11598009980218308011bad30610018cc00400e60c40053062001400d14a082e105f20be912cc0040062900044c06ccc008008c17800505b488cdc199b82002375a608c60b46ea8004dd69823982d1baa001982d982c1baa0379822982c1baa0394888888c9660026645300132330010010032259800800c528456600266ebcc198c18cdd5183318319baa30503063375460cc002609a660ca6ea400d2f5c114a313300200230670014184832294294505f1bac3062305f37540ac6eb8c06cc17cdd5180f982f9baa0028acc004cc896600266e1cc028008c0280262b300130110018cc00400a003223259800982b98319baa001899192cc004c15cc194dd5000c4c96600266e1cdd698350009bad30543067375400713375e60d460d6002603a60ce6ea800e294106518331baa0018a50419060a260ca6ea8c96600260bc60ca6ea80062646603c0022b30013375e604660ce6ea800cc1a8c19cdd5003456600266ebcc150c19cdd5000983518339baa0038800c59065459065183498331baa0018b20c830513065375460a460ca6ea8010c19cc190dd5000c5906219807805800a0108b20be8b20be33021375860c460be6ea8158dd71825982f9baa301f305f37540046eb0c130c17cdd5001c56600330013758609660be6ea815a6eb0c188c17cdd5001cdd61825182f9baa00248896600266e1cc010008c02c02a3300100a801488c96600260b060c86ea8006330013068306537540033758603660ca6ea800e646609e00a466ebcc1a8c19cdd50009ba70023758603660ca6ea800d22259800982d98339baa0018acc004cdd7983598341baa003306b3068375460d660d06ea801a2b30013375e60a860d06ea800cc154c1a0dd5183598341baa006899b8798009bab305530683754007375c60d6005375c60d660d800480a8cc034c96600266e20005200089812000c40050671bad30553068375400c60d660d06ea80062941066452820cc8b20cc45906319808002800a0128b20c044c14a600330010079bac3062305f3754007259800980a1bad304d3060375400313053375a609860c06ea8006294105e20229980e9bab3015305f37540ac6eb8c130c17cdd5180f982f9baa002cc00415a6eb8c188c17cdd5180f982f9baa0029bad304b305f3754007375a603660be6ea800d00a4cc064dd61825182f9baa0022375860c660c06ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a51899811004198361ba90043306c375200697ae041a114a0834101f456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c148c19cdd5005520009119912cc006600260bc0034a14a2834a264b3001337126602200200b30010089bae306f0039bae306f307000340651337000080031641a866e0800401620068348dd6183618349baa00232980080952000912cc004cdd7981118361baa002374e0071337000026eb4c164c1b0dd50014400506a203e375860d860d26ea800901c19b8100200888014590652cc004c06801e29000c5200241911641911641906eacc19cc1a00056600260ae601c0091480022b300130680048992cc004cdc79bae306400148904555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3004004452820ac4158225980099b88001480022980103d87a8000899802001000a0a822646644b30013042001899912cc004c0ccc0fcdd500144c8c8c8cc8966002609200713259800981c98229baa0018991919912cc004c13800e264b3001303e001899192cc004c14400a01d1641386eb8c13c004c12cdd5003c566002607a00315980098259baa00780645904c45904920923049375400d16412c6eb8c12c004dd71825801182580098231baa0018b208830480058b208c375c608c002608c004608c002608a00260806ea800a2c81f0c1040044c010c1080162c81f8dd7181f80098200009bac303e00240f11323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980a98109baa00189919912cc004c0a4006264b3001301930253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b8c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0dc024896600200513302701410248992cc004c0e4c114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c054c084dd5000c4c966002603660446ea8006264b3001301730233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084601c60446ea8c03cc088dd5181298111baa0018b20403300a3758601c60426ea80608c8cc004004c00cdd5980818119baa30103023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602860406ea800a2646464b3001302800289980318138018992cc004c0600062b3001302537540050058b204c8acc004c05c00626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013012301e3754005132323259800981300144cc024c09400c4c966002602c003132598009814000c4c8c9660026032003132598009815800c4cc038c0a80040262c8140c098dd500145660026030003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602a00315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d13656400801",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1ProtocolMintProtocolMintWithdraw{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5942e3010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a49856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a202020202900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888888896600264653001301e001980f180f800cdc3a4009301e00248889660026004603c6ea800e330013022301f37540072302330243024001918119812000cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c9b80480066e05200091811981218121812181218121812181218121812000cdd2a4004911111111111111194c00488966002601c60626ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e800a330010038992cc004c04c006264b3001001803c4c966002003159800981e80144c966002602c00313259800800c02a264b30010018acc004c10000a33001001806402d00e402d03d402e01700b805a082303e00140f060746ea800a2b300130150018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11c00e02701241106eb40060228238c1100050421bad00130430028072088304100140fc6eb4004c10000a0168208c0f800503c181d1baa002804a06e40dc60706ea800601081d2011008804402103e181d800a072303737540051598009809000c566002606e6ea800a00f00640e100640d081a0c0d4dd5000c0150084015037401600b005802a076303800140d86070005003801c00e00681c8c0d800503418191baa003800a05e911194c004006009003400444464b300130120018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa0038acc004c044006264b300100180344c966002003007803c4c966002607a0071330160012259800801401e264b30010018cc00402a003130023040003402900b805c02e0168208c0f800903c402103a1bac001803c01d03d181d000a07030363754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0f400e26602c00244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130100018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009820001c4cc064004896600200500a8992cc0040063300100d800c4c008c10c00d00d403a01d00e8072088304100240fd00b40f46eb000601500a4100607a00281d8dd6800981e001401d03d181d000a070303637540071598009807800c4c9660020030068992cc00400600f007803c4c966002607a0070058042074375a00300740f4607400281c0c0d8dd5001c566002601c00313259800800c01a264b3001001803c01e00f13259800981e801c01601081d0dd6800c01d03d181d000a070303637540071598009806800c4c9660020030068992cc00400600f007803c01e264b3001303d003802c02103a1bae00140f4607400281c0c0d8dd5001c015033206640cc8199033206640cc60686ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260246606c00297ae0899801801981c0012062303600140d091119192cc00400633001222598009809981b1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303f0028cc00400e264b300130180018acc004c0f0dd5001401e00c81ea2b300130170018992cc00400600f13259800800c02201100880444c966002608600700a804a080375c0028218c10000503e181e1baa0028acc004c07c006264b3001001803c4c9660026084005009804207e304000140f860786ea800a00c81c90392072303a3754003005403100540f1005802c01600a8200c0f400503b181e801400e007003801a07c303b00140e4606e6ea800e00281a2444b300130133036375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607800315980099b8948010c0ec00600d13259800982080244c9660026034003159800981f1baa006804c02103f4566002603200313259800800c026264b3001001805402a015132598009822801c0320168210dd6800c0290451821000a080303e375400d1598009810800c566002607c6ea801a01300840fd00840ec81d903b181e1baa005803a07c3017303b00140e500640f46ea800600b005802c015040181e800a076303d002801c00e00700340f8607600281c8c0dcdd5001c0050344889660026026606c6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d132598009820801c02200e81f0dd6800c019041181f000a078375c002607a00481f0c0ec005039181b9baa003800a068911192cc004c050006264b3001001801c4c9660020030048024012264b3001303f003803401503c1bad001802207e303c00140e860706ea80122b300130130018acc004c0e0dd5002400e00481ca00481a9035181b1baa00348888cc8966002602c60726ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009822801c566002603a60806ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013055002899817007112cc00400a26606001a44b30010028cc00401e33001005899192cc004c0ccc158dd500d44c9660020030408992cc004006264b300100182144c966002003159800982f80144cc8966002607200313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a054825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0e0006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40a904b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b1598009820000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130370018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c566002606c00313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a056825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0d4006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40ad04b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b159800981a000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130080018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c11505a20b4416882d105a20b4416882d04c966002607000313259800800c116264b30010018acc004c18800a330010018044119028411905f411a08d04682320c63060001417860b86ea800a2b300130370018992cc00400608b13259800800c56600260c4005159800981d182e9baa0018992cc00400608f13259800800c4c9660020030498992cc0040062b300130660028cc00400e33001001806412902d412902d4129063412a09504a82520ce3064001418860c800504882441220908328c188005060182f1baa00182320b682320be823411a08d046418c60c000282f0c170dd5001411105920b2305a375400260b46ea800e08682e2087043821c10d060182e800a0b6305d002820c106083041417860b600282c8c15cdd500d40fd05409981980b112cc00400a33001305b30583754606e60b06ea809645300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa303b305c375460be002605e660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303d305e37540046062660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230343058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013039305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48896600200514c103d87a80008acc004c0dc00626072660ba60bc00497ae08cc00400e60be0053031001400c82c105c488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064175133005005306400441746eb8c174004dd5982f0009830000a0bc14bd6f7b6304dc024005222329800800c012006800888966002005159800800c528c52820be8acc00400629422b3001330043061002375a60c200319800801cc18800a60c4002801a294105b20be417d25980099b88001480022605c003100141592305c305d305d305d0019112cc004c0dcc168dd5001c4c9660020030028992cc004006007003801c4c96600260c400700580220be375a003003418860be00282e8c16cdd5001c00505848c170c174c174c174c174006460b860ba60ba60ba60ba60ba60ba60ba60ba003222329800800c01200680088896600200510018cc00400e60c4005330043061002001400c82fa4466e0ccdc10011bad303a305a37540026eb4c0e4c168dd5000cdc424001371e9110455534472009112cc004c0dcc168dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983380146600200f19800802c4c966002608000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002608e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130710038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001307600380cc0610731bae00141d860e60028388dd7000983900120e6307000141b901341b86eb000602501241c460dc0028360dd68009836801403d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981e800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607600313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc306437540091598009807800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd5002402906120c24184830906120c241848308c188dd5001c02502f402503340250641832800a0c63065002803c01e00f007419860c60028308c18c00a00b005802c0150641830800a0be3061002801c00e007003418860be00282e8c16cdd5001c005058488cc0a40088cdd7982f182d9baa001374e00491111111111111111114c004c1a8dd5009c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c54cc1c1240112657870656374205b5d203d206c6973745f62001641cd159800801454cc1c12411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260ec007307600299912cc004c01c00a266e0000cdd69829983a1baa00283020e23075003375a60ea004802107320e68a9983624812e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641ad300f00f912cc0040062900044c03ccc008008c1c400506e489660020031480022601e6600400460e200283724446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e2899802802983c00220e2375c60e20026eb4c1c8004c1d0005072198090020018a40012259800800c5200089807998010011838800a0dc91808800c88c96600260a260da6ea8006264b30010018cc0040062b30013375e601c60de6ea800cc1c8c1bcdd5002456600266ebcc138c1bcdd5000983918379baa0038800c18906c418506c418100641820c106083020e83071306e375400305e41ac609a60da6ea8c130c1b4dd50012444444445300130060069802802c896600266e2000520008a6103d87a8000899804801000a0e69801801a4444646644b300130570108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea8006264b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0029bac305e307f3754007375860a660fe6ea80092225980099b87300d003300d0078acc004c04000a33001003801488c96600260c26108026ea800626464b3001306330860137540031323298009980f804000cdd618131844809baa0049bad308c0100248896600260d06116026ea800e2b30013371264664466e0cc194cdc019b82001375a60de611e026ea800c008008dd698361846809baa001375a60d8611a026ea8020c23c04c23004dd5001cc004dd598359846009baa306b308c013754015375c611e02005375c611e0261200200480e22b30013370e0026eb4c1acc23004dd5003c4cdd79ba70043029308c01375400f14a084480a294108901454cc228052414365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164224043758611602611802002610e026ea800629410840118331843009baa3301300400130880130850137540030744208046601c012002811a0e083fa0de83f9159800cc004dd6182f983f9baa0618024dd6184100983f9baa0039984080982f183f9baa301b307f37540046610202981054455534472004bd70200a899b879800801418690004dd6982f983f9baa0039bad301e307f3754007004401800306a41f1153307d49018f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641f130010039bac308101307e375400523018375a60bc60fe6ea800501241a107b22b300130560108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea80062b30019800998121bac308101307e37540c06eb8c178c1f8dd5180d183f1baa0019bac305d307e37540053308001305d307e3754603460fc6ea8004cc20005301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c180c20c04dd5000c4c8c96600260c2610a026ea800626464b3001337120033001375660ce6110026ea8c19cc22004dd5003cdd71845808044dd718458098460080420308acc004cdc3800982e9bad3067308801375400913375e611602611802004604a6110026ea80122941085014528210a02375a611402002610c026ea800629410830118329842809baa3301200400130870130840137540030734204046601a01000281120de83f20dc83f1159800cc004dd6182f183f1baa0609bac308101307e3754005375860a460fc6ea80052225980099b87300d002300c0068cc00401a00522325980098301841809baa0018cc004c21c04c21004dd5000cdd618109842009baa0039980d0021bac302130840137540069112cc004c18cc21804dd5000c56600266ebcc22804c21c04dd50019845009843809baa308a01308701375400d15980099baf3067308701375400660cc610e026ea8c22804c21c04dd500344cdc3cc004dd598331843809baa0039bae308a010029bae308a01308b01002405c66042604e6eb4c198c21c04dd50031845009843809baa0018a5042100514a084200a2a6610a029215365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642100483ea102023300d005001408907941f8899b879800800c18290004dd6982f183f1baa0029bad301d307e3754005003401530010039bac308101307e37540052337106eb4c178c1fcdd5000a400080922a660f89219e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641ed153307c491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641ed06841ec8992cc004c14c04633001375860fe60f86ea809260fe60f86ea812660b660f86ea812922259800998131bac308201307f37540c26eb8c078c1fcdd5180d983f9baa0018992cc004cc896600266e1cc034008c03401a2b300130100018cc00400a00322325980098309842009baa001899912cc004c1a8c21804dd5000c4c96600200319800800c56600266ebcc09cc22004dd50019845809844009baa0068acc004cdd798339844009baa001308b0130880137540071325980098301844009baa001899b87375a6118026112026ea8004dd698341844809baa0048a5042180460d06110026ea80060f684280a0f484280a0f280fa0f307983cc1e508d011845009843809baa00183ba10802308801308501375400260ca610a026ea8c190c21404dd5001c1d10820119807004000a04683820fe837a0fe3302637586106026100026ea8188dd718301840009baa301c30800137540046eb0c17cc20004dd5001c5660033001375860c06100026ea818a00937586106026100026ea800e661040260be6100026ea8c070c20004dd50011984100a61054455534472004bd70200c8991919912cc004cdc3acc004c180c0340062900045660020030788992cc004c2240400a264b3001301e375c610a02005100183da10602375a610a02003079421804610e0200284280908101002c56600266e1ccdc09bad3087013084013754610e020066eb4c21c04c21004dd5184380802002c4cc024dd6182c1842009baa006232306298008024dd7184480800cdd7184480984500800a02c3758611002610a026ea80060fc84080a2a661040292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e7400164204046eacc21404c21804004cc094dd5980f9841009baa064375c60c26104026ea8c078c20804dd5002184280800cc00418a6eb8c20c04c20004dd5180e1840009baa0029bad30603080013754007375a603e6100026ea800d00841ad07d454cc1f9241776578706563740a2020202076616c69646174655f6469726563745f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641f530010039bac308201307f375400523019375a60be6100026ea800501341a507c22b300130270118cc004dd6183f983e1baa024983f983e1baa049982d983e1baa04a4889660026604c6eb0c20804c1fcdd50309bae301e307f3754603660fe6ea80062b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0019bac305e307f37540053308101305e307f3754603660fe6ea8004cc20405301054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c184c21004dd5000c4cc896600260d4610c026ea8006264b30010018cc0040062b30013375e604e6110026ea800cc22c04c22004dd5003456600266ebcc19cc22004dd50009845809844009baa0038992cc004c0d0c22004dd5000c4c96600266e2400660026eacc1a4c22804dd518349845009baa0089bae308d010099bae308d01308e01009406913370e00260be6eb4c1a4c22804dd5002c528210e02375a6118026112026ea800629410860118341844009baa00183da10a0283d210a0283ca03e83cc1e60f3079423404611402610e026ea80060ee842008c22004c21404dd500098329842809baa306430850137540070744208046601c010002811a0e083fa0de83f9198009bad305f307f3754005375a603c60fe6ea800b3001003a4001225980099b88375a60c06102026ea80092000899b80001375a60c06102026ea800a0da83f101a4cc088dd5980e183f9baa061375c60bc60fe6ea8c06cc1fcdd5000a4444646464b30013370eb30013062300f0048a400115980080241ea264b3001308b010058992cc004c080dd7184380801440060fa842808dd6984380800c1ed08801184480802210e02420c0400b15980099b87337026eb4c22404c21804dd51844808011bad308901308601375461120200600b13300b375860b4610c026ea80208c8c1926002007375c611602003375c61160261180200280c0dd61845009843809baa0018a9984200a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016420c051533084014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016420c046eacc22004c22404004c2200400660020cb375c610c026106026ea8c07cc20c04dd5002c0120068059153307d491896578706563740a2020202076616c69646174655f6469726563745f6275726e5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641f106941f08a5041e483c888c8cc00400400c896600200314a31598009801984100800c4cc008008c20c04006294107c21000241e083c0888888cc88ca60026eacc21404c2180400664660020026eb0c15cc20c04dd5005112cc004006297ae0899843009843809842009baa3087010013300200230880100142140559800982f1805801c520008acc00400e0ed1325980098438080244c96600260386eb8c20c0400a20030794204046eb4c20c040060ee842008c2140400d0830120fe488966002646600200200844b30010018a518991991199119801001000912cc004006200713233225980099802802984980802456600266e3c01d221008a518991919800800807112cc00400629422b30013375e612a020026e9c00e2946266004004612c020028478090930119848809ba90073309101375200497ae042300514a0846008dd71846008009bad308d01001308f010014234046eacc2280400cdd718438080099801801984600801184500800a110028acc004cdc399b81375a611002610a026ea8c22004010dd69844009842809baa3088010050018992cc004cdc3cc004dd6182d1843009baa00da400122332259800cc004c1980069429450870144c96600266e24cc0940040166002013375c611c02007375c611c02611e0200680da266e000100062a66112029212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642200466e080040162006843808dd61845809844009baa002329800805d2000912cc004cdd798141845809baa002374e0071337000026eb4c1a8c22c04dd50014400508801204837586116026110026ea800902119b8100200b8801454cc210052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016420c04b3001301e00a8a40031480090820141fd08201454cc20c052401b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a20202020290016420804308501001330223756603860fe6ea8014dd7182f183f9baa301b307f375400d30010059bae308201307f3754603660fe6ea801a007002401c4444b30013370e6012004601000719800801c00a4464b3001305c307f37540031325980099baf30840130810137540026108026102026ea8c21004c20404dd5002456600266ebcc184c20404dd500098301840809baa308401308101375400913370f3001375660c06102026ea80066eb8c210040166eb8c18001501118109bad3060308101375400914a083f2294107e1841809840009baa00183ca0fa33009006001407907541e8444464b30013059307c37540031325980099baf308101307e375461020260fc6ea8c174c1f8dd5000982899840009ba90054bd70456600260b33001375660ba60fc6ea8c174c1f8dd5000c016911087472656173757279004039132598009831183f1baa0018992cc004006330010018992cc004c174c20004dd5000c4c96600266ebcc21404c20804dd51842809841009baa00130553308401375201297ae08acc004c17660026eacc184c20804dd5000c02691010874726561737572790040491325980098331841009baa0018992cc004006330010018acc004cdd798119842009baa0034c103d87a800089984300802998430080099843009ba6329800800cdd598321842809baa00499198008009bab3065308601375460ca610c026ea8024896600200314bd6f7b63044c8cc22804cdd81843808009ba63233001001375661120200444b30010018a5eb7bdb1822646611a0266ec0c22804004dd418301bad308b0100133003003308f01002308d01001422c04660060066118020046114020028440090011112cc00400a2003132332298008034c23804016646600200200a44b30010018998470099bb037520086e9800d2f5bded8c113298009bae308c010019bab308d010019848808012444b30013372001000713309201337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528212402880144cc24c04cdd81ba9009374c002004847008ca6002003008801a002222598008014400626466453001006984d00802cc8cc004004014896600200313309a01337606ea4010dd4001a5eb7bdb1822653001375c613002003375a613202003309d0100248896600266e4002000e26613c0266ec0dd48041ba80070058acc004cdc7804001c4c96600260f2003100289984f8099bb037520126ea000400909a0119b8000700289984f0099bb037520066ea0008cc01801800509901213202184d80800a1320240186eb8c24c04004dd6984a00800984b008012128028998490099bb037520066e98008cc01801800508d01211a02184780800a11a0240186eb8c21c04004dd59844008009845008012110024bd70454cc2080524126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642040507b408907b83dc1ee0f6844808c21804c20c04dd5000c54cc2040524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642000460c46104026ea80062a6610002920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641fd15330800149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641fc6108026102026ea80062a660fe92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641f8660146eb0c180c20004dd5004002c1d901e41da0ed07683b210a02308201307f3754003153307d49013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641f060bc60fc6ea8c174c1f8dd5000c54cc1f12401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641ed153307c4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641ec61000260fa6ea80062a660f692013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641e86600c6eb0c1fcc1f0dd500200108992cc0040060830418992cc00400608513259800800c10e087043821c4cc89660020030458992cc0040062b300130620028992cc004c0ecc178dd500144c9660020030488992cc004006264b300100182544c96600200313259800800c132264b3001001826c13609b04d8992cc004c1a800e2b300130423065375400d13259800800c13e264b300100182841420a1050899912cc0040060a513259800800c14e0a7053829c4c96600260e0007132598009824800c4c9660020030568992cc0040060af05782bc15e264b3001307400380941610711bae00141d060e20028378c1b4dd5005c566002609000315980098369baa00b807c15506e415506a20d4306b375401505441b46eb80050701836800a0d6375c00260d80048368c1a800506818331baa00682720c682720ce375c0028350c19c0050651833801412e09704b825a0d03065001418c60ca005049824c1260928330c18c005061182f9baa002823a0b813007306200882320be823411a08d046418c60c000282f0dd7000982f80120c0305d001416c6eb0006083041417860b600482c8dc3a401d03d407903d407913259800800c0fa07d03e8991801982d8021bad00181f20b63058002415913259800800c0f207903c8991801982c8021bad00181e20b230560024151039414903981cc0e607282b0c14c005051182980140de06f03781ba0a83051001413c6eb4004c14000a0688288c13800504c1bad001304d002818a09c304b00141246eb0004c12800a05d02e412c60900028230dd6000982380140ae0568240c11400504318209baa006814a07c814a0843758003028814208a304200141006084005026813409a04c8218c10000503e182000140920490248122082303e00140f060746ea801e04481b888966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018992cc00400601313259800800c02a01500a8992cc004c12400e330010098cc00401201900b403d00b404500b41186eb40060148248c11800504418230014022011008804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c088966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009826001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009828801c0520268270dd7000a0a2304e00141306eb8004c13400904e1825800a092807202480720288072092375800300d806a0983049001411c609200500b805c02e0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c101c80e407203881c8cc88c9660026024606a6ea80062606c6466ec0c0e8004c0e8c0ec004dd6181c981b1baa0018a9981a24818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640cc646600200200644b30010018a60103d87a80008992cc004cdd7981b80099ba548010cc0e8c02ccc0e8dd480225eb812f5c1130163303a374e66074606e00266074607000297ae04bd7044cc00c00cc0f0009035181d000a0703756600e60666ea8054dd7181b18199baa0019800912cc004006297ae089981b1819981b80099801001181c000a06a9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206491111919800800802912cc004006200b13259800800c4cc010c0f000801a26600a60780046600600600281d0c0f00050394dd6180898191baa01448888c8c8c8cc88c966002003159800980c181d9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130450028acc004c074c100dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305c0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d0c15cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260d000713304100f225980080146600201f102b827a06e8992cc0040062b300130433066375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130740038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307900389808183c808c1790761bae00141e460ec00283a0dd7000983a80420ec307300741c505941c46eb40060b083a0c1c400506f1bad001307000282aa0e2306e00141b06eb0004c1b400a0a505241b860d60028348c19cdd5000c14106441420a105082820d83069002419d04d41946eb80050681832800a0c6375c00260c80048328c1880050601bae0013061002418860be00282e8dd7000982f00120be305c001416860b06ea801a08282aa0828142082814208281420828142082814208281420828142082814208282ca083041820c10505d182d000a0b0375800260b200503e81f20b43057001415460ae00503c81e40f207882c0c154005053182a80140ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f182880140da06d03681b20a4304f0014134609e00503481a40d20688280c13400504b182680140ca065032819209c304b0014124609600503081840c20608260c124005047182480140ba05d02e817209430470014114608e00502c81640b20588240c11400504318209baa001815207c815208481540aa05502a411860860028208dd700098210012086304000140f860786ea800604a81ca04b025812c09504129981c99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40dd22010013259800980c181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981e9baa0018992cc0040062b3001301b303e375400313259800800c0ee264b300100181e40f207903c899912cc00400607d1325980098240014401a07e8228c1180050441bae0013045002411860860028208c0fcdd5000c0e903c40ea07503a81d20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec603a607a6ea8c070c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46601400c4646600200260066eacc070c0f4dd5180e181e9baa0022259800800c528456600266e3cdd7182080081d4528c4cc008008c10800503b207e300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20825980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d903b1bac303e002375a60780026466ec0dd4181e0009ba7303d001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6082003337149101023a200098008054c10800600a805100a182200144ca6002015304100199b8a489023a200098008054c108006600e66008008004805100a182200120843044001410466e29220102207d0000340f86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039009207c3758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e410066e2ccdc0000acc004cdc4000a4029148182290372080004401866e0c00520203370c002901019b8e00400240f46eb800d0411b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681c10381801801844464b3001300e0018992cc00400600713259800800c01200900480244c9660026072007006802a06c375c00281c8c0d800503418191baa0048acc004c034006264b3001001801c4c966002003004802401200913259800981c801c01a00a81b0dd7000a072303600140d060646ea8012004817902f18181baa00345901c0c078004c064dd500fc5268a9980ba491856616c696461746f722072657475726e65642066616c7365001365640581":"5922b1010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c91807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601e6603c00297ae089980180198100012034301e001407122232598009806000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300b0018992cc004c08000626601c6eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc038dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0280062646644b300130220018998081bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b30013009001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260100031323259800981080140122c80f0dd6980f800980d9baa0038acc004c01c00626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c02c00626464b3001302000280245901d1bae301e001301a37540071598009805000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c028c060dd500144c8c8c966002604000513232598009807800c566002603c6ea800a00d16407d1598009807000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689806180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300a30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009805800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300a0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013015302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301933028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c050c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980a18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980a98119baa003899191919912cc004c0b400e264b3001301b30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc09cdd6181c005912cc00400a26605200c44b300100289980e80289980e804899192cc004c0b0c0e8dd5009c4c8c8c9660026084005132332259800981900144c966002608c0031330343758608a00244b300100280244cc084c11c0084c004c12000904545904318209baa0038acc004c0c400a264b3001304600189981a1bac304500122598008014012266042608e004260026090004822a2c8218c104dd5001c5660026072005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130300028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b208630413754007159800981780144c966002608c0031330343758608a00244b300100280244cc088c11c0084c004c12000904545904318209baa0038acc004c0b800a264b3001304600189981a1bac304500122598008014012266044608e004260026090004822a2c8218c104dd5001c566002605a005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130080028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b2086304137540071640fc81f903f207e40fc81f903f207e303e3754002264b300130310018992cc004c11400626604c608800200f16410860806ea800e2b300130300018992cc004c114006264b3001303330413754003132323259800982480144cc0acc12000c4cc0ac00402e2c8230c11c004c11c004c108dd5000c590401822000c5904218201baa0038b207c40f8607c6ea8008c10400e2c81f8c100004c100004c0ecdd5009c59039099816009912cc00400a33001303f303c3754606060786ea806e45300132330010010032259800800c528456600266ebcc10cc100dd5182198201baa30343040375460860026054660846ea400d2f5c114a3133002002304400140f8820a94294503c488c8cc00400400c896600200314bd7044cc896600266ebcc114c108dd5182298211baa3036304237540046058660886ea40152f5c113304400233004004001899802002000a0803043001304400141052302d303c37546080646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001303230413754608a0074a14a2820226608930014a14c103d87a8000a60103d87980004100660886e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11c00400e29462660040046090002821104544cc112600294298103d87a8000a60103d87980004100660886e9c0092f5c11330449800a51a60103d87a8000a60103d87980004100660886e9ccc110dd400080125eb8104020803758608660880026eb4c10c008cc008008c10c00504048896600200514c103d87a80008acc004c0c00062606466082608400497ae08cc00400e6086005337000029000a00640f482024464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208489980280298240022084375c60820026eacc108004c1100050420a5eb7bdb1826e012002911194c0040060090034004444b30010028acc00400629462941043456600200314a11598009980218228011bad30450018cc00400e608c0053046001400d14a0820104320869b81480024608060826082608200322598009817981e9baa002899192cc004c11000a0071641046eb4c108004c0f8dd500145903c48c100c104c104c104c1040064608060826082608260826082608260826082003222329800800c01200680088896600200510018cc00400e608c005330043045002001400c821a4466e0ccdc10011bad3033303e37540026eb4c0c8c0f8dd5000cdc424001371e911045553447200912cc004c0bcc0f4dd500144c8c8c8ca6002608a003304500398228012444b3001304900489981418240038998128010992cc004c0dc0062646644b3001304d0018991919912cc004c14400e0211641386eb8c138004dd7182700118270009bac304c0018b2094375a60940026096002608c6ea800a2b3001303600189919912cc004c134006264646644b3001305100380845904e1bae304e001375c609c004609c0026eb0c1300062c8250dd69825000982580098231baa0028acc004c0f8006264653001375a6096003304c0019bad304b002488966002609e005132323322598009829801c04a2c8280dd718280009bae305000230500013758609c005164130304b00130463754005159800981a800c4c8cc8966002609a003132323322598009828801c0422c8270dd718270009bae304e002304e001375860980031641286eb4c128004c12c004c118dd50014566002606800313232598009826001402e2c8248dd6982500098231baa0028acc004c0cc006264646644b3001304e003806c5904b1bad304b001375a60960046096002608c6ea800a2b30013032001899192cc004c13000a0171641246eb4c128004c118dd50014566002601a00313232598009826001402e2c8248dd6982500098231baa0028b20884110822104420884110822104418221baa0018b208c182280098220009821800981f1baa0028b20789119813801119baf3042303f37540026e9c0092222222222222222222980098271baa0139112cc004c04c00a2653001001802400e90002002222259800801c56600200510018b20ae8cc00401260b4007305a00299912cc004c01c00a266e0000cdd69826182c1baa0028b20ac3059003375a60b200480210574590504c03c03e44b30010018a40011300f33002002305500141492259800800c520008980799801001182a800a0a491119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c82b226600a00a60b800882b0dd7182a8009bad3056001305800141586602400800629000496600266e20005200089806000c400504e489660020031480022601e6600400460aa002829246022003223259800982518289baa001899198030008acc004cdd7980718299baa00330563053375400915980099baf30473053375400260ac60a66ea800e200316414516414460aa60a46ea80062c8280c118c144dd5182298289baa0024888888888a6002600e00f3006006912cc004cdc4000a400114c0103d87a8000899805001000a0b29801801a4444646644b300130510118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac3057306337540053758609c60c66ea80052225980099b87300c003300c0068acc004c03c00a33001003801488c96600260b460d06ea800626464b3001305c306a37540031323298009980f804000cdd6181318369baa0049bad307000248896600260c260de6ea800e2b30013371264664466e0ccdc019b80337040026eb4c1a0c1ccdd5001801240020046eb4c194c1c4dd50009bad30653071375401060e660e06ea800e60026eacc190c1c0dd5183218381baa00a9bae30730029bae30733074002407115980099b87001375a60c860e06ea801e266ebcdd3802181498381baa0078a5041b914a083722c83706eb0c1bcc1c0004c1acdd5000c52820d2305f306a37546602400800260d860d26ea80062c8338cc03402000502345906445906422b300198009bac3058306337540b50039bac30663063375400533065305730633754603660c66ea8004cc195301054455534472004bd702008899b879800800c16a90004dd6982c18319baa0029bad301e30633754005003401530010039bac30663063375400523019375a60b060c86ea800501345906145906145906122b300130500118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac30573063375400533065305730633754603660c66ea8004cc195301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c168c1a0dd5000c4c8c96600260b660d46ea800626464b3001337120033001375660c260da6ea8c184c1b4dd5003cdd718380044dd71838183880420328acc004cdc380098149bad3061306d375400913375e60e060e2004604c60da6ea8012294106b452820d6375a60de00260d66ea80062941069182f98351baa33012004001306c3069375400316419c6601a010002811a2c83222c8321159800cc004dd6182c18319baa05a9bac3066306337540053758609c60c66ea80052225980099b87300d002300c0068cc00401a005223259800982d18341baa0018cc004c1b0c1a4dd5000cdd6181118349baa0039980d8021bac3022306937540069112cc004c174c1acdd5000c56600266ebcc1bcc1b0dd5001983798361baa306f306c375400d15980099baf3061306c375400660c060d86ea8c1bcc1b0dd500344cdc3cc004dd5983018361baa0039bae306f0029bae306f3070002406066044602e6eb4c180c1b0dd5003183798361baa0018a5041a914a083522c835116419c6601a00a002811a2c832113370f300100182d520009bad305830633754005375a603c60c66ea800a006802a6002007375860cc60c66ea800a466e20dd6982c18321baa001480010134590614590614590612264b3001304d0128cc004dd6183218309baa025983218309baa040982a98309baa0424889660026604e6eb0c19cc190dd502d9bae301f30643754603860c86ea80062b300133225980099b87300c002300c0058acc004c03c00633001002800c88c96600260b460d06ea800626644b30013063306a37540031323301f00115980099baf3027306c375400660de60d86ea801a2b30013375e60c060d86ea8004c1bcc1b0dd5001c4c96600260b260d86ea8006266e1cdd6983818369baa001375a60c260da6ea8012294106b183098361baa0018b20d48b20d4306e306b37540031641a460d860d26ea8004c178c1a4dd5182e98349baa0038b20ce3300d007001408d1641911641906604c6eb0c19cc190dd502d9bae305930643754603860c86ea8004dd6182c18321baa0028acc00660026eb0c164c190dd502dc00e6eb0c19cc190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd70200a8cc004dd6982c98321baa0029bad301f306437540059800801cdd6183398321baa0029180d1bad30593065375400280a2660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641891641888acc004c0a004a33001375860c860c26ea809660c860c26ea810260aa60c26ea810922259800998139bac3067306437540b66eb8c07cc190dd5180e18321baa0018acc00660026604c6eb0c19cc190dd502d9bae305930643754603860c86ea80066eb0c160c190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c16cc1a4dd5000c4cc896600260c860d66ea8006264660400022b30013375e605060da6ea800cc1c0c1b4dd5003456600266ebcc184c1b4dd5000983818369baa0038992cc004c0d4c1b4dd5000c4c96600266e2400660026eacc18cc1bcdd5183198379baa0089bae30720099bae30723073009406d13370e00260566eb4c18cc1bcdd5002c52820da375a60e260dc6ea8006294106c183118369baa0018b20d68b20d6306f306c37540031641a860da60d46ea8004c17cc1a8dd5182f18351baa0038b20d03300e00800140911641951641948cc004dd6982c98321baa0029bad301f306437540059800801d2000912cc004cdc41bad305a30663754004900044cdc00009bad305a3066375400516419080da660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641888a50417c82f888c8cc00400400c896600200314a315980098019833800c4cc008008c1a0006294106220ca417882f0888888cc88ca60026eacc1a8c1ac00664660020026eb0c14cc1a0dd5005112cc004006297ae0899835983618349baa306c00133002002306d00141a959800982c1805801c520008acc004c1ac00e264b3001301c375c60ce0031375a60d000316419860d40071641a08329222598009919800800802112cc0040062946264664466446600400400244b30010018801c4c8cc89660026600a00a60f000915980099b8f007489008a518991919800800807112cc00400629422b30013375e60f40026e9c00e294626600400460f600283a90781983b1ba900733076375200497ae041c914a08390dd718388009bad3072001307400141c86eacc1bc00cdd718360009980180198388011837800a0da8acc004cdc399b81375a60da60d46ea8c1b4010dd6983698351baa306d0050018992cc004cdc3cc004dd6182b18359baa00da400122332259800cc004c18000694294506d44c96600266e24cc0980040166002013375c60e6007375c60e660e800680e2266e000100062c8370cdc1000802c400d06d1bac3070306d375400465300100ba4001225980099baf3029307037540046e9c00e266e00004dd6983218381baa0028800a0dc40946eb0c1c0c1b4dd500120443370200401710028b20d259800980f8054520018a400483422c83422c834060d4002660466eacc074c190dd50029bae305830643754603860c86ea801a600200b375c60ce60c86ea8c070c190dd5003400e004803888896600266e1cc024008c02000e33001003801488c96600260ac60c86ea8006264b30013375e60d260cc6ea8004c1a4c198dd5183498331baa0048acc004cdd7982d98331baa001305a3066375460d260cc6ea8012266e1e60026eacc168c198dd5000cdd71834802cdd7182d002a0243011375a60b460cc6ea80122941064452820c830683065375400316418c6601200c00280fa2c83008888c96600260a660c26ea8006264b30013375e60cc60c66ea8c198c18cdd5182b98319baa001304d33065375200a97ae08acc004c14e60026eacc15cc18cdd5182b98319baa001802d220108747265617375727900403d13259800982e18319baa0018991980f8008992cc004c15cc194dd5000c4c96600266ebcc1a8c19cdd5183518339baa001305133069375201297ae08acc004c15e60026eacc16cc19cdd5000c02691108747265617375727900404d13259800983018339baa001899198118008acc004cdd7981218349baa0034c0103d87a800089983580299835800998359ba6329800800cdd5982f18351baa00499198008009bab305f306b375460be60d66ea8024896600200314bd6f7b63044c8cc1bccdd818360009ba63233001001375660dc00444b30010018a5eb7bdb182264660e466ec0c1bc004dd418161bad3070001330030033074002307200141c06600600660e200460de00283690011112cc00400a2003132332298008034c1cc016646600200200a44b300100189983999bb037520086e9800d2f5bded8c113298009bae30710019bab3072001983b0012444b300133720010007133077337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ee880144cc1e0cdd81ba9009374c00200483a0ca6002003008801a002222598008014400626466453001006983f802cc8cc004004014896600200313307f337606ea4010dd4001a5eb7bdb1822653001375c60fa003375a60fc00330820100248896600266e4002000e2661060266ec0dd48041ba80070058acc004cdc7804001c4c96600260e600310028998420099bb037520126ea00040090800119b800070028998418099bb037520066ea0008cc01801800507f20fe184000800a0fc40186eb8c1e0004dd6983c800983d80120f289983b99bb037520066e98008cc01801800507320e6183a000a0e440186eb8c1b0004dd59836800983780120da4bd70459067183598341baa0018b20cc305c3067375400316419516419460d260cc6ea80062c8320cc028dd6182d18329baa00800530673064375400316418860b060c66ea8c15cc18cdd5000c59061459061183298311baa0018b20c033006375860c860c26ea801000844c8cc896600260860031332259800981918201baa002899191919912cc004c12800e264b3001303830463754003132323322598009827801c4c966002607a00313232598009829001403a2c8278dd7182800098261baa0078acc004c0f00062b3001304c375400f00c8b209a8b2094412860946ea801a2c8260dd718260009bae304c002304c00130473754003164114609200b16411c6eb8c11c004c11c008c11c004c118004c104dd500145903f1821000898021821802c590401bae304000130410013758607e00481e8dc3a401d1323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980998109baa00189919912cc004c0a4006264b3001301730253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b0c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0d4024896600200513302701410248992cc004c0dcc114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c04cc084dd5000c4c966002603660446ea8006264b3001301530233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084602e60446ea8c058c088dd5181298111baa0018b20403300a3758602a60426ea80608c8cc004004c00cdd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602460406ea800a2646464b3001302800289980318138018992cc004c0580062b3001302537540050058b204c8acc004c05400626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013010301e3754005132323259800981300144cc024c09400c4c9660026028003132598009814000c4c8c966002602e003132598009815800c4cc038c0a80040262c8140c098dd50014566002602c003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602600315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d1365640081",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1ProtocolMintProtocolMintElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5942e3010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a49856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a202020202900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888888896600264653001301e001980f180f800cdc3a4009301e00248889660026004603c6ea800e330013022301f37540072302330243024001918119812000cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c9b80480066e05200091811981218121812181218121812181218121812000cdd2a4004911111111111111194c00488966002601c60626ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e800a330010038992cc004c04c006264b3001001803c4c966002003159800981e80144c966002602c00313259800800c02a264b30010018acc004c10000a33001001806402d00e402d03d402e01700b805a082303e00140f060746ea800a2b300130150018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11c00e02701241106eb40060228238c1100050421bad00130430028072088304100140fc6eb4004c10000a0168208c0f800503c181d1baa002804a06e40dc60706ea800601081d2011008804402103e181d800a072303737540051598009809000c566002606e6ea800a00f00640e100640d081a0c0d4dd5000c0150084015037401600b005802a076303800140d86070005003801c00e00681c8c0d800503418191baa003800a05e911194c004006009003400444464b300130120018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa0038acc004c044006264b300100180344c966002003007803c4c966002607a0071330160012259800801401e264b30010018cc00402a003130023040003402900b805c02e0168208c0f800903c402103a1bac001803c01d03d181d000a07030363754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0f400e26602c00244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130100018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009820001c4cc064004896600200500a8992cc0040063300100d800c4c008c10c00d00d403a01d00e8072088304100240fd00b40f46eb000601500a4100607a00281d8dd6800981e001401d03d181d000a070303637540071598009807800c4c9660020030068992cc00400600f007803c4c966002607a0070058042074375a00300740f4607400281c0c0d8dd5001c566002601c00313259800800c01a264b3001001803c01e00f13259800981e801c01601081d0dd6800c01d03d181d000a070303637540071598009806800c4c9660020030068992cc00400600f007803c01e264b3001303d003802c02103a1bae00140f4607400281c0c0d8dd5001c015033206640cc8199033206640cc60686ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260246606c00297ae0899801801981c0012062303600140d091119192cc00400633001222598009809981b1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303f0028cc00400e264b300130180018acc004c0f0dd5001401e00c81ea2b300130170018992cc00400600f13259800800c02201100880444c966002608600700a804a080375c0028218c10000503e181e1baa0028acc004c07c006264b3001001803c4c9660026084005009804207e304000140f860786ea800a00c81c90392072303a3754003005403100540f1005802c01600a8200c0f400503b181e801400e007003801a07c303b00140e4606e6ea800e00281a2444b300130133036375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607800315980099b8948010c0ec00600d13259800982080244c9660026034003159800981f1baa006804c02103f4566002603200313259800800c026264b3001001805402a015132598009822801c0320168210dd6800c0290451821000a080303e375400d1598009810800c566002607c6ea801a01300840fd00840ec81d903b181e1baa005803a07c3017303b00140e500640f46ea800600b005802c015040181e800a076303d002801c00e00700340f8607600281c8c0dcdd5001c0050344889660026026606c6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d132598009820801c02200e81f0dd6800c019041181f000a078375c002607a00481f0c0ec005039181b9baa003800a068911192cc004c050006264b3001001801c4c9660020030048024012264b3001303f003803401503c1bad001802207e303c00140e860706ea80122b300130130018acc004c0e0dd5002400e00481ca00481a9035181b1baa00348888cc8966002602c60726ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009822801c566002603a60806ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013055002899817007112cc00400a26606001a44b30010028cc00401e33001005899192cc004c0ccc158dd500d44c9660020030408992cc004006264b300100182144c966002003159800982f80144cc8966002607200313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a054825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0e0006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40a904b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b1598009820000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130370018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c566002606c00313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a056825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0d4006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40ad04b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b159800981a000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130080018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c11505a20b4416882d105a20b4416882d04c966002607000313259800800c116264b30010018acc004c18800a330010018044119028411905f411a08d04682320c63060001417860b86ea800a2b300130370018992cc00400608b13259800800c56600260c4005159800981d182e9baa0018992cc00400608f13259800800c4c9660020030498992cc0040062b300130660028cc00400e33001001806412902d412902d4129063412a09504a82520ce3064001418860c800504882441220908328c188005060182f1baa00182320b682320be823411a08d046418c60c000282f0c170dd5001411105920b2305a375400260b46ea800e08682e2087043821c10d060182e800a0b6305d002820c106083041417860b600282c8c15cdd500d40fd05409981980b112cc00400a33001305b30583754606e60b06ea809645300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa303b305c375460be002605e660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303d305e37540046062660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230343058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013039305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48896600200514c103d87a80008acc004c0dc00626072660ba60bc00497ae08cc00400e60be0053031001400c82c105c488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064175133005005306400441746eb8c174004dd5982f0009830000a0bc14bd6f7b6304dc024005222329800800c012006800888966002005159800800c528c52820be8acc00400629422b3001330043061002375a60c200319800801cc18800a60c4002801a294105b20be417d25980099b88001480022605c003100141592305c305d305d305d0019112cc004c0dcc168dd5001c4c9660020030028992cc004006007003801c4c96600260c400700580220be375a003003418860be00282e8c16cdd5001c00505848c170c174c174c174c174006460b860ba60ba60ba60ba60ba60ba60ba60ba003222329800800c01200680088896600200510018cc00400e60c4005330043061002001400c82fa4466e0ccdc10011bad303a305a37540026eb4c0e4c168dd5000cdc424001371e9110455534472009112cc004c0dcc168dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983380146600200f19800802c4c966002608000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002608e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130710038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001307600380cc0610731bae00141d860e60028388dd7000983900120e6307000141b901341b86eb000602501241c460dc0028360dd68009836801403d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981e800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607600313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc306437540091598009807800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd5002402906120c24184830906120c241848308c188dd5001c02502f402503340250641832800a0c63065002803c01e00f007419860c60028308c18c00a00b005802c0150641830800a0be3061002801c00e007003418860be00282e8c16cdd5001c005058488cc0a40088cdd7982f182d9baa001374e00491111111111111111114c004c1a8dd5009c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c54cc1c1240112657870656374205b5d203d206c6973745f62001641cd159800801454cc1c12411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260ec007307600299912cc004c01c00a266e0000cdd69829983a1baa00283020e23075003375a60ea004802107320e68a9983624812e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641ad300f00f912cc0040062900044c03ccc008008c1c400506e489660020031480022601e6600400460e200283724446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e2899802802983c00220e2375c60e20026eb4c1c8004c1d0005072198090020018a40012259800800c5200089807998010011838800a0dc91808800c88c96600260a260da6ea8006264b30010018cc0040062b30013375e601c60de6ea800cc1c8c1bcdd5002456600266ebcc138c1bcdd5000983918379baa0038800c18906c418506c418100641820c106083020e83071306e375400305e41ac609a60da6ea8c130c1b4dd50012444444445300130060069802802c896600266e2000520008a6103d87a8000899804801000a0e69801801a4444646644b300130570108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea8006264b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0029bac305e307f3754007375860a660fe6ea80092225980099b87300d003300d0078acc004c04000a33001003801488c96600260c26108026ea800626464b3001306330860137540031323298009980f804000cdd618131844809baa0049bad308c0100248896600260d06116026ea800e2b30013371264664466e0cc194cdc019b82001375a60de611e026ea800c008008dd698361846809baa001375a60d8611a026ea8020c23c04c23004dd5001cc004dd598359846009baa306b308c013754015375c611e02005375c611e0261200200480e22b30013370e0026eb4c1acc23004dd5003c4cdd79ba70043029308c01375400f14a084480a294108901454cc228052414365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164224043758611602611802002610e026ea800629410840118331843009baa3301300400130880130850137540030744208046601c012002811a0e083fa0de83f9159800cc004dd6182f983f9baa0618024dd6184100983f9baa0039984080982f183f9baa301b307f37540046610202981054455534472004bd70200a899b879800801418690004dd6982f983f9baa0039bad301e307f3754007004401800306a41f1153307d49018f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641f130010039bac308101307e375400523018375a60bc60fe6ea800501241a107b22b300130560108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea80062b30019800998121bac308101307e37540c06eb8c178c1f8dd5180d183f1baa0019bac305d307e37540053308001305d307e3754603460fc6ea8004cc20005301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c180c20c04dd5000c4c8c96600260c2610a026ea800626464b3001337120033001375660ce6110026ea8c19cc22004dd5003cdd71845808044dd718458098460080420308acc004cdc3800982e9bad3067308801375400913375e611602611802004604a6110026ea80122941085014528210a02375a611402002610c026ea800629410830118329842809baa3301200400130870130840137540030734204046601a01000281120de83f20dc83f1159800cc004dd6182f183f1baa0609bac308101307e3754005375860a460fc6ea80052225980099b87300d002300c0068cc00401a00522325980098301841809baa0018cc004c21c04c21004dd5000cdd618109842009baa0039980d0021bac302130840137540069112cc004c18cc21804dd5000c56600266ebcc22804c21c04dd50019845009843809baa308a01308701375400d15980099baf3067308701375400660cc610e026ea8c22804c21c04dd500344cdc3cc004dd598331843809baa0039bae308a010029bae308a01308b01002405c66042604e6eb4c198c21c04dd50031845009843809baa0018a5042100514a084200a2a6610a029215365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642100483ea102023300d005001408907941f8899b879800800c18290004dd6982f183f1baa0029bad301d307e3754005003401530010039bac308101307e37540052337106eb4c178c1fcdd5000a400080922a660f89219e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641ed153307c491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641ed06841ec8992cc004c14c04633001375860fe60f86ea809260fe60f86ea812660b660f86ea812922259800998131bac308201307f37540c26eb8c078c1fcdd5180d983f9baa0018992cc004cc896600266e1cc034008c03401a2b300130100018cc00400a00322325980098309842009baa001899912cc004c1a8c21804dd5000c4c96600200319800800c56600266ebcc09cc22004dd50019845809844009baa0068acc004cdd798339844009baa001308b0130880137540071325980098301844009baa001899b87375a6118026112026ea8004dd698341844809baa0048a5042180460d06110026ea80060f684280a0f484280a0f280fa0f307983cc1e508d011845009843809baa00183ba10802308801308501375400260ca610a026ea8c190c21404dd5001c1d10820119807004000a04683820fe837a0fe3302637586106026100026ea8188dd718301840009baa301c30800137540046eb0c17cc20004dd5001c5660033001375860c06100026ea818a00937586106026100026ea800e661040260be6100026ea8c070c20004dd50011984100a61054455534472004bd70200c8991919912cc004cdc3acc004c180c0340062900045660020030788992cc004c2240400a264b3001301e375c610a02005100183da10602375a610a02003079421804610e0200284280908101002c56600266e1ccdc09bad3087013084013754610e020066eb4c21c04c21004dd5184380802002c4cc024dd6182c1842009baa006232306298008024dd7184480800cdd7184480984500800a02c3758611002610a026ea80060fc84080a2a661040292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e7400164204046eacc21404c21804004cc094dd5980f9841009baa064375c60c26104026ea8c078c20804dd5002184280800cc00418a6eb8c20c04c20004dd5180e1840009baa0029bad30603080013754007375a603e6100026ea800d00841ad07d454cc1f9241776578706563740a2020202076616c69646174655f6469726563745f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641f530010039bac308201307f375400523019375a60be6100026ea800501341a507c22b300130270118cc004dd6183f983e1baa024983f983e1baa049982d983e1baa04a4889660026604c6eb0c20804c1fcdd50309bae301e307f3754603660fe6ea80062b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0019bac305e307f37540053308101305e307f3754603660fe6ea8004cc20405301054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c184c21004dd5000c4cc896600260d4610c026ea8006264b30010018cc0040062b30013375e604e6110026ea800cc22c04c22004dd5003456600266ebcc19cc22004dd50009845809844009baa0038992cc004c0d0c22004dd5000c4c96600266e2400660026eacc1a4c22804dd518349845009baa0089bae308d010099bae308d01308e01009406913370e00260be6eb4c1a4c22804dd5002c528210e02375a6118026112026ea800629410860118341844009baa00183da10a0283d210a0283ca03e83cc1e60f3079423404611402610e026ea80060ee842008c22004c21404dd500098329842809baa306430850137540070744208046601c010002811a0e083fa0de83f9198009bad305f307f3754005375a603c60fe6ea800b3001003a4001225980099b88375a60c06102026ea80092000899b80001375a60c06102026ea800a0da83f101a4cc088dd5980e183f9baa061375c60bc60fe6ea8c06cc1fcdd5000a4444646464b30013370eb30013062300f0048a400115980080241ea264b3001308b010058992cc004c080dd7184380801440060fa842808dd6984380800c1ed08801184480802210e02420c0400b15980099b87337026eb4c22404c21804dd51844808011bad308901308601375461120200600b13300b375860b4610c026ea80208c8c1926002007375c611602003375c61160261180200280c0dd61845009843809baa0018a9984200a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016420c051533084014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016420c046eacc22004c22404004c2200400660020cb375c610c026106026ea8c07cc20c04dd5002c0120068059153307d491896578706563740a2020202076616c69646174655f6469726563745f6275726e5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641f106941f08a5041e483c888c8cc00400400c896600200314a31598009801984100800c4cc008008c20c04006294107c21000241e083c0888888cc88ca60026eacc21404c2180400664660020026eb0c15cc20c04dd5005112cc004006297ae0899843009843809842009baa3087010013300200230880100142140559800982f1805801c520008acc00400e0ed1325980098438080244c96600260386eb8c20c0400a20030794204046eb4c20c040060ee842008c2140400d0830120fe488966002646600200200844b30010018a518991991199119801001000912cc004006200713233225980099802802984980802456600266e3c01d221008a518991919800800807112cc00400629422b30013375e612a020026e9c00e2946266004004612c020028478090930119848809ba90073309101375200497ae042300514a0846008dd71846008009bad308d01001308f010014234046eacc2280400cdd718438080099801801984600801184500800a110028acc004cdc399b81375a611002610a026ea8c22004010dd69844009842809baa3088010050018992cc004cdc3cc004dd6182d1843009baa00da400122332259800cc004c1980069429450870144c96600266e24cc0940040166002013375c611c02007375c611c02611e0200680da266e000100062a66112029212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642200466e080040162006843808dd61845809844009baa002329800805d2000912cc004cdd798141845809baa002374e0071337000026eb4c1a8c22c04dd50014400508801204837586116026110026ea800902119b8100200b8801454cc210052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016420c04b3001301e00a8a40031480090820141fd08201454cc20c052401b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a20202020290016420804308501001330223756603860fe6ea8014dd7182f183f9baa301b307f375400d30010059bae308201307f3754603660fe6ea801a007002401c4444b30013370e6012004601000719800801c00a4464b3001305c307f37540031325980099baf30840130810137540026108026102026ea8c21004c20404dd5002456600266ebcc184c20404dd500098301840809baa308401308101375400913370f3001375660c06102026ea80066eb8c210040166eb8c18001501118109bad3060308101375400914a083f2294107e1841809840009baa00183ca0fa33009006001407907541e8444464b30013059307c37540031325980099baf308101307e375461020260fc6ea8c174c1f8dd5000982899840009ba90054bd70456600260b33001375660ba60fc6ea8c174c1f8dd5000c016911087472656173757279004039132598009831183f1baa0018992cc004006330010018992cc004c174c20004dd5000c4c96600266ebcc21404c20804dd51842809841009baa00130553308401375201297ae08acc004c17660026eacc184c20804dd5000c02691010874726561737572790040491325980098331841009baa0018992cc004006330010018acc004cdd798119842009baa0034c103d87a800089984300802998430080099843009ba6329800800cdd598321842809baa00499198008009bab3065308601375460ca610c026ea8024896600200314bd6f7b63044c8cc22804cdd81843808009ba63233001001375661120200444b30010018a5eb7bdb1822646611a0266ec0c22804004dd418301bad308b0100133003003308f01002308d01001422c04660060066118020046114020028440090011112cc00400a2003132332298008034c23804016646600200200a44b30010018998470099bb037520086e9800d2f5bded8c113298009bae308c010019bab308d010019848808012444b30013372001000713309201337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528212402880144cc24c04cdd81ba9009374c002004847008ca6002003008801a002222598008014400626466453001006984d00802cc8cc004004014896600200313309a01337606ea4010dd4001a5eb7bdb1822653001375c613002003375a613202003309d0100248896600266e4002000e26613c0266ec0dd48041ba80070058acc004cdc7804001c4c96600260f2003100289984f8099bb037520126ea000400909a0119b8000700289984f0099bb037520066ea0008cc01801800509901213202184d80800a1320240186eb8c24c04004dd6984a00800984b008012128028998490099bb037520066e98008cc01801800508d01211a02184780800a11a0240186eb8c21c04004dd59844008009845008012110024bd70454cc2080524126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642040507b408907b83dc1ee0f6844808c21804c20c04dd5000c54cc2040524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642000460c46104026ea80062a6610002920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641fd15330800149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641fc6108026102026ea80062a660fe92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641f8660146eb0c180c20004dd5004002c1d901e41da0ed07683b210a02308201307f3754003153307d49013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641f060bc60fc6ea8c174c1f8dd5000c54cc1f12401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641ed153307c4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641ec61000260fa6ea80062a660f692013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641e86600c6eb0c1fcc1f0dd500200108992cc0040060830418992cc00400608513259800800c10e087043821c4cc89660020030458992cc0040062b300130620028992cc004c0ecc178dd500144c9660020030488992cc004006264b300100182544c96600200313259800800c132264b3001001826c13609b04d8992cc004c1a800e2b300130423065375400d13259800800c13e264b300100182841420a1050899912cc0040060a513259800800c14e0a7053829c4c96600260e0007132598009824800c4c9660020030568992cc0040060af05782bc15e264b3001307400380941610711bae00141d060e20028378c1b4dd5005c566002609000315980098369baa00b807c15506e415506a20d4306b375401505441b46eb80050701836800a0d6375c00260d80048368c1a800506818331baa00682720c682720ce375c0028350c19c0050651833801412e09704b825a0d03065001418c60ca005049824c1260928330c18c005061182f9baa002823a0b813007306200882320be823411a08d046418c60c000282f0dd7000982f80120c0305d001416c6eb0006083041417860b600482c8dc3a401d03d407903d407913259800800c0fa07d03e8991801982d8021bad00181f20b63058002415913259800800c0f207903c8991801982c8021bad00181e20b230560024151039414903981cc0e607282b0c14c005051182980140de06f03781ba0a83051001413c6eb4004c14000a0688288c13800504c1bad001304d002818a09c304b00141246eb0004c12800a05d02e412c60900028230dd6000982380140ae0568240c11400504318209baa006814a07c814a0843758003028814208a304200141006084005026813409a04c8218c10000503e182000140920490248122082303e00140f060746ea801e04481b888966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018992cc00400601313259800800c02a01500a8992cc004c12400e330010098cc00401201900b403d00b404500b41186eb40060148248c11800504418230014022011008804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c088966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009826001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009828801c0520268270dd7000a0a2304e00141306eb8004c13400904e1825800a092807202480720288072092375800300d806a0983049001411c609200500b805c02e0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c101c80e407203881c8cc88c9660026024606a6ea80062606c6466ec0c0e8004c0e8c0ec004dd6181c981b1baa0018a9981a24818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640cc646600200200644b30010018a60103d87a80008992cc004cdd7981b80099ba548010cc0e8c02ccc0e8dd480225eb812f5c1130163303a374e66074606e00266074607000297ae04bd7044cc00c00cc0f0009035181d000a0703756600e60666ea8054dd7181b18199baa0019800912cc004006297ae089981b1819981b80099801001181c000a06a9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206491111919800800802912cc004006200b13259800800c4cc010c0f000801a26600a60780046600600600281d0c0f00050394dd6180898191baa01448888c8c8c8cc88c966002003159800980c181d9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130450028acc004c074c100dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305c0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d0c15cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260d000713304100f225980080146600201f102b827a06e8992cc0040062b300130433066375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130740038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307900389808183c808c1790761bae00141e460ec00283a0dd7000983a80420ec307300741c505941c46eb40060b083a0c1c400506f1bad001307000282aa0e2306e00141b06eb0004c1b400a0a505241b860d60028348c19cdd5000c14106441420a105082820d83069002419d04d41946eb80050681832800a0c6375c00260c80048328c1880050601bae0013061002418860be00282e8dd7000982f00120be305c001416860b06ea801a08282aa0828142082814208281420828142082814208281420828142082814208282ca083041820c10505d182d000a0b0375800260b200503e81f20b43057001415460ae00503c81e40f207882c0c154005053182a80140ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f182880140da06d03681b20a4304f0014134609e00503481a40d20688280c13400504b182680140ca065032819209c304b0014124609600503081840c20608260c124005047182480140ba05d02e817209430470014114608e00502c81640b20588240c11400504318209baa001815207c815208481540aa05502a411860860028208dd700098210012086304000140f860786ea800604a81ca04b025812c09504129981c99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40dd22010013259800980c181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981e9baa0018992cc0040062b3001301b303e375400313259800800c0ee264b300100181e40f207903c899912cc00400607d1325980098240014401a07e8228c1180050441bae0013045002411860860028208c0fcdd5000c0e903c40ea07503a81d20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec603a607a6ea8c070c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46601400c4646600200260066eacc070c0f4dd5180e181e9baa0022259800800c528456600266e3cdd7182080081d4528c4cc008008c10800503b207e300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20825980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d903b1bac303e002375a60780026466ec0dd4181e0009ba7303d001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6082003337149101023a200098008054c10800600a805100a182200144ca6002015304100199b8a489023a200098008054c108006600e66008008004805100a182200120843044001410466e29220102207d0000340f86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039009207c3758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e410066e2ccdc0000acc004cdc4000a4029148182290372080004401866e0c00520203370c002901019b8e00400240f46eb800d0411b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681c10381801801844464b3001300e0018992cc00400600713259800800c01200900480244c9660026072007006802a06c375c00281c8c0d800503418191baa0048acc004c034006264b3001001801c4c966002003004802401200913259800981c801c01a00a81b0dd7000a072303600140d060646ea8012004817902f18181baa00345901c0c078004c064dd500fc5268a9980ba491856616c696461746f722072657475726e65642066616c7365001365640581":"5922b1010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c91807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601e6603c00297ae089980180198100012034301e001407122232598009806000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300b0018992cc004c08000626601c6eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc038dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0280062646644b300130220018998081bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b30013009001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260100031323259800981080140122c80f0dd6980f800980d9baa0038acc004c01c00626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c02c00626464b3001302000280245901d1bae301e001301a37540071598009805000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c028c060dd500144c8c8c966002604000513232598009807800c566002603c6ea800a00d16407d1598009807000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689806180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300a30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009805800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300a0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013015302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301933028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c050c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980a18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980a98119baa003899191919912cc004c0b400e264b3001301b30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc09cdd6181c005912cc00400a26605200c44b300100289980e80289980e804899192cc004c0b0c0e8dd5009c4c8c8c9660026084005132332259800981900144c966002608c0031330343758608a00244b300100280244cc084c11c0084c004c12000904545904318209baa0038acc004c0c400a264b3001304600189981a1bac304500122598008014012266042608e004260026090004822a2c8218c104dd5001c5660026072005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130300028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b208630413754007159800981780144c966002608c0031330343758608a00244b300100280244cc088c11c0084c004c12000904545904318209baa0038acc004c0b800a264b3001304600189981a1bac304500122598008014012266044608e004260026090004822a2c8218c104dd5001c566002605a005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130080028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b2086304137540071640fc81f903f207e40fc81f903f207e303e3754002264b300130310018992cc004c11400626604c608800200f16410860806ea800e2b300130300018992cc004c114006264b3001303330413754003132323259800982480144cc0acc12000c4cc0ac00402e2c8230c11c004c11c004c108dd5000c590401822000c5904218201baa0038b207c40f8607c6ea8008c10400e2c81f8c100004c100004c0ecdd5009c59039099816009912cc00400a33001303f303c3754606060786ea806e45300132330010010032259800800c528456600266ebcc10cc100dd5182198201baa30343040375460860026054660846ea400d2f5c114a3133002002304400140f8820a94294503c488c8cc00400400c896600200314bd7044cc896600266ebcc114c108dd5182298211baa3036304237540046058660886ea40152f5c113304400233004004001899802002000a0803043001304400141052302d303c37546080646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001303230413754608a0074a14a2820226608930014a14c103d87a8000a60103d87980004100660886e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11c00400e29462660040046090002821104544cc112600294298103d87a8000a60103d87980004100660886e9c0092f5c11330449800a51a60103d87a8000a60103d87980004100660886e9ccc110dd400080125eb8104020803758608660880026eb4c10c008cc008008c10c00504048896600200514c103d87a80008acc004c0c00062606466082608400497ae08cc00400e6086005337000029000a00640f482024464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208489980280298240022084375c60820026eacc108004c1100050420a5eb7bdb1826e012002911194c0040060090034004444b30010028acc00400629462941043456600200314a11598009980218228011bad30450018cc00400e608c0053046001400d14a0820104320869b81480024608060826082608200322598009817981e9baa002899192cc004c11000a0071641046eb4c108004c0f8dd500145903c48c100c104c104c104c1040064608060826082608260826082608260826082003222329800800c01200680088896600200510018cc00400e608c005330043045002001400c821a4466e0ccdc10011bad3033303e37540026eb4c0c8c0f8dd5000cdc424001371e911045553447200912cc004c0bcc0f4dd500144c8c8c8ca6002608a003304500398228012444b3001304900489981418240038998128010992cc004c0dc0062646644b3001304d0018991919912cc004c14400e0211641386eb8c138004dd7182700118270009bac304c0018b2094375a60940026096002608c6ea800a2b3001303600189919912cc004c134006264646644b3001305100380845904e1bae304e001375c609c004609c0026eb0c1300062c8250dd69825000982580098231baa0028acc004c0f8006264653001375a6096003304c0019bad304b002488966002609e005132323322598009829801c04a2c8280dd718280009bae305000230500013758609c005164130304b00130463754005159800981a800c4c8cc8966002609a003132323322598009828801c0422c8270dd718270009bae304e002304e001375860980031641286eb4c128004c12c004c118dd50014566002606800313232598009826001402e2c8248dd6982500098231baa0028acc004c0cc006264646644b3001304e003806c5904b1bad304b001375a60960046096002608c6ea800a2b30013032001899192cc004c13000a0171641246eb4c128004c118dd50014566002601a00313232598009826001402e2c8248dd6982500098231baa0028b20884110822104420884110822104418221baa0018b208c182280098220009821800981f1baa0028b20789119813801119baf3042303f37540026e9c0092222222222222222222980098271baa0139112cc004c04c00a2653001001802400e90002002222259800801c56600200510018b20ae8cc00401260b4007305a00299912cc004c01c00a266e0000cdd69826182c1baa0028b20ac3059003375a60b200480210574590504c03c03e44b30010018a40011300f33002002305500141492259800800c520008980799801001182a800a0a491119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c82b226600a00a60b800882b0dd7182a8009bad3056001305800141586602400800629000496600266e20005200089806000c400504e489660020031480022601e6600400460aa002829246022003223259800982518289baa001899198030008acc004cdd7980718299baa00330563053375400915980099baf30473053375400260ac60a66ea800e200316414516414460aa60a46ea80062c8280c118c144dd5182298289baa0024888888888a6002600e00f3006006912cc004cdc4000a400114c0103d87a8000899805001000a0b29801801a4444646644b300130510118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac3057306337540053758609c60c66ea80052225980099b87300c003300c0068acc004c03c00a33001003801488c96600260b460d06ea800626464b3001305c306a37540031323298009980f804000cdd6181318369baa0049bad307000248896600260c260de6ea800e2b30013371264664466e0ccdc019b80337040026eb4c1a0c1ccdd5001801240020046eb4c194c1c4dd50009bad30653071375401060e660e06ea800e60026eacc190c1c0dd5183218381baa00a9bae30730029bae30733074002407115980099b87001375a60c860e06ea801e266ebcdd3802181498381baa0078a5041b914a083722c83706eb0c1bcc1c0004c1acdd5000c52820d2305f306a37546602400800260d860d26ea80062c8338cc03402000502345906445906422b300198009bac3058306337540b50039bac30663063375400533065305730633754603660c66ea8004cc195301054455534472004bd702008899b879800800c16a90004dd6982c18319baa0029bad301e30633754005003401530010039bac30663063375400523019375a60b060c86ea800501345906145906145906122b300130500118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac30573063375400533065305730633754603660c66ea8004cc195301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c168c1a0dd5000c4c8c96600260b660d46ea800626464b3001337120033001375660c260da6ea8c184c1b4dd5003cdd718380044dd71838183880420328acc004cdc380098149bad3061306d375400913375e60e060e2004604c60da6ea8012294106b452820d6375a60de00260d66ea80062941069182f98351baa33012004001306c3069375400316419c6601a010002811a2c83222c8321159800cc004dd6182c18319baa05a9bac3066306337540053758609c60c66ea80052225980099b87300d002300c0068cc00401a005223259800982d18341baa0018cc004c1b0c1a4dd5000cdd6181118349baa0039980d8021bac3022306937540069112cc004c174c1acdd5000c56600266ebcc1bcc1b0dd5001983798361baa306f306c375400d15980099baf3061306c375400660c060d86ea8c1bcc1b0dd500344cdc3cc004dd5983018361baa0039bae306f0029bae306f3070002406066044602e6eb4c180c1b0dd5003183798361baa0018a5041a914a083522c835116419c6601a00a002811a2c832113370f300100182d520009bad305830633754005375a603c60c66ea800a006802a6002007375860cc60c66ea800a466e20dd6982c18321baa001480010134590614590614590612264b3001304d0128cc004dd6183218309baa025983218309baa040982a98309baa0424889660026604e6eb0c19cc190dd502d9bae301f30643754603860c86ea80062b300133225980099b87300c002300c0058acc004c03c00633001002800c88c96600260b460d06ea800626644b30013063306a37540031323301f00115980099baf3027306c375400660de60d86ea801a2b30013375e60c060d86ea8004c1bcc1b0dd5001c4c96600260b260d86ea8006266e1cdd6983818369baa001375a60c260da6ea8012294106b183098361baa0018b20d48b20d4306e306b37540031641a460d860d26ea8004c178c1a4dd5182e98349baa0038b20ce3300d007001408d1641911641906604c6eb0c19cc190dd502d9bae305930643754603860c86ea8004dd6182c18321baa0028acc00660026eb0c164c190dd502dc00e6eb0c19cc190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd70200a8cc004dd6982c98321baa0029bad301f306437540059800801cdd6183398321baa0029180d1bad30593065375400280a2660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641891641888acc004c0a004a33001375860c860c26ea809660c860c26ea810260aa60c26ea810922259800998139bac3067306437540b66eb8c07cc190dd5180e18321baa0018acc00660026604c6eb0c19cc190dd502d9bae305930643754603860c86ea80066eb0c160c190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c16cc1a4dd5000c4cc896600260c860d66ea8006264660400022b30013375e605060da6ea800cc1c0c1b4dd5003456600266ebcc184c1b4dd5000983818369baa0038992cc004c0d4c1b4dd5000c4c96600266e2400660026eacc18cc1bcdd5183198379baa0089bae30720099bae30723073009406d13370e00260566eb4c18cc1bcdd5002c52820da375a60e260dc6ea8006294106c183118369baa0018b20d68b20d6306f306c37540031641a860da60d46ea8004c17cc1a8dd5182f18351baa0038b20d03300e00800140911641951641948cc004dd6982c98321baa0029bad301f306437540059800801d2000912cc004cdc41bad305a30663754004900044cdc00009bad305a3066375400516419080da660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641888a50417c82f888c8cc00400400c896600200314a315980098019833800c4cc008008c1a0006294106220ca417882f0888888cc88ca60026eacc1a8c1ac00664660020026eb0c14cc1a0dd5005112cc004006297ae0899835983618349baa306c00133002002306d00141a959800982c1805801c520008acc004c1ac00e264b3001301c375c60ce0031375a60d000316419860d40071641a08329222598009919800800802112cc0040062946264664466446600400400244b30010018801c4c8cc89660026600a00a60f000915980099b8f007489008a518991919800800807112cc00400629422b30013375e60f40026e9c00e294626600400460f600283a90781983b1ba900733076375200497ae041c914a08390dd718388009bad3072001307400141c86eacc1bc00cdd718360009980180198388011837800a0da8acc004cdc399b81375a60da60d46ea8c1b4010dd6983698351baa306d0050018992cc004cdc3cc004dd6182b18359baa00da400122332259800cc004c18000694294506d44c96600266e24cc0980040166002013375c60e6007375c60e660e800680e2266e000100062c8370cdc1000802c400d06d1bac3070306d375400465300100ba4001225980099baf3029307037540046e9c00e266e00004dd6983218381baa0028800a0dc40946eb0c1c0c1b4dd500120443370200401710028b20d259800980f8054520018a400483422c83422c834060d4002660466eacc074c190dd50029bae305830643754603860c86ea801a600200b375c60ce60c86ea8c070c190dd5003400e004803888896600266e1cc024008c02000e33001003801488c96600260ac60c86ea8006264b30013375e60d260cc6ea8004c1a4c198dd5183498331baa0048acc004cdd7982d98331baa001305a3066375460d260cc6ea8012266e1e60026eacc168c198dd5000cdd71834802cdd7182d002a0243011375a60b460cc6ea80122941064452820c830683065375400316418c6601200c00280fa2c83008888c96600260a660c26ea8006264b30013375e60cc60c66ea8c198c18cdd5182b98319baa001304d33065375200a97ae08acc004c14e60026eacc15cc18cdd5182b98319baa001802d220108747265617375727900403d13259800982e18319baa0018991980f8008992cc004c15cc194dd5000c4c96600266ebcc1a8c19cdd5183518339baa001305133069375201297ae08acc004c15e60026eacc16cc19cdd5000c02691108747265617375727900404d13259800983018339baa001899198118008acc004cdd7981218349baa0034c0103d87a800089983580299835800998359ba6329800800cdd5982f18351baa00499198008009bab305f306b375460be60d66ea8024896600200314bd6f7b63044c8cc1bccdd818360009ba63233001001375660dc00444b30010018a5eb7bdb182264660e466ec0c1bc004dd418161bad3070001330030033074002307200141c06600600660e200460de00283690011112cc00400a2003132332298008034c1cc016646600200200a44b300100189983999bb037520086e9800d2f5bded8c113298009bae30710019bab3072001983b0012444b300133720010007133077337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ee880144cc1e0cdd81ba9009374c00200483a0ca6002003008801a002222598008014400626466453001006983f802cc8cc004004014896600200313307f337606ea4010dd4001a5eb7bdb1822653001375c60fa003375a60fc00330820100248896600266e4002000e2661060266ec0dd48041ba80070058acc004cdc7804001c4c96600260e600310028998420099bb037520126ea00040090800119b800070028998418099bb037520066ea0008cc01801800507f20fe184000800a0fc40186eb8c1e0004dd6983c800983d80120f289983b99bb037520066e98008cc01801800507320e6183a000a0e440186eb8c1b0004dd59836800983780120da4bd70459067183598341baa0018b20cc305c3067375400316419516419460d260cc6ea80062c8320cc028dd6182d18329baa00800530673064375400316418860b060c66ea8c15cc18cdd5000c59061459061183298311baa0018b20c033006375860c860c26ea801000844c8cc896600260860031332259800981918201baa002899191919912cc004c12800e264b3001303830463754003132323322598009827801c4c966002607a00313232598009829001403a2c8278dd7182800098261baa0078acc004c0f00062b3001304c375400f00c8b209a8b2094412860946ea801a2c8260dd718260009bae304c002304c00130473754003164114609200b16411c6eb8c11c004c11c008c11c004c118004c104dd500145903f1821000898021821802c590401bae304000130410013758607e00481e8dc3a401d1323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980998109baa00189919912cc004c0a4006264b3001301730253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b0c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0d4024896600200513302701410248992cc004c0dcc114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c04cc084dd5000c4c966002603660446ea8006264b3001301530233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084602e60446ea8c058c088dd5181298111baa0018b20403300a3758602a60426ea80608c8cc004004c00cdd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602460406ea800a2646464b3001302800289980318138018992cc004c0580062b3001302537540050058b204c8acc004c05400626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013010301e3754005132323259800981300144cc024c09400c4c9660026028003132598009814000c4c8c966002602e003132598009815800c4cc038c0a80040262c8140c098dd50014566002602c003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602600315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d1365640081",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw{constructor(proxyPolicyId,mintValidator,stakeValidator,managementValidator,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");}}export class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish{constructor(proxyPolicyId,mintValidator,stakeValidator,managementValidator,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");}}export class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse{constructor(proxyPolicyId,mintValidator,stakeValidator,managementValidator,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201":"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141",Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator]),"PlutusV3");}}export class V1_0Rc1ProtocolStakeProtocolStakeWithdraw{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"593b9d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888896600264653001301b001980d980e000cdc3a4009301b0024888966002600460366ea800e33001301f301c37540072302030213021001918101810800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009b80480066e95200248888888888888c8cc88c8c966002003198009112cc004c044c0c0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981c80146600200713259800980b000c566002606c6ea800a00f00640dd159800980a800c4c9660020030078992cc0040060110088044022264b3001303d003805402503a1bae00140f4607400281c0c0d8dd50014566002603800313259800800c01e264b3001303c002804c021039181d000a0703036375400500640cc8199033181a1baa001802a016802a06c802c01600b00540e8606e00281a8c0dc00a007003801c00d038181a800a0663031375400700140b922259800980898181baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130360018acc004cdc4a4008606a0030068992cc004c0ec012264b300130180018acc004c0e0dd5003402601081ca2b300130170018992cc00400601313259800800c02a01500a8992cc004c0fc00e01900b40f06eb400601481f8c0f000503a181c1baa0068acc004c0780062b30013038375400d0098042072804206a40d481a8c0d8dd5002c01d038180a981a800a066803206e3754003005802c01600a81d0c0dc005035181b801400e007003801a070303500140cc60626ea800e0028172444b300130113030375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0ec00e01100740e06eb400600c81d8c0e00050361bae001303700240e0606a0028198c0c4dd5001c00502e4888c966002602400313259800800c00e264b3001001802401200913259800981c801c01a00a81b0dd6800c011039181b000a068303237540091598009808800c56600260646ea801200700240cd00240bc8178c0c0dd5001a44446644b300130143033375400f13259800800c082264b30010018992cc00400604513259800800c4c9660020030248992cc00400604b0258992cc004c0fc00e2b3001301b303a375400d13259800800c09e264b300100181440a226644b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc004006264b300100181ac4c966002003159800982780144cc0b0038896600200513302e00d225980080146600200f19800802c4c9660026060609e6ea8066264b300100181e44c96600200313259800800c0fa264b30010018acc004c16000a26644b300130360018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d029411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606a00313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a052823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b159800981a000c4c9660020030428992cc0040060870438992cc004c17400e26607400244b3001002803c4c96600200319800800c4c008c18000e08e814a08f047823c11d061182f00120b882220b43758003043821a0ba305a001416060ac6ea80162b300130330018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d02a411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606400313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a054823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0c4006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b15980099b8748038006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b041414c829905320a6414c829905320a613259800981a800c4c9660020030418992cc0040062b3001305b0028cc004006011042409d0424161042821410a08482e0c164005057182a9baa0028acc004c0d0006264b3001001820c4c966002003159800982d8014566002606e60ac6ea8006264b3001001821c4c96600200313259800800c116264b30010018acc004c17c00a330010038cc00400601904640b104640b10464171046823411a08c8300c17400505b182e801411208904482220bc305b001416460ae6ea800608482a208482c2085042821410905c182c800a0ae3055375400504041488290c14cdd500098299baa00381fa0aa81fc0fe07f03f416460ac00282a0c15800a07b03d81ec0f5057182a000a0a43050375403303b413426606002a44b30010028cc004c150c144dd5181998289baa024914c004c8cc00400400c896600200314a115980099baf30583055375460b060aa6ea8c0dcc154dd5182c00098169982b9ba90034bd704528c4cc008008c16400505220aca50a51414123055305630563056305630563056305630560019181898289baa305532330010010022259800800c52f5c303d87a80008101800044c8cc8966003300130363056375460b40074a14a282a22660b330014a14c103d87a8000a60103d87980004150660b26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17000400e294626600400460ba00282b105a44cc166600294298103d87a8000a60103d87980004150660b26e9c0092f5c11330599800a51a60103d87a8000a60103d87980004150660b26e9ccc164dd400080125eb8105420a8375860b060b20026eb4c160008cc008008c16000505548c154c158c158c158c158006444b30010028a6103d87a80008acc004c0d00062605c660ac60ae00497ae08cc00400e60b0005302d001400c82890554888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd6982c000982d000a0b03232330010010062259800800c00e2646644b30013372201200515980099b8f0090028800c01905844cc014014c17c0110581bae3058001375660b200260b600282c852f5bded8c029000488966002606860a66ea800e264b300100180144c966002003003801c00e264b3001305b003802c0110581bad001801a0b63058001415860a86ea800e002828a44646600200200644b30010018a5eb8226644b30013375e60b460ae6ea8c168c15cdd5181c982b9baa002302f33059375200a97ae089982c80119802002000c4cc010010005054182c000982c800a0ac9182a982b182b182b182b182b000c8c154c158c158c15800644b30010018a4001133700900119801001182b800a0a8911194c0040060090034004444b30010028acc00400629462941058456600200314a115980099802182d0011bad305a0018cc00400e60b6005305b001400d14a082a105820b09112cc004c0d0c14cdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983000146600200f19800802c4c966002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981e000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c19c00e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b000e02d01541a46eb800506c1834800a0ce375c00260d00048348c19800506440410641bac001807c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002608600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b3001306a0038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001306f00380cc06106c1bae00141bc60d80028350dd7000983580120d83069001419d013419c6eb000602501241a860ce0028328dd68009833001403d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981d000c4c96600200300b8992cc00400601900c80644c96600260c800700e806a0c2375a00300c419060c200282f8c174dd50024566002607200313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009833801c0460208320dd6800c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607000313259800800c02e264b30010018064032019132598009832001c03a01a8308dd6800c0310641830800a0be305d375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001306400380740350611bad00180620c83061001417c60ba6ea801201482d105a20b4416882d105a20b4416860b66ea800e0128172012818a01282e8c17800505c182f001401e00f007803a0be305c001416860b8005005802c01600a82e8c168005058182d001400e007003801a0b63058001415860a86ea800e002828a44b30010018a4001133700900119801001182b800a0a89b89480026e21200048888888888888888a600260c26ea8046444b300130110028994c004006009003a40008008888966002007159800801440062a660ce92112657870656374205b5d203d206c6973745f62001641a9159800801454cc19d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260da007306d00299912cc004c01c00a266e0000cdd6982698359baa0028a99834a4811a6578706563742076616c69646174696f6e287265717565737429001641a060d80066eb4c1b000900420d441a9153306349012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164189300c00c980300348c03c00660060069111111919912cc004c12002633001375860dc60d66ea806a60dc60d66ea80fa609a60d66ea80fd222598009980e1bac3071306e37540a66eb8c1c4c1b8dd5180d98371baa001899912cc004c140c1bcdd5000c4c8cc896600260260051598009809800c566002b300130530018a518980900120e08992cc004c04c0062b300198009980d9bac3077307437540b26eb8c15cc1d0dd51810983a1baa0079bac30563074375401133076305630743754604260e86ea801ccc1d93001054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c168c1e4dd5000c4cc896600260c460f66ea8006264b30010018cc0040062b30013375e60c060fa6ea800cc20004c1f4dd5003456600266ebcc17cc1f4dd5000984000983e9baa0038acc004cdc49bad305f307d37540073001375660be60fa6ea8c17cc1f4dd50034dd7184000803cdd7182f803a04c8992cc004c16cc1f4dd5000c4cdc39bad308101307e37540026eb4c180c1f8dd5002452820f63060307d375400307541e907441e907341e9072407d07283941ca0e4841008c1fcc1f0dd5000c1b1079183e983d1baa001305d307a375460b860f46ea800e0dc83b8cc04403800501a41a907441a507422b300198009bac3057307437540b3375860ee60e86ea8022660ec60ac60e86ea8c084c1d0dd50039983b260106457355534472004bd702444b30013370e6020004602401919800806400a4464b3001305a307937540031325980099baf307e307b375400260fc60f66ea8c1f8c1ecdd5002456600266ebcc178c1ecdd5000982e983d9baa307e307b375400913370f3001375660ba60f66ea80066eb8c1f80166eb8c1740150242cc004c16c02626eb4c174c1ecdd500244cdc199b82375a60ba60f66ea8010024029078452820f08a5041e060fa60f46ea80060e883b8cc04401400501a41c10742264b30013055307437540031325980099b87375a60f200266e000140222b30013370e6eb4c1e4c1e8004cdc0002001c56600266e1e60026eacc084c1d8dd502dcdd7182c183b1baa302330763754013488105735553447200407c0071305698009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d2201045553447200407d1533074491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001641cd15330744914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001641cd153307449140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001641cd3001375860b060ea6ea816a6eb8c068c1d4dd51811183a9baa0089bae305730753754604460ea6ea80226eb4c1e0c1d4dd5000a01683220e4301a307437540111533072491dc6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641c51533072491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001641c51533072491186578706563742073757364725f746f5f6d696e74203e2030001641c4b300130530018802c4cdc199b8200500100241c115330714913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641c11533071491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641c115330714911d657870656374207661756c745f757364725f6265666f7265203e3d2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4b3001300e375a60a260de6ea80062609e6eb4c050c1bcdd5000c52820d8402c603260dc6ea800a0b683591598009823804c660026eb0c1b8c1acdd500d4c1b8c1acdd501f4c134c1acdd501fa444b30013301c375860e260dc6ea814cdd7183898371baa301b306e37540031332259800982818379baa00189919912cc004c04800a2b3001301200189919912cc004c05400a2b300198009980e9bac3079307637540b66eb8c164c1d8dd51811983b1baa0099bac30583076375401533078305830763754604660ec6ea8024cc1e130106457355534472004bd702444b30013370e6028006602801d159800980980146600200700291192cc004c170c1ecdd5000c4cc896600260c860fa6ea8006264b30010018cc0040062b30013375e60c460fe6ea800cc20804c1fcdd5003456600266ebcc184c1fcdd5000984100983f9baa0038acc004cdc49bad3061307f37540073001375660c260fe6ea8c184c1fcdd50034dd7184100803cdd71830803a0508992cc004c170c1fcdd5000c4c96600266e1cdd69842008009bad3063308101375400b13370e6eb4c21004c21404004dd698131840809baa0058a5041f86100026ea8006294107d1831183f9baa00183ba0f883b20f883aa0f883a204283a41d20e907442100461020260fc6ea80060dc83d8c1fcc1f0dd5000982f983e1baa305e307c375400707041e46602602000280e20d883b20d683b115980099b8798009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d220105735553447200407c66e0520000088992cc004c15cc1d8dd5000c4c96600266e1cdd6983d80099b810070048acc004cdc39bad307b307c0013370200c015159800982c4c004dd59811983c1baa05d9bae305a30783754604a60f06ea802e9110455534472004085159800cc004dd6182d983c1baa05d9bac307b307837540193307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b30013370e6028004602c02119800808400a4464b3001305e307d37540031325980099baf308201307f375400261040260fe6ea8c20804c1fcdd5002456600266ebcc188c1fcdd50009830983f9baa308201307f375400913370f3001375660c260fe6ea80066eb8c208040166eb8c18401502819b813370666e08dd69830983f9baa00400e00d375a604860fe6ea8012294107c452820f8308101307e375400307841ec6602a00a00280f20e883c1198009bac305b307837540bb307b307c307c307c307c307c307c307c307c307c307c307837540173307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b3001305b0068a51899b8900632330010010042259800800c52000899912cc004cdd7984100983f9baa002006899b8000198009bab3061307f3754005375c61040200b375c60c200a8142200283e0c20004004cc008008c2040400507e20f0454cc1d9241df6578706563740a2020202076616c69646174655f756e7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641d515330764911765787065637420757364725f6d696e746564203d3d2030001641d51533076491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641d515330764913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001641d53001375860b460ee6ea81726eb8c070c1dcdd51812183b9baa00a9bae305930773754604860ee6ea802a6eb4c1e8c1dcdd5000a01a83320e8301c3076375401515330744912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641cd1533074491a76578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202029001641cd15330744911a65787065637420757364725f746f5f72656c65617365203e2030001641cc6eb4c1dc004dd6983b983c000994c0040060134bd709010000810100002002222598008014400633001003983d0014c8c96600260306eb4c074c1e0dd5001456600266e24dd6980e983c1baa00200189983d1ba8337006eb4c1ec00c004cc1e8dd419b80375a60f660f80066eb4c074c1e0dd500125eb822a660ec92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641d515330764911565787065637420722e666f7266656974203e3d2030001641d466e0ccdc11bad30593077375400200c00a60f20048019077454cc1c52401236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641c115330714911c657870656374207661756c745f757364725f6265666f7265203e2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4601c6eb4c144c1bcdd5000a0163019306e375400505b41ac8a5041a083408888c966002609c60da6ea8006264b30013375e60e460de6ea8c1c8c1bcdd5182898379baa001304733071375200a97ae08acc004c13a60026eacc144c1bcdd5182898379baa001802d2210d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018998399ba898009bab30533071375460a660e26ea800e00d4890455534472004068660e660e860e26ea8004cc1cc00d2f5c10624065062831418a0c483b0c1ccc1c0dd5000c18106d182918379baa3051306f3754003153306d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ac6600a008002444464b3001304e306d37540031325980099baf3072306f375460e460de6ea8004c11ccc1c4dd4802a5eb822b3001304e98009bab3051306f3754003005a4410d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018acc004cdd7980b18389baa0034c103d87a80008998399ba898009bab305330713754007006a4410455534472004068660e660e860e26ea8004cc1cc00d2f5c1153306f490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641b90624065062831418a0c483b0c1ccc1c0dd5000c54cc1b924012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641b460a460de6ea80062a660da92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641ac6600a00800244b300133710002900045300103d87a8000899803001000a0ce2264b300100181ec0f6264b300100181f44c96600200303f81fc0fe07f1332259800800c106264b30010018acc004c16c00a264b300130383057375400513259800800c112264b30010018992cc00400608d13259800800c4c9660020030488992cc004006093049824c126264b300130630038acc004c0fcc178dd500344c96600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f132598009834801c4c966002608c00313259800800c14a264b3001001829c14e0a70538992cc004c1b400e02505441a86eb800506d1835000a0d0306637540171598009822800c56600260cc6ea802e01f051419d051418c8318c190dd500541410661bae00141a460cc0028320dd7000983280120cc3063001418460be6ea801a09482e20948300dd7000a0c63060001417860c0005047823c11e08e8308c17800505c182f001411608b045822a0be305c001416860b06ea800a08682a84c01cc16c02208482c2085042821410905c182c800a0ae375c00260b000482c8c1580050541bac00181ec0f5057182a00120a481d203c81d203c8992cc00400607703b81dc4c8c00cc154010dd6800c0ed055182900120a08992cc00400607303981cc4c8c00cc14c010dd6800c0e50531828001209c81b209881b40da06d0364140609a0028258c13400a06903481a40d104e1825800a092375a0026094005031412c60900028230dd6800982380140b90481822800a0863758002608800502b815a08a304200141006eb0004c10400a0510284108607e00281e8c0ecdd50034099038409903c1bac001812c09503f181e000a074303c002811c08e04702340f4607400281c0c0e800a043021810c08503b181c000a06c3034375400f01f40c4444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608600719800804c6600200900c805a01e805a022805a080375a00300a410c608000281f0c10000a0110088044021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12c00e02901341206eb800504b1824000a08c375c002608e0048240c1140050434039012403901440390431bac001806c0350461821800a0823043002805c02e01700b4110608200281f8dd680098200014021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c880cc06603301940cc664464b30013010302f375400313030323376060680026068606a0026eb0c0ccc0c0dd5000c54cc0b924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b4646600200200644b30010018a60103d87a80008992cc004cdd7981880099ba548010cc0d0c028cc0d0dd480225eb812f5c11300c33034374e66068606200266068606400297ae04bd7044cc00c00cc0d800902f181a000a06437566060606260626062606260626062606260626062605a6ea8048dd7181818169baa0019800912cc004006297ae089981818169818800998010011819000a05e9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003205891111919800800802912cc004006200b13259800800c4cc010c0d800801a26600a606c0046600600600281a0c0d80050334dd6180718161baa01148888c8c8c8cc88c966002003159800980b181a9baa0018992cc00400604713259800800c09204902481244cc89660020030268992cc0040062b3001303f0028acc004c06cc0e8dd5000c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c96600200303b81dc4cc896600200303d8992cc0040062b300130560028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0c8c144dd500344c96600200303f8992cc004006081040820410226644b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4c96600260c400713303f00f225980080146600201f102b826206c8992cc0040062b300130413060375400313259800800c13a264b3001001827c13e26644b3001001828c4c966002003052829414a26644b300100182a44c96600200305582ac156264b3001306e0038acc00401e0ad13259800800c15e0af05782bc4cc89660020030598992cc0040060b505a82d416a264b30013073003898081839808c16d0701bae00141cc60e00028370dd7000983780420e0306d00741ad05641ac6eb40060aa8370c1ac0050691bad001306a00282920d6306800141986eb0004c19c00a09f04f41a060ca0028318c184dd5000c13505e413609b04d826a0cc3063002418504a417c6eb8005062182f800a0ba375c00260bc00482f8c17000505a1bae001305b002417060b200282b8dd7000982c00120b23056001415060a46ea801a07c827a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c829a07d03e81f40f9057182a000a0a4375800260a600503b81da0a83051001413c60a200503981cc0e60728290c13c00504d182780140de06f03781ba0a0304d001412c609a00503581ac0d606a8270c12c005049182580140ce067033819a0983049001411c6092005031818c0c60628250c11c005045182380140be05f02f817a0903045001410c608a00502d816c0b605a8230c10c005041182180140ae05702b815a088304100140fc6082005029814c0a60528210c0fc00503d181d9baa001813a070813a078813c09e04f0274100607a00281d8dd7000981e001207a303a00140e0606c6ea8006044819a045022811408903b29981999b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40c522010013259800980b181a9baa00189929981a99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980f181b9baa0018992cc0040062b300130193038375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098210014401a07281f8c10000503e1bae001303f0024100607a00281d8c0e4dd5000c0d103640d206903481a207c303b30383754003153303649013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640d46034606e6ea8c064c0dcdd5000981c981b1baa0018a9981a24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640cc646600200200e44b30010018a60103d87a80008992cc004c8cc004004c014dd5980d981c9baa301b3039375400444b30010018a508acc004cdc79bae303d0010368a51899801001181f000a06e40ed130123303a0014bd7044cc00c00cc0f0009035181d000a070300100130070072223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20765980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81a90351bac3038002375a606c0026466ec0dd4181b0009ba73037001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6076003337149101023a200098008054c0f000600a805100a181f00144ca6002015303b00199b8a489023a200098008054c0f0006600e66008008004805100a181f0012078303e00140ec66e29220102207d0000340e06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920703758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40e866e2ccdc0000acc004cdc4000a4029148182290372074004401866e0c00520203370c002901019b8e00400240dc6eb800d03b1b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c88190c00c00c444b3001300d302c375400713259800800c00a264b30010018992cc00400600913259800800c566002606a00519800801c4c966002602400313259800800c01e264b30010018acc004c0e000a264b300130150018992cc00400601513259800800c566002607600519800800c032016807201681c201700b805c02d03c181c800a06e30353754005159800980a000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026084007013809207e375a0030114108607e00281e8dd6800981f001403903f181e000a074375a002607600500b40f0607200281b8c0d4dd5001402503220643033375400300840d5008804402201081c8c0d800503418191baa0028acc004c0440062b3001303237540050078032066803205e40bc60606ea800600a804200a819200b005802c0150361819800a0623033002801c00e00700340d060620028178c0b4dd5001c00502a111194c004006009003400444464b300130110018992cc00400600d13259800800c01e00f007803c4c9660026070007005804206a375c00281c0c0d400503318189baa0038acc004c040006264b300100180344c966002003007803c4c96600260700071330150012259800801401e264b30010018cc00402a00313002303b003402900b805c02e01681e0c0e400903740210351bac001803c01d038181a800a06630313754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0e000e26602a00244b3001002803c4c966002003198008054006260046076006805201700b805c02d03c181c801206e804206a3758003007803a070303500140cc60626ea800e2b3001300f0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d801c4cc060004896600200500a8992cc0040063300100d800c4c008c0f800d00d403a01d00e807207e303c00240e900b40e06eb000601500a40ec607000281b0dd6800981b801401d038181a800a066303137540071598009807000c4c9660020030068992cc00400600f007803c4c9660026070007005804206a375a00300740e0606a0028198c0c4dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981c001c01601081a8dd6800c01d038181a800a066303137540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013038003802c0210351bae00140e0606a0028198c0c4dd5001c01502e205c40b8817102e205c40b8605e6ea8008888c966002601a00313259800800c00e264b300100180240120090048992cc004c0d000e00d00540c46eb80050341818800a05e302d37540091598009806000c4c9660020030038992cc0040060090048024012264b3001303400380340150311bae00140d060620028178c0b4dd5002400902a2054302b37540068b2032180d800980b1baa01c8a4d15330144911856616c696461746f722072657475726e65642066616c73650013656404c1":"591d0b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009ba5480092222222222229800911192cc004c03000626464b3001302000280245901d1bae301e001301a37540071598009805800c4c966002603e00313300e3758603c00244b3001002802c6600200f3020002898009810801200e407916407060346ea800e2b300130120018992cc004c07c00626601c6eb0c07800489660020050058cc00401e6040005130013021002401c80f22c80e0c068dd5001c56600260140031323322598009810800c4cc040dd61810000912cc00400a00f19800804cc08800a260026046004804902045901e1bad301e001301f001301a37540071598009804800c4c8c96600260400050048b203a375a603c00260346ea800e2b30013008001899192cc004c08000a0091640746eb4c078004c068dd5001c566002600e0031323259800981000140122c80e8dd7180f000980d1baa0038b2030406080c10182030406080c0c060dd5001488c96600260160031323259800980f80140122c80e0dd7180e800980c9baa0038acc004c02800626464b3001301f00280245901c1bae301d0013019375400716405c80b8c05cdd5001489660026014602e6ea800a2646464b3001301f002899192cc004c03c0062b3001301d37540050068b203c8acc004c03800626464b300130230028044590201bad3021001301d3754005159800980a800c566002603a6ea800a00d16407916406c80d901b180d9baa001301e0038b20383259800980d800c56600266e252004301a0018b44c030c06800501945901c1baa301d001301d0013018375400516405922598009805180b9baa0028991919912cc004c08000e00b1640746eb4c074004dd7180e801180e800980c1baa0028b202c91192cc004c02c00626464b3001301f00280245901c1bad301d001301937540071598009805000c56600260326ea800e00516406916405c80b8c05cdd500124444466446645300133223259800980a18109baa001898111919bb03026001302630270013758604a60446ea80062c8100c8cc00400400c896600200314c103d87a80008992cc004cdd7981180099ba548010cc098c03ccc098dd480225eb812f5c11301033026374e6604c60460026604c604800297ae04bd7044cc00c00cc0a00090221813000a04837566044604660466046604660466046604660466046603e6ea8058dd71811180f9baa002912cc004c04cc080dd500144c8c8c8ca60026eb4c0a00066eb4c0a000e60500049112cc004c0b0012266014605600e26601e0020111640a43028001302700130260013021375400516407d2259800980998101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc0440044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80f922259800980a18109baa003899191919912cc004c0ac00e264b3001301a30273754003132323232323298009818800cdd61818802cdd698188024dd69818801cc0c40092222259800981b80344cc098dd6181b005912cc00400a26605000c44b300100289980e80289980e8048992cc004c0a8c0dcdd500944c8c8c966002607e005132332259800981800144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038acc004c0bc00a264b300130430018998191bac304200122598008014012266040608800426002608a00482122c8200c0f8dd5001c566002606c005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b3001302e0028992cc004c10c0062660646eb0c1080048966002005004899810182200109800982280120848b2080303e3754007159800981680144c96600260860031330323758608400244b300100280244cc084c1100084c004c114009042459040181f1baa0038acc004c0b000a264b300130430018998191bac304200122598008014012266042608800426002608a00482122c8200c0f8dd5001c5660026056005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b30013370e900700144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038b207840f081e103c207840f081e103c181d9baa001132598009817800c4c966002608400313302530410010078b207e303d37540071598009817000c4c9660026084003132598009818981f1baa00189919192cc004c11800a266054608a00626605400201716410c60880026088002607e6ea80062c81e8c1040062c81f8c0f4dd5001c5903b2076303b3754004607c0071640f0607a002607a00260706ea804a2c81b04cc0a8048896600200519800981e181c9baa302d303937540352298009919800800801912cc00400629422b30013375e6080607a6ea8c100c0f4dd51818981e9baa304000130283303f375200697ae08a518998010011820800a07640f94a14a281ca4607a607c607c607c607c607c607c607c607c0032302b30393754607a646600200200444b30010018a5eb8503d87a80008101800044c8cc896600330013030303e375460840074a14a281ea26608330014a14c103d87a8000a60103d879800040f4660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f904244cc106600294298103d87a8000a60103d879800040f4660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f4660826e9ccc104dd400080125eb8103d207a3758608060820026eb4c100008cc008008c10000503d48c0f4c0f8c0f8c0f8c0f8006444b30010028a6103d87a80008acc004c0b8006260506607c607e00497ae08cc00400e6080005337000029000a00640e881ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208089980280298230022080375c607e0026eb4c100004c108005040191919800800803112cc00400600713233225980099b910090028acc004cdc78048014400600c820a26600a00a608e0088208dd718200009bab304100130430014104297adef6c6014800244b3001302d303a375400513232598009820801400e2c81f0dd6981f800981d9baa0028b2072911919800800801912cc004006297ae0899912cc004cdd79821181f9baa3042303f37546066607e6ea8008c0a8cc104dd4802a5eb822660820046600800800313300400400140f46080002608200281f24607a607c607c607c607c607c0032303d303e303e303e001912cc0040062900044cdc02400466004004607e00281e2444653001001802400d0011112cc00400a2b30010018a518a504101159800800c52845660026600860840046eb4c1080063300100398218014c10c0050034528207a4100820244b3001302d303a375400513232323298009821000cc10800e60840049112cc004c11801226604e608a00e266048004264b3001303500189919912cc004c128006264646644b3001304e00380845904b1bae304b001375c609600460960026eb0c1240062c8238dd69823800982400098219baa0028acc004c0d00062646644b3001304a0018991919912cc004c13800e02116412c6eb8c12c004dd7182580118258009bac30490018b208e375a608e002609000260866ea800a2b3001303b001899194c004dd69824000cc1240066eb4c12000922259800982600144c8c8cc896600260a00070128b209a375c609a0026eb8c134008c134004dd618258014590490c120004c10cdd5001456600260660031323322598009825000c4c8c8cc8966002609c0070108b2096375c60960026eb8c12c008c12c004dd61824800c590471bad30470013048001304337540051598009819000c4c8c966002609200500b8b208c375a608e00260866ea800a2b300130310018991919912cc004c12c00e01b1641206eb4c120004dd69824001182400098219baa0028acc004c0c000626464b30013049002805c590461bad30470013043375400515980099b874803800626464b30013049002805c590461bad304700130433754005164104820904120824104820904120823041375400316410c304200130410013040001303b37540051640e52259800800c52000899b8048008cc008008c0fc00503c4dc4a40013710900024444444444444444530013049375402322259800980880144ca6002003004801d200040044444b30010038acc00400a2003164149198008024c15400e60aa005332259800980380144cdc00019bad30473053375400516414460a80066eb4c15000900420a48b209698060064c01801a4601e00330030034888888c8cc89660026084013198009bac30563053375403530563053375406930473053375406c9112cc004cc070dd6182c982b1baa04d375c60b260ac6ea8c06cc158dd5000c4cc8966002609460ae6ea80062646644b300130130028acc004c04c0062b3001598009826800c528c4c04800905944c9660026026003159800cc004cc06cdd6182f982e1baa053375c60a260b86ea8c084c170dd5003cdd61828182e1baa0089982f1828182e1baa3021305c375400e660bc9801054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c150c184dd5000c4cc896600260b860c66ea80062646603e0022b30013375e60b460ca6ea800cc1a0c194dd5003456600266ebcc164c194dd5000983418329baa0038acc004cdc49bad3059306537540073001375660b260ca6ea8c164c194dd50034dd71834003cdd7182c803a04c8992cc004c154c194dd5000c4cdc39bad3069306637540026eb4c168c198dd5002452820c8305a3065375400316418d16418d16418c60ce60c86ea80062c8310c194c188dd5000982b98311baa3056306237540071641806602201c00280d22c82ea2c82e9159800cc004dd61828982e1baa0539bac305f305c37540113305e3050305c3754604260b86ea801ccc17930106457355534472004bd702444b30013370e6020004602401919800806400a4464b30013054306137540031325980099baf30663063375400260cc60c66ea8c198c18cdd5002456600266ebcc160c18cdd5000982b98319baa30663063375400913370f3001375660ae60c66ea80066eb8c1980166eb8c15c0150242cc004c15402626eb4c15cc18cdd500244cdc199b82375a60ae60c66ea8010024029061452820c28a50418460ca60c46ea80062c8300cc04401400501a45905d2264b3001304f305c37540031325980099b87375a60c200266e000140222b30013370e6eb4c184c188004cdc0002001c56600266e1e60026eacc084c178dd502acdd71829182f1baa3023305e3754013488105735553447200407c0071305098009bab3021305e37540ab375c60a460bc6ea8c08cc178dd5004d2201045553447200407d1641711641711641713001375860a460ba6ea81526eb8c068c174dd51811182e9baa0089bae3051305d3754604460ba6ea80226eb4c180c174dd5000a0168b20b6301a305c3754011164169164169164168b3001304d0018802c4cdc199b8200500100241651641651641651641646eb4c170004dd6982e182e800cc004dd6182d982c1baa04f9bae301530583754603a60b06ea800e6eb8c130c160dd5180e982c1baa0039bad305b30583754002803a2c82b26002007375860b260ac6ea800a4b3001300e375a609660ae6ea8006260926eb4c050c15cdd5000c52820aa402c603260ac6ea800a2c82a11598009820804c660026eb0c158c14cdd500d4c158c14cdd501a4c11cc14cdd501b2444b30013301c375860b260ac6ea8134dd7182c982b1baa301b3056375400313322598009825182b9baa00189919912cc004c04800a2b30013012001899192cc004c0500062b300198009980e1bac3060305d37540a86eb8c148c174dd51811182e9baa0089bac3051305d37540133305f3051305d3754604460ba6ea8020cc17d300106457355534472004bd702444b30013370e6026006602601b159800980900146600200700291192cc004c154c188dd5000c4cc896600260ba60c86ea8006264660400022b30013375e60b660cc6ea800cc1a4c198dd5003456600266ebcc168c198dd5000983498331baa0038acc004cdc49bad305a306637540073001375660b460cc6ea8c168c198dd50034dd71834803cdd7182d003a04e8992cc004c154c198dd5000c4c96600266e1cdd698358009bad305c3068375400b13370e6eb4c1acc1b0004dd6981298341baa0058a50419860ce6ea80062941065182d98331baa0018b20c88b20c88b20c830683065375400316418c60cc60c66ea8004c160c18cdd5182b98319baa0038b20c23301200f001406d1641791641788acc004cdc3cc004dd59810182e9baa0549bae3051305d3754604460ba6ea8022910105735553447200407866e0520000078992cc004c140c174dd5000c4c96600266e1cdd6983100099b810060038acc004cdc39bad306230630013370200a0131598009828cc004dd59811182f9baa0569bae3053305f3754604860be6ea802a9110455534472004081159800cc004dd6182a182f9baa0569bac3062305f3754017330613053305f3754604860be6ea8028cc185301054455534472004bd702444b30013370e6026004602a01f19800807c00a4464b30013057306437540031325980099baf30693066375400260d260cc6ea8c1a4c198dd5002456600266ebcc16cc198dd5000982d18331baa30693066375400913370f3001375660b460cc6ea80066eb8c1a40166eb8c16801502719b813370666e08dd6982d18331baa00400d00c375a604660cc6ea80122941064452820c830683065375400316418c6602800a00280ea2c8301198009bac3054305f37540ad30623063306330633063306330633063306330633063305f3754015330613053305f3754604860be6ea8028cc185301054455534472004bd704dd69831183180224444b300130550018a51899b8900132330010010052259800800c52000899912cc004cdd7983518339baa002007899b8000198009bab305b30673754005375c60d400d375c60b600c814220028328c1a0004cc008008c1a400506620c245905d45905d45905d45905d4c004dd61829982f1baa0559bae301b305e3754604660bc6ea80266eb8c148c178dd51811982f1baa0099bad3061305e375400280622c82e0c06cc174dd5004c5905b45905b45905b1bad305f001329800800c02697ae1101000081010000200222259800801440063300100398310014c8c96600260306eb4c074c180dd5001456600266e24dd6980e98301baa0020018998311ba8337006eb4c18c00c004cc188dd419b80375a60c660c80066eb4c074c180dd500125eb822c82f22c82f0cdc199b82375a60a660be6ea8004018014c18400900320be8b20b28b20b2375a60b80026eb4c170c17400660026eb0c16cc160dd5027cdd7180a982c1baa301d30583754007375c609860b06ea8c074c160dd5001cdd6982d982c1baa001401d16415930010039bac3059305637540052300e375a609660ae6ea800500b180c982b1baa0028b20a8452820a24144444464b30013048305537540031325980099baf305a3057375460b460ae6ea8c12cc15cdd500098211982c9ba90054bd704566002609130013756609660ae6ea8c12cc15cdd5000c01691010d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c80089982d9ba898009bab304d30593754609a60b26ea800e00d48810455534472004068660b660b860b26ea8004cc16c00d2f5c060b660b06ea80062c82b0c130c15cdd51825982b9baa0018b20aa8b20aa3059305637540031641506600a008002444464b30013048305537540031325980099baf305a3057375460b460ae6ea8004c108cc164dd4802a5eb822b3001304898009bab304b30573754003005a450d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c8008acc004cdd7980b182c9baa0034c0103d87a800089982d9ba898009bab304d30593754007006a4410455534472004068660b660b860b26ea8004cc16c00d2f5c116415c60b660b06ea80062c82b0c130c15cdd5000c59055459055182c982b1baa0018b20a833005004001225980099b8800148002298103d87a8000899803001000a0a022646644b30013040001899912cc004c0c0c0f4dd500144c8c8c8cc8966002608e00713259800981b18219baa0018991919912cc004c13000e264b3001303b001899192cc004c13c00a01d1641306eb8c134004c124dd5003c566002607400315980098249baa00780645904a459047208e3047375400d1641246eb8c124004dd71824801182480098221baa0018b208430460058b2088375c6088002608800460880026086002607c6ea800a2c81e0c0fc0044c010c1000162c81e8dd7181e800981f0009bac303c00240e91323002303c003375a607400481c2264600460740066eb4c0e00090364590340c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815002c590281bac302800130280023028001302700130223754007164080323232598009809180f9baa00189919912cc004c09c006264b30013016302337540031323232323232323232323298009819000cc0c802a606401330320089819003cc0c801a606400b30320049819001cdd6181900124444444444b3001303d00b89980f181e00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0acc0e0dd500144c8c8c8ca60026eb8c1000066eb8c1000126eb8c10000e6eb8c1000092222598009822802c4cc0d0024896600200513302701410248992cc004c0d8c10cdd5000c4c8c8c8cc8966002609a007132323322598009828801c4c02cc1440322c8270dd718270009bae304e002304e0013758609800b1641286eb4c128004dd698250011825000982480098221baa0018b2084304600241111641083040001303f001303e001303937540051640dd1640e8303200130310013030001302f001302e001302d001302c001302b001302a001302900130243754003164088604c0031640906eb8c090004c094004c080dd5000c5901e192cc004c048c07cdd5000c4c966002603260406ea8006264b3001301430213754003132323322598009815001c40162c8138c09c004dd71813801181380098111baa0018b204030243021375400316407c602a60406ea8c050c080dd5181198101baa0018b203c32330010013758602860406ea805c896600200314c0103d87a80008992cc004c8cc004004c014dd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a04440951300e330240014bd7044cc00c00cc0980090201812000a04430010012259800800c52f5c1133021301e3022001330020023023001408044b30013011301e3754005132323259800981300144cc018c09400c4c966002602a00315980098119baa002802c590244566002602800313232598009814801401e2c8130dd7181380098119baa0028acc004c06c00626464b30013029002803c59026181380098119baa0028b204240848108c084dd5000c5902318120009812000980f9baa0028b203a300500522598009807980e1baa00289919192cc004c09000a2660126046006264b300130130018992cc004c09800626464b300130160018992cc004c0a400626601c605000201316409860486ea800a2b3001301500189919194c004dd69815000cdd69815001cdd698150012444b3001302e00480745902b0c0a8004c0a4004c090dd5001459022204430223754002604a00316408c60426ea800a2b300130120018acc004c084dd500140162c81122c80f901f180f9baa0018b204230220013022001301d375400516406c4590080c024004c010dd5004c52689b2b20041",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1ProtocolStakeProtocolStakeElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"593b9d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888896600264653001301b001980d980e000cdc3a4009301b0024888966002600460366ea800e33001301f301c37540072302030213021001918101810800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009b80480066e95200248888888888888c8cc88c8c966002003198009112cc004c044c0c0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981c80146600200713259800980b000c566002606c6ea800a00f00640dd159800980a800c4c9660020030078992cc0040060110088044022264b3001303d003805402503a1bae00140f4607400281c0c0d8dd50014566002603800313259800800c01e264b3001303c002804c021039181d000a0703036375400500640cc8199033181a1baa001802a016802a06c802c01600b00540e8606e00281a8c0dc00a007003801c00d038181a800a0663031375400700140b922259800980898181baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130360018acc004cdc4a4008606a0030068992cc004c0ec012264b300130180018acc004c0e0dd5003402601081ca2b300130170018992cc00400601313259800800c02a01500a8992cc004c0fc00e01900b40f06eb400601481f8c0f000503a181c1baa0068acc004c0780062b30013038375400d0098042072804206a40d481a8c0d8dd5002c01d038180a981a800a066803206e3754003005802c01600a81d0c0dc005035181b801400e007003801a070303500140cc60626ea800e0028172444b300130113030375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0ec00e01100740e06eb400600c81d8c0e00050361bae001303700240e0606a0028198c0c4dd5001c00502e4888c966002602400313259800800c00e264b3001001802401200913259800981c801c01a00a81b0dd6800c011039181b000a068303237540091598009808800c56600260646ea801200700240cd00240bc8178c0c0dd5001a44446644b300130143033375400f13259800800c082264b30010018992cc00400604513259800800c4c9660020030248992cc00400604b0258992cc004c0fc00e2b3001301b303a375400d13259800800c09e264b300100181440a226644b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc004006264b300100181ac4c966002003159800982780144cc0b0038896600200513302e00d225980080146600200f19800802c4c9660026060609e6ea8066264b300100181e44c96600200313259800800c0fa264b30010018acc004c16000a26644b300130360018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d029411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606a00313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a052823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b159800981a000c4c9660020030428992cc0040060870438992cc004c17400e26607400244b3001002803c4c96600200319800800c4c008c18000e08e814a08f047823c11d061182f00120b882220b43758003043821a0ba305a001416060ac6ea80162b300130330018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d02a411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606400313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a054823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0c4006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b15980099b8748038006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b041414c829905320a6414c829905320a613259800981a800c4c9660020030418992cc0040062b3001305b0028cc004006011042409d0424161042821410a08482e0c164005057182a9baa0028acc004c0d0006264b3001001820c4c966002003159800982d8014566002606e60ac6ea8006264b3001001821c4c96600200313259800800c116264b30010018acc004c17c00a330010038cc00400601904640b104640b10464171046823411a08c8300c17400505b182e801411208904482220bc305b001416460ae6ea800608482a208482c2085042821410905c182c800a0ae3055375400504041488290c14cdd500098299baa00381fa0aa81fc0fe07f03f416460ac00282a0c15800a07b03d81ec0f5057182a000a0a43050375403303b413426606002a44b30010028cc004c150c144dd5181998289baa024914c004c8cc00400400c896600200314a115980099baf30583055375460b060aa6ea8c0dcc154dd5182c00098169982b9ba90034bd704528c4cc008008c16400505220aca50a51414123055305630563056305630563056305630560019181898289baa305532330010010022259800800c52f5c303d87a80008101800044c8cc8966003300130363056375460b40074a14a282a22660b330014a14c103d87a8000a60103d87980004150660b26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17000400e294626600400460ba00282b105a44cc166600294298103d87a8000a60103d87980004150660b26e9c0092f5c11330599800a51a60103d87a8000a60103d87980004150660b26e9ccc164dd400080125eb8105420a8375860b060b20026eb4c160008cc008008c16000505548c154c158c158c158c158006444b30010028a6103d87a80008acc004c0d00062605c660ac60ae00497ae08cc00400e60b0005302d001400c82890554888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd6982c000982d000a0b03232330010010062259800800c00e2646644b30013372201200515980099b8f0090028800c01905844cc014014c17c0110581bae3058001375660b200260b600282c852f5bded8c029000488966002606860a66ea800e264b300100180144c966002003003801c00e264b3001305b003802c0110581bad001801a0b63058001415860a86ea800e002828a44646600200200644b30010018a5eb8226644b30013375e60b460ae6ea8c168c15cdd5181c982b9baa002302f33059375200a97ae089982c80119802002000c4cc010010005054182c000982c800a0ac9182a982b182b182b182b182b000c8c154c158c158c15800644b30010018a4001133700900119801001182b800a0a8911194c0040060090034004444b30010028acc00400629462941058456600200314a115980099802182d0011bad305a0018cc00400e60b6005305b001400d14a082a105820b09112cc004c0d0c14cdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983000146600200f19800802c4c966002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981e000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c19c00e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b000e02d01541a46eb800506c1834800a0ce375c00260d00048348c19800506440410641bac001807c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002608600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b3001306a0038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001306f00380cc06106c1bae00141bc60d80028350dd7000983580120d83069001419d013419c6eb000602501241a860ce0028328dd68009833001403d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981d000c4c96600200300b8992cc00400601900c80644c96600260c800700e806a0c2375a00300c419060c200282f8c174dd50024566002607200313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009833801c0460208320dd6800c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607000313259800800c02e264b30010018064032019132598009832001c03a01a8308dd6800c0310641830800a0be305d375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001306400380740350611bad00180620c83061001417c60ba6ea801201482d105a20b4416882d105a20b4416860b66ea800e0128172012818a01282e8c17800505c182f001401e00f007803a0be305c001416860b8005005802c01600a82e8c168005058182d001400e007003801a0b63058001415860a86ea800e002828a44b30010018a4001133700900119801001182b800a0a89b89480026e21200048888888888888888a600260c26ea8046444b300130110028994c004006009003a40008008888966002007159800801440062a660ce92112657870656374205b5d203d206c6973745f62001641a9159800801454cc19d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260da007306d00299912cc004c01c00a266e0000cdd6982698359baa0028a99834a4811a6578706563742076616c69646174696f6e287265717565737429001641a060d80066eb4c1b000900420d441a9153306349012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164189300c00c980300348c03c00660060069111111919912cc004c12002633001375860dc60d66ea806a60dc60d66ea80fa609a60d66ea80fd222598009980e1bac3071306e37540a66eb8c1c4c1b8dd5180d98371baa001899912cc004c140c1bcdd5000c4c8cc896600260260051598009809800c566002b300130530018a518980900120e08992cc004c04c0062b300198009980d9bac3077307437540b26eb8c15cc1d0dd51810983a1baa0079bac30563074375401133076305630743754604260e86ea801ccc1d93001054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c168c1e4dd5000c4cc896600260c460f66ea8006264b30010018cc0040062b30013375e60c060fa6ea800cc20004c1f4dd5003456600266ebcc17cc1f4dd5000984000983e9baa0038acc004cdc49bad305f307d37540073001375660be60fa6ea8c17cc1f4dd50034dd7184000803cdd7182f803a04c8992cc004c16cc1f4dd5000c4cdc39bad308101307e37540026eb4c180c1f8dd5002452820f63060307d375400307541e907441e907341e9072407d07283941ca0e4841008c1fcc1f0dd5000c1b1079183e983d1baa001305d307a375460b860f46ea800e0dc83b8cc04403800501a41a907441a507422b300198009bac3057307437540b3375860ee60e86ea8022660ec60ac60e86ea8c084c1d0dd50039983b260106457355534472004bd702444b30013370e6020004602401919800806400a4464b3001305a307937540031325980099baf307e307b375400260fc60f66ea8c1f8c1ecdd5002456600266ebcc178c1ecdd5000982e983d9baa307e307b375400913370f3001375660ba60f66ea80066eb8c1f80166eb8c1740150242cc004c16c02626eb4c174c1ecdd500244cdc199b82375a60ba60f66ea8010024029078452820f08a5041e060fa60f46ea80060e883b8cc04401400501a41c10742264b30013055307437540031325980099b87375a60f200266e000140222b30013370e6eb4c1e4c1e8004cdc0002001c56600266e1e60026eacc084c1d8dd502dcdd7182c183b1baa302330763754013488105735553447200407c0071305698009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d2201045553447200407d1533074491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001641cd15330744914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001641cd153307449140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001641cd3001375860b060ea6ea816a6eb8c068c1d4dd51811183a9baa0089bae305730753754604460ea6ea80226eb4c1e0c1d4dd5000a01683220e4301a307437540111533072491dc6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641c51533072491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001641c51533072491186578706563742073757364725f746f5f6d696e74203e2030001641c4b300130530018802c4cdc199b8200500100241c115330714913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641c11533071491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641c115330714911d657870656374207661756c745f757364725f6265666f7265203e3d2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4b3001300e375a60a260de6ea80062609e6eb4c050c1bcdd5000c52820d8402c603260dc6ea800a0b683591598009823804c660026eb0c1b8c1acdd500d4c1b8c1acdd501f4c134c1acdd501fa444b30013301c375860e260dc6ea814cdd7183898371baa301b306e37540031332259800982818379baa00189919912cc004c04800a2b3001301200189919912cc004c05400a2b300198009980e9bac3079307637540b66eb8c164c1d8dd51811983b1baa0099bac30583076375401533078305830763754604660ec6ea8024cc1e130106457355534472004bd702444b30013370e6028006602801d159800980980146600200700291192cc004c170c1ecdd5000c4cc896600260c860fa6ea8006264b30010018cc0040062b30013375e60c460fe6ea800cc20804c1fcdd5003456600266ebcc184c1fcdd5000984100983f9baa0038acc004cdc49bad3061307f37540073001375660c260fe6ea8c184c1fcdd50034dd7184100803cdd71830803a0508992cc004c170c1fcdd5000c4c96600266e1cdd69842008009bad3063308101375400b13370e6eb4c21004c21404004dd698131840809baa0058a5041f86100026ea8006294107d1831183f9baa00183ba0f883b20f883aa0f883a204283a41d20e907442100461020260fc6ea80060dc83d8c1fcc1f0dd5000982f983e1baa305e307c375400707041e46602602000280e20d883b20d683b115980099b8798009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d220105735553447200407c66e0520000088992cc004c15cc1d8dd5000c4c96600266e1cdd6983d80099b810070048acc004cdc39bad307b307c0013370200c015159800982c4c004dd59811983c1baa05d9bae305a30783754604a60f06ea802e9110455534472004085159800cc004dd6182d983c1baa05d9bac307b307837540193307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b30013370e6028004602c02119800808400a4464b3001305e307d37540031325980099baf308201307f375400261040260fe6ea8c20804c1fcdd5002456600266ebcc188c1fcdd50009830983f9baa308201307f375400913370f3001375660c260fe6ea80066eb8c208040166eb8c18401502819b813370666e08dd69830983f9baa00400e00d375a604860fe6ea8012294107c452820f8308101307e375400307841ec6602a00a00280f20e883c1198009bac305b307837540bb307b307c307c307c307c307c307c307c307c307c307c307837540173307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b3001305b0068a51899b8900632330010010042259800800c52000899912cc004cdd7984100983f9baa002006899b8000198009bab3061307f3754005375c61040200b375c60c200a8142200283e0c20004004cc008008c2040400507e20f0454cc1d9241df6578706563740a2020202076616c69646174655f756e7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641d515330764911765787065637420757364725f6d696e746564203d3d2030001641d51533076491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641d515330764913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001641d53001375860b460ee6ea81726eb8c070c1dcdd51812183b9baa00a9bae305930773754604860ee6ea802a6eb4c1e8c1dcdd5000a01a83320e8301c3076375401515330744912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641cd1533074491a76578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202029001641cd15330744911a65787065637420757364725f746f5f72656c65617365203e2030001641cc6eb4c1dc004dd6983b983c000994c0040060134bd709010000810100002002222598008014400633001003983d0014c8c96600260306eb4c074c1e0dd5001456600266e24dd6980e983c1baa00200189983d1ba8337006eb4c1ec00c004cc1e8dd419b80375a60f660f80066eb4c074c1e0dd500125eb822a660ec92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641d515330764911565787065637420722e666f7266656974203e3d2030001641d466e0ccdc11bad30593077375400200c00a60f20048019077454cc1c52401236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641c115330714911c657870656374207661756c745f757364725f6265666f7265203e2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4601c6eb4c144c1bcdd5000a0163019306e375400505b41ac8a5041a083408888c966002609c60da6ea8006264b30013375e60e460de6ea8c1c8c1bcdd5182898379baa001304733071375200a97ae08acc004c13a60026eacc144c1bcdd5182898379baa001802d2210d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018998399ba898009bab30533071375460a660e26ea800e00d4890455534472004068660e660e860e26ea8004cc1cc00d2f5c10624065062831418a0c483b0c1ccc1c0dd5000c18106d182918379baa3051306f3754003153306d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ac6600a008002444464b3001304e306d37540031325980099baf3072306f375460e460de6ea8004c11ccc1c4dd4802a5eb822b3001304e98009bab3051306f3754003005a4410d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018acc004cdd7980b18389baa0034c103d87a80008998399ba898009bab305330713754007006a4410455534472004068660e660e860e26ea8004cc1cc00d2f5c1153306f490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641b90624065062831418a0c483b0c1ccc1c0dd5000c54cc1b924012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641b460a460de6ea80062a660da92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641ac6600a00800244b300133710002900045300103d87a8000899803001000a0ce2264b300100181ec0f6264b300100181f44c96600200303f81fc0fe07f1332259800800c106264b30010018acc004c16c00a264b300130383057375400513259800800c112264b30010018992cc00400608d13259800800c4c9660020030488992cc004006093049824c126264b300130630038acc004c0fcc178dd500344c96600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f132598009834801c4c966002608c00313259800800c14a264b3001001829c14e0a70538992cc004c1b400e02505441a86eb800506d1835000a0d0306637540171598009822800c56600260cc6ea802e01f051419d051418c8318c190dd500541410661bae00141a460cc0028320dd7000983280120cc3063001418460be6ea801a09482e20948300dd7000a0c63060001417860c0005047823c11e08e8308c17800505c182f001411608b045822a0be305c001416860b06ea800a08682a84c01cc16c02208482c2085042821410905c182c800a0ae375c00260b000482c8c1580050541bac00181ec0f5057182a00120a481d203c81d203c8992cc00400607703b81dc4c8c00cc154010dd6800c0ed055182900120a08992cc00400607303981cc4c8c00cc14c010dd6800c0e50531828001209c81b209881b40da06d0364140609a0028258c13400a06903481a40d104e1825800a092375a0026094005031412c60900028230dd6800982380140b90481822800a0863758002608800502b815a08a304200141006eb0004c10400a0510284108607e00281e8c0ecdd50034099038409903c1bac001812c09503f181e000a074303c002811c08e04702340f4607400281c0c0e800a043021810c08503b181c000a06c3034375400f01f40c4444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608600719800804c6600200900c805a01e805a022805a080375a00300a410c608000281f0c10000a0110088044021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12c00e02901341206eb800504b1824000a08c375c002608e0048240c1140050434039012403901440390431bac001806c0350461821800a0823043002805c02e01700b4110608200281f8dd680098200014021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c880cc06603301940cc664464b30013010302f375400313030323376060680026068606a0026eb0c0ccc0c0dd5000c54cc0b924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b4646600200200644b30010018a60103d87a80008992cc004cdd7981880099ba548010cc0d0c028cc0d0dd480225eb812f5c11300c33034374e66068606200266068606400297ae04bd7044cc00c00cc0d800902f181a000a06437566060606260626062606260626062606260626062605a6ea8048dd7181818169baa0019800912cc004006297ae089981818169818800998010011819000a05e9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003205891111919800800802912cc004006200b13259800800c4cc010c0d800801a26600a606c0046600600600281a0c0d80050334dd6180718161baa01148888c8c8c8cc88c966002003159800980b181a9baa0018992cc00400604713259800800c09204902481244cc89660020030268992cc0040062b3001303f0028acc004c06cc0e8dd5000c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c96600200303b81dc4cc896600200303d8992cc0040062b300130560028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0c8c144dd500344c96600200303f8992cc004006081040820410226644b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4c96600260c400713303f00f225980080146600201f102b826206c8992cc0040062b300130413060375400313259800800c13a264b3001001827c13e26644b3001001828c4c966002003052829414a26644b300100182a44c96600200305582ac156264b3001306e0038acc00401e0ad13259800800c15e0af05782bc4cc89660020030598992cc0040060b505a82d416a264b30013073003898081839808c16d0701bae00141cc60e00028370dd7000983780420e0306d00741ad05641ac6eb40060aa8370c1ac0050691bad001306a00282920d6306800141986eb0004c19c00a09f04f41a060ca0028318c184dd5000c13505e413609b04d826a0cc3063002418504a417c6eb8005062182f800a0ba375c00260bc00482f8c17000505a1bae001305b002417060b200282b8dd7000982c00120b23056001415060a46ea801a07c827a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c829a07d03e81f40f9057182a000a0a4375800260a600503b81da0a83051001413c60a200503981cc0e60728290c13c00504d182780140de06f03781ba0a0304d001412c609a00503581ac0d606a8270c12c005049182580140ce067033819a0983049001411c6092005031818c0c60628250c11c005045182380140be05f02f817a0903045001410c608a00502d816c0b605a8230c10c005041182180140ae05702b815a088304100140fc6082005029814c0a60528210c0fc00503d181d9baa001813a070813a078813c09e04f0274100607a00281d8dd7000981e001207a303a00140e0606c6ea8006044819a045022811408903b29981999b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40c522010013259800980b181a9baa00189929981a99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980f181b9baa0018992cc0040062b300130193038375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098210014401a07281f8c10000503e1bae001303f0024100607a00281d8c0e4dd5000c0d103640d206903481a207c303b30383754003153303649013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640d46034606e6ea8c064c0dcdd5000981c981b1baa0018a9981a24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640cc646600200200e44b30010018a60103d87a80008992cc004c8cc004004c014dd5980d981c9baa301b3039375400444b30010018a508acc004cdc79bae303d0010368a51899801001181f000a06e40ed130123303a0014bd7044cc00c00cc0f0009035181d000a070300100130070072223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20765980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81a90351bac3038002375a606c0026466ec0dd4181b0009ba73037001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6076003337149101023a200098008054c0f000600a805100a181f00144ca6002015303b00199b8a489023a200098008054c0f0006600e66008008004805100a181f0012078303e00140ec66e29220102207d0000340e06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920703758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40e866e2ccdc0000acc004cdc4000a4029148182290372074004401866e0c00520203370c002901019b8e00400240dc6eb800d03b1b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c88190c00c00c444b3001300d302c375400713259800800c00a264b30010018992cc00400600913259800800c566002606a00519800801c4c966002602400313259800800c01e264b30010018acc004c0e000a264b300130150018992cc00400601513259800800c566002607600519800800c032016807201681c201700b805c02d03c181c800a06e30353754005159800980a000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026084007013809207e375a0030114108607e00281e8dd6800981f001403903f181e000a074375a002607600500b40f0607200281b8c0d4dd5001402503220643033375400300840d5008804402201081c8c0d800503418191baa0028acc004c0440062b3001303237540050078032066803205e40bc60606ea800600a804200a819200b005802c0150361819800a0623033002801c00e00700340d060620028178c0b4dd5001c00502a111194c004006009003400444464b300130110018992cc00400600d13259800800c01e00f007803c4c9660026070007005804206a375c00281c0c0d400503318189baa0038acc004c040006264b300100180344c966002003007803c4c96600260700071330150012259800801401e264b30010018cc00402a00313002303b003402900b805c02e01681e0c0e400903740210351bac001803c01d038181a800a06630313754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0e000e26602a00244b3001002803c4c966002003198008054006260046076006805201700b805c02d03c181c801206e804206a3758003007803a070303500140cc60626ea800e2b3001300f0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d801c4cc060004896600200500a8992cc0040063300100d800c4c008c0f800d00d403a01d00e807207e303c00240e900b40e06eb000601500a40ec607000281b0dd6800981b801401d038181a800a066303137540071598009807000c4c9660020030068992cc00400600f007803c4c9660026070007005804206a375a00300740e0606a0028198c0c4dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981c001c01601081a8dd6800c01d038181a800a066303137540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013038003802c0210351bae00140e0606a0028198c0c4dd5001c01502e205c40b8817102e205c40b8605e6ea8008888c966002601a00313259800800c00e264b300100180240120090048992cc004c0d000e00d00540c46eb80050341818800a05e302d37540091598009806000c4c9660020030038992cc0040060090048024012264b3001303400380340150311bae00140d060620028178c0b4dd5002400902a2054302b37540068b2032180d800980b1baa01c8a4d15330144911856616c696461746f722072657475726e65642066616c73650013656404c1":"591d0b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009ba5480092222222222229800911192cc004c03000626464b3001302000280245901d1bae301e001301a37540071598009805800c4c966002603e00313300e3758603c00244b3001002802c6600200f3020002898009810801200e407916407060346ea800e2b300130120018992cc004c07c00626601c6eb0c07800489660020050058cc00401e6040005130013021002401c80f22c80e0c068dd5001c56600260140031323322598009810800c4cc040dd61810000912cc00400a00f19800804cc08800a260026046004804902045901e1bad301e001301f001301a37540071598009804800c4c8c96600260400050048b203a375a603c00260346ea800e2b30013008001899192cc004c08000a0091640746eb4c078004c068dd5001c566002600e0031323259800981000140122c80e8dd7180f000980d1baa0038b2030406080c10182030406080c0c060dd5001488c96600260160031323259800980f80140122c80e0dd7180e800980c9baa0038acc004c02800626464b3001301f00280245901c1bae301d0013019375400716405c80b8c05cdd5001489660026014602e6ea800a2646464b3001301f002899192cc004c03c0062b3001301d37540050068b203c8acc004c03800626464b300130230028044590201bad3021001301d3754005159800980a800c566002603a6ea800a00d16407916406c80d901b180d9baa001301e0038b20383259800980d800c56600266e252004301a0018b44c030c06800501945901c1baa301d001301d0013018375400516405922598009805180b9baa0028991919912cc004c08000e00b1640746eb4c074004dd7180e801180e800980c1baa0028b202c91192cc004c02c00626464b3001301f00280245901c1bad301d001301937540071598009805000c56600260326ea800e00516406916405c80b8c05cdd500124444466446645300133223259800980a18109baa001898111919bb03026001302630270013758604a60446ea80062c8100c8cc00400400c896600200314c103d87a80008992cc004cdd7981180099ba548010cc098c03ccc098dd480225eb812f5c11301033026374e6604c60460026604c604800297ae04bd7044cc00c00cc0a00090221813000a04837566044604660466046604660466046604660466046603e6ea8058dd71811180f9baa002912cc004c04cc080dd500144c8c8c8ca60026eb4c0a00066eb4c0a000e60500049112cc004c0b0012266014605600e26601e0020111640a43028001302700130260013021375400516407d2259800980998101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc0440044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80f922259800980a18109baa003899191919912cc004c0ac00e264b3001301a30273754003132323232323298009818800cdd61818802cdd698188024dd69818801cc0c40092222259800981b80344cc098dd6181b005912cc00400a26605000c44b300100289980e80289980e8048992cc004c0a8c0dcdd500944c8c8c966002607e005132332259800981800144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038acc004c0bc00a264b300130430018998191bac304200122598008014012266040608800426002608a00482122c8200c0f8dd5001c566002606c005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b3001302e0028992cc004c10c0062660646eb0c1080048966002005004899810182200109800982280120848b2080303e3754007159800981680144c96600260860031330323758608400244b300100280244cc084c1100084c004c114009042459040181f1baa0038acc004c0b000a264b300130430018998191bac304200122598008014012266042608800426002608a00482122c8200c0f8dd5001c5660026056005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b30013370e900700144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038b207840f081e103c207840f081e103c181d9baa001132598009817800c4c966002608400313302530410010078b207e303d37540071598009817000c4c9660026084003132598009818981f1baa00189919192cc004c11800a266054608a00626605400201716410c60880026088002607e6ea80062c81e8c1040062c81f8c0f4dd5001c5903b2076303b3754004607c0071640f0607a002607a00260706ea804a2c81b04cc0a8048896600200519800981e181c9baa302d303937540352298009919800800801912cc00400629422b30013375e6080607a6ea8c100c0f4dd51818981e9baa304000130283303f375200697ae08a518998010011820800a07640f94a14a281ca4607a607c607c607c607c607c607c607c607c0032302b30393754607a646600200200444b30010018a5eb8503d87a80008101800044c8cc896600330013030303e375460840074a14a281ea26608330014a14c103d87a8000a60103d879800040f4660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f904244cc106600294298103d87a8000a60103d879800040f4660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f4660826e9ccc104dd400080125eb8103d207a3758608060820026eb4c100008cc008008c10000503d48c0f4c0f8c0f8c0f8c0f8006444b30010028a6103d87a80008acc004c0b8006260506607c607e00497ae08cc00400e6080005337000029000a00640e881ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208089980280298230022080375c607e0026eb4c100004c108005040191919800800803112cc00400600713233225980099b910090028acc004cdc78048014400600c820a26600a00a608e0088208dd718200009bab304100130430014104297adef6c6014800244b3001302d303a375400513232598009820801400e2c81f0dd6981f800981d9baa0028b2072911919800800801912cc004006297ae0899912cc004cdd79821181f9baa3042303f37546066607e6ea8008c0a8cc104dd4802a5eb822660820046600800800313300400400140f46080002608200281f24607a607c607c607c607c607c0032303d303e303e303e001912cc0040062900044cdc02400466004004607e00281e2444653001001802400d0011112cc00400a2b30010018a518a504101159800800c52845660026600860840046eb4c1080063300100398218014c10c0050034528207a4100820244b3001302d303a375400513232323298009821000cc10800e60840049112cc004c11801226604e608a00e266048004264b3001303500189919912cc004c128006264646644b3001304e00380845904b1bae304b001375c609600460960026eb0c1240062c8238dd69823800982400098219baa0028acc004c0d00062646644b3001304a0018991919912cc004c13800e02116412c6eb8c12c004dd7182580118258009bac30490018b208e375a608e002609000260866ea800a2b3001303b001899194c004dd69824000cc1240066eb4c12000922259800982600144c8c8cc896600260a00070128b209a375c609a0026eb8c134008c134004dd618258014590490c120004c10cdd5001456600260660031323322598009825000c4c8c8cc8966002609c0070108b2096375c60960026eb8c12c008c12c004dd61824800c590471bad30470013048001304337540051598009819000c4c8c966002609200500b8b208c375a608e00260866ea800a2b300130310018991919912cc004c12c00e01b1641206eb4c120004dd69824001182400098219baa0028acc004c0c000626464b30013049002805c590461bad30470013043375400515980099b874803800626464b30013049002805c590461bad304700130433754005164104820904120824104820904120823041375400316410c304200130410013040001303b37540051640e52259800800c52000899b8048008cc008008c0fc00503c4dc4a40013710900024444444444444444530013049375402322259800980880144ca6002003004801d200040044444b30010038acc00400a2003164149198008024c15400e60aa005332259800980380144cdc00019bad30473053375400516414460a80066eb4c15000900420a48b209698060064c01801a4601e00330030034888888c8cc89660026084013198009bac30563053375403530563053375406930473053375406c9112cc004cc070dd6182c982b1baa04d375c60b260ac6ea8c06cc158dd5000c4cc8966002609460ae6ea80062646644b300130130028acc004c04c0062b3001598009826800c528c4c04800905944c9660026026003159800cc004cc06cdd6182f982e1baa053375c60a260b86ea8c084c170dd5003cdd61828182e1baa0089982f1828182e1baa3021305c375400e660bc9801054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c150c184dd5000c4cc896600260b860c66ea80062646603e0022b30013375e60b460ca6ea800cc1a0c194dd5003456600266ebcc164c194dd5000983418329baa0038acc004cdc49bad3059306537540073001375660b260ca6ea8c164c194dd50034dd71834003cdd7182c803a04c8992cc004c154c194dd5000c4cdc39bad3069306637540026eb4c168c198dd5002452820c8305a3065375400316418d16418d16418c60ce60c86ea80062c8310c194c188dd5000982b98311baa3056306237540071641806602201c00280d22c82ea2c82e9159800cc004dd61828982e1baa0539bac305f305c37540113305e3050305c3754604260b86ea801ccc17930106457355534472004bd702444b30013370e6020004602401919800806400a4464b30013054306137540031325980099baf30663063375400260cc60c66ea8c198c18cdd5002456600266ebcc160c18cdd5000982b98319baa30663063375400913370f3001375660ae60c66ea80066eb8c1980166eb8c15c0150242cc004c15402626eb4c15cc18cdd500244cdc199b82375a60ae60c66ea8010024029061452820c28a50418460ca60c46ea80062c8300cc04401400501a45905d2264b3001304f305c37540031325980099b87375a60c200266e000140222b30013370e6eb4c184c188004cdc0002001c56600266e1e60026eacc084c178dd502acdd71829182f1baa3023305e3754013488105735553447200407c0071305098009bab3021305e37540ab375c60a460bc6ea8c08cc178dd5004d2201045553447200407d1641711641711641713001375860a460ba6ea81526eb8c068c174dd51811182e9baa0089bae3051305d3754604460ba6ea80226eb4c180c174dd5000a0168b20b6301a305c3754011164169164169164168b3001304d0018802c4cdc199b8200500100241651641651641651641646eb4c170004dd6982e182e800cc004dd6182d982c1baa04f9bae301530583754603a60b06ea800e6eb8c130c160dd5180e982c1baa0039bad305b30583754002803a2c82b26002007375860b260ac6ea800a4b3001300e375a609660ae6ea8006260926eb4c050c15cdd5000c52820aa402c603260ac6ea800a2c82a11598009820804c660026eb0c158c14cdd500d4c158c14cdd501a4c11cc14cdd501b2444b30013301c375860b260ac6ea8134dd7182c982b1baa301b3056375400313322598009825182b9baa00189919912cc004c04800a2b30013012001899192cc004c0500062b300198009980e1bac3060305d37540a86eb8c148c174dd51811182e9baa0089bac3051305d37540133305f3051305d3754604460ba6ea8020cc17d300106457355534472004bd702444b30013370e6026006602601b159800980900146600200700291192cc004c154c188dd5000c4cc896600260ba60c86ea8006264660400022b30013375e60b660cc6ea800cc1a4c198dd5003456600266ebcc168c198dd5000983498331baa0038acc004cdc49bad305a306637540073001375660b460cc6ea8c168c198dd50034dd71834803cdd7182d003a04e8992cc004c154c198dd5000c4c96600266e1cdd698358009bad305c3068375400b13370e6eb4c1acc1b0004dd6981298341baa0058a50419860ce6ea80062941065182d98331baa0018b20c88b20c88b20c830683065375400316418c60cc60c66ea8004c160c18cdd5182b98319baa0038b20c23301200f001406d1641791641788acc004cdc3cc004dd59810182e9baa0549bae3051305d3754604460ba6ea8022910105735553447200407866e0520000078992cc004c140c174dd5000c4c96600266e1cdd6983100099b810060038acc004cdc39bad306230630013370200a0131598009828cc004dd59811182f9baa0569bae3053305f3754604860be6ea802a9110455534472004081159800cc004dd6182a182f9baa0569bac3062305f3754017330613053305f3754604860be6ea8028cc185301054455534472004bd702444b30013370e6026004602a01f19800807c00a4464b30013057306437540031325980099baf30693066375400260d260cc6ea8c1a4c198dd5002456600266ebcc16cc198dd5000982d18331baa30693066375400913370f3001375660b460cc6ea80066eb8c1a40166eb8c16801502719b813370666e08dd6982d18331baa00400d00c375a604660cc6ea80122941064452820c830683065375400316418c6602800a00280ea2c8301198009bac3054305f37540ad30623063306330633063306330633063306330633063305f3754015330613053305f3754604860be6ea8028cc185301054455534472004bd704dd69831183180224444b300130550018a51899b8900132330010010052259800800c52000899912cc004cdd7983518339baa002007899b8000198009bab305b30673754005375c60d400d375c60b600c814220028328c1a0004cc008008c1a400506620c245905d45905d45905d45905d4c004dd61829982f1baa0559bae301b305e3754604660bc6ea80266eb8c148c178dd51811982f1baa0099bad3061305e375400280622c82e0c06cc174dd5004c5905b45905b45905b1bad305f001329800800c02697ae1101000081010000200222259800801440063300100398310014c8c96600260306eb4c074c180dd5001456600266e24dd6980e98301baa0020018998311ba8337006eb4c18c00c004cc188dd419b80375a60c660c80066eb4c074c180dd500125eb822c82f22c82f0cdc199b82375a60a660be6ea8004018014c18400900320be8b20b28b20b2375a60b80026eb4c170c17400660026eb0c16cc160dd5027cdd7180a982c1baa301d30583754007375c609860b06ea8c074c160dd5001cdd6982d982c1baa001401d16415930010039bac3059305637540052300e375a609660ae6ea800500b180c982b1baa0028b20a8452820a24144444464b30013048305537540031325980099baf305a3057375460b460ae6ea8c12cc15cdd500098211982c9ba90054bd704566002609130013756609660ae6ea8c12cc15cdd5000c01691010d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c80089982d9ba898009bab304d30593754609a60b26ea800e00d48810455534472004068660b660b860b26ea8004cc16c00d2f5c060b660b06ea80062c82b0c130c15cdd51825982b9baa0018b20aa8b20aa3059305637540031641506600a008002444464b30013048305537540031325980099baf305a3057375460b460ae6ea8004c108cc164dd4802a5eb822b3001304898009bab304b30573754003005a450d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c8008acc004cdd7980b182c9baa0034c0103d87a800089982d9ba898009bab304d30593754007006a4410455534472004068660b660b860b26ea8004cc16c00d2f5c116415c60b660b06ea80062c82b0c130c15cdd5000c59055459055182c982b1baa0018b20a833005004001225980099b8800148002298103d87a8000899803001000a0a022646644b30013040001899912cc004c0c0c0f4dd500144c8c8c8cc8966002608e00713259800981b18219baa0018991919912cc004c13000e264b3001303b001899192cc004c13c00a01d1641306eb8c134004c124dd5003c566002607400315980098249baa00780645904a459047208e3047375400d1641246eb8c124004dd71824801182480098221baa0018b208430460058b2088375c6088002608800460880026086002607c6ea800a2c81e0c0fc0044c010c1000162c81e8dd7181e800981f0009bac303c00240e91323002303c003375a607400481c2264600460740066eb4c0e00090364590340c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815002c590281bac302800130280023028001302700130223754007164080323232598009809180f9baa00189919912cc004c09c006264b30013016302337540031323232323232323232323298009819000cc0c802a606401330320089819003cc0c801a606400b30320049819001cdd6181900124444444444b3001303d00b89980f181e00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0acc0e0dd500144c8c8c8ca60026eb8c1000066eb8c1000126eb8c10000e6eb8c1000092222598009822802c4cc0d0024896600200513302701410248992cc004c0d8c10cdd5000c4c8c8c8cc8966002609a007132323322598009828801c4c02cc1440322c8270dd718270009bae304e002304e0013758609800b1641286eb4c128004dd698250011825000982480098221baa0018b2084304600241111641083040001303f001303e001303937540051640dd1640e8303200130310013030001302f001302e001302d001302c001302b001302a001302900130243754003164088604c0031640906eb8c090004c094004c080dd5000c5901e192cc004c048c07cdd5000c4c966002603260406ea8006264b3001301430213754003132323322598009815001c40162c8138c09c004dd71813801181380098111baa0018b204030243021375400316407c602a60406ea8c050c080dd5181198101baa0018b203c32330010013758602860406ea805c896600200314c0103d87a80008992cc004c8cc004004c014dd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a04440951300e330240014bd7044cc00c00cc0980090201812000a04430010012259800800c52f5c1133021301e3022001330020023023001408044b30013011301e3754005132323259800981300144cc018c09400c4c966002602a00315980098119baa002802c590244566002602800313232598009814801401e2c8130dd7181380098119baa0028acc004c06c00626464b30013029002803c59026181380098119baa0028b204240848108c084dd5000c5902318120009812000980f9baa0028b203a300500522598009807980e1baa00289919192cc004c09000a2660126046006264b300130130018992cc004c09800626464b300130160018992cc004c0a400626601c605000201316409860486ea800a2b3001301500189919194c004dd69815000cdd69815001cdd698150012444b3001302e00480745902b0c0a8004c0a4004c090dd5001459022204430223754002604a00316408c60426ea800a2b300130120018acc004c084dd500140162c81122c80f901f180f9baa0018b204230220013022001301d375400516406c4590080c024004c010dd5004c52689b2b20041",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1ProxyNftProxyNftMint{constructor(utxoRef,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");}}export class V1_0Rc1ProxyNftProxyNftElse{constructor(utxoRef,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");}}export class V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1StakingVaultStakingVaultMint{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1StakingVaultStakingVaultSpend{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1StakingVaultStakingVaultElse{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1TreasuryTreasuryMint{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1TreasuryTreasurySpend{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_0Rc1TreasuryTreasuryElse{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0_rc1/index.js.map b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0_rc1/index.js.map new file mode 100644 index 0000000000..7206d5a98f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_0_rc1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["applyParamsToScript","cborToScript","Type","TPlutusData","PolicyId","String","ScriptHash","Contracts","Module","Bool","Boolean","Tuple_VerificationKey_COSESign1","Tuple","Ref","COSESign1","Object","headers","payload","Optional","signature","ctor","HeaderMap","Headers","protected","unprotected","MultisigScript","Union","Signature","key_hash","AllOf","scripts","Array","AnyOf","AtLeast","required","BigInt","Before","time","After","Script","script_hash","Asset","Destination","address","payment_credential","VerificationKey","stake_credential","Inline","Pointer","slot_number","transaction_index","certificate_index","datum","Literal","DatumHash","InlineDatum","ExtraProtocolRedeemerV1","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","Nonce","UTxO","transaction_id","output_index","Validity","lower_bound","bound_type","Finite","is_inclusive","upper_bound","OrderActionV1","OMint","amount","reserve_asset","ORedeem","ODeposit","principal","yield","OWithdraw","OStake","OUnstake","forfeit","ODirectMint","ODirectBurn","OrderDatumV1","owner","destination","action","data","OrderRedeemerV1","ProtocolRedeemerV1","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","DirectMint","DirectBurn","ProxyDatumV1","logic","settings","RegistryV1","treasury","usdr","order","staking_vault","RequestV1","origin","ReserveAsset","asset","numerator","denominator","SettingsV1","mint_permission","burn_permission","withdraw_permission","deposit_permission","stake_permission","unstake_permission","direct_mint_permission","direct_burn_permission","registry","reserve_assets","unstaked_yield_pot","SignedPayload_v1_0_ProtocolRedeemerV1","nonce","SignedRedeemer_v1_0_ExtraProtocolRedeemerV1","extra","signatures","StakingVaultRedeemerV1","Undefined","TreasuryDatumV1","circulating_supply","TreasuryRequestV1","VaultDatumV1","circulating_susdr","Import","V1_0Rc1OrderOrderSpend","constructor","proxyPolicyId","protocolScripthash","trace","_defineProperty","V1_0Rc1OrderOrderElse","V1_0Rc1ProtocolManagementProtocolManagementWithdraw","V1_0Rc1ProtocolManagementProtocolManagementElse","V1_0Rc1ProtocolMintProtocolMintWithdraw","V1_0Rc1ProtocolMintProtocolMintElse","V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","mintValidator","stakeValidator","managementValidator","V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish","V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse","V1_0Rc1ProtocolStakeProtocolStakeWithdraw","V1_0Rc1ProtocolStakeProtocolStakeElse","V1_0Rc1ProxyNftProxyNftMint","utxoRef","V1_0Rc1ProxyNftProxyNftElse","V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint","V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse","V1_0Rc1StakingVaultStakingVaultMint","V1_0Rc1StakingVaultStakingVaultSpend","V1_0Rc1StakingVaultStakingVaultElse","V1_0Rc1TreasuryTreasuryMint","V1_0Rc1TreasuryTreasurySpend","V1_0Rc1TreasuryTreasuryElse"],"sources":["../../../../src/generated-types/v1_0_rc1/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\ntype Data = Exact;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\nconst ScriptHash = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n Bool: Type.Boolean(),\n Tuple_VerificationKey_COSESign1: Type.Tuple([\n Type.String(),\n Type.Ref(\"COSESign1\"),\n ]),\n COSESign1: Type.Object({\n headers: Type.Ref(\"Headers\"),\n payload: Type.Optional(\n Type.String()\n ),\n signature: Type.String(),\n }, { ctor: 0n }),\n HeaderMap: Type.String(),\n Headers: Type.Object({\n protected: Type.Ref(\"HeaderMap\"),\n unprotected: Type.Ref(\"HeaderMap\"),\n }, { ctor: 0n }),\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object({\n key_hash: Type.String(),\n }, { ctor: 0n })\n }),\n Type.Object({\n AllOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n AnyOf: Type.Object({\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n AtLeast: Type.Object({\n required: Type.BigInt(),\n scripts: Type.Array(\n Type.Ref(\"MultisigScript\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Before: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n After: Type.Object({\n time: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n Script: Type.Object({\n script_hash: Type.String(),\n }, { ctor: 6n })\n }),\n ]),\n Asset: Type.Tuple([\n Type.String(),\n Type.String(),\n ]),\n Destination: Type.Object({\n address: Type.Object({\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple([\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n ], { ctor: 0n })\n }),\n Type.Object({\n Pointer: Type.Object({\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ])\n ),\n }, { ctor: 0n }),\n datum: Type.Union([\n Type.Literal(\"NoDatum\", { ctor: 0n }),\n Type.Object({\n DatumHash: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n Type.Object({\n InlineDatum: Type.Tuple([\n TPlutusData,\n ], { ctor: 2n })\n }),\n ]),\n }, { ctor: 0n }),\n ExtraProtocolRedeemerV1: Type.Object({\n request_to_outputs: Type.Array(\n Type.BigInt()\n ),\n input_to_requests: Type.Array(\n Type.BigInt()\n ),\n treasury_input_idx: Type.BigInt(),\n treasury_output_idx: Type.BigInt(),\n vault_input_idx: Type.Optional(\n Type.BigInt()\n ),\n vault_output_idx: Type.Optional(\n Type.BigInt()\n ),\n }, { ctor: 0n }),\n Nonce: Type.Union([\n Type.Object({\n UTxO: Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ], { ctor: 0n })\n }),\n Type.Object({\n Validity: Type.Tuple([\n Type.Object({\n lower_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n upper_bound: Type.Object({\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([\n Type.BigInt(),\n ], { ctor: 1n })\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n ], { ctor: 1n })\n }),\n ]),\n OrderActionV1: Type.Union([\n Type.Object({\n OMint: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 0n })\n }),\n Type.Object({\n ORedeem: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 1n })\n }),\n Type.Object({\n ODeposit: Type.Object({\n principal: Type.BigInt(),\n yield: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 2n })\n }),\n Type.Object({\n OWithdraw: Type.Object({\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 3n })\n }),\n Type.Object({\n OStake: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 4n })\n }),\n Type.Object({\n OUnstake: Type.Object({\n amount: Type.BigInt(),\n forfeit: Type.BigInt(),\n }, { ctor: 5n })\n }),\n Type.Object({\n ODirectMint: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 6n })\n }),\n Type.Object({\n ODirectBurn: Type.Object({\n amount: Type.BigInt(),\n }, { ctor: 7n })\n }),\n ]),\n OrderDatumV1: Type.Object({\n owner: Type.Ref(\"MultisigScript\"),\n destination: Type.Ref(\"Destination\"),\n action: Type.Ref(\"OrderActionV1\"),\n data: TPlutusData,\n }, { ctor: 0n }),\n OrderRedeemerV1: Type.Union([\n Type.Literal(\"Execute\", { ctor: 0n }),\n Type.Literal(\"Cancel\", { ctor: 1n }),\n Type.Literal(\"Invalidated\", { ctor: 2n }),\n ]),\n ProtocolRedeemerV1: Type.Union([\n Type.Object({\n Mint: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 0n })\n }),\n Type.Object({\n Burn: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 1n })\n }),\n Type.Object({\n Withdraw: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 2n })\n }),\n Type.Object({\n Deposit: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 3n })\n }),\n Type.Object({\n Stake: Type.Object({\n requests: Type.Array(\n Type.Ref(\"RequestV1\")\n ),\n }, { ctor: 4n })\n }),\n Type.Object({\n Unstake: Type.Object({\n requests: Type.Array(\n Type.Ref(\"RequestV1\")\n ),\n }, { ctor: 5n })\n }),\n Type.Object({\n DirectMint: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 6n })\n }),\n Type.Object({\n DirectBurn: Type.Object({\n requests: Type.Array(\n Type.Ref(\"TreasuryRequestV1\")\n ),\n }, { ctor: 7n })\n }),\n ]),\n ProxyDatumV1: Type.Object({\n logic: Type.String(),\n settings: Type.Ref(\"SettingsV1\"),\n }, { ctor: 0n }),\n RegistryV1: Type.Object({\n treasury: Type.String(),\n usdr: Type.String(),\n order: Type.String(),\n staking_vault: Type.String(),\n }, { ctor: 0n }),\n RequestV1: Type.Object({\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n origin: Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n forfeit: Type.BigInt(),\n }, { ctor: 0n }),\n ReserveAsset: Type.Object({\n asset: Type.Ref(\"Asset\"),\n numerator: Type.BigInt(),\n denominator: Type.BigInt(),\n }, { ctor: 0n }),\n SettingsV1: Type.Object({\n mint_permission: Type.Ref(\"MultisigScript\"),\n burn_permission: Type.Ref(\"MultisigScript\"),\n withdraw_permission: Type.Ref(\"MultisigScript\"),\n deposit_permission: Type.Ref(\"MultisigScript\"),\n stake_permission: Type.Ref(\"MultisigScript\"),\n unstake_permission: Type.Ref(\"MultisigScript\"),\n direct_mint_permission: Type.Ref(\"MultisigScript\"),\n direct_burn_permission: Type.Ref(\"MultisigScript\"),\n registry: Type.Ref(\"RegistryV1\"),\n reserve_assets: Type.Array(\n Type.Ref(\"ReserveAsset\")\n ),\n unstaked_yield_pot: Type.Object({\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple([\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([\n Type.String(),\n ], { ctor: 0n })\n }),\n Type.Object({\n Script: Type.Tuple([\n Type.String(),\n ], { ctor: 1n })\n }),\n ]),\n ], { ctor: 0n })\n }),\n Type.Object({\n Pointer: Type.Object({\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n }, { ctor: 1n })\n }),\n ])\n ),\n }, { ctor: 0n }),\n }, { ctor: 0n }),\n SignedPayload_v1_0_ProtocolRedeemerV1: Type.Object({\n action: Type.Ref(\"ProtocolRedeemerV1\"),\n nonce: Type.Ref(\"Nonce\"),\n }, { ctor: 0n }),\n SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: Type.Object({\n extra: Type.Ref(\"ExtraProtocolRedeemerV1\"),\n payload: Type.Ref(\"SignedPayload_v1_0_ProtocolRedeemerV1\"),\n signatures: Type.Array(\n Type.Ref(\"Tuple_VerificationKey_COSESign1\")\n ),\n }, { ctor: 0n }),\n StakingVaultRedeemerV1: Type.Undefined(),\n TreasuryDatumV1: Type.Object({\n circulating_supply: Type.BigInt(),\n }, { ctor: 0n }),\n TreasuryRequestV1: Type.Object({\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n yield: Type.BigInt(),\n origin: Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n reserve_asset: Type.Ref(\"Asset\"),\n }, { ctor: 0n }),\n VaultDatumV1: Type.Object({\n circulating_susdr: Type.BigInt(),\n }, { ctor: 0n }),\n});\n\nexport const Bool = Contracts.Import(\"Bool\");\nexport type Bool = Exact;\nexport const Tuple_VerificationKey_COSESign1 = Contracts.Import(\"Tuple_VerificationKey_COSESign1\");\nexport type Tuple_VerificationKey_COSESign1 = Exact;\nexport const COSESign1 = Contracts.Import(\"COSESign1\");\nexport type COSESign1 = Exact;\nexport const HeaderMap = Contracts.Import(\"HeaderMap\");\nexport type HeaderMap = Exact;\nexport const Headers = Contracts.Import(\"Headers\");\nexport type Headers = Exact;\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Destination = Contracts.Import(\"Destination\");\nexport type Destination = Exact;\nexport const ExtraProtocolRedeemerV1 = Contracts.Import(\"ExtraProtocolRedeemerV1\");\nexport type ExtraProtocolRedeemerV1 = Exact;\nexport const Nonce = Contracts.Import(\"Nonce\");\nexport type Nonce = Exact;\nexport const OrderActionV1 = Contracts.Import(\"OrderActionV1\");\nexport type OrderActionV1 = Exact;\nexport const OrderDatumV1 = Contracts.Import(\"OrderDatumV1\");\nexport type OrderDatumV1 = Exact;\nexport const OrderRedeemerV1 = Contracts.Import(\"OrderRedeemerV1\");\nexport type OrderRedeemerV1 = Exact;\nexport const ProtocolRedeemerV1 = Contracts.Import(\"ProtocolRedeemerV1\");\nexport type ProtocolRedeemerV1 = Exact;\nexport const ProxyDatumV1 = Contracts.Import(\"ProxyDatumV1\");\nexport type ProxyDatumV1 = Exact;\nexport const RegistryV1 = Contracts.Import(\"RegistryV1\");\nexport type RegistryV1 = Exact;\nexport const RequestV1 = Contracts.Import(\"RequestV1\");\nexport type RequestV1 = Exact;\nexport const ReserveAsset = Contracts.Import(\"ReserveAsset\");\nexport type ReserveAsset = Exact;\nexport const SettingsV1 = Contracts.Import(\"SettingsV1\");\nexport type SettingsV1 = Exact;\nexport const SignedPayload_v1_0_ProtocolRedeemerV1 = Contracts.Import(\"SignedPayload_v1_0_ProtocolRedeemerV1\");\nexport type SignedPayload_v1_0_ProtocolRedeemerV1 = Exact;\nexport const SignedRedeemer_v1_0_ExtraProtocolRedeemerV1 = Contracts.Import(\"SignedRedeemer_v1_0_ExtraProtocolRedeemerV1\");\nexport type SignedRedeemer_v1_0_ExtraProtocolRedeemerV1 = Exact;\nexport const StakingVaultRedeemerV1 = Contracts.Import(\"StakingVaultRedeemerV1\");\nexport type StakingVaultRedeemerV1 = Exact;\nexport const TreasuryDatumV1 = Contracts.Import(\"TreasuryDatumV1\");\nexport type TreasuryDatumV1 = Exact;\nexport const TreasuryRequestV1 = Contracts.Import(\"TreasuryRequestV1\");\nexport type TreasuryRequestV1 = Exact;\nexport const VaultDatumV1 = Contracts.Import(\"VaultDatumV1\");\nexport type VaultDatumV1 = Exact;\n\nexport class V1_0Rc1OrderOrderSpend {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5917090101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99802249286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d65725631001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b30010078999119912cc004c00c0062b30013019375401700280720348acc004c0240062b30013019375401700280720348acc004c0100062b3001301937540170028072034807202c405880b0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009811001c01a00a80f8dd7000a044301f001407460366ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026044007006802a03e375c0028110c07c00501d180d9baa0048012030406060326ea800e44b30010018a5eb822660366030603800266004004603a00280d2444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80ba44646600200200644b30010018a508acc004cdc79bae301e0010038a51899801001180f800a0304071222232330010010052259800800c4016264b3001001899802181080100344cc014c084008cc00c00c00501f1810800a03c9119198008008019119801800980100148c06cc070006460366038603800337009000c8c06cc070c070c070c070c070c070c070c070006602c6ea8026460366038603860386038603860380032232330010010032259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c24444444444444530012232330010010032259800800c530103d87a80008992cc004c010006260266605800297ae08998018019817001204e302c00140a9300c00c9805805c888ca6002003004801a0022223259800980b000c4c9660020030068992cc00400600f007803c01e264b30013033003802c0210301bae00140cc60600028170c0b0dd5001c566002603800313259800800c01a264b3001001803c01e264b30013033003899809000912cc00400a00f13259800800c6600201500189801181b001a014805c02e01700b40dc606800481920108180dd6000c01e00e8198c0c000502e18161baa0038acc004c05c006264b300100180344c966002003007803c4c96600260660071330120012259800801401e264b30010018cc00402a003130023036003402900b805c02e01681b8c0d000903240210301bac001803c01d0331818000a05c302c375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002606c0071330150012259800801402a264b30010018cc004036003130023039003403500e807403a01c81d0c0dc009035402d0331bac00180540290361819800a062375a002606400500740cc60600028170c0b0dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0cc00e00b00840c06eb400600e8198c0c000502e18161baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009819801c0160108180dd6800c01d0331818000a05c302c375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009819801c0160108180dd7000a066303000140b860586ea800e00a8149029205240a481490292052302a3754004911119191919912cc004c06003226644b3001301a302f375400313259800981098181baa0018acc004cdc79bae3034303137540026eb8c048c0c4dd5180818189baa301330313754007133225330313372c92010d63726564656e7469616c3a3a200037326601000291010013300f0020013756601c60626ea8080cdd2a4004660666ea40b12f5c1153302f49013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640b902940b8606660606ea8c0ccc0c0dd5180918181baa30333030375400302740b4660046eb0c040c0b8dd500e815198009bac3031302e375403a037159800980f00645660026030605a6ea806a330013031302e37546062605c6ea806a6eb0c034c0b8dd500ecc0c4c0c8c0c8c0c8c0c8c0c8c0c8c0c8c0b8dd500ecdd5980598171baa01d48888c8cc00400401488c966002603e00313301a006375c6070606a6ea800a2b30013025001899198008009bac30393036375400644b30010018a518acc004cc014014c0e8006266004004607600314a081a1038456600260400031323300100137586072606c6ea800c896600200314a115980099802802981d000c528c4cc008008c0ec00503420708acc004cdc3a400c003132337126eb4c0e4004c8cc004004dd6181d181d801112cc0040062900044cc896600266010010005133700002900144005037181d80099801001181e000a0723035375400515980099b87480200062646644b30013028303737540051598009814181b9baa303b303c003899b89375a607660706ea8008006266e20dd6981d981c1baa00200140d514a081a8c0e4004dd6981c981b1baa00330353754602e606a6ea80162b30013370e9005000c4c8cc89660026050606e6ea800a2b3001302830373754607660780071337120026eb4c0ecc0e0dd500144cdc40009bad303b3038375400481aa2941035181c8009bad303930363754006606a6ea8c0e0c0d4dd5002c4cc044010cdd2a40046606e6070606a6ea80092f5c08191032206440c8819103218199baa001409102b45660026030605a6ea806a330013031302e37540353300237586020605c6ea80740aa660026eb0c0c4c0b8dd500e80da444b3001301b303037540031323259800981198191baa0018acc0056600330013371e6eb8c050c0ccdd5180918199baa3015303337540086eb8c0d8c0ccdd5000d28528a0608a518cc004cdc79bae30363033375400805d4a14a2818103044c966002603c60666ea8006264b3001301f30343754003132598009810181a9baa0018992cc004cdd7981d181b9baa001302033039302033039303a3037375400897ae0330394c103d87a80004bd704660026eacc064c0dcdd5000cc064c0dcdd5180c981b9baa0069119b89337020026eb4c0f0c0f4c0f4c0f4c0e4dd50140012444b30010028a508994c004c966002604c60766ea800626eb4c0f0c0fcdd5981f981e1baa0018a400081c8c0f80066ebcc0f8c0fc0066eac00d22259800800c566002600400d13300500348002294103b44c96600266ebcc0f80053010140008acc004cc018010dd6981f98211bab303f001898019ba630430028a5040f11598009980300224001130030078a5040f081e0c10400503f0ca6002003004911981f8011981f9ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0f40066eacc0f800660840069112cc004cdc8a441000038acc004cdc7a441000038998029815198219ba60024bd70000c4cc015300103d87a800000640f919800803c006446600e0046608a66ec0dd48029ba6004001401c81f0608000481f229422942294103f22941034181c981b1baa0018a9981a2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640cc65300130010019bad3039303637540053758602e606c6ea80952225980099b8800248002298103d87a8000899801800801206c1112cc00400a298103d87a80008acc004c0880062604266074607600497ae08cc00400e60780053018001400c81a9039454cc0cd24014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640c86530010019bac303830353754049480010011112cc00400a298103d87a80008acc004cdd7981d00100344c080cc0e4dd4000a5eb8233001003981d8014cdc0000a4004801903420708a99819248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640c4606c60666ea80162a660629201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c102b40c0606a60646ea8c0d4c0c8dd5180a18191baa00130343031375400302840b8812205640ac815888c96600200313259800980d18179baa0028992cc00400605513259800800c0ae05702b815c4cc896600200302d8992cc0040062b300130390028acc004c07cc0d0dd5000c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c96600200304282144cc89660020030448992cc0040062b300130500028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c12cdd500344c9660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b3001001826c13609b04d899912cc00400609f13259800800c1420a105082844c96600260b800713303b00f22598008014566002608860b26ea803e264b300100182a44c96600200313259800800c15a264b30010018acc004c18800a330010038992cc004c124006264b300100182cc4c966002003159800983280144c966002609800313259800800c172264b30010018acc004c1a000a3300100181ac17504c417506541760bb05d82ea0d23066001419060c46ea800a2b300130520018992cc0040060b913259800800c1760bb05d899912cc0040060bf13259800800c1820c1060899912cc0040060c513259800800c18e0c70638992cc004c1bc00e07906441b06eb40060c68378c1b000506a1bad001306b00283020d83069001419c6eb4004c1a000a0ba8348c19800506418311baa00282da0be417c60c06ea80060b483120b505a82d41690661831800a0c2305f37540051598009827800c56600260be6ea800a0610584181058417082e0c174dd5000c15d046415d05f415e0af05782ba0c63060001417860c000505582ac1560aa8308c17800505c182d1baa00f829a0ae8992cc0040062b30013045305a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130680038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001306d003898081836808c18906a1bae00141b460d40028340dd7000983480420d43067007419505d41946eb40060b88340c1940050631bad001306400282ca0ca306200141806eb0004c18400a0ad056418860be00282e8c16cdd5000c15105841520a905482a20c0305d002416d05141646eb800505c182c800a0ae375c00260b000482c8c1580050541bae0013055002415860a60028288dd7000982900120a63050001413860986ea801a08a824a08a812208a812208a812208a812208a812208a812208a812208a812208a826a08b045822c1150511827000a0983758002609a005042821209c304b0014124609600504082041020808260c124005047182480140fa07d03e81f209430470014114608e00503c81e40f20788240c114005043182280140ea07503a81d208c30430014104608600503881c40e20708220c10400503f182080140da06d03681b2084303f00140f4607e00503481a40d20688200c0f400503b181e80140ca065032819207c303b00140e4607600503081840c206081e0c0e4005037181a9baa0018172064817206c81740ba05d02e40e8606e00281a8dd7000981b001206e303400140c860606ea800a0528168400605102881440a103429981619b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea400522010013259800980c98171baa00189929981719b9649113666f756e642070726f7879207574786f3a3a200037326600a00291010013259800980e18181baa0018992cc0040062b3001301c3031375400313259800800c0b6264b300100181740ba05d02e899912cc00400606113259800981d8014401a06281c0c0e40050371bae001303800240e4606c00281a0c0c8dd5000c0b102f40b205902c816206e303430313754003153302f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b8602260606ea8c048c0c0dd5000981918179baa0018a99816a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640b06601200446602860126eacc044c0bcdd5180898179baa001002223300900223375e6064605e6ea8004008c004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101620665980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c816902d1bac3030002375a605c0026466ec0dd418170009ba7302f001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6066003337149101023a200098008054c0d000600a805100a181b00144ca6002015303300199b8a489023a200098008054c0d0006600e66008008004805100a181b0012068303600140cc66e29220102207d0000340c06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901320603758007133005375a0060051323371491102682700329800800cc040dc68014cdc52450127000044004444b30013371000490004400626466453001006980a802ccdc599b800025980099b88002480522903045206e40c866e2ccdc0000acc004cdc4000a4029148182290372064004401866e0c00520203370c002901019b8e00400240bc6eb800d0331b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340a88150301637540126e1d2004370e9000402a01500a80520343016001301630170013012375400716403c3011001300c3754025149a2a6601492011856616c696461746f722072657475726e65642066616c7365001365640241\"\n :\n \"590c060101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758601460446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8ca6002606c003303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c00491111111112cc004c10402e26603e608002a26603e01226603e01026603e00e26603e00c26603e00a26603e00826603e0062b30013030303c375400513232323298009bae30440019bae30440049bae30440039bae30440024888966002609200b133030009225980080145660026074608c6ea80522646464b3001304e00289981c18268018992cc004c0f8006264b30013050001899192cc004c104006264b3001305300189981e982900081645905018271baa0028acc004c11400626464653001375a60a8003375a60a8007375a60a80049112cc004c16001206316415430540013053001304e37540051641308260c130dd50009827800c5904d18259baa0028acc004c1080062b3001304b37540050288b20988b2092412460926ea80062c8258c130004c130004c11cdd500a45904544c9660026076608e6ea800626464646644b300130510038991919912cc004c15400e2601660aa0191641486eb8c148004dd7182900118290009bac30500058b209c375a609c0026eb4c138008c138004c134004c120dd5000c59046182500120908b208c182200098218009821000981e9baa0028b20768b207c181b000981a800981a000981980098190009818800981800098178009817000981680098141baa0018b204c302a0018b2050375c6050002605200260486ea800a2c81104004c966002602c60446ea8006264b300130183023375400313259800980c18121baa0018991919912cc004c0b400e200b1640a860540026eb8c0a8008c0a8004c094dd5000c59023181398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601\",\n Type.Tuple([\n PolicyId,\n ScriptHash,\n ]),\n [\n proxyPolicyId,\n protocolScripthash,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1OrderOrderElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5917090101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99802249286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d65725631001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b30010078999119912cc004c00c0062b30013019375401700280720348acc004c0240062b30013019375401700280720348acc004c0100062b3001301937540170028072034807202c405880b0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009811001c01a00a80f8dd7000a044301f001407460366ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026044007006802a03e375c0028110c07c00501d180d9baa0048012030406060326ea800e44b30010018a5eb822660366030603800266004004603a00280d2444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80ba44646600200200644b30010018a508acc004cdc79bae301e0010038a51899801001180f800a0304071222232330010010052259800800c4016264b3001001899802181080100344cc014c084008cc00c00c00501f1810800a03c9119198008008019119801800980100148c06cc070006460366038603800337009000c8c06cc070c070c070c070c070c070c070c070006602c6ea8026460366038603860386038603860380032232330010010032259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c24444444444444530012232330010010032259800800c530103d87a80008992cc004c010006260266605800297ae08998018019817001204e302c00140a9300c00c9805805c888ca6002003004801a0022223259800980b000c4c9660020030068992cc00400600f007803c01e264b30013033003802c0210301bae00140cc60600028170c0b0dd5001c566002603800313259800800c01a264b3001001803c01e264b30013033003899809000912cc00400a00f13259800800c6600201500189801181b001a014805c02e01700b40dc606800481920108180dd6000c01e00e8198c0c000502e18161baa0038acc004c05c006264b300100180344c966002003007803c4c96600260660071330120012259800801401e264b30010018cc00402a003130023036003402900b805c02e01681b8c0d000903240210301bac001803c01d0331818000a05c302c375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002606c0071330150012259800801402a264b30010018cc004036003130023039003403500e807403a01c81d0c0dc009035402d0331bac00180540290361819800a062375a002606400500740cc60600028170c0b0dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0cc00e00b00840c06eb400600e8198c0c000502e18161baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009819801c0160108180dd6800c01d0331818000a05c302c375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009819801c0160108180dd7000a066303000140b860586ea800e00a8149029205240a481490292052302a3754004911119191919912cc004c06003226644b3001301a302f375400313259800981098181baa0018acc004cdc79bae3034303137540026eb8c048c0c4dd5180818189baa301330313754007133225330313372c92010d63726564656e7469616c3a3a200037326601000291010013300f0020013756601c60626ea8080cdd2a4004660666ea40b12f5c1153302f49013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640b902940b8606660606ea8c0ccc0c0dd5180918181baa30333030375400302740b4660046eb0c040c0b8dd500e815198009bac3031302e375403a037159800980f00645660026030605a6ea806a330013031302e37546062605c6ea806a6eb0c034c0b8dd500ecc0c4c0c8c0c8c0c8c0c8c0c8c0c8c0c8c0b8dd500ecdd5980598171baa01d48888c8cc00400401488c966002603e00313301a006375c6070606a6ea800a2b30013025001899198008009bac30393036375400644b30010018a518acc004cc014014c0e8006266004004607600314a081a1038456600260400031323300100137586072606c6ea800c896600200314a115980099802802981d000c528c4cc008008c0ec00503420708acc004cdc3a400c003132337126eb4c0e4004c8cc004004dd6181d181d801112cc0040062900044cc896600266010010005133700002900144005037181d80099801001181e000a0723035375400515980099b87480200062646644b30013028303737540051598009814181b9baa303b303c003899b89375a607660706ea8008006266e20dd6981d981c1baa00200140d514a081a8c0e4004dd6981c981b1baa00330353754602e606a6ea80162b30013370e9005000c4c8cc89660026050606e6ea800a2b3001302830373754607660780071337120026eb4c0ecc0e0dd500144cdc40009bad303b3038375400481aa2941035181c8009bad303930363754006606a6ea8c0e0c0d4dd5002c4cc044010cdd2a40046606e6070606a6ea80092f5c08191032206440c8819103218199baa001409102b45660026030605a6ea806a330013031302e37540353300237586020605c6ea80740aa660026eb0c0c4c0b8dd500e80da444b3001301b303037540031323259800981198191baa0018acc0056600330013371e6eb8c050c0ccdd5180918199baa3015303337540086eb8c0d8c0ccdd5000d28528a0608a518cc004cdc79bae30363033375400805d4a14a2818103044c966002603c60666ea8006264b3001301f30343754003132598009810181a9baa0018992cc004cdd7981d181b9baa001302033039302033039303a3037375400897ae0330394c103d87a80004bd704660026eacc064c0dcdd5000cc064c0dcdd5180c981b9baa0069119b89337020026eb4c0f0c0f4c0f4c0f4c0e4dd50140012444b30010028a508994c004c966002604c60766ea800626eb4c0f0c0fcdd5981f981e1baa0018a400081c8c0f80066ebcc0f8c0fc0066eac00d22259800800c566002600400d13300500348002294103b44c96600266ebcc0f80053010140008acc004cc018010dd6981f98211bab303f001898019ba630430028a5040f11598009980300224001130030078a5040f081e0c10400503f0ca6002003004911981f8011981f9ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0f40066eacc0f800660840069112cc004cdc8a441000038acc004cdc7a441000038998029815198219ba60024bd70000c4cc015300103d87a800000640f919800803c006446600e0046608a66ec0dd48029ba6004001401c81f0608000481f229422942294103f22941034181c981b1baa0018a9981a2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640cc65300130010019bad3039303637540053758602e606c6ea80952225980099b8800248002298103d87a8000899801800801206c1112cc00400a298103d87a80008acc004c0880062604266074607600497ae08cc00400e60780053018001400c81a9039454cc0cd24014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640c86530010019bac303830353754049480010011112cc00400a298103d87a80008acc004cdd7981d00100344c080cc0e4dd4000a5eb8233001003981d8014cdc0000a4004801903420708a99819248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640c4606c60666ea80162a660629201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c102b40c0606a60646ea8c0d4c0c8dd5180a18191baa00130343031375400302840b8812205640ac815888c96600200313259800980d18179baa0028992cc00400605513259800800c0ae05702b815c4cc896600200302d8992cc0040062b300130390028acc004c07cc0d0dd5000c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c96600200304282144cc89660020030448992cc0040062b300130500028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c12cdd500344c9660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b3001001826c13609b04d899912cc00400609f13259800800c1420a105082844c96600260b800713303b00f22598008014566002608860b26ea803e264b300100182a44c96600200313259800800c15a264b30010018acc004c18800a330010038992cc004c124006264b300100182cc4c966002003159800983280144c966002609800313259800800c172264b30010018acc004c1a000a3300100181ac17504c417506541760bb05d82ea0d23066001419060c46ea800a2b300130520018992cc0040060b913259800800c1760bb05d899912cc0040060bf13259800800c1820c1060899912cc0040060c513259800800c18e0c70638992cc004c1bc00e07906441b06eb40060c68378c1b000506a1bad001306b00283020d83069001419c6eb4004c1a000a0ba8348c19800506418311baa00282da0be417c60c06ea80060b483120b505a82d41690661831800a0c2305f37540051598009827800c56600260be6ea800a0610584181058417082e0c174dd5000c15d046415d05f415e0af05782ba0c63060001417860c000505582ac1560aa8308c17800505c182d1baa00f829a0ae8992cc0040062b30013045305a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130680038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001306d003898081836808c18906a1bae00141b460d40028340dd7000983480420d43067007419505d41946eb40060b88340c1940050631bad001306400282ca0ca306200141806eb0004c18400a0ad056418860be00282e8c16cdd5000c15105841520a905482a20c0305d002416d05141646eb800505c182c800a0ae375c00260b000482c8c1580050541bae0013055002415860a60028288dd7000982900120a63050001413860986ea801a08a824a08a812208a812208a812208a812208a812208a812208a812208a812208a826a08b045822c1150511827000a0983758002609a005042821209c304b0014124609600504082041020808260c124005047182480140fa07d03e81f209430470014114608e00503c81e40f20788240c114005043182280140ea07503a81d208c30430014104608600503881c40e20708220c10400503f182080140da06d03681b2084303f00140f4607e00503481a40d20688200c0f400503b181e80140ca065032819207c303b00140e4607600503081840c206081e0c0e4005037181a9baa0018172064817206c81740ba05d02e40e8606e00281a8dd7000981b001206e303400140c860606ea800a0528168400605102881440a103429981619b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea400522010013259800980c98171baa00189929981719b9649113666f756e642070726f7879207574786f3a3a200037326600a00291010013259800980e18181baa0018992cc0040062b3001301c3031375400313259800800c0b6264b300100181740ba05d02e899912cc00400606113259800981d8014401a06281c0c0e40050371bae001303800240e4606c00281a0c0c8dd5000c0b102f40b205902c816206e303430313754003153302f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b8602260606ea8c048c0c0dd5000981918179baa0018a99816a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640b06601200446602860126eacc044c0bcdd5180898179baa001002223300900223375e6064605e6ea8004008c004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101620665980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c816902d1bac3030002375a605c0026466ec0dd418170009ba7302f001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6066003337149101023a200098008054c0d000600a805100a181b00144ca6002015303300199b8a489023a200098008054c0d0006600e66008008004805100a181b0012068303600140cc66e29220102207d0000340c06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901320603758007133005375a0060051323371491102682700329800800cc040dc68014cdc52450127000044004444b30013371000490004400626466453001006980a802ccdc599b800025980099b88002480522903045206e40c866e2ccdc0000acc004cdc4000a4029148182290372064004401866e0c00520203370c002901019b8e00400240bc6eb800d0331b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340a88150301637540126e1d2004370e9000402a01500a80520343016001301630170013012375400716403c3011001300c3754025149a2a6601492011856616c696461746f722072657475726e65642066616c7365001365640241\"\n :\n \"590c060101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758601460446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8ca6002606c003303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c00491111111112cc004c10402e26603e608002a26603e01226603e01026603e00e26603e00c26603e00a26603e00826603e0062b30013030303c375400513232323298009bae30440019bae30440049bae30440039bae30440024888966002609200b133030009225980080145660026074608c6ea80522646464b3001304e00289981c18268018992cc004c0f8006264b30013050001899192cc004c104006264b3001305300189981e982900081645905018271baa0028acc004c11400626464653001375a60a8003375a60a8007375a60a80049112cc004c16001206316415430540013053001304e37540051641308260c130dd50009827800c5904d18259baa0028acc004c1080062b3001304b37540050288b20988b2092412460926ea80062c8258c130004c130004c11cdd500a45904544c9660026076608e6ea800626464646644b300130510038991919912cc004c15400e2601660aa0191641486eb8c148004dd7182900118290009bac30500058b209c375a609c0026eb4c138008c138004c134004c120dd5000c59046182500120908b208c182200098218009821000981e9baa0028b20768b207c181b000981a800981a000981980098190009818800981800098178009817000981680098141baa0018b204c302a0018b2050375c6050002605200260486ea800a2c81104004c966002602c60446ea8006264b300130183023375400313259800980c18121baa0018991919912cc004c0b400e200b1640a860540026eb8c0a8008c0a8004c094dd5000c59023181398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601\",\n Type.Tuple([\n PolicyId,\n ScriptHash,\n ]),\n [\n proxyPolicyId,\n protocolScripthash,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolManagementProtocolManagementWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"594460010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888888896600264653001301c001980e180e800cdc3a4009301c0024888966002600460386ea800e330013020301d3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b874803246042604400323021302230220019b80480066e05200091810981118111811181118111811181118111811000cdd2a4004911111111111111194c004889660026020605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c054006264b3001001803c4c966002003159800981d80144c966002603000313259800800c02a264b30010018acc004c0f800a33001001806402d00e402d03b402e01700b805a07e303c00140e860706ea800a2b300130170018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11400e02701241086eb40060228228c1080050401bad00130410028072084303f00140f46eb4004c0f800a01681f8c0f000503a181c1baa002804a06a40d4606c6ea800601081c2011008804402103c181c800a06e30353754005159800980a000c566002606a6ea800a00f00640d900640c88190c0ccdd5000c0150084015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c96600260760070058042070375c00281d8c0e0005036181a1baa0038acc004c04c006264b300100180344c966002003007803c4c96600260760071330180012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0ec00e26603000244b3001002803c4c96600200319800805400626004607c006805201700b805c02d03f181e001207480420703758003007803a076303800140d860686ea800e2b300130120018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981f001c4cc06c004896600200500a8992cc0040063300100d800c4c008c10400d00d403a01d00e8072084303f00240f500b40ec6eb000601500a40f8607600281c8dd6800981d001401d03b181c000a06c303437540071598009808800c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002602000313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009807800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c015031206240c48189031206240c460646ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260286606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980a981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301a0018acc004c0e8dd5001401e00c81da2b300130190018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026038003159800981e1baa006804c02103d4566002603600313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783019303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002602a60686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c058006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130150018acc004c0d8dd5002400e00481ba0048199033181a1baa00348888cc89660026030606e6ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009821801c566002603e607c6ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013053002899818007112cc00400a26606401a44b30010028cc00401e330010058992cc004c0d0c14cdd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982e00144cc8966002607400313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252052825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0e4006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a504a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981f800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b300130380018992cc00400608b13259800800c11a08d132598009830801c4cc0f800489660020050078992cc00400633001001898011832001c129029412a09504a82520ca3062002418104741786eb000608d046418460bc00282e0c168dd5002c566002606e00313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252054825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a904a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981a800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea801608882b905720ae415c82b905720ae415c264b300130390018992cc00400608913259800800c56600260be00519800800c02208a813a08a82e208b045822c115060182e800a0b630593754005159800981c000c4c9660020030448992cc0040062b3001305f0028acc004c0ecc168dd5000c4c9660020030468992cc004006264b300100182444c966002003159800983180146600200719800800c032092816209281620928302093049824c1250641830800a0be3061002823c11e08f047418860be00282e8c16cdd5000c115058411505c411608b045822a0c0305d001416c60b26ea800a08682b1056182b9baa001305737540070424165042821410a08482e8c168005058182d001410208104082020b63058001415860a86ea806607c82884cc0d0054896600200519800982c182a9baa302f30553754049230353055375460b2646600200200444b30010018a5eb8503d87a80008101800044c8cc89660033001303a305a375460bc0074a14a282c22660bb30014a14c103d87a8000a60103d87980004160660ba6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18000400e294626600400460c200282d105e44cc176600294298103d87a8000a60103d87980004160660ba6e9c0092f5c113305d9800a51a60103d87a8000a60103d87980004160660ba6e9ccc174dd400080125eb8105820b0375860b860ba0026eb4c170008cc008008c17000505948888ca6002003005802400d00111112cc00400e2b30010028800c54cc16d24112657870656374205b5d203d206c6973745f6200164179159800801454cc16d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c20073061002cc004c18000e6eb4c18000a002802900420bc41792232330010010032259800800c52f5c1133225980099baf305e305b375460bc60b66ea8c0d4c16cdd500118181982e9ba90054bd7044cc174008cc01001000626600800800282c0c170004c17400505a4dc02400523059305a305a305a305a305a305a305a305a0019112cc00400a2980103d87a80008acc004c0e000626074660b460b600497ae08cc00400e60b80053030001400c82a9059488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd5982d800982e800a0b614bd6f7b630488966002607060ae6ea800e264b300100180144c966002003003801c00e264b3001305f003802c01105c1bad001801a0be305c001416860b06ea800e00282aa460b260b460b460b40032232330010010032259800800c52f5c113305b374e600660b80026600400460ba00282d2444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c17c0066eb4c1800066600600660c80048048c1880050601bab305d003375c60b40026600600660be00460ba00282da44646600200200644b30010018a508acc004cdd7982e0009ba70038a51899801001182e800a0ac416922259800981c182b9baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c96600200313259800800c022264b300130640028cc00401e330010058992cc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b300130400018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009835801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009838001c05a02a8368dd7000a0e0306d00141ac6eb8004c1b000906d1835000a0d080820d0375800300f807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c118006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c96600200301280944c96600260dc007159800800c04e264b300100180a4052029014899912cc00400602d13259800800c05e02f01780bc4c96600260e600701980c20e0375c0028398c1c000506e1bae001306f00241c060da002835a0268358dd6000c04a0248370c1ac0050691bad001306a002807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0fc006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b3001303e0018992cc00400601713259800800c03201900c8992cc004c1a000e01d00d41946eb40060188340c19400506318309baa0048acc004c0f4006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306b003808c0410681bad001807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0f0006264b3001001805c4c96600200300c8064032264b3001306800380740350651bad00180620d03065001418c60c26ea80122b30013370e9007000c4c96600200300b8992cc00400601900c80644c96600260d000700e806a0ca375a00300c41a060ca0028318c184dd5002402905e20bc417882f105e20bc417882f0c17cdd5001c02502e402503240250611831000a0c03062002803c01e00f007418c60c000282f0c18000a00b005802c015061182f000a0b8305e002801c00e007003417c60b800282d0c160dd5001c00505548c164c168c168c168c168006444653001001802400d0011112cc00400a200319800801cc17c00a6600860bc004002801905c4dc424000911111111111111114c004c194dd5008c88966002602600519800801c00a900048896600260080071337000026eb4c118c1b0dd5001c54cc1a924011a6578706563742076616c69646174696f6e287265717565737429001641a480922a660ce9212e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641992259800800c5200089807998010011836000a0d291808800c89660020031480022601e6600400460d8002834a6016017222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906c44cc014014c1cc01106c1bae306c001375a60da00260de0028368cc03801000c5200048888888ca6002444464b30013053307237540031325980099baf30773074375460ee60e86ea8c138c1d0dd500098249983b1ba90054bd70456600260a730013756609c60e86ea8c138c1d0dd5000c01691108747265617375727900402113259800982d183a1baa0018992cc004006330010018992cc004c15cc1d8dd5000c4c96600266ebcc1ecc1e0dd5183d983c1baa001304d3307a375201297ae08acc004c15e60026eacc148c1e0dd5000c026910108747265617375727900403113259800982f183c1baa0018992cc004006330010018acc004cdd7980e183d1baa0034c103d87a800089983e0029983e0009983e1ba6329800800cdd5982a983d9baa00499198008009bab3056307c375460ac60f86ea8024896600200314bd6f7b63044c8cc20004cdd8183e8009ba63233001001375660fe00444b30010018a5eb7bdb182264661060266ec0c20004004dd4182c1bad308101001330030033085010023083010014204046600600661040200461000200283f10011112cc00400a2003132332298008034c21004016646600200200a44b30010018998420099bb037520086e9800d2f5bded8c113298009bae3082010019bab3083010019843808012444b30013372001000713308801337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528211002880144cc22404cdd81ba9009374c002004842008ca6002003008801a002222598008014400626466453001006984800802cc8cc004004014896600200313309001337606ea4010dd4001a5eb7bdb1822653001375c611c02003375a611e0200330930100248896600266e4002000e2661280266ec0dd48041ba80070058acc004cdc7804001c4c96600260e6003100289984a8099bb037520126ea00040090900119b8000700289984a0099bb037520066ea0008cc01801800508f01211e02184880800a11e0240186eb8c22404004dd69845008009846008012114028998440099bb037520066e98008cc01801800508301210602184280800a1060240186eb8c1f4004dd5983f00098400080120fc4bd7041bd07741b901d41ba0dd06e83720fe307c30793754003153307749012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641d860a260f06ea80062a660ec920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641d5153307649143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641d460f460ee6ea80062a660ea92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641d0660126eb0c13cc1d8dd5004002c1a501941a60d3069834a0f6307830753754003153307349013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641c8609a60e86ea8c138c1d0dd5000c54cc1c92401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c515330724914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c460ec60e66ea80062a660e292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641c06600a6eb0c1d4c1c8dd50020014c010012600c00c9112cc004c13c02e33001375860e860e26ea8072444b300130543073375400713259800800c00a264b3001001801c00e00713259800983d801c01600883c0dd6800c00d07b183c000a0ec3074375400700141c5222225980099b87300600530060048acc004c03400e266e24006600200b003a40012223259800982d183c9baa001899912cc004c184c1ecdd5000c4c96600200319800800c56600266ebcc07cc1f4dd5001984000983e9baa0078acc004cdd7982b983e9baa001308001307d3754007132598009831983e9baa001899192cc004cdc39bad308301002375a60b46100026ea801a2b30013370e6eb4c20c04004dd6982c9840009baa0068acc004cdd7984180984200800980e9840009baa006899b8000898009bab305a308001375460b46100026ea802a6eb8c20c040326eb8c20c04c21004031014454cc1f92413665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001641f5153307e49126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001641f5153307e4912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001641f461060200260fc6ea80062a660f8921184578706563746564204f4465706f73697420616374696f6e001641ec60ac60fa6ea80060ec83d20ea83d20e880da0e907483a41d108201183f983e1baa00183920f2307d307a375400260a660f46ea8c150c1e8dd500241a107719806003801203e831a0e683120e691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307f307c375460fe0046eb4c1fcc1f0dd5183f80180244c9660033001002a5191112cc0040062b30013371e008911008a5189981000299841809ba90043308301375200697ae041f914a083f101d44cdc4803cc004dd61829983e9baa00ca400122323259800980e000c4cdc000199b83337040026eb4c16cc20404dd50021bad305a3081013754009100341f930010059bae3083010019bae30830130840100140506eb0c20804c1fcdd5001203283720f43301d375860a460f86ea802c8dd6184000983e9baa00183720f2375660fc60fe00260fc00330010079bae307c30793754603e60f26ea802200d005402d1533077490123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641d8b3001305830090018a4001159800800c19e264b3001307d0028992cc004cdc79bae307900248810455534472008800c1a90771bad307900183420f4307b00141e483a8cc06cdd5980a183b9baa005375c60a260ee6ea8c074c1dcdd50034c1d0c1c4dd50204c12cc1c4dd5020a4444446644b300159800980a0014528c6600260b20034a14a283b107644c96600260b460f26ea80062646644646644b30013060307f37540031325980099b87337026eb4c210040040180122b30013370e6eb4c21004c21404004dd6984200984280803c56600266e2520000098acc0066002660526eb0c21004c20404dd50329bae305a3081013754604e6102026ea802e021375860b66102026ea8032661060260b66102026ea8c09cc20404dd50059984180a61054455534472004bd7052000403915980099b890033233001001375860b66104026ea8198896600200314800226644b30013375e611002610a026ea8008c22004c22404c22404c22404c22404c22404c22404c22404c22404c22404c22404c21404dd5007c4cdc0000cc004dd5982f9842809baa0029bae305f30850137546056610a026ea803e910104555344720040651001420804610c0200266004004610e0200284200a3300100b832cdd6982d1840809baa00c9bad3023308101375401900999b8000a0094035153307f49012b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641f9153307f4919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001641f9159800cc004cc0a4dd61842009840809baa065375c60b46102026ea8c09cc20404dd5005c0426eb0c16cc20404dd50064cc20c04c16cc20404dd518139840809baa00b33083014c1054455534472004bd704c16000d00e4660020170659bad305a3081013754019375a60466102026ea803201300a4035153307f491b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641f883f22a660fe9213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641f9153307f4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641f865300133014001375a6108026102026ea800a6eb8c16cc20404dd518139840809baa00b9bae30233081013754604e6102026ea802d2225980098321841809baa0038992cc004cdd79844009842809baa308801308501375400260b46610e026ea40092f5c115980098324c004dd5982f9842809baa00180152210d7374616b696e675f7661756c740040651325980098359842809baa0018992cc004006330010018acc004cdd798149843809baa0034c103d87a8000899844809ba898009bab30613087013754007005a441045553447200406c6611202611402610e026ea8004cc2240400d2f5c107c4210050810140550810184080c2040610202846008c22404c21804dd5000c54cc2100524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016420c0460bc610a026ea80062a661060292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642080515330830149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016420804610e026108026ea800e2a661040292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f696478290016420404375860b26100026ea81922a660fc92013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641f466e04018004c20404c20804c20804c20804c20804c20804c1f8dd5004acc004c060006266e10cdc1002801000c5200041e86eb4c1f8004dd6983f183d9baa307e980082fcdd7183f183d9baa3021307b375400b375a60a860f66ea801a6eb4c074c1ecdd5003201a329800998070009bad307e307b3754005375c60aa60f66ea8c084c1ecdd5002cdd7180e983d9baa3021307b375400a9112cc004c178c1f4dd5001c4c96600266ebcc20804c1fcdd5184100983f9baa3059307f375400260a866102026ea40092f5c1159800982f4c004dd5982c983f9baa3059307f3754003002a4410d7374616b696e675f7661756c7400404d132598009832983f9baa0018992cc00400633001001899841809ba898009bab305b308101375460b66102026ea800e00b489045553447200405466106026108026102026ea8004cc20c0400d2f5c107b403d07b83dc1ee0f6843008c20c04c20004dd5000c1d907d182c183f9baa3059307f3754003153307d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f1153307d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f061020260fc6ea800e2a660f892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ec375860fa60f46ea817a2a660f092013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641dc602c60f26ea80122a660ee92012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641d930010069bac307a3077375400523371290001bad3052307837540028082600200d480024466e00004dd69829183c9baa002404c8acc004c15802e33001375860e860e26ea8072444653001001802400d0011112cc00400a2b30010018a518a5041e1159800800c52845660026600860f40046eb4c1e800633001003983d8014c1ec005003452820e841e083c244b30010018a40011301a33002002307700141d1223370666e08008dd6982618399baa001375a609a60e66ea800660e860e26ea8102609660e26ea8105222222325980099914c004c8cc00400400c896600200314a115980099baf307f307c375460fe60f86ea8c158c1f0dd5183f80098289983f1ba90034bd704528c4cc008008c2000400507920faa50a5141dc6eb0c1ecc1e0dd502e1bae301a30783754603c60f06ea800a2b300133225980099b87300a002300a0098acc004c04400633001002800c88c96600260ba60f86ea800626464b3001305d307e37540031325980099b87375a6106020026eb4c168c20004dd5001c4cdd7984180984200800980e9840009baa0038a5041f460fe6ea8006294107c182b983f1baa32598009832183f1baa0018992cc004006330010018acc004cdd798111840009baa003308301308001375400d15980099baf305a30800137540026106026100026ea800e200307941f507841f5077407907783bc1de0ee842808c20804c1fcdd5000c1d507c182b983f1baa3058307e375400861000260fa6ea80060d683d0cc03c02c005008419d0774199077198101bac307b307837540b86eb8c144c1e0dd5180f183c1baa002375860a460f06ea800e2b300198009bac3051307837540b9375860f660f06ea800e6eb0c138c1e0dd50012444b30013370e6008004601601519800805400a4464b3001305e307d375400319800984080983f1baa0019bac301b307e3754007323305000523375e6106026100026ea8004dd38011bac301b307e37540069112cc004c184c20004dd5000c56600266ebcc21004c20404dd50019842009840809baa308401308101375400d15980099baf305a308101375400660b66102026ea8c21004c20404dd500344cdc3cc004dd5982d9840809baa0039bae3084010029bae30840130850100240546601a64b300133710002900044c164006200283f8dd6982d9840809baa006308401308101375400314a083f2294107e454cc1fd24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641f88a9983e2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641ec6602000a002804a2a660f292013b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e67746828726571756573747329001641e08982c4c006600200f375860f660f06ea800e4b30013014375a60a660f26ea8006260b26eb4c148c1e4dd5000c52820ec40453301c3756602a60f06ea8170dd71829183c1baa301e30783754005980082e4dd7183d983c1baa301e30783754005375a60a260f06ea800e6eb4c068c1e0dd5001a0149980c9bac304e3078375400446eb0c1f0c1e4dd5000a44446530013080010019bab308001308101001984000801d6600260ba601c0091480022b300100483644c96600261040200b1325980099b8f375c60fc0049110455534472008800c1bd07c1bad307e001836a0fe30800100441f883d1222259800cc00400e9464444b30010018acc004cdc78022441008a5189981200519843809ba90043308701375200697ae042080514a0841009021456600266e1ccdc09bad30840130810137540086eb4c21004c20404dd5001000c4c96600266e1e60026eb0c160c20804dd5006520009119912cc006600260cc0034a14a284180a264b3001337126602600200b30010099bae308a010039bae308a01308b01003406d1337000080031533085014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642100466e080040162006841808dd61843809842009baa00232980080a52000912cc004cdd798121843809baa002374e0071337000026eb4c184c21c04dd5001440050840120423758610e026108026ea800901e19b8100200a8801454cc200052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641fcb3001301c0098a400314800907e41cd07e41c907e0c2000400915330764901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641d51533076491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641d5153307649142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641d460080088a5041b8837044b300133710002900045300103d87a8000899802001000a0d82264b30010018204102264b3001001820c4c966002003042821410a0851332259800800c112264b30010018acc004c17c00a264b3001303c305b375400513259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc00400609904c8264132264b300130670038acc004c10cc188dd500344c96600200304e8992cc00400609f04f827c13e26644b3001001828c4c966002003052829414a0a5132598009836801c4c966002609400313259800800c156264b300100182b415a0ad0568992cc004c1c400e02505741b86eb80050711837000a0d8306a37540171598009824800c56600260d46ea802e01f05441ad054419c8338c1a0dd5005414d06a1bae00141b460d40028340dd7000983480120d43067001419460c66ea801a09a830209a8320dd7000a0ce3064001418860c800504a825412a0948328c1880050601831001412209104882420c63060001417860b86ea800a08c82c84c01cc17c02208a82e208b045822c115060182e800a0b6375c00260b800482e8c1680050581bac001820410105b182c00120ac81ea03c81ea03c8992cc00400607d03e81f44c8c00cc164010dd6800c0f9059182b00120a88992cc00400607903c81e44c8c00cc15c010dd6800c0f1057182a00120a481ca0a081cc0e6073039415060a20028278c14400a06f03781bc0dd0521827800a09a375a002609c005034413c60980028250dd6800982580140c504c1824800a08e3758002609000502e8172092304600141106eb0004c11400a05702b411860860028208c0fcdd500340a503c40a50401bac00181440a10431820000a07c3040002813409a04d0264104607c00281e0c0f800a049024812409103f181e000a0743038375400f02240d4444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608e00719800804c6600200900c805a01e805a022805a088375a00300a411c60880028210c11000a01100880440210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d8444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c12800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13c00e02901341306eb800504f1826000a094375c00260960048260c1240050474039012403901440390471bac001806c03504a1823800a08a3047002805c02e01700b4120608a0028218dd6800982200140210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d880e407203901c40dc664464b30013014303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301833038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8054dd7181a18189baa0019800912cc004006297ae089981a1818981a80099801001181b000a0669112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206091111919800800802912cc004006200b13259800800c4cc010c0e800801a26600a60740046600600600281c0c0e80050374dd6180518181baa01448888c8c8c8cc88c966002003159800980d181c9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130430028acc004c07cc0f8dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305a0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c154dd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260cc00713304300f225980080146600201f102b827a06e8992cc0040062b300130453064375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130720038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307700389808183b808c1790741bae00141dc60e80028390dd7000983980420e8307100741bd05941bc6eb40060b08390c1bc00506d1bad001306e00282aa0de306c00141a86eb0004c1ac00a0a505241b060d20028338c194dd5000c14106241420a105082820d43067002419504d418c6eb80050661831800a0c2375c00260c40048318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a001416060ac6ea801a082829a0828142082814208281420828142082814208281420828142082814208282ba083041820c10505b182c000a0ac375800260ae00503e81f20b03055001414c60aa00503c81e40f207882b0c14c005051182980140ea07503a81d20a83051001413c60a200503881c40e20708290c13c00504d182780140da06d03681b20a0304d001412c609a00503481a40d20688270c12c005049182580140ca06503281920983049001411c609200503081840c20608250c11c005045182380140ba05d02e81720903045001410c608a00502c81640b20588230c10c005041181f9baa0018152078815208081540aa05502a4110608200281f8dd700098200012082303e00140f060746ea800604a81ba04b025812c09503f29981b99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40d522010013259800980d181c9baa00189929981c99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981d9baa0018992cc0040062b3001301d303c375400313259800800c0e6264b300100181d40ea07503a899912cc0040060791325980098230014401a07a8218c1100050421bae00130430024110608200281f8c0f4dd5000c0e103a40e207103881c2084303f303c3754003153303a49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640e4602860766ea8c054c0ecdd5000981e981d1baa0018a9981c24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640dc6601400c4646600200260066eacc054c0ecdd5180a981d9baa0022259800800c528456600266e3cdd7181f80081c4528c4cc008008c100005039207a300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c207e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81c90391bac303c002375a60740026466ec0dd4181d0009ba7303b001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a607e003337149101023a200098008054c10000600a805100a182100144ca6002015303f00199b8a489023a200098008054c100006600e66008008004805100a18210012080304200140fc66e29220102207d0000340f06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920783758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e40f866e2ccdc0000acc004cdc4000a402914818229037207c004401866e0c00520203370c002901019b8e00400240ec6eb800d03f1b8a4881022c20002232330010010032259800980c800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681b10361801801844464b300130100018992cc00400600713259800800c01200900480244c966002606e007006802a068375c00281b8c0d000503218181baa0048acc004c03c006264b3001001801c4c966002003004802401200913259800981b801c01a00a81a0dd7000a06e303400140c860606ea8012004816902d18171baa00345901a0c070004c05cdd500ec5268a9980aa491856616c696461746f722072657475726e65642066616c7365001365640501\"\n :\n \"5921fd010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480324601c601e0032300e300f300f00191807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c010006260226603c00297ae089980180198100012034301e001407122232598009807000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300d0018992cc004c0800062660206eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc040dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0300062646644b300130220018998091bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b3001300b001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260140031323259800981080140122c80f0dd6980f800980d9baa0038acc004c02400626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c03400626464b3001302000280245901d1bae301e001301a37540071598009806000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c030c060dd500144c8c8c966002604000513232598009808800c566002603c6ea800a00d16407d1598009808000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689807180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300c30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009806800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300c0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013017302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301b33028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c058c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980b18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980b98119baa003899191919912cc004c0b400e264b3001301d30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc0a4dd6181c005912cc00400a26605600c44b300100289980e80289980e8048992cc004c0b4c0e4dd500944c8c8c9660026082005132332259800981980144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038acc004c0c800a264b3001304500189981a9bac304400122598008014012266040608c00426002608e00482222c8210c100dd5001c5660026070005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b300130310028992cc004c11400626606a6eb0c1100048966002005004899810182300109800982380120888b208430403754007159800981800144c966002608a0031330353758608800244b300100280244cc084c1180084c004c11c00904445904218201baa0038acc004c0bc00a264b3001304500189981a9bac304400122598008014012266042608c00426002608e00482222c8210c100dd5001c566002605c005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b30013370e900700144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038b207c40f881f103e207c40f881f103e181e9baa001132598009819000c4c966002608800313302530430010078b2082303f37540071598009818800c4c966002608800313259800981a18201baa00189919192cc004c12000a266054608e006266054002017164114608c002608c00260826ea80062c81f8c10c0062c8208c0fcdd5001c5903d207a303d375400460800071640f8607e002607e00260746ea804a2c81c04cc0b4048896600200519800981f181d9baa3028303b37540352302e303b3754607e646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130333040375460880074a14a281fa26608730014a14c103d87a8000a60103d879800040fc660866e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11800400e2946266004004608e002820904444cc10e600294298103d87a8000a60103d879800040fc660866e9c0092f5c11330439800a51a60103d87a8000a60103d879800040fc660866e9ccc10cdd400080125eb8103f207e3758608460860026eb4c108008cc008008c10800503f48888ca6002003005802400d00111112cc00400e2b30010028800c590444660020093047003982380166002608c007375a608c00500140148021044488c8cc00400400c896600200314bd7044cc896600266ebcc110c104dd5182218209baa302e304137540046056660866ea40152f5c113304300233004004001899802002000a07e3042001304300141013700900148c0fcc100c100c100c100c100c100c100c100006444b30010028a6103d87a80008acc004c0c40062606666080608200497ae08cc00400e6084005337000029000a00640f081fa4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208289980280298238022082375c60800026eacc104004c10c0050410a5eb7bdb18244b30013030303c375400513232598009821801400e2c8200dd69820800981e9baa0028b20769181f982018201820000cdc0a40012232330010010032259800800c52f5c1133041374e600660840026600400460860028202444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1140066eb4c1180066600600660940048048c1200050461bab3043003375c608000266006006608a0046086002820a44646600200200644b30010018a508acc004cdd798210009ba70038a518998010011821800a07a410122598009818181e1baa0028991919194c004c110006608800730440024889660026090009133027304700713302400213259800981c000c4c8cc89660026098003132323322598009828001c0422c8268dd718268009bae304d002304d001375860960031641246eb4c124004c128004c114dd50014566002606e0031323322598009826000c4c8c8cc896600260a00070108b209a375c609a0026eb8c134008c134004dd61825800c590491bad3049001304a00130453754005159800981e800c4c8ca60026eb4c1280066096003375a60940049112cc004c13800a264646644b3001305200380945904f1bae304f001375c609e004609e0026eb0c13400a2c82586094002608a6ea800a2b3001303600189919912cc004c130006264646644b3001305000380845904d1bae304d001375c609a004609a0026eb0c12c0062c8248dd69824800982500098229baa0028acc004c0d400626464b3001304b002805c590481bad304900130453754005159800981a000c4c8c8cc8966002609a00700d8b2094375a60940026eb4c128008c128004c114dd50014566002606600313232598009825801402e2c8240dd6982480098229baa0028acc004cdc3a401c00313232598009825801402e2c8240dd6982480098229baa0028b2086410c82190432086410c821904318219baa0018b208a182200098218009821000981e9baa0028b20769181f9820182018201820000c888ca6002003004801a00222259800801440063300100398228014cc010c11000800500320849b8848001222222222222222222980098261baa0129112cc004c05000a33001003801520009112cc004c01000e266e00004dd6982018299baa0038b20a2404d1641392259800800c5200089808198010011829800a0a091809000c8966002003148002260206600400460a600282826018019222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905444cc014014c1680110541bae3053001375a60a800260ac00282a0cc03c01000c5200048888888ca6002444464b3001304d305937540031325980099baf305e305b375460bc60b66ea8c120c16cdd500098229982e9ba90054bd704566002609b30013756609060b66ea8c120c16cdd5000c01691108747265617375727900402113259800982a182d9baa0018991980d0008992cc004c144c174dd5000c4c96600266ebcc188c17cdd51831182f9baa001304933061375201297ae08acc004c14660026eacc130c17cdd5000c02691108747265617375727900403113259800982c182f9baa0018991980f0008acc004cdd7980e98309baa0034c0103d87a800089983180299831800998319ba6329800800cdd5982798311baa00499198008009bab30503063375460a060c66ea8024896600200314bd6f7b63044c8cc19ccdd818320009ba63233001001375660cc00444b30010018a5eb7bdb182264660d466ec0c19c004dd418119bad306800133003003306c002306a00141a06600600660d200460ce00283290011112cc00400a2003132332298008034c1ac016646600200200a44b300100189983599bb037520086e9800d2f5bded8c113298009bae30690019bab306a00198370012444b30013372001000713306f337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820de880144cc1c0cdd81ba9009374c0020048360ca6002003008801a002222598008014400626466453001006983b802cc8cc0040040148966002003133077337606ea4010dd4001a5eb7bdb1822653001375c60ea003375a60ec003307a00248896600266e4002000e2660f666ec0dd48041ba80070058acc004cdc7804001c4c96600260da003100289983e19bb037520126ea000400907819b8000700289983d99bb037520066ea0008cc01801800507720ee183c000a0ec40186eb8c1c0004dd69838800983980120e289983799bb037520066e98008cc01801800506b20d61836000a0d440186eb8c190004dd59832800983380120ca4bd7045905f183198301baa0018b20bc304b305f375400316417516417460c260bc6ea80062c82e0cc024dd61824982e9baa008005305f305c3754003164168608e60b66ea8c120c16cdd5000c59059459059182e982d1baa0018b20b033005375860b860b26ea801000a600800930060064889660026092017198009bac305b3058375403b22598009826982c9baa002899192cc004c18000a0071641746eb4c178004c168dd50014590584888896600266e1cc018014c0180122b3001300d003899b890019800802c00e90004888c96600260a860c06ea800626644b3001305b306237540031323301b00115980099baf30203064375400660ce60c86ea801e2b30013375e60a260c86ea8004c19cc190dd5001c4c96600260ba60c86ea800626464b30013370e6eb4c1a8008dd6982a18339baa0068acc004cdc39bad306a001375a60a660ce6ea801a2b30013375e60d460d6002603a60ce6ea801a266e0002260026eacc150c19cdd5182a18339baa00a9bae306a00c9bae306a306b00c405116419516419516419460d400260ca6ea80062c8318c140c190dd5000c59062459062183318319baa0018b20c2306430613754002609a60c26ea8c138c184dd500245905f1980600380120408b20b68b20b691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad30663063375460cc0046eb4c198c18cdd5183300180244c9660033001002a5191112cc0040062b30013371e008911008a51899810002998351ba90043306a375200697ae0419914a0833101d44cdc4803cc004dd6182798321baa00ca400122323259800980e000c4cdc000199b83337040026eb4c154c1a0dd50021bad3054306837540091003419930010059bae306a0019bae306a306b00140506eb0c1a4c198dd500120328b20c43301d3758609c60c66ea802c8dd6183398321baa0018b20c2375660ca60cc00260ca00330010079bae306330603754604060c06ea802200d005402d164178b3001305230090018a40011598009831800c4c96600266e3cdd7182f800a44104555344720089bad30600018b20bc30620018b20c04174660386eacc050c178dd50029bae304b305e3754603c60bc6ea801a60b660b06ea80de608a60b06ea80e5222222332259800acc004c05000a2946330013053001a50a51417882f2264b3001305430603754003132332232332259800982d18331baa0018992cc004cdc399b81375a60d600200c00915980099b87375a60d660d80026eb4c1acc1b001e2b3001337129000004c56600330013302a375860d660d06ea817cdd7182a18341baa3028306837540170109bac3055306837540193306a305530683754605060d06ea802ccc1a9301054455534472004bd7052000403915980099b890033233001001375860aa60d26ea8180896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c98361baa0029bae3059306c3754605860d86ea803e91010455534472004065100141a860da0026600400460dc002835a3300100b82fcdd6982a18341baa00c9bad30243068375401900999b8000a0094035164199164199159800cc004cc0a8dd6183598341baa05f375c60a860d06ea8c0a0c1a0dd5005c0426eb0c154c1a0dd50064cc1a8c154c1a0dd5181418341baa00b3306a4c01054455534472004bd704c08c00d00e46600201705f9bad305430683754019375a604860d06ea803201300a403516419883322c83322c8330ca6002660280026eb4c1acc1a0dd50014dd7182a98341baa302830683754017375c604860d06ea8c0a0c1a0dd5005a444b3001305e306a37540071325980099baf306f306c375460de60d86ea8004c158cc1b8dd480125eb822b3001305e98009bab3059306c3754003002a4410d7374616b696e675f7661756c7400406513259800983298361baa0018991980a8008acc004cdd7981518371baa0034c0103d87a80008998381ba898009bab305b306e3754007005a441045553447200406c660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c160c1b0dd5000c5906a45906a183718359baa0038b20d21bac3053306737540bd16419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5004acc004c060006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082ccdd7183298311baa30223062375400b375a609c60c46ea801a6eb4c078c188dd5003201a329800998070009bad306530623754005375c609e60c46ea8c088c188dd5002cdd7180f18311baa30223062375400a9112cc004c160c190dd5001c4c96600266ebcc1a4c198dd5183498331baa30533066375400260a0660d06ea40092f5c1159800982c4c004dd5982998331baa305330663754003002a4410d7374616b696e675f7661756c7400404d13259800982f98331baa001899198078008998351ba898009bab30553068375460aa60d06ea800e00b48810455534472004054660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c148c198dd5182998331baa0018b20c88b20c830683065375400716418c375860c860c26ea81622c82f8c058c180dd500245905e4c00401a6eb0c184c178dd500148cdc4a40006eb4c130c17cdd5000a0209800803520009119b80001375a609860c06ea800901322b3001305000b8cc004dd6182d982c1baa01d911194c0040060090034004444b30010028acc0040062946294105f456600200314a11598009980218308011bad30610018cc00400e60c40053062001400d14a082e105f20be912cc0040062900044c06ccc008008c17800505b488cdc199b82002375a608c60b46ea8004dd69823982d1baa001982d982c1baa0379822982c1baa0394888888c9660026645300132330010010032259800800c528456600266ebcc198c18cdd5183318319baa30503063375460cc002609a660ca6ea400d2f5c114a313300200230670014184832294294505f1bac3062305f37540ac6eb8c06cc17cdd5180f982f9baa0028acc004cc896600266e1cc028008c0280262b300130110018cc00400a003223259800982b98319baa001899192cc004c15cc194dd5000c4c96600266e1cdd698350009bad30543067375400713375e60d460d6002603a60ce6ea800e294106518331baa0018a50419060a260ca6ea8c96600260bc60ca6ea80062646603c0022b30013375e604660ce6ea800cc1a8c19cdd5003456600266ebcc150c19cdd5000983518339baa0038800c59065459065183498331baa0018b20c830513065375460a460ca6ea8010c19cc190dd5000c5906219807805800a0108b20be8b20be33021375860c460be6ea8158dd71825982f9baa301f305f37540046eb0c130c17cdd5001c56600330013758609660be6ea815a6eb0c188c17cdd5001cdd61825182f9baa00248896600266e1cc010008c02c02a3300100a801488c96600260b060c86ea8006330013068306537540033758603660ca6ea800e646609e00a466ebcc1a8c19cdd50009ba70023758603660ca6ea800d22259800982d98339baa0018acc004cdd7983598341baa003306b3068375460d660d06ea801a2b30013375e60a860d06ea800cc154c1a0dd5183598341baa006899b8798009bab305530683754007375c60d6005375c60d660d800480a8cc034c96600266e20005200089812000c40050671bad30553068375400c60d660d06ea80062941066452820cc8b20cc45906319808002800a0128b20c044c14a600330010079bac3062305f3754007259800980a1bad304d3060375400313053375a609860c06ea8006294105e20229980e9bab3015305f37540ac6eb8c130c17cdd5180f982f9baa002cc00415a6eb8c188c17cdd5180f982f9baa0029bad304b305f3754007375a603660be6ea800d00a4cc064dd61825182f9baa0022375860c660c06ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a51899811004198361ba90043306c375200697ae041a114a0834101f456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c148c19cdd5005520009119912cc006600260bc0034a14a2834a264b3001337126602200200b30010089bae306f0039bae306f307000340651337000080031641a866e0800401620068348dd6183618349baa00232980080952000912cc004cdd7981118361baa002374e0071337000026eb4c164c1b0dd50014400506a203e375860d860d26ea800901c19b8100200888014590652cc004c06801e29000c5200241911641911641906eacc19cc1a00056600260ae601c0091480022b300130680048992cc004cdc79bae306400148904555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3004004452820ac4158225980099b88001480022980103d87a8000899802001000a0a822646644b30013042001899912cc004c0ccc0fcdd500144c8c8c8cc8966002609200713259800981c98229baa0018991919912cc004c13800e264b3001303e001899192cc004c14400a01d1641386eb8c13c004c12cdd5003c566002607a00315980098259baa00780645904c45904920923049375400d16412c6eb8c12c004dd71825801182580098231baa0018b208830480058b208c375c608c002608c004608c002608a00260806ea800a2c81f0c1040044c010c1080162c81f8dd7181f80098200009bac303e00240f11323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980a98109baa00189919912cc004c0a4006264b3001301930253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b8c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0dc024896600200513302701410248992cc004c0e4c114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c054c084dd5000c4c966002603660446ea8006264b3001301730233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084601c60446ea8c03cc088dd5181298111baa0018b20403300a3758601c60426ea80608c8cc004004c00cdd5980818119baa30103023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602860406ea800a2646464b3001302800289980318138018992cc004c0600062b3001302537540050058b204c8acc004c05c00626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013012301e3754005132323259800981300144cc024c09400c4c966002602c003132598009814000c4c8c9660026032003132598009815800c4cc038c0a80040262c8140c098dd500145660026030003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602a00315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolManagementProtocolManagementElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"594460010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888888896600264653001301c001980e180e800cdc3a4009301c0024888966002600460386ea800e330013020301d3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b874803246042604400323021302230220019b80480066e05200091810981118111811181118111811181118111811000cdd2a4004911111111111111194c004889660026020605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c054006264b3001001803c4c966002003159800981d80144c966002603000313259800800c02a264b30010018acc004c0f800a33001001806402d00e402d03b402e01700b805a07e303c00140e860706ea800a2b300130170018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11400e02701241086eb40060228228c1080050401bad00130410028072084303f00140f46eb4004c0f800a01681f8c0f000503a181c1baa002804a06a40d4606c6ea800601081c2011008804402103c181c800a06e30353754005159800980a000c566002606a6ea800a00f00640d900640c88190c0ccdd5000c0150084015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c96600260760070058042070375c00281d8c0e0005036181a1baa0038acc004c04c006264b300100180344c966002003007803c4c96600260760071330180012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0ec00e26603000244b3001002803c4c96600200319800805400626004607c006805201700b805c02d03f181e001207480420703758003007803a076303800140d860686ea800e2b300130120018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981f001c4cc06c004896600200500a8992cc0040063300100d800c4c008c10400d00d403a01d00e8072084303f00240f500b40ec6eb000601500a40f8607600281c8dd6800981d001401d03b181c000a06c303437540071598009808800c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002602000313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009807800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c015031206240c48189031206240c460646ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260286606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980a981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301a0018acc004c0e8dd5001401e00c81da2b300130190018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026038003159800981e1baa006804c02103d4566002603600313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783019303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002602a60686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c058006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130150018acc004c0d8dd5002400e00481ba0048199033181a1baa00348888cc89660026030606e6ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009821801c566002603e607c6ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013053002899818007112cc00400a26606401a44b30010028cc00401e330010058992cc004c0d0c14cdd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982e00144cc8966002607400313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252052825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0e4006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a504a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981f800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b300130380018992cc00400608b13259800800c11a08d132598009830801c4cc0f800489660020050078992cc00400633001001898011832001c129029412a09504a82520ca3062002418104741786eb000608d046418460bc00282e0c168dd5002c566002606e00313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252054825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a904a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981a800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea801608882b905720ae415c82b905720ae415c264b300130390018992cc00400608913259800800c56600260be00519800800c02208a813a08a82e208b045822c115060182e800a0b630593754005159800981c000c4c9660020030448992cc0040062b3001305f0028acc004c0ecc168dd5000c4c9660020030468992cc004006264b300100182444c966002003159800983180146600200719800800c032092816209281620928302093049824c1250641830800a0be3061002823c11e08f047418860be00282e8c16cdd5000c115058411505c411608b045822a0c0305d001416c60b26ea800a08682b1056182b9baa001305737540070424165042821410a08482e8c168005058182d001410208104082020b63058001415860a86ea806607c82884cc0d0054896600200519800982c182a9baa302f30553754049230353055375460b2646600200200444b30010018a5eb8503d87a80008101800044c8cc89660033001303a305a375460bc0074a14a282c22660bb30014a14c103d87a8000a60103d87980004160660ba6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18000400e294626600400460c200282d105e44cc176600294298103d87a8000a60103d87980004160660ba6e9c0092f5c113305d9800a51a60103d87a8000a60103d87980004160660ba6e9ccc174dd400080125eb8105820b0375860b860ba0026eb4c170008cc008008c17000505948888ca6002003005802400d00111112cc00400e2b30010028800c54cc16d24112657870656374205b5d203d206c6973745f6200164179159800801454cc16d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c20073061002cc004c18000e6eb4c18000a002802900420bc41792232330010010032259800800c52f5c1133225980099baf305e305b375460bc60b66ea8c0d4c16cdd500118181982e9ba90054bd7044cc174008cc01001000626600800800282c0c170004c17400505a4dc02400523059305a305a305a305a305a305a305a305a0019112cc00400a2980103d87a80008acc004c0e000626074660b460b600497ae08cc00400e60b80053030001400c82a9059488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd5982d800982e800a0b614bd6f7b630488966002607060ae6ea800e264b300100180144c966002003003801c00e264b3001305f003802c01105c1bad001801a0be305c001416860b06ea800e00282aa460b260b460b460b40032232330010010032259800800c52f5c113305b374e600660b80026600400460ba00282d2444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c17c0066eb4c1800066600600660c80048048c1880050601bab305d003375c60b40026600600660be00460ba00282da44646600200200644b30010018a508acc004cdd7982e0009ba70038a51899801001182e800a0ac416922259800981c182b9baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c96600200313259800800c022264b300130640028cc00401e330010058992cc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b300130400018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009835801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009838001c05a02a8368dd7000a0e0306d00141ac6eb8004c1b000906d1835000a0d080820d0375800300f807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c118006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c96600200301280944c96600260dc007159800800c04e264b300100180a4052029014899912cc00400602d13259800800c05e02f01780bc4c96600260e600701980c20e0375c0028398c1c000506e1bae001306f00241c060da002835a0268358dd6000c04a0248370c1ac0050691bad001306a002807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0fc006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b3001303e0018992cc00400601713259800800c03201900c8992cc004c1a000e01d00d41946eb40060188340c19400506318309baa0048acc004c0f4006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306b003808c0410681bad001807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0f0006264b3001001805c4c96600200300c8064032264b3001306800380740350651bad00180620d03065001418c60c26ea80122b30013370e9007000c4c96600200300b8992cc00400601900c80644c96600260d000700e806a0ca375a00300c41a060ca0028318c184dd5002402905e20bc417882f105e20bc417882f0c17cdd5001c02502e402503240250611831000a0c03062002803c01e00f007418c60c000282f0c18000a00b005802c015061182f000a0b8305e002801c00e007003417c60b800282d0c160dd5001c00505548c164c168c168c168c168006444653001001802400d0011112cc00400a200319800801cc17c00a6600860bc004002801905c4dc424000911111111111111114c004c194dd5008c88966002602600519800801c00a900048896600260080071337000026eb4c118c1b0dd5001c54cc1a924011a6578706563742076616c69646174696f6e287265717565737429001641a480922a660ce9212e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641992259800800c5200089807998010011836000a0d291808800c89660020031480022601e6600400460d8002834a6016017222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906c44cc014014c1cc01106c1bae306c001375a60da00260de0028368cc03801000c5200048888888ca6002444464b30013053307237540031325980099baf30773074375460ee60e86ea8c138c1d0dd500098249983b1ba90054bd70456600260a730013756609c60e86ea8c138c1d0dd5000c01691108747265617375727900402113259800982d183a1baa0018992cc004006330010018992cc004c15cc1d8dd5000c4c96600266ebcc1ecc1e0dd5183d983c1baa001304d3307a375201297ae08acc004c15e60026eacc148c1e0dd5000c026910108747265617375727900403113259800982f183c1baa0018992cc004006330010018acc004cdd7980e183d1baa0034c103d87a800089983e0029983e0009983e1ba6329800800cdd5982a983d9baa00499198008009bab3056307c375460ac60f86ea8024896600200314bd6f7b63044c8cc20004cdd8183e8009ba63233001001375660fe00444b30010018a5eb7bdb182264661060266ec0c20004004dd4182c1bad308101001330030033085010023083010014204046600600661040200461000200283f10011112cc00400a2003132332298008034c21004016646600200200a44b30010018998420099bb037520086e9800d2f5bded8c113298009bae3082010019bab3083010019843808012444b30013372001000713308801337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528211002880144cc22404cdd81ba9009374c002004842008ca6002003008801a002222598008014400626466453001006984800802cc8cc004004014896600200313309001337606ea4010dd4001a5eb7bdb1822653001375c611c02003375a611e0200330930100248896600266e4002000e2661280266ec0dd48041ba80070058acc004cdc7804001c4c96600260e6003100289984a8099bb037520126ea00040090900119b8000700289984a0099bb037520066ea0008cc01801800508f01211e02184880800a11e0240186eb8c22404004dd69845008009846008012114028998440099bb037520066e98008cc01801800508301210602184280800a1060240186eb8c1f4004dd5983f00098400080120fc4bd7041bd07741b901d41ba0dd06e83720fe307c30793754003153307749012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641d860a260f06ea80062a660ec920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641d5153307649143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641d460f460ee6ea80062a660ea92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641d0660126eb0c13cc1d8dd5004002c1a501941a60d3069834a0f6307830753754003153307349013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641c8609a60e86ea8c138c1d0dd5000c54cc1c92401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c515330724914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c460ec60e66ea80062a660e292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641c06600a6eb0c1d4c1c8dd50020014c010012600c00c9112cc004c13c02e33001375860e860e26ea8072444b300130543073375400713259800800c00a264b3001001801c00e00713259800983d801c01600883c0dd6800c00d07b183c000a0ec3074375400700141c5222225980099b87300600530060048acc004c03400e266e24006600200b003a40012223259800982d183c9baa001899912cc004c184c1ecdd5000c4c96600200319800800c56600266ebcc07cc1f4dd5001984000983e9baa0078acc004cdd7982b983e9baa001308001307d3754007132598009831983e9baa001899192cc004cdc39bad308301002375a60b46100026ea801a2b30013370e6eb4c20c04004dd6982c9840009baa0068acc004cdd7984180984200800980e9840009baa006899b8000898009bab305a308001375460b46100026ea802a6eb8c20c040326eb8c20c04c21004031014454cc1f92413665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001641f5153307e49126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001641f5153307e4912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001641f461060200260fc6ea80062a660f8921184578706563746564204f4465706f73697420616374696f6e001641ec60ac60fa6ea80060ec83d20ea83d20e880da0e907483a41d108201183f983e1baa00183920f2307d307a375400260a660f46ea8c150c1e8dd500241a107719806003801203e831a0e683120e691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307f307c375460fe0046eb4c1fcc1f0dd5183f80180244c9660033001002a5191112cc0040062b30013371e008911008a5189981000299841809ba90043308301375200697ae041f914a083f101d44cdc4803cc004dd61829983e9baa00ca400122323259800980e000c4cdc000199b83337040026eb4c16cc20404dd50021bad305a3081013754009100341f930010059bae3083010019bae30830130840100140506eb0c20804c1fcdd5001203283720f43301d375860a460f86ea802c8dd6184000983e9baa00183720f2375660fc60fe00260fc00330010079bae307c30793754603e60f26ea802200d005402d1533077490123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641d8b3001305830090018a4001159800800c19e264b3001307d0028992cc004cdc79bae307900248810455534472008800c1a90771bad307900183420f4307b00141e483a8cc06cdd5980a183b9baa005375c60a260ee6ea8c074c1dcdd50034c1d0c1c4dd50204c12cc1c4dd5020a4444446644b300159800980a0014528c6600260b20034a14a283b107644c96600260b460f26ea80062646644646644b30013060307f37540031325980099b87337026eb4c210040040180122b30013370e6eb4c21004c21404004dd6984200984280803c56600266e2520000098acc0066002660526eb0c21004c20404dd50329bae305a3081013754604e6102026ea802e021375860b66102026ea8032661060260b66102026ea8c09cc20404dd50059984180a61054455534472004bd7052000403915980099b890033233001001375860b66104026ea8198896600200314800226644b30013375e611002610a026ea8008c22004c22404c22404c22404c22404c22404c22404c22404c22404c22404c22404c21404dd5007c4cdc0000cc004dd5982f9842809baa0029bae305f30850137546056610a026ea803e910104555344720040651001420804610c0200266004004610e0200284200a3300100b832cdd6982d1840809baa00c9bad3023308101375401900999b8000a0094035153307f49012b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641f9153307f4919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001641f9159800cc004cc0a4dd61842009840809baa065375c60b46102026ea8c09cc20404dd5005c0426eb0c16cc20404dd50064cc20c04c16cc20404dd518139840809baa00b33083014c1054455534472004bd704c16000d00e4660020170659bad305a3081013754019375a60466102026ea803201300a4035153307f491b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641f883f22a660fe9213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641f9153307f4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641f865300133014001375a6108026102026ea800a6eb8c16cc20404dd518139840809baa00b9bae30233081013754604e6102026ea802d2225980098321841809baa0038992cc004cdd79844009842809baa308801308501375400260b46610e026ea40092f5c115980098324c004dd5982f9842809baa00180152210d7374616b696e675f7661756c740040651325980098359842809baa0018992cc004006330010018acc004cdd798149843809baa0034c103d87a8000899844809ba898009bab30613087013754007005a441045553447200406c6611202611402610e026ea8004cc2240400d2f5c107c4210050810140550810184080c2040610202846008c22404c21804dd5000c54cc2100524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016420c0460bc610a026ea80062a661060292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642080515330830149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016420804610e026108026ea800e2a661040292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f696478290016420404375860b26100026ea81922a660fc92013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641f466e04018004c20404c20804c20804c20804c20804c20804c1f8dd5004acc004c060006266e10cdc1002801000c5200041e86eb4c1f8004dd6983f183d9baa307e980082fcdd7183f183d9baa3021307b375400b375a60a860f66ea801a6eb4c074c1ecdd5003201a329800998070009bad307e307b3754005375c60aa60f66ea8c084c1ecdd5002cdd7180e983d9baa3021307b375400a9112cc004c178c1f4dd5001c4c96600266ebcc20804c1fcdd5184100983f9baa3059307f375400260a866102026ea40092f5c1159800982f4c004dd5982c983f9baa3059307f3754003002a4410d7374616b696e675f7661756c7400404d132598009832983f9baa0018992cc00400633001001899841809ba898009bab305b308101375460b66102026ea800e00b489045553447200405466106026108026102026ea8004cc20c0400d2f5c107b403d07b83dc1ee0f6843008c20c04c20004dd5000c1d907d182c183f9baa3059307f3754003153307d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f1153307d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f061020260fc6ea800e2a660f892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ec375860fa60f46ea817a2a660f092013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641dc602c60f26ea80122a660ee92012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641d930010069bac307a3077375400523371290001bad3052307837540028082600200d480024466e00004dd69829183c9baa002404c8acc004c15802e33001375860e860e26ea8072444653001001802400d0011112cc00400a2b30010018a518a5041e1159800800c52845660026600860f40046eb4c1e800633001003983d8014c1ec005003452820e841e083c244b30010018a40011301a33002002307700141d1223370666e08008dd6982618399baa001375a609a60e66ea800660e860e26ea8102609660e26ea8105222222325980099914c004c8cc00400400c896600200314a115980099baf307f307c375460fe60f86ea8c158c1f0dd5183f80098289983f1ba90034bd704528c4cc008008c2000400507920faa50a5141dc6eb0c1ecc1e0dd502e1bae301a30783754603c60f06ea800a2b300133225980099b87300a002300a0098acc004c04400633001002800c88c96600260ba60f86ea800626464b3001305d307e37540031325980099b87375a6106020026eb4c168c20004dd5001c4cdd7984180984200800980e9840009baa0038a5041f460fe6ea8006294107c182b983f1baa32598009832183f1baa0018992cc004006330010018acc004cdd798111840009baa003308301308001375400d15980099baf305a30800137540026106026100026ea800e200307941f507841f5077407907783bc1de0ee842808c20804c1fcdd5000c1d507c182b983f1baa3058307e375400861000260fa6ea80060d683d0cc03c02c005008419d0774199077198101bac307b307837540b86eb8c144c1e0dd5180f183c1baa002375860a460f06ea800e2b300198009bac3051307837540b9375860f660f06ea800e6eb0c138c1e0dd50012444b30013370e6008004601601519800805400a4464b3001305e307d375400319800984080983f1baa0019bac301b307e3754007323305000523375e6106026100026ea8004dd38011bac301b307e37540069112cc004c184c20004dd5000c56600266ebcc21004c20404dd50019842009840809baa308401308101375400d15980099baf305a308101375400660b66102026ea8c21004c20404dd500344cdc3cc004dd5982d9840809baa0039bae3084010029bae30840130850100240546601a64b300133710002900044c164006200283f8dd6982d9840809baa006308401308101375400314a083f2294107e454cc1fd24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641f88a9983e2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641ec6602000a002804a2a660f292013b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e67746828726571756573747329001641e08982c4c006600200f375860f660f06ea800e4b30013014375a60a660f26ea8006260b26eb4c148c1e4dd5000c52820ec40453301c3756602a60f06ea8170dd71829183c1baa301e30783754005980082e4dd7183d983c1baa301e30783754005375a60a260f06ea800e6eb4c068c1e0dd5001a0149980c9bac304e3078375400446eb0c1f0c1e4dd5000a44446530013080010019bab308001308101001984000801d6600260ba601c0091480022b300100483644c96600261040200b1325980099b8f375c60fc0049110455534472008800c1bd07c1bad307e001836a0fe30800100441f883d1222259800cc00400e9464444b30010018acc004cdc78022441008a5189981200519843809ba90043308701375200697ae042080514a0841009021456600266e1ccdc09bad30840130810137540086eb4c21004c20404dd5001000c4c96600266e1e60026eb0c160c20804dd5006520009119912cc006600260cc0034a14a284180a264b3001337126602600200b30010099bae308a010039bae308a01308b01003406d1337000080031533085014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642100466e080040162006841808dd61843809842009baa00232980080a52000912cc004cdd798121843809baa002374e0071337000026eb4c184c21c04dd5001440050840120423758610e026108026ea800901e19b8100200a8801454cc200052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641fcb3001301c0098a400314800907e41cd07e41c907e0c2000400915330764901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641d51533076491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641d5153307649142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641d460080088a5041b8837044b300133710002900045300103d87a8000899802001000a0d82264b30010018204102264b3001001820c4c966002003042821410a0851332259800800c112264b30010018acc004c17c00a264b3001303c305b375400513259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc00400609904c8264132264b300130670038acc004c10cc188dd500344c96600200304e8992cc00400609f04f827c13e26644b3001001828c4c966002003052829414a0a5132598009836801c4c966002609400313259800800c156264b300100182b415a0ad0568992cc004c1c400e02505741b86eb80050711837000a0d8306a37540171598009824800c56600260d46ea802e01f05441ad054419c8338c1a0dd5005414d06a1bae00141b460d40028340dd7000983480120d43067001419460c66ea801a09a830209a8320dd7000a0ce3064001418860c800504a825412a0948328c1880050601831001412209104882420c63060001417860b86ea800a08c82c84c01cc17c02208a82e208b045822c115060182e800a0b6375c00260b800482e8c1680050581bac001820410105b182c00120ac81ea03c81ea03c8992cc00400607d03e81f44c8c00cc164010dd6800c0f9059182b00120a88992cc00400607903c81e44c8c00cc15c010dd6800c0f1057182a00120a481ca0a081cc0e6073039415060a20028278c14400a06f03781bc0dd0521827800a09a375a002609c005034413c60980028250dd6800982580140c504c1824800a08e3758002609000502e8172092304600141106eb0004c11400a05702b411860860028208c0fcdd500340a503c40a50401bac00181440a10431820000a07c3040002813409a04d0264104607c00281e0c0f800a049024812409103f181e000a0743038375400f02240d4444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608e00719800804c6600200900c805a01e805a022805a088375a00300a411c60880028210c11000a01100880440210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d8444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c12800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13c00e02901341306eb800504f1826000a094375c00260960048260c1240050474039012403901440390471bac001806c03504a1823800a08a3047002805c02e01700b4120608a0028218dd6800982200140210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d880e407203901c40dc664464b30013014303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301833038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8054dd7181a18189baa0019800912cc004006297ae089981a1818981a80099801001181b000a0669112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206091111919800800802912cc004006200b13259800800c4cc010c0e800801a26600a60740046600600600281c0c0e80050374dd6180518181baa01448888c8c8c8cc88c966002003159800980d181c9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130430028acc004c07cc0f8dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305a0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c154dd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260cc00713304300f225980080146600201f102b827a06e8992cc0040062b300130453064375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130720038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307700389808183b808c1790741bae00141dc60e80028390dd7000983980420e8307100741bd05941bc6eb40060b08390c1bc00506d1bad001306e00282aa0de306c00141a86eb0004c1ac00a0a505241b060d20028338c194dd5000c14106241420a105082820d43067002419504d418c6eb80050661831800a0c2375c00260c40048318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a001416060ac6ea801a082829a0828142082814208281420828142082814208281420828142082814208282ba083041820c10505b182c000a0ac375800260ae00503e81f20b03055001414c60aa00503c81e40f207882b0c14c005051182980140ea07503a81d20a83051001413c60a200503881c40e20708290c13c00504d182780140da06d03681b20a0304d001412c609a00503481a40d20688270c12c005049182580140ca06503281920983049001411c609200503081840c20608250c11c005045182380140ba05d02e81720903045001410c608a00502c81640b20588230c10c005041181f9baa0018152078815208081540aa05502a4110608200281f8dd700098200012082303e00140f060746ea800604a81ba04b025812c09503f29981b99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40d522010013259800980d181c9baa00189929981c99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981d9baa0018992cc0040062b3001301d303c375400313259800800c0e6264b300100181d40ea07503a899912cc0040060791325980098230014401a07a8218c1100050421bae00130430024110608200281f8c0f4dd5000c0e103a40e207103881c2084303f303c3754003153303a49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640e4602860766ea8c054c0ecdd5000981e981d1baa0018a9981c24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640dc6601400c4646600200260066eacc054c0ecdd5180a981d9baa0022259800800c528456600266e3cdd7181f80081c4528c4cc008008c100005039207a300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c207e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81c90391bac303c002375a60740026466ec0dd4181d0009ba7303b001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a607e003337149101023a200098008054c10000600a805100a182100144ca6002015303f00199b8a489023a200098008054c100006600e66008008004805100a18210012080304200140fc66e29220102207d0000340f06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920783758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e40f866e2ccdc0000acc004cdc4000a402914818229037207c004401866e0c00520203370c002901019b8e00400240ec6eb800d03f1b8a4881022c20002232330010010032259800980c800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681b10361801801844464b300130100018992cc00400600713259800800c01200900480244c966002606e007006802a068375c00281b8c0d000503218181baa0048acc004c03c006264b3001001801c4c966002003004802401200913259800981b801c01a00a81a0dd7000a06e303400140c860606ea8012004816902d18171baa00345901a0c070004c05cdd500ec5268a9980aa491856616c696461746f722072657475726e65642066616c7365001365640501\"\n :\n \"5921fd010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480324601c601e0032300e300f300f00191807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c010006260226603c00297ae089980180198100012034301e001407122232598009807000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300d0018992cc004c0800062660206eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc040dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0300062646644b300130220018998091bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b3001300b001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260140031323259800981080140122c80f0dd6980f800980d9baa0038acc004c02400626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c03400626464b3001302000280245901d1bae301e001301a37540071598009806000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c030c060dd500144c8c8c966002604000513232598009808800c566002603c6ea800a00d16407d1598009808000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689807180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300c30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009806800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300c0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013017302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301b33028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c058c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980b18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980b98119baa003899191919912cc004c0b400e264b3001301d30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc0a4dd6181c005912cc00400a26605600c44b300100289980e80289980e8048992cc004c0b4c0e4dd500944c8c8c9660026082005132332259800981980144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038acc004c0c800a264b3001304500189981a9bac304400122598008014012266040608c00426002608e00482222c8210c100dd5001c5660026070005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b300130310028992cc004c11400626606a6eb0c1100048966002005004899810182300109800982380120888b208430403754007159800981800144c966002608a0031330353758608800244b300100280244cc084c1180084c004c11c00904445904218201baa0038acc004c0bc00a264b3001304500189981a9bac304400122598008014012266042608c00426002608e00482222c8210c100dd5001c566002605c005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b30013370e900700144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038b207c40f881f103e207c40f881f103e181e9baa001132598009819000c4c966002608800313302530430010078b2082303f37540071598009818800c4c966002608800313259800981a18201baa00189919192cc004c12000a266054608e006266054002017164114608c002608c00260826ea80062c81f8c10c0062c8208c0fcdd5001c5903d207a303d375400460800071640f8607e002607e00260746ea804a2c81c04cc0b4048896600200519800981f181d9baa3028303b37540352302e303b3754607e646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130333040375460880074a14a281fa26608730014a14c103d87a8000a60103d879800040fc660866e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11800400e2946266004004608e002820904444cc10e600294298103d87a8000a60103d879800040fc660866e9c0092f5c11330439800a51a60103d87a8000a60103d879800040fc660866e9ccc10cdd400080125eb8103f207e3758608460860026eb4c108008cc008008c10800503f48888ca6002003005802400d00111112cc00400e2b30010028800c590444660020093047003982380166002608c007375a608c00500140148021044488c8cc00400400c896600200314bd7044cc896600266ebcc110c104dd5182218209baa302e304137540046056660866ea40152f5c113304300233004004001899802002000a07e3042001304300141013700900148c0fcc100c100c100c100c100c100c100c100006444b30010028a6103d87a80008acc004c0c40062606666080608200497ae08cc00400e6084005337000029000a00640f081fa4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208289980280298238022082375c60800026eacc104004c10c0050410a5eb7bdb18244b30013030303c375400513232598009821801400e2c8200dd69820800981e9baa0028b20769181f982018201820000cdc0a40012232330010010032259800800c52f5c1133041374e600660840026600400460860028202444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1140066eb4c1180066600600660940048048c1200050461bab3043003375c608000266006006608a0046086002820a44646600200200644b30010018a508acc004cdd798210009ba70038a518998010011821800a07a410122598009818181e1baa0028991919194c004c110006608800730440024889660026090009133027304700713302400213259800981c000c4c8cc89660026098003132323322598009828001c0422c8268dd718268009bae304d002304d001375860960031641246eb4c124004c128004c114dd50014566002606e0031323322598009826000c4c8c8cc896600260a00070108b209a375c609a0026eb8c134008c134004dd61825800c590491bad3049001304a00130453754005159800981e800c4c8ca60026eb4c1280066096003375a60940049112cc004c13800a264646644b3001305200380945904f1bae304f001375c609e004609e0026eb0c13400a2c82586094002608a6ea800a2b3001303600189919912cc004c130006264646644b3001305000380845904d1bae304d001375c609a004609a0026eb0c12c0062c8248dd69824800982500098229baa0028acc004c0d400626464b3001304b002805c590481bad304900130453754005159800981a000c4c8c8cc8966002609a00700d8b2094375a60940026eb4c128008c128004c114dd50014566002606600313232598009825801402e2c8240dd6982480098229baa0028acc004cdc3a401c00313232598009825801402e2c8240dd6982480098229baa0028b2086410c82190432086410c821904318219baa0018b208a182200098218009821000981e9baa0028b20769181f9820182018201820000c888ca6002003004801a00222259800801440063300100398228014cc010c11000800500320849b8848001222222222222222222980098261baa0129112cc004c05000a33001003801520009112cc004c01000e266e00004dd6982018299baa0038b20a2404d1641392259800800c5200089808198010011829800a0a091809000c8966002003148002260206600400460a600282826018019222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905444cc014014c1680110541bae3053001375a60a800260ac00282a0cc03c01000c5200048888888ca6002444464b3001304d305937540031325980099baf305e305b375460bc60b66ea8c120c16cdd500098229982e9ba90054bd704566002609b30013756609060b66ea8c120c16cdd5000c01691108747265617375727900402113259800982a182d9baa0018991980d0008992cc004c144c174dd5000c4c96600266ebcc188c17cdd51831182f9baa001304933061375201297ae08acc004c14660026eacc130c17cdd5000c02691108747265617375727900403113259800982c182f9baa0018991980f0008acc004cdd7980e98309baa0034c0103d87a800089983180299831800998319ba6329800800cdd5982798311baa00499198008009bab30503063375460a060c66ea8024896600200314bd6f7b63044c8cc19ccdd818320009ba63233001001375660cc00444b30010018a5eb7bdb182264660d466ec0c19c004dd418119bad306800133003003306c002306a00141a06600600660d200460ce00283290011112cc00400a2003132332298008034c1ac016646600200200a44b300100189983599bb037520086e9800d2f5bded8c113298009bae30690019bab306a00198370012444b30013372001000713306f337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820de880144cc1c0cdd81ba9009374c0020048360ca6002003008801a002222598008014400626466453001006983b802cc8cc0040040148966002003133077337606ea4010dd4001a5eb7bdb1822653001375c60ea003375a60ec003307a00248896600266e4002000e2660f666ec0dd48041ba80070058acc004cdc7804001c4c96600260da003100289983e19bb037520126ea000400907819b8000700289983d99bb037520066ea0008cc01801800507720ee183c000a0ec40186eb8c1c0004dd69838800983980120e289983799bb037520066e98008cc01801800506b20d61836000a0d440186eb8c190004dd59832800983380120ca4bd7045905f183198301baa0018b20bc304b305f375400316417516417460c260bc6ea80062c82e0cc024dd61824982e9baa008005305f305c3754003164168608e60b66ea8c120c16cdd5000c59059459059182e982d1baa0018b20b033005375860b860b26ea801000a600800930060064889660026092017198009bac305b3058375403b22598009826982c9baa002899192cc004c18000a0071641746eb4c178004c168dd50014590584888896600266e1cc018014c0180122b3001300d003899b890019800802c00e90004888c96600260a860c06ea800626644b3001305b306237540031323301b00115980099baf30203064375400660ce60c86ea801e2b30013375e60a260c86ea8004c19cc190dd5001c4c96600260ba60c86ea800626464b30013370e6eb4c1a8008dd6982a18339baa0068acc004cdc39bad306a001375a60a660ce6ea801a2b30013375e60d460d6002603a60ce6ea801a266e0002260026eacc150c19cdd5182a18339baa00a9bae306a00c9bae306a306b00c405116419516419516419460d400260ca6ea80062c8318c140c190dd5000c59062459062183318319baa0018b20c2306430613754002609a60c26ea8c138c184dd500245905f1980600380120408b20b68b20b691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad30663063375460cc0046eb4c198c18cdd5183300180244c9660033001002a5191112cc0040062b30013371e008911008a51899810002998351ba90043306a375200697ae0419914a0833101d44cdc4803cc004dd6182798321baa00ca400122323259800980e000c4cdc000199b83337040026eb4c154c1a0dd50021bad3054306837540091003419930010059bae306a0019bae306a306b00140506eb0c1a4c198dd500120328b20c43301d3758609c60c66ea802c8dd6183398321baa0018b20c2375660ca60cc00260ca00330010079bae306330603754604060c06ea802200d005402d164178b3001305230090018a40011598009831800c4c96600266e3cdd7182f800a44104555344720089bad30600018b20bc30620018b20c04174660386eacc050c178dd50029bae304b305e3754603c60bc6ea801a60b660b06ea80de608a60b06ea80e5222222332259800acc004c05000a2946330013053001a50a51417882f2264b3001305430603754003132332232332259800982d18331baa0018992cc004cdc399b81375a60d600200c00915980099b87375a60d660d80026eb4c1acc1b001e2b3001337129000004c56600330013302a375860d660d06ea817cdd7182a18341baa3028306837540170109bac3055306837540193306a305530683754605060d06ea802ccc1a9301054455534472004bd7052000403915980099b890033233001001375860aa60d26ea8180896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c98361baa0029bae3059306c3754605860d86ea803e91010455534472004065100141a860da0026600400460dc002835a3300100b82fcdd6982a18341baa00c9bad30243068375401900999b8000a0094035164199164199159800cc004cc0a8dd6183598341baa05f375c60a860d06ea8c0a0c1a0dd5005c0426eb0c154c1a0dd50064cc1a8c154c1a0dd5181418341baa00b3306a4c01054455534472004bd704c08c00d00e46600201705f9bad305430683754019375a604860d06ea803201300a403516419883322c83322c8330ca6002660280026eb4c1acc1a0dd50014dd7182a98341baa302830683754017375c604860d06ea8c0a0c1a0dd5005a444b3001305e306a37540071325980099baf306f306c375460de60d86ea8004c158cc1b8dd480125eb822b3001305e98009bab3059306c3754003002a4410d7374616b696e675f7661756c7400406513259800983298361baa0018991980a8008acc004cdd7981518371baa0034c0103d87a80008998381ba898009bab305b306e3754007005a441045553447200406c660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c160c1b0dd5000c5906a45906a183718359baa0038b20d21bac3053306737540bd16419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5004acc004c060006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082ccdd7183298311baa30223062375400b375a609c60c46ea801a6eb4c078c188dd5003201a329800998070009bad306530623754005375c609e60c46ea8c088c188dd5002cdd7180f18311baa30223062375400a9112cc004c160c190dd5001c4c96600266ebcc1a4c198dd5183498331baa30533066375400260a0660d06ea40092f5c1159800982c4c004dd5982998331baa305330663754003002a4410d7374616b696e675f7661756c7400404d13259800982f98331baa001899198078008998351ba898009bab30553068375460aa60d06ea800e00b48810455534472004054660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c148c198dd5182998331baa0018b20c88b20c830683065375400716418c375860c860c26ea81622c82f8c058c180dd500245905e4c00401a6eb0c184c178dd500148cdc4a40006eb4c130c17cdd5000a0209800803520009119b80001375a609860c06ea800901322b3001305000b8cc004dd6182d982c1baa01d911194c0040060090034004444b30010028acc0040062946294105f456600200314a11598009980218308011bad30610018cc00400e60c40053062001400d14a082e105f20be912cc0040062900044c06ccc008008c17800505b488cdc199b82002375a608c60b46ea8004dd69823982d1baa001982d982c1baa0379822982c1baa0394888888c9660026645300132330010010032259800800c528456600266ebcc198c18cdd5183318319baa30503063375460cc002609a660ca6ea400d2f5c114a313300200230670014184832294294505f1bac3062305f37540ac6eb8c06cc17cdd5180f982f9baa0028acc004cc896600266e1cc028008c0280262b300130110018cc00400a003223259800982b98319baa001899192cc004c15cc194dd5000c4c96600266e1cdd698350009bad30543067375400713375e60d460d6002603a60ce6ea800e294106518331baa0018a50419060a260ca6ea8c96600260bc60ca6ea80062646603c0022b30013375e604660ce6ea800cc1a8c19cdd5003456600266ebcc150c19cdd5000983518339baa0038800c59065459065183498331baa0018b20c830513065375460a460ca6ea8010c19cc190dd5000c5906219807805800a0108b20be8b20be33021375860c460be6ea8158dd71825982f9baa301f305f37540046eb0c130c17cdd5001c56600330013758609660be6ea815a6eb0c188c17cdd5001cdd61825182f9baa00248896600266e1cc010008c02c02a3300100a801488c96600260b060c86ea8006330013068306537540033758603660ca6ea800e646609e00a466ebcc1a8c19cdd50009ba70023758603660ca6ea800d22259800982d98339baa0018acc004cdd7983598341baa003306b3068375460d660d06ea801a2b30013375e60a860d06ea800cc154c1a0dd5183598341baa006899b8798009bab305530683754007375c60d6005375c60d660d800480a8cc034c96600266e20005200089812000c40050671bad30553068375400c60d660d06ea80062941066452820cc8b20cc45906319808002800a0128b20c044c14a600330010079bac3062305f3754007259800980a1bad304d3060375400313053375a609860c06ea8006294105e20229980e9bab3015305f37540ac6eb8c130c17cdd5180f982f9baa002cc00415a6eb8c188c17cdd5180f982f9baa0029bad304b305f3754007375a603660be6ea800d00a4cc064dd61825182f9baa0022375860c660c06ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a51899811004198361ba90043306c375200697ae041a114a0834101f456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c148c19cdd5005520009119912cc006600260bc0034a14a2834a264b3001337126602200200b30010089bae306f0039bae306f307000340651337000080031641a866e0800401620068348dd6183618349baa00232980080952000912cc004cdd7981118361baa002374e0071337000026eb4c164c1b0dd50014400506a203e375860d860d26ea800901c19b8100200888014590652cc004c06801e29000c5200241911641911641906eacc19cc1a00056600260ae601c0091480022b300130680048992cc004cdc79bae306400148904555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3004004452820ac4158225980099b88001480022980103d87a8000899802001000a0a822646644b30013042001899912cc004c0ccc0fcdd500144c8c8c8cc8966002609200713259800981c98229baa0018991919912cc004c13800e264b3001303e001899192cc004c14400a01d1641386eb8c13c004c12cdd5003c566002607a00315980098259baa00780645904c45904920923049375400d16412c6eb8c12c004dd71825801182580098231baa0018b208830480058b208c375c608c002608c004608c002608a00260806ea800a2c81f0c1040044c010c1080162c81f8dd7181f80098200009bac303e00240f11323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980a98109baa00189919912cc004c0a4006264b3001301930253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b8c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0dc024896600200513302701410248992cc004c0e4c114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c054c084dd5000c4c966002603660446ea8006264b3001301730233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084601c60446ea8c03cc088dd5181298111baa0018b20403300a3758601c60426ea80608c8cc004004c00cdd5980818119baa30103023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602860406ea800a2646464b3001302800289980318138018992cc004c0600062b3001302537540050058b204c8acc004c05c00626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013012301e3754005132323259800981300144cc024c09400c4c966002602c003132598009814000c4c8c9660026032003132598009815800c4cc038c0a80040262c8140c098dd500145660026030003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602a00315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d13656400801\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolMintProtocolMintWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5942e3010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a49856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a202020202900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888888896600264653001301e001980f180f800cdc3a4009301e00248889660026004603c6ea800e330013022301f37540072302330243024001918119812000cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c9b80480066e05200091811981218121812181218121812181218121812000cdd2a4004911111111111111194c00488966002601c60626ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e800a330010038992cc004c04c006264b3001001803c4c966002003159800981e80144c966002602c00313259800800c02a264b30010018acc004c10000a33001001806402d00e402d03d402e01700b805a082303e00140f060746ea800a2b300130150018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11c00e02701241106eb40060228238c1100050421bad00130430028072088304100140fc6eb4004c10000a0168208c0f800503c181d1baa002804a06e40dc60706ea800601081d2011008804402103e181d800a072303737540051598009809000c566002606e6ea800a00f00640e100640d081a0c0d4dd5000c0150084015037401600b005802a076303800140d86070005003801c00e00681c8c0d800503418191baa003800a05e911194c004006009003400444464b300130120018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa0038acc004c044006264b300100180344c966002003007803c4c966002607a0071330160012259800801401e264b30010018cc00402a003130023040003402900b805c02e0168208c0f800903c402103a1bac001803c01d03d181d000a07030363754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0f400e26602c00244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130100018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009820001c4cc064004896600200500a8992cc0040063300100d800c4c008c10c00d00d403a01d00e8072088304100240fd00b40f46eb000601500a4100607a00281d8dd6800981e001401d03d181d000a070303637540071598009807800c4c9660020030068992cc00400600f007803c4c966002607a0070058042074375a00300740f4607400281c0c0d8dd5001c566002601c00313259800800c01a264b3001001803c01e00f13259800981e801c01601081d0dd6800c01d03d181d000a070303637540071598009806800c4c9660020030068992cc00400600f007803c01e264b3001303d003802c02103a1bae00140f4607400281c0c0d8dd5001c015033206640cc8199033206640cc60686ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260246606c00297ae0899801801981c0012062303600140d091119192cc00400633001222598009809981b1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303f0028cc00400e264b300130180018acc004c0f0dd5001401e00c81ea2b300130170018992cc00400600f13259800800c02201100880444c966002608600700a804a080375c0028218c10000503e181e1baa0028acc004c07c006264b3001001803c4c9660026084005009804207e304000140f860786ea800a00c81c90392072303a3754003005403100540f1005802c01600a8200c0f400503b181e801400e007003801a07c303b00140e4606e6ea800e00281a2444b300130133036375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607800315980099b8948010c0ec00600d13259800982080244c9660026034003159800981f1baa006804c02103f4566002603200313259800800c026264b3001001805402a015132598009822801c0320168210dd6800c0290451821000a080303e375400d1598009810800c566002607c6ea801a01300840fd00840ec81d903b181e1baa005803a07c3017303b00140e500640f46ea800600b005802c015040181e800a076303d002801c00e00700340f8607600281c8c0dcdd5001c0050344889660026026606c6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d132598009820801c02200e81f0dd6800c019041181f000a078375c002607a00481f0c0ec005039181b9baa003800a068911192cc004c050006264b3001001801c4c9660020030048024012264b3001303f003803401503c1bad001802207e303c00140e860706ea80122b300130130018acc004c0e0dd5002400e00481ca00481a9035181b1baa00348888cc8966002602c60726ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009822801c566002603a60806ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013055002899817007112cc00400a26606001a44b30010028cc00401e33001005899192cc004c0ccc158dd500d44c9660020030408992cc004006264b300100182144c966002003159800982f80144cc8966002607200313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a054825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0e0006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40a904b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b1598009820000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130370018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c566002606c00313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a056825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0d4006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40ad04b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b159800981a000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130080018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c11505a20b4416882d105a20b4416882d04c966002607000313259800800c116264b30010018acc004c18800a330010018044119028411905f411a08d04682320c63060001417860b86ea800a2b300130370018992cc00400608b13259800800c56600260c4005159800981d182e9baa0018992cc00400608f13259800800c4c9660020030498992cc0040062b300130660028cc00400e33001001806412902d412902d4129063412a09504a82520ce3064001418860c800504882441220908328c188005060182f1baa00182320b682320be823411a08d046418c60c000282f0c170dd5001411105920b2305a375400260b46ea800e08682e2087043821c10d060182e800a0b6305d002820c106083041417860b600282c8c15cdd500d40fd05409981980b112cc00400a33001305b30583754606e60b06ea809645300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa303b305c375460be002605e660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303d305e37540046062660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230343058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013039305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48896600200514c103d87a80008acc004c0dc00626072660ba60bc00497ae08cc00400e60be0053031001400c82c105c488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064175133005005306400441746eb8c174004dd5982f0009830000a0bc14bd6f7b6304dc024005222329800800c012006800888966002005159800800c528c52820be8acc00400629422b3001330043061002375a60c200319800801cc18800a60c4002801a294105b20be417d25980099b88001480022605c003100141592305c305d305d305d0019112cc004c0dcc168dd5001c4c9660020030028992cc004006007003801c4c96600260c400700580220be375a003003418860be00282e8c16cdd5001c00505848c170c174c174c174c174006460b860ba60ba60ba60ba60ba60ba60ba60ba003222329800800c01200680088896600200510018cc00400e60c4005330043061002001400c82fa4466e0ccdc10011bad303a305a37540026eb4c0e4c168dd5000cdc424001371e9110455534472009112cc004c0dcc168dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983380146600200f19800802c4c966002608000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002608e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130710038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001307600380cc0610731bae00141d860e60028388dd7000983900120e6307000141b901341b86eb000602501241c460dc0028360dd68009836801403d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981e800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607600313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc306437540091598009807800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd5002402906120c24184830906120c241848308c188dd5001c02502f402503340250641832800a0c63065002803c01e00f007419860c60028308c18c00a00b005802c0150641830800a0be3061002801c00e007003418860be00282e8c16cdd5001c005058488cc0a40088cdd7982f182d9baa001374e00491111111111111111114c004c1a8dd5009c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c54cc1c1240112657870656374205b5d203d206c6973745f62001641cd159800801454cc1c12411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260ec007307600299912cc004c01c00a266e0000cdd69829983a1baa00283020e23075003375a60ea004802107320e68a9983624812e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641ad300f00f912cc0040062900044c03ccc008008c1c400506e489660020031480022601e6600400460e200283724446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e2899802802983c00220e2375c60e20026eb4c1c8004c1d0005072198090020018a40012259800800c5200089807998010011838800a0dc91808800c88c96600260a260da6ea8006264b30010018cc0040062b30013375e601c60de6ea800cc1c8c1bcdd5002456600266ebcc138c1bcdd5000983918379baa0038800c18906c418506c418100641820c106083020e83071306e375400305e41ac609a60da6ea8c130c1b4dd50012444444445300130060069802802c896600266e2000520008a6103d87a8000899804801000a0e69801801a4444646644b300130570108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea8006264b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0029bac305e307f3754007375860a660fe6ea80092225980099b87300d003300d0078acc004c04000a33001003801488c96600260c26108026ea800626464b3001306330860137540031323298009980f804000cdd618131844809baa0049bad308c0100248896600260d06116026ea800e2b30013371264664466e0cc194cdc019b82001375a60de611e026ea800c008008dd698361846809baa001375a60d8611a026ea8020c23c04c23004dd5001cc004dd598359846009baa306b308c013754015375c611e02005375c611e0261200200480e22b30013370e0026eb4c1acc23004dd5003c4cdd79ba70043029308c01375400f14a084480a294108901454cc228052414365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164224043758611602611802002610e026ea800629410840118331843009baa3301300400130880130850137540030744208046601c012002811a0e083fa0de83f9159800cc004dd6182f983f9baa0618024dd6184100983f9baa0039984080982f183f9baa301b307f37540046610202981054455534472004bd70200a899b879800801418690004dd6982f983f9baa0039bad301e307f3754007004401800306a41f1153307d49018f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641f130010039bac308101307e375400523018375a60bc60fe6ea800501241a107b22b300130560108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea80062b30019800998121bac308101307e37540c06eb8c178c1f8dd5180d183f1baa0019bac305d307e37540053308001305d307e3754603460fc6ea8004cc20005301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c180c20c04dd5000c4c8c96600260c2610a026ea800626464b3001337120033001375660ce6110026ea8c19cc22004dd5003cdd71845808044dd718458098460080420308acc004cdc3800982e9bad3067308801375400913375e611602611802004604a6110026ea80122941085014528210a02375a611402002610c026ea800629410830118329842809baa3301200400130870130840137540030734204046601a01000281120de83f20dc83f1159800cc004dd6182f183f1baa0609bac308101307e3754005375860a460fc6ea80052225980099b87300d002300c0068cc00401a00522325980098301841809baa0018cc004c21c04c21004dd5000cdd618109842009baa0039980d0021bac302130840137540069112cc004c18cc21804dd5000c56600266ebcc22804c21c04dd50019845009843809baa308a01308701375400d15980099baf3067308701375400660cc610e026ea8c22804c21c04dd500344cdc3cc004dd598331843809baa0039bae308a010029bae308a01308b01002405c66042604e6eb4c198c21c04dd50031845009843809baa0018a5042100514a084200a2a6610a029215365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642100483ea102023300d005001408907941f8899b879800800c18290004dd6982f183f1baa0029bad301d307e3754005003401530010039bac308101307e37540052337106eb4c178c1fcdd5000a400080922a660f89219e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641ed153307c491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641ed06841ec8992cc004c14c04633001375860fe60f86ea809260fe60f86ea812660b660f86ea812922259800998131bac308201307f37540c26eb8c078c1fcdd5180d983f9baa0018992cc004cc896600266e1cc034008c03401a2b300130100018cc00400a00322325980098309842009baa001899912cc004c1a8c21804dd5000c4c96600200319800800c56600266ebcc09cc22004dd50019845809844009baa0068acc004cdd798339844009baa001308b0130880137540071325980098301844009baa001899b87375a6118026112026ea8004dd698341844809baa0048a5042180460d06110026ea80060f684280a0f484280a0f280fa0f307983cc1e508d011845009843809baa00183ba10802308801308501375400260ca610a026ea8c190c21404dd5001c1d10820119807004000a04683820fe837a0fe3302637586106026100026ea8188dd718301840009baa301c30800137540046eb0c17cc20004dd5001c5660033001375860c06100026ea818a00937586106026100026ea800e661040260be6100026ea8c070c20004dd50011984100a61054455534472004bd70200c8991919912cc004cdc3acc004c180c0340062900045660020030788992cc004c2240400a264b3001301e375c610a02005100183da10602375a610a02003079421804610e0200284280908101002c56600266e1ccdc09bad3087013084013754610e020066eb4c21c04c21004dd5184380802002c4cc024dd6182c1842009baa006232306298008024dd7184480800cdd7184480984500800a02c3758611002610a026ea80060fc84080a2a661040292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e7400164204046eacc21404c21804004cc094dd5980f9841009baa064375c60c26104026ea8c078c20804dd5002184280800cc00418a6eb8c20c04c20004dd5180e1840009baa0029bad30603080013754007375a603e6100026ea800d00841ad07d454cc1f9241776578706563740a2020202076616c69646174655f6469726563745f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641f530010039bac308201307f375400523019375a60be6100026ea800501341a507c22b300130270118cc004dd6183f983e1baa024983f983e1baa049982d983e1baa04a4889660026604c6eb0c20804c1fcdd50309bae301e307f3754603660fe6ea80062b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0019bac305e307f37540053308101305e307f3754603660fe6ea8004cc20405301054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c184c21004dd5000c4cc896600260d4610c026ea8006264b30010018cc0040062b30013375e604e6110026ea800cc22c04c22004dd5003456600266ebcc19cc22004dd50009845809844009baa0038992cc004c0d0c22004dd5000c4c96600266e2400660026eacc1a4c22804dd518349845009baa0089bae308d010099bae308d01308e01009406913370e00260be6eb4c1a4c22804dd5002c528210e02375a6118026112026ea800629410860118341844009baa00183da10a0283d210a0283ca03e83cc1e60f3079423404611402610e026ea80060ee842008c22004c21404dd500098329842809baa306430850137540070744208046601c010002811a0e083fa0de83f9198009bad305f307f3754005375a603c60fe6ea800b3001003a4001225980099b88375a60c06102026ea80092000899b80001375a60c06102026ea800a0da83f101a4cc088dd5980e183f9baa061375c60bc60fe6ea8c06cc1fcdd5000a4444646464b30013370eb30013062300f0048a400115980080241ea264b3001308b010058992cc004c080dd7184380801440060fa842808dd6984380800c1ed08801184480802210e02420c0400b15980099b87337026eb4c22404c21804dd51844808011bad308901308601375461120200600b13300b375860b4610c026ea80208c8c1926002007375c611602003375c61160261180200280c0dd61845009843809baa0018a9984200a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016420c051533084014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016420c046eacc22004c22404004c2200400660020cb375c610c026106026ea8c07cc20c04dd5002c0120068059153307d491896578706563740a2020202076616c69646174655f6469726563745f6275726e5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641f106941f08a5041e483c888c8cc00400400c896600200314a31598009801984100800c4cc008008c20c04006294107c21000241e083c0888888cc88ca60026eacc21404c2180400664660020026eb0c15cc20c04dd5005112cc004006297ae0899843009843809842009baa3087010013300200230880100142140559800982f1805801c520008acc00400e0ed1325980098438080244c96600260386eb8c20c0400a20030794204046eb4c20c040060ee842008c2140400d0830120fe488966002646600200200844b30010018a518991991199119801001000912cc004006200713233225980099802802984980802456600266e3c01d221008a518991919800800807112cc00400629422b30013375e612a020026e9c00e2946266004004612c020028478090930119848809ba90073309101375200497ae042300514a0846008dd71846008009bad308d01001308f010014234046eacc2280400cdd718438080099801801984600801184500800a110028acc004cdc399b81375a611002610a026ea8c22004010dd69844009842809baa3088010050018992cc004cdc3cc004dd6182d1843009baa00da400122332259800cc004c1980069429450870144c96600266e24cc0940040166002013375c611c02007375c611c02611e0200680da266e000100062a66112029212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642200466e080040162006843808dd61845809844009baa002329800805d2000912cc004cdd798141845809baa002374e0071337000026eb4c1a8c22c04dd50014400508801204837586116026110026ea800902119b8100200b8801454cc210052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016420c04b3001301e00a8a40031480090820141fd08201454cc20c052401b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a20202020290016420804308501001330223756603860fe6ea8014dd7182f183f9baa301b307f375400d30010059bae308201307f3754603660fe6ea801a007002401c4444b30013370e6012004601000719800801c00a4464b3001305c307f37540031325980099baf30840130810137540026108026102026ea8c21004c20404dd5002456600266ebcc184c20404dd500098301840809baa308401308101375400913370f3001375660c06102026ea80066eb8c210040166eb8c18001501118109bad3060308101375400914a083f2294107e1841809840009baa00183ca0fa33009006001407907541e8444464b30013059307c37540031325980099baf308101307e375461020260fc6ea8c174c1f8dd5000982899840009ba90054bd70456600260b33001375660ba60fc6ea8c174c1f8dd5000c016911087472656173757279004039132598009831183f1baa0018992cc004006330010018992cc004c174c20004dd5000c4c96600266ebcc21404c20804dd51842809841009baa00130553308401375201297ae08acc004c17660026eacc184c20804dd5000c02691010874726561737572790040491325980098331841009baa0018992cc004006330010018acc004cdd798119842009baa0034c103d87a800089984300802998430080099843009ba6329800800cdd598321842809baa00499198008009bab3065308601375460ca610c026ea8024896600200314bd6f7b63044c8cc22804cdd81843808009ba63233001001375661120200444b30010018a5eb7bdb1822646611a0266ec0c22804004dd418301bad308b0100133003003308f01002308d01001422c04660060066118020046114020028440090011112cc00400a2003132332298008034c23804016646600200200a44b30010018998470099bb037520086e9800d2f5bded8c113298009bae308c010019bab308d010019848808012444b30013372001000713309201337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528212402880144cc24c04cdd81ba9009374c002004847008ca6002003008801a002222598008014400626466453001006984d00802cc8cc004004014896600200313309a01337606ea4010dd4001a5eb7bdb1822653001375c613002003375a613202003309d0100248896600266e4002000e26613c0266ec0dd48041ba80070058acc004cdc7804001c4c96600260f2003100289984f8099bb037520126ea000400909a0119b8000700289984f0099bb037520066ea0008cc01801800509901213202184d80800a1320240186eb8c24c04004dd6984a00800984b008012128028998490099bb037520066e98008cc01801800508d01211a02184780800a11a0240186eb8c21c04004dd59844008009845008012110024bd70454cc2080524126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642040507b408907b83dc1ee0f6844808c21804c20c04dd5000c54cc2040524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642000460c46104026ea80062a6610002920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641fd15330800149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641fc6108026102026ea80062a660fe92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641f8660146eb0c180c20004dd5004002c1d901e41da0ed07683b210a02308201307f3754003153307d49013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641f060bc60fc6ea8c174c1f8dd5000c54cc1f12401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641ed153307c4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641ec61000260fa6ea80062a660f692013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641e86600c6eb0c1fcc1f0dd500200108992cc0040060830418992cc00400608513259800800c10e087043821c4cc89660020030458992cc0040062b300130620028992cc004c0ecc178dd500144c9660020030488992cc004006264b300100182544c96600200313259800800c132264b3001001826c13609b04d8992cc004c1a800e2b300130423065375400d13259800800c13e264b300100182841420a1050899912cc0040060a513259800800c14e0a7053829c4c96600260e0007132598009824800c4c9660020030568992cc0040060af05782bc15e264b3001307400380941610711bae00141d060e20028378c1b4dd5005c566002609000315980098369baa00b807c15506e415506a20d4306b375401505441b46eb80050701836800a0d6375c00260d80048368c1a800506818331baa00682720c682720ce375c0028350c19c0050651833801412e09704b825a0d03065001418c60ca005049824c1260928330c18c005061182f9baa002823a0b813007306200882320be823411a08d046418c60c000282f0dd7000982f80120c0305d001416c6eb0006083041417860b600482c8dc3a401d03d407903d407913259800800c0fa07d03e8991801982d8021bad00181f20b63058002415913259800800c0f207903c8991801982c8021bad00181e20b230560024151039414903981cc0e607282b0c14c005051182980140de06f03781ba0a83051001413c6eb4004c14000a0688288c13800504c1bad001304d002818a09c304b00141246eb0004c12800a05d02e412c60900028230dd6000982380140ae0568240c11400504318209baa006814a07c814a0843758003028814208a304200141006084005026813409a04c8218c10000503e182000140920490248122082303e00140f060746ea801e04481b888966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018992cc00400601313259800800c02a01500a8992cc004c12400e330010098cc00401201900b403d00b404500b41186eb40060148248c11800504418230014022011008804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c088966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009826001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009828801c0520268270dd7000a0a2304e00141306eb8004c13400904e1825800a092807202480720288072092375800300d806a0983049001411c609200500b805c02e0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c101c80e407203881c8cc88c9660026024606a6ea80062606c6466ec0c0e8004c0e8c0ec004dd6181c981b1baa0018a9981a24818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640cc646600200200644b30010018a60103d87a80008992cc004cdd7981b80099ba548010cc0e8c02ccc0e8dd480225eb812f5c1130163303a374e66074606e00266074607000297ae04bd7044cc00c00cc0f0009035181d000a0703756600e60666ea8054dd7181b18199baa0019800912cc004006297ae089981b1819981b80099801001181c000a06a9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206491111919800800802912cc004006200b13259800800c4cc010c0f000801a26600a60780046600600600281d0c0f00050394dd6180898191baa01448888c8c8c8cc88c966002003159800980c181d9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130450028acc004c074c100dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305c0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d0c15cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260d000713304100f225980080146600201f102b827a06e8992cc0040062b300130433066375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130740038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307900389808183c808c1790761bae00141e460ec00283a0dd7000983a80420ec307300741c505941c46eb40060b083a0c1c400506f1bad001307000282aa0e2306e00141b06eb0004c1b400a0a505241b860d60028348c19cdd5000c14106441420a105082820d83069002419d04d41946eb80050681832800a0c6375c00260c80048328c1880050601bae0013061002418860be00282e8dd7000982f00120be305c001416860b06ea801a08282aa0828142082814208281420828142082814208281420828142082814208282ca083041820c10505d182d000a0b0375800260b200503e81f20b43057001415460ae00503c81e40f207882c0c154005053182a80140ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f182880140da06d03681b20a4304f0014134609e00503481a40d20688280c13400504b182680140ca065032819209c304b0014124609600503081840c20608260c124005047182480140ba05d02e817209430470014114608e00502c81640b20588240c11400504318209baa001815207c815208481540aa05502a411860860028208dd700098210012086304000140f860786ea800604a81ca04b025812c09504129981c99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40dd22010013259800980c181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981e9baa0018992cc0040062b3001301b303e375400313259800800c0ee264b300100181e40f207903c899912cc00400607d1325980098240014401a07e8228c1180050441bae0013045002411860860028208c0fcdd5000c0e903c40ea07503a81d20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec603a607a6ea8c070c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46601400c4646600200260066eacc070c0f4dd5180e181e9baa0022259800800c528456600266e3cdd7182080081d4528c4cc008008c10800503b207e300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20825980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d903b1bac303e002375a60780026466ec0dd4181e0009ba7303d001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6082003337149101023a200098008054c10800600a805100a182200144ca6002015304100199b8a489023a200098008054c108006600e66008008004805100a182200120843044001410466e29220102207d0000340f86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039009207c3758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e410066e2ccdc0000acc004cdc4000a4029148182290372080004401866e0c00520203370c002901019b8e00400240f46eb800d0411b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681c10381801801844464b3001300e0018992cc00400600713259800800c01200900480244c9660026072007006802a06c375c00281c8c0d800503418191baa0048acc004c034006264b3001001801c4c966002003004802401200913259800981c801c01a00a81b0dd7000a072303600140d060646ea8012004817902f18181baa00345901c0c078004c064dd500fc5268a9980ba491856616c696461746f722072657475726e65642066616c7365001365640581\"\n :\n \"5922b1010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c91807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601e6603c00297ae089980180198100012034301e001407122232598009806000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300b0018992cc004c08000626601c6eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc038dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0280062646644b300130220018998081bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b30013009001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260100031323259800981080140122c80f0dd6980f800980d9baa0038acc004c01c00626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c02c00626464b3001302000280245901d1bae301e001301a37540071598009805000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c028c060dd500144c8c8c966002604000513232598009807800c566002603c6ea800a00d16407d1598009807000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689806180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300a30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009805800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300a0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013015302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301933028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c050c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980a18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980a98119baa003899191919912cc004c0b400e264b3001301b30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc09cdd6181c005912cc00400a26605200c44b300100289980e80289980e804899192cc004c0b0c0e8dd5009c4c8c8c9660026084005132332259800981900144c966002608c0031330343758608a00244b300100280244cc084c11c0084c004c12000904545904318209baa0038acc004c0c400a264b3001304600189981a1bac304500122598008014012266042608e004260026090004822a2c8218c104dd5001c5660026072005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130300028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b208630413754007159800981780144c966002608c0031330343758608a00244b300100280244cc088c11c0084c004c12000904545904318209baa0038acc004c0b800a264b3001304600189981a1bac304500122598008014012266044608e004260026090004822a2c8218c104dd5001c566002605a005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130080028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b2086304137540071640fc81f903f207e40fc81f903f207e303e3754002264b300130310018992cc004c11400626604c608800200f16410860806ea800e2b300130300018992cc004c114006264b3001303330413754003132323259800982480144cc0acc12000c4cc0ac00402e2c8230c11c004c11c004c108dd5000c590401822000c5904218201baa0038b207c40f8607c6ea8008c10400e2c81f8c100004c100004c0ecdd5009c59039099816009912cc00400a33001303f303c3754606060786ea806e45300132330010010032259800800c528456600266ebcc10cc100dd5182198201baa30343040375460860026054660846ea400d2f5c114a3133002002304400140f8820a94294503c488c8cc00400400c896600200314bd7044cc896600266ebcc114c108dd5182298211baa3036304237540046058660886ea40152f5c113304400233004004001899802002000a0803043001304400141052302d303c37546080646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001303230413754608a0074a14a2820226608930014a14c103d87a8000a60103d87980004100660886e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11c00400e29462660040046090002821104544cc112600294298103d87a8000a60103d87980004100660886e9c0092f5c11330449800a51a60103d87a8000a60103d87980004100660886e9ccc110dd400080125eb8104020803758608660880026eb4c10c008cc008008c10c00504048896600200514c103d87a80008acc004c0c00062606466082608400497ae08cc00400e6086005337000029000a00640f482024464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208489980280298240022084375c60820026eacc108004c1100050420a5eb7bdb1826e012002911194c0040060090034004444b30010028acc00400629462941043456600200314a11598009980218228011bad30450018cc00400e608c0053046001400d14a0820104320869b81480024608060826082608200322598009817981e9baa002899192cc004c11000a0071641046eb4c108004c0f8dd500145903c48c100c104c104c104c1040064608060826082608260826082608260826082003222329800800c01200680088896600200510018cc00400e608c005330043045002001400c821a4466e0ccdc10011bad3033303e37540026eb4c0c8c0f8dd5000cdc424001371e911045553447200912cc004c0bcc0f4dd500144c8c8c8ca6002608a003304500398228012444b3001304900489981418240038998128010992cc004c0dc0062646644b3001304d0018991919912cc004c14400e0211641386eb8c138004dd7182700118270009bac304c0018b2094375a60940026096002608c6ea800a2b3001303600189919912cc004c134006264646644b3001305100380845904e1bae304e001375c609c004609c0026eb0c1300062c8250dd69825000982580098231baa0028acc004c0f8006264653001375a6096003304c0019bad304b002488966002609e005132323322598009829801c04a2c8280dd718280009bae305000230500013758609c005164130304b00130463754005159800981a800c4c8cc8966002609a003132323322598009828801c0422c8270dd718270009bae304e002304e001375860980031641286eb4c128004c12c004c118dd50014566002606800313232598009826001402e2c8248dd6982500098231baa0028acc004c0cc006264646644b3001304e003806c5904b1bad304b001375a60960046096002608c6ea800a2b30013032001899192cc004c13000a0171641246eb4c128004c118dd50014566002601a00313232598009826001402e2c8248dd6982500098231baa0028b20884110822104420884110822104418221baa0018b208c182280098220009821800981f1baa0028b20789119813801119baf3042303f37540026e9c0092222222222222222222980098271baa0139112cc004c04c00a2653001001802400e90002002222259800801c56600200510018b20ae8cc00401260b4007305a00299912cc004c01c00a266e0000cdd69826182c1baa0028b20ac3059003375a60b200480210574590504c03c03e44b30010018a40011300f33002002305500141492259800800c520008980799801001182a800a0a491119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c82b226600a00a60b800882b0dd7182a8009bad3056001305800141586602400800629000496600266e20005200089806000c400504e489660020031480022601e6600400460aa002829246022003223259800982518289baa001899198030008acc004cdd7980718299baa00330563053375400915980099baf30473053375400260ac60a66ea800e200316414516414460aa60a46ea80062c8280c118c144dd5182298289baa0024888888888a6002600e00f3006006912cc004cdc4000a400114c0103d87a8000899805001000a0b29801801a4444646644b300130510118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac3057306337540053758609c60c66ea80052225980099b87300c003300c0068acc004c03c00a33001003801488c96600260b460d06ea800626464b3001305c306a37540031323298009980f804000cdd6181318369baa0049bad307000248896600260c260de6ea800e2b30013371264664466e0ccdc019b80337040026eb4c1a0c1ccdd5001801240020046eb4c194c1c4dd50009bad30653071375401060e660e06ea800e60026eacc190c1c0dd5183218381baa00a9bae30730029bae30733074002407115980099b87001375a60c860e06ea801e266ebcdd3802181498381baa0078a5041b914a083722c83706eb0c1bcc1c0004c1acdd5000c52820d2305f306a37546602400800260d860d26ea80062c8338cc03402000502345906445906422b300198009bac3058306337540b50039bac30663063375400533065305730633754603660c66ea8004cc195301054455534472004bd702008899b879800800c16a90004dd6982c18319baa0029bad301e30633754005003401530010039bac30663063375400523019375a60b060c86ea800501345906145906145906122b300130500118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac30573063375400533065305730633754603660c66ea8004cc195301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c168c1a0dd5000c4c8c96600260b660d46ea800626464b3001337120033001375660c260da6ea8c184c1b4dd5003cdd718380044dd71838183880420328acc004cdc380098149bad3061306d375400913375e60e060e2004604c60da6ea8012294106b452820d6375a60de00260d66ea80062941069182f98351baa33012004001306c3069375400316419c6601a010002811a2c83222c8321159800cc004dd6182c18319baa05a9bac3066306337540053758609c60c66ea80052225980099b87300d002300c0068cc00401a005223259800982d18341baa0018cc004c1b0c1a4dd5000cdd6181118349baa0039980d8021bac3022306937540069112cc004c174c1acdd5000c56600266ebcc1bcc1b0dd5001983798361baa306f306c375400d15980099baf3061306c375400660c060d86ea8c1bcc1b0dd500344cdc3cc004dd5983018361baa0039bae306f0029bae306f3070002406066044602e6eb4c180c1b0dd5003183798361baa0018a5041a914a083522c835116419c6601a00a002811a2c832113370f300100182d520009bad305830633754005375a603c60c66ea800a006802a6002007375860cc60c66ea800a466e20dd6982c18321baa001480010134590614590614590612264b3001304d0128cc004dd6183218309baa025983218309baa040982a98309baa0424889660026604e6eb0c19cc190dd502d9bae301f30643754603860c86ea80062b300133225980099b87300c002300c0058acc004c03c00633001002800c88c96600260b460d06ea800626644b30013063306a37540031323301f00115980099baf3027306c375400660de60d86ea801a2b30013375e60c060d86ea8004c1bcc1b0dd5001c4c96600260b260d86ea8006266e1cdd6983818369baa001375a60c260da6ea8012294106b183098361baa0018b20d48b20d4306e306b37540031641a460d860d26ea8004c178c1a4dd5182e98349baa0038b20ce3300d007001408d1641911641906604c6eb0c19cc190dd502d9bae305930643754603860c86ea8004dd6182c18321baa0028acc00660026eb0c164c190dd502dc00e6eb0c19cc190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd70200a8cc004dd6982c98321baa0029bad301f306437540059800801cdd6183398321baa0029180d1bad30593065375400280a2660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641891641888acc004c0a004a33001375860c860c26ea809660c860c26ea810260aa60c26ea810922259800998139bac3067306437540b66eb8c07cc190dd5180e18321baa0018acc00660026604c6eb0c19cc190dd502d9bae305930643754603860c86ea80066eb0c160c190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c16cc1a4dd5000c4cc896600260c860d66ea8006264660400022b30013375e605060da6ea800cc1c0c1b4dd5003456600266ebcc184c1b4dd5000983818369baa0038992cc004c0d4c1b4dd5000c4c96600266e2400660026eacc18cc1bcdd5183198379baa0089bae30720099bae30723073009406d13370e00260566eb4c18cc1bcdd5002c52820da375a60e260dc6ea8006294106c183118369baa0018b20d68b20d6306f306c37540031641a860da60d46ea8004c17cc1a8dd5182f18351baa0038b20d03300e00800140911641951641948cc004dd6982c98321baa0029bad301f306437540059800801d2000912cc004cdc41bad305a30663754004900044cdc00009bad305a3066375400516419080da660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641888a50417c82f888c8cc00400400c896600200314a315980098019833800c4cc008008c1a0006294106220ca417882f0888888cc88ca60026eacc1a8c1ac00664660020026eb0c14cc1a0dd5005112cc004006297ae0899835983618349baa306c00133002002306d00141a959800982c1805801c520008acc004c1ac00e264b3001301c375c60ce0031375a60d000316419860d40071641a08329222598009919800800802112cc0040062946264664466446600400400244b30010018801c4c8cc89660026600a00a60f000915980099b8f007489008a518991919800800807112cc00400629422b30013375e60f40026e9c00e294626600400460f600283a90781983b1ba900733076375200497ae041c914a08390dd718388009bad3072001307400141c86eacc1bc00cdd718360009980180198388011837800a0da8acc004cdc399b81375a60da60d46ea8c1b4010dd6983698351baa306d0050018992cc004cdc3cc004dd6182b18359baa00da400122332259800cc004c18000694294506d44c96600266e24cc0980040166002013375c60e6007375c60e660e800680e2266e000100062c8370cdc1000802c400d06d1bac3070306d375400465300100ba4001225980099baf3029307037540046e9c00e266e00004dd6983218381baa0028800a0dc40946eb0c1c0c1b4dd500120443370200401710028b20d259800980f8054520018a400483422c83422c834060d4002660466eacc074c190dd50029bae305830643754603860c86ea801a600200b375c60ce60c86ea8c070c190dd5003400e004803888896600266e1cc024008c02000e33001003801488c96600260ac60c86ea8006264b30013375e60d260cc6ea8004c1a4c198dd5183498331baa0048acc004cdd7982d98331baa001305a3066375460d260cc6ea8012266e1e60026eacc168c198dd5000cdd71834802cdd7182d002a0243011375a60b460cc6ea80122941064452820c830683065375400316418c6601200c00280fa2c83008888c96600260a660c26ea8006264b30013375e60cc60c66ea8c198c18cdd5182b98319baa001304d33065375200a97ae08acc004c14e60026eacc15cc18cdd5182b98319baa001802d220108747265617375727900403d13259800982e18319baa0018991980f8008992cc004c15cc194dd5000c4c96600266ebcc1a8c19cdd5183518339baa001305133069375201297ae08acc004c15e60026eacc16cc19cdd5000c02691108747265617375727900404d13259800983018339baa001899198118008acc004cdd7981218349baa0034c0103d87a800089983580299835800998359ba6329800800cdd5982f18351baa00499198008009bab305f306b375460be60d66ea8024896600200314bd6f7b63044c8cc1bccdd818360009ba63233001001375660dc00444b30010018a5eb7bdb182264660e466ec0c1bc004dd418161bad3070001330030033074002307200141c06600600660e200460de00283690011112cc00400a2003132332298008034c1cc016646600200200a44b300100189983999bb037520086e9800d2f5bded8c113298009bae30710019bab3072001983b0012444b300133720010007133077337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ee880144cc1e0cdd81ba9009374c00200483a0ca6002003008801a002222598008014400626466453001006983f802cc8cc004004014896600200313307f337606ea4010dd4001a5eb7bdb1822653001375c60fa003375a60fc00330820100248896600266e4002000e2661060266ec0dd48041ba80070058acc004cdc7804001c4c96600260e600310028998420099bb037520126ea00040090800119b800070028998418099bb037520066ea0008cc01801800507f20fe184000800a0fc40186eb8c1e0004dd6983c800983d80120f289983b99bb037520066e98008cc01801800507320e6183a000a0e440186eb8c1b0004dd59836800983780120da4bd70459067183598341baa0018b20cc305c3067375400316419516419460d260cc6ea80062c8320cc028dd6182d18329baa00800530673064375400316418860b060c66ea8c15cc18cdd5000c59061459061183298311baa0018b20c033006375860c860c26ea801000844c8cc896600260860031332259800981918201baa002899191919912cc004c12800e264b3001303830463754003132323322598009827801c4c966002607a00313232598009829001403a2c8278dd7182800098261baa0078acc004c0f00062b3001304c375400f00c8b209a8b2094412860946ea801a2c8260dd718260009bae304c002304c00130473754003164114609200b16411c6eb8c11c004c11c008c11c004c118004c104dd500145903f1821000898021821802c590401bae304000130410013758607e00481e8dc3a401d1323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980998109baa00189919912cc004c0a4006264b3001301730253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b0c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0d4024896600200513302701410248992cc004c0dcc114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c04cc084dd5000c4c966002603660446ea8006264b3001301530233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084602e60446ea8c058c088dd5181298111baa0018b20403300a3758602a60426ea80608c8cc004004c00cdd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602460406ea800a2646464b3001302800289980318138018992cc004c0580062b3001302537540050058b204c8acc004c05400626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013010301e3754005132323259800981300144cc024c09400c4c9660026028003132598009814000c4c8c966002602e003132598009815800c4cc038c0a80040262c8140c098dd50014566002602c003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602600315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d1365640081\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolMintProtocolMintElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5942e3010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a49856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a202020202900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888888896600264653001301e001980f180f800cdc3a4009301e00248889660026004603c6ea800e330013022301f37540072302330243024001918119812000cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c9b80480066e05200091811981218121812181218121812181218121812000cdd2a4004911111111111111194c00488966002601c60626ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e800a330010038992cc004c04c006264b3001001803c4c966002003159800981e80144c966002602c00313259800800c02a264b30010018acc004c10000a33001001806402d00e402d03d402e01700b805a082303e00140f060746ea800a2b300130150018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11c00e02701241106eb40060228238c1100050421bad00130430028072088304100140fc6eb4004c10000a0168208c0f800503c181d1baa002804a06e40dc60706ea800601081d2011008804402103e181d800a072303737540051598009809000c566002606e6ea800a00f00640e100640d081a0c0d4dd5000c0150084015037401600b005802a076303800140d86070005003801c00e00681c8c0d800503418191baa003800a05e911194c004006009003400444464b300130120018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa0038acc004c044006264b300100180344c966002003007803c4c966002607a0071330160012259800801401e264b30010018cc00402a003130023040003402900b805c02e0168208c0f800903c402103a1bac001803c01d03d181d000a07030363754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0f400e26602c00244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130100018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009820001c4cc064004896600200500a8992cc0040063300100d800c4c008c10c00d00d403a01d00e8072088304100240fd00b40f46eb000601500a4100607a00281d8dd6800981e001401d03d181d000a070303637540071598009807800c4c9660020030068992cc00400600f007803c4c966002607a0070058042074375a00300740f4607400281c0c0d8dd5001c566002601c00313259800800c01a264b3001001803c01e00f13259800981e801c01601081d0dd6800c01d03d181d000a070303637540071598009806800c4c9660020030068992cc00400600f007803c01e264b3001303d003802c02103a1bae00140f4607400281c0c0d8dd5001c015033206640cc8199033206640cc60686ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260246606c00297ae0899801801981c0012062303600140d091119192cc00400633001222598009809981b1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303f0028cc00400e264b300130180018acc004c0f0dd5001401e00c81ea2b300130170018992cc00400600f13259800800c02201100880444c966002608600700a804a080375c0028218c10000503e181e1baa0028acc004c07c006264b3001001803c4c9660026084005009804207e304000140f860786ea800a00c81c90392072303a3754003005403100540f1005802c01600a8200c0f400503b181e801400e007003801a07c303b00140e4606e6ea800e00281a2444b300130133036375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607800315980099b8948010c0ec00600d13259800982080244c9660026034003159800981f1baa006804c02103f4566002603200313259800800c026264b3001001805402a015132598009822801c0320168210dd6800c0290451821000a080303e375400d1598009810800c566002607c6ea801a01300840fd00840ec81d903b181e1baa005803a07c3017303b00140e500640f46ea800600b005802c015040181e800a076303d002801c00e00700340f8607600281c8c0dcdd5001c0050344889660026026606c6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d132598009820801c02200e81f0dd6800c019041181f000a078375c002607a00481f0c0ec005039181b9baa003800a068911192cc004c050006264b3001001801c4c9660020030048024012264b3001303f003803401503c1bad001802207e303c00140e860706ea80122b300130130018acc004c0e0dd5002400e00481ca00481a9035181b1baa00348888cc8966002602c60726ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009822801c566002603a60806ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013055002899817007112cc00400a26606001a44b30010028cc00401e33001005899192cc004c0ccc158dd500d44c9660020030408992cc004006264b300100182144c966002003159800982f80144cc8966002607200313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a054825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0e0006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40a904b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b1598009820000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130370018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c566002606c00313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a056825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0d4006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40ad04b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b159800981a000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130080018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c11505a20b4416882d105a20b4416882d04c966002607000313259800800c116264b30010018acc004c18800a330010018044119028411905f411a08d04682320c63060001417860b86ea800a2b300130370018992cc00400608b13259800800c56600260c4005159800981d182e9baa0018992cc00400608f13259800800c4c9660020030498992cc0040062b300130660028cc00400e33001001806412902d412902d4129063412a09504a82520ce3064001418860c800504882441220908328c188005060182f1baa00182320b682320be823411a08d046418c60c000282f0c170dd5001411105920b2305a375400260b46ea800e08682e2087043821c10d060182e800a0b6305d002820c106083041417860b600282c8c15cdd500d40fd05409981980b112cc00400a33001305b30583754606e60b06ea809645300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa303b305c375460be002605e660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303d305e37540046062660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230343058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013039305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48896600200514c103d87a80008acc004c0dc00626072660ba60bc00497ae08cc00400e60be0053031001400c82c105c488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064175133005005306400441746eb8c174004dd5982f0009830000a0bc14bd6f7b6304dc024005222329800800c012006800888966002005159800800c528c52820be8acc00400629422b3001330043061002375a60c200319800801cc18800a60c4002801a294105b20be417d25980099b88001480022605c003100141592305c305d305d305d0019112cc004c0dcc168dd5001c4c9660020030028992cc004006007003801c4c96600260c400700580220be375a003003418860be00282e8c16cdd5001c00505848c170c174c174c174c174006460b860ba60ba60ba60ba60ba60ba60ba60ba003222329800800c01200680088896600200510018cc00400e60c4005330043061002001400c82fa4466e0ccdc10011bad303a305a37540026eb4c0e4c168dd5000cdc424001371e9110455534472009112cc004c0dcc168dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983380146600200f19800802c4c966002608000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002608e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130710038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001307600380cc0610731bae00141d860e60028388dd7000983900120e6307000141b901341b86eb000602501241c460dc0028360dd68009836801403d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981e800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607600313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc306437540091598009807800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd5002402906120c24184830906120c241848308c188dd5001c02502f402503340250641832800a0c63065002803c01e00f007419860c60028308c18c00a00b005802c0150641830800a0be3061002801c00e007003418860be00282e8c16cdd5001c005058488cc0a40088cdd7982f182d9baa001374e00491111111111111111114c004c1a8dd5009c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c54cc1c1240112657870656374205b5d203d206c6973745f62001641cd159800801454cc1c12411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260ec007307600299912cc004c01c00a266e0000cdd69829983a1baa00283020e23075003375a60ea004802107320e68a9983624812e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641ad300f00f912cc0040062900044c03ccc008008c1c400506e489660020031480022601e6600400460e200283724446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e2899802802983c00220e2375c60e20026eb4c1c8004c1d0005072198090020018a40012259800800c5200089807998010011838800a0dc91808800c88c96600260a260da6ea8006264b30010018cc0040062b30013375e601c60de6ea800cc1c8c1bcdd5002456600266ebcc138c1bcdd5000983918379baa0038800c18906c418506c418100641820c106083020e83071306e375400305e41ac609a60da6ea8c130c1b4dd50012444444445300130060069802802c896600266e2000520008a6103d87a8000899804801000a0e69801801a4444646644b300130570108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea8006264b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0029bac305e307f3754007375860a660fe6ea80092225980099b87300d003300d0078acc004c04000a33001003801488c96600260c26108026ea800626464b3001306330860137540031323298009980f804000cdd618131844809baa0049bad308c0100248896600260d06116026ea800e2b30013371264664466e0cc194cdc019b82001375a60de611e026ea800c008008dd698361846809baa001375a60d8611a026ea8020c23c04c23004dd5001cc004dd598359846009baa306b308c013754015375c611e02005375c611e0261200200480e22b30013370e0026eb4c1acc23004dd5003c4cdd79ba70043029308c01375400f14a084480a294108901454cc228052414365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164224043758611602611802002610e026ea800629410840118331843009baa3301300400130880130850137540030744208046601c012002811a0e083fa0de83f9159800cc004dd6182f983f9baa0618024dd6184100983f9baa0039984080982f183f9baa301b307f37540046610202981054455534472004bd70200a899b879800801418690004dd6982f983f9baa0039bad301e307f3754007004401800306a41f1153307d49018f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641f130010039bac308101307e375400523018375a60bc60fe6ea800501241a107b22b300130560108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea80062b30019800998121bac308101307e37540c06eb8c178c1f8dd5180d183f1baa0019bac305d307e37540053308001305d307e3754603460fc6ea8004cc20005301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c180c20c04dd5000c4c8c96600260c2610a026ea800626464b3001337120033001375660ce6110026ea8c19cc22004dd5003cdd71845808044dd718458098460080420308acc004cdc3800982e9bad3067308801375400913375e611602611802004604a6110026ea80122941085014528210a02375a611402002610c026ea800629410830118329842809baa3301200400130870130840137540030734204046601a01000281120de83f20dc83f1159800cc004dd6182f183f1baa0609bac308101307e3754005375860a460fc6ea80052225980099b87300d002300c0068cc00401a00522325980098301841809baa0018cc004c21c04c21004dd5000cdd618109842009baa0039980d0021bac302130840137540069112cc004c18cc21804dd5000c56600266ebcc22804c21c04dd50019845009843809baa308a01308701375400d15980099baf3067308701375400660cc610e026ea8c22804c21c04dd500344cdc3cc004dd598331843809baa0039bae308a010029bae308a01308b01002405c66042604e6eb4c198c21c04dd50031845009843809baa0018a5042100514a084200a2a6610a029215365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642100483ea102023300d005001408907941f8899b879800800c18290004dd6982f183f1baa0029bad301d307e3754005003401530010039bac308101307e37540052337106eb4c178c1fcdd5000a400080922a660f89219e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641ed153307c491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641ed06841ec8992cc004c14c04633001375860fe60f86ea809260fe60f86ea812660b660f86ea812922259800998131bac308201307f37540c26eb8c078c1fcdd5180d983f9baa0018992cc004cc896600266e1cc034008c03401a2b300130100018cc00400a00322325980098309842009baa001899912cc004c1a8c21804dd5000c4c96600200319800800c56600266ebcc09cc22004dd50019845809844009baa0068acc004cdd798339844009baa001308b0130880137540071325980098301844009baa001899b87375a6118026112026ea8004dd698341844809baa0048a5042180460d06110026ea80060f684280a0f484280a0f280fa0f307983cc1e508d011845009843809baa00183ba10802308801308501375400260ca610a026ea8c190c21404dd5001c1d10820119807004000a04683820fe837a0fe3302637586106026100026ea8188dd718301840009baa301c30800137540046eb0c17cc20004dd5001c5660033001375860c06100026ea818a00937586106026100026ea800e661040260be6100026ea8c070c20004dd50011984100a61054455534472004bd70200c8991919912cc004cdc3acc004c180c0340062900045660020030788992cc004c2240400a264b3001301e375c610a02005100183da10602375a610a02003079421804610e0200284280908101002c56600266e1ccdc09bad3087013084013754610e020066eb4c21c04c21004dd5184380802002c4cc024dd6182c1842009baa006232306298008024dd7184480800cdd7184480984500800a02c3758611002610a026ea80060fc84080a2a661040292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e7400164204046eacc21404c21804004cc094dd5980f9841009baa064375c60c26104026ea8c078c20804dd5002184280800cc00418a6eb8c20c04c20004dd5180e1840009baa0029bad30603080013754007375a603e6100026ea800d00841ad07d454cc1f9241776578706563740a2020202076616c69646174655f6469726563745f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641f530010039bac308201307f375400523019375a60be6100026ea800501341a507c22b300130270118cc004dd6183f983e1baa024983f983e1baa049982d983e1baa04a4889660026604c6eb0c20804c1fcdd50309bae301e307f3754603660fe6ea80062b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0019bac305e307f37540053308101305e307f3754603660fe6ea8004cc20405301054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c184c21004dd5000c4cc896600260d4610c026ea8006264b30010018cc0040062b30013375e604e6110026ea800cc22c04c22004dd5003456600266ebcc19cc22004dd50009845809844009baa0038992cc004c0d0c22004dd5000c4c96600266e2400660026eacc1a4c22804dd518349845009baa0089bae308d010099bae308d01308e01009406913370e00260be6eb4c1a4c22804dd5002c528210e02375a6118026112026ea800629410860118341844009baa00183da10a0283d210a0283ca03e83cc1e60f3079423404611402610e026ea80060ee842008c22004c21404dd500098329842809baa306430850137540070744208046601c010002811a0e083fa0de83f9198009bad305f307f3754005375a603c60fe6ea800b3001003a4001225980099b88375a60c06102026ea80092000899b80001375a60c06102026ea800a0da83f101a4cc088dd5980e183f9baa061375c60bc60fe6ea8c06cc1fcdd5000a4444646464b30013370eb30013062300f0048a400115980080241ea264b3001308b010058992cc004c080dd7184380801440060fa842808dd6984380800c1ed08801184480802210e02420c0400b15980099b87337026eb4c22404c21804dd51844808011bad308901308601375461120200600b13300b375860b4610c026ea80208c8c1926002007375c611602003375c61160261180200280c0dd61845009843809baa0018a9984200a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016420c051533084014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016420c046eacc22004c22404004c2200400660020cb375c610c026106026ea8c07cc20c04dd5002c0120068059153307d491896578706563740a2020202076616c69646174655f6469726563745f6275726e5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641f106941f08a5041e483c888c8cc00400400c896600200314a31598009801984100800c4cc008008c20c04006294107c21000241e083c0888888cc88ca60026eacc21404c2180400664660020026eb0c15cc20c04dd5005112cc004006297ae0899843009843809842009baa3087010013300200230880100142140559800982f1805801c520008acc00400e0ed1325980098438080244c96600260386eb8c20c0400a20030794204046eb4c20c040060ee842008c2140400d0830120fe488966002646600200200844b30010018a518991991199119801001000912cc004006200713233225980099802802984980802456600266e3c01d221008a518991919800800807112cc00400629422b30013375e612a020026e9c00e2946266004004612c020028478090930119848809ba90073309101375200497ae042300514a0846008dd71846008009bad308d01001308f010014234046eacc2280400cdd718438080099801801984600801184500800a110028acc004cdc399b81375a611002610a026ea8c22004010dd69844009842809baa3088010050018992cc004cdc3cc004dd6182d1843009baa00da400122332259800cc004c1980069429450870144c96600266e24cc0940040166002013375c611c02007375c611c02611e0200680da266e000100062a66112029212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642200466e080040162006843808dd61845809844009baa002329800805d2000912cc004cdd798141845809baa002374e0071337000026eb4c1a8c22c04dd50014400508801204837586116026110026ea800902119b8100200b8801454cc210052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016420c04b3001301e00a8a40031480090820141fd08201454cc20c052401b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a20202020290016420804308501001330223756603860fe6ea8014dd7182f183f9baa301b307f375400d30010059bae308201307f3754603660fe6ea801a007002401c4444b30013370e6012004601000719800801c00a4464b3001305c307f37540031325980099baf30840130810137540026108026102026ea8c21004c20404dd5002456600266ebcc184c20404dd500098301840809baa308401308101375400913370f3001375660c06102026ea80066eb8c210040166eb8c18001501118109bad3060308101375400914a083f2294107e1841809840009baa00183ca0fa33009006001407907541e8444464b30013059307c37540031325980099baf308101307e375461020260fc6ea8c174c1f8dd5000982899840009ba90054bd70456600260b33001375660ba60fc6ea8c174c1f8dd5000c016911087472656173757279004039132598009831183f1baa0018992cc004006330010018992cc004c174c20004dd5000c4c96600266ebcc21404c20804dd51842809841009baa00130553308401375201297ae08acc004c17660026eacc184c20804dd5000c02691010874726561737572790040491325980098331841009baa0018992cc004006330010018acc004cdd798119842009baa0034c103d87a800089984300802998430080099843009ba6329800800cdd598321842809baa00499198008009bab3065308601375460ca610c026ea8024896600200314bd6f7b63044c8cc22804cdd81843808009ba63233001001375661120200444b30010018a5eb7bdb1822646611a0266ec0c22804004dd418301bad308b0100133003003308f01002308d01001422c04660060066118020046114020028440090011112cc00400a2003132332298008034c23804016646600200200a44b30010018998470099bb037520086e9800d2f5bded8c113298009bae308c010019bab308d010019848808012444b30013372001000713309201337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528212402880144cc24c04cdd81ba9009374c002004847008ca6002003008801a002222598008014400626466453001006984d00802cc8cc004004014896600200313309a01337606ea4010dd4001a5eb7bdb1822653001375c613002003375a613202003309d0100248896600266e4002000e26613c0266ec0dd48041ba80070058acc004cdc7804001c4c96600260f2003100289984f8099bb037520126ea000400909a0119b8000700289984f0099bb037520066ea0008cc01801800509901213202184d80800a1320240186eb8c24c04004dd6984a00800984b008012128028998490099bb037520066e98008cc01801800508d01211a02184780800a11a0240186eb8c21c04004dd59844008009845008012110024bd70454cc2080524126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642040507b408907b83dc1ee0f6844808c21804c20c04dd5000c54cc2040524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642000460c46104026ea80062a6610002920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641fd15330800149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641fc6108026102026ea80062a660fe92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641f8660146eb0c180c20004dd5004002c1d901e41da0ed07683b210a02308201307f3754003153307d49013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641f060bc60fc6ea8c174c1f8dd5000c54cc1f12401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641ed153307c4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641ec61000260fa6ea80062a660f692013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641e86600c6eb0c1fcc1f0dd500200108992cc0040060830418992cc00400608513259800800c10e087043821c4cc89660020030458992cc0040062b300130620028992cc004c0ecc178dd500144c9660020030488992cc004006264b300100182544c96600200313259800800c132264b3001001826c13609b04d8992cc004c1a800e2b300130423065375400d13259800800c13e264b300100182841420a1050899912cc0040060a513259800800c14e0a7053829c4c96600260e0007132598009824800c4c9660020030568992cc0040060af05782bc15e264b3001307400380941610711bae00141d060e20028378c1b4dd5005c566002609000315980098369baa00b807c15506e415506a20d4306b375401505441b46eb80050701836800a0d6375c00260d80048368c1a800506818331baa00682720c682720ce375c0028350c19c0050651833801412e09704b825a0d03065001418c60ca005049824c1260928330c18c005061182f9baa002823a0b813007306200882320be823411a08d046418c60c000282f0dd7000982f80120c0305d001416c6eb0006083041417860b600482c8dc3a401d03d407903d407913259800800c0fa07d03e8991801982d8021bad00181f20b63058002415913259800800c0f207903c8991801982c8021bad00181e20b230560024151039414903981cc0e607282b0c14c005051182980140de06f03781ba0a83051001413c6eb4004c14000a0688288c13800504c1bad001304d002818a09c304b00141246eb0004c12800a05d02e412c60900028230dd6000982380140ae0568240c11400504318209baa006814a07c814a0843758003028814208a304200141006084005026813409a04c8218c10000503e182000140920490248122082303e00140f060746ea801e04481b888966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018992cc00400601313259800800c02a01500a8992cc004c12400e330010098cc00401201900b403d00b404500b41186eb40060148248c11800504418230014022011008804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c088966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009826001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009828801c0520268270dd7000a0a2304e00141306eb8004c13400904e1825800a092807202480720288072092375800300d806a0983049001411c609200500b805c02e0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c101c80e407203881c8cc88c9660026024606a6ea80062606c6466ec0c0e8004c0e8c0ec004dd6181c981b1baa0018a9981a24818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640cc646600200200644b30010018a60103d87a80008992cc004cdd7981b80099ba548010cc0e8c02ccc0e8dd480225eb812f5c1130163303a374e66074606e00266074607000297ae04bd7044cc00c00cc0f0009035181d000a0703756600e60666ea8054dd7181b18199baa0019800912cc004006297ae089981b1819981b80099801001181c000a06a9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206491111919800800802912cc004006200b13259800800c4cc010c0f000801a26600a60780046600600600281d0c0f00050394dd6180898191baa01448888c8c8c8cc88c966002003159800980c181d9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130450028acc004c074c100dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305c0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d0c15cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260d000713304100f225980080146600201f102b827a06e8992cc0040062b300130433066375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130740038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307900389808183c808c1790761bae00141e460ec00283a0dd7000983a80420ec307300741c505941c46eb40060b083a0c1c400506f1bad001307000282aa0e2306e00141b06eb0004c1b400a0a505241b860d60028348c19cdd5000c14106441420a105082820d83069002419d04d41946eb80050681832800a0c6375c00260c80048328c1880050601bae0013061002418860be00282e8dd7000982f00120be305c001416860b06ea801a08282aa0828142082814208281420828142082814208281420828142082814208282ca083041820c10505d182d000a0b0375800260b200503e81f20b43057001415460ae00503c81e40f207882c0c154005053182a80140ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f182880140da06d03681b20a4304f0014134609e00503481a40d20688280c13400504b182680140ca065032819209c304b0014124609600503081840c20608260c124005047182480140ba05d02e817209430470014114608e00502c81640b20588240c11400504318209baa001815207c815208481540aa05502a411860860028208dd700098210012086304000140f860786ea800604a81ca04b025812c09504129981c99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40dd22010013259800980c181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981e9baa0018992cc0040062b3001301b303e375400313259800800c0ee264b300100181e40f207903c899912cc00400607d1325980098240014401a07e8228c1180050441bae0013045002411860860028208c0fcdd5000c0e903c40ea07503a81d20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec603a607a6ea8c070c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46601400c4646600200260066eacc070c0f4dd5180e181e9baa0022259800800c528456600266e3cdd7182080081d4528c4cc008008c10800503b207e300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20825980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d903b1bac303e002375a60780026466ec0dd4181e0009ba7303d001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6082003337149101023a200098008054c10800600a805100a182200144ca6002015304100199b8a489023a200098008054c108006600e66008008004805100a182200120843044001410466e29220102207d0000340f86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039009207c3758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e410066e2ccdc0000acc004cdc4000a4029148182290372080004401866e0c00520203370c002901019b8e00400240f46eb800d0411b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681c10381801801844464b3001300e0018992cc00400600713259800800c01200900480244c9660026072007006802a06c375c00281c8c0d800503418191baa0048acc004c034006264b3001001801c4c966002003004802401200913259800981c801c01a00a81b0dd7000a072303600140d060646ea8012004817902f18181baa00345901c0c078004c064dd500fc5268a9980ba491856616c696461746f722072657475726e65642066616c7365001365640581\"\n :\n \"5922b1010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c91807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601e6603c00297ae089980180198100012034301e001407122232598009806000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300b0018992cc004c08000626601c6eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc038dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0280062646644b300130220018998081bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b30013009001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260100031323259800981080140122c80f0dd6980f800980d9baa0038acc004c01c00626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c02c00626464b3001302000280245901d1bae301e001301a37540071598009805000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c028c060dd500144c8c8c966002604000513232598009807800c566002603c6ea800a00d16407d1598009807000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689806180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300a30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009805800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300a0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013015302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301933028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c050c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980a18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980a98119baa003899191919912cc004c0b400e264b3001301b30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc09cdd6181c005912cc00400a26605200c44b300100289980e80289980e804899192cc004c0b0c0e8dd5009c4c8c8c9660026084005132332259800981900144c966002608c0031330343758608a00244b300100280244cc084c11c0084c004c12000904545904318209baa0038acc004c0c400a264b3001304600189981a1bac304500122598008014012266042608e004260026090004822a2c8218c104dd5001c5660026072005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130300028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b208630413754007159800981780144c966002608c0031330343758608a00244b300100280244cc088c11c0084c004c12000904545904318209baa0038acc004c0b800a264b3001304600189981a1bac304500122598008014012266044608e004260026090004822a2c8218c104dd5001c566002605a005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130080028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b2086304137540071640fc81f903f207e40fc81f903f207e303e3754002264b300130310018992cc004c11400626604c608800200f16410860806ea800e2b300130300018992cc004c114006264b3001303330413754003132323259800982480144cc0acc12000c4cc0ac00402e2c8230c11c004c11c004c108dd5000c590401822000c5904218201baa0038b207c40f8607c6ea8008c10400e2c81f8c100004c100004c0ecdd5009c59039099816009912cc00400a33001303f303c3754606060786ea806e45300132330010010032259800800c528456600266ebcc10cc100dd5182198201baa30343040375460860026054660846ea400d2f5c114a3133002002304400140f8820a94294503c488c8cc00400400c896600200314bd7044cc896600266ebcc114c108dd5182298211baa3036304237540046058660886ea40152f5c113304400233004004001899802002000a0803043001304400141052302d303c37546080646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001303230413754608a0074a14a2820226608930014a14c103d87a8000a60103d87980004100660886e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11c00400e29462660040046090002821104544cc112600294298103d87a8000a60103d87980004100660886e9c0092f5c11330449800a51a60103d87a8000a60103d87980004100660886e9ccc110dd400080125eb8104020803758608660880026eb4c10c008cc008008c10c00504048896600200514c103d87a80008acc004c0c00062606466082608400497ae08cc00400e6086005337000029000a00640f482024464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208489980280298240022084375c60820026eacc108004c1100050420a5eb7bdb1826e012002911194c0040060090034004444b30010028acc00400629462941043456600200314a11598009980218228011bad30450018cc00400e608c0053046001400d14a0820104320869b81480024608060826082608200322598009817981e9baa002899192cc004c11000a0071641046eb4c108004c0f8dd500145903c48c100c104c104c104c1040064608060826082608260826082608260826082003222329800800c01200680088896600200510018cc00400e608c005330043045002001400c821a4466e0ccdc10011bad3033303e37540026eb4c0c8c0f8dd5000cdc424001371e911045553447200912cc004c0bcc0f4dd500144c8c8c8ca6002608a003304500398228012444b3001304900489981418240038998128010992cc004c0dc0062646644b3001304d0018991919912cc004c14400e0211641386eb8c138004dd7182700118270009bac304c0018b2094375a60940026096002608c6ea800a2b3001303600189919912cc004c134006264646644b3001305100380845904e1bae304e001375c609c004609c0026eb0c1300062c8250dd69825000982580098231baa0028acc004c0f8006264653001375a6096003304c0019bad304b002488966002609e005132323322598009829801c04a2c8280dd718280009bae305000230500013758609c005164130304b00130463754005159800981a800c4c8cc8966002609a003132323322598009828801c0422c8270dd718270009bae304e002304e001375860980031641286eb4c128004c12c004c118dd50014566002606800313232598009826001402e2c8248dd6982500098231baa0028acc004c0cc006264646644b3001304e003806c5904b1bad304b001375a60960046096002608c6ea800a2b30013032001899192cc004c13000a0171641246eb4c128004c118dd50014566002601a00313232598009826001402e2c8248dd6982500098231baa0028b20884110822104420884110822104418221baa0018b208c182280098220009821800981f1baa0028b20789119813801119baf3042303f37540026e9c0092222222222222222222980098271baa0139112cc004c04c00a2653001001802400e90002002222259800801c56600200510018b20ae8cc00401260b4007305a00299912cc004c01c00a266e0000cdd69826182c1baa0028b20ac3059003375a60b200480210574590504c03c03e44b30010018a40011300f33002002305500141492259800800c520008980799801001182a800a0a491119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c82b226600a00a60b800882b0dd7182a8009bad3056001305800141586602400800629000496600266e20005200089806000c400504e489660020031480022601e6600400460aa002829246022003223259800982518289baa001899198030008acc004cdd7980718299baa00330563053375400915980099baf30473053375400260ac60a66ea800e200316414516414460aa60a46ea80062c8280c118c144dd5182298289baa0024888888888a6002600e00f3006006912cc004cdc4000a400114c0103d87a8000899805001000a0b29801801a4444646644b300130510118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac3057306337540053758609c60c66ea80052225980099b87300c003300c0068acc004c03c00a33001003801488c96600260b460d06ea800626464b3001305c306a37540031323298009980f804000cdd6181318369baa0049bad307000248896600260c260de6ea800e2b30013371264664466e0ccdc019b80337040026eb4c1a0c1ccdd5001801240020046eb4c194c1c4dd50009bad30653071375401060e660e06ea800e60026eacc190c1c0dd5183218381baa00a9bae30730029bae30733074002407115980099b87001375a60c860e06ea801e266ebcdd3802181498381baa0078a5041b914a083722c83706eb0c1bcc1c0004c1acdd5000c52820d2305f306a37546602400800260d860d26ea80062c8338cc03402000502345906445906422b300198009bac3058306337540b50039bac30663063375400533065305730633754603660c66ea8004cc195301054455534472004bd702008899b879800800c16a90004dd6982c18319baa0029bad301e30633754005003401530010039bac30663063375400523019375a60b060c86ea800501345906145906145906122b300130500118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac30573063375400533065305730633754603660c66ea8004cc195301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c168c1a0dd5000c4c8c96600260b660d46ea800626464b3001337120033001375660c260da6ea8c184c1b4dd5003cdd718380044dd71838183880420328acc004cdc380098149bad3061306d375400913375e60e060e2004604c60da6ea8012294106b452820d6375a60de00260d66ea80062941069182f98351baa33012004001306c3069375400316419c6601a010002811a2c83222c8321159800cc004dd6182c18319baa05a9bac3066306337540053758609c60c66ea80052225980099b87300d002300c0068cc00401a005223259800982d18341baa0018cc004c1b0c1a4dd5000cdd6181118349baa0039980d8021bac3022306937540069112cc004c174c1acdd5000c56600266ebcc1bcc1b0dd5001983798361baa306f306c375400d15980099baf3061306c375400660c060d86ea8c1bcc1b0dd500344cdc3cc004dd5983018361baa0039bae306f0029bae306f3070002406066044602e6eb4c180c1b0dd5003183798361baa0018a5041a914a083522c835116419c6601a00a002811a2c832113370f300100182d520009bad305830633754005375a603c60c66ea800a006802a6002007375860cc60c66ea800a466e20dd6982c18321baa001480010134590614590614590612264b3001304d0128cc004dd6183218309baa025983218309baa040982a98309baa0424889660026604e6eb0c19cc190dd502d9bae301f30643754603860c86ea80062b300133225980099b87300c002300c0058acc004c03c00633001002800c88c96600260b460d06ea800626644b30013063306a37540031323301f00115980099baf3027306c375400660de60d86ea801a2b30013375e60c060d86ea8004c1bcc1b0dd5001c4c96600260b260d86ea8006266e1cdd6983818369baa001375a60c260da6ea8012294106b183098361baa0018b20d48b20d4306e306b37540031641a460d860d26ea8004c178c1a4dd5182e98349baa0038b20ce3300d007001408d1641911641906604c6eb0c19cc190dd502d9bae305930643754603860c86ea8004dd6182c18321baa0028acc00660026eb0c164c190dd502dc00e6eb0c19cc190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd70200a8cc004dd6982c98321baa0029bad301f306437540059800801cdd6183398321baa0029180d1bad30593065375400280a2660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641891641888acc004c0a004a33001375860c860c26ea809660c860c26ea810260aa60c26ea810922259800998139bac3067306437540b66eb8c07cc190dd5180e18321baa0018acc00660026604c6eb0c19cc190dd502d9bae305930643754603860c86ea80066eb0c160c190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c16cc1a4dd5000c4cc896600260c860d66ea8006264660400022b30013375e605060da6ea800cc1c0c1b4dd5003456600266ebcc184c1b4dd5000983818369baa0038992cc004c0d4c1b4dd5000c4c96600266e2400660026eacc18cc1bcdd5183198379baa0089bae30720099bae30723073009406d13370e00260566eb4c18cc1bcdd5002c52820da375a60e260dc6ea8006294106c183118369baa0018b20d68b20d6306f306c37540031641a860da60d46ea8004c17cc1a8dd5182f18351baa0038b20d03300e00800140911641951641948cc004dd6982c98321baa0029bad301f306437540059800801d2000912cc004cdc41bad305a30663754004900044cdc00009bad305a3066375400516419080da660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641888a50417c82f888c8cc00400400c896600200314a315980098019833800c4cc008008c1a0006294106220ca417882f0888888cc88ca60026eacc1a8c1ac00664660020026eb0c14cc1a0dd5005112cc004006297ae0899835983618349baa306c00133002002306d00141a959800982c1805801c520008acc004c1ac00e264b3001301c375c60ce0031375a60d000316419860d40071641a08329222598009919800800802112cc0040062946264664466446600400400244b30010018801c4c8cc89660026600a00a60f000915980099b8f007489008a518991919800800807112cc00400629422b30013375e60f40026e9c00e294626600400460f600283a90781983b1ba900733076375200497ae041c914a08390dd718388009bad3072001307400141c86eacc1bc00cdd718360009980180198388011837800a0da8acc004cdc399b81375a60da60d46ea8c1b4010dd6983698351baa306d0050018992cc004cdc3cc004dd6182b18359baa00da400122332259800cc004c18000694294506d44c96600266e24cc0980040166002013375c60e6007375c60e660e800680e2266e000100062c8370cdc1000802c400d06d1bac3070306d375400465300100ba4001225980099baf3029307037540046e9c00e266e00004dd6983218381baa0028800a0dc40946eb0c1c0c1b4dd500120443370200401710028b20d259800980f8054520018a400483422c83422c834060d4002660466eacc074c190dd50029bae305830643754603860c86ea801a600200b375c60ce60c86ea8c070c190dd5003400e004803888896600266e1cc024008c02000e33001003801488c96600260ac60c86ea8006264b30013375e60d260cc6ea8004c1a4c198dd5183498331baa0048acc004cdd7982d98331baa001305a3066375460d260cc6ea8012266e1e60026eacc168c198dd5000cdd71834802cdd7182d002a0243011375a60b460cc6ea80122941064452820c830683065375400316418c6601200c00280fa2c83008888c96600260a660c26ea8006264b30013375e60cc60c66ea8c198c18cdd5182b98319baa001304d33065375200a97ae08acc004c14e60026eacc15cc18cdd5182b98319baa001802d220108747265617375727900403d13259800982e18319baa0018991980f8008992cc004c15cc194dd5000c4c96600266ebcc1a8c19cdd5183518339baa001305133069375201297ae08acc004c15e60026eacc16cc19cdd5000c02691108747265617375727900404d13259800983018339baa001899198118008acc004cdd7981218349baa0034c0103d87a800089983580299835800998359ba6329800800cdd5982f18351baa00499198008009bab305f306b375460be60d66ea8024896600200314bd6f7b63044c8cc1bccdd818360009ba63233001001375660dc00444b30010018a5eb7bdb182264660e466ec0c1bc004dd418161bad3070001330030033074002307200141c06600600660e200460de00283690011112cc00400a2003132332298008034c1cc016646600200200a44b300100189983999bb037520086e9800d2f5bded8c113298009bae30710019bab3072001983b0012444b300133720010007133077337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ee880144cc1e0cdd81ba9009374c00200483a0ca6002003008801a002222598008014400626466453001006983f802cc8cc004004014896600200313307f337606ea4010dd4001a5eb7bdb1822653001375c60fa003375a60fc00330820100248896600266e4002000e2661060266ec0dd48041ba80070058acc004cdc7804001c4c96600260e600310028998420099bb037520126ea00040090800119b800070028998418099bb037520066ea0008cc01801800507f20fe184000800a0fc40186eb8c1e0004dd6983c800983d80120f289983b99bb037520066e98008cc01801800507320e6183a000a0e440186eb8c1b0004dd59836800983780120da4bd70459067183598341baa0018b20cc305c3067375400316419516419460d260cc6ea80062c8320cc028dd6182d18329baa00800530673064375400316418860b060c66ea8c15cc18cdd5000c59061459061183298311baa0018b20c033006375860c860c26ea801000844c8cc896600260860031332259800981918201baa002899191919912cc004c12800e264b3001303830463754003132323322598009827801c4c966002607a00313232598009829001403a2c8278dd7182800098261baa0078acc004c0f00062b3001304c375400f00c8b209a8b2094412860946ea801a2c8260dd718260009bae304c002304c00130473754003164114609200b16411c6eb8c11c004c11c008c11c004c118004c104dd500145903f1821000898021821802c590401bae304000130410013758607e00481e8dc3a401d1323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980998109baa00189919912cc004c0a4006264b3001301730253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b0c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0d4024896600200513302701410248992cc004c0dcc114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c04cc084dd5000c4c966002603660446ea8006264b3001301530233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084602e60446ea8c058c088dd5181298111baa0018b20403300a3758602a60426ea80608c8cc004004c00cdd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602460406ea800a2646464b3001302800289980318138018992cc004c0580062b3001302537540050058b204c8acc004c05400626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013010301e3754005132323259800981300144cc024c09400c4c9660026028003132598009814000c4c8c966002602e003132598009815800c4cc038c0a80040262c8140c098dd50014566002602c003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602600315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d1365640081\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n :\n \"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([\n PolicyId,\n ScriptHash,\n ScriptHash,\n ScriptHash,\n ]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n :\n \"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([\n PolicyId,\n ScriptHash,\n ScriptHash,\n ScriptHash,\n ]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201\"\n :\n \"5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141\",\n Type.Tuple([\n PolicyId,\n ScriptHash,\n ScriptHash,\n ScriptHash,\n ]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolStakeProtocolStakeWithdraw {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"593b9d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888896600264653001301b001980d980e000cdc3a4009301b0024888966002600460366ea800e33001301f301c37540072302030213021001918101810800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009b80480066e95200248888888888888c8cc88c8c966002003198009112cc004c044c0c0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981c80146600200713259800980b000c566002606c6ea800a00f00640dd159800980a800c4c9660020030078992cc0040060110088044022264b3001303d003805402503a1bae00140f4607400281c0c0d8dd50014566002603800313259800800c01e264b3001303c002804c021039181d000a0703036375400500640cc8199033181a1baa001802a016802a06c802c01600b00540e8606e00281a8c0dc00a007003801c00d038181a800a0663031375400700140b922259800980898181baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130360018acc004cdc4a4008606a0030068992cc004c0ec012264b300130180018acc004c0e0dd5003402601081ca2b300130170018992cc00400601313259800800c02a01500a8992cc004c0fc00e01900b40f06eb400601481f8c0f000503a181c1baa0068acc004c0780062b30013038375400d0098042072804206a40d481a8c0d8dd5002c01d038180a981a800a066803206e3754003005802c01600a81d0c0dc005035181b801400e007003801a070303500140cc60626ea800e0028172444b300130113030375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0ec00e01100740e06eb400600c81d8c0e00050361bae001303700240e0606a0028198c0c4dd5001c00502e4888c966002602400313259800800c00e264b3001001802401200913259800981c801c01a00a81b0dd6800c011039181b000a068303237540091598009808800c56600260646ea801200700240cd00240bc8178c0c0dd5001a44446644b300130143033375400f13259800800c082264b30010018992cc00400604513259800800c4c9660020030248992cc00400604b0258992cc004c0fc00e2b3001301b303a375400d13259800800c09e264b300100181440a226644b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc004006264b300100181ac4c966002003159800982780144cc0b0038896600200513302e00d225980080146600200f19800802c4c9660026060609e6ea8066264b300100181e44c96600200313259800800c0fa264b30010018acc004c16000a26644b300130360018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d029411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606a00313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a052823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b159800981a000c4c9660020030428992cc0040060870438992cc004c17400e26607400244b3001002803c4c96600200319800800c4c008c18000e08e814a08f047823c11d061182f00120b882220b43758003043821a0ba305a001416060ac6ea80162b300130330018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d02a411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606400313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a054823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0c4006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b15980099b8748038006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b041414c829905320a6414c829905320a613259800981a800c4c9660020030418992cc0040062b3001305b0028cc004006011042409d0424161042821410a08482e0c164005057182a9baa0028acc004c0d0006264b3001001820c4c966002003159800982d8014566002606e60ac6ea8006264b3001001821c4c96600200313259800800c116264b30010018acc004c17c00a330010038cc00400601904640b104640b10464171046823411a08c8300c17400505b182e801411208904482220bc305b001416460ae6ea800608482a208482c2085042821410905c182c800a0ae3055375400504041488290c14cdd500098299baa00381fa0aa81fc0fe07f03f416460ac00282a0c15800a07b03d81ec0f5057182a000a0a43050375403303b413426606002a44b30010028cc004c150c144dd5181998289baa024914c004c8cc00400400c896600200314a115980099baf30583055375460b060aa6ea8c0dcc154dd5182c00098169982b9ba90034bd704528c4cc008008c16400505220aca50a51414123055305630563056305630563056305630560019181898289baa305532330010010022259800800c52f5c303d87a80008101800044c8cc8966003300130363056375460b40074a14a282a22660b330014a14c103d87a8000a60103d87980004150660b26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17000400e294626600400460ba00282b105a44cc166600294298103d87a8000a60103d87980004150660b26e9c0092f5c11330599800a51a60103d87a8000a60103d87980004150660b26e9ccc164dd400080125eb8105420a8375860b060b20026eb4c160008cc008008c16000505548c154c158c158c158c158006444b30010028a6103d87a80008acc004c0d00062605c660ac60ae00497ae08cc00400e60b0005302d001400c82890554888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd6982c000982d000a0b03232330010010062259800800c00e2646644b30013372201200515980099b8f0090028800c01905844cc014014c17c0110581bae3058001375660b200260b600282c852f5bded8c029000488966002606860a66ea800e264b300100180144c966002003003801c00e264b3001305b003802c0110581bad001801a0b63058001415860a86ea800e002828a44646600200200644b30010018a5eb8226644b30013375e60b460ae6ea8c168c15cdd5181c982b9baa002302f33059375200a97ae089982c80119802002000c4cc010010005054182c000982c800a0ac9182a982b182b182b182b182b000c8c154c158c158c15800644b30010018a4001133700900119801001182b800a0a8911194c0040060090034004444b30010028acc00400629462941058456600200314a115980099802182d0011bad305a0018cc00400e60b6005305b001400d14a082a105820b09112cc004c0d0c14cdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983000146600200f19800802c4c966002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981e000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c19c00e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b000e02d01541a46eb800506c1834800a0ce375c00260d00048348c19800506440410641bac001807c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002608600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b3001306a0038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001306f00380cc06106c1bae00141bc60d80028350dd7000983580120d83069001419d013419c6eb000602501241a860ce0028328dd68009833001403d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981d000c4c96600200300b8992cc00400601900c80644c96600260c800700e806a0c2375a00300c419060c200282f8c174dd50024566002607200313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009833801c0460208320dd6800c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607000313259800800c02e264b30010018064032019132598009832001c03a01a8308dd6800c0310641830800a0be305d375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001306400380740350611bad00180620c83061001417c60ba6ea801201482d105a20b4416882d105a20b4416860b66ea800e0128172012818a01282e8c17800505c182f001401e00f007803a0be305c001416860b8005005802c01600a82e8c168005058182d001400e007003801a0b63058001415860a86ea800e002828a44b30010018a4001133700900119801001182b800a0a89b89480026e21200048888888888888888a600260c26ea8046444b300130110028994c004006009003a40008008888966002007159800801440062a660ce92112657870656374205b5d203d206c6973745f62001641a9159800801454cc19d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260da007306d00299912cc004c01c00a266e0000cdd6982698359baa0028a99834a4811a6578706563742076616c69646174696f6e287265717565737429001641a060d80066eb4c1b000900420d441a9153306349012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164189300c00c980300348c03c00660060069111111919912cc004c12002633001375860dc60d66ea806a60dc60d66ea80fa609a60d66ea80fd222598009980e1bac3071306e37540a66eb8c1c4c1b8dd5180d98371baa001899912cc004c140c1bcdd5000c4c8cc896600260260051598009809800c566002b300130530018a518980900120e08992cc004c04c0062b300198009980d9bac3077307437540b26eb8c15cc1d0dd51810983a1baa0079bac30563074375401133076305630743754604260e86ea801ccc1d93001054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c168c1e4dd5000c4cc896600260c460f66ea8006264b30010018cc0040062b30013375e60c060fa6ea800cc20004c1f4dd5003456600266ebcc17cc1f4dd5000984000983e9baa0038acc004cdc49bad305f307d37540073001375660be60fa6ea8c17cc1f4dd50034dd7184000803cdd7182f803a04c8992cc004c16cc1f4dd5000c4cdc39bad308101307e37540026eb4c180c1f8dd5002452820f63060307d375400307541e907441e907341e9072407d07283941ca0e4841008c1fcc1f0dd5000c1b1079183e983d1baa001305d307a375460b860f46ea800e0dc83b8cc04403800501a41a907441a507422b300198009bac3057307437540b3375860ee60e86ea8022660ec60ac60e86ea8c084c1d0dd50039983b260106457355534472004bd702444b30013370e6020004602401919800806400a4464b3001305a307937540031325980099baf307e307b375400260fc60f66ea8c1f8c1ecdd5002456600266ebcc178c1ecdd5000982e983d9baa307e307b375400913370f3001375660ba60f66ea80066eb8c1f80166eb8c1740150242cc004c16c02626eb4c174c1ecdd500244cdc199b82375a60ba60f66ea8010024029078452820f08a5041e060fa60f46ea80060e883b8cc04401400501a41c10742264b30013055307437540031325980099b87375a60f200266e000140222b30013370e6eb4c1e4c1e8004cdc0002001c56600266e1e60026eacc084c1d8dd502dcdd7182c183b1baa302330763754013488105735553447200407c0071305698009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d2201045553447200407d1533074491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001641cd15330744914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001641cd153307449140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001641cd3001375860b060ea6ea816a6eb8c068c1d4dd51811183a9baa0089bae305730753754604460ea6ea80226eb4c1e0c1d4dd5000a01683220e4301a307437540111533072491dc6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641c51533072491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001641c51533072491186578706563742073757364725f746f5f6d696e74203e2030001641c4b300130530018802c4cdc199b8200500100241c115330714913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641c11533071491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641c115330714911d657870656374207661756c745f757364725f6265666f7265203e3d2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4b3001300e375a60a260de6ea80062609e6eb4c050c1bcdd5000c52820d8402c603260dc6ea800a0b683591598009823804c660026eb0c1b8c1acdd500d4c1b8c1acdd501f4c134c1acdd501fa444b30013301c375860e260dc6ea814cdd7183898371baa301b306e37540031332259800982818379baa00189919912cc004c04800a2b3001301200189919912cc004c05400a2b300198009980e9bac3079307637540b66eb8c164c1d8dd51811983b1baa0099bac30583076375401533078305830763754604660ec6ea8024cc1e130106457355534472004bd702444b30013370e6028006602801d159800980980146600200700291192cc004c170c1ecdd5000c4cc896600260c860fa6ea8006264b30010018cc0040062b30013375e60c460fe6ea800cc20804c1fcdd5003456600266ebcc184c1fcdd5000984100983f9baa0038acc004cdc49bad3061307f37540073001375660c260fe6ea8c184c1fcdd50034dd7184100803cdd71830803a0508992cc004c170c1fcdd5000c4c96600266e1cdd69842008009bad3063308101375400b13370e6eb4c21004c21404004dd698131840809baa0058a5041f86100026ea8006294107d1831183f9baa00183ba0f883b20f883aa0f883a204283a41d20e907442100461020260fc6ea80060dc83d8c1fcc1f0dd5000982f983e1baa305e307c375400707041e46602602000280e20d883b20d683b115980099b8798009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d220105735553447200407c66e0520000088992cc004c15cc1d8dd5000c4c96600266e1cdd6983d80099b810070048acc004cdc39bad307b307c0013370200c015159800982c4c004dd59811983c1baa05d9bae305a30783754604a60f06ea802e9110455534472004085159800cc004dd6182d983c1baa05d9bac307b307837540193307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b30013370e6028004602c02119800808400a4464b3001305e307d37540031325980099baf308201307f375400261040260fe6ea8c20804c1fcdd5002456600266ebcc188c1fcdd50009830983f9baa308201307f375400913370f3001375660c260fe6ea80066eb8c208040166eb8c18401502819b813370666e08dd69830983f9baa00400e00d375a604860fe6ea8012294107c452820f8308101307e375400307841ec6602a00a00280f20e883c1198009bac305b307837540bb307b307c307c307c307c307c307c307c307c307c307c307837540173307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b3001305b0068a51899b8900632330010010042259800800c52000899912cc004cdd7984100983f9baa002006899b8000198009bab3061307f3754005375c61040200b375c60c200a8142200283e0c20004004cc008008c2040400507e20f0454cc1d9241df6578706563740a2020202076616c69646174655f756e7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641d515330764911765787065637420757364725f6d696e746564203d3d2030001641d51533076491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641d515330764913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001641d53001375860b460ee6ea81726eb8c070c1dcdd51812183b9baa00a9bae305930773754604860ee6ea802a6eb4c1e8c1dcdd5000a01a83320e8301c3076375401515330744912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641cd1533074491a76578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202029001641cd15330744911a65787065637420757364725f746f5f72656c65617365203e2030001641cc6eb4c1dc004dd6983b983c000994c0040060134bd709010000810100002002222598008014400633001003983d0014c8c96600260306eb4c074c1e0dd5001456600266e24dd6980e983c1baa00200189983d1ba8337006eb4c1ec00c004cc1e8dd419b80375a60f660f80066eb4c074c1e0dd500125eb822a660ec92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641d515330764911565787065637420722e666f7266656974203e3d2030001641d466e0ccdc11bad30593077375400200c00a60f20048019077454cc1c52401236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641c115330714911c657870656374207661756c745f757364725f6265666f7265203e2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4601c6eb4c144c1bcdd5000a0163019306e375400505b41ac8a5041a083408888c966002609c60da6ea8006264b30013375e60e460de6ea8c1c8c1bcdd5182898379baa001304733071375200a97ae08acc004c13a60026eacc144c1bcdd5182898379baa001802d2210d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018998399ba898009bab30533071375460a660e26ea800e00d4890455534472004068660e660e860e26ea8004cc1cc00d2f5c10624065062831418a0c483b0c1ccc1c0dd5000c18106d182918379baa3051306f3754003153306d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ac6600a008002444464b3001304e306d37540031325980099baf3072306f375460e460de6ea8004c11ccc1c4dd4802a5eb822b3001304e98009bab3051306f3754003005a4410d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018acc004cdd7980b18389baa0034c103d87a80008998399ba898009bab305330713754007006a4410455534472004068660e660e860e26ea8004cc1cc00d2f5c1153306f490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641b90624065062831418a0c483b0c1ccc1c0dd5000c54cc1b924012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641b460a460de6ea80062a660da92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641ac6600a00800244b300133710002900045300103d87a8000899803001000a0ce2264b300100181ec0f6264b300100181f44c96600200303f81fc0fe07f1332259800800c106264b30010018acc004c16c00a264b300130383057375400513259800800c112264b30010018992cc00400608d13259800800c4c9660020030488992cc004006093049824c126264b300130630038acc004c0fcc178dd500344c96600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f132598009834801c4c966002608c00313259800800c14a264b3001001829c14e0a70538992cc004c1b400e02505441a86eb800506d1835000a0d0306637540171598009822800c56600260cc6ea802e01f051419d051418c8318c190dd500541410661bae00141a460cc0028320dd7000983280120cc3063001418460be6ea801a09482e20948300dd7000a0c63060001417860c0005047823c11e08e8308c17800505c182f001411608b045822a0be305c001416860b06ea800a08682a84c01cc16c02208482c2085042821410905c182c800a0ae375c00260b000482c8c1580050541bac00181ec0f5057182a00120a481d203c81d203c8992cc00400607703b81dc4c8c00cc154010dd6800c0ed055182900120a08992cc00400607303981cc4c8c00cc14c010dd6800c0e50531828001209c81b209881b40da06d0364140609a0028258c13400a06903481a40d104e1825800a092375a0026094005031412c60900028230dd6800982380140b90481822800a0863758002608800502b815a08a304200141006eb0004c10400a0510284108607e00281e8c0ecdd50034099038409903c1bac001812c09503f181e000a074303c002811c08e04702340f4607400281c0c0e800a043021810c08503b181c000a06c3034375400f01f40c4444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608600719800804c6600200900c805a01e805a022805a080375a00300a410c608000281f0c10000a0110088044021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12c00e02901341206eb800504b1824000a08c375c002608e0048240c1140050434039012403901440390431bac001806c0350461821800a0823043002805c02e01700b4110608200281f8dd680098200014021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c880cc06603301940cc664464b30013010302f375400313030323376060680026068606a0026eb0c0ccc0c0dd5000c54cc0b924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b4646600200200644b30010018a60103d87a80008992cc004cdd7981880099ba548010cc0d0c028cc0d0dd480225eb812f5c11300c33034374e66068606200266068606400297ae04bd7044cc00c00cc0d800902f181a000a06437566060606260626062606260626062606260626062605a6ea8048dd7181818169baa0019800912cc004006297ae089981818169818800998010011819000a05e9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003205891111919800800802912cc004006200b13259800800c4cc010c0d800801a26600a606c0046600600600281a0c0d80050334dd6180718161baa01148888c8c8c8cc88c966002003159800980b181a9baa0018992cc00400604713259800800c09204902481244cc89660020030268992cc0040062b3001303f0028acc004c06cc0e8dd5000c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c96600200303b81dc4cc896600200303d8992cc0040062b300130560028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0c8c144dd500344c96600200303f8992cc004006081040820410226644b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4c96600260c400713303f00f225980080146600201f102b826206c8992cc0040062b300130413060375400313259800800c13a264b3001001827c13e26644b3001001828c4c966002003052829414a26644b300100182a44c96600200305582ac156264b3001306e0038acc00401e0ad13259800800c15e0af05782bc4cc89660020030598992cc0040060b505a82d416a264b30013073003898081839808c16d0701bae00141cc60e00028370dd7000983780420e0306d00741ad05641ac6eb40060aa8370c1ac0050691bad001306a00282920d6306800141986eb0004c19c00a09f04f41a060ca0028318c184dd5000c13505e413609b04d826a0cc3063002418504a417c6eb8005062182f800a0ba375c00260bc00482f8c17000505a1bae001305b002417060b200282b8dd7000982c00120b23056001415060a46ea801a07c827a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c829a07d03e81f40f9057182a000a0a4375800260a600503b81da0a83051001413c60a200503981cc0e60728290c13c00504d182780140de06f03781ba0a0304d001412c609a00503581ac0d606a8270c12c005049182580140ce067033819a0983049001411c6092005031818c0c60628250c11c005045182380140be05f02f817a0903045001410c608a00502d816c0b605a8230c10c005041182180140ae05702b815a088304100140fc6082005029814c0a60528210c0fc00503d181d9baa001813a070813a078813c09e04f0274100607a00281d8dd7000981e001207a303a00140e0606c6ea8006044819a045022811408903b29981999b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40c522010013259800980b181a9baa00189929981a99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980f181b9baa0018992cc0040062b300130193038375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098210014401a07281f8c10000503e1bae001303f0024100607a00281d8c0e4dd5000c0d103640d206903481a207c303b30383754003153303649013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640d46034606e6ea8c064c0dcdd5000981c981b1baa0018a9981a24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640cc646600200200e44b30010018a60103d87a80008992cc004c8cc004004c014dd5980d981c9baa301b3039375400444b30010018a508acc004cdc79bae303d0010368a51899801001181f000a06e40ed130123303a0014bd7044cc00c00cc0f0009035181d000a070300100130070072223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20765980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81a90351bac3038002375a606c0026466ec0dd4181b0009ba73037001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6076003337149101023a200098008054c0f000600a805100a181f00144ca6002015303b00199b8a489023a200098008054c0f0006600e66008008004805100a181f0012078303e00140ec66e29220102207d0000340e06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920703758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40e866e2ccdc0000acc004cdc4000a4029148182290372074004401866e0c00520203370c002901019b8e00400240dc6eb800d03b1b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c88190c00c00c444b3001300d302c375400713259800800c00a264b30010018992cc00400600913259800800c566002606a00519800801c4c966002602400313259800800c01e264b30010018acc004c0e000a264b300130150018992cc00400601513259800800c566002607600519800800c032016807201681c201700b805c02d03c181c800a06e30353754005159800980a000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026084007013809207e375a0030114108607e00281e8dd6800981f001403903f181e000a074375a002607600500b40f0607200281b8c0d4dd5001402503220643033375400300840d5008804402201081c8c0d800503418191baa0028acc004c0440062b3001303237540050078032066803205e40bc60606ea800600a804200a819200b005802c0150361819800a0623033002801c00e00700340d060620028178c0b4dd5001c00502a111194c004006009003400444464b300130110018992cc00400600d13259800800c01e00f007803c4c9660026070007005804206a375c00281c0c0d400503318189baa0038acc004c040006264b300100180344c966002003007803c4c96600260700071330150012259800801401e264b30010018cc00402a00313002303b003402900b805c02e01681e0c0e400903740210351bac001803c01d038181a800a06630313754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0e000e26602a00244b3001002803c4c966002003198008054006260046076006805201700b805c02d03c181c801206e804206a3758003007803a070303500140cc60626ea800e2b3001300f0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d801c4cc060004896600200500a8992cc0040063300100d800c4c008c0f800d00d403a01d00e807207e303c00240e900b40e06eb000601500a40ec607000281b0dd6800981b801401d038181a800a066303137540071598009807000c4c9660020030068992cc00400600f007803c4c9660026070007005804206a375a00300740e0606a0028198c0c4dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981c001c01601081a8dd6800c01d038181a800a066303137540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013038003802c0210351bae00140e0606a0028198c0c4dd5001c01502e205c40b8817102e205c40b8605e6ea8008888c966002601a00313259800800c00e264b300100180240120090048992cc004c0d000e00d00540c46eb80050341818800a05e302d37540091598009806000c4c9660020030038992cc0040060090048024012264b3001303400380340150311bae00140d060620028178c0b4dd5002400902a2054302b37540068b2032180d800980b1baa01c8a4d15330144911856616c696461746f722072657475726e65642066616c73650013656404c1\"\n :\n \"591d0b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009ba5480092222222222229800911192cc004c03000626464b3001302000280245901d1bae301e001301a37540071598009805800c4c966002603e00313300e3758603c00244b3001002802c6600200f3020002898009810801200e407916407060346ea800e2b300130120018992cc004c07c00626601c6eb0c07800489660020050058cc00401e6040005130013021002401c80f22c80e0c068dd5001c56600260140031323322598009810800c4cc040dd61810000912cc00400a00f19800804cc08800a260026046004804902045901e1bad301e001301f001301a37540071598009804800c4c8c96600260400050048b203a375a603c00260346ea800e2b30013008001899192cc004c08000a0091640746eb4c078004c068dd5001c566002600e0031323259800981000140122c80e8dd7180f000980d1baa0038b2030406080c10182030406080c0c060dd5001488c96600260160031323259800980f80140122c80e0dd7180e800980c9baa0038acc004c02800626464b3001301f00280245901c1bae301d0013019375400716405c80b8c05cdd5001489660026014602e6ea800a2646464b3001301f002899192cc004c03c0062b3001301d37540050068b203c8acc004c03800626464b300130230028044590201bad3021001301d3754005159800980a800c566002603a6ea800a00d16407916406c80d901b180d9baa001301e0038b20383259800980d800c56600266e252004301a0018b44c030c06800501945901c1baa301d001301d0013018375400516405922598009805180b9baa0028991919912cc004c08000e00b1640746eb4c074004dd7180e801180e800980c1baa0028b202c91192cc004c02c00626464b3001301f00280245901c1bad301d001301937540071598009805000c56600260326ea800e00516406916405c80b8c05cdd500124444466446645300133223259800980a18109baa001898111919bb03026001302630270013758604a60446ea80062c8100c8cc00400400c896600200314c103d87a80008992cc004cdd7981180099ba548010cc098c03ccc098dd480225eb812f5c11301033026374e6604c60460026604c604800297ae04bd7044cc00c00cc0a00090221813000a04837566044604660466046604660466046604660466046603e6ea8058dd71811180f9baa002912cc004c04cc080dd500144c8c8c8ca60026eb4c0a00066eb4c0a000e60500049112cc004c0b0012266014605600e26601e0020111640a43028001302700130260013021375400516407d2259800980998101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc0440044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80f922259800980a18109baa003899191919912cc004c0ac00e264b3001301a30273754003132323232323298009818800cdd61818802cdd698188024dd69818801cc0c40092222259800981b80344cc098dd6181b005912cc00400a26605000c44b300100289980e80289980e8048992cc004c0a8c0dcdd500944c8c8c966002607e005132332259800981800144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038acc004c0bc00a264b300130430018998191bac304200122598008014012266040608800426002608a00482122c8200c0f8dd5001c566002606c005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b3001302e0028992cc004c10c0062660646eb0c1080048966002005004899810182200109800982280120848b2080303e3754007159800981680144c96600260860031330323758608400244b300100280244cc084c1100084c004c114009042459040181f1baa0038acc004c0b000a264b300130430018998191bac304200122598008014012266042608800426002608a00482122c8200c0f8dd5001c5660026056005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b30013370e900700144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038b207840f081e103c207840f081e103c181d9baa001132598009817800c4c966002608400313302530410010078b207e303d37540071598009817000c4c9660026084003132598009818981f1baa00189919192cc004c11800a266054608a00626605400201716410c60880026088002607e6ea80062c81e8c1040062c81f8c0f4dd5001c5903b2076303b3754004607c0071640f0607a002607a00260706ea804a2c81b04cc0a8048896600200519800981e181c9baa302d303937540352298009919800800801912cc00400629422b30013375e6080607a6ea8c100c0f4dd51818981e9baa304000130283303f375200697ae08a518998010011820800a07640f94a14a281ca4607a607c607c607c607c607c607c607c607c0032302b30393754607a646600200200444b30010018a5eb8503d87a80008101800044c8cc896600330013030303e375460840074a14a281ea26608330014a14c103d87a8000a60103d879800040f4660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f904244cc106600294298103d87a8000a60103d879800040f4660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f4660826e9ccc104dd400080125eb8103d207a3758608060820026eb4c100008cc008008c10000503d48c0f4c0f8c0f8c0f8c0f8006444b30010028a6103d87a80008acc004c0b8006260506607c607e00497ae08cc00400e6080005337000029000a00640e881ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208089980280298230022080375c607e0026eb4c100004c108005040191919800800803112cc00400600713233225980099b910090028acc004cdc78048014400600c820a26600a00a608e0088208dd718200009bab304100130430014104297adef6c6014800244b3001302d303a375400513232598009820801400e2c81f0dd6981f800981d9baa0028b2072911919800800801912cc004006297ae0899912cc004cdd79821181f9baa3042303f37546066607e6ea8008c0a8cc104dd4802a5eb822660820046600800800313300400400140f46080002608200281f24607a607c607c607c607c607c0032303d303e303e303e001912cc0040062900044cdc02400466004004607e00281e2444653001001802400d0011112cc00400a2b30010018a518a504101159800800c52845660026600860840046eb4c1080063300100398218014c10c0050034528207a4100820244b3001302d303a375400513232323298009821000cc10800e60840049112cc004c11801226604e608a00e266048004264b3001303500189919912cc004c128006264646644b3001304e00380845904b1bae304b001375c609600460960026eb0c1240062c8238dd69823800982400098219baa0028acc004c0d00062646644b3001304a0018991919912cc004c13800e02116412c6eb8c12c004dd7182580118258009bac30490018b208e375a608e002609000260866ea800a2b3001303b001899194c004dd69824000cc1240066eb4c12000922259800982600144c8c8cc896600260a00070128b209a375c609a0026eb8c134008c134004dd618258014590490c120004c10cdd5001456600260660031323322598009825000c4c8c8cc8966002609c0070108b2096375c60960026eb8c12c008c12c004dd61824800c590471bad30470013048001304337540051598009819000c4c8c966002609200500b8b208c375a608e00260866ea800a2b300130310018991919912cc004c12c00e01b1641206eb4c120004dd69824001182400098219baa0028acc004c0c000626464b30013049002805c590461bad30470013043375400515980099b874803800626464b30013049002805c590461bad304700130433754005164104820904120824104820904120823041375400316410c304200130410013040001303b37540051640e52259800800c52000899b8048008cc008008c0fc00503c4dc4a40013710900024444444444444444530013049375402322259800980880144ca6002003004801d200040044444b30010038acc00400a2003164149198008024c15400e60aa005332259800980380144cdc00019bad30473053375400516414460a80066eb4c15000900420a48b209698060064c01801a4601e00330030034888888c8cc89660026084013198009bac30563053375403530563053375406930473053375406c9112cc004cc070dd6182c982b1baa04d375c60b260ac6ea8c06cc158dd5000c4cc8966002609460ae6ea80062646644b300130130028acc004c04c0062b3001598009826800c528c4c04800905944c9660026026003159800cc004cc06cdd6182f982e1baa053375c60a260b86ea8c084c170dd5003cdd61828182e1baa0089982f1828182e1baa3021305c375400e660bc9801054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c150c184dd5000c4cc896600260b860c66ea80062646603e0022b30013375e60b460ca6ea800cc1a0c194dd5003456600266ebcc164c194dd5000983418329baa0038acc004cdc49bad3059306537540073001375660b260ca6ea8c164c194dd50034dd71834003cdd7182c803a04c8992cc004c154c194dd5000c4cdc39bad3069306637540026eb4c168c198dd5002452820c8305a3065375400316418d16418d16418c60ce60c86ea80062c8310c194c188dd5000982b98311baa3056306237540071641806602201c00280d22c82ea2c82e9159800cc004dd61828982e1baa0539bac305f305c37540113305e3050305c3754604260b86ea801ccc17930106457355534472004bd702444b30013370e6020004602401919800806400a4464b30013054306137540031325980099baf30663063375400260cc60c66ea8c198c18cdd5002456600266ebcc160c18cdd5000982b98319baa30663063375400913370f3001375660ae60c66ea80066eb8c1980166eb8c15c0150242cc004c15402626eb4c15cc18cdd500244cdc199b82375a60ae60c66ea8010024029061452820c28a50418460ca60c46ea80062c8300cc04401400501a45905d2264b3001304f305c37540031325980099b87375a60c200266e000140222b30013370e6eb4c184c188004cdc0002001c56600266e1e60026eacc084c178dd502acdd71829182f1baa3023305e3754013488105735553447200407c0071305098009bab3021305e37540ab375c60a460bc6ea8c08cc178dd5004d2201045553447200407d1641711641711641713001375860a460ba6ea81526eb8c068c174dd51811182e9baa0089bae3051305d3754604460ba6ea80226eb4c180c174dd5000a0168b20b6301a305c3754011164169164169164168b3001304d0018802c4cdc199b8200500100241651641651641651641646eb4c170004dd6982e182e800cc004dd6182d982c1baa04f9bae301530583754603a60b06ea800e6eb8c130c160dd5180e982c1baa0039bad305b30583754002803a2c82b26002007375860b260ac6ea800a4b3001300e375a609660ae6ea8006260926eb4c050c15cdd5000c52820aa402c603260ac6ea800a2c82a11598009820804c660026eb0c158c14cdd500d4c158c14cdd501a4c11cc14cdd501b2444b30013301c375860b260ac6ea8134dd7182c982b1baa301b3056375400313322598009825182b9baa00189919912cc004c04800a2b30013012001899192cc004c0500062b300198009980e1bac3060305d37540a86eb8c148c174dd51811182e9baa0089bac3051305d37540133305f3051305d3754604460ba6ea8020cc17d300106457355534472004bd702444b30013370e6026006602601b159800980900146600200700291192cc004c154c188dd5000c4cc896600260ba60c86ea8006264660400022b30013375e60b660cc6ea800cc1a4c198dd5003456600266ebcc168c198dd5000983498331baa0038acc004cdc49bad305a306637540073001375660b460cc6ea8c168c198dd50034dd71834803cdd7182d003a04e8992cc004c154c198dd5000c4c96600266e1cdd698358009bad305c3068375400b13370e6eb4c1acc1b0004dd6981298341baa0058a50419860ce6ea80062941065182d98331baa0018b20c88b20c88b20c830683065375400316418c60cc60c66ea8004c160c18cdd5182b98319baa0038b20c23301200f001406d1641791641788acc004cdc3cc004dd59810182e9baa0549bae3051305d3754604460ba6ea8022910105735553447200407866e0520000078992cc004c140c174dd5000c4c96600266e1cdd6983100099b810060038acc004cdc39bad306230630013370200a0131598009828cc004dd59811182f9baa0569bae3053305f3754604860be6ea802a9110455534472004081159800cc004dd6182a182f9baa0569bac3062305f3754017330613053305f3754604860be6ea8028cc185301054455534472004bd702444b30013370e6026004602a01f19800807c00a4464b30013057306437540031325980099baf30693066375400260d260cc6ea8c1a4c198dd5002456600266ebcc16cc198dd5000982d18331baa30693066375400913370f3001375660b460cc6ea80066eb8c1a40166eb8c16801502719b813370666e08dd6982d18331baa00400d00c375a604660cc6ea80122941064452820c830683065375400316418c6602800a00280ea2c8301198009bac3054305f37540ad30623063306330633063306330633063306330633063305f3754015330613053305f3754604860be6ea8028cc185301054455534472004bd704dd69831183180224444b300130550018a51899b8900132330010010052259800800c52000899912cc004cdd7983518339baa002007899b8000198009bab305b30673754005375c60d400d375c60b600c814220028328c1a0004cc008008c1a400506620c245905d45905d45905d45905d4c004dd61829982f1baa0559bae301b305e3754604660bc6ea80266eb8c148c178dd51811982f1baa0099bad3061305e375400280622c82e0c06cc174dd5004c5905b45905b45905b1bad305f001329800800c02697ae1101000081010000200222259800801440063300100398310014c8c96600260306eb4c074c180dd5001456600266e24dd6980e98301baa0020018998311ba8337006eb4c18c00c004cc188dd419b80375a60c660c80066eb4c074c180dd500125eb822c82f22c82f0cdc199b82375a60a660be6ea8004018014c18400900320be8b20b28b20b2375a60b80026eb4c170c17400660026eb0c16cc160dd5027cdd7180a982c1baa301d30583754007375c609860b06ea8c074c160dd5001cdd6982d982c1baa001401d16415930010039bac3059305637540052300e375a609660ae6ea800500b180c982b1baa0028b20a8452820a24144444464b30013048305537540031325980099baf305a3057375460b460ae6ea8c12cc15cdd500098211982c9ba90054bd704566002609130013756609660ae6ea8c12cc15cdd5000c01691010d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c80089982d9ba898009bab304d30593754609a60b26ea800e00d48810455534472004068660b660b860b26ea8004cc16c00d2f5c060b660b06ea80062c82b0c130c15cdd51825982b9baa0018b20aa8b20aa3059305637540031641506600a008002444464b30013048305537540031325980099baf305a3057375460b460ae6ea8004c108cc164dd4802a5eb822b3001304898009bab304b30573754003005a450d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c8008acc004cdd7980b182c9baa0034c0103d87a800089982d9ba898009bab304d30593754007006a4410455534472004068660b660b860b26ea8004cc16c00d2f5c116415c60b660b06ea80062c82b0c130c15cdd5000c59055459055182c982b1baa0018b20a833005004001225980099b8800148002298103d87a8000899803001000a0a022646644b30013040001899912cc004c0c0c0f4dd500144c8c8c8cc8966002608e00713259800981b18219baa0018991919912cc004c13000e264b3001303b001899192cc004c13c00a01d1641306eb8c134004c124dd5003c566002607400315980098249baa00780645904a459047208e3047375400d1641246eb8c124004dd71824801182480098221baa0018b208430460058b2088375c6088002608800460880026086002607c6ea800a2c81e0c0fc0044c010c1000162c81e8dd7181e800981f0009bac303c00240e91323002303c003375a607400481c2264600460740066eb4c0e00090364590340c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815002c590281bac302800130280023028001302700130223754007164080323232598009809180f9baa00189919912cc004c09c006264b30013016302337540031323232323232323232323298009819000cc0c802a606401330320089819003cc0c801a606400b30320049819001cdd6181900124444444444b3001303d00b89980f181e00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0acc0e0dd500144c8c8c8ca60026eb8c1000066eb8c1000126eb8c10000e6eb8c1000092222598009822802c4cc0d0024896600200513302701410248992cc004c0d8c10cdd5000c4c8c8c8cc8966002609a007132323322598009828801c4c02cc1440322c8270dd718270009bae304e002304e0013758609800b1641286eb4c128004dd698250011825000982480098221baa0018b2084304600241111641083040001303f001303e001303937540051640dd1640e8303200130310013030001302f001302e001302d001302c001302b001302a001302900130243754003164088604c0031640906eb8c090004c094004c080dd5000c5901e192cc004c048c07cdd5000c4c966002603260406ea8006264b3001301430213754003132323322598009815001c40162c8138c09c004dd71813801181380098111baa0018b204030243021375400316407c602a60406ea8c050c080dd5181198101baa0018b203c32330010013758602860406ea805c896600200314c0103d87a80008992cc004c8cc004004c014dd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a04440951300e330240014bd7044cc00c00cc0980090201812000a04430010012259800800c52f5c1133021301e3022001330020023023001408044b30013011301e3754005132323259800981300144cc018c09400c4c966002602a00315980098119baa002802c590244566002602800313232598009814801401e2c8130dd7181380098119baa0028acc004c06c00626464b30013029002803c59026181380098119baa0028b204240848108c084dd5000c5902318120009812000980f9baa0028b203a300500522598009807980e1baa00289919192cc004c09000a2660126046006264b300130130018992cc004c09800626464b300130160018992cc004c0a400626601c605000201316409860486ea800a2b3001301500189919194c004dd69815000cdd69815001cdd698150012444b3001302e00480745902b0c0a8004c0a4004c090dd5001459022204430223754002604a00316408c60426ea800a2b300130120018acc004c084dd500140162c81122c80f901f180f9baa0018b204230220013022001301d375400516406c4590080c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProtocolStakeProtocolStakeElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"593b9d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888896600264653001301b001980d980e000cdc3a4009301b0024888966002600460366ea800e33001301f301c37540072302030213021001918101810800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009b80480066e95200248888888888888c8cc88c8c966002003198009112cc004c044c0c0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981c80146600200713259800980b000c566002606c6ea800a00f00640dd159800980a800c4c9660020030078992cc0040060110088044022264b3001303d003805402503a1bae00140f4607400281c0c0d8dd50014566002603800313259800800c01e264b3001303c002804c021039181d000a0703036375400500640cc8199033181a1baa001802a016802a06c802c01600b00540e8606e00281a8c0dc00a007003801c00d038181a800a0663031375400700140b922259800980898181baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130360018acc004cdc4a4008606a0030068992cc004c0ec012264b300130180018acc004c0e0dd5003402601081ca2b300130170018992cc00400601313259800800c02a01500a8992cc004c0fc00e01900b40f06eb400601481f8c0f000503a181c1baa0068acc004c0780062b30013038375400d0098042072804206a40d481a8c0d8dd5002c01d038180a981a800a066803206e3754003005802c01600a81d0c0dc005035181b801400e007003801a070303500140cc60626ea800e0028172444b300130113030375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0ec00e01100740e06eb400600c81d8c0e00050361bae001303700240e0606a0028198c0c4dd5001c00502e4888c966002602400313259800800c00e264b3001001802401200913259800981c801c01a00a81b0dd6800c011039181b000a068303237540091598009808800c56600260646ea801200700240cd00240bc8178c0c0dd5001a44446644b300130143033375400f13259800800c082264b30010018992cc00400604513259800800c4c9660020030248992cc00400604b0258992cc004c0fc00e2b3001301b303a375400d13259800800c09e264b300100181440a226644b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc004006264b300100181ac4c966002003159800982780144cc0b0038896600200513302e00d225980080146600200f19800802c4c9660026060609e6ea8066264b300100181e44c96600200313259800800c0fa264b30010018acc004c16000a26644b300130360018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d029411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606a00313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a052823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b159800981a000c4c9660020030428992cc0040060870438992cc004c17400e26607400244b3001002803c4c96600200319800800c4c008c18000e08e814a08f047823c11d061182f00120b882220b43758003043821a0ba305a001416060ac6ea80162b300130330018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d02a411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606400313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a054823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0c4006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b15980099b8748038006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b041414c829905320a6414c829905320a613259800981a800c4c9660020030418992cc0040062b3001305b0028cc004006011042409d0424161042821410a08482e0c164005057182a9baa0028acc004c0d0006264b3001001820c4c966002003159800982d8014566002606e60ac6ea8006264b3001001821c4c96600200313259800800c116264b30010018acc004c17c00a330010038cc00400601904640b104640b10464171046823411a08c8300c17400505b182e801411208904482220bc305b001416460ae6ea800608482a208482c2085042821410905c182c800a0ae3055375400504041488290c14cdd500098299baa00381fa0aa81fc0fe07f03f416460ac00282a0c15800a07b03d81ec0f5057182a000a0a43050375403303b413426606002a44b30010028cc004c150c144dd5181998289baa024914c004c8cc00400400c896600200314a115980099baf30583055375460b060aa6ea8c0dcc154dd5182c00098169982b9ba90034bd704528c4cc008008c16400505220aca50a51414123055305630563056305630563056305630560019181898289baa305532330010010022259800800c52f5c303d87a80008101800044c8cc8966003300130363056375460b40074a14a282a22660b330014a14c103d87a8000a60103d87980004150660b26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17000400e294626600400460ba00282b105a44cc166600294298103d87a8000a60103d87980004150660b26e9c0092f5c11330599800a51a60103d87a8000a60103d87980004150660b26e9ccc164dd400080125eb8105420a8375860b060b20026eb4c160008cc008008c16000505548c154c158c158c158c158006444b30010028a6103d87a80008acc004c0d00062605c660ac60ae00497ae08cc00400e60b0005302d001400c82890554888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd6982c000982d000a0b03232330010010062259800800c00e2646644b30013372201200515980099b8f0090028800c01905844cc014014c17c0110581bae3058001375660b200260b600282c852f5bded8c029000488966002606860a66ea800e264b300100180144c966002003003801c00e264b3001305b003802c0110581bad001801a0b63058001415860a86ea800e002828a44646600200200644b30010018a5eb8226644b30013375e60b460ae6ea8c168c15cdd5181c982b9baa002302f33059375200a97ae089982c80119802002000c4cc010010005054182c000982c800a0ac9182a982b182b182b182b182b000c8c154c158c158c15800644b30010018a4001133700900119801001182b800a0a8911194c0040060090034004444b30010028acc00400629462941058456600200314a115980099802182d0011bad305a0018cc00400e60b6005305b001400d14a082a105820b09112cc004c0d0c14cdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983000146600200f19800802c4c966002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981e000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c19c00e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b000e02d01541a46eb800506c1834800a0ce375c00260d00048348c19800506440410641bac001807c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002608600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b3001306a0038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001306f00380cc06106c1bae00141bc60d80028350dd7000983580120d83069001419d013419c6eb000602501241a860ce0028328dd68009833001403d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981d000c4c96600200300b8992cc00400601900c80644c96600260c800700e806a0c2375a00300c419060c200282f8c174dd50024566002607200313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009833801c0460208320dd6800c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607000313259800800c02e264b30010018064032019132598009832001c03a01a8308dd6800c0310641830800a0be305d375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001306400380740350611bad00180620c83061001417c60ba6ea801201482d105a20b4416882d105a20b4416860b66ea800e0128172012818a01282e8c17800505c182f001401e00f007803a0be305c001416860b8005005802c01600a82e8c168005058182d001400e007003801a0b63058001415860a86ea800e002828a44b30010018a4001133700900119801001182b800a0a89b89480026e21200048888888888888888a600260c26ea8046444b300130110028994c004006009003a40008008888966002007159800801440062a660ce92112657870656374205b5d203d206c6973745f62001641a9159800801454cc19d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260da007306d00299912cc004c01c00a266e0000cdd6982698359baa0028a99834a4811a6578706563742076616c69646174696f6e287265717565737429001641a060d80066eb4c1b000900420d441a9153306349012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164189300c00c980300348c03c00660060069111111919912cc004c12002633001375860dc60d66ea806a60dc60d66ea80fa609a60d66ea80fd222598009980e1bac3071306e37540a66eb8c1c4c1b8dd5180d98371baa001899912cc004c140c1bcdd5000c4c8cc896600260260051598009809800c566002b300130530018a518980900120e08992cc004c04c0062b300198009980d9bac3077307437540b26eb8c15cc1d0dd51810983a1baa0079bac30563074375401133076305630743754604260e86ea801ccc1d93001054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c168c1e4dd5000c4cc896600260c460f66ea8006264b30010018cc0040062b30013375e60c060fa6ea800cc20004c1f4dd5003456600266ebcc17cc1f4dd5000984000983e9baa0038acc004cdc49bad305f307d37540073001375660be60fa6ea8c17cc1f4dd50034dd7184000803cdd7182f803a04c8992cc004c16cc1f4dd5000c4cdc39bad308101307e37540026eb4c180c1f8dd5002452820f63060307d375400307541e907441e907341e9072407d07283941ca0e4841008c1fcc1f0dd5000c1b1079183e983d1baa001305d307a375460b860f46ea800e0dc83b8cc04403800501a41a907441a507422b300198009bac3057307437540b3375860ee60e86ea8022660ec60ac60e86ea8c084c1d0dd50039983b260106457355534472004bd702444b30013370e6020004602401919800806400a4464b3001305a307937540031325980099baf307e307b375400260fc60f66ea8c1f8c1ecdd5002456600266ebcc178c1ecdd5000982e983d9baa307e307b375400913370f3001375660ba60f66ea80066eb8c1f80166eb8c1740150242cc004c16c02626eb4c174c1ecdd500244cdc199b82375a60ba60f66ea8010024029078452820f08a5041e060fa60f46ea80060e883b8cc04401400501a41c10742264b30013055307437540031325980099b87375a60f200266e000140222b30013370e6eb4c1e4c1e8004cdc0002001c56600266e1e60026eacc084c1d8dd502dcdd7182c183b1baa302330763754013488105735553447200407c0071305698009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d2201045553447200407d1533074491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001641cd15330744914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001641cd153307449140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001641cd3001375860b060ea6ea816a6eb8c068c1d4dd51811183a9baa0089bae305730753754604460ea6ea80226eb4c1e0c1d4dd5000a01683220e4301a307437540111533072491dc6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641c51533072491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001641c51533072491186578706563742073757364725f746f5f6d696e74203e2030001641c4b300130530018802c4cdc199b8200500100241c115330714913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641c11533071491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641c115330714911d657870656374207661756c745f757364725f6265666f7265203e3d2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4b3001300e375a60a260de6ea80062609e6eb4c050c1bcdd5000c52820d8402c603260dc6ea800a0b683591598009823804c660026eb0c1b8c1acdd500d4c1b8c1acdd501f4c134c1acdd501fa444b30013301c375860e260dc6ea814cdd7183898371baa301b306e37540031332259800982818379baa00189919912cc004c04800a2b3001301200189919912cc004c05400a2b300198009980e9bac3079307637540b66eb8c164c1d8dd51811983b1baa0099bac30583076375401533078305830763754604660ec6ea8024cc1e130106457355534472004bd702444b30013370e6028006602801d159800980980146600200700291192cc004c170c1ecdd5000c4cc896600260c860fa6ea8006264b30010018cc0040062b30013375e60c460fe6ea800cc20804c1fcdd5003456600266ebcc184c1fcdd5000984100983f9baa0038acc004cdc49bad3061307f37540073001375660c260fe6ea8c184c1fcdd50034dd7184100803cdd71830803a0508992cc004c170c1fcdd5000c4c96600266e1cdd69842008009bad3063308101375400b13370e6eb4c21004c21404004dd698131840809baa0058a5041f86100026ea8006294107d1831183f9baa00183ba0f883b20f883aa0f883a204283a41d20e907442100461020260fc6ea80060dc83d8c1fcc1f0dd5000982f983e1baa305e307c375400707041e46602602000280e20d883b20d683b115980099b8798009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d220105735553447200407c66e0520000088992cc004c15cc1d8dd5000c4c96600266e1cdd6983d80099b810070048acc004cdc39bad307b307c0013370200c015159800982c4c004dd59811983c1baa05d9bae305a30783754604a60f06ea802e9110455534472004085159800cc004dd6182d983c1baa05d9bac307b307837540193307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b30013370e6028004602c02119800808400a4464b3001305e307d37540031325980099baf308201307f375400261040260fe6ea8c20804c1fcdd5002456600266ebcc188c1fcdd50009830983f9baa308201307f375400913370f3001375660c260fe6ea80066eb8c208040166eb8c18401502819b813370666e08dd69830983f9baa00400e00d375a604860fe6ea8012294107c452820f8308101307e375400307841ec6602a00a00280f20e883c1198009bac305b307837540bb307b307c307c307c307c307c307c307c307c307c307c307837540173307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b3001305b0068a51899b8900632330010010042259800800c52000899912cc004cdd7984100983f9baa002006899b8000198009bab3061307f3754005375c61040200b375c60c200a8142200283e0c20004004cc008008c2040400507e20f0454cc1d9241df6578706563740a2020202076616c69646174655f756e7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641d515330764911765787065637420757364725f6d696e746564203d3d2030001641d51533076491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641d515330764913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001641d53001375860b460ee6ea81726eb8c070c1dcdd51812183b9baa00a9bae305930773754604860ee6ea802a6eb4c1e8c1dcdd5000a01a83320e8301c3076375401515330744912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641cd1533074491a76578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202029001641cd15330744911a65787065637420757364725f746f5f72656c65617365203e2030001641cc6eb4c1dc004dd6983b983c000994c0040060134bd709010000810100002002222598008014400633001003983d0014c8c96600260306eb4c074c1e0dd5001456600266e24dd6980e983c1baa00200189983d1ba8337006eb4c1ec00c004cc1e8dd419b80375a60f660f80066eb4c074c1e0dd500125eb822a660ec92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641d515330764911565787065637420722e666f7266656974203e3d2030001641d466e0ccdc11bad30593077375400200c00a60f20048019077454cc1c52401236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641c115330714911c657870656374207661756c745f757364725f6265666f7265203e2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4601c6eb4c144c1bcdd5000a0163019306e375400505b41ac8a5041a083408888c966002609c60da6ea8006264b30013375e60e460de6ea8c1c8c1bcdd5182898379baa001304733071375200a97ae08acc004c13a60026eacc144c1bcdd5182898379baa001802d2210d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018998399ba898009bab30533071375460a660e26ea800e00d4890455534472004068660e660e860e26ea8004cc1cc00d2f5c10624065062831418a0c483b0c1ccc1c0dd5000c18106d182918379baa3051306f3754003153306d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ac6600a008002444464b3001304e306d37540031325980099baf3072306f375460e460de6ea8004c11ccc1c4dd4802a5eb822b3001304e98009bab3051306f3754003005a4410d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018acc004cdd7980b18389baa0034c103d87a80008998399ba898009bab305330713754007006a4410455534472004068660e660e860e26ea8004cc1cc00d2f5c1153306f490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641b90624065062831418a0c483b0c1ccc1c0dd5000c54cc1b924012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641b460a460de6ea80062a660da92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641ac6600a00800244b300133710002900045300103d87a8000899803001000a0ce2264b300100181ec0f6264b300100181f44c96600200303f81fc0fe07f1332259800800c106264b30010018acc004c16c00a264b300130383057375400513259800800c112264b30010018992cc00400608d13259800800c4c9660020030488992cc004006093049824c126264b300130630038acc004c0fcc178dd500344c96600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f132598009834801c4c966002608c00313259800800c14a264b3001001829c14e0a70538992cc004c1b400e02505441a86eb800506d1835000a0d0306637540171598009822800c56600260cc6ea802e01f051419d051418c8318c190dd500541410661bae00141a460cc0028320dd7000983280120cc3063001418460be6ea801a09482e20948300dd7000a0c63060001417860c0005047823c11e08e8308c17800505c182f001411608b045822a0be305c001416860b06ea800a08682a84c01cc16c02208482c2085042821410905c182c800a0ae375c00260b000482c8c1580050541bac00181ec0f5057182a00120a481d203c81d203c8992cc00400607703b81dc4c8c00cc154010dd6800c0ed055182900120a08992cc00400607303981cc4c8c00cc14c010dd6800c0e50531828001209c81b209881b40da06d0364140609a0028258c13400a06903481a40d104e1825800a092375a0026094005031412c60900028230dd6800982380140b90481822800a0863758002608800502b815a08a304200141006eb0004c10400a0510284108607e00281e8c0ecdd50034099038409903c1bac001812c09503f181e000a074303c002811c08e04702340f4607400281c0c0e800a043021810c08503b181c000a06c3034375400f01f40c4444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608600719800804c6600200900c805a01e805a022805a080375a00300a410c608000281f0c10000a0110088044021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12c00e02901341206eb800504b1824000a08c375c002608e0048240c1140050434039012403901440390431bac001806c0350461821800a0823043002805c02e01700b4110608200281f8dd680098200014021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c880cc06603301940cc664464b30013010302f375400313030323376060680026068606a0026eb0c0ccc0c0dd5000c54cc0b924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b4646600200200644b30010018a60103d87a80008992cc004cdd7981880099ba548010cc0d0c028cc0d0dd480225eb812f5c11300c33034374e66068606200266068606400297ae04bd7044cc00c00cc0d800902f181a000a06437566060606260626062606260626062606260626062605a6ea8048dd7181818169baa0019800912cc004006297ae089981818169818800998010011819000a05e9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003205891111919800800802912cc004006200b13259800800c4cc010c0d800801a26600a606c0046600600600281a0c0d80050334dd6180718161baa01148888c8c8c8cc88c966002003159800980b181a9baa0018992cc00400604713259800800c09204902481244cc89660020030268992cc0040062b3001303f0028acc004c06cc0e8dd5000c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c96600200303b81dc4cc896600200303d8992cc0040062b300130560028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0c8c144dd500344c96600200303f8992cc004006081040820410226644b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4c96600260c400713303f00f225980080146600201f102b826206c8992cc0040062b300130413060375400313259800800c13a264b3001001827c13e26644b3001001828c4c966002003052829414a26644b300100182a44c96600200305582ac156264b3001306e0038acc00401e0ad13259800800c15e0af05782bc4cc89660020030598992cc0040060b505a82d416a264b30013073003898081839808c16d0701bae00141cc60e00028370dd7000983780420e0306d00741ad05641ac6eb40060aa8370c1ac0050691bad001306a00282920d6306800141986eb0004c19c00a09f04f41a060ca0028318c184dd5000c13505e413609b04d826a0cc3063002418504a417c6eb8005062182f800a0ba375c00260bc00482f8c17000505a1bae001305b002417060b200282b8dd7000982c00120b23056001415060a46ea801a07c827a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c829a07d03e81f40f9057182a000a0a4375800260a600503b81da0a83051001413c60a200503981cc0e60728290c13c00504d182780140de06f03781ba0a0304d001412c609a00503581ac0d606a8270c12c005049182580140ce067033819a0983049001411c6092005031818c0c60628250c11c005045182380140be05f02f817a0903045001410c608a00502d816c0b605a8230c10c005041182180140ae05702b815a088304100140fc6082005029814c0a60528210c0fc00503d181d9baa001813a070813a078813c09e04f0274100607a00281d8dd7000981e001207a303a00140e0606c6ea8006044819a045022811408903b29981999b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40c522010013259800980b181a9baa00189929981a99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980f181b9baa0018992cc0040062b300130193038375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098210014401a07281f8c10000503e1bae001303f0024100607a00281d8c0e4dd5000c0d103640d206903481a207c303b30383754003153303649013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640d46034606e6ea8c064c0dcdd5000981c981b1baa0018a9981a24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640cc646600200200e44b30010018a60103d87a80008992cc004c8cc004004c014dd5980d981c9baa301b3039375400444b30010018a508acc004cdc79bae303d0010368a51899801001181f000a06e40ed130123303a0014bd7044cc00c00cc0f0009035181d000a070300100130070072223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20765980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81a90351bac3038002375a606c0026466ec0dd4181b0009ba73037001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6076003337149101023a200098008054c0f000600a805100a181f00144ca6002015303b00199b8a489023a200098008054c0f0006600e66008008004805100a181f0012078303e00140ec66e29220102207d0000340e06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920703758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40e866e2ccdc0000acc004cdc4000a4029148182290372074004401866e0c00520203370c002901019b8e00400240dc6eb800d03b1b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c88190c00c00c444b3001300d302c375400713259800800c00a264b30010018992cc00400600913259800800c566002606a00519800801c4c966002602400313259800800c01e264b30010018acc004c0e000a264b300130150018992cc00400601513259800800c566002607600519800800c032016807201681c201700b805c02d03c181c800a06e30353754005159800980a000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026084007013809207e375a0030114108607e00281e8dd6800981f001403903f181e000a074375a002607600500b40f0607200281b8c0d4dd5001402503220643033375400300840d5008804402201081c8c0d800503418191baa0028acc004c0440062b3001303237540050078032066803205e40bc60606ea800600a804200a819200b005802c0150361819800a0623033002801c00e00700340d060620028178c0b4dd5001c00502a111194c004006009003400444464b300130110018992cc00400600d13259800800c01e00f007803c4c9660026070007005804206a375c00281c0c0d400503318189baa0038acc004c040006264b300100180344c966002003007803c4c96600260700071330150012259800801401e264b30010018cc00402a00313002303b003402900b805c02e01681e0c0e400903740210351bac001803c01d038181a800a06630313754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0e000e26602a00244b3001002803c4c966002003198008054006260046076006805201700b805c02d03c181c801206e804206a3758003007803a070303500140cc60626ea800e2b3001300f0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d801c4cc060004896600200500a8992cc0040063300100d800c4c008c0f800d00d403a01d00e807207e303c00240e900b40e06eb000601500a40ec607000281b0dd6800981b801401d038181a800a066303137540071598009807000c4c9660020030068992cc00400600f007803c4c9660026070007005804206a375a00300740e0606a0028198c0c4dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981c001c01601081a8dd6800c01d038181a800a066303137540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013038003802c0210351bae00140e0606a0028198c0c4dd5001c01502e205c40b8817102e205c40b8605e6ea8008888c966002601a00313259800800c00e264b300100180240120090048992cc004c0d000e00d00540c46eb80050341818800a05e302d37540091598009806000c4c9660020030038992cc0040060090048024012264b3001303400380340150311bae00140d060620028178c0b4dd5002400902a2054302b37540068b2032180d800980b1baa01c8a4d15330144911856616c696461746f722072657475726e65642066616c73650013656404c1\"\n :\n \"591d0b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009ba5480092222222222229800911192cc004c03000626464b3001302000280245901d1bae301e001301a37540071598009805800c4c966002603e00313300e3758603c00244b3001002802c6600200f3020002898009810801200e407916407060346ea800e2b300130120018992cc004c07c00626601c6eb0c07800489660020050058cc00401e6040005130013021002401c80f22c80e0c068dd5001c56600260140031323322598009810800c4cc040dd61810000912cc00400a00f19800804cc08800a260026046004804902045901e1bad301e001301f001301a37540071598009804800c4c8c96600260400050048b203a375a603c00260346ea800e2b30013008001899192cc004c08000a0091640746eb4c078004c068dd5001c566002600e0031323259800981000140122c80e8dd7180f000980d1baa0038b2030406080c10182030406080c0c060dd5001488c96600260160031323259800980f80140122c80e0dd7180e800980c9baa0038acc004c02800626464b3001301f00280245901c1bae301d0013019375400716405c80b8c05cdd5001489660026014602e6ea800a2646464b3001301f002899192cc004c03c0062b3001301d37540050068b203c8acc004c03800626464b300130230028044590201bad3021001301d3754005159800980a800c566002603a6ea800a00d16407916406c80d901b180d9baa001301e0038b20383259800980d800c56600266e252004301a0018b44c030c06800501945901c1baa301d001301d0013018375400516405922598009805180b9baa0028991919912cc004c08000e00b1640746eb4c074004dd7180e801180e800980c1baa0028b202c91192cc004c02c00626464b3001301f00280245901c1bad301d001301937540071598009805000c56600260326ea800e00516406916405c80b8c05cdd500124444466446645300133223259800980a18109baa001898111919bb03026001302630270013758604a60446ea80062c8100c8cc00400400c896600200314c103d87a80008992cc004cdd7981180099ba548010cc098c03ccc098dd480225eb812f5c11301033026374e6604c60460026604c604800297ae04bd7044cc00c00cc0a00090221813000a04837566044604660466046604660466046604660466046603e6ea8058dd71811180f9baa002912cc004c04cc080dd500144c8c8c8ca60026eb4c0a00066eb4c0a000e60500049112cc004c0b0012266014605600e26601e0020111640a43028001302700130260013021375400516407d2259800980998101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc0440044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80f922259800980a18109baa003899191919912cc004c0ac00e264b3001301a30273754003132323232323298009818800cdd61818802cdd698188024dd69818801cc0c40092222259800981b80344cc098dd6181b005912cc00400a26605000c44b300100289980e80289980e8048992cc004c0a8c0dcdd500944c8c8c966002607e005132332259800981800144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038acc004c0bc00a264b300130430018998191bac304200122598008014012266040608800426002608a00482122c8200c0f8dd5001c566002606c005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b3001302e0028992cc004c10c0062660646eb0c1080048966002005004899810182200109800982280120848b2080303e3754007159800981680144c96600260860031330323758608400244b300100280244cc084c1100084c004c114009042459040181f1baa0038acc004c0b000a264b300130430018998191bac304200122598008014012266042608800426002608a00482122c8200c0f8dd5001c5660026056005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b30013370e900700144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038b207840f081e103c207840f081e103c181d9baa001132598009817800c4c966002608400313302530410010078b207e303d37540071598009817000c4c9660026084003132598009818981f1baa00189919192cc004c11800a266054608a00626605400201716410c60880026088002607e6ea80062c81e8c1040062c81f8c0f4dd5001c5903b2076303b3754004607c0071640f0607a002607a00260706ea804a2c81b04cc0a8048896600200519800981e181c9baa302d303937540352298009919800800801912cc00400629422b30013375e6080607a6ea8c100c0f4dd51818981e9baa304000130283303f375200697ae08a518998010011820800a07640f94a14a281ca4607a607c607c607c607c607c607c607c607c0032302b30393754607a646600200200444b30010018a5eb8503d87a80008101800044c8cc896600330013030303e375460840074a14a281ea26608330014a14c103d87a8000a60103d879800040f4660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f904244cc106600294298103d87a8000a60103d879800040f4660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f4660826e9ccc104dd400080125eb8103d207a3758608060820026eb4c100008cc008008c10000503d48c0f4c0f8c0f8c0f8c0f8006444b30010028a6103d87a80008acc004c0b8006260506607c607e00497ae08cc00400e6080005337000029000a00640e881ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208089980280298230022080375c607e0026eb4c100004c108005040191919800800803112cc00400600713233225980099b910090028acc004cdc78048014400600c820a26600a00a608e0088208dd718200009bab304100130430014104297adef6c6014800244b3001302d303a375400513232598009820801400e2c81f0dd6981f800981d9baa0028b2072911919800800801912cc004006297ae0899912cc004cdd79821181f9baa3042303f37546066607e6ea8008c0a8cc104dd4802a5eb822660820046600800800313300400400140f46080002608200281f24607a607c607c607c607c607c0032303d303e303e303e001912cc0040062900044cdc02400466004004607e00281e2444653001001802400d0011112cc00400a2b30010018a518a504101159800800c52845660026600860840046eb4c1080063300100398218014c10c0050034528207a4100820244b3001302d303a375400513232323298009821000cc10800e60840049112cc004c11801226604e608a00e266048004264b3001303500189919912cc004c128006264646644b3001304e00380845904b1bae304b001375c609600460960026eb0c1240062c8238dd69823800982400098219baa0028acc004c0d00062646644b3001304a0018991919912cc004c13800e02116412c6eb8c12c004dd7182580118258009bac30490018b208e375a608e002609000260866ea800a2b3001303b001899194c004dd69824000cc1240066eb4c12000922259800982600144c8c8cc896600260a00070128b209a375c609a0026eb8c134008c134004dd618258014590490c120004c10cdd5001456600260660031323322598009825000c4c8c8cc8966002609c0070108b2096375c60960026eb8c12c008c12c004dd61824800c590471bad30470013048001304337540051598009819000c4c8c966002609200500b8b208c375a608e00260866ea800a2b300130310018991919912cc004c12c00e01b1641206eb4c120004dd69824001182400098219baa0028acc004c0c000626464b30013049002805c590461bad30470013043375400515980099b874803800626464b30013049002805c590461bad304700130433754005164104820904120824104820904120823041375400316410c304200130410013040001303b37540051640e52259800800c52000899b8048008cc008008c0fc00503c4dc4a40013710900024444444444444444530013049375402322259800980880144ca6002003004801d200040044444b30010038acc00400a2003164149198008024c15400e60aa005332259800980380144cdc00019bad30473053375400516414460a80066eb4c15000900420a48b209698060064c01801a4601e00330030034888888c8cc89660026084013198009bac30563053375403530563053375406930473053375406c9112cc004cc070dd6182c982b1baa04d375c60b260ac6ea8c06cc158dd5000c4cc8966002609460ae6ea80062646644b300130130028acc004c04c0062b3001598009826800c528c4c04800905944c9660026026003159800cc004cc06cdd6182f982e1baa053375c60a260b86ea8c084c170dd5003cdd61828182e1baa0089982f1828182e1baa3021305c375400e660bc9801054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c150c184dd5000c4cc896600260b860c66ea80062646603e0022b30013375e60b460ca6ea800cc1a0c194dd5003456600266ebcc164c194dd5000983418329baa0038acc004cdc49bad3059306537540073001375660b260ca6ea8c164c194dd50034dd71834003cdd7182c803a04c8992cc004c154c194dd5000c4cdc39bad3069306637540026eb4c168c198dd5002452820c8305a3065375400316418d16418d16418c60ce60c86ea80062c8310c194c188dd5000982b98311baa3056306237540071641806602201c00280d22c82ea2c82e9159800cc004dd61828982e1baa0539bac305f305c37540113305e3050305c3754604260b86ea801ccc17930106457355534472004bd702444b30013370e6020004602401919800806400a4464b30013054306137540031325980099baf30663063375400260cc60c66ea8c198c18cdd5002456600266ebcc160c18cdd5000982b98319baa30663063375400913370f3001375660ae60c66ea80066eb8c1980166eb8c15c0150242cc004c15402626eb4c15cc18cdd500244cdc199b82375a60ae60c66ea8010024029061452820c28a50418460ca60c46ea80062c8300cc04401400501a45905d2264b3001304f305c37540031325980099b87375a60c200266e000140222b30013370e6eb4c184c188004cdc0002001c56600266e1e60026eacc084c178dd502acdd71829182f1baa3023305e3754013488105735553447200407c0071305098009bab3021305e37540ab375c60a460bc6ea8c08cc178dd5004d2201045553447200407d1641711641711641713001375860a460ba6ea81526eb8c068c174dd51811182e9baa0089bae3051305d3754604460ba6ea80226eb4c180c174dd5000a0168b20b6301a305c3754011164169164169164168b3001304d0018802c4cdc199b8200500100241651641651641651641646eb4c170004dd6982e182e800cc004dd6182d982c1baa04f9bae301530583754603a60b06ea800e6eb8c130c160dd5180e982c1baa0039bad305b30583754002803a2c82b26002007375860b260ac6ea800a4b3001300e375a609660ae6ea8006260926eb4c050c15cdd5000c52820aa402c603260ac6ea800a2c82a11598009820804c660026eb0c158c14cdd500d4c158c14cdd501a4c11cc14cdd501b2444b30013301c375860b260ac6ea8134dd7182c982b1baa301b3056375400313322598009825182b9baa00189919912cc004c04800a2b30013012001899192cc004c0500062b300198009980e1bac3060305d37540a86eb8c148c174dd51811182e9baa0089bac3051305d37540133305f3051305d3754604460ba6ea8020cc17d300106457355534472004bd702444b30013370e6026006602601b159800980900146600200700291192cc004c154c188dd5000c4cc896600260ba60c86ea8006264660400022b30013375e60b660cc6ea800cc1a4c198dd5003456600266ebcc168c198dd5000983498331baa0038acc004cdc49bad305a306637540073001375660b460cc6ea8c168c198dd50034dd71834803cdd7182d003a04e8992cc004c154c198dd5000c4c96600266e1cdd698358009bad305c3068375400b13370e6eb4c1acc1b0004dd6981298341baa0058a50419860ce6ea80062941065182d98331baa0018b20c88b20c88b20c830683065375400316418c60cc60c66ea8004c160c18cdd5182b98319baa0038b20c23301200f001406d1641791641788acc004cdc3cc004dd59810182e9baa0549bae3051305d3754604460ba6ea8022910105735553447200407866e0520000078992cc004c140c174dd5000c4c96600266e1cdd6983100099b810060038acc004cdc39bad306230630013370200a0131598009828cc004dd59811182f9baa0569bae3053305f3754604860be6ea802a9110455534472004081159800cc004dd6182a182f9baa0569bac3062305f3754017330613053305f3754604860be6ea8028cc185301054455534472004bd702444b30013370e6026004602a01f19800807c00a4464b30013057306437540031325980099baf30693066375400260d260cc6ea8c1a4c198dd5002456600266ebcc16cc198dd5000982d18331baa30693066375400913370f3001375660b460cc6ea80066eb8c1a40166eb8c16801502719b813370666e08dd6982d18331baa00400d00c375a604660cc6ea80122941064452820c830683065375400316418c6602800a00280ea2c8301198009bac3054305f37540ad30623063306330633063306330633063306330633063305f3754015330613053305f3754604860be6ea8028cc185301054455534472004bd704dd69831183180224444b300130550018a51899b8900132330010010052259800800c52000899912cc004cdd7983518339baa002007899b8000198009bab305b30673754005375c60d400d375c60b600c814220028328c1a0004cc008008c1a400506620c245905d45905d45905d45905d4c004dd61829982f1baa0559bae301b305e3754604660bc6ea80266eb8c148c178dd51811982f1baa0099bad3061305e375400280622c82e0c06cc174dd5004c5905b45905b45905b1bad305f001329800800c02697ae1101000081010000200222259800801440063300100398310014c8c96600260306eb4c074c180dd5001456600266e24dd6980e98301baa0020018998311ba8337006eb4c18c00c004cc188dd419b80375a60c660c80066eb4c074c180dd500125eb822c82f22c82f0cdc199b82375a60a660be6ea8004018014c18400900320be8b20b28b20b2375a60b80026eb4c170c17400660026eb0c16cc160dd5027cdd7180a982c1baa301d30583754007375c609860b06ea8c074c160dd5001cdd6982d982c1baa001401d16415930010039bac3059305637540052300e375a609660ae6ea800500b180c982b1baa0028b20a8452820a24144444464b30013048305537540031325980099baf305a3057375460b460ae6ea8c12cc15cdd500098211982c9ba90054bd704566002609130013756609660ae6ea8c12cc15cdd5000c01691010d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c80089982d9ba898009bab304d30593754609a60b26ea800e00d48810455534472004068660b660b860b26ea8004cc16c00d2f5c060b660b06ea80062c82b0c130c15cdd51825982b9baa0018b20aa8b20aa3059305637540031641506600a008002444464b30013048305537540031325980099baf305a3057375460b460ae6ea8004c108cc164dd4802a5eb822b3001304898009bab304b30573754003005a450d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c8008acc004cdd7980b182c9baa0034c0103d87a800089982d9ba898009bab304d30593754007006a4410455534472004068660b660b860b26ea8004cc16c00d2f5c116415c60b660b06ea80062c82b0c130c15cdd5000c59055459055182c982b1baa0018b20a833005004001225980099b8800148002298103d87a8000899803001000a0a022646644b30013040001899912cc004c0c0c0f4dd500144c8c8c8cc8966002608e00713259800981b18219baa0018991919912cc004c13000e264b3001303b001899192cc004c13c00a01d1641306eb8c134004c124dd5003c566002607400315980098249baa00780645904a459047208e3047375400d1641246eb8c124004dd71824801182480098221baa0018b208430460058b2088375c6088002608800460880026086002607c6ea800a2c81e0c0fc0044c010c1000162c81e8dd7181e800981f0009bac303c00240e91323002303c003375a607400481c2264600460740066eb4c0e00090364590340c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815002c590281bac302800130280023028001302700130223754007164080323232598009809180f9baa00189919912cc004c09c006264b30013016302337540031323232323232323232323298009819000cc0c802a606401330320089819003cc0c801a606400b30320049819001cdd6181900124444444444b3001303d00b89980f181e00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0acc0e0dd500144c8c8c8ca60026eb8c1000066eb8c1000126eb8c10000e6eb8c1000092222598009822802c4cc0d0024896600200513302701410248992cc004c0d8c10cdd5000c4c8c8c8cc8966002609a007132323322598009828801c4c02cc1440322c8270dd718270009bae304e002304e0013758609800b1641286eb4c128004dd698250011825000982480098221baa0018b2084304600241111641083040001303f001303e001303937540051640dd1640e8303200130310013030001302f001302e001302d001302c001302b001302a001302900130243754003164088604c0031640906eb8c090004c094004c080dd5000c5901e192cc004c048c07cdd5000c4c966002603260406ea8006264b3001301430213754003132323322598009815001c40162c8138c09c004dd71813801181380098111baa0018b204030243021375400316407c602a60406ea8c050c080dd5181198101baa0018b203c32330010013758602860406ea805c896600200314c0103d87a80008992cc004c8cc004004c014dd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a04440951300e330240014bd7044cc00c00cc0980090201812000a04430010012259800800c52f5c1133021301e3022001330020023023001408044b30013011301e3754005132323259800981300144cc018c09400c4c966002602a00315980098119baa002802c590244566002602800313232598009814801401e2c8130dd7181380098119baa0028acc004c06c00626464b30013029002803c59026181380098119baa0028b204240848108c084dd5000c5902318120009812000980f9baa0028b203a300500522598009807980e1baa00289919192cc004c09000a2660126046006264b300130130018992cc004c09800626464b300130160018992cc004c0a400626601c605000201316409860486ea800a2b3001301500189919194c004dd69815000cdd69815001cdd698150012444b3001302e00480745902b0c0a8004c0a4004c090dd5001459022204430223754002604a00316408c60426ea800a2b300130120018acc004c084dd500140162c81122c80f901f180f9baa0018b204230220013022001301d375400516406c4590080c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProxyNftProxyNftMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ]),\n [\n utxoRef,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1ProxyNftProxyNftElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n :\n \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n ]),\n [\n utxoRef,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse {\n public Script: Script\n constructor(\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([\n PolicyId,\n ]),\n [\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1StakingVaultStakingVaultMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n :\n \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1StakingVaultStakingVaultSpend {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n :\n \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1StakingVaultStakingVaultElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n :\n \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1TreasuryTreasuryMint {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1TreasuryTreasurySpend {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}\nexport class V1_0Rc1TreasuryTreasuryElse {\n public Script: Script\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ?\n \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n :\n \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object({\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n }, { ctor: 0n }),\n PolicyId,\n ]),\n [\n utxoRef,\n proxyPolicyId,\n ],\n ),\n \"PlutusV3\"\n );\n }\n}"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v1_1_rc1/index.js b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_1_rc1/index.js new file mode 100644 index 0000000000..38e83905a1 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_1_rc1/index.js @@ -0,0 +1,3 @@ +function _defineProperty(e,r,t){return(r=_toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==typeof i?i:i+"";}function _toPrimitive(t,r){if("object"!=typeof t||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}/* eslint-disable */// @ts-nocheck +import{applyParamsToScript,cborToScript}from"@blaze-cardano/uplc";import{Type,TPlutusData}from"@blaze-cardano/data";const PolicyId=Type.String();const ScriptHash=Type.String();const Contracts=Type.Module({Bool:Type.Boolean(),Tuple_VerificationKey_COSESign1:Type.Tuple([Type.String(),Type.Ref("COSESign1")]),GovernanceConfig:Type.Object({logic_change:Type.Ref("MultisigScript"),permission_change:Type.Ref("MultisigScript"),config_change:Type.Ref("MultisigScript"),shutdown:Type.Ref("MultisigScript"),restore:Type.Ref("MultisigScript"),migrate:Type.Ref("MultisigScript")},{ctor:0n}),SettingsAuthPayload:Type.Object({change:Type.Ref("SettingsRedeemer"),destination:Type.String(),datum:Type.Ref("ProxyDatum"),nonce:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})},{ctor:0n}),SettingsRedeemer:Type.Union([Type.Literal("ChangeLogic",{ctor:0n}),Type.Literal("ChangePermissions",{ctor:1n}),Type.Literal("ChangeConfig",{ctor:2n}),Type.Literal("Shutdown",{ctor:3n}),Type.Literal("Restore",{ctor:4n}),Type.Literal("Migrate",{ctor:5n})]),SettingsSignedRedeemer:Type.Object({change:Type.Ref("SettingsRedeemer"),signatures:Type.Array(Type.Ref("Tuple_VerificationKey_COSESign1"))},{ctor:0n}),COSESign1:Type.Object({headers:Type.Ref("Headers"),payload:Type.Optional(Type.String()),signature:Type.String()},{ctor:0n}),HeaderMap:Type.String(),Headers:Type.Object({protected:Type.Ref("HeaderMap"),unprotected:Type.Ref("HeaderMap")},{ctor:0n}),MultisigScript:Type.Union([Type.Object({Signature:Type.Object({key_hash:Type.String()},{ctor:0n})}),Type.Object({AllOf:Type.Object({scripts:Type.Array(Type.Ref("MultisigScript"))},{ctor:1n})}),Type.Object({AnyOf:Type.Object({scripts:Type.Array(Type.Ref("MultisigScript"))},{ctor:2n})}),Type.Object({AtLeast:Type.Object({required:Type.BigInt(),scripts:Type.Array(Type.Ref("MultisigScript"))},{ctor:3n})}),Type.Object({Before:Type.Object({time:Type.BigInt()},{ctor:4n})}),Type.Object({After:Type.Object({time:Type.BigInt()},{ctor:5n})}),Type.Object({Script:Type.Object({script_hash:Type.String()},{ctor:6n})})]),ProxyDatum:Type.Object({logic:Type.String(),settings:TPlutusData},{ctor:0n}),Denominator:Type.BigInt(),DistributionOracleDatum:Type.Object({message:Type.Ref("SignedDistributionOracleMessage"),staked_usdr:Type.BigInt(),staking_yield:Type.BigInt()},{ctor:0n}),DistributionOracleMessage:Type.Object({input:Type.Ref("YieldDistributionInput"),hurdle:Type.Ref("Ratio"),floor:Type.Ref("Ratio"),timestamp:Type.Ref("Slot"),base:Type.BigInt(),r_max:Type.BigInt()},{ctor:0n}),Numerator:Type.BigInt(),ProtocolOrchestratorRedeemerV1:Type.Union([Type.Object({ExecuteOrders:Type.Tuple([Type.Ref("SignedRedeemer_v1_1_ExtraProtocolRedeemerV1")],{ctor:0n})}),Type.Object({PublishYieldOracle:Type.Tuple([Type.Ref("SignedDistributionOracleMessage")],{ctor:1n})})]),Ratio:Type.Tuple([Type.Ref("Numerator"),Type.Ref("Denominator")]),SignedDistributionOracleMessage:Type.Object({payload:Type.Ref("SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage"),signatures:Type.Array(Type.Ref("Tuple_VerificationKey_COSESign1"))},{ctor:0n}),Slot:Type.BigInt(),YieldDistributionInput:Type.Object({net_distributable_income:Type.BigInt(),staked_usdr:Type.BigInt()},{ctor:0n}),Asset:Type.Tuple([Type.String(),Type.String()]),Destination:Type.Object({address:Type.Object({payment_credential:Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})]),stake_credential:Type.Optional(Type.Union([Type.Object({Inline:Type.Tuple([Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})])],{ctor:0n})}),Type.Object({Pointer:Type.Object({slot_number:Type.BigInt(),transaction_index:Type.BigInt(),certificate_index:Type.BigInt()},{ctor:1n})})]))},{ctor:0n}),datum:Type.Union([Type.Literal("NoDatum",{ctor:0n}),Type.Object({DatumHash:Type.Tuple([Type.String()],{ctor:1n})}),Type.Object({InlineDatum:Type.Tuple([TPlutusData],{ctor:2n})})])},{ctor:0n}),DirectRequestV1:Type.Object({destination:Type.Ref("Destination"),amount:Type.BigInt(),origin:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})},{ctor:0n}),ExchangeRequestV1:Type.Object({destination:Type.Ref("Destination"),amount:Type.BigInt(),min_received:Type.BigInt(),origin:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),reserve_asset:Type.Ref("Asset")},{ctor:0n}),ExtraProtocolRedeemerV1:Type.Object({request_to_outputs:Type.Array(Type.BigInt()),input_to_requests:Type.Array(Type.BigInt()),treasury_input_idx:Type.BigInt(),treasury_output_idx:Type.BigInt(),vault_input_idx:Type.Optional(Type.BigInt()),vault_output_idx:Type.Optional(Type.BigInt())},{ctor:0n}),Nonce:Type.Union([Type.Object({UTxO:Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})],{ctor:0n})}),Type.Object({Validity:Type.Tuple([Type.Object({lower_bound:Type.Object({bound_type:Type.Union([Type.Literal("NegativeInfinity",{ctor:0n}),Type.Object({Finite:Type.Tuple([Type.BigInt()],{ctor:1n})}),Type.Literal("PositiveInfinity",{ctor:2n})]),is_inclusive:Type.Ref("Bool")},{ctor:0n}),upper_bound:Type.Object({bound_type:Type.Union([Type.Literal("NegativeInfinity",{ctor:0n}),Type.Object({Finite:Type.Tuple([Type.BigInt()],{ctor:1n})}),Type.Literal("PositiveInfinity",{ctor:2n})]),is_inclusive:Type.Ref("Bool")},{ctor:0n})},{ctor:0n})],{ctor:1n})})]),OrderActionV1:Type.Union([Type.Object({OMint:Type.Object({amount:Type.BigInt(),min_received:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:0n})}),Type.Object({ORedeem:Type.Object({amount:Type.BigInt(),min_received:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:1n})}),Type.Object({ODeposit:Type.Object({principal:Type.BigInt(),yield:Type.BigInt(),diffusion_end:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:2n})}),Type.Object({OWithdraw:Type.Object({amount:Type.BigInt(),reserve_asset:Type.Ref("Asset")},{ctor:3n})}),Type.Object({OStake:Type.Object({amount:Type.BigInt(),min_received:Type.BigInt()},{ctor:4n})}),Type.Object({OUnstake:Type.Object({amount:Type.BigInt(),min_received:Type.BigInt(),forfeit:Type.BigInt()},{ctor:5n})}),Type.Object({ODirectMint:Type.Object({amount:Type.BigInt()},{ctor:6n})}),Type.Object({ODirectBurn:Type.Object({amount:Type.BigInt()},{ctor:7n})})]),OrderDatumV1:Type.Object({owner:Type.Ref("MultisigScript"),destination:Type.Ref("Destination"),action:Type.Ref("OrderActionV1"),data:TPlutusData},{ctor:0n}),OrderRedeemerV1:Type.Union([Type.Literal("Execute",{ctor:0n}),Type.Literal("Cancel",{ctor:1n}),Type.Literal("Invalidated",{ctor:2n})]),Permissions:Type.Object({mint:Type.Ref("MultisigScript"),burn:Type.Ref("MultisigScript"),withdraw:Type.Ref("MultisigScript"),deposit:Type.Ref("MultisigScript"),stake:Type.Ref("MultisigScript"),unstake:Type.Ref("MultisigScript"),direct_mint:Type.Ref("MultisigScript"),direct_burn:Type.Ref("MultisigScript"),yield_oracle:Type.Ref("MultisigScript"),migrate:Type.Ref("MultisigScript")},{ctor:0n}),ProtocolConfig:Type.Object({reserve_assets:Type.Array(Type.Ref("ReserveAsset")),unstaked_yield_pot:Type.Object({payment_credential:Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})]),stake_credential:Type.Optional(Type.Union([Type.Object({Inline:Type.Tuple([Type.Union([Type.Object({VerificationKey:Type.Tuple([Type.String()],{ctor:0n})}),Type.Object({Script:Type.Tuple([Type.String()],{ctor:1n})})])],{ctor:0n})}),Type.Object({Pointer:Type.Object({slot_number:Type.BigInt(),transaction_index:Type.BigInt(),certificate_index:Type.BigInt()},{ctor:1n})})]))},{ctor:0n})},{ctor:0n}),ProtocolRedeemerV1:Type.Union([Type.Object({Mint:Type.Object({requests:Type.Array(Type.Ref("ExchangeRequestV1"))},{ctor:0n})}),Type.Object({Burn:Type.Object({requests:Type.Array(Type.Ref("ExchangeRequestV1"))},{ctor:1n})}),Type.Object({Withdraw:Type.Object({requests:Type.Array(Type.Ref("TreasuryRequestV1"))},{ctor:2n})}),Type.Object({Deposit:Type.Object({requests:Type.Array(Type.Ref("TreasuryRequestV1")),alpha:Type.Ref("YieldSplitAlpha")},{ctor:3n})}),Type.Object({Stake:Type.Object({requests:Type.Array(Type.Ref("StakeRequestV1"))},{ctor:4n})}),Type.Object({Unstake:Type.Object({requests:Type.Array(Type.Ref("StakeRequestV1"))},{ctor:5n})}),Type.Object({DirectMint:Type.Object({requests:Type.Array(Type.Ref("DirectRequestV1"))},{ctor:6n})}),Type.Object({DirectBurn:Type.Object({requests:Type.Array(Type.Ref("DirectRequestV1"))},{ctor:7n})}),Type.Literal("MigrateState",{ctor:8n})]),ProxyDatumV1:Type.Object({logic:Type.String(),settings:Type.Ref("SettingsV1")},{ctor:0n}),RegistryV1:Type.Object({treasury:Type.String(),usdr:Type.String(),order:Type.String(),staking_vault:Type.String(),yield_oracle:Type.String(),migration:Type.Optional(Type.String())},{ctor:0n}),ReserveAsset:Type.Object({asset:Type.Ref("Asset"),numerator:Type.BigInt(),denominator:Type.BigInt()},{ctor:0n}),SettingsV1:Type.Object({permissions:Type.Ref("Permissions"),registry:Type.Ref("RegistryV1"),config:Type.Ref("ProtocolConfig")},{ctor:0n}),SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage:Type.Object({action:Type.Ref("DistributionOracleMessage"),nonce:Type.Ref("Nonce")},{ctor:0n}),SignedPayload_v1_1_ProtocolRedeemerV1:Type.Object({action:Type.Ref("ProtocolRedeemerV1"),nonce:Type.Ref("Nonce")},{ctor:0n}),SignedRedeemer_v1_1_ExtraProtocolRedeemerV1:Type.Object({extra:Type.Ref("ExtraProtocolRedeemerV1"),payload:Type.Ref("SignedPayload_v1_1_ProtocolRedeemerV1"),signatures:Type.Array(Type.Ref("Tuple_VerificationKey_COSESign1"))},{ctor:0n}),StakeRequestV1:Type.Object({destination:Type.Ref("Destination"),amount:Type.BigInt(),min_received:Type.BigInt(),origin:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),forfeit:Type.BigInt()},{ctor:0n}),StakingVaultRedeemerV1:Type.Undefined(),TreasuryDatumV1:Type.Object({circulating_supply:Type.BigInt()},{ctor:0n}),TreasuryRequestV1:Type.Object({destination:Type.Ref("Destination"),amount:Type.BigInt(),yield:Type.BigInt(),diffusion_end:Type.BigInt(),origin:Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),reserve_asset:Type.Ref("Asset")},{ctor:0n}),VaultDatumV1:Type.Object({circulating_susdr:Type.BigInt(),pending_yield:Type.BigInt(),diffusion_start:Type.BigInt(),diffusion_end:Type.BigInt()},{ctor:0n}),YieldSplitAlpha:Type.Object({numerator:Type.BigInt(),denominator:Type.BigInt()},{ctor:0n})});export const Bool=Contracts.Import("Bool");export const Tuple_VerificationKey_COSESign1=Contracts.Import("Tuple_VerificationKey_COSESign1");export const GovernanceConfig=Contracts.Import("GovernanceConfig");export const SettingsAuthPayload=Contracts.Import("SettingsAuthPayload");export const SettingsRedeemer=Contracts.Import("SettingsRedeemer");export const SettingsSignedRedeemer=Contracts.Import("SettingsSignedRedeemer");export const COSESign1=Contracts.Import("COSESign1");export const HeaderMap=Contracts.Import("HeaderMap");export const Headers=Contracts.Import("Headers");export const MultisigScript=Contracts.Import("MultisigScript");export const ProxyDatum=Contracts.Import("ProxyDatum");export const Denominator=Contracts.Import("Denominator");export const DistributionOracleDatum=Contracts.Import("DistributionOracleDatum");export const DistributionOracleMessage=Contracts.Import("DistributionOracleMessage");export const Numerator=Contracts.Import("Numerator");export const ProtocolOrchestratorRedeemerV1=Contracts.Import("ProtocolOrchestratorRedeemerV1");export const Ratio=Contracts.Import("Ratio");export const SignedDistributionOracleMessage=Contracts.Import("SignedDistributionOracleMessage");export const Slot=Contracts.Import("Slot");export const YieldDistributionInput=Contracts.Import("YieldDistributionInput");export const Asset=Contracts.Import("Asset");export const Destination=Contracts.Import("Destination");export const DirectRequestV1=Contracts.Import("DirectRequestV1");export const ExchangeRequestV1=Contracts.Import("ExchangeRequestV1");export const ExtraProtocolRedeemerV1=Contracts.Import("ExtraProtocolRedeemerV1");export const Nonce=Contracts.Import("Nonce");export const OrderActionV1=Contracts.Import("OrderActionV1");export const OrderDatumV1=Contracts.Import("OrderDatumV1");export const OrderRedeemerV1=Contracts.Import("OrderRedeemerV1");export const Permissions=Contracts.Import("Permissions");export const ProtocolConfig=Contracts.Import("ProtocolConfig");export const ProtocolRedeemerV1=Contracts.Import("ProtocolRedeemerV1");export const ProxyDatumV1=Contracts.Import("ProxyDatumV1");export const RegistryV1=Contracts.Import("RegistryV1");export const ReserveAsset=Contracts.Import("ReserveAsset");export const SettingsV1=Contracts.Import("SettingsV1");export const SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage=Contracts.Import("SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage");export const SignedPayload_v1_1_ProtocolRedeemerV1=Contracts.Import("SignedPayload_v1_1_ProtocolRedeemerV1");export const SignedRedeemer_v1_1_ExtraProtocolRedeemerV1=Contracts.Import("SignedRedeemer_v1_1_ExtraProtocolRedeemerV1");export const StakeRequestV1=Contracts.Import("StakeRequestV1");export const StakingVaultRedeemerV1=Contracts.Import("StakingVaultRedeemerV1");export const TreasuryDatumV1=Contracts.Import("TreasuryDatumV1");export const TreasuryRequestV1=Contracts.Import("TreasuryRequestV1");export const VaultDatumV1=Contracts.Import("VaultDatumV1");export const YieldSplitAlpha=Contracts.Import("YieldSplitAlpha");export class SettingsProtocolSettingsProtocolSettingsSpend{constructor(proxyPolicyId,gov,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241":"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021",Type.Tuple([PolicyId,GovernanceConfig]),[proxyPolicyId,gov]),"PlutusV3");}}export class SettingsProtocolSettingsProtocolSettingsWithdraw{constructor(proxyPolicyId,gov,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241":"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021",Type.Tuple([PolicyId,GovernanceConfig]),[proxyPolicyId,gov]),"PlutusV3");}}export class SettingsProtocolSettingsProtocolSettingsPublish{constructor(proxyPolicyId,gov,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241":"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021",Type.Tuple([PolicyId,GovernanceConfig]),[proxyPolicyId,gov]),"PlutusV3");}}export class SettingsProtocolSettingsProtocolSettingsElse{constructor(proxyPolicyId,gov,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241":"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021",Type.Tuple([PolicyId,GovernanceConfig]),[proxyPolicyId,gov]),"PlutusV3");}}export class V1_1Rc1DistributionOracleDistributionOracleWithdraw{constructor(proxyPolicyId,oracleNftPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5927e80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a660089213265787065637420646174756d3a20446973747269627574696f6e4f7261636c65446174756d203d20646174756d5f6461746100168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022491b657870656374205b5f5d203d206f7261636c655f6f75747075747300168a998022495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488896600264653001300f00198079808000cdc3a4009300f00248889660026004601e6ea800e3300130133010375400723014301530150019ba54800246028602a003370e90002444446464b30010018cc004dc3a4005222598009803180c9baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026048007008803a042375a0030064090604200280f8dd700098100012042301e001407060346ea800e00280ba446466002002006446600600260040053016375400291114c004889660026014603a6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c08c0062b30013371290021811000c01a264b300130280048992cc004c0440062b30013025375400d009804204c8acc004c038006264b3001001804c4c96600200300a805402a264b3001302c003806402d0291bad00180520583029001409c604a6ea801a2b300130170018acc004c094dd500340260108132010811102220443023375400b007409460186044002810200c8120dd5000c01600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a0369112cc004c028c074dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0a400e2b300130113024375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002605e00713259800980c000c4c9660020030108992cc004006023011808c046264b30013033003809c0490301bae00140cc60600028170c0b0dd5005c566002602a00315980098161baa00b808403d02d403d0292052302a375401500e40b06eb800502f1816000a054375c00260560048160c0a400502718129baa0068042044804204c375c0028148c0980050241813001401600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a036911192cc004c02c006264b3001001801c4c9660020030048024012009132598009813001c01a00a8118dd7000a04c30230014084603e6ea80122b300130080018992cc00400600713259800800c01200900480244c966002604c007006802a046375c0028130c08c005021180f9baa00480120384070603a6ea800e44464b3001300b0018992cc00400600713259800800c0120090048992cc004c09800e00d005408c6eb40060088130c08c005021180f9baa0048acc004c0200062b3001301f3754009003801204080120384070603a6ea800d2222332298009112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c4c966002605a007159800980a98141baa0048992cc00400600f13259800800c4c9660020030098992cc0040062b300130310028acc004c064c0b0dd5001c4c96600200300b8992cc004006264b3001001806c4c96600200300e80744cc89660020030108992cc004006023011899912cc00400602713259800800c052029014899912cc00400602d13259800800c05e02f017899912cc00400603313259800800c06a03501a8992cc004c10800e2b3001302a303d375402113259800800c072264b300100180ec07603b1332259800800c07e264b30010018104082041132598009824001c5660020270218992cc00400604502281144cc89660020030248992cc00400604b025812c4c966002609a00715980080ac09a264b3001001813c09e04f1332259800800c0a6264b300100181540aa055132598009829001c66002045133035026225980080140ba264b300100181740ba264b3001001817c4c96600200303081840c20611332259800800c0ca264b30010018acc004c16800a3300100189803982d00440cd03a40cd05740ce067033819a0b6305800141586eb8004c15c009058182a800a0a6375800302e81720ac3053002414502b40bd02b413c6eb40060548290c13c00504d1bad001304e016813a09e304c015412902641286eb400604a8268c1280050481bad001304901481120943047013411502141146eb40060408240c1140050431bad001304400280ea08a30420014100607c6ea804203681da03681f8dd6800c069042181f800a07a375a002607c00501740fc607800281d0dd6800981d801405103c181c800a06e37580026070005011808a072303600140d06eb0004c0d400a01d00e40d860660028188c0cc00a01900c80640310341818800a05e302d375400700a40a900a40b900a805402a0148190c0bc00502d181780140220110088042060302d00140ac60526ea801200c813200c8150dd6000c01600a8168c0a80050281815001400e007003801a0563028001409860486ea800e002810a444b300130103023375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002605e00519800803466002003009804202680420168042058804402201100840c0605a0028158dd68009816001401502d1815000a050302a002801c00e00700340ac60500028130c090dd5001c005021488966002602060466ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c0d400e3300100c8cc00401201f00e406500e404500e40c86eb400601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a0429112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200300b805c02e26644b3001001806c4c96600200313259800800c03e264b30010018084042264b300130380038cc00403e330010048acc00400602313259800800c04a02501280944cc89660020030148992cc00400602b01580ac056264b3001303d00380bc05903a1bae00140f4607400281c0dd7000981c8012074303700140d50114071011405101140d46eb000602101040e0606a0028198c0d400a01d00e80740390361819800a062375a002606400500b40cc60600028170dd6800981780140210301816800a056375a002605800500540b460540028140c0a800a007003801c00d02b1814000a04c30243754007001408522259800980818119baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002606a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026074007014809a06e375c00281d0c0dc0050351bae001303600240dc6068002819201c80ca01c808a01c8190dd6000c03601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a042488888c966002602601b13259800800c07e264b30010018acc004c0b400a2b300130153028375400313259800800c086264b30010018992cc00400604713259800800c4c9660020030258992cc00400604d0268992cc004c0d000e2b3001301c302f375400d13259800800c0a2264b3001001814c0a626644b3001001815c4c96600200302c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944cc89660020030348992cc004006264b300100181b44c966002003159800982200144cc09c038896600200513302900d225980080146600200f19800802c566002606060866ea8062264b300100181e44c96600200313259800800c0fa264b30010018acc004c13000a26644b300130360018992cc00400608513259800800c10e087132598009828801c4cc0d000489660020050078992cc0040063300100189801182a001c11d02b411e08f047823a0aa3052002414104441386eb00060870434144609c0028260c128dd5002c566002606600313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a056823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260a20071330340012259800801401e264b30010018cc0040062600460a800704740b1047823c11e08e82a8c148009050411104e1bac001821c10d0511827000a098304a375400b15980099b8748018006264b300100182144c966002003043821c4cc89660020030458992cc0040062b3001305300289981b001912cc00400a2b3001303d3050375400713259800800c126264b3001001825412a0951332259800800c132264b3001001826c13609b13259800982d801c03e09c82c0dd6800c13505b182c000a0ac375a00260ae00504a416060aa0028298c144dd5001c12104e44c96600200319800800c4c008c15800e0928172093049824c125057182a00120a482320a0823411a08d046415060a20028278dd60009828001410e0868288c13800504c18251baa0058acc004cdc3a401000313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401400313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401800313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401c00313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a402000315980098251baa005801410504b4105047208e411c8239047208e411c82390470cc00400626605e03244b300100281244c96600200304282144c9660020030438992cc004006089044822411226644b300100182344c966002003159800982a001466002003130073054008823a068823a0a2823c11e08f047415460a40028280dd7000982880120a4304f00141346eb00060850424140609a004825a07e8148c11cdd5001c0fd04940fe07f03f81fa09a304a0014120609400503d81ec0f607a8258c12000504618221baa01881da08281da04c81da04c8992cc00400607903c81e44c8c00cc128010dd6800c0f104a1823801208a8992cc00400607503a81d44c8c00cc120010dd6800c0e90481822801208681ba08281bc0de06f037411460840028200c10800a06b03581ac0d50431820000a07c375a002607e0050324100607a00281d8dd6800981e00140bd03d181d000a0703758002607200502c8162074303700140d46eb0004c0d800a05302940dc60680028190c0c0dd5003409d02d409d0311bac00181340990341818800a05e3031002812409204902440c8605e0028168c0bc00a04502281140890301816800a05630293754003020409902040a902081040820408170c0ac00502918139baa0118acc004c040036264b300100180fc4c966002003159800981680146600200300381020108102054810408204102040b860560028148c09cdd5008c0790242048159800980798129baa010899912cc004c050c09cdd5000c4c8cc896600330013233001001323300100137566006605a6ea8078896600200314bd7044c8cc88cc88cc008008004896600200310038991981b1ba733036375200a6606c60660026606c606800297ae0330030033038002303600140d06eacc0c400cdd718170009980180198198011818800a05e2259800800c528456600266e3cdd718181bac30300010288a518998010011818800a05440b94a14a28142264b30013371064b3001301f302c375400313259800800c5660026034605a6ea8006264b3001001814c4c96600200313259800800c0ae264b300100181640b20591332259800800c0ba264b3001001817c0be05f13259800981d001c6600200f1375a6016606c6ea8c0e4c0d8dd5181c981b1baa303930363754013030405503040dc6eb400605e81d0c0dc0050351bad0013036002816206e303400140c8606800502a81540aa05481a8c0c800503018171baa001814205681440a205102840cc6060605a6ea8006290002054301b302c3754603260586ea8010dd6980098161baa302f302c3754605e60586ea801a2b3001323259800980b800c4cdc41bad3031302e37540046eb4c00cc0b8dd5181898171baa3031302e3754011159800980d000c528c528205640ac60586ea8004c0bcc0b0dd5181798161baa302f3030303030303030303030303030302c375403b1323259800800c09a2b300130320018a51813205e40bc64660020026eb0c074c0b8dd500f912cc004006297ae0899912cc0056600266ebcc0d0c0c4dd5001004456600266ebcdd319198008009bab301f3032375400644b30010018a5eb7bdb1822653001375c606600337566068003303800248896600266e452201000038acc004cdc7a441000038800c401503444cc0e4cdd81ba9003374c0046600c00c00281a0606c00281a0dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606c66ec0dd48179ba60034bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8019801c4cc0e8cdd81ba9033374c00e00b15980099b8f03300389981d19bb037520666e9801c00626607466ec0dd48019ba60023300600600140d481a8606e00281a8c8cc0040052f5bded8c044b300100189981a99bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0cc0066eb4c0d000660700049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981c99bb037520066ea0008cc0180180050342068181b000a06840b913375e604060626ea8008cdd2a40086606600a97ae08a5040b914a081722660660046600800800313300400400140b86064002606600281826002444b3001301b001880146600200700199b86002001400c81624466e0ccdc1001000a410112f5223371266e08dd698188011bad30313032001337046eb4c0c4004dd69818981900148cdc4240006eb4c0c0c0c40066e092080897a981798161baa302f302c375400c91111119199118119981b8079981b9811181a9baa3038303537540086606e6ea0cc896600260100051598009804000c56600266012004003130030018980180120688a9981aa492b6578706563742069735f76616c69645f726174696f28706f73745f726574656e74696f6e5f7969656c6429001640d115330354911c6578706563742069735f76616c69645f726174696f28666c6f6f7229001640d06eb0c090c0d4dd50024c004dc4a400137586044606a6ea80126eb4c02cc0d4dd50024dd6981c181c981c981c981c981c981a9baa00448888c96600260160091598009805800c5660026601800200910018991919911805998201ba83370066e08dd6982080400119b82375a6082006002660806ea0cdc100080125eb80dd6981f98200009bad303f304000630083303d375066e08dd6981f00099b814820225e8c966002600e00b15980099b890050048acc004cdc48022410112f513370000a6601e66e0401001566002600e00315980099b8900148202d2244e26464646464646466e04cdc019b813370066e04cdc019b810073370600c900219b8300548030cdc18022406066e0c00d20f0013370600490500599b830014838138cdc19980b000803a4101ec086602a00200c6602800200a6602600200866024002006660220020046602000200266e0c00520288a9981d2491b6578706563742073203c3d206d61785f737570706f727465645f73001640e5153303a4910d6578706563742073203e3d2030001640e5153303a4911565787065637420725f6d6178203c3d207363616c65001640e5153303a4911465787065637420725f6d6178203e3d2062617365001640e5153303a491106578706563742062617365203e3d2030001640e464b30013371090405a4489800c52080b489138800a0723370666e08c02cdd6981f000a4190026eb4c0f8c0fc004cc0f4dd418059bad303e303f0014bd70199118049981f1ba83370266e08dd6981f80180099b82375a607e00c0046607c6ea0cdc1001000a5eb80dd6981e981f0009bad303d303e00440dd1533038491206578706563742069735f76616c69645f726174696f287261775f7969656c6429001640dd15330384911d6578706563742069735f76616c69645f726174696f28687572646c6529001640dc646644b300130070028acc004cdc42400000313303e37500046607c6ea00052f5c1153303a490116657870656374207374616b65645f75736472203e2030001640e5153303a49124657870656374206e65745f64697374726962757461626c655f696e636f6d65203e3d2030001640e46eb4c0f4c0e8dd50009bad3027303a3754002607860726ea802097ae02332232598009811800c52f5c210100008101010044cc0e4dd419b8300300133039375066e0c0080052f5c081a0c96600266e200052000899b8148000006200281a0cc010008004dd6981b8009bad3037303800123370660086eb4c0dc004dd6981b981c000980300322a660549217a6578706563740a20202020202076616c69646974795f72616e67655f7374617274735f6265666f7265280a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d702c0a20202020202029001640a5153302a491696578706563740a20202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d70203e2070726576696f75735f6f7261636c655f74696d657374616d70280a20202020202020206f7261636c655f696e7075742c0a20202020202029001640a44605e60606060606000315330294913f657870656374206e6f5f6f7261636c655f746f6b656e735f6d696e7465642873656c662e6d696e742c206f7261636c655f6e66745f706f6c6963795f696429001640a0605860526ea8c058c0a4dd5000918169817181718171817000981598141baa0018a9981324815665787065637420536f6d65286f7261636c655f696e70757429203d0a20202020202066696e645f6f7261636c655f696e7075742873656c662e696e707574732c206f7261636c655f6e66745f706f6c6963795f696429001640946052604c6ea8040cc044dd6181498131baa01723010323322330020020012259800800c00e2646644b30013372291113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902a44cc014014c0c401102a1bae302a001375a6056002605a0028158c8c8cc004004dd5980b98151baa3017302a375400844b3001001801c4c8cc896600266e440a400a2b30013371e0520051001803205689980280298190022056375c60560026eacc0b0004c0b800502c0a5eb7bdb180520008a9981224813b657870656374205075626c6973685969656c644f7261636c652872656465656d657229203d206f7263686573747261746f725f72656465656d65720016408c22232598009807800c4c9660020030038992cc0040062b300130290028cc00400600b0044035004409900480240120088150c09c00502518119baa0048acc004c030006264b3001001801c4c96600200315980098148014566002602260486ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0b400a330010038cc0040060130084039008403900840a900880440220108170c0ac0050291815801401a00d00680320583029001409c604a6ea800600881120088132009004802401102a1813800a04a3023375400900240808100c084dd50019112cc004c038c084dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981500144c9660026026604c6ea8012264b3001001803c4c96600200313259800800c026264b30010018acc004c0bc00a330010038992cc004c060006264b300100180644c966002003159800981900144c966002603600313259800800c03e264b30010018acc004c0d400a33001001805c04101440410324042021010808206c303300140c4605e6ea800a2b300130180018992cc00400601f13259800800c042021010899912cc00400602513259800800c04e027013899912cc00400602b13259800800c05a02d0168992cc004c0f000e02501740e46eb400602c81e0c0e40050371bad0013038002809a072303600140d06eb4004c0d400a02081b0c0cc00503118179baa002807205840b0605a6ea800601a817a01b00d806c0350331818000a05c302c3754005159800980a800c56600260586ea800a00d00b40b500b40a48148c0a8dd5000c02900e402902c402a01500a8052060302d00140ac605a00500880440220108170c0ac00502918139baa0048032048132598009809800c566002604e6ea800a00f00640a11598009808000c4c9660020030078992cc0040060110088044022264b3001302e003805402502b1bae00140b860560028148c09cdd50014566002603200313259800800c01e264b3001302d002804c02102a1815800a052302737540050064090812102418129baa001802a04e802c01600b00540ac60500028130c0a000a007003801c00d0291813000a04830223754007001407c403a01d00e8072038332232598009802980c1baa0018980c9919bb0301d001301d301e0013758603860326ea80062a6602e9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164058646600200200644b30010018a60103d87a80008992cc004cdd7980d00099ba548010cc074cdd2a40046603a6ea40112f5c097ae0898049980e9ba73301d301a0013301d301b0014bd7025eb82266006006603e00480c0c07400501b1bab3019301a301a301a301a301a301a301a301a301a3016375400e6eb8c064c058dd54c004896600200314bd7044cc068c05cc06c004cc008008c07000501948896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901648888c8cc004004014896600200310058992cc004006266008604000400d1330053020002330030030014078604000280ea6eb0c00cc058dd5003a44446464646644a6603a66e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea406d220100132598009806180f9baa00189929980f99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980a18109baa0018992cc0040062b3001300f3022375400313259800800c076264b300100180f407a03d01e899912cc0040060411325980098160014401a0428148c0a80050281bae001302900240a8604e0028128c08cdd5000c071020407203901c80e2050302530223754003153302049013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016407c602060426ea8c038c084dd5000981198101baa0018a9980f24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640746601400c4646600200260066eacc038c084dd5180718109baa0022259800800c528456600266e3cdd7181280080f4528c4cc008008c09800501f2046300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c204a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f901f1bac3022002375a60400026466ec0dd418100009ba73021001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a604a003337149101023a200098008054c09800600a805100a181400144ca6002015302500199b8a489023a200098008054c098006600e66008008004805100a1814001204c3028001409466e29220102207d0000340886eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920443758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720483371666e000056600266e2000520148a40c11481b9024002200c33706002901019b8600148080cdc70020012042375c0068128dc5245022c200022323300100100322598009805800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407080e0c00c00c44646600200200644b30010018a6103d87a80008992cc004c010006260106603800297ae0899801801980f001202e301c00140688b201a180780098051baa0108a4d153300849011856616c696461746f722072657475726e65642066616c73650013656401c1":"5914ad0101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae00248888888896600264653001300a00198051805800cdc3a4009300a0024888966002600460146ea800e33001300e300b37540072300f301030100019ba5480024601e6020003370e90004dc3a4005223233001001003223300300130020024888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260146603200297ae0899801801980d801202a3019001405d2259800980298099baa00289919192cc004c06c00a26464b3001300a0018acc004c064dd5001401a2c80d22b30013009001899192cc004c07c00a0111640706eb4c074004c064dd500145660026020003159800980c9baa00280345901a459017202e405c602e6ea8004c06800e2c80c0c966002602e00315980099b8948010c0580062d13007301600140551640606ea8c064004c064004c050dd500145901248966002600a60266ea800a264646644b3001301c003802c590191bad3019001375c6032004603200260286ea800a2c809244b30013005301337540051323232332259800980e801c4c966002601660326ea8006264646644b300130220038992cc004c04000626464b300130250028074590221bae3023001301f375400f1598009807800c566002603e6ea801e01916408116407480e8c074dd500345901f1bae301f001375c603e004603e00260346ea80062c80c0c0700162c80d0dd7180d000980d001180d000980c800980a1baa0028b202491192cc004c01800626464b3001301b0028024590181bae3019001301537540071598009802800c4c8c96600260360050048b2030375c6032002602a6ea800e2c809901318099baa00291192cc004c01800626464b3001301b0028024590181bad3019001301537540071598009802800c566002602a6ea800e00516405916404c8098c04cdd500124444453001332232598009806180d1baa0018980d9919bb0301f001301f30200013758603c60366ea80062c80c8c8cc00400400c896600200314c103d87a80008992cc004cdd7980e00099ba548010cc07ccdd2a40046603e6ea40112f5c097ae0898081980f9ba73301f301c0013301f301d0014bd7025eb82266006006604200480d8c07c00501d1bab301b301c301c301c301c301c301c301c301c301c3018375401c6eb8c06cc060dd51919192cc004c030c068dd5000c4c966002602660366ea8006264b3001300e301c3754003132323322598009812801c40162c8110c088004dd718110011811000980e9baa0018b2036301f301c3754003164068601e60366ea8c034c06cdd5180f180d9baa0018b2032330083758601860346ea80408c8cc004004c00cdd59807180e1baa300e301c375400444b30010018a508acc004cdc79bae302000101a8a518998010011810800a0364078600200244b30010018a5eb822660386032603a00266004004603c00280da4464b3001300c0018992cc004c080006266010603e00200716407460366ea800e2b3001300b0018992cc004c080006264b3001300e301c3754003132323259800981200144cc034c08c00c4cc03400401e2c8108c088004c088004c074dd5000c5901b180f800c5901d180d9baa0038b2032406460326ea800a44b3001300b30193754005132323259800981080144cc89660026020603c6ea800a2646464b3001302600289980618128018992cc004c050006264b30013028001899192cc004c05c006264b3001302b0018998089815000804c5902818131baa0028acc004c05800626464653001375a6058003375a6058007375a60580049112cc004c0c001201d1640b4302c001302b001302637540051640908120c090dd50009813800c5902518119baa0028acc004c04c0062b3001302337540050058b20488b2042408460426ea80062c8118c090004c090004c07cdd500145901d18100018992cc004c03c0062b3001301e37540050058b203e8acc004c03800626464b30013024002803c590211bae3022001301e3754005159800980a800c4c8c96600260480050078b20423022001301e375400516407080e101c180e1baa0018b203c301f001301f001301a37540051640609114c0048966002601c60386ea800a2646464b300130240028992cc004c048c080dd5000c4c8c966002604e00313259800980a98119baa00189919191919194c004dd69816800cdd61816802cdd618168024dd69816801cdd69816801244444b300130330068992cc004c084c0bcdd5000c4c8c8cc89660026070007132332259800981d801c4c8cc8966002607c007133021303d01813302901b225980080140822646644b300130430018998151821000898021821802c590401bae304000130410013758607e00481ea2c81d8dd6981d8009bad303b00c303b00b8b2070375a60700026eb4c0e0028c0e00262c81a8dd6981a8009bad30350023035001303037540031640b860640171640c0302d001302c001302b001302a001302900130243754003164088604c005164090604c00260426ea80062c80f8c08c00e2c8108dd618110009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8cc8966002604c007133008302500513300e0020068b20463023001375a604600460460026044002603a6ea800a2c80da44b3001300e301c37540051323232323298009bad30250019bad30250049bad3025003981280124444b3001302a00589980618148048998090008054590270c094004c090004c08c004c088004c074dd500145901b48966002601c60386ea800a264646464646530013758604c003375a604c00b375a604c009375a604c007302600248888966002605800d13300e302b00b1330140011323322598009817801c03e2c8160dd718160009bae302c006302c0058b205218130009812800981200098118009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8c8ca60026eb0c0940066eb4c0940126eb4c09400e604a00491112cc004c0a801626601860520122660240022646644b3001302d003806c5902a1bae302a001375c605400a605400916409c3025001302400130230013022001301d375400516406d301a3754006911111192cc004c04c00a264b300130270018992cc004c054c08cdd5000c4c8c8c8cc8966002605a00713259800980d98149baa00189919191919194c004c0cc0066eb0c0cc0166eb4c0cc0126eb4c0cc00e6066004911112cc004c0e401a2660486eb0c0e002c8966002005133026006225980080144cc0880144cc088024566002605460706ea80462646464b3001304000289919912cc004c0c000a264b300130440018998179bac304300122598008014012266046608a00426002608c004821a2c8208c0fcdd5001c566002605e005132598009822000c4cc0bcdd61821800912cc00400a0091330233045002130013046002410d164104607e6ea800e2b300130360028992cc004c11000626605e6eb0c10c0048966002005004899812182280109800982300120868b2082303f375400715980099b874801800a2646464b300130460028998189bac304500322598008014566002606a60866ea800e264646644b3001304c0038054590491bad3049001375a6092004609200260886ea800e2c821226604c608e004260026090004822a2c8218c110004c110004c0fcdd5001c56600266e1d20080028992cc004c11000626605e6eb0c10c0048966002005004899812982280109800982300120868b2082303f375400715980099b874802800a264b300130440018998179bac30430012259800801401226604a608a00426002608c004821a2c8208c0fcdd5001c56600266e1d200c0028992cc004c11000626605e6eb0c10c0048966002005004899813182280109800982300120868b2082303f375400715980099b874803800a264b300130440018998179bac30430012259800801401226604c608a00426002608c004821a2c8208c0fcdd5001c56600266e1d20100028acc004c0fcdd5001c0062c82022c81e903d207a40f481e903d207a40f481e8c0f0dd500089981200109981600b112cc00400a03d1323322598009823000c4cc0b4c1140044c010c1180162c8218dd7182180098220009bac30420024100607e0071640f4607c002607c00260726ea80462c81ba2646004607c0066eb4c0f000903a44c8c008c0f000cdd6981d00120708b206c1819800981900098188009818000981780098151baa0018b2050302c0058b20543758605400260540046054002605200260486ea80062c8110c0980062c8120c088dd500545660026024005132598009813800c4cc020c09800400a2c8120c088dd50054590202040159800980898101baa009899912cc004c050c088dd5000c4c8cc89660033001323300100132330010013756600660506ea8078896600200314bd7044c8cc88cc88cc00800800489660020031003899198189ba733031375200a66062605c00266062605e00297ae0330030033033002303100140bc6eacc0b000cdd718148009980180198170011816000a0542259800800c528456600266e3cdd718159bac302b0010248a518998010011816000a04c40a54a14a28122264b30013371064b3001301f3027375400313259800980d18141baa001899191919912cc004c0c800e266026606200a26eb4c020c0b8dd5181898171baa3031302e37546062605c6ea801a2c8178dd698178009bad302f002302f001302e0013029375400316409c605660506ea800629000204c301b302737546032604e6ea8010dd6980098139baa302a302737546054604e6ea801a2b3001323259800980c800c4cdc41bad302c302937540046eb4c00cc0a4dd5181618149baa302c30293754011159800980d000c528c528204e409c604e6ea8004c0a8c09cdd5181518139baa302a302b302b302b302b302b302b302b3027375403b13259800981619198008009bac301d3029375403e44b30010018a5eb8226644b30015980099baf302f302c375400401115980099baf374c64660020026eacc07cc0b4dd5001912cc004006297adef6c608994c004dd71817000cdd59817800cc0cc0092225980099b91489000038acc004cdc7a441000038800c401503044cc0d0cdd81ba9003374c0046600c00c002818060620028178dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606266ec0dd48159ba60034bd6f7b63044ca60026eb8c0bc0066eacc0c000660680049112cc004cdc8017801c4cc0d4cdd81ba902f374c00e00b15980099b8f02f00389981a99bb0375205e6e9801c00626606a66ec0dd48019ba60023300600600140c4818860640028180c8cc0040052f5bded8c044b300100189981819bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0b80066eb4c0bc00660660049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981a19bb037520066ea0008cc01801800503020601818800a05e40a913375e604060586ea8008cdd2a40086605c00a97ae08a5040a914a0815226605c0046600800800313300400400140a8605a002605c002815a29462c814a6002444b3001301b001880146600200700199b86002001400c81424466e0ccdc1001000a410112f5223371266e08dd698160011bad302c302d001337046eb4c0b0004dd69816181680148cdc4240006eb4c0acc0b00066e092080897a981518139baa302a3027375400c91111119199118119981900799819181118181baa303330303754008660646ea0cc896600260100051598009804000c56600266012004003130030018980180120608b20608b20603758604860606ea801260026e2520009bac302230303754009375a601660606ea80126eb4c0ccc0d0c0d0c0d0c0d0c0d0c0c0dd50022444464b3001300b0048acc004c02c0062b30013300c0010048800c4c8c8cc88c02ccc0ecdd419b80337046eb4c0f0020008cdc11bad303c0030013303b375066e080040092f5c06eb4c0e8c0ec004dd6981d181d80318041981c1ba8337046eb4c0e4004cdc0a410112f464b300130070058acc004cdc4802802456600266e240112080897a899b800053300f3370200800ab300130070018acc004cdc4800a41016912271323232323232323370266e00cdc099b803370266e00cdc080399b8300648010cdc1802a401866e0c01120303370600690780099b83002482802ccdc1800a41c09c66e0ccc05800401d2080f604330150010063301400100533013001004330120010033301100100233010001001337060029014459035459035459035459035459035192cc004cdc424101691226003148202d2244e200281a8cdc199b82300b375a60720029064009bad3039303a00133038375060166eb4c0e4c0e80052f5c066446012660726ea0cdc099b82375a607400600266e08dd6981d0030011981c9ba83370400400297ae0375a607060720026eb4c0e0c0e40110334590334590331919912cc004c01c00a2b3001337109000000c4cc0e4dd40011981c9ba80014bd704590354590351bad3038303537540026eb4c09cc0d4dd5000981b981a1baa00825eb808cc88c966002604600314bd70810100008101010044cc0d0dd419b8300300133034375066e0c0080052f5c08180c96600266e200052000899b814800000620028180cc010008004dd698190009bad3032303300123370660086eb4c0c8004dd698191819800980300322c812a2c81288c0a8c0acc0acc0ac0062c8120c09cc090dd5180b18121baa001230283029302930293029001302630233754003164084604860426ea8024cc03cdd6181218109baa01723012323322330020020012259800800c00e2646644b300133722910113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902644cc014014c0b00110261bae3025001375a604c00260500028130c8c8cc004004dd5980b98129baa30173025375400844b3001001801c4c8cc896600266e4409400a2b30013371e04a0051001803204e8998028029816802204e375c604c0026eacc09c004c0a40050270a5eb7bdb180520008b203e08b2012180500098029baa00a8a4d13656400c1",Type.Tuple([PolicyId,PolicyId]),[proxyPolicyId,oracleNftPolicyId]),"PlutusV3");}}export class V1_1Rc1DistributionOracleDistributionOracleElse{constructor(proxyPolicyId,oracleNftPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5927e80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a660089213265787065637420646174756d3a20446973747269627574696f6e4f7261636c65446174756d203d20646174756d5f6461746100168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022491b657870656374205b5f5d203d206f7261636c655f6f75747075747300168a998022495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488896600264653001300f00198079808000cdc3a4009300f00248889660026004601e6ea800e3300130133010375400723014301530150019ba54800246028602a003370e90002444446464b30010018cc004dc3a4005222598009803180c9baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026048007008803a042375a0030064090604200280f8dd700098100012042301e001407060346ea800e00280ba446466002002006446600600260040053016375400291114c004889660026014603a6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c08c0062b30013371290021811000c01a264b300130280048992cc004c0440062b30013025375400d009804204c8acc004c038006264b3001001804c4c96600200300a805402a264b3001302c003806402d0291bad00180520583029001409c604a6ea801a2b300130170018acc004c094dd500340260108132010811102220443023375400b007409460186044002810200c8120dd5000c01600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a0369112cc004c028c074dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0a400e2b300130113024375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002605e00713259800980c000c4c9660020030108992cc004006023011808c046264b30013033003809c0490301bae00140cc60600028170c0b0dd5005c566002602a00315980098161baa00b808403d02d403d0292052302a375401500e40b06eb800502f1816000a054375c00260560048160c0a400502718129baa0068042044804204c375c0028148c0980050241813001401600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a036911192cc004c02c006264b3001001801c4c9660020030048024012009132598009813001c01a00a8118dd7000a04c30230014084603e6ea80122b300130080018992cc00400600713259800800c01200900480244c966002604c007006802a046375c0028130c08c005021180f9baa00480120384070603a6ea800e44464b3001300b0018992cc00400600713259800800c0120090048992cc004c09800e00d005408c6eb40060088130c08c005021180f9baa0048acc004c0200062b3001301f3754009003801204080120384070603a6ea800d2222332298009112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c4c966002605a007159800980a98141baa0048992cc00400600f13259800800c4c9660020030098992cc0040062b300130310028acc004c064c0b0dd5001c4c96600200300b8992cc004006264b3001001806c4c96600200300e80744cc89660020030108992cc004006023011899912cc00400602713259800800c052029014899912cc00400602d13259800800c05e02f017899912cc00400603313259800800c06a03501a8992cc004c10800e2b3001302a303d375402113259800800c072264b300100180ec07603b1332259800800c07e264b30010018104082041132598009824001c5660020270218992cc00400604502281144cc89660020030248992cc00400604b025812c4c966002609a00715980080ac09a264b3001001813c09e04f1332259800800c0a6264b300100181540aa055132598009829001c66002045133035026225980080140ba264b300100181740ba264b3001001817c4c96600200303081840c20611332259800800c0ca264b30010018acc004c16800a3300100189803982d00440cd03a40cd05740ce067033819a0b6305800141586eb8004c15c009058182a800a0a6375800302e81720ac3053002414502b40bd02b413c6eb40060548290c13c00504d1bad001304e016813a09e304c015412902641286eb400604a8268c1280050481bad001304901481120943047013411502141146eb40060408240c1140050431bad001304400280ea08a30420014100607c6ea804203681da03681f8dd6800c069042181f800a07a375a002607c00501740fc607800281d0dd6800981d801405103c181c800a06e37580026070005011808a072303600140d06eb0004c0d400a01d00e40d860660028188c0cc00a01900c80640310341818800a05e302d375400700a40a900a40b900a805402a0148190c0bc00502d181780140220110088042060302d00140ac60526ea801200c813200c8150dd6000c01600a8168c0a80050281815001400e007003801a0563028001409860486ea800e002810a444b300130103023375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002605e00519800803466002003009804202680420168042058804402201100840c0605a0028158dd68009816001401502d1815000a050302a002801c00e00700340ac60500028130c090dd5001c005021488966002602060466ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c0d400e3300100c8cc00401201f00e406500e404500e40c86eb400601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a0429112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200300b805c02e26644b3001001806c4c96600200313259800800c03e264b30010018084042264b300130380038cc00403e330010048acc00400602313259800800c04a02501280944cc89660020030148992cc00400602b01580ac056264b3001303d00380bc05903a1bae00140f4607400281c0dd7000981c8012074303700140d50114071011405101140d46eb000602101040e0606a0028198c0d400a01d00e80740390361819800a062375a002606400500b40cc60600028170dd6800981780140210301816800a056375a002605800500540b460540028140c0a800a007003801c00d02b1814000a04c30243754007001408522259800980818119baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002606a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026074007014809a06e375c00281d0c0dc0050351bae001303600240dc6068002819201c80ca01c808a01c8190dd6000c03601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a042488888c966002602601b13259800800c07e264b30010018acc004c0b400a2b300130153028375400313259800800c086264b30010018992cc00400604713259800800c4c9660020030258992cc00400604d0268992cc004c0d000e2b3001301c302f375400d13259800800c0a2264b3001001814c0a626644b3001001815c4c96600200302c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944cc89660020030348992cc004006264b300100181b44c966002003159800982200144cc09c038896600200513302900d225980080146600200f19800802c566002606060866ea8062264b300100181e44c96600200313259800800c0fa264b30010018acc004c13000a26644b300130360018992cc00400608513259800800c10e087132598009828801c4cc0d000489660020050078992cc0040063300100189801182a001c11d02b411e08f047823a0aa3052002414104441386eb00060870434144609c0028260c128dd5002c566002606600313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a056823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260a20071330340012259800801401e264b30010018cc0040062600460a800704740b1047823c11e08e82a8c148009050411104e1bac001821c10d0511827000a098304a375400b15980099b8748018006264b300100182144c966002003043821c4cc89660020030458992cc0040062b3001305300289981b001912cc00400a2b3001303d3050375400713259800800c126264b3001001825412a0951332259800800c132264b3001001826c13609b13259800982d801c03e09c82c0dd6800c13505b182c000a0ac375a00260ae00504a416060aa0028298c144dd5001c12104e44c96600200319800800c4c008c15800e0928172093049824c125057182a00120a482320a0823411a08d046415060a20028278dd60009828001410e0868288c13800504c18251baa0058acc004cdc3a401000313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401400313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401800313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401c00313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a402000315980098251baa005801410504b4105047208e411c8239047208e411c82390470cc00400626605e03244b300100281244c96600200304282144c9660020030438992cc004006089044822411226644b300100182344c966002003159800982a001466002003130073054008823a068823a0a2823c11e08f047415460a40028280dd7000982880120a4304f00141346eb00060850424140609a004825a07e8148c11cdd5001c0fd04940fe07f03f81fa09a304a0014120609400503d81ec0f607a8258c12000504618221baa01881da08281da04c81da04c8992cc00400607903c81e44c8c00cc128010dd6800c0f104a1823801208a8992cc00400607503a81d44c8c00cc120010dd6800c0e90481822801208681ba08281bc0de06f037411460840028200c10800a06b03581ac0d50431820000a07c375a002607e0050324100607a00281d8dd6800981e00140bd03d181d000a0703758002607200502c8162074303700140d46eb0004c0d800a05302940dc60680028190c0c0dd5003409d02d409d0311bac00181340990341818800a05e3031002812409204902440c8605e0028168c0bc00a04502281140890301816800a05630293754003020409902040a902081040820408170c0ac00502918139baa0118acc004c040036264b300100180fc4c966002003159800981680146600200300381020108102054810408204102040b860560028148c09cdd5008c0790242048159800980798129baa010899912cc004c050c09cdd5000c4c8cc896600330013233001001323300100137566006605a6ea8078896600200314bd7044c8cc88cc88cc008008004896600200310038991981b1ba733036375200a6606c60660026606c606800297ae0330030033038002303600140d06eacc0c400cdd718170009980180198198011818800a05e2259800800c528456600266e3cdd718181bac30300010288a518998010011818800a05440b94a14a28142264b30013371064b3001301f302c375400313259800800c5660026034605a6ea8006264b3001001814c4c96600200313259800800c0ae264b300100181640b20591332259800800c0ba264b3001001817c0be05f13259800981d001c6600200f1375a6016606c6ea8c0e4c0d8dd5181c981b1baa303930363754013030405503040dc6eb400605e81d0c0dc0050351bad0013036002816206e303400140c8606800502a81540aa05481a8c0c800503018171baa001814205681440a205102840cc6060605a6ea8006290002054301b302c3754603260586ea8010dd6980098161baa302f302c3754605e60586ea801a2b3001323259800980b800c4cdc41bad3031302e37540046eb4c00cc0b8dd5181898171baa3031302e3754011159800980d000c528c528205640ac60586ea8004c0bcc0b0dd5181798161baa302f3030303030303030303030303030302c375403b1323259800800c09a2b300130320018a51813205e40bc64660020026eb0c074c0b8dd500f912cc004006297ae0899912cc0056600266ebcc0d0c0c4dd5001004456600266ebcdd319198008009bab301f3032375400644b30010018a5eb7bdb1822653001375c606600337566068003303800248896600266e452201000038acc004cdc7a441000038800c401503444cc0e4cdd81ba9003374c0046600c00c00281a0606c00281a0dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606c66ec0dd48179ba60034bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8019801c4cc0e8cdd81ba9033374c00e00b15980099b8f03300389981d19bb037520666e9801c00626607466ec0dd48019ba60023300600600140d481a8606e00281a8c8cc0040052f5bded8c044b300100189981a99bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0cc0066eb4c0d000660700049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981c99bb037520066ea0008cc0180180050342068181b000a06840b913375e604060626ea8008cdd2a40086606600a97ae08a5040b914a081722660660046600800800313300400400140b86064002606600281826002444b3001301b001880146600200700199b86002001400c81624466e0ccdc1001000a410112f5223371266e08dd698188011bad30313032001337046eb4c0c4004dd69818981900148cdc4240006eb4c0c0c0c40066e092080897a981798161baa302f302c375400c91111119199118119981b8079981b9811181a9baa3038303537540086606e6ea0cc896600260100051598009804000c56600266012004003130030018980180120688a9981aa492b6578706563742069735f76616c69645f726174696f28706f73745f726574656e74696f6e5f7969656c6429001640d115330354911c6578706563742069735f76616c69645f726174696f28666c6f6f7229001640d06eb0c090c0d4dd50024c004dc4a400137586044606a6ea80126eb4c02cc0d4dd50024dd6981c181c981c981c981c981c981a9baa00448888c96600260160091598009805800c5660026601800200910018991919911805998201ba83370066e08dd6982080400119b82375a6082006002660806ea0cdc100080125eb80dd6981f98200009bad303f304000630083303d375066e08dd6981f00099b814820225e8c966002600e00b15980099b890050048acc004cdc48022410112f513370000a6601e66e0401001566002600e00315980099b8900148202d2244e26464646464646466e04cdc019b813370066e04cdc019b810073370600c900219b8300548030cdc18022406066e0c00d20f0013370600490500599b830014838138cdc19980b000803a4101ec086602a00200c6602800200a6602600200866024002006660220020046602000200266e0c00520288a9981d2491b6578706563742073203c3d206d61785f737570706f727465645f73001640e5153303a4910d6578706563742073203e3d2030001640e5153303a4911565787065637420725f6d6178203c3d207363616c65001640e5153303a4911465787065637420725f6d6178203e3d2062617365001640e5153303a491106578706563742062617365203e3d2030001640e464b30013371090405a4489800c52080b489138800a0723370666e08c02cdd6981f000a4190026eb4c0f8c0fc004cc0f4dd418059bad303e303f0014bd70199118049981f1ba83370266e08dd6981f80180099b82375a607e00c0046607c6ea0cdc1001000a5eb80dd6981e981f0009bad303d303e00440dd1533038491206578706563742069735f76616c69645f726174696f287261775f7969656c6429001640dd15330384911d6578706563742069735f76616c69645f726174696f28687572646c6529001640dc646644b300130070028acc004cdc42400000313303e37500046607c6ea00052f5c1153303a490116657870656374207374616b65645f75736472203e2030001640e5153303a49124657870656374206e65745f64697374726962757461626c655f696e636f6d65203e3d2030001640e46eb4c0f4c0e8dd50009bad3027303a3754002607860726ea802097ae02332232598009811800c52f5c210100008101010044cc0e4dd419b8300300133039375066e0c0080052f5c081a0c96600266e200052000899b8148000006200281a0cc010008004dd6981b8009bad3037303800123370660086eb4c0dc004dd6981b981c000980300322a660549217a6578706563740a20202020202076616c69646974795f72616e67655f7374617274735f6265666f7265280a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d702c0a20202020202029001640a5153302a491696578706563740a20202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d70203e2070726576696f75735f6f7261636c655f74696d657374616d70280a20202020202020206f7261636c655f696e7075742c0a20202020202029001640a44605e60606060606000315330294913f657870656374206e6f5f6f7261636c655f746f6b656e735f6d696e7465642873656c662e6d696e742c206f7261636c655f6e66745f706f6c6963795f696429001640a0605860526ea8c058c0a4dd5000918169817181718171817000981598141baa0018a9981324815665787065637420536f6d65286f7261636c655f696e70757429203d0a20202020202066696e645f6f7261636c655f696e7075742873656c662e696e707574732c206f7261636c655f6e66745f706f6c6963795f696429001640946052604c6ea8040cc044dd6181498131baa01723010323322330020020012259800800c00e2646644b30013372291113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902a44cc014014c0c401102a1bae302a001375a6056002605a0028158c8c8cc004004dd5980b98151baa3017302a375400844b3001001801c4c8cc896600266e440a400a2b30013371e0520051001803205689980280298190022056375c60560026eacc0b0004c0b800502c0a5eb7bdb180520008a9981224813b657870656374205075626c6973685969656c644f7261636c652872656465656d657229203d206f7263686573747261746f725f72656465656d65720016408c22232598009807800c4c9660020030038992cc0040062b300130290028cc00400600b0044035004409900480240120088150c09c00502518119baa0048acc004c030006264b3001001801c4c96600200315980098148014566002602260486ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0b400a330010038cc0040060130084039008403900840a900880440220108170c0ac0050291815801401a00d00680320583029001409c604a6ea800600881120088132009004802401102a1813800a04a3023375400900240808100c084dd50019112cc004c038c084dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981500144c9660026026604c6ea8012264b3001001803c4c96600200313259800800c026264b30010018acc004c0bc00a330010038992cc004c060006264b300100180644c966002003159800981900144c966002603600313259800800c03e264b30010018acc004c0d400a33001001805c04101440410324042021010808206c303300140c4605e6ea800a2b300130180018992cc00400601f13259800800c042021010899912cc00400602513259800800c04e027013899912cc00400602b13259800800c05a02d0168992cc004c0f000e02501740e46eb400602c81e0c0e40050371bad0013038002809a072303600140d06eb4004c0d400a02081b0c0cc00503118179baa002807205840b0605a6ea800601a817a01b00d806c0350331818000a05c302c3754005159800980a800c56600260586ea800a00d00b40b500b40a48148c0a8dd5000c02900e402902c402a01500a8052060302d00140ac605a00500880440220108170c0ac00502918139baa0048032048132598009809800c566002604e6ea800a00f00640a11598009808000c4c9660020030078992cc0040060110088044022264b3001302e003805402502b1bae00140b860560028148c09cdd50014566002603200313259800800c01e264b3001302d002804c02102a1815800a052302737540050064090812102418129baa001802a04e802c01600b00540ac60500028130c0a000a007003801c00d0291813000a04830223754007001407c403a01d00e8072038332232598009802980c1baa0018980c9919bb0301d001301d301e0013758603860326ea80062a6602e9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164058646600200200644b30010018a60103d87a80008992cc004cdd7980d00099ba548010cc074cdd2a40046603a6ea40112f5c097ae0898049980e9ba73301d301a0013301d301b0014bd7025eb82266006006603e00480c0c07400501b1bab3019301a301a301a301a301a301a301a301a301a3016375400e6eb8c064c058dd54c004896600200314bd7044cc068c05cc06c004cc008008c07000501948896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901648888c8cc004004014896600200310058992cc004006266008604000400d1330053020002330030030014078604000280ea6eb0c00cc058dd5003a44446464646644a6603a66e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea406d220100132598009806180f9baa00189929980f99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980a18109baa0018992cc0040062b3001300f3022375400313259800800c076264b300100180f407a03d01e899912cc0040060411325980098160014401a0428148c0a80050281bae001302900240a8604e0028128c08cdd5000c071020407203901c80e2050302530223754003153302049013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016407c602060426ea8c038c084dd5000981198101baa0018a9980f24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640746601400c4646600200260066eacc038c084dd5180718109baa0022259800800c528456600266e3cdd7181280080f4528c4cc008008c09800501f2046300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c204a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f901f1bac3022002375a60400026466ec0dd418100009ba73021001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a604a003337149101023a200098008054c09800600a805100a181400144ca6002015302500199b8a489023a200098008054c098006600e66008008004805100a1814001204c3028001409466e29220102207d0000340886eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920443758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720483371666e000056600266e2000520148a40c11481b9024002200c33706002901019b8600148080cdc70020012042375c0068128dc5245022c200022323300100100322598009805800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407080e0c00c00c44646600200200644b30010018a6103d87a80008992cc004c010006260106603800297ae0899801801980f001202e301c00140688b201a180780098051baa0108a4d153300849011856616c696461746f722072657475726e65642066616c73650013656401c1":"5914ad0101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae00248888888896600264653001300a00198051805800cdc3a4009300a0024888966002600460146ea800e33001300e300b37540072300f301030100019ba5480024601e6020003370e90004dc3a4005223233001001003223300300130020024888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260146603200297ae0899801801980d801202a3019001405d2259800980298099baa00289919192cc004c06c00a26464b3001300a0018acc004c064dd5001401a2c80d22b30013009001899192cc004c07c00a0111640706eb4c074004c064dd500145660026020003159800980c9baa00280345901a459017202e405c602e6ea8004c06800e2c80c0c966002602e00315980099b8948010c0580062d13007301600140551640606ea8c064004c064004c050dd500145901248966002600a60266ea800a264646644b3001301c003802c590191bad3019001375c6032004603200260286ea800a2c809244b30013005301337540051323232332259800980e801c4c966002601660326ea8006264646644b300130220038992cc004c04000626464b300130250028074590221bae3023001301f375400f1598009807800c566002603e6ea801e01916408116407480e8c074dd500345901f1bae301f001375c603e004603e00260346ea80062c80c0c0700162c80d0dd7180d000980d001180d000980c800980a1baa0028b202491192cc004c01800626464b3001301b0028024590181bae3019001301537540071598009802800c4c8c96600260360050048b2030375c6032002602a6ea800e2c809901318099baa00291192cc004c01800626464b3001301b0028024590181bad3019001301537540071598009802800c566002602a6ea800e00516405916404c8098c04cdd500124444453001332232598009806180d1baa0018980d9919bb0301f001301f30200013758603c60366ea80062c80c8c8cc00400400c896600200314c103d87a80008992cc004cdd7980e00099ba548010cc07ccdd2a40046603e6ea40112f5c097ae0898081980f9ba73301f301c0013301f301d0014bd7025eb82266006006604200480d8c07c00501d1bab301b301c301c301c301c301c301c301c301c301c3018375401c6eb8c06cc060dd51919192cc004c030c068dd5000c4c966002602660366ea8006264b3001300e301c3754003132323322598009812801c40162c8110c088004dd718110011811000980e9baa0018b2036301f301c3754003164068601e60366ea8c034c06cdd5180f180d9baa0018b2032330083758601860346ea80408c8cc004004c00cdd59807180e1baa300e301c375400444b30010018a508acc004cdc79bae302000101a8a518998010011810800a0364078600200244b30010018a5eb822660386032603a00266004004603c00280da4464b3001300c0018992cc004c080006266010603e00200716407460366ea800e2b3001300b0018992cc004c080006264b3001300e301c3754003132323259800981200144cc034c08c00c4cc03400401e2c8108c088004c088004c074dd5000c5901b180f800c5901d180d9baa0038b2032406460326ea800a44b3001300b30193754005132323259800981080144cc89660026020603c6ea800a2646464b3001302600289980618128018992cc004c050006264b30013028001899192cc004c05c006264b3001302b0018998089815000804c5902818131baa0028acc004c05800626464653001375a6058003375a6058007375a60580049112cc004c0c001201d1640b4302c001302b001302637540051640908120c090dd50009813800c5902518119baa0028acc004c04c0062b3001302337540050058b20488b2042408460426ea80062c8118c090004c090004c07cdd500145901d18100018992cc004c03c0062b3001301e37540050058b203e8acc004c03800626464b30013024002803c590211bae3022001301e3754005159800980a800c4c8c96600260480050078b20423022001301e375400516407080e101c180e1baa0018b203c301f001301f001301a37540051640609114c0048966002601c60386ea800a2646464b300130240028992cc004c048c080dd5000c4c8c966002604e00313259800980a98119baa00189919191919194c004dd69816800cdd61816802cdd618168024dd69816801cdd69816801244444b300130330068992cc004c084c0bcdd5000c4c8c8cc89660026070007132332259800981d801c4c8cc8966002607c007133021303d01813302901b225980080140822646644b300130430018998151821000898021821802c590401bae304000130410013758607e00481ea2c81d8dd6981d8009bad303b00c303b00b8b2070375a60700026eb4c0e0028c0e00262c81a8dd6981a8009bad30350023035001303037540031640b860640171640c0302d001302c001302b001302a001302900130243754003164088604c005164090604c00260426ea80062c80f8c08c00e2c8108dd618110009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8cc8966002604c007133008302500513300e0020068b20463023001375a604600460460026044002603a6ea800a2c80da44b3001300e301c37540051323232323298009bad30250019bad30250049bad3025003981280124444b3001302a00589980618148048998090008054590270c094004c090004c08c004c088004c074dd500145901b48966002601c60386ea800a264646464646530013758604c003375a604c00b375a604c009375a604c007302600248888966002605800d13300e302b00b1330140011323322598009817801c03e2c8160dd718160009bae302c006302c0058b205218130009812800981200098118009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8c8ca60026eb0c0940066eb4c0940126eb4c09400e604a00491112cc004c0a801626601860520122660240022646644b3001302d003806c5902a1bae302a001375c605400a605400916409c3025001302400130230013022001301d375400516406d301a3754006911111192cc004c04c00a264b300130270018992cc004c054c08cdd5000c4c8c8c8cc8966002605a00713259800980d98149baa00189919191919194c004c0cc0066eb0c0cc0166eb4c0cc0126eb4c0cc00e6066004911112cc004c0e401a2660486eb0c0e002c8966002005133026006225980080144cc0880144cc088024566002605460706ea80462646464b3001304000289919912cc004c0c000a264b300130440018998179bac304300122598008014012266046608a00426002608c004821a2c8208c0fcdd5001c566002605e005132598009822000c4cc0bcdd61821800912cc00400a0091330233045002130013046002410d164104607e6ea800e2b300130360028992cc004c11000626605e6eb0c10c0048966002005004899812182280109800982300120868b2082303f375400715980099b874801800a2646464b300130460028998189bac304500322598008014566002606a60866ea800e264646644b3001304c0038054590491bad3049001375a6092004609200260886ea800e2c821226604c608e004260026090004822a2c8218c110004c110004c0fcdd5001c56600266e1d20080028992cc004c11000626605e6eb0c10c0048966002005004899812982280109800982300120868b2082303f375400715980099b874802800a264b300130440018998179bac30430012259800801401226604a608a00426002608c004821a2c8208c0fcdd5001c56600266e1d200c0028992cc004c11000626605e6eb0c10c0048966002005004899813182280109800982300120868b2082303f375400715980099b874803800a264b300130440018998179bac30430012259800801401226604c608a00426002608c004821a2c8208c0fcdd5001c56600266e1d20100028acc004c0fcdd5001c0062c82022c81e903d207a40f481e903d207a40f481e8c0f0dd500089981200109981600b112cc00400a03d1323322598009823000c4cc0b4c1140044c010c1180162c8218dd7182180098220009bac30420024100607e0071640f4607c002607c00260726ea80462c81ba2646004607c0066eb4c0f000903a44c8c008c0f000cdd6981d00120708b206c1819800981900098188009818000981780098151baa0018b2050302c0058b20543758605400260540046054002605200260486ea80062c8110c0980062c8120c088dd500545660026024005132598009813800c4cc020c09800400a2c8120c088dd50054590202040159800980898101baa009899912cc004c050c088dd5000c4c8cc89660033001323300100132330010013756600660506ea8078896600200314bd7044c8cc88cc88cc00800800489660020031003899198189ba733031375200a66062605c00266062605e00297ae0330030033033002303100140bc6eacc0b000cdd718148009980180198170011816000a0542259800800c528456600266e3cdd718159bac302b0010248a518998010011816000a04c40a54a14a28122264b30013371064b3001301f3027375400313259800980d18141baa001899191919912cc004c0c800e266026606200a26eb4c020c0b8dd5181898171baa3031302e37546062605c6ea801a2c8178dd698178009bad302f002302f001302e0013029375400316409c605660506ea800629000204c301b302737546032604e6ea8010dd6980098139baa302a302737546054604e6ea801a2b3001323259800980c800c4cdc41bad302c302937540046eb4c00cc0a4dd5181618149baa302c30293754011159800980d000c528c528204e409c604e6ea8004c0a8c09cdd5181518139baa302a302b302b302b302b302b302b302b3027375403b13259800981619198008009bac301d3029375403e44b30010018a5eb8226644b30015980099baf302f302c375400401115980099baf374c64660020026eacc07cc0b4dd5001912cc004006297adef6c608994c004dd71817000cdd59817800cc0cc0092225980099b91489000038acc004cdc7a441000038800c401503044cc0d0cdd81ba9003374c0046600c00c002818060620028178dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606266ec0dd48159ba60034bd6f7b63044ca60026eb8c0bc0066eacc0c000660680049112cc004cdc8017801c4cc0d4cdd81ba902f374c00e00b15980099b8f02f00389981a99bb0375205e6e9801c00626606a66ec0dd48019ba60023300600600140c4818860640028180c8cc0040052f5bded8c044b300100189981819bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0b80066eb4c0bc00660660049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981a19bb037520066ea0008cc01801800503020601818800a05e40a913375e604060586ea8008cdd2a40086605c00a97ae08a5040a914a0815226605c0046600800800313300400400140a8605a002605c002815a29462c814a6002444b3001301b001880146600200700199b86002001400c81424466e0ccdc1001000a410112f5223371266e08dd698160011bad302c302d001337046eb4c0b0004dd69816181680148cdc4240006eb4c0acc0b00066e092080897a981518139baa302a3027375400c91111119199118119981900799819181118181baa303330303754008660646ea0cc896600260100051598009804000c56600266012004003130030018980180120608b20608b20603758604860606ea801260026e2520009bac302230303754009375a601660606ea80126eb4c0ccc0d0c0d0c0d0c0d0c0d0c0c0dd50022444464b3001300b0048acc004c02c0062b30013300c0010048800c4c8c8cc88c02ccc0ecdd419b80337046eb4c0f0020008cdc11bad303c0030013303b375066e080040092f5c06eb4c0e8c0ec004dd6981d181d80318041981c1ba8337046eb4c0e4004cdc0a410112f464b300130070058acc004cdc4802802456600266e240112080897a899b800053300f3370200800ab300130070018acc004cdc4800a41016912271323232323232323370266e00cdc099b803370266e00cdc080399b8300648010cdc1802a401866e0c01120303370600690780099b83002482802ccdc1800a41c09c66e0ccc05800401d2080f604330150010063301400100533013001004330120010033301100100233010001001337060029014459035459035459035459035459035192cc004cdc424101691226003148202d2244e200281a8cdc199b82300b375a60720029064009bad3039303a00133038375060166eb4c0e4c0e80052f5c066446012660726ea0cdc099b82375a607400600266e08dd6981d0030011981c9ba83370400400297ae0375a607060720026eb4c0e0c0e40110334590334590331919912cc004c01c00a2b3001337109000000c4cc0e4dd40011981c9ba80014bd704590354590351bad3038303537540026eb4c09cc0d4dd5000981b981a1baa00825eb808cc88c966002604600314bd70810100008101010044cc0d0dd419b8300300133034375066e0c0080052f5c08180c96600266e200052000899b814800000620028180cc010008004dd698190009bad3032303300123370660086eb4c0c8004dd698191819800980300322c812a2c81288c0a8c0acc0acc0ac0062c8120c09cc090dd5180b18121baa001230283029302930293029001302630233754003164084604860426ea8024cc03cdd6181218109baa01723012323322330020020012259800800c00e2646644b300133722910113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902644cc014014c0b00110261bae3025001375a604c00260500028130c8c8cc004004dd5980b98129baa30173025375400844b3001001801c4c8cc896600266e4409400a2b30013371e04a0051001803204e8998028029816802204e375c604c0026eacc09c004c0a40050270a5eb7bdb180520008b203e08b2012180500098029baa00a8a4d13656400c1",Type.Tuple([PolicyId,PolicyId]),[proxyPolicyId,oracleNftPolicyId]),"PlutusV3");}}export class V1_1Rc1OrderOrderSpend{constructor(proxyPolicyId,protocolScripthash,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5919070101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00168a998022494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d657256310016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b30010078999119912cc004c00c0062b3001301b375401700280720388acc004c0240062b3001301b375401700280720388acc004c0100062b3001301b375401700280720388072030406080c0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800e446466002002006446600600260040052301d301e301e0019112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003203291111919800800802912cc004006200b13259800800c4cc010c08c00801a26600a6046004660060060028108c08c0050204dc0240032259800800c52f5c113301d301a301e00133002002301f00140712301d301e001911919800800801912cc00400629422b30013371e6eb8c08000400e2946266004004604200280d101e4c060dd5004c8c074c078c078c078c078c078c07800644646600200200644b30010018a508acc004cdd7801980e1810000c528c4cc008008c08400501a203c4888888888888a600244646600200200644b30010018a6103d87a80008992cc004c010006260246605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002602a00313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d3754007159800980d800c4c9660020030068992cc00400600f0078992cc004c0d000e26602a00244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130160018992cc00400600d13259800800c01e00f13259800981a001c4cc05400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981b801c4cc060004896600200500a8992cc0040063300100d800c4c008c0e800d00d403a01d00e8072076303800240d900b40d06eb000601500a40dc60680028190dd68009819801401d0341818800a05e302d375400715980099b8748020006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260680070058042062375a00300740d060620028178c0b4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014c024026600c00c91114c00488cc0180088cdd7981818169baa0010029112cc004c054c0b0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018acc004c0dc00a2b3001301b3032375400b13259800800c022264b30010018992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c566002609600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c6600200313259800981818239baa0188992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f027899912cc00400605313259800800c0aa05502a81544cc896600200302c8992cc0040062b3001305d0028992cc004c108006264b3001001817c4c96600200303081840c2061132598009830801c05a06282f0dd7000a0c2305e001417060b46ea800a2b300130480018acc004c168dd5001404e05c82da05c82b9057182c1baa001816a0b4816c0b605b02d417860b600282c8dd7000982d00120b6305800141586eb8004c15c009058182a800a0a6375c00260a800482a8c1480050501bae00130510024148609e0028268dd70009827001209e304c001412860906ea80620388228566002605e608c6ea8056264b300100180e44c96600200301d80ec4cc896600200301f8992cc0040062b30013050002899818801912cc00400a2b30013036304d375400713259800800c08e264b30010018992cc00400604b13259800800c56600260ac00519800801c4c966002607600313259800800c0a2264b30010018acc004c16400a264b3001303e0018992cc00400605713259800800c56600260b800519800800c0b605881f205882ca05902c81640b105d182d000a0b0305637540051598009822000c4c96600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944c96600260c6007034819a0c0375a003032418c60c000282f0dd6800982f80140bd060182e800a0b6375a00260b800502c417460b400282c0c158dd500140a905320a6305437540030294159029814c0a605282d0c15c00505518299baa0028acc004c1040062b300130533754005028813a0a8813a0a0414060a26ea800604c81c204c829a04d0268134099057182a000a0a430540028124092049024415460a40028280c138dd5001c08904b44c966002003159800981b98271baa0018992cc00400604913259800800c09604b1332259800800c09e264b300100181440a20511332259800800c0aa264b3001001815c0ae05713259800982e001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c2061132598009830801c4c040c18404606282f0dd7000a0c2305e00141706eb8004c17402105e182d803a0b281620b2375a00302b417060b200282b8dd6800982c00140a1059182b000a0a8375800260aa005025812a0ac30530014144609e6ea80060468262047023811c08d0541828801209e810209a81040820410204144609c0028260dd60009826801407603a8270c12c00504918239baa01580da08880da04080da04080da04080da04080da04080da04080da04080da04080da04080da04080da09080dc06e03701b413060920028238c12400a03301980cc06504a1823800a08a304700280bc05e02f0174120608a0028218c11400a02b01580ac0550461821800a0823043002809c04e0270134110608200281f8c10400a023011808c045042181f800a07a303f002807c03e01f00f4100607a00281d8c0f400a01b00d806c03503e181d800a072303b002805c02e01700b40f0607200281b8c0e400a013009804c02503a181b800a06a3033375400b00740c100740d1007803c01e00e81c0c0d4005033181a801401600b005802a06c303300140c46066005003801c00e00681a0c0c400502f18169baa003800a054911919800800801912cc004c058006266e2922010130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340ac815a446600c00446601660086eacc030c0b4dd5180618169baa00100248888c8c966002603001b1332259800980d18189baa0018992cc004c084c0c8dd5000c56600266e3cdd7181b18199baa001375c602e60666ea8c048c0ccdd5180918199baa0038999129981999b9649010d63726564656e7469616c3a3a200037326600c0029101001330100020013756601e60666ea8080cdd2a40046606a6ea40b92f5c1153303149013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640c102940c0606a60646ea8c0d4c0c8dd5180898191baa30353032375400302740bc64b30010018acc004c064c0c0dd5000c4c96600200302c8992cc00400605b02d816c0b626644b3001001817c4c966002003159800981d00146600200310068182016818206e81840c206103040ec607000281b0dd7000981b8012070303500140cc60626ea8006056817205702b815c0ad036192cc004c064c0c0dd5000c4c966002603660626ea80062606a60646ea80060548178c054c0c4dd5180818189baa30343031375400302840b8660066eb0c03cc0c0dd500e816198031bac30333030375403a037159800980f006c5660026030605e6ea806a33001303330303754606660606ea806a6eb0c0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecc0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecdd5980618181baa01d48888c8cc00400401488c966002603e003133015006375c6074606e6ea800a2b30013025001899198008009bac303b3038375400644b30010018a518acc004cc014014c0f0006266004004607a00314a081b103a45660026040003132330010013758607660706ea800c896600200314a115980099802802981e000c528c4cc008008c0f400503620748acc004cdc3a400c003132337126eb4c0ec004c8cc004004dd6181e181e801112cc0040062900044cc896600266010010005133700002900144005039181e80099801001181f000a0763037375400515980099b87480200062646644b30013028303937540051598009814181c9baa303d303e003899b89375a607a60746ea8008006266e20dd6981e981d1baa00200140dd14a081b8c0ec004dd6981d981c1baa00330373754602c606e6ea80162b30013370e9005000c4c8cc8966002605060726ea800a2b3001302830393754607a607c0071337120026eb4c0f4c0e8dd500144cdc40009bad303d303a375400481ba2941037181d8009bad303b30383754006606e6ea8c0e8c0dcdd5002c4cc048010cdd2a4004660726074606e6ea80092f5c081a1034206840d081a1034181a9baa001409102d45660026030605e6ea806a330013033303037540353253302f3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40b522010013259800980d18189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980e98199baa0018992cc0040062b3001301d3034375400313259800800c0be264b300100181840c2061030899912cc00400606513259800981f0014401a06681d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0b903240ba05d02e817207430373034375400302c40c4602e60666ea8c048c0ccdd5000981a98191baa001814a05e3300400102d3758601e60606ea80766600c6eb0c0ccc0c0dd500e80da444b3001301b3032375400313232598009811981a1baa0018acc004c96600330013371e6eb8c0e4c0d8dd5002818d28528a0668a51899912cc004006330010018cc004cdc79bae301c30383754602e60706ea800400e942945035400900d400a005002801207a14a2602a606c6ea80150331bae30383035375400313259800980f181a9baa0018992cc004c07cc0d8dd5000c4c9660026040606e6ea8006264b30013375e607860726ea8004c080cc0ecc080cc0ecc0f0c0e4dd500225eb80cc0ed300103d87a80004bd704660026eacc060c0e4dd5000cc060c0e4dd5180c181c9baa0069119b89337020026eb4c0f8c0fcc0fcc0fcc0ecdd50140012444b30010028a508994c004c966002604c607a6ea800626eb4c0f8c104dd59820981f1baa0018a400081d8c1000066ebcc100c1040066eac00d22259800800c566002600400d13300500348002294103d44c96600266ebcc1000053010140008acc004cc018010dd6982098221bab3041001898019ba630450028a5040f91598009980300224001130030078a5040f881f0c10c0050410ca60020030049119820801198209ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0fc0066eacc10000660880069112cc004cdc8a441000038acc004cdc7a441000038998029815198229ba60024bd70000c4cc015300103d87a8000006410119800803c006446600e0046608e66ec0dd48029ba6004001401c82006084004820229422942294104122941036181d981c1baa0018a9981b2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640d465300130010019bad303b303837540053758603860706ea80952225980099b8800248002298103d87a800089980180080120701112cc00400a298103d87a80008acc004c0880062604266078607a00497ae08cc00400e607c005301b001400c81b903b454cc0d524014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640d06530010019bac303a30373754049480010011112cc00400a298103d87a80008acc004cdd7981e00100344c080cc0ecdd4000a5eb8233001003981e8014cdc0000a4004801903620748a9981a248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640cc6070606a6ea80162a6606692019d6578706563740a2020202020202020202076315f315f7263315f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c902b40c8606e60686ea8c0dcc0d0dd51809981a1baa00130363033375400302840c0812205a40b48168c004004888c9660020071323233223300a00233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051018206e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81890311bac3034002375a60640026466ec0dd418190009ba73033001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606e003337149101023a200098008054c0e000600a805100a181d00144ca6002015303700199b8a489023a200098008054c0e0006600e66008008004805100a181d0012070303a00140dc66e29220102207d0000340d06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901520683758007133006375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40d866e2ccdc0000acc004cdc4000a402914818229037206c004401866e0c00520203370c002901019b8e00400240cc6eb800d0371b8a4881022c2000060306ea8024dc3a40086e1d2000805402a01500a407060300026030603200260286ea800e2c80886026002601c6ea8052293454cc0312411856616c696461746f722072657475726e65642066616c73650013656402c1":"5915d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e9520009180a980b180b000c896600200314bd7044cc054c048c058004cc008008c05c00501448c054c05800644646600200200644b30010018a508acc004cdc79bae30180010038a51899801001180c800a02640592232330010010032233003001300200298081baa00a9180a980b180b180b180b180b180b000c88c8cc00400400c896600200314a115980099baf003301430180018a51899801001180c800a0264059370e90034dc3a4011370e9005244444444444466446644b3001301400a8992cc004c054c084dd5000c4c966002603460446ea80062b30013371e6eb8c098c08cdd50009bae301130233754601e60466ea8c03cc08cdd519914c004c00800a2003223259800980d800c4c8c966002605c0050048b2056375c605800260506ea800e2b3001301f001899192cc004c0b800a0091640ac6eb8c0b0004c0a0dd5001c59026204c302637540049112cc004c06cc09cdd500244c8cc8966002605e00313259800980f98159baa001899191919912cc004c0d400e264b30013025303137540031323232323232323232329800981f800cc0fc026607e011303f007981f8034c0fc016607e009303f003981f8012444444444b3001304900a89981018240098998100040998100038998100030998100028998100020998100018998100010998100008998100048992cc004c0e4c114dd500b44c8c8c8c8ca60026eb8c138006609e003375c609c00b375c609c009375c609c007375c609c0049111112cc004c15401626464b30013046001899192cc004c16400a0211641586eb8c15c004c14cdd50014566002609400315980098299baa00280745905445905120a23051375400260a800b164148304e001304d001304c001304b0013046375402d1641102b300130383044375402d132323259800982600144cc0c8dd61825801912cc00400a2b3001303d30493754007132323259800982880144cc098c14000c4c9660026082003132598009829800c4c8c966002608800313259800982b000c4cc0acc1540040b22c8298c144dd500145660026090003132323298009bad30570019bad30570039bad305700248896600260b60090318b20b0182b800982b00098289baa0028b209e413c609e6ea8004c1480062c8280c138dd50014566002608a00315980098271baa00281445904f45904c2098304c3754003164138609e002609e00260946ea800e2c8242264b3001303e304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590491825000982500098229baa0168b20868b208c181f800981f000981e800981e000981d800981d000981c800981c000981b80098191baa0018b206030340058b20643032001303200230320013031001302c37540031640a8605c0031640b06eb8c0b0004c0b4004c0a0dd50024590260888c96600260340031323259800981680140122c8150dd7181580098139baa0038acc004c078006264b3001302c0018998091bac302b0012259800801401633001007981680144c004c0b800900720568b205230273754007159800980d800c4c96600260580031330123758605600244b3001002802c6600200f302d002898009817001200e40ad1640a4604e6ea800e2b3001300d00189919912cc004c0b80062660286eb0c0b400489660020050078cc004026605e0051300130300024024816a2c8158dd69815800981600098139baa0038acc004c03000626464b3001302d00280245902a1bad302b001302737540071598009805800c4c8c966002605a0050048b2054375a6056002604e6ea800e2b30013370e9006000c4c8c966002605a0050048b2054375c6056002604e6ea800e2c8129025204a40948129025204a3025375400464b300130173023375400313259800980c98121baa0018981418129baa0018b2046301230243754602060486ea8c09cc090dd5000c59022198019bac300f3023375403204113300a3756601660466ea8064cdd2a40046604a6ea407d2f5c1164085164084604a60446ea8c094c088dd5180718111baa302530223754003164080660046eb0c090c084dd500b80945660026030015159800980a18101baa0118cc004c090c084dd5181218109baa0119bac3024302530253025302530253025302530253021375402f302430253025302530253025302530253021375402f3756601260426ea805d22223233001001005223259800980d800c4cc04c018dd7181598141baa0028acc004c07c006264660020026eb0c0b0c0a4dd5001912cc00400629462b300133005005302d0018998010011817000c528205040ad159800980e000c4c8cc004004dd6181618149baa0032259800800c52845660026600a00a605a00314a3133002002302e00140a0815a2b3001300e00189919b89375a605800264660020026eb0c0b4c0b8008896600200314800226644b300133008008002899b800014800a20028158c0b8004cc008008c0bc00502c18141baa0028acc004c0340062646644b30013022302a3754005159800981118151baa302e302f003899b89375a605c60566ea8008006266e20dd6981718159baa00200140a514a08148c0b0004dd6981618149baa00330283754602860506ea80162b3001300c00189919912cc004c088c0a8dd50014566002604460546ea8c0b8c0bc00e266e24004dd6981718159baa002899b88001375a605c60566ea800902945282052302c001375a605860526ea800cc0a0dd5181598141baa00589980780219ba548008cc0a8c0acc0a0dd500125eb81026204c40988131026204c302637540028b203e8acc004c050c080dd5008c4c966002602a60426ea800626464b3001301b30233754003159800cc004888c966002603600313259800800c00e264b300100180240120090048992cc004c0bc00e00d00540b06eb800502f1816000a05430283754009159800980f800c4c9660020030038992cc0040060090048024012264b3001302f003803401502c1bae00140bc60580028150c0a0dd50024009026204c30263754007222329800800c0120068008888c966002603c00313259800800c01a264b3001001803c01e00f0078992cc004c0c800e00b00840bc6eb80050321817800a05a302b37540071598009811000c4c9660020030068992cc00400600f0078992cc004c0c800e26603000244b3001002803c4c96600200319800805400626004606a006805201700b805c02d03618198012062804205e3758003007803a064302f00140b460566ea800e2b3001301f0018992cc00400600d13259800800c01e00f132598009819001c4cc06000489660020050078992cc0040063300100a800c4c008c0d400d00a402e01700b805a06c303300240c500840bc6eb000600f00740c8605e0028168c0acdd5001c566002602200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303500389980d800912cc00400a01513259800800c6600201b00189801181c001a01a807403a01d00e40e4606c00481a20168190dd6000c02a01481a8c0c80050301bad0013031002803a064302f00140b460566ea800e2b300130100018992cc00400600d13259800800c01e00f0078992cc004c0c800e00b00840bc6eb400600e8190c0bc00502d18159baa0038acc004c03c006264b300100180344c966002003007803c01e264b30013032003802c02102f1bad001803a064302f00140b460566ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013032003802c02102f1bae00140c8605e0028168c0acdd5001c015029205240a48149029205240a460526ea800a64b300130183024375400313259800980d18129baa0018992cc004c068c098dd5000c4c8c8cc8966002605e00710058b2058302c001375c60580046058002604e6ea80062c8128c0a4c098dd5000c59024180998129baa3011302537546050604a6ea80062c8118cc010dd6180818121baa01a0219bae30273024375400291112cc006600266e3cdd7181598141baa002024a50a51409914a31332259800800c4c966002603c60546ea800a264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800800c566002606a005159800981218181baa0058992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c4c96600200301c8992cc0040062b300130490028cc00404e330010118cc00403e3300100d8cc00402e330010098cc00401e330010058cc00400e330010018992cc004c0e4c114dd500c44c96600200301f8992cc004006041020810408226644b300100181144c966002003023811c08e0471332259800800c096264b3001001813409a04d026899912cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81640b226644b300100181744c966002003159800982d80144c966002609600313259800800c0c6264b300100181940ca0650328992cc004c17c00e02d03341706eb800505f182e000a0b4305837540051598009827800c56600260b06ea800a0270304165030415882b0c158dd5000c0bd05840be05f02f817a0b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270dd7000982780120a0304d001412c6eb8004c13000904d1825000a0903046375403101e41102b300130383044375402b13259800800c07a264b300100180fc07e26644b3001001810c4c966002003159800982700144cc0d000c8966002005159800981f98259baa0038992cc00400604b13259800800c4c9660020030278992cc0040062b300130540028cc00400e264b300130440018992cc00400605513259800800c56600260ae005132598009823800c4c96600200302d8992cc0040062b3001305a0028cc00400605902e40c902e415d02e81740ba05c82d8c160005056182a1baa0028acc004c12c006264b3001001816c4c96600200302e81740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d2264b30013061003819c0d505e1bad00181a20c2305e00141706eb4004c17400a06282f0c16c0050591bad001305a00281720b63058001415860a86ea800a058829105218291baa001815a0a8815c0ae05702b416060aa0028298c144dd50014566002609000315980098289baa002813c0a505240a504f209e304f375400302840b1028414502881440a205082a8c1480050501829001409a04d02681320a63050001413860986ea800e0488252264b30010018acc004c100c130dd5000c4c9660020030268992cc00400604f027899912cc00400605313259800800c0aa05502a899912cc00400605913259800800c0b605b02d8992cc004c16800e2b300100781744c96600200302f817c0be05f1332259800800c0c6264b300100181940ca0650328992cc004c17c00e2602060be02303341706eb800505f182e000a0b4375c00260b601082e0c16401d05740b90571bad001816a0b4305700141546eb4004c15800a05482b8c1500050521bac0013053002813c09d0541828800a09e304d3754003025412d025812c09604a8290c13c00904d408904b408a045022811209e304c00141286eb0004c12c00a03f01f413060920028238c114dd500ac07504340750204075020407502040750204075020407502040750204075020407502040750204075046407603b01d80ea09430470014114608e00501b80dc06e0368240c1140050431822801406603301980ca08c30430014104608600501780bc05e02e8220c10400503f1820801405602b01580aa084303f00140f4607e005013809c04e0268200c0f400503b181e8014046023011808a07c303b00140e4607600500f807c03e01e81e0c0e4005037181c801403601b00d806a074303700140d4606e00500b805c02e01681c0c0d400503318189baa005804a05e804a064804c02601300940d860660028188c0cc00a00f007803c01d0341818800a05e3031002802c01600b00540c8605e0028168c0acdd5001400d0290cc004cdc79bae3018302a3754602c60546ea800400e942945028400a005002801205e14a2602860506ea80090262264b300130183024375400313259800980c98129baa0018992cc004c068c098dd5000c4c96600266ebcc0acc0a0dd5000980b99815180b99815181598141baa0044bd701981526103d87a80004bd704660026eacc050c0a0dd5000cc050c0a0dd5180a18141baa0069119b89337020026eb4c0b4c0b8c0b8c0b8c0a8dd50100012444b30010028a508994c004c966002604060586ea800626eb4c0b4c0c0dd5981818169baa0018a40008158c0bc0066ebcc0bcc0c00066eac00d22259800800c566002600400d13300500348002294102d44c96600266ebcc0bc0053010140008acc004cc018010dd6981818199bab3030001898019ba630340028a5040b91598009980300224001130030078a5040b88170c0c80050300ca60020030049119818001198181ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0b80066eacc0bc00660660069112cc004cdc8a441000038acc004cdc7a4410000389980298109981a1ba60024bd70000c4cc015300103d87a800000640c119800803c006446600e0046606c66ec0dd48029ba6004001401c81806062004817a29422942294103022941026181518139baa0018b204a3298009800800cdd6981518139baa0029bac30153027375403a9112cc004cdc40012400114c103d87a800089980180080120501112cc00400a298103d87a80008acc004c0700062603066056605800497ae08cc00400e605a005337000029000a006409c81522c8120ca600200337586052604c6ea807290002002222598008014530103d87a80008acc004cdd7981580100344c05ccc0a8dd4000a5eb823300100398160014cdc0000a4004801902620528b2046302730243754604e60486ea80522c81122c8110c098c08cdd5181318119baa300f30233754002604a60446ea80062c8100cc008dd6181218109baa0170128b203e407c80f888cc0100088cdd7981298111baa001002223300400223300d30043756601c60446ea8c038c088dd5000801111919800800801912cc0040062980103d87a80008992cc004c010006260226604800297ae0899801801981300120403024001408860140143012004301230130044590090c028004c014dd5005c52689b2b20061",Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");}}export class V1_1Rc1OrderOrderElse{constructor(proxyPolicyId,protocolScripthash,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5919070101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00168a998022494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d657256310016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b30010078999119912cc004c00c0062b3001301b375401700280720388acc004c0240062b3001301b375401700280720388acc004c0100062b3001301b375401700280720388072030406080c0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800e446466002002006446600600260040052301d301e301e0019112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003203291111919800800802912cc004006200b13259800800c4cc010c08c00801a26600a6046004660060060028108c08c0050204dc0240032259800800c52f5c113301d301a301e00133002002301f00140712301d301e001911919800800801912cc00400629422b30013371e6eb8c08000400e2946266004004604200280d101e4c060dd5004c8c074c078c078c078c078c078c07800644646600200200644b30010018a508acc004cdd7801980e1810000c528c4cc008008c08400501a203c4888888888888a600244646600200200644b30010018a6103d87a80008992cc004c010006260246605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002602a00313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d3754007159800980d800c4c9660020030068992cc00400600f0078992cc004c0d000e26602a00244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130160018992cc00400600d13259800800c01e00f13259800981a001c4cc05400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981b801c4cc060004896600200500a8992cc0040063300100d800c4c008c0e800d00d403a01d00e8072076303800240d900b40d06eb000601500a40dc60680028190dd68009819801401d0341818800a05e302d375400715980099b8748020006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260680070058042062375a00300740d060620028178c0b4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014c024026600c00c91114c00488cc0180088cdd7981818169baa0010029112cc004c054c0b0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018acc004c0dc00a2b3001301b3032375400b13259800800c022264b30010018992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c566002609600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c6600200313259800981818239baa0188992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f027899912cc00400605313259800800c0aa05502a81544cc896600200302c8992cc0040062b3001305d0028992cc004c108006264b3001001817c4c96600200303081840c2061132598009830801c05a06282f0dd7000a0c2305e001417060b46ea800a2b300130480018acc004c168dd5001404e05c82da05c82b9057182c1baa001816a0b4816c0b605b02d417860b600282c8dd7000982d00120b6305800141586eb8004c15c009058182a800a0a6375c00260a800482a8c1480050501bae00130510024148609e0028268dd70009827001209e304c001412860906ea80620388228566002605e608c6ea8056264b300100180e44c96600200301d80ec4cc896600200301f8992cc0040062b30013050002899818801912cc00400a2b30013036304d375400713259800800c08e264b30010018992cc00400604b13259800800c56600260ac00519800801c4c966002607600313259800800c0a2264b30010018acc004c16400a264b3001303e0018992cc00400605713259800800c56600260b800519800800c0b605881f205882ca05902c81640b105d182d000a0b0305637540051598009822000c4c96600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944c96600260c6007034819a0c0375a003032418c60c000282f0dd6800982f80140bd060182e800a0b6375a00260b800502c417460b400282c0c158dd500140a905320a6305437540030294159029814c0a605282d0c15c00505518299baa0028acc004c1040062b300130533754005028813a0a8813a0a0414060a26ea800604c81c204c829a04d0268134099057182a000a0a430540028124092049024415460a40028280c138dd5001c08904b44c966002003159800981b98271baa0018992cc00400604913259800800c09604b1332259800800c09e264b300100181440a20511332259800800c0aa264b3001001815c0ae05713259800982e001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c2061132598009830801c4c040c18404606282f0dd7000a0c2305e00141706eb8004c17402105e182d803a0b281620b2375a00302b417060b200282b8dd6800982c00140a1059182b000a0a8375800260aa005025812a0ac30530014144609e6ea80060468262047023811c08d0541828801209e810209a81040820410204144609c0028260dd60009826801407603a8270c12c00504918239baa01580da08880da04080da04080da04080da04080da04080da04080da04080da04080da04080da04080da09080dc06e03701b413060920028238c12400a03301980cc06504a1823800a08a304700280bc05e02f0174120608a0028218c11400a02b01580ac0550461821800a0823043002809c04e0270134110608200281f8c10400a023011808c045042181f800a07a303f002807c03e01f00f4100607a00281d8c0f400a01b00d806c03503e181d800a072303b002805c02e01700b40f0607200281b8c0e400a013009804c02503a181b800a06a3033375400b00740c100740d1007803c01e00e81c0c0d4005033181a801401600b005802a06c303300140c46066005003801c00e00681a0c0c400502f18169baa003800a054911919800800801912cc004c058006266e2922010130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340ac815a446600c00446601660086eacc030c0b4dd5180618169baa00100248888c8c966002603001b1332259800980d18189baa0018992cc004c084c0c8dd5000c56600266e3cdd7181b18199baa001375c602e60666ea8c048c0ccdd5180918199baa0038999129981999b9649010d63726564656e7469616c3a3a200037326600c0029101001330100020013756601e60666ea8080cdd2a40046606a6ea40b92f5c1153303149013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640c102940c0606a60646ea8c0d4c0c8dd5180898191baa30353032375400302740bc64b30010018acc004c064c0c0dd5000c4c96600200302c8992cc00400605b02d816c0b626644b3001001817c4c966002003159800981d00146600200310068182016818206e81840c206103040ec607000281b0dd7000981b8012070303500140cc60626ea8006056817205702b815c0ad036192cc004c064c0c0dd5000c4c966002603660626ea80062606a60646ea80060548178c054c0c4dd5180818189baa30343031375400302840b8660066eb0c03cc0c0dd500e816198031bac30333030375403a037159800980f006c5660026030605e6ea806a33001303330303754606660606ea806a6eb0c0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecc0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecdd5980618181baa01d48888c8cc00400401488c966002603e003133015006375c6074606e6ea800a2b30013025001899198008009bac303b3038375400644b30010018a518acc004cc014014c0f0006266004004607a00314a081b103a45660026040003132330010013758607660706ea800c896600200314a115980099802802981e000c528c4cc008008c0f400503620748acc004cdc3a400c003132337126eb4c0ec004c8cc004004dd6181e181e801112cc0040062900044cc896600266010010005133700002900144005039181e80099801001181f000a0763037375400515980099b87480200062646644b30013028303937540051598009814181c9baa303d303e003899b89375a607a60746ea8008006266e20dd6981e981d1baa00200140dd14a081b8c0ec004dd6981d981c1baa00330373754602c606e6ea80162b30013370e9005000c4c8cc8966002605060726ea800a2b3001302830393754607a607c0071337120026eb4c0f4c0e8dd500144cdc40009bad303d303a375400481ba2941037181d8009bad303b30383754006606e6ea8c0e8c0dcdd5002c4cc048010cdd2a4004660726074606e6ea80092f5c081a1034206840d081a1034181a9baa001409102d45660026030605e6ea806a330013033303037540353253302f3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40b522010013259800980d18189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980e98199baa0018992cc0040062b3001301d3034375400313259800800c0be264b300100181840c2061030899912cc00400606513259800981f0014401a06681d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0b903240ba05d02e817207430373034375400302c40c4602e60666ea8c048c0ccdd5000981a98191baa001814a05e3300400102d3758601e60606ea80766600c6eb0c0ccc0c0dd500e80da444b3001301b3032375400313232598009811981a1baa0018acc004c96600330013371e6eb8c0e4c0d8dd5002818d28528a0668a51899912cc004006330010018cc004cdc79bae301c30383754602e60706ea800400e942945035400900d400a005002801207a14a2602a606c6ea80150331bae30383035375400313259800980f181a9baa0018992cc004c07cc0d8dd5000c4c9660026040606e6ea8006264b30013375e607860726ea8004c080cc0ecc080cc0ecc0f0c0e4dd500225eb80cc0ed300103d87a80004bd704660026eacc060c0e4dd5000cc060c0e4dd5180c181c9baa0069119b89337020026eb4c0f8c0fcc0fcc0fcc0ecdd50140012444b30010028a508994c004c966002604c607a6ea800626eb4c0f8c104dd59820981f1baa0018a400081d8c1000066ebcc100c1040066eac00d22259800800c566002600400d13300500348002294103d44c96600266ebcc1000053010140008acc004cc018010dd6982098221bab3041001898019ba630450028a5040f91598009980300224001130030078a5040f881f0c10c0050410ca60020030049119820801198209ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0fc0066eacc10000660880069112cc004cdc8a441000038acc004cdc7a441000038998029815198229ba60024bd70000c4cc015300103d87a8000006410119800803c006446600e0046608e66ec0dd48029ba6004001401c82006084004820229422942294104122941036181d981c1baa0018a9981b2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640d465300130010019bad303b303837540053758603860706ea80952225980099b8800248002298103d87a800089980180080120701112cc00400a298103d87a80008acc004c0880062604266078607a00497ae08cc00400e607c005301b001400c81b903b454cc0d524014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640d06530010019bac303a30373754049480010011112cc00400a298103d87a80008acc004cdd7981e00100344c080cc0ecdd4000a5eb8233001003981e8014cdc0000a4004801903620748a9981a248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640cc6070606a6ea80162a6606692019d6578706563740a2020202020202020202076315f315f7263315f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c902b40c8606e60686ea8c0dcc0d0dd51809981a1baa00130363033375400302840c0812205a40b48168c004004888c9660020071323233223300a00233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051018206e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81890311bac3034002375a60640026466ec0dd418190009ba73033001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606e003337149101023a200098008054c0e000600a805100a181d00144ca6002015303700199b8a489023a200098008054c0e0006600e66008008004805100a181d0012070303a00140dc66e29220102207d0000340d06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901520683758007133006375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40d866e2ccdc0000acc004cdc4000a402914818229037206c004401866e0c00520203370c002901019b8e00400240cc6eb800d0371b8a4881022c2000060306ea8024dc3a40086e1d2000805402a01500a407060300026030603200260286ea800e2c80886026002601c6ea8052293454cc0312411856616c696461746f722072657475726e65642066616c73650013656402c1":"5915d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e9520009180a980b180b000c896600200314bd7044cc054c048c058004cc008008c05c00501448c054c05800644646600200200644b30010018a508acc004cdc79bae30180010038a51899801001180c800a02640592232330010010032233003001300200298081baa00a9180a980b180b180b180b180b180b000c88c8cc00400400c896600200314a115980099baf003301430180018a51899801001180c800a0264059370e90034dc3a4011370e9005244444444444466446644b3001301400a8992cc004c054c084dd5000c4c966002603460446ea80062b30013371e6eb8c098c08cdd50009bae301130233754601e60466ea8c03cc08cdd519914c004c00800a2003223259800980d800c4c8c966002605c0050048b2056375c605800260506ea800e2b3001301f001899192cc004c0b800a0091640ac6eb8c0b0004c0a0dd5001c59026204c302637540049112cc004c06cc09cdd500244c8cc8966002605e00313259800980f98159baa001899191919912cc004c0d400e264b30013025303137540031323232323232323232329800981f800cc0fc026607e011303f007981f8034c0fc016607e009303f003981f8012444444444b3001304900a89981018240098998100040998100038998100030998100028998100020998100018998100010998100008998100048992cc004c0e4c114dd500b44c8c8c8c8ca60026eb8c138006609e003375c609c00b375c609c009375c609c007375c609c0049111112cc004c15401626464b30013046001899192cc004c16400a0211641586eb8c15c004c14cdd50014566002609400315980098299baa00280745905445905120a23051375400260a800b164148304e001304d001304c001304b0013046375402d1641102b300130383044375402d132323259800982600144cc0c8dd61825801912cc00400a2b3001303d30493754007132323259800982880144cc098c14000c4c9660026082003132598009829800c4c8c966002608800313259800982b000c4cc0acc1540040b22c8298c144dd500145660026090003132323298009bad30570019bad30570039bad305700248896600260b60090318b20b0182b800982b00098289baa0028b209e413c609e6ea8004c1480062c8280c138dd50014566002608a00315980098271baa00281445904f45904c2098304c3754003164138609e002609e00260946ea800e2c8242264b3001303e304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590491825000982500098229baa0168b20868b208c181f800981f000981e800981e000981d800981d000981c800981c000981b80098191baa0018b206030340058b20643032001303200230320013031001302c37540031640a8605c0031640b06eb8c0b0004c0b4004c0a0dd50024590260888c96600260340031323259800981680140122c8150dd7181580098139baa0038acc004c078006264b3001302c0018998091bac302b0012259800801401633001007981680144c004c0b800900720568b205230273754007159800980d800c4c96600260580031330123758605600244b3001002802c6600200f302d002898009817001200e40ad1640a4604e6ea800e2b3001300d00189919912cc004c0b80062660286eb0c0b400489660020050078cc004026605e0051300130300024024816a2c8158dd69815800981600098139baa0038acc004c03000626464b3001302d00280245902a1bad302b001302737540071598009805800c4c8c966002605a0050048b2054375a6056002604e6ea800e2b30013370e9006000c4c8c966002605a0050048b2054375c6056002604e6ea800e2c8129025204a40948129025204a3025375400464b300130173023375400313259800980c98121baa0018981418129baa0018b2046301230243754602060486ea8c09cc090dd5000c59022198019bac300f3023375403204113300a3756601660466ea8064cdd2a40046604a6ea407d2f5c1164085164084604a60446ea8c094c088dd5180718111baa302530223754003164080660046eb0c090c084dd500b80945660026030015159800980a18101baa0118cc004c090c084dd5181218109baa0119bac3024302530253025302530253025302530253021375402f302430253025302530253025302530253021375402f3756601260426ea805d22223233001001005223259800980d800c4cc04c018dd7181598141baa0028acc004c07c006264660020026eb0c0b0c0a4dd5001912cc00400629462b300133005005302d0018998010011817000c528205040ad159800980e000c4c8cc004004dd6181618149baa0032259800800c52845660026600a00a605a00314a3133002002302e00140a0815a2b3001300e00189919b89375a605800264660020026eb0c0b4c0b8008896600200314800226644b300133008008002899b800014800a20028158c0b8004cc008008c0bc00502c18141baa0028acc004c0340062646644b30013022302a3754005159800981118151baa302e302f003899b89375a605c60566ea8008006266e20dd6981718159baa00200140a514a08148c0b0004dd6981618149baa00330283754602860506ea80162b3001300c00189919912cc004c088c0a8dd50014566002604460546ea8c0b8c0bc00e266e24004dd6981718159baa002899b88001375a605c60566ea800902945282052302c001375a605860526ea800cc0a0dd5181598141baa00589980780219ba548008cc0a8c0acc0a0dd500125eb81026204c40988131026204c302637540028b203e8acc004c050c080dd5008c4c966002602a60426ea800626464b3001301b30233754003159800cc004888c966002603600313259800800c00e264b300100180240120090048992cc004c0bc00e00d00540b06eb800502f1816000a05430283754009159800980f800c4c9660020030038992cc0040060090048024012264b3001302f003803401502c1bae00140bc60580028150c0a0dd50024009026204c30263754007222329800800c0120068008888c966002603c00313259800800c01a264b3001001803c01e00f0078992cc004c0c800e00b00840bc6eb80050321817800a05a302b37540071598009811000c4c9660020030068992cc00400600f0078992cc004c0c800e26603000244b3001002803c4c96600200319800805400626004606a006805201700b805c02d03618198012062804205e3758003007803a064302f00140b460566ea800e2b3001301f0018992cc00400600d13259800800c01e00f132598009819001c4cc06000489660020050078992cc0040063300100a800c4c008c0d400d00a402e01700b805a06c303300240c500840bc6eb000600f00740c8605e0028168c0acdd5001c566002602200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303500389980d800912cc00400a01513259800800c6600201b00189801181c001a01a807403a01d00e40e4606c00481a20168190dd6000c02a01481a8c0c80050301bad0013031002803a064302f00140b460566ea800e2b300130100018992cc00400600d13259800800c01e00f0078992cc004c0c800e00b00840bc6eb400600e8190c0bc00502d18159baa0038acc004c03c006264b300100180344c966002003007803c01e264b30013032003802c02102f1bad001803a064302f00140b460566ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013032003802c02102f1bae00140c8605e0028168c0acdd5001c015029205240a48149029205240a460526ea800a64b300130183024375400313259800980d18129baa0018992cc004c068c098dd5000c4c8c8cc8966002605e00710058b2058302c001375c60580046058002604e6ea80062c8128c0a4c098dd5000c59024180998129baa3011302537546050604a6ea80062c8118cc010dd6180818121baa01a0219bae30273024375400291112cc006600266e3cdd7181598141baa002024a50a51409914a31332259800800c4c966002603c60546ea800a264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800800c566002606a005159800981218181baa0058992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c4c96600200301c8992cc0040062b300130490028cc00404e330010118cc00403e3300100d8cc00402e330010098cc00401e330010058cc00400e330010018992cc004c0e4c114dd500c44c96600200301f8992cc004006041020810408226644b300100181144c966002003023811c08e0471332259800800c096264b3001001813409a04d026899912cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81640b226644b300100181744c966002003159800982d80144c966002609600313259800800c0c6264b300100181940ca0650328992cc004c17c00e02d03341706eb800505f182e000a0b4305837540051598009827800c56600260b06ea800a0270304165030415882b0c158dd5000c0bd05840be05f02f817a0b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270dd7000982780120a0304d001412c6eb8004c13000904d1825000a0903046375403101e41102b300130383044375402b13259800800c07a264b300100180fc07e26644b3001001810c4c966002003159800982700144cc0d000c8966002005159800981f98259baa0038992cc00400604b13259800800c4c9660020030278992cc0040062b300130540028cc00400e264b300130440018992cc00400605513259800800c56600260ae005132598009823800c4c96600200302d8992cc0040062b3001305a0028cc00400605902e40c902e415d02e81740ba05c82d8c160005056182a1baa0028acc004c12c006264b3001001816c4c96600200302e81740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d2264b30013061003819c0d505e1bad00181a20c2305e00141706eb4004c17400a06282f0c16c0050591bad001305a00281720b63058001415860a86ea800a058829105218291baa001815a0a8815c0ae05702b416060aa0028298c144dd50014566002609000315980098289baa002813c0a505240a504f209e304f375400302840b1028414502881440a205082a8c1480050501829001409a04d02681320a63050001413860986ea800e0488252264b30010018acc004c100c130dd5000c4c9660020030268992cc00400604f027899912cc00400605313259800800c0aa05502a899912cc00400605913259800800c0b605b02d8992cc004c16800e2b300100781744c96600200302f817c0be05f1332259800800c0c6264b300100181940ca0650328992cc004c17c00e2602060be02303341706eb800505f182e000a0b4375c00260b601082e0c16401d05740b90571bad001816a0b4305700141546eb4004c15800a05482b8c1500050521bac0013053002813c09d0541828800a09e304d3754003025412d025812c09604a8290c13c00904d408904b408a045022811209e304c00141286eb0004c12c00a03f01f413060920028238c114dd500ac07504340750204075020407502040750204075020407502040750204075020407502040750204075046407603b01d80ea09430470014114608e00501b80dc06e0368240c1140050431822801406603301980ca08c30430014104608600501780bc05e02e8220c10400503f1820801405602b01580aa084303f00140f4607e005013809c04e0268200c0f400503b181e8014046023011808a07c303b00140e4607600500f807c03e01e81e0c0e4005037181c801403601b00d806a074303700140d4606e00500b805c02e01681c0c0d400503318189baa005804a05e804a064804c02601300940d860660028188c0cc00a00f007803c01d0341818800a05e3031002802c01600b00540c8605e0028168c0acdd5001400d0290cc004cdc79bae3018302a3754602c60546ea800400e942945028400a005002801205e14a2602860506ea80090262264b300130183024375400313259800980c98129baa0018992cc004c068c098dd5000c4c96600266ebcc0acc0a0dd5000980b99815180b99815181598141baa0044bd701981526103d87a80004bd704660026eacc050c0a0dd5000cc050c0a0dd5180a18141baa0069119b89337020026eb4c0b4c0b8c0b8c0b8c0a8dd50100012444b30010028a508994c004c966002604060586ea800626eb4c0b4c0c0dd5981818169baa0018a40008158c0bc0066ebcc0bcc0c00066eac00d22259800800c566002600400d13300500348002294102d44c96600266ebcc0bc0053010140008acc004cc018010dd6981818199bab3030001898019ba630340028a5040b91598009980300224001130030078a5040b88170c0c80050300ca60020030049119818001198181ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0b80066eacc0bc00660660069112cc004cdc8a441000038acc004cdc7a4410000389980298109981a1ba60024bd70000c4cc015300103d87a800000640c119800803c006446600e0046606c66ec0dd48029ba6004001401c81806062004817a29422942294103022941026181518139baa0018b204a3298009800800cdd6981518139baa0029bac30153027375403a9112cc004cdc40012400114c103d87a800089980180080120501112cc00400a298103d87a80008acc004c0700062603066056605800497ae08cc00400e605a005337000029000a006409c81522c8120ca600200337586052604c6ea807290002002222598008014530103d87a80008acc004cdd7981580100344c05ccc0a8dd4000a5eb823300100398160014cdc0000a4004801902620528b2046302730243754604e60486ea80522c81122c8110c098c08cdd5181318119baa300f30233754002604a60446ea80062c8100cc008dd6181218109baa0170128b203e407c80f888cc0100088cdd7981298111baa001002223300400223300d30043756601c60446ea8c038c088dd5000801111919800800801912cc0040062980103d87a80008992cc004c010006260226604800297ae0899801801981300120403024001408860140143012004301230130044590090c028004c014dd5005c52689b2b20061",Type.Tuple([PolicyId,ScriptHash]),[proxyPolicyId,protocolScripthash]),"PlutusV3");}}export class V1_1Rc1ProtocolManagementProtocolManagementWithdraw{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401":"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolManagementProtocolManagementPublish{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401":"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolManagementProtocolManagementElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401":"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201":"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201":"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201":"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolMintProtocolMintWithdraw{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541":"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolMintProtocolMintPublish{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541":"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolMintProtocolMintElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541":"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw{constructor(proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281":"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301",Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator]),"PlutusV3");}}export class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish{constructor(proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281":"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301",Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator]),"PlutusV3");}}export class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse{constructor(proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281":"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301",Type.Tuple([PolicyId,ScriptHash,ScriptHash,ScriptHash,ScriptHash]),[proxyPolicyId,mintValidator,stakeValidator,managementValidator,yieldOracleValidator]),"PlutusV3");}}export class V1_1Rc1ProtocolStakeProtocolStakeWithdraw{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolStakeProtocolStakePublish{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProtocolStakeProtocolStakeElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581":"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1ProxyNftProxyNftMint{constructor(utxoRef,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");}}export class V1_1Rc1ProxyNftProxyNftElse{constructor(utxoRef,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601":"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n})]),[utxoRef]),"PlutusV3");}}export class V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse{constructor(proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401",Type.Tuple([PolicyId]),[proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1StakingVaultStakingVaultMint{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1StakingVaultStakingVaultSpend{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1StakingVaultStakingVaultElse{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601":"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1TreasuryTreasuryMint{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1TreasuryTreasurySpend{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1TreasuryTreasuryElse{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1YieldOracleYieldOracleMint{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1YieldOracleYieldOracleSpend{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}}export class V1_1Rc1YieldOracleYieldOracleElse{constructor(utxoRef,proxyPolicyId,trace=false){_defineProperty(this,"Script",void 0);this.Script=cborToScript(applyParamsToScript(trace?"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601":"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041",Type.Tuple([Type.Object({transaction_id:Type.String(),output_index:Type.BigInt()},{ctor:0n}),PolicyId]),[utxoRef,proxyPolicyId]),"PlutusV3");}} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/generated-types/v1_1_rc1/index.js.map b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_1_rc1/index.js.map new file mode 100644 index 0000000000..c9e78ee387 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/generated-types/v1_1_rc1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["applyParamsToScript","cborToScript","Type","TPlutusData","PolicyId","String","ScriptHash","Contracts","Module","Bool","Boolean","Tuple_VerificationKey_COSESign1","Tuple","Ref","GovernanceConfig","Object","logic_change","permission_change","config_change","shutdown","restore","migrate","ctor","SettingsAuthPayload","change","destination","datum","nonce","transaction_id","output_index","BigInt","SettingsRedeemer","Union","Literal","SettingsSignedRedeemer","signatures","Array","COSESign1","headers","payload","Optional","signature","HeaderMap","Headers","protected","unprotected","MultisigScript","Signature","key_hash","AllOf","scripts","AnyOf","AtLeast","required","Before","time","After","Script","script_hash","ProxyDatum","logic","settings","Denominator","DistributionOracleDatum","message","staked_usdr","staking_yield","DistributionOracleMessage","input","hurdle","floor","timestamp","base","r_max","Numerator","ProtocolOrchestratorRedeemerV1","ExecuteOrders","PublishYieldOracle","Ratio","SignedDistributionOracleMessage","Slot","YieldDistributionInput","net_distributable_income","Asset","Destination","address","payment_credential","VerificationKey","stake_credential","Inline","Pointer","slot_number","transaction_index","certificate_index","DatumHash","InlineDatum","DirectRequestV1","amount","origin","ExchangeRequestV1","min_received","reserve_asset","ExtraProtocolRedeemerV1","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","Nonce","UTxO","Validity","lower_bound","bound_type","Finite","is_inclusive","upper_bound","OrderActionV1","OMint","ORedeem","ODeposit","principal","yield","diffusion_end","OWithdraw","OStake","OUnstake","forfeit","ODirectMint","ODirectBurn","OrderDatumV1","owner","action","data","OrderRedeemerV1","Permissions","mint","burn","withdraw","deposit","stake","unstake","direct_mint","direct_burn","yield_oracle","ProtocolConfig","reserve_assets","unstaked_yield_pot","ProtocolRedeemerV1","Mint","requests","Burn","Withdraw","Deposit","alpha","Stake","Unstake","DirectMint","DirectBurn","ProxyDatumV1","RegistryV1","treasury","usdr","order","staking_vault","migration","ReserveAsset","asset","numerator","denominator","SettingsV1","permissions","registry","config","SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage","SignedPayload_v1_1_ProtocolRedeemerV1","SignedRedeemer_v1_1_ExtraProtocolRedeemerV1","extra","StakeRequestV1","StakingVaultRedeemerV1","Undefined","TreasuryDatumV1","circulating_supply","TreasuryRequestV1","VaultDatumV1","circulating_susdr","pending_yield","diffusion_start","YieldSplitAlpha","Import","SettingsProtocolSettingsProtocolSettingsSpend","constructor","proxyPolicyId","gov","trace","_defineProperty","SettingsProtocolSettingsProtocolSettingsWithdraw","SettingsProtocolSettingsProtocolSettingsPublish","SettingsProtocolSettingsProtocolSettingsElse","V1_1Rc1DistributionOracleDistributionOracleWithdraw","oracleNftPolicyId","V1_1Rc1DistributionOracleDistributionOracleElse","V1_1Rc1OrderOrderSpend","protocolScripthash","V1_1Rc1OrderOrderElse","V1_1Rc1ProtocolManagementProtocolManagementWithdraw","V1_1Rc1ProtocolManagementProtocolManagementPublish","V1_1Rc1ProtocolManagementProtocolManagementElse","V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw","V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish","V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else","V1_1Rc1ProtocolMintProtocolMintWithdraw","V1_1Rc1ProtocolMintProtocolMintPublish","V1_1Rc1ProtocolMintProtocolMintElse","V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","mintValidator","stakeValidator","managementValidator","yieldOracleValidator","V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish","V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse","V1_1Rc1ProtocolStakeProtocolStakeWithdraw","V1_1Rc1ProtocolStakeProtocolStakePublish","V1_1Rc1ProtocolStakeProtocolStakeElse","V1_1Rc1ProxyNftProxyNftMint","utxoRef","V1_1Rc1ProxyNftProxyNftElse","V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint","V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse","V1_1Rc1StakingVaultStakingVaultMint","V1_1Rc1StakingVaultStakingVaultSpend","V1_1Rc1StakingVaultStakingVaultElse","V1_1Rc1TreasuryTreasuryMint","V1_1Rc1TreasuryTreasurySpend","V1_1Rc1TreasuryTreasuryElse","V1_1Rc1YieldOracleYieldOracleMint","V1_1Rc1YieldOracleYieldOracleSpend","V1_1Rc1YieldOracleYieldOracleElse"],"sources":["../../../../src/generated-types/v1_1_rc1/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport { applyParamsToScript, cborToScript } from \"@blaze-cardano/uplc\";\nimport { type Script } from \"@blaze-cardano/core\";\nimport { Type, Exact, TPlutusData } from \"@blaze-cardano/data\";\ntype Data = Exact;\ntype Int = bigint;\ntype ByteArray = string;\nconst PolicyId = Type.String();\nconst ScriptHash = Type.String();\ntype OutputReference = { output_index: bigint; transaction_id: string };\n\nconst Contracts = Type.Module({\n Bool: Type.Boolean(),\n Tuple_VerificationKey_COSESign1: Type.Tuple([\n Type.String(),\n Type.Ref(\"COSESign1\"),\n ]),\n GovernanceConfig: Type.Object(\n {\n logic_change: Type.Ref(\"MultisigScript\"),\n permission_change: Type.Ref(\"MultisigScript\"),\n config_change: Type.Ref(\"MultisigScript\"),\n shutdown: Type.Ref(\"MultisigScript\"),\n restore: Type.Ref(\"MultisigScript\"),\n migrate: Type.Ref(\"MultisigScript\"),\n },\n { ctor: 0n },\n ),\n SettingsAuthPayload: Type.Object(\n {\n change: Type.Ref(\"SettingsRedeemer\"),\n destination: Type.String(),\n datum: Type.Ref(\"ProxyDatum\"),\n nonce: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n SettingsRedeemer: Type.Union([\n Type.Literal(\"ChangeLogic\", { ctor: 0n }),\n Type.Literal(\"ChangePermissions\", { ctor: 1n }),\n Type.Literal(\"ChangeConfig\", { ctor: 2n }),\n Type.Literal(\"Shutdown\", { ctor: 3n }),\n Type.Literal(\"Restore\", { ctor: 4n }),\n Type.Literal(\"Migrate\", { ctor: 5n }),\n ]),\n SettingsSignedRedeemer: Type.Object(\n {\n change: Type.Ref(\"SettingsRedeemer\"),\n signatures: Type.Array(Type.Ref(\"Tuple_VerificationKey_COSESign1\")),\n },\n { ctor: 0n },\n ),\n COSESign1: Type.Object(\n {\n headers: Type.Ref(\"Headers\"),\n payload: Type.Optional(Type.String()),\n signature: Type.String(),\n },\n { ctor: 0n },\n ),\n HeaderMap: Type.String(),\n Headers: Type.Object(\n {\n protected: Type.Ref(\"HeaderMap\"),\n unprotected: Type.Ref(\"HeaderMap\"),\n },\n { ctor: 0n },\n ),\n MultisigScript: Type.Union([\n Type.Object({\n Signature: Type.Object(\n {\n key_hash: Type.String(),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n AllOf: Type.Object(\n {\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n AnyOf: Type.Object(\n {\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n AtLeast: Type.Object(\n {\n required: Type.BigInt(),\n scripts: Type.Array(Type.Ref(\"MultisigScript\")),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n Before: Type.Object(\n {\n time: Type.BigInt(),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n After: Type.Object(\n {\n time: Type.BigInt(),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n Script: Type.Object(\n {\n script_hash: Type.String(),\n },\n { ctor: 6n },\n ),\n }),\n ]),\n ProxyDatum: Type.Object(\n {\n logic: Type.String(),\n settings: TPlutusData,\n },\n { ctor: 0n },\n ),\n Denominator: Type.BigInt(),\n DistributionOracleDatum: Type.Object(\n {\n message: Type.Ref(\"SignedDistributionOracleMessage\"),\n staked_usdr: Type.BigInt(),\n staking_yield: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n DistributionOracleMessage: Type.Object(\n {\n input: Type.Ref(\"YieldDistributionInput\"),\n hurdle: Type.Ref(\"Ratio\"),\n floor: Type.Ref(\"Ratio\"),\n timestamp: Type.Ref(\"Slot\"),\n base: Type.BigInt(),\n r_max: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n Numerator: Type.BigInt(),\n ProtocolOrchestratorRedeemerV1: Type.Union([\n Type.Object({\n ExecuteOrders: Type.Tuple(\n [Type.Ref(\"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1\")],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n PublishYieldOracle: Type.Tuple(\n [Type.Ref(\"SignedDistributionOracleMessage\")],\n { ctor: 1n },\n ),\n }),\n ]),\n Ratio: Type.Tuple([Type.Ref(\"Numerator\"), Type.Ref(\"Denominator\")]),\n SignedDistributionOracleMessage: Type.Object(\n {\n payload: Type.Ref(\n \"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage\",\n ),\n signatures: Type.Array(Type.Ref(\"Tuple_VerificationKey_COSESign1\")),\n },\n { ctor: 0n },\n ),\n Slot: Type.BigInt(),\n YieldDistributionInput: Type.Object(\n {\n net_distributable_income: Type.BigInt(),\n staked_usdr: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n Asset: Type.Tuple([Type.String(), Type.String()]),\n Destination: Type.Object(\n {\n address: Type.Object(\n {\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple(\n [\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], {\n ctor: 0n,\n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Pointer: Type.Object(\n {\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n },\n { ctor: 1n },\n ),\n }),\n ]),\n ),\n },\n { ctor: 0n },\n ),\n datum: Type.Union([\n Type.Literal(\"NoDatum\", { ctor: 0n }),\n Type.Object({\n DatumHash: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n Type.Object({\n InlineDatum: Type.Tuple([TPlutusData], { ctor: 2n }),\n }),\n ]),\n },\n { ctor: 0n },\n ),\n DirectRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n ExchangeRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n ExtraProtocolRedeemerV1: Type.Object(\n {\n request_to_outputs: Type.Array(Type.BigInt()),\n input_to_requests: Type.Array(Type.BigInt()),\n treasury_input_idx: Type.BigInt(),\n treasury_output_idx: Type.BigInt(),\n vault_input_idx: Type.Optional(Type.BigInt()),\n vault_output_idx: Type.Optional(Type.BigInt()),\n },\n { ctor: 0n },\n ),\n Nonce: Type.Union([\n Type.Object({\n UTxO: Type.Tuple(\n [\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Validity: Type.Tuple(\n [\n Type.Object(\n {\n lower_bound: Type.Object(\n {\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }),\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n },\n { ctor: 0n },\n ),\n upper_bound: Type.Object(\n {\n bound_type: Type.Union([\n Type.Literal(\"NegativeInfinity\", { ctor: 0n }),\n Type.Object({\n Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }),\n }),\n Type.Literal(\"PositiveInfinity\", { ctor: 2n }),\n ]),\n is_inclusive: Type.Ref(\"Bool\"),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n ],\n { ctor: 1n },\n ),\n }),\n ]),\n OrderActionV1: Type.Union([\n Type.Object({\n OMint: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n ORedeem: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n ODeposit: Type.Object(\n {\n principal: Type.BigInt(),\n yield: Type.BigInt(),\n diffusion_end: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n OWithdraw: Type.Object(\n {\n amount: Type.BigInt(),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n OStake: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n OUnstake: Type.Object(\n {\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n forfeit: Type.BigInt(),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n ODirectMint: Type.Object(\n {\n amount: Type.BigInt(),\n },\n { ctor: 6n },\n ),\n }),\n Type.Object({\n ODirectBurn: Type.Object(\n {\n amount: Type.BigInt(),\n },\n { ctor: 7n },\n ),\n }),\n ]),\n OrderDatumV1: Type.Object(\n {\n owner: Type.Ref(\"MultisigScript\"),\n destination: Type.Ref(\"Destination\"),\n action: Type.Ref(\"OrderActionV1\"),\n data: TPlutusData,\n },\n { ctor: 0n },\n ),\n OrderRedeemerV1: Type.Union([\n Type.Literal(\"Execute\", { ctor: 0n }),\n Type.Literal(\"Cancel\", { ctor: 1n }),\n Type.Literal(\"Invalidated\", { ctor: 2n }),\n ]),\n Permissions: Type.Object(\n {\n mint: Type.Ref(\"MultisigScript\"),\n burn: Type.Ref(\"MultisigScript\"),\n withdraw: Type.Ref(\"MultisigScript\"),\n deposit: Type.Ref(\"MultisigScript\"),\n stake: Type.Ref(\"MultisigScript\"),\n unstake: Type.Ref(\"MultisigScript\"),\n direct_mint: Type.Ref(\"MultisigScript\"),\n direct_burn: Type.Ref(\"MultisigScript\"),\n yield_oracle: Type.Ref(\"MultisigScript\"),\n migrate: Type.Ref(\"MultisigScript\"),\n },\n { ctor: 0n },\n ),\n ProtocolConfig: Type.Object(\n {\n reserve_assets: Type.Array(Type.Ref(\"ReserveAsset\")),\n unstaked_yield_pot: Type.Object(\n {\n payment_credential: Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n stake_credential: Type.Optional(\n Type.Union([\n Type.Object({\n Inline: Type.Tuple(\n [\n Type.Union([\n Type.Object({\n VerificationKey: Type.Tuple([Type.String()], {\n ctor: 0n,\n }),\n }),\n Type.Object({\n Script: Type.Tuple([Type.String()], { ctor: 1n }),\n }),\n ]),\n ],\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Pointer: Type.Object(\n {\n slot_number: Type.BigInt(),\n transaction_index: Type.BigInt(),\n certificate_index: Type.BigInt(),\n },\n { ctor: 1n },\n ),\n }),\n ]),\n ),\n },\n { ctor: 0n },\n ),\n },\n { ctor: 0n },\n ),\n ProtocolRedeemerV1: Type.Union([\n Type.Object({\n Mint: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"ExchangeRequestV1\")),\n },\n { ctor: 0n },\n ),\n }),\n Type.Object({\n Burn: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"ExchangeRequestV1\")),\n },\n { ctor: 1n },\n ),\n }),\n Type.Object({\n Withdraw: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"TreasuryRequestV1\")),\n },\n { ctor: 2n },\n ),\n }),\n Type.Object({\n Deposit: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"TreasuryRequestV1\")),\n alpha: Type.Ref(\"YieldSplitAlpha\"),\n },\n { ctor: 3n },\n ),\n }),\n Type.Object({\n Stake: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"StakeRequestV1\")),\n },\n { ctor: 4n },\n ),\n }),\n Type.Object({\n Unstake: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"StakeRequestV1\")),\n },\n { ctor: 5n },\n ),\n }),\n Type.Object({\n DirectMint: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"DirectRequestV1\")),\n },\n { ctor: 6n },\n ),\n }),\n Type.Object({\n DirectBurn: Type.Object(\n {\n requests: Type.Array(Type.Ref(\"DirectRequestV1\")),\n },\n { ctor: 7n },\n ),\n }),\n Type.Literal(\"MigrateState\", { ctor: 8n }),\n ]),\n ProxyDatumV1: Type.Object(\n {\n logic: Type.String(),\n settings: Type.Ref(\"SettingsV1\"),\n },\n { ctor: 0n },\n ),\n RegistryV1: Type.Object(\n {\n treasury: Type.String(),\n usdr: Type.String(),\n order: Type.String(),\n staking_vault: Type.String(),\n yield_oracle: Type.String(),\n migration: Type.Optional(Type.String()),\n },\n { ctor: 0n },\n ),\n ReserveAsset: Type.Object(\n {\n asset: Type.Ref(\"Asset\"),\n numerator: Type.BigInt(),\n denominator: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n SettingsV1: Type.Object(\n {\n permissions: Type.Ref(\"Permissions\"),\n registry: Type.Ref(\"RegistryV1\"),\n config: Type.Ref(\"ProtocolConfig\"),\n },\n { ctor: 0n },\n ),\n SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: Type.Object(\n {\n action: Type.Ref(\"DistributionOracleMessage\"),\n nonce: Type.Ref(\"Nonce\"),\n },\n { ctor: 0n },\n ),\n SignedPayload_v1_1_ProtocolRedeemerV1: Type.Object(\n {\n action: Type.Ref(\"ProtocolRedeemerV1\"),\n nonce: Type.Ref(\"Nonce\"),\n },\n { ctor: 0n },\n ),\n SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: Type.Object(\n {\n extra: Type.Ref(\"ExtraProtocolRedeemerV1\"),\n payload: Type.Ref(\"SignedPayload_v1_1_ProtocolRedeemerV1\"),\n signatures: Type.Array(Type.Ref(\"Tuple_VerificationKey_COSESign1\")),\n },\n { ctor: 0n },\n ),\n StakeRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n min_received: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n forfeit: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n StakingVaultRedeemerV1: Type.Undefined(),\n TreasuryDatumV1: Type.Object(\n {\n circulating_supply: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n TreasuryRequestV1: Type.Object(\n {\n destination: Type.Ref(\"Destination\"),\n amount: Type.BigInt(),\n yield: Type.BigInt(),\n diffusion_end: Type.BigInt(),\n origin: Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n reserve_asset: Type.Ref(\"Asset\"),\n },\n { ctor: 0n },\n ),\n VaultDatumV1: Type.Object(\n {\n circulating_susdr: Type.BigInt(),\n pending_yield: Type.BigInt(),\n diffusion_start: Type.BigInt(),\n diffusion_end: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n YieldSplitAlpha: Type.Object(\n {\n numerator: Type.BigInt(),\n denominator: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n});\n\nexport const Bool = Contracts.Import(\"Bool\");\nexport type Bool = Exact;\nexport const Tuple_VerificationKey_COSESign1 = Contracts.Import(\n \"Tuple_VerificationKey_COSESign1\",\n);\nexport type Tuple_VerificationKey_COSESign1 = Exact<\n typeof Tuple_VerificationKey_COSESign1\n>;\nexport const GovernanceConfig = Contracts.Import(\"GovernanceConfig\");\nexport type GovernanceConfig = Exact;\nexport const SettingsAuthPayload = Contracts.Import(\"SettingsAuthPayload\");\nexport type SettingsAuthPayload = Exact;\nexport const SettingsRedeemer = Contracts.Import(\"SettingsRedeemer\");\nexport type SettingsRedeemer = Exact;\nexport const SettingsSignedRedeemer = Contracts.Import(\n \"SettingsSignedRedeemer\",\n);\nexport type SettingsSignedRedeemer = Exact;\nexport const COSESign1 = Contracts.Import(\"COSESign1\");\nexport type COSESign1 = Exact;\nexport const HeaderMap = Contracts.Import(\"HeaderMap\");\nexport type HeaderMap = Exact;\nexport const Headers = Contracts.Import(\"Headers\");\nexport type Headers = Exact;\nexport const MultisigScript = Contracts.Import(\"MultisigScript\");\nexport type MultisigScript = Exact;\nexport const ProxyDatum = Contracts.Import(\"ProxyDatum\");\nexport type ProxyDatum = Exact;\nexport const Denominator = Contracts.Import(\"Denominator\");\nexport type Denominator = Exact;\nexport const DistributionOracleDatum = Contracts.Import(\n \"DistributionOracleDatum\",\n);\nexport type DistributionOracleDatum = Exact;\nexport const DistributionOracleMessage = Contracts.Import(\n \"DistributionOracleMessage\",\n);\nexport type DistributionOracleMessage = Exact;\nexport const Numerator = Contracts.Import(\"Numerator\");\nexport type Numerator = Exact;\nexport const ProtocolOrchestratorRedeemerV1 = Contracts.Import(\n \"ProtocolOrchestratorRedeemerV1\",\n);\nexport type ProtocolOrchestratorRedeemerV1 = Exact<\n typeof ProtocolOrchestratorRedeemerV1\n>;\nexport const Ratio = Contracts.Import(\"Ratio\");\nexport type Ratio = Exact;\nexport const SignedDistributionOracleMessage = Contracts.Import(\n \"SignedDistributionOracleMessage\",\n);\nexport type SignedDistributionOracleMessage = Exact<\n typeof SignedDistributionOracleMessage\n>;\nexport const Slot = Contracts.Import(\"Slot\");\nexport type Slot = Exact;\nexport const YieldDistributionInput = Contracts.Import(\n \"YieldDistributionInput\",\n);\nexport type YieldDistributionInput = Exact;\nexport const Asset = Contracts.Import(\"Asset\");\nexport type Asset = Exact;\nexport const Destination = Contracts.Import(\"Destination\");\nexport type Destination = Exact;\nexport const DirectRequestV1 = Contracts.Import(\"DirectRequestV1\");\nexport type DirectRequestV1 = Exact;\nexport const ExchangeRequestV1 = Contracts.Import(\"ExchangeRequestV1\");\nexport type ExchangeRequestV1 = Exact;\nexport const ExtraProtocolRedeemerV1 = Contracts.Import(\n \"ExtraProtocolRedeemerV1\",\n);\nexport type ExtraProtocolRedeemerV1 = Exact;\nexport const Nonce = Contracts.Import(\"Nonce\");\nexport type Nonce = Exact;\nexport const OrderActionV1 = Contracts.Import(\"OrderActionV1\");\nexport type OrderActionV1 = Exact;\nexport const OrderDatumV1 = Contracts.Import(\"OrderDatumV1\");\nexport type OrderDatumV1 = Exact;\nexport const OrderRedeemerV1 = Contracts.Import(\"OrderRedeemerV1\");\nexport type OrderRedeemerV1 = Exact;\nexport const Permissions = Contracts.Import(\"Permissions\");\nexport type Permissions = Exact;\nexport const ProtocolConfig = Contracts.Import(\"ProtocolConfig\");\nexport type ProtocolConfig = Exact;\nexport const ProtocolRedeemerV1 = Contracts.Import(\"ProtocolRedeemerV1\");\nexport type ProtocolRedeemerV1 = Exact;\nexport const ProxyDatumV1 = Contracts.Import(\"ProxyDatumV1\");\nexport type ProxyDatumV1 = Exact;\nexport const RegistryV1 = Contracts.Import(\"RegistryV1\");\nexport type RegistryV1 = Exact;\nexport const ReserveAsset = Contracts.Import(\"ReserveAsset\");\nexport type ReserveAsset = Exact;\nexport const SettingsV1 = Contracts.Import(\"SettingsV1\");\nexport type SettingsV1 = Exact;\nexport const SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage =\n Contracts.Import(\n \"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage\",\n );\nexport type SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage =\n Exact<\n typeof SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage\n >;\nexport const SignedPayload_v1_1_ProtocolRedeemerV1 = Contracts.Import(\n \"SignedPayload_v1_1_ProtocolRedeemerV1\",\n);\nexport type SignedPayload_v1_1_ProtocolRedeemerV1 = Exact<\n typeof SignedPayload_v1_1_ProtocolRedeemerV1\n>;\nexport const SignedRedeemer_v1_1_ExtraProtocolRedeemerV1 = Contracts.Import(\n \"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1\",\n);\nexport type SignedRedeemer_v1_1_ExtraProtocolRedeemerV1 = Exact<\n typeof SignedRedeemer_v1_1_ExtraProtocolRedeemerV1\n>;\nexport const StakeRequestV1 = Contracts.Import(\"StakeRequestV1\");\nexport type StakeRequestV1 = Exact;\nexport const StakingVaultRedeemerV1 = Contracts.Import(\n \"StakingVaultRedeemerV1\",\n);\nexport type StakingVaultRedeemerV1 = Exact;\nexport const TreasuryDatumV1 = Contracts.Import(\"TreasuryDatumV1\");\nexport type TreasuryDatumV1 = Exact;\nexport const TreasuryRequestV1 = Contracts.Import(\"TreasuryRequestV1\");\nexport type TreasuryRequestV1 = Exact;\nexport const VaultDatumV1 = Contracts.Import(\"VaultDatumV1\");\nexport type VaultDatumV1 = Exact;\nexport const YieldSplitAlpha = Contracts.Import(\"YieldSplitAlpha\");\nexport type YieldSplitAlpha = Exact;\n\nexport class SettingsProtocolSettingsProtocolSettingsSpend {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n gov: GovernanceConfig,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n : \"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021\",\n Type.Tuple([PolicyId, GovernanceConfig]),\n [proxyPolicyId, gov],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class SettingsProtocolSettingsProtocolSettingsWithdraw {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n gov: GovernanceConfig,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n : \"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021\",\n Type.Tuple([PolicyId, GovernanceConfig]),\n [proxyPolicyId, gov],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class SettingsProtocolSettingsProtocolSettingsPublish {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n gov: GovernanceConfig,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n : \"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021\",\n Type.Tuple([PolicyId, GovernanceConfig]),\n [proxyPolicyId, gov],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class SettingsProtocolSettingsProtocolSettingsElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n gov: GovernanceConfig,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241\"\n : \"590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021\",\n Type.Tuple([PolicyId, GovernanceConfig]),\n [proxyPolicyId, gov],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1DistributionOracleDistributionOracleWithdraw {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n oracleNftPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5927e80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a660089213265787065637420646174756d3a20446973747269627574696f6e4f7261636c65446174756d203d20646174756d5f6461746100168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022491b657870656374205b5f5d203d206f7261636c655f6f75747075747300168a998022495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488896600264653001300f00198079808000cdc3a4009300f00248889660026004601e6ea800e3300130133010375400723014301530150019ba54800246028602a003370e90002444446464b30010018cc004dc3a4005222598009803180c9baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026048007008803a042375a0030064090604200280f8dd700098100012042301e001407060346ea800e00280ba446466002002006446600600260040053016375400291114c004889660026014603a6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c08c0062b30013371290021811000c01a264b300130280048992cc004c0440062b30013025375400d009804204c8acc004c038006264b3001001804c4c96600200300a805402a264b3001302c003806402d0291bad00180520583029001409c604a6ea801a2b300130170018acc004c094dd500340260108132010811102220443023375400b007409460186044002810200c8120dd5000c01600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a0369112cc004c028c074dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0a400e2b300130113024375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002605e00713259800980c000c4c9660020030108992cc004006023011808c046264b30013033003809c0490301bae00140cc60600028170c0b0dd5005c566002602a00315980098161baa00b808403d02d403d0292052302a375401500e40b06eb800502f1816000a054375c00260560048160c0a400502718129baa0068042044804204c375c0028148c0980050241813001401600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a036911192cc004c02c006264b3001001801c4c9660020030048024012009132598009813001c01a00a8118dd7000a04c30230014084603e6ea80122b300130080018992cc00400600713259800800c01200900480244c966002604c007006802a046375c0028130c08c005021180f9baa00480120384070603a6ea800e44464b3001300b0018992cc00400600713259800800c0120090048992cc004c09800e00d005408c6eb40060088130c08c005021180f9baa0048acc004c0200062b3001301f3754009003801204080120384070603a6ea800d2222332298009112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c4c966002605a007159800980a98141baa0048992cc00400600f13259800800c4c9660020030098992cc0040062b300130310028acc004c064c0b0dd5001c4c96600200300b8992cc004006264b3001001806c4c96600200300e80744cc89660020030108992cc004006023011899912cc00400602713259800800c052029014899912cc00400602d13259800800c05e02f017899912cc00400603313259800800c06a03501a8992cc004c10800e2b3001302a303d375402113259800800c072264b300100180ec07603b1332259800800c07e264b30010018104082041132598009824001c5660020270218992cc00400604502281144cc89660020030248992cc00400604b025812c4c966002609a00715980080ac09a264b3001001813c09e04f1332259800800c0a6264b300100181540aa055132598009829001c66002045133035026225980080140ba264b300100181740ba264b3001001817c4c96600200303081840c20611332259800800c0ca264b30010018acc004c16800a3300100189803982d00440cd03a40cd05740ce067033819a0b6305800141586eb8004c15c009058182a800a0a6375800302e81720ac3053002414502b40bd02b413c6eb40060548290c13c00504d1bad001304e016813a09e304c015412902641286eb400604a8268c1280050481bad001304901481120943047013411502141146eb40060408240c1140050431bad001304400280ea08a30420014100607c6ea804203681da03681f8dd6800c069042181f800a07a375a002607c00501740fc607800281d0dd6800981d801405103c181c800a06e37580026070005011808a072303600140d06eb0004c0d400a01d00e40d860660028188c0cc00a01900c80640310341818800a05e302d375400700a40a900a40b900a805402a0148190c0bc00502d181780140220110088042060302d00140ac60526ea801200c813200c8150dd6000c01600a8168c0a80050281815001400e007003801a0563028001409860486ea800e002810a444b300130103023375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002605e00519800803466002003009804202680420168042058804402201100840c0605a0028158dd68009816001401502d1815000a050302a002801c00e00700340ac60500028130c090dd5001c005021488966002602060466ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c0d400e3300100c8cc00401201f00e406500e404500e40c86eb400601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a0429112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200300b805c02e26644b3001001806c4c96600200313259800800c03e264b30010018084042264b300130380038cc00403e330010048acc00400602313259800800c04a02501280944cc89660020030148992cc00400602b01580ac056264b3001303d00380bc05903a1bae00140f4607400281c0dd7000981c8012074303700140d50114071011405101140d46eb000602101040e0606a0028198c0d400a01d00e80740390361819800a062375a002606400500b40cc60600028170dd6800981780140210301816800a056375a002605800500540b460540028140c0a800a007003801c00d02b1814000a04c30243754007001408522259800980818119baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002606a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026074007014809a06e375c00281d0c0dc0050351bae001303600240dc6068002819201c80ca01c808a01c8190dd6000c03601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a042488888c966002602601b13259800800c07e264b30010018acc004c0b400a2b300130153028375400313259800800c086264b30010018992cc00400604713259800800c4c9660020030258992cc00400604d0268992cc004c0d000e2b3001301c302f375400d13259800800c0a2264b3001001814c0a626644b3001001815c4c96600200302c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944cc89660020030348992cc004006264b300100181b44c966002003159800982200144cc09c038896600200513302900d225980080146600200f19800802c566002606060866ea8062264b300100181e44c96600200313259800800c0fa264b30010018acc004c13000a26644b300130360018992cc00400608513259800800c10e087132598009828801c4cc0d000489660020050078992cc0040063300100189801182a001c11d02b411e08f047823a0aa3052002414104441386eb00060870434144609c0028260c128dd5002c566002606600313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a056823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260a20071330340012259800801401e264b30010018cc0040062600460a800704740b1047823c11e08e82a8c148009050411104e1bac001821c10d0511827000a098304a375400b15980099b8748018006264b300100182144c966002003043821c4cc89660020030458992cc0040062b3001305300289981b001912cc00400a2b3001303d3050375400713259800800c126264b3001001825412a0951332259800800c132264b3001001826c13609b13259800982d801c03e09c82c0dd6800c13505b182c000a0ac375a00260ae00504a416060aa0028298c144dd5001c12104e44c96600200319800800c4c008c15800e0928172093049824c125057182a00120a482320a0823411a08d046415060a20028278dd60009828001410e0868288c13800504c18251baa0058acc004cdc3a401000313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401400313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401800313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401c00313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a402000315980098251baa005801410504b4105047208e411c8239047208e411c82390470cc00400626605e03244b300100281244c96600200304282144c9660020030438992cc004006089044822411226644b300100182344c966002003159800982a001466002003130073054008823a068823a0a2823c11e08f047415460a40028280dd7000982880120a4304f00141346eb00060850424140609a004825a07e8148c11cdd5001c0fd04940fe07f03f81fa09a304a0014120609400503d81ec0f607a8258c12000504618221baa01881da08281da04c81da04c8992cc00400607903c81e44c8c00cc128010dd6800c0f104a1823801208a8992cc00400607503a81d44c8c00cc120010dd6800c0e90481822801208681ba08281bc0de06f037411460840028200c10800a06b03581ac0d50431820000a07c375a002607e0050324100607a00281d8dd6800981e00140bd03d181d000a0703758002607200502c8162074303700140d46eb0004c0d800a05302940dc60680028190c0c0dd5003409d02d409d0311bac00181340990341818800a05e3031002812409204902440c8605e0028168c0bc00a04502281140890301816800a05630293754003020409902040a902081040820408170c0ac00502918139baa0118acc004c040036264b300100180fc4c966002003159800981680146600200300381020108102054810408204102040b860560028148c09cdd5008c0790242048159800980798129baa010899912cc004c050c09cdd5000c4c8cc896600330013233001001323300100137566006605a6ea8078896600200314bd7044c8cc88cc88cc008008004896600200310038991981b1ba733036375200a6606c60660026606c606800297ae0330030033038002303600140d06eacc0c400cdd718170009980180198198011818800a05e2259800800c528456600266e3cdd718181bac30300010288a518998010011818800a05440b94a14a28142264b30013371064b3001301f302c375400313259800800c5660026034605a6ea8006264b3001001814c4c96600200313259800800c0ae264b300100181640b20591332259800800c0ba264b3001001817c0be05f13259800981d001c6600200f1375a6016606c6ea8c0e4c0d8dd5181c981b1baa303930363754013030405503040dc6eb400605e81d0c0dc0050351bad0013036002816206e303400140c8606800502a81540aa05481a8c0c800503018171baa001814205681440a205102840cc6060605a6ea8006290002054301b302c3754603260586ea8010dd6980098161baa302f302c3754605e60586ea801a2b3001323259800980b800c4cdc41bad3031302e37540046eb4c00cc0b8dd5181898171baa3031302e3754011159800980d000c528c528205640ac60586ea8004c0bcc0b0dd5181798161baa302f3030303030303030303030303030302c375403b1323259800800c09a2b300130320018a51813205e40bc64660020026eb0c074c0b8dd500f912cc004006297ae0899912cc0056600266ebcc0d0c0c4dd5001004456600266ebcdd319198008009bab301f3032375400644b30010018a5eb7bdb1822653001375c606600337566068003303800248896600266e452201000038acc004cdc7a441000038800c401503444cc0e4cdd81ba9003374c0046600c00c00281a0606c00281a0dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606c66ec0dd48179ba60034bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8019801c4cc0e8cdd81ba9033374c00e00b15980099b8f03300389981d19bb037520666e9801c00626607466ec0dd48019ba60023300600600140d481a8606e00281a8c8cc0040052f5bded8c044b300100189981a99bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0cc0066eb4c0d000660700049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981c99bb037520066ea0008cc0180180050342068181b000a06840b913375e604060626ea8008cdd2a40086606600a97ae08a5040b914a081722660660046600800800313300400400140b86064002606600281826002444b3001301b001880146600200700199b86002001400c81624466e0ccdc1001000a410112f5223371266e08dd698188011bad30313032001337046eb4c0c4004dd69818981900148cdc4240006eb4c0c0c0c40066e092080897a981798161baa302f302c375400c91111119199118119981b8079981b9811181a9baa3038303537540086606e6ea0cc896600260100051598009804000c56600266012004003130030018980180120688a9981aa492b6578706563742069735f76616c69645f726174696f28706f73745f726574656e74696f6e5f7969656c6429001640d115330354911c6578706563742069735f76616c69645f726174696f28666c6f6f7229001640d06eb0c090c0d4dd50024c004dc4a400137586044606a6ea80126eb4c02cc0d4dd50024dd6981c181c981c981c981c981c981a9baa00448888c96600260160091598009805800c5660026601800200910018991919911805998201ba83370066e08dd6982080400119b82375a6082006002660806ea0cdc100080125eb80dd6981f98200009bad303f304000630083303d375066e08dd6981f00099b814820225e8c966002600e00b15980099b890050048acc004cdc48022410112f513370000a6601e66e0401001566002600e00315980099b8900148202d2244e26464646464646466e04cdc019b813370066e04cdc019b810073370600c900219b8300548030cdc18022406066e0c00d20f0013370600490500599b830014838138cdc19980b000803a4101ec086602a00200c6602800200a6602600200866024002006660220020046602000200266e0c00520288a9981d2491b6578706563742073203c3d206d61785f737570706f727465645f73001640e5153303a4910d6578706563742073203e3d2030001640e5153303a4911565787065637420725f6d6178203c3d207363616c65001640e5153303a4911465787065637420725f6d6178203e3d2062617365001640e5153303a491106578706563742062617365203e3d2030001640e464b30013371090405a4489800c52080b489138800a0723370666e08c02cdd6981f000a4190026eb4c0f8c0fc004cc0f4dd418059bad303e303f0014bd70199118049981f1ba83370266e08dd6981f80180099b82375a607e00c0046607c6ea0cdc1001000a5eb80dd6981e981f0009bad303d303e00440dd1533038491206578706563742069735f76616c69645f726174696f287261775f7969656c6429001640dd15330384911d6578706563742069735f76616c69645f726174696f28687572646c6529001640dc646644b300130070028acc004cdc42400000313303e37500046607c6ea00052f5c1153303a490116657870656374207374616b65645f75736472203e2030001640e5153303a49124657870656374206e65745f64697374726962757461626c655f696e636f6d65203e3d2030001640e46eb4c0f4c0e8dd50009bad3027303a3754002607860726ea802097ae02332232598009811800c52f5c210100008101010044cc0e4dd419b8300300133039375066e0c0080052f5c081a0c96600266e200052000899b8148000006200281a0cc010008004dd6981b8009bad3037303800123370660086eb4c0dc004dd6981b981c000980300322a660549217a6578706563740a20202020202076616c69646974795f72616e67655f7374617274735f6265666f7265280a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d702c0a20202020202029001640a5153302a491696578706563740a20202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d70203e2070726576696f75735f6f7261636c655f74696d657374616d70280a20202020202020206f7261636c655f696e7075742c0a20202020202029001640a44605e60606060606000315330294913f657870656374206e6f5f6f7261636c655f746f6b656e735f6d696e7465642873656c662e6d696e742c206f7261636c655f6e66745f706f6c6963795f696429001640a0605860526ea8c058c0a4dd5000918169817181718171817000981598141baa0018a9981324815665787065637420536f6d65286f7261636c655f696e70757429203d0a20202020202066696e645f6f7261636c655f696e7075742873656c662e696e707574732c206f7261636c655f6e66745f706f6c6963795f696429001640946052604c6ea8040cc044dd6181498131baa01723010323322330020020012259800800c00e2646644b30013372291113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902a44cc014014c0c401102a1bae302a001375a6056002605a0028158c8c8cc004004dd5980b98151baa3017302a375400844b3001001801c4c8cc896600266e440a400a2b30013371e0520051001803205689980280298190022056375c60560026eacc0b0004c0b800502c0a5eb7bdb180520008a9981224813b657870656374205075626c6973685969656c644f7261636c652872656465656d657229203d206f7263686573747261746f725f72656465656d65720016408c22232598009807800c4c9660020030038992cc0040062b300130290028cc00400600b0044035004409900480240120088150c09c00502518119baa0048acc004c030006264b3001001801c4c96600200315980098148014566002602260486ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0b400a330010038cc0040060130084039008403900840a900880440220108170c0ac0050291815801401a00d00680320583029001409c604a6ea800600881120088132009004802401102a1813800a04a3023375400900240808100c084dd50019112cc004c038c084dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981500144c9660026026604c6ea8012264b3001001803c4c96600200313259800800c026264b30010018acc004c0bc00a330010038992cc004c060006264b300100180644c966002003159800981900144c966002603600313259800800c03e264b30010018acc004c0d400a33001001805c04101440410324042021010808206c303300140c4605e6ea800a2b300130180018992cc00400601f13259800800c042021010899912cc00400602513259800800c04e027013899912cc00400602b13259800800c05a02d0168992cc004c0f000e02501740e46eb400602c81e0c0e40050371bad0013038002809a072303600140d06eb4004c0d400a02081b0c0cc00503118179baa002807205840b0605a6ea800601a817a01b00d806c0350331818000a05c302c3754005159800980a800c56600260586ea800a00d00b40b500b40a48148c0a8dd5000c02900e402902c402a01500a8052060302d00140ac605a00500880440220108170c0ac00502918139baa0048032048132598009809800c566002604e6ea800a00f00640a11598009808000c4c9660020030078992cc0040060110088044022264b3001302e003805402502b1bae00140b860560028148c09cdd50014566002603200313259800800c01e264b3001302d002804c02102a1815800a052302737540050064090812102418129baa001802a04e802c01600b00540ac60500028130c0a000a007003801c00d0291813000a04830223754007001407c403a01d00e8072038332232598009802980c1baa0018980c9919bb0301d001301d301e0013758603860326ea80062a6602e9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164058646600200200644b30010018a60103d87a80008992cc004cdd7980d00099ba548010cc074cdd2a40046603a6ea40112f5c097ae0898049980e9ba73301d301a0013301d301b0014bd7025eb82266006006603e00480c0c07400501b1bab3019301a301a301a301a301a301a301a301a301a3016375400e6eb8c064c058dd54c004896600200314bd7044cc068c05cc06c004cc008008c07000501948896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901648888c8cc004004014896600200310058992cc004006266008604000400d1330053020002330030030014078604000280ea6eb0c00cc058dd5003a44446464646644a6603a66e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea406d220100132598009806180f9baa00189929980f99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980a18109baa0018992cc0040062b3001300f3022375400313259800800c076264b300100180f407a03d01e899912cc0040060411325980098160014401a0428148c0a80050281bae001302900240a8604e0028128c08cdd5000c071020407203901c80e2050302530223754003153302049013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016407c602060426ea8c038c084dd5000981198101baa0018a9980f24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640746601400c4646600200260066eacc038c084dd5180718109baa0022259800800c528456600266e3cdd7181280080f4528c4cc008008c09800501f2046300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c204a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f901f1bac3022002375a60400026466ec0dd418100009ba73021001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a604a003337149101023a200098008054c09800600a805100a181400144ca6002015302500199b8a489023a200098008054c098006600e66008008004805100a1814001204c3028001409466e29220102207d0000340886eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920443758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720483371666e000056600266e2000520148a40c11481b9024002200c33706002901019b8600148080cdc70020012042375c0068128dc5245022c200022323300100100322598009805800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407080e0c00c00c44646600200200644b30010018a6103d87a80008992cc004c010006260106603800297ae0899801801980f001202e301c00140688b201a180780098051baa0108a4d153300849011856616c696461746f722072657475726e65642066616c73650013656401c1\"\n : \"5914ad0101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae00248888888896600264653001300a00198051805800cdc3a4009300a0024888966002600460146ea800e33001300e300b37540072300f301030100019ba5480024601e6020003370e90004dc3a4005223233001001003223300300130020024888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260146603200297ae0899801801980d801202a3019001405d2259800980298099baa00289919192cc004c06c00a26464b3001300a0018acc004c064dd5001401a2c80d22b30013009001899192cc004c07c00a0111640706eb4c074004c064dd500145660026020003159800980c9baa00280345901a459017202e405c602e6ea8004c06800e2c80c0c966002602e00315980099b8948010c0580062d13007301600140551640606ea8c064004c064004c050dd500145901248966002600a60266ea800a264646644b3001301c003802c590191bad3019001375c6032004603200260286ea800a2c809244b30013005301337540051323232332259800980e801c4c966002601660326ea8006264646644b300130220038992cc004c04000626464b300130250028074590221bae3023001301f375400f1598009807800c566002603e6ea801e01916408116407480e8c074dd500345901f1bae301f001375c603e004603e00260346ea80062c80c0c0700162c80d0dd7180d000980d001180d000980c800980a1baa0028b202491192cc004c01800626464b3001301b0028024590181bae3019001301537540071598009802800c4c8c96600260360050048b2030375c6032002602a6ea800e2c809901318099baa00291192cc004c01800626464b3001301b0028024590181bad3019001301537540071598009802800c566002602a6ea800e00516405916404c8098c04cdd500124444453001332232598009806180d1baa0018980d9919bb0301f001301f30200013758603c60366ea80062c80c8c8cc00400400c896600200314c103d87a80008992cc004cdd7980e00099ba548010cc07ccdd2a40046603e6ea40112f5c097ae0898081980f9ba73301f301c0013301f301d0014bd7025eb82266006006604200480d8c07c00501d1bab301b301c301c301c301c301c301c301c301c301c3018375401c6eb8c06cc060dd51919192cc004c030c068dd5000c4c966002602660366ea8006264b3001300e301c3754003132323322598009812801c40162c8110c088004dd718110011811000980e9baa0018b2036301f301c3754003164068601e60366ea8c034c06cdd5180f180d9baa0018b2032330083758601860346ea80408c8cc004004c00cdd59807180e1baa300e301c375400444b30010018a508acc004cdc79bae302000101a8a518998010011810800a0364078600200244b30010018a5eb822660386032603a00266004004603c00280da4464b3001300c0018992cc004c080006266010603e00200716407460366ea800e2b3001300b0018992cc004c080006264b3001300e301c3754003132323259800981200144cc034c08c00c4cc03400401e2c8108c088004c088004c074dd5000c5901b180f800c5901d180d9baa0038b2032406460326ea800a44b3001300b30193754005132323259800981080144cc89660026020603c6ea800a2646464b3001302600289980618128018992cc004c050006264b30013028001899192cc004c05c006264b3001302b0018998089815000804c5902818131baa0028acc004c05800626464653001375a6058003375a6058007375a60580049112cc004c0c001201d1640b4302c001302b001302637540051640908120c090dd50009813800c5902518119baa0028acc004c04c0062b3001302337540050058b20488b2042408460426ea80062c8118c090004c090004c07cdd500145901d18100018992cc004c03c0062b3001301e37540050058b203e8acc004c03800626464b30013024002803c590211bae3022001301e3754005159800980a800c4c8c96600260480050078b20423022001301e375400516407080e101c180e1baa0018b203c301f001301f001301a37540051640609114c0048966002601c60386ea800a2646464b300130240028992cc004c048c080dd5000c4c8c966002604e00313259800980a98119baa00189919191919194c004dd69816800cdd61816802cdd618168024dd69816801cdd69816801244444b300130330068992cc004c084c0bcdd5000c4c8c8cc89660026070007132332259800981d801c4c8cc8966002607c007133021303d01813302901b225980080140822646644b300130430018998151821000898021821802c590401bae304000130410013758607e00481ea2c81d8dd6981d8009bad303b00c303b00b8b2070375a60700026eb4c0e0028c0e00262c81a8dd6981a8009bad30350023035001303037540031640b860640171640c0302d001302c001302b001302a001302900130243754003164088604c005164090604c00260426ea80062c80f8c08c00e2c8108dd618110009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8cc8966002604c007133008302500513300e0020068b20463023001375a604600460460026044002603a6ea800a2c80da44b3001300e301c37540051323232323298009bad30250019bad30250049bad3025003981280124444b3001302a00589980618148048998090008054590270c094004c090004c08c004c088004c074dd500145901b48966002601c60386ea800a264646464646530013758604c003375a604c00b375a604c009375a604c007302600248888966002605800d13300e302b00b1330140011323322598009817801c03e2c8160dd718160009bae302c006302c0058b205218130009812800981200098118009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8c8ca60026eb0c0940066eb4c0940126eb4c09400e604a00491112cc004c0a801626601860520122660240022646644b3001302d003806c5902a1bae302a001375c605400a605400916409c3025001302400130230013022001301d375400516406d301a3754006911111192cc004c04c00a264b300130270018992cc004c054c08cdd5000c4c8c8c8cc8966002605a00713259800980d98149baa00189919191919194c004c0cc0066eb0c0cc0166eb4c0cc0126eb4c0cc00e6066004911112cc004c0e401a2660486eb0c0e002c8966002005133026006225980080144cc0880144cc088024566002605460706ea80462646464b3001304000289919912cc004c0c000a264b300130440018998179bac304300122598008014012266046608a00426002608c004821a2c8208c0fcdd5001c566002605e005132598009822000c4cc0bcdd61821800912cc00400a0091330233045002130013046002410d164104607e6ea800e2b300130360028992cc004c11000626605e6eb0c10c0048966002005004899812182280109800982300120868b2082303f375400715980099b874801800a2646464b300130460028998189bac304500322598008014566002606a60866ea800e264646644b3001304c0038054590491bad3049001375a6092004609200260886ea800e2c821226604c608e004260026090004822a2c8218c110004c110004c0fcdd5001c56600266e1d20080028992cc004c11000626605e6eb0c10c0048966002005004899812982280109800982300120868b2082303f375400715980099b874802800a264b300130440018998179bac30430012259800801401226604a608a00426002608c004821a2c8208c0fcdd5001c56600266e1d200c0028992cc004c11000626605e6eb0c10c0048966002005004899813182280109800982300120868b2082303f375400715980099b874803800a264b300130440018998179bac30430012259800801401226604c608a00426002608c004821a2c8208c0fcdd5001c56600266e1d20100028acc004c0fcdd5001c0062c82022c81e903d207a40f481e903d207a40f481e8c0f0dd500089981200109981600b112cc00400a03d1323322598009823000c4cc0b4c1140044c010c1180162c8218dd7182180098220009bac30420024100607e0071640f4607c002607c00260726ea80462c81ba2646004607c0066eb4c0f000903a44c8c008c0f000cdd6981d00120708b206c1819800981900098188009818000981780098151baa0018b2050302c0058b20543758605400260540046054002605200260486ea80062c8110c0980062c8120c088dd500545660026024005132598009813800c4cc020c09800400a2c8120c088dd50054590202040159800980898101baa009899912cc004c050c088dd5000c4c8cc89660033001323300100132330010013756600660506ea8078896600200314bd7044c8cc88cc88cc00800800489660020031003899198189ba733031375200a66062605c00266062605e00297ae0330030033033002303100140bc6eacc0b000cdd718148009980180198170011816000a0542259800800c528456600266e3cdd718159bac302b0010248a518998010011816000a04c40a54a14a28122264b30013371064b3001301f3027375400313259800980d18141baa001899191919912cc004c0c800e266026606200a26eb4c020c0b8dd5181898171baa3031302e37546062605c6ea801a2c8178dd698178009bad302f002302f001302e0013029375400316409c605660506ea800629000204c301b302737546032604e6ea8010dd6980098139baa302a302737546054604e6ea801a2b3001323259800980c800c4cdc41bad302c302937540046eb4c00cc0a4dd5181618149baa302c30293754011159800980d000c528c528204e409c604e6ea8004c0a8c09cdd5181518139baa302a302b302b302b302b302b302b302b3027375403b13259800981619198008009bac301d3029375403e44b30010018a5eb8226644b30015980099baf302f302c375400401115980099baf374c64660020026eacc07cc0b4dd5001912cc004006297adef6c608994c004dd71817000cdd59817800cc0cc0092225980099b91489000038acc004cdc7a441000038800c401503044cc0d0cdd81ba9003374c0046600c00c002818060620028178dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606266ec0dd48159ba60034bd6f7b63044ca60026eb8c0bc0066eacc0c000660680049112cc004cdc8017801c4cc0d4cdd81ba902f374c00e00b15980099b8f02f00389981a99bb0375205e6e9801c00626606a66ec0dd48019ba60023300600600140c4818860640028180c8cc0040052f5bded8c044b300100189981819bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0b80066eb4c0bc00660660049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981a19bb037520066ea0008cc01801800503020601818800a05e40a913375e604060586ea8008cdd2a40086605c00a97ae08a5040a914a0815226605c0046600800800313300400400140a8605a002605c002815a29462c814a6002444b3001301b001880146600200700199b86002001400c81424466e0ccdc1001000a410112f5223371266e08dd698160011bad302c302d001337046eb4c0b0004dd69816181680148cdc4240006eb4c0acc0b00066e092080897a981518139baa302a3027375400c91111119199118119981900799819181118181baa303330303754008660646ea0cc896600260100051598009804000c56600266012004003130030018980180120608b20608b20603758604860606ea801260026e2520009bac302230303754009375a601660606ea80126eb4c0ccc0d0c0d0c0d0c0d0c0d0c0c0dd50022444464b3001300b0048acc004c02c0062b30013300c0010048800c4c8c8cc88c02ccc0ecdd419b80337046eb4c0f0020008cdc11bad303c0030013303b375066e080040092f5c06eb4c0e8c0ec004dd6981d181d80318041981c1ba8337046eb4c0e4004cdc0a410112f464b300130070058acc004cdc4802802456600266e240112080897a899b800053300f3370200800ab300130070018acc004cdc4800a41016912271323232323232323370266e00cdc099b803370266e00cdc080399b8300648010cdc1802a401866e0c01120303370600690780099b83002482802ccdc1800a41c09c66e0ccc05800401d2080f604330150010063301400100533013001004330120010033301100100233010001001337060029014459035459035459035459035459035192cc004cdc424101691226003148202d2244e200281a8cdc199b82300b375a60720029064009bad3039303a00133038375060166eb4c0e4c0e80052f5c066446012660726ea0cdc099b82375a607400600266e08dd6981d0030011981c9ba83370400400297ae0375a607060720026eb4c0e0c0e40110334590334590331919912cc004c01c00a2b3001337109000000c4cc0e4dd40011981c9ba80014bd704590354590351bad3038303537540026eb4c09cc0d4dd5000981b981a1baa00825eb808cc88c966002604600314bd70810100008101010044cc0d0dd419b8300300133034375066e0c0080052f5c08180c96600266e200052000899b814800000620028180cc010008004dd698190009bad3032303300123370660086eb4c0c8004dd698191819800980300322c812a2c81288c0a8c0acc0acc0ac0062c8120c09cc090dd5180b18121baa001230283029302930293029001302630233754003164084604860426ea8024cc03cdd6181218109baa01723012323322330020020012259800800c00e2646644b300133722910113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902644cc014014c0b00110261bae3025001375a604c00260500028130c8c8cc004004dd5980b98129baa30173025375400844b3001001801c4c8cc896600266e4409400a2b30013371e04a0051001803204e8998028029816802204e375c604c0026eacc09c004c0a40050270a5eb7bdb180520008b203e08b2012180500098029baa00a8a4d13656400c1\",\n Type.Tuple([PolicyId, PolicyId]),\n [proxyPolicyId, oracleNftPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1DistributionOracleDistributionOracleElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n oracleNftPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5927e80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a660089213265787065637420646174756d3a20446973747269627574696f6e4f7261636c65446174756d203d20646174756d5f6461746100168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022491b657870656374205b5f5d203d206f7261636c655f6f75747075747300168a998022495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488896600264653001300f00198079808000cdc3a4009300f00248889660026004601e6ea800e3300130133010375400723014301530150019ba54800246028602a003370e90002444446464b30010018cc004dc3a4005222598009803180c9baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026048007008803a042375a0030064090604200280f8dd700098100012042301e001407060346ea800e00280ba446466002002006446600600260040053016375400291114c004889660026014603a6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c08c0062b30013371290021811000c01a264b300130280048992cc004c0440062b30013025375400d009804204c8acc004c038006264b3001001804c4c96600200300a805402a264b3001302c003806402d0291bad00180520583029001409c604a6ea801a2b300130170018acc004c094dd500340260108132010811102220443023375400b007409460186044002810200c8120dd5000c01600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a0369112cc004c028c074dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0a400e2b300130113024375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002605e00713259800980c000c4c9660020030108992cc004006023011808c046264b30013033003809c0490301bae00140cc60600028170c0b0dd5005c566002602a00315980098161baa00b808403d02d403d0292052302a375401500e40b06eb800502f1816000a054375c00260560048160c0a400502718129baa0068042044804204c375c0028148c0980050241813001401600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a036911192cc004c02c006264b3001001801c4c9660020030048024012009132598009813001c01a00a8118dd7000a04c30230014084603e6ea80122b300130080018992cc00400600713259800800c01200900480244c966002604c007006802a046375c0028130c08c005021180f9baa00480120384070603a6ea800e44464b3001300b0018992cc00400600713259800800c0120090048992cc004c09800e00d005408c6eb40060088130c08c005021180f9baa0048acc004c0200062b3001301f3754009003801204080120384070603a6ea800d2222332298009112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c4c966002605a007159800980a98141baa0048992cc00400600f13259800800c4c9660020030098992cc0040062b300130310028acc004c064c0b0dd5001c4c96600200300b8992cc004006264b3001001806c4c96600200300e80744cc89660020030108992cc004006023011899912cc00400602713259800800c052029014899912cc00400602d13259800800c05e02f017899912cc00400603313259800800c06a03501a8992cc004c10800e2b3001302a303d375402113259800800c072264b300100180ec07603b1332259800800c07e264b30010018104082041132598009824001c5660020270218992cc00400604502281144cc89660020030248992cc00400604b025812c4c966002609a00715980080ac09a264b3001001813c09e04f1332259800800c0a6264b300100181540aa055132598009829001c66002045133035026225980080140ba264b300100181740ba264b3001001817c4c96600200303081840c20611332259800800c0ca264b30010018acc004c16800a3300100189803982d00440cd03a40cd05740ce067033819a0b6305800141586eb8004c15c009058182a800a0a6375800302e81720ac3053002414502b40bd02b413c6eb40060548290c13c00504d1bad001304e016813a09e304c015412902641286eb400604a8268c1280050481bad001304901481120943047013411502141146eb40060408240c1140050431bad001304400280ea08a30420014100607c6ea804203681da03681f8dd6800c069042181f800a07a375a002607c00501740fc607800281d0dd6800981d801405103c181c800a06e37580026070005011808a072303600140d06eb0004c0d400a01d00e40d860660028188c0cc00a01900c80640310341818800a05e302d375400700a40a900a40b900a805402a0148190c0bc00502d181780140220110088042060302d00140ac60526ea801200c813200c8150dd6000c01600a8168c0a80050281815001400e007003801a0563028001409860486ea800e002810a444b300130103023375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002605e00519800803466002003009804202680420168042058804402201100840c0605a0028158dd68009816001401502d1815000a050302a002801c00e00700340ac60500028130c090dd5001c005021488966002602060466ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c0d400e3300100c8cc00401201f00e406500e404500e40c86eb400601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a0429112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200300b805c02e26644b3001001806c4c96600200313259800800c03e264b30010018084042264b300130380038cc00403e330010048acc00400602313259800800c04a02501280944cc89660020030148992cc00400602b01580ac056264b3001303d00380bc05903a1bae00140f4607400281c0dd7000981c8012074303700140d50114071011405101140d46eb000602101040e0606a0028198c0d400a01d00e80740390361819800a062375a002606400500b40cc60600028170dd6800981780140210301816800a056375a002605800500540b460540028140c0a800a007003801c00d02b1814000a04c30243754007001408522259800980818119baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002606a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026074007014809a06e375c00281d0c0dc0050351bae001303600240dc6068002819201c80ca01c808a01c8190dd6000c03601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a042488888c966002602601b13259800800c07e264b30010018acc004c0b400a2b300130153028375400313259800800c086264b30010018992cc00400604713259800800c4c9660020030258992cc00400604d0268992cc004c0d000e2b3001301c302f375400d13259800800c0a2264b3001001814c0a626644b3001001815c4c96600200302c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944cc89660020030348992cc004006264b300100181b44c966002003159800982200144cc09c038896600200513302900d225980080146600200f19800802c566002606060866ea8062264b300100181e44c96600200313259800800c0fa264b30010018acc004c13000a26644b300130360018992cc00400608513259800800c10e087132598009828801c4cc0d000489660020050078992cc0040063300100189801182a001c11d02b411e08f047823a0aa3052002414104441386eb00060870434144609c0028260c128dd5002c566002606600313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a056823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260a20071330340012259800801401e264b30010018cc0040062600460a800704740b1047823c11e08e82a8c148009050411104e1bac001821c10d0511827000a098304a375400b15980099b8748018006264b300100182144c966002003043821c4cc89660020030458992cc0040062b3001305300289981b001912cc00400a2b3001303d3050375400713259800800c126264b3001001825412a0951332259800800c132264b3001001826c13609b13259800982d801c03e09c82c0dd6800c13505b182c000a0ac375a00260ae00504a416060aa0028298c144dd5001c12104e44c96600200319800800c4c008c15800e0928172093049824c125057182a00120a482320a0823411a08d046415060a20028278dd60009828001410e0868288c13800504c18251baa0058acc004cdc3a401000313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401400313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401800313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401c00313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a402000315980098251baa005801410504b4105047208e411c8239047208e411c82390470cc00400626605e03244b300100281244c96600200304282144c9660020030438992cc004006089044822411226644b300100182344c966002003159800982a001466002003130073054008823a068823a0a2823c11e08f047415460a40028280dd7000982880120a4304f00141346eb00060850424140609a004825a07e8148c11cdd5001c0fd04940fe07f03f81fa09a304a0014120609400503d81ec0f607a8258c12000504618221baa01881da08281da04c81da04c8992cc00400607903c81e44c8c00cc128010dd6800c0f104a1823801208a8992cc00400607503a81d44c8c00cc120010dd6800c0e90481822801208681ba08281bc0de06f037411460840028200c10800a06b03581ac0d50431820000a07c375a002607e0050324100607a00281d8dd6800981e00140bd03d181d000a0703758002607200502c8162074303700140d46eb0004c0d800a05302940dc60680028190c0c0dd5003409d02d409d0311bac00181340990341818800a05e3031002812409204902440c8605e0028168c0bc00a04502281140890301816800a05630293754003020409902040a902081040820408170c0ac00502918139baa0118acc004c040036264b300100180fc4c966002003159800981680146600200300381020108102054810408204102040b860560028148c09cdd5008c0790242048159800980798129baa010899912cc004c050c09cdd5000c4c8cc896600330013233001001323300100137566006605a6ea8078896600200314bd7044c8cc88cc88cc008008004896600200310038991981b1ba733036375200a6606c60660026606c606800297ae0330030033038002303600140d06eacc0c400cdd718170009980180198198011818800a05e2259800800c528456600266e3cdd718181bac30300010288a518998010011818800a05440b94a14a28142264b30013371064b3001301f302c375400313259800800c5660026034605a6ea8006264b3001001814c4c96600200313259800800c0ae264b300100181640b20591332259800800c0ba264b3001001817c0be05f13259800981d001c6600200f1375a6016606c6ea8c0e4c0d8dd5181c981b1baa303930363754013030405503040dc6eb400605e81d0c0dc0050351bad0013036002816206e303400140c8606800502a81540aa05481a8c0c800503018171baa001814205681440a205102840cc6060605a6ea8006290002054301b302c3754603260586ea8010dd6980098161baa302f302c3754605e60586ea801a2b3001323259800980b800c4cdc41bad3031302e37540046eb4c00cc0b8dd5181898171baa3031302e3754011159800980d000c528c528205640ac60586ea8004c0bcc0b0dd5181798161baa302f3030303030303030303030303030302c375403b1323259800800c09a2b300130320018a51813205e40bc64660020026eb0c074c0b8dd500f912cc004006297ae0899912cc0056600266ebcc0d0c0c4dd5001004456600266ebcdd319198008009bab301f3032375400644b30010018a5eb7bdb1822653001375c606600337566068003303800248896600266e452201000038acc004cdc7a441000038800c401503444cc0e4cdd81ba9003374c0046600c00c00281a0606c00281a0dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606c66ec0dd48179ba60034bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8019801c4cc0e8cdd81ba9033374c00e00b15980099b8f03300389981d19bb037520666e9801c00626607466ec0dd48019ba60023300600600140d481a8606e00281a8c8cc0040052f5bded8c044b300100189981a99bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0cc0066eb4c0d000660700049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981c99bb037520066ea0008cc0180180050342068181b000a06840b913375e604060626ea8008cdd2a40086606600a97ae08a5040b914a081722660660046600800800313300400400140b86064002606600281826002444b3001301b001880146600200700199b86002001400c81624466e0ccdc1001000a410112f5223371266e08dd698188011bad30313032001337046eb4c0c4004dd69818981900148cdc4240006eb4c0c0c0c40066e092080897a981798161baa302f302c375400c91111119199118119981b8079981b9811181a9baa3038303537540086606e6ea0cc896600260100051598009804000c56600266012004003130030018980180120688a9981aa492b6578706563742069735f76616c69645f726174696f28706f73745f726574656e74696f6e5f7969656c6429001640d115330354911c6578706563742069735f76616c69645f726174696f28666c6f6f7229001640d06eb0c090c0d4dd50024c004dc4a400137586044606a6ea80126eb4c02cc0d4dd50024dd6981c181c981c981c981c981c981a9baa00448888c96600260160091598009805800c5660026601800200910018991919911805998201ba83370066e08dd6982080400119b82375a6082006002660806ea0cdc100080125eb80dd6981f98200009bad303f304000630083303d375066e08dd6981f00099b814820225e8c966002600e00b15980099b890050048acc004cdc48022410112f513370000a6601e66e0401001566002600e00315980099b8900148202d2244e26464646464646466e04cdc019b813370066e04cdc019b810073370600c900219b8300548030cdc18022406066e0c00d20f0013370600490500599b830014838138cdc19980b000803a4101ec086602a00200c6602800200a6602600200866024002006660220020046602000200266e0c00520288a9981d2491b6578706563742073203c3d206d61785f737570706f727465645f73001640e5153303a4910d6578706563742073203e3d2030001640e5153303a4911565787065637420725f6d6178203c3d207363616c65001640e5153303a4911465787065637420725f6d6178203e3d2062617365001640e5153303a491106578706563742062617365203e3d2030001640e464b30013371090405a4489800c52080b489138800a0723370666e08c02cdd6981f000a4190026eb4c0f8c0fc004cc0f4dd418059bad303e303f0014bd70199118049981f1ba83370266e08dd6981f80180099b82375a607e00c0046607c6ea0cdc1001000a5eb80dd6981e981f0009bad303d303e00440dd1533038491206578706563742069735f76616c69645f726174696f287261775f7969656c6429001640dd15330384911d6578706563742069735f76616c69645f726174696f28687572646c6529001640dc646644b300130070028acc004cdc42400000313303e37500046607c6ea00052f5c1153303a490116657870656374207374616b65645f75736472203e2030001640e5153303a49124657870656374206e65745f64697374726962757461626c655f696e636f6d65203e3d2030001640e46eb4c0f4c0e8dd50009bad3027303a3754002607860726ea802097ae02332232598009811800c52f5c210100008101010044cc0e4dd419b8300300133039375066e0c0080052f5c081a0c96600266e200052000899b8148000006200281a0cc010008004dd6981b8009bad3037303800123370660086eb4c0dc004dd6981b981c000980300322a660549217a6578706563740a20202020202076616c69646974795f72616e67655f7374617274735f6265666f7265280a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d702c0a20202020202029001640a5153302a491696578706563740a20202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d70203e2070726576696f75735f6f7261636c655f74696d657374616d70280a20202020202020206f7261636c655f696e7075742c0a20202020202029001640a44605e60606060606000315330294913f657870656374206e6f5f6f7261636c655f746f6b656e735f6d696e7465642873656c662e6d696e742c206f7261636c655f6e66745f706f6c6963795f696429001640a0605860526ea8c058c0a4dd5000918169817181718171817000981598141baa0018a9981324815665787065637420536f6d65286f7261636c655f696e70757429203d0a20202020202066696e645f6f7261636c655f696e7075742873656c662e696e707574732c206f7261636c655f6e66745f706f6c6963795f696429001640946052604c6ea8040cc044dd6181498131baa01723010323322330020020012259800800c00e2646644b30013372291113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902a44cc014014c0c401102a1bae302a001375a6056002605a0028158c8c8cc004004dd5980b98151baa3017302a375400844b3001001801c4c8cc896600266e440a400a2b30013371e0520051001803205689980280298190022056375c60560026eacc0b0004c0b800502c0a5eb7bdb180520008a9981224813b657870656374205075626c6973685969656c644f7261636c652872656465656d657229203d206f7263686573747261746f725f72656465656d65720016408c22232598009807800c4c9660020030038992cc0040062b300130290028cc00400600b0044035004409900480240120088150c09c00502518119baa0048acc004c030006264b3001001801c4c96600200315980098148014566002602260486ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0b400a330010038cc0040060130084039008403900840a900880440220108170c0ac0050291815801401a00d00680320583029001409c604a6ea800600881120088132009004802401102a1813800a04a3023375400900240808100c084dd50019112cc004c038c084dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981500144c9660026026604c6ea8012264b3001001803c4c96600200313259800800c026264b30010018acc004c0bc00a330010038992cc004c060006264b300100180644c966002003159800981900144c966002603600313259800800c03e264b30010018acc004c0d400a33001001805c04101440410324042021010808206c303300140c4605e6ea800a2b300130180018992cc00400601f13259800800c042021010899912cc00400602513259800800c04e027013899912cc00400602b13259800800c05a02d0168992cc004c0f000e02501740e46eb400602c81e0c0e40050371bad0013038002809a072303600140d06eb4004c0d400a02081b0c0cc00503118179baa002807205840b0605a6ea800601a817a01b00d806c0350331818000a05c302c3754005159800980a800c56600260586ea800a00d00b40b500b40a48148c0a8dd5000c02900e402902c402a01500a8052060302d00140ac605a00500880440220108170c0ac00502918139baa0048032048132598009809800c566002604e6ea800a00f00640a11598009808000c4c9660020030078992cc0040060110088044022264b3001302e003805402502b1bae00140b860560028148c09cdd50014566002603200313259800800c01e264b3001302d002804c02102a1815800a052302737540050064090812102418129baa001802a04e802c01600b00540ac60500028130c0a000a007003801c00d0291813000a04830223754007001407c403a01d00e8072038332232598009802980c1baa0018980c9919bb0301d001301d301e0013758603860326ea80062a6602e9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164058646600200200644b30010018a60103d87a80008992cc004cdd7980d00099ba548010cc074cdd2a40046603a6ea40112f5c097ae0898049980e9ba73301d301a0013301d301b0014bd7025eb82266006006603e00480c0c07400501b1bab3019301a301a301a301a301a301a301a301a301a3016375400e6eb8c064c058dd54c004896600200314bd7044cc068c05cc06c004cc008008c07000501948896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901648888c8cc004004014896600200310058992cc004006266008604000400d1330053020002330030030014078604000280ea6eb0c00cc058dd5003a44446464646644a6603a66e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea406d220100132598009806180f9baa00189929980f99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980a18109baa0018992cc0040062b3001300f3022375400313259800800c076264b300100180f407a03d01e899912cc0040060411325980098160014401a0428148c0a80050281bae001302900240a8604e0028128c08cdd5000c071020407203901c80e2050302530223754003153302049013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016407c602060426ea8c038c084dd5000981198101baa0018a9980f24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640746601400c4646600200260066eacc038c084dd5180718109baa0022259800800c528456600266e3cdd7181280080f4528c4cc008008c09800501f2046300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c204a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f901f1bac3022002375a60400026466ec0dd418100009ba73021001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a604a003337149101023a200098008054c09800600a805100a181400144ca6002015302500199b8a489023a200098008054c098006600e66008008004805100a1814001204c3028001409466e29220102207d0000340886eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920443758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720483371666e000056600266e2000520148a40c11481b9024002200c33706002901019b8600148080cdc70020012042375c0068128dc5245022c200022323300100100322598009805800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407080e0c00c00c44646600200200644b30010018a6103d87a80008992cc004c010006260106603800297ae0899801801980f001202e301c00140688b201a180780098051baa0108a4d153300849011856616c696461746f722072657475726e65642066616c73650013656401c1\"\n : \"5914ad0101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae00248888888896600264653001300a00198051805800cdc3a4009300a0024888966002600460146ea800e33001300e300b37540072300f301030100019ba5480024601e6020003370e90004dc3a4005223233001001003223300300130020024888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260146603200297ae0899801801980d801202a3019001405d2259800980298099baa00289919192cc004c06c00a26464b3001300a0018acc004c064dd5001401a2c80d22b30013009001899192cc004c07c00a0111640706eb4c074004c064dd500145660026020003159800980c9baa00280345901a459017202e405c602e6ea8004c06800e2c80c0c966002602e00315980099b8948010c0580062d13007301600140551640606ea8c064004c064004c050dd500145901248966002600a60266ea800a264646644b3001301c003802c590191bad3019001375c6032004603200260286ea800a2c809244b30013005301337540051323232332259800980e801c4c966002601660326ea8006264646644b300130220038992cc004c04000626464b300130250028074590221bae3023001301f375400f1598009807800c566002603e6ea801e01916408116407480e8c074dd500345901f1bae301f001375c603e004603e00260346ea80062c80c0c0700162c80d0dd7180d000980d001180d000980c800980a1baa0028b202491192cc004c01800626464b3001301b0028024590181bae3019001301537540071598009802800c4c8c96600260360050048b2030375c6032002602a6ea800e2c809901318099baa00291192cc004c01800626464b3001301b0028024590181bad3019001301537540071598009802800c566002602a6ea800e00516405916404c8098c04cdd500124444453001332232598009806180d1baa0018980d9919bb0301f001301f30200013758603c60366ea80062c80c8c8cc00400400c896600200314c103d87a80008992cc004cdd7980e00099ba548010cc07ccdd2a40046603e6ea40112f5c097ae0898081980f9ba73301f301c0013301f301d0014bd7025eb82266006006604200480d8c07c00501d1bab301b301c301c301c301c301c301c301c301c301c3018375401c6eb8c06cc060dd51919192cc004c030c068dd5000c4c966002602660366ea8006264b3001300e301c3754003132323322598009812801c40162c8110c088004dd718110011811000980e9baa0018b2036301f301c3754003164068601e60366ea8c034c06cdd5180f180d9baa0018b2032330083758601860346ea80408c8cc004004c00cdd59807180e1baa300e301c375400444b30010018a508acc004cdc79bae302000101a8a518998010011810800a0364078600200244b30010018a5eb822660386032603a00266004004603c00280da4464b3001300c0018992cc004c080006266010603e00200716407460366ea800e2b3001300b0018992cc004c080006264b3001300e301c3754003132323259800981200144cc034c08c00c4cc03400401e2c8108c088004c088004c074dd5000c5901b180f800c5901d180d9baa0038b2032406460326ea800a44b3001300b30193754005132323259800981080144cc89660026020603c6ea800a2646464b3001302600289980618128018992cc004c050006264b30013028001899192cc004c05c006264b3001302b0018998089815000804c5902818131baa0028acc004c05800626464653001375a6058003375a6058007375a60580049112cc004c0c001201d1640b4302c001302b001302637540051640908120c090dd50009813800c5902518119baa0028acc004c04c0062b3001302337540050058b20488b2042408460426ea80062c8118c090004c090004c07cdd500145901d18100018992cc004c03c0062b3001301e37540050058b203e8acc004c03800626464b30013024002803c590211bae3022001301e3754005159800980a800c4c8c96600260480050078b20423022001301e375400516407080e101c180e1baa0018b203c301f001301f001301a37540051640609114c0048966002601c60386ea800a2646464b300130240028992cc004c048c080dd5000c4c8c966002604e00313259800980a98119baa00189919191919194c004dd69816800cdd61816802cdd618168024dd69816801cdd69816801244444b300130330068992cc004c084c0bcdd5000c4c8c8cc89660026070007132332259800981d801c4c8cc8966002607c007133021303d01813302901b225980080140822646644b300130430018998151821000898021821802c590401bae304000130410013758607e00481ea2c81d8dd6981d8009bad303b00c303b00b8b2070375a60700026eb4c0e0028c0e00262c81a8dd6981a8009bad30350023035001303037540031640b860640171640c0302d001302c001302b001302a001302900130243754003164088604c005164090604c00260426ea80062c80f8c08c00e2c8108dd618110009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8cc8966002604c007133008302500513300e0020068b20463023001375a604600460460026044002603a6ea800a2c80da44b3001300e301c37540051323232323298009bad30250019bad30250049bad3025003981280124444b3001302a00589980618148048998090008054590270c094004c090004c08c004c088004c074dd500145901b48966002601c60386ea800a264646464646530013758604c003375a604c00b375a604c009375a604c007302600248888966002605800d13300e302b00b1330140011323322598009817801c03e2c8160dd718160009bae302c006302c0058b205218130009812800981200098118009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8c8ca60026eb0c0940066eb4c0940126eb4c09400e604a00491112cc004c0a801626601860520122660240022646644b3001302d003806c5902a1bae302a001375c605400a605400916409c3025001302400130230013022001301d375400516406d301a3754006911111192cc004c04c00a264b300130270018992cc004c054c08cdd5000c4c8c8c8cc8966002605a00713259800980d98149baa00189919191919194c004c0cc0066eb0c0cc0166eb4c0cc0126eb4c0cc00e6066004911112cc004c0e401a2660486eb0c0e002c8966002005133026006225980080144cc0880144cc088024566002605460706ea80462646464b3001304000289919912cc004c0c000a264b300130440018998179bac304300122598008014012266046608a00426002608c004821a2c8208c0fcdd5001c566002605e005132598009822000c4cc0bcdd61821800912cc00400a0091330233045002130013046002410d164104607e6ea800e2b300130360028992cc004c11000626605e6eb0c10c0048966002005004899812182280109800982300120868b2082303f375400715980099b874801800a2646464b300130460028998189bac304500322598008014566002606a60866ea800e264646644b3001304c0038054590491bad3049001375a6092004609200260886ea800e2c821226604c608e004260026090004822a2c8218c110004c110004c0fcdd5001c56600266e1d20080028992cc004c11000626605e6eb0c10c0048966002005004899812982280109800982300120868b2082303f375400715980099b874802800a264b300130440018998179bac30430012259800801401226604a608a00426002608c004821a2c8208c0fcdd5001c56600266e1d200c0028992cc004c11000626605e6eb0c10c0048966002005004899813182280109800982300120868b2082303f375400715980099b874803800a264b300130440018998179bac30430012259800801401226604c608a00426002608c004821a2c8208c0fcdd5001c56600266e1d20100028acc004c0fcdd5001c0062c82022c81e903d207a40f481e903d207a40f481e8c0f0dd500089981200109981600b112cc00400a03d1323322598009823000c4cc0b4c1140044c010c1180162c8218dd7182180098220009bac30420024100607e0071640f4607c002607c00260726ea80462c81ba2646004607c0066eb4c0f000903a44c8c008c0f000cdd6981d00120708b206c1819800981900098188009818000981780098151baa0018b2050302c0058b20543758605400260540046054002605200260486ea80062c8110c0980062c8120c088dd500545660026024005132598009813800c4cc020c09800400a2c8120c088dd50054590202040159800980898101baa009899912cc004c050c088dd5000c4c8cc89660033001323300100132330010013756600660506ea8078896600200314bd7044c8cc88cc88cc00800800489660020031003899198189ba733031375200a66062605c00266062605e00297ae0330030033033002303100140bc6eacc0b000cdd718148009980180198170011816000a0542259800800c528456600266e3cdd718159bac302b0010248a518998010011816000a04c40a54a14a28122264b30013371064b3001301f3027375400313259800980d18141baa001899191919912cc004c0c800e266026606200a26eb4c020c0b8dd5181898171baa3031302e37546062605c6ea801a2c8178dd698178009bad302f002302f001302e0013029375400316409c605660506ea800629000204c301b302737546032604e6ea8010dd6980098139baa302a302737546054604e6ea801a2b3001323259800980c800c4cdc41bad302c302937540046eb4c00cc0a4dd5181618149baa302c30293754011159800980d000c528c528204e409c604e6ea8004c0a8c09cdd5181518139baa302a302b302b302b302b302b302b302b3027375403b13259800981619198008009bac301d3029375403e44b30010018a5eb8226644b30015980099baf302f302c375400401115980099baf374c64660020026eacc07cc0b4dd5001912cc004006297adef6c608994c004dd71817000cdd59817800cc0cc0092225980099b91489000038acc004cdc7a441000038800c401503044cc0d0cdd81ba9003374c0046600c00c002818060620028178dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606266ec0dd48159ba60034bd6f7b63044ca60026eb8c0bc0066eacc0c000660680049112cc004cdc8017801c4cc0d4cdd81ba902f374c00e00b15980099b8f02f00389981a99bb0375205e6e9801c00626606a66ec0dd48019ba60023300600600140c4818860640028180c8cc0040052f5bded8c044b300100189981819bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0b80066eb4c0bc00660660049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981a19bb037520066ea0008cc01801800503020601818800a05e40a913375e604060586ea8008cdd2a40086605c00a97ae08a5040a914a0815226605c0046600800800313300400400140a8605a002605c002815a29462c814a6002444b3001301b001880146600200700199b86002001400c81424466e0ccdc1001000a410112f5223371266e08dd698160011bad302c302d001337046eb4c0b0004dd69816181680148cdc4240006eb4c0acc0b00066e092080897a981518139baa302a3027375400c91111119199118119981900799819181118181baa303330303754008660646ea0cc896600260100051598009804000c56600266012004003130030018980180120608b20608b20603758604860606ea801260026e2520009bac302230303754009375a601660606ea80126eb4c0ccc0d0c0d0c0d0c0d0c0d0c0c0dd50022444464b3001300b0048acc004c02c0062b30013300c0010048800c4c8c8cc88c02ccc0ecdd419b80337046eb4c0f0020008cdc11bad303c0030013303b375066e080040092f5c06eb4c0e8c0ec004dd6981d181d80318041981c1ba8337046eb4c0e4004cdc0a410112f464b300130070058acc004cdc4802802456600266e240112080897a899b800053300f3370200800ab300130070018acc004cdc4800a41016912271323232323232323370266e00cdc099b803370266e00cdc080399b8300648010cdc1802a401866e0c01120303370600690780099b83002482802ccdc1800a41c09c66e0ccc05800401d2080f604330150010063301400100533013001004330120010033301100100233010001001337060029014459035459035459035459035459035192cc004cdc424101691226003148202d2244e200281a8cdc199b82300b375a60720029064009bad3039303a00133038375060166eb4c0e4c0e80052f5c066446012660726ea0cdc099b82375a607400600266e08dd6981d0030011981c9ba83370400400297ae0375a607060720026eb4c0e0c0e40110334590334590331919912cc004c01c00a2b3001337109000000c4cc0e4dd40011981c9ba80014bd704590354590351bad3038303537540026eb4c09cc0d4dd5000981b981a1baa00825eb808cc88c966002604600314bd70810100008101010044cc0d0dd419b8300300133034375066e0c0080052f5c08180c96600266e200052000899b814800000620028180cc010008004dd698190009bad3032303300123370660086eb4c0c8004dd698191819800980300322c812a2c81288c0a8c0acc0acc0ac0062c8120c09cc090dd5180b18121baa001230283029302930293029001302630233754003164084604860426ea8024cc03cdd6181218109baa01723012323322330020020012259800800c00e2646644b300133722910113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902644cc014014c0b00110261bae3025001375a604c00260500028130c8c8cc004004dd5980b98129baa30173025375400844b3001001801c4c8cc896600266e4409400a2b30013371e04a0051001803204e8998028029816802204e375c604c0026eacc09c004c0a40050270a5eb7bdb180520008b203e08b2012180500098029baa00a8a4d13656400c1\",\n Type.Tuple([PolicyId, PolicyId]),\n [proxyPolicyId, oracleNftPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1OrderOrderSpend {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5919070101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00168a998022494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d657256310016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b30010078999119912cc004c00c0062b3001301b375401700280720388acc004c0240062b3001301b375401700280720388acc004c0100062b3001301b375401700280720388072030406080c0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800e446466002002006446600600260040052301d301e301e0019112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003203291111919800800802912cc004006200b13259800800c4cc010c08c00801a26600a6046004660060060028108c08c0050204dc0240032259800800c52f5c113301d301a301e00133002002301f00140712301d301e001911919800800801912cc00400629422b30013371e6eb8c08000400e2946266004004604200280d101e4c060dd5004c8c074c078c078c078c078c078c07800644646600200200644b30010018a508acc004cdd7801980e1810000c528c4cc008008c08400501a203c4888888888888a600244646600200200644b30010018a6103d87a80008992cc004c010006260246605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002602a00313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d3754007159800980d800c4c9660020030068992cc00400600f0078992cc004c0d000e26602a00244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130160018992cc00400600d13259800800c01e00f13259800981a001c4cc05400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981b801c4cc060004896600200500a8992cc0040063300100d800c4c008c0e800d00d403a01d00e8072076303800240d900b40d06eb000601500a40dc60680028190dd68009819801401d0341818800a05e302d375400715980099b8748020006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260680070058042062375a00300740d060620028178c0b4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014c024026600c00c91114c00488cc0180088cdd7981818169baa0010029112cc004c054c0b0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018acc004c0dc00a2b3001301b3032375400b13259800800c022264b30010018992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c566002609600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c6600200313259800981818239baa0188992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f027899912cc00400605313259800800c0aa05502a81544cc896600200302c8992cc0040062b3001305d0028992cc004c108006264b3001001817c4c96600200303081840c2061132598009830801c05a06282f0dd7000a0c2305e001417060b46ea800a2b300130480018acc004c168dd5001404e05c82da05c82b9057182c1baa001816a0b4816c0b605b02d417860b600282c8dd7000982d00120b6305800141586eb8004c15c009058182a800a0a6375c00260a800482a8c1480050501bae00130510024148609e0028268dd70009827001209e304c001412860906ea80620388228566002605e608c6ea8056264b300100180e44c96600200301d80ec4cc896600200301f8992cc0040062b30013050002899818801912cc00400a2b30013036304d375400713259800800c08e264b30010018992cc00400604b13259800800c56600260ac00519800801c4c966002607600313259800800c0a2264b30010018acc004c16400a264b3001303e0018992cc00400605713259800800c56600260b800519800800c0b605881f205882ca05902c81640b105d182d000a0b0305637540051598009822000c4c96600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944c96600260c6007034819a0c0375a003032418c60c000282f0dd6800982f80140bd060182e800a0b6375a00260b800502c417460b400282c0c158dd500140a905320a6305437540030294159029814c0a605282d0c15c00505518299baa0028acc004c1040062b300130533754005028813a0a8813a0a0414060a26ea800604c81c204c829a04d0268134099057182a000a0a430540028124092049024415460a40028280c138dd5001c08904b44c966002003159800981b98271baa0018992cc00400604913259800800c09604b1332259800800c09e264b300100181440a20511332259800800c0aa264b3001001815c0ae05713259800982e001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c2061132598009830801c4c040c18404606282f0dd7000a0c2305e00141706eb8004c17402105e182d803a0b281620b2375a00302b417060b200282b8dd6800982c00140a1059182b000a0a8375800260aa005025812a0ac30530014144609e6ea80060468262047023811c08d0541828801209e810209a81040820410204144609c0028260dd60009826801407603a8270c12c00504918239baa01580da08880da04080da04080da04080da04080da04080da04080da04080da04080da04080da04080da09080dc06e03701b413060920028238c12400a03301980cc06504a1823800a08a304700280bc05e02f0174120608a0028218c11400a02b01580ac0550461821800a0823043002809c04e0270134110608200281f8c10400a023011808c045042181f800a07a303f002807c03e01f00f4100607a00281d8c0f400a01b00d806c03503e181d800a072303b002805c02e01700b40f0607200281b8c0e400a013009804c02503a181b800a06a3033375400b00740c100740d1007803c01e00e81c0c0d4005033181a801401600b005802a06c303300140c46066005003801c00e00681a0c0c400502f18169baa003800a054911919800800801912cc004c058006266e2922010130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340ac815a446600c00446601660086eacc030c0b4dd5180618169baa00100248888c8c966002603001b1332259800980d18189baa0018992cc004c084c0c8dd5000c56600266e3cdd7181b18199baa001375c602e60666ea8c048c0ccdd5180918199baa0038999129981999b9649010d63726564656e7469616c3a3a200037326600c0029101001330100020013756601e60666ea8080cdd2a40046606a6ea40b92f5c1153303149013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640c102940c0606a60646ea8c0d4c0c8dd5180898191baa30353032375400302740bc64b30010018acc004c064c0c0dd5000c4c96600200302c8992cc00400605b02d816c0b626644b3001001817c4c966002003159800981d00146600200310068182016818206e81840c206103040ec607000281b0dd7000981b8012070303500140cc60626ea8006056817205702b815c0ad036192cc004c064c0c0dd5000c4c966002603660626ea80062606a60646ea80060548178c054c0c4dd5180818189baa30343031375400302840b8660066eb0c03cc0c0dd500e816198031bac30333030375403a037159800980f006c5660026030605e6ea806a33001303330303754606660606ea806a6eb0c0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecc0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecdd5980618181baa01d48888c8cc00400401488c966002603e003133015006375c6074606e6ea800a2b30013025001899198008009bac303b3038375400644b30010018a518acc004cc014014c0f0006266004004607a00314a081b103a45660026040003132330010013758607660706ea800c896600200314a115980099802802981e000c528c4cc008008c0f400503620748acc004cdc3a400c003132337126eb4c0ec004c8cc004004dd6181e181e801112cc0040062900044cc896600266010010005133700002900144005039181e80099801001181f000a0763037375400515980099b87480200062646644b30013028303937540051598009814181c9baa303d303e003899b89375a607a60746ea8008006266e20dd6981e981d1baa00200140dd14a081b8c0ec004dd6981d981c1baa00330373754602c606e6ea80162b30013370e9005000c4c8cc8966002605060726ea800a2b3001302830393754607a607c0071337120026eb4c0f4c0e8dd500144cdc40009bad303d303a375400481ba2941037181d8009bad303b30383754006606e6ea8c0e8c0dcdd5002c4cc048010cdd2a4004660726074606e6ea80092f5c081a1034206840d081a1034181a9baa001409102d45660026030605e6ea806a330013033303037540353253302f3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40b522010013259800980d18189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980e98199baa0018992cc0040062b3001301d3034375400313259800800c0be264b300100181840c2061030899912cc00400606513259800981f0014401a06681d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0b903240ba05d02e817207430373034375400302c40c4602e60666ea8c048c0ccdd5000981a98191baa001814a05e3300400102d3758601e60606ea80766600c6eb0c0ccc0c0dd500e80da444b3001301b3032375400313232598009811981a1baa0018acc004c96600330013371e6eb8c0e4c0d8dd5002818d28528a0668a51899912cc004006330010018cc004cdc79bae301c30383754602e60706ea800400e942945035400900d400a005002801207a14a2602a606c6ea80150331bae30383035375400313259800980f181a9baa0018992cc004c07cc0d8dd5000c4c9660026040606e6ea8006264b30013375e607860726ea8004c080cc0ecc080cc0ecc0f0c0e4dd500225eb80cc0ed300103d87a80004bd704660026eacc060c0e4dd5000cc060c0e4dd5180c181c9baa0069119b89337020026eb4c0f8c0fcc0fcc0fcc0ecdd50140012444b30010028a508994c004c966002604c607a6ea800626eb4c0f8c104dd59820981f1baa0018a400081d8c1000066ebcc100c1040066eac00d22259800800c566002600400d13300500348002294103d44c96600266ebcc1000053010140008acc004cc018010dd6982098221bab3041001898019ba630450028a5040f91598009980300224001130030078a5040f881f0c10c0050410ca60020030049119820801198209ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0fc0066eacc10000660880069112cc004cdc8a441000038acc004cdc7a441000038998029815198229ba60024bd70000c4cc015300103d87a8000006410119800803c006446600e0046608e66ec0dd48029ba6004001401c82006084004820229422942294104122941036181d981c1baa0018a9981b2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640d465300130010019bad303b303837540053758603860706ea80952225980099b8800248002298103d87a800089980180080120701112cc00400a298103d87a80008acc004c0880062604266078607a00497ae08cc00400e607c005301b001400c81b903b454cc0d524014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640d06530010019bac303a30373754049480010011112cc00400a298103d87a80008acc004cdd7981e00100344c080cc0ecdd4000a5eb8233001003981e8014cdc0000a4004801903620748a9981a248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640cc6070606a6ea80162a6606692019d6578706563740a2020202020202020202076315f315f7263315f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c902b40c8606e60686ea8c0dcc0d0dd51809981a1baa00130363033375400302840c0812205a40b48168c004004888c9660020071323233223300a00233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051018206e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81890311bac3034002375a60640026466ec0dd418190009ba73033001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606e003337149101023a200098008054c0e000600a805100a181d00144ca6002015303700199b8a489023a200098008054c0e0006600e66008008004805100a181d0012070303a00140dc66e29220102207d0000340d06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901520683758007133006375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40d866e2ccdc0000acc004cdc4000a402914818229037206c004401866e0c00520203370c002901019b8e00400240cc6eb800d0371b8a4881022c2000060306ea8024dc3a40086e1d2000805402a01500a407060300026030603200260286ea800e2c80886026002601c6ea8052293454cc0312411856616c696461746f722072657475726e65642066616c73650013656402c1\"\n : \"5915d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e9520009180a980b180b000c896600200314bd7044cc054c048c058004cc008008c05c00501448c054c05800644646600200200644b30010018a508acc004cdc79bae30180010038a51899801001180c800a02640592232330010010032233003001300200298081baa00a9180a980b180b180b180b180b180b000c88c8cc00400400c896600200314a115980099baf003301430180018a51899801001180c800a0264059370e90034dc3a4011370e9005244444444444466446644b3001301400a8992cc004c054c084dd5000c4c966002603460446ea80062b30013371e6eb8c098c08cdd50009bae301130233754601e60466ea8c03cc08cdd519914c004c00800a2003223259800980d800c4c8c966002605c0050048b2056375c605800260506ea800e2b3001301f001899192cc004c0b800a0091640ac6eb8c0b0004c0a0dd5001c59026204c302637540049112cc004c06cc09cdd500244c8cc8966002605e00313259800980f98159baa001899191919912cc004c0d400e264b30013025303137540031323232323232323232329800981f800cc0fc026607e011303f007981f8034c0fc016607e009303f003981f8012444444444b3001304900a89981018240098998100040998100038998100030998100028998100020998100018998100010998100008998100048992cc004c0e4c114dd500b44c8c8c8c8ca60026eb8c138006609e003375c609c00b375c609c009375c609c007375c609c0049111112cc004c15401626464b30013046001899192cc004c16400a0211641586eb8c15c004c14cdd50014566002609400315980098299baa00280745905445905120a23051375400260a800b164148304e001304d001304c001304b0013046375402d1641102b300130383044375402d132323259800982600144cc0c8dd61825801912cc00400a2b3001303d30493754007132323259800982880144cc098c14000c4c9660026082003132598009829800c4c8c966002608800313259800982b000c4cc0acc1540040b22c8298c144dd500145660026090003132323298009bad30570019bad30570039bad305700248896600260b60090318b20b0182b800982b00098289baa0028b209e413c609e6ea8004c1480062c8280c138dd50014566002608a00315980098271baa00281445904f45904c2098304c3754003164138609e002609e00260946ea800e2c8242264b3001303e304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590491825000982500098229baa0168b20868b208c181f800981f000981e800981e000981d800981d000981c800981c000981b80098191baa0018b206030340058b20643032001303200230320013031001302c37540031640a8605c0031640b06eb8c0b0004c0b4004c0a0dd50024590260888c96600260340031323259800981680140122c8150dd7181580098139baa0038acc004c078006264b3001302c0018998091bac302b0012259800801401633001007981680144c004c0b800900720568b205230273754007159800980d800c4c96600260580031330123758605600244b3001002802c6600200f302d002898009817001200e40ad1640a4604e6ea800e2b3001300d00189919912cc004c0b80062660286eb0c0b400489660020050078cc004026605e0051300130300024024816a2c8158dd69815800981600098139baa0038acc004c03000626464b3001302d00280245902a1bad302b001302737540071598009805800c4c8c966002605a0050048b2054375a6056002604e6ea800e2b30013370e9006000c4c8c966002605a0050048b2054375c6056002604e6ea800e2c8129025204a40948129025204a3025375400464b300130173023375400313259800980c98121baa0018981418129baa0018b2046301230243754602060486ea8c09cc090dd5000c59022198019bac300f3023375403204113300a3756601660466ea8064cdd2a40046604a6ea407d2f5c1164085164084604a60446ea8c094c088dd5180718111baa302530223754003164080660046eb0c090c084dd500b80945660026030015159800980a18101baa0118cc004c090c084dd5181218109baa0119bac3024302530253025302530253025302530253021375402f302430253025302530253025302530253021375402f3756601260426ea805d22223233001001005223259800980d800c4cc04c018dd7181598141baa0028acc004c07c006264660020026eb0c0b0c0a4dd5001912cc00400629462b300133005005302d0018998010011817000c528205040ad159800980e000c4c8cc004004dd6181618149baa0032259800800c52845660026600a00a605a00314a3133002002302e00140a0815a2b3001300e00189919b89375a605800264660020026eb0c0b4c0b8008896600200314800226644b300133008008002899b800014800a20028158c0b8004cc008008c0bc00502c18141baa0028acc004c0340062646644b30013022302a3754005159800981118151baa302e302f003899b89375a605c60566ea8008006266e20dd6981718159baa00200140a514a08148c0b0004dd6981618149baa00330283754602860506ea80162b3001300c00189919912cc004c088c0a8dd50014566002604460546ea8c0b8c0bc00e266e24004dd6981718159baa002899b88001375a605c60566ea800902945282052302c001375a605860526ea800cc0a0dd5181598141baa00589980780219ba548008cc0a8c0acc0a0dd500125eb81026204c40988131026204c302637540028b203e8acc004c050c080dd5008c4c966002602a60426ea800626464b3001301b30233754003159800cc004888c966002603600313259800800c00e264b300100180240120090048992cc004c0bc00e00d00540b06eb800502f1816000a05430283754009159800980f800c4c9660020030038992cc0040060090048024012264b3001302f003803401502c1bae00140bc60580028150c0a0dd50024009026204c30263754007222329800800c0120068008888c966002603c00313259800800c01a264b3001001803c01e00f0078992cc004c0c800e00b00840bc6eb80050321817800a05a302b37540071598009811000c4c9660020030068992cc00400600f0078992cc004c0c800e26603000244b3001002803c4c96600200319800805400626004606a006805201700b805c02d03618198012062804205e3758003007803a064302f00140b460566ea800e2b3001301f0018992cc00400600d13259800800c01e00f132598009819001c4cc06000489660020050078992cc0040063300100a800c4c008c0d400d00a402e01700b805a06c303300240c500840bc6eb000600f00740c8605e0028168c0acdd5001c566002602200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303500389980d800912cc00400a01513259800800c6600201b00189801181c001a01a807403a01d00e40e4606c00481a20168190dd6000c02a01481a8c0c80050301bad0013031002803a064302f00140b460566ea800e2b300130100018992cc00400600d13259800800c01e00f0078992cc004c0c800e00b00840bc6eb400600e8190c0bc00502d18159baa0038acc004c03c006264b300100180344c966002003007803c01e264b30013032003802c02102f1bad001803a064302f00140b460566ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013032003802c02102f1bae00140c8605e0028168c0acdd5001c015029205240a48149029205240a460526ea800a64b300130183024375400313259800980d18129baa0018992cc004c068c098dd5000c4c8c8cc8966002605e00710058b2058302c001375c60580046058002604e6ea80062c8128c0a4c098dd5000c59024180998129baa3011302537546050604a6ea80062c8118cc010dd6180818121baa01a0219bae30273024375400291112cc006600266e3cdd7181598141baa002024a50a51409914a31332259800800c4c966002603c60546ea800a264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800800c566002606a005159800981218181baa0058992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c4c96600200301c8992cc0040062b300130490028cc00404e330010118cc00403e3300100d8cc00402e330010098cc00401e330010058cc00400e330010018992cc004c0e4c114dd500c44c96600200301f8992cc004006041020810408226644b300100181144c966002003023811c08e0471332259800800c096264b3001001813409a04d026899912cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81640b226644b300100181744c966002003159800982d80144c966002609600313259800800c0c6264b300100181940ca0650328992cc004c17c00e02d03341706eb800505f182e000a0b4305837540051598009827800c56600260b06ea800a0270304165030415882b0c158dd5000c0bd05840be05f02f817a0b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270dd7000982780120a0304d001412c6eb8004c13000904d1825000a0903046375403101e41102b300130383044375402b13259800800c07a264b300100180fc07e26644b3001001810c4c966002003159800982700144cc0d000c8966002005159800981f98259baa0038992cc00400604b13259800800c4c9660020030278992cc0040062b300130540028cc00400e264b300130440018992cc00400605513259800800c56600260ae005132598009823800c4c96600200302d8992cc0040062b3001305a0028cc00400605902e40c902e415d02e81740ba05c82d8c160005056182a1baa0028acc004c12c006264b3001001816c4c96600200302e81740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d2264b30013061003819c0d505e1bad00181a20c2305e00141706eb4004c17400a06282f0c16c0050591bad001305a00281720b63058001415860a86ea800a058829105218291baa001815a0a8815c0ae05702b416060aa0028298c144dd50014566002609000315980098289baa002813c0a505240a504f209e304f375400302840b1028414502881440a205082a8c1480050501829001409a04d02681320a63050001413860986ea800e0488252264b30010018acc004c100c130dd5000c4c9660020030268992cc00400604f027899912cc00400605313259800800c0aa05502a899912cc00400605913259800800c0b605b02d8992cc004c16800e2b300100781744c96600200302f817c0be05f1332259800800c0c6264b300100181940ca0650328992cc004c17c00e2602060be02303341706eb800505f182e000a0b4375c00260b601082e0c16401d05740b90571bad001816a0b4305700141546eb4004c15800a05482b8c1500050521bac0013053002813c09d0541828800a09e304d3754003025412d025812c09604a8290c13c00904d408904b408a045022811209e304c00141286eb0004c12c00a03f01f413060920028238c114dd500ac07504340750204075020407502040750204075020407502040750204075020407502040750204075046407603b01d80ea09430470014114608e00501b80dc06e0368240c1140050431822801406603301980ca08c30430014104608600501780bc05e02e8220c10400503f1820801405602b01580aa084303f00140f4607e005013809c04e0268200c0f400503b181e8014046023011808a07c303b00140e4607600500f807c03e01e81e0c0e4005037181c801403601b00d806a074303700140d4606e00500b805c02e01681c0c0d400503318189baa005804a05e804a064804c02601300940d860660028188c0cc00a00f007803c01d0341818800a05e3031002802c01600b00540c8605e0028168c0acdd5001400d0290cc004cdc79bae3018302a3754602c60546ea800400e942945028400a005002801205e14a2602860506ea80090262264b300130183024375400313259800980c98129baa0018992cc004c068c098dd5000c4c96600266ebcc0acc0a0dd5000980b99815180b99815181598141baa0044bd701981526103d87a80004bd704660026eacc050c0a0dd5000cc050c0a0dd5180a18141baa0069119b89337020026eb4c0b4c0b8c0b8c0b8c0a8dd50100012444b30010028a508994c004c966002604060586ea800626eb4c0b4c0c0dd5981818169baa0018a40008158c0bc0066ebcc0bcc0c00066eac00d22259800800c566002600400d13300500348002294102d44c96600266ebcc0bc0053010140008acc004cc018010dd6981818199bab3030001898019ba630340028a5040b91598009980300224001130030078a5040b88170c0c80050300ca60020030049119818001198181ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0b80066eacc0bc00660660069112cc004cdc8a441000038acc004cdc7a4410000389980298109981a1ba60024bd70000c4cc015300103d87a800000640c119800803c006446600e0046606c66ec0dd48029ba6004001401c81806062004817a29422942294103022941026181518139baa0018b204a3298009800800cdd6981518139baa0029bac30153027375403a9112cc004cdc40012400114c103d87a800089980180080120501112cc00400a298103d87a80008acc004c0700062603066056605800497ae08cc00400e605a005337000029000a006409c81522c8120ca600200337586052604c6ea807290002002222598008014530103d87a80008acc004cdd7981580100344c05ccc0a8dd4000a5eb823300100398160014cdc0000a4004801902620528b2046302730243754604e60486ea80522c81122c8110c098c08cdd5181318119baa300f30233754002604a60446ea80062c8100cc008dd6181218109baa0170128b203e407c80f888cc0100088cdd7981298111baa001002223300400223300d30043756601c60446ea8c038c088dd5000801111919800800801912cc0040062980103d87a80008992cc004c010006260226604800297ae0899801801981300120403024001408860140143012004301230130044590090c028004c014dd5005c52689b2b20061\",\n Type.Tuple([PolicyId, ScriptHash]),\n [proxyPolicyId, protocolScripthash],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1OrderOrderElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n protocolScripthash: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5919070101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00168a998022494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d657256310016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b30010078999119912cc004c00c0062b3001301b375401700280720388acc004c0240062b3001301b375401700280720388acc004c0100062b3001301b375401700280720388072030406080c0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800e446466002002006446600600260040052301d301e301e0019112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003203291111919800800802912cc004006200b13259800800c4cc010c08c00801a26600a6046004660060060028108c08c0050204dc0240032259800800c52f5c113301d301a301e00133002002301f00140712301d301e001911919800800801912cc00400629422b30013371e6eb8c08000400e2946266004004604200280d101e4c060dd5004c8c074c078c078c078c078c078c07800644646600200200644b30010018a508acc004cdd7801980e1810000c528c4cc008008c08400501a203c4888888888888a600244646600200200644b30010018a6103d87a80008992cc004c010006260246605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002602a00313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d3754007159800980d800c4c9660020030068992cc00400600f0078992cc004c0d000e26602a00244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130160018992cc00400600d13259800800c01e00f13259800981a001c4cc05400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981b801c4cc060004896600200500a8992cc0040063300100d800c4c008c0e800d00d403a01d00e8072076303800240d900b40d06eb000601500a40dc60680028190dd68009819801401d0341818800a05e302d375400715980099b8748020006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260680070058042062375a00300740d060620028178c0b4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014c024026600c00c91114c00488cc0180088cdd7981818169baa0010029112cc004c054c0b0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018acc004c0dc00a2b3001301b3032375400b13259800800c022264b30010018992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c566002609600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c6600200313259800981818239baa0188992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f027899912cc00400605313259800800c0aa05502a81544cc896600200302c8992cc0040062b3001305d0028992cc004c108006264b3001001817c4c96600200303081840c2061132598009830801c05a06282f0dd7000a0c2305e001417060b46ea800a2b300130480018acc004c168dd5001404e05c82da05c82b9057182c1baa001816a0b4816c0b605b02d417860b600282c8dd7000982d00120b6305800141586eb8004c15c009058182a800a0a6375c00260a800482a8c1480050501bae00130510024148609e0028268dd70009827001209e304c001412860906ea80620388228566002605e608c6ea8056264b300100180e44c96600200301d80ec4cc896600200301f8992cc0040062b30013050002899818801912cc00400a2b30013036304d375400713259800800c08e264b30010018992cc00400604b13259800800c56600260ac00519800801c4c966002607600313259800800c0a2264b30010018acc004c16400a264b3001303e0018992cc00400605713259800800c56600260b800519800800c0b605881f205882ca05902c81640b105d182d000a0b0305637540051598009822000c4c96600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944c96600260c6007034819a0c0375a003032418c60c000282f0dd6800982f80140bd060182e800a0b6375a00260b800502c417460b400282c0c158dd500140a905320a6305437540030294159029814c0a605282d0c15c00505518299baa0028acc004c1040062b300130533754005028813a0a8813a0a0414060a26ea800604c81c204c829a04d0268134099057182a000a0a430540028124092049024415460a40028280c138dd5001c08904b44c966002003159800981b98271baa0018992cc00400604913259800800c09604b1332259800800c09e264b300100181440a20511332259800800c0aa264b3001001815c0ae05713259800982e001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c2061132598009830801c4c040c18404606282f0dd7000a0c2305e00141706eb8004c17402105e182d803a0b281620b2375a00302b417060b200282b8dd6800982c00140a1059182b000a0a8375800260aa005025812a0ac30530014144609e6ea80060468262047023811c08d0541828801209e810209a81040820410204144609c0028260dd60009826801407603a8270c12c00504918239baa01580da08880da04080da04080da04080da04080da04080da04080da04080da04080da04080da04080da09080dc06e03701b413060920028238c12400a03301980cc06504a1823800a08a304700280bc05e02f0174120608a0028218c11400a02b01580ac0550461821800a0823043002809c04e0270134110608200281f8c10400a023011808c045042181f800a07a303f002807c03e01f00f4100607a00281d8c0f400a01b00d806c03503e181d800a072303b002805c02e01700b40f0607200281b8c0e400a013009804c02503a181b800a06a3033375400b00740c100740d1007803c01e00e81c0c0d4005033181a801401600b005802a06c303300140c46066005003801c00e00681a0c0c400502f18169baa003800a054911919800800801912cc004c058006266e2922010130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340ac815a446600c00446601660086eacc030c0b4dd5180618169baa00100248888c8c966002603001b1332259800980d18189baa0018992cc004c084c0c8dd5000c56600266e3cdd7181b18199baa001375c602e60666ea8c048c0ccdd5180918199baa0038999129981999b9649010d63726564656e7469616c3a3a200037326600c0029101001330100020013756601e60666ea8080cdd2a40046606a6ea40b92f5c1153303149013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640c102940c0606a60646ea8c0d4c0c8dd5180898191baa30353032375400302740bc64b30010018acc004c064c0c0dd5000c4c96600200302c8992cc00400605b02d816c0b626644b3001001817c4c966002003159800981d00146600200310068182016818206e81840c206103040ec607000281b0dd7000981b8012070303500140cc60626ea8006056817205702b815c0ad036192cc004c064c0c0dd5000c4c966002603660626ea80062606a60646ea80060548178c054c0c4dd5180818189baa30343031375400302840b8660066eb0c03cc0c0dd500e816198031bac30333030375403a037159800980f006c5660026030605e6ea806a33001303330303754606660606ea806a6eb0c0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecc0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecdd5980618181baa01d48888c8cc00400401488c966002603e003133015006375c6074606e6ea800a2b30013025001899198008009bac303b3038375400644b30010018a518acc004cc014014c0f0006266004004607a00314a081b103a45660026040003132330010013758607660706ea800c896600200314a115980099802802981e000c528c4cc008008c0f400503620748acc004cdc3a400c003132337126eb4c0ec004c8cc004004dd6181e181e801112cc0040062900044cc896600266010010005133700002900144005039181e80099801001181f000a0763037375400515980099b87480200062646644b30013028303937540051598009814181c9baa303d303e003899b89375a607a60746ea8008006266e20dd6981e981d1baa00200140dd14a081b8c0ec004dd6981d981c1baa00330373754602c606e6ea80162b30013370e9005000c4c8cc8966002605060726ea800a2b3001302830393754607a607c0071337120026eb4c0f4c0e8dd500144cdc40009bad303d303a375400481ba2941037181d8009bad303b30383754006606e6ea8c0e8c0dcdd5002c4cc048010cdd2a4004660726074606e6ea80092f5c081a1034206840d081a1034181a9baa001409102d45660026030605e6ea806a330013033303037540353253302f3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40b522010013259800980d18189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980e98199baa0018992cc0040062b3001301d3034375400313259800800c0be264b300100181840c2061030899912cc00400606513259800981f0014401a06681d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0b903240ba05d02e817207430373034375400302c40c4602e60666ea8c048c0ccdd5000981a98191baa001814a05e3300400102d3758601e60606ea80766600c6eb0c0ccc0c0dd500e80da444b3001301b3032375400313232598009811981a1baa0018acc004c96600330013371e6eb8c0e4c0d8dd5002818d28528a0668a51899912cc004006330010018cc004cdc79bae301c30383754602e60706ea800400e942945035400900d400a005002801207a14a2602a606c6ea80150331bae30383035375400313259800980f181a9baa0018992cc004c07cc0d8dd5000c4c9660026040606e6ea8006264b30013375e607860726ea8004c080cc0ecc080cc0ecc0f0c0e4dd500225eb80cc0ed300103d87a80004bd704660026eacc060c0e4dd5000cc060c0e4dd5180c181c9baa0069119b89337020026eb4c0f8c0fcc0fcc0fcc0ecdd50140012444b30010028a508994c004c966002604c607a6ea800626eb4c0f8c104dd59820981f1baa0018a400081d8c1000066ebcc100c1040066eac00d22259800800c566002600400d13300500348002294103d44c96600266ebcc1000053010140008acc004cc018010dd6982098221bab3041001898019ba630450028a5040f91598009980300224001130030078a5040f881f0c10c0050410ca60020030049119820801198209ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0fc0066eacc10000660880069112cc004cdc8a441000038acc004cdc7a441000038998029815198229ba60024bd70000c4cc015300103d87a8000006410119800803c006446600e0046608e66ec0dd48029ba6004001401c82006084004820229422942294104122941036181d981c1baa0018a9981b2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640d465300130010019bad303b303837540053758603860706ea80952225980099b8800248002298103d87a800089980180080120701112cc00400a298103d87a80008acc004c0880062604266078607a00497ae08cc00400e607c005301b001400c81b903b454cc0d524014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640d06530010019bac303a30373754049480010011112cc00400a298103d87a80008acc004cdd7981e00100344c080cc0ecdd4000a5eb8233001003981e8014cdc0000a4004801903620748a9981a248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640cc6070606a6ea80162a6606692019d6578706563740a2020202020202020202076315f315f7263315f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c902b40c8606e60686ea8c0dcc0d0dd51809981a1baa00130363033375400302840c0812205a40b48168c004004888c9660020071323233223300a00233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051018206e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81890311bac3034002375a60640026466ec0dd418190009ba73033001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606e003337149101023a200098008054c0e000600a805100a181d00144ca6002015303700199b8a489023a200098008054c0e0006600e66008008004805100a181d0012070303a00140dc66e29220102207d0000340d06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901520683758007133006375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40d866e2ccdc0000acc004cdc4000a402914818229037206c004401866e0c00520203370c002901019b8e00400240cc6eb800d0371b8a4881022c2000060306ea8024dc3a40086e1d2000805402a01500a407060300026030603200260286ea800e2c80886026002601c6ea8052293454cc0312411856616c696461746f722072657475726e65642066616c73650013656402c1\"\n : \"5915d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e9520009180a980b180b000c896600200314bd7044cc054c048c058004cc008008c05c00501448c054c05800644646600200200644b30010018a508acc004cdc79bae30180010038a51899801001180c800a02640592232330010010032233003001300200298081baa00a9180a980b180b180b180b180b180b000c88c8cc00400400c896600200314a115980099baf003301430180018a51899801001180c800a0264059370e90034dc3a4011370e9005244444444444466446644b3001301400a8992cc004c054c084dd5000c4c966002603460446ea80062b30013371e6eb8c098c08cdd50009bae301130233754601e60466ea8c03cc08cdd519914c004c00800a2003223259800980d800c4c8c966002605c0050048b2056375c605800260506ea800e2b3001301f001899192cc004c0b800a0091640ac6eb8c0b0004c0a0dd5001c59026204c302637540049112cc004c06cc09cdd500244c8cc8966002605e00313259800980f98159baa001899191919912cc004c0d400e264b30013025303137540031323232323232323232329800981f800cc0fc026607e011303f007981f8034c0fc016607e009303f003981f8012444444444b3001304900a89981018240098998100040998100038998100030998100028998100020998100018998100010998100008998100048992cc004c0e4c114dd500b44c8c8c8c8ca60026eb8c138006609e003375c609c00b375c609c009375c609c007375c609c0049111112cc004c15401626464b30013046001899192cc004c16400a0211641586eb8c15c004c14cdd50014566002609400315980098299baa00280745905445905120a23051375400260a800b164148304e001304d001304c001304b0013046375402d1641102b300130383044375402d132323259800982600144cc0c8dd61825801912cc00400a2b3001303d30493754007132323259800982880144cc098c14000c4c9660026082003132598009829800c4c8c966002608800313259800982b000c4cc0acc1540040b22c8298c144dd500145660026090003132323298009bad30570019bad30570039bad305700248896600260b60090318b20b0182b800982b00098289baa0028b209e413c609e6ea8004c1480062c8280c138dd50014566002608a00315980098271baa00281445904f45904c2098304c3754003164138609e002609e00260946ea800e2c8242264b3001303e304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590491825000982500098229baa0168b20868b208c181f800981f000981e800981e000981d800981d000981c800981c000981b80098191baa0018b206030340058b20643032001303200230320013031001302c37540031640a8605c0031640b06eb8c0b0004c0b4004c0a0dd50024590260888c96600260340031323259800981680140122c8150dd7181580098139baa0038acc004c078006264b3001302c0018998091bac302b0012259800801401633001007981680144c004c0b800900720568b205230273754007159800980d800c4c96600260580031330123758605600244b3001002802c6600200f302d002898009817001200e40ad1640a4604e6ea800e2b3001300d00189919912cc004c0b80062660286eb0c0b400489660020050078cc004026605e0051300130300024024816a2c8158dd69815800981600098139baa0038acc004c03000626464b3001302d00280245902a1bad302b001302737540071598009805800c4c8c966002605a0050048b2054375a6056002604e6ea800e2b30013370e9006000c4c8c966002605a0050048b2054375c6056002604e6ea800e2c8129025204a40948129025204a3025375400464b300130173023375400313259800980c98121baa0018981418129baa0018b2046301230243754602060486ea8c09cc090dd5000c59022198019bac300f3023375403204113300a3756601660466ea8064cdd2a40046604a6ea407d2f5c1164085164084604a60446ea8c094c088dd5180718111baa302530223754003164080660046eb0c090c084dd500b80945660026030015159800980a18101baa0118cc004c090c084dd5181218109baa0119bac3024302530253025302530253025302530253021375402f302430253025302530253025302530253021375402f3756601260426ea805d22223233001001005223259800980d800c4cc04c018dd7181598141baa0028acc004c07c006264660020026eb0c0b0c0a4dd5001912cc00400629462b300133005005302d0018998010011817000c528205040ad159800980e000c4c8cc004004dd6181618149baa0032259800800c52845660026600a00a605a00314a3133002002302e00140a0815a2b3001300e00189919b89375a605800264660020026eb0c0b4c0b8008896600200314800226644b300133008008002899b800014800a20028158c0b8004cc008008c0bc00502c18141baa0028acc004c0340062646644b30013022302a3754005159800981118151baa302e302f003899b89375a605c60566ea8008006266e20dd6981718159baa00200140a514a08148c0b0004dd6981618149baa00330283754602860506ea80162b3001300c00189919912cc004c088c0a8dd50014566002604460546ea8c0b8c0bc00e266e24004dd6981718159baa002899b88001375a605c60566ea800902945282052302c001375a605860526ea800cc0a0dd5181598141baa00589980780219ba548008cc0a8c0acc0a0dd500125eb81026204c40988131026204c302637540028b203e8acc004c050c080dd5008c4c966002602a60426ea800626464b3001301b30233754003159800cc004888c966002603600313259800800c00e264b300100180240120090048992cc004c0bc00e00d00540b06eb800502f1816000a05430283754009159800980f800c4c9660020030038992cc0040060090048024012264b3001302f003803401502c1bae00140bc60580028150c0a0dd50024009026204c30263754007222329800800c0120068008888c966002603c00313259800800c01a264b3001001803c01e00f0078992cc004c0c800e00b00840bc6eb80050321817800a05a302b37540071598009811000c4c9660020030068992cc00400600f0078992cc004c0c800e26603000244b3001002803c4c96600200319800805400626004606a006805201700b805c02d03618198012062804205e3758003007803a064302f00140b460566ea800e2b3001301f0018992cc00400600d13259800800c01e00f132598009819001c4cc06000489660020050078992cc0040063300100a800c4c008c0d400d00a402e01700b805a06c303300240c500840bc6eb000600f00740c8605e0028168c0acdd5001c566002602200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303500389980d800912cc00400a01513259800800c6600201b00189801181c001a01a807403a01d00e40e4606c00481a20168190dd6000c02a01481a8c0c80050301bad0013031002803a064302f00140b460566ea800e2b300130100018992cc00400600d13259800800c01e00f0078992cc004c0c800e00b00840bc6eb400600e8190c0bc00502d18159baa0038acc004c03c006264b300100180344c966002003007803c01e264b30013032003802c02102f1bad001803a064302f00140b460566ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013032003802c02102f1bae00140c8605e0028168c0acdd5001c015029205240a48149029205240a460526ea800a64b300130183024375400313259800980d18129baa0018992cc004c068c098dd5000c4c8c8cc8966002605e00710058b2058302c001375c60580046058002604e6ea80062c8128c0a4c098dd5000c59024180998129baa3011302537546050604a6ea80062c8118cc010dd6180818121baa01a0219bae30273024375400291112cc006600266e3cdd7181598141baa002024a50a51409914a31332259800800c4c966002603c60546ea800a264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800800c566002606a005159800981218181baa0058992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c4c96600200301c8992cc0040062b300130490028cc00404e330010118cc00403e3300100d8cc00402e330010098cc00401e330010058cc00400e330010018992cc004c0e4c114dd500c44c96600200301f8992cc004006041020810408226644b300100181144c966002003023811c08e0471332259800800c096264b3001001813409a04d026899912cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81640b226644b300100181744c966002003159800982d80144c966002609600313259800800c0c6264b300100181940ca0650328992cc004c17c00e02d03341706eb800505f182e000a0b4305837540051598009827800c56600260b06ea800a0270304165030415882b0c158dd5000c0bd05840be05f02f817a0b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270dd7000982780120a0304d001412c6eb8004c13000904d1825000a0903046375403101e41102b300130383044375402b13259800800c07a264b300100180fc07e26644b3001001810c4c966002003159800982700144cc0d000c8966002005159800981f98259baa0038992cc00400604b13259800800c4c9660020030278992cc0040062b300130540028cc00400e264b300130440018992cc00400605513259800800c56600260ae005132598009823800c4c96600200302d8992cc0040062b3001305a0028cc00400605902e40c902e415d02e81740ba05c82d8c160005056182a1baa0028acc004c12c006264b3001001816c4c96600200302e81740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d2264b30013061003819c0d505e1bad00181a20c2305e00141706eb4004c17400a06282f0c16c0050591bad001305a00281720b63058001415860a86ea800a058829105218291baa001815a0a8815c0ae05702b416060aa0028298c144dd50014566002609000315980098289baa002813c0a505240a504f209e304f375400302840b1028414502881440a205082a8c1480050501829001409a04d02681320a63050001413860986ea800e0488252264b30010018acc004c100c130dd5000c4c9660020030268992cc00400604f027899912cc00400605313259800800c0aa05502a899912cc00400605913259800800c0b605b02d8992cc004c16800e2b300100781744c96600200302f817c0be05f1332259800800c0c6264b300100181940ca0650328992cc004c17c00e2602060be02303341706eb800505f182e000a0b4375c00260b601082e0c16401d05740b90571bad001816a0b4305700141546eb4004c15800a05482b8c1500050521bac0013053002813c09d0541828800a09e304d3754003025412d025812c09604a8290c13c00904d408904b408a045022811209e304c00141286eb0004c12c00a03f01f413060920028238c114dd500ac07504340750204075020407502040750204075020407502040750204075020407502040750204075046407603b01d80ea09430470014114608e00501b80dc06e0368240c1140050431822801406603301980ca08c30430014104608600501780bc05e02e8220c10400503f1820801405602b01580aa084303f00140f4607e005013809c04e0268200c0f400503b181e8014046023011808a07c303b00140e4607600500f807c03e01e81e0c0e4005037181c801403601b00d806a074303700140d4606e00500b805c02e01681c0c0d400503318189baa005804a05e804a064804c02601300940d860660028188c0cc00a00f007803c01d0341818800a05e3031002802c01600b00540c8605e0028168c0acdd5001400d0290cc004cdc79bae3018302a3754602c60546ea800400e942945028400a005002801205e14a2602860506ea80090262264b300130183024375400313259800980c98129baa0018992cc004c068c098dd5000c4c96600266ebcc0acc0a0dd5000980b99815180b99815181598141baa0044bd701981526103d87a80004bd704660026eacc050c0a0dd5000cc050c0a0dd5180a18141baa0069119b89337020026eb4c0b4c0b8c0b8c0b8c0a8dd50100012444b30010028a508994c004c966002604060586ea800626eb4c0b4c0c0dd5981818169baa0018a40008158c0bc0066ebcc0bcc0c00066eac00d22259800800c566002600400d13300500348002294102d44c96600266ebcc0bc0053010140008acc004cc018010dd6981818199bab3030001898019ba630340028a5040b91598009980300224001130030078a5040b88170c0c80050300ca60020030049119818001198181ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0b80066eacc0bc00660660069112cc004cdc8a441000038acc004cdc7a4410000389980298109981a1ba60024bd70000c4cc015300103d87a800000640c119800803c006446600e0046606c66ec0dd48029ba6004001401c81806062004817a29422942294103022941026181518139baa0018b204a3298009800800cdd6981518139baa0029bac30153027375403a9112cc004cdc40012400114c103d87a800089980180080120501112cc00400a298103d87a80008acc004c0700062603066056605800497ae08cc00400e605a005337000029000a006409c81522c8120ca600200337586052604c6ea807290002002222598008014530103d87a80008acc004cdd7981580100344c05ccc0a8dd4000a5eb823300100398160014cdc0000a4004801902620528b2046302730243754604e60486ea80522c81122c8110c098c08cdd5181318119baa300f30233754002604a60446ea80062c8100cc008dd6181218109baa0170128b203e407c80f888cc0100088cdd7981298111baa001002223300400223300d30043756601c60446ea8c038c088dd5000801111919800800801912cc0040062980103d87a80008992cc004c010006260226604800297ae0899801801981300120403024001408860140143012004301230130044590090c028004c014dd5005c52689b2b20061\",\n Type.Tuple([PolicyId, ScriptHash]),\n [proxyPolicyId, protocolScripthash],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolManagementProtocolManagementWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolManagementProtocolManagementPublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolManagementProtocolManagementElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401\"\n : \"592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201\"\n : \"591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMintProtocolMintWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMintProtocolMintPublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolMintProtocolMintElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541\"\n : \"592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n yieldOracleValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281\"\n : \"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash, ScriptHash]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n yieldOracleValidator,\n ],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n yieldOracleValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281\"\n : \"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash, ScriptHash]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n yieldOracleValidator,\n ],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse {\n public Script: Script;\n constructor(\n proxyPolicyId: PolicyId,\n mintValidator: ScriptHash,\n stakeValidator: ScriptHash,\n managementValidator: ScriptHash,\n yieldOracleValidator: ScriptHash,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281\"\n : \"5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301\",\n Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash, ScriptHash]),\n [\n proxyPolicyId,\n mintValidator,\n stakeValidator,\n managementValidator,\n yieldOracleValidator,\n ],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolStakeProtocolStakeWithdraw {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolStakeProtocolStakePublish {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProtocolStakeProtocolStakeElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581\"\n : \"5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProxyNftProxyNftMint {\n public Script: Script;\n constructor(utxoRef: OutputReference, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n : \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ]),\n [utxoRef],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1ProxyNftProxyNftElse {\n public Script: Script;\n constructor(utxoRef: OutputReference, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601\"\n : \"5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n ]),\n [utxoRef],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse {\n public Script: Script;\n constructor(proxyPolicyId: PolicyId, trace?: boolean = false) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401\",\n Type.Tuple([PolicyId]),\n [proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1StakingVaultStakingVaultMint {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1StakingVaultStakingVaultSpend {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1StakingVaultStakingVaultElse {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601\"\n : \"5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1TreasuryTreasuryMint {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1TreasuryTreasurySpend {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1TreasuryTreasuryElse {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1YieldOracleYieldOracleMint {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1YieldOracleYieldOracleSpend {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\nexport class V1_1Rc1YieldOracleYieldOracleElse {\n public Script: Script;\n constructor(\n utxoRef: OutputReference,\n proxyPolicyId: PolicyId,\n trace?: boolean = false,\n ) {\n this.Script = cborToScript(\n applyParamsToScript(\n trace\n ? \"5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601\"\n : \"5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041\",\n Type.Tuple([\n Type.Object(\n {\n transaction_id: Type.String(),\n output_index: Type.BigInt(),\n },\n { ctor: 0n },\n ),\n PolicyId,\n ]),\n [utxoRef, proxyPolicyId],\n ),\n \"PlutusV3\",\n );\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/index.js b/modules/realfi-partner-sdk/dist/esm/index.js new file mode 100644 index 0000000000..d0ea770edc --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/index.js @@ -0,0 +1,65 @@ +// Partner-facing entry point. First-party consumers use "./internal". + +import { RealfiApi as RealfiApiInternal } from "./api/index.js"; +import { SDK_VERSION } from "./sdk/shared/client-id.js"; +import { RealfiSDK as RealfiSDKFull } from "./sdk/index.js"; +import { createPartnerCardanoSDK } from "./sdk/partner-dispatcher.js"; +import * as SundaeSwapSDK from "./sundae/index.js"; +const PARTNER_CLIENT_ID = `partner-sdk/${SDK_VERSION}`; + +// On-chain Cardano part — the facade narrowed to the partner surface (order +// builders + read helpers). Deploy/operator methods and concrete version +// classes are reachable only via "./internal". +// +// `create` returns a version dispatcher: by default it re-resolves the live +// protocol version before each order build (one provider lookup) and swaps to +// the matching version instance; read helpers never re-detect. All built +// orders are tagged with source="partner-sdk", surviving version switches. +// The `detectParams` method is forwarded unchanged. +/* eslint-disable @typescript-eslint/no-explicit-any */ +const cardano = { + create: (blaze, params, options) => createPartnerCardanoSDK(blaze, params, "partner-sdk", options), + detectParams: RealfiSDKFull.detectParams.bind(RealfiSDKFull) +}; +/* eslint-enable @typescript-eslint/no-explicit-any */ + +// Off-chain API — wrap factory methods to inject the partner client-id so +// every request body carries extensions.clientId = "partner-sdk/". +const PartnerRealfiApi = { + forNetwork(network) { + return RealfiApiInternal.forNetwork(network, PARTNER_CLIENT_ID); + }, + create(endpoints) { + return RealfiApiInternal.create(endpoints, PARTNER_CLIENT_ID); + } +}; + +// Partner SDK, namespaced by part. +export const RealfiSDK = { + cardano, + api: PartnerRealfiApi, + sundae: SundaeSwapSDK +}; + +// Partner-facing Cardano SDK instance types + create options + +// Params + detection result + +// Protocol-version detection +export { detectSDKParams, NETWORK_REGISTRY, UnknownProtocolVersionError, YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER } from "./sdk/shared/detect-params.js"; + +// Partner-facing shared types + +// Current-line generated type namespaces +export { V0_4Types, V1_0Types, V1_0Rc1Types, V1_1Rc1Types } from "./generated-types/index.js"; + +// Curated helpers + transaction builder +export { calculateSusdrExchangeRate, SUSDR_EXCHANGE_RATE_PRECISION } from "./sdk/v1_1_rc1/diffusion.js"; +export * as Utils from "./sdk/shared/public.js"; +export * as TxBuilder from "./tx-builder/index.js"; +export * as SundaeSwap from "./sundae/index.js"; + +// Off-chain API part. `RealfiApi` here is the partner-tagged factory, not the +// raw class — direct imports get the same partner client-id as RealfiSDK.api. +export { PartnerRealfiApi as RealfiApi }; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/index.js.map b/modules/realfi-partner-sdk/dist/esm/index.js.map new file mode 100644 index 0000000000..220c90b1a2 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["RealfiApi","RealfiApiInternal","SDK_VERSION","RealfiSDK","RealfiSDKFull","createPartnerCardanoSDK","SundaeSwapSDK","PARTNER_CLIENT_ID","cardano","create","blaze","params","options","detectParams","bind","PartnerRealfiApi","forNetwork","network","endpoints","api","sundae","detectSDKParams","NETWORK_REGISTRY","UnknownProtocolVersionError","YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER","V0_4Types","V1_0Types","V1_0Rc1Types","V1_1Rc1Types","calculateSusdrExchangeRate","SUSDR_EXCHANGE_RATE_PRECISION","Utils","TxBuilder","SundaeSwap"],"sources":["../../src/index.ts"],"sourcesContent":["// Partner-facing entry point. First-party consumers use \"./internal\".\n\nimport { RealfiApi as RealfiApiInternal } from \"./api/index.js\";\nimport type { IApiEndpoints, IRealfiApiSDK, TApiNetwork } from \"./api/index.js\";\nimport { SDK_VERSION } from \"./sdk/shared/client-id.js\";\nimport { RealfiSDK as RealfiSDKFull } from \"./sdk/index.js\";\nimport { createPartnerCardanoSDK } from \"./sdk/partner-dispatcher.js\";\nimport type { IRealfiCardanoFactory } from \"./sdk/partner.js\";\nimport * as SundaeSwapSDK from \"./sundae/index.js\";\n\nconst PARTNER_CLIENT_ID = `partner-sdk/${SDK_VERSION}`;\n\n// On-chain Cardano part — the facade narrowed to the partner surface (order\n// builders + read helpers). Deploy/operator methods and concrete version\n// classes are reachable only via \"./internal\".\n//\n// `create` returns a version dispatcher: by default it re-resolves the live\n// protocol version before each order build (one provider lookup) and swaps to\n// the matching version instance; read helpers never re-detect. All built\n// orders are tagged with source=\"partner-sdk\", surviving version switches.\n// The `detectParams` method is forwarded unchanged.\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst cardano: IRealfiCardanoFactory = {\n create: (blaze: any, params: any, options?: any) =>\n createPartnerCardanoSDK(blaze, params, \"partner-sdk\", options) as any,\n detectParams: RealfiSDKFull.detectParams.bind(RealfiSDKFull),\n};\n/* eslint-enable @typescript-eslint/no-explicit-any */\n\n// Off-chain API — wrap factory methods to inject the partner client-id so\n// every request body carries extensions.clientId = \"partner-sdk/\".\nconst PartnerRealfiApi = {\n forNetwork(network: TApiNetwork): IRealfiApiSDK {\n return RealfiApiInternal.forNetwork(network, PARTNER_CLIENT_ID);\n },\n create(endpoints: IApiEndpoints): IRealfiApiSDK {\n return RealfiApiInternal.create(endpoints, PARTNER_CLIENT_ID);\n },\n};\n\n// Partner SDK, namespaced by part.\nexport const RealfiSDK = {\n cardano,\n api: PartnerRealfiApi,\n sundae: SundaeSwapSDK,\n};\n\n// Partner-facing Cardano SDK instance types + create options\nexport type {\n IRealfiCardanoCreateOptions,\n IBuildStakeContinuationParams,\n IStakeContinuation,\n IStakeContinuationSwap,\n IRealfiCardanoSDKV0_4,\n IRealfiCardanoSDKV1_0,\n IRealfiCardanoSDKV1_0Rc1,\n IRealfiCardanoSDKV1_1Rc1,\n TDetectedVersion,\n TRealfiCardanoSDK,\n TVersionDetectionMode,\n} from \"./sdk/partner.js\";\n\n// Params + detection result\nexport type {\n TDetectedSDKParams,\n IRealfiSDKParamsV0_4,\n IRealfiSDKParamsV1_0,\n IRealfiSDKParamsV1_0Rc1,\n IRealfiSDKParamsV1_1Rc1,\n} from \"./sdk/index.js\";\n\n// Protocol-version detection\nexport {\n detectSDKParams,\n NETWORK_REGISTRY,\n UnknownProtocolVersionError,\n YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER,\n} from \"./sdk/shared/detect-params.js\";\nexport type {\n IDetectInput,\n TNetworkPreset,\n} from \"./sdk/shared/detect-params.js\";\n\n// Partner-facing shared types\nexport type {\n TProtocolVersion,\n IProxyBootstrap,\n IBaseSDKParams,\n IRawProxyDatumResult,\n IProxyDatumResult,\n ITreasuryDatumResult,\n IVaultDatumResult,\n IProxySettings,\n IReserveAsset,\n TMultisigScript,\n IOutputReference,\n TPermissionKey,\n} from \"./sdk/shared/types.js\";\n\n// Current-line generated type namespaces\nexport {\n V0_4Types,\n V1_0Types,\n V1_0Rc1Types,\n V1_1Rc1Types,\n} from \"./generated-types/index.js\";\n\n// Curated helpers + transaction builder\nexport {\n calculateSusdrExchangeRate,\n SUSDR_EXCHANGE_RATE_PRECISION,\n type ISusdrExchangeRateInputs,\n} from \"./sdk/v1_1_rc1/diffusion.js\";\nexport * as Utils from \"./sdk/shared/public.js\";\nexport * as TxBuilder from \"./tx-builder/index.js\";\nexport * as SundaeSwap from \"./sundae/index.js\";\n\n// Off-chain API part. `RealfiApi` here is the partner-tagged factory, not the\n// raw class — direct imports get the same partner client-id as RealfiSDK.api.\nexport { PartnerRealfiApi as RealfiApi };\nexport type {\n IRealfiApiSDK,\n IApiEndpoints,\n TApiNetwork,\n IOrderInfo,\n IPartnerConfig,\n IPartnerLimits,\n IApiOrderUtxo,\n IStakeTimes,\n IOrderFees,\n IYieldBreakdown,\n IPointsBalance,\n IReferrerCode,\n TOrderStatus,\n TOrderAction,\n} from \"./api/index.js\";\n"],"mappings":"AAAA;;AAEA,SAASA,SAAS,IAAIC,iBAAiB,QAAQ,gBAAgB;AAE/D,SAASC,WAAW,QAAQ,2BAA2B;AACvD,SAASC,SAAS,IAAIC,aAAa,QAAQ,gBAAgB;AAC3D,SAASC,uBAAuB,QAAQ,6BAA6B;AAErE,OAAO,KAAKC,aAAa,MAAM,mBAAmB;AAElD,MAAMC,iBAAiB,GAAG,eAAeL,WAAW,EAAE;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMM,OAA8B,GAAG;EACrCC,MAAM,EAAEA,CAACC,KAAU,EAAEC,MAAW,EAAEC,OAAa,KAC7CP,uBAAuB,CAACK,KAAK,EAAEC,MAAM,EAAE,aAAa,EAAEC,OAAO,CAAQ;EACvEC,YAAY,EAAET,aAAa,CAACS,YAAY,CAACC,IAAI,CAACV,aAAa;AAC7D,CAAC;AACD;;AAEA;AACA;AACA,MAAMW,gBAAgB,GAAG;EACvBC,UAAUA,CAACC,OAAoB,EAAiB;IAC9C,OAAOhB,iBAAiB,CAACe,UAAU,CAACC,OAAO,EAAEV,iBAAiB,CAAC;EACjE,CAAC;EACDE,MAAMA,CAACS,SAAwB,EAAiB;IAC9C,OAAOjB,iBAAiB,CAACQ,MAAM,CAACS,SAAS,EAAEX,iBAAiB,CAAC;EAC/D;AACF,CAAC;;AAED;AACA,OAAO,MAAMJ,SAAS,GAAG;EACvBK,OAAO;EACPW,GAAG,EAAEJ,gBAAgB;EACrBK,MAAM,EAAEd;AACV,CAAC;;AAED;;AAeA;;AASA;AACA,SACEe,eAAe,EACfC,gBAAgB,EAChBC,2BAA2B,EAC3BC,kCAAkC,QAC7B,+BAA+B;;AAMtC;;AAgBA;AACA,SACEC,SAAS,EACTC,SAAS,EACTC,YAAY,EACZC,YAAY,QACP,4BAA4B;;AAEnC;AACA,SACEC,0BAA0B,EAC1BC,6BAA6B,QAExB,6BAA6B;AACpC,OAAO,KAAKC,KAAK,MAAM,wBAAwB;AAC/C,OAAO,KAAKC,SAAS,MAAM,uBAAuB;AAClD,OAAO,KAAKC,UAAU,MAAM,mBAAmB;;AAE/C;AACA;AACA,SAASlB,gBAAgB,IAAIf,SAAS","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/index.js b/modules/realfi-partner-sdk/dist/esm/sdk/index.js new file mode 100644 index 0000000000..f92e96c099 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/index.js @@ -0,0 +1,158 @@ +// Re-export param types for convenience + +// Re-export shared types and utilities +export * from "./shared/index.js"; + +// Re-export version classes. These are tree-shaken out of consumer bundles +// that never reference them by name, thanks to `"sideEffects": false` in +// package.json. The facade below dispatches via dynamic `import()`, so the +// app's entry chunk only includes the version it actually selects at runtime. +export { RealfiSDKV0 } from "./v0/index.js"; +export { RealfiSDKV0_1 } from "./v0_1/index.js"; +export { RealfiSDKV0_2 } from "./v0_2/index.js"; +export { RealfiSDKV0_3 } from "./v0_3/index.js"; +export { RealfiSDKV0_4 } from "./v0_4/index.js"; +export { RealfiSDKV1_0 } from "./v1_0/index.js"; +export { RealfiSDKV1_0Rc1 } from "./v1_0_rc1/index.js"; +export { RealfiSDKV1_1Rc1 } from "./v1_1_rc1/index.js"; + +/** + * Union type of all SDK parameter types + */ + +/** + * Union type of all SDK versions + */ + +// Function overloads for create. Returns are promises because the +// implementation lazy-loads the per-version module on demand. + +async function createRealfiSDK(blaze, params) { + switch (params.version) { + case "V0": + { + const { + RealfiSDKV0 + } = await import("./v0/index.js"); + return RealfiSDKV0.create(blaze, params); + } + case "V0_1": + { + const { + RealfiSDKV0_1 + } = await import("./v0_1/index.js"); + return RealfiSDKV0_1.create(blaze, params); + } + case "V0_2": + { + const { + RealfiSDKV0_2 + } = await import("./v0_2/index.js"); + return RealfiSDKV0_2.create(blaze, params); + } + case "V0_3": + { + const { + RealfiSDKV0_3 + } = await import("./v0_3/index.js"); + return RealfiSDKV0_3.create(blaze, params); + } + case "V0_4": + { + const { + RealfiSDKV0_4 + } = await import("./v0_4/index.js"); + return RealfiSDKV0_4.create(blaze, params); + } + case "V1_0": + { + const { + RealfiSDKV1_0 + } = await import("./v1_0/index.js"); + return RealfiSDKV1_0.create(blaze, params); + } + case "V1_0_Rc1": + { + const { + RealfiSDKV1_0Rc1 + } = await import("./v1_0_rc1/index.js"); + return RealfiSDKV1_0Rc1.create(blaze, params); + } + case "V1_1_Rc1": + { + const { + RealfiSDKV1_1Rc1 + } = await import("./v1_1_rc1/index.js"); + return RealfiSDKV1_1Rc1.create(blaze, params); + } + default: + throw new Error(`Unknown SDK version: ${params.version}`); + } +} + +/** Call signature for {@link RealfiSDK.detectParams}, kept as an interface so it can carry overloads. */ + +/** + * RealfiSDK namespace for creating SDK instances. + * + * The SDK is the single entry point for all protocol operations. + * Each version class (RealfiSDKV0, RealfiSDKV0_1, RealfiSDKV0_2, etc.) provides + * version-specific functionality with correct types. + * + * The facade lazy-loads each version module via dynamic `import()` so consumer + * bundles only ship the version they actually select at runtime. + * + * @example V0 - Simple minting + * ```typescript + * const sdk = await RealfiSDK.create(blaze, { + * version: "V0", + * proxyBootstrap: { txHash, outputIndex }, + * assetNameHex: "55534472", + * }); + * const mintTx = await sdk.buildMintTx(AssetAmount.fromValue(1000n, decimals)); + * ``` + * + * @example V1_0 - Full protocol with DirectMint/DirectBurn + * ```typescript + * const sdk = await RealfiSDK.create(blaze, { + * version: "V1_0", + * proxyBootstrap: { txHash, outputIndex }, + * treasuryBootstrap: { txHash: treasuryTxHash, outputIndex: treasuryOutputIndex }, + * stakingVaultBootstrap: { txHash: vaultTxHash, outputIndex: vaultOutputIndex }, + * assetNameHex: "55534472", + * sUSDrAssetNameHex: "7355534472", + * }); + * const directMintTx = await sdk.buildDirectMintOrderTx({ amount, destination }); + * ``` + */ +export const RealfiSDK = { + /** + * Create a new RealfiSDK instance. + * + * Returns the appropriate version-specific SDK based on the params. + * The returned SDK has full type information for that version. + */ + create: createRealfiSDK, + /** + * Detect the active protocol version from the on-chain proxy datum. + * + * Reads the proxy UTxO, extracts the `logic` script hash, and compares it + * against expected hashes for each known SDK version. Returns fully-typed + * SDK params (including V1_0 backward-compatibility flags) that can be + * passed directly to `RealfiSDK.create`. + * + * `config` also accepts a network preset name (`"mainnet"`, `"preprod"`, + * `"preview"`) in place of an explicit config, resolved via the built-in + * network registry. Custom deployments still pass an explicit config. + * + * @throws {UnknownProtocolVersionError} if the on-chain hash matches no known version. + */ + detectParams: async (provider, config) => { + const { + detectSDKParams + } = await import("./shared/detect-params.js"); + // Both arms call the same function; the ternary narrows the string|object union so it matches an overload — required to satisfy TS2769, not a no-op. + return typeof config === "string" ? detectSDKParams(provider, config) : detectSDKParams(provider, config); + } +}; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/index.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/index.js.map new file mode 100644 index 0000000000..fd4268ebd8 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["RealfiSDKV0","RealfiSDKV0_1","RealfiSDKV0_2","RealfiSDKV0_3","RealfiSDKV0_4","RealfiSDKV1_0","RealfiSDKV1_0Rc1","RealfiSDKV1_1Rc1","createRealfiSDK","blaze","params","version","create","Error","RealfiSDK","detectParams","provider","config","detectSDKParams"],"sources":["../../../src/sdk/index.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport { type Blaze, type Wallet } from \"@blaze-cardano/sdk\";\n\nimport type {\n IDetectInput,\n TDetectedSDKParams,\n TNetworkPreset,\n} from \"./shared/detect-params.js\";\nexport type { TDetectedSDKParams } from \"./shared/detect-params.js\";\nexport type { TNetworkPreset } from \"./shared/detect-params.js\";\n\nimport type { IRealfiSDKParamsV0, RealfiSDKV0 } from \"./v0/index.js\";\nimport type { IRealfiSDKParamsV0_1, RealfiSDKV0_1 } from \"./v0_1/index.js\";\nimport type { IRealfiSDKParamsV0_2, RealfiSDKV0_2 } from \"./v0_2/index.js\";\nimport type { IRealfiSDKParamsV0_3, RealfiSDKV0_3 } from \"./v0_3/index.js\";\nimport type { IRealfiSDKParamsV0_4, RealfiSDKV0_4 } from \"./v0_4/index.js\";\nimport type { IRealfiSDKParamsV1_0, RealfiSDKV1_0 } from \"./v1_0/index.js\";\nimport type {\n IRealfiSDKParamsV1_0Rc1,\n RealfiSDKV1_0Rc1,\n} from \"./v1_0_rc1/index.js\";\nimport type {\n IRealfiSDKParamsV1_1Rc1,\n RealfiSDKV1_1Rc1,\n} from \"./v1_1_rc1/index.js\";\n\n// Re-export param types for convenience\nexport type { IRealfiSDKParamsV0 } from \"./v0/index.js\";\nexport type { IRealfiSDKParamsV0_1 } from \"./v0_1/index.js\";\nexport type { IRealfiSDKParamsV0_2 } from \"./v0_2/index.js\";\nexport type { IRealfiSDKParamsV0_3 } from \"./v0_3/index.js\";\nexport type { IRealfiSDKParamsV0_4 } from \"./v0_4/index.js\";\nexport type { IRealfiSDKParamsV1_0 } from \"./v1_0/index.js\";\nexport type { IRealfiSDKParamsV1_0Rc1 } from \"./v1_0_rc1/index.js\";\nexport type { IRealfiSDKParamsV1_1Rc1 } from \"./v1_1_rc1/index.js\";\n\n// Re-export shared types and utilities\nexport * from \"./shared/index.js\";\n\n// Re-export version classes. These are tree-shaken out of consumer bundles\n// that never reference them by name, thanks to `\"sideEffects\": false` in\n// package.json. The facade below dispatches via dynamic `import()`, so the\n// app's entry chunk only includes the version it actually selects at runtime.\nexport { RealfiSDKV0 } from \"./v0/index.js\";\nexport { RealfiSDKV0_1 } from \"./v0_1/index.js\";\nexport { RealfiSDKV0_2 } from \"./v0_2/index.js\";\nexport { RealfiSDKV0_3 } from \"./v0_3/index.js\";\nexport { RealfiSDKV0_4 } from \"./v0_4/index.js\";\nexport { RealfiSDKV1_0 } from \"./v1_0/index.js\";\nexport { RealfiSDKV1_0Rc1 } from \"./v1_0_rc1/index.js\";\nexport { RealfiSDKV1_1Rc1 } from \"./v1_1_rc1/index.js\";\n\n/**\n * Union type of all SDK parameter types\n */\nexport type TRealfiSDKParams =\n | IRealfiSDKParamsV0\n | IRealfiSDKParamsV0_1\n | IRealfiSDKParamsV0_2\n | IRealfiSDKParamsV0_3\n | IRealfiSDKParamsV0_4\n | IRealfiSDKParamsV1_0\n | IRealfiSDKParamsV1_0Rc1\n | IRealfiSDKParamsV1_1Rc1;\n\n/**\n * Union type of all SDK versions\n */\nexport type TRealfiSDK

=\n | RealfiSDKV0\n | RealfiSDKV0_1\n | RealfiSDKV0_2\n | RealfiSDKV0_3\n | RealfiSDKV0_4\n | RealfiSDKV1_0\n | RealfiSDKV1_0Rc1\n | RealfiSDKV1_1Rc1;\n\n// Function overloads for create. Returns are promises because the\n// implementation lazy-loads the per-version module on demand.\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_1,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_2,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_3,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_4,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0Rc1,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_1Rc1,\n): Promise>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: TDetectedSDKParams,\n): Promise<\n | RealfiSDKV0_4\n | RealfiSDKV1_0\n | RealfiSDKV1_0Rc1\n | RealfiSDKV1_1Rc1\n>;\nfunction createRealfiSDK

(\n blaze: Blaze,\n params: TRealfiSDKParams,\n): Promise>;\nasync function createRealfiSDK

(\n blaze: Blaze,\n params: TRealfiSDKParams,\n): Promise> {\n switch (params.version) {\n case \"V0\": {\n const { RealfiSDKV0 } = await import(\"./v0/index.js\");\n return RealfiSDKV0.create(blaze, params);\n }\n case \"V0_1\": {\n const { RealfiSDKV0_1 } = await import(\"./v0_1/index.js\");\n return RealfiSDKV0_1.create(blaze, params);\n }\n case \"V0_2\": {\n const { RealfiSDKV0_2 } = await import(\"./v0_2/index.js\");\n return RealfiSDKV0_2.create(blaze, params);\n }\n case \"V0_3\": {\n const { RealfiSDKV0_3 } = await import(\"./v0_3/index.js\");\n return RealfiSDKV0_3.create(blaze, params);\n }\n case \"V0_4\": {\n const { RealfiSDKV0_4 } = await import(\"./v0_4/index.js\");\n return RealfiSDKV0_4.create(blaze, params);\n }\n case \"V1_0\": {\n const { RealfiSDKV1_0 } = await import(\"./v1_0/index.js\");\n return RealfiSDKV1_0.create(blaze, params);\n }\n case \"V1_0_Rc1\": {\n const { RealfiSDKV1_0Rc1 } = await import(\"./v1_0_rc1/index.js\");\n return RealfiSDKV1_0Rc1.create(blaze, params);\n }\n case \"V1_1_Rc1\": {\n const { RealfiSDKV1_1Rc1 } = await import(\"./v1_1_rc1/index.js\");\n return RealfiSDKV1_1Rc1.create(blaze, params);\n }\n default:\n throw new Error(\n `Unknown SDK version: ${(params as TRealfiSDKParams).version}`,\n );\n }\n}\n\n/** Call signature for {@link RealfiSDK.detectParams}, kept as an interface so it can carry overloads. */\ninterface IDetectParams {\n (provider: Provider, config: IDetectInput): Promise;\n (provider: Provider, network: TNetworkPreset): Promise;\n}\n\n/**\n * RealfiSDK namespace for creating SDK instances.\n *\n * The SDK is the single entry point for all protocol operations.\n * Each version class (RealfiSDKV0, RealfiSDKV0_1, RealfiSDKV0_2, etc.) provides\n * version-specific functionality with correct types.\n *\n * The facade lazy-loads each version module via dynamic `import()` so consumer\n * bundles only ship the version they actually select at runtime.\n *\n * @example V0 - Simple minting\n * ```typescript\n * const sdk = await RealfiSDK.create(blaze, {\n * version: \"V0\",\n * proxyBootstrap: { txHash, outputIndex },\n * assetNameHex: \"55534472\",\n * });\n * const mintTx = await sdk.buildMintTx(AssetAmount.fromValue(1000n, decimals));\n * ```\n *\n * @example V1_0 - Full protocol with DirectMint/DirectBurn\n * ```typescript\n * const sdk = await RealfiSDK.create(blaze, {\n * version: \"V1_0\",\n * proxyBootstrap: { txHash, outputIndex },\n * treasuryBootstrap: { txHash: treasuryTxHash, outputIndex: treasuryOutputIndex },\n * stakingVaultBootstrap: { txHash: vaultTxHash, outputIndex: vaultOutputIndex },\n * assetNameHex: \"55534472\",\n * sUSDrAssetNameHex: \"7355534472\",\n * });\n * const directMintTx = await sdk.buildDirectMintOrderTx({ amount, destination });\n * ```\n */\nexport const RealfiSDK = {\n /**\n * Create a new RealfiSDK instance.\n *\n * Returns the appropriate version-specific SDK based on the params.\n * The returned SDK has full type information for that version.\n */\n create: createRealfiSDK,\n\n /**\n * Detect the active protocol version from the on-chain proxy datum.\n *\n * Reads the proxy UTxO, extracts the `logic` script hash, and compares it\n * against expected hashes for each known SDK version. Returns fully-typed\n * SDK params (including V1_0 backward-compatibility flags) that can be\n * passed directly to `RealfiSDK.create`.\n *\n * `config` also accepts a network preset name (`\"mainnet\"`, `\"preprod\"`,\n * `\"preview\"`) in place of an explicit config, resolved via the built-in\n * network registry. Custom deployments still pass an explicit config.\n *\n * @throws {UnknownProtocolVersionError} if the on-chain hash matches no known version.\n */\n detectParams: (async (\n provider: Provider,\n config: IDetectInput | TNetworkPreset,\n ): Promise => {\n const { detectSDKParams } = await import(\"./shared/detect-params.js\");\n // Both arms call the same function; the ternary narrows the string|object union so it matches an overload — required to satisfy TS2769, not a no-op.\n return typeof config === \"string\"\n ? detectSDKParams(provider, config)\n : detectSDKParams(provider, config);\n }) as IDetectParams,\n};\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/partner-dispatcher.js b/modules/realfi-partner-sdk/dist/esm/sdk/partner-dispatcher.js new file mode 100644 index 0000000000..c2db6dd262 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/partner-dispatcher.js @@ -0,0 +1,165 @@ +// Per-build protocol-version dispatch for the partner facade ("." entry). +// First-party consumers ("./internal") keep frozen version instances. + +import { RealfiSDK } from "./index.js"; +import { fetchProxyLogicSnapshot, matchProtocolVersion, UnknownProtocolVersionError } from "./shared/detect-params.js"; + +// Identity fields the dispatcher reads off a live version instance; every +// other member is reached by property delegation. + +// Caller-supplied build options carried into a recreated instance. Cached +// referenceInputs stay behind — they belong to the previous version's scripts. + +const isOrderBuilder = prop => typeof prop === "string" && prop.startsWith("build"); +const requiresFreshVersion = prop => prop === "buildStakeContinuation"; + +/** + * Create a partner SDK that re-resolves the live protocol version before each + * order build and dispatches to the matching version instance. + * + * Detection identity: the one-shot NFT policy (deterministic from + * `proxyBootstrap`). The proxy UTxO ref changes on every settings update, but + * the NFT lookup follows it, so each refresh is exactly one provider call. + * The fetched `logic` hash is compared against the current instance's + * `protocolScriptHash` — equal in every detectable version — and only on a + * mismatch does the (local, provider-free) version matcher run and the + * underlying instance get recreated, preserving `clientSource` so partner + * order metadata survives the switch. Read helpers never trigger a refresh. + * + * No result caching beyond the last observed hash: freshness only shrinks the + * stale window — correctness is enforced on-chain, and a stale-version build + * is recovered via order invalidation. + * + * Refresh failure policy: an {@link UnknownProtocolVersionError} rejects the + * build — the chain moved to a version this SDK cannot target. Any other + * refresh error (e.g. a transient provider failure) logs a warning and the + * build proceeds on the last known version, which is exactly what an + * `"at-init"` instance would have produced. Stake continuations are stricter + * under this `"per-build"` dispatcher: their address, schema, and + * exchange-rate quote must all match the current deployment, so + * `buildStakeContinuation` fails closed on every refresh error here. An + * `"at-init"` instance, or a raw version-pinned SDK used outside this + * dispatcher, never refreshes at all and carries no such guarantee. + * + * Method identity is unstable across accesses (`sdk.buildX !== sdk.buildX`): + * each access returns a fresh wrapper over the live instance, by design. + */ +export async function createPartnerCardanoSDK(blaze, params, clientSource, options) { + const createInstance = p => RealfiSDK.create(blaze, { + ...p, + clientSource + }); + const initial = await createInstance(params); + if ((options?.versionDetection ?? "per-build") === "at-init") { + // Frozen instance — never re-detects. + return initial; + } + const detectInput = { + proxyBootstrap: params.proxyBootstrap, + treasuryBootstrap: params.treasuryBootstrap, + stakingVaultBootstrap: params.stakingVaultBootstrap, + yieldOracleBootstrap: "yieldOracleBootstrap" in params ? params.yieldOracleBootstrap : undefined, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace: params.enableTrace + }; + const carriedExtras = params; + const state = { + instance: initial, + // Every detectable version's proxy datum `logic` hash is that version + // class's protocolScriptHash. + lastLogicHash: initial.protocolScriptHash + }; + const doRefresh = async () => { + const oneShotPolicyId = state.instance.oneShotPolicyId; + const snapshot = await fetchProxyLogicSnapshot(blaze.provider, oneShotPolicyId); + if (snapshot.logicHash === state.lastLogicHash) return; + const detected = await matchProtocolVersion(snapshot, oneShotPolicyId, detectInput); + const previous = state.instance.version; + const next = await createInstance({ + ...detected, + scriptDeploymentAddress: carriedExtras.scriptDeploymentAddress, + defaultSlippageToleranceBps: carriedExtras.defaultSlippageToleranceBps + }); + state.instance = next; + state.lastLogicHash = snapshot.logicHash; + if (next.version !== previous) { + console.warn(`[realfi-sdk] Protocol version changed: ${previous} -> ${next.version}. Order builders now target ${next.version}.`, { + previous, + next: next.version + }); + // A throwing partner callback must not break the build. + try { + options?.onVersionChange?.(previous, next.version); + } catch (callbackError) { + console.warn("[realfi-sdk] onVersionChange threw", callbackError); + } + } + }; + + // Concurrent builds share one in-flight refresh. + const refresh = () => { + if (!state.inflightRefresh) { + state.inflightRefresh = doRefresh().finally(() => { + state.inflightRefresh = undefined; + }); + } + return state.inflightRefresh; + }; + + // Delegating proxy: members always resolve against the live instance, so a + // version switch also switches the available surface (e.g. V1-line-only + // builders). Order builds refresh first; everything else passes through. + return new Proxy(Object.create(null), { + get(_target, prop) { + const live = state.instance; + const value = live[prop]; + if (typeof value !== "function") return value; + if (isOrderBuilder(prop)) { + return async (...args) => { + try { + await refresh(); + } catch (refreshError) { + // Unknown on-chain version: this SDK cannot build a valid order. + if (refreshError instanceof UnknownProtocolVersionError || requiresFreshVersion(prop)) { + throw refreshError; + } + // Transient failure (e.g. provider blip): build on the last known + // version — no worse than an "at-init" instance. + console.warn(`[realfi-sdk] Protocol-version refresh failed; ${prop} builds against last known version ${state.instance.version}.`, refreshError); + } + const current = state.instance; + const builder = current[prop]; + if (typeof builder !== "function") { + throw new Error(`[realfi-sdk] ${prop} is not available on protocol version ${state.instance.version}; the live protocol version changed since this SDK was created.`); + } + return builder.apply(state.instance, args); + }; + } + return value.bind(state.instance); + }, + has(_target, prop) { + return prop in state.instance; + }, + set(_target, prop, value) { + state.instance[prop] = value; + return true; + }, + getPrototypeOf() { + return Object.getPrototypeOf(state.instance); + }, + ownKeys() { + return Reflect.ownKeys(state.instance); + }, + getOwnPropertyDescriptor(_target, prop) { + const descriptor = Reflect.getOwnPropertyDescriptor(state.instance, prop); + // The proxy target is an empty object; reported descriptors must be + // configurable to satisfy proxy invariants. + return descriptor ? { + ...descriptor, + configurable: true + } : undefined; + } + }); +} +//# sourceMappingURL=partner-dispatcher.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/partner-dispatcher.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/partner-dispatcher.js.map new file mode 100644 index 0000000000..e26f6e7313 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/partner-dispatcher.js.map @@ -0,0 +1 @@ +{"version":3,"file":"partner-dispatcher.js","names":["RealfiSDK","fetchProxyLogicSnapshot","matchProtocolVersion","UnknownProtocolVersionError","isOrderBuilder","prop","startsWith","requiresFreshVersion","createPartnerCardanoSDK","blaze","params","clientSource","options","createInstance","p","create","initial","versionDetection","detectInput","proxyBootstrap","treasuryBootstrap","stakingVaultBootstrap","yieldOracleBootstrap","undefined","assetNameHex","sUSDrAssetNameHex","enableTrace","carriedExtras","state","instance","lastLogicHash","protocolScriptHash","doRefresh","oneShotPolicyId","snapshot","provider","logicHash","detected","previous","version","next","scriptDeploymentAddress","defaultSlippageToleranceBps","console","warn","onVersionChange","callbackError","refresh","inflightRefresh","finally","Proxy","Object","get","_target","live","value","args","refreshError","current","builder","Error","apply","bind","has","set","getPrototypeOf","ownKeys","Reflect","getOwnPropertyDescriptor","descriptor","configurable"],"sources":["../../../src/sdk/partner-dispatcher.ts"],"sourcesContent":["// Per-build protocol-version dispatch for the partner facade (\".\" entry).\n// First-party consumers (\"./internal\") keep frozen version instances.\n\nimport type { Provider } from \"@blaze-cardano/query\";\nimport type { Blaze, Core, Wallet } from \"@blaze-cardano/sdk\";\n\nimport { RealfiSDK } from \"./index.js\";\nimport type {\n IRealfiCardanoCreateOptions,\n TDetectedVersion,\n TRealfiCardanoSDK,\n} from \"./partner.js\";\nimport type { TClientSource } from \"./shared/client-id.js\";\nimport {\n fetchProxyLogicSnapshot,\n type IDetectInput,\n matchProtocolVersion,\n type TDetectedSDKParams,\n UnknownProtocolVersionError,\n} from \"./shared/detect-params.js\";\n\n// Identity fields the dispatcher reads off a live version instance; every\n// other member is reached by property delegation.\ninterface IVersionInstance {\n readonly version: TDetectedVersion;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n}\n\ninterface IDispatchState {\n instance: IVersionInstance;\n lastLogicHash: string;\n inflightRefresh?: Promise;\n}\n\n// Caller-supplied build options carried into a recreated instance. Cached\n// referenceInputs stay behind — they belong to the previous version's scripts.\ntype TCarriedParamExtras = {\n scriptDeploymentAddress?: unknown;\n defaultSlippageToleranceBps?: unknown;\n};\n\nconst isOrderBuilder = (prop: PropertyKey): prop is string =>\n typeof prop === \"string\" && prop.startsWith(\"build\");\n\nconst requiresFreshVersion = (prop: string): boolean =>\n prop === \"buildStakeContinuation\";\n\n/**\n * Create a partner SDK that re-resolves the live protocol version before each\n * order build and dispatches to the matching version instance.\n *\n * Detection identity: the one-shot NFT policy (deterministic from\n * `proxyBootstrap`). The proxy UTxO ref changes on every settings update, but\n * the NFT lookup follows it, so each refresh is exactly one provider call.\n * The fetched `logic` hash is compared against the current instance's\n * `protocolScriptHash` — equal in every detectable version — and only on a\n * mismatch does the (local, provider-free) version matcher run and the\n * underlying instance get recreated, preserving `clientSource` so partner\n * order metadata survives the switch. Read helpers never trigger a refresh.\n *\n * No result caching beyond the last observed hash: freshness only shrinks the\n * stale window — correctness is enforced on-chain, and a stale-version build\n * is recovered via order invalidation.\n *\n * Refresh failure policy: an {@link UnknownProtocolVersionError} rejects the\n * build — the chain moved to a version this SDK cannot target. Any other\n * refresh error (e.g. a transient provider failure) logs a warning and the\n * build proceeds on the last known version, which is exactly what an\n * `\"at-init\"` instance would have produced. Stake continuations are stricter\n * under this `\"per-build\"` dispatcher: their address, schema, and\n * exchange-rate quote must all match the current deployment, so\n * `buildStakeContinuation` fails closed on every refresh error here. An\n * `\"at-init\"` instance, or a raw version-pinned SDK used outside this\n * dispatcher, never refreshes at all and carries no such guarantee.\n *\n * Method identity is unstable across accesses (`sdk.buildX !== sdk.buildX`):\n * each access returns a fresh wrapper over the live instance, by design.\n */\nexport async function createPartnerCardanoSDK<\n P extends Provider,\n W extends Wallet,\n>(\n blaze: Blaze,\n params: TDetectedSDKParams,\n clientSource: TClientSource,\n options?: IRealfiCardanoCreateOptions,\n): Promise> {\n const createInstance = (p: TDetectedSDKParams): Promise =>\n (\n RealfiSDK as {\n create: (\n blaze: Blaze,\n params: TDetectedSDKParams & { clientSource?: TClientSource },\n ) => Promise;\n }\n ).create(blaze, { ...p, clientSource }) as Promise;\n\n const initial = await createInstance(params);\n\n if ((options?.versionDetection ?? \"per-build\") === \"at-init\") {\n // Frozen instance — never re-detects.\n return initial as unknown as TRealfiCardanoSDK;\n }\n\n const detectInput: IDetectInput = {\n proxyBootstrap: params.proxyBootstrap,\n treasuryBootstrap: params.treasuryBootstrap,\n stakingVaultBootstrap: params.stakingVaultBootstrap,\n yieldOracleBootstrap:\n \"yieldOracleBootstrap\" in params\n ? params.yieldOracleBootstrap\n : undefined,\n assetNameHex: params.assetNameHex,\n sUSDrAssetNameHex: params.sUSDrAssetNameHex,\n enableTrace: params.enableTrace,\n };\n const carriedExtras = params as TCarriedParamExtras;\n\n const state: IDispatchState = {\n instance: initial,\n // Every detectable version's proxy datum `logic` hash is that version\n // class's protocolScriptHash.\n lastLogicHash: initial.protocolScriptHash,\n };\n\n const doRefresh = async (): Promise => {\n const oneShotPolicyId = state.instance\n .oneShotPolicyId as unknown as Core.Hash28ByteBase16;\n const snapshot = await fetchProxyLogicSnapshot(\n blaze.provider,\n oneShotPolicyId,\n );\n if (snapshot.logicHash === state.lastLogicHash) return;\n\n const detected = await matchProtocolVersion(\n snapshot,\n oneShotPolicyId,\n detectInput,\n );\n const previous = state.instance.version;\n const next = await createInstance({\n ...detected,\n scriptDeploymentAddress: carriedExtras.scriptDeploymentAddress,\n defaultSlippageToleranceBps: carriedExtras.defaultSlippageToleranceBps,\n } as TDetectedSDKParams);\n state.instance = next;\n state.lastLogicHash = snapshot.logicHash;\n if (next.version !== previous) {\n console.warn(\n `[realfi-sdk] Protocol version changed: ${previous} -> ${next.version}. Order builders now target ${next.version}.`,\n { previous, next: next.version },\n );\n // A throwing partner callback must not break the build.\n try {\n options?.onVersionChange?.(previous, next.version);\n } catch (callbackError) {\n console.warn(\"[realfi-sdk] onVersionChange threw\", callbackError);\n }\n }\n };\n\n // Concurrent builds share one in-flight refresh.\n const refresh = (): Promise => {\n if (!state.inflightRefresh) {\n state.inflightRefresh = doRefresh().finally(() => {\n state.inflightRefresh = undefined;\n });\n }\n return state.inflightRefresh;\n };\n\n // Delegating proxy: members always resolve against the live instance, so a\n // version switch also switches the available surface (e.g. V1-line-only\n // builders). Order builds refresh first; everything else passes through.\n return new Proxy(Object.create(null) as object, {\n get(_target, prop) {\n const live = state.instance as unknown as Record;\n const value = live[prop];\n if (typeof value !== \"function\") return value;\n if (isOrderBuilder(prop)) {\n return async (...args: unknown[]): Promise => {\n try {\n await refresh();\n } catch (refreshError) {\n // Unknown on-chain version: this SDK cannot build a valid order.\n if (\n refreshError instanceof UnknownProtocolVersionError ||\n requiresFreshVersion(prop)\n ) {\n throw refreshError;\n }\n // Transient failure (e.g. provider blip): build on the last known\n // version — no worse than an \"at-init\" instance.\n console.warn(\n `[realfi-sdk] Protocol-version refresh failed; ${prop} builds against last known version ${state.instance.version}.`,\n refreshError,\n );\n }\n const current = state.instance as unknown as Record<\n PropertyKey,\n unknown\n >;\n const builder = current[prop];\n if (typeof builder !== \"function\") {\n throw new Error(\n `[realfi-sdk] ${prop} is not available on protocol version ${state.instance.version}; the live protocol version changed since this SDK was created.`,\n );\n }\n return (builder as (...a: unknown[]) => unknown).apply(\n state.instance,\n args,\n );\n };\n }\n return (value as (...a: unknown[]) => unknown).bind(state.instance);\n },\n has(_target, prop) {\n return prop in (state.instance as object);\n },\n set(_target, prop, value) {\n (state.instance as unknown as Record)[prop] = value;\n return true;\n },\n getPrototypeOf() {\n return Object.getPrototypeOf(state.instance);\n },\n ownKeys() {\n return Reflect.ownKeys(state.instance as object);\n },\n getOwnPropertyDescriptor(_target, prop) {\n const descriptor = Reflect.getOwnPropertyDescriptor(\n state.instance as object,\n prop,\n );\n // The proxy target is an empty object; reported descriptors must be\n // configurable to satisfy proxy invariants.\n return descriptor ? { ...descriptor, configurable: true } : undefined;\n },\n }) as TRealfiCardanoSDK;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/partner.js b/modules/realfi-partner-sdk/dist/esm/sdk/partner.js new file mode 100644 index 0000000000..6acecf31eb --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/partner.js @@ -0,0 +1,2 @@ +export {}; +//# sourceMappingURL=partner.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/partner.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/partner.js.map new file mode 100644 index 0000000000..7763c9ee8a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/partner.js.map @@ -0,0 +1 @@ +{"version":3,"file":"partner.js","names":[],"sources":["../../../src/sdk/partner.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport type { Blaze, Wallet } from \"@blaze-cardano/sdk\";\n\nimport type {\n IDetectInput,\n TDetectedSDKParams,\n TNetworkPreset,\n} from \"./shared/detect-params.js\";\nimport type { IRealfiSDKParamsV0_4, RealfiSDKV0_4 } from \"./v0_4/index.js\";\nimport type { IRealfiSDKParamsV1_0, RealfiSDKV1_0 } from \"./v1_0/index.js\";\nimport type {\n IRealfiSDKParamsV1_0Rc1,\n RealfiSDKV1_0Rc1,\n} from \"./v1_0_rc1/index.js\";\nimport type {\n IRealfiSDKParamsV1_1Rc1,\n RealfiSDKV1_1Rc1,\n} from \"./v1_1_rc1/index.js\";\nexport type {\n IBuildStakeContinuationParams,\n IStakeContinuation,\n IStakeContinuationSwap,\n} from \"./v1/family.js\";\n\n// Version discriminant: a readonly literal on every current-line SDK class,\n// so TRealfiCardanoSDK narrows as a tagged union.\ntype TCardanoVersionProp = \"version\";\n\n// Read helpers available on every current-line SDK.\ntype TCardanoReadMethods =\n | \"getRawProxyDatum\"\n | \"getParsedProxyDatum\"\n | \"getSettings\"\n | \"getTreasuryDatum\"\n | \"getVaultDatum\"\n | \"getUsdrAssetId\"\n | \"getSusdrAssetId\";\n\n// Order builders common to V0_4 and the V1 line.\ntype TCardanoOrderMethods =\n | \"buildMintOrderTx\"\n | \"buildRedeemOrderTx\"\n | \"buildStakeOrderTx\"\n | \"buildUnstakeOrderTx\"\n | \"buildDepositOrderTx\"\n | \"buildWithdrawOrderTx\"\n | \"buildCancelOrdersTx\"\n | \"buildClaimTimelockTx\";\n\n// V1-line order builder on the partner surface; direct mint/burn stay internal-only.\ntype TCardanoOrderMethodsV1 =\n | \"buildInvalidatedOrdersTx\"\n | \"buildStakeContinuation\";\n\n/** Partner-facing surface of the V0_4 SDK: order builders + read helpers only. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiCardanoSDKV0_4<\n P extends Provider,\n W extends Wallet,\n> extends Pick<\n RealfiSDKV0_4,\n TCardanoVersionProp | TCardanoReadMethods | TCardanoOrderMethods\n> {}\n\n/** Partner-facing surface of the V1_0 SDK. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiCardanoSDKV1_0<\n P extends Provider,\n W extends Wallet,\n> extends Pick<\n RealfiSDKV1_0,\n | TCardanoVersionProp\n | TCardanoReadMethods\n | TCardanoOrderMethods\n | TCardanoOrderMethodsV1\n> {}\n\n/** Partner-facing surface of the V1_0_Rc1 SDK. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiCardanoSDKV1_0Rc1<\n P extends Provider,\n W extends Wallet,\n> extends Pick<\n RealfiSDKV1_0Rc1,\n | TCardanoVersionProp\n | TCardanoReadMethods\n | TCardanoOrderMethods\n | TCardanoOrderMethodsV1\n> {}\n\n/** Partner-facing surface of the V1_1_Rc1 SDK. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiCardanoSDKV1_1Rc1<\n P extends Provider,\n W extends Wallet,\n> extends Pick<\n RealfiSDKV1_1Rc1,\n | TCardanoVersionProp\n | TCardanoReadMethods\n | TCardanoOrderMethods\n | TCardanoOrderMethodsV1\n> {}\n\n/** Any partner-facing SDK the facade can return after version detection. */\nexport type TRealfiCardanoSDK

=\n | IRealfiCardanoSDKV0_4\n | IRealfiCardanoSDKV1_0\n | IRealfiCardanoSDKV1_0Rc1\n | IRealfiCardanoSDKV1_1Rc1;\n\n/** Protocol version as reported by on-chain detection. */\nexport type TDetectedVersion = TDetectedSDKParams[\"version\"];\n\n/** Version-detection behavior of SDK instances returned by `create`. */\nexport type TVersionDetectionMode = \"per-build\" | \"at-init\";\n\n/** Options for the partner facade's `create`. */\nexport interface IRealfiCardanoCreateOptions {\n /**\n * `\"per-build\"` (default): before every order build (`build*`), re-resolve\n * the live protocol version — one provider lookup — and dispatch to the\n * matching version instance, so an on-chain protocol upgrade needs no\n * re-init. Read helpers (`get*`) never re-detect; they use the version as of\n * the last check. `\"at-init\"`: the instance is frozen at the version it was\n * created with and never re-detects.\n *\n * This binding happens at property access, not at call time — a cached\n * reference (`const f = sdk.getUsdrAssetId`) keeps targeting the instance\n * live when it was read, even if a later `build*Tx` call switches versions.\n * Call `sdk.getX()` directly to always read the live version.\n *\n * Refresh failures under `\"per-build\"`: an `UnknownProtocolVersionError`\n * rejects the build (the chain runs a version this SDK does not know); any\n * other error — e.g. a transient provider failure — logs a warning and the\n * build proceeds on the last known version. `buildStakeContinuation` fails\n * closed on every refresh error under `\"per-build\"`, because its address,\n * schema, and quote must all come from the currently deployed version.\n * `\"at-init\"` instances, and raw version-pinned SDKs used outside this\n * factory, never refresh and so carry no such guarantee.\n */\n versionDetection?: TVersionDetectionMode;\n /**\n * Called once per observed protocol-version change, after builders have\n * switched to the new version. Exceptions are logged and swallowed.\n */\n onVersionChange?: (\n previous: TDetectedVersion,\n next: TDetectedVersion,\n ) => void;\n}\n\n/**\n * Partner-facing view of the RealfiSDK facade. `create` returns the narrowed\n * `IRealfiCardanoSDK` surface (order builders + read helpers); deploy/operator\n * methods are reachable only through the internal entry point.\n *\n * The static return type reflects the version at creation time. Under\n * `\"per-build\"` detection the runtime instance may later dispatch to a newer\n * protocol version — the partner surface is call-compatible across versions,\n * so existing call sites keep working; `version` reports the live value.\n */\nexport interface IRealfiCardanoFactory {\n create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_4,\n options?: IRealfiCardanoCreateOptions,\n ): Promise>;\n create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0,\n options?: IRealfiCardanoCreateOptions,\n ): Promise>;\n create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0Rc1,\n options?: IRealfiCardanoCreateOptions,\n ): Promise>;\n create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_1Rc1,\n options?: IRealfiCardanoCreateOptions,\n ): Promise>;\n create

(\n blaze: Blaze,\n params: TDetectedSDKParams,\n options?: IRealfiCardanoCreateOptions,\n ): Promise>;\n detectParams(\n provider: Provider,\n config: IDetectInput,\n ): Promise;\n detectParams(\n provider: Provider,\n network: TNetworkPreset,\n ): Promise;\n}\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/base.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/base.js new file mode 100644 index 0000000000..b7d0cf4564 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/base.js @@ -0,0 +1,329 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import { Core } from "@blaze-cardano/sdk"; +import { DEFAULT_CLIENT_SOURCE, SDK_VERSION } from "./client-id.js"; +import { buildOrderOriginMetadatum, ORDER_ORIGIN_METADATA_LABEL, resolveTimelockNativeScript } from "./timelock.js"; +import { addDirectOutput, credentialFromScript, deployScript, getReferenceInputs, readSingletonDatum, rewardAccountFromScript } from "./utils.js"; + +/** + * Base interface for SDK version implementations. + * Each version implements this with version-specific logic. + */ + +/** + * Extended interface for SDK versions with treasury support (V0_1+) + */ + +const isRecord = value => typeof value === "object" && value !== null; +const isFlatProxySettings = value => isRecord(value) && "mint_permission" in value && "burn_permission" in value && "withdraw_permission" in value && "deposit_permission" in value && "stake_permission" in value && "unstake_permission" in value && Array.isArray(value.reserve_assets); +const isNestedProxySettings = value => isRecord(value) && isRecord(value.permissions) && "mint" in value.permissions && "burn" in value.permissions && "withdraw" in value.permissions && "deposit" in value.permissions && "stake" in value.permissions && "unstake" in value.permissions && isRecord(value.config) && Array.isArray(value.config.reserve_assets); +/** + * Abstract base class for SDK versions. + * Provides common implementation and utilities. + */ +export class RealfiSDKBase { + constructor(blaze, params, cachedReferenceInputs) { + /** Blaze instance for blockchain interactions */ + _defineProperty(this, "blaze", void 0); + /** Bootstrap parameters */ + _defineProperty(this, "proxyBootstrap", void 0); + /** Asset name hex for the stablecoin */ + _defineProperty(this, "assetNameHex", void 0); + /** Cached reference inputs for performance (populated on first fetch) */ + _defineProperty(this, "cachedReferenceInputs", void 0); + /** + * Address used to deploy reference scripts and to resolve them from. + * When undefined, Blaze's burn address is used for both. + */ + _defineProperty(this, "scriptDeploymentAddress", void 0); + /** Cached raw proxy datum result (populated on first fetch) */ + _defineProperty(this, "cachedRawProxyDatumResult", void 0); + /** Cached parsed proxy datum result (populated on first fetch) */ + _defineProperty(this, "cachedProxyDatumResult", void 0); + /** One-shot output reference (derived from bootstrap) */ + _defineProperty(this, "oneShotTxoRef", void 0); + /** Enable trace output in Plutus scripts */ + _defineProperty(this, "enableTrace", void 0); + /** Origin attached to all built order transactions. */ + _defineProperty(this, "clientSource", void 0); + /** SDK version attached to all built order transactions. */ + _defineProperty(this, "sdkVersion", void 0); + // Abstract properties - each version must provide these + _defineProperty(this, "version", void 0); + _defineProperty(this, "stablecoinPolicyId", void 0); + _defineProperty(this, "oneShotPolicyId", void 0); + _defineProperty(this, "protocolScriptHash", void 0); + // Scripts - each version stores its own instantiated scripts + _defineProperty(this, "oneShotScript", void 0); + _defineProperty(this, "protocolScript", void 0); + _defineProperty(this, "mintProxyScript", void 0); + this.blaze = blaze; + this.proxyBootstrap = params.proxyBootstrap; + this.assetNameHex = params.assetNameHex; + this.enableTrace = params.enableTrace ?? false; + this.cachedReferenceInputs = cachedReferenceInputs ?? {}; + this.scriptDeploymentAddress = params.scriptDeploymentAddress; + this.clientSource = params.clientSource ?? DEFAULT_CLIENT_SOURCE; + this.sdkVersion = SDK_VERSION; + this.oneShotTxoRef = { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }; + } + + /** Get the network from blaze */ + get network() { + return this.blaze.provider.network; + } + + /** + * Start a transaction with a single setMetadata call. Origin label (55534473) is always + * present and not overridable; extra labels are merged in before the origin is set. + */ + newOrderTransaction(extraLabels) { + const map = new Map(extraLabels ?? []); + map.set(ORDER_ORIGIN_METADATA_LABEL, buildOrderOriginMetadatum(this.clientSource, this.sdkVersion)); + return this.blaze.newTransaction().setMetadata(new Core.Metadata(map)); + } + + /** + * Helper to get reference inputs for scripts. + * Fetched values are cached for subsequent calls. + */ + async getScriptReferenceInputs(scriptHashes) { + const cached = {}; + if (this.cachedReferenceInputs.protocolRefInput) { + cached.protocol = this.cachedReferenceInputs.protocolRefInput; + } + if (this.cachedReferenceInputs.proxyRefInput) { + cached.proxy = this.cachedReferenceInputs.proxyRefInput; + } + if (this.cachedReferenceInputs.treasuryRefInput) { + cached.treasury = this.cachedReferenceInputs.treasuryRefInput; + } + if (this.cachedReferenceInputs.orderRefInput) { + cached.order = this.cachedReferenceInputs.orderRefInput; + } + if (this.cachedReferenceInputs.stakingVaultRefInput) { + cached.stakingVault = this.cachedReferenceInputs.stakingVaultRefInput; + } + // V1.0 additional protocol scripts + if (this.cachedReferenceInputs.protocolMintRefInput) { + cached.protocolMint = this.cachedReferenceInputs.protocolMintRefInput; + } + if (this.cachedReferenceInputs.protocolStakeRefInput) { + cached.protocolStake = this.cachedReferenceInputs.protocolStakeRefInput; + } + if (this.cachedReferenceInputs.protocolManagementRefInput) { + cached.protocolManagement = this.cachedReferenceInputs.protocolManagementRefInput; + } + const result = await getReferenceInputs(this.blaze, scriptHashes, cached, this.scriptDeploymentAddress); + // Cache fetched values for subsequent calls + if (result.protocol && !this.cachedReferenceInputs.protocolRefInput) { + this.cachedReferenceInputs.protocolRefInput = result.protocol; + } + if (result.proxy && !this.cachedReferenceInputs.proxyRefInput) { + this.cachedReferenceInputs.proxyRefInput = result.proxy; + } + if (result.treasury && !this.cachedReferenceInputs.treasuryRefInput) { + this.cachedReferenceInputs.treasuryRefInput = result.treasury; + } + if (result.order && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = result.order; + } + if (result.stakingVault && !this.cachedReferenceInputs.stakingVaultRefInput) { + this.cachedReferenceInputs.stakingVaultRefInput = result.stakingVault; + } + // V1.0 additional protocol scripts caching + if (result.protocolMint && !this.cachedReferenceInputs.protocolMintRefInput) { + this.cachedReferenceInputs.protocolMintRefInput = result.protocolMint; + } + if (result.protocolStake && !this.cachedReferenceInputs.protocolStakeRefInput) { + this.cachedReferenceInputs.protocolStakeRefInput = result.protocolStake; + } + if (result.protocolManagement && !this.cachedReferenceInputs.protocolManagementRefInput) { + this.cachedReferenceInputs.protocolManagementRefInput = result.protocolManagement; + } + return result; + } + + /** + * Resolve the bootstrap UTXO from the provider. + * This will fail if the UTXO has already been consumed (i.e., the one-shot token was minted). + */ + async resolveBootstrapUtxo() { + const utxos = await this.blaze.provider.resolveUnspentOutputs([new Core.TransactionInput(this.oneShotTxoRef.transaction_id, this.oneShotTxoRef.output_index)]); + const utxo = utxos[0]; + if (!utxo) { + throw new Error("Bootstrap UTXO not found. It may have already been consumed (one-shot token already minted)."); + } + return utxo; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Common Protocol Operations (shared across all versions) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Deploy the protocol script as a reference script. + */ + async deployProtocol() { + return deployScript(this.blaze, this.protocolScript, this.scriptDeploymentAddress); + } + + /** + * Deploy the mint proxy script as a reference script. + */ + async deployMintProxy() { + return deployScript(this.blaze, this.mintProxyScript, this.scriptDeploymentAddress); + } + + /** + * Register the protocol stake credential. + */ + registerProtocolStake() { + const stakeCredential = credentialFromScript(this.protocolScript); + const registerTx = this.blaze.newTransaction().addRegisterStake(stakeCredential); + return registerTx; + } + + /** + * Get the protocol reward account. + */ + getProtocolRewardAccount() { + return rewardAccountFromScript(this.protocolScript, this.network); + } + + /** + * Get version-agnostic proxy settings. + * Extracts only the common fields shared across V0_2+ protocol versions. + */ + async getSettings() { + const { + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const settings = parsedProxyDatum.settings; + if (isFlatProxySettings(settings)) { + return { + mint_permission: settings.mint_permission, + burn_permission: settings.burn_permission, + withdraw_permission: settings.withdraw_permission, + deposit_permission: settings.deposit_permission, + stake_permission: settings.stake_permission, + unstake_permission: settings.unstake_permission, + reserve_assets: settings.reserve_assets + }; + } + if (isNestedProxySettings(settings)) { + return { + mint_permission: settings.permissions.mint, + burn_permission: settings.permissions.burn, + withdraw_permission: settings.permissions.withdraw, + deposit_permission: settings.permissions.deposit, + stake_permission: settings.permissions.stake, + unstake_permission: settings.permissions.unstake, + reserve_assets: settings.config.reserve_assets + }; + } + throw new Error(`getSettings() is not supported for protocol version ${this.version}`); + } + + /** The USDr asset ID (stablecoin policy + USDr asset name). */ + getUsdrAssetId() { + return Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Timelock Operations (shared across versions with staking support) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction that claims USDr locked in a timelock address after + * the unstake cooldown has expired. + * + * Reconstructs the timelock native script for the owner's key hash and the + * original unlock slot, then spends the UTxO. `owner` is the timelock owner + * (defaults to the connected wallet) and is set as the required signer, so a + * custodian holding the user's key can claim. The released USDr goes to + * `destination`, or to `owner` when only an owner is given; with neither it + * returns to the connected wallet. + * + * A single owner key has two timelock shapes in the protocol, differing only + * in element order: `buildUnstakeOrderTx` locks to + * `AllOf { Signature, After }` and the treasury/multisig unstake path to + * `AllOf { After, Signature }`. They hash differently, so which one applies + * is read off the UTxO's own locking address rather than assumed. + */ + async buildClaimTimelockTx(params) { + const ownerAddress = params.owner ?? (await this.blaze.wallet.getChangeAddress()); + const ownerKeyHash = ownerAddress.getProps().paymentPart?.hash; + if (!ownerKeyHash) { + throw new Error("Timelock owner address has no payment key credential"); + } + const input = new Core.TransactionInput(Core.TransactionId(params.resultUtxo.txHash), BigInt(params.resultUtxo.index)); + const [utxo] = await this.blaze.provider.resolveUnspentOutputs([input]); + if (!utxo) { + throw new Error(`Could not resolve UTxO ${params.resultUtxo.txHash}#${params.resultUtxo.index}`); + } + const nativeScript = resolveTimelockNativeScript(utxo.output().address(), ownerKeyHash, params.unlockSlot); + const scriptWrapped = Core.Script.newNativeScript(nativeScript); + const tx = this.newOrderTransaction().setValidFrom(Core.Slot(Number(params.unlockSlot))).provideScript(scriptWrapped).addRequiredSigner(Core.Ed25519KeyHashHex(ownerKeyHash)).addInput(utxo); + + // Route funds to `destination`, else to an explicit `owner` (so a custodial + // claim reaches the user); with neither, value returns to the connected + // wallet as change. + const recipient = params.destination ?? params.owner; + if (recipient) { + addDirectOutput(tx, recipient, utxo.output().amount()); + } + return tx; + } + + /** + * Fetch the live proxy UTxO and inline datum without attempting a + * version-specific parse. Cached after first fetch. + * + * `readSingletonDatum` both retries the lookup (a not-found answer is the + * provider's index lagging the UTxO's latest move, not a missing proxy — + * Blockfrost returns HTTP 404 in that window, Sentry TREASURY-ADMIN-API-G) + * and repairs a datum the provider reports as a hash. + */ + async getRawProxyDatum() { + if (this.cachedRawProxyDatumResult) { + return this.cachedRawProxyDatumResult; + } + if (this.cachedProxyDatumResult) { + const { + proxyUtxo, + proxyDatum + } = this.cachedProxyDatumResult; + this.cachedRawProxyDatumResult = { + proxyUtxo, + proxyDatum + }; + return this.cachedRawProxyDatumResult; + } + const { + utxo: proxyUtxo, + datum: proxyDatum + } = await readSingletonDatum(this.blaze.provider, Core.AssetId(this.oneShotPolicyId)); + const result = { + proxyUtxo, + proxyDatum + }; + this.cachedRawProxyDatumResult = result; + return result; + } + + /** + * @deprecated Use getParsedProxyDatum() or getRawProxyDatum() depending on + * whether the caller needs a version-specific schema parse. + */ + async getProxyDatum() { + return this.getParsedProxyDatum(); + } + + // Abstract methods - each version must implement these +} +//# sourceMappingURL=base.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/base.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/base.js.map new file mode 100644 index 0000000000..498f096505 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/base.js.map @@ -0,0 +1 @@ +{"version":3,"file":"base.js","names":["Core","DEFAULT_CLIENT_SOURCE","SDK_VERSION","buildOrderOriginMetadatum","ORDER_ORIGIN_METADATA_LABEL","resolveTimelockNativeScript","addDirectOutput","credentialFromScript","deployScript","getReferenceInputs","readSingletonDatum","rewardAccountFromScript","isRecord","value","isFlatProxySettings","Array","isArray","reserve_assets","isNestedProxySettings","permissions","config","RealfiSDKBase","constructor","blaze","params","cachedReferenceInputs","_defineProperty","proxyBootstrap","assetNameHex","enableTrace","scriptDeploymentAddress","clientSource","sdkVersion","oneShotTxoRef","transaction_id","txHash","output_index","outputIndex","network","provider","newOrderTransaction","extraLabels","map","Map","set","newTransaction","setMetadata","Metadata","getScriptReferenceInputs","scriptHashes","cached","protocolRefInput","protocol","proxyRefInput","proxy","treasuryRefInput","treasury","orderRefInput","order","stakingVaultRefInput","stakingVault","protocolMintRefInput","protocolMint","protocolStakeRefInput","protocolStake","protocolManagementRefInput","protocolManagement","result","resolveBootstrapUtxo","utxos","resolveUnspentOutputs","TransactionInput","utxo","Error","deployProtocol","protocolScript","deployMintProxy","mintProxyScript","registerProtocolStake","stakeCredential","registerTx","addRegisterStake","getProtocolRewardAccount","getSettings","parsedProxyDatum","getParsedProxyDatum","settings","mint_permission","burn_permission","withdraw_permission","deposit_permission","stake_permission","unstake_permission","mint","burn","withdraw","deposit","stake","unstake","version","getUsdrAssetId","AssetId","stablecoinPolicyId","buildClaimTimelockTx","ownerAddress","owner","wallet","getChangeAddress","ownerKeyHash","getProps","paymentPart","hash","input","TransactionId","resultUtxo","BigInt","index","nativeScript","output","address","unlockSlot","scriptWrapped","Script","newNativeScript","tx","setValidFrom","Slot","Number","provideScript","addRequiredSigner","Ed25519KeyHashHex","addInput","recipient","destination","amount","getRawProxyDatum","cachedRawProxyDatumResult","cachedProxyDatumResult","proxyUtxo","proxyDatum","datum","oneShotPolicyId","getProxyDatum"],"sources":["../../../../src/sdk/shared/base.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport { type Blaze, Core, TxBuilder, type Wallet } from \"@blaze-cardano/sdk\";\n\nimport {\n DEFAULT_CLIENT_SOURCE,\n SDK_VERSION,\n type TClientSource,\n} from \"./client-id.js\";\nimport {\n buildOrderOriginMetadatum,\n ORDER_ORIGIN_METADATA_LABEL,\n resolveTimelockNativeScript,\n} from \"./timelock.js\";\nimport type {\n IBaseSDKParams,\n ICachedReferenceInputs,\n IOutputReference,\n IProxyDatumResult,\n IProxySettings,\n IRawProxyDatumResult,\n ITreasuryDatumResult,\n TProtocolVersion,\n} from \"./types.js\";\nimport {\n addDirectOutput,\n credentialFromScript,\n deployScript,\n getReferenceInputs,\n readSingletonDatum,\n rewardAccountFromScript,\n} from \"./utils.js\";\n\n/**\n * Base interface for SDK version implementations.\n * Each version implements this with version-specific logic.\n */\nexport interface IRealfiSDK {\n /** Protocol version */\n readonly version: TProtocolVersion;\n\n /** Stablecoin policy ID (mint proxy) */\n readonly stablecoinPolicyId: Core.PolicyId;\n\n /** One-shot NFT policy ID */\n readonly oneShotPolicyId: Core.PolicyId;\n\n /** Protocol script hash */\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n\n /** Get the raw proxy UTxO + inline datum from the one-shot token UTXO */\n getRawProxyDatum(): Promise;\n\n /** Get and parse the proxy datum using this SDK version's schema */\n getParsedProxyDatum(): Promise>;\n\n /** @deprecated Use getParsedProxyDatum() or getRawProxyDatum() */\n getProxyDatum(): Promise>;\n\n /** Deploy the protocol script */\n deployProtocol(): Promise;\n\n /** Deploy the mint proxy script */\n deployMintProxy(): Promise;\n\n /** Register the protocol stake credential */\n registerProtocolStake(): TxBuilder;\n\n /** Get the protocol reward account */\n getProtocolRewardAccount(): Core.RewardAccount;\n\n /** Mint the one-shot NFT with initial datum */\n mintOneShot(\n receiverAddress: Core.Address,\n datum: unknown,\n ): Promise<{\n tx: TxBuilder;\n policyId: Core.PolicyId;\n }>;\n\n /** Update the one-shot datum */\n updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: unknown,\n ): Promise;\n\n /** Get version-agnostic proxy settings (common fields only) */\n getSettings(): Promise;\n}\n\n/**\n * Extended interface for SDK versions with treasury support (V0_1+)\n */\ntype TNestedProxySettings = {\n permissions: {\n mint: IProxySettings[\"mint_permission\"];\n burn: IProxySettings[\"burn_permission\"];\n withdraw: IProxySettings[\"withdraw_permission\"];\n deposit: IProxySettings[\"deposit_permission\"];\n stake: IProxySettings[\"stake_permission\"];\n unstake: IProxySettings[\"unstake_permission\"];\n };\n config: { reserve_assets: IProxySettings[\"reserve_assets\"] };\n};\n\nconst isRecord = (value: unknown): value is Record =>\n typeof value === \"object\" && value !== null;\n\nconst isFlatProxySettings = (value: unknown): value is IProxySettings =>\n isRecord(value) &&\n \"mint_permission\" in value &&\n \"burn_permission\" in value &&\n \"withdraw_permission\" in value &&\n \"deposit_permission\" in value &&\n \"stake_permission\" in value &&\n \"unstake_permission\" in value &&\n Array.isArray(value.reserve_assets);\n\nconst isNestedProxySettings = (value: unknown): value is TNestedProxySettings =>\n isRecord(value) &&\n isRecord(value.permissions) &&\n \"mint\" in value.permissions &&\n \"burn\" in value.permissions &&\n \"withdraw\" in value.permissions &&\n \"deposit\" in value.permissions &&\n \"stake\" in value.permissions &&\n \"unstake\" in value.permissions &&\n isRecord(value.config) &&\n Array.isArray(value.config.reserve_assets);\n\nexport interface IRealfiSDKWithTreasury extends IRealfiSDK {\n /** Treasury NFT asset ID */\n readonly treasuryNFTAssetId: Core.AssetId;\n\n /** Treasury script hash */\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n\n /** Mint the treasury NFT */\n mintTreasuryNFT(\n utxo?: Core.TransactionUnspentOutput,\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }>;\n\n /** Deploy the treasury script (requires original UTXO for script instantiation) */\n deployTreasury(utxo: Core.TransactionUnspentOutput): Promise;\n\n /** Get the treasury datum */\n getTreasuryDatum(): Promise>;\n}\n\n/**\n * Abstract base class for SDK versions.\n * Provides common implementation and utilities.\n */\nexport abstract class RealfiSDKBase<\n P extends Provider,\n W extends Wallet,\n> implements IRealfiSDK {\n /** Blaze instance for blockchain interactions */\n protected readonly blaze: Blaze;\n\n /** Bootstrap parameters */\n protected readonly proxyBootstrap: IBaseSDKParams[\"proxyBootstrap\"];\n\n /** Asset name hex for the stablecoin */\n protected readonly assetNameHex: string;\n\n /** Cached reference inputs for performance (populated on first fetch) */\n protected cachedReferenceInputs: ICachedReferenceInputs;\n\n /**\n * Address used to deploy reference scripts and to resolve them from.\n * When undefined, Blaze's burn address is used for both.\n */\n protected readonly scriptDeploymentAddress?: Core.Address;\n\n /** Cached raw proxy datum result (populated on first fetch) */\n protected cachedRawProxyDatumResult?: IRawProxyDatumResult;\n\n /** Cached parsed proxy datum result (populated on first fetch) */\n protected cachedProxyDatumResult?: IProxyDatumResult;\n\n /** One-shot output reference (derived from bootstrap) */\n protected readonly oneShotTxoRef: IOutputReference;\n\n /** Enable trace output in Plutus scripts */\n readonly enableTrace: boolean;\n\n /** Origin attached to all built order transactions. */\n readonly clientSource: TClientSource;\n\n /** SDK version attached to all built order transactions. */\n readonly sdkVersion: string;\n\n // Abstract properties - each version must provide these\n abstract readonly version: TProtocolVersion;\n abstract readonly stablecoinPolicyId: Core.PolicyId;\n abstract readonly oneShotPolicyId: Core.PolicyId;\n abstract readonly protocolScriptHash: Core.Hash28ByteBase16;\n\n // Scripts - each version stores its own instantiated scripts\n protected abstract readonly oneShotScript: Core.Script;\n protected abstract readonly protocolScript: Core.Script;\n protected abstract readonly mintProxyScript: Core.Script;\n\n protected constructor(\n blaze: Blaze,\n params: IBaseSDKParams & { clientSource?: TClientSource },\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n this.blaze = blaze;\n this.proxyBootstrap = params.proxyBootstrap;\n this.assetNameHex = params.assetNameHex;\n this.enableTrace = params.enableTrace ?? false;\n this.cachedReferenceInputs = cachedReferenceInputs ?? {};\n this.scriptDeploymentAddress = params.scriptDeploymentAddress;\n this.clientSource = params.clientSource ?? DEFAULT_CLIENT_SOURCE;\n this.sdkVersion = SDK_VERSION;\n this.oneShotTxoRef = {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n };\n }\n\n /** Get the network from blaze */\n protected get network(): Core.NetworkId {\n return this.blaze.provider.network;\n }\n\n /**\n * Start a transaction with a single setMetadata call. Origin label (55534473) is always\n * present and not overridable; extra labels are merged in before the origin is set.\n */\n protected newOrderTransaction(\n extraLabels?: Map,\n ): TxBuilder {\n const map = new Map(extraLabels ?? []);\n map.set(\n ORDER_ORIGIN_METADATA_LABEL,\n buildOrderOriginMetadatum(this.clientSource, this.sdkVersion),\n );\n return this.blaze.newTransaction().setMetadata(new Core.Metadata(map));\n }\n\n /**\n * Helper to get reference inputs for scripts.\n * Fetched values are cached for subsequent calls.\n */\n async getScriptReferenceInputs(\n scriptHashes: Record,\n ): Promise> {\n const cached: Partial> = {};\n\n if (this.cachedReferenceInputs.protocolRefInput) {\n cached.protocol = this.cachedReferenceInputs.protocolRefInput;\n }\n if (this.cachedReferenceInputs.proxyRefInput) {\n cached.proxy = this.cachedReferenceInputs.proxyRefInput;\n }\n if (this.cachedReferenceInputs.treasuryRefInput) {\n cached.treasury = this.cachedReferenceInputs.treasuryRefInput;\n }\n if (this.cachedReferenceInputs.orderRefInput) {\n cached.order = this.cachedReferenceInputs.orderRefInput;\n }\n if (this.cachedReferenceInputs.stakingVaultRefInput) {\n cached.stakingVault = this.cachedReferenceInputs.stakingVaultRefInput;\n }\n // V1.0 additional protocol scripts\n if (this.cachedReferenceInputs.protocolMintRefInput) {\n cached.protocolMint = this.cachedReferenceInputs.protocolMintRefInput;\n }\n if (this.cachedReferenceInputs.protocolStakeRefInput) {\n cached.protocolStake = this.cachedReferenceInputs.protocolStakeRefInput;\n }\n if (this.cachedReferenceInputs.protocolManagementRefInput) {\n cached.protocolManagement =\n this.cachedReferenceInputs.protocolManagementRefInput;\n }\n const result = await getReferenceInputs(\n this.blaze,\n scriptHashes,\n cached,\n this.scriptDeploymentAddress,\n );\n // Cache fetched values for subsequent calls\n if (result.protocol && !this.cachedReferenceInputs.protocolRefInput) {\n this.cachedReferenceInputs.protocolRefInput = result.protocol;\n }\n if (result.proxy && !this.cachedReferenceInputs.proxyRefInput) {\n this.cachedReferenceInputs.proxyRefInput = result.proxy;\n }\n if (result.treasury && !this.cachedReferenceInputs.treasuryRefInput) {\n this.cachedReferenceInputs.treasuryRefInput = result.treasury;\n }\n if (result.order && !this.cachedReferenceInputs.orderRefInput) {\n this.cachedReferenceInputs.orderRefInput = result.order;\n }\n if (\n result.stakingVault &&\n !this.cachedReferenceInputs.stakingVaultRefInput\n ) {\n this.cachedReferenceInputs.stakingVaultRefInput = result.stakingVault;\n }\n // V1.0 additional protocol scripts caching\n if (\n result.protocolMint &&\n !this.cachedReferenceInputs.protocolMintRefInput\n ) {\n this.cachedReferenceInputs.protocolMintRefInput = result.protocolMint;\n }\n if (\n result.protocolStake &&\n !this.cachedReferenceInputs.protocolStakeRefInput\n ) {\n this.cachedReferenceInputs.protocolStakeRefInput = result.protocolStake;\n }\n if (\n result.protocolManagement &&\n !this.cachedReferenceInputs.protocolManagementRefInput\n ) {\n this.cachedReferenceInputs.protocolManagementRefInput =\n result.protocolManagement;\n }\n return result;\n }\n\n /**\n * Resolve the bootstrap UTXO from the provider.\n * This will fail if the UTXO has already been consumed (i.e., the one-shot token was minted).\n */\n protected async resolveBootstrapUtxo(): Promise {\n const utxos = await this.blaze.provider.resolveUnspentOutputs([\n new Core.TransactionInput(\n this.oneShotTxoRef.transaction_id,\n this.oneShotTxoRef.output_index,\n ),\n ]);\n const utxo = utxos[0];\n if (!utxo) {\n throw new Error(\n \"Bootstrap UTXO not found. It may have already been consumed (one-shot token already minted).\",\n );\n }\n return utxo;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Common Protocol Operations (shared across all versions)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Deploy the protocol script as a reference script.\n */\n async deployProtocol(): Promise {\n return deployScript(\n this.blaze,\n this.protocolScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Deploy the mint proxy script as a reference script.\n */\n async deployMintProxy(): Promise {\n return deployScript(\n this.blaze,\n this.mintProxyScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Register the protocol stake credential.\n */\n registerProtocolStake(): TxBuilder {\n const stakeCredential = credentialFromScript(this.protocolScript);\n const registerTx = this.blaze\n .newTransaction()\n .addRegisterStake(stakeCredential);\n return registerTx;\n }\n\n /**\n * Get the protocol reward account.\n */\n getProtocolRewardAccount(): Core.RewardAccount {\n return rewardAccountFromScript(this.protocolScript, this.network);\n }\n\n /**\n * Get version-agnostic proxy settings.\n * Extracts only the common fields shared across V0_2+ protocol versions.\n */\n async getSettings(): Promise {\n const { parsedProxyDatum } = await this.getParsedProxyDatum();\n const settings = (parsedProxyDatum as { settings?: unknown }).settings;\n\n if (isFlatProxySettings(settings)) {\n return {\n mint_permission: settings.mint_permission,\n burn_permission: settings.burn_permission,\n withdraw_permission: settings.withdraw_permission,\n deposit_permission: settings.deposit_permission,\n stake_permission: settings.stake_permission,\n unstake_permission: settings.unstake_permission,\n reserve_assets: settings.reserve_assets,\n };\n }\n\n if (isNestedProxySettings(settings)) {\n return {\n mint_permission: settings.permissions.mint,\n burn_permission: settings.permissions.burn,\n withdraw_permission: settings.permissions.withdraw,\n deposit_permission: settings.permissions.deposit,\n stake_permission: settings.permissions.stake,\n unstake_permission: settings.permissions.unstake,\n reserve_assets: settings.config.reserve_assets,\n };\n }\n\n throw new Error(\n `getSettings() is not supported for protocol version ${this.version}`,\n );\n }\n\n /** The USDr asset ID (stablecoin policy + USDr asset name). */\n getUsdrAssetId(): Core.AssetId {\n return Core.AssetId(this.stablecoinPolicyId + this.assetNameHex);\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Timelock Operations (shared across versions with staking support)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction that claims USDr locked in a timelock address after\n * the unstake cooldown has expired.\n *\n * Reconstructs the timelock native script for the owner's key hash and the\n * original unlock slot, then spends the UTxO. `owner` is the timelock owner\n * (defaults to the connected wallet) and is set as the required signer, so a\n * custodian holding the user's key can claim. The released USDr goes to\n * `destination`, or to `owner` when only an owner is given; with neither it\n * returns to the connected wallet.\n *\n * A single owner key has two timelock shapes in the protocol, differing only\n * in element order: `buildUnstakeOrderTx` locks to\n * `AllOf { Signature, After }` and the treasury/multisig unstake path to\n * `AllOf { After, Signature }`. They hash differently, so which one applies\n * is read off the UTxO's own locking address rather than assumed.\n */\n async buildClaimTimelockTx(params: {\n resultUtxo: { txHash: string; index: number };\n unlockSlot: bigint;\n owner?: Core.Address;\n destination?: Core.Address;\n }): Promise {\n const ownerAddress =\n params.owner ?? (await this.blaze.wallet.getChangeAddress());\n const ownerKeyHash = ownerAddress.getProps().paymentPart?.hash;\n if (!ownerKeyHash) {\n throw new Error(\"Timelock owner address has no payment key credential\");\n }\n\n const input = new Core.TransactionInput(\n Core.TransactionId(params.resultUtxo.txHash),\n BigInt(params.resultUtxo.index),\n );\n const [utxo] = await this.blaze.provider.resolveUnspentOutputs([input]);\n if (!utxo) {\n throw new Error(\n `Could not resolve UTxO ${params.resultUtxo.txHash}#${params.resultUtxo.index}`,\n );\n }\n\n const nativeScript = resolveTimelockNativeScript(\n utxo.output().address(),\n ownerKeyHash,\n params.unlockSlot,\n );\n const scriptWrapped = Core.Script.newNativeScript(nativeScript);\n\n const tx = this.newOrderTransaction()\n .setValidFrom(Core.Slot(Number(params.unlockSlot)))\n .provideScript(scriptWrapped)\n .addRequiredSigner(Core.Ed25519KeyHashHex(ownerKeyHash))\n .addInput(utxo);\n\n // Route funds to `destination`, else to an explicit `owner` (so a custodial\n // claim reaches the user); with neither, value returns to the connected\n // wallet as change.\n const recipient = params.destination ?? params.owner;\n if (recipient) {\n addDirectOutput(tx, recipient, utxo.output().amount());\n }\n\n return tx;\n }\n\n /**\n * Fetch the live proxy UTxO and inline datum without attempting a\n * version-specific parse. Cached after first fetch.\n *\n * `readSingletonDatum` both retries the lookup (a not-found answer is the\n * provider's index lagging the UTxO's latest move, not a missing proxy —\n * Blockfrost returns HTTP 404 in that window, Sentry TREASURY-ADMIN-API-G)\n * and repairs a datum the provider reports as a hash.\n */\n async getRawProxyDatum(): Promise {\n if (this.cachedRawProxyDatumResult) {\n return this.cachedRawProxyDatumResult;\n }\n if (this.cachedProxyDatumResult) {\n const { proxyUtxo, proxyDatum } = this.cachedProxyDatumResult;\n this.cachedRawProxyDatumResult = { proxyUtxo, proxyDatum };\n return this.cachedRawProxyDatumResult;\n }\n\n const { utxo: proxyUtxo, datum: proxyDatum } = await readSingletonDatum(\n this.blaze.provider,\n Core.AssetId(this.oneShotPolicyId),\n );\n\n const result = { proxyUtxo, proxyDatum };\n this.cachedRawProxyDatumResult = result;\n return result;\n }\n\n /**\n * @deprecated Use getParsedProxyDatum() or getRawProxyDatum() depending on\n * whether the caller needs a version-specific schema parse.\n */\n async getProxyDatum(): Promise> {\n return this.getParsedProxyDatum();\n }\n\n // Abstract methods - each version must implement these\n abstract getParsedProxyDatum(): Promise>;\n abstract mintOneShot(\n receiverAddress: Core.Address,\n datum: unknown,\n ): Promise<{\n tx: TxBuilder;\n policyId: Core.PolicyId;\n }>;\n abstract updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: unknown,\n ): Promise;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/cancel.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/cancel.js new file mode 100644 index 0000000000..e4d21737fc --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/cancel.js @@ -0,0 +1,65 @@ +import { parse } from "@blaze-cardano/data"; +import { getInlineDatumFromUtxo, parseOrderOwnerGenericFromDatum } from "./utils.js"; +const parseOwnerField = (schema, datum) => { + return parse(schema, datum).owner; +}; + +/** + * Parse an order owner for cancel flows. + * + * Behavior: + * - no version hint: use strict generic owner parsing immediately + * - with version hint: try the hinted schema first + * - hinted parse failure: fall back to strict generic owner parsing + */ +export async function parseCancelOwner(utxo, versionHint) { + const datum = getInlineDatumFromUtxo(utxo); + if (!versionHint) { + return parseOrderOwnerGenericFromDatum(datum); + } + try { + switch (versionHint) { + case "V1_0": + { + const { + OrderDatumV1 + } = await import("../../generated-types/v1_0/index.js"); + return parseOwnerField(OrderDatumV1, datum); + } + case "V1_0_Rc1": + { + const { + OrderDatumV1 + } = await import("../../generated-types/v1_0_rc1/index.js"); + return parseOwnerField(OrderDatumV1, datum); + } + case "V1_1_Rc1": + { + const { + OrderDatumV1 + } = await import("../../generated-types/v1_1_rc1/index.js"); + return parseOwnerField(OrderDatumV1, datum); + } + case "V0_4": + { + const { + OrderDatum + } = await import("../../generated-types/v0_4/index.js"); + return parseOwnerField(OrderDatum, datum); + } + case "V0_3": + { + const { + OrderDatum + } = await import("../../generated-types/v0_3/index.js"); + return parseOwnerField(OrderDatum, datum); + } + default: + return parseOrderOwnerGenericFromDatum(datum); + } + } catch { + return parseOrderOwnerGenericFromDatum(datum); + } +} +export const parseOrderOwnerWithHint = parseCancelOwner; +//# sourceMappingURL=cancel.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/cancel.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/cancel.js.map new file mode 100644 index 0000000000..d592538819 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/cancel.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cancel.js","names":["parse","getInlineDatumFromUtxo","parseOrderOwnerGenericFromDatum","parseOwnerField","schema","datum","owner","parseCancelOwner","utxo","versionHint","OrderDatumV1","OrderDatum","parseOrderOwnerWithHint"],"sources":["../../../../src/sdk/shared/cancel.ts"],"sourcesContent":["import { parse } from \"@blaze-cardano/data\";\nimport type { Core } from \"@blaze-cardano/sdk\";\n\nimport type { TMultisigScript, TProtocolVersion } from \"./types.js\";\nimport {\n getInlineDatumFromUtxo,\n parseOrderOwnerGenericFromDatum,\n} from \"./utils.js\";\n\nconst parseOwnerField = (\n schema: Parameters[0],\n datum: Core.PlutusData,\n): TMultisigScript => {\n return (parse(schema, datum) as { owner: TMultisigScript }).owner;\n};\n\n/**\n * Parse an order owner for cancel flows.\n *\n * Behavior:\n * - no version hint: use strict generic owner parsing immediately\n * - with version hint: try the hinted schema first\n * - hinted parse failure: fall back to strict generic owner parsing\n */\nexport async function parseCancelOwner(\n utxo: Core.TransactionUnspentOutput,\n versionHint?: TProtocolVersion,\n): Promise {\n const datum = getInlineDatumFromUtxo(utxo);\n\n if (!versionHint) {\n return parseOrderOwnerGenericFromDatum(datum);\n }\n\n try {\n switch (versionHint) {\n case \"V1_0\": {\n const { OrderDatumV1 } =\n await import(\"../../generated-types/v1_0/index.js\");\n return parseOwnerField(OrderDatumV1, datum);\n }\n\n case \"V1_0_Rc1\": {\n const { OrderDatumV1 } =\n await import(\"../../generated-types/v1_0_rc1/index.js\");\n return parseOwnerField(OrderDatumV1, datum);\n }\n\n case \"V1_1_Rc1\": {\n const { OrderDatumV1 } =\n await import(\"../../generated-types/v1_1_rc1/index.js\");\n return parseOwnerField(OrderDatumV1, datum);\n }\n\n case \"V0_4\": {\n const { OrderDatum } =\n await import(\"../../generated-types/v0_4/index.js\");\n return parseOwnerField(OrderDatum, datum);\n }\n\n case \"V0_3\": {\n const { OrderDatum } =\n await import(\"../../generated-types/v0_3/index.js\");\n return parseOwnerField(OrderDatum, datum);\n }\n\n default:\n return parseOrderOwnerGenericFromDatum(datum);\n }\n } catch {\n return parseOrderOwnerGenericFromDatum(datum);\n }\n}\n\nexport const parseOrderOwnerWithHint = parseCancelOwner;\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,qBAAqB;AAI3C,SACEC,sBAAsB,EACtBC,+BAA+B,QAC1B,YAAY;AAEnB,MAAMC,eAAe,GAAGA,CACtBC,MAAmC,EACnCC,KAAsB,KACF;EACpB,OAAQL,KAAK,CAACI,MAAM,EAAEC,KAAK,CAAC,CAAgCC,KAAK;AACnE,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,gBAAgBA,CACpCC,IAAmC,EACnCC,WAA8B,EACJ;EAC1B,MAAMJ,KAAK,GAAGJ,sBAAsB,CAACO,IAAI,CAAC;EAE1C,IAAI,CAACC,WAAW,EAAE;IAChB,OAAOP,+BAA+B,CAACG,KAAK,CAAC;EAC/C;EAEA,IAAI;IACF,QAAQI,WAAW;MACjB,KAAK,MAAM;QAAE;UACX,MAAM;YAAEC;UAAa,CAAC,GACpB,MAAM,MAAM,CAAC,qCAAqC,CAAC;UACrD,OAAOP,eAAe,CAACO,YAAY,EAAEL,KAAK,CAAC;QAC7C;MAEA,KAAK,UAAU;QAAE;UACf,MAAM;YAAEK;UAAa,CAAC,GACpB,MAAM,MAAM,CAAC,yCAAyC,CAAC;UACzD,OAAOP,eAAe,CAACO,YAAY,EAAEL,KAAK,CAAC;QAC7C;MAEA,KAAK,UAAU;QAAE;UACf,MAAM;YAAEK;UAAa,CAAC,GACpB,MAAM,MAAM,CAAC,yCAAyC,CAAC;UACzD,OAAOP,eAAe,CAACO,YAAY,EAAEL,KAAK,CAAC;QAC7C;MAEA,KAAK,MAAM;QAAE;UACX,MAAM;YAAEM;UAAW,CAAC,GAClB,MAAM,MAAM,CAAC,qCAAqC,CAAC;UACrD,OAAOR,eAAe,CAACQ,UAAU,EAAEN,KAAK,CAAC;QAC3C;MAEA,KAAK,MAAM;QAAE;UACX,MAAM;YAAEM;UAAW,CAAC,GAClB,MAAM,MAAM,CAAC,qCAAqC,CAAC;UACrD,OAAOR,eAAe,CAACQ,UAAU,EAAEN,KAAK,CAAC;QAC3C;MAEA;QACE,OAAOH,+BAA+B,CAACG,KAAK,CAAC;IACjD;EACF,CAAC,CAAC,MAAM;IACN,OAAOH,+BAA+B,CAACG,KAAK,CAAC;EAC/C;AACF;AAEA,OAAO,MAAMO,uBAAuB,GAAGL,gBAAgB","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/client-id.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/client-id.js new file mode 100644 index 0000000000..2c30290610 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/client-id.js @@ -0,0 +1,8 @@ +// Builder/API origin: "partner-sdk" for the curated "." entry, "internal-sdk" for all other uses. + +// Placeholder version; the publish pipeline injects the released version into +// the built output. Unreleased source (monorepo, first-party) reports the +// placeholder as-is. +export const SDK_VERSION = "2.14.0"; +export const DEFAULT_CLIENT_SOURCE = "internal-sdk"; +//# sourceMappingURL=client-id.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/client-id.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/client-id.js.map new file mode 100644 index 0000000000..b27ae6dcfa --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/client-id.js.map @@ -0,0 +1 @@ +{"version":3,"file":"client-id.js","names":["SDK_VERSION","DEFAULT_CLIENT_SOURCE"],"sources":["../../../../src/sdk/shared/client-id.ts"],"sourcesContent":["// Builder/API origin: \"partner-sdk\" for the curated \".\" entry, \"internal-sdk\" for all other uses.\nexport type TClientSource = \"partner-sdk\" | \"internal-sdk\";\n\n// Placeholder version; the publish pipeline injects the released version into\n// the built output. Unreleased source (monorepo, first-party) reports the\n// placeholder as-is.\nexport const SDK_VERSION = \"0.0.0-dev\";\n\nexport const DEFAULT_CLIENT_SOURCE: TClientSource = \"internal-sdk\";\n"],"mappings":"AAAA;;AAGA;AACA;AACA;AACA,OAAO,MAAMA,WAAW,GAAG,WAAW;AAEtC,OAAO,MAAMC,qBAAoC,GAAG,cAAc","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/detect-params.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/detect-params.js new file mode 100644 index 0000000000..d38109d126 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/detect-params.js @@ -0,0 +1,431 @@ +import { toHex } from "@blaze-cardano/core"; +import { parse } from "@blaze-cardano/data"; +import { Core } from "@blaze-cardano/sdk"; +import { BaseTypes } from "../../generated-types/index.js"; +import { readSingletonDatum } from "./utils.js"; +import { NETWORK_REGISTRY } from "./network-registry.js"; +export { NETWORK_REGISTRY } from "./network-registry.js"; +/** + * Default yield_oracle NFT one-shot seed for a deployment that DEFERS the oracle. + * + * The seed only feeds the orchestrator hash at compile time; on-chain it is + * consumed solely when minting the oracle NFT, which a deferred deployment never + * does. An all-zeros tx hash is a valid but permanently un-consumable + * OutputReference, so a deferred deployment can omit the seed entirely and every + * consumer still reconstructs the same orchestrator hash. Supplying a real seed + * overrides this (for a deployment that intends to run the oracle). + */ +// Frozen: this is shared by reference across all omitted-seed detection/SDK +// construction in the process — a consumer mutating txHash/outputIndex would +// otherwise poison every later placeholder-seed reconstruction. +export const YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER = Object.freeze({ + txHash: Core.TransactionId("0".repeat(64)), + outputIndex: 0n +}); + +/** + * Deployed validator hashes, keyed as in + * `backend/config/env/.protocol.yaml`. + * + * An array carries more than one *generation* of the same deployment — the + * hashes before and after a script cutover. Detection picks the generation + * whose orchestrator matches the chain and applies that one whole, so a + * consumer holding both spans the flip instead of failing closed between the + * on-chain update and its own config reaching it. + * + * Listing both in a single map cannot work and is actively unsafe: the + * override reads exact keys, so one generation's hashes would be applied + * regardless of which one matched, and the SDK would build against addresses + * the chain is not using. + */ + +/** + * The generation whose protocol orchestrator equals the deployed `logic` hash. + * + * A single map is returned when it matches, so existing callers are unchanged. + * Nothing is returned when no generation matches — detection then fails closed + * rather than guessing, which is what stops a mismatched build from locking + * orders at an address nothing watches. + */ +export function selectBlueprintGeneration(logicHash, validators) { + if (!validators) return undefined; + const generations = Array.isArray(validators) ? validators : [validators]; + return generations.find(generation => resolveBlueprintVersion(logicHash, generation) !== undefined); +} + +/** + * Version-discriminating view of the live proxy datum, resolved via the + * one-shot NFT (the proxy's stable identity — the UTxO ref changes on every + * settings update, the NFT does not). + */ + +/** + * Version slot each blueprint validator key belongs to. Keys are the ones used + * in `backend/config/env/.protocol.yaml`, so this map is the single place + * that translates blueprint naming into SDK version naming. + */ +const BLUEPRINT_ORCHESTRATOR_VERSIONS = [["v1_1_rc1/", "V1_1_Rc1"], ["v1_0_rc1/", "V1_0_Rc1"], ["v1_0/", "V1_0"]]; + +/** + * Which version a deployed `logic` hash belongs to according to the blueprint, + * or undefined when no blueprint was supplied or none of its orchestrators + * matches. + * + * Only orchestrator entries are consulted: the proxy datum's first field is the + * protocol orchestrator hash, so any other validator matching would mean the + * blueprint disagrees with the chain about what a proxy points at. + */ +export function resolveBlueprintVersion(logicHash, validators) { + if (!validators) return undefined; + for (const [key, hash] of Object.entries(validators)) { + if (hash !== logicHash) continue; + if (!key.includes("protocol_orchestrator")) continue; + const match = BLUEPRINT_ORCHESTRATOR_VERSIONS.find(([prefix]) => key.startsWith(prefix)); + if (match) return match[1]; + } + return undefined; +} + +/** + * Compute the one-shot policy id from the proxy bootstrap reference. + * Deterministic and local — no provider access. + */ +export function computeOneShotPolicyId(proxyBootstrap, enableTrace) { + return new BaseTypes.BaseOneshotOneshotMint({ + transaction_id: proxyBootstrap.txHash, + output_index: proxyBootstrap.outputIndex + }, enableTrace).Script.hash(); +} + +/** + * Fetch the live proxy datum and extract the `logic` script hash. + * Costs exactly one provider lookup. + */ +export async function fetchProxyLogicSnapshot(provider, oneShotPolicyId) { + const { + datum: rawDatum + } = await readSingletonDatum(provider, Core.AssetId(oneShotPolicyId)); + + // All ProxyDatum variants encode as Constr(0, [ByteArray(28 bytes), ]). + // The first field is always the `logic` ScriptHash, regardless of version. + const constr = rawDatum.asConstrPlutusData(); + if (!constr) { + throw new Error("Proxy datum is not a constructor PlutusData"); + } + const fields = constr.getData(); + const logicBytes = fields.get(0).asBoundedBytes(); + if (!logicBytes) { + throw new Error("First constructor field is not bytes (expected ScriptHash)"); + } + return { + logicHash: toHex(logicBytes), + datumFields: fields + }; +} + +/** + * Detect the active SDK version by reading the proxy datum on-chain. + * + * Phase 1: Extract the `logic` script hash from the proxy datum using raw CBOR + * access, avoiding the chicken-and-egg problem where the datum schema differs + * per version. + * + * Phase 2: Compare the extracted hash against expected protocol hashes computed + * deterministically from `proxyBootstrap`. Each version's generated-types + * module is dynamic-imported only when its turn comes — so on a V1_0_Rc1 + * deployment the V1_0 types chunk (~52 KB gzip / ~214 KB raw) is never + * fetched. Vite's chunk splitter creates one chunk per `await import()` site, + * so the chunk topology mirrors the version branches without needing + * a separate matcher file per version. + * + * Priority order: V1_0_Rc1 → V1_0 → V0_4. Latest-deployed-version-first so + * that on the current production environments (which are on V1_0_Rc1), the + * very first matcher succeeds and no additional version chunks are fetched + * to fail a mismatch check first. Rc1 stays ahead of V1_0 so that during the + * transitional period where both SDK slots resolve to byte-identical scripts + * (Rc1 is a module-path-only duplicate of V1_0), we prefer the Rc1 path — + * once V1_0 evolves on-chain, the two hashes diverge and each branch catches + * its own deployment automatically. V0_4 stays as the legacy fallback. + * + * **Re-evaluate this order if V0_4 ever becomes a primary production + * deployment again** — every session on a V0_4-only environment would pay + * two failed-hash-check fetches (V1_0_Rc1 + V1_0) before reaching V0_4. + * + * Throws `UnknownProtocolVersionError` if the `logic` hash does not match any + * known version. + * + * `config` also accepts a network preset name (`"mainnet"`, `"preprod"`, + * `"preview"`) in place of an explicit {@link IDetectInput} — resolved via + * {@link NETWORK_REGISTRY}. Custom deployments still pass an explicit config. + */ + +export async function detectSDKParams(provider, config) { + if (typeof config === "string" && !Object.hasOwn(NETWORK_REGISTRY, config)) { + throw new Error(`Unknown network preset "${config}" — expected one of: ${Object.keys(NETWORK_REGISTRY).join(", ")}`); + } + const resolved = typeof config === "string" ? NETWORK_REGISTRY[config] : config; + const enableTrace = resolved.enableTrace ?? false; + + // ── Phase 1: Compute oneshot policy and fetch proxy datum ───────────────── + + const oneShotPolicyId = computeOneShotPolicyId(resolved.proxyBootstrap, enableTrace); + const snapshot = await fetchProxyLogicSnapshot(provider, oneShotPolicyId); + return matchProtocolVersion(snapshot, oneShotPolicyId, resolved); +} + +/** + * Phase 2 of detection: match an already-fetched `logic` hash against each + * known version's expected hash. Local-only — dynamic imports and hash + * computation, no provider access — so a caller holding a fresh + * `IProxyLogicSnapshot` can re-resolve the version without another lookup. + */ +export async function matchProtocolVersion(snapshot, oneShotPolicyId, config) { + const enableTrace = config.enableTrace ?? false; + const { + logicHash, + datumFields: fields + } = snapshot; + + // Which version the supplied blueprint says this `logic` hash belongs to, if + // any. Matching on the deployed hash rather than a derived one is what keeps + // a regenerated artifact from stranding a live deployment: the blueprint + // records what the chain runs, this build only records what it ships. + // + // Deliberately exact-match and fail-closed — a blueprint authorises the one + // deployment it names, never anything that merely looks the same shape. + // Pick the generation the chain is actually on before reading anything from + // it, so version and script hashes always come from the same generation. A + // cutover otherwise has a window where the datum names new scripts and the + // config still names old ones (or the reverse), and every consumer in it + // fails closed until its config catches up. + const deployedGeneration = selectBlueprintGeneration(logicHash, config.protocolValidators); + const blueprintVersion = resolveBlueprintVersion(logicHash, deployedGeneration); + // A non-empty supplied generation makes the blueprint authoritative. A miss + // does not consult derivation: blueprintVersion stays undefined, every + // matchesV1Version check fails, and detection throws + // UnknownProtocolVersionError. + const suppliedGenerations = Array.isArray(config.protocolValidators) ? config.protocolValidators : config.protocolValidators ? [config.protocolValidators] : []; + const hasAuthoritativeBlueprint = suppliedGenerations.some(generation => Object.keys(generation).length > 0); + const matchesV1Version = (derivedHash, version) => hasAuthoritativeBlueprint ? blueprintVersion === version : logicHash === derivedHash; + + // ── Try each version's hash candidate ───────────────────────────────────── + // + // Each version dynamic-imports its types from its own subpath module, and + // **destructures named exports at the await site** so Vite can statically + // see which specific classes are used and tree-shake the rest of the + // generated-types module (each version's index.ts has ~70 top-level + // exports; each branch needs only 1-5). + + // V1_1_Rc1 — orchestrator hash + backward-compat flag detection. + // Checked first: latest-deployed-version-first, so environments on + // V1_1_Rc1 match on the first attempt with no failed-mismatch chunk fetches. + { + const { + V1_1Rc1ProtocolMintProtocolMintWithdraw, + V1_1Rc1ProtocolStakeProtocolStakeWithdraw, + V1_1Rc1ProtocolManagementProtocolManagementWithdraw, + V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw, + V1_1Rc1YieldOracleYieldOracleMint, + SettingsV1: SettingsV1_1Rc1Schema + } = await import("../../generated-types/v1_1_rc1/index.js"); + // eslint-disable-next-line @typescript-eslint/naming-convention + + const protocolMintHashV1_1Rc1 = new V1_1Rc1ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + const protocolStakeHashV1_1Rc1 = new V1_1Rc1ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + const protocolManagementHashV1_1Rc1 = new V1_1Rc1ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + // A deferred oracle omits the seed; default to the placeholder so a + // V1_1_Rc1 deployment is still recognized without any seed config. A real + // seed (for a deployment that runs the oracle) overrides it. Either way the + // block below always runs — the exact hash comparison alone decides whether + // this is actually a V1_1_Rc1 proxy, so a V1_0/older proxy simply won't + // match and falls through. + const yieldOracleBootstrap = config.yieldOracleBootstrap ?? YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER; + { + // The orchestrator's 5th param is the `yield_oracle` *validator* hash — the + // mint+spend validator that holds the oracle UTxO (guarded by ExecuteOrders' + // `no_script_input`), NOT the distribution_oracle logic validator. Because + // yield_oracle is a mint+spend validator, that hash equals the oracle-NFT + // policy id. Derive it the same way RealfiSDKV1_1Rc1.create does so the + // recomputed orchestrator hash matches the deployed logic hash. + const oracleNftPolicyIdV1_1Rc1 = new V1_1Rc1YieldOracleYieldOracleMint({ + transaction_id: yieldOracleBootstrap.txHash, + output_index: yieldOracleBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + const orchestratorHashV1_1Rc1 = new V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintHashV1_1Rc1, protocolStakeHashV1_1Rc1, protocolManagementHashV1_1Rc1, oracleNftPolicyIdV1_1Rc1, enableTrace).Script.hash(); + if (matchesV1Version(orchestratorHashV1_1Rc1, "V1_1_Rc1")) { + const settingsData = fields.get(1); + const settings = parse(SettingsV1_1Rc1Schema, settingsData); + const registry = settings.registry; + const { + V0_1TreasuryTreasurySpend + } = await import("../../generated-types/v0_1/index.js"); + const { + V0_4StakingVaultStakingVaultSpend + } = await import("../../generated-types/v0_4/index.js"); + const v01TreasuryHash = new V0_1TreasuryTreasurySpend({ + transaction_id: config.treasuryBootstrap.txHash, + output_index: config.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + const useV0_1Treasury = registry.treasury === v01TreasuryHash; + const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend({ + transaction_id: config.stakingVaultBootstrap.txHash, + output_index: config.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + const useV0_4StakingVault = registry.staking_vault === v04StakingVaultHash; + return { + version: "V1_1_Rc1", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + yieldOracleBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace, + useV0_1Treasury: useV0_1Treasury || undefined, + useV0_4StakingVault: useV0_4StakingVault || undefined, + // Identity, not just version: script hashes and the order address are + // otherwise derived from this package's artifacts, which is wrong for a + // chain running different bytes. + deployedValidators: deployedGeneration + }; + } + } + } + + // V1_0_Rc1 — orchestrator hash + backward-compat flag detection. + // Checked before V1_0 because it's the current production deployment; + // matching early avoids failed-mismatch chunk fetches. + { + const { + V1_0Rc1ProtocolMintProtocolMintWithdraw, + V1_0Rc1ProtocolStakeProtocolStakeWithdraw, + V1_0Rc1ProtocolManagementProtocolManagementWithdraw, + V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw, + SettingsV1: SettingsV1Rc1Schema + } = await import("../../generated-types/v1_0_rc1/index.js"); + const protocolMintHashRc1 = new V1_0Rc1ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + const protocolStakeHashRc1 = new V1_0Rc1ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + const protocolManagementHashRc1 = new V1_0Rc1ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + const orchestratorHashRc1 = new V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintHashRc1, protocolStakeHashRc1, protocolManagementHashRc1, enableTrace).Script.hash(); + if (matchesV1Version(orchestratorHashRc1, "V1_0_Rc1")) { + const settingsData = fields.get(1); + const settings = parse(SettingsV1Rc1Schema, settingsData); + const registry = settings.registry; + + // Backward-compat checks: load V0_1 + V0_4 types only after the + // orchestrator hash matches. Same named-export destructuring pattern. + const { + V0_1TreasuryTreasurySpend + } = await import("../../generated-types/v0_1/index.js"); + const { + V0_4StakingVaultStakingVaultSpend + } = await import("../../generated-types/v0_4/index.js"); + const v01TreasuryHash = new V0_1TreasuryTreasurySpend({ + transaction_id: config.treasuryBootstrap.txHash, + output_index: config.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + const useV0_1Treasury = registry.treasury === v01TreasuryHash; + const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend({ + transaction_id: config.stakingVaultBootstrap.txHash, + output_index: config.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + const useV0_4StakingVault = registry.staking_vault === v04StakingVaultHash; + return { + version: "V1_0_Rc1", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace, + useV0_1Treasury: useV0_1Treasury || undefined, + useV0_4StakingVault: useV0_4StakingVault || undefined, + // Identity, not just version: script hashes and the order address are + // otherwise derived from this package's artifacts, which is wrong for a + // chain running different bytes. + deployedValidators: deployedGeneration + }; + } + } + + // V1_0 — orchestrator hash + backward-compat flag detection + { + const { + V1_0ProtocolMintProtocolMintWithdraw, + V1_0ProtocolStakeProtocolStakeWithdraw, + V1_0ProtocolManagementProtocolManagementWithdraw, + V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw, + SettingsV1: SettingsV1Schema + } = await import("../../generated-types/v1_0/index.js"); + const protocolMintHash = new V1_0ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + const protocolStakeHash = new V1_0ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + const protocolManagementHash = new V1_0ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + const orchestratorHash = new V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintHash, protocolStakeHash, protocolManagementHash, enableTrace).Script.hash(); + if (matchesV1Version(orchestratorHash, "V1_0")) { + const settingsData = fields.get(1); + const settings = parse(SettingsV1Schema, settingsData); + const registry = settings.registry; + const { + V0_1TreasuryTreasurySpend + } = await import("../../generated-types/v0_1/index.js"); + const { + V0_4StakingVaultStakingVaultSpend + } = await import("../../generated-types/v0_4/index.js"); + const v01TreasuryHash = new V0_1TreasuryTreasurySpend({ + transaction_id: config.treasuryBootstrap.txHash, + output_index: config.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + const useV0_1Treasury = registry.treasury === v01TreasuryHash; + const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend({ + transaction_id: config.stakingVaultBootstrap.txHash, + output_index: config.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script.hash(); + const useV0_4StakingVault = registry.staking_vault === v04StakingVaultHash; + return { + version: "V1_0", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace, + useV0_1Treasury: useV0_1Treasury || undefined, + useV0_4StakingVault: useV0_4StakingVault || undefined, + // Identity, not just version: script hashes and the order address are + // otherwise derived from this package's artifacts, which is wrong for a + // chain running different bytes. + deployedValidators: deployedGeneration + }; + } + } + + // V0_4 — protocol withdraw hash only. Legacy fallback; checked last so + // that current-generation deployments don't pay a failed-hash-check load + // of V0_4 types every session. + { + const { + V0_4ProtocolProtocolWithdraw + } = await import("../../generated-types/v0_4/index.js"); + const v04ProtocolHash = new V0_4ProtocolProtocolWithdraw(oneShotPolicyId, enableTrace).Script.hash(); + if (logicHash === v04ProtocolHash) { + return { + version: "V0_4", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace + }; + } + } + throw new UnknownProtocolVersionError(logicHash); +} +export class UnknownProtocolVersionError extends Error { + constructor(logicHash) { + super(`Unrecognized protocol logic hash "${logicHash}". ` + `The on-chain proxy datum references a script that does not match any known SDK version. ` + `Update the SDK or check that you are connected to the correct network.`); + this.logicHash = logicHash; + this.name = "UnknownProtocolVersionError"; + } +} +//# sourceMappingURL=detect-params.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/detect-params.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/detect-params.js.map new file mode 100644 index 0000000000..936f7fa15e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/detect-params.js.map @@ -0,0 +1 @@ +{"version":3,"file":"detect-params.js","names":["toHex","parse","Core","BaseTypes","readSingletonDatum","NETWORK_REGISTRY","YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER","Object","freeze","txHash","TransactionId","repeat","outputIndex","selectBlueprintGeneration","logicHash","validators","undefined","generations","Array","isArray","find","generation","resolveBlueprintVersion","BLUEPRINT_ORCHESTRATOR_VERSIONS","key","hash","entries","includes","match","prefix","startsWith","computeOneShotPolicyId","proxyBootstrap","enableTrace","BaseOneshotOneshotMint","transaction_id","output_index","Script","fetchProxyLogicSnapshot","provider","oneShotPolicyId","datum","rawDatum","AssetId","constr","asConstrPlutusData","Error","fields","getData","logicBytes","get","asBoundedBytes","datumFields","detectSDKParams","config","hasOwn","keys","join","resolved","snapshot","matchProtocolVersion","deployedGeneration","protocolValidators","blueprintVersion","suppliedGenerations","hasAuthoritativeBlueprint","some","length","matchesV1Version","derivedHash","version","V1_1Rc1ProtocolMintProtocolMintWithdraw","V1_1Rc1ProtocolStakeProtocolStakeWithdraw","V1_1Rc1ProtocolManagementProtocolManagementWithdraw","V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","V1_1Rc1YieldOracleYieldOracleMint","SettingsV1","SettingsV1_1Rc1Schema","protocolMintHashV1_1Rc1","protocolStakeHashV1_1Rc1","protocolManagementHashV1_1Rc1","yieldOracleBootstrap","oracleNftPolicyIdV1_1Rc1","orchestratorHashV1_1Rc1","settingsData","settings","registry","V0_1TreasuryTreasurySpend","V0_4StakingVaultStakingVaultSpend","v01TreasuryHash","treasuryBootstrap","useV0_1Treasury","treasury","v04StakingVaultHash","stakingVaultBootstrap","useV0_4StakingVault","staking_vault","assetNameHex","sUSDrAssetNameHex","deployedValidators","V1_0Rc1ProtocolMintProtocolMintWithdraw","V1_0Rc1ProtocolStakeProtocolStakeWithdraw","V1_0Rc1ProtocolManagementProtocolManagementWithdraw","V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","SettingsV1Rc1Schema","protocolMintHashRc1","protocolStakeHashRc1","protocolManagementHashRc1","orchestratorHashRc1","V1_0ProtocolMintProtocolMintWithdraw","V1_0ProtocolStakeProtocolStakeWithdraw","V1_0ProtocolManagementProtocolManagementWithdraw","V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw","SettingsV1Schema","protocolMintHash","protocolStakeHash","protocolManagementHash","orchestratorHash","V0_4ProtocolProtocolWithdraw","v04ProtocolHash","UnknownProtocolVersionError","constructor","name"],"sources":["../../../../src/sdk/shared/detect-params.ts"],"sourcesContent":["import { toHex } from \"@blaze-cardano/core\";\nimport { parse } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport { Core } from \"@blaze-cardano/sdk\";\n\nimport { BaseTypes } from \"../../generated-types/index.js\";\nimport { readSingletonDatum } from \"./utils.js\";\nimport { NETWORK_REGISTRY, type TNetworkPreset } from \"./network-registry.js\";\nimport type { IRealfiSDKParamsV0_4 } from \"../v0_4/index.js\";\nimport type { IRealfiSDKParamsV1_0 } from \"../v1_0/index.js\";\nimport type { IRealfiSDKParamsV1_0Rc1 } from \"../v1_0_rc1/index.js\";\nimport type { IRealfiSDKParamsV1_1Rc1 } from \"../v1_1_rc1/index.js\";\n\nexport type { TNetworkPreset } from \"./network-registry.js\";\nexport { NETWORK_REGISTRY } from \"./network-registry.js\";\n\nexport type TDetectedSDKParams =\n | IRealfiSDKParamsV0_4\n | IRealfiSDKParamsV1_0\n | IRealfiSDKParamsV1_0Rc1\n | IRealfiSDKParamsV1_1Rc1;\n\n/**\n * Default yield_oracle NFT one-shot seed for a deployment that DEFERS the oracle.\n *\n * The seed only feeds the orchestrator hash at compile time; on-chain it is\n * consumed solely when minting the oracle NFT, which a deferred deployment never\n * does. An all-zeros tx hash is a valid but permanently un-consumable\n * OutputReference, so a deferred deployment can omit the seed entirely and every\n * consumer still reconstructs the same orchestrator hash. Supplying a real seed\n * overrides this (for a deployment that intends to run the oracle).\n */\n// Frozen: this is shared by reference across all omitted-seed detection/SDK\n// construction in the process — a consumer mutating txHash/outputIndex would\n// otherwise poison every later placeholder-seed reconstruction.\nexport const YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER = Object.freeze({\n txHash: Core.TransactionId(\"0\".repeat(64)),\n outputIndex: 0n,\n});\n\nexport interface IDetectInput {\n proxyBootstrap: { txHash: Core.TransactionId; outputIndex: bigint };\n treasuryBootstrap: { txHash: Core.TransactionId; outputIndex: bigint };\n stakingVaultBootstrap: { txHash: Core.TransactionId; outputIndex: bigint };\n /**\n * Dedicated yield_oracle NFT one-shot seed. Only V1_1_Rc1 deployments use\n * one. When omitted, detection uses the deferred-oracle placeholder; a\n * deployment with a live oracle must supply its real seed.\n */\n yieldOracleBootstrap?: { txHash: Core.TransactionId; outputIndex: bigint };\n assetNameHex: string;\n sUSDrAssetNameHex: string;\n enableTrace?: boolean;\n /**\n * Deployed validator hashes, keyed exactly as in\n * `backend/config/env/.protocol.yaml` (e.g.\n * `\"v1_0/protocol_orchestrator.protocol_orchestrator.withdraw\"`).\n *\n * Detection otherwise derives each version's hash from the Plutus artifacts\n * this package bundles, which only identifies a deployment while those\n * artifacts stay byte-identical to the ones actually on chain. Supplying the\n * blueprint identifies the deployment by what it *is* rather than by what\n * this build happens to ship, so regenerating an artifact cannot strand a\n * live deployment.\n *\n * Omitted, derivation is used unchanged.\n */\n protocolValidators?: TBlueprintValidators;\n}\n\n/**\n * Deployed validator hashes, keyed as in\n * `backend/config/env/.protocol.yaml`.\n *\n * An array carries more than one *generation* of the same deployment — the\n * hashes before and after a script cutover. Detection picks the generation\n * whose orchestrator matches the chain and applies that one whole, so a\n * consumer holding both spans the flip instead of failing closed between the\n * on-chain update and its own config reaching it.\n *\n * Listing both in a single map cannot work and is actively unsafe: the\n * override reads exact keys, so one generation's hashes would be applied\n * regardless of which one matched, and the SDK would build against addresses\n * the chain is not using.\n */\nexport type TBlueprintValidators =\n | Readonly>\n | ReadonlyArray>>;\n\n/**\n * The generation whose protocol orchestrator equals the deployed `logic` hash.\n *\n * A single map is returned when it matches, so existing callers are unchanged.\n * Nothing is returned when no generation matches — detection then fails closed\n * rather than guessing, which is what stops a mismatched build from locking\n * orders at an address nothing watches.\n */\nexport function selectBlueprintGeneration(\n logicHash: Core.ScriptHash,\n validators: TBlueprintValidators | undefined,\n): Readonly> | undefined {\n if (!validators) return undefined;\n const generations = Array.isArray(validators) ? validators : [validators];\n return generations.find(\n (generation) =>\n resolveBlueprintVersion(logicHash, generation) !== undefined,\n );\n}\n\n/**\n * Version-discriminating view of the live proxy datum, resolved via the\n * one-shot NFT (the proxy's stable identity — the UTxO ref changes on every\n * settings update, the NFT does not).\n */\nexport interface IProxyLogicSnapshot {\n /** The `logic` script hash — first field of every ProxyDatum variant. */\n logicHash: Core.ScriptHash;\n /** All datum constructor fields; index 1 holds the version-specific settings. */\n datumFields: Core.PlutusList;\n}\n\n/**\n * Version slot each blueprint validator key belongs to. Keys are the ones used\n * in `backend/config/env/.protocol.yaml`, so this map is the single place\n * that translates blueprint naming into SDK version naming.\n */\nconst BLUEPRINT_ORCHESTRATOR_VERSIONS: ReadonlyArray<\n readonly [prefix: string, version: TDetectedSDKParams[\"version\"]]\n> = [\n [\"v1_1_rc1/\", \"V1_1_Rc1\"],\n [\"v1_0_rc1/\", \"V1_0_Rc1\"],\n [\"v1_0/\", \"V1_0\"],\n];\n\n/**\n * Which version a deployed `logic` hash belongs to according to the blueprint,\n * or undefined when no blueprint was supplied or none of its orchestrators\n * matches.\n *\n * Only orchestrator entries are consulted: the proxy datum's first field is the\n * protocol orchestrator hash, so any other validator matching would mean the\n * blueprint disagrees with the chain about what a proxy points at.\n */\nexport function resolveBlueprintVersion(\n logicHash: Core.ScriptHash,\n validators: Readonly> | undefined,\n): TDetectedSDKParams[\"version\"] | undefined {\n if (!validators) return undefined;\n\n for (const [key, hash] of Object.entries(validators)) {\n if (hash !== logicHash) continue;\n if (!key.includes(\"protocol_orchestrator\")) continue;\n\n const match = BLUEPRINT_ORCHESTRATOR_VERSIONS.find(([prefix]) =>\n key.startsWith(prefix),\n );\n if (match) return match[1];\n }\n return undefined;\n}\n\n/**\n * Compute the one-shot policy id from the proxy bootstrap reference.\n * Deterministic and local — no provider access.\n */\nexport function computeOneShotPolicyId(\n proxyBootstrap: IDetectInput[\"proxyBootstrap\"],\n enableTrace: boolean,\n): Core.Hash28ByteBase16 {\n return new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: proxyBootstrap.txHash,\n output_index: proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script.hash();\n}\n\n/**\n * Fetch the live proxy datum and extract the `logic` script hash.\n * Costs exactly one provider lookup.\n */\nexport async function fetchProxyLogicSnapshot(\n provider: Provider,\n oneShotPolicyId: Core.Hash28ByteBase16,\n): Promise {\n const { datum: rawDatum } = await readSingletonDatum(\n provider,\n Core.AssetId(oneShotPolicyId),\n );\n\n // All ProxyDatum variants encode as Constr(0, [ByteArray(28 bytes), ]).\n // The first field is always the `logic` ScriptHash, regardless of version.\n const constr = rawDatum.asConstrPlutusData();\n if (!constr) {\n throw new Error(\"Proxy datum is not a constructor PlutusData\");\n }\n const fields = constr.getData();\n const logicBytes = fields.get(0).asBoundedBytes();\n if (!logicBytes) {\n throw new Error(\n \"First constructor field is not bytes (expected ScriptHash)\",\n );\n }\n return {\n logicHash: toHex(logicBytes) as Core.ScriptHash,\n datumFields: fields,\n };\n}\n\n/**\n * Detect the active SDK version by reading the proxy datum on-chain.\n *\n * Phase 1: Extract the `logic` script hash from the proxy datum using raw CBOR\n * access, avoiding the chicken-and-egg problem where the datum schema differs\n * per version.\n *\n * Phase 2: Compare the extracted hash against expected protocol hashes computed\n * deterministically from `proxyBootstrap`. Each version's generated-types\n * module is dynamic-imported only when its turn comes — so on a V1_0_Rc1\n * deployment the V1_0 types chunk (~52 KB gzip / ~214 KB raw) is never\n * fetched. Vite's chunk splitter creates one chunk per `await import()` site,\n * so the chunk topology mirrors the version branches without needing\n * a separate matcher file per version.\n *\n * Priority order: V1_0_Rc1 → V1_0 → V0_4. Latest-deployed-version-first so\n * that on the current production environments (which are on V1_0_Rc1), the\n * very first matcher succeeds and no additional version chunks are fetched\n * to fail a mismatch check first. Rc1 stays ahead of V1_0 so that during the\n * transitional period where both SDK slots resolve to byte-identical scripts\n * (Rc1 is a module-path-only duplicate of V1_0), we prefer the Rc1 path —\n * once V1_0 evolves on-chain, the two hashes diverge and each branch catches\n * its own deployment automatically. V0_4 stays as the legacy fallback.\n *\n * **Re-evaluate this order if V0_4 ever becomes a primary production\n * deployment again** — every session on a V0_4-only environment would pay\n * two failed-hash-check fetches (V1_0_Rc1 + V1_0) before reaching V0_4.\n *\n * Throws `UnknownProtocolVersionError` if the `logic` hash does not match any\n * known version.\n *\n * `config` also accepts a network preset name (`\"mainnet\"`, `\"preprod\"`,\n * `\"preview\"`) in place of an explicit {@link IDetectInput} — resolved via\n * {@link NETWORK_REGISTRY}. Custom deployments still pass an explicit config.\n */\nexport async function detectSDKParams(\n provider: Provider,\n config: IDetectInput,\n): Promise;\nexport async function detectSDKParams(\n provider: Provider,\n network: TNetworkPreset,\n): Promise;\nexport async function detectSDKParams(\n provider: Provider,\n config: IDetectInput | TNetworkPreset,\n): Promise {\n if (typeof config === \"string\" && !Object.hasOwn(NETWORK_REGISTRY, config)) {\n throw new Error(\n `Unknown network preset \"${config}\" — expected one of: ${Object.keys(\n NETWORK_REGISTRY,\n ).join(\", \")}`,\n );\n }\n const resolved =\n typeof config === \"string\"\n ? NETWORK_REGISTRY[config as TNetworkPreset]\n : config;\n const enableTrace = resolved.enableTrace ?? false;\n\n // ── Phase 1: Compute oneshot policy and fetch proxy datum ─────────────────\n\n const oneShotPolicyId = computeOneShotPolicyId(\n resolved.proxyBootstrap,\n enableTrace,\n );\n const snapshot = await fetchProxyLogicSnapshot(provider, oneShotPolicyId);\n\n return matchProtocolVersion(snapshot, oneShotPolicyId, resolved);\n}\n\n/**\n * Phase 2 of detection: match an already-fetched `logic` hash against each\n * known version's expected hash. Local-only — dynamic imports and hash\n * computation, no provider access — so a caller holding a fresh\n * `IProxyLogicSnapshot` can re-resolve the version without another lookup.\n */\nexport async function matchProtocolVersion(\n snapshot: IProxyLogicSnapshot,\n oneShotPolicyId: Core.Hash28ByteBase16,\n config: IDetectInput,\n): Promise {\n const enableTrace = config.enableTrace ?? false;\n const { logicHash, datumFields: fields } = snapshot;\n\n // Which version the supplied blueprint says this `logic` hash belongs to, if\n // any. Matching on the deployed hash rather than a derived one is what keeps\n // a regenerated artifact from stranding a live deployment: the blueprint\n // records what the chain runs, this build only records what it ships.\n //\n // Deliberately exact-match and fail-closed — a blueprint authorises the one\n // deployment it names, never anything that merely looks the same shape.\n // Pick the generation the chain is actually on before reading anything from\n // it, so version and script hashes always come from the same generation. A\n // cutover otherwise has a window where the datum names new scripts and the\n // config still names old ones (or the reverse), and every consumer in it\n // fails closed until its config catches up.\n const deployedGeneration = selectBlueprintGeneration(\n logicHash,\n config.protocolValidators,\n );\n const blueprintVersion = resolveBlueprintVersion(\n logicHash,\n deployedGeneration,\n );\n // A non-empty supplied generation makes the blueprint authoritative. A miss\n // does not consult derivation: blueprintVersion stays undefined, every\n // matchesV1Version check fails, and detection throws\n // UnknownProtocolVersionError.\n const suppliedGenerations = Array.isArray(config.protocolValidators)\n ? config.protocolValidators\n : config.protocolValidators\n ? [config.protocolValidators]\n : [];\n const hasAuthoritativeBlueprint = suppliedGenerations.some(\n (generation) => Object.keys(generation).length > 0,\n );\n const matchesV1Version = (\n derivedHash: Core.ScriptHash,\n version: \"V1_0\" | \"V1_0_Rc1\" | \"V1_1_Rc1\",\n ): boolean =>\n hasAuthoritativeBlueprint\n ? blueprintVersion === version\n : logicHash === derivedHash;\n\n // ── Try each version's hash candidate ─────────────────────────────────────\n //\n // Each version dynamic-imports its types from its own subpath module, and\n // **destructures named exports at the await site** so Vite can statically\n // see which specific classes are used and tree-shake the rest of the\n // generated-types module (each version's index.ts has ~70 top-level\n // exports; each branch needs only 1-5).\n\n // V1_1_Rc1 — orchestrator hash + backward-compat flag detection.\n // Checked first: latest-deployed-version-first, so environments on\n // V1_1_Rc1 match on the first attempt with no failed-mismatch chunk fetches.\n {\n const {\n V1_1Rc1ProtocolMintProtocolMintWithdraw,\n V1_1Rc1ProtocolStakeProtocolStakeWithdraw,\n V1_1Rc1ProtocolManagementProtocolManagementWithdraw,\n V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw,\n V1_1Rc1YieldOracleYieldOracleMint,\n SettingsV1: SettingsV1_1Rc1Schema,\n } = await import(\"../../generated-types/v1_1_rc1/index.js\");\n // eslint-disable-next-line @typescript-eslint/naming-convention\n type TSettingsV1_1Rc1 = typeof SettingsV1_1Rc1Schema extends {\n static: infer T;\n }\n ? T\n : never;\n\n const protocolMintHashV1_1Rc1 = new V1_1Rc1ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolStakeHashV1_1Rc1 =\n new V1_1Rc1ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolManagementHashV1_1Rc1 =\n new V1_1Rc1ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n // A deferred oracle omits the seed; default to the placeholder so a\n // V1_1_Rc1 deployment is still recognized without any seed config. A real\n // seed (for a deployment that runs the oracle) overrides it. Either way the\n // block below always runs — the exact hash comparison alone decides whether\n // this is actually a V1_1_Rc1 proxy, so a V1_0/older proxy simply won't\n // match and falls through.\n const yieldOracleBootstrap =\n config.yieldOracleBootstrap ?? YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER;\n {\n // The orchestrator's 5th param is the `yield_oracle` *validator* hash — the\n // mint+spend validator that holds the oracle UTxO (guarded by ExecuteOrders'\n // `no_script_input`), NOT the distribution_oracle logic validator. Because\n // yield_oracle is a mint+spend validator, that hash equals the oracle-NFT\n // policy id. Derive it the same way RealfiSDKV1_1Rc1.create does so the\n // recomputed orchestrator hash matches the deployed logic hash.\n const oracleNftPolicyIdV1_1Rc1 = new V1_1Rc1YieldOracleYieldOracleMint(\n {\n transaction_id: yieldOracleBootstrap.txHash,\n output_index: yieldOracleBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const orchestratorHashV1_1Rc1 =\n new V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintHashV1_1Rc1,\n protocolStakeHashV1_1Rc1,\n protocolManagementHashV1_1Rc1,\n oracleNftPolicyIdV1_1Rc1,\n enableTrace,\n ).Script.hash();\n\n if (matchesV1Version(orchestratorHashV1_1Rc1, \"V1_1_Rc1\")) {\n const settingsData = fields.get(1);\n const settings = parse(\n SettingsV1_1Rc1Schema,\n settingsData,\n ) as TSettingsV1_1Rc1;\n const registry = settings.registry;\n\n const { V0_1TreasuryTreasurySpend } =\n await import(\"../../generated-types/v0_1/index.js\");\n const { V0_4StakingVaultStakingVaultSpend } =\n await import(\"../../generated-types/v0_4/index.js\");\n\n const v01TreasuryHash = new V0_1TreasuryTreasurySpend(\n {\n transaction_id: config.treasuryBootstrap.txHash,\n output_index: config.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_1Treasury = registry.treasury === v01TreasuryHash;\n\n const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: config.stakingVaultBootstrap.txHash,\n output_index: config.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_4StakingVault =\n registry.staking_vault === v04StakingVaultHash;\n\n return {\n version: \"V1_1_Rc1\",\n proxyBootstrap: config.proxyBootstrap,\n treasuryBootstrap: config.treasuryBootstrap,\n stakingVaultBootstrap: config.stakingVaultBootstrap,\n yieldOracleBootstrap,\n assetNameHex: config.assetNameHex,\n sUSDrAssetNameHex: config.sUSDrAssetNameHex,\n enableTrace: config.enableTrace,\n useV0_1Treasury: useV0_1Treasury || undefined,\n useV0_4StakingVault: useV0_4StakingVault || undefined,\n // Identity, not just version: script hashes and the order address are\n // otherwise derived from this package's artifacts, which is wrong for a\n // chain running different bytes.\n deployedValidators: deployedGeneration,\n };\n }\n }\n }\n\n // V1_0_Rc1 — orchestrator hash + backward-compat flag detection.\n // Checked before V1_0 because it's the current production deployment;\n // matching early avoids failed-mismatch chunk fetches.\n {\n const {\n V1_0Rc1ProtocolMintProtocolMintWithdraw,\n V1_0Rc1ProtocolStakeProtocolStakeWithdraw,\n V1_0Rc1ProtocolManagementProtocolManagementWithdraw,\n V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw,\n SettingsV1: SettingsV1Rc1Schema,\n } = await import(\"../../generated-types/v1_0_rc1/index.js\");\n type TSettingsV1Rc1 = typeof SettingsV1Rc1Schema extends {\n static: infer T;\n }\n ? T\n : never;\n\n const protocolMintHashRc1 = new V1_0Rc1ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolStakeHashRc1 = new V1_0Rc1ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolManagementHashRc1 =\n new V1_0Rc1ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const orchestratorHashRc1 =\n new V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintHashRc1,\n protocolStakeHashRc1,\n protocolManagementHashRc1,\n enableTrace,\n ).Script.hash();\n\n if (matchesV1Version(orchestratorHashRc1, \"V1_0_Rc1\")) {\n const settingsData = fields.get(1);\n const settings = parse(\n SettingsV1Rc1Schema,\n settingsData,\n ) as TSettingsV1Rc1;\n const registry = settings.registry;\n\n // Backward-compat checks: load V0_1 + V0_4 types only after the\n // orchestrator hash matches. Same named-export destructuring pattern.\n const { V0_1TreasuryTreasurySpend } =\n await import(\"../../generated-types/v0_1/index.js\");\n const { V0_4StakingVaultStakingVaultSpend } =\n await import(\"../../generated-types/v0_4/index.js\");\n\n const v01TreasuryHash = new V0_1TreasuryTreasurySpend(\n {\n transaction_id: config.treasuryBootstrap.txHash,\n output_index: config.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_1Treasury = registry.treasury === v01TreasuryHash;\n\n const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: config.stakingVaultBootstrap.txHash,\n output_index: config.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_4StakingVault =\n registry.staking_vault === v04StakingVaultHash;\n\n return {\n version: \"V1_0_Rc1\",\n proxyBootstrap: config.proxyBootstrap,\n treasuryBootstrap: config.treasuryBootstrap,\n stakingVaultBootstrap: config.stakingVaultBootstrap,\n assetNameHex: config.assetNameHex,\n sUSDrAssetNameHex: config.sUSDrAssetNameHex,\n enableTrace: config.enableTrace,\n useV0_1Treasury: useV0_1Treasury || undefined,\n useV0_4StakingVault: useV0_4StakingVault || undefined,\n // Identity, not just version: script hashes and the order address are\n // otherwise derived from this package's artifacts, which is wrong for a\n // chain running different bytes.\n deployedValidators: deployedGeneration,\n };\n }\n }\n\n // V1_0 — orchestrator hash + backward-compat flag detection\n {\n const {\n V1_0ProtocolMintProtocolMintWithdraw,\n V1_0ProtocolStakeProtocolStakeWithdraw,\n V1_0ProtocolManagementProtocolManagementWithdraw,\n V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw,\n SettingsV1: SettingsV1Schema,\n } = await import(\"../../generated-types/v1_0/index.js\");\n type TSettingsV1 = typeof SettingsV1Schema extends { static: infer T }\n ? T\n : never;\n\n const protocolMintHash = new V1_0ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolStakeHash = new V1_0ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const protocolManagementHash =\n new V1_0ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const orchestratorHash =\n new V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintHash,\n protocolStakeHash,\n protocolManagementHash,\n enableTrace,\n ).Script.hash();\n\n if (matchesV1Version(orchestratorHash, \"V1_0\")) {\n const settingsData = fields.get(1);\n const settings = parse(SettingsV1Schema, settingsData) as TSettingsV1;\n const registry = settings.registry;\n\n const { V0_1TreasuryTreasurySpend } =\n await import(\"../../generated-types/v0_1/index.js\");\n const { V0_4StakingVaultStakingVaultSpend } =\n await import(\"../../generated-types/v0_4/index.js\");\n\n const v01TreasuryHash = new V0_1TreasuryTreasurySpend(\n {\n transaction_id: config.treasuryBootstrap.txHash,\n output_index: config.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_1Treasury = registry.treasury === v01TreasuryHash;\n\n const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: config.stakingVaultBootstrap.txHash,\n output_index: config.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n const useV0_4StakingVault =\n registry.staking_vault === v04StakingVaultHash;\n\n return {\n version: \"V1_0\",\n proxyBootstrap: config.proxyBootstrap,\n treasuryBootstrap: config.treasuryBootstrap,\n stakingVaultBootstrap: config.stakingVaultBootstrap,\n assetNameHex: config.assetNameHex,\n sUSDrAssetNameHex: config.sUSDrAssetNameHex,\n enableTrace: config.enableTrace,\n useV0_1Treasury: useV0_1Treasury || undefined,\n useV0_4StakingVault: useV0_4StakingVault || undefined,\n // Identity, not just version: script hashes and the order address are\n // otherwise derived from this package's artifacts, which is wrong for a\n // chain running different bytes.\n deployedValidators: deployedGeneration,\n };\n }\n }\n\n // V0_4 — protocol withdraw hash only. Legacy fallback; checked last so\n // that current-generation deployments don't pay a failed-hash-check load\n // of V0_4 types every session.\n {\n const { V0_4ProtocolProtocolWithdraw } =\n await import(\"../../generated-types/v0_4/index.js\");\n const v04ProtocolHash = new V0_4ProtocolProtocolWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script.hash();\n\n if (logicHash === v04ProtocolHash) {\n return {\n version: \"V0_4\",\n proxyBootstrap: config.proxyBootstrap,\n treasuryBootstrap: config.treasuryBootstrap,\n stakingVaultBootstrap: config.stakingVaultBootstrap,\n assetNameHex: config.assetNameHex,\n sUSDrAssetNameHex: config.sUSDrAssetNameHex,\n enableTrace: config.enableTrace,\n };\n }\n }\n\n throw new UnknownProtocolVersionError(logicHash);\n}\n\nexport class UnknownProtocolVersionError extends Error {\n constructor(public readonly logicHash: string) {\n super(\n `Unrecognized protocol logic hash \"${logicHash}\". ` +\n `The on-chain proxy datum references a script that does not match any known SDK version. ` +\n `Update the SDK or check that you are connected to the correct network.`,\n );\n this.name = \"UnknownProtocolVersionError\";\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/errors.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/errors.js new file mode 100644 index 0000000000..03768caa2a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/errors.js @@ -0,0 +1,37 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/** + * Thrown by `deployScript` when a reference script with the same hash + * already exists on-chain. The thrown instance carries the existing + * reference UTxO so callers that want to reuse the deployment don't + * need to re-query the provider. + * + * Catch this class specifically when a deployment step should be + * idempotent across reruns (e.g. resuming a partially-failed + * bootstrap or upgrade flow): + * + * ```ts + * try { + * const tx = await sdk.deployProtocol(); + * // ...submit... + * } catch (e) { + * if (e instanceof ScriptAlreadyDeployedError) { + * // Use e.refInput, or just skip this step. + * return; + * } + * throw e; + * } + * ``` + */ +export class ScriptAlreadyDeployedError extends Error { + constructor(scriptHash, refInput) { + super(`Script ${scriptHash} is already deployed as a reference script at ` + `${refInput.input().transactionId()}#${refInput.input().index()}`); + _defineProperty(this, "name", "ScriptAlreadyDeployedError"); + _defineProperty(this, "scriptHash", void 0); + _defineProperty(this, "refInput", void 0); + this.scriptHash = scriptHash; + this.refInput = refInput; + } +} +//# sourceMappingURL=errors.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/errors.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/errors.js.map new file mode 100644 index 0000000000..35face0046 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/errors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"errors.js","names":["ScriptAlreadyDeployedError","Error","constructor","scriptHash","refInput","input","transactionId","index","_defineProperty"],"sources":["../../../../src/sdk/shared/errors.ts"],"sourcesContent":["import type { Core } from \"@blaze-cardano/sdk\";\n\n/**\n * Thrown by `deployScript` when a reference script with the same hash\n * already exists on-chain. The thrown instance carries the existing\n * reference UTxO so callers that want to reuse the deployment don't\n * need to re-query the provider.\n *\n * Catch this class specifically when a deployment step should be\n * idempotent across reruns (e.g. resuming a partially-failed\n * bootstrap or upgrade flow):\n *\n * ```ts\n * try {\n * const tx = await sdk.deployProtocol();\n * // ...submit...\n * } catch (e) {\n * if (e instanceof ScriptAlreadyDeployedError) {\n * // Use e.refInput, or just skip this step.\n * return;\n * }\n * throw e;\n * }\n * ```\n */\nexport class ScriptAlreadyDeployedError extends Error {\n override readonly name = \"ScriptAlreadyDeployedError\";\n readonly scriptHash: Core.ScriptHash;\n readonly refInput: Core.TransactionUnspentOutput;\n\n constructor(\n scriptHash: Core.ScriptHash,\n refInput: Core.TransactionUnspentOutput,\n ) {\n super(\n `Script ${scriptHash} is already deployed as a reference script at ` +\n `${refInput.input().transactionId()}#${refInput.input().index()}`,\n );\n this.scriptHash = scriptHash;\n this.refInput = refInput;\n }\n}\n"],"mappings":";;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,0BAA0B,SAASC,KAAK,CAAC;EAKpDC,WAAWA,CACTC,UAA2B,EAC3BC,QAAuC,EACvC;IACA,KAAK,CACH,UAAUD,UAAU,gDAAgD,GAClE,GAAGC,QAAQ,CAACC,KAAK,CAAC,CAAC,CAACC,aAAa,CAAC,CAAC,IAAIF,QAAQ,CAACC,KAAK,CAAC,CAAC,CAACE,KAAK,CAAC,CAAC,EACnE,CAAC;IAACC,eAAA,eAXqB,4BAA4B;IAAAA,eAAA;IAAAA,eAAA;IAYnD,IAAI,CAACL,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,QAAQ,GAAGA,QAAQ;EAC1B;AACF","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/index.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/index.js new file mode 100644 index 0000000000..c22111f342 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/index.js @@ -0,0 +1,11 @@ +export * from "./types.js"; +export * from "./utils.js"; +export * from "./base.js"; +export * from "./client-id.js"; +export * from "./detect-params.js"; +export * from "./timelock.js"; +export * from "./reserve-assets.js"; +export * from "./slots.js"; +export * from "./cancel.js"; +export * from "./errors.js"; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/index.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/index.js.map new file mode 100644 index 0000000000..956679597f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":[],"sources":["../../../../src/sdk/shared/index.ts"],"sourcesContent":["export * from \"./types.js\";\nexport * from \"./utils.js\";\nexport * from \"./base.js\";\nexport * from \"./client-id.js\";\nexport * from \"./detect-params.js\";\nexport * from \"./timelock.js\";\nexport * from \"./reserve-assets.js\";\nexport * from \"./slots.js\";\nexport * from \"./cancel.js\";\nexport * from \"./errors.js\";\n"],"mappings":"AAAA,cAAc,YAAY;AAC1B,cAAc,YAAY;AAC1B,cAAc,WAAW;AACzB,cAAc,gBAAgB;AAC9B,cAAc,oBAAoB;AAClC,cAAc,eAAe;AAC7B,cAAc,qBAAqB;AACnC,cAAc,YAAY;AAC1B,cAAc,aAAa;AAC3B,cAAc,aAAa","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/network-registry.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/network-registry.js new file mode 100644 index 0000000000..010339a9b8 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/network-registry.js @@ -0,0 +1,72 @@ +// Per-network on-chain bootstrap references for protocol detection. + +import { Core } from "@blaze-cardano/sdk"; +// Source of truth: frontend/app/config/{mainnet,preprod,preview}.json +// (proxyBootstrap/treasuryBootstrap/stakingVaultBootstrap, stablecoinAssetName, +// sUSDrAssetName). Update an entry only when that network's protocol is +// redeployed with new bootstrap UTxOs. +// +// Frozen (entry + bootstrap objects): NETWORK_REGISTRY is shared by reference +// into detectSDKParams — a consumer mutating proxyBootstrap.txHash would +// otherwise poison every later detectParams(provider, "mainnet") call. +const freezeBootstrap = b => Object.freeze(b); +const freezeDetectInput = entry => Object.freeze({ + ...entry, + proxyBootstrap: freezeBootstrap(entry.proxyBootstrap), + treasuryBootstrap: freezeBootstrap(entry.treasuryBootstrap), + stakingVaultBootstrap: freezeBootstrap(entry.stakingVaultBootstrap), + ...(entry.yieldOracleBootstrap ? { + yieldOracleBootstrap: freezeBootstrap(entry.yieldOracleBootstrap) + } : {}) +}); +export const NETWORK_REGISTRY = Object.freeze({ + mainnet: freezeDetectInput({ + proxyBootstrap: { + txHash: Core.TransactionId("d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac"), + outputIndex: 0n + }, + treasuryBootstrap: { + txHash: Core.TransactionId("d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac"), + outputIndex: 1n + }, + stakingVaultBootstrap: { + txHash: Core.TransactionId("d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac"), + outputIndex: 2n + }, + assetNameHex: "55534472", + sUSDrAssetNameHex: "7355534472" + }), + preprod: freezeDetectInput({ + proxyBootstrap: { + txHash: Core.TransactionId("d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7"), + outputIndex: 0n + }, + treasuryBootstrap: { + txHash: Core.TransactionId("d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7"), + outputIndex: 1n + }, + stakingVaultBootstrap: { + txHash: Core.TransactionId("d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7"), + outputIndex: 2n + }, + assetNameHex: "55534472", + sUSDrAssetNameHex: "7355534472" + }), + preview: freezeDetectInput({ + proxyBootstrap: { + txHash: Core.TransactionId("a32795a0be2dfef61583ab0d7b2c959bbbeab159530dc5a3ef0fa61d94595c99"), + outputIndex: 1n + }, + treasuryBootstrap: { + txHash: Core.TransactionId("cf7450305eeaca76ee15a2a863b7d2d272dce7493feae489ec18395cc22b4646"), + outputIndex: 2n + }, + stakingVaultBootstrap: { + txHash: Core.TransactionId("17ad2403529298bc8b6a3150069cb0edf55a17e3c334d8b9e0f98ca0e3922bbb"), + outputIndex: 0n + }, + assetNameHex: "55534472", + sUSDrAssetNameHex: "7355534472" + }) +}); +//# sourceMappingURL=network-registry.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/network-registry.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/network-registry.js.map new file mode 100644 index 0000000000..702cf53d01 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/network-registry.js.map @@ -0,0 +1 @@ +{"version":3,"file":"network-registry.js","names":["Core","freezeBootstrap","b","Object","freeze","freezeDetectInput","entry","proxyBootstrap","treasuryBootstrap","stakingVaultBootstrap","yieldOracleBootstrap","NETWORK_REGISTRY","mainnet","txHash","TransactionId","outputIndex","assetNameHex","sUSDrAssetNameHex","preprod","preview"],"sources":["../../../../src/sdk/shared/network-registry.ts"],"sourcesContent":["// Per-network on-chain bootstrap references for protocol detection.\n\nimport { Core } from \"@blaze-cardano/sdk\";\n\nimport type { IDetectInput } from \"./detect-params.js\";\n\nexport type TNetworkPreset = \"mainnet\" | \"preprod\" | \"preview\";\n\n// Source of truth: frontend/app/config/{mainnet,preprod,preview}.json\n// (proxyBootstrap/treasuryBootstrap/stakingVaultBootstrap, stablecoinAssetName,\n// sUSDrAssetName). Update an entry only when that network's protocol is\n// redeployed with new bootstrap UTxOs.\n//\n// Frozen (entry + bootstrap objects): NETWORK_REGISTRY is shared by reference\n// into detectSDKParams — a consumer mutating proxyBootstrap.txHash would\n// otherwise poison every later detectParams(provider, \"mainnet\") call.\nconst freezeBootstrap = <\n T extends { txHash: Core.TransactionId; outputIndex: bigint },\n>(\n b: T,\n): Readonly => Object.freeze(b);\n\nconst freezeDetectInput = (entry: IDetectInput): Readonly =>\n Object.freeze({\n ...entry,\n proxyBootstrap: freezeBootstrap(entry.proxyBootstrap),\n treasuryBootstrap: freezeBootstrap(entry.treasuryBootstrap),\n stakingVaultBootstrap: freezeBootstrap(entry.stakingVaultBootstrap),\n ...(entry.yieldOracleBootstrap\n ? { yieldOracleBootstrap: freezeBootstrap(entry.yieldOracleBootstrap) }\n : {}),\n });\n\nexport const NETWORK_REGISTRY: Readonly> =\n Object.freeze({\n mainnet: freezeDetectInput({\n proxyBootstrap: {\n txHash: Core.TransactionId(\n \"d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac\",\n ),\n outputIndex: 0n,\n },\n treasuryBootstrap: {\n txHash: Core.TransactionId(\n \"d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac\",\n ),\n outputIndex: 1n,\n },\n stakingVaultBootstrap: {\n txHash: Core.TransactionId(\n \"d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac\",\n ),\n outputIndex: 2n,\n },\n assetNameHex: \"55534472\",\n sUSDrAssetNameHex: \"7355534472\",\n }),\n preprod: freezeDetectInput({\n proxyBootstrap: {\n txHash: Core.TransactionId(\n \"d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7\",\n ),\n outputIndex: 0n,\n },\n treasuryBootstrap: {\n txHash: Core.TransactionId(\n \"d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7\",\n ),\n outputIndex: 1n,\n },\n stakingVaultBootstrap: {\n txHash: Core.TransactionId(\n \"d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7\",\n ),\n outputIndex: 2n,\n },\n assetNameHex: \"55534472\",\n sUSDrAssetNameHex: \"7355534472\",\n }),\n preview: freezeDetectInput({\n proxyBootstrap: {\n txHash: Core.TransactionId(\n \"a32795a0be2dfef61583ab0d7b2c959bbbeab159530dc5a3ef0fa61d94595c99\",\n ),\n outputIndex: 1n,\n },\n treasuryBootstrap: {\n txHash: Core.TransactionId(\n \"cf7450305eeaca76ee15a2a863b7d2d272dce7493feae489ec18395cc22b4646\",\n ),\n outputIndex: 2n,\n },\n stakingVaultBootstrap: {\n txHash: Core.TransactionId(\n \"17ad2403529298bc8b6a3150069cb0edf55a17e3c334d8b9e0f98ca0e3922bbb\",\n ),\n outputIndex: 0n,\n },\n assetNameHex: \"55534472\",\n sUSDrAssetNameHex: \"7355534472\",\n }),\n });\n"],"mappings":"AAAA;;AAEA,SAASA,IAAI,QAAQ,oBAAoB;AAMzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,eAAe,GAGnBC,CAAI,IACYC,MAAM,CAACC,MAAM,CAACF,CAAC,CAAC;AAElC,MAAMG,iBAAiB,GAAIC,KAAmB,IAC5CH,MAAM,CAACC,MAAM,CAAC;EACZ,GAAGE,KAAK;EACRC,cAAc,EAAEN,eAAe,CAACK,KAAK,CAACC,cAAc,CAAC;EACrDC,iBAAiB,EAAEP,eAAe,CAACK,KAAK,CAACE,iBAAiB,CAAC;EAC3DC,qBAAqB,EAAER,eAAe,CAACK,KAAK,CAACG,qBAAqB,CAAC;EACnE,IAAIH,KAAK,CAACI,oBAAoB,GAC1B;IAAEA,oBAAoB,EAAET,eAAe,CAACK,KAAK,CAACI,oBAAoB;EAAE,CAAC,GACrE,CAAC,CAAC;AACR,CAAC,CAAC;AAEJ,OAAO,MAAMC,gBAAgE,GAC3ER,MAAM,CAACC,MAAM,CAAC;EACZQ,OAAO,EAAEP,iBAAiB,CAAC;IACzBE,cAAc,EAAE;MACdM,MAAM,EAAEb,IAAI,CAACc,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDP,iBAAiB,EAAE;MACjBK,MAAM,EAAEb,IAAI,CAACc,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDN,qBAAqB,EAAE;MACrBI,MAAM,EAAEb,IAAI,CAACc,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDC,YAAY,EAAE,UAAU;IACxBC,iBAAiB,EAAE;EACrB,CAAC,CAAC;EACFC,OAAO,EAAEb,iBAAiB,CAAC;IACzBE,cAAc,EAAE;MACdM,MAAM,EAAEb,IAAI,CAACc,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDP,iBAAiB,EAAE;MACjBK,MAAM,EAAEb,IAAI,CAACc,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDN,qBAAqB,EAAE;MACrBI,MAAM,EAAEb,IAAI,CAACc,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDC,YAAY,EAAE,UAAU;IACxBC,iBAAiB,EAAE;EACrB,CAAC,CAAC;EACFE,OAAO,EAAEd,iBAAiB,CAAC;IACzBE,cAAc,EAAE;MACdM,MAAM,EAAEb,IAAI,CAACc,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDP,iBAAiB,EAAE;MACjBK,MAAM,EAAEb,IAAI,CAACc,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDN,qBAAqB,EAAE;MACrBI,MAAM,EAAEb,IAAI,CAACc,aAAa,CACxB,kEACF,CAAC;MACDC,WAAW,EAAE;IACf,CAAC;IACDC,YAAY,EAAE,UAAU;IACxBC,iBAAiB,EAAE;EACrB,CAAC;AACH,CAAC,CAAC","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/public.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/public.js new file mode 100644 index 0000000000..4b60f4616d --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/public.js @@ -0,0 +1,5 @@ +// Partner-facing helper subset, exposed as the public `Utils` namespace. +export { addressToDestination, destinationToAddress, getSignatureKeyHashesFromMultisigScript, getScriptKeyHashesFromMultisigScript, getAllKeyHashesFromMultisigScript, normalizeProtocolVersion, normalizeOrderVersion } from "./utils.js"; +export { findReserveAsset, usdrToReserve, usdrToReserveCeil } from "./reserve-assets.js"; +export { buildTimelockAddress } from "./timelock.js"; +//# sourceMappingURL=public.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/public.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/public.js.map new file mode 100644 index 0000000000..c5d1b8d525 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/public.js.map @@ -0,0 +1 @@ +{"version":3,"file":"public.js","names":["addressToDestination","destinationToAddress","getSignatureKeyHashesFromMultisigScript","getScriptKeyHashesFromMultisigScript","getAllKeyHashesFromMultisigScript","normalizeProtocolVersion","normalizeOrderVersion","findReserveAsset","usdrToReserve","usdrToReserveCeil","buildTimelockAddress"],"sources":["../../../../src/sdk/shared/public.ts"],"sourcesContent":["// Partner-facing helper subset, exposed as the public `Utils` namespace.\nexport {\n addressToDestination,\n destinationToAddress,\n getSignatureKeyHashesFromMultisigScript,\n getScriptKeyHashesFromMultisigScript,\n getAllKeyHashesFromMultisigScript,\n normalizeProtocolVersion,\n normalizeOrderVersion,\n} from \"./utils.js\";\nexport {\n findReserveAsset,\n usdrToReserve,\n usdrToReserveCeil,\n} from \"./reserve-assets.js\";\nexport { buildTimelockAddress } from \"./timelock.js\";\n"],"mappings":"AAAA;AACA,SACEA,oBAAoB,EACpBC,oBAAoB,EACpBC,uCAAuC,EACvCC,oCAAoC,EACpCC,iCAAiC,EACjCC,wBAAwB,EACxBC,qBAAqB,QAChB,YAAY;AACnB,SACEC,gBAAgB,EAChBC,aAAa,EACbC,iBAAiB,QACZ,qBAAqB;AAC5B,SAASC,oBAAoB,QAAQ,eAAe","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/reserve-assets.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/reserve-assets.js new file mode 100644 index 0000000000..4b6b761ec6 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/reserve-assets.js @@ -0,0 +1,54 @@ +/** + * Find a reserve asset config by policy+name from settings. + */ +export function findReserveAsset(settings, asset) { + const found = settings.reserve_assets.find(ra => ra.asset[0] === asset[0] && ra.asset[1] === asset[1]); + if (!found) { + throw new Error(`Reserve asset not found in settings: ${asset[0]}${asset[1]}`); + } + if (found.numerator === 0n) { + throw new Error("Reserve asset numerator must be non-zero"); + } + if (found.denominator === 0n) { + throw new Error("Reserve asset denominator must be non-zero"); + } + return found; +} + +/** + * Convert USDr amount to reserve amount (floor division, protocol-protective for burns). + * Matches on-chain: usdr_to_reserve(amount, ra) = amount * denominator / numerator + */ +export function usdrToReserve(usdrAmount, ra) { + return usdrAmount * ra.denominator / ra.numerator; +} + +/** + * Convert USDr amount to reserve amount (ceiling division, protocol-protective for mints). + * Matches on-chain: usdr_to_reserve_ceil(amount, ra) = (amount * denominator + numerator - 1) / numerator + */ +export function usdrToReserveCeil(usdrAmount, ra) { + return (usdrAmount * ra.denominator + ra.numerator - 1n) / ra.numerator; +} + +/** + * Compute per-reserve-asset deltas from order infos. + * Groups orders by reserve asset and converts USDr amounts to reserve amounts. + * @param negate If true, negate the delta (used for withdraw where amounts are positive but treasury outflow is negative) + */ +export function computeReserveDeltas(orderInfos, settings, negate = false) { + const deltas = new Map(); + const amountsByAsset = new Map(); + for (const orderInfo of orderInfos) { + const assetKey = orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]; + amountsByAsset.set(assetKey, (amountsByAsset.get(assetKey) ?? 0n) + orderInfo.amount); + } + for (const [assetKey, totalUsdr] of amountsByAsset.entries()) { + const orderWithAsset = orderInfos.find(o => o.reserveAsset[0] + o.reserveAsset[1] === assetKey); + const ra = findReserveAsset(settings, orderWithAsset.reserveAsset); + const reserveAmount = usdrToReserve(negate ? -totalUsdr : totalUsdr, ra); + deltas.set(assetKey, reserveAmount); + } + return deltas; +} +//# sourceMappingURL=reserve-assets.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/reserve-assets.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/reserve-assets.js.map new file mode 100644 index 0000000000..cdcd54e227 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/reserve-assets.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reserve-assets.js","names":["findReserveAsset","settings","asset","found","reserve_assets","find","ra","Error","numerator","denominator","usdrToReserve","usdrAmount","usdrToReserveCeil","computeReserveDeltas","orderInfos","negate","deltas","Map","amountsByAsset","orderInfo","assetKey","reserveAsset","set","get","amount","totalUsdr","entries","orderWithAsset","o","reserveAmount"],"sources":["../../../../src/sdk/shared/reserve-assets.ts"],"sourcesContent":["import type { IReserveAsset } from \"./types.js\";\n\ntype TSettingsWithReserveAssets = {\n reserve_assets: IReserveAsset[];\n};\n\ntype TOrderInfoWithReserveAsset = {\n reserveAsset?: [string, string];\n amount: bigint;\n};\n\n/**\n * Find a reserve asset config by policy+name from settings.\n */\nexport function findReserveAsset(\n settings: TSettingsWithReserveAssets,\n asset: [string, string],\n): IReserveAsset {\n const found = settings.reserve_assets.find(\n (ra) => ra.asset[0] === asset[0] && ra.asset[1] === asset[1],\n );\n if (!found) {\n throw new Error(\n `Reserve asset not found in settings: ${asset[0]}${asset[1]}`,\n );\n }\n if (found.numerator === 0n) {\n throw new Error(\"Reserve asset numerator must be non-zero\");\n }\n if (found.denominator === 0n) {\n throw new Error(\"Reserve asset denominator must be non-zero\");\n }\n return found;\n}\n\n/**\n * Convert USDr amount to reserve amount (floor division, protocol-protective for burns).\n * Matches on-chain: usdr_to_reserve(amount, ra) = amount * denominator / numerator\n */\nexport function usdrToReserve(usdrAmount: bigint, ra: IReserveAsset): bigint {\n return (usdrAmount * ra.denominator) / ra.numerator;\n}\n\n/**\n * Convert USDr amount to reserve amount (ceiling division, protocol-protective for mints).\n * Matches on-chain: usdr_to_reserve_ceil(amount, ra) = (amount * denominator + numerator - 1) / numerator\n */\nexport function usdrToReserveCeil(\n usdrAmount: bigint,\n ra: IReserveAsset,\n): bigint {\n return (usdrAmount * ra.denominator + ra.numerator - 1n) / ra.numerator;\n}\n\n/**\n * Compute per-reserve-asset deltas from order infos.\n * Groups orders by reserve asset and converts USDr amounts to reserve amounts.\n * @param negate If true, negate the delta (used for withdraw where amounts are positive but treasury outflow is negative)\n */\nexport function computeReserveDeltas(\n orderInfos: TOrderInfoWithReserveAsset[],\n settings: TSettingsWithReserveAssets,\n negate: boolean = false,\n): Map {\n const deltas = new Map();\n const amountsByAsset = new Map();\n\n for (const orderInfo of orderInfos) {\n const assetKey = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1];\n amountsByAsset.set(\n assetKey,\n (amountsByAsset.get(assetKey) ?? 0n) + orderInfo.amount,\n );\n }\n\n for (const [assetKey, totalUsdr] of amountsByAsset.entries()) {\n const orderWithAsset = orderInfos.find(\n (o) => o.reserveAsset![0] + o.reserveAsset![1] === assetKey,\n )!;\n const ra = findReserveAsset(settings, orderWithAsset.reserveAsset!);\n const reserveAmount = usdrToReserve(negate ? -totalUsdr : totalUsdr, ra);\n deltas.set(assetKey, reserveAmount);\n }\n\n return deltas;\n}\n"],"mappings":"AAWA;AACA;AACA;AACA,OAAO,SAASA,gBAAgBA,CAC9BC,QAAoC,EACpCC,KAAuB,EACR;EACf,MAAMC,KAAK,GAAGF,QAAQ,CAACG,cAAc,CAACC,IAAI,CACvCC,EAAE,IAAKA,EAAE,CAACJ,KAAK,CAAC,CAAC,CAAC,KAAKA,KAAK,CAAC,CAAC,CAAC,IAAII,EAAE,CAACJ,KAAK,CAAC,CAAC,CAAC,KAAKA,KAAK,CAAC,CAAC,CAC7D,CAAC;EACD,IAAI,CAACC,KAAK,EAAE;IACV,MAAM,IAAII,KAAK,CACb,wCAAwCL,KAAK,CAAC,CAAC,CAAC,GAAGA,KAAK,CAAC,CAAC,CAAC,EAC7D,CAAC;EACH;EACA,IAAIC,KAAK,CAACK,SAAS,KAAK,EAAE,EAAE;IAC1B,MAAM,IAAID,KAAK,CAAC,0CAA0C,CAAC;EAC7D;EACA,IAAIJ,KAAK,CAACM,WAAW,KAAK,EAAE,EAAE;IAC5B,MAAM,IAAIF,KAAK,CAAC,4CAA4C,CAAC;EAC/D;EACA,OAAOJ,KAAK;AACd;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASO,aAAaA,CAACC,UAAkB,EAAEL,EAAiB,EAAU;EAC3E,OAAQK,UAAU,GAAGL,EAAE,CAACG,WAAW,GAAIH,EAAE,CAACE,SAAS;AACrD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASI,iBAAiBA,CAC/BD,UAAkB,EAClBL,EAAiB,EACT;EACR,OAAO,CAACK,UAAU,GAAGL,EAAE,CAACG,WAAW,GAAGH,EAAE,CAACE,SAAS,GAAG,EAAE,IAAIF,EAAE,CAACE,SAAS;AACzE;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASK,oBAAoBA,CAClCC,UAAwC,EACxCb,QAAoC,EACpCc,MAAe,GAAG,KAAK,EACF;EACrB,MAAMC,MAAM,GAAG,IAAIC,GAAG,CAAiB,CAAC;EACxC,MAAMC,cAAc,GAAG,IAAID,GAAG,CAAiB,CAAC;EAEhD,KAAK,MAAME,SAAS,IAAIL,UAAU,EAAE;IAClC,MAAMM,QAAQ,GAAGD,SAAS,CAACE,YAAY,CAAE,CAAC,CAAC,GAAGF,SAAS,CAACE,YAAY,CAAE,CAAC,CAAC;IACxEH,cAAc,CAACI,GAAG,CAChBF,QAAQ,EACR,CAACF,cAAc,CAACK,GAAG,CAACH,QAAQ,CAAC,IAAI,EAAE,IAAID,SAAS,CAACK,MACnD,CAAC;EACH;EAEA,KAAK,MAAM,CAACJ,QAAQ,EAAEK,SAAS,CAAC,IAAIP,cAAc,CAACQ,OAAO,CAAC,CAAC,EAAE;IAC5D,MAAMC,cAAc,GAAGb,UAAU,CAACT,IAAI,CACnCuB,CAAC,IAAKA,CAAC,CAACP,YAAY,CAAE,CAAC,CAAC,GAAGO,CAAC,CAACP,YAAY,CAAE,CAAC,CAAC,KAAKD,QACrD,CAAE;IACF,MAAMd,EAAE,GAAGN,gBAAgB,CAACC,QAAQ,EAAE0B,cAAc,CAACN,YAAa,CAAC;IACnE,MAAMQ,aAAa,GAAGnB,aAAa,CAACK,MAAM,GAAG,CAACU,SAAS,GAAGA,SAAS,EAAEnB,EAAE,CAAC;IACxEU,MAAM,CAACM,GAAG,CAACF,QAAQ,EAAES,aAAa,CAAC;EACrC;EAEA,OAAOb,MAAM;AACf","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/slots.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/slots.js new file mode 100644 index 0000000000..1d95eeec98 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/slots.js @@ -0,0 +1,65 @@ +import { Core } from "@blaze-cardano/sdk"; + +/** + * The slot/time conversions a slot-alignment needs. Structural (rather than the + * `Provider` class) so callers can pass any provider — Blockfrost, Kupmios, + * `EmulatorProvider` — and tests can pass a plain object with a known slot + * config. Note that `Emulator` (the clock, not its provider) also satisfies this + * shape while rounding the other way; {@link slotFloor} handles both. + */ + +/** + * The integer slot that contains `timeMs`: the latest slot that has already + * started at `timeMs`. + * + * `provider.unixToSlot` does **not** floor — it returns + * `(ms - zeroTime) / slotLength + zeroSlot`, so for any wall-clock time that is + * not exactly on a slot boundary it yields a **fractional** slot. Two things + * then go wrong if that value is used as-is: + * + * 1. A tx body stores `invalid_before` / `invalid_hereafter` as **integer** + * slots, and the CBOR writer silently truncates the fraction. The value the + * validator reads is therefore not the value the SDK computed with. + * 2. The round-trip `slotToUnix(unixToSlot(t))` — the natural way to express + * "snap `t` to its slot" — is the *identity* on `t`, not an alignment. + * + * That combination cost us a crashed windowed deposit on preview: the vault + * output's `diffusion_start` kept the sub-slot remainder while the tx's validity + * lower bound was floored, so `validate_deposit_diffusion`'s + * `diffusion_start == now` check failed by that remainder (REALFI-653). The + * emulator hid it because the clock injected in tests is already slot-aligned — + * not because of any provider difference: `EmulatorProvider` extends the same + * `Provider` base and returns the same fractional slots. + * + * Flooring alone would not be enough for a clock that ROUNDS UP: `Emulator` + * itself (as opposed to the `EmulatorProvider` Blaze hands the SDK) implements + * `unixToSlot` with `Math.ceil`, and being structural, `TSlotClock` accepts it. + * Flooring a ceiled slot is a no-op, which would hand back a slot that has not + * started yet. So the candidate is checked against its own start time and walked + * back when it overshoots — a branch no real provider ever takes, and the reason + * the contract above holds for *any* clock rather than only the fractional ones. + * + * **Audit invariant:** `unixToSlot` must not be called anywhere else in the SDK. + * `rg 'unixToSlot' src/` matching only this file *is* the audit — keep it that + * way so a future time→slot conversion cannot reintroduce the bug. + */ +export function slotFloor(clock, timeMs) { + const candidate = Math.floor(Number(clock.unixToSlot(timeMs))); + const overshoots = Number(clock.slotToUnix(Core.Slot(candidate))) > Number(timeMs); + return Core.Slot(overshoots ? candidate - 1 : candidate); +} + +/** + * `timeMs` snapped back to the start of its slot, as POSIX ms — exactly the + * "now" a validator reads from a tx whose validity bound is + * `slotFloor(clock, timeMs)`. Use this for any timestamp that has to equal a + * validity bound on-chain (a diffusion window's `diffusion_start`, a rate quote + * time), so the datum and the tx body cannot disagree. + * + * Idempotent — aligning an already-aligned time is a no-op — so a time derived + * from an aligned one (a backoff, a forward window) can be aligned again safely. + */ +export function slotAlignedTimeMs(clock, timeMs) { + return BigInt(clock.slotToUnix(slotFloor(clock, timeMs))); +} +//# sourceMappingURL=slots.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/slots.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/slots.js.map new file mode 100644 index 0000000000..f0f1fd718e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/slots.js.map @@ -0,0 +1 @@ +{"version":3,"file":"slots.js","names":["Core","slotFloor","clock","timeMs","candidate","Math","floor","Number","unixToSlot","overshoots","slotToUnix","Slot","slotAlignedTimeMs","BigInt"],"sources":["../../../../src/sdk/shared/slots.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport { Core } from \"@blaze-cardano/sdk\";\n\n/**\n * The slot/time conversions a slot-alignment needs. Structural (rather than the\n * `Provider` class) so callers can pass any provider — Blockfrost, Kupmios,\n * `EmulatorProvider` — and tests can pass a plain object with a known slot\n * config. Note that `Emulator` (the clock, not its provider) also satisfies this\n * shape while rounding the other way; {@link slotFloor} handles both.\n */\nexport type TSlotClock = Pick;\n\n/**\n * The integer slot that contains `timeMs`: the latest slot that has already\n * started at `timeMs`.\n *\n * `provider.unixToSlot` does **not** floor — it returns\n * `(ms - zeroTime) / slotLength + zeroSlot`, so for any wall-clock time that is\n * not exactly on a slot boundary it yields a **fractional** slot. Two things\n * then go wrong if that value is used as-is:\n *\n * 1. A tx body stores `invalid_before` / `invalid_hereafter` as **integer**\n * slots, and the CBOR writer silently truncates the fraction. The value the\n * validator reads is therefore not the value the SDK computed with.\n * 2. The round-trip `slotToUnix(unixToSlot(t))` — the natural way to express\n * \"snap `t` to its slot\" — is the *identity* on `t`, not an alignment.\n *\n * That combination cost us a crashed windowed deposit on preview: the vault\n * output's `diffusion_start` kept the sub-slot remainder while the tx's validity\n * lower bound was floored, so `validate_deposit_diffusion`'s\n * `diffusion_start == now` check failed by that remainder (REALFI-653). The\n * emulator hid it because the clock injected in tests is already slot-aligned —\n * not because of any provider difference: `EmulatorProvider` extends the same\n * `Provider` base and returns the same fractional slots.\n *\n * Flooring alone would not be enough for a clock that ROUNDS UP: `Emulator`\n * itself (as opposed to the `EmulatorProvider` Blaze hands the SDK) implements\n * `unixToSlot` with `Math.ceil`, and being structural, `TSlotClock` accepts it.\n * Flooring a ceiled slot is a no-op, which would hand back a slot that has not\n * started yet. So the candidate is checked against its own start time and walked\n * back when it overshoots — a branch no real provider ever takes, and the reason\n * the contract above holds for *any* clock rather than only the fractional ones.\n *\n * **Audit invariant:** `unixToSlot` must not be called anywhere else in the SDK.\n * `rg 'unixToSlot' src/` matching only this file *is* the audit — keep it that\n * way so a future time→slot conversion cannot reintroduce the bug.\n */\nexport function slotFloor(\n clock: TSlotClock,\n timeMs: bigint | number,\n): Core.Slot {\n const candidate = Math.floor(Number(clock.unixToSlot(timeMs)));\n const overshoots =\n Number(clock.slotToUnix(Core.Slot(candidate))) > Number(timeMs);\n return Core.Slot(overshoots ? candidate - 1 : candidate);\n}\n\n/**\n * `timeMs` snapped back to the start of its slot, as POSIX ms — exactly the\n * \"now\" a validator reads from a tx whose validity bound is\n * `slotFloor(clock, timeMs)`. Use this for any timestamp that has to equal a\n * validity bound on-chain (a diffusion window's `diffusion_start`, a rate quote\n * time), so the datum and the tx body cannot disagree.\n *\n * Idempotent — aligning an already-aligned time is a no-op — so a time derived\n * from an aligned one (a backoff, a forward window) can be aligned again safely.\n */\nexport function slotAlignedTimeMs(\n clock: TSlotClock,\n timeMs: bigint | number,\n): bigint {\n return BigInt(clock.slotToUnix(slotFloor(clock, timeMs)));\n}\n"],"mappings":"AACA,SAASA,IAAI,QAAQ,oBAAoB;;AAEzC;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,SAASA,CACvBC,KAAiB,EACjBC,MAAuB,EACZ;EACX,MAAMC,SAAS,GAAGC,IAAI,CAACC,KAAK,CAACC,MAAM,CAACL,KAAK,CAACM,UAAU,CAACL,MAAM,CAAC,CAAC,CAAC;EAC9D,MAAMM,UAAU,GACdF,MAAM,CAACL,KAAK,CAACQ,UAAU,CAACV,IAAI,CAACW,IAAI,CAACP,SAAS,CAAC,CAAC,CAAC,GAAGG,MAAM,CAACJ,MAAM,CAAC;EACjE,OAAOH,IAAI,CAACW,IAAI,CAACF,UAAU,GAAGL,SAAS,GAAG,CAAC,GAAGA,SAAS,CAAC;AAC1D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASQ,iBAAiBA,CAC/BV,KAAiB,EACjBC,MAAuB,EACf;EACR,OAAOU,MAAM,CAACX,KAAK,CAACQ,UAAU,CAACT,SAAS,CAACC,KAAK,EAAEC,MAAM,CAAC,CAAC,CAAC;AAC3D","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/timelock.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/timelock.js new file mode 100644 index 0000000000..5ed2964a4e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/timelock.js @@ -0,0 +1,215 @@ +import { addressFromCredentials } from "@blaze-cardano/core"; +import { Core } from "@blaze-cardano/sdk"; +function bigintToSlot(value, label) { + if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) { + throw new Error(`${label} must be a non-negative safe integer`); + } + return Core.Slot(Number(value)); +} +function bigintToNativeScriptCount(value, label) { + if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) { + throw new Error(`${label} must be a non-negative safe integer`); + } + return Number(value); +} +function timelockStartNativeScript(unlockSlot) { + return Core.NativeScript.newTimelockStart(new Core.TimelockStart(bigintToSlot(unlockSlot, "unlockSlot"))); +} + +/** + * Convert the protocol MultisigScript shape to a Cardano native script. + * + * The protocol's `Script` variant references an arbitrary script hash, which + * native scripts cannot require directly, so this helper rejects it. + */ +export function multisigScriptToNativeScript(multisig) { + if ("Signature" in multisig) { + const hash = Core.Ed25519KeyHashHex(multisig.Signature.key_hash); + return Core.NativeScript.newScriptPubkey(new Core.ScriptPubkey(hash)); + } + if ("AllOf" in multisig) { + return Core.NativeScript.newScriptAll(new Core.ScriptAll(multisig.AllOf.scripts.map(multisigScriptToNativeScript))); + } + if ("AnyOf" in multisig) { + return Core.NativeScript.newScriptAny(new Core.ScriptAny(multisig.AnyOf.scripts.map(multisigScriptToNativeScript))); + } + if ("AtLeast" in multisig) { + return Core.NativeScript.newScriptNOfK(new Core.ScriptNOfK(multisig.AtLeast.scripts.map(multisigScriptToNativeScript), bigintToNativeScriptCount(multisig.AtLeast.required, "AtLeast.required"))); + } + if ("Before" in multisig) { + return Core.NativeScript.newTimelockExpiry(new Core.TimelockExpiry(bigintToSlot(multisig.Before.time, "Before.time"))); + } + if ("After" in multisig) { + return timelockStartNativeScript(multisig.After.time); + } + if ("Script" in multisig) { + throw new Error("MultisigScript Script variant cannot be converted to a native script"); + } + throw new Error("Unrecognized MultisigScript variant"); +} + +/** + * Build the native script used for timelock destinations after unstaking. + * + * The script enforces: AllOf { Signature(userKeyHash), After(unlockTime) } + * meaning the user can only spend the locked USDr after the unlock time. + * + * Use this to reconstruct the script when spending from a timelock address. + */ +export function buildTimelockNativeScript(userKeyHash, unlockTime) { + const pubkeyScript = Core.NativeScript.newScriptPubkey(new Core.ScriptPubkey(Core.Ed25519KeyHashHex(userKeyHash))); + const afterScript = timelockStartNativeScript(unlockTime); + return Core.NativeScript.newScriptAll(new Core.ScriptAll([pubkeyScript, afterScript])); +} + +/** + * Build the native script used for treasury-managed unstake destinations. + * + * The script enforces: AllOf { After(unlockSlot), ownerMultisigScript }. + */ +export function buildMultisigTimelockNativeScript(owner, unlockSlot) { + return Core.NativeScript.newScriptAll(new Core.ScriptAll([timelockStartNativeScript(unlockSlot), multisigScriptToNativeScript(owner)])); +} + +/** + * Pick the timelock native script that a UTxO is actually locked at. + * + * One owner key and one unlock slot yield two different scripts depending on + * which flow created the timelock: the retail unstake path builds + * `AllOf { Signature, After }` and the treasury/multisig path + * `AllOf { After, Signature }`. Same requirements, different element order, + * different hash. The locking address names the script, so it is the authority + * on which one to provide — guessing produces a witness the ledger cannot + * resolve (Sentry DAPP-58). + * + * Timelocks requiring keys beyond `ownerKeyHash` match neither candidate and + * are rejected here, where the reason can be stated, rather than deep inside + * transaction building. + */ +export function resolveTimelockNativeScript(lockingAddress, ownerKeyHash, unlockSlot) { + const paymentPart = lockingAddress.getProps().paymentPart; + if (!paymentPart || paymentPart.type !== Core.CredentialType.ScriptHash) { + throw new Error(`${lockingAddress.toBech32()} is not a script address, so it is not a timelock this wallet can claim`); + } + const candidates = [buildTimelockNativeScript(ownerKeyHash, unlockSlot), buildMultisigTimelockNativeScript({ + Signature: { + key_hash: ownerKeyHash + } + }, unlockSlot)]; + const match = candidates.find(candidate => candidate.hash() === paymentPart.hash); + if (!match) { + throw new Error(`Script hash ${paymentPart.hash} is not a timelock this wallet can claim: ` + `neither timelock shape for owner ${ownerKeyHash} at unlock slot ${unlockSlot} produces it. ` + `A timelock requiring further keys must be claimed through the flow that created it.`); + } + return match; +} + +/** + * Reconstruct the timelock address for a given user key hash, optional stake + * credential, and unlock slot. Useful for querying the live UTxO set to + * determine whether a claim has already been made. + */ +export function buildTimelockAddress(networkId, userKeyHash, unlockSlot, stakeCredential) { + const nativeScript = buildTimelockNativeScript(userKeyHash, unlockSlot); + return addressFromCredentials(networkId, Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash: nativeScript.hash() + }), stakeCredential); +} + +/** + * Build a destination that routes funds to a timelock native script while + * preserving the original stake credential. + */ +export function buildTimelockDestination(userDestination, unlockTime) { + const paymentCred = userDestination.address.payment_credential; + let userKeyHash; + if ("VerificationKey" in paymentCred) { + userKeyHash = paymentCred.VerificationKey[0]; + } else { + throw new Error("Unstake destination must use a verification key payment credential"); + } + const nativeScript = buildTimelockNativeScript(userKeyHash, unlockTime); + const scriptHash = nativeScript.hash(); + return { + address: { + payment_credential: { + Script: [scriptHash] + }, + stake_credential: userDestination.address.stake_credential + }, + datum: "NoDatum" + }; +} +function credentialToMetadatum(cred) { + const map = new Core.MetadatumMap(); + if ("VerificationKey" in cred) { + map.insert(Core.Metadatum.newText("VerificationKey"), Core.Metadatum.newText(cred.VerificationKey[0])); + } else { + map.insert(Core.Metadatum.newText("Script"), Core.Metadatum.newText(cred.Script[0])); + } + return Core.Metadatum.newMap(map); +} +export function destinationToUnstakeMetadatum(destination) { + const addressMap = new Core.MetadatumMap(); + addressMap.insert(Core.Metadatum.newText("payment_credential"), credentialToMetadatum(destination.address.payment_credential)); + const stakeCredential = destination.address.stake_credential; + if (stakeCredential && "Inline" in stakeCredential) { + const inlineMap = new Core.MetadatumMap(); + inlineMap.insert(Core.Metadatum.newText("Inline"), credentialToMetadatum(stakeCredential.Inline[0])); + addressMap.insert(Core.Metadatum.newText("stake_credential"), Core.Metadatum.newMap(inlineMap)); + } + return Core.Metadatum.newMap(addressMap); +} + +/** Label 55534472: unstake destination + unlock_time on every unstake order. */ +export const UNSTAKE_METADATA_LABEL = 55534472n; + +/** Build the metadatum for label 55534472 from a destination and unlock slot. */ +export function buildUnstakeMetadatum(destination, unlockSlot) { + const unstakeMetaMap = new Core.MetadatumMap(); + unstakeMetaMap.insert(Core.Metadatum.newText("unlock_time"), Core.Metadatum.newInteger(unlockSlot)); + unstakeMetaMap.insert(Core.Metadatum.newText("destination"), destinationToUnstakeMetadatum(destination)); + return Core.Metadatum.newMap(unstakeMetaMap); +} + +/** Label 55534473: SDK builder origin + version on every order transaction. */ +export const ORDER_ORIGIN_METADATA_LABEL = 55534473n; + +/** Build the metadatum for label 55534473 from a source + version pair. */ +export function buildOrderOriginMetadatum(source, sdkVersion) { + const map = new Core.MetadatumMap(); + map.insert(Core.Metadatum.newText("source"), Core.Metadatum.newText(source)); + map.insert(Core.Metadatum.newText("version"), Core.Metadatum.newText(sdkVersion)); + return Core.Metadatum.newMap(map); +} + +/** Build a Metadata object containing only the origin label (55534473). */ +export function buildOrderOriginMetadata(source, sdkVersion) { + const metadataMap = new Map(); + metadataMap.set(ORDER_ORIGIN_METADATA_LABEL, buildOrderOriginMetadatum(source, sdkVersion)); + return new Core.Metadata(metadataMap); +} +export function buildUnstakeOrderMetadata(destination, unlockSlot, source, sdkVersion) { + const metadataMap = new Map(); + metadataMap.set(UNSTAKE_METADATA_LABEL, buildUnstakeMetadatum(destination, unlockSlot)); + metadataMap.set(ORDER_ORIGIN_METADATA_LABEL, buildOrderOriginMetadatum(source, sdkVersion)); + return new Core.Metadata(metadataMap); +} + +/** + * Build a destination that routes funds to a treasury multisig timelock native + * script while preserving the original stake credential. + */ +export function buildMultisigTimelockDestination(destination, owner, unlockSlot) { + const nativeScript = buildMultisigTimelockNativeScript(owner, unlockSlot); + return { + address: { + payment_credential: { + Script: [nativeScript.hash()] + }, + stake_credential: destination.address.stake_credential + }, + datum: "NoDatum" + }; +} +//# sourceMappingURL=timelock.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/timelock.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/timelock.js.map new file mode 100644 index 0000000000..a49596e961 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/timelock.js.map @@ -0,0 +1 @@ +{"version":3,"file":"timelock.js","names":["addressFromCredentials","Core","bigintToSlot","value","label","BigInt","Number","MAX_SAFE_INTEGER","Error","Slot","bigintToNativeScriptCount","timelockStartNativeScript","unlockSlot","NativeScript","newTimelockStart","TimelockStart","multisigScriptToNativeScript","multisig","hash","Ed25519KeyHashHex","Signature","key_hash","newScriptPubkey","ScriptPubkey","newScriptAll","ScriptAll","AllOf","scripts","map","newScriptAny","ScriptAny","AnyOf","newScriptNOfK","ScriptNOfK","AtLeast","required","newTimelockExpiry","TimelockExpiry","Before","time","After","buildTimelockNativeScript","userKeyHash","unlockTime","pubkeyScript","afterScript","buildMultisigTimelockNativeScript","owner","resolveTimelockNativeScript","lockingAddress","ownerKeyHash","paymentPart","getProps","type","CredentialType","ScriptHash","toBech32","candidates","match","find","candidate","buildTimelockAddress","networkId","stakeCredential","nativeScript","Credential","fromCore","buildTimelockDestination","userDestination","paymentCred","address","payment_credential","VerificationKey","scriptHash","Script","stake_credential","datum","credentialToMetadatum","cred","MetadatumMap","insert","Metadatum","newText","newMap","destinationToUnstakeMetadatum","destination","addressMap","inlineMap","Inline","UNSTAKE_METADATA_LABEL","buildUnstakeMetadatum","unstakeMetaMap","newInteger","ORDER_ORIGIN_METADATA_LABEL","buildOrderOriginMetadatum","source","sdkVersion","buildOrderOriginMetadata","metadataMap","Map","set","Metadata","buildUnstakeOrderMetadata","buildMultisigTimelockDestination"],"sources":["../../../../src/sdk/shared/timelock.ts"],"sourcesContent":["import { addressFromCredentials } from \"@blaze-cardano/core\";\nimport { Core } from \"@blaze-cardano/sdk\";\nimport type { TClientSource } from \"./client-id.js\";\nimport type { TMultisigScript } from \"./types.js\";\n\ntype TDestinationCredentialLike =\n | { VerificationKey: [string] }\n | { Script: [string] };\n\ntype TTimelockDestinationLike = {\n address: {\n payment_credential: TDestinationCredentialLike;\n stake_credential?:\n | { Inline: [TDestinationCredentialLike] }\n | { Pointer: unknown };\n };\n};\n\nfunction bigintToSlot(value: bigint, label: string): Core.Slot {\n if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) {\n throw new Error(`${label} must be a non-negative safe integer`);\n }\n return Core.Slot(Number(value));\n}\n\nfunction bigintToNativeScriptCount(value: bigint, label: string): number {\n if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) {\n throw new Error(`${label} must be a non-negative safe integer`);\n }\n return Number(value);\n}\n\nfunction timelockStartNativeScript(unlockSlot: bigint): Core.NativeScript {\n return Core.NativeScript.newTimelockStart(\n new Core.TimelockStart(bigintToSlot(unlockSlot, \"unlockSlot\")),\n );\n}\n\n/**\n * Convert the protocol MultisigScript shape to a Cardano native script.\n *\n * The protocol's `Script` variant references an arbitrary script hash, which\n * native scripts cannot require directly, so this helper rejects it.\n */\nexport function multisigScriptToNativeScript(\n multisig: TMultisigScript,\n): Core.NativeScript {\n if (\"Signature\" in multisig) {\n const hash = Core.Ed25519KeyHashHex(multisig.Signature.key_hash);\n return Core.NativeScript.newScriptPubkey(new Core.ScriptPubkey(hash));\n }\n if (\"AllOf\" in multisig) {\n return Core.NativeScript.newScriptAll(\n new Core.ScriptAll(\n multisig.AllOf.scripts.map(multisigScriptToNativeScript),\n ),\n );\n }\n if (\"AnyOf\" in multisig) {\n return Core.NativeScript.newScriptAny(\n new Core.ScriptAny(\n multisig.AnyOf.scripts.map(multisigScriptToNativeScript),\n ),\n );\n }\n if (\"AtLeast\" in multisig) {\n return Core.NativeScript.newScriptNOfK(\n new Core.ScriptNOfK(\n multisig.AtLeast.scripts.map(multisigScriptToNativeScript),\n bigintToNativeScriptCount(\n multisig.AtLeast.required,\n \"AtLeast.required\",\n ),\n ),\n );\n }\n if (\"Before\" in multisig) {\n return Core.NativeScript.newTimelockExpiry(\n new Core.TimelockExpiry(\n bigintToSlot(multisig.Before.time, \"Before.time\"),\n ),\n );\n }\n if (\"After\" in multisig) {\n return timelockStartNativeScript(multisig.After.time);\n }\n if (\"Script\" in multisig) {\n throw new Error(\n \"MultisigScript Script variant cannot be converted to a native script\",\n );\n }\n\n throw new Error(\"Unrecognized MultisigScript variant\");\n}\n\n/**\n * Build the native script used for timelock destinations after unstaking.\n *\n * The script enforces: AllOf { Signature(userKeyHash), After(unlockTime) }\n * meaning the user can only spend the locked USDr after the unlock time.\n *\n * Use this to reconstruct the script when spending from a timelock address.\n */\nexport function buildTimelockNativeScript(\n userKeyHash: string,\n unlockTime: bigint,\n): Core.NativeScript {\n const pubkeyScript = Core.NativeScript.newScriptPubkey(\n new Core.ScriptPubkey(Core.Ed25519KeyHashHex(userKeyHash)),\n );\n const afterScript = timelockStartNativeScript(unlockTime);\n return Core.NativeScript.newScriptAll(\n new Core.ScriptAll([pubkeyScript, afterScript]),\n );\n}\n\n/**\n * Build the native script used for treasury-managed unstake destinations.\n *\n * The script enforces: AllOf { After(unlockSlot), ownerMultisigScript }.\n */\nexport function buildMultisigTimelockNativeScript(\n owner: TMultisigScript,\n unlockSlot: bigint,\n): Core.NativeScript {\n return Core.NativeScript.newScriptAll(\n new Core.ScriptAll([\n timelockStartNativeScript(unlockSlot),\n multisigScriptToNativeScript(owner),\n ]),\n );\n}\n\n/**\n * Pick the timelock native script that a UTxO is actually locked at.\n *\n * One owner key and one unlock slot yield two different scripts depending on\n * which flow created the timelock: the retail unstake path builds\n * `AllOf { Signature, After }` and the treasury/multisig path\n * `AllOf { After, Signature }`. Same requirements, different element order,\n * different hash. The locking address names the script, so it is the authority\n * on which one to provide — guessing produces a witness the ledger cannot\n * resolve (Sentry DAPP-58).\n *\n * Timelocks requiring keys beyond `ownerKeyHash` match neither candidate and\n * are rejected here, where the reason can be stated, rather than deep inside\n * transaction building.\n */\nexport function resolveTimelockNativeScript(\n lockingAddress: Core.Address,\n ownerKeyHash: string,\n unlockSlot: bigint,\n): Core.NativeScript {\n const paymentPart = lockingAddress.getProps().paymentPart;\n if (!paymentPart || paymentPart.type !== Core.CredentialType.ScriptHash) {\n throw new Error(\n `${lockingAddress.toBech32()} is not a script address, so it is not a timelock this wallet can claim`,\n );\n }\n\n const candidates = [\n buildTimelockNativeScript(ownerKeyHash, unlockSlot),\n buildMultisigTimelockNativeScript(\n { Signature: { key_hash: ownerKeyHash } },\n unlockSlot,\n ),\n ];\n const match = candidates.find(\n (candidate) => candidate.hash() === paymentPart.hash,\n );\n if (!match) {\n throw new Error(\n `Script hash ${paymentPart.hash} is not a timelock this wallet can claim: ` +\n `neither timelock shape for owner ${ownerKeyHash} at unlock slot ${unlockSlot} produces it. ` +\n `A timelock requiring further keys must be claimed through the flow that created it.`,\n );\n }\n return match;\n}\n\n/**\n * Reconstruct the timelock address for a given user key hash, optional stake\n * credential, and unlock slot. Useful for querying the live UTxO set to\n * determine whether a claim has already been made.\n */\nexport function buildTimelockAddress(\n networkId: Core.NetworkId,\n userKeyHash: string,\n unlockSlot: bigint,\n stakeCredential?: Core.Credential,\n): Core.Address {\n const nativeScript = buildTimelockNativeScript(userKeyHash, unlockSlot);\n return addressFromCredentials(\n networkId,\n Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash: nativeScript.hash(),\n }),\n stakeCredential,\n );\n}\n\n/**\n * Build a destination that routes funds to a timelock native script while\n * preserving the original stake credential.\n */\nexport function buildTimelockDestination(\n userDestination: T,\n unlockTime: bigint,\n): {\n address: {\n payment_credential: { Script: [string] };\n stake_credential: T[\"address\"][\"stake_credential\"];\n };\n datum: \"NoDatum\";\n} {\n const paymentCred = userDestination.address.payment_credential;\n let userKeyHash: string;\n\n if (\"VerificationKey\" in paymentCred) {\n userKeyHash = paymentCred.VerificationKey[0];\n } else {\n throw new Error(\n \"Unstake destination must use a verification key payment credential\",\n );\n }\n\n const nativeScript = buildTimelockNativeScript(userKeyHash, unlockTime);\n const scriptHash = nativeScript.hash();\n\n return {\n address: {\n payment_credential: { Script: [scriptHash] },\n stake_credential: userDestination.address.stake_credential,\n },\n datum: \"NoDatum\",\n };\n}\n\nfunction credentialToMetadatum(\n cred: TDestinationCredentialLike,\n): Core.Metadatum {\n const map = new Core.MetadatumMap();\n if (\"VerificationKey\" in cred) {\n map.insert(\n Core.Metadatum.newText(\"VerificationKey\"),\n Core.Metadatum.newText(cred.VerificationKey[0]),\n );\n } else {\n map.insert(\n Core.Metadatum.newText(\"Script\"),\n Core.Metadatum.newText(cred.Script[0]),\n );\n }\n return Core.Metadatum.newMap(map);\n}\n\nexport function destinationToUnstakeMetadatum(\n destination: TTimelockDestinationLike,\n): Core.Metadatum {\n const addressMap = new Core.MetadatumMap();\n addressMap.insert(\n Core.Metadatum.newText(\"payment_credential\"),\n credentialToMetadatum(destination.address.payment_credential),\n );\n\n const stakeCredential = destination.address.stake_credential;\n if (stakeCredential && \"Inline\" in stakeCredential) {\n const inlineMap = new Core.MetadatumMap();\n inlineMap.insert(\n Core.Metadatum.newText(\"Inline\"),\n credentialToMetadatum(stakeCredential.Inline[0]),\n );\n addressMap.insert(\n Core.Metadatum.newText(\"stake_credential\"),\n Core.Metadatum.newMap(inlineMap),\n );\n }\n\n return Core.Metadatum.newMap(addressMap);\n}\n\n/** Label 55534472: unstake destination + unlock_time on every unstake order. */\nexport const UNSTAKE_METADATA_LABEL = 55534472n;\n\n/** Build the metadatum for label 55534472 from a destination and unlock slot. */\nexport function buildUnstakeMetadatum(\n destination: TTimelockDestinationLike,\n unlockSlot: bigint,\n): Core.Metadatum {\n const unstakeMetaMap = new Core.MetadatumMap();\n unstakeMetaMap.insert(\n Core.Metadatum.newText(\"unlock_time\"),\n Core.Metadatum.newInteger(unlockSlot),\n );\n unstakeMetaMap.insert(\n Core.Metadatum.newText(\"destination\"),\n destinationToUnstakeMetadatum(destination),\n );\n return Core.Metadatum.newMap(unstakeMetaMap);\n}\n\n/** Label 55534473: SDK builder origin + version on every order transaction. */\nexport const ORDER_ORIGIN_METADATA_LABEL = 55534473n;\n\n/** Build the metadatum for label 55534473 from a source + version pair. */\nexport function buildOrderOriginMetadatum(\n source: TClientSource,\n sdkVersion: string,\n): Core.Metadatum {\n const map = new Core.MetadatumMap();\n map.insert(Core.Metadatum.newText(\"source\"), Core.Metadatum.newText(source));\n map.insert(\n Core.Metadatum.newText(\"version\"),\n Core.Metadatum.newText(sdkVersion),\n );\n return Core.Metadatum.newMap(map);\n}\n\n/** Build a Metadata object containing only the origin label (55534473). */\nexport function buildOrderOriginMetadata(\n source: TClientSource,\n sdkVersion: string,\n): Core.Metadata {\n const metadataMap = new Map();\n metadataMap.set(\n ORDER_ORIGIN_METADATA_LABEL,\n buildOrderOriginMetadatum(source, sdkVersion),\n );\n return new Core.Metadata(metadataMap);\n}\n\nexport function buildUnstakeOrderMetadata(\n destination: TTimelockDestinationLike,\n unlockSlot: bigint,\n source: TClientSource,\n sdkVersion: string,\n): Core.Metadata {\n const metadataMap = new Map();\n metadataMap.set(\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(destination, unlockSlot),\n );\n metadataMap.set(\n ORDER_ORIGIN_METADATA_LABEL,\n buildOrderOriginMetadatum(source, sdkVersion),\n );\n return new Core.Metadata(metadataMap);\n}\n\n/**\n * Build a destination that routes funds to a treasury multisig timelock native\n * script while preserving the original stake credential.\n */\nexport function buildMultisigTimelockDestination<\n T extends TTimelockDestinationLike,\n>(\n destination: T,\n owner: TMultisigScript,\n unlockSlot: bigint,\n): {\n address: {\n payment_credential: { Script: [string] };\n stake_credential: T[\"address\"][\"stake_credential\"];\n };\n datum: \"NoDatum\";\n} {\n const nativeScript = buildMultisigTimelockNativeScript(owner, unlockSlot);\n return {\n address: {\n payment_credential: { Script: [nativeScript.hash()] },\n stake_credential: destination.address.stake_credential,\n },\n datum: \"NoDatum\",\n };\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/types.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/types.js new file mode 100644 index 0000000000..718fd38ae4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/types.js @@ -0,0 +1,2 @@ +export {}; +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/types.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/types.js.map new file mode 100644 index 0000000000..ae66ec4809 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","names":[],"sources":["../../../../src/sdk/shared/types.ts"],"sourcesContent":["import type { Core } from \"@blaze-cardano/sdk\";\n\n/**\n * Protocol version identifier\n */\nexport type TProtocolVersion =\n | \"V0\"\n | \"V0_1\"\n | \"V0_2\"\n | \"V0_3\"\n | \"V0_4\"\n | \"V1_0\"\n | \"V1_0_Rc1\"\n | \"V1_1_Rc1\";\n\n/**\n * Bootstrap parameters for initializing the SDK\n */\nexport interface IProxyBootstrap {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n}\n\n/**\n * Base parameters common to all SDK versions\n */\nexport interface IBaseSDKParams {\n version: TProtocolVersion;\n proxyBootstrap: IProxyBootstrap;\n assetNameHex: string;\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When set,\n * deployment locks reference UTxOs at this address and resolution queries it\n * first (a small, fast UTxO set). When omitted, Blaze's burn address is used.\n */\n scriptDeploymentAddress?: Core.Address;\n}\n\n/**\n * Reference inputs that can be cached for performance\n */\nexport interface ICachedReferenceInputs {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n stakingVaultRefInput?: Core.TransactionUnspentOutput;\n // V1.0 additional protocol scripts\n protocolMintRefInput?: Core.TransactionUnspentOutput;\n protocolStakeRefInput?: Core.TransactionUnspentOutput;\n protocolManagementRefInput?: Core.TransactionUnspentOutput;\n}\n\n/**\n * Result type for raw proxy-datum fetches.\n */\nexport interface IRawProxyDatumResult {\n proxyUtxo: Core.TransactionUnspentOutput;\n proxyDatum: Core.PlutusData;\n}\n\n/**\n * Result type for parsed proxy-datum fetches.\n */\nexport interface IProxyDatumResult extends IRawProxyDatumResult {\n parsedProxyDatum: T;\n}\n\n/**\n * Result type for getTreasuryDatum operations\n */\nexport interface ITreasuryDatumResult {\n treasuryUtxo: Core.TransactionUnspentOutput;\n treasuryDatum: Core.PlutusData;\n parsedTreasuryDatum: T;\n}\n\n/**\n * Result type for getVaultDatum operations\n */\nexport interface IVaultDatumResult {\n vaultUtxo: Core.TransactionUnspentOutput;\n vaultDatum: Core.PlutusData;\n parsedVaultDatum: T;\n}\n\n/**\n * Output reference type used in scripts\n */\nexport interface IOutputReference {\n transaction_id: Core.TransactionId;\n output_index: bigint;\n}\n\n/**\n * Version-agnostic MultisigScript. Structurally identical across all\n * protocol versions (same Plutus CBOR encoding).\n */\nexport type TMultisigScript =\n | { Signature: { key_hash: string } }\n | { AllOf: { scripts: TMultisigScript[] } }\n | { AnyOf: { scripts: TMultisigScript[] } }\n | { AtLeast: { required: bigint; scripts: TMultisigScript[] } }\n | { Before: { time: bigint } }\n | { After: { time: bigint } }\n | { Script: { script_hash: string } };\n\n/**\n * Version-agnostic reserve asset.\n */\nexport interface IReserveAsset {\n asset: [string, string];\n numerator: bigint;\n denominator: bigint;\n}\n\n/**\n * Version-agnostic proxy settings — common fields only.\n * Hides version-specific fields (direct_mint/burn_permission, registry shape).\n */\nexport interface IProxySettings {\n mint_permission: TMultisigScript;\n burn_permission: TMultisigScript;\n withdraw_permission: TMultisigScript;\n deposit_permission: TMultisigScript;\n stake_permission: TMultisigScript;\n unstake_permission: TMultisigScript;\n reserve_assets: IReserveAsset[];\n}\n\n/**\n * Permission key — for safely indexing into IProxySettings.\n */\nexport type TPermissionKey =\n | \"mint_permission\"\n | \"burn_permission\"\n | \"withdraw_permission\"\n | \"deposit_permission\"\n | \"stake_permission\"\n | \"unstake_permission\";\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/utils.js b/modules/realfi-partner-sdk/dist/esm/sdk/shared/utils.js new file mode 100644 index 0000000000..48882710ca --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/utils.js @@ -0,0 +1,1022 @@ +import { addressFromCredentials } from "@blaze-cardano/core"; +import { parse } from "@blaze-cardano/data"; +import { Core } from "@blaze-cardano/sdk"; +import * as Data from "@blaze-cardano/data"; +import { ScriptAlreadyDeployedError } from "./errors.js"; +import { V0_3Types } from "../../generated-types/index.js"; +/** + * Create a reward account from a script + */ +export function rewardAccountFromScript(script, network) { + const credential = credentialFromScript(script); + return Core.RewardAccount.fromCredential(credential.toCore(), network); +} + +/** + * Create a credential from a script + */ +export function credentialFromScript(script) { + return credentialFromScriptHash(script.hash()); +} + +/** + * Create a credential from a script hash + */ +export function credentialFromScriptHash(scriptHash) { + return Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash: scriptHash + }); +} + +/** + * Send a value (with an attached datum) to either a key-credentialled or + * script-credentialled address. This helper emits an explicit output for + * the destination address so callers (mintOneShot / updateOneShotDatum / + * etc.) work transparently in both single-signer and multisig deployments. + * + * Mutates `tx` (matching Blaze's builder pattern) and returns it for chaining. + */ +export function lockOrPayAssets(tx, address, value, datum) { + return addDirectOutput(tx, address, value, datum); +} + +/** + * Add an explicit transaction output for the target address and value. + * + * Mutates `tx` and returns it for call sites that want to keep builder-style + * chaining. + */ +export function addDirectOutput(tx, address, value, datum) { + const output = new Core.TransactionOutput(address, value); + if (datum) { + output.setDatum(Core.Datum.newInlineData(datum)); + } + tx.addOutput(output); + return tx; +} + +/** + * Blockfrost responds to `getUnspentOutputs` on an unused address with HTTP + * 404 ("requested component has not been found"), which the provider surfaces + * as a generic Error. Treat only that exact failure as "not found at this + * address" so outages and malformed responses still propagate. + * + * The query path is matched with an optional leading slash: @blaze-cardano/query + * builds `/addresses/...`, while a caller paging the same endpoint itself builds + * `addresses/...` (Blockfrost's base url already ends in `/`). The cron carries + * a matcher for the same message + * (`cli/src/scripts/lib/order-utxo-fetch.ts`); keep the two in step. + */ +const BLOCKFROST_ADDRESS_NOT_FOUND = /^getUnspentOutputs: Blockfrost threw "The requested component has not been found\." for query: \/?addresses\//; +function isBlockfrostAddressNotFoundError(error) { + return error instanceof Error && BLOCKFROST_ADDRESS_NOT_FOUND.test(error.message); +} + +/** + * Fully resolve the address's current unspent outputs. + * + * Blockfrost can expose a reference script through the transaction-output + * endpoint before (or without) hydrating `reference_script_hash` on the address + * UTxO endpoint. Re-resolving the inputs returned by the address query + * preserves the unspent-only constraint while recovering the full output + * metadata from the exact transactions. + */ +async function hydrateUnspentOutputs(blaze, address) { + const unspent = await blaze.provider.getUnspentOutputs(address); + if (unspent.length === 0) return []; + return blaze.provider.resolveUnspentOutputs(unspent.map(utxo => utxo.input())); +} + +/** + * A `hydrateUnspentOutputs` call shared by every hash resolved against the same + * address in one pass. Hydration costs one provider request per UTxO at the + * address, so a caller resolving eight script hashes against a provider that + * omits script metadata would otherwise pay the whole sweep eight times, and + * the dapp runs this against a rate-limited Blockfrost proxy. Scoped to a + * single call rather than cached on the SDK so a later pass still sees a script + * deployed in the meantime. + */ + +function shareHydration(blaze, address) { + let pending; + return () => pending ??= hydrateUnspentOutputs(blaze, address); +} + +/** + * Resolve a script reference at a specific address, tolerating Blockfrost's + * throw for an address with no history instead of an empty result, and its + * missing script metadata on the address UTxO endpoint. + */ +async function resolveScriptRefAtAddress(blaze, hash, address, hydrate = () => hydrateUnspentOutputs(blaze, address)) { + try { + const resolved = await blaze.provider.resolveScriptRef(hash, address); + if (resolved) return resolved; + } catch (error) { + if (!isBlockfrostAddressNotFoundError(error)) throw error; + return undefined; + } + const hydrated = await hydrate(); + return hydrated.find(utxo => utxo.output().scriptRef()?.hash() === hash); +} + +/** + * Deploy a script as a reference script. + * + * When `address` is provided, the reference UTxO is locked at that address + * (instead of Blaze's default burn address), which lets resolution query a + * small, dedicated UTxO set rather than the shared burn address. + * + * Throws `ScriptAlreadyDeployedError` (carrying the existing reference + * UTxO) if the script is already deployed *at the target location* — the + * specified `address` when given, otherwise the burn-address default. The + * guard is intentionally scoped to the deploy target only: a copy that + * exists elsewhere (e.g. a legacy copy at the burn address) does NOT block + * deploying to a newly specified address, which is exactly what a migration + * needs. Callers that want idempotent reruns should catch that specific class. + */ +export async function deployScript(blaze, script, address) { + const refInput = address ? await resolveScriptRefAtAddress(blaze, script.hash(), address) : await blaze.provider.resolveScriptRef(script.hash()); + if (refInput) { + throw new ScriptAlreadyDeployedError(script.hash(), refInput); + } + // `address === undefined` -> Blaze locks the script at the burn address. + const deployTx = blaze.newTransaction().deployScript(script, address); + return deployTx; +} +const NFT_LOOKUP_ATTEMPTS = 3; +const NFT_LOOKUP_BACKOFF_MS = 250; +const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); + +/** + * Look up an NFT UTxO, retrying indexer lag after the output moves. + * Treats both a thrown 404 and an empty result as lag. Re-throws the last + * provider error when the budget is exhausted. + */ +export async function getUnspentOutputByNftWithRetry(provider, assetId) { + let lastError; + for (let attempt = 1; attempt <= NFT_LOOKUP_ATTEMPTS; attempt++) { + try { + const utxo = await provider.getUnspentOutputByNFT(assetId); + if (utxo) return utxo; + lastError = undefined; + } catch (error) { + lastError = error; + } + if (attempt < NFT_LOOKUP_ATTEMPTS) { + await sleep(NFT_LOOKUP_BACKOFF_MS * attempt); + } + } + if (lastError) throw lastError; + return undefined; +} + +/** + * Rebuild `utxo` with `datum` attached inline, preserving its input ref, + * address, value and reference script. + */ +function withInlineDatum(utxo, datum) { + const output = utxo.output(); + const promoted = new Core.TransactionOutput(output.address(), output.amount()); + promoted.setDatum(Core.Datum.newInlineData(datum)); + const scriptRef = output.scriptRef(); + if (scriptRef) { + promoted.setScriptRef(scriptRef); + } + return new Core.TransactionUnspentOutput(utxo.input(), promoted); +} + +/** + * Read an NFT singleton (proxy, treasury, vault) and its datum. + * + * Protocol singletons are locked inline. A hash-form read is a provider + * artifact (Blockfrost omitting `inline_datum`). Validators require + * `InlineDatum` on the singleton input; passing the preimage as `addInput`'s + * 3rd arg is a supplemental witness datum that local eval and phase-1 reject. + * Resolve the hash, verify the preimage, and reattach it inline. + * + * The lookup is retried: a singleton always exists, so a not-found answer is + * the provider's index lagging the UTxO's latest move, not a missing singleton. + */ +export async function readSingletonDatum(provider, nftAssetId) { + const read = await getUnspentOutputByNftWithRetry(provider, nftAssetId); + if (!read) { + throw new Error(`No UTXO found with NFT: ${nftAssetId}`); + } + const inline = read.output().datum()?.asInlineData(); + if (inline) { + return { + utxo: read, + datum: inline + }; + } + const datumHash = read.output().datum()?.asDataHash(); + if (!datumHash) { + throw new Error(`No datum found in UTXO with NFT: ${nftAssetId}`); + } + const resolved = await provider.resolveDatum(datumHash); + const preimageHash = Core.blake2b_256(resolved.toCbor()); + if (preimageHash !== datumHash) { + throw new Error(`Datum resolved for UTXO with NFT ${nftAssetId} does not match its datum hash: ` + `resolved preimage hashes to ${preimageHash}, UTXO reports ${datumHash}`); + } + const input = read.input(); + console.warn(`[realfi-sdk] singleton ${nftAssetId} read at ${input.transactionId()}#${input.index()} ` + `reported datum hash ${datumHash} instead of its inline datum; reattaching the resolved preimage inline`); + return { + utxo: withInlineDatum(read, resolved), + datum: resolved + }; +} + +/** + * Get datum from a UTxO containing a specific NFT, optionally parsed under + * `datumSchema`. Datum-hash reads are repaired by {@link readSingletonDatum}. + */ +export async function getDatumFromNFT(blaze, nftAssetId, datumSchema) { + const { + utxo, + datum + } = await readSingletonDatum(blaze.provider, nftAssetId); + if (datumSchema) { + const parsedDatum = parse(datumSchema, datum); + return { + utxo, + datum, + parsedDatum + }; + } + return { + utxo, + datum, + parsedDatum: undefined + }; +} + +/** + * Get script reference inputs, using cached values when available. + * + * When `address` is provided, each script is resolved at that address first + * (a fast, dedicated query) and only falls back to Blaze's burn-address + * default if it isn't found there. This keeps previously burn-address-deployed + * scripts resolvable while migrating to a specified deployment address. + */ +export async function getReferenceInputs(blaze, scriptHashes, cachedInputs, address) { + const referenceInputs = {}; + const hydrate = address ? shareHydration(blaze, address) : undefined; + for (const [name, hash] of Object.entries(scriptHashes)) { + if (cachedInputs?.[name]) { + referenceInputs[name] = cachedInputs[name]; + continue; + } + const refInput = address && (await resolveScriptRefAtAddress(blaze, hash, address, hydrate)) || (await blaze.provider.resolveScriptRef(hash)); + if (!refInput) { + throw new Error(`No reference input found for ${name} script (${hash}). Make sure it is deployed.`); + } + referenceInputs[name] = refInput; + } + return referenceInputs; +} + +/** + * Extract signature key hashes from a multisig script + */ +export const getSignatureKeyHashesFromMultisigScript = multisig => { + const result = []; + if ("Signature" in multisig) { + result.push(multisig.Signature.key_hash); + } else if ("AtLeast" in multisig) { + multisig.AtLeast.scripts.map(s => getSignatureKeyHashesFromMultisigScript(s)).flat().forEach(s => { + result.push(s); + }); + } else if ("AllOf" in multisig) { + multisig.AllOf.scripts.map(s => getSignatureKeyHashesFromMultisigScript(s)).flat().forEach(s => { + result.push(s); + }); + } else if ("AnyOf" in multisig) { + multisig.AnyOf.scripts.map(s => getSignatureKeyHashesFromMultisigScript(s)).flat().forEach(s => { + result.push(s); + }); + } + return [...new Set(result).values()]; +}; + +/** + * Extract script key hashes from a multisig script + */ +export const getScriptKeyHashesFromMultisigScript = multisig => { + const result = []; + if ("Script" in multisig) { + result.push(multisig.Script.script_hash); + } else if ("AtLeast" in multisig) { + multisig.AtLeast.scripts.map(s => getScriptKeyHashesFromMultisigScript(s)).flat().forEach(s => { + result.push(s); + }); + } else if ("AllOf" in multisig) { + multisig.AllOf.scripts.map(s => getScriptKeyHashesFromMultisigScript(s)).flat().forEach(s => { + result.push(s); + }); + } else if ("AnyOf" in multisig) { + multisig.AnyOf.scripts.map(s => getScriptKeyHashesFromMultisigScript(s)).flat().forEach(s => { + result.push(s); + }); + } + return [...new Set(result).values()]; +}; + +/** + * Extract all key hashes (signature + script) from a multisig script + */ +export const getAllKeyHashesFromMultisigScript = multisig => { + const keyHashes = getSignatureKeyHashesFromMultisigScript(multisig); + const scriptHashes = getScriptKeyHashesFromMultisigScript(multisig); + return [...new Set([...keyHashes, ...scriptHashes]).values()]; +}; + +// ───────────────────────────────────────────────────────────────────────────── +// Order Input Helpers +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Sort order inputs by txHash and outputIndex for deterministic ordering. + * This ensures consistent payload generation across all signers. + */ +export const sortOrderInputs = orderInputs => { + return [...orderInputs].sort((a, b) => { + const txHashA = a.transactionId().toString(); + const txHashB = b.transactionId().toString(); + if (txHashA < txHashB) return -1; + if (txHashA > txHashB) return 1; + const indexA = a.index(); + const indexB = b.index(); + return indexA < indexB ? -1 : indexA > indexB ? 1 : 0; + }); +}; + +/** + * Build a nonce from the first order UTxO. + */ +export const buildNonceFromUtxo = utxo => ({ + UTxO: [{ + transaction_id: utxo.transactionId().toString(), + output_index: utxo.index() + }] +}); + +/** + * Build the origin ByteArray (CBOR-serialized OutputReference) from a UTxO. + * Used by v0_4 SDK and shared helpers. + */ +export const buildOriginFromUtxo = utxo => { + const input = utxo.input(); + const txId = input.transactionId().toString(); + const outputIndex = input.index(); + const fieldsList = new Core.PlutusList(); + fieldsList.add(Core.PlutusData.newBytes(Buffer.from(txId, "hex"))); + fieldsList.add(Core.PlutusData.newInteger(outputIndex)); + const outputRefData = Core.PlutusData.newConstrPlutusData(new Core.ConstrPlutusData(0n, fieldsList)); + return outputRefData.toCbor(); +}; + +/** + * KeySignature type matching the contract's KeySignature tuple. + * A tuple of [VerificationKey, COSESign1] where: + * - VerificationKey: 32-byte Ed25519 public key (hex string) + * - COSESign1: COSE signature with headers (raw CBOR bytes) and detached payload + */ + +export const destructureCip30Signature = async cip30Signature => { + // Read the COSE_Sign1 with CBOR primitives from the dependency tree. + // Async for callers that await it. + const { + protected: protectedCbor, + signature + } = readCoseSign1Parts(cip30Signature.signature.toString()); + // Extract public key from COSE_Key (at label -2) + const publicKey = extractPublicKeyFromCoseKey(cip30Signature.key.toString()); + return { + publicKey, + coseSign1: { + headers: { + protected: protectedCbor, + unprotected: "" // Empty ByteArray + }, + signature + } + }; +}; + +/** + * Produce a COSE (CIP-8) signature tuple over `payloadHash` using the connected + * wallet's key. The reusable building block for signer callbacks — e.g. the + * settings-governance `signAuthPayload` or an orchestrator signed redeemer — + * that wraps `signData` + `destructureCip30Signature` into the on-chain tuple. + */ +export const signPayloadHashWithWallet = async (blaze, payloadHash) => { + const address = await blaze.wallet.getChangeAddress(); + const cip30Signature = await blaze.wallet.signData(address, payloadHash); + const { + publicKey, + coseSign1 + } = await destructureCip30Signature(cip30Signature); + return [publicKey, coseSign1]; +}; + +/** + * Create a SignedRedeemer_ExtraProtocolRedeemer structure for on-chain verification. + * + * @param extra - The extra protocol redeemer data (e.g., request_to_outputs mapping) + * @param payload - The SignedPayload_ProtocolRedeemer CBOR hex string (action + nonce) + * @param signatures - Array of KeySignature tuples from each signer + * @returns A SignedRedeemer_ExtraProtocolRedeemer ready for use in transaction + */ +export const createSignedRedeemer = (extra, payload, signatures) => { + if (signatures.length === 0) { + throw new Error("At least one signature is required"); + } + return { + extra, + payload, + signatures: signatures + }; +}; + +// ───────────────────────────────────────────────────────────────────────────── +// CBOR Helpers +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Extract the 32-byte Ed25519 public key from a COSE_Key structure. + * COSE_Key for Ed25519 has the key at label -2. + * The COSE_Key CBOR structure looks like: a4 01 01 03 27 20 06 21 5820 <32 bytes> + * Where 21 5820 indicates label -2 followed by a 32-byte bytestring. + */ +const extractPublicKeyFromCoseKey = coseKeyHex => { + // Parse the COSE_Key CBOR manually to find the public key + // The key at label -2 (encoded as 0x21 in CBOR) contains the 32-byte public key + // Look for 0x21 0x58 0x20 which indicates: label -2, bytestring, 32 bytes + const keyBytes = Buffer.from(coseKeyHex, "hex"); + + // Find the pattern: 21 58 20 (label -2, bytes, length 32) + let pubKeyStart = -1; + for (let i = 0; i < keyBytes.length - 34; i++) { + if (keyBytes[i] === 0x21 && keyBytes[i + 1] === 0x58 && keyBytes[i + 2] === 0x20) { + pubKeyStart = i + 3; // Skip the 21 58 20 prefix + break; + } + } + if (pubKeyStart === -1) { + throw new Error("Could not find public key in COSE_Key structure"); + } + const pubKey = keyBytes.slice(pubKeyStart, pubKeyStart + 32); + if (pubKey.length !== 32) { + throw new Error(`Invalid public key length: ${pubKey.length}`); + } + return pubKey.toString("hex"); +}; + +// ───────────────────────────────────────────────────────────────────────────── +// COSE_Sign1 (CIP-8) reader +// ───────────────────────────────────────────────────────────────────────────── + +// CBOR major types used here. +const CBOR_MAJOR_BYTES = 2; +const CBOR_MAJOR_TEXT = 3; +const CBOR_MAJOR_ARRAY = 4; +const CBOR_MAJOR_MAP = 5; +const CBOR_MAJOR_TAG = 6; +const CBOR_MAJOR_SIMPLE = 7; // simple values (false/true/null) and floats + +const CBOR_ADDITIONAL_INDEFINITE = 31; +const CBOR_BREAK = 0xff; // terminates an indefinite-length string/array/map +const CBOR_TAG_COSE_SIGN1 = 18; // COSE_Sign1's registered tag (encodes as d2) +const CBOR_SIMPLE_NULL = 22; // `f6` + +/** + * Read a CBOR header at `offset`, returning the major type, the argument + * (length / value), whether the item is indefinite-length, and the offset of + * the item's content. Supports the definite forms (0-23 inline and the + * 1/2/4/8-byte arguments) plus indefinite-length strings, arrays, and maps. + */ +const readCborHeader = (bytes, offset) => { + const initial = bytes[offset]; + if (initial === undefined) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + const major = initial >> 5; + const additional = initial & 0x1f; + if (additional < 24) { + return { + major, + argument: additional, + indefinite: false, + contentOffset: offset + 1 + }; + } + if (additional === CBOR_ADDITIONAL_INDEFINITE) { + // Only strings, arrays, and maps have an indefinite-length form. A break + // byte (0xff) parses as major 7 here, so a stray break is rejected too. + if (major < CBOR_MAJOR_BYTES || major > CBOR_MAJOR_MAP) { + throw new Error(`Unsupported indefinite-length CBOR major type: ${major}`); + } + return { + major, + argument: 0, + indefinite: true, + contentOffset: offset + 1 + }; + } + + // 24/25/26/27 -> 1/2/4/8 following length bytes. 28-30 are reserved. + if (additional > 27) { + throw new Error(`Unsupported CBOR additional info: ${additional}`); + } + const lengthBytes = 1 << additional - 24; + let argument = 0; + for (let i = 0; i < lengthBytes; i++) { + const b = bytes[offset + 1 + i]; + if (b === undefined) { + throw new Error("COSE_Sign1 CBOR length ended unexpectedly"); + } + argument = argument * 256 + b; + } + return { + major, + argument, + indefinite: false, + contentOffset: offset + 1 + lengthBytes + }; +}; + +/** + * Read the definite-length chunks of an indefinite-length CBOR string whose + * first chunk header is at `offset`, returning the concatenated content and + * the offset just past the closing break byte. + */ +const readIndefiniteStringChunks = (bytes, major, offset) => { + const chunks = []; + let next = offset; + while (bytes[next] !== CBOR_BREAK) { + const chunk = readCborHeader(bytes, next); + if (chunk.major !== major || chunk.indefinite) { + throw new Error("Invalid chunk in an indefinite-length CBOR string"); + } + const end = chunk.contentOffset + chunk.argument; + if (end > bytes.length) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + chunks.push(bytes.slice(chunk.contentOffset, end)); + next = end; + } + return { + content: Buffer.concat(chunks), + nextOffset: next + 1 + }; +}; + +/** + * Skip over one complete CBOR data item starting at `offset`, returning the + * offset immediately after it. Handles the item shapes that occur inside a + * COSE_Sign1 (byte/text strings, integers, arrays, maps, tags — definite or + * indefinite length) recursively. + */ +const skipCborItem = (bytes, offset) => { + const { + major, + argument, + indefinite, + contentOffset + } = readCborHeader(bytes, offset); + if (indefinite) { + if (major === CBOR_MAJOR_BYTES || major === CBOR_MAJOR_TEXT) { + return readIndefiniteStringChunks(bytes, major, contentOffset).nextOffset; + } + // Indefinite array or map: items until the break byte. + let next = contentOffset; + while (bytes[next] !== CBOR_BREAK) { + if (bytes[next] === undefined) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + next = skipCborItem(bytes, next); // array item / map key + if (major === CBOR_MAJOR_MAP) { + next = skipCborItem(bytes, next); // map value + } + } + return next + 1; + } + switch (major) { + case 0: // unsigned int + case 1: // negative int + case CBOR_MAJOR_SIMPLE: + // simple value (false/true/null) or float + // readCborHeader already consumed the value/float bytes into `argument`. + return contentOffset; + case CBOR_MAJOR_BYTES: + case CBOR_MAJOR_TEXT: + { + const end = contentOffset + argument; + if (end > bytes.length) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + return end; + } + case CBOR_MAJOR_ARRAY: + { + let next = contentOffset; + for (let i = 0; i < argument; i++) { + next = skipCborItem(bytes, next); + } + return next; + } + case CBOR_MAJOR_MAP: + { + let next = contentOffset; + for (let i = 0; i < argument; i++) { + next = skipCborItem(bytes, next); // key + next = skipCborItem(bytes, next); // value + } + return next; + } + case CBOR_MAJOR_TAG: + return skipCborItem(bytes, contentOffset); + // tagged content + default: + throw new Error(`Unsupported CBOR major type in COSE_Sign1: ${major}`); + } +}; + +/** + * Read the byte-string content at `offset`, returning its hex and the offset + * after it. + */ +const readCborByteString = (bytes, offset) => { + const { + major, + argument, + indefinite, + contentOffset + } = readCborHeader(bytes, offset); + if (major !== CBOR_MAJOR_BYTES) { + throw new Error(`Expected a CBOR byte string in COSE_Sign1, got major type ${major}`); + } + if (indefinite) { + const { + content, + nextOffset + } = readIndefiniteStringChunks(bytes, major, contentOffset); + return { + hex: Buffer.from(content).toString("hex"), + nextOffset + }; + } + const end = contentOffset + argument; + if (end > bytes.length) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + return { + hex: Buffer.from(bytes.slice(contentOffset, end)).toString("hex"), + nextOffset: end + }; +}; + +/** + * Parse a CIP-8 COSE_Sign1 and extract the pieces the on-chain KeySignature + * tuple needs: the protected header map bytes (byte-string content, wrapper + * removed) and the raw Ed25519 signature bytes. + * + * COSE_Sign1 = [ protected: bstr, unprotected: map, payload: bstr / nil, + * signature: bstr ], optionally wrapped in CBOR tag 18. The protected element + * is itself a byte string whose content is the serialized header map; reading + * the byte-string content yields the raw header-map bytes the tuple stores. + * Indefinite-length encodings of the array, the maps, and the byte strings + * are accepted alongside the definite forms. + */ +export const readCoseSign1Parts = coseSign1Hex => { + const bytes = Buffer.from(coseSign1Hex, "hex"); + let offset = 0; + // Optional CBOR tag: only tag 18 (COSE_Sign1's registered tag, the `d2` + // prefix) is accepted — tagged input is accepted by design, since the + // Ledger signing path emits d2-tagged COSE_Sign1s, but any other tag means + // this isn't a COSE_Sign1 and must be rejected rather than silently unwrapped. + const first = readCborHeader(bytes, offset); + if (first.major === CBOR_MAJOR_TAG) { + if (first.argument !== CBOR_TAG_COSE_SIGN1) { + throw new Error(`COSE_Sign1 has unexpected CBOR tag ${first.argument} (expected 18)`); + } + offset = first.contentOffset; + } + const array = readCborHeader(bytes, offset); + if (array.major !== CBOR_MAJOR_ARRAY) { + throw new Error("COSE_Sign1 is not a CBOR array"); + } + if (!array.indefinite && array.argument !== 4) { + throw new Error("COSE_Sign1 is not a 4-element CBOR array"); + } + + // Element 0: protected header byte string (content = serialized header map). + const protectedRead = readCborByteString(bytes, array.contentOffset); + + // Element 1: unprotected header map — must be a CBOR map (major 5), + // definite or indefinite. Peek the header before skipCborItem consumes it + // so we assert on the same read the skip performs, not a second one. + const unprotectedHeader = readCborHeader(bytes, protectedRead.nextOffset); + if (unprotectedHeader.major !== CBOR_MAJOR_MAP) { + throw new Error(`COSE_Sign1 unprotected header is not a CBOR map (got major type ${unprotectedHeader.major})`); + } + const afterUnprotected = skipCborItem(bytes, protectedRead.nextOffset); + + // Element 2: payload — must be a byte string (major 2) or null (`f6`). + const payloadHeader = readCborHeader(bytes, afterUnprotected); + const isNullPayload = payloadHeader.major === CBOR_MAJOR_SIMPLE && !payloadHeader.indefinite && payloadHeader.argument === CBOR_SIMPLE_NULL; + if (payloadHeader.major !== CBOR_MAJOR_BYTES && !isNullPayload) { + throw new Error(`COSE_Sign1 payload is not a byte string or null (got major type ${payloadHeader.major})`); + } + const afterPayload = skipCborItem(bytes, afterUnprotected); + + // Element 3: signature byte string. + const signatureRead = readCborByteString(bytes, afterPayload); + + // An indefinite-length COSE_Sign1 array must close right after element 3. + if (array.indefinite && bytes[signatureRead.nextOffset] !== CBOR_BREAK) { + throw new Error("COSE_Sign1 is not a 4-element CBOR array"); + } + return { + protected: protectedRead.hex, + signature: signatureRead.hex + }; +}; + +// ───────────────────────────────────────────────────────────────────────────── +// Treasury Operation Payload Helpers (Withdraw/Deposit) +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Build the SignedPayload_ProtocolRedeemer for a withdraw operation. + * Uses the treasury UTxO as the nonce source. + * + * @param requests - Array of withdraw requests with destinations and amounts + * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce) + * @returns SignedPayload_ProtocolRedeemer CBOR hex string + */ +export const getSignedPayloadForWithdraw = (amount, treasuryUtxo) => { + if (amount <= 0n) { + throw new Error("Withdraw amount must be positive"); + } + + // Reuse existing nonce builder + const nonce = buildNonceFromUtxo(treasuryUtxo.input()); + const action = { + Withdraw: { + withdraw_amount: amount + } + }; + const signedPayload = { + action, + nonce + }; + return Data.serialize(V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload).toCbor().toString(); +}; + +/** + * Build the SignedPayload_ProtocolRedeemer for a deposit operation. + * Uses the treasury UTxO as the nonce source. + * + * @param amount - The amount of reserve tokens to deposit + * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce) + * @returns SignedPayload_ProtocolRedeemer CBOR hex string + */ +export const getSignedPayloadForDeposit = (amount, treasuryUtxo) => { + if (amount <= 0n) { + throw new Error("Deposit amount must be positive"); + } + const nonce = buildNonceFromUtxo(treasuryUtxo.input()); + const action = { + Deposit: { + deposit_amount: amount + } + }; + const signedPayload = { + action, + nonce + }; + return Data.serialize(V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload).toCbor().toString(); +}; + +// ───────────────────────────────────────────────────────────────────────────── +// Address Conversion Helpers +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Convert a Cardano address to a Destination type for order transactions. + * Extracts payment and stake credentials from the address. + * + * @param address - The Cardano address to convert + * @param datum - Optional datum for the destination (defaults to "NoDatum") + * @returns A Destination object suitable for order transactions + */ +export function addressToDestination(address, datum = "NoDatum") { + const props = address.getProps(); + const paymentPart = props.paymentPart; + if (!paymentPart) { + throw new Error("Address must have a payment part"); + } + const paymentCredential = paymentPart.type === Core.CredentialType.KeyHash ? { + VerificationKey: [paymentPart.hash] + } : { + Script: [paymentPart.hash] + }; + let stakeCredential = undefined; + if (props.delegationPart) { + const stakeCred = props.delegationPart.type === Core.CredentialType.KeyHash ? { + VerificationKey: [props.delegationPart.hash] + } : { + Script: [props.delegationPart.hash] + }; + stakeCredential = { + Inline: [stakeCred] + }; + } + return { + address: { + payment_credential: paymentCredential, + stake_credential: stakeCredential + }, + datum + }; +} + +/** + * Convert a Destination-like value into a Cardano address. + * Supports enterprise and base addresses. Pointer credentials are ignored. + */ +export function destinationToAddress(network, destination) { + const paymentCred = destination.address.payment_credential; + const stakingCred = destination.address.stake_credential; + let paymentCredCore; + let stakingCredCore; + if (stakingCred && typeof stakingCred === "object" && "Inline" in stakingCred) { + const inlineCredential = stakingCred.Inline[0]; + if ("VerificationKey" in inlineCredential) { + stakingCredCore = Core.Credential.fromCore({ + type: Core.CredentialType.KeyHash, + hash: inlineCredential.VerificationKey[0] + }); + } else if ("Script" in inlineCredential) { + stakingCredCore = Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash: inlineCredential.Script[0] + }); + } + } + if ("VerificationKey" in paymentCred) { + paymentCredCore = Core.Credential.fromCore({ + type: Core.CredentialType.KeyHash, + hash: paymentCred.VerificationKey[0] + }); + } else { + paymentCredCore = Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash: paymentCred.Script[0] + }); + } + return addressFromCredentials(network, paymentCredCore, stakingCredCore); +} + +/** + * Add an output for a Destination, including script-payment addresses and + * any datum metadata attached to the destination. + * + * Attaches the datum directly to a fresh TransactionOutput rather than + * routing through Core.TransactionOutput.fromCore, because generated + * TPlutusData values from @blaze-cardano/data are already Blaze + * PlutusData instances and PlutusData.fromCore does not know how to + * decode them (throws NotImplementedError). + */ +export function addDestinationOutput(tx, network, destination, value) { + const output = new Core.TransactionOutput(destinationToAddress(network, destination), value); + const { + datum + } = destination; + if (datum !== "NoDatum") { + if ("DatumHash" in datum) { + output.setDatum(Core.Datum.newDataHash(datum.DatumHash[0])); + } else { + output.setDatum(Core.Datum.newInlineData(datum.InlineDatum[0])); + } + } + tx.addOutput(output); +} + +// ───────────────────────────────────────────────────────────────────────────── +// Cross-Version Cancel Helpers +// ───────────────────────────────────────────────────────────────────────────── + +const NORMALIZED_PROTOCOL_VERSION_MAP = { + v0: "V0", + v0_1: "V0_1", + v0_2: "V0_2", + v0_3: "V0_3", + v0_4: "V0_4", + v1_0: "V1_0", + v1_0_rc1: "V1_0_Rc1", + v1_1_rc1: "V1_1_Rc1" +}; + +/** + * Normalize externally-sourced protocol/order version strings into the SDK's + * canonical `TProtocolVersion` values. + */ +export const normalizeProtocolVersion = version => { + if (!version) { + return undefined; + } + return NORMALIZED_PROTOCOL_VERSION_MAP[version.trim().toLowerCase()]; +}; + +/** + * Alias for frontend order-version sources (GraphQL/backend strings). + */ +export const normalizeOrderVersion = normalizeProtocolVersion; + +/** + * Extract the inline datum from a UTxO. + */ +export const getInlineDatumFromUtxo = (utxo, label = "Order UTXO") => { + const datum = utxo.output().datum()?.asInlineData(); + if (!datum) { + throw new Error(`${label} has no inline datum`); + } + return datum; +}; + +/** + * Extract the payment script hash from an order UTxO's output address. + */ +export const getScriptHashFromOrderUtxo = utxo => { + const paymentPart = utxo.output().address().getProps().paymentPart; + if (!paymentPart) { + throw new Error("Order UTXO address has no payment credential"); + } + if (paymentPart.type !== Core.CredentialType.ScriptHash) { + throw new Error("Order UTXO payment credential is not a script hash"); + } + return paymentPart.hash; +}; + +/** + * Resolve one reference input per unique script hash. + */ +export async function resolveReferenceInputsByScriptHash(blaze, scriptHashes, cachedInputs, address) { + const referenceInputs = new Map(); + for (const hash of new Set(scriptHashes)) { + const cachedInput = cachedInputs instanceof Map ? cachedInputs.get(hash) : cachedInputs?.[hash]; + if (cachedInput) { + referenceInputs.set(hash, cachedInput); + continue; + } + const refInput = address && (await resolveScriptRefAtAddress(blaze, hash, address)) || (await blaze.provider.resolveScriptRef(hash)); + if (!refInput) { + throw new Error(`Missing order reference script input for hash ${hash}. Make sure the order script is deployed.`); + } + referenceInputs.set(hash, refInput); + } + return referenceInputs; +} + +/** + * Resolve the order reference inputs needed to spend a batch of order UTxOs. + */ +export async function resolveOrderReferenceInputs(blaze, orderUtxos, cachedInputs, address) { + const scriptHashes = []; + for (const utxo of orderUtxos) { + scriptHashes.push(getScriptHashFromOrderUtxo(utxo)); + } + return resolveReferenceInputsByScriptHash(blaze, scriptHashes, cachedInputs, address); +} + +/** + * Strict owner-only parser for order datums used by cross-version cancel. + * + * All currently-supported order datum variants encode as: + * Constr(0, [owner, destination, action, data]). + */ +export const parseOrderOwnerGenericFromDatum = datum => { + const constr = datum.asConstrPlutusData(); + if (!constr) { + throw new Error("Order datum is not a constructor PlutusData"); + } + if (constr.getAlternative() !== 0n) { + throw new Error(`Order datum has unexpected constructor index ${constr.getAlternative().toString()} (expected 0)`); + } + const fields = constr.getData(); + if (fields.getLength() < 4) { + throw new Error(`Order datum has ${fields.getLength().toString()} fields (expected at least 4)`); + } + return parse(V0_3Types.MultisigScript, fields.get(0)); +}; + +/** + * Strict owner-only parser for cancel flows. + */ +export const parseOrderOwnerGeneric = utxo => { + return parseOrderOwnerGenericFromDatum(getInlineDatumFromUtxo(utxo)); +}; +//# sourceMappingURL=utils.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/shared/utils.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/shared/utils.js.map new file mode 100644 index 0000000000..8cdb0a5ba0 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/shared/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","names":["addressFromCredentials","parse","Core","Data","ScriptAlreadyDeployedError","V0_3Types","rewardAccountFromScript","script","network","credential","credentialFromScript","RewardAccount","fromCredential","toCore","credentialFromScriptHash","hash","scriptHash","Credential","fromCore","type","CredentialType","ScriptHash","lockOrPayAssets","tx","address","value","datum","addDirectOutput","output","TransactionOutput","setDatum","Datum","newInlineData","addOutput","BLOCKFROST_ADDRESS_NOT_FOUND","isBlockfrostAddressNotFoundError","error","Error","test","message","hydrateUnspentOutputs","blaze","unspent","provider","getUnspentOutputs","length","resolveUnspentOutputs","map","utxo","input","shareHydration","pending","resolveScriptRefAtAddress","hydrate","resolved","resolveScriptRef","undefined","hydrated","find","scriptRef","deployScript","refInput","deployTx","newTransaction","NFT_LOOKUP_ATTEMPTS","NFT_LOOKUP_BACKOFF_MS","sleep","ms","Promise","resolve","setTimeout","getUnspentOutputByNftWithRetry","assetId","lastError","attempt","getUnspentOutputByNFT","withInlineDatum","promoted","amount","setScriptRef","TransactionUnspentOutput","readSingletonDatum","nftAssetId","read","inline","asInlineData","datumHash","asDataHash","resolveDatum","preimageHash","blake2b_256","toCbor","console","warn","transactionId","index","getDatumFromNFT","datumSchema","parsedDatum","getReferenceInputs","scriptHashes","cachedInputs","referenceInputs","name","Object","entries","getSignatureKeyHashesFromMultisigScript","multisig","result","push","Signature","key_hash","AtLeast","scripts","s","flat","forEach","AllOf","AnyOf","Set","values","getScriptKeyHashesFromMultisigScript","Script","script_hash","getAllKeyHashesFromMultisigScript","keyHashes","sortOrderInputs","orderInputs","sort","a","b","txHashA","toString","txHashB","indexA","indexB","buildNonceFromUtxo","UTxO","transaction_id","output_index","buildOriginFromUtxo","txId","outputIndex","fieldsList","PlutusList","add","PlutusData","newBytes","Buffer","from","newInteger","outputRefData","newConstrPlutusData","ConstrPlutusData","destructureCip30Signature","cip30Signature","protected","protectedCbor","signature","readCoseSign1Parts","publicKey","extractPublicKeyFromCoseKey","key","coseSign1","headers","unprotected","signPayloadHashWithWallet","payloadHash","wallet","getChangeAddress","signData","createSignedRedeemer","extra","payload","signatures","coseKeyHex","keyBytes","pubKeyStart","i","pubKey","slice","CBOR_MAJOR_BYTES","CBOR_MAJOR_TEXT","CBOR_MAJOR_ARRAY","CBOR_MAJOR_MAP","CBOR_MAJOR_TAG","CBOR_MAJOR_SIMPLE","CBOR_ADDITIONAL_INDEFINITE","CBOR_BREAK","CBOR_TAG_COSE_SIGN1","CBOR_SIMPLE_NULL","readCborHeader","bytes","offset","initial","major","additional","argument","indefinite","contentOffset","lengthBytes","readIndefiniteStringChunks","chunks","next","chunk","end","content","concat","nextOffset","skipCborItem","readCborByteString","hex","coseSign1Hex","first","array","protectedRead","unprotectedHeader","afterUnprotected","payloadHeader","isNullPayload","afterPayload","signatureRead","getSignedPayloadForWithdraw","treasuryUtxo","nonce","action","Withdraw","withdraw_amount","signedPayload","serialize","SignedPayload_ProtocolRedeemer","getSignedPayloadForDeposit","Deposit","deposit_amount","addressToDestination","props","getProps","paymentPart","paymentCredential","KeyHash","VerificationKey","stakeCredential","delegationPart","stakeCred","Inline","payment_credential","stake_credential","destinationToAddress","destination","paymentCred","stakingCred","paymentCredCore","stakingCredCore","inlineCredential","addDestinationOutput","newDataHash","DatumHash","InlineDatum","NORMALIZED_PROTOCOL_VERSION_MAP","v0","v0_1","v0_2","v0_3","v0_4","v1_0","v1_0_rc1","v1_1_rc1","normalizeProtocolVersion","version","trim","toLowerCase","normalizeOrderVersion","getInlineDatumFromUtxo","label","getScriptHashFromOrderUtxo","resolveReferenceInputsByScriptHash","Map","cachedInput","get","set","resolveOrderReferenceInputs","orderUtxos","parseOrderOwnerGenericFromDatum","constr","asConstrPlutusData","getAlternative","fields","getData","getLength","MultisigScript","parseOrderOwnerGeneric"],"sources":["../../../../src/sdk/shared/utils.ts"],"sourcesContent":["import { addressFromCredentials } from \"@blaze-cardano/core\";\nimport { parse, type TSchema } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n Core,\n TxBuilder,\n type Blaze,\n type CIP30DataSignature,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport * as Data from \"@blaze-cardano/data\";\nimport {\n SignatureList,\n type Destination,\n} from \"src/generated-types/v0_3/index.js\";\nimport { ScriptAlreadyDeployedError } from \"./errors.js\";\nimport { V0_3Types } from \"../../generated-types/index.js\";\nimport type { TMultisigScript, TProtocolVersion } from \"./types.js\";\n\ntype TDestinationCredentialLike =\n | { VerificationKey: [string] }\n | { Script: [string] };\n\ntype TDestinationLike = {\n address: {\n payment_credential: TDestinationCredentialLike;\n stake_credential?: { Inline: [TDestinationCredentialLike] } | unknown;\n };\n datum:\n | \"NoDatum\"\n | { DatumHash: [string] }\n | { InlineDatum: [Core.PlutusData | unknown] };\n};\n\n/**\n * Create a reward account from a script\n */\nexport function rewardAccountFromScript(\n script: Core.Script,\n network: Core.NetworkId,\n): Core.RewardAccount {\n const credential = credentialFromScript(script);\n return Core.RewardAccount.fromCredential(credential.toCore(), network);\n}\n\n/**\n * Create a credential from a script\n */\nexport function credentialFromScript(script: Core.Script): Core.Credential {\n return credentialFromScriptHash(script.hash());\n}\n\n/**\n * Create a credential from a script hash\n */\nexport function credentialFromScriptHash(\n scriptHash: Core.Hash28ByteBase16,\n): Core.Credential {\n return Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash: scriptHash,\n });\n}\n\n/**\n * Send a value (with an attached datum) to either a key-credentialled or\n * script-credentialled address. This helper emits an explicit output for\n * the destination address so callers (mintOneShot / updateOneShotDatum /\n * etc.) work transparently in both single-signer and multisig deployments.\n *\n * Mutates `tx` (matching Blaze's builder pattern) and returns it for chaining.\n */\nexport function lockOrPayAssets(\n tx: TxBuilder,\n address: Core.Address,\n value: Core.Value,\n datum: Core.PlutusData,\n): TxBuilder {\n return addDirectOutput(tx, address, value, datum);\n}\n\n/**\n * Add an explicit transaction output for the target address and value.\n *\n * Mutates `tx` and returns it for call sites that want to keep builder-style\n * chaining.\n */\nexport function addDirectOutput(\n tx: TxBuilder,\n address: Core.Address,\n value: Core.Value,\n datum?: Core.PlutusData,\n): TxBuilder {\n const output = new Core.TransactionOutput(address, value);\n if (datum) {\n output.setDatum(Core.Datum.newInlineData(datum));\n }\n tx.addOutput(output);\n return tx;\n}\n\n/**\n * Blockfrost responds to `getUnspentOutputs` on an unused address with HTTP\n * 404 (\"requested component has not been found\"), which the provider surfaces\n * as a generic Error. Treat only that exact failure as \"not found at this\n * address\" so outages and malformed responses still propagate.\n *\n * The query path is matched with an optional leading slash: @blaze-cardano/query\n * builds `/addresses/...`, while a caller paging the same endpoint itself builds\n * `addresses/...` (Blockfrost's base url already ends in `/`). The cron carries\n * a matcher for the same message\n * (`cli/src/scripts/lib/order-utxo-fetch.ts`); keep the two in step.\n */\nconst BLOCKFROST_ADDRESS_NOT_FOUND =\n /^getUnspentOutputs: Blockfrost threw \"The requested component has not been found\\.\" for query: \\/?addresses\\//;\n\nfunction isBlockfrostAddressNotFoundError(error: unknown): boolean {\n return (\n error instanceof Error && BLOCKFROST_ADDRESS_NOT_FOUND.test(error.message)\n );\n}\n\n/**\n * Fully resolve the address's current unspent outputs.\n *\n * Blockfrost can expose a reference script through the transaction-output\n * endpoint before (or without) hydrating `reference_script_hash` on the address\n * UTxO endpoint. Re-resolving the inputs returned by the address query\n * preserves the unspent-only constraint while recovering the full output\n * metadata from the exact transactions.\n */\nasync function hydrateUnspentOutputs

(\n blaze: Blaze,\n address: Core.Address,\n): Promise {\n const unspent = await blaze.provider.getUnspentOutputs(address);\n if (unspent.length === 0) return [];\n return blaze.provider.resolveUnspentOutputs(\n unspent.map((utxo) => utxo.input()),\n );\n}\n\n/**\n * A `hydrateUnspentOutputs` call shared by every hash resolved against the same\n * address in one pass. Hydration costs one provider request per UTxO at the\n * address, so a caller resolving eight script hashes against a provider that\n * omits script metadata would otherwise pay the whole sweep eight times, and\n * the dapp runs this against a rate-limited Blockfrost proxy. Scoped to a\n * single call rather than cached on the SDK so a later pass still sees a script\n * deployed in the meantime.\n */\ntype THydrateAddress = () => Promise;\n\nfunction shareHydration

(\n blaze: Blaze,\n address: Core.Address,\n): THydrateAddress {\n let pending: Promise | undefined;\n return () => (pending ??= hydrateUnspentOutputs(blaze, address));\n}\n\n/**\n * Resolve a script reference at a specific address, tolerating Blockfrost's\n * throw for an address with no history instead of an empty result, and its\n * missing script metadata on the address UTxO endpoint.\n */\nasync function resolveScriptRefAtAddress

(\n blaze: Blaze,\n hash: Core.Hash28ByteBase16,\n address: Core.Address,\n hydrate: THydrateAddress = () => hydrateUnspentOutputs(blaze, address),\n): Promise {\n try {\n const resolved = await blaze.provider.resolveScriptRef(hash, address);\n if (resolved) return resolved;\n } catch (error) {\n if (!isBlockfrostAddressNotFoundError(error)) throw error;\n return undefined;\n }\n\n const hydrated = await hydrate();\n return hydrated.find((utxo) => utxo.output().scriptRef()?.hash() === hash);\n}\n\n/**\n * Deploy a script as a reference script.\n *\n * When `address` is provided, the reference UTxO is locked at that address\n * (instead of Blaze's default burn address), which lets resolution query a\n * small, dedicated UTxO set rather than the shared burn address.\n *\n * Throws `ScriptAlreadyDeployedError` (carrying the existing reference\n * UTxO) if the script is already deployed *at the target location* — the\n * specified `address` when given, otherwise the burn-address default. The\n * guard is intentionally scoped to the deploy target only: a copy that\n * exists elsewhere (e.g. a legacy copy at the burn address) does NOT block\n * deploying to a newly specified address, which is exactly what a migration\n * needs. Callers that want idempotent reruns should catch that specific class.\n */\nexport async function deployScript

(\n blaze: Blaze,\n script: Core.Script,\n address?: Core.Address,\n): Promise {\n const refInput = address\n ? await resolveScriptRefAtAddress(blaze, script.hash(), address)\n : await blaze.provider.resolveScriptRef(script.hash());\n if (refInput) {\n throw new ScriptAlreadyDeployedError(script.hash(), refInput);\n }\n // `address === undefined` -> Blaze locks the script at the burn address.\n const deployTx = blaze.newTransaction().deployScript(script, address);\n return deployTx;\n}\n\nconst NFT_LOOKUP_ATTEMPTS = 3;\nconst NFT_LOOKUP_BACKOFF_MS = 250;\n\nconst sleep = (ms: number): Promise =>\n new Promise((resolve) => setTimeout(resolve, ms));\n\n/**\n * Look up an NFT UTxO, retrying indexer lag after the output moves.\n * Treats both a thrown 404 and an empty result as lag. Re-throws the last\n * provider error when the budget is exhausted.\n */\nexport async function getUnspentOutputByNftWithRetry(\n provider: Provider,\n assetId: Core.AssetId,\n): Promise {\n let lastError: unknown;\n for (let attempt = 1; attempt <= NFT_LOOKUP_ATTEMPTS; attempt++) {\n try {\n const utxo = await provider.getUnspentOutputByNFT(assetId);\n if (utxo) return utxo;\n lastError = undefined;\n } catch (error) {\n lastError = error;\n }\n if (attempt < NFT_LOOKUP_ATTEMPTS) {\n await sleep(NFT_LOOKUP_BACKOFF_MS * attempt);\n }\n }\n if (lastError) throw lastError;\n return undefined;\n}\n\n/**\n * Rebuild `utxo` with `datum` attached inline, preserving its input ref,\n * address, value and reference script.\n */\nfunction withInlineDatum(\n utxo: Core.TransactionUnspentOutput,\n datum: Core.PlutusData,\n): Core.TransactionUnspentOutput {\n const output = utxo.output();\n const promoted = new Core.TransactionOutput(\n output.address(),\n output.amount(),\n );\n promoted.setDatum(Core.Datum.newInlineData(datum));\n const scriptRef = output.scriptRef();\n if (scriptRef) {\n promoted.setScriptRef(scriptRef);\n }\n return new Core.TransactionUnspentOutput(utxo.input(), promoted);\n}\n\n/**\n * Read an NFT singleton (proxy, treasury, vault) and its datum.\n *\n * Protocol singletons are locked inline. A hash-form read is a provider\n * artifact (Blockfrost omitting `inline_datum`). Validators require\n * `InlineDatum` on the singleton input; passing the preimage as `addInput`'s\n * 3rd arg is a supplemental witness datum that local eval and phase-1 reject.\n * Resolve the hash, verify the preimage, and reattach it inline.\n *\n * The lookup is retried: a singleton always exists, so a not-found answer is\n * the provider's index lagging the UTxO's latest move, not a missing singleton.\n */\nexport async function readSingletonDatum(\n provider: Provider,\n nftAssetId: Core.AssetId,\n): Promise<{\n utxo: Core.TransactionUnspentOutput;\n datum: Core.PlutusData;\n}> {\n const read = await getUnspentOutputByNftWithRetry(provider, nftAssetId);\n if (!read) {\n throw new Error(`No UTXO found with NFT: ${nftAssetId}`);\n }\n\n const inline = read.output().datum()?.asInlineData();\n if (inline) {\n return { utxo: read, datum: inline };\n }\n\n const datumHash = read.output().datum()?.asDataHash();\n if (!datumHash) {\n throw new Error(`No datum found in UTXO with NFT: ${nftAssetId}`);\n }\n\n const resolved = await provider.resolveDatum(datumHash);\n const preimageHash = Core.blake2b_256(resolved.toCbor());\n if (preimageHash !== datumHash) {\n throw new Error(\n `Datum resolved for UTXO with NFT ${nftAssetId} does not match its datum hash: ` +\n `resolved preimage hashes to ${preimageHash}, UTXO reports ${datumHash}`,\n );\n }\n\n const input = read.input();\n console.warn(\n `[realfi-sdk] singleton ${nftAssetId} read at ${input.transactionId()}#${input.index()} ` +\n `reported datum hash ${datumHash} instead of its inline datum; reattaching the resolved preimage inline`,\n );\n return { utxo: withInlineDatum(read, resolved), datum: resolved };\n}\n\n/**\n * Get datum from a UTxO containing a specific NFT, optionally parsed under\n * `datumSchema`. Datum-hash reads are repaired by {@link readSingletonDatum}.\n */\nexport async function getDatumFromNFT<\n P extends Provider,\n W extends Wallet,\n T = unknown,\n>(\n blaze: Blaze,\n nftAssetId: Core.AssetId,\n datumSchema?: TSchema,\n): Promise<{\n utxo: Core.TransactionUnspentOutput;\n datum: Core.PlutusData;\n parsedDatum: T;\n}> {\n const { utxo, datum } = await readSingletonDatum(blaze.provider, nftAssetId);\n\n if (datumSchema) {\n const parsedDatum = parse(datumSchema, datum) as T;\n return { utxo, datum, parsedDatum };\n }\n\n return { utxo, datum, parsedDatum: undefined as T };\n}\n\n/**\n * Get script reference inputs, using cached values when available.\n *\n * When `address` is provided, each script is resolved at that address first\n * (a fast, dedicated query) and only falls back to Blaze's burn-address\n * default if it isn't found there. This keeps previously burn-address-deployed\n * scripts resolvable while migrating to a specified deployment address.\n */\nexport async function getReferenceInputs

(\n blaze: Blaze,\n scriptHashes: Record,\n cachedInputs?: Partial>,\n address?: Core.Address,\n): Promise> {\n const referenceInputs: Record = {};\n const hydrate = address ? shareHydration(blaze, address) : undefined;\n\n for (const [name, hash] of Object.entries(scriptHashes)) {\n if (cachedInputs?.[name]) {\n referenceInputs[name] = cachedInputs[name];\n continue;\n }\n\n const refInput =\n (address &&\n (await resolveScriptRefAtAddress(blaze, hash, address, hydrate))) ||\n (await blaze.provider.resolveScriptRef(hash));\n if (!refInput) {\n throw new Error(\n `No reference input found for ${name} script (${hash}). Make sure it is deployed.`,\n );\n }\n referenceInputs[name] = refInput;\n }\n\n return referenceInputs;\n}\n\n/**\n * Extract signature key hashes from a multisig script\n */\nexport const getSignatureKeyHashesFromMultisigScript = (\n multisig: TMultisigScript,\n): string[] => {\n const result: string[] = [];\n\n if (\"Signature\" in multisig) {\n result.push(multisig.Signature.key_hash);\n } else if (\"AtLeast\" in multisig) {\n multisig.AtLeast.scripts\n .map((s) => getSignatureKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n } else if (\"AllOf\" in multisig) {\n multisig.AllOf.scripts\n .map((s) => getSignatureKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n } else if (\"AnyOf\" in multisig) {\n multisig.AnyOf.scripts\n .map((s) => getSignatureKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n }\n\n return [...new Set(result).values()];\n};\n\n/**\n * Extract script key hashes from a multisig script\n */\nexport const getScriptKeyHashesFromMultisigScript = (\n multisig: TMultisigScript,\n): string[] => {\n const result: string[] = [];\n\n if (\"Script\" in multisig) {\n result.push(multisig.Script.script_hash);\n } else if (\"AtLeast\" in multisig) {\n multisig.AtLeast.scripts\n .map((s) => getScriptKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n } else if (\"AllOf\" in multisig) {\n multisig.AllOf.scripts\n .map((s) => getScriptKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n } else if (\"AnyOf\" in multisig) {\n multisig.AnyOf.scripts\n .map((s) => getScriptKeyHashesFromMultisigScript(s))\n .flat()\n .forEach((s) => {\n result.push(s);\n });\n }\n\n return [...new Set(result).values()];\n};\n\n/**\n * Extract all key hashes (signature + script) from a multisig script\n */\nexport const getAllKeyHashesFromMultisigScript = (\n multisig: TMultisigScript,\n): string[] => {\n const keyHashes = getSignatureKeyHashesFromMultisigScript(multisig);\n const scriptHashes = getScriptKeyHashesFromMultisigScript(multisig);\n return [...new Set([...keyHashes, ...scriptHashes]).values()];\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Order Input Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Sort order inputs by txHash and outputIndex for deterministic ordering.\n * This ensures consistent payload generation across all signers.\n */\nexport const sortOrderInputs = (\n orderInputs: Core.TransactionInput[],\n): Core.TransactionInput[] => {\n return [...orderInputs].sort((a, b) => {\n const txHashA = a.transactionId().toString();\n const txHashB = b.transactionId().toString();\n if (txHashA < txHashB) return -1;\n if (txHashA > txHashB) return 1;\n const indexA = a.index();\n const indexB = b.index();\n return indexA < indexB ? -1 : indexA > indexB ? 1 : 0;\n });\n};\n\n/**\n * Build a nonce from the first order UTxO.\n */\nexport const buildNonceFromUtxo = (\n utxo: Core.TransactionInput,\n): V0_3Types.Nonce => ({\n UTxO: [\n {\n transaction_id: utxo.transactionId().toString(),\n output_index: utxo.index(),\n },\n ],\n});\n\n/**\n * Build the origin ByteArray (CBOR-serialized OutputReference) from a UTxO.\n * Used by v0_4 SDK and shared helpers.\n */\nexport const buildOriginFromUtxo = (\n utxo: Core.TransactionUnspentOutput,\n): string => {\n const input = utxo.input();\n const txId = input.transactionId().toString();\n const outputIndex = input.index();\n const fieldsList = new Core.PlutusList();\n fieldsList.add(Core.PlutusData.newBytes(Buffer.from(txId, \"hex\")));\n fieldsList.add(Core.PlutusData.newInteger(outputIndex));\n const outputRefData = Core.PlutusData.newConstrPlutusData(\n new Core.ConstrPlutusData(0n, fieldsList),\n );\n return outputRefData.toCbor();\n};\n\n/**\n * KeySignature type matching the contract's KeySignature tuple.\n * A tuple of [VerificationKey, COSESign1] where:\n * - VerificationKey: 32-byte Ed25519 public key (hex string)\n * - COSESign1: COSE signature with headers (raw CBOR bytes) and detached payload\n */\nexport type TKeySignature = [\n string, // VerificationKey (32-byte public key hex)\n {\n headers: {\n protected: string; // Raw CBOR hex bytes (HeaderMap = ByteArray in contract)\n unprotected: string; // Raw CBOR hex bytes (empty = \"\")\n };\n payload?: string; // Detached - undefined, actual payload stored separately\n signature: string;\n },\n];\n\nexport const destructureCip30Signature = async (\n cip30Signature: CIP30DataSignature,\n): Promise<{\n publicKey: string;\n coseSign1: {\n headers: {\n protected: string;\n unprotected: string;\n };\n signature: string;\n };\n}> => {\n // Read the COSE_Sign1 with CBOR primitives from the dependency tree.\n // Async for callers that await it.\n const { protected: protectedCbor, signature } = readCoseSign1Parts(\n cip30Signature.signature.toString(),\n );\n // Extract public key from COSE_Key (at label -2)\n const publicKey = extractPublicKeyFromCoseKey(cip30Signature.key.toString());\n return {\n publicKey,\n coseSign1: {\n headers: {\n protected: protectedCbor,\n unprotected: \"\", // Empty ByteArray\n },\n signature,\n },\n };\n};\n\n/**\n * Produce a COSE (CIP-8) signature tuple over `payloadHash` using the connected\n * wallet's key. The reusable building block for signer callbacks — e.g. the\n * settings-governance `signAuthPayload` or an orchestrator signed redeemer —\n * that wraps `signData` + `destructureCip30Signature` into the on-chain tuple.\n */\nexport const signPayloadHashWithWallet = async <\n P extends Provider,\n W extends Wallet,\n>(\n blaze: Blaze,\n payloadHash: string,\n): Promise => {\n const address = await blaze.wallet.getChangeAddress();\n const cip30Signature = await blaze.wallet.signData(address, payloadHash);\n const { publicKey, coseSign1 } =\n await destructureCip30Signature(cip30Signature);\n return [publicKey, coseSign1];\n};\n\n/**\n * Create a SignedRedeemer_ExtraProtocolRedeemer structure for on-chain verification.\n *\n * @param extra - The extra protocol redeemer data (e.g., request_to_outputs mapping)\n * @param payload - The SignedPayload_ProtocolRedeemer CBOR hex string (action + nonce)\n * @param signatures - Array of KeySignature tuples from each signer\n * @returns A SignedRedeemer_ExtraProtocolRedeemer ready for use in transaction\n */\nexport const createSignedRedeemer = (\n extra: V0_3Types.ExtraProtocolRedeemer,\n payload: string,\n signatures: SignatureList,\n): V0_3Types.SignedRedeemer_ExtraProtocolRedeemer => {\n if (signatures.length === 0) {\n throw new Error(\"At least one signature is required\");\n }\n\n return {\n extra,\n payload,\n signatures: signatures as SignatureList,\n };\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// CBOR Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Extract the 32-byte Ed25519 public key from a COSE_Key structure.\n * COSE_Key for Ed25519 has the key at label -2.\n * The COSE_Key CBOR structure looks like: a4 01 01 03 27 20 06 21 5820 <32 bytes>\n * Where 21 5820 indicates label -2 followed by a 32-byte bytestring.\n */\nconst extractPublicKeyFromCoseKey = (coseKeyHex: string): string => {\n // Parse the COSE_Key CBOR manually to find the public key\n // The key at label -2 (encoded as 0x21 in CBOR) contains the 32-byte public key\n // Look for 0x21 0x58 0x20 which indicates: label -2, bytestring, 32 bytes\n const keyBytes = Buffer.from(coseKeyHex, \"hex\");\n\n // Find the pattern: 21 58 20 (label -2, bytes, length 32)\n let pubKeyStart = -1;\n for (let i = 0; i < keyBytes.length - 34; i++) {\n if (\n keyBytes[i] === 0x21 &&\n keyBytes[i + 1] === 0x58 &&\n keyBytes[i + 2] === 0x20\n ) {\n pubKeyStart = i + 3; // Skip the 21 58 20 prefix\n break;\n }\n }\n\n if (pubKeyStart === -1) {\n throw new Error(\"Could not find public key in COSE_Key structure\");\n }\n\n const pubKey = keyBytes.slice(pubKeyStart, pubKeyStart + 32);\n if (pubKey.length !== 32) {\n throw new Error(`Invalid public key length: ${pubKey.length}`);\n }\n\n return pubKey.toString(\"hex\");\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// COSE_Sign1 (CIP-8) reader\n// ─────────────────────────────────────────────────────────────────────────────\n\n// CBOR major types used here.\nconst CBOR_MAJOR_BYTES = 2;\nconst CBOR_MAJOR_TEXT = 3;\nconst CBOR_MAJOR_ARRAY = 4;\nconst CBOR_MAJOR_MAP = 5;\nconst CBOR_MAJOR_TAG = 6;\nconst CBOR_MAJOR_SIMPLE = 7; // simple values (false/true/null) and floats\n\nconst CBOR_ADDITIONAL_INDEFINITE = 31;\nconst CBOR_BREAK = 0xff; // terminates an indefinite-length string/array/map\nconst CBOR_TAG_COSE_SIGN1 = 18; // COSE_Sign1's registered tag (encodes as d2)\nconst CBOR_SIMPLE_NULL = 22; // `f6`\n\n/**\n * Read a CBOR header at `offset`, returning the major type, the argument\n * (length / value), whether the item is indefinite-length, and the offset of\n * the item's content. Supports the definite forms (0-23 inline and the\n * 1/2/4/8-byte arguments) plus indefinite-length strings, arrays, and maps.\n */\nconst readCborHeader = (\n bytes: Uint8Array,\n offset: number,\n): {\n major: number;\n argument: number;\n indefinite: boolean;\n contentOffset: number;\n} => {\n const initial = bytes[offset];\n if (initial === undefined) {\n throw new Error(\"COSE_Sign1 CBOR ended unexpectedly\");\n }\n const major = initial >> 5;\n const additional = initial & 0x1f;\n\n if (additional < 24) {\n return {\n major,\n argument: additional,\n indefinite: false,\n contentOffset: offset + 1,\n };\n }\n\n if (additional === CBOR_ADDITIONAL_INDEFINITE) {\n // Only strings, arrays, and maps have an indefinite-length form. A break\n // byte (0xff) parses as major 7 here, so a stray break is rejected too.\n if (major < CBOR_MAJOR_BYTES || major > CBOR_MAJOR_MAP) {\n throw new Error(\n `Unsupported indefinite-length CBOR major type: ${major}`,\n );\n }\n return { major, argument: 0, indefinite: true, contentOffset: offset + 1 };\n }\n\n // 24/25/26/27 -> 1/2/4/8 following length bytes. 28-30 are reserved.\n if (additional > 27) {\n throw new Error(`Unsupported CBOR additional info: ${additional}`);\n }\n const lengthBytes = 1 << (additional - 24);\n let argument = 0;\n for (let i = 0; i < lengthBytes; i++) {\n const b = bytes[offset + 1 + i];\n if (b === undefined) {\n throw new Error(\"COSE_Sign1 CBOR length ended unexpectedly\");\n }\n argument = argument * 256 + b;\n }\n return {\n major,\n argument,\n indefinite: false,\n contentOffset: offset + 1 + lengthBytes,\n };\n};\n\n/**\n * Read the definite-length chunks of an indefinite-length CBOR string whose\n * first chunk header is at `offset`, returning the concatenated content and\n * the offset just past the closing break byte.\n */\nconst readIndefiniteStringChunks = (\n bytes: Uint8Array,\n major: number,\n offset: number,\n): { content: Uint8Array; nextOffset: number } => {\n const chunks: Uint8Array[] = [];\n let next = offset;\n while (bytes[next] !== CBOR_BREAK) {\n const chunk = readCborHeader(bytes, next);\n if (chunk.major !== major || chunk.indefinite) {\n throw new Error(\"Invalid chunk in an indefinite-length CBOR string\");\n }\n const end = chunk.contentOffset + chunk.argument;\n if (end > bytes.length) {\n throw new Error(\"COSE_Sign1 CBOR ended unexpectedly\");\n }\n chunks.push(bytes.slice(chunk.contentOffset, end));\n next = end;\n }\n return { content: Buffer.concat(chunks), nextOffset: next + 1 };\n};\n\n/**\n * Skip over one complete CBOR data item starting at `offset`, returning the\n * offset immediately after it. Handles the item shapes that occur inside a\n * COSE_Sign1 (byte/text strings, integers, arrays, maps, tags — definite or\n * indefinite length) recursively.\n */\nconst skipCborItem = (bytes: Uint8Array, offset: number): number => {\n const { major, argument, indefinite, contentOffset } = readCborHeader(\n bytes,\n offset,\n );\n if (indefinite) {\n if (major === CBOR_MAJOR_BYTES || major === CBOR_MAJOR_TEXT) {\n return readIndefiniteStringChunks(bytes, major, contentOffset).nextOffset;\n }\n // Indefinite array or map: items until the break byte.\n let next = contentOffset;\n while (bytes[next] !== CBOR_BREAK) {\n if (bytes[next] === undefined) {\n throw new Error(\"COSE_Sign1 CBOR ended unexpectedly\");\n }\n next = skipCborItem(bytes, next); // array item / map key\n if (major === CBOR_MAJOR_MAP) {\n next = skipCborItem(bytes, next); // map value\n }\n }\n return next + 1;\n }\n switch (major) {\n case 0: // unsigned int\n case 1: // negative int\n case CBOR_MAJOR_SIMPLE: // simple value (false/true/null) or float\n // readCborHeader already consumed the value/float bytes into `argument`.\n return contentOffset;\n case CBOR_MAJOR_BYTES:\n case CBOR_MAJOR_TEXT: {\n const end = contentOffset + argument;\n if (end > bytes.length) {\n throw new Error(\"COSE_Sign1 CBOR ended unexpectedly\");\n }\n return end;\n }\n case CBOR_MAJOR_ARRAY: {\n let next = contentOffset;\n for (let i = 0; i < argument; i++) {\n next = skipCborItem(bytes, next);\n }\n return next;\n }\n case CBOR_MAJOR_MAP: {\n let next = contentOffset;\n for (let i = 0; i < argument; i++) {\n next = skipCborItem(bytes, next); // key\n next = skipCborItem(bytes, next); // value\n }\n return next;\n }\n case CBOR_MAJOR_TAG:\n return skipCborItem(bytes, contentOffset); // tagged content\n default:\n throw new Error(`Unsupported CBOR major type in COSE_Sign1: ${major}`);\n }\n};\n\n/**\n * Read the byte-string content at `offset`, returning its hex and the offset\n * after it.\n */\nconst readCborByteString = (\n bytes: Uint8Array,\n offset: number,\n): { hex: string; nextOffset: number } => {\n const { major, argument, indefinite, contentOffset } = readCborHeader(\n bytes,\n offset,\n );\n if (major !== CBOR_MAJOR_BYTES) {\n throw new Error(\n `Expected a CBOR byte string in COSE_Sign1, got major type ${major}`,\n );\n }\n if (indefinite) {\n const { content, nextOffset } = readIndefiniteStringChunks(\n bytes,\n major,\n contentOffset,\n );\n return { hex: Buffer.from(content).toString(\"hex\"), nextOffset };\n }\n const end = contentOffset + argument;\n if (end > bytes.length) {\n throw new Error(\"COSE_Sign1 CBOR ended unexpectedly\");\n }\n return {\n hex: Buffer.from(bytes.slice(contentOffset, end)).toString(\"hex\"),\n nextOffset: end,\n };\n};\n\n/**\n * Parse a CIP-8 COSE_Sign1 and extract the pieces the on-chain KeySignature\n * tuple needs: the protected header map bytes (byte-string content, wrapper\n * removed) and the raw Ed25519 signature bytes.\n *\n * COSE_Sign1 = [ protected: bstr, unprotected: map, payload: bstr / nil,\n * signature: bstr ], optionally wrapped in CBOR tag 18. The protected element\n * is itself a byte string whose content is the serialized header map; reading\n * the byte-string content yields the raw header-map bytes the tuple stores.\n * Indefinite-length encodings of the array, the maps, and the byte strings\n * are accepted alongside the definite forms.\n */\nexport const readCoseSign1Parts = (\n coseSign1Hex: string,\n): { protected: string; signature: string } => {\n const bytes = Buffer.from(coseSign1Hex, \"hex\");\n\n let offset = 0;\n // Optional CBOR tag: only tag 18 (COSE_Sign1's registered tag, the `d2`\n // prefix) is accepted — tagged input is accepted by design, since the\n // Ledger signing path emits d2-tagged COSE_Sign1s, but any other tag means\n // this isn't a COSE_Sign1 and must be rejected rather than silently unwrapped.\n const first = readCborHeader(bytes, offset);\n if (first.major === CBOR_MAJOR_TAG) {\n if (first.argument !== CBOR_TAG_COSE_SIGN1) {\n throw new Error(\n `COSE_Sign1 has unexpected CBOR tag ${first.argument} (expected 18)`,\n );\n }\n offset = first.contentOffset;\n }\n\n const array = readCborHeader(bytes, offset);\n if (array.major !== CBOR_MAJOR_ARRAY) {\n throw new Error(\"COSE_Sign1 is not a CBOR array\");\n }\n if (!array.indefinite && array.argument !== 4) {\n throw new Error(\"COSE_Sign1 is not a 4-element CBOR array\");\n }\n\n // Element 0: protected header byte string (content = serialized header map).\n const protectedRead = readCborByteString(bytes, array.contentOffset);\n\n // Element 1: unprotected header map — must be a CBOR map (major 5),\n // definite or indefinite. Peek the header before skipCborItem consumes it\n // so we assert on the same read the skip performs, not a second one.\n const unprotectedHeader = readCborHeader(bytes, protectedRead.nextOffset);\n if (unprotectedHeader.major !== CBOR_MAJOR_MAP) {\n throw new Error(\n `COSE_Sign1 unprotected header is not a CBOR map (got major type ${unprotectedHeader.major})`,\n );\n }\n const afterUnprotected = skipCborItem(bytes, protectedRead.nextOffset);\n\n // Element 2: payload — must be a byte string (major 2) or null (`f6`).\n const payloadHeader = readCborHeader(bytes, afterUnprotected);\n const isNullPayload =\n payloadHeader.major === CBOR_MAJOR_SIMPLE &&\n !payloadHeader.indefinite &&\n payloadHeader.argument === CBOR_SIMPLE_NULL;\n if (payloadHeader.major !== CBOR_MAJOR_BYTES && !isNullPayload) {\n throw new Error(\n `COSE_Sign1 payload is not a byte string or null (got major type ${payloadHeader.major})`,\n );\n }\n const afterPayload = skipCborItem(bytes, afterUnprotected);\n\n // Element 3: signature byte string.\n const signatureRead = readCborByteString(bytes, afterPayload);\n\n // An indefinite-length COSE_Sign1 array must close right after element 3.\n if (array.indefinite && bytes[signatureRead.nextOffset] !== CBOR_BREAK) {\n throw new Error(\"COSE_Sign1 is not a 4-element CBOR array\");\n }\n\n return { protected: protectedRead.hex, signature: signatureRead.hex };\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Treasury Operation Payload Helpers (Withdraw/Deposit)\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Build the SignedPayload_ProtocolRedeemer for a withdraw operation.\n * Uses the treasury UTxO as the nonce source.\n *\n * @param requests - Array of withdraw requests with destinations and amounts\n * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce)\n * @returns SignedPayload_ProtocolRedeemer CBOR hex string\n */\nexport const getSignedPayloadForWithdraw = (\n amount: bigint,\n treasuryUtxo: Core.TransactionUnspentOutput,\n): string => {\n if (amount <= 0n) {\n throw new Error(\"Withdraw amount must be positive\");\n }\n\n // Reuse existing nonce builder\n const nonce = buildNonceFromUtxo(treasuryUtxo.input());\n\n const action: V0_3Types.ProtocolRedeemer = {\n Withdraw: { withdraw_amount: amount },\n };\n\n const signedPayload: V0_3Types.SignedPayload_ProtocolRedeemer = {\n action,\n nonce,\n };\n return Data.serialize(V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload)\n .toCbor()\n .toString();\n};\n\n/**\n * Build the SignedPayload_ProtocolRedeemer for a deposit operation.\n * Uses the treasury UTxO as the nonce source.\n *\n * @param amount - The amount of reserve tokens to deposit\n * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce)\n * @returns SignedPayload_ProtocolRedeemer CBOR hex string\n */\nexport const getSignedPayloadForDeposit = (\n amount: bigint,\n treasuryUtxo: Core.TransactionUnspentOutput,\n): string => {\n if (amount <= 0n) {\n throw new Error(\"Deposit amount must be positive\");\n }\n\n const nonce = buildNonceFromUtxo(treasuryUtxo.input());\n\n const action: V0_3Types.ProtocolRedeemer = {\n Deposit: { deposit_amount: amount },\n };\n\n const signedPayload: V0_3Types.SignedPayload_ProtocolRedeemer = {\n action,\n nonce,\n };\n return Data.serialize(V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload)\n .toCbor()\n .toString();\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Address Conversion Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Convert a Cardano address to a Destination type for order transactions.\n * Extracts payment and stake credentials from the address.\n *\n * @param address - The Cardano address to convert\n * @param datum - Optional datum for the destination (defaults to \"NoDatum\")\n * @returns A Destination object suitable for order transactions\n */\nexport function addressToDestination(\n address: Core.Address,\n datum: Destination[\"datum\"] = \"NoDatum\",\n): Destination {\n const props = address.getProps();\n const paymentPart = props.paymentPart;\n\n if (!paymentPart) {\n throw new Error(\"Address must have a payment part\");\n }\n\n const paymentCredential =\n paymentPart.type === Core.CredentialType.KeyHash\n ? { VerificationKey: [paymentPart.hash] as [string] }\n : { Script: [paymentPart.hash] as [string] };\n\n let stakeCredential: Destination[\"address\"][\"stake_credential\"] = undefined;\n if (props.delegationPart) {\n const stakeCred =\n props.delegationPart.type === Core.CredentialType.KeyHash\n ? { VerificationKey: [props.delegationPart.hash] as [string] }\n : { Script: [props.delegationPart.hash] as [string] };\n stakeCredential = { Inline: [stakeCred] };\n }\n\n return {\n address: {\n payment_credential: paymentCredential,\n stake_credential: stakeCredential,\n },\n datum,\n };\n}\n\n/**\n * Convert a Destination-like value into a Cardano address.\n * Supports enterprise and base addresses. Pointer credentials are ignored.\n */\nexport function destinationToAddress(\n network: Core.NetworkId,\n destination: TDestinationLike,\n): Core.Address {\n const paymentCred = destination.address.payment_credential;\n const stakingCred = destination.address.stake_credential;\n let paymentCredCore: Core.Credential;\n let stakingCredCore: Core.Credential | undefined;\n\n if (\n stakingCred &&\n typeof stakingCred === \"object\" &&\n \"Inline\" in stakingCred\n ) {\n const inlineCredential = (\n stakingCred as { Inline: [TDestinationCredentialLike] }\n ).Inline[0];\n if (\"VerificationKey\" in inlineCredential) {\n stakingCredCore = Core.Credential.fromCore({\n type: Core.CredentialType.KeyHash,\n hash: inlineCredential.VerificationKey[0],\n });\n } else if (\"Script\" in inlineCredential) {\n stakingCredCore = Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash: inlineCredential.Script[0],\n });\n }\n }\n\n if (\"VerificationKey\" in paymentCred) {\n paymentCredCore = Core.Credential.fromCore({\n type: Core.CredentialType.KeyHash,\n hash: paymentCred.VerificationKey[0],\n });\n } else {\n paymentCredCore = Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash: paymentCred.Script[0],\n });\n }\n\n return addressFromCredentials(network, paymentCredCore, stakingCredCore);\n}\n\n/**\n * Add an output for a Destination, including script-payment addresses and\n * any datum metadata attached to the destination.\n *\n * Attaches the datum directly to a fresh TransactionOutput rather than\n * routing through Core.TransactionOutput.fromCore, because generated\n * TPlutusData values from @blaze-cardano/data are already Blaze\n * PlutusData instances and PlutusData.fromCore does not know how to\n * decode them (throws NotImplementedError).\n */\nexport function addDestinationOutput(\n tx: TxBuilder,\n network: Core.NetworkId,\n destination: TDestinationLike,\n value: Core.Value,\n): void {\n const output = new Core.TransactionOutput(\n destinationToAddress(network, destination),\n value,\n );\n const { datum } = destination;\n if (datum !== \"NoDatum\") {\n if (\"DatumHash\" in datum) {\n output.setDatum(Core.Datum.newDataHash(datum.DatumHash[0]));\n } else {\n output.setDatum(\n Core.Datum.newInlineData(datum.InlineDatum[0] as Core.PlutusData),\n );\n }\n }\n tx.addOutput(output);\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Cross-Version Cancel Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\nconst NORMALIZED_PROTOCOL_VERSION_MAP: Record = {\n v0: \"V0\",\n v0_1: \"V0_1\",\n v0_2: \"V0_2\",\n v0_3: \"V0_3\",\n v0_4: \"V0_4\",\n v1_0: \"V1_0\",\n v1_0_rc1: \"V1_0_Rc1\",\n v1_1_rc1: \"V1_1_Rc1\",\n};\n\n/**\n * Normalize externally-sourced protocol/order version strings into the SDK's\n * canonical `TProtocolVersion` values.\n */\nexport const normalizeProtocolVersion = (\n version: string | null | undefined,\n): TProtocolVersion | undefined => {\n if (!version) {\n return undefined;\n }\n\n return NORMALIZED_PROTOCOL_VERSION_MAP[version.trim().toLowerCase()];\n};\n\n/**\n * Alias for frontend order-version sources (GraphQL/backend strings).\n */\nexport const normalizeOrderVersion = normalizeProtocolVersion;\n\n/**\n * Extract the inline datum from a UTxO.\n */\nexport const getInlineDatumFromUtxo = (\n utxo: Core.TransactionUnspentOutput,\n label = \"Order UTXO\",\n): Core.PlutusData => {\n const datum = utxo.output().datum()?.asInlineData();\n if (!datum) {\n throw new Error(`${label} has no inline datum`);\n }\n return datum;\n};\n\n/**\n * Extract the payment script hash from an order UTxO's output address.\n */\nexport const getScriptHashFromOrderUtxo = (\n utxo: Core.TransactionUnspentOutput,\n): Core.Hash28ByteBase16 => {\n const paymentPart = utxo.output().address().getProps().paymentPart;\n\n if (!paymentPart) {\n throw new Error(\"Order UTXO address has no payment credential\");\n }\n\n if (paymentPart.type !== Core.CredentialType.ScriptHash) {\n throw new Error(\"Order UTXO payment credential is not a script hash\");\n }\n\n return paymentPart.hash;\n};\n\n/**\n * Resolve one reference input per unique script hash.\n */\nexport async function resolveReferenceInputsByScriptHash<\n P extends Provider,\n W extends Wallet,\n>(\n blaze: Blaze,\n scriptHashes: Iterable,\n cachedInputs?:\n | ReadonlyMap\n | Partial>,\n address?: Core.Address,\n): Promise> {\n const referenceInputs = new Map<\n Core.Hash28ByteBase16,\n Core.TransactionUnspentOutput\n >();\n\n for (const hash of new Set(scriptHashes)) {\n const cachedInput =\n cachedInputs instanceof Map\n ? cachedInputs.get(hash)\n : (\n cachedInputs as\n | Partial>\n | undefined\n )?.[hash as string];\n\n if (cachedInput) {\n referenceInputs.set(hash, cachedInput);\n continue;\n }\n\n const refInput =\n (address && (await resolveScriptRefAtAddress(blaze, hash, address))) ||\n (await blaze.provider.resolveScriptRef(hash));\n\n if (!refInput) {\n throw new Error(\n `Missing order reference script input for hash ${hash}. Make sure the order script is deployed.`,\n );\n }\n\n referenceInputs.set(hash, refInput);\n }\n\n return referenceInputs;\n}\n\n/**\n * Resolve the order reference inputs needed to spend a batch of order UTxOs.\n */\nexport async function resolveOrderReferenceInputs<\n P extends Provider,\n W extends Wallet,\n>(\n blaze: Blaze,\n orderUtxos: Iterable,\n cachedInputs?:\n | ReadonlyMap\n | Partial>,\n address?: Core.Address,\n): Promise> {\n const scriptHashes: Core.Hash28ByteBase16[] = [];\n\n for (const utxo of orderUtxos) {\n scriptHashes.push(getScriptHashFromOrderUtxo(utxo));\n }\n\n return resolveReferenceInputsByScriptHash(\n blaze,\n scriptHashes,\n cachedInputs,\n address,\n );\n}\n\n/**\n * Strict owner-only parser for order datums used by cross-version cancel.\n *\n * All currently-supported order datum variants encode as:\n * Constr(0, [owner, destination, action, data]).\n */\nexport const parseOrderOwnerGenericFromDatum = (\n datum: Core.PlutusData,\n): TMultisigScript => {\n const constr = datum.asConstrPlutusData();\n if (!constr) {\n throw new Error(\"Order datum is not a constructor PlutusData\");\n }\n\n if (constr.getAlternative() !== 0n) {\n throw new Error(\n `Order datum has unexpected constructor index ${constr.getAlternative().toString()} (expected 0)`,\n );\n }\n\n const fields = constr.getData();\n if (fields.getLength() < 4) {\n throw new Error(\n `Order datum has ${fields.getLength().toString()} fields (expected at least 4)`,\n );\n }\n\n return parse(V0_3Types.MultisigScript, fields.get(0)) as TMultisigScript;\n};\n\n/**\n * Strict owner-only parser for cancel flows.\n */\nexport const parseOrderOwnerGeneric = (\n utxo: Core.TransactionUnspentOutput,\n): TMultisigScript => {\n return parseOrderOwnerGenericFromDatum(getInlineDatumFromUtxo(utxo));\n};\n"],"mappings":"AAAA,SAASA,sBAAsB,QAAQ,qBAAqB;AAC5D,SAASC,KAAK,QAAsB,qBAAqB;AAEzD,SACEC,IAAI,QAKC,oBAAoB;AAE3B,OAAO,KAAKC,IAAI,MAAM,qBAAqB;AAK3C,SAASC,0BAA0B,QAAQ,aAAa;AACxD,SAASC,SAAS,QAAQ,gCAAgC;AAkB1D;AACA;AACA;AACA,OAAO,SAASC,uBAAuBA,CACrCC,MAAmB,EACnBC,OAAuB,EACH;EACpB,MAAMC,UAAU,GAAGC,oBAAoB,CAACH,MAAM,CAAC;EAC/C,OAAOL,IAAI,CAACS,aAAa,CAACC,cAAc,CAACH,UAAU,CAACI,MAAM,CAAC,CAAC,EAAEL,OAAO,CAAC;AACxE;;AAEA;AACA;AACA;AACA,OAAO,SAASE,oBAAoBA,CAACH,MAAmB,EAAmB;EACzE,OAAOO,wBAAwB,CAACP,MAAM,CAACQ,IAAI,CAAC,CAAC,CAAC;AAChD;;AAEA;AACA;AACA;AACA,OAAO,SAASD,wBAAwBA,CACtCE,UAAiC,EAChB;EACjB,OAAOd,IAAI,CAACe,UAAU,CAACC,QAAQ,CAAC;IAC9BC,IAAI,EAAEjB,IAAI,CAACkB,cAAc,CAACC,UAAU;IACpCN,IAAI,EAAEC;EACR,CAAC,CAAC;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASM,eAAeA,CAC7BC,EAAa,EACbC,OAAqB,EACrBC,KAAiB,EACjBC,KAAsB,EACX;EACX,OAAOC,eAAe,CAACJ,EAAE,EAAEC,OAAO,EAAEC,KAAK,EAAEC,KAAK,CAAC;AACnD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAeA,CAC7BJ,EAAa,EACbC,OAAqB,EACrBC,KAAiB,EACjBC,KAAuB,EACZ;EACX,MAAME,MAAM,GAAG,IAAI1B,IAAI,CAAC2B,iBAAiB,CAACL,OAAO,EAAEC,KAAK,CAAC;EACzD,IAAIC,KAAK,EAAE;IACTE,MAAM,CAACE,QAAQ,CAAC5B,IAAI,CAAC6B,KAAK,CAACC,aAAa,CAACN,KAAK,CAAC,CAAC;EAClD;EACAH,EAAE,CAACU,SAAS,CAACL,MAAM,CAAC;EACpB,OAAOL,EAAE;AACX;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMW,4BAA4B,GAChC,+GAA+G;AAEjH,SAASC,gCAAgCA,CAACC,KAAc,EAAW;EACjE,OACEA,KAAK,YAAYC,KAAK,IAAIH,4BAA4B,CAACI,IAAI,CAACF,KAAK,CAACG,OAAO,CAAC;AAE9E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAeC,qBAAqBA,CAClCC,KAAkB,EAClBjB,OAAqB,EACqB;EAC1C,MAAMkB,OAAO,GAAG,MAAMD,KAAK,CAACE,QAAQ,CAACC,iBAAiB,CAACpB,OAAO,CAAC;EAC/D,IAAIkB,OAAO,CAACG,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE;EACnC,OAAOJ,KAAK,CAACE,QAAQ,CAACG,qBAAqB,CACzCJ,OAAO,CAACK,GAAG,CAAEC,IAAI,IAAKA,IAAI,CAACC,KAAK,CAAC,CAAC,CACpC,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASC,cAAcA,CACrBT,KAAkB,EAClBjB,OAAqB,EACJ;EACjB,IAAI2B,OAA6D;EACjE,OAAO,MAAOA,OAAO,KAAKX,qBAAqB,CAACC,KAAK,EAAEjB,OAAO,CAAE;AAClE;;AAEA;AACA;AACA;AACA;AACA;AACA,eAAe4B,yBAAyBA,CACtCX,KAAkB,EAClB1B,IAA2B,EAC3BS,OAAqB,EACrB6B,OAAwB,GAAGA,CAAA,KAAMb,qBAAqB,CAACC,KAAK,EAAEjB,OAAO,CAAC,EAClB;EACpD,IAAI;IACF,MAAM8B,QAAQ,GAAG,MAAMb,KAAK,CAACE,QAAQ,CAACY,gBAAgB,CAACxC,IAAI,EAAES,OAAO,CAAC;IACrE,IAAI8B,QAAQ,EAAE,OAAOA,QAAQ;EAC/B,CAAC,CAAC,OAAOlB,KAAK,EAAE;IACd,IAAI,CAACD,gCAAgC,CAACC,KAAK,CAAC,EAAE,MAAMA,KAAK;IACzD,OAAOoB,SAAS;EAClB;EAEA,MAAMC,QAAQ,GAAG,MAAMJ,OAAO,CAAC,CAAC;EAChC,OAAOI,QAAQ,CAACC,IAAI,CAAEV,IAAI,IAAKA,IAAI,CAACpB,MAAM,CAAC,CAAC,CAAC+B,SAAS,CAAC,CAAC,EAAE5C,IAAI,CAAC,CAAC,KAAKA,IAAI,CAAC;AAC5E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAe6C,YAAYA,CAChCnB,KAAkB,EAClBlC,MAAmB,EACnBiB,OAAsB,EACF;EACpB,MAAMqC,QAAQ,GAAGrC,OAAO,GACpB,MAAM4B,yBAAyB,CAACX,KAAK,EAAElC,MAAM,CAACQ,IAAI,CAAC,CAAC,EAAES,OAAO,CAAC,GAC9D,MAAMiB,KAAK,CAACE,QAAQ,CAACY,gBAAgB,CAAChD,MAAM,CAACQ,IAAI,CAAC,CAAC,CAAC;EACxD,IAAI8C,QAAQ,EAAE;IACZ,MAAM,IAAIzD,0BAA0B,CAACG,MAAM,CAACQ,IAAI,CAAC,CAAC,EAAE8C,QAAQ,CAAC;EAC/D;EACA;EACA,MAAMC,QAAQ,GAAGrB,KAAK,CAACsB,cAAc,CAAC,CAAC,CAACH,YAAY,CAACrD,MAAM,EAAEiB,OAAO,CAAC;EACrE,OAAOsC,QAAQ;AACjB;AAEA,MAAME,mBAAmB,GAAG,CAAC;AAC7B,MAAMC,qBAAqB,GAAG,GAAG;AAEjC,MAAMC,KAAK,GAAIC,EAAU,IACvB,IAAIC,OAAO,CAAEC,OAAO,IAAKC,UAAU,CAACD,OAAO,EAAEF,EAAE,CAAC,CAAC;;AAEnD;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeI,8BAA8BA,CAClD5B,QAAkB,EAClB6B,OAAqB,EAC+B;EACpD,IAAIC,SAAkB;EACtB,KAAK,IAAIC,OAAO,GAAG,CAAC,EAAEA,OAAO,IAAIV,mBAAmB,EAAEU,OAAO,EAAE,EAAE;IAC/D,IAAI;MACF,MAAM1B,IAAI,GAAG,MAAML,QAAQ,CAACgC,qBAAqB,CAACH,OAAO,CAAC;MAC1D,IAAIxB,IAAI,EAAE,OAAOA,IAAI;MACrByB,SAAS,GAAGjB,SAAS;IACvB,CAAC,CAAC,OAAOpB,KAAK,EAAE;MACdqC,SAAS,GAAGrC,KAAK;IACnB;IACA,IAAIsC,OAAO,GAAGV,mBAAmB,EAAE;MACjC,MAAME,KAAK,CAACD,qBAAqB,GAAGS,OAAO,CAAC;IAC9C;EACF;EACA,IAAID,SAAS,EAAE,MAAMA,SAAS;EAC9B,OAAOjB,SAAS;AAClB;;AAEA;AACA;AACA;AACA;AACA,SAASoB,eAAeA,CACtB5B,IAAmC,EACnCtB,KAAsB,EACS;EAC/B,MAAME,MAAM,GAAGoB,IAAI,CAACpB,MAAM,CAAC,CAAC;EAC5B,MAAMiD,QAAQ,GAAG,IAAI3E,IAAI,CAAC2B,iBAAiB,CACzCD,MAAM,CAACJ,OAAO,CAAC,CAAC,EAChBI,MAAM,CAACkD,MAAM,CAAC,CAChB,CAAC;EACDD,QAAQ,CAAC/C,QAAQ,CAAC5B,IAAI,CAAC6B,KAAK,CAACC,aAAa,CAACN,KAAK,CAAC,CAAC;EAClD,MAAMiC,SAAS,GAAG/B,MAAM,CAAC+B,SAAS,CAAC,CAAC;EACpC,IAAIA,SAAS,EAAE;IACbkB,QAAQ,CAACE,YAAY,CAACpB,SAAS,CAAC;EAClC;EACA,OAAO,IAAIzD,IAAI,CAAC8E,wBAAwB,CAAChC,IAAI,CAACC,KAAK,CAAC,CAAC,EAAE4B,QAAQ,CAAC;AAClE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeI,kBAAkBA,CACtCtC,QAAkB,EAClBuC,UAAwB,EAIvB;EACD,MAAMC,IAAI,GAAG,MAAMZ,8BAA8B,CAAC5B,QAAQ,EAAEuC,UAAU,CAAC;EACvE,IAAI,CAACC,IAAI,EAAE;IACT,MAAM,IAAI9C,KAAK,CAAC,2BAA2B6C,UAAU,EAAE,CAAC;EAC1D;EAEA,MAAME,MAAM,GAAGD,IAAI,CAACvD,MAAM,CAAC,CAAC,CAACF,KAAK,CAAC,CAAC,EAAE2D,YAAY,CAAC,CAAC;EACpD,IAAID,MAAM,EAAE;IACV,OAAO;MAAEpC,IAAI,EAAEmC,IAAI;MAAEzD,KAAK,EAAE0D;IAAO,CAAC;EACtC;EAEA,MAAME,SAAS,GAAGH,IAAI,CAACvD,MAAM,CAAC,CAAC,CAACF,KAAK,CAAC,CAAC,EAAE6D,UAAU,CAAC,CAAC;EACrD,IAAI,CAACD,SAAS,EAAE;IACd,MAAM,IAAIjD,KAAK,CAAC,oCAAoC6C,UAAU,EAAE,CAAC;EACnE;EAEA,MAAM5B,QAAQ,GAAG,MAAMX,QAAQ,CAAC6C,YAAY,CAACF,SAAS,CAAC;EACvD,MAAMG,YAAY,GAAGvF,IAAI,CAACwF,WAAW,CAACpC,QAAQ,CAACqC,MAAM,CAAC,CAAC,CAAC;EACxD,IAAIF,YAAY,KAAKH,SAAS,EAAE;IAC9B,MAAM,IAAIjD,KAAK,CACb,oCAAoC6C,UAAU,kCAAkC,GAC9E,+BAA+BO,YAAY,kBAAkBH,SAAS,EAC1E,CAAC;EACH;EAEA,MAAMrC,KAAK,GAAGkC,IAAI,CAAClC,KAAK,CAAC,CAAC;EAC1B2C,OAAO,CAACC,IAAI,CACV,0BAA0BX,UAAU,YAAYjC,KAAK,CAAC6C,aAAa,CAAC,CAAC,IAAI7C,KAAK,CAAC8C,KAAK,CAAC,CAAC,GAAG,GACvF,uBAAuBT,SAAS,wEACpC,CAAC;EACD,OAAO;IAAEtC,IAAI,EAAE4B,eAAe,CAACO,IAAI,EAAE7B,QAAQ,CAAC;IAAE5B,KAAK,EAAE4B;EAAS,CAAC;AACnE;;AAEA;AACA;AACA;AACA;AACA,OAAO,eAAe0C,eAAeA,CAKnCvD,KAAkB,EAClByC,UAAwB,EACxBe,WAAqB,EAKpB;EACD,MAAM;IAAEjD,IAAI;IAAEtB;EAAM,CAAC,GAAG,MAAMuD,kBAAkB,CAACxC,KAAK,CAACE,QAAQ,EAAEuC,UAAU,CAAC;EAE5E,IAAIe,WAAW,EAAE;IACf,MAAMC,WAAW,GAAGjG,KAAK,CAACgG,WAAW,EAAEvE,KAAK,CAAM;IAClD,OAAO;MAAEsB,IAAI;MAAEtB,KAAK;MAAEwE;IAAY,CAAC;EACrC;EAEA,OAAO;IAAElD,IAAI;IAAEtB,KAAK;IAAEwE,WAAW,EAAE1C;EAAe,CAAC;AACrD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAe2C,kBAAkBA,CACtC1D,KAAkB,EAClB2D,YAAmD,EACnDC,YAAqE,EACrE7E,OAAsB,EACkC;EACxD,MAAM8E,eAA8D,GAAG,CAAC,CAAC;EACzE,MAAMjD,OAAO,GAAG7B,OAAO,GAAG0B,cAAc,CAACT,KAAK,EAAEjB,OAAO,CAAC,GAAGgC,SAAS;EAEpE,KAAK,MAAM,CAAC+C,IAAI,EAAExF,IAAI,CAAC,IAAIyF,MAAM,CAACC,OAAO,CAACL,YAAY,CAAC,EAAE;IACvD,IAAIC,YAAY,GAAGE,IAAI,CAAC,EAAE;MACxBD,eAAe,CAACC,IAAI,CAAC,GAAGF,YAAY,CAACE,IAAI,CAAC;MAC1C;IACF;IAEA,MAAM1C,QAAQ,GACXrC,OAAO,KACL,MAAM4B,yBAAyB,CAACX,KAAK,EAAE1B,IAAI,EAAES,OAAO,EAAE6B,OAAO,CAAC,CAAC,KACjE,MAAMZ,KAAK,CAACE,QAAQ,CAACY,gBAAgB,CAACxC,IAAI,CAAC,CAAC;IAC/C,IAAI,CAAC8C,QAAQ,EAAE;MACb,MAAM,IAAIxB,KAAK,CACb,gCAAgCkE,IAAI,YAAYxF,IAAI,8BACtD,CAAC;IACH;IACAuF,eAAe,CAACC,IAAI,CAAC,GAAG1C,QAAQ;EAClC;EAEA,OAAOyC,eAAe;AACxB;;AAEA;AACA;AACA;AACA,OAAO,MAAMI,uCAAuC,GAClDC,QAAyB,IACZ;EACb,MAAMC,MAAgB,GAAG,EAAE;EAE3B,IAAI,WAAW,IAAID,QAAQ,EAAE;IAC3BC,MAAM,CAACC,IAAI,CAACF,QAAQ,CAACG,SAAS,CAACC,QAAQ,CAAC;EAC1C,CAAC,MAAM,IAAI,SAAS,IAAIJ,QAAQ,EAAE;IAChCA,QAAQ,CAACK,OAAO,CAACC,OAAO,CACrBlE,GAAG,CAAEmE,CAAC,IAAKR,uCAAuC,CAACQ,CAAC,CAAC,CAAC,CACtDC,IAAI,CAAC,CAAC,CACNC,OAAO,CAAEF,CAAC,IAAK;MACdN,MAAM,CAACC,IAAI,CAACK,CAAC,CAAC;IAChB,CAAC,CAAC;EACN,CAAC,MAAM,IAAI,OAAO,IAAIP,QAAQ,EAAE;IAC9BA,QAAQ,CAACU,KAAK,CAACJ,OAAO,CACnBlE,GAAG,CAAEmE,CAAC,IAAKR,uCAAuC,CAACQ,CAAC,CAAC,CAAC,CACtDC,IAAI,CAAC,CAAC,CACNC,OAAO,CAAEF,CAAC,IAAK;MACdN,MAAM,CAACC,IAAI,CAACK,CAAC,CAAC;IAChB,CAAC,CAAC;EACN,CAAC,MAAM,IAAI,OAAO,IAAIP,QAAQ,EAAE;IAC9BA,QAAQ,CAACW,KAAK,CAACL,OAAO,CACnBlE,GAAG,CAAEmE,CAAC,IAAKR,uCAAuC,CAACQ,CAAC,CAAC,CAAC,CACtDC,IAAI,CAAC,CAAC,CACNC,OAAO,CAAEF,CAAC,IAAK;MACdN,MAAM,CAACC,IAAI,CAACK,CAAC,CAAC;IAChB,CAAC,CAAC;EACN;EAEA,OAAO,CAAC,GAAG,IAAIK,GAAG,CAACX,MAAM,CAAC,CAACY,MAAM,CAAC,CAAC,CAAC;AACtC,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,oCAAoC,GAC/Cd,QAAyB,IACZ;EACb,MAAMC,MAAgB,GAAG,EAAE;EAE3B,IAAI,QAAQ,IAAID,QAAQ,EAAE;IACxBC,MAAM,CAACC,IAAI,CAACF,QAAQ,CAACe,MAAM,CAACC,WAAW,CAAC;EAC1C,CAAC,MAAM,IAAI,SAAS,IAAIhB,QAAQ,EAAE;IAChCA,QAAQ,CAACK,OAAO,CAACC,OAAO,CACrBlE,GAAG,CAAEmE,CAAC,IAAKO,oCAAoC,CAACP,CAAC,CAAC,CAAC,CACnDC,IAAI,CAAC,CAAC,CACNC,OAAO,CAAEF,CAAC,IAAK;MACdN,MAAM,CAACC,IAAI,CAACK,CAAC,CAAC;IAChB,CAAC,CAAC;EACN,CAAC,MAAM,IAAI,OAAO,IAAIP,QAAQ,EAAE;IAC9BA,QAAQ,CAACU,KAAK,CAACJ,OAAO,CACnBlE,GAAG,CAAEmE,CAAC,IAAKO,oCAAoC,CAACP,CAAC,CAAC,CAAC,CACnDC,IAAI,CAAC,CAAC,CACNC,OAAO,CAAEF,CAAC,IAAK;MACdN,MAAM,CAACC,IAAI,CAACK,CAAC,CAAC;IAChB,CAAC,CAAC;EACN,CAAC,MAAM,IAAI,OAAO,IAAIP,QAAQ,EAAE;IAC9BA,QAAQ,CAACW,KAAK,CAACL,OAAO,CACnBlE,GAAG,CAAEmE,CAAC,IAAKO,oCAAoC,CAACP,CAAC,CAAC,CAAC,CACnDC,IAAI,CAAC,CAAC,CACNC,OAAO,CAAEF,CAAC,IAAK;MACdN,MAAM,CAACC,IAAI,CAACK,CAAC,CAAC;IAChB,CAAC,CAAC;EACN;EAEA,OAAO,CAAC,GAAG,IAAIK,GAAG,CAACX,MAAM,CAAC,CAACY,MAAM,CAAC,CAAC,CAAC;AACtC,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMI,iCAAiC,GAC5CjB,QAAyB,IACZ;EACb,MAAMkB,SAAS,GAAGnB,uCAAuC,CAACC,QAAQ,CAAC;EACnE,MAAMP,YAAY,GAAGqB,oCAAoC,CAACd,QAAQ,CAAC;EACnE,OAAO,CAAC,GAAG,IAAIY,GAAG,CAAC,CAAC,GAAGM,SAAS,EAAE,GAAGzB,YAAY,CAAC,CAAC,CAACoB,MAAM,CAAC,CAAC,CAAC;AAC/D,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMM,eAAe,GAC1BC,WAAoC,IACR;EAC5B,OAAO,CAAC,GAAGA,WAAW,CAAC,CAACC,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAK;IACrC,MAAMC,OAAO,GAAGF,CAAC,CAACnC,aAAa,CAAC,CAAC,CAACsC,QAAQ,CAAC,CAAC;IAC5C,MAAMC,OAAO,GAAGH,CAAC,CAACpC,aAAa,CAAC,CAAC,CAACsC,QAAQ,CAAC,CAAC;IAC5C,IAAID,OAAO,GAAGE,OAAO,EAAE,OAAO,CAAC,CAAC;IAChC,IAAIF,OAAO,GAAGE,OAAO,EAAE,OAAO,CAAC;IAC/B,MAAMC,MAAM,GAAGL,CAAC,CAAClC,KAAK,CAAC,CAAC;IACxB,MAAMwC,MAAM,GAAGL,CAAC,CAACnC,KAAK,CAAC,CAAC;IACxB,OAAOuC,MAAM,GAAGC,MAAM,GAAG,CAAC,CAAC,GAAGD,MAAM,GAAGC,MAAM,GAAG,CAAC,GAAG,CAAC;EACvD,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,kBAAkB,GAC7BxF,IAA2B,KACN;EACrByF,IAAI,EAAE,CACJ;IACEC,cAAc,EAAE1F,IAAI,CAAC8C,aAAa,CAAC,CAAC,CAACsC,QAAQ,CAAC,CAAC;IAC/CO,YAAY,EAAE3F,IAAI,CAAC+C,KAAK,CAAC;EAC3B,CAAC;AAEL,CAAC,CAAC;;AAEF;AACA;AACA;AACA;AACA,OAAO,MAAM6C,mBAAmB,GAC9B5F,IAAmC,IACxB;EACX,MAAMC,KAAK,GAAGD,IAAI,CAACC,KAAK,CAAC,CAAC;EAC1B,MAAM4F,IAAI,GAAG5F,KAAK,CAAC6C,aAAa,CAAC,CAAC,CAACsC,QAAQ,CAAC,CAAC;EAC7C,MAAMU,WAAW,GAAG7F,KAAK,CAAC8C,KAAK,CAAC,CAAC;EACjC,MAAMgD,UAAU,GAAG,IAAI7I,IAAI,CAAC8I,UAAU,CAAC,CAAC;EACxCD,UAAU,CAACE,GAAG,CAAC/I,IAAI,CAACgJ,UAAU,CAACC,QAAQ,CAACC,MAAM,CAACC,IAAI,CAACR,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;EAClEE,UAAU,CAACE,GAAG,CAAC/I,IAAI,CAACgJ,UAAU,CAACI,UAAU,CAACR,WAAW,CAAC,CAAC;EACvD,MAAMS,aAAa,GAAGrJ,IAAI,CAACgJ,UAAU,CAACM,mBAAmB,CACvD,IAAItJ,IAAI,CAACuJ,gBAAgB,CAAC,EAAE,EAAEV,UAAU,CAC1C,CAAC;EACD,OAAOQ,aAAa,CAAC5D,MAAM,CAAC,CAAC;AAC/B,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;;AAaA,OAAO,MAAM+D,yBAAyB,GAAG,MACvCC,cAAkC,IAU9B;EACJ;EACA;EACA,MAAM;IAAEC,SAAS,EAAEC,aAAa;IAAEC;EAAU,CAAC,GAAGC,kBAAkB,CAChEJ,cAAc,CAACG,SAAS,CAAC1B,QAAQ,CAAC,CACpC,CAAC;EACD;EACA,MAAM4B,SAAS,GAAGC,2BAA2B,CAACN,cAAc,CAACO,GAAG,CAAC9B,QAAQ,CAAC,CAAC,CAAC;EAC5E,OAAO;IACL4B,SAAS;IACTG,SAAS,EAAE;MACTC,OAAO,EAAE;QACPR,SAAS,EAAEC,aAAa;QACxBQ,WAAW,EAAE,EAAE,CAAE;MACnB,CAAC;MACDP;IACF;EACF,CAAC;AACH,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMQ,yBAAyB,GAAG,MAAAA,CAIvC7H,KAAkB,EAClB8H,WAAmB,KACQ;EAC3B,MAAM/I,OAAO,GAAG,MAAMiB,KAAK,CAAC+H,MAAM,CAACC,gBAAgB,CAAC,CAAC;EACrD,MAAMd,cAAc,GAAG,MAAMlH,KAAK,CAAC+H,MAAM,CAACE,QAAQ,CAAClJ,OAAO,EAAE+I,WAAW,CAAC;EACxE,MAAM;IAAEP,SAAS;IAAEG;EAAU,CAAC,GAC5B,MAAMT,yBAAyB,CAACC,cAAc,CAAC;EACjD,OAAO,CAACK,SAAS,EAAEG,SAAS,CAAC;AAC/B,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMQ,oBAAoB,GAAGA,CAClCC,KAAsC,EACtCC,OAAe,EACfC,UAAyB,KAC0B;EACnD,IAAIA,UAAU,CAACjI,MAAM,KAAK,CAAC,EAAE;IAC3B,MAAM,IAAIR,KAAK,CAAC,oCAAoC,CAAC;EACvD;EAEA,OAAO;IACLuI,KAAK;IACLC,OAAO;IACPC,UAAU,EAAEA;EACd,CAAC;AACH,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMb,2BAA2B,GAAIc,UAAkB,IAAa;EAClE;EACA;EACA;EACA,MAAMC,QAAQ,GAAG5B,MAAM,CAACC,IAAI,CAAC0B,UAAU,EAAE,KAAK,CAAC;;EAE/C;EACA,IAAIE,WAAW,GAAG,CAAC,CAAC;EACpB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,QAAQ,CAACnI,MAAM,GAAG,EAAE,EAAEqI,CAAC,EAAE,EAAE;IAC7C,IACEF,QAAQ,CAACE,CAAC,CAAC,KAAK,IAAI,IACpBF,QAAQ,CAACE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,IACxBF,QAAQ,CAACE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EACxB;MACAD,WAAW,GAAGC,CAAC,GAAG,CAAC,CAAC,CAAC;MACrB;IACF;EACF;EAEA,IAAID,WAAW,KAAK,CAAC,CAAC,EAAE;IACtB,MAAM,IAAI5I,KAAK,CAAC,iDAAiD,CAAC;EACpE;EAEA,MAAM8I,MAAM,GAAGH,QAAQ,CAACI,KAAK,CAACH,WAAW,EAAEA,WAAW,GAAG,EAAE,CAAC;EAC5D,IAAIE,MAAM,CAACtI,MAAM,KAAK,EAAE,EAAE;IACxB,MAAM,IAAIR,KAAK,CAAC,8BAA8B8I,MAAM,CAACtI,MAAM,EAAE,CAAC;EAChE;EAEA,OAAOsI,MAAM,CAAC/C,QAAQ,CAAC,KAAK,CAAC;AAC/B,CAAC;;AAED;AACA;AACA;;AAEA;AACA,MAAMiD,gBAAgB,GAAG,CAAC;AAC1B,MAAMC,eAAe,GAAG,CAAC;AACzB,MAAMC,gBAAgB,GAAG,CAAC;AAC1B,MAAMC,cAAc,GAAG,CAAC;AACxB,MAAMC,cAAc,GAAG,CAAC;AACxB,MAAMC,iBAAiB,GAAG,CAAC,CAAC,CAAC;;AAE7B,MAAMC,0BAA0B,GAAG,EAAE;AACrC,MAAMC,UAAU,GAAG,IAAI,CAAC,CAAC;AACzB,MAAMC,mBAAmB,GAAG,EAAE,CAAC,CAAC;AAChC,MAAMC,gBAAgB,GAAG,EAAE,CAAC,CAAC;;AAE7B;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,cAAc,GAAGA,CACrBC,KAAiB,EACjBC,MAAc,KAMX;EACH,MAAMC,OAAO,GAAGF,KAAK,CAACC,MAAM,CAAC;EAC7B,IAAIC,OAAO,KAAK1I,SAAS,EAAE;IACzB,MAAM,IAAInB,KAAK,CAAC,oCAAoC,CAAC;EACvD;EACA,MAAM8J,KAAK,GAAGD,OAAO,IAAI,CAAC;EAC1B,MAAME,UAAU,GAAGF,OAAO,GAAG,IAAI;EAEjC,IAAIE,UAAU,GAAG,EAAE,EAAE;IACnB,OAAO;MACLD,KAAK;MACLE,QAAQ,EAAED,UAAU;MACpBE,UAAU,EAAE,KAAK;MACjBC,aAAa,EAAEN,MAAM,GAAG;IAC1B,CAAC;EACH;EAEA,IAAIG,UAAU,KAAKT,0BAA0B,EAAE;IAC7C;IACA;IACA,IAAIQ,KAAK,GAAGd,gBAAgB,IAAIc,KAAK,GAAGX,cAAc,EAAE;MACtD,MAAM,IAAInJ,KAAK,CACb,kDAAkD8J,KAAK,EACzD,CAAC;IACH;IACA,OAAO;MAAEA,KAAK;MAAEE,QAAQ,EAAE,CAAC;MAAEC,UAAU,EAAE,IAAI;MAAEC,aAAa,EAAEN,MAAM,GAAG;IAAE,CAAC;EAC5E;;EAEA;EACA,IAAIG,UAAU,GAAG,EAAE,EAAE;IACnB,MAAM,IAAI/J,KAAK,CAAC,qCAAqC+J,UAAU,EAAE,CAAC;EACpE;EACA,MAAMI,WAAW,GAAG,CAAC,IAAKJ,UAAU,GAAG,EAAG;EAC1C,IAAIC,QAAQ,GAAG,CAAC;EAChB,KAAK,IAAInB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGsB,WAAW,EAAEtB,CAAC,EAAE,EAAE;IACpC,MAAMhD,CAAC,GAAG8D,KAAK,CAACC,MAAM,GAAG,CAAC,GAAGf,CAAC,CAAC;IAC/B,IAAIhD,CAAC,KAAK1E,SAAS,EAAE;MACnB,MAAM,IAAInB,KAAK,CAAC,2CAA2C,CAAC;IAC9D;IACAgK,QAAQ,GAAGA,QAAQ,GAAG,GAAG,GAAGnE,CAAC;EAC/B;EACA,OAAO;IACLiE,KAAK;IACLE,QAAQ;IACRC,UAAU,EAAE,KAAK;IACjBC,aAAa,EAAEN,MAAM,GAAG,CAAC,GAAGO;EAC9B,CAAC;AACH,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMC,0BAA0B,GAAGA,CACjCT,KAAiB,EACjBG,KAAa,EACbF,MAAc,KACkC;EAChD,MAAMS,MAAoB,GAAG,EAAE;EAC/B,IAAIC,IAAI,GAAGV,MAAM;EACjB,OAAOD,KAAK,CAACW,IAAI,CAAC,KAAKf,UAAU,EAAE;IACjC,MAAMgB,KAAK,GAAGb,cAAc,CAACC,KAAK,EAAEW,IAAI,CAAC;IACzC,IAAIC,KAAK,CAACT,KAAK,KAAKA,KAAK,IAAIS,KAAK,CAACN,UAAU,EAAE;MAC7C,MAAM,IAAIjK,KAAK,CAAC,mDAAmD,CAAC;IACtE;IACA,MAAMwK,GAAG,GAAGD,KAAK,CAACL,aAAa,GAAGK,KAAK,CAACP,QAAQ;IAChD,IAAIQ,GAAG,GAAGb,KAAK,CAACnJ,MAAM,EAAE;MACtB,MAAM,IAAIR,KAAK,CAAC,oCAAoC,CAAC;IACvD;IACAqK,MAAM,CAAC7F,IAAI,CAACmF,KAAK,CAACZ,KAAK,CAACwB,KAAK,CAACL,aAAa,EAAEM,GAAG,CAAC,CAAC;IAClDF,IAAI,GAAGE,GAAG;EACZ;EACA,OAAO;IAAEC,OAAO,EAAE1D,MAAM,CAAC2D,MAAM,CAACL,MAAM,CAAC;IAAEM,UAAU,EAAEL,IAAI,GAAG;EAAE,CAAC;AACjE,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,MAAMM,YAAY,GAAGA,CAACjB,KAAiB,EAAEC,MAAc,KAAa;EAClE,MAAM;IAAEE,KAAK;IAAEE,QAAQ;IAAEC,UAAU;IAAEC;EAAc,CAAC,GAAGR,cAAc,CACnEC,KAAK,EACLC,MACF,CAAC;EACD,IAAIK,UAAU,EAAE;IACd,IAAIH,KAAK,KAAKd,gBAAgB,IAAIc,KAAK,KAAKb,eAAe,EAAE;MAC3D,OAAOmB,0BAA0B,CAACT,KAAK,EAAEG,KAAK,EAAEI,aAAa,CAAC,CAACS,UAAU;IAC3E;IACA;IACA,IAAIL,IAAI,GAAGJ,aAAa;IACxB,OAAOP,KAAK,CAACW,IAAI,CAAC,KAAKf,UAAU,EAAE;MACjC,IAAII,KAAK,CAACW,IAAI,CAAC,KAAKnJ,SAAS,EAAE;QAC7B,MAAM,IAAInB,KAAK,CAAC,oCAAoC,CAAC;MACvD;MACAsK,IAAI,GAAGM,YAAY,CAACjB,KAAK,EAAEW,IAAI,CAAC,CAAC,CAAC;MAClC,IAAIR,KAAK,KAAKX,cAAc,EAAE;QAC5BmB,IAAI,GAAGM,YAAY,CAACjB,KAAK,EAAEW,IAAI,CAAC,CAAC,CAAC;MACpC;IACF;IACA,OAAOA,IAAI,GAAG,CAAC;EACjB;EACA,QAAQR,KAAK;IACX,KAAK,CAAC,CAAC,CAAC;IACR,KAAK,CAAC,CAAC,CAAC;IACR,KAAKT,iBAAiB;MAAE;MACtB;MACA,OAAOa,aAAa;IACtB,KAAKlB,gBAAgB;IACrB,KAAKC,eAAe;MAAE;QACpB,MAAMuB,GAAG,GAAGN,aAAa,GAAGF,QAAQ;QACpC,IAAIQ,GAAG,GAAGb,KAAK,CAACnJ,MAAM,EAAE;UACtB,MAAM,IAAIR,KAAK,CAAC,oCAAoC,CAAC;QACvD;QACA,OAAOwK,GAAG;MACZ;IACA,KAAKtB,gBAAgB;MAAE;QACrB,IAAIoB,IAAI,GAAGJ,aAAa;QACxB,KAAK,IAAIrB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGmB,QAAQ,EAAEnB,CAAC,EAAE,EAAE;UACjCyB,IAAI,GAAGM,YAAY,CAACjB,KAAK,EAAEW,IAAI,CAAC;QAClC;QACA,OAAOA,IAAI;MACb;IACA,KAAKnB,cAAc;MAAE;QACnB,IAAImB,IAAI,GAAGJ,aAAa;QACxB,KAAK,IAAIrB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGmB,QAAQ,EAAEnB,CAAC,EAAE,EAAE;UACjCyB,IAAI,GAAGM,YAAY,CAACjB,KAAK,EAAEW,IAAI,CAAC,CAAC,CAAC;UAClCA,IAAI,GAAGM,YAAY,CAACjB,KAAK,EAAEW,IAAI,CAAC,CAAC,CAAC;QACpC;QACA,OAAOA,IAAI;MACb;IACA,KAAKlB,cAAc;MACjB,OAAOwB,YAAY,CAACjB,KAAK,EAAEO,aAAa,CAAC;IAAE;IAC7C;MACE,MAAM,IAAIlK,KAAK,CAAC,8CAA8C8J,KAAK,EAAE,CAAC;EAC1E;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,MAAMe,kBAAkB,GAAGA,CACzBlB,KAAiB,EACjBC,MAAc,KAC0B;EACxC,MAAM;IAAEE,KAAK;IAAEE,QAAQ;IAAEC,UAAU;IAAEC;EAAc,CAAC,GAAGR,cAAc,CACnEC,KAAK,EACLC,MACF,CAAC;EACD,IAAIE,KAAK,KAAKd,gBAAgB,EAAE;IAC9B,MAAM,IAAIhJ,KAAK,CACb,6DAA6D8J,KAAK,EACpE,CAAC;EACH;EACA,IAAIG,UAAU,EAAE;IACd,MAAM;MAAEQ,OAAO;MAAEE;IAAW,CAAC,GAAGP,0BAA0B,CACxDT,KAAK,EACLG,KAAK,EACLI,aACF,CAAC;IACD,OAAO;MAAEY,GAAG,EAAE/D,MAAM,CAACC,IAAI,CAACyD,OAAO,CAAC,CAAC1E,QAAQ,CAAC,KAAK,CAAC;MAAE4E;IAAW,CAAC;EAClE;EACA,MAAMH,GAAG,GAAGN,aAAa,GAAGF,QAAQ;EACpC,IAAIQ,GAAG,GAAGb,KAAK,CAACnJ,MAAM,EAAE;IACtB,MAAM,IAAIR,KAAK,CAAC,oCAAoC,CAAC;EACvD;EACA,OAAO;IACL8K,GAAG,EAAE/D,MAAM,CAACC,IAAI,CAAC2C,KAAK,CAACZ,KAAK,CAACmB,aAAa,EAAEM,GAAG,CAAC,CAAC,CAACzE,QAAQ,CAAC,KAAK,CAAC;IACjE4E,UAAU,EAAEH;EACd,CAAC;AACH,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAM9C,kBAAkB,GAC7BqD,YAAoB,IACyB;EAC7C,MAAMpB,KAAK,GAAG5C,MAAM,CAACC,IAAI,CAAC+D,YAAY,EAAE,KAAK,CAAC;EAE9C,IAAInB,MAAM,GAAG,CAAC;EACd;EACA;EACA;EACA;EACA,MAAMoB,KAAK,GAAGtB,cAAc,CAACC,KAAK,EAAEC,MAAM,CAAC;EAC3C,IAAIoB,KAAK,CAAClB,KAAK,KAAKV,cAAc,EAAE;IAClC,IAAI4B,KAAK,CAAChB,QAAQ,KAAKR,mBAAmB,EAAE;MAC1C,MAAM,IAAIxJ,KAAK,CACb,sCAAsCgL,KAAK,CAAChB,QAAQ,gBACtD,CAAC;IACH;IACAJ,MAAM,GAAGoB,KAAK,CAACd,aAAa;EAC9B;EAEA,MAAMe,KAAK,GAAGvB,cAAc,CAACC,KAAK,EAAEC,MAAM,CAAC;EAC3C,IAAIqB,KAAK,CAACnB,KAAK,KAAKZ,gBAAgB,EAAE;IACpC,MAAM,IAAIlJ,KAAK,CAAC,gCAAgC,CAAC;EACnD;EACA,IAAI,CAACiL,KAAK,CAAChB,UAAU,IAAIgB,KAAK,CAACjB,QAAQ,KAAK,CAAC,EAAE;IAC7C,MAAM,IAAIhK,KAAK,CAAC,0CAA0C,CAAC;EAC7D;;EAEA;EACA,MAAMkL,aAAa,GAAGL,kBAAkB,CAAClB,KAAK,EAAEsB,KAAK,CAACf,aAAa,CAAC;;EAEpE;EACA;EACA;EACA,MAAMiB,iBAAiB,GAAGzB,cAAc,CAACC,KAAK,EAAEuB,aAAa,CAACP,UAAU,CAAC;EACzE,IAAIQ,iBAAiB,CAACrB,KAAK,KAAKX,cAAc,EAAE;IAC9C,MAAM,IAAInJ,KAAK,CACb,mEAAmEmL,iBAAiB,CAACrB,KAAK,GAC5F,CAAC;EACH;EACA,MAAMsB,gBAAgB,GAAGR,YAAY,CAACjB,KAAK,EAAEuB,aAAa,CAACP,UAAU,CAAC;;EAEtE;EACA,MAAMU,aAAa,GAAG3B,cAAc,CAACC,KAAK,EAAEyB,gBAAgB,CAAC;EAC7D,MAAME,aAAa,GACjBD,aAAa,CAACvB,KAAK,KAAKT,iBAAiB,IACzC,CAACgC,aAAa,CAACpB,UAAU,IACzBoB,aAAa,CAACrB,QAAQ,KAAKP,gBAAgB;EAC7C,IAAI4B,aAAa,CAACvB,KAAK,KAAKd,gBAAgB,IAAI,CAACsC,aAAa,EAAE;IAC9D,MAAM,IAAItL,KAAK,CACb,mEAAmEqL,aAAa,CAACvB,KAAK,GACxF,CAAC;EACH;EACA,MAAMyB,YAAY,GAAGX,YAAY,CAACjB,KAAK,EAAEyB,gBAAgB,CAAC;;EAE1D;EACA,MAAMI,aAAa,GAAGX,kBAAkB,CAAClB,KAAK,EAAE4B,YAAY,CAAC;;EAE7D;EACA,IAAIN,KAAK,CAAChB,UAAU,IAAIN,KAAK,CAAC6B,aAAa,CAACb,UAAU,CAAC,KAAKpB,UAAU,EAAE;IACtE,MAAM,IAAIvJ,KAAK,CAAC,0CAA0C,CAAC;EAC7D;EAEA,OAAO;IAAEuH,SAAS,EAAE2D,aAAa,CAACJ,GAAG;IAAErD,SAAS,EAAE+D,aAAa,CAACV;EAAI,CAAC;AACvE,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMW,2BAA2B,GAAGA,CACzChJ,MAAc,EACdiJ,YAA2C,KAChC;EACX,IAAIjJ,MAAM,IAAI,EAAE,EAAE;IAChB,MAAM,IAAIzC,KAAK,CAAC,kCAAkC,CAAC;EACrD;;EAEA;EACA,MAAM2L,KAAK,GAAGxF,kBAAkB,CAACuF,YAAY,CAAC9K,KAAK,CAAC,CAAC,CAAC;EAEtD,MAAMgL,MAAkC,GAAG;IACzCC,QAAQ,EAAE;MAAEC,eAAe,EAAErJ;IAAO;EACtC,CAAC;EAED,MAAMsJ,aAAuD,GAAG;IAC9DH,MAAM;IACND;EACF,CAAC;EACD,OAAO7N,IAAI,CAACkO,SAAS,CAAChO,SAAS,CAACiO,8BAA8B,EAAEF,aAAa,CAAC,CAC3EzI,MAAM,CAAC,CAAC,CACRyC,QAAQ,CAAC,CAAC;AACf,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMmG,0BAA0B,GAAGA,CACxCzJ,MAAc,EACdiJ,YAA2C,KAChC;EACX,IAAIjJ,MAAM,IAAI,EAAE,EAAE;IAChB,MAAM,IAAIzC,KAAK,CAAC,iCAAiC,CAAC;EACpD;EAEA,MAAM2L,KAAK,GAAGxF,kBAAkB,CAACuF,YAAY,CAAC9K,KAAK,CAAC,CAAC,CAAC;EAEtD,MAAMgL,MAAkC,GAAG;IACzCO,OAAO,EAAE;MAAEC,cAAc,EAAE3J;IAAO;EACpC,CAAC;EAED,MAAMsJ,aAAuD,GAAG;IAC9DH,MAAM;IACND;EACF,CAAC;EACD,OAAO7N,IAAI,CAACkO,SAAS,CAAChO,SAAS,CAACiO,8BAA8B,EAAEF,aAAa,CAAC,CAC3EzI,MAAM,CAAC,CAAC,CACRyC,QAAQ,CAAC,CAAC;AACf,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASsG,oBAAoBA,CAClClN,OAAqB,EACrBE,KAA2B,GAAG,SAAS,EAC1B;EACb,MAAMiN,KAAK,GAAGnN,OAAO,CAACoN,QAAQ,CAAC,CAAC;EAChC,MAAMC,WAAW,GAAGF,KAAK,CAACE,WAAW;EAErC,IAAI,CAACA,WAAW,EAAE;IAChB,MAAM,IAAIxM,KAAK,CAAC,kCAAkC,CAAC;EACrD;EAEA,MAAMyM,iBAAiB,GACrBD,WAAW,CAAC1N,IAAI,KAAKjB,IAAI,CAACkB,cAAc,CAAC2N,OAAO,GAC5C;IAAEC,eAAe,EAAE,CAACH,WAAW,CAAC9N,IAAI;EAAc,CAAC,GACnD;IAAE2G,MAAM,EAAE,CAACmH,WAAW,CAAC9N,IAAI;EAAc,CAAC;EAEhD,IAAIkO,eAA2D,GAAGzL,SAAS;EAC3E,IAAImL,KAAK,CAACO,cAAc,EAAE;IACxB,MAAMC,SAAS,GACbR,KAAK,CAACO,cAAc,CAAC/N,IAAI,KAAKjB,IAAI,CAACkB,cAAc,CAAC2N,OAAO,GACrD;MAAEC,eAAe,EAAE,CAACL,KAAK,CAACO,cAAc,CAACnO,IAAI;IAAc,CAAC,GAC5D;MAAE2G,MAAM,EAAE,CAACiH,KAAK,CAACO,cAAc,CAACnO,IAAI;IAAc,CAAC;IACzDkO,eAAe,GAAG;MAAEG,MAAM,EAAE,CAACD,SAAS;IAAE,CAAC;EAC3C;EAEA,OAAO;IACL3N,OAAO,EAAE;MACP6N,kBAAkB,EAAEP,iBAAiB;MACrCQ,gBAAgB,EAAEL;IACpB,CAAC;IACDvN;EACF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAAS6N,oBAAoBA,CAClC/O,OAAuB,EACvBgP,WAA6B,EACf;EACd,MAAMC,WAAW,GAAGD,WAAW,CAAChO,OAAO,CAAC6N,kBAAkB;EAC1D,MAAMK,WAAW,GAAGF,WAAW,CAAChO,OAAO,CAAC8N,gBAAgB;EACxD,IAAIK,eAAgC;EACpC,IAAIC,eAA4C;EAEhD,IACEF,WAAW,IACX,OAAOA,WAAW,KAAK,QAAQ,IAC/B,QAAQ,IAAIA,WAAW,EACvB;IACA,MAAMG,gBAAgB,GACpBH,WAAW,CACXN,MAAM,CAAC,CAAC,CAAC;IACX,IAAI,iBAAiB,IAAIS,gBAAgB,EAAE;MACzCD,eAAe,GAAG1P,IAAI,CAACe,UAAU,CAACC,QAAQ,CAAC;QACzCC,IAAI,EAAEjB,IAAI,CAACkB,cAAc,CAAC2N,OAAO;QACjChO,IAAI,EAAE8O,gBAAgB,CAACb,eAAe,CAAC,CAAC;MAC1C,CAAC,CAAC;IACJ,CAAC,MAAM,IAAI,QAAQ,IAAIa,gBAAgB,EAAE;MACvCD,eAAe,GAAG1P,IAAI,CAACe,UAAU,CAACC,QAAQ,CAAC;QACzCC,IAAI,EAAEjB,IAAI,CAACkB,cAAc,CAACC,UAAU;QACpCN,IAAI,EAAE8O,gBAAgB,CAACnI,MAAM,CAAC,CAAC;MACjC,CAAC,CAAC;IACJ;EACF;EAEA,IAAI,iBAAiB,IAAI+H,WAAW,EAAE;IACpCE,eAAe,GAAGzP,IAAI,CAACe,UAAU,CAACC,QAAQ,CAAC;MACzCC,IAAI,EAAEjB,IAAI,CAACkB,cAAc,CAAC2N,OAAO;MACjChO,IAAI,EAAE0O,WAAW,CAACT,eAAe,CAAC,CAAC;IACrC,CAAC,CAAC;EACJ,CAAC,MAAM;IACLW,eAAe,GAAGzP,IAAI,CAACe,UAAU,CAACC,QAAQ,CAAC;MACzCC,IAAI,EAAEjB,IAAI,CAACkB,cAAc,CAACC,UAAU;MACpCN,IAAI,EAAE0O,WAAW,CAAC/H,MAAM,CAAC,CAAC;IAC5B,CAAC,CAAC;EACJ;EAEA,OAAO1H,sBAAsB,CAACQ,OAAO,EAAEmP,eAAe,EAAEC,eAAe,CAAC;AAC1E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,oBAAoBA,CAClCvO,EAAa,EACbf,OAAuB,EACvBgP,WAA6B,EAC7B/N,KAAiB,EACX;EACN,MAAMG,MAAM,GAAG,IAAI1B,IAAI,CAAC2B,iBAAiB,CACvC0N,oBAAoB,CAAC/O,OAAO,EAAEgP,WAAW,CAAC,EAC1C/N,KACF,CAAC;EACD,MAAM;IAAEC;EAAM,CAAC,GAAG8N,WAAW;EAC7B,IAAI9N,KAAK,KAAK,SAAS,EAAE;IACvB,IAAI,WAAW,IAAIA,KAAK,EAAE;MACxBE,MAAM,CAACE,QAAQ,CAAC5B,IAAI,CAAC6B,KAAK,CAACgO,WAAW,CAACrO,KAAK,CAACsO,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC,MAAM;MACLpO,MAAM,CAACE,QAAQ,CACb5B,IAAI,CAAC6B,KAAK,CAACC,aAAa,CAACN,KAAK,CAACuO,WAAW,CAAC,CAAC,CAAoB,CAClE,CAAC;IACH;EACF;EACA1O,EAAE,CAACU,SAAS,CAACL,MAAM,CAAC;AACtB;;AAEA;AACA;AACA;;AAEA,MAAMsO,+BAAiE,GAAG;EACxEC,EAAE,EAAE,IAAI;EACRC,IAAI,EAAE,MAAM;EACZC,IAAI,EAAE,MAAM;EACZC,IAAI,EAAE,MAAM;EACZC,IAAI,EAAE,MAAM;EACZC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,UAAU;EACpBC,QAAQ,EAAE;AACZ,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GACnCC,OAAkC,IACD;EACjC,IAAI,CAACA,OAAO,EAAE;IACZ,OAAOpN,SAAS;EAClB;EAEA,OAAO0M,+BAA+B,CAACU,OAAO,CAACC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,CAAC;AACtE,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,qBAAqB,GAAGJ,wBAAwB;;AAE7D;AACA;AACA;AACA,OAAO,MAAMK,sBAAsB,GAAGA,CACpChO,IAAmC,EACnCiO,KAAK,GAAG,YAAY,KACA;EACpB,MAAMvP,KAAK,GAAGsB,IAAI,CAACpB,MAAM,CAAC,CAAC,CAACF,KAAK,CAAC,CAAC,EAAE2D,YAAY,CAAC,CAAC;EACnD,IAAI,CAAC3D,KAAK,EAAE;IACV,MAAM,IAAIW,KAAK,CAAC,GAAG4O,KAAK,sBAAsB,CAAC;EACjD;EACA,OAAOvP,KAAK;AACd,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMwP,0BAA0B,GACrClO,IAAmC,IACT;EAC1B,MAAM6L,WAAW,GAAG7L,IAAI,CAACpB,MAAM,CAAC,CAAC,CAACJ,OAAO,CAAC,CAAC,CAACoN,QAAQ,CAAC,CAAC,CAACC,WAAW;EAElE,IAAI,CAACA,WAAW,EAAE;IAChB,MAAM,IAAIxM,KAAK,CAAC,8CAA8C,CAAC;EACjE;EAEA,IAAIwM,WAAW,CAAC1N,IAAI,KAAKjB,IAAI,CAACkB,cAAc,CAACC,UAAU,EAAE;IACvD,MAAM,IAAIgB,KAAK,CAAC,oDAAoD,CAAC;EACvE;EAEA,OAAOwM,WAAW,CAAC9N,IAAI;AACzB,CAAC;;AAED;AACA;AACA;AACA,OAAO,eAAeoQ,kCAAkCA,CAItD1O,KAAkB,EAClB2D,YAA6C,EAC7CC,YAE0D,EAC1D7E,OAAsB,EAC8C;EACpE,MAAM8E,eAAe,GAAG,IAAI8K,GAAG,CAG7B,CAAC;EAEH,KAAK,MAAMrQ,IAAI,IAAI,IAAIwG,GAAG,CAACnB,YAAY,CAAC,EAAE;IACxC,MAAMiL,WAAW,GACfhL,YAAY,YAAY+K,GAAG,GACvB/K,YAAY,CAACiL,GAAG,CAACvQ,IAAI,CAAC,GAEpBsF,YAAY,GAGVtF,IAAI,CAAW;IAEzB,IAAIsQ,WAAW,EAAE;MACf/K,eAAe,CAACiL,GAAG,CAACxQ,IAAI,EAAEsQ,WAAW,CAAC;MACtC;IACF;IAEA,MAAMxN,QAAQ,GACXrC,OAAO,KAAK,MAAM4B,yBAAyB,CAACX,KAAK,EAAE1B,IAAI,EAAES,OAAO,CAAC,CAAC,KAClE,MAAMiB,KAAK,CAACE,QAAQ,CAACY,gBAAgB,CAACxC,IAAI,CAAC,CAAC;IAE/C,IAAI,CAAC8C,QAAQ,EAAE;MACb,MAAM,IAAIxB,KAAK,CACb,iDAAiDtB,IAAI,2CACvD,CAAC;IACH;IAEAuF,eAAe,CAACiL,GAAG,CAACxQ,IAAI,EAAE8C,QAAQ,CAAC;EACrC;EAEA,OAAOyC,eAAe;AACxB;;AAEA;AACA;AACA;AACA,OAAO,eAAekL,2BAA2BA,CAI/C/O,KAAkB,EAClBgP,UAAmD,EACnDpL,YAE0D,EAC1D7E,OAAsB,EAC8C;EACpE,MAAM4E,YAAqC,GAAG,EAAE;EAEhD,KAAK,MAAMpD,IAAI,IAAIyO,UAAU,EAAE;IAC7BrL,YAAY,CAACS,IAAI,CAACqK,0BAA0B,CAAClO,IAAI,CAAC,CAAC;EACrD;EAEA,OAAOmO,kCAAkC,CACvC1O,KAAK,EACL2D,YAAY,EACZC,YAAY,EACZ7E,OACF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMkQ,+BAA+B,GAC1ChQ,KAAsB,IACF;EACpB,MAAMiQ,MAAM,GAAGjQ,KAAK,CAACkQ,kBAAkB,CAAC,CAAC;EACzC,IAAI,CAACD,MAAM,EAAE;IACX,MAAM,IAAItP,KAAK,CAAC,6CAA6C,CAAC;EAChE;EAEA,IAAIsP,MAAM,CAACE,cAAc,CAAC,CAAC,KAAK,EAAE,EAAE;IAClC,MAAM,IAAIxP,KAAK,CACb,gDAAgDsP,MAAM,CAACE,cAAc,CAAC,CAAC,CAACzJ,QAAQ,CAAC,CAAC,eACpF,CAAC;EACH;EAEA,MAAM0J,MAAM,GAAGH,MAAM,CAACI,OAAO,CAAC,CAAC;EAC/B,IAAID,MAAM,CAACE,SAAS,CAAC,CAAC,GAAG,CAAC,EAAE;IAC1B,MAAM,IAAI3P,KAAK,CACb,mBAAmByP,MAAM,CAACE,SAAS,CAAC,CAAC,CAAC5J,QAAQ,CAAC,CAAC,+BAClD,CAAC;EACH;EAEA,OAAOnI,KAAK,CAACI,SAAS,CAAC4R,cAAc,EAAEH,MAAM,CAACR,GAAG,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMY,sBAAsB,GACjClP,IAAmC,IACf;EACpB,OAAO0O,+BAA+B,CAACV,sBAAsB,CAAChO,IAAI,CAAC,CAAC;AACtE,CAAC","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v0/index.js b/modules/realfi-partner-sdk/dist/esm/sdk/v0/index.js new file mode 100644 index 0000000000..75db7a5899 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v0/index.js @@ -0,0 +1,161 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import * as Data from "@blaze-cardano/data"; +import { parse, Void } from "@blaze-cardano/data"; +import { Core, makeValue } from "@blaze-cardano/sdk"; +import { BaseTypes, V0Types } from "../../generated-types/index.js"; +import { lockOrPayAssets, RealfiSDKBase } from "../shared/index.js"; + +/** + * V0 datum type - simple datum with logic hash and no settings + */ +export const AdminDatum = Data.Type.Object({ + logic: Data.Type.String(), + settings: Data.Type.Void() +}, { + ctor: 0n +}); +/** + * V0 SDK implementation. + * + * Simple minting without treasury management. + * All operations (oneshot, protocol, mint proxy) are consolidated here. + */ +export class RealfiSDKV0 extends RealfiSDKBase { + constructor(blaze, params, scripts, cachedReferenceInputs) { + super(blaze, params, cachedReferenceInputs); + _defineProperty(this, "version", "V0"); + // Script hashes and policy IDs + _defineProperty(this, "stablecoinPolicyId", void 0); + _defineProperty(this, "oneShotPolicyId", void 0); + _defineProperty(this, "protocolScriptHash", void 0); + // Scripts + _defineProperty(this, "oneShotScript", void 0); + _defineProperty(this, "protocolScript", void 0); + _defineProperty(this, "mintProxyScript", void 0); + this.oneShotScript = scripts.oneShotScript; + this.protocolScript = scripts.protocolScript; + this.mintProxyScript = scripts.mintProxyScript; + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + } + + /** + * Create a V0 SDK instance. + */ + static create(blaze, params) { + const enableTrace = params.enableTrace ?? false; + + // Instantiate one-shot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + + // Instantiate protocol script (V0 uses no parameters) + const protocolScript = new V0Types.V0ProtocolProtocolWithdraw(enableTrace).Script; + + // Instantiate mint proxy script (parameterized by one-shot policy ID) + const oneShotPolicyId = oneShotScript.hash(); + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV0(blaze, { + version: "V0", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress + }, { + oneShotScript, + protocolScript, + mintProxyScript + }, { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput + }); + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the one-shot NFT with the initial datum. + * This consumes the bootstrap UTXO and can only be done once. + */ + async mintOneShot(receiverAddress, datum) { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(AdminDatum, { + logic: datum.logic, + settings: datum.settings + }); + const baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[Core.AssetName(""), 1n]]), Data.Void()); + const tx = lockOrPayAssets(baseTx, receiverAddress, makeValue(1000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return { + tx, + policyId: this.oneShotPolicyId + }; + } + + /** + * Update the one-shot datum. + * This spends the one-shot UTXO and sends it back to the receiver with new datum. + */ + async updateOneShotDatum(receiverAddress, newDatum) { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(Core.AssetId(this.oneShotPolicyId)); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + const serializedDatum = Data.serialize(AdminDatum, { + logic: newDatum.logic, + settings: newDatum.settings + }); + return lockOrPayAssets(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, makeValue(1000000n, [this.oneShotPolicyId, 1n]), serializedDatum); + } + + /** + * Get the proxy datum from the one-shot token UTXO. + * Result is cached after first fetch. + */ + async getParsedProxyDatum() { + if (this.cachedProxyDatumResult) { + return this.cachedProxyDatumResult; + } + const { + proxyUtxo, + proxyDatum + } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(AdminDatum, proxyDatum); + const result = { + proxyUtxo, + proxyDatum, + parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return result; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0 minting is simple - no treasury involvement. + */ + async buildMintTx(amount) { + const rewardAccount = this.getProtocolRewardAccount(); + const utxo = await this.blaze.provider.getUnspentOutputByNFT(Core.AssetId(this.oneShotPolicyId)); + if (!utxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash() + }); + const tx = this.blaze.newTransaction().addReferenceInput(utxo).addWithdrawal(rewardAccount, 0n, Void()).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), amount.amount]]), Void()); + return tx; + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v0/index.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v0/index.js.map new file mode 100644 index 0000000000..4a9682c262 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v0/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["Data","parse","Void","Core","makeValue","BaseTypes","V0Types","lockOrPayAssets","RealfiSDKBase","AdminDatum","Type","Object","logic","String","settings","ctor","RealfiSDKV0","constructor","blaze","params","scripts","cachedReferenceInputs","_defineProperty","oneShotScript","protocolScript","mintProxyScript","oneShotPolicyId","PolicyId","hash","protocolScriptHash","stablecoinPolicyId","create","enableTrace","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","V0ProtocolProtocolWithdraw","BaseMintProxyMintProxyMint","version","assetNameHex","scriptDeploymentAddress","protocolRefInput","referenceInputs","proxyRefInput","mintOneShot","receiverAddress","datum","utxo","resolveBootstrapUtxo","serializedDatum","serialize","baseTx","newTransaction","addInput","addMint","Map","AssetName","tx","provideScript","policyId","updateOneShotDatum","newDatum","oneshotUtxo","provider","getUnspentOutputByNFT","AssetId","Error","getParsedProxyDatum","cachedProxyDatumResult","proxyUtxo","proxyDatum","getRawProxyDatum","parsedProxyDatum","result","buildMintTx","amount","rewardAccount","getProtocolRewardAccount","refInputs","getScriptReferenceInputs","protocol","proxy","addReferenceInput","addWithdrawal"],"sources":["../../../../src/sdk/v0/index.ts"],"sourcesContent":["import * as Data from \"@blaze-cardano/data\";\nimport { parse, Void } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\nimport { AssetAmount } from \"@sundaeswap/asset\";\n\nimport { BaseTypes, V0Types } from \"../../generated-types/index.js\";\nimport {\n type IBaseSDKParams,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n lockOrPayAssets,\n RealfiSDKBase,\n} from \"../shared/index.js\";\n\n/**\n * V0 datum type - simple datum with logic hash and no settings\n */\nexport const AdminDatum = Data.Type.Object(\n {\n logic: Data.Type.String(),\n settings: Data.Type.Void(),\n },\n { ctor: 0n },\n);\n\nexport type TAdminDatumType = {\n logic: string;\n settings: void;\n};\n\nexport interface IRealfiSDKParamsV0 {\n version: \"V0\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n assetNameHex: string;\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n };\n}\n\n/**\n * V0 SDK implementation.\n *\n * Simple minting without treasury management.\n * All operations (oneshot, protocol, mint proxy) are consolidated here.\n */\nexport class RealfiSDKV0<\n P extends Provider,\n W extends Wallet,\n> extends RealfiSDKBase {\n readonly version = \"V0\" as const;\n\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n\n private constructor(\n blaze: Blaze,\n params: IBaseSDKParams,\n scripts: {\n oneShotScript: Core.Script;\n protocolScript: Core.Script;\n mintProxyScript: Core.Script;\n },\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n super(blaze, params, cachedReferenceInputs);\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolScript = scripts.protocolScript;\n this.mintProxyScript = scripts.mintProxyScript;\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n }\n\n /**\n * Create a V0 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0,\n ): RealfiSDKV0 {\n const enableTrace = params.enableTrace ?? false;\n\n // Instantiate one-shot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n\n // Instantiate protocol script (V0 uses no parameters)\n const protocolScript = new V0Types.V0ProtocolProtocolWithdraw(enableTrace)\n .Script;\n\n // Instantiate mint proxy script (parameterized by one-shot policy ID)\n const oneShotPolicyId = oneShotScript.hash();\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV0(\n blaze,\n {\n version: \"V0\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n },\n {\n oneShotScript,\n protocolScript,\n mintProxyScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the one-shot NFT with the initial datum.\n * This consumes the bootstrap UTXO and can only be done once.\n */\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: TAdminDatumType,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(AdminDatum, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(1000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n /**\n * Update the one-shot datum.\n * This spends the one-shot UTXO and sends it back to the receiver with new datum.\n */\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: TAdminDatumType,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(AdminDatum, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(1000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n }\n\n /**\n * Get the proxy datum from the one-shot token UTXO.\n * Result is cached after first fetch.\n */\n async getParsedProxyDatum(): Promise> {\n if (this.cachedProxyDatumResult) {\n return this.cachedProxyDatumResult as IProxyDatumResult;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(AdminDatum, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Minting Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a mint (positive amount) or burn (negative amount) transaction.\n * V0 minting is simple - no treasury involvement.\n */\n async buildMintTx(amount: AssetAmount): Promise {\n const rewardAccount = this.getProtocolRewardAccount();\n\n const utxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!utxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n });\n\n const tx = this.blaze\n .newTransaction()\n .addReferenceInput(utxo)\n .addWithdrawal(rewardAccount, 0n, Void())\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), amount.amount]]),\n Void(),\n );\n\n return tx;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v0_1/index.js b/modules/realfi-partner-sdk/dist/esm/sdk/v0_1/index.js new file mode 100644 index 0000000000..b467ce7f61 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v0_1/index.js @@ -0,0 +1,260 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import { addressFromCredential, addressFromValidator, Hash28ByteBase16, toHex } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse, Void } from "@blaze-cardano/data"; +import { Core, makeValue, Value } from "@blaze-cardano/sdk"; +import { BaseTypes, V0_1Types } from "../../generated-types/index.js"; +import { addDirectOutput, credentialFromScriptHash, deployScript, getDatumFromNFT, getSignatureKeyHashesFromMultisigScript, lockOrPayAssets, RealfiSDKBase } from "../shared/index.js"; + +// eslint-disable-next-line @typescript-eslint/naming-convention + +/** + * V0_1 SDK implementation. + * + * Includes treasury management, reserve backing, and circulating supply tracking. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +export class RealfiSDKV0_1 extends RealfiSDKBase { + constructor(blaze, params, scripts, treasuryNFTAssetId, cachedReferenceInputs) { + super(blaze, params, cachedReferenceInputs); + _defineProperty(this, "version", "V0_1"); + // Script hashes and policy IDs + _defineProperty(this, "stablecoinPolicyId", void 0); + _defineProperty(this, "oneShotPolicyId", void 0); + _defineProperty(this, "protocolScriptHash", void 0); + _defineProperty(this, "treasuryScriptHash", void 0); + _defineProperty(this, "treasuryNFTAssetId", void 0); + // Scripts + _defineProperty(this, "oneShotScript", void 0); + _defineProperty(this, "protocolScript", void 0); + _defineProperty(this, "mintProxyScript", void 0); + _defineProperty(this, "treasuryScript", void 0); + this.oneShotScript = scripts.oneShotScript; + this.protocolScript = scripts.protocolScript; + this.mintProxyScript = scripts.mintProxyScript; + this.treasuryScript = scripts.treasuryScript; + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + this.treasuryScriptHash = this.treasuryScript.hash(); + this.treasuryNFTAssetId = treasuryNFTAssetId; + } + + /** + * Create a V0_1 SDK instance. + */ + static create(blaze, params) { + const enableTrace = params.enableTrace ?? false; + + // Instantiate one-shot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + const oneShotPolicyId = oneShotScript.hash(); + + // Instantiate protocol script (V0_1 parameterized by one-shot policy ID) + const protocolScript = new V0_1Types.V0_1ProtocolProtocolWithdraw(oneShotPolicyId, enableTrace).Script; + + // Instantiate mint proxy script (parameterized by one-shot policy ID) + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + + // Instantiate treasury script (parameterized by UTXO ref and one-shot policy ID) + const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + + // Derive treasury NFT asset ID from treasury script hash + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + const treasuryNFTAssetId = Core.AssetId(treasuryScript.hash() + treasuryAssetName.toString()); + return new RealfiSDKV0_1(blaze, { + version: "V0_1", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress + }, { + oneShotScript, + protocolScript, + mintProxyScript, + treasuryScript + }, treasuryNFTAssetId, { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput + }); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * Uses the treasury bootstrap UTXO that was provided when creating the SDK. + */ + async mintTreasuryNFT(treasuryBootstrapUtxo, initialDatum = { + circulating_supply: 0n + }) { + const treasuryPolicyId = Core.PolicyId(this.treasuryScript.hash()); + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + const treasuryAddress = addressFromValidator(this.network, this.treasuryScript); + const datum = Data.serialize(V0_1Types.TreasuryDatum, initialDatum); + const tx = this.blaze.newTransaction().addInput(treasuryBootstrapUtxo).addMint(treasuryPolicyId, new Map([[treasuryAssetName, 1n]]), Data.Void()).lockAssets(treasuryAddress, makeValue(1000000n, [this.treasuryNFTAssetId, 1n]), datum).provideScript(this.treasuryScript); + return { + tx, + nftAssetId: this.treasuryNFTAssetId + }; + } + + /** + * Deploy the treasury script as a reference script. + */ + async deployTreasury() { + return deployScript(this.blaze, this.treasuryScript, this.scriptDeploymentAddress); + } + + /** + * Get the treasury datum. + */ + async getTreasuryDatum() { + const { + utxo: treasuryUtxo, + datum: treasuryDatum, + parsedDatum: parsedTreasuryDatum + } = await getDatumFromNFT(this.blaze, this.treasuryNFTAssetId, V0_1Types.TreasuryDatum); + if (!treasuryUtxo) { + throw new Error("No UTXO found with the treasury NFT"); + } + if (!treasuryDatum) { + throw new Error("No treasury datum found"); + } + return { + treasuryUtxo, + treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the one-shot NFT with the initial datum. + * This consumes the bootstrap UTXO and can only be done once. + */ + async mintOneShot(receiverAddress, datum) { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(V0_1Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings + }); + const baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[Core.AssetName(""), 1n]]), Data.Void()); + const tx = lockOrPayAssets(baseTx, receiverAddress, makeValue(1000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return { + tx, + policyId: this.oneShotPolicyId + }; + } + + /** + * Update the one-shot datum. + * This spends the one-shot UTXO and sends it back to the receiver with new datum. + */ + async updateOneShotDatum(receiverAddress, newDatum) { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(Core.AssetId(this.oneShotPolicyId)); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + const serializedDatum = Data.serialize(V0_1Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings + }); + const tx = lockOrPayAssets(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, makeValue(1000000n, [this.oneShotPolicyId, 1n]), serializedDatum); + return tx; + } + + /** + * Get the proxy datum from the one-shot token UTXO. + * Result is cached after first fetch. + */ + async getParsedProxyDatum() { + if (this.cachedProxyDatumResult) { + return this.cachedProxyDatumResult; + } + const { + proxyUtxo, + proxyDatum + } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(V0_1Types.ProxyDatum, proxyDatum); + const result = { + proxyUtxo, + proxyDatum, + parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return result; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0_1 minting includes treasury update for circulating supply tracking. + */ + async buildMintTx(assetAmount) { + const isBurn = assetAmount.amount < 0n; + const rewardAccount = this.getProtocolRewardAccount(); + const { + proxyUtxo, + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const treasuryScriptHash = Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury); + + // Get all reference inputs in one call (cached after first fetch) + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: treasuryScriptHash + }); + const { + utxo: treasuryUtxo, + parsedDatum: parsedTreasuryDatum + } = await getDatumFromNFT(this.blaze, this.treasuryNFTAssetId, V0_1Types.TreasuryDatum); + const circulatingSupply = parsedTreasuryDatum.circulating_supply; + const newCirculatingSupply = circulatingSupply + assetAmount.amount; + const newTreasuryDatum = Data.serialize(V0_1Types.TreasuryDatum, { + circulating_supply: newCirculatingSupply + }); + const reserveToken = parsedProxyDatum.settings.reserve_token.join(""); + const treasuryAddress = addressFromCredential(this.network, credentialFromScriptHash(treasuryScriptHash)); + const redeemer = isBurn ? Data.serialize(V0_1Types.ProtocolRedeemer, "Burn") : Data.serialize(V0_1Types.ProtocolRedeemer, "Mint"); + const assetName = Core.AssetName(this.assetNameHex); + const initialTreasuryValue = treasuryUtxo.output().amount(); + const valueToAdd = makeValue(0n, [reserveToken, assetAmount.amount]); + const updatedTreasuryValue = Value.merge(initialTreasuryValue, valueToAdd); + const tx = this.blaze.newTransaction().addReferenceInput(proxyUtxo).addWithdrawal(rewardAccount, 0n, redeemer).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, Void()).addMint(this.stablecoinPolicyId, new Map([[assetName, assetAmount.amount]]), Void()).lockAssets(treasuryAddress, updatedTreasuryValue, newTreasuryDatum); + if (isBurn) { + const requiredSigners = getSignatureKeyHashesFromMultisigScript(parsedProxyDatum.settings.burn_permission).map(key => Core.Ed25519KeyHashHex(key)); + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + const receiverAddress = await this.blaze.wallet.getChangeAddress(); + addDirectOutput(tx, receiverAddress, makeValue(0n, [reserveToken, -assetAmount.amount])); + } else { + const requiredSigners = getSignatureKeyHashesFromMultisigScript(parsedProxyDatum.settings.mint_permission).map(key => Core.Ed25519KeyHashHex(key)); + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + } + return tx; + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v0_1/index.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v0_1/index.js.map new file mode 100644 index 0000000000..e1e2c8d9eb --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v0_1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["addressFromCredential","addressFromValidator","Hash28ByteBase16","toHex","Data","parse","Void","Core","makeValue","Value","BaseTypes","V0_1Types","addDirectOutput","credentialFromScriptHash","deployScript","getDatumFromNFT","getSignatureKeyHashesFromMultisigScript","lockOrPayAssets","RealfiSDKBase","RealfiSDKV0_1","constructor","blaze","params","scripts","treasuryNFTAssetId","cachedReferenceInputs","_defineProperty","oneShotScript","protocolScript","mintProxyScript","treasuryScript","oneShotPolicyId","PolicyId","hash","protocolScriptHash","stablecoinPolicyId","treasuryScriptHash","create","enableTrace","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","V0_1ProtocolProtocolWithdraw","BaseMintProxyMintProxyMint","V0_1TreasuryTreasurySpend","treasuryBootstrap","treasuryAssetName","AssetName","Buffer","from","AssetId","toString","version","assetNameHex","scriptDeploymentAddress","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","mintTreasuryNFT","treasuryBootstrapUtxo","initialDatum","circulating_supply","treasuryPolicyId","treasuryAddress","network","datum","serialize","TreasuryDatum","tx","newTransaction","addInput","addMint","Map","lockAssets","provideScript","nftAssetId","deployTreasury","getTreasuryDatum","utxo","treasuryUtxo","treasuryDatum","parsedDatum","parsedTreasuryDatum","Error","mintOneShot","receiverAddress","resolveBootstrapUtxo","serializedDatum","ProxyDatum","logic","settings","baseTx","policyId","updateOneShotDatum","newDatum","oneshotUtxo","provider","getUnspentOutputByNFT","getParsedProxyDatum","cachedProxyDatumResult","proxyUtxo","proxyDatum","getRawProxyDatum","parsedProxyDatum","result","buildMintTx","assetAmount","isBurn","amount","rewardAccount","getProtocolRewardAccount","registry","treasury","refInputs","getScriptReferenceInputs","protocol","proxy","circulatingSupply","newCirculatingSupply","newTreasuryDatum","reserveToken","reserve_token","join","redeemer","ProtocolRedeemer","assetName","initialTreasuryValue","output","valueToAdd","updatedTreasuryValue","merge","addReferenceInput","addWithdrawal","requiredSigners","burn_permission","map","key","Ed25519KeyHashHex","signer","addRequiredSigner","wallet","getChangeAddress","mint_permission"],"sources":["../../../../src/sdk/v0_1/index.ts"],"sourcesContent":["import {\n addressFromCredential,\n addressFromValidator,\n Hash28ByteBase16,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse, Void } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport { AssetAmount } from \"@sundaeswap/asset\";\nimport { BaseTypes, V0_1Types } from \"../../generated-types/index.js\";\nimport type { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport {\n addDirectOutput,\n credentialFromScriptHash,\n deployScript,\n getDatumFromNFT,\n getSignatureKeyHashesFromMultisigScript,\n type IBaseSDKParams,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n type IRealfiSDKWithTreasury,\n type ITreasuryDatumResult,\n lockOrPayAssets,\n RealfiSDKBase,\n} from \"../shared/index.js\";\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV0_1 {\n version: \"V0_1\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n assetNameHex: string;\n /**\n * The bootstrap UTXO reference for treasury script parameterization.\n * Treasury script and NFT are derived from this.\n */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n };\n}\n\n/**\n * V0_1 SDK implementation.\n *\n * Includes treasury management, reserve backing, and circulating supply tracking.\n * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here.\n */\nexport class RealfiSDKV0_1

\n extends RealfiSDKBase\n implements IRealfiSDKWithTreasury\n{\n readonly version = \"V0_1\" as const;\n\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n readonly treasuryNFTAssetId: Core.AssetId;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n protected readonly treasuryScript: Core.Script;\n\n private constructor(\n blaze: Blaze,\n params: IBaseSDKParams,\n scripts: {\n oneShotScript: Core.Script;\n protocolScript: Core.Script;\n mintProxyScript: Core.Script;\n treasuryScript: Core.Script;\n },\n treasuryNFTAssetId: Core.AssetId,\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n super(blaze, params, cachedReferenceInputs);\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolScript = scripts.protocolScript;\n this.mintProxyScript = scripts.mintProxyScript;\n this.treasuryScript = scripts.treasuryScript;\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n this.treasuryScriptHash = this.treasuryScript.hash();\n this.treasuryNFTAssetId = treasuryNFTAssetId;\n }\n\n /**\n * Create a V0_1 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_1,\n ): RealfiSDKV0_1 {\n const enableTrace = params.enableTrace ?? false;\n\n // Instantiate one-shot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n\n // Instantiate protocol script (V0_1 parameterized by one-shot policy ID)\n const protocolScript = new V0_1Types.V0_1ProtocolProtocolWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Instantiate mint proxy script (parameterized by one-shot policy ID)\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Instantiate treasury script (parameterized by UTXO ref and one-shot policy ID)\n const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Derive treasury NFT asset ID from treasury script hash\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n const treasuryNFTAssetId = Core.AssetId(\n treasuryScript.hash() + treasuryAssetName.toString(),\n );\n\n return new RealfiSDKV0_1(\n blaze,\n {\n version: \"V0_1\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n },\n {\n oneShotScript,\n protocolScript,\n mintProxyScript,\n treasuryScript,\n },\n treasuryNFTAssetId,\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the treasury NFT.\n * This creates a new treasury with an initial datum.\n * Uses the treasury bootstrap UTXO that was provided when creating the SDK.\n */\n async mintTreasuryNFT(\n treasuryBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const treasuryPolicyId = Core.PolicyId(this.treasuryScript.hash());\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n const treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n\n const datum = Data.serialize(V0_1Types.TreasuryDatum, initialDatum);\n const tx = this.blaze\n .newTransaction()\n .addInput(treasuryBootstrapUtxo)\n .addMint(\n treasuryPolicyId,\n new Map([[treasuryAssetName, 1n]]),\n Data.Void(),\n )\n .lockAssets(\n treasuryAddress,\n makeValue(1000000n, [this.treasuryNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.treasuryScript);\n\n return { tx, nftAssetId: this.treasuryNFTAssetId };\n }\n\n /**\n * Deploy the treasury script as a reference script.\n */\n async deployTreasury(): Promise {\n return deployScript(\n this.blaze,\n this.treasuryScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Get the treasury datum.\n */\n async getTreasuryDatum(): Promise> {\n const {\n utxo: treasuryUtxo,\n datum: treasuryDatum,\n parsedDatum: parsedTreasuryDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1Types.TreasuryDatum,\n );\n\n if (!treasuryUtxo) {\n throw new Error(\"No UTXO found with the treasury NFT\");\n }\n if (!treasuryDatum) {\n throw new Error(\"No treasury datum found\");\n }\n\n return {\n treasuryUtxo,\n treasuryDatum,\n parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the one-shot NFT with the initial datum.\n * This consumes the bootstrap UTXO and can only be done once.\n */\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: V0_1Types.ProxyDatum,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(V0_1Types.ProxyDatum, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(1000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n /**\n * Update the one-shot datum.\n * This spends the one-shot UTXO and sends it back to the receiver with new datum.\n */\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: V0_1Types.ProxyDatum,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(V0_1Types.ProxyDatum, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n const tx = lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(1000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n\n return tx;\n }\n\n /**\n * Get the proxy datum from the one-shot token UTXO.\n * Result is cached after first fetch.\n */\n async getParsedProxyDatum(): Promise<\n IProxyDatumResult\n > {\n if (this.cachedProxyDatumResult) {\n return this\n .cachedProxyDatumResult as IProxyDatumResult;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(V0_1Types.ProxyDatum, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Minting Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a mint (positive amount) or burn (negative amount) transaction.\n * V0_1 minting includes treasury update for circulating supply tracking.\n */\n async buildMintTx(assetAmount: AssetAmount): Promise {\n const isBurn = assetAmount.amount < 0n;\n const rewardAccount = this.getProtocolRewardAccount();\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n\n const treasuryScriptHash = Hash28ByteBase16(\n parsedProxyDatum.settings.registry.treasury,\n );\n\n // Get all reference inputs in one call (cached after first fetch)\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: treasuryScriptHash,\n });\n\n const { utxo: treasuryUtxo, parsedDatum: parsedTreasuryDatum } =\n await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1Types.TreasuryDatum,\n );\n\n const circulatingSupply = (parsedTreasuryDatum as V0_1TreasuryDatum)\n .circulating_supply;\n const newCirculatingSupply = circulatingSupply + assetAmount.amount;\n\n const newTreasuryDatum = Data.serialize(V0_1Types.TreasuryDatum, {\n circulating_supply: newCirculatingSupply,\n });\n\n const reserveToken = parsedProxyDatum.settings.reserve_token.join(\"\");\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(treasuryScriptHash),\n );\n\n const redeemer = isBurn\n ? Data.serialize(V0_1Types.ProtocolRedeemer, \"Burn\")\n : Data.serialize(V0_1Types.ProtocolRedeemer, \"Mint\");\n\n const assetName = Core.AssetName(this.assetNameHex);\n\n const initialTreasuryValue = treasuryUtxo!.output().amount();\n const valueToAdd = makeValue(0n, [reserveToken, assetAmount.amount]);\n const updatedTreasuryValue = Value.merge(initialTreasuryValue, valueToAdd);\n\n const tx = this.blaze\n .newTransaction()\n .addReferenceInput(proxyUtxo!)\n .addWithdrawal(rewardAccount, 0n, redeemer)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Void())\n .addMint(\n this.stablecoinPolicyId,\n new Map([[assetName, assetAmount.amount]]),\n Void(),\n )\n .lockAssets(treasuryAddress, updatedTreasuryValue, newTreasuryDatum);\n\n if (isBurn) {\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.burn_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n const receiverAddress = await this.blaze.wallet.getChangeAddress();\n addDirectOutput(\n tx,\n receiverAddress,\n makeValue(0n, [reserveToken, -assetAmount.amount]),\n );\n } else {\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.mint_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n }\n\n return tx;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v0_2/index.js b/modules/realfi-partner-sdk/dist/esm/sdk/v0_2/index.js new file mode 100644 index 0000000000..1e1ebb0867 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v0_2/index.js @@ -0,0 +1,342 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import { addressFromCredential, addressFromValidator, AssetId, Hash28ByteBase16, toHex } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse, Void } from "@blaze-cardano/data"; +import { Core, makeValue, Value } from "@blaze-cardano/sdk"; +import { BaseTypes, V0_1Types, V0_2Types } from "../../generated-types/index.js"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import { addDirectOutput, credentialFromScriptHash, deployScript, getDatumFromNFT, getSignatureKeyHashesFromMultisigScript, lockOrPayAssets, RealfiSDKBase } from "../shared/index.js"; +// eslint-disable-next-line @typescript-eslint/naming-convention + +/** + * V0_2 SDK implementation. + * + * Extends V0_1 with deposit and withdraw operations for treasury management. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +export class RealfiSDKV0_2 extends RealfiSDKBase { + constructor(blaze, params, scripts, cachedReferenceInputs) { + super(blaze, params, cachedReferenceInputs); + _defineProperty(this, "version", "V0_2"); + // Script hashes and policy IDs + _defineProperty(this, "stablecoinPolicyId", void 0); + _defineProperty(this, "oneShotPolicyId", void 0); + _defineProperty(this, "protocolScriptHash", void 0); + _defineProperty(this, "treasuryScriptHash", void 0); + _defineProperty(this, "treasuryNFTAssetId", void 0); + _defineProperty(this, "treasuryAddress", void 0); + // Scripts + _defineProperty(this, "oneShotScript", void 0); + _defineProperty(this, "protocolScript", void 0); + _defineProperty(this, "mintProxyScript", void 0); + _defineProperty(this, "treasuryScript", void 0); + this.oneShotScript = scripts.oneShotScript; + this.protocolScript = scripts.protocolScript; + this.mintProxyScript = scripts.mintProxyScript; + this.treasuryScript = scripts.treasuryScript; + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + this.treasuryScriptHash = this.treasuryScript.hash(); + + // Derive treasury NFT asset ID from treasury script hash + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + this.treasuryNFTAssetId = Core.AssetId(this.treasuryScriptHash + treasuryAssetName.toString()); + this.treasuryAddress = addressFromValidator(this.network, this.treasuryScript); + } + + /** + * Create a V0_2 SDK instance. + */ + static create(blaze, params) { + const enableTrace = params.enableTrace ?? false; + + // Instantiate one-shot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + const oneShotPolicyId = oneShotScript.hash(); + // Instantiate protocol script (V0_2 uses V0_2ProtocolProtocolWithdraw) + const protocolScript = new V0_2Types.V0_2ProtocolProtocolWithdraw(oneShotPolicyId, enableTrace).Script; + + // Instantiate mint proxy script (parameterized by one-shot policy ID) + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + // Instantiate treasury script from treasury bootstrap + const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV0_2(blaze, { + version: "V0_2", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress + }, { + oneShotScript, + protocolScript, + mintProxyScript, + treasuryScript + }, { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput + }); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * The treasury bootstrap UTxO must be provided to consume it. + */ + async mintTreasuryNFT(treasuryBootstrapUtxo, initialDatum = { + circulating_supply: 0n + }) { + const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash); + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + const treasuryAddress = addressFromValidator(this.network, this.treasuryScript); + const datum = Data.serialize(V0_1TreasuryDatum, initialDatum); + const tx = await this.blaze.newTransaction().addInput(treasuryBootstrapUtxo).addMint(treasuryPolicyId, new Map([[treasuryAssetName, 1n]]), Data.Void()).lockAssets(treasuryAddress, makeValue(10000000n, [this.treasuryNFTAssetId, 1n]), datum).provideScript(this.treasuryScript); + return { + tx, + nftAssetId: this.treasuryNFTAssetId + }; + } + + /** + * Deploy the treasury script as a reference script. + */ + async deployTreasury() { + return deployScript(this.blaze, this.treasuryScript, this.scriptDeploymentAddress); + } + + /** + * Get the treasury datum. + */ + async getTreasuryDatum() { + const { + utxo: treasuryUtxo, + datum: treasuryDatum, + parsedDatum: parsedTreasuryDatum + } = await getDatumFromNFT(this.blaze, this.treasuryNFTAssetId, V0_1TreasuryDatum); + if (!treasuryUtxo) { + throw new Error("No UTXO found with the treasury NFT"); + } + if (!treasuryDatum) { + throw new Error("No treasury datum found"); + } + return { + treasuryUtxo, + treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the one-shot NFT with the initial datum. + * V0_2 uses V0_2Types.ProxyDatum which includes withdraw/deposit permissions. + */ + async mintOneShot(receiverAddress, datum) { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(V0_2Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings + }); + const baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[Core.AssetName(""), 1n]]), Data.Void()); + const tx = lockOrPayAssets(baseTx, receiverAddress, makeValue(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return { + tx, + policyId: this.oneShotPolicyId + }; + } + + /** + * Update the one-shot datum. + */ + async updateOneShotDatum(receiverAddress, newDatum) { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(Core.AssetId(this.oneShotPolicyId)); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + const serializedDatum = Data.serialize(V0_2Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings + }); + return lockOrPayAssets(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, makeValue(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum); + } + + /** + * Get the proxy datum from the one-shot token UTXO. + * V0_2 returns V0_2Types.ProxyDatum which includes withdraw/deposit permissions. + * Result is cached after first fetch. + */ + async getParsedProxyDatum() { + if (this.cachedProxyDatumResult) { + return this.cachedProxyDatumResult; + } + const { + proxyUtxo, + proxyDatum + } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(V0_2Types.ProxyDatum, proxyDatum); + const result = { + proxyUtxo, + proxyDatum, + parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return result; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0_2 minting uses V0_2Types.ProtocolRedeemer. + */ + async buildMintTx(assetAmount) { + const isBurn = assetAmount.amount < 0n; + const rewardAccount = this.getProtocolRewardAccount(); + const conversionRatio = 1; // V0_2 uses 1:1 conversion ratio (no decimals taken into account, etc.) + + const { + proxyUtxo, + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const treasuryScriptHash = Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury); + + // Get all reference inputs in one call (cached after first fetch) + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: treasuryScriptHash + }); + const { + utxo: treasuryUtxo, + parsedDatum: parsedTreasuryDatum + } = await getDatumFromNFT(this.blaze, this.treasuryNFTAssetId, V0_1Types.TreasuryDatum); + const circulatingSupply = parsedTreasuryDatum.circulating_supply; + const newCirculatingSupply = circulatingSupply + assetAmount.amount; + const newTreasuryDatum = Data.serialize(V0_1Types.TreasuryDatum, { + circulating_supply: newCirculatingSupply + }); + const reserveToken = parsedProxyDatum.settings.reserve_token.join(""); + const reserveTokenAmount = BigInt(conversionRatio) * assetAmount.amount; + const treasuryAddress = addressFromCredential(this.network, credentialFromScriptHash(treasuryScriptHash)); + const redeemer = isBurn ? Data.serialize(V0_2Types.ProtocolRedeemer, "Burn") : Data.serialize(V0_2Types.ProtocolRedeemer, "Mint"); + const assetName = Core.AssetName(this.assetNameHex); + const initialTreasuryValue = treasuryUtxo.output().amount(); + const valueToAdd = makeValue(0n, [reserveToken, reserveTokenAmount]); + const updatedTreasuryValue = Value.merge(initialTreasuryValue, valueToAdd); + const tx = this.blaze.newTransaction().addReferenceInput(proxyUtxo).addWithdrawal(rewardAccount, 0n, redeemer).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, Void()).addMint(this.stablecoinPolicyId, new Map([[assetName, assetAmount.amount]]), Void()).lockAssets(treasuryAddress, updatedTreasuryValue, newTreasuryDatum); + if (isBurn) { + const requiredSigners = getSignatureKeyHashesFromMultisigScript(parsedProxyDatum.settings.burn_permission).map(key => Core.Ed25519KeyHashHex(key)); + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + const receiverAddress = await this.blaze.wallet.getChangeAddress(); + addDirectOutput(tx, receiverAddress, makeValue(0n, [reserveToken, -assetAmount.amount])); + } else { + const requiredSigners = getSignatureKeyHashesFromMultisigScript(parsedProxyDatum.settings.mint_permission).map(key => Core.Ed25519KeyHashHex(key)); + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + } + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // V0_2-specific Operations: Deposit and Withdraw + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a deposit transaction to add reserve to the treasury. + */ + async buildDepositTx(assetAmount) { + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash + }); + const { + proxyUtxo, + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const { + treasuryUtxo, + treasuryDatum + } = await this.getTreasuryDatum(); + const redeemer = Data.serialize(V0_2Types.ProtocolRedeemer, { + Deposit: { + deposit_amount: assetAmount.amount + } + }); + const rewardAccount = this.getProtocolRewardAccount(); + const requiredSigners = getSignatureKeyHashesFromMultisigScript(parsedProxyDatum.settings.deposit_permission).map(key => Core.Ed25519KeyHashHex(key)); + const reserveToken = AssetId(assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join("")); + const treasuryAddress = addressFromCredential(this.network, credentialFromScriptHash(Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury))); + const inititalTreasuryValue = treasuryUtxo.output().amount(); + const depositValue = makeValue(0n, [reserveToken, assetAmount.amount]); + const newTreasuryValue = Value.merge(inititalTreasuryValue, depositValue); + const tx = this.blaze.newTransaction().addWithdrawal(rewardAccount, 0n, redeemer).addReferenceInput(proxyUtxo).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, Data.Void()).lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + return tx; + } + + /** + * Build a withdraw transaction to remove reserve from the treasury. + * @param amount Amount to withdraw from treasury + * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address + */ + async buildWithdrawTx(assetAmount, receiverAddress) { + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash + }); + const receiver = receiverAddress ? Core.Address.fromBech32(receiverAddress) : await this.blaze.wallet.getChangeAddress(); + const { + proxyUtxo, + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const { + treasuryUtxo, + treasuryDatum + } = await this.getTreasuryDatum(); + const redeemer = Data.serialize(V0_2Types.ProtocolRedeemer, { + Withdraw: { + withdraw_amount: assetAmount.amount + } + }); + const rewardAccount = this.getProtocolRewardAccount(); + const requiredSigners = getSignatureKeyHashesFromMultisigScript(parsedProxyDatum.settings.withdraw_permission).map(key => Core.Ed25519KeyHashHex(key)); + const reserveToken = AssetId(assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join("")); + const treasuryAddress = addressFromCredential(this.network, credentialFromScriptHash(Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury))); + const inititalTreasuryValue = treasuryUtxo.output().amount(); + const withdrawValue = makeValue(0n, [reserveToken, -assetAmount.amount]); + const newTreasuryValue = Value.merge(inititalTreasuryValue, withdrawValue); + const tx = this.blaze.newTransaction().addWithdrawal(rewardAccount, 0n, redeemer).addReferenceInput(proxyUtxo).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, Data.Void()); + addDirectOutput(tx, receiver, makeValue(0n, [reserveToken, assetAmount.amount])); + tx.lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + return tx; + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v0_2/index.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v0_2/index.js.map new file mode 100644 index 0000000000..30cff865c0 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v0_2/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["addressFromCredential","addressFromValidator","AssetId","Hash28ByteBase16","toHex","Data","parse","Void","Core","makeValue","Value","BaseTypes","V0_1Types","V0_2Types","TreasuryDatum","V0_1TreasuryDatum","addDirectOutput","credentialFromScriptHash","deployScript","getDatumFromNFT","getSignatureKeyHashesFromMultisigScript","lockOrPayAssets","RealfiSDKBase","RealfiSDKV0_2","constructor","blaze","params","scripts","cachedReferenceInputs","_defineProperty","oneShotScript","protocolScript","mintProxyScript","treasuryScript","oneShotPolicyId","PolicyId","hash","protocolScriptHash","stablecoinPolicyId","treasuryScriptHash","treasuryAssetName","AssetName","Buffer","from","treasuryNFTAssetId","toString","treasuryAddress","network","create","enableTrace","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","V0_2ProtocolProtocolWithdraw","BaseMintProxyMintProxyMint","V0_1TreasuryTreasurySpend","treasuryBootstrap","version","assetNameHex","scriptDeploymentAddress","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","mintTreasuryNFT","treasuryBootstrapUtxo","initialDatum","circulating_supply","treasuryPolicyId","datum","serialize","tx","newTransaction","addInput","addMint","Map","lockAssets","provideScript","nftAssetId","deployTreasury","getTreasuryDatum","utxo","treasuryUtxo","treasuryDatum","parsedDatum","parsedTreasuryDatum","Error","mintOneShot","receiverAddress","resolveBootstrapUtxo","serializedDatum","ProxyDatum","logic","settings","baseTx","policyId","updateOneShotDatum","newDatum","oneshotUtxo","provider","getUnspentOutputByNFT","getParsedProxyDatum","cachedProxyDatumResult","proxyUtxo","proxyDatum","getRawProxyDatum","parsedProxyDatum","result","buildMintTx","assetAmount","isBurn","amount","rewardAccount","getProtocolRewardAccount","conversionRatio","registry","treasury","refInputs","getScriptReferenceInputs","protocol","proxy","circulatingSupply","newCirculatingSupply","newTreasuryDatum","reserveToken","reserve_token","join","reserveTokenAmount","BigInt","redeemer","ProtocolRedeemer","assetName","initialTreasuryValue","output","valueToAdd","updatedTreasuryValue","merge","addReferenceInput","addWithdrawal","requiredSigners","burn_permission","map","key","Ed25519KeyHashHex","signer","addRequiredSigner","wallet","getChangeAddress","mint_permission","buildDepositTx","Deposit","deposit_amount","deposit_permission","id","inititalTreasuryValue","depositValue","newTreasuryValue","buildWithdrawTx","receiver","Address","fromBech32","Withdraw","withdraw_amount","withdraw_permission","withdrawValue"],"sources":["../../../../src/sdk/v0_2/index.ts"],"sourcesContent":["import {\n addressFromCredential,\n addressFromValidator,\n AssetId,\n Hash28ByteBase16,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse, Void } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport { AssetAmount } from \"@sundaeswap/asset\";\nimport {\n BaseTypes,\n V0_1Types,\n V0_2Types,\n} from \"../../generated-types/index.js\";\nimport { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport {\n addDirectOutput,\n credentialFromScriptHash,\n deployScript,\n getDatumFromNFT,\n getSignatureKeyHashesFromMultisigScript,\n type IBaseSDKParams,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n type IRealfiSDKWithTreasury,\n type ITreasuryDatumResult,\n lockOrPayAssets,\n RealfiSDKBase,\n} from \"../shared/index.js\";\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV0_2 {\n version: \"V0_2\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n assetNameHex: string;\n /**\n * The treasury bootstrap UTxO reference. The treasury script and NFT asset ID\n * are derived from this reference and the stablecoin policy ID.\n */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n };\n}\n\n/**\n * V0_2 SDK implementation.\n *\n * Extends V0_1 with deposit and withdraw operations for treasury management.\n * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here.\n */\nexport class RealfiSDKV0_2

\n extends RealfiSDKBase\n implements IRealfiSDKWithTreasury\n{\n readonly version = \"V0_2\" as const;\n\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n readonly treasuryNFTAssetId: Core.AssetId;\n readonly treasuryAddress: Core.Address;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n protected readonly treasuryScript: Core.Script;\n\n private constructor(\n blaze: Blaze,\n params: IBaseSDKParams,\n scripts: {\n oneShotScript: Core.Script;\n protocolScript: Core.Script;\n mintProxyScript: Core.Script;\n treasuryScript: Core.Script;\n },\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n super(blaze, params, cachedReferenceInputs);\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolScript = scripts.protocolScript;\n this.mintProxyScript = scripts.mintProxyScript;\n this.treasuryScript = scripts.treasuryScript;\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n this.treasuryScriptHash = this.treasuryScript.hash();\n\n // Derive treasury NFT asset ID from treasury script hash\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n this.treasuryNFTAssetId = Core.AssetId(\n this.treasuryScriptHash + treasuryAssetName.toString(),\n );\n this.treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n }\n\n /**\n * Create a V0_2 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_2,\n ): RealfiSDKV0_2 {\n const enableTrace = params.enableTrace ?? false;\n\n // Instantiate one-shot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n // Instantiate protocol script (V0_2 uses V0_2ProtocolProtocolWithdraw)\n const protocolScript = new V0_2Types.V0_2ProtocolProtocolWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Instantiate mint proxy script (parameterized by one-shot policy ID)\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n // Instantiate treasury script from treasury bootstrap\n const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV0_2(\n blaze,\n {\n version: \"V0_2\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n },\n {\n oneShotScript,\n protocolScript,\n mintProxyScript,\n treasuryScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the treasury NFT.\n * This creates a new treasury with an initial datum.\n * The treasury bootstrap UTxO must be provided to consume it.\n */\n async mintTreasuryNFT(\n treasuryBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash);\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n const treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n\n const datum = Data.serialize(V0_1TreasuryDatum, initialDatum);\n const tx = await this.blaze\n .newTransaction()\n .addInput(treasuryBootstrapUtxo)\n .addMint(\n treasuryPolicyId,\n new Map([[treasuryAssetName, 1n]]),\n Data.Void(),\n )\n .lockAssets(\n treasuryAddress,\n makeValue(10000000n, [this.treasuryNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.treasuryScript);\n\n return { tx, nftAssetId: this.treasuryNFTAssetId };\n }\n\n /**\n * Deploy the treasury script as a reference script.\n */\n async deployTreasury(): Promise {\n return deployScript(\n this.blaze,\n this.treasuryScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Get the treasury datum.\n */\n async getTreasuryDatum(): Promise> {\n const {\n utxo: treasuryUtxo,\n datum: treasuryDatum,\n parsedDatum: parsedTreasuryDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1TreasuryDatum,\n );\n\n if (!treasuryUtxo) {\n throw new Error(\"No UTXO found with the treasury NFT\");\n }\n if (!treasuryDatum) {\n throw new Error(\"No treasury datum found\");\n }\n\n return {\n treasuryUtxo,\n treasuryDatum,\n parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the one-shot NFT with the initial datum.\n * V0_2 uses V0_2Types.ProxyDatum which includes withdraw/deposit permissions.\n */\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: V0_2Types.ProxyDatum,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(V0_2Types.ProxyDatum, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n /**\n * Update the one-shot datum.\n */\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: V0_2Types.ProxyDatum,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(V0_2Types.ProxyDatum, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n }\n\n /**\n * Get the proxy datum from the one-shot token UTXO.\n * V0_2 returns V0_2Types.ProxyDatum which includes withdraw/deposit permissions.\n * Result is cached after first fetch.\n */\n async getParsedProxyDatum(): Promise<\n IProxyDatumResult\n > {\n if (this.cachedProxyDatumResult) {\n return this\n .cachedProxyDatumResult as IProxyDatumResult;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(V0_2Types.ProxyDatum, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Minting Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a mint (positive amount) or burn (negative amount) transaction.\n * V0_2 minting uses V0_2Types.ProtocolRedeemer.\n */\n async buildMintTx(assetAmount: AssetAmount): Promise {\n const isBurn = assetAmount.amount < 0n;\n const rewardAccount = this.getProtocolRewardAccount();\n const conversionRatio = 1; // V0_2 uses 1:1 conversion ratio (no decimals taken into account, etc.)\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n\n const treasuryScriptHash = Hash28ByteBase16(\n parsedProxyDatum.settings.registry.treasury,\n );\n\n // Get all reference inputs in one call (cached after first fetch)\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: treasuryScriptHash,\n });\n\n const { utxo: treasuryUtxo, parsedDatum: parsedTreasuryDatum } =\n await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1Types.TreasuryDatum,\n );\n\n const circulatingSupply = (parsedTreasuryDatum as V0_1TreasuryDatum)\n .circulating_supply;\n const newCirculatingSupply = circulatingSupply + assetAmount.amount;\n\n const newTreasuryDatum = Data.serialize(V0_1Types.TreasuryDatum, {\n circulating_supply: newCirculatingSupply,\n });\n\n const reserveToken = parsedProxyDatum.settings.reserve_token.join(\"\");\n const reserveTokenAmount = BigInt(conversionRatio) * assetAmount.amount;\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(treasuryScriptHash),\n );\n\n const redeemer = isBurn\n ? Data.serialize(V0_2Types.ProtocolRedeemer, \"Burn\")\n : Data.serialize(V0_2Types.ProtocolRedeemer, \"Mint\");\n\n const assetName = Core.AssetName(this.assetNameHex);\n const initialTreasuryValue = treasuryUtxo!.output().amount();\n const valueToAdd = makeValue(0n, [reserveToken, reserveTokenAmount]);\n const updatedTreasuryValue = Value.merge(initialTreasuryValue, valueToAdd);\n\n const tx = this.blaze\n .newTransaction()\n .addReferenceInput(proxyUtxo!)\n .addWithdrawal(rewardAccount, 0n, redeemer)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Void())\n .addMint(\n this.stablecoinPolicyId,\n new Map([[assetName, assetAmount.amount]]),\n Void(),\n )\n .lockAssets(treasuryAddress, updatedTreasuryValue, newTreasuryDatum);\n\n if (isBurn) {\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.burn_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n const receiverAddress = await this.blaze.wallet.getChangeAddress();\n addDirectOutput(\n tx,\n receiverAddress,\n makeValue(0n, [reserveToken, -assetAmount.amount]),\n );\n } else {\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.mint_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n }\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // V0_2-specific Operations: Deposit and Withdraw\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a deposit transaction to add reserve to the treasury.\n */\n async buildDepositTx(assetAmount: AssetAmount): Promise {\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: this.treasuryScriptHash,\n });\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum();\n\n const redeemer = Data.serialize(V0_2Types.ProtocolRedeemer, {\n Deposit: {\n deposit_amount: assetAmount.amount,\n },\n });\n\n const rewardAccount = this.getProtocolRewardAccount();\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.deposit_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n const reserveToken = AssetId(\n assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(\n Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury),\n ),\n );\n\n const inititalTreasuryValue = treasuryUtxo.output().amount();\n const depositValue = makeValue(0n, [reserveToken, assetAmount.amount]);\n const newTreasuryValue = Value.merge(inititalTreasuryValue, depositValue);\n\n const tx = this.blaze\n .newTransaction()\n .addWithdrawal(rewardAccount, 0n, redeemer)\n .addReferenceInput(proxyUtxo)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Data.Void())\n .lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum);\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n return tx;\n }\n\n /**\n * Build a withdraw transaction to remove reserve from the treasury.\n * @param amount Amount to withdraw from treasury\n * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address\n */\n async buildWithdrawTx(\n assetAmount: AssetAmount,\n receiverAddress?: string,\n ): Promise {\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: this.treasuryScriptHash,\n });\n\n const receiver = receiverAddress\n ? Core.Address.fromBech32(receiverAddress)\n : await this.blaze.wallet.getChangeAddress();\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum();\n\n const redeemer = Data.serialize(V0_2Types.ProtocolRedeemer, {\n Withdraw: {\n withdraw_amount: assetAmount.amount,\n },\n });\n\n const rewardAccount = this.getProtocolRewardAccount();\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.withdraw_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n const reserveToken = AssetId(\n assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(\n Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury),\n ),\n );\n\n const inititalTreasuryValue = treasuryUtxo.output().amount();\n const withdrawValue = makeValue(0n, [reserveToken, -assetAmount.amount]);\n const newTreasuryValue = Value.merge(inititalTreasuryValue, withdrawValue);\n\n const tx = this.blaze\n .newTransaction()\n .addWithdrawal(rewardAccount, 0n, redeemer)\n .addReferenceInput(proxyUtxo)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Data.Void());\n addDirectOutput(\n tx,\n receiver,\n makeValue(0n, [reserveToken, assetAmount.amount]),\n );\n tx.lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum);\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n return tx;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v0_3/index.js b/modules/realfi-partner-sdk/dist/esm/sdk/v0_3/index.js new file mode 100644 index 0000000000..91c03179f5 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v0_3/index.js @@ -0,0 +1,783 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import { addressFromCredential, addressFromValidator, AssetId, Ed25519KeyHashHex, Hash28ByteBase16, toHex } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import { Core, makeValue, Value } from "@blaze-cardano/sdk"; +import { BaseTypes, V0_1Types, V0_3Types } from "../../generated-types/index.js"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import { addDirectOutput, buildNonceFromUtxo, credentialFromScriptHash, deployScript, destinationToAddress, getDatumFromNFT, getSignatureKeyHashesFromMultisigScript, getSignedPayloadForDeposit, getSignedPayloadForWithdraw, parseCancelOwner, resolveOrderReferenceInputs, lockOrPayAssets, RealfiSDKBase, sortOrderInputs } from "../shared/index.js"; + +/** + * Parsed order information extracted from a UTXO. + */ + +/** + * Treasury state for order execution. + */ + +// eslint-disable-next-line @typescript-eslint/naming-convention + +/** + * V0_3 SDK implementation. + * + * Extends V0_1 with deposit and withdraw operations for treasury management. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +export class RealfiSDKV0_3 extends RealfiSDKBase { + constructor(blaze, params, scripts, cachedReferenceInputs) { + super(blaze, params, cachedReferenceInputs); + _defineProperty(this, "version", "V0_3"); + // Script hashes and policy IDs + _defineProperty(this, "stablecoinPolicyId", void 0); + _defineProperty(this, "oneShotPolicyId", void 0); + _defineProperty(this, "protocolScriptHash", void 0); + _defineProperty(this, "treasuryScriptHash", void 0); + _defineProperty(this, "treasuryNFTAssetId", void 0); + _defineProperty(this, "orderScriptHash", void 0); + _defineProperty(this, "orderScriptAddress", void 0); + _defineProperty(this, "treasuryAddress", void 0); + // Scripts + _defineProperty(this, "oneShotScript", void 0); + _defineProperty(this, "protocolScript", void 0); + _defineProperty(this, "mintProxyScript", void 0); + _defineProperty(this, "treasuryScript", void 0); + _defineProperty(this, "orderScript", void 0); + this.oneShotScript = scripts.oneShotScript; + this.protocolScript = scripts.protocolScript; + this.mintProxyScript = scripts.mintProxyScript; + this.treasuryScript = scripts.treasuryScript; + this.orderScript = scripts.orderScript; + this.treasuryAddress = addressFromValidator(this.network, this.treasuryScript); + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + this.treasuryScriptHash = this.treasuryScript.hash(); + this.orderScriptHash = this.orderScript.hash(); + this.orderScriptAddress = addressFromValidator(this.network, this.orderScript); + + // Derive treasury NFT asset ID from treasury script hash + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + this.treasuryNFTAssetId = Core.AssetId(this.treasuryScriptHash + treasuryAssetName.toString()); + } + + /** + * Create a V0_3 SDK instance. + */ + static create(blaze, params) { + const enableTrace = params.enableTrace ?? false; + + // Instantiate one-shot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + const oneShotPolicyId = oneShotScript.hash(); + // Instantiate protocol script (V0_3 uses V0_3ProtocolProtocolWithdraw) + const protocolScript = new V0_3Types.V0_3ProtocolProtocolWithdraw(oneShotPolicyId, enableTrace).Script; + // Instantiate mint proxy script (parameterized by one-shot policy ID) + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + // Instantiate treasury script from treasury bootstrap + const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + const orderScript = new V0_3Types.V0_3OrderOrderSpend(oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV0_3(blaze, { + version: "V0_3", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress + }, { + oneShotScript, + protocolScript, + mintProxyScript, + treasuryScript, + orderScript + }, { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + orderRefInput: params.referenceInputs?.orderRefInput + }); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * The treasury bootstrap UTxO must be provided to consume it. + */ + async mintTreasuryNFT(treasuryBootstrapUtxo, initialDatum = { + circulating_supply: 0n + }) { + const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash); + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + const treasuryAddress = addressFromValidator(this.network, this.treasuryScript); + const datum = Data.serialize(V0_1TreasuryDatum, initialDatum); + const tx = await this.blaze.newTransaction().addInput(treasuryBootstrapUtxo).addMint(treasuryPolicyId, new Map([[treasuryAssetName, 1n]]), Data.Void()).lockAssets(treasuryAddress, makeValue(10000000n, [this.treasuryNFTAssetId, 1n]), datum).provideScript(this.treasuryScript); + return { + tx, + nftAssetId: this.treasuryNFTAssetId + }; + } + + /** + * Deploy the treasury script as a reference script. + */ + async deployTreasury() { + return deployScript(this.blaze, this.treasuryScript, this.scriptDeploymentAddress); + } + + /** + * Deploy the Orders script as a reference script. + */ + async deployOrderContract() { + return deployScript(this.blaze, this.orderScript, this.scriptDeploymentAddress); + } + + /** + * Get the treasury datum. + */ + async getTreasuryDatum() { + const { + utxo: treasuryUtxo, + datum: treasuryDatum, + parsedDatum: parsedTreasuryDatum + } = await getDatumFromNFT(this.blaze, this.treasuryNFTAssetId, V0_1TreasuryDatum); + if (!treasuryUtxo) { + throw new Error("No UTXO found with the treasury NFT"); + } + if (!treasuryDatum) { + throw new Error("No treasury datum found"); + } + return { + treasuryUtxo, + treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the one-shot NFT with the initial datum. + * V0_3 uses ProxyDatum which includes withdraw/deposit permissions. + */ + async mintOneShot(receiverAddress, datum) { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(V0_3Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings + }); + const baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[Core.AssetName(""), 1n]]), Data.Void()); + const tx = lockOrPayAssets(baseTx, receiverAddress, makeValue(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return { + tx, + policyId: this.oneShotPolicyId + }; + } + + /** + * Update the one-shot datum. + */ + async updateOneShotDatum(receiverAddress, newDatum) { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(Core.AssetId(this.oneShotPolicyId)); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + const serializedDatum = Data.serialize(V0_3Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings + }); + return lockOrPayAssets(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, makeValue(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum); + } + + /** + * Get the proxy datum from the one-shot token UTXO. + * V0_3 returns ProxyDatum which includes withdraw/deposit permissions. + * Result is cached after first fetch. + */ + async getParsedProxyDatum() { + if (this.cachedProxyDatumResult) { + return this.cachedProxyDatumResult; + } + const { + proxyUtxo, + proxyDatum + } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(V0_3Types.ProxyDatum, proxyDatum); + const result = { + proxyUtxo, + proxyDatum, + parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return result; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Order Execution Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Parse order UTXOs into IOrderInfo objects and validate they're all the same type. + * @returns The parsed order infos and the action type (mint or burn) + */ + parseOrderInfos(orderUtxos) { + const orderInfos = []; + let actionType = null; + for (const utxo of orderUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(V0_3Types.OrderDatum, datumData); + let action; + let amount; + if ("OMint" in datum.action) { + action = "mint"; + amount = datum.action.OMint.amount; + } else if ("ORedeem" in datum.action) { + action = "burn"; + amount = datum.action.ORedeem.amount; + } else { + throw new Error("Unknown order action type"); + } + + // Verify all orders are the same type + if (actionType === null) { + actionType = action; + } else if (actionType !== action) { + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + } + orderInfos.push({ + utxo, + datum, + action, + amount + }); + } + if (!actionType) { + throw new Error("No orders to execute"); + } + return { + orderInfos, + actionType + }; + } + + /** + * Calculate treasury state for order execution. + * Validates that treasury has sufficient reserve tokens for burn operations. + */ + async calculateTreasuryState(totalAmount, actionType, reserveTokenAssetId) { + const { + treasuryUtxo, + parsedTreasuryDatum + } = await this.getTreasuryDatum(); + const treasuryValue = treasuryUtxo.output().amount(); + const treasuryAssets = treasuryValue.multiasset(); + const currentReserve = treasuryAssets?.get(reserveTokenAssetId) ?? 0n; + const newReserve = currentReserve + totalAmount; + + // For burn operations, validate treasury has enough reserve tokens + if (actionType === "burn") { + if (currentReserve === 0n) { + throw new Error("Treasury has no reserve tokens. Cannot execute burn orders."); + } + // totalAmount is negative for burns, so newReserve < 0 means insufficient funds + if (newReserve < 0n) { + throw new Error(`Insufficient reserve tokens in treasury. Treasury has ${currentReserve} but burn requires ${-totalAmount}.`); + } + } + return { + treasuryUtxo, + treasuryValue, + parsedTreasuryDatum, + currentReserve, + newReserve + }; + } + + /** + * Add destination outputs for executed orders. + * For mints: sends stablecoins to destinations. + * For burns: sends reserve tokens to destinations. + */ + addDestinationOutputs(tx, orderInfos, actionType, stablecoinAssetId, reserveTokenAssetId) { + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress(this.network, orderInfo.datum.destination); + if (actionType === "mint") { + const outputValue = makeValue(2000000n, [stablecoinAssetId, orderInfo.amount]); + addDirectOutput(tx, destAddress, outputValue); + } else { + // For burns, amount is negative in the datum, so negate it for output + const outputValue = makeValue(2000000n, [reserveTokenAssetId, -orderInfo.amount]); + console.log(destAddress.toBech32(), orderInfo.amount); + addDirectOutput(tx, destAddress, outputValue); + } + } + } + + /** + * Update treasury with new reserve balance and circulating supply. + */ + updateTreasury(tx, treasuryState, totalAmount, reserveTokenAssetId) { + const newTreasuryDatum = { + circulating_supply: treasuryState.parsedTreasuryDatum.circulating_supply + totalAmount + }; + const serializedTreasuryDatum = Data.serialize(V0_1TreasuryDatum, newTreasuryDatum); + tx.addInput(treasuryState.treasuryUtxo, Data.Void()); + const newTreasuryValue = Value.merge(makeValue(treasuryState.treasuryValue.coin(), [this.treasuryNFTAssetId, 1n]), makeValue(0n, [reserveTokenAssetId, treasuryState.newReserve])); + tx.lockAssets(this.treasuryAddress, newTreasuryValue, serializedTreasuryDatum); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * + * @param action "mint" | "burn" + * @param amount amount of stablecoin to mint or burn + * @param owner Optional owner multisig script. Defaults to the wallet's change address. + * @param destination When minting, where to send the minted stablecoins. When burning, where to send the redeemed assets. A datum can be attached. + * @param data Optional datum data. Defaults to Data.Void() + * @returns TxBuilder + */ + async buildOrderTx({ + action, + amount, + owner, + destination, + data = Data.Void() + }) { + const CONVERTION_RATIO = 1n; // Define conversion ratio between stablecoin and reserve token. Should come from datum/settings + const stableCoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const orderContractAddress = addressFromValidator(this.network, this.orderScript); + if (!owner) { + owner = { + Signature: { + key_hash: (await this.blaze.wallet.getChangeAddress()).getProps().paymentPart.hash.toString() + } + }; + } else { + const scriptTypes = Object.keys(owner); + if (scriptTypes.length !== 1 || scriptTypes[0] !== "Signature") { + //TODO: support other multisig types once the backend supports them + throw new Error("Only Signature multisig script is currently supported for owner"); + } + } + const orderAction = action === "mint" ? { + OMint: { + amount + } + } : { + ORedeem: { + amount: -amount + } + }; + const orderDatum = { + action: orderAction, + owner, + destination, + data + }; + const serializedDatum = Data.serialize(V0_3Types.OrderDatum, orderDatum); + const proxyDatum = await this.getParsedProxyDatum(); + const reserveTokenAssetId = Core.AssetId(proxyDatum.parsedProxyDatum.settings.reserve_token.join("")); + const tx = this.blaze.newTransaction(); + let valueToLock; + //TODO: include fees and min ada for when the order is executed? + if (action === "mint") { + // minting stablecoin, lock reserve token + const reserveTokenAmount = amount * CONVERTION_RATIO; + valueToLock = makeValue(1000000n, [reserveTokenAssetId, reserveTokenAmount]); + } else { + // burning stablecoin, lock stablecoin + valueToLock = makeValue(1000000n, [stableCoinAssetId, amount]); + } + tx.lockAssets(orderContractAddress, valueToLock, serializedDatum); + return tx; + } + /** + * Build the SignedPayload_ProtocolRedeemer from order inputs. + * Returns CBOR hex string to be signed and included in SignedMessage. + */ + async getSignedPayloadFromOrderInputs(orderUtxos) { + if (orderUtxos.length === 0) { + throw new Error("At least one order UTxO is required"); + } + + // Sort inputs for deterministic ordering + const sortedInputs = sortOrderInputs(orderUtxos); + + // Build nonce from first UTxO + const nonce = buildNonceFromUtxo(sortedInputs[0]); + + // Resolve UTxOs and build request list + const resolvedUtxos = await this.blaze.provider.resolveUnspentOutputs(sortedInputs); + const requestList = []; + let actionType = null; + for (const utxo of resolvedUtxos) { + const parsed = this.parseOrderActionForPayload(utxo); + + // Validate all orders are the same type + if (actionType === null) { + actionType = parsed.actionType; + } else if (actionType !== parsed.actionType) { + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + } + requestList.push(this.buildRequestFromUtxo(utxo, parsed.amount, parsed.destination)); + } + + // Build the action (ProtocolRedeemer) + const action = actionType === "OMint" ? { + Mint: { + requests: requestList + } + } : { + Burn: { + requests: requestList + } + }; + + // Build and serialize SignedPayload_ProtocolRedeemer + const signedPayload = { + action, + nonce + }; + const serialized = Data.serialize(V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload); + return serialized.toCbor().toString(); + } + + /** + * Parse an order UTxO and extract action type, amount, and destination. + */ + parseOrderActionForPayload(utxo) { + const datum = utxo.output().datum()?.asInlineData(); + if (!datum) { + throw new Error("Order UTXO has no inline datum"); + } + const parsedDatum = parse(V0_3Types.OrderDatum, datum); + if ("OMint" in parsedDatum.action) { + return { + actionType: "OMint", + amount: parsedDatum.action.OMint.amount, + destination: parsedDatum.destination + }; + } else if ("ORedeem" in parsedDatum.action) { + return { + actionType: "ORedeem", + amount: parsedDatum.action.ORedeem.amount, + destination: parsedDatum.destination + }; + } + throw new Error("Unknown order action type"); + } + + /** + * Build a Request from an order UTxO. + * Serializes the origin (OutputReference) as CBOR to match Aiken's format. + */ + buildRequestFromUtxo(utxo, amount, destination) { + const input = utxo.input(); + const txId = input.transactionId().toString(); + const outputIndex = input.index(); + + // Serialize origin as PlutusData (matching Aiken's cbor.serialise format) + // OutputReference struct: { transaction_id: ByteArray, output_index: Int } + const fieldsList = new Core.PlutusList(); + fieldsList.add(Core.PlutusData.newBytes(Buffer.from(txId, "hex"))); + fieldsList.add(Core.PlutusData.newInteger(outputIndex)); + const outputRefData = Core.PlutusData.newConstrPlutusData(new Core.ConstrPlutusData(0n, fieldsList)); + return { + origin: outputRefData.toCbor(), + amount, + destination + }; + } + + /** + * Build a transaction to execute orders. + * This consumes order UTXOs, validates the signed redeemer, mints/burns stablecoins, + * and sends the results to the destinations specified in the orders. + * + * @param params.orderInputs - The order transaction inputs to execute + * @param params.signedPayload - The signed payload hex string from getSignedPayloadFromOrderInputs + * @param params.signatures - Array of signatures from each signer + * @returns TxBuilder ready to be completed and signed + */ + async buildExecuteOrdersTx(params) { + const { + orderInputs, + signedPayload, + signatures + } = params; + + // Sort and resolve order UTXOs + const sortedOrderInputs = sortOrderInputs(orderInputs); + const orderUtxos = await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + + // Parse orders and validate they're all the same type + const { + orderInfos, + actionType + } = this.parseOrderInfos(orderUtxos); + + // Get protocol datum for permissions and registry + const { + proxyUtxo, + parsedProxyDatum + } = await this.getParsedProxyDatum(); + + // Get script reference inputs (uses caching from base class) + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + order: this.orderScriptHash, + treasury: this.treasuryScriptHash + }); + const protocolRefInput = refInputs.protocol; + const orderRefInput = refInputs.order; + const treasuryRefInput = refInputs.treasury; + if (!protocolRefInput || !orderRefInput || !treasuryRefInput) { + throw new Error("Missing reference script inputs. Make sure all scripts are deployed."); + } + + // Calculate total amount and get asset IDs + const totalAmount = orderInfos.reduce((sum, info) => sum + info.amount, 0n); + const reserveTokenAssetId = Core.AssetId(parsedProxyDatum.settings.reserve_token.join("")); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + + // Calculate treasury state and validate for burns + const treasuryState = await this.calculateTreasuryState(totalAmount, actionType, reserveTokenAssetId); + + // Build request_to_outputs mapping (1:1 since outputs are in same order as inputs) + const requestToOutputs = {}; + for (let i = 0; i < orderInfos.length; i++) { + requestToOutputs[i] = BigInt(i); + } + + // Serialize redeemers + const serializedSignedRedeemer = Data.serialize(V0_3Types.SignedRedeemer_ExtraProtocolRedeemer, { + extra: { + request_to_outputs: requestToOutputs + }, + payload: signedPayload, + signatures: signatures + }); + const executeRedeemer = Data.serialize(V0_3Types.OrderRedeemer, "Execute"); + + // Build the transaction + + const tx = this.blaze.newTransaction(); + + // Add order inputs with Execute redeemer + for (const orderInfo of orderInfos) { + tx.addInput(orderInfo.utxo, executeRedeemer); + } + + // Add reference inputs + tx.addReferenceInput(protocolRefInput); + tx.addReferenceInput(orderRefInput); + tx.addReferenceInput(proxyUtxo); + tx.addReferenceInput(treasuryRefInput); + + // Add protocol withdrawal with signed redeemer + const protocolRewardAccount = Core.RewardAccount.fromCredential({ + type: Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash + }, this.network); + tx.addWithdrawal(protocolRewardAccount, 0n, serializedSignedRedeemer); + + // Mint/burn stablecoins + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Add destination outputs + this.addDestinationOutputs(tx, orderInfos, actionType, stablecoinAssetId, reserveTokenAssetId); + + // Update treasury + this.updateTreasury(tx, treasuryState, totalAmount, reserveTokenAssetId); + + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + return tx; + } + + /** + * Build a transaction to cancel orders. + * This returns the locked assets to the specified destination address. + * The transaction must be signed by the owner(s) specified in each order's datum. + * + * @param params.orderInputs - The order transaction inputs to cancel + * @param params.destination - Optional destination address. Defaults to the wallet's change address. + * @returns TxBuilder ready to be completed and signed + */ + async buildCancelOrdersTx(params) { + const { + orderInputs, + destination, + versionHint + } = params; + + // Resolve order UTXOs + const orderUtxos = await this.blaze.provider.resolveUnspentOutputs(orderInputs); + if (orderUtxos.length === 0) { + throw new Error("No orders to cancel"); + } + const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput ? new Map([[this.orderScriptHash, this.cachedReferenceInputs.orderRefInput]]) : undefined; + const orderRefInputs = await resolveOrderReferenceInputs(this.blaze, orderUtxos, cachedOrderRefs, this.scriptDeploymentAddress); + + // Build the cancel redeemer + const cancelRedeemer = Data.serialize(V0_3Types.OrderRedeemer, "Cancel"); + + // Determine destination address + const destAddress = destination ?? (await this.blaze.wallet.getChangeAddress()); + + // Build the transaction + + const tx = this.blaze.newTransaction(); + for (const orderRefInput of orderRefInputs.values()) { + tx.addReferenceInput(orderRefInput); + } + + // cache current version of order script reference input + const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash); + if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = currentOrderRefInput; + } + + // Collect all required signers from order owners + const requiredSigners = new Set(); + + // Process each order + for (const utxo of orderUtxos) { + const owner = await parseCancelOwner(utxo, versionHint); + + // Extract required signers from the owner's MultisigScript + for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) { + requiredSigners.add(keyHash); + } + + // Add order input with Cancel redeemer + tx.addInput(utxo, cancelRedeemer); + + // Return the locked assets to destination + const outputValue = utxo.output().amount(); + addDirectOutput(tx, destAddress, outputValue); + } + + // Add all required signers to the transaction + for (const keyHash of requiredSigners) { + tx.addRequiredSigner(Ed25519KeyHashHex(keyHash)); + } + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations: Withdraw and Deposit + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to withdraw reserve tokens from the treasury. + * The transaction must be signed by the authorized withdraw permission signers. + * + * @param params.requests - Array of withdraw requests with destinations and amounts + * @param params.signedPayload - The signed payload hex string from getSignedPayloadForWithdraw + * @param params.signatures - Array of KeySignature tuples from authorized signers + * @returns TxBuilder ready to be completed and signed + */ + /** + * Build a withdraw transaction to remove reserve from the treasury. + * @param amount Amount to withdraw from treasury + * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address + */ + async buildWithdrawTx(assetAmount, receiverAddress) { + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash + }); + const receiver = receiverAddress ? Core.Address.fromBech32(receiverAddress) : await this.blaze.wallet.getChangeAddress(); + const { + proxyUtxo, + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const { + treasuryUtxo, + treasuryDatum + } = await this.getTreasuryDatum(); + const serializedPayload = getSignedPayloadForWithdraw(assetAmount.amount, treasuryUtxo); + // Build SignedRedeemer_ExtraProtocolRedeemer + const serializedSignedRedeemer = Data.serialize(V0_3Types.SignedRedeemer_ExtraProtocolRedeemer, { + extra: { + request_to_outputs: { + 0: 0n + } + }, + payload: serializedPayload, + signatures: [] + }); + const rewardAccount = this.getProtocolRewardAccount(); + const requiredSigners = getSignatureKeyHashesFromMultisigScript(parsedProxyDatum.settings.withdraw_permission).map(key => Core.Ed25519KeyHashHex(key)); + const reserveToken = AssetId(assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join("")); + const treasuryAddress = addressFromCredential(this.network, credentialFromScriptHash(Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury))); + const inititalTreasuryValue = treasuryUtxo.output().amount(); + const withdrawValue = makeValue(0n, [reserveToken, -assetAmount.amount]); + const newTreasuryValue = Value.merge(inititalTreasuryValue, withdrawValue); + const tx = this.blaze.newTransaction().addWithdrawal(rewardAccount, 0n, serializedSignedRedeemer).addReferenceInput(proxyUtxo).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, Data.Void()); + addDirectOutput(tx, receiver, makeValue(0n, [reserveToken, assetAmount.amount])); + tx.lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + return tx; + } + async buildDepositTx(assetAmount) { + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash + }); + const { + proxyUtxo, + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const { + treasuryUtxo, + treasuryDatum + } = await this.getTreasuryDatum(); + const serializedPayload = getSignedPayloadForDeposit(assetAmount.amount, treasuryUtxo); + // Build SignedRedeemer_ExtraProtocolRedeemer + const serializedSignedRedeemer = Data.serialize(V0_3Types.SignedRedeemer_ExtraProtocolRedeemer, { + extra: { + request_to_outputs: { + 0: 0n + } + }, + payload: serializedPayload, + signatures: [] + }); + const rewardAccount = this.getProtocolRewardAccount(); + const requiredSigners = getSignatureKeyHashesFromMultisigScript(parsedProxyDatum.settings.deposit_permission).map(key => Core.Ed25519KeyHashHex(key)); + const reserveToken = AssetId(assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join("")); + const treasuryAddress = addressFromCredential(this.network, credentialFromScriptHash(Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury))); + const inititalTreasuryValue = treasuryUtxo.output().amount(); + const depositValue = makeValue(0n, [reserveToken, assetAmount.amount]); + const newTreasuryValue = Value.merge(inititalTreasuryValue, depositValue); + const tx = this.blaze.newTransaction().addWithdrawal(rewardAccount, 0n, serializedSignedRedeemer).addReferenceInput(proxyUtxo).addReferenceInput(refInputs.protocol).addReferenceInput(refInputs.proxy).addReferenceInput(refInputs.treasury).addInput(treasuryUtxo, Data.Void()).lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + return tx; + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v0_3/index.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v0_3/index.js.map new file mode 100644 index 0000000000..6a27856b64 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v0_3/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["addressFromCredential","addressFromValidator","AssetId","Ed25519KeyHashHex","Hash28ByteBase16","toHex","Data","parse","Core","makeValue","Value","BaseTypes","V0_1Types","V0_3Types","TreasuryDatum","V0_1TreasuryDatum","addDirectOutput","buildNonceFromUtxo","credentialFromScriptHash","deployScript","destinationToAddress","getDatumFromNFT","getSignatureKeyHashesFromMultisigScript","getSignedPayloadForDeposit","getSignedPayloadForWithdraw","parseCancelOwner","resolveOrderReferenceInputs","lockOrPayAssets","RealfiSDKBase","sortOrderInputs","RealfiSDKV0_3","constructor","blaze","params","scripts","cachedReferenceInputs","_defineProperty","oneShotScript","protocolScript","mintProxyScript","treasuryScript","orderScript","treasuryAddress","network","oneShotPolicyId","PolicyId","hash","protocolScriptHash","stablecoinPolicyId","treasuryScriptHash","orderScriptHash","orderScriptAddress","treasuryAssetName","AssetName","Buffer","from","treasuryNFTAssetId","toString","create","enableTrace","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","V0_3ProtocolProtocolWithdraw","BaseMintProxyMintProxyMint","V0_1TreasuryTreasurySpend","treasuryBootstrap","V0_3OrderOrderSpend","version","assetNameHex","scriptDeploymentAddress","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","orderRefInput","mintTreasuryNFT","treasuryBootstrapUtxo","initialDatum","circulating_supply","treasuryPolicyId","datum","serialize","tx","newTransaction","addInput","addMint","Map","Void","lockAssets","provideScript","nftAssetId","deployTreasury","deployOrderContract","getTreasuryDatum","utxo","treasuryUtxo","treasuryDatum","parsedDatum","parsedTreasuryDatum","Error","mintOneShot","receiverAddress","resolveBootstrapUtxo","serializedDatum","ProxyDatum","logic","settings","baseTx","policyId","updateOneShotDatum","newDatum","oneshotUtxo","provider","getUnspentOutputByNFT","getParsedProxyDatum","cachedProxyDatumResult","proxyUtxo","proxyDatum","getRawProxyDatum","parsedProxyDatum","result","parseOrderInfos","orderUtxos","orderInfos","actionType","datumData","output","asInlineData","OrderDatum","action","amount","OMint","ORedeem","push","calculateTreasuryState","totalAmount","reserveTokenAssetId","treasuryValue","treasuryAssets","multiasset","currentReserve","get","newReserve","addDestinationOutputs","stablecoinAssetId","orderInfo","destAddress","destination","outputValue","console","log","toBech32","updateTreasury","treasuryState","newTreasuryDatum","serializedTreasuryDatum","newTreasuryValue","merge","coin","buildOrderTx","owner","data","CONVERTION_RATIO","stableCoinAssetId","orderContractAddress","Signature","key_hash","wallet","getChangeAddress","getProps","paymentPart","scriptTypes","Object","keys","length","orderAction","orderDatum","reserve_token","join","valueToLock","reserveTokenAmount","getSignedPayloadFromOrderInputs","sortedInputs","nonce","resolvedUtxos","resolveUnspentOutputs","requestList","parsed","parseOrderActionForPayload","buildRequestFromUtxo","Mint","requests","Burn","signedPayload","serialized","SignedPayload_ProtocolRedeemer","toCbor","input","txId","transactionId","index","fieldsList","PlutusList","add","PlutusData","newBytes","newInteger","outputRefData","newConstrPlutusData","ConstrPlutusData","origin","buildExecuteOrdersTx","orderInputs","signatures","sortedOrderInputs","refInputs","getScriptReferenceInputs","protocol","order","treasury","reduce","sum","info","requestToOutputs","i","BigInt","serializedSignedRedeemer","SignedRedeemer_ExtraProtocolRedeemer","extra","request_to_outputs","payload","executeRedeemer","OrderRedeemer","addReferenceInput","protocolRewardAccount","RewardAccount","fromCredential","type","CredentialType","ScriptHash","addWithdrawal","buildCancelOrdersTx","versionHint","cachedOrderRefs","undefined","orderRefInputs","cancelRedeemer","values","currentOrderRefInput","requiredSigners","Set","keyHash","addRequiredSigner","buildWithdrawTx","assetAmount","proxy","receiver","Address","fromBech32","serializedPayload","rewardAccount","getProtocolRewardAccount","withdraw_permission","map","key","reserveToken","id","registry","inititalTreasuryValue","withdrawValue","signer","buildDepositTx","deposit_permission","depositValue"],"sources":["../../../../src/sdk/v0_3/index.ts"],"sourcesContent":["import {\n addressFromCredential,\n addressFromValidator,\n AssetId,\n Ed25519KeyHashHex,\n Hash28ByteBase16,\n PlutusData,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport type { AssetAmount } from \"@sundaeswap/asset\";\nimport {\n BaseTypes,\n V0_1Types,\n V0_3Types,\n} from \"../../generated-types/index.js\";\nimport { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport type {\n Destination,\n MultisigScript,\n OrderDatum,\n ProxyDatum,\n SignatureList,\n} from \"../../generated-types/v0_3/index.js\";\nimport {\n addDirectOutput,\n buildNonceFromUtxo,\n credentialFromScriptHash,\n deployScript,\n destinationToAddress,\n getDatumFromNFT,\n getSignatureKeyHashesFromMultisigScript,\n getSignedPayloadForDeposit,\n getSignedPayloadForWithdraw,\n parseCancelOwner,\n resolveOrderReferenceInputs,\n type IBaseSDKParams,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n type IRealfiSDKWithTreasury,\n type ITreasuryDatumResult,\n type TProtocolVersion,\n lockOrPayAssets,\n RealfiSDKBase,\n sortOrderInputs,\n} from \"../shared/index.js\";\nimport type { Request } from \"../../generated-types/v0_3/index.js\";\n\n/**\n * Parsed order information extracted from a UTXO.\n */\ninterface IOrderInfo {\n utxo: Core.TransactionUnspentOutput;\n datum: OrderDatum;\n action: \"mint\" | \"burn\";\n amount: bigint;\n}\n\n/**\n * Treasury state for order execution.\n */\ninterface ITreasuryState {\n treasuryUtxo: Core.TransactionUnspentOutput;\n treasuryValue: Core.Value;\n parsedTreasuryDatum: V0_1TreasuryDatum;\n currentReserve: bigint;\n newReserve: bigint;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV0_3 {\n version: \"V0_3\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n assetNameHex: string;\n /**\n * The treasury bootstrap UTxO reference. The treasury script and NFT asset ID\n * are derived from this reference and the stablecoin policy ID.\n */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n };\n}\n\n/**\n * V0_3 SDK implementation.\n *\n * Extends V0_1 with deposit and withdraw operations for treasury management.\n * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here.\n */\nexport class RealfiSDKV0_3

\n extends RealfiSDKBase\n implements IRealfiSDKWithTreasury\n{\n readonly version = \"V0_3\" as const;\n\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n readonly treasuryNFTAssetId: Core.AssetId;\n readonly orderScriptHash: Core.Hash28ByteBase16;\n readonly orderScriptAddress: Core.Address;\n readonly treasuryAddress: Core.Address;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n protected readonly treasuryScript: Core.Script;\n protected readonly orderScript: Core.Script;\n\n private constructor(\n blaze: Blaze,\n params: IBaseSDKParams,\n scripts: {\n oneShotScript: Core.Script;\n protocolScript: Core.Script;\n mintProxyScript: Core.Script;\n treasuryScript: Core.Script;\n orderScript: Core.Script;\n },\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n super(blaze, params, cachedReferenceInputs);\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolScript = scripts.protocolScript;\n this.mintProxyScript = scripts.mintProxyScript;\n this.treasuryScript = scripts.treasuryScript;\n this.orderScript = scripts.orderScript;\n this.treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n this.treasuryScriptHash = this.treasuryScript.hash();\n this.orderScriptHash = this.orderScript.hash();\n this.orderScriptAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n\n // Derive treasury NFT asset ID from treasury script hash\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n this.treasuryNFTAssetId = Core.AssetId(\n this.treasuryScriptHash + treasuryAssetName.toString(),\n );\n }\n\n /**\n * Create a V0_3 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_3,\n ): RealfiSDKV0_3 {\n const enableTrace = params.enableTrace ?? false;\n\n // Instantiate one-shot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n // Instantiate protocol script (V0_3 uses V0_3ProtocolProtocolWithdraw)\n const protocolScript = new V0_3Types.V0_3ProtocolProtocolWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n // Instantiate mint proxy script (parameterized by one-shot policy ID)\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n // Instantiate treasury script from treasury bootstrap\n const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const orderScript = new V0_3Types.V0_3OrderOrderSpend(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV0_3(\n blaze,\n {\n version: \"V0_3\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n },\n {\n oneShotScript,\n protocolScript,\n mintProxyScript,\n treasuryScript,\n orderScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n orderRefInput: params.referenceInputs?.orderRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the treasury NFT.\n * This creates a new treasury with an initial datum.\n * The treasury bootstrap UTxO must be provided to consume it.\n */\n async mintTreasuryNFT(\n treasuryBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash);\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n const treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n\n const datum = Data.serialize(V0_1TreasuryDatum, initialDatum);\n const tx = await this.blaze\n .newTransaction()\n .addInput(treasuryBootstrapUtxo)\n .addMint(\n treasuryPolicyId,\n new Map([[treasuryAssetName, 1n]]),\n Data.Void(),\n )\n .lockAssets(\n treasuryAddress,\n makeValue(10000000n, [this.treasuryNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.treasuryScript);\n\n return { tx, nftAssetId: this.treasuryNFTAssetId };\n }\n\n /**\n * Deploy the treasury script as a reference script.\n */\n async deployTreasury(): Promise {\n return deployScript(\n this.blaze,\n this.treasuryScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Deploy the Orders script as a reference script.\n */\n async deployOrderContract(): Promise {\n return deployScript(\n this.blaze,\n this.orderScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Get the treasury datum.\n */\n async getTreasuryDatum(): Promise> {\n const {\n utxo: treasuryUtxo,\n datum: treasuryDatum,\n parsedDatum: parsedTreasuryDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1TreasuryDatum,\n );\n\n if (!treasuryUtxo) {\n throw new Error(\"No UTXO found with the treasury NFT\");\n }\n if (!treasuryDatum) {\n throw new Error(\"No treasury datum found\");\n }\n\n return {\n treasuryUtxo,\n treasuryDatum,\n parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the one-shot NFT with the initial datum.\n * V0_3 uses ProxyDatum which includes withdraw/deposit permissions.\n */\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: ProxyDatum,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(V0_3Types.ProxyDatum, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n /**\n * Update the one-shot datum.\n */\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: ProxyDatum,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(V0_3Types.ProxyDatum, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n }\n\n /**\n * Get the proxy datum from the one-shot token UTXO.\n * V0_3 returns ProxyDatum which includes withdraw/deposit permissions.\n * Result is cached after first fetch.\n */\n async getParsedProxyDatum(): Promise> {\n if (this.cachedProxyDatumResult) {\n return this.cachedProxyDatumResult as IProxyDatumResult;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(V0_3Types.ProxyDatum, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Order Execution Helpers\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Parse order UTXOs into IOrderInfo objects and validate they're all the same type.\n * @returns The parsed order infos and the action type (mint or burn)\n */\n private parseOrderInfos(orderUtxos: Core.TransactionUnspentOutput[]): {\n orderInfos: IOrderInfo[];\n actionType: \"mint\" | \"burn\";\n } {\n const orderInfos: IOrderInfo[] = [];\n let actionType: \"mint\" | \"burn\" | null = null;\n\n for (const utxo of orderUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(V0_3Types.OrderDatum, datumData) as OrderDatum;\n\n let action: \"mint\" | \"burn\";\n let amount: bigint;\n\n if (\"OMint\" in datum.action) {\n action = \"mint\";\n amount = datum.action.OMint.amount;\n } else if (\"ORedeem\" in datum.action) {\n action = \"burn\";\n amount = datum.action.ORedeem.amount;\n } else {\n throw new Error(\"Unknown order action type\");\n }\n\n // Verify all orders are the same type\n if (actionType === null) {\n actionType = action;\n } else if (actionType !== action) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n orderInfos.push({ utxo, datum, action, amount });\n }\n\n if (!actionType) {\n throw new Error(\"No orders to execute\");\n }\n\n return { orderInfos, actionType };\n }\n\n /**\n * Calculate treasury state for order execution.\n * Validates that treasury has sufficient reserve tokens for burn operations.\n */\n private async calculateTreasuryState(\n totalAmount: bigint,\n actionType: \"mint\" | \"burn\",\n reserveTokenAssetId: Core.AssetId,\n ): Promise {\n const { treasuryUtxo, parsedTreasuryDatum } = await this.getTreasuryDatum();\n const treasuryValue = treasuryUtxo.output().amount();\n const treasuryAssets = treasuryValue.multiasset();\n const currentReserve = treasuryAssets?.get(reserveTokenAssetId) ?? 0n;\n const newReserve = currentReserve + totalAmount;\n\n // For burn operations, validate treasury has enough reserve tokens\n if (actionType === \"burn\") {\n if (currentReserve === 0n) {\n throw new Error(\n \"Treasury has no reserve tokens. Cannot execute burn orders.\",\n );\n }\n // totalAmount is negative for burns, so newReserve < 0 means insufficient funds\n if (newReserve < 0n) {\n throw new Error(\n `Insufficient reserve tokens in treasury. Treasury has ${currentReserve} but burn requires ${-totalAmount}.`,\n );\n }\n }\n\n return {\n treasuryUtxo,\n treasuryValue,\n parsedTreasuryDatum,\n currentReserve,\n newReserve,\n };\n }\n\n /**\n * Add destination outputs for executed orders.\n * For mints: sends stablecoins to destinations.\n * For burns: sends reserve tokens to destinations.\n */\n private addDestinationOutputs(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n actionType: \"mint\" | \"burn\",\n stablecoinAssetId: Core.AssetId,\n reserveTokenAssetId: Core.AssetId,\n ): void {\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n\n if (actionType === \"mint\") {\n const outputValue = makeValue(2000000n, [\n stablecoinAssetId,\n orderInfo.amount,\n ]);\n addDirectOutput(tx, destAddress, outputValue);\n } else {\n // For burns, amount is negative in the datum, so negate it for output\n const outputValue = makeValue(2000000n, [\n reserveTokenAssetId,\n -orderInfo.amount,\n ]);\n console.log(destAddress.toBech32(), orderInfo.amount);\n addDirectOutput(tx, destAddress, outputValue);\n }\n }\n }\n\n /**\n * Update treasury with new reserve balance and circulating supply.\n */\n private updateTreasury(\n tx: TxBuilder,\n treasuryState: ITreasuryState,\n totalAmount: bigint,\n reserveTokenAssetId: Core.AssetId,\n ): void {\n const newTreasuryDatum: V0_1TreasuryDatum = {\n circulating_supply:\n treasuryState.parsedTreasuryDatum.circulating_supply + totalAmount,\n };\n const serializedTreasuryDatum = Data.serialize(\n V0_1TreasuryDatum,\n newTreasuryDatum,\n );\n\n tx.addInput(treasuryState.treasuryUtxo, Data.Void());\n const newTreasuryValue = Value.merge(\n makeValue(treasuryState.treasuryValue.coin(), [\n this.treasuryNFTAssetId,\n 1n,\n ]),\n makeValue(0n, [reserveTokenAssetId, treasuryState.newReserve]),\n );\n tx.lockAssets(\n this.treasuryAddress,\n newTreasuryValue,\n serializedTreasuryDatum,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Minting Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n *\n * @param action \"mint\" | \"burn\"\n * @param amount amount of stablecoin to mint or burn\n * @param owner Optional owner multisig script. Defaults to the wallet's change address.\n * @param destination When minting, where to send the minted stablecoins. When burning, where to send the redeemed assets. A datum can be attached.\n * @param data Optional datum data. Defaults to Data.Void()\n * @returns TxBuilder\n */\n async buildOrderTx({\n action,\n amount,\n owner,\n destination,\n data = Data.Void(),\n }: {\n action: \"mint\" | \"burn\";\n amount: bigint;\n owner?: MultisigScript;\n destination: Destination;\n data?: PlutusData;\n }): Promise {\n const CONVERTION_RATIO = 1n; // Define conversion ratio between stablecoin and reserve token. Should come from datum/settings\n const stableCoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const orderContractAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n\n if (!owner) {\n owner = {\n Signature: {\n key_hash: (await this.blaze.wallet.getChangeAddress())\n .getProps()\n .paymentPart!.hash!.toString(),\n },\n };\n } else {\n const scriptTypes = Object.keys(owner);\n if (scriptTypes.length !== 1 || scriptTypes[0] !== \"Signature\") {\n //TODO: support other multisig types once the backend supports them\n throw new Error(\n \"Only Signature multisig script is currently supported for owner\",\n );\n }\n }\n const orderAction =\n action === \"mint\"\n ? { OMint: { amount } }\n : { ORedeem: { amount: -amount } };\n const orderDatum: OrderDatum = {\n action: orderAction,\n owner,\n destination,\n data,\n };\n const serializedDatum = Data.serialize(V0_3Types.OrderDatum, orderDatum);\n const proxyDatum = await this.getParsedProxyDatum();\n const reserveTokenAssetId = Core.AssetId(\n proxyDatum.parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n\n const tx = this.blaze.newTransaction();\n\n let valueToLock: Core.Value;\n //TODO: include fees and min ada for when the order is executed?\n if (action === \"mint\") {\n // minting stablecoin, lock reserve token\n const reserveTokenAmount = amount * CONVERTION_RATIO;\n\n valueToLock = makeValue(1000000n, [\n reserveTokenAssetId,\n reserveTokenAmount,\n ]);\n } else {\n // burning stablecoin, lock stablecoin\n valueToLock = makeValue(1000000n, [stableCoinAssetId, amount]);\n }\n tx.lockAssets(orderContractAddress, valueToLock, serializedDatum);\n\n return tx;\n }\n /**\n * Build the SignedPayload_ProtocolRedeemer from order inputs.\n * Returns CBOR hex string to be signed and included in SignedMessage.\n */\n async getSignedPayloadFromOrderInputs(\n orderUtxos: Core.TransactionInput[],\n ): Promise {\n if (orderUtxos.length === 0) {\n throw new Error(\"At least one order UTxO is required\");\n }\n\n // Sort inputs for deterministic ordering\n const sortedInputs = sortOrderInputs(orderUtxos);\n\n // Build nonce from first UTxO\n const nonce = buildNonceFromUtxo(sortedInputs[0]!);\n\n // Resolve UTxOs and build request list\n const resolvedUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedInputs);\n const requestList: Request[] = [];\n let actionType: \"OMint\" | \"ORedeem\" | null = null;\n\n for (const utxo of resolvedUtxos) {\n const parsed = this.parseOrderActionForPayload(utxo);\n\n // Validate all orders are the same type\n if (actionType === null) {\n actionType = parsed.actionType;\n } else if (actionType !== parsed.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n requestList.push(\n this.buildRequestFromUtxo(utxo, parsed.amount, parsed.destination),\n );\n }\n\n // Build the action (ProtocolRedeemer)\n const action: V0_3Types.ProtocolRedeemer =\n actionType === \"OMint\"\n ? { Mint: { requests: requestList } }\n : { Burn: { requests: requestList } };\n\n // Build and serialize SignedPayload_ProtocolRedeemer\n const signedPayload: V0_3Types.SignedPayload_ProtocolRedeemer = {\n action,\n nonce,\n };\n const serialized = Data.serialize(\n V0_3Types.SignedPayload_ProtocolRedeemer,\n signedPayload,\n );\n return serialized.toCbor().toString();\n }\n\n /**\n * Parse an order UTxO and extract action type, amount, and destination.\n */\n private parseOrderActionForPayload(utxo: Core.TransactionUnspentOutput): {\n actionType: \"OMint\" | \"ORedeem\";\n amount: bigint;\n destination: V0_3Types.Destination;\n } {\n const datum = utxo.output().datum()?.asInlineData();\n if (!datum) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n\n const parsedDatum = parse(V0_3Types.OrderDatum, datum);\n\n if (\"OMint\" in parsedDatum.action) {\n return {\n actionType: \"OMint\",\n amount: parsedDatum.action.OMint.amount,\n destination: parsedDatum.destination,\n };\n } else if (\"ORedeem\" in parsedDatum.action) {\n return {\n actionType: \"ORedeem\",\n amount: parsedDatum.action.ORedeem.amount,\n destination: parsedDatum.destination,\n };\n }\n\n throw new Error(\"Unknown order action type\");\n }\n\n /**\n * Build a Request from an order UTxO.\n * Serializes the origin (OutputReference) as CBOR to match Aiken's format.\n */\n private buildRequestFromUtxo(\n utxo: Core.TransactionUnspentOutput,\n amount: bigint,\n destination: V0_3Types.Destination,\n ): Request {\n const input = utxo.input();\n const txId = input.transactionId().toString();\n const outputIndex = input.index();\n\n // Serialize origin as PlutusData (matching Aiken's cbor.serialise format)\n // OutputReference struct: { transaction_id: ByteArray, output_index: Int }\n const fieldsList = new Core.PlutusList();\n fieldsList.add(Core.PlutusData.newBytes(Buffer.from(txId, \"hex\")));\n fieldsList.add(Core.PlutusData.newInteger(outputIndex));\n const outputRefData = Core.PlutusData.newConstrPlutusData(\n new Core.ConstrPlutusData(0n, fieldsList),\n );\n\n return {\n origin: outputRefData.toCbor(),\n amount,\n destination,\n };\n }\n\n /**\n * Build a transaction to execute orders.\n * This consumes order UTXOs, validates the signed redeemer, mints/burns stablecoins,\n * and sends the results to the destinations specified in the orders.\n *\n * @param params.orderInputs - The order transaction inputs to execute\n * @param params.signedPayload - The signed payload hex string from getSignedPayloadFromOrderInputs\n * @param params.signatures - Array of signatures from each signer\n * @returns TxBuilder ready to be completed and signed\n */\n async buildExecuteOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n signedPayload: string;\n signatures: SignatureList;\n }): Promise {\n const { orderInputs, signedPayload, signatures } = params;\n\n // Sort and resolve order UTXOs\n const sortedOrderInputs = sortOrderInputs(orderInputs);\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs);\n\n // Parse orders and validate they're all the same type\n const { orderInfos, actionType } = this.parseOrderInfos(orderUtxos);\n\n // Get protocol datum for permissions and registry\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n\n // Get script reference inputs (uses caching from base class)\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n order: this.orderScriptHash,\n treasury: this.treasuryScriptHash,\n });\n const protocolRefInput = refInputs.protocol;\n const orderRefInput = refInputs.order;\n const treasuryRefInput = refInputs.treasury;\n\n if (!protocolRefInput || !orderRefInput || !treasuryRefInput) {\n throw new Error(\n \"Missing reference script inputs. Make sure all scripts are deployed.\",\n );\n }\n\n // Calculate total amount and get asset IDs\n const totalAmount = orderInfos.reduce((sum, info) => sum + info.amount, 0n);\n const reserveTokenAssetId = Core.AssetId(\n parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n // Calculate treasury state and validate for burns\n const treasuryState = await this.calculateTreasuryState(\n totalAmount,\n actionType,\n reserveTokenAssetId,\n );\n\n // Build request_to_outputs mapping (1:1 since outputs are in same order as inputs)\n const requestToOutputs: Record = {};\n for (let i = 0; i < orderInfos.length; i++) {\n requestToOutputs[i] = BigInt(i);\n }\n\n // Serialize redeemers\n const serializedSignedRedeemer = Data.serialize(\n V0_3Types.SignedRedeemer_ExtraProtocolRedeemer,\n {\n extra: { request_to_outputs: requestToOutputs },\n payload: signedPayload,\n signatures: signatures,\n },\n );\n const executeRedeemer = Data.serialize(V0_3Types.OrderRedeemer, \"Execute\");\n\n // Build the transaction\n\n const tx = this.blaze.newTransaction();\n\n // Add order inputs with Execute redeemer\n for (const orderInfo of orderInfos) {\n tx.addInput(orderInfo.utxo, executeRedeemer);\n }\n\n // Add reference inputs\n tx.addReferenceInput(protocolRefInput);\n tx.addReferenceInput(orderRefInput);\n tx.addReferenceInput(proxyUtxo);\n tx.addReferenceInput(treasuryRefInput);\n\n // Add protocol withdrawal with signed redeemer\n const protocolRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: this.protocolScriptHash,\n },\n this.network,\n );\n tx.addWithdrawal(protocolRewardAccount, 0n, serializedSignedRedeemer);\n\n // Mint/burn stablecoins\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Add destination outputs\n this.addDestinationOutputs(\n tx,\n orderInfos,\n actionType,\n stablecoinAssetId,\n reserveTokenAssetId,\n );\n\n // Update treasury\n this.updateTreasury(tx, treasuryState, totalAmount, reserveTokenAssetId);\n\n // Provide the mint proxy script for minting\n tx.provideScript(this.mintProxyScript);\n\n return tx;\n }\n\n /**\n * Build a transaction to cancel orders.\n * This returns the locked assets to the specified destination address.\n * The transaction must be signed by the owner(s) specified in each order's datum.\n *\n * @param params.orderInputs - The order transaction inputs to cancel\n * @param params.destination - Optional destination address. Defaults to the wallet's change address.\n * @returns TxBuilder ready to be completed and signed\n */\n async buildCancelOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n destination?: Core.Address;\n versionHint?: TProtocolVersion; // version of the orders to cancel. Optional, only to ensure correct datum parsing.\n }): Promise {\n const { orderInputs, destination, versionHint } = params;\n\n // Resolve order UTXOs\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(orderInputs);\n\n if (orderUtxos.length === 0) {\n throw new Error(\"No orders to cancel\");\n }\n\n const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput\n ? new Map([\n [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput],\n ])\n : undefined;\n\n const orderRefInputs = await resolveOrderReferenceInputs(\n this.blaze,\n orderUtxos,\n cachedOrderRefs,\n this.scriptDeploymentAddress,\n );\n\n // Build the cancel redeemer\n const cancelRedeemer = Data.serialize(V0_3Types.OrderRedeemer, \"Cancel\");\n\n // Determine destination address\n const destAddress =\n destination ?? (await this.blaze.wallet.getChangeAddress());\n\n // Build the transaction\n\n const tx = this.blaze.newTransaction();\n\n for (const orderRefInput of orderRefInputs.values()) {\n tx.addReferenceInput(orderRefInput);\n }\n\n // cache current version of order script reference input\n const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash);\n if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) {\n this.cachedReferenceInputs.orderRefInput = currentOrderRefInput;\n }\n\n // Collect all required signers from order owners\n const requiredSigners = new Set();\n\n // Process each order\n for (const utxo of orderUtxos) {\n const owner = await parseCancelOwner(utxo, versionHint);\n\n // Extract required signers from the owner's MultisigScript\n for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) {\n requiredSigners.add(keyHash);\n }\n\n // Add order input with Cancel redeemer\n tx.addInput(utxo, cancelRedeemer);\n\n // Return the locked assets to destination\n const outputValue = utxo.output().amount();\n addDirectOutput(tx, destAddress, outputValue);\n }\n\n // Add all required signers to the transaction\n for (const keyHash of requiredSigners) {\n tx.addRequiredSigner(Ed25519KeyHashHex(keyHash));\n }\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations: Withdraw and Deposit\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to withdraw reserve tokens from the treasury.\n * The transaction must be signed by the authorized withdraw permission signers.\n *\n * @param params.requests - Array of withdraw requests with destinations and amounts\n * @param params.signedPayload - The signed payload hex string from getSignedPayloadForWithdraw\n * @param params.signatures - Array of KeySignature tuples from authorized signers\n * @returns TxBuilder ready to be completed and signed\n */\n /**\n * Build a withdraw transaction to remove reserve from the treasury.\n * @param amount Amount to withdraw from treasury\n * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address\n */\n async buildWithdrawTx(\n assetAmount: AssetAmount,\n receiverAddress?: string,\n ): Promise {\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: this.treasuryScriptHash,\n });\n\n const receiver = receiverAddress\n ? Core.Address.fromBech32(receiverAddress)\n : await this.blaze.wallet.getChangeAddress();\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum();\n\n const serializedPayload = getSignedPayloadForWithdraw(\n assetAmount.amount,\n treasuryUtxo!,\n );\n // Build SignedRedeemer_ExtraProtocolRedeemer\n const serializedSignedRedeemer = Data.serialize(\n V0_3Types.SignedRedeemer_ExtraProtocolRedeemer,\n {\n extra: { request_to_outputs: { 0: 0n } },\n payload: serializedPayload,\n signatures: [],\n },\n );\n\n const rewardAccount = this.getProtocolRewardAccount();\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.withdraw_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n const reserveToken = AssetId(\n assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(\n Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury),\n ),\n );\n\n const inititalTreasuryValue = treasuryUtxo.output().amount();\n const withdrawValue = makeValue(0n, [reserveToken, -assetAmount.amount]);\n const newTreasuryValue = Value.merge(inititalTreasuryValue, withdrawValue);\n\n const tx = this.blaze\n .newTransaction()\n .addWithdrawal(rewardAccount, 0n, serializedSignedRedeemer)\n .addReferenceInput(proxyUtxo)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Data.Void());\n addDirectOutput(\n tx,\n receiver,\n makeValue(0n, [reserveToken, assetAmount.amount]),\n );\n tx.lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum);\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n return tx;\n }\n\n async buildDepositTx(assetAmount: AssetAmount): Promise {\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n proxy: this.mintProxyScript.hash(),\n treasury: this.treasuryScriptHash,\n });\n\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum();\n\n const serializedPayload = getSignedPayloadForDeposit(\n assetAmount.amount,\n treasuryUtxo!,\n );\n // Build SignedRedeemer_ExtraProtocolRedeemer\n const serializedSignedRedeemer = Data.serialize(\n V0_3Types.SignedRedeemer_ExtraProtocolRedeemer,\n {\n extra: { request_to_outputs: { 0: 0n } },\n payload: serializedPayload,\n signatures: [],\n },\n );\n\n const rewardAccount = this.getProtocolRewardAccount();\n const requiredSigners = getSignatureKeyHashesFromMultisigScript(\n parsedProxyDatum.settings.deposit_permission,\n ).map((key) => Core.Ed25519KeyHashHex(key));\n\n const reserveToken = AssetId(\n assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(\"\"),\n );\n const treasuryAddress = addressFromCredential(\n this.network,\n credentialFromScriptHash(\n Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury),\n ),\n );\n\n const inititalTreasuryValue = treasuryUtxo.output().amount();\n const depositValue = makeValue(0n, [reserveToken, assetAmount.amount]);\n const newTreasuryValue = Value.merge(inititalTreasuryValue, depositValue);\n\n const tx = this.blaze\n .newTransaction()\n .addWithdrawal(rewardAccount, 0n, serializedSignedRedeemer)\n .addReferenceInput(proxyUtxo)\n .addReferenceInput(refInputs.protocol!)\n .addReferenceInput(refInputs.proxy!)\n .addReferenceInput(refInputs.treasury!)\n .addInput(treasuryUtxo!, Data.Void())\n .lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum);\n\n for (const signer of requiredSigners) {\n tx.addRequiredSigner(signer);\n }\n\n return tx;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v0_4/index.js b/modules/realfi-partner-sdk/dist/esm/sdk/v0_4/index.js new file mode 100644 index 0000000000..a35b3b3726 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v0_4/index.js @@ -0,0 +1,1390 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import { addressFromValidator, blake2b_256, Ed25519KeyHashHex, HexBlob, PlutusData, toHex } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import { Core, makeValue, Value } from "@blaze-cardano/sdk"; +import { BaseTypes, V0_1Types, V0_4Types } from "../../generated-types/index.js"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import { addDirectOutput, addDestinationOutput, buildNonceFromUtxo, buildTimelockAddress, buildTimelockDestination, buildTimelockNativeScript, buildUnstakeMetadatum, UNSTAKE_METADATA_LABEL, deployScript, destinationToAddress, findReserveAsset, getDatumFromNFT, getSignatureKeyHashesFromMultisigScript, usdrToReserve, usdrToReserveCeil, computeReserveDeltas, parseCancelOwner, resolveOrderReferenceInputs, lockOrPayAssets, RealfiSDKBase, sortOrderInputs } from "../shared/index.js"; + +// ───────────────────────────────────────────────────────────────────────────── +// Types +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Parsed order information extracted from a UTXO. + */ + +const MIN_LOVELACE = 2000000n; + +/** + * Floor division for BigInt (rounds toward negative infinity). + * JavaScript BigInt `/` truncates toward zero, but Aiken (Plutus) + * uses floor division. These differ for negative dividends. + */ +/** + * Extract the requests list from a signed payload action, regardless of action type. + * Both TreasuryRequest and Request have `origin: { transaction_id, output_index }`. + */ +function getRequestsFromAction(action) { + if ("Mint" in action) return action.Mint.requests; + if ("Burn" in action) return action.Burn.requests; + if ("Withdraw" in action) return action.Withdraw.requests; + if ("Deposit" in action) return action.Deposit.requests; + if ("Stake" in action) return action.Stake.requests; + if ("Unstake" in action) return action.Unstake.requests; + throw new Error("Unknown action type in signed payload"); +} +function floorDiv(a, b) { + const q = a / b; + // Adjust if signs differ and there's a remainder + if ((a ^ b) < 0n && q * b !== a) { + return q - 1n; + } + return q; +} + +/** + * Calculate yield split between staked and unstaked portions. + * Matches on-chain deposit.ak logic: staked_yield_share = total_yield * vault_usdr / treasury_circulating + */ +function calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating) { + const stakedYieldShare = treasuryCirculating > 0n ? floorDiv(totalYield * vaultUSDr, treasuryCirculating) : 0n; + const unstakedYieldShare = totalYield - stakedYieldShare; + return { + stakedYieldShare, + unstakedYieldShare + }; +} +function toSpendOrderingKey(input) { + return `${input.transactionId().toString()}${input.index().toString()}`; +} + +// eslint-disable-next-line @typescript-eslint/naming-convention + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * V0_4 SDK implementation. + * + * Extends the protocol with staking (USDr->sUSDr), unstaking (sUSDr->USDr), + * multi-reserve assets, deposit with interest splitting, and index-based optimization. + * All order types (mint, burn, deposit, withdraw, stake, unstake) are request-based. + */ +export class RealfiSDKV0_4 extends RealfiSDKBase { + constructor(blaze, params, scripts, cachedReferenceInputs) { + super(blaze, { + version: "V0_4", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace: params.enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource + }, cachedReferenceInputs); + _defineProperty(this, "version", "V0_4"); + // Script hashes and policy IDs + _defineProperty(this, "stablecoinPolicyId", void 0); + _defineProperty(this, "oneShotPolicyId", void 0); + _defineProperty(this, "protocolScriptHash", void 0); + _defineProperty(this, "treasuryScriptHash", void 0); + _defineProperty(this, "treasuryNFTAssetId", void 0); + _defineProperty(this, "orderScriptHash", void 0); + _defineProperty(this, "orderScriptAddress", void 0); + _defineProperty(this, "treasuryAddress", void 0); + _defineProperty(this, "stakingVaultScriptHash", void 0); + _defineProperty(this, "stakingVaultAddress", void 0); + _defineProperty(this, "stakingVaultNFTAssetId", void 0); + _defineProperty(this, "sUSDrAssetNameHex", void 0); + // Scripts + _defineProperty(this, "oneShotScript", void 0); + _defineProperty(this, "protocolScript", void 0); + _defineProperty(this, "mintProxyScript", void 0); + _defineProperty(this, "treasuryScript", void 0); + _defineProperty(this, "orderScript", void 0); + _defineProperty(this, "stakingVaultScript", void 0); + this.sUSDrAssetNameHex = params.sUSDrAssetNameHex; + this.oneShotScript = scripts.oneShotScript; + this.protocolScript = scripts.protocolScript; + this.mintProxyScript = scripts.mintProxyScript; + this.treasuryScript = scripts.treasuryScript; + this.orderScript = scripts.orderScript; + this.stakingVaultScript = scripts.stakingVaultScript; + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + this.treasuryScriptHash = this.treasuryScript.hash(); + this.orderScriptHash = this.orderScript.hash(); + this.stakingVaultScriptHash = this.stakingVaultScript.hash(); + this.treasuryAddress = addressFromValidator(this.network, this.treasuryScript); + this.orderScriptAddress = addressFromValidator(this.network, this.orderScript); + this.stakingVaultAddress = addressFromValidator(this.network, this.stakingVaultScript); + + // Treasury NFT: policy = treasury script hash, name = "treasury" + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + this.treasuryNFTAssetId = Core.AssetId(this.treasuryScriptHash + treasuryAssetName.toString()); + + // Staking vault NFT: policy = staking vault script hash, name = "staking_vault" + const vaultAssetName = Core.AssetName(toHex(Buffer.from("staking_vault"))); + this.stakingVaultNFTAssetId = Core.AssetId(this.stakingVaultScriptHash + vaultAssetName.toString()); + } + + /** + * Create a V0_4 SDK instance. + */ + static create(blaze, params) { + const enableTrace = params.enableTrace ?? false; + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + const oneShotPolicyId = oneShotScript.hash(); + const protocolScript = new V0_4Types.V0_4ProtocolProtocolWithdraw(oneShotPolicyId, enableTrace).Script; + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + const orderScript = new V0_4Types.V0_4OrderOrderSpend(oneShotPolicyId, enableTrace).Script; + const stakingVaultScript = new V0_4Types.V0_4StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV0_4(blaze, { + version: "V0_4", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource + }, { + oneShotScript, + protocolScript, + mintProxyScript, + treasuryScript, + orderScript, + stakingVaultScript + }, { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + orderRefInput: params.referenceInputs?.orderRefInput, + stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput + }); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + */ + async mintTreasuryNFT(treasuryBootstrapUtxo, initialDatum = { + circulating_supply: 0n + }) { + const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash); + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + const datum = Data.serialize(V0_1TreasuryDatum, initialDatum); + const tx = await this.blaze.newTransaction().addInput(treasuryBootstrapUtxo).addMint(treasuryPolicyId, new Map([[treasuryAssetName, 1n]]), Data.Void()).lockAssets(this.treasuryAddress, makeValue(10000000n, [this.treasuryNFTAssetId, 1n]), datum).provideScript(this.treasuryScript); + return { + tx, + nftAssetId: this.treasuryNFTAssetId + }; + } + async deployTreasury() { + return deployScript(this.blaze, this.treasuryScript, this.scriptDeploymentAddress); + } + async deployOrderContract() { + return deployScript(this.blaze, this.orderScript, this.scriptDeploymentAddress); + } + async getTreasuryDatum() { + const { + utxo: treasuryUtxo, + datum: treasuryDatum, + parsedDatum: parsedTreasuryDatum + } = await getDatumFromNFT(this.blaze, this.treasuryNFTAssetId, V0_1TreasuryDatum); + if (!treasuryUtxo) { + throw new Error("No UTXO found with the treasury NFT"); + } + if (!treasuryDatum) { + throw new Error("No treasury datum found"); + } + return { + treasuryUtxo, + treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Staking Vault Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the staking vault NFT and create initial vault UTxO. + */ + async mintStakingVaultNFT(stakingVaultBootstrapUtxo, initialDatum = { + circulating_susdr: 0n + }) { + const vaultPolicyId = Core.PolicyId(this.stakingVaultScriptHash); + const vaultAssetName = Core.AssetName(toHex(Buffer.from("staking_vault"))); + const datum = Data.serialize(V0_4Types.VaultDatum, initialDatum); + const tx = await this.blaze.newTransaction().addInput(stakingVaultBootstrapUtxo).addMint(vaultPolicyId, new Map([[vaultAssetName, 1n]]), Data.Void()).lockAssets(this.stakingVaultAddress, makeValue(10000000n, [this.stakingVaultNFTAssetId, 1n]), datum).provideScript(this.stakingVaultScript); + return { + tx, + nftAssetId: this.stakingVaultNFTAssetId + }; + } + async deployStakingVault() { + return deployScript(this.blaze, this.stakingVaultScript, this.scriptDeploymentAddress); + } + + /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */ + getSusdrAssetId() { + return Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + } + async getVaultDatum() { + const { + utxo: vaultUtxo, + datum: vaultDatum, + parsedDatum: parsedVaultDatum + } = await getDatumFromNFT(this.blaze, this.stakingVaultNFTAssetId, V0_4Types.VaultDatum); + if (!vaultUtxo) { + throw new Error("No UTXO found with the staking vault NFT"); + } + if (!vaultDatum) { + throw new Error("No vault datum found"); + } + return { + vaultUtxo, + vaultDatum, + parsedVaultDatum: parsedVaultDatum + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + async mintOneShot(receiverAddress, datum) { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(V0_4Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings + }); + const baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[Core.AssetName(""), 1n]]), Data.Void()); + const tx = lockOrPayAssets(baseTx, receiverAddress, makeValue(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return { + tx, + policyId: this.oneShotPolicyId + }; + } + async updateOneShotDatum(receiverAddress, newDatum) { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(Core.AssetId(this.oneShotPolicyId)); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + const serializedDatum = Data.serialize(V0_4Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings + }); + return lockOrPayAssets(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, makeValue(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum); + } + async getParsedProxyDatum() { + if (this.cachedProxyDatumResult) { + return this.cachedProxyDatumResult; + } + const { + proxyUtxo, + proxyDatum + } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(V0_4Types.ProxyDatum, proxyDatum); + const result = { + proxyUtxo, + proxyDatum, + parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return result; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Order Builder Methods (6 separate methods, shared _buildOrderTx helper) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Internal helper to build an order transaction. + */ + async _buildOrderTx(params) { + const orderContractAddress = addressFromValidator(this.network, this.orderScript); + let owner = params.owner; + if (!owner) { + const addressProps = (await this.blaze.wallet.getChangeAddress()).getProps(); + const keyHash = addressProps.delegationPart?.hash ?? addressProps.paymentPart?.hash; + if (!keyHash) { + throw new Error("Could not derive owner key hash from wallet address"); + } + owner = { + Signature: { + key_hash: keyHash.toString() + } + }; + } + const orderDatum = { + action: params.action, + owner, + destination: params.destination, + data: params.data ?? Data.Void() + }; + const serializedDatum = Data.serialize(V0_4Types.OrderDatum, orderDatum); + const tx = this.newOrderTransaction(params.extraLabels); + tx.lockAssets(orderContractAddress, params.valueToLock, serializedDatum); + return tx; + } + + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + async buildMintOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Mint amount must be positive"); + } + const reserveAssetId = Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); + // Convert USDr amount to reserve amount using ceiling division + // to ensure enough reserve is locked for on-chain validation + const settings = await this.getVersionSettings(); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAmount = usdrToReserveCeil(params.amount, ra); + return this._buildOrderTx({ + action: { + OMint: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + async buildRedeemOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Redeem amount must be positive"); + } + const settings = await this.getVersionSettings(); + findReserveAsset(settings, params.reserveAsset); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + return this._buildOrderTx({ + action: { + ORedeem: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a deposit order: lock reserve tokens, request treasury deposit. + */ + async buildDepositOrderTx(params) { + if (params.principal < 0n) { + throw new Error("Deposit principal must be non-negative"); + } + if (params.principal === 0n && params.yield === 0n) { + throw new Error("Deposit must have non-zero principal or yield"); + } + const settings = await this.getVersionSettings(); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAssetId = Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); + let valueToLock; + if (params.yield >= 0n) { + // POSITIVE YIELD: need reserve backing for BOTH principal AND yield. + // Contract validates: reserve_to_usdr(treasury_delta) >= principal + yield + // So we must lock: usdrToReserveCeil(principal + yield) reserve tokens + const totalUSDrBacking = params.principal + params.yield; + if (totalUSDrBacking > 0n) { + const reserveAmount = usdrToReserveCeil(totalUSDrBacking, ra); + valueToLock = makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]); + } else { + valueToLock = makeValue(MIN_LOVELACE); + } + } else { + // NEGATIVE YIELD: lock principal (in reserve) + unstaked yield share (in USDr). + // The staked share comes from the vault (validated on-chain via vault USDr change). + const principalReserve = params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n; + valueToLock = principalReserve > 0n ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve]) : makeValue(MIN_LOVELACE); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + + // Fetch current state to calculate yield split + const { + parsedTreasuryDatum + } = await this.getTreasuryDatum(); + const vaultUtxo = (await this.getVaultDatum()).vaultUtxo; + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + const { + unstakedYieldShare + } = calculateYieldShares(params.yield, vaultUSDr, treasuryCirculating); + + // Lock only the unstaked portion (negated since unstakedYieldShare is negative) + if (unstakedYieldShare < 0n) { + valueToLock = Value.merge(valueToLock, makeValue(0n, [stablecoinAssetId, -unstakedYieldShare])); + } + } + return this._buildOrderTx({ + action: { + ODeposit: { + principal: params.principal, + yield: params.yield, + reserve_asset: params.reserveAsset + } + }, + valueToLock, + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a withdraw order: lock min ADA, request reserve token withdrawal. + */ + async buildWithdrawOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Withdraw amount must be positive"); + } + const settings = await this.getVersionSettings(); + findReserveAsset(settings, params.reserveAsset); + return this._buildOrderTx({ + action: { + OWithdraw: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: makeValue(MIN_LOVELACE), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + async buildStakeOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Stake amount must be positive"); + } + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + return this._buildOrderTx({ + action: { + OStake: { + amount: params.amount + } + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockTime) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockTime - Slot number after which the user can spend the released USDr + */ + async buildUnstakeOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Unstake amount must be positive"); + } + const sUSDrAssetId = Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + + // Build the timelock native script destination from the user's key hash + const timelockDestination = buildTimelockDestination(params.destination, params.unlockSlot); + const extraLabels = new Map([[UNSTAKE_METADATA_LABEL, buildUnstakeMetadatum(params.destination, params.unlockSlot)]]); + return this._buildOrderTx({ + action: { + OUnstake: { + amount: params.amount + } + }, + valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]), + owner: params.owner, + destination: timelockDestination, + data: params.data, + extraLabels + }); + } + + /** + * Build a timelock Destination from a user's destination and unlock time. + * + * Creates a native script: AllOf { Signature(userKeyHash), After(unlockTime) } + * and returns a Destination pointing to that script's address. + */ + + // ───────────────────────────────────────────────────────────────────────────── + // Signed Payload and Signing + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build the V0_4 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + * + * V0.4 contract requires signing the blake2b_256 hash of the payload, + * not the raw CBOR like V0.3. + */ + async getSignedPayloadFromOrderInputs(orderInputs) { + if (orderInputs.length === 0) { + throw new Error("At least one order input is required"); + } + const sortedInputs = sortOrderInputs(orderInputs); + const nonce = buildNonceFromUtxo(sortedInputs[0]); + const resolvedUtxos = await this.blaze.provider.resolveUnspentOutputs(sortedInputs); + let actionType = null; + const treasuryRequests = []; + const requests = []; + for (const utxo of resolvedUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(V0_4Types.OrderDatum, datumData); + const origin = { + transaction_id: utxo.input().transactionId().toString(), + output_index: utxo.input().index() + }; + const parsed = this.classifyOrderAction(datum); + if (actionType === null) { + actionType = parsed.actionType; + } else if (actionType !== parsed.actionType) { + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + } + if (parsed.isTreasuryAction) { + treasuryRequests.push({ + destination: datum.destination, + amount: parsed.amount, + yield: parsed.yield ?? 0n, + origin, + reserve_asset: parsed.reserveAsset + }); + } else { + requests.push({ + destination: datum.destination, + amount: parsed.amount, + origin + }); + } + } + let action; + switch (actionType) { + case "mint": + action = { + Mint: { + requests: treasuryRequests + } + }; + break; + case "burn": + action = { + Burn: { + requests: treasuryRequests + } + }; + break; + case "withdraw": + action = { + Withdraw: { + requests: treasuryRequests + } + }; + break; + case "deposit": + action = { + Deposit: { + requests: treasuryRequests + } + }; + break; + case "stake": + action = { + Stake: { + requests + } + }; + break; + case "unstake": + action = { + Unstake: { + requests + } + }; + break; + default: + throw new Error("No orders to process"); + } + const payload = { + action, + nonce + }; + const serialized = Data.serialize(V0_4Types.SignedPayload_ProtocolRedeemer, payload); + const signedPayload = serialized.toCbor().toString(); + const payloadHash = blake2b_256(HexBlob(signedPayload)); + return { + signedPayload, + payloadHash + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Execute Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to execute orders. + * + * Handles all 6 action types: mint, burn, deposit, withdraw, stake, unstake. + * The signedPayload is a CBOR hex string (matching V0.3 style). + * + * NOTE: All wallet fee inputs are pre-added to the transaction so that + * input indices for the ExtraProtocolRedeemer are stable. Coin selection + * during complete() should be a no-op since all wallet UTxOs are already + * included, but it cannot be disabled because Blaze also uses that phase + * to prepare collateral. + */ + async buildExecuteOrdersTx(params) { + const { + orderInputs, + signedPayload: signedPayloadCbor, + signatures + } = params; + + // Deserialize CBOR hex to object for internal use + const signedPayload = parse(V0_4Types.SignedPayload_ProtocolRedeemer, PlutusData.fromCbor(HexBlob(signedPayloadCbor))); + + // 1. Sort and resolve order UTxOs + const sortedOrderInputs = sortOrderInputs(orderInputs); + const orderUtxos = await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + + // 2. Parse orders and validate same type + const orderInfos = this.parseOrderInfos(orderUtxos); + const actionType = orderInfos[0].actionType; + + // 3. Get protocol settings + const { + proxyUtxo, + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const settings = parsedProxyDatum.settings; + + // 4. Determine what we need + const needsTreasury = ["mint", "burn", "withdraw", "deposit"].includes(actionType); + const needsVault = ["stake", "unstake", "deposit"].includes(actionType); + + // 5. Get script reference inputs + const scriptHashesNeeded = { + protocol: this.protocolScriptHash, + order: this.orderScriptHash + }; + if (needsTreasury) { + scriptHashesNeeded.treasury = this.treasuryScriptHash; + } + if (needsVault) { + scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash; + } + const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded); + + // 6. Fetch treasury and vault if needed + let treasuryUtxo; + let parsedTreasuryDatum; + if (needsTreasury) { + const treasuryResult = await this.getTreasuryDatum(); + treasuryUtxo = treasuryResult.treasuryUtxo; + parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum; + } + let vaultUtxo; + let parsedVaultDatum; + if (needsVault) { + const vaultResult = await this.getVaultDatum(); + vaultUtxo = vaultResult.vaultUtxo; + parsedVaultDatum = vaultResult.parsedVaultDatum; + } + + // 7. Gather wallet UTxOs so we can include them in index calculations. + // Blaze's complete() adds wallet inputs for fees, which shifts the + // ledger-sorted input indices. By fetching wallet UTxOs upfront and + // adding them explicitly, we know the full input set before computing + // indices for the ExtraProtocolRedeemer. + const walletUtxos = await this.blaze.wallet.getUnspentOutputs(); + const excludedInputIds = new Set(); + const utxoKey = inp => `${inp.transactionId().toString()}#${inp.index().toString()}`; + // Exclude script inputs (order, treasury, vault) + for (const orderInfo of orderInfos) { + excludedInputIds.add(utxoKey(orderInfo.utxo.input())); + } + if (treasuryUtxo) { + excludedInputIds.add(utxoKey(treasuryUtxo.input())); + } + if (vaultUtxo) { + excludedInputIds.add(utxoKey(vaultUtxo.input())); + } + // Exclude reference inputs (must be disjoint from regular inputs) + excludedInputIds.add(utxoKey(proxyUtxo.input())); + for (const refUtxo of Object.values(refInputs)) { + if (refUtxo) { + excludedInputIds.add(utxoKey(refUtxo.input())); + } + } + const feeUtxos = walletUtxos.filter(utxo => !excludedInputIds.has(utxoKey(utxo.input()))); + + // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex). + // Include ALL inputs: order, treasury, vault, AND wallet fee inputs. + const allInputRefs = orderInfos.map(o => o.utxo.input()); + if (treasuryUtxo) { + allInputRefs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + allInputRefs.push(vaultUtxo.input()); + } + for (const feeUtxo of feeUtxos) { + allInputRefs.push(feeUtxo.input()); + } + const sortedAllInputRefs = [...allInputRefs].sort((a, b) => { + const txA = a.transactionId().toString(); + const txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + const findInputIdx = input => { + const idx = sortedAllInputRefs.findIndex(r => r.transactionId().toString() === input.transactionId().toString() && r.index() === input.index()); + return BigInt(idx); + }; + const treasuryInputIdx = treasuryUtxo ? findInputIdx(treasuryUtxo.input()) : 0n; + const vaultInputIdx = vaultUtxo ? findInputIdx(vaultUtxo.input()) : undefined; + + // 8a. Correlate order inputs to signed request indices via origin fields. + // When all orders are present this produces the same identity mapping as before. + // When a subset is passed (partial execution), it maps each input to the + // correct request index in the signed payload. + const signedRequests = getRequestsFromAction(signedPayload.action); + const originToRequestIdx = new Map(); + for (let i = 0; i < signedRequests.length; i++) { + const o = signedRequests[i].origin; + originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i); + } + const inputToRequests = []; + const requestToOutputs = []; + for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) { + const input = orderInfos[outputIdx].utxo.input(); + const key = `${input.transactionId()}#${input.index()}`; + const requestIdx = originToRequestIdx.get(key); + if (requestIdx === undefined) { + throw new Error(`Order input ${key} not found in signed payload`); + } + inputToRequests.push(BigInt(requestIdx)); + requestToOutputs.push(BigInt(outputIdx)); + } + + // 9. Build outputs and compute output indices + // Output layout: + // [destination outputs] [extra outputs*] [treasury output if needed] [vault output if needed] + // *extra outputs: yield pot output for deposit with non-zero positive yield + const numDestOutputs = orderInfos.length; + + // For deposit with positive yield, the yield pot output is inserted after destinations + let numExtraOutputs = 0; + if (actionType === "deposit") { + const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n); + if (totalYield > 0n) { + // Check if unstaked yield share is > 0 + const vaultValue = vaultUtxo.output().amount(); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + const { + unstakedYieldShare + } = calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating); + if (unstakedYieldShare > 0n) { + numExtraOutputs = 1; + } + } + } + const treasuryOutputIdx = needsTreasury ? BigInt(numDestOutputs + numExtraOutputs) : 0n; + const vaultOutputIdx = needsVault ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0)) : undefined; + + // 10. Build ExtraProtocolRedeemer + const extra = { + request_to_outputs: requestToOutputs, + input_to_requests: inputToRequests, + treasury_input_idx: treasuryInputIdx, + treasury_output_idx: treasuryOutputIdx, + vault_input_idx: vaultInputIdx, + vault_output_idx: vaultOutputIdx + }; + + // 11. Build SignedRedeemer (payload is deserialized object in v0_4) + const serializedSignedRedeemer = Data.serialize(V0_4Types.SignedRedeemer_ExtraProtocolRedeemer, { + extra, + payload: signedPayload, + signatures + }); + const executeRedeemer = Data.serialize(V0_4Types.OrderRedeemer, "Execute"); + const feeUtxoByKey = new Map(feeUtxos.map(utxo => [utxoKey(utxo.input()), utxo])); + const orderInfoByKey = new Map(orderInfos.map(orderInfo => [utxoKey(orderInfo.utxo.input()), orderInfo])); + const treasuryInputKey = treasuryUtxo ? utxoKey(treasuryUtxo.input()) : null; + const vaultInputKey = vaultUtxo ? utxoKey(vaultUtxo.input()) : null; + const spendRedeemerInputs = [...orderInfos.map(orderInfo => orderInfo.utxo.input())]; + if (treasuryUtxo) { + spendRedeemerInputs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + spendRedeemerInputs.push(vaultUtxo.input()); + } + + // 12. Build the transaction + const tx = this.newOrderTransaction(); + + // Add all spend inputs in ledger order so the generated spend redeemer + // pointers line up with the final transaction input indices. + for (const inputRef of sortedAllInputRefs) { + const inputKey = utxoKey(inputRef); + const orderInfo = orderInfoByKey.get(inputKey); + if (orderInfo) { + tx.addInput(orderInfo.utxo, executeRedeemer); + continue; + } + if (treasuryInputKey && inputKey === treasuryInputKey) { + tx.addInput(treasuryUtxo, Data.Void()); + continue; + } + if (vaultInputKey && inputKey === vaultInputKey) { + tx.addInput(vaultUtxo, Data.Void()); + continue; + } + const feeUtxo = feeUtxoByKey.get(inputKey); + if (feeUtxo) { + tx.addInput(feeUtxo); + continue; + } + throw new Error(`buildExecuteOrdersTx: missing input metadata for ${inputKey}`); + } + + // Add reference inputs + tx.addReferenceInput(refInputs.protocol); + tx.addReferenceInput(refInputs.order); + tx.addReferenceInput(proxyUtxo); + if (refInputs.treasury) { + tx.addReferenceInput(refInputs.treasury); + } + if (refInputs.stakingVault) { + tx.addReferenceInput(refInputs.stakingVault); + } + + // Add protocol withdrawal with signed redeemer + const protocolRewardAccount = Core.RewardAccount.fromCredential({ + type: Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash + }, this.network); + tx.addWithdrawal(protocolRewardAccount, 0n, serializedSignedRedeemer); + + // Build per-action-type outputs, minting, and state updates + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const sUSDrAssetId = Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + switch (actionType) { + case "mint": + this.buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + break; + case "burn": + this.buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + break; + case "withdraw": + this.buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings); + break; + case "deposit": + this.buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings); + break; + case "stake": + this.buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum); + break; + case "unstake": + this.buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum); + break; + } + + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + this.realignSpendRedeemerIndices(tx, spendRedeemerInputs); + return tx; + } + realignSpendRedeemerIndices(tx, spendRedeemerInputs) { + const txInternals = tx; + const bodyInputs = txInternals.body.inputs().values(); + const redeemers = [...txInternals.redeemers.values()]; + const spendRedeemers = redeemers.filter(redeemer => redeemer.tag() === Core.RedeemerTag.Spend).sort((a, b) => Number(a.index() - b.index())); + if (spendRedeemers.length !== spendRedeemerInputs.length) { + throw new Error(`buildExecuteOrdersTx: spend redeemer count mismatch. inputs=${spendRedeemerInputs.length} redeemers=${spendRedeemers.length}`); + } + const expectedOrdering = [...spendRedeemerInputs].sort((a, b) => toSpendOrderingKey(a).localeCompare(toSpendOrderingKey(b))); + for (let i = 0; i < spendRedeemers.length; i++) { + const input = expectedOrdering[i]; + const actualIndex = bodyInputs.findIndex(bodyInput => bodyInput.transactionId().toString() === input.transactionId().toString() && bodyInput.index() === input.index()); + if (actualIndex < 0) { + throw new Error(`buildExecuteOrdersTx: could not find spend input ${input.transactionId().toString()}#${input.index().toString()} in tx body`); + } + spendRedeemers[i].setIndex(BigInt(actualIndex)); + } + txInternals.redeemers.setValues(redeemers); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Per-Action Execute Builders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + */ + buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send USDr to each destination + for (const orderInfo of orderInfos) { + addDestinationOutput(tx, this.network, orderInfo.datum.destination, makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount])); + } + + // Mint USDr + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Compute per-reserve-asset deltas + const reserveDeltas = computeReserveDeltas(orderInfos, settings); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalAmount); + } + + /** + * Burn: USDr burned, reserve sent to destinations. + */ + buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + // Amount is negative in datum for burns + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send reserve tokens to each destination + // Convert USDr amount to reserve amount using floor division (protocol-protective) + for (const orderInfo of orderInfos) { + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const reserveAssetId = Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + const reserveAmount = usdrToReserve(-orderInfo.amount, ra); + addDestinationOutput(tx, this.network, orderInfo.datum.destination, makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount])); + } + + // Burn USDr (totalAmount is negative) + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Compute per-reserve-asset deltas + const reserveDeltas = computeReserveDeltas(orderInfos, settings); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalAmount); + } + + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings) { + // Destination outputs: send reserve tokens to each destination + // Convert USDr amount to reserve amount using floor division + for (const orderInfo of orderInfos) { + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const reserveAssetId = Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + const reserveAmount = usdrToReserve(orderInfo.amount, ra); + addDestinationOutput(tx, this.network, orderInfo.datum.destination, makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount])); + } + + // Update treasury: reserve decreases, no circulating_supply change + // On-chain: amount_sign = -1 for withdraw, expected_delta = usdr_to_reserve(-amount, ra) + const reserveDeltas = computeReserveDeltas(orderInfos, settings, true); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, 0n); + } + + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings) { + const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n); + + // Destination outputs: min ADA to each destination (contract validates via request_to_outputs) + for (const orderInfo of orderInfos) { + addDestinationOutput(tx, this.network, orderInfo.datum.destination, makeValue(MIN_LOVELACE)); + } + + // Calculate yield split matching on-chain deposit.ak logic + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + const { + stakedYieldShare, + unstakedYieldShare + } = calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating); + if (totalYield > 0n) { + // Positive yield: mint USDr for the yield amount + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + + // Send unstaked yield share to the yield pot address + if (unstakedYieldShare > 0n) { + addDestinationOutput(tx, this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum" + }, makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare])); + } + } else if (totalYield < 0n) { + // Negative yield: burn USDr (sourced from order inputs already consumed) + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + } + // totalYield === 0n: no mint/burn needed + + // Update treasury: reserve increases, circulating_supply changes by yield. + // For positive yield, treasury receives reserve backing for BOTH principal AND yield. + // For negative yield, treasury only receives reserve backing for principal. + const reserveDeltas = new Map(); + for (const orderInfo of orderInfos) { + const assetId = orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]; + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const yieldValue = orderInfo.yield ?? 0n; + + // Calculate USDr backing needed based on yield sign + const usdrBacking = yieldValue >= 0n ? orderInfo.amount + yieldValue // principal + yield for positive yield + : orderInfo.amount; // just principal for negative yield + + // Convert USDr backing to reserve amount + const reserveAmount = usdrToReserve(usdrBacking, ra); + reserveDeltas.set(assetId, (reserveDeltas.get(assetId) ?? 0n) + reserveAmount); + } + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalYield); + + // Update vault: sUSDr unchanged, USDr changes by staked yield share + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, 0n, stakedYieldShare); + } + + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + */ + buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum) { + const totalUSDrStaked = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Calculate vault USDr balance + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + + // Calculate total sUSDr to mint using batch formula (matches on-chain stake.ak) + // On-chain: susdr_to_mint = total_usdr_staked * circulating_susdr_before / vault_usdr_before + let totalSUSDrMinted; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + totalSUSDrMinted = totalUSDrStaked; + } else { + totalSUSDrMinted = totalUSDrStaked * circulatingSUSDr / vaultUSDr; + } + + // Calculate per-order sUSDr for destination outputs (matches validate_stake_outputs). + // Note: sum(per-order floors) may be less than totalSUSDrMinted by at most (n-1) units + // due to floor(sum) >= sum(floor). The difference ("dust") is minted but not assigned + // to any destination output — it ends up in the executor's change output. This is an + // inherent consequence of the on-chain contract requiring both aggregate mint equality + // and per-request floor equality on outputs. + for (const orderInfo of orderInfos) { + let sUSDrAmount; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + sUSDrAmount = orderInfo.amount; + } else { + sUSDrAmount = orderInfo.amount * circulatingSUSDr / vaultUSDr; + } + addDestinationOutput(tx, this.network, orderInfo.datum.destination, makeValue(MIN_LOVELACE, [sUSDrAssetId, sUSDrAmount])); + } + + // Mint sUSDr + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]), Data.Void()); + + // Update vault: USDr increases by staked amount, circulating_susdr increases + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, totalSUSDrMinted, totalUSDrStaked); + } + + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + */ + buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum) { + const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Calculate vault USDr balance + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + if (circulatingSUSDr === 0n) { + throw new Error("Cannot unstake: no sUSDr in circulation"); + } + + // Calculate USDr to release for each order + let totalUSDrReleased = 0n; + for (const orderInfo of orderInfos) { + const uSDrAmount = orderInfo.amount * vaultUSDr / circulatingSUSDr; + totalUSDrReleased += uSDrAmount; + + // Send USDr to the destination (native script timelock address). + // Use an explicit output because lockAssets requires a datum, but the + // contract expects NoDatum. + const destAddress = destinationToAddress(this.network, orderInfo.datum.destination); + const output = new Core.TransactionOutput(destAddress, makeValue(MIN_LOVELACE, [stablecoinAssetId, uSDrAmount])); + tx.addOutput(output); + } + + // Burn sUSDr + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]), Data.Void()); + + // Update vault: USDr decreases, circulating_susdr decreases + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, -totalSUSDrBurned, -totalUSDrReleased); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Cancel Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to cancel orders. + */ + async buildCancelOrdersTx(params) { + const { + orderInputs, + destination, + availableSigners, + versionHint + } = params; + const orderUtxos = await this.blaze.provider.resolveUnspentOutputs(orderInputs); + if (orderUtxos.length === 0) { + throw new Error("No orders to cancel"); + } + const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput ? new Map([[this.orderScriptHash, this.cachedReferenceInputs.orderRefInput]]) : undefined; + const orderRefInputs = await resolveOrderReferenceInputs(this.blaze, orderUtxos, cachedOrderRefs, this.scriptDeploymentAddress); + const cancelRedeemer = Data.serialize(V0_4Types.OrderRedeemer, "Cancel"); + const destAddress = destination ?? (await this.blaze.wallet.getChangeAddress()); + const tx = this.newOrderTransaction(); + for (const orderRefInput of orderRefInputs.values()) { + tx.addReferenceInput(orderRefInput); + } + + // cache current version of order script reference input + const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash); + if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = currentOrderRefInput; + } + const requiredSigners = new Set(); + for (const utxo of orderUtxos) { + const owner = await parseCancelOwner(utxo, versionHint); + for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) { + requiredSigners.add(keyHash); + } + tx.addInput(utxo, cancelRedeemer); + const outputValue = utxo.output().amount(); + addDirectOutput(tx, destAddress, outputValue); + } + const effectiveSigners = availableSigners ? new Set([...requiredSigners].filter(k => availableSigners.has(k))) : requiredSigners; + for (const keyHash of effectiveSigners) { + tx.addRequiredSigner(Ed25519KeyHashHex(keyHash)); + } + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Private Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Parse order UTxOs into IOrderInfo objects and validate they are all the same type. + */ + parseOrderInfos(orderUtxos) { + const orderInfos = []; + let expectedActionType = null; + for (const utxo of orderUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(V0_4Types.OrderDatum, datumData); + const classified = this.classifyOrderAction(datum); + if (expectedActionType === null) { + expectedActionType = classified.actionType; + } else if (expectedActionType !== classified.actionType) { + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + } + orderInfos.push({ + utxo, + datum, + actionType: classified.actionType, + amount: classified.amount, + yield: classified.yield, + reserveAsset: classified.reserveAsset + }); + } + if (orderInfos.length === 0) { + throw new Error("No orders to execute"); + } + return orderInfos; + } + + /** + * Classify an order action from its datum. + */ + classifyOrderAction(datum) { + const action = datum.action; + if ("OMint" in action) { + return { + actionType: "mint", + amount: action.OMint.amount, + reserveAsset: action.OMint.reserve_asset, + isTreasuryAction: true + }; + } else if ("ORedeem" in action) { + return { + actionType: "burn", + // ORedeem.amount is positive (absolute value locked in order UTxO). + // Negate it so the request.amount is negative for burn (USDr leaving circulation), + // matching the contract's expectation: ORedeem.amount == -request.amount. + amount: -action.ORedeem.amount, + reserveAsset: action.ORedeem.reserve_asset, + isTreasuryAction: true + }; + } else if ("ODeposit" in action) { + return { + actionType: "deposit", + amount: action.ODeposit.principal, + yield: action.ODeposit.yield, + reserveAsset: action.ODeposit.reserve_asset, + isTreasuryAction: true + }; + } else if ("OWithdraw" in action) { + return { + actionType: "withdraw", + amount: action.OWithdraw.amount, + reserveAsset: action.OWithdraw.reserve_asset, + isTreasuryAction: true + }; + } else if ("OStake" in action) { + return { + actionType: "stake", + amount: action.OStake.amount, + isTreasuryAction: false + }; + } else if ("OUnstake" in action) { + return { + actionType: "unstake", + amount: action.OUnstake.amount, + isTreasuryAction: false + }; + } + throw new Error("Unknown order action type"); + } + + /** + * Update treasury output with new reserve and circulating supply. + */ + updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, circulatingSupplyDelta) { + const newTreasuryDatum = { + circulating_supply: parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta + }; + const serializedTreasuryDatum = Data.serialize(V0_1TreasuryDatum, newTreasuryDatum); + const treasuryValue = treasuryUtxo.output().amount(); + + // Start with ADA + treasury NFT + let newTreasuryValue = makeValue(treasuryValue.coin(), [this.treasuryNFTAssetId, 1n]); + + // Apply all reserve asset deltas + const modifiedAssetIds = new Set([this.treasuryNFTAssetId.toString()]); + for (const [reserveAssetId, delta] of reserveDeltas.entries()) { + const currentReserve = treasuryValue.multiasset()?.get(Core.AssetId(reserveAssetId)) ?? 0n; + const newReserve = currentReserve + delta; + newTreasuryValue = Value.merge(newTreasuryValue, makeValue(0n, [Core.AssetId(reserveAssetId), newReserve])); + modifiedAssetIds.add(reserveAssetId); + } + + // Preserve any other assets not modified + const existingMultiasset = treasuryValue.multiasset(); + if (existingMultiasset) { + for (const [assetId, amount] of existingMultiasset.entries()) { + if (!modifiedAssetIds.has(assetId)) { + newTreasuryValue = Value.merge(newTreasuryValue, makeValue(0n, [Core.AssetId(assetId), amount])); + } + } + } + tx.lockAssets(this.treasuryAddress, newTreasuryValue, serializedTreasuryDatum); + } + + /** + * Update vault output with new circulating_susdr and USDr balance. + */ + updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, sUSDrDelta, uSDrDelta = 0n) { + const newVaultDatum = { + circulating_susdr: parsedVaultDatum.circulating_susdr + sUSDrDelta + }; + const serializedVaultDatum = Data.serialize(V0_4Types.VaultDatum, newVaultDatum); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + + // Start with existing vault value, then adjust USDr + let newVaultValue = vaultUtxo.output().amount(); + if (uSDrDelta !== 0n) { + const currentUSDr = newVaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const newUSDr = currentUSDr + uSDrDelta; + newVaultValue = makeValue(newVaultValue.coin(), [this.stakingVaultNFTAssetId, 1n]); + if (newUSDr > 0n) { + newVaultValue = Value.merge(newVaultValue, makeValue(0n, [stablecoinAssetId, newUSDr])); + } + // Preserve any other assets from the original vault + const existingMultiasset = vaultUtxo.output().amount().multiasset(); + if (existingMultiasset) { + for (const [assetId, amount] of existingMultiasset.entries()) { + if (assetId !== this.stakingVaultNFTAssetId.toString() && assetId !== stablecoinAssetId.toString()) { + newVaultValue = Value.merge(newVaultValue, makeValue(0n, [Core.AssetId(assetId), amount])); + } + } + } + } + tx.lockAssets(this.stakingVaultAddress, newVaultValue, serializedVaultDatum); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Reserve Asset Conversion Utilities + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Get protocol settings from proxy datum (cached). + */ + async getVersionSettings() { + const { + parsedProxyDatum + } = await this.getParsedProxyDatum(); + return parsedProxyDatum.settings; + } +} +_defineProperty(RealfiSDKV0_4, "buildTimelockNativeScript", buildTimelockNativeScript); +_defineProperty(RealfiSDKV0_4, "buildTimelockAddress", buildTimelockAddress); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v0_4/index.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v0_4/index.js.map new file mode 100644 index 0000000000..ea395f4621 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v0_4/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["addressFromValidator","blake2b_256","Ed25519KeyHashHex","HexBlob","PlutusData","toHex","Data","parse","Core","makeValue","Value","BaseTypes","V0_1Types","V0_4Types","TreasuryDatum","V0_1TreasuryDatum","addDirectOutput","addDestinationOutput","buildNonceFromUtxo","buildTimelockAddress","buildTimelockDestination","buildTimelockNativeScript","buildUnstakeMetadatum","UNSTAKE_METADATA_LABEL","deployScript","destinationToAddress","findReserveAsset","getDatumFromNFT","getSignatureKeyHashesFromMultisigScript","usdrToReserve","usdrToReserveCeil","computeReserveDeltas","parseCancelOwner","resolveOrderReferenceInputs","lockOrPayAssets","RealfiSDKBase","sortOrderInputs","MIN_LOVELACE","getRequestsFromAction","action","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","Error","floorDiv","a","b","q","calculateYieldShares","totalYield","vaultUSDr","treasuryCirculating","stakedYieldShare","unstakedYieldShare","toSpendOrderingKey","input","transactionId","toString","index","RealfiSDKV0_4","constructor","blaze","params","scripts","cachedReferenceInputs","version","proxyBootstrap","assetNameHex","enableTrace","scriptDeploymentAddress","clientSource","_defineProperty","sUSDrAssetNameHex","oneShotScript","protocolScript","mintProxyScript","treasuryScript","orderScript","stakingVaultScript","oneShotPolicyId","PolicyId","hash","protocolScriptHash","stablecoinPolicyId","treasuryScriptHash","orderScriptHash","stakingVaultScriptHash","treasuryAddress","network","orderScriptAddress","stakingVaultAddress","treasuryAssetName","AssetName","Buffer","from","treasuryNFTAssetId","AssetId","vaultAssetName","stakingVaultNFTAssetId","create","BaseOneshotOneshotMint","transaction_id","txHash","output_index","outputIndex","Script","V0_4ProtocolProtocolWithdraw","BaseMintProxyMintProxyMint","V0_1TreasuryTreasurySpend","treasuryBootstrap","V0_4OrderOrderSpend","V0_4StakingVaultStakingVaultSpend","stakingVaultBootstrap","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","orderRefInput","stakingVaultRefInput","mintTreasuryNFT","treasuryBootstrapUtxo","initialDatum","circulating_supply","treasuryPolicyId","datum","serialize","tx","newTransaction","addInput","addMint","Map","Void","lockAssets","provideScript","nftAssetId","deployTreasury","deployOrderContract","getTreasuryDatum","utxo","treasuryUtxo","treasuryDatum","parsedDatum","parsedTreasuryDatum","mintStakingVaultNFT","stakingVaultBootstrapUtxo","circulating_susdr","vaultPolicyId","VaultDatum","deployStakingVault","getSusdrAssetId","getVaultDatum","vaultUtxo","vaultDatum","parsedVaultDatum","mintOneShot","receiverAddress","resolveBootstrapUtxo","serializedDatum","ProxyDatum","logic","settings","baseTx","policyId","updateOneShotDatum","newDatum","oneshotUtxo","provider","getUnspentOutputByNFT","getParsedProxyDatum","cachedProxyDatumResult","proxyUtxo","proxyDatum","getRawProxyDatum","parsedProxyDatum","result","_buildOrderTx","orderContractAddress","owner","addressProps","wallet","getChangeAddress","getProps","keyHash","delegationPart","paymentPart","Signature","key_hash","orderDatum","destination","data","OrderDatum","newOrderTransaction","extraLabels","valueToLock","buildMintOrderTx","amount","reserveAssetId","reserveAsset","getVersionSettings","ra","reserveAmount","OMint","reserve_asset","buildRedeemOrderTx","stablecoinAssetId","ORedeem","buildDepositOrderTx","principal","yield","totalUSDrBacking","principalReserve","vaultValue","output","multiasset","get","merge","ODeposit","buildWithdrawOrderTx","OWithdraw","buildStakeOrderTx","OStake","buildUnstakeOrderTx","sUSDrAssetId","timelockDestination","unlockSlot","OUnstake","getSignedPayloadFromOrderInputs","orderInputs","length","sortedInputs","nonce","resolvedUtxos","resolveUnspentOutputs","actionType","treasuryRequests","datumData","asInlineData","origin","parsed","classifyOrderAction","isTreasuryAction","push","payload","serialized","SignedPayload_ProtocolRedeemer","signedPayload","toCbor","payloadHash","buildExecuteOrdersTx","signedPayloadCbor","signatures","fromCbor","sortedOrderInputs","orderUtxos","orderInfos","parseOrderInfos","needsTreasury","includes","needsVault","scriptHashesNeeded","protocol","order","treasury","stakingVault","refInputs","getScriptReferenceInputs","treasuryResult","vaultResult","walletUtxos","getUnspentOutputs","excludedInputIds","Set","utxoKey","inp","orderInfo","add","refUtxo","Object","values","feeUtxos","filter","has","allInputRefs","map","o","feeUtxo","sortedAllInputRefs","sort","txA","txB","Number","findInputIdx","idx","findIndex","r","BigInt","treasuryInputIdx","vaultInputIdx","undefined","signedRequests","originToRequestIdx","i","set","inputToRequests","requestToOutputs","outputIdx","key","requestIdx","numDestOutputs","numExtraOutputs","reduce","sum","treasuryOutputIdx","vaultOutputIdx","extra","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","serializedSignedRedeemer","SignedRedeemer_ExtraProtocolRedeemer","executeRedeemer","OrderRedeemer","feeUtxoByKey","orderInfoByKey","treasuryInputKey","vaultInputKey","spendRedeemerInputs","inputRef","inputKey","addReferenceInput","protocolRewardAccount","RewardAccount","fromCredential","type","CredentialType","ScriptHash","addWithdrawal","buildMintExecute","buildBurnExecute","buildWithdrawExecute","buildDepositExecute","buildStakeExecute","buildUnstakeExecute","realignSpendRedeemerIndices","txInternals","bodyInputs","body","inputs","redeemers","spendRedeemers","redeemer","tag","RedeemerTag","Spend","expectedOrdering","localeCompare","actualIndex","bodyInput","setIndex","setValues","totalAmount","reserveDeltas","updateTreasuryOutput","address","unstaked_yield_pot","assetId","yieldValue","usdrBacking","updateVaultOutput","totalUSDrStaked","circulatingSUSDr","totalSUSDrMinted","sUSDrAmount","totalSUSDrBurned","totalUSDrReleased","uSDrAmount","destAddress","TransactionOutput","addOutput","buildCancelOrdersTx","availableSigners","versionHint","cachedOrderRefs","orderRefInputs","cancelRedeemer","currentOrderRefInput","requiredSigners","outputValue","effectiveSigners","k","addRequiredSigner","expectedActionType","classified","circulatingSupplyDelta","newTreasuryDatum","serializedTreasuryDatum","treasuryValue","newTreasuryValue","coin","modifiedAssetIds","delta","entries","currentReserve","newReserve","existingMultiasset","sUSDrDelta","uSDrDelta","newVaultDatum","serializedVaultDatum","newVaultValue","currentUSDr","newUSDr"],"sources":["../../../../src/sdk/v0_4/index.ts"],"sourcesContent":["import {\n addressFromValidator,\n blake2b_256,\n Ed25519KeyHashHex,\n HexBlob,\n PlutusData,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport {\n BaseTypes,\n V0_1Types,\n V0_4Types,\n} from \"../../generated-types/index.js\";\nimport { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport type {\n Destination,\n MultisigScript,\n OrderDatum,\n ProxyDatum,\n Settings,\n VaultDatum,\n} from \"../../generated-types/v0_4/index.js\";\nimport {\n addDirectOutput,\n addDestinationOutput,\n buildNonceFromUtxo,\n buildTimelockAddress,\n buildTimelockDestination,\n buildTimelockNativeScript,\n buildUnstakeMetadatum,\n UNSTAKE_METADATA_LABEL,\n deployScript,\n destinationToAddress,\n findReserveAsset,\n getDatumFromNFT,\n getSignatureKeyHashesFromMultisigScript,\n usdrToReserve,\n usdrToReserveCeil,\n computeReserveDeltas,\n parseCancelOwner,\n resolveOrderReferenceInputs,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n type IRealfiSDKWithTreasury,\n type ITreasuryDatumResult,\n type IVaultDatumResult,\n type TClientSource,\n type TProtocolVersion,\n lockOrPayAssets,\n RealfiSDKBase,\n sortOrderInputs,\n} from \"../shared/index.js\";\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Types\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Parsed order information extracted from a UTXO.\n */\ninterface IOrderInfo {\n utxo: Core.TransactionUnspentOutput;\n datum: OrderDatum;\n actionType: TOrderActionType;\n amount: bigint;\n /** Yield amount for deposit actions */\n yield?: bigint;\n /** Reserve asset for treasury actions, undefined for stake/unstake */\n reserveAsset?: [string, string];\n}\n\ntype TOrderActionType =\n | \"mint\"\n | \"burn\"\n | \"deposit\"\n | \"withdraw\"\n | \"stake\"\n | \"unstake\";\n\ninterface ITxBuilderWithInternals {\n body: Core.TransactionBody;\n redeemers: Core.Redeemers;\n}\n\nconst MIN_LOVELACE = 2000000n;\n\n/**\n * Floor division for BigInt (rounds toward negative infinity).\n * JavaScript BigInt `/` truncates toward zero, but Aiken (Plutus)\n * uses floor division. These differ for negative dividends.\n */\n/**\n * Extract the requests list from a signed payload action, regardless of action type.\n * Both TreasuryRequest and Request have `origin: { transaction_id, output_index }`.\n */\nfunction getRequestsFromAction(\n action: V0_4Types.ProtocolRedeemer,\n): Array<{ origin: { transaction_id: string; output_index: bigint } }> {\n if (\"Mint\" in action) return action.Mint.requests;\n if (\"Burn\" in action) return action.Burn.requests;\n if (\"Withdraw\" in action) return action.Withdraw.requests;\n if (\"Deposit\" in action) return action.Deposit.requests;\n if (\"Stake\" in action) return action.Stake.requests;\n if (\"Unstake\" in action) return action.Unstake.requests;\n throw new Error(\"Unknown action type in signed payload\");\n}\n\nfunction floorDiv(a: bigint, b: bigint): bigint {\n const q = a / b;\n // Adjust if signs differ and there's a remainder\n if ((a ^ b) < 0n && q * b !== a) {\n return q - 1n;\n }\n return q;\n}\n\n/**\n * Calculate yield split between staked and unstaked portions.\n * Matches on-chain deposit.ak logic: staked_yield_share = total_yield * vault_usdr / treasury_circulating\n */\nfunction calculateYieldShares(\n totalYield: bigint,\n vaultUSDr: bigint,\n treasuryCirculating: bigint,\n): { stakedYieldShare: bigint; unstakedYieldShare: bigint } {\n const stakedYieldShare =\n treasuryCirculating > 0n\n ? floorDiv(totalYield * vaultUSDr, treasuryCirculating)\n : 0n;\n const unstakedYieldShare = totalYield - stakedYieldShare;\n return { stakedYieldShare, unstakedYieldShare };\n}\n\nfunction toSpendOrderingKey(input: Core.TransactionInput): string {\n return `${input.transactionId().toString()}${input.index().toString()}`;\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV0_4 {\n version: \"V0_4\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** USDr asset name hex */\n assetNameHex: string;\n /** sUSDr asset name hex */\n sUSDrAssetNameHex: string;\n /** The treasury bootstrap UTxO reference */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** The staking vault bootstrap UTxO reference */\n stakingVaultBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n stakingVaultRefInput?: Core.TransactionUnspentOutput;\n };\n clientSource?: TClientSource;\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// SDK Class\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * V0_4 SDK implementation.\n *\n * Extends the protocol with staking (USDr->sUSDr), unstaking (sUSDr->USDr),\n * multi-reserve assets, deposit with interest splitting, and index-based optimization.\n * All order types (mint, burn, deposit, withdraw, stake, unstake) are request-based.\n */\nexport class RealfiSDKV0_4

\n extends RealfiSDKBase\n implements IRealfiSDKWithTreasury\n{\n readonly version = \"V0_4\" as const;\n\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n readonly treasuryNFTAssetId: Core.AssetId;\n readonly orderScriptHash: Core.Hash28ByteBase16;\n readonly orderScriptAddress: Core.Address;\n readonly treasuryAddress: Core.Address;\n readonly stakingVaultScriptHash: Core.Hash28ByteBase16;\n readonly stakingVaultAddress: Core.Address;\n readonly stakingVaultNFTAssetId: Core.AssetId;\n readonly sUSDrAssetNameHex: string;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n protected readonly treasuryScript: Core.Script;\n protected readonly orderScript: Core.Script;\n protected readonly stakingVaultScript: Core.Script;\n\n private constructor(\n blaze: Blaze,\n params: {\n version: \"V0_4\";\n proxyBootstrap: { txHash: Core.TransactionId; outputIndex: bigint };\n assetNameHex: string;\n sUSDrAssetNameHex: string;\n enableTrace?: boolean;\n scriptDeploymentAddress?: Core.Address;\n clientSource?: TClientSource;\n },\n scripts: {\n oneShotScript: Core.Script;\n protocolScript: Core.Script;\n mintProxyScript: Core.Script;\n treasuryScript: Core.Script;\n orderScript: Core.Script;\n stakingVaultScript: Core.Script;\n },\n cachedReferenceInputs?: ICachedReferenceInputs,\n ) {\n super(\n blaze,\n {\n version: \"V0_4\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace: params.enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n clientSource: params.clientSource,\n },\n cachedReferenceInputs,\n );\n\n this.sUSDrAssetNameHex = params.sUSDrAssetNameHex;\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolScript = scripts.protocolScript;\n this.mintProxyScript = scripts.mintProxyScript;\n this.treasuryScript = scripts.treasuryScript;\n this.orderScript = scripts.orderScript;\n this.stakingVaultScript = scripts.stakingVaultScript;\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n this.treasuryScriptHash = this.treasuryScript.hash();\n this.orderScriptHash = this.orderScript.hash();\n this.stakingVaultScriptHash = this.stakingVaultScript.hash();\n\n this.treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n this.orderScriptAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n this.stakingVaultAddress = addressFromValidator(\n this.network,\n this.stakingVaultScript,\n );\n\n // Treasury NFT: policy = treasury script hash, name = \"treasury\"\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n this.treasuryNFTAssetId = Core.AssetId(\n this.treasuryScriptHash + treasuryAssetName.toString(),\n );\n\n // Staking vault NFT: policy = staking vault script hash, name = \"staking_vault\"\n const vaultAssetName = Core.AssetName(toHex(Buffer.from(\"staking_vault\")));\n this.stakingVaultNFTAssetId = Core.AssetId(\n this.stakingVaultScriptHash + vaultAssetName.toString(),\n );\n }\n\n /**\n * Create a V0_4 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV0_4,\n ): RealfiSDKV0_4 {\n const enableTrace = params.enableTrace ?? false;\n\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n\n const protocolScript = new V0_4Types.V0_4ProtocolProtocolWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const orderScript = new V0_4Types.V0_4OrderOrderSpend(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const stakingVaultScript = new V0_4Types.V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV0_4(\n blaze,\n {\n version: \"V0_4\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n sUSDrAssetNameHex: params.sUSDrAssetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n clientSource: params.clientSource,\n },\n {\n oneShotScript,\n protocolScript,\n mintProxyScript,\n treasuryScript,\n orderScript,\n stakingVaultScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n orderRefInput: params.referenceInputs?.orderRefInput,\n stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the treasury NFT.\n */\n async mintTreasuryNFT(\n treasuryBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash);\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n\n const datum = Data.serialize(V0_1TreasuryDatum, initialDatum);\n const tx = await this.blaze\n .newTransaction()\n .addInput(treasuryBootstrapUtxo)\n .addMint(\n treasuryPolicyId,\n new Map([[treasuryAssetName, 1n]]),\n Data.Void(),\n )\n .lockAssets(\n this.treasuryAddress,\n makeValue(10000000n, [this.treasuryNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.treasuryScript);\n\n return { tx, nftAssetId: this.treasuryNFTAssetId };\n }\n\n async deployTreasury(): Promise {\n return deployScript(\n this.blaze,\n this.treasuryScript,\n this.scriptDeploymentAddress,\n );\n }\n\n async deployOrderContract(): Promise {\n return deployScript(\n this.blaze,\n this.orderScript,\n this.scriptDeploymentAddress,\n );\n }\n\n async getTreasuryDatum(): Promise> {\n const {\n utxo: treasuryUtxo,\n datum: treasuryDatum,\n parsedDatum: parsedTreasuryDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1TreasuryDatum,\n );\n\n if (!treasuryUtxo) {\n throw new Error(\"No UTXO found with the treasury NFT\");\n }\n if (!treasuryDatum) {\n throw new Error(\"No treasury datum found\");\n }\n\n return {\n treasuryUtxo,\n treasuryDatum,\n parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Staking Vault Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the staking vault NFT and create initial vault UTxO.\n */\n async mintStakingVaultNFT(\n stakingVaultBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: VaultDatum = { circulating_susdr: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const vaultPolicyId = Core.PolicyId(this.stakingVaultScriptHash);\n const vaultAssetName = Core.AssetName(toHex(Buffer.from(\"staking_vault\")));\n\n const datum = Data.serialize(V0_4Types.VaultDatum, initialDatum);\n const tx = await this.blaze\n .newTransaction()\n .addInput(stakingVaultBootstrapUtxo)\n .addMint(vaultPolicyId, new Map([[vaultAssetName, 1n]]), Data.Void())\n .lockAssets(\n this.stakingVaultAddress,\n makeValue(10000000n, [this.stakingVaultNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.stakingVaultScript);\n\n return { tx, nftAssetId: this.stakingVaultNFTAssetId };\n }\n\n async deployStakingVault(): Promise {\n return deployScript(\n this.blaze,\n this.stakingVaultScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */\n getSusdrAssetId(): Core.AssetId {\n return Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex);\n }\n\n async getVaultDatum(): Promise> {\n const {\n utxo: vaultUtxo,\n datum: vaultDatum,\n parsedDatum: parsedVaultDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.stakingVaultNFTAssetId,\n V0_4Types.VaultDatum,\n );\n\n if (!vaultUtxo) {\n throw new Error(\"No UTXO found with the staking vault NFT\");\n }\n if (!vaultDatum) {\n throw new Error(\"No vault datum found\");\n }\n\n return {\n vaultUtxo,\n vaultDatum,\n parsedVaultDatum: parsedVaultDatum as VaultDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: ProxyDatum,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(V0_4Types.ProxyDatum, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: ProxyDatum,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(V0_4Types.ProxyDatum, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n }\n\n async getParsedProxyDatum(): Promise> {\n if (this.cachedProxyDatumResult) {\n return this.cachedProxyDatumResult as IProxyDatumResult;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(V0_4Types.ProxyDatum, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Order Builder Methods (6 separate methods, shared _buildOrderTx helper)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Internal helper to build an order transaction.\n */\n private async _buildOrderTx(params: {\n action: V0_4Types.OrderAction;\n valueToLock: Core.Value;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n extraLabels?: Map;\n }): Promise {\n const orderContractAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n\n let owner = params.owner;\n if (!owner) {\n const addressProps = (\n await this.blaze.wallet.getChangeAddress()\n ).getProps();\n const keyHash =\n addressProps.delegationPart?.hash ?? addressProps.paymentPart?.hash;\n if (!keyHash) {\n throw new Error(\"Could not derive owner key hash from wallet address\");\n }\n owner = {\n Signature: { key_hash: keyHash.toString() },\n };\n }\n\n const orderDatum: OrderDatum = {\n action: params.action,\n owner,\n destination: params.destination,\n data: params.data ?? Data.Void(),\n };\n const serializedDatum = Data.serialize(V0_4Types.OrderDatum, orderDatum);\n\n const tx = this.newOrderTransaction(params.extraLabels);\n tx.lockAssets(orderContractAddress, params.valueToLock, serializedDatum);\n return tx;\n }\n\n /**\n * Build a mint order: lock reserve tokens, request USDr minting.\n */\n async buildMintOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Mint amount must be positive\");\n }\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n // Convert USDr amount to reserve amount using ceiling division\n // to ensure enough reserve is locked for on-chain validation\n const settings = await this.getVersionSettings();\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAmount = usdrToReserveCeil(params.amount, ra);\n return this._buildOrderTx({\n action: {\n OMint: { amount: params.amount, reserve_asset: params.reserveAsset },\n },\n valueToLock: makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a redeem (burn) order: lock USDr, request reserve token redemption.\n */\n async buildRedeemOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Redeem amount must be positive\");\n }\n const settings = await this.getVersionSettings();\n findReserveAsset(settings, params.reserveAsset);\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n return this._buildOrderTx({\n action: {\n ORedeem: {\n amount: params.amount,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a deposit order: lock reserve tokens, request treasury deposit.\n */\n async buildDepositOrderTx(params: {\n principal: bigint;\n yield: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.principal < 0n) {\n throw new Error(\"Deposit principal must be non-negative\");\n }\n if (params.principal === 0n && params.yield === 0n) {\n throw new Error(\"Deposit must have non-zero principal or yield\");\n }\n const settings = await this.getVersionSettings();\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n\n let valueToLock: Core.Value;\n\n if (params.yield >= 0n) {\n // POSITIVE YIELD: need reserve backing for BOTH principal AND yield.\n // Contract validates: reserve_to_usdr(treasury_delta) >= principal + yield\n // So we must lock: usdrToReserveCeil(principal + yield) reserve tokens\n const totalUSDrBacking = params.principal + params.yield;\n if (totalUSDrBacking > 0n) {\n const reserveAmount = usdrToReserveCeil(totalUSDrBacking, ra);\n valueToLock = makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]);\n } else {\n valueToLock = makeValue(MIN_LOVELACE);\n }\n } else {\n // NEGATIVE YIELD: lock principal (in reserve) + unstaked yield share (in USDr).\n // The staked share comes from the vault (validated on-chain via vault USDr change).\n const principalReserve =\n params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n;\n\n valueToLock =\n principalReserve > 0n\n ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve])\n : makeValue(MIN_LOVELACE);\n\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n // Fetch current state to calculate yield split\n const { parsedTreasuryDatum } = await this.getTreasuryDatum();\n const vaultUtxo = (await this.getVaultDatum()).vaultUtxo;\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n\n const { unstakedYieldShare } = calculateYieldShares(\n params.yield,\n vaultUSDr,\n treasuryCirculating,\n );\n\n // Lock only the unstaked portion (negated since unstakedYieldShare is negative)\n if (unstakedYieldShare < 0n) {\n valueToLock = Value.merge(\n valueToLock,\n makeValue(0n, [stablecoinAssetId, -unstakedYieldShare]),\n );\n }\n }\n return this._buildOrderTx({\n action: {\n ODeposit: {\n principal: params.principal,\n yield: params.yield,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock,\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a withdraw order: lock min ADA, request reserve token withdrawal.\n */\n async buildWithdrawOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Withdraw amount must be positive\");\n }\n const settings = await this.getVersionSettings();\n findReserveAsset(settings, params.reserveAsset);\n return this._buildOrderTx({\n action: {\n OWithdraw: {\n amount: params.amount,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a stake order: lock USDr, request sUSDr minting.\n */\n async buildStakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Stake amount must be positive\");\n }\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n return this._buildOrderTx({\n action: { OStake: { amount: params.amount } },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build an unstake order: lock sUSDr, request USDr release.\n *\n * The destination is automatically set to a native script address that\n * enforces a timelock: AllOf { Signature(user), After(unlockTime) }.\n * This means the released USDr can only be spent by the user after the\n * unlock time has passed.\n *\n * @param params.amount - Amount of sUSDr to unstake\n * @param params.destination - The user's actual destination (used to extract payment key hash)\n * @param params.unlockTime - Slot number after which the user can spend the released USDr\n */\n async buildUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n unlockSlot: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Unstake amount must be positive\");\n }\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n\n // Build the timelock native script destination from the user's key hash\n const timelockDestination = buildTimelockDestination(\n params.destination,\n params.unlockSlot,\n );\n const extraLabels = new Map([\n [\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(params.destination, params.unlockSlot),\n ],\n ]);\n\n return this._buildOrderTx({\n action: { OUnstake: { amount: params.amount } },\n valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]),\n owner: params.owner,\n destination: timelockDestination,\n data: params.data,\n extraLabels,\n });\n }\n\n /**\n * Build a timelock Destination from a user's destination and unlock time.\n *\n * Creates a native script: AllOf { Signature(userKeyHash), After(unlockTime) }\n * and returns a Destination pointing to that script's address.\n */\n\n static buildTimelockNativeScript = buildTimelockNativeScript;\n static buildTimelockAddress = buildTimelockAddress;\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Signed Payload and Signing\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build the V0_4 SignedPayload_ProtocolRedeemer from order inputs.\n * Returns both the CBOR hex string (for buildExecuteOrdersTx) and\n * the blake2b_256 hash (for CIP-30 signing).\n *\n * V0.4 contract requires signing the blake2b_256 hash of the payload,\n * not the raw CBOR like V0.3.\n */\n async getSignedPayloadFromOrderInputs(\n orderInputs: Core.TransactionInput[],\n ): Promise<{ signedPayload: string; payloadHash: string }> {\n if (orderInputs.length === 0) {\n throw new Error(\"At least one order input is required\");\n }\n\n const sortedInputs = sortOrderInputs(orderInputs);\n const nonce = buildNonceFromUtxo(sortedInputs[0]!) as V0_4Types.Nonce;\n\n const resolvedUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedInputs);\n\n let actionType: TOrderActionType | null = null;\n const treasuryRequests: V0_4Types.TreasuryRequest[] = [];\n const requests: V0_4Types.Request[] = [];\n\n for (const utxo of resolvedUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(V0_4Types.OrderDatum, datumData) as OrderDatum;\n const origin = {\n transaction_id: utxo.input().transactionId().toString(),\n output_index: utxo.input().index(),\n };\n\n const parsed = this.classifyOrderAction(datum);\n\n if (actionType === null) {\n actionType = parsed.actionType;\n } else if (actionType !== parsed.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n if (parsed.isTreasuryAction) {\n treasuryRequests.push({\n destination: datum.destination,\n amount: parsed.amount,\n yield: parsed.yield ?? 0n,\n origin,\n reserve_asset: parsed.reserveAsset!,\n });\n } else {\n requests.push({\n destination: datum.destination,\n amount: parsed.amount,\n origin,\n });\n }\n }\n\n let action: V0_4Types.ProtocolRedeemer;\n switch (actionType) {\n case \"mint\":\n action = { Mint: { requests: treasuryRequests } };\n break;\n case \"burn\":\n action = { Burn: { requests: treasuryRequests } };\n break;\n case \"withdraw\":\n action = { Withdraw: { requests: treasuryRequests } };\n break;\n case \"deposit\":\n action = { Deposit: { requests: treasuryRequests } };\n break;\n case \"stake\":\n action = { Stake: { requests } };\n break;\n case \"unstake\":\n action = { Unstake: { requests } };\n break;\n default:\n throw new Error(\"No orders to process\");\n }\n\n const payload: V0_4Types.SignedPayload_ProtocolRedeemer = {\n action,\n nonce,\n };\n const serialized = Data.serialize(\n V0_4Types.SignedPayload_ProtocolRedeemer,\n payload,\n );\n const signedPayload = serialized.toCbor().toString();\n const payloadHash = blake2b_256(HexBlob(signedPayload));\n\n return { signedPayload, payloadHash };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Execute Orders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to execute orders.\n *\n * Handles all 6 action types: mint, burn, deposit, withdraw, stake, unstake.\n * The signedPayload is a CBOR hex string (matching V0.3 style).\n *\n * NOTE: All wallet fee inputs are pre-added to the transaction so that\n * input indices for the ExtraProtocolRedeemer are stable. Coin selection\n * during complete() should be a no-op since all wallet UTxOs are already\n * included, but it cannot be disabled because Blaze also uses that phase\n * to prepare collateral.\n */\n async buildExecuteOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n signedPayload: string;\n signatures: V0_4Types.Tuple_VerificationKey_COSESign1[];\n }): Promise {\n const {\n orderInputs,\n signedPayload: signedPayloadCbor,\n signatures,\n } = params;\n\n // Deserialize CBOR hex to object for internal use\n const signedPayload = parse(\n V0_4Types.SignedPayload_ProtocolRedeemer,\n PlutusData.fromCbor(HexBlob(signedPayloadCbor)),\n ) as V0_4Types.SignedPayload_ProtocolRedeemer;\n\n // 1. Sort and resolve order UTxOs\n const sortedOrderInputs = sortOrderInputs(orderInputs);\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs);\n\n // 2. Parse orders and validate same type\n const orderInfos = this.parseOrderInfos(orderUtxos);\n const actionType = orderInfos[0]!.actionType;\n\n // 3. Get protocol settings\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const settings = parsedProxyDatum.settings as Settings;\n\n // 4. Determine what we need\n const needsTreasury = [\"mint\", \"burn\", \"withdraw\", \"deposit\"].includes(\n actionType,\n );\n const needsVault = [\"stake\", \"unstake\", \"deposit\"].includes(actionType);\n\n // 5. Get script reference inputs\n const scriptHashesNeeded: Record = {\n protocol: this.protocolScriptHash,\n order: this.orderScriptHash,\n };\n if (needsTreasury) {\n scriptHashesNeeded.treasury = this.treasuryScriptHash;\n }\n if (needsVault) {\n scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash;\n }\n const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded);\n\n // 6. Fetch treasury and vault if needed\n let treasuryUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedTreasuryDatum: V0_1TreasuryDatum | undefined;\n if (needsTreasury) {\n const treasuryResult = await this.getTreasuryDatum();\n treasuryUtxo = treasuryResult.treasuryUtxo;\n parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum;\n }\n\n let vaultUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedVaultDatum: VaultDatum | undefined;\n if (needsVault) {\n const vaultResult = await this.getVaultDatum();\n vaultUtxo = vaultResult.vaultUtxo;\n parsedVaultDatum = vaultResult.parsedVaultDatum;\n }\n\n // 7. Gather wallet UTxOs so we can include them in index calculations.\n // Blaze's complete() adds wallet inputs for fees, which shifts the\n // ledger-sorted input indices. By fetching wallet UTxOs upfront and\n // adding them explicitly, we know the full input set before computing\n // indices for the ExtraProtocolRedeemer.\n const walletUtxos = await this.blaze.wallet.getUnspentOutputs();\n const excludedInputIds = new Set();\n const utxoKey = (inp: Core.TransactionInput) =>\n `${inp.transactionId().toString()}#${inp.index().toString()}`;\n // Exclude script inputs (order, treasury, vault)\n for (const orderInfo of orderInfos) {\n excludedInputIds.add(utxoKey(orderInfo.utxo.input()));\n }\n if (treasuryUtxo) {\n excludedInputIds.add(utxoKey(treasuryUtxo.input()));\n }\n if (vaultUtxo) {\n excludedInputIds.add(utxoKey(vaultUtxo.input()));\n }\n // Exclude reference inputs (must be disjoint from regular inputs)\n excludedInputIds.add(utxoKey(proxyUtxo.input()));\n for (const refUtxo of Object.values(refInputs)) {\n if (refUtxo) {\n excludedInputIds.add(utxoKey(refUtxo.input()));\n }\n }\n const feeUtxos = walletUtxos.filter(\n (utxo) => !excludedInputIds.has(utxoKey(utxo.input())),\n );\n\n // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex).\n // Include ALL inputs: order, treasury, vault, AND wallet fee inputs.\n const allInputRefs: Core.TransactionInput[] = orderInfos.map((o) =>\n o.utxo.input(),\n );\n if (treasuryUtxo) {\n allInputRefs.push(treasuryUtxo.input());\n }\n if (vaultUtxo) {\n allInputRefs.push(vaultUtxo.input());\n }\n for (const feeUtxo of feeUtxos) {\n allInputRefs.push(feeUtxo.input());\n }\n\n const sortedAllInputRefs = [...allInputRefs].sort((a, b) => {\n const txA = a.transactionId().toString();\n const txB = b.transactionId().toString();\n if (txA < txB) return -1;\n if (txA > txB) return 1;\n return Number(a.index()) - Number(b.index());\n });\n\n const findInputIdx = (input: Core.TransactionInput): bigint => {\n const idx = sortedAllInputRefs.findIndex(\n (r) =>\n r.transactionId().toString() === input.transactionId().toString() &&\n r.index() === input.index(),\n );\n return BigInt(idx);\n };\n\n const treasuryInputIdx = treasuryUtxo\n ? findInputIdx(treasuryUtxo.input())\n : 0n;\n const vaultInputIdx = vaultUtxo\n ? findInputIdx(vaultUtxo.input())\n : undefined;\n\n // 8a. Correlate order inputs to signed request indices via origin fields.\n // When all orders are present this produces the same identity mapping as before.\n // When a subset is passed (partial execution), it maps each input to the\n // correct request index in the signed payload.\n const signedRequests = getRequestsFromAction(signedPayload.action);\n const originToRequestIdx = new Map();\n for (let i = 0; i < signedRequests.length; i++) {\n const o = signedRequests[i]!.origin;\n originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i);\n }\n\n const inputToRequests: bigint[] = [];\n const requestToOutputs: bigint[] = [];\n for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) {\n const input = orderInfos[outputIdx]!.utxo.input();\n const key = `${input.transactionId()}#${input.index()}`;\n const requestIdx = originToRequestIdx.get(key);\n if (requestIdx === undefined) {\n throw new Error(`Order input ${key} not found in signed payload`);\n }\n inputToRequests.push(BigInt(requestIdx));\n requestToOutputs.push(BigInt(outputIdx));\n }\n\n // 9. Build outputs and compute output indices\n // Output layout:\n // [destination outputs] [extra outputs*] [treasury output if needed] [vault output if needed]\n // *extra outputs: yield pot output for deposit with non-zero positive yield\n const numDestOutputs = orderInfos.length;\n\n // For deposit with positive yield, the yield pot output is inserted after destinations\n let numExtraOutputs = 0;\n if (actionType === \"deposit\") {\n const totalYield = orderInfos.reduce(\n (sum, o) => sum + (o.yield ?? 0n),\n 0n,\n );\n if (totalYield > 0n) {\n // Check if unstaked yield share is > 0\n const vaultValue = vaultUtxo!.output().amount();\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum!.circulating_supply;\n const { unstakedYieldShare } = calculateYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n );\n if (unstakedYieldShare > 0n) {\n numExtraOutputs = 1;\n }\n }\n }\n\n const treasuryOutputIdx = needsTreasury\n ? BigInt(numDestOutputs + numExtraOutputs)\n : 0n;\n const vaultOutputIdx = needsVault\n ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0))\n : undefined;\n\n // 10. Build ExtraProtocolRedeemer\n const extra: V0_4Types.ExtraProtocolRedeemer = {\n request_to_outputs: requestToOutputs,\n input_to_requests: inputToRequests,\n treasury_input_idx: treasuryInputIdx,\n treasury_output_idx: treasuryOutputIdx,\n vault_input_idx: vaultInputIdx,\n vault_output_idx: vaultOutputIdx,\n };\n\n // 11. Build SignedRedeemer (payload is deserialized object in v0_4)\n const serializedSignedRedeemer = Data.serialize(\n V0_4Types.SignedRedeemer_ExtraProtocolRedeemer,\n {\n extra,\n payload: signedPayload,\n signatures,\n },\n );\n\n const executeRedeemer = Data.serialize(V0_4Types.OrderRedeemer, \"Execute\");\n\n const feeUtxoByKey = new Map(\n feeUtxos.map((utxo) => [utxoKey(utxo.input()), utxo]),\n );\n const orderInfoByKey = new Map(\n orderInfos.map((orderInfo) => [\n utxoKey(orderInfo.utxo.input()),\n orderInfo,\n ]),\n );\n const treasuryInputKey = treasuryUtxo\n ? utxoKey(treasuryUtxo.input())\n : null;\n const vaultInputKey = vaultUtxo ? utxoKey(vaultUtxo.input()) : null;\n const spendRedeemerInputs = [\n ...orderInfos.map((orderInfo) => orderInfo.utxo.input()),\n ];\n if (treasuryUtxo) {\n spendRedeemerInputs.push(treasuryUtxo.input());\n }\n if (vaultUtxo) {\n spendRedeemerInputs.push(vaultUtxo.input());\n }\n\n // 12. Build the transaction\n const tx = this.newOrderTransaction();\n\n // Add all spend inputs in ledger order so the generated spend redeemer\n // pointers line up with the final transaction input indices.\n for (const inputRef of sortedAllInputRefs) {\n const inputKey = utxoKey(inputRef);\n const orderInfo = orderInfoByKey.get(inputKey);\n if (orderInfo) {\n tx.addInput(orderInfo.utxo, executeRedeemer);\n continue;\n }\n\n if (treasuryInputKey && inputKey === treasuryInputKey) {\n tx.addInput(treasuryUtxo!, Data.Void());\n continue;\n }\n\n if (vaultInputKey && inputKey === vaultInputKey) {\n tx.addInput(vaultUtxo!, Data.Void());\n continue;\n }\n\n const feeUtxo = feeUtxoByKey.get(inputKey);\n if (feeUtxo) {\n tx.addInput(feeUtxo);\n continue;\n }\n\n throw new Error(\n `buildExecuteOrdersTx: missing input metadata for ${inputKey}`,\n );\n }\n\n // Add reference inputs\n tx.addReferenceInput(refInputs.protocol!);\n tx.addReferenceInput(refInputs.order!);\n tx.addReferenceInput(proxyUtxo);\n if (refInputs.treasury) {\n tx.addReferenceInput(refInputs.treasury);\n }\n if (refInputs.stakingVault) {\n tx.addReferenceInput(refInputs.stakingVault);\n }\n\n // Add protocol withdrawal with signed redeemer\n const protocolRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: this.protocolScriptHash,\n },\n this.network,\n );\n tx.addWithdrawal(protocolRewardAccount, 0n, serializedSignedRedeemer);\n\n // Build per-action-type outputs, minting, and state updates\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n\n switch (actionType) {\n case \"mint\":\n this.buildMintExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"burn\":\n this.buildBurnExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"withdraw\":\n this.buildWithdrawExecute(\n tx,\n orderInfos,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"deposit\":\n this.buildDepositExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n vaultUtxo!,\n parsedVaultDatum!,\n settings,\n );\n break;\n case \"stake\":\n this.buildStakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n );\n break;\n case \"unstake\":\n this.buildUnstakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n );\n break;\n }\n\n // Provide the mint proxy script for minting\n tx.provideScript(this.mintProxyScript);\n this.realignSpendRedeemerIndices(tx, spendRedeemerInputs);\n\n return tx;\n }\n\n private realignSpendRedeemerIndices(\n tx: TxBuilder,\n spendRedeemerInputs: Core.TransactionInput[],\n ): void {\n const txInternals = tx as unknown as ITxBuilderWithInternals;\n const bodyInputs = txInternals.body.inputs().values();\n const redeemers = [...txInternals.redeemers.values()];\n const spendRedeemers = redeemers\n .filter((redeemer) => redeemer.tag() === Core.RedeemerTag.Spend)\n .sort((a, b) => Number(a.index() - b.index()));\n\n if (spendRedeemers.length !== spendRedeemerInputs.length) {\n throw new Error(\n `buildExecuteOrdersTx: spend redeemer count mismatch. inputs=${spendRedeemerInputs.length} redeemers=${spendRedeemers.length}`,\n );\n }\n\n const expectedOrdering = [...spendRedeemerInputs].sort((a, b) =>\n toSpendOrderingKey(a).localeCompare(toSpendOrderingKey(b)),\n );\n\n for (let i = 0; i < spendRedeemers.length; i++) {\n const input = expectedOrdering[i]!;\n const actualIndex = bodyInputs.findIndex(\n (bodyInput) =>\n bodyInput.transactionId().toString() ===\n input.transactionId().toString() &&\n bodyInput.index() === input.index(),\n );\n\n if (actualIndex < 0) {\n throw new Error(\n `buildExecuteOrdersTx: could not find spend input ${input.transactionId().toString()}#${input.index().toString()} in tx body`,\n );\n }\n\n spendRedeemers[i]!.setIndex(BigInt(actualIndex));\n }\n\n txInternals.redeemers.setValues(redeemers);\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Per-Action Execute Builders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint: reserve goes to treasury, USDr minted to destinations.\n */\n private buildMintExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: Settings,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send USDr to each destination\n for (const orderInfo of orderInfos) {\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount]),\n );\n }\n\n // Mint USDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Compute per-reserve-asset deltas\n const reserveDeltas = computeReserveDeltas(orderInfos, settings);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalAmount,\n );\n }\n\n /**\n * Burn: USDr burned, reserve sent to destinations.\n */\n private buildBurnExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: Settings,\n ): void {\n // Amount is negative in datum for burns\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send reserve tokens to each destination\n // Convert USDr amount to reserve amount using floor division (protocol-protective)\n for (const orderInfo of orderInfos) {\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserve(-orderInfo.amount, ra);\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n );\n }\n\n // Burn USDr (totalAmount is negative)\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Compute per-reserve-asset deltas\n const reserveDeltas = computeReserveDeltas(orderInfos, settings);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalAmount,\n );\n }\n\n /**\n * Withdraw: reserve sent to destinations, no mint/burn.\n */\n private buildWithdrawExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: Settings,\n ): void {\n // Destination outputs: send reserve tokens to each destination\n // Convert USDr amount to reserve amount using floor division\n for (const orderInfo of orderInfos) {\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserve(orderInfo.amount, ra);\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n );\n }\n\n // Update treasury: reserve decreases, no circulating_supply change\n // On-chain: amount_sign = -1 for withdraw, expected_delta = usdr_to_reserve(-amount, ra)\n const reserveDeltas = computeReserveDeltas(orderInfos, settings, true);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n 0n,\n );\n }\n\n /**\n * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot.\n */\n private buildDepositExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatum,\n settings: Settings,\n ): void {\n const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n);\n\n // Destination outputs: min ADA to each destination (contract validates via request_to_outputs)\n for (const orderInfo of orderInfos) {\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n makeValue(MIN_LOVELACE),\n );\n }\n\n // Calculate yield split matching on-chain deposit.ak logic\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n\n const { stakedYieldShare, unstakedYieldShare } = calculateYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n );\n\n if (totalYield > 0n) {\n // Positive yield: mint USDr for the yield amount\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n\n // Send unstaked yield share to the yield pot address\n if (unstakedYieldShare > 0n) {\n addDestinationOutput(\n tx,\n this.network,\n {\n address: settings.unstaked_yield_pot,\n datum: \"NoDatum\",\n },\n makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare]),\n );\n }\n } else if (totalYield < 0n) {\n // Negative yield: burn USDr (sourced from order inputs already consumed)\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n }\n // totalYield === 0n: no mint/burn needed\n\n // Update treasury: reserve increases, circulating_supply changes by yield.\n // For positive yield, treasury receives reserve backing for BOTH principal AND yield.\n // For negative yield, treasury only receives reserve backing for principal.\n const reserveDeltas = new Map();\n for (const orderInfo of orderInfos) {\n const assetId = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1];\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const yieldValue = orderInfo.yield ?? 0n;\n\n // Calculate USDr backing needed based on yield sign\n const usdrBacking =\n yieldValue >= 0n\n ? orderInfo.amount + yieldValue // principal + yield for positive yield\n : orderInfo.amount; // just principal for negative yield\n\n // Convert USDr backing to reserve amount\n const reserveAmount = usdrToReserve(usdrBacking, ra);\n\n reserveDeltas.set(\n assetId,\n (reserveDeltas.get(assetId) ?? 0n) + reserveAmount,\n );\n }\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalYield,\n );\n\n // Update vault: sUSDr unchanged, USDr changes by staked yield share\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n 0n,\n stakedYieldShare,\n );\n }\n\n /**\n * Stake: USDr locked in vault, sUSDr minted to destinations.\n */\n private buildStakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatum,\n ): void {\n const totalUSDrStaked = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Calculate vault USDr balance\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n // Calculate total sUSDr to mint using batch formula (matches on-chain stake.ak)\n // On-chain: susdr_to_mint = total_usdr_staked * circulating_susdr_before / vault_usdr_before\n let totalSUSDrMinted: bigint;\n if (circulatingSUSDr === 0n || vaultUSDr === 0n) {\n totalSUSDrMinted = totalUSDrStaked;\n } else {\n totalSUSDrMinted = (totalUSDrStaked * circulatingSUSDr) / vaultUSDr;\n }\n\n // Calculate per-order sUSDr for destination outputs (matches validate_stake_outputs).\n // Note: sum(per-order floors) may be less than totalSUSDrMinted by at most (n-1) units\n // due to floor(sum) >= sum(floor). The difference (\"dust\") is minted but not assigned\n // to any destination output — it ends up in the executor's change output. This is an\n // inherent consequence of the on-chain contract requiring both aggregate mint equality\n // and per-request floor equality on outputs.\n for (const orderInfo of orderInfos) {\n let sUSDrAmount: bigint;\n if (circulatingSUSDr === 0n || vaultUSDr === 0n) {\n sUSDrAmount = orderInfo.amount;\n } else {\n sUSDrAmount = (orderInfo.amount * circulatingSUSDr) / vaultUSDr;\n }\n\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n makeValue(MIN_LOVELACE, [sUSDrAssetId, sUSDrAmount]),\n );\n }\n\n // Mint sUSDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]),\n Data.Void(),\n );\n\n // Update vault: USDr increases by staked amount, circulating_susdr increases\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n totalSUSDrMinted,\n totalUSDrStaked,\n );\n }\n\n /**\n * Unstake: sUSDr burned, USDr sent to user's destination address.\n */\n private buildUnstakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatum,\n ): void {\n const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Calculate vault USDr balance\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n if (circulatingSUSDr === 0n) {\n throw new Error(\"Cannot unstake: no sUSDr in circulation\");\n }\n\n // Calculate USDr to release for each order\n let totalUSDrReleased = 0n;\n for (const orderInfo of orderInfos) {\n const uSDrAmount = (orderInfo.amount * vaultUSDr) / circulatingSUSDr;\n totalUSDrReleased += uSDrAmount;\n\n // Send USDr to the destination (native script timelock address).\n // Use an explicit output because lockAssets requires a datum, but the\n // contract expects NoDatum.\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n const output = new Core.TransactionOutput(\n destAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, uSDrAmount]),\n );\n tx.addOutput(output);\n }\n\n // Burn sUSDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]),\n Data.Void(),\n );\n\n // Update vault: USDr decreases, circulating_susdr decreases\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n -totalSUSDrBurned,\n -totalUSDrReleased,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Cancel Orders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to cancel orders.\n */\n async buildCancelOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n destination?: Core.Address;\n /**\n * Optional set of key hashes that the caller can sign with.\n * When provided, only these keys are added as required signers —\n * essential for AnyOf/AtLeast multisig owners where not all keys\n * need to sign. When omitted, all extracted key hashes are added\n * (correct for Signature and AllOf owners, but over-constrains\n * AnyOf/AtLeast).\n */\n availableSigners?: Set;\n versionHint?: TProtocolVersion; // version of the orders to cancel. Optional, only to ensure correct datum parsing.\n }): Promise {\n const { orderInputs, destination, availableSigners, versionHint } = params;\n\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(orderInputs);\n\n if (orderUtxos.length === 0) {\n throw new Error(\"No orders to cancel\");\n }\n\n const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput\n ? new Map([\n [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput],\n ])\n : undefined;\n\n const orderRefInputs = await resolveOrderReferenceInputs(\n this.blaze,\n orderUtxos,\n cachedOrderRefs,\n this.scriptDeploymentAddress,\n );\n\n const cancelRedeemer = Data.serialize(V0_4Types.OrderRedeemer, \"Cancel\");\n const destAddress =\n destination ?? (await this.blaze.wallet.getChangeAddress());\n\n const tx = this.newOrderTransaction();\n\n for (const orderRefInput of orderRefInputs.values()) {\n tx.addReferenceInput(orderRefInput);\n }\n\n // cache current version of order script reference input\n const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash);\n if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) {\n this.cachedReferenceInputs.orderRefInput = currentOrderRefInput;\n }\n\n const requiredSigners = new Set();\n\n for (const utxo of orderUtxos) {\n const owner = await parseCancelOwner(utxo, versionHint);\n for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) {\n requiredSigners.add(keyHash);\n }\n\n tx.addInput(utxo, cancelRedeemer);\n const outputValue = utxo.output().amount();\n addDirectOutput(tx, destAddress, outputValue);\n }\n\n const effectiveSigners = availableSigners\n ? new Set([...requiredSigners].filter((k) => availableSigners.has(k)))\n : requiredSigners;\n\n for (const keyHash of effectiveSigners) {\n tx.addRequiredSigner(Ed25519KeyHashHex(keyHash));\n }\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Private Helpers\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Parse order UTxOs into IOrderInfo objects and validate they are all the same type.\n */\n private parseOrderInfos(\n orderUtxos: Core.TransactionUnspentOutput[],\n ): IOrderInfo[] {\n const orderInfos: IOrderInfo[] = [];\n let expectedActionType: TOrderActionType | null = null;\n\n for (const utxo of orderUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(V0_4Types.OrderDatum, datumData) as OrderDatum;\n const classified = this.classifyOrderAction(datum);\n\n if (expectedActionType === null) {\n expectedActionType = classified.actionType;\n } else if (expectedActionType !== classified.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n orderInfos.push({\n utxo,\n datum,\n actionType: classified.actionType,\n amount: classified.amount,\n yield: classified.yield,\n reserveAsset: classified.reserveAsset,\n });\n }\n\n if (orderInfos.length === 0) {\n throw new Error(\"No orders to execute\");\n }\n\n return orderInfos;\n }\n\n /**\n * Classify an order action from its datum.\n */\n private classifyOrderAction(datum: OrderDatum): {\n actionType: TOrderActionType;\n amount: bigint;\n yield?: bigint;\n reserveAsset?: [string, string];\n isTreasuryAction: boolean;\n } {\n const action = datum.action;\n if (\"OMint\" in action) {\n return {\n actionType: \"mint\",\n amount: action.OMint.amount,\n reserveAsset: action.OMint.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ORedeem\" in action) {\n return {\n actionType: \"burn\",\n // ORedeem.amount is positive (absolute value locked in order UTxO).\n // Negate it so the request.amount is negative for burn (USDr leaving circulation),\n // matching the contract's expectation: ORedeem.amount == -request.amount.\n amount: -action.ORedeem.amount,\n reserveAsset: action.ORedeem.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ODeposit\" in action) {\n return {\n actionType: \"deposit\",\n amount: action.ODeposit.principal,\n yield: action.ODeposit.yield,\n reserveAsset: action.ODeposit.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OWithdraw\" in action) {\n return {\n actionType: \"withdraw\",\n amount: action.OWithdraw.amount,\n reserveAsset: action.OWithdraw.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OStake\" in action) {\n return {\n actionType: \"stake\",\n amount: action.OStake.amount,\n isTreasuryAction: false,\n };\n } else if (\"OUnstake\" in action) {\n return {\n actionType: \"unstake\",\n amount: action.OUnstake.amount,\n isTreasuryAction: false,\n };\n }\n throw new Error(\"Unknown order action type\");\n }\n\n /**\n * Update treasury output with new reserve and circulating supply.\n */\n private updateTreasuryOutput(\n tx: TxBuilder,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n reserveDeltas: Map,\n circulatingSupplyDelta: bigint,\n ): void {\n const newTreasuryDatum: V0_1TreasuryDatum = {\n circulating_supply:\n parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta,\n };\n const serializedTreasuryDatum = Data.serialize(\n V0_1TreasuryDatum,\n newTreasuryDatum,\n );\n\n const treasuryValue = treasuryUtxo.output().amount();\n\n // Start with ADA + treasury NFT\n let newTreasuryValue = makeValue(treasuryValue.coin(), [\n this.treasuryNFTAssetId,\n 1n,\n ]);\n\n // Apply all reserve asset deltas\n const modifiedAssetIds = new Set([\n this.treasuryNFTAssetId.toString(),\n ]);\n for (const [reserveAssetId, delta] of reserveDeltas.entries()) {\n const currentReserve =\n treasuryValue.multiasset()?.get(Core.AssetId(reserveAssetId)) ?? 0n;\n const newReserve = currentReserve + delta;\n newTreasuryValue = Value.merge(\n newTreasuryValue,\n makeValue(0n, [Core.AssetId(reserveAssetId), newReserve]),\n );\n modifiedAssetIds.add(reserveAssetId);\n }\n\n // Preserve any other assets not modified\n const existingMultiasset = treasuryValue.multiasset();\n if (existingMultiasset) {\n for (const [assetId, amount] of existingMultiasset.entries()) {\n if (!modifiedAssetIds.has(assetId)) {\n newTreasuryValue = Value.merge(\n newTreasuryValue,\n makeValue(0n, [Core.AssetId(assetId), amount]),\n );\n }\n }\n }\n tx.lockAssets(\n this.treasuryAddress,\n newTreasuryValue,\n serializedTreasuryDatum,\n );\n }\n\n /**\n * Update vault output with new circulating_susdr and USDr balance.\n */\n private updateVaultOutput(\n tx: TxBuilder,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatum,\n sUSDrDelta: bigint,\n uSDrDelta: bigint = 0n,\n ): void {\n const newVaultDatum: VaultDatum = {\n circulating_susdr: parsedVaultDatum.circulating_susdr + sUSDrDelta,\n };\n const serializedVaultDatum = Data.serialize(\n V0_4Types.VaultDatum,\n newVaultDatum,\n );\n\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n // Start with existing vault value, then adjust USDr\n let newVaultValue = vaultUtxo.output().amount();\n if (uSDrDelta !== 0n) {\n const currentUSDr =\n newVaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const newUSDr = currentUSDr + uSDrDelta;\n newVaultValue = makeValue(newVaultValue.coin(), [\n this.stakingVaultNFTAssetId,\n 1n,\n ]);\n if (newUSDr > 0n) {\n newVaultValue = Value.merge(\n newVaultValue,\n makeValue(0n, [stablecoinAssetId, newUSDr]),\n );\n }\n // Preserve any other assets from the original vault\n const existingMultiasset = vaultUtxo.output().amount().multiasset();\n if (existingMultiasset) {\n for (const [assetId, amount] of existingMultiasset.entries()) {\n if (\n assetId !== this.stakingVaultNFTAssetId.toString() &&\n assetId !== stablecoinAssetId.toString()\n ) {\n newVaultValue = Value.merge(\n newVaultValue,\n makeValue(0n, [Core.AssetId(assetId), amount]),\n );\n }\n }\n }\n }\n\n tx.lockAssets(\n this.stakingVaultAddress,\n newVaultValue,\n serializedVaultDatum,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Reserve Asset Conversion Utilities\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Get protocol settings from proxy datum (cached).\n */\n private async getVersionSettings(): Promise {\n const { parsedProxyDatum } = await this.getParsedProxyDatum();\n return parsedProxyDatum.settings as Settings;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1/family.js b/modules/realfi-partner-sdk/dist/esm/sdk/v1/family.js new file mode 100644 index 0000000000..b9324004ae --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1/family.js @@ -0,0 +1,2517 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import { addressFromCredentials, addressFromValidator, blake2b_256, Ed25519KeyHashHex, HexBlob, PlutusData, toHex } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import { calculateMinAda, Core, makeValue, Value } from "@blaze-cardano/sdk"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import { addDirectOutput, addDestinationOutput, buildNonceFromUtxo, buildMultisigTimelockNativeScript, buildTimelockAddress, buildTimelockDestination, buildTimelockNativeScript, buildUnstakeMetadatum, UNSTAKE_METADATA_LABEL, credentialFromScript, deployScript, findReserveAsset, getDatumFromNFT, getSignatureKeyHashesFromMultisigScript, usdrToReserve, usdrToReserveCeil, computeReserveDeltas, lockOrPayAssets, sortOrderInputs, RealfiSDKBase, resolveOrderReferenceInputs, parseCancelOwner } from "../shared/index.js"; +import { screenOrderAction, screenDepositBatch, screenOrderUtxoFacts } from "./order-sanity.js"; +// ───────────────────────────────────────────────────────────────────────────── +// Constants +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Sentinel `reserve_asset` used in V1_0 TreasuryRequestV1 redeemers for + * DirectMint and DirectBurn actions, which have no real reserve asset in + * their order datum. The on-chain validators `direct_mint_logic` and + * `direct_burn_logic` do not inspect this field; this sentinel makes the + * intent explicit both in code and when inspecting on-chain redeemers. + * + * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a + * sentinel and extremely unlikely to occur as a real script hash) + * - `asset_name`: "unused" (ASCII) + * + * Keep in sync with backend `contract.DirectActionPaddingAsset`. + */ +export const DIRECT_ACTION_PADDING_ASSET = ["00".repeat(28), toHex(new TextEncoder().encode("unused"))]; + +// ───────────────────────────────────────────────────────────────────────────── +// Types +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Parsed order information extracted from a UTXO. + */ + +/** Minimal completed-swap shape accepted by the stake continuation builder. */ + +/** Parameters for building a RealFi stake order as another order's destination. */ + +/** Address and inline datum a preceding protocol should pay its result to. */ + +/** Result of {@link RealfiSDKV1Family.classifyOrderAction}. */ + +/** Result of {@link RealfiSDKV1Family.classifyOrderUtxo}. */ + +/** The `origin` field shared by every request kind — the consumed order UTxO. */ + +/** + * Context handed to {@link RealfiSDKV1Family.applyExecutionValidityBounds} + * at the end of `buildExecuteOrdersTx`. The vault fields are set only when + * the executed action consumed the staking vault (stake/unstake/deposit). + */ + +/** + * Version-agnostic constructor parameters for the V1 family. Each version's + * `static create` assembles this from its own public params interface. + */ + +/** Blueprint validator key (within a version slot) -> SDK identity field. */ +const DEPLOYED_VALIDATOR_FIELDS = [["protocol_orchestrator.protocol_orchestrator.withdraw", "protocolScriptHash"], ["protocol_mint.protocol_mint.withdraw", "protocolMintScriptHash"], ["protocol_stake.protocol_stake.withdraw", "protocolStakeScriptHash"], ["protocol_management.protocol_management.withdraw", "protocolManagementScriptHash"], ["order.order.spend", "orderScriptHash"], ["treasury.treasury.spend", "treasuryScriptHash"], ["staking_vault.staking_vault.spend", "stakingVaultScriptHash"]]; +const DEPLOYED_VALIDATOR_PREFIXES = { + V1_0: "v1_0/", + V1_0_Rc1: "v1_0_rc1/", + V1_1_Rc1: "v1_1_rc1/" +}; +const COMPATIBLE_STATE_VALIDATOR_FIELDS = new Set(["treasuryScriptHash", "stakingVaultScriptHash"]); + +/** Hash fields whose address must move with them. */ +const DEPLOYED_ADDRESS_FIELDS = { + orderScriptHash: "orderScriptAddress", + treasuryScriptHash: "treasuryAddress", + stakingVaultScriptHash: "stakingVaultAddress" +}; +export const MIN_LOVELACE = 2000000n; + +/** + * Calculate yield split between staked and unstaked portions. + * Matches on-chain deposit.ak logic: staked_yield_share = total_yield * vault_usdr / treasury_circulating + * + * IMPORTANT: Uses truncation toward zero (BigInt default `/` operator) to match + * Aiken's builtin.quotient_integer. Do NOT use floor division here, as it + * rounds toward negative infinity which gives different results for negative yields. + * Example: floor(-165/90) = -2, but trunc(-165/90) = -1. + */ +/** + * Extract the requests list from a signed payload action, regardless of action type. + * Both TreasuryRequestV1 and RequestV1 have `origin: { transaction_id, output_index }`. + */ +function getRequestsFromAction(action) { + if ("Mint" in action) return action.Mint.requests; + if ("Burn" in action) return action.Burn.requests; + if ("Withdraw" in action) return action.Withdraw.requests; + if ("Deposit" in action) return action.Deposit.requests; + if ("Stake" in action) return action.Stake.requests; + if ("Unstake" in action) return action.Unstake.requests; + if ("DirectMint" in action) return action.DirectMint.requests; + if ("DirectBurn" in action) return action.DirectBurn.requests; + throw new Error("Unknown action type in signed payload"); +} +export function calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating) { + // Note: BigInt / truncates toward zero, matching Aiken's quotient_integer + const stakedYieldShare = treasuryCirculating > 0n ? totalYield * vaultUSDr / treasuryCirculating : 0n; + const unstakedYieldShare = totalYield - stakedYieldShare; + return { + stakedYieldShare, + unstakedYieldShare + }; +} + +/** + * Refuse to create an order whose `min_received` floor is not strictly + * positive (WTB-1764). + * + * Every v1-family validator predicate that reads `min_received` requires it to + * be > 0, and those predicates run inside a `zip_fold` that `expect`s each + * request in turn — so one order with a zero floor crashes the ENTIRE execution + * transaction, killing every valid order batched alongside it. Such an order can + * never execute; creating it only plants a landmine at the order script address. + * + * This guards both an explicit caller-supplied floor and a computed one that + * rounds or nets down to zero (a dust stake at a high exchange rate, or a + * full-forfeit unstake). + */ +function assertPositiveMinReceived(label, minReceived) { + if (minReceived <= 0n) { + throw new Error(`${label} minReceived must be positive (got ${minReceived}); an order with a ` + "non-positive min_received can never execute and crashes every batch it joins"); + } +} +function buildOrderDestinationValue(orderInfo, consumedAssets, deliveredAssets = []) { + let value = orderInfo.utxo.output().amount(); + for (const [assetId, amount] of consumedAssets) { + if (amount !== 0n) { + value = Value.merge(value, makeValue(0n, [assetId, -amount])); + } + } + for (const [assetId, amount] of deliveredAssets) { + if (amount !== 0n) { + value = Value.merge(value, makeValue(0n, [assetId, amount])); + } + } + return value; +} + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Family Base Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Shared implementation for the V1 protocol family (v1_0, v1_0_rc1, v1_1+). + * + * The family is generic over the two datum shapes that differ across + * versions — `TSettings` (the proxy settings static) and `TVaultDatum` (the + * staking-vault datum static) — and receives all generated artifacts from the + * subclass: schema VALUES via {@link IV1FamilySchemas} (plus, optionally, + * {@link IV1SigningSchemas}) and instantiated scripts via + * {@link IV1FamilyScripts}. Method bodies never touch a version's generated + * module directly, so this chunk adds no runtime import edge to any + * `generated-types/v1_x` module and per-version code-splitting is preserved. + * + * Method defaults implement v1_0 semantics (fees, min_received, the v1_0 + * protocol-redeemer schema). Versions that diverge override the affected + * members: + * - vault datum construction is NEVER done inline — it goes through the + * abstract `buildInitialVaultDatum` / `buildUpdatedVaultDatum` seam so + * versions with additional vault fields cannot be silently truncated; + * - settings access goes through the abstract `settingsConfig` / + * `settingsRegistry` adapters; + * - `applyExecutionValidityBounds` lets a version constrain the validity + * interval of execution transactions (no-op by default). + */ +export class RealfiSDKV1Family extends RealfiSDKBase { + constructor(blaze, params, schemas, scripts, cachedReferenceInputs, signingSchemas) { + super(blaze, { + version: params.version, + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace: params.enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource + }, cachedReferenceInputs); + // Script hashes and policy IDs + _defineProperty(this, "stablecoinPolicyId", void 0); + _defineProperty(this, "oneShotPolicyId", void 0); + _defineProperty(this, "protocolScriptHash", void 0); + _defineProperty(this, "protocolMintScriptHash", void 0); + _defineProperty(this, "protocolStakeScriptHash", void 0); + _defineProperty(this, "protocolManagementScriptHash", void 0); + _defineProperty(this, "treasuryScriptHash", void 0); + _defineProperty(this, "treasuryNFTAssetId", void 0); + _defineProperty(this, "orderScriptHash", void 0); + _defineProperty(this, "orderScriptAddress", void 0); + _defineProperty(this, "treasuryAddress", void 0); + _defineProperty(this, "stakingVaultScriptHash", void 0); + _defineProperty(this, "stakingVaultAddress", void 0); + _defineProperty(this, "stakingVaultNFTAssetId", void 0); + _defineProperty(this, "sUSDrAssetNameHex", void 0); + // Scripts + _defineProperty(this, "oneShotScript", void 0); + _defineProperty(this, "protocolScript", void 0); + // Alias for orchestrator (base class compatibility) + _defineProperty(this, "protocolOrchestratorScript", void 0); + _defineProperty(this, "protocolMintScript", void 0); + _defineProperty(this, "protocolStakeScript", void 0); + _defineProperty(this, "protocolManagementScript", void 0); + _defineProperty(this, "mintProxyScript", void 0); + _defineProperty(this, "treasuryScript", void 0); + _defineProperty(this, "orderScript", void 0); + _defineProperty(this, "stakingVaultScript", void 0); + _defineProperty(this, "defaultSlippageToleranceBps", void 0); + /** Schema values used by every shared serialize/parse site. */ + _defineProperty(this, "schemas", void 0); + _defineProperty(this, "signingSchemas", void 0); + this.schemas = schemas; + this.signingSchemas = signingSchemas; + this.sUSDrAssetNameHex = params.sUSDrAssetNameHex; + this.defaultSlippageToleranceBps = params.defaultSlippageToleranceBps; + this.oneShotScript = scripts.oneShotScript; + this.protocolOrchestratorScript = scripts.protocolOrchestratorScript; + this.protocolScript = scripts.protocolOrchestratorScript; // Alias for base class + this.protocolMintScript = scripts.protocolMintScript; + this.protocolStakeScript = scripts.protocolStakeScript; + this.protocolManagementScript = scripts.protocolManagementScript; + this.mintProxyScript = scripts.mintProxyScript; + this.treasuryScript = scripts.treasuryScript; + this.orderScript = scripts.orderScript; + this.stakingVaultScript = scripts.stakingVaultScript; + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolOrchestratorScript.hash(); + this.protocolMintScriptHash = this.protocolMintScript.hash(); + this.protocolStakeScriptHash = this.protocolStakeScript.hash(); + this.protocolManagementScriptHash = this.protocolManagementScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + this.treasuryScriptHash = this.treasuryScript.hash(); + this.orderScriptHash = this.orderScript.hash(); + this.stakingVaultScriptHash = this.stakingVaultScript.hash(); + this.treasuryAddress = addressFromValidator(this.network, this.treasuryScript); + this.orderScriptAddress = addressFromValidator(this.network, this.orderScript); + this.stakingVaultAddress = addressFromValidator(this.network, this.stakingVaultScript); + + // Every identity above is derived from this package's own artifacts, which + // only describes a deployment running those exact bytes. Where the caller + // knows what the chain actually runs, that wins — otherwise the derived + // order address is one nothing watches, and an order (lockAssets, no + // on-chain validation) would submit successfully into it. + this.applyDeployedValidators(params.deployedValidators, params.version); + + // Treasury NFT: policy = treasury script hash, name = "treasury" + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + this.treasuryNFTAssetId = Core.AssetId(this.treasuryScriptHash + treasuryAssetName.toString()); + + // Staking vault NFT: policy = staking vault script hash, name = "staking_vault" + const vaultAssetName = Core.AssetName(toHex(Buffer.from("staking_vault"))); + this.stakingVaultNFTAssetId = Core.AssetId(this.stakingVaultScriptHash + vaultAssetName.toString()); + } + + /** + * Replace derived script identity with the deployment's own hashes. + * + * Version-owned validators are selected only from this SDK's exact version + * slot. Treasury and staking-vault validators can deliberately survive a + * protocol-only upgrade, so their unversioned entries are used as the + * authoritative active-state fallback. + * + * Unrecognised keys are ignored: a blueprint legitimately carries validators + * outside this family (oneshot, mint_proxy) and future ones this build has + * never heard of. + */ + applyDeployedValidators(deployed, version) { + if (!deployed) return; + if (!(version in DEPLOYED_VALIDATOR_PREFIXES)) return; + const prefix = DEPLOYED_VALIDATOR_PREFIXES[version]; + const mutable = this; + for (const [suffix, field] of DEPLOYED_VALIDATOR_FIELDS) { + const versionedHash = deployed[`${prefix}${suffix}`]; + const activeStateHash = COMPATIBLE_STATE_VALIDATOR_FIELDS.has(field) ? deployed[suffix] : undefined; + const deployedHash = activeStateHash ?? versionedHash; + if (!deployedHash) continue; + const hash = Core.Hash28ByteBase16(deployedHash.toLowerCase()); + mutable[field] = hash; + const addressField = DEPLOYED_ADDRESS_FIELDS[field]; + if (addressField) { + mutable[addressField] = addressFromCredentials(this.network, Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash + })); + } + } + } + + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Schemas for the v1_0-semantics signing/execute defaults. Throws for + * versions that neither supplied {@link IV1SigningSchemas} nor overrode + * the two consumers (`getSignedPayloadFromOrderInputs`, + * `buildExecuteOrdersTx`). + */ + get signing() { + if (!this.signingSchemas) { + throw new Error(`${this.version}: no signing schemas supplied — pass signingSchemas to the family constructor or override getSignedPayloadFromOrderInputs and buildExecuteOrdersTx`); + } + return this.signingSchemas; + } + + /** + * Project the version's settings onto the fields the shared tx-builders + * read. v1_0/v1_0_rc1: the settings object itself; v1_1+: `settings.config`. + */ + + /** + * Extract the validator registry (the fields the family reads) from the + * version's settings. + */ + + /** + * Build the vault datum used when bootstrapping the staking vault. + * This is the ONLY place (together with `buildUpdatedVaultDatum`) that + * knows the version's full vault-datum shape. + */ + + /** + * Build the vault datum that replaces `previous` after an execution that + * changes circulating sUSDr by `sUSDrDelta`. Versions with additional + * vault fields decide here how each field carries over. + */ + + /** + * Version hook: the USDr backing the stake/unstake exchange rate is + * computed against. Defaults to the vault's full USDr balance (v1_0 / + * v1_0_rc1 semantics). Versions with time-diffused yield (v1_1_rc1+) + * override this to exclude the not-yet-diffused pending yield + * (`settled_backing` in utilities.ak). + */ + settledVaultBacking(_parsedVaultDatum, vaultUSDr) { + return vaultUSDr; + } + + /** + * Version hook: constrain the transaction validity interval on order + * executions. Called once at the end of `buildExecuteOrdersTx`, right + * before the builder is returned. + * + * No-op by default: v1_0 / v1_0_rc1 executions carry no validity + * constraints. Versions with time-diffused yield (v1_1_rc1+) override this + * to attach validFrom/validTo bounds on vault-touching executions. + */ + async applyExecutionValidityBounds(_tx, _context) { + // no-op by default + } + + /** + * Version hook: build the `Deposit` protocol action that goes into the + * COSE-signed payload. v1_0 / v1_0_rc1 have no yield split — the validator + * recomputes it from live state — so they take no `alpha` and reject one. + * Versions that carry a signed `alpha` (v1_1_rc1+) override this and require + * it: it is the batch's parameter, never something a signer derives. + */ + async buildDepositAction(requests, alpha) { + if (alpha) { + throw new Error(`${this.version}: a deposit batch takes no yield-split alpha (the validator recomputes the split from live state)`); + } + return { + Deposit: { + requests + } + }; + } + + /** + * Version hook: split a deposit's total yield between the staked vault and + * the unstaked pot at EXECUTION time. + * + * v1_0 / v1_0_rc1 (default): the on-chain validator recomputes the split from + * live vault/treasury state, so recomputing it here from the same state + * matches. v1_1_rc1+ carry a COSE-signed `alpha` in the Deposit action and + * the validator splits against THAT — so those versions override this to echo + * the signed alpha, never a second live read (which would diverge if state + * moved between signing and execution). `action` is the signed action being + * executed; the default ignores it. + */ + resolveDepositYieldShares(totalYield, vaultUSDr, treasuryCirculating, _action) { + return calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating); + } + + /** + * Version hook: serialize the redeemer attached to the orchestrator + * withdrawal. Defaults to the bare `SignedRedeemer` + * (v1_0 / v1_0_rc1). Versions whose orchestrator wraps execution in a + * top-level dispatch enum (v1_1_rc1+: `ExecuteOrders(...)`/`PublishYieldOracle`) + * override this to nest the signed redeemer inside that wrapper. + */ + serializeOrchestratorWithdrawalRedeemer(redeemer) { + return Data.serialize(this.signing.SignedRedeemer_ExtraProtocolRedeemerV1, redeemer); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + */ + async mintTreasuryNFT(treasuryBootstrapUtxo, initialDatum = { + circulating_supply: 0n + }) { + const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash); + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + const datum = Data.serialize(V0_1TreasuryDatum, initialDatum); + const tx = await this.blaze.newTransaction().addInput(treasuryBootstrapUtxo).addMint(treasuryPolicyId, new Map([[treasuryAssetName, 1n]]), Data.Void()).lockAssets(this.treasuryAddress, makeValue(10000000n, [this.treasuryNFTAssetId, 1n]), datum).provideScript(this.treasuryScript); + return { + tx, + nftAssetId: this.treasuryNFTAssetId + }; + } + async deployTreasury() { + return deployScript(this.blaze, this.treasuryScript, this.scriptDeploymentAddress); + } + async deployOrderContract() { + return deployScript(this.blaze, this.orderScript, this.scriptDeploymentAddress); + } + async getTreasuryDatum() { + const { + utxo: treasuryUtxo, + datum: treasuryDatum, + parsedDatum: parsedTreasuryDatum + } = await getDatumFromNFT(this.blaze, this.treasuryNFTAssetId, V0_1TreasuryDatum); + if (!treasuryUtxo) { + throw new Error("No UTXO found with the treasury NFT"); + } + if (!treasuryDatum) { + throw new Error("No treasury datum found"); + } + return { + treasuryUtxo, + treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Staking Vault Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the staking vault NFT and create initial vault UTxO. + */ + async mintStakingVaultNFT(stakingVaultBootstrapUtxo, initialDatum) { + const vaultPolicyId = Core.PolicyId(this.stakingVaultScriptHash); + const vaultAssetName = Core.AssetName(toHex(Buffer.from("staking_vault"))); + const datum = Data.serialize(this.schemas.VaultDatumV1, initialDatum ?? this.buildInitialVaultDatum()); + const tx = await this.blaze.newTransaction().addInput(stakingVaultBootstrapUtxo).addMint(vaultPolicyId, new Map([[vaultAssetName, 1n]]), Data.Void()).lockAssets(this.stakingVaultAddress, makeValue(10000000n, [this.stakingVaultNFTAssetId, 1n]), datum).provideScript(this.stakingVaultScript); + return { + tx, + nftAssetId: this.stakingVaultNFTAssetId + }; + } + async deployStakingVault() { + return deployScript(this.blaze, this.stakingVaultScript, this.scriptDeploymentAddress); + } + + /** + * Deploy the protocol mint script as a reference script (V1.0 only). + */ + async deployProtocolMint() { + return deployScript(this.blaze, this.protocolMintScript, this.scriptDeploymentAddress); + } + + /** + * Deploy the protocol stake script as a reference script (V1.0 only). + */ + async deployProtocolStake() { + return deployScript(this.blaze, this.protocolStakeScript, this.scriptDeploymentAddress); + } + + /** + * Deploy the protocol management script as a reference script (V1.0 only). + */ + async deployProtocolManagement() { + return deployScript(this.blaze, this.protocolManagementScript, this.scriptDeploymentAddress); + } + + /** + * Register the protocol mint stake credential (V1.0 sub-validator). + */ + registerProtocolMintStake() { + const stakeCredential = credentialFromScript(this.protocolMintScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + /** + * Register the protocol stake stake credential (V1.0 sub-validator). + */ + registerProtocolStakeStake() { + const stakeCredential = credentialFromScript(this.protocolStakeScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + /** + * Register the protocol management stake credential (V1.0 sub-validator). + */ + registerProtocolManagementStake() { + const stakeCredential = credentialFromScript(this.protocolManagementScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + /** + * Register the staking vault stake credential (for stake/unstake operations). + */ + registerStakingVaultStake() { + const stakeCredential = credentialFromScript(this.stakingVaultScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + // ─────────────────────────────────────────────────────────────────────────── + // Batched bootstrap helpers (fast fresh-deploy path) + // + // The NFT mints CANNOT be batched: each one-shot mint validator runs + // `mint_oneshots_strict`, which flattens the transaction's ENTIRE mint field + // and fails unless it equals exactly that validator's single token. So a tx + // minting more than one NFT fails phase-2 for all of them — the mints stay + // one-tx-each. Deploys and stake registrations have no such constraint and + // batch freely. + // ─────────────────────────────────────────────────────────────────────────── + + /** + * Register all five protocol stake credentials (orchestrator + mint / stake / + * management sub-validators + staking vault) in a SINGLE transaction. + * Certificates are tiny, so there is no size constraint. Replaces five + * `register*Stake` calls (and, for a cold wallet, five sign/submit cycles). + */ + registerAllStakes() { + return this.blaze.newTransaction().addRegisterStake(credentialFromScript(this.protocolScript)).addRegisterStake(credentialFromScript(this.protocolMintScript)).addRegisterStake(credentialFromScript(this.protocolStakeScript)).addRegisterStake(credentialFromScript(this.protocolManagementScript)).addRegisterStake(credentialFromScript(this.stakingVaultScript)); + } + + /** + * Pack the eight protocol reference-script deployments into as few + * transactions as fit under `budgetBytes` of script payload each, returning + * one TxBuilder per batch in deploy order. + * + * Batches by measured script size (`script.toCbor()` bytes) rather than a + * fixed count, because the validators are wildly uneven (~0.5–11 KB) and two + * of the ~10 KB sub-validators cannot share a transaction. The default budget + * (13 000) leaves headroom under the 16 384-byte tx limit for tx overhead and + * future script growth; callers can lower it if a validator grows. + * + * Fresh-deploy only: it does NOT skip already-deployed scripts. To resume a + * partial deploy, use the granular `deploy*` methods (which throw + * `ScriptAlreadyDeployedError` for idempotent reruns). + */ + deployScriptsBatched(budgetBytes = 13_000) { + const scripts = [this.treasuryScript, this.protocolScript, this.protocolMintScript, this.protocolStakeScript, this.protocolManagementScript, this.mintProxyScript, this.orderScript, this.stakingVaultScript]; + const batches = []; + let current = []; + let currentBytes = 0; + for (const script of scripts) { + const size = script.toCbor().length / 2; + if (current.length > 0 && currentBytes + size > budgetBytes) { + batches.push(current); + current = []; + currentBytes = 0; + } + current.push(script); + currentBytes += size; + } + if (current.length > 0) batches.push(current); + return batches.map(batch => { + let tx = this.blaze.newTransaction(); + for (const script of batch) { + tx = tx.deployScript(script, this.scriptDeploymentAddress); + } + return tx; + }); + } + + /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */ + getSusdrAssetId() { + return Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + } + async getVaultDatum() { + const { + utxo: vaultUtxo, + datum: vaultDatum, + parsedDatum: parsedVaultDatum + } = await getDatumFromNFT(this.blaze, this.stakingVaultNFTAssetId, this.schemas.VaultDatumV1); + if (!vaultUtxo) { + throw new Error("No UTXO found with the staking vault NFT"); + } + if (!vaultDatum) { + throw new Error("No vault datum found"); + } + return { + vaultUtxo, + vaultDatum, + parsedVaultDatum: parsedVaultDatum + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + async mintOneShot(receiverAddress, datum) { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(this.schemas.ProxyDatumV1, { + logic: datum.logic, + settings: datum.settings + }); + const baseTx = this.blaze.newTransaction().addInput(utxo).addMint(this.oneShotPolicyId, new Map([[Core.AssetName(""), 1n]]), Data.Void()); + const tx = lockOrPayAssets(baseTx, receiverAddress, makeValue(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum).provideScript(this.oneShotScript); + return { + tx, + policyId: this.oneShotPolicyId + }; + } + async updateOneShotDatum(receiverAddress, newDatum) { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(Core.AssetId(this.oneShotPolicyId)); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + const serializedDatum = Data.serialize(this.schemas.ProxyDatumV1, { + logic: newDatum.logic, + settings: newDatum.settings + }); + return lockOrPayAssets(this.blaze.newTransaction().addInput(oneshotUtxo), receiverAddress, makeValue(10000000n, [this.oneShotPolicyId, 1n]), serializedDatum); + } + async getParsedProxyDatum() { + if (this.cachedProxyDatumResult) { + return this.cachedProxyDatumResult; + } + const { + proxyUtxo, + proxyDatum + } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(this.schemas.ProxyDatumV1, proxyDatum); + const result = { + proxyUtxo, + proxyDatum, + parsedProxyDatum + }; + this.cachedProxyDatumResult = result; + return result; + } + + /** + * Check if the protocol has been upgraded past this SDK version. + * + * Returns true if either: + * - The order script hash no longer matches registry.order (order validator upgraded) + * - The protocol logic no longer matches this SDK's protocol script hash (protocol upgraded) + * + * When this returns true, orders created with this SDK version can use the + * `Invalidated` redeemer to recover funds via `buildInvalidatedOrdersTx`. + */ + async isProtocolUpgraded() { + const { + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const registry = this.settingsRegistry(parsedProxyDatum.settings); + const orderUpgraded = registry.order !== this.orderScriptHash; + const protocolUpgraded = parsedProxyDatum.logic !== this.protocolScriptHash; + return orderUpgraded || protocolUpgraded; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Public Order-Scan / Settings Accessors + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Read the version-agnostic settings config (`reserve_assets`, + * `unstaked_yield_pot`) off the live proxy datum. Public accessor over the + * `settingsConfig` / `getVersionSettings` seam so consumers read the shared + * fields without casting a version-specific settings shape: v1_0 / v1_0_rc1 + * project the flat settings, v1_1+ project `settings.config`. + */ + async getSettingsConfig() { + return this.settingsConfig(await this.getVersionSettings()); + } + + /** + * Whether the batch covering these orders needs a yield-split alpha, i.e. it is + * a deposit on a version that splits yield. Callers that both create and sign a + * batch use it to decide whether to pick one (computeDepositAlpha); a co-signer + * has no use for it — it reads the batch's stored alpha either way. + */ + async batchNeedsAlpha(orderInputs) { + if (orderInputs.length === 0) { + return false; + } + const [utxo] = await this.blaze.provider.resolveUnspentOutputs([orderInputs[0]]); + return this.classifyOrderUtxo(utxo).action.actionType === "deposit" && this.splitsYield; + } + + /** + * Whether this version's Deposit action carries a signed yield split. False for + * v1_0 / v1_0_rc1, whose validator recomputes the split from live state; + * v1_1_rc1+ override it. + */ + get splitsYield() { + return false; + } + + /** + * Decode and classify a single open order UTxO with this version's schema. + * + * Parses the UTxO's inline datum via `this.schemas.OrderDatumV1` — exactly + * the way {@link parseOrderInfos} does — then classifies the action. Unlike + * {@link parseOrders}, this imposes NO same-action-type constraint, so it is + * the per-UTxO primitive for scanning a MIXED batch of open orders at the + * order script address and handling each by its action type. + * + * @throws if the UTxO carries no inline datum, or the datum fails to decode + * under this version's order schema (e.g. a V1.1 order read by a V1.0 SDK). + */ + classifyOrderUtxo(utxo) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(this.schemas.OrderDatumV1, datumData); + return { + datum, + action: this.classifyOrderAction(datum) + }; + } + + /** + * Decode a batch of order UTxOs into {@link IOrderInfo} objects, validating + * they are ALL the same action type (throws on a mixed batch). Public + * wrapper over {@link parseOrderInfos}; use it to prepare inputs for the + * same-type execute builders. To scan a mixed batch, classify each UTxO + * individually with {@link classifyOrderUtxo} instead. + * + * The optional `fees` map (keyed by `${txHash}#${outputIndex}`) stamps each + * order with its locked fee in the action's output unit; missing entries + * default to 0 (no fee retained). + */ + parseOrders(orderUtxos, fees) { + return this.parseOrderInfos(orderUtxos, fees); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Order Builder Methods (8 methods: 6 from V0_4 + DirectMint + DirectBurn) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Internal helper to build an order transaction. + */ + async _buildOrderTx(params) { + const owner = await this.resolveOrderOwner(params.owner); + const serializedDatum = this.serializeOrderDatum(params.action, params.destination, owner, params.data); + const tx = this.newOrderTransaction(params.extraLabels); + tx.lockAssets(this.orderScriptAddress, params.valueToLock, serializedDatum); + return tx; + } + + /** Resolve the order owner exactly once for transaction and continuation builders. */ + async resolveOrderOwner(owner) { + if (owner) return owner; + return { + Signature: { + key_hash: (await this.blaze.wallet.getChangeAddress()).getProps().paymentPart.hash.toString() + } + }; + } + + /** Serialize an order datum through the live version instance's schema seam. */ + serializeOrderDatum(action, destination, owner, data) { + const orderDatum = { + action, + owner, + destination, + data: data ?? Data.Void() + }; + return Data.serialize(this.schemas.OrderDatumV1, orderDatum); + } + + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + async buildMintOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Mint amount must be positive"); + } + const orderLovelace = params.orderLovelace ?? MIN_LOVELACE; + if (orderLovelace < MIN_LOVELACE) { + throw new Error("Mint order lovelace cannot be less than MIN_LOVELACE"); + } + const reserveAssetId = Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); + // Convert USDr amount to reserve amount using ceiling division + // to ensure enough reserve is locked for on-chain validation + const settings = this.settingsConfig(await this.getVersionSettings()); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAmount = usdrToReserveCeil(params.amount, ra); + // Mint is 1:1 reserve→USDR with no protocol fee in v1_0, so the user + // receives exactly `amount`. Default the floor to `amount`; callers can + // lower it if a future fee makes that too tight. + const minReceived = params.minReceived ?? params.amount; + assertPositiveMinReceived("Mint", minReceived); + return this._buildOrderTx({ + action: { + OMint: { + amount: params.amount, + min_received: minReceived, + reserve_asset: params.reserveAsset + } + }, + valueToLock: makeValue(orderLovelace, [reserveAssetId, reserveAmount]), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + async buildRedeemOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Redeem amount must be positive"); + } + const settings = this.settingsConfig(await this.getVersionSettings()); + const ra = findReserveAsset(settings, params.reserveAsset); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + // burn.ak caps delivery at usdr_to_reserve(amount, ra), so the default + // floor must use the configured reserve multiplier rather than assume 1:1. + const minReceived = params.minReceived ?? usdrToReserve(params.amount, ra); + assertPositiveMinReceived("Redeem", minReceived); + return this._buildOrderTx({ + action: { + ORedeem: { + amount: params.amount, + min_received: minReceived, + reserve_asset: params.reserveAsset + } + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a deposit order: lock reserve tokens, request treasury deposit. + */ + async buildDepositOrderTx(params) { + if (params.principal < 0n) { + throw new Error("Deposit principal must be non-negative"); + } + if (params.principal === 0n && params.yield === 0n) { + throw new Error("Deposit must have non-zero principal or yield"); + } + const settings = this.settingsConfig(await this.getVersionSettings()); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAssetId = Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); + let valueToLock; + if (params.yield >= 0n) { + // POSITIVE YIELD: need reserve backing for BOTH principal AND yield. + // Contract validates: reserve_to_usdr(treasury_delta) >= principal + yield + // So we must lock: usdrToReserveCeil(principal + yield) reserve tokens + const totalUSDrBacking = params.principal + params.yield; + if (totalUSDrBacking > 0n) { + const reserveAmount = usdrToReserveCeil(totalUSDrBacking, ra); + valueToLock = makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]); + } else { + valueToLock = makeValue(MIN_LOVELACE); + } + } else { + // NEGATIVE YIELD: lock principal (in reserve) + unstaked yield share (in USDr). + // The staked share comes from the vault (validated on-chain via vault USDr change). + const principalReserve = params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n; + valueToLock = principalReserve > 0n ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve]) : makeValue(MIN_LOVELACE); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + + // Fetch current state to calculate yield split + const { + parsedTreasuryDatum + } = await this.getTreasuryDatum(); + const vaultUtxo = (await this.getVaultDatum()).vaultUtxo; + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + const { + unstakedYieldShare + } = calculateYieldShares(params.yield, vaultUSDr, treasuryCirculating); + + // Lock only the unstaked portion (negated since unstakedYieldShare is negative) + if (unstakedYieldShare < 0n) { + valueToLock = Value.merge(valueToLock, makeValue(0n, [stablecoinAssetId, -unstakedYieldShare])); + } + } + return this._buildOrderTx({ + action: { + ODeposit: { + principal: params.principal, + yield: params.yield, + reserve_asset: params.reserveAsset + } + }, + valueToLock, + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a withdraw order: lock min ADA, request reserve token withdrawal. + */ + async buildWithdrawOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Withdraw amount must be positive"); + } + const settings = this.settingsConfig(await this.getVersionSettings()); + findReserveAsset(settings, params.reserveAsset); + return this._buildOrderTx({ + action: { + OWithdraw: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: makeValue(MIN_LOVELACE), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + async buildStakeOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Stake amount must be positive"); + } + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const minReceived = params.minReceived ?? (await this.computeStakeMinReceived(params.amount, params.slippageToleranceBps)); + assertPositiveMinReceived("Stake", minReceived); + return this._buildOrderTx({ + action: { + OStake: { + amount: params.amount, + min_received: minReceived + } + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a stake-order continuation from a completed swap's guaranteed USDr + * output. The swap quote remains observable to the caller, while the SDK + * owns the RealFi amount, exchange-rate quote, schema, and request address. + */ + async buildStakeContinuation(params) { + const amount = params.swap.minReceived.amount; + if (amount <= 0n) { + throw new Error("Swap minReceived amount must be positive"); + } + const expectedSundaeAssetId = `${this.stablecoinPolicyId}.${this.assetNameHex}`; + if (params.swap.minReceived.metadata.assetId !== expectedSundaeAssetId) { + throw new Error(`Swap minReceived must be USDr (${expectedSundaeAssetId}), got ${params.swap.minReceived.metadata.assetId}`); + } + const minReceived = await this.computeStakeMinReceived(amount, params.slippageToleranceBps); + assertPositiveMinReceived("Stake", minReceived); + const owner = await this.resolveOrderOwner(params.owner); + return { + address: this.orderScriptAddress, + datum: this.serializeOrderDatum({ + OStake: { + amount, + min_received: minReceived + } + }, params.destination, owner, params.data) + }; + } + async _buildUnstakeOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Unstake amount must be positive"); + } + const forfeit = params.forfeit ?? 0n; + if (forfeit < 0n) { + throw new Error("Forfeit amount cannot be negative"); + } + const sUSDrAssetId = Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + const minReceived = params.minReceived ?? (await this.computeUnstakeMinReceived(params.amount, forfeit, params.slippageToleranceBps)); + // Also catches a full forfeit, where computeUnstakeMinReceived nets to 0: + // unstake.ak's own comment defers that case to `min_received > 0`, i.e. the + // batch-wide crash. Refuse to create the order instead. + assertPositiveMinReceived("Unstake", minReceived); + return this._buildOrderTx({ + action: { + OUnstake: { + amount: params.amount, + min_received: minReceived, + forfeit + } + }, + valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + extraLabels: params.extraLabels + }); + } + + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockSlot - Slot number after which the user can spend the released USDr + * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0) + * @param params.slippageToleranceBps - Optional min-received tolerance override in basis points + */ + async buildUnstakeOrderTx(params) { + const timelockDestination = buildTimelockDestination(params.destination, params.unlockSlot); + const extraLabels = new Map([[UNSTAKE_METADATA_LABEL, buildUnstakeMetadatum(params.destination, params.unlockSlot)]]); + return this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + minReceived: params.minReceived, + slippageToleranceBps: params.slippageToleranceBps, + owner: params.owner, + data: params.data, + extraLabels + }); + } + + /** + * Build a treasury-managed unstake order that wraps the destination in a + * native timelock script controlled by the order owner. + * + * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps + * treasury multisig ownership on the released USDr while enforcing the same + * unlock slot used by the retail unstake helper. The owner must be convertible + * to a Cardano native script. + */ + async buildTreasuryUnstakeOrderTx(params) { + const nativeScript = buildMultisigTimelockNativeScript(params.owner, params.unlockSlot); + const timelockDestination = { + address: { + payment_credential: { + Script: [nativeScript.hash()] + }, + stake_credential: params.destination.address.stake_credential + }, + datum: "NoDatum" + }; + + // Attach the unstake metadata (label 55534472) exactly like the retail + // path (buildUnstakeOrderTx). track-chain requires this label to index the + // order; without it the confirmed unstake output is silently dropped + // (WTB-1466). Mirror retail precisely: the metadatum is built from the + // user-supplied destination (params.destination), not the derived timelock + // destination, and carries the same unlock_time. + const extraLabels = new Map([[UNSTAKE_METADATA_LABEL, buildUnstakeMetadatum(params.destination, params.unlockSlot)]]); + const tx = await this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + minReceived: params.minReceived, + slippageToleranceBps: params.slippageToleranceBps, + owner: params.owner, + data: params.data, + extraLabels + }); + return { + tx, + nativeScript + }; + } + + /** + * Compute the default `min_received` (output sUSDR floor) for a stake order + * by reading the current staking-vault exchange rate and applying a + * slippage tolerance buffer. + * + * Tolerance resolution: per-call > SDK-level (defaultSlippageToleranceBps) + * > built-in 50bps (0.5%). + * + * Yield accrual moves `vault_usdr` up over time, so shares-per-USDR shrinks + * between order placement and execution. The buffer protects the user from + * receiving fewer shares than they expected at sign time. + * + * Bootstrap edge case: when the vault is empty (no USDR locked or no sUSDR + * circulating), the rate is treated as 1:1 and the buffer is skipped. + */ + async computeStakeMinReceived(amount, perCallToleranceBps) { + const toleranceBps = this.resolveStakeSlippageToleranceBps(perCallToleranceBps); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const { + vaultUtxo, + parsedVaultDatum + } = await this.getVaultDatum(); + const vaultUsdr = this.settledVaultBacking(parsedVaultDatum, vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n); + const circulatingSusdr = parsedVaultDatum.circulating_susdr; + if (vaultUsdr === 0n || circulatingSusdr === 0n) { + return amount; + } + const expected = amount * circulatingSusdr / vaultUsdr; + return expected * (10000n - toleranceBps) / 10000n; + } + resolveStakeSlippageToleranceBps(perCallToleranceBps) { + const toleranceBps = perCallToleranceBps ?? this.defaultSlippageToleranceBps ?? 50n; + if (toleranceBps < 0n || toleranceBps > 10_000n) { + throw new Error("Slippage tolerance must be between 0 and 10000 bps"); + } + return toleranceBps; + } + + /** + * Compute the default `min_received` (output USDR floor) for an unstake + * order by reading the current staking-vault exchange rate. + * + * `forfeit` is subtracted from the gross expected USDR, then a slippage + * tolerance protects the order from quote/provider drift. Tolerance + * resolution is per-call > SDK-level > built-in 50bps (0.5%). + * + * Bootstrap edge case: when the vault is empty, the rate is treated as 1:1. + */ + async computeUnstakeMinReceived(amount, forfeit, perCallToleranceBps) { + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const { + vaultUtxo, + parsedVaultDatum + } = await this.getVaultDatum(); + const vaultUsdr = this.settledVaultBacking(parsedVaultDatum, vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n); + const circulatingSusdr = parsedVaultDatum.circulating_susdr; + const expectedGross = vaultUsdr === 0n || circulatingSusdr === 0n ? amount : amount * vaultUsdr / circulatingSusdr; + const expectedNet = expectedGross > forfeit ? expectedGross - forfeit : 0n; + const toleranceBps = this.resolveStakeSlippageToleranceBps(perCallToleranceBps); + return expectedNet * (10000n - toleranceBps) / 10000n; + } + + /** + * Build a direct mint order: mint USDr without reserve asset backing. + * Used for fiat wire scenarios where reserve arrives off-chain. + */ + async buildDirectMintOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Direct mint amount must be positive"); + } + // DirectMint orders only need min ADA - no reserve tokens + return this._buildOrderTx({ + action: { + ODirectMint: { + amount: params.amount + } + }, + valueToLock: makeValue(MIN_LOVELACE), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a direct burn order: burn USDr without reserve asset redemption. + * Used for fiat wire scenarios where reserve is sent off-chain. + */ + async buildDirectBurnOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Direct burn amount must be positive"); + } + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + // DirectBurn orders must lock the USDr being burned + return this._buildOrderTx({ + action: { + ODirectBurn: { + amount: params.amount + } + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + // ───────────────────────────────────────────────────────────────────────────── + // Signed Payload and Signing + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build the V1_0 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + * + * `alpha` is the batch's yield split, required by versions whose Deposit + * action carries one (v1_1_rc1+) and rejected everywhere else. It is a + * parameter of the batch, chosen once by whoever created it and read back from + * the backend by every co-signer: on-chain, all signatures of a batch are + * checked against ONE payload hash, so a signer that derived its own value + * would produce bytes nobody else can co-sign. + */ + async getSignedPayloadFromOrderInputs(orderInputs, alpha) { + if (orderInputs.length === 0) { + throw new Error("At least one order input is required"); + } + const sortedInputs = sortOrderInputs(orderInputs); + const nonce = buildNonceFromUtxo(sortedInputs[0]); + const resolvedUtxos = await this.blaze.provider.resolveUnspentOutputs(sortedInputs); + let actionType = null; + const exchangeRequests = []; + const treasuryRequests = []; + const stakeRequests = []; + const directRequests = []; + for (const utxo of resolvedUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(this.schemas.OrderDatumV1, datumData); + const origin = { + transaction_id: utxo.input().transactionId().toString(), + output_index: utxo.input().index() + }; + const parsed = this.classifyOrderAction(datum); + + // WTB-1764: the validators check each request inside one zip_fold via + // `expect validation(request)`, so a request that fails its predicate + // crashes the WHOLE execution transaction — every valid order batched + // alongside it dies too, with only an opaque "the validator crashed" + // to go on. Refuse to package it, and say which order it was. + const screened = await this.screenOrderForExecution(utxo, parsed); + if (!screened.ok) { + throw new Error(`Order ${origin.transaction_id}#${origin.output_index} cannot be executed: ` + `${screened.reason}. Every order batched with it would crash on-chain.`); + } + if (actionType === null) { + actionType = parsed.actionType; + } else if (actionType !== parsed.actionType) { + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + } + if (parsed.actionType === "mint" || parsed.actionType === "burn") { + exchangeRequests.push({ + destination: datum.destination, + amount: parsed.amount, + min_received: parsed.minReceived ?? 0n, + origin, + reserve_asset: parsed.reserveAsset + }); + } else if (parsed.actionType === "deposit" || parsed.actionType === "withdraw") { + treasuryRequests.push(this.buildTreasuryRequest(datum, parsed, origin)); + } else if (parsed.actionType === "stake" || parsed.actionType === "unstake") { + stakeRequests.push({ + destination: datum.destination, + amount: parsed.amount, + min_received: parsed.minReceived ?? 0n, + origin, + forfeit: parsed.forfeit ?? 0n + }); + } else { + directRequests.push({ + destination: datum.destination, + amount: parsed.amount, + origin + }); + } + } + + // Only a deposit splits yield. Silently dropping an alpha here would let a + // caller believe it had parameterised a batch that ignores the value. + if (alpha && actionType !== "deposit") { + throw new Error(`a ${actionType} batch takes no yield-split alpha (only a deposit splits yield)`); + } + if (actionType === "deposit") { + const batchVerdict = screenDepositBatch(treasuryRequests.map(request => ({ + actionType: "deposit", + amount: request.amount, + yield: request.yield + }))); + if (!batchVerdict.ok) { + throw new Error(`${batchVerdict.reason}. Every order batched with it would crash on-chain.`); + } + } + let action; + switch (actionType) { + case "mint": + action = { + Mint: { + requests: exchangeRequests + } + }; + break; + case "burn": + action = { + Burn: { + requests: exchangeRequests + } + }; + break; + case "withdraw": + action = { + Withdraw: { + requests: treasuryRequests + } + }; + break; + case "deposit": + action = await this.buildDepositAction(treasuryRequests, alpha); + break; + case "stake": + action = { + Stake: { + requests: stakeRequests + } + }; + break; + case "unstake": + action = { + Unstake: { + requests: stakeRequests + } + }; + break; + case "direct_mint": + action = { + DirectMint: { + requests: directRequests + } + }; + break; + case "direct_burn": + action = { + DirectBurn: { + requests: directRequests + } + }; + break; + default: + throw new Error("No orders to process"); + } + const payload = { + action, + nonce + }; + const serialized = Data.serialize(this.signing.SignedPayload_ProtocolRedeemerV1, payload); + const signedPayload = serialized.toCbor().toString(); + const payloadHash = blake2b_256(HexBlob(signedPayload)); + return { + signedPayload, + payloadHash + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Execute Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to execute orders. + * + * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake, + * direct_mint, direct_burn. + */ + async buildExecuteOrdersTx(params) { + const { + orderInputs, + signedPayload: signedPayloadCbor, + signatures, + fees + } = params; + + // Deserialize CBOR hex to object for internal use + const signedPayload = parse(this.signing.SignedPayload_ProtocolRedeemerV1, PlutusData.fromCbor(HexBlob(signedPayloadCbor))); + + // 1. Sort and resolve order UTxOs + const sortedOrderInputs = sortOrderInputs(orderInputs); + const orderUtxos = await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + + // 2. Parse orders and validate same type. The fees map (if any) stamps + // each IOrderInfo with the locked fee that buildXxxExecute will subtract. + const orderInfos = this.parseOrderInfos(orderUtxos, fees); + const actionType = orderInfos[0].actionType; + + // 3. Get protocol settings + const { + proxyUtxo, + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const settings = this.settingsConfig(parsedProxyDatum.settings); + + // 4. Determine what we need + const needsTreasury = ["mint", "burn", "withdraw", "deposit", "direct_mint", "direct_burn"].includes(actionType); + const needsVault = ["stake", "unstake", "deposit"].includes(actionType); + + // 5. Get script reference inputs + // V1.0 requires the orchestrator and the relevant sub-validator script + const isMintAction = ["mint", "burn", "direct_mint", "direct_burn"].includes(actionType); + const isStakeAction = ["stake", "unstake"].includes(actionType); + const scriptHashesNeeded = { + protocol: this.protocolScriptHash, + order: this.orderScriptHash + }; + if (isMintAction) { + scriptHashesNeeded.protocolMint = this.protocolMintScriptHash; + } else if (isStakeAction) { + scriptHashesNeeded.protocolStake = this.protocolStakeScriptHash; + } else { + scriptHashesNeeded.protocolManagement = this.protocolManagementScriptHash; + } + if (needsTreasury) { + scriptHashesNeeded.treasury = this.treasuryScriptHash; + } + if (needsVault) { + scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash; + } + const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded); + + // 6. Fetch treasury and vault if needed + let treasuryUtxo; + let parsedTreasuryDatum; + if (needsTreasury) { + const treasuryResult = await this.getTreasuryDatum(); + treasuryUtxo = treasuryResult.treasuryUtxo; + parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum; + } + let vaultUtxo; + let parsedVaultDatum; + if (needsVault) { + const vaultResult = await this.getVaultDatum(); + vaultUtxo = vaultResult.vaultUtxo; + parsedVaultDatum = vaultResult.parsedVaultDatum; + } + + // 7. Gather wallet UTxOs so we can include them in index calculations. + const walletUtxos = await this.blaze.wallet.getUnspentOutputs(); + const excludedInputIds = new Set(); + const utxoKey = inp => `${inp.transactionId().toString()}#${inp.index().toString()}`; + // Exclude script inputs (order, treasury, vault) + for (const orderInfo of orderInfos) { + excludedInputIds.add(utxoKey(orderInfo.utxo.input())); + } + if (treasuryUtxo) { + excludedInputIds.add(utxoKey(treasuryUtxo.input())); + } + if (vaultUtxo) { + excludedInputIds.add(utxoKey(vaultUtxo.input())); + } + // Exclude reference inputs (must be disjoint from regular inputs) + excludedInputIds.add(utxoKey(proxyUtxo.input())); + for (const refUtxo of Object.values(refInputs)) { + if (refUtxo) { + excludedInputIds.add(utxoKey(refUtxo.input())); + } + } + const feeUtxos = walletUtxos.filter(utxo => !excludedInputIds.has(utxoKey(utxo.input()))); + + // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex). + const allInputRefs = orderInfos.map(o => o.utxo.input()); + if (treasuryUtxo) { + allInputRefs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + allInputRefs.push(vaultUtxo.input()); + } + for (const feeUtxo of feeUtxos) { + allInputRefs.push(feeUtxo.input()); + } + const sortedAllInputRefs = [...allInputRefs].sort((a, b) => { + const txA = a.transactionId().toString(); + const txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + const findInputIdx = input => { + const idx = sortedAllInputRefs.findIndex(r => r.transactionId().toString() === input.transactionId().toString() && r.index() === input.index()); + return BigInt(idx); + }; + const treasuryInputIdx = treasuryUtxo ? findInputIdx(treasuryUtxo.input()) : 0n; + const vaultInputIdx = vaultUtxo ? findInputIdx(vaultUtxo.input()) : undefined; + + // 8a. Correlate order inputs to signed request indices via origin fields. + // When all orders are present this produces the same identity mapping as before. + // When a subset is passed (partial execution), it maps each input to the + // correct request index in the signed payload. + const signedRequests = getRequestsFromAction(signedPayload.action); + const originToRequestIdx = new Map(); + for (let i = 0; i < signedRequests.length; i++) { + const o = signedRequests[i].origin; + originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i); + } + const inputToRequests = []; + const requestToOutputs = []; + for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) { + const input = orderInfos[outputIdx].utxo.input(); + const key = `${input.transactionId()}#${input.index()}`; + const requestIdx = originToRequestIdx.get(key); + if (requestIdx === undefined) { + throw new Error(`Order input ${key} not found in signed payload`); + } + inputToRequests.push(BigInt(requestIdx)); + requestToOutputs.push(BigInt(outputIdx)); + } + + // 9. Build outputs and compute output indices + const numDestOutputs = orderInfos.length; + + // For deposit with positive yield, the yield pot output is inserted after destinations + let numExtraOutputs = 0; + if (actionType === "deposit") { + const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n); + if (totalYield > 0n) { + const vaultValue = vaultUtxo.output().amount(); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + // Use the signed split (rc1 echoes alpha; v1_0 recomputes) so pot-output + // existence/indexing agrees with buildDepositExecute and the validator. + const { + unstakedYieldShare + } = this.resolveDepositYieldShares(totalYield, vaultUSDr, treasuryCirculating, signedPayload.action); + if (unstakedYieldShare > 0n) { + numExtraOutputs = 1; + } + } + } + + // For unstake, add yield pot output if forfeit is non-zero. + if (actionType === "unstake") { + const totalForfeit = orderInfos.reduce((sum, o) => sum + (o.forfeit ?? 0n), 0n); + if (totalForfeit > 0n) { + numExtraOutputs = 1; + } + } + const treasuryOutputIdx = needsTreasury ? BigInt(numDestOutputs + numExtraOutputs) : 0n; + const vaultOutputIdx = needsVault ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0)) : undefined; + + // 10. Build ExtraProtocolRedeemer + const extra = { + request_to_outputs: requestToOutputs, + input_to_requests: inputToRequests, + treasury_input_idx: treasuryInputIdx, + treasury_output_idx: treasuryOutputIdx, + vault_input_idx: vaultInputIdx, + vault_output_idx: vaultOutputIdx + }; + + // 11. Build SignedRedeemer (versions may wrap it in a dispatch enum) + const serializedSignedRedeemer = this.serializeOrchestratorWithdrawalRedeemer({ + extra, + payload: signedPayload, + signatures + }); + const executeRedeemer = Data.serialize(this.schemas.OrderRedeemerV1, "Execute"); + + // 12. Build the transaction + const tx = this.newOrderTransaction(); + + // Add order inputs with Execute redeemer + for (const orderInfo of orderInfos) { + tx.addInput(orderInfo.utxo, executeRedeemer); + } + + // Add wallet fee inputs explicitly + for (const feeUtxo of feeUtxos) { + tx.addInput(feeUtxo); + } + + // Add reference inputs + tx.addReferenceInput(refInputs.protocol); + tx.addReferenceInput(refInputs.order); + tx.addReferenceInput(proxyUtxo); + // V1.0 sub-validator reference inputs + if (refInputs.protocolMint) { + tx.addReferenceInput(refInputs.protocolMint); + } + if (refInputs.protocolStake) { + tx.addReferenceInput(refInputs.protocolStake); + } + if (refInputs.protocolManagement) { + tx.addReferenceInput(refInputs.protocolManagement); + } + if (refInputs.treasury) { + tx.addReferenceInput(refInputs.treasury); + } + if (refInputs.stakingVault) { + tx.addReferenceInput(refInputs.stakingVault); + } + + // Add orchestrator withdrawal with signed redeemer + const orchestratorRewardAccount = Core.RewardAccount.fromCredential({ + type: Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash + }, this.network); + tx.addWithdrawal(orchestratorRewardAccount, 0n, serializedSignedRedeemer); + + // Determine which sub-validator to use based on action type + const subValidatorHash = actionType === "mint" || actionType === "burn" || actionType === "direct_mint" || actionType === "direct_burn" ? this.protocolMintScriptHash : actionType === "stake" || actionType === "unstake" ? this.protocolStakeScriptHash : this.protocolManagementScriptHash; // deposit, withdraw + + // Add sub-validator withdrawal with void redeemer + const subValidatorRewardAccount = Core.RewardAccount.fromCredential({ + type: Core.CredentialType.ScriptHash, + hash: subValidatorHash + }, this.network); + const voidRedeemer = Data.Void(); + tx.addWithdrawal(subValidatorRewardAccount, 0n, voidRedeemer); + + // Build per-action-type outputs, minting, and state updates + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const sUSDrAssetId = Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + switch (actionType) { + case "mint": + this.buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + break; + case "burn": + this.buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + break; + case "withdraw": + this.buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings); + break; + case "deposit": + this.buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings, signedPayload.action); + break; + case "stake": + this.buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum); + break; + case "unstake": + this.buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum, settings); + break; + case "direct_mint": + this.buildDirectMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum); + break; + case "direct_burn": + this.buildDirectBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum); + break; + } + + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + await this.applyExecutionValidityBounds(tx, { + actionType, + vaultUtxo, + parsedVaultDatum + }); + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Per-Action Execute Builders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + * + * The per-order fee (in USDr, locked at index time) is retained by the + * treasury: the user receives `amount − fee` USDr while `amount` is still + * minted, so the protocol pockets the difference via the treasury balance. + */ + buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + // The audited mint contract enforces `mint_amount == total_delivered` + // and `circulating_supply` increases by `total_delivered` (cf. + // utilities.ak::maintain_treasury_mint). So we mint and credit the + // treasury for what users actually receive — `amount − fee` per order — + // while the reserve consumed per request stays based on the full + // signed `amount` (the user paid in reserve for the whole `amount`, + // even though they receive less; the protocol keeps the spread in + // reserve worth — this is the locked fee). + const totalDelivered = orderInfos.reduce((sum, o) => sum + (o.amount - o.fee), 0n); + + // Destination outputs: send `amount − fee` USDr to each destination. + for (const orderInfo of orderInfos) { + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const reserveAssetId = Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + const reserveAmount = usdrToReserveCeil(orderInfo.amount, ra); + const userAmount = orderInfo.amount - orderInfo.fee; + addDestinationOutput(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [[reserveAssetId, reserveAmount]], [[stablecoinAssetId, userAmount]])); + } + + // Mint USDr — exactly what was delivered (contract invariant). + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalDelivered]]), Data.Void()); + + // Reserve deltas: based on the full signed amounts (unchanged by fees). + const reserveDeltas = computeReserveDeltas(orderInfos, settings); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalDelivered); + } + + /** + * Burn: USDr burned, reserve sent to destinations. + * + * The audited contract decreases circulating_supply by the FULL signed + * `amount` (the user burns the whole `amount` of USDr) and the reserve + * outflow per asset equals what the user actually receives. The locked + * fee (in reserve units) stays in the treasury — by paying out + * `usdr_to_reserve(amount, ra) − fee` instead of the full natural + * amount, the protocol pockets the difference. + */ + buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send `usdr_to_reserve(amount, ra) − fee` reserve + // to each destination. Track the actually-delivered amount per reserve + // asset so we can subtract the fee from the treasury reserve outflow. + const deliveredByAsset = new Map(); + for (const orderInfo of orderInfos) { + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const reserveAssetId = Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + const naturalReserve = usdrToReserve(-orderInfo.amount, ra); + const reserveAmount = naturalReserve - orderInfo.fee; + addDestinationOutput(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [[stablecoinAssetId, -orderInfo.amount]], [[reserveAssetId, reserveAmount]])); + const assetKey = orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]; + deliveredByAsset.set(assetKey, (deliveredByAsset.get(assetKey) ?? 0n) + reserveAmount); + } + + // Burn USDr — full signed amount per request (totalAmount is negative). + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Reserve deltas: out by what we actually delivered (negated). The + // protocol keeps the per-order fee inside the treasury balance. + const reserveDeltas = new Map(); + for (const [assetKey, delivered] of deliveredByAsset.entries()) { + reserveDeltas.set(assetKey, -delivered); + } + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalAmount); + } + + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings) { + // Destination outputs: send reserve tokens to each destination + for (const orderInfo of orderInfos) { + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const reserveAssetId = Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + const reserveAmount = usdrToReserve(orderInfo.amount, ra); + addDestinationOutput(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [], [[reserveAssetId, reserveAmount]])); + } + + // Update treasury: reserve decreases, no circulating_supply change + const reserveDeltas = computeReserveDeltas(orderInfos, settings, true); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, 0n); + } + + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings, action) { + const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n); + + // Calculate yield split. rc1 echoes the COSE-signed alpha; v1_0 recomputes + // from live state. Must NOT re-derive independently from vault/treasury — + // the validator checks the split against the signed action. + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + const { + stakedYieldShare, + unstakedYieldShare + } = this.resolveDepositYieldShares(totalYield, vaultUSDr, treasuryCirculating, action); + let remainingOrderUSDrToBurn = unstakedYieldShare < 0n ? -unstakedYieldShare : 0n; + + // Destination outputs: return any order surplus after protocol consumption. + for (const orderInfo of orderInfos) { + const reserveAssetId = Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const yieldValue = orderInfo.yield ?? 0n; + const usdrBacking = yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount; + const reserveAmount = usdrToReserve(usdrBacking, ra); + const consumedAssets = [[reserveAssetId, reserveAmount]]; + if (remainingOrderUSDrToBurn > 0n) { + const orderUSDr = orderInfo.utxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n; + const consumedUSDr = orderUSDr < remainingOrderUSDrToBurn ? orderUSDr : remainingOrderUSDrToBurn; + if (consumedUSDr > 0n) { + consumedAssets.push([stablecoinAssetId, consumedUSDr]); + remainingOrderUSDrToBurn -= consumedUSDr; + } + } + addDestinationOutput(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, consumedAssets)); + } + if (totalYield > 0n) { + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + if (unstakedYieldShare > 0n) { + // The yield pot is a script address in production (WTB-1172), so + // build the output directly with NoDatum. + addDestinationOutput(tx, this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum" + }, makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare])); + } + } else if (totalYield < 0n) { + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + } + + // Update treasury + const reserveDeltas = new Map(); + for (const orderInfo of orderInfos) { + const assetId = orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]; + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const yieldValue = orderInfo.yield ?? 0n; + const usdrBacking = yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount; + const reserveAmount = usdrToReserve(usdrBacking, ra); + reserveDeltas.set(assetId, (reserveDeltas.get(assetId) ?? 0n) + reserveAmount); + } + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalYield); + + // Update vault. Datum construction is delegated so versions with a + // yield-diffusion window (v1_1_rc1) can set it from the batch's requests; + // the v1_0 default just moves the vault USDr by the staked share. + this.updateDepositVaultOutput(tx, vaultUtxo, parsedVaultDatum, { + stakedYieldShare, + totalYield, + orderInfos + }); + } + + /** + * Version hook: lock the post-deposit vault output. v1_0 / v1_0_rc1 keep the + * one-field datum and simply add `stakedYieldShare` USDr to the vault. + * Versions with time-diffused yield override this to roll the staked share + * into the diffusion window (`validate_deposit_diffusion` in deposit.ak). + */ + updateDepositVaultOutput(tx, vaultUtxo, parsedVaultDatum, ctx) { + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, 0n, ctx.stakedYieldShare); + } + + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + * + * Stake is not fee-filtered (no protocol fee retained on stake), so the + * vault receives the full `amount` USDr and mints sUSDr at the natural + * rate. + */ + buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum) { + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + // Rate is quoted against settled backing (v1_0: full balance; v1_1_rc1: + // balance minus not-yet-diffused pending yield). + const settledBacking = this.settledVaultBacking(parsedVaultDatum, vaultUSDr); + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + let totalUSDrToVault = 0n; + let totalSUSDrMinted = 0n; + for (const orderInfo of orderInfos) { + const usDrToVault = orderInfo.amount; + totalUSDrToVault += usDrToVault; + let sUSDrAmount; + if (circulatingSUSDr === 0n || settledBacking === 0n) { + // Bootstrap rate is 1:1 (cf. stake.ak). + sUSDrAmount = usDrToVault; + } else { + sUSDrAmount = usDrToVault * circulatingSUSDr / settledBacking; + } + totalSUSDrMinted += sUSDrAmount; + addDestinationOutput(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [[stablecoinAssetId, usDrToVault]], [[sUSDrAssetId, sUSDrAmount]])); + } + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]), Data.Void()); + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, totalSUSDrMinted, totalUSDrToVault); + } + + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + * V1_0: Supports forfeit parameter - forfeited USDr goes to yield pot. + */ + buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum, settings) { + const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + // Entitlement is quoted against settled backing (v1_0: full balance; + // v1_1_rc1: balance minus not-yet-diffused pending yield). + const settledBacking = this.settledVaultBacking(parsedVaultDatum, vaultUSDr); + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + if (circulatingSUSDr === 0n) { + throw new Error("Cannot unstake: no sUSDr in circulation"); + } + + // The user receives `entitled − forfeit` USDr. Forfeit goes to the + // unstaked yield pot; the vault decreases by the full natural entitlement + // for each order. (Unstake is not fee-filtered.) + let totalUSDrLeavingVault = 0n; + let totalForfeit = 0n; + for (const orderInfo of orderInfos) { + const uSDrEntitled = orderInfo.amount * settledBacking / circulatingSUSDr; + const forfeit = orderInfo.forfeit ?? 0n; + const uSDrAmount = uSDrEntitled - forfeit; + totalUSDrLeavingVault += uSDrEntitled; + totalForfeit += forfeit; + addDestinationOutput(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [[sUSDrAssetId, orderInfo.amount]], [[stablecoinAssetId, uSDrAmount]])); + } + + // Send forfeited USDr to yield pot if any + const totalYieldPot = totalForfeit; + if (totalYieldPot > 0n) { + // Script pot in production (WTB-1172) — see buildDepositExecute. + addDestinationOutput(tx, this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum" + }, makeValue(MIN_LOVELACE, [stablecoinAssetId, totalYieldPot])); + } + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]), Data.Void()); + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, -totalSUSDrBurned, -totalUSDrLeavingVault); + } + + /** + * DirectMint: Mint USDr without reserve asset flow. + * USDr is minted to destinations, treasury circulating_supply increases. + * NO reserve asset changes. + */ + buildDirectMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum) { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send USDr to each destination + for (const orderInfo of orderInfos) { + addDestinationOutput(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [], [[stablecoinAssetId, orderInfo.amount]])); + } + + // Mint USDr + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Update treasury: circulating_supply increases, NO reserve changes + this.updateTreasuryOutputNoReserve(tx, treasuryUtxo, parsedTreasuryDatum, totalAmount); + } + + /** + * DirectBurn: Burn USDr without reserve asset flow. + * USDr is burned, treasury circulating_supply decreases. + * NO reserve asset changes, NO destination outputs (fiat sent off-chain). + */ + buildDirectBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum) { + // totalAmount is negative for burns (from classifyOrderAction) + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Fiat is sent off-chain. On-chain, return the order value minus the + // burned USDr to the destination. + for (const orderInfo of orderInfos) { + addDestinationOutput(tx, this.network, orderInfo.datum.destination, buildOrderDestinationValue(orderInfo, [[stablecoinAssetId, -orderInfo.amount]])); + } + + // Burn USDr (totalAmount is negative) + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Update treasury: circulating_supply decreases, NO reserve changes + this.updateTreasuryOutputNoReserve(tx, treasuryUtxo, parsedTreasuryDatum, totalAmount); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Cancel Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to cancel orders. + */ + async buildCancelOrdersTx(params) { + const { + orderInputs, + destination, + availableSigners, + versionHint + } = params; + const orderUtxos = await this.blaze.provider.resolveUnspentOutputs(orderInputs); + if (orderUtxos.length === 0) { + throw new Error("No orders to cancel"); + } + const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput ? new Map([[this.orderScriptHash, this.cachedReferenceInputs.orderRefInput]]) : undefined; + const orderRefInputs = await resolveOrderReferenceInputs(this.blaze, orderUtxos, cachedOrderRefs, this.scriptDeploymentAddress); + const cancelRedeemer = Data.serialize(this.schemas.OrderRedeemerV1, "Cancel"); + const destAddress = destination ?? (await this.blaze.wallet.getChangeAddress()); + const tx = this.newOrderTransaction(); + for (const orderRefInput of orderRefInputs.values()) { + tx.addReferenceInput(orderRefInput); + } + + // cache current version of order script reference input + const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash); + if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = currentOrderRefInput; + } + const requiredSigners = new Set(); + for (const utxo of orderUtxos) { + const owner = await parseCancelOwner(utxo, versionHint); + for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) { + requiredSigners.add(keyHash); + } + tx.addInput(utxo, cancelRedeemer); + const outputValue = utxo.output().amount(); + addDirectOutput(tx, destAddress, outputValue); + } + const effectiveSigners = availableSigners ? new Set([...requiredSigners].filter(k => availableSigners.has(k))) : requiredSigners; + for (const keyHash of effectiveSigners) { + tx.addRequiredSigner(Ed25519KeyHashHex(keyHash)); + } + return tx; + } + + /** + * Build a transaction to recover funds from invalidated orders. + * Only works when the protocol has been upgraded and the order validator + * no longer matches the current protocol logic. + * + * IMPORTANT: Only works for orders with simple Signature owners. + * + * Output-at-same-index constraint: Each output must be at the same + * transaction index as its corresponding input. + */ + async buildInvalidatedOrdersTx(params) { + const { + orderInputs + } = params; + const orderUtxos = await this.blaze.provider.resolveUnspentOutputs(orderInputs); + if (orderUtxos.length === 0) { + throw new Error("No orders to invalidate"); + } + + // Resolve references from the validators that actually hold the supplied + // orders. A current SDK instance may be recovering same-schema orders left + // at a superseded validator, so its own orderScriptHash is not necessarily + // the script needed to spend these inputs. + const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput ? new Map([[this.orderScriptHash, this.cachedReferenceInputs.orderRefInput]]) : undefined; + const orderRefInputs = await resolveOrderReferenceInputs(this.blaze, orderUtxos, cachedOrderRefs, this.scriptDeploymentAddress); + + // The proxy UTxO is always required as a reference input. If the live + // proxy datum no longer matches this SDK's schema, skip the client-side + // upgrade check and rely on the validator's on-chain check instead. + const { + proxyUtxo, + proxyDatum + } = await this.getRawProxyDatum(); + try { + const parsedProxyDatum = parse(this.schemas.ProxyDatumV1, proxyDatum); + const registry = this.settingsRegistry(parsedProxyDatum.settings); + const isProtocolUpgraded = parsedProxyDatum.logic !== this.protocolScriptHash; + const hasActiveOrder = [...orderRefInputs.keys()].some(orderScriptHash => orderScriptHash === registry.order); + if (hasActiveOrder && !isProtocolUpgraded) { + throw new Error("Cannot use Invalidated redeemer: protocol has not been upgraded"); + } + } catch (err) { + if (err instanceof Error && err.message === "Cannot use Invalidated redeemer: protocol has not been upgraded") { + throw err; + } + } + const invalidatedRedeemer = Data.serialize(this.schemas.OrderRedeemerV1, "Invalidated"); + + // The order validator's Invalidated branch enforces + // `outputs[index_of(self_input)] == owner_address`. The input index + // is computed against the *full* canonical input sort, including any + // wallet fee inputs. To make the alignment deterministic, pre-select + // a single wallet UTxO to act as the fee input, build the canonical + // sort across [orders + fee UTxO] up front, and lay outputs at + // matching positions: owner payouts at order indices, a wallet + // filler at the fee UTxO's index. Modeled on buildExecuteOrdersTx. + const walletUtxos = await this.blaze.wallet.getUnspentOutputs(); + const walletAddress = await this.blaze.wallet.getChangeAddress(); + const utxoKey = inp => `${inp.transactionId().toString()}#${inp.index().toString()}`; + const excludedInputIds = new Set([utxoKey(proxyUtxo.input()), ...[...orderRefInputs.values()].map(refInput => utxoKey(refInput.input())), ...orderUtxos.map(u => utxoKey(u.input()))]); + // 5 ADA buffer comfortably covers tx fees for any realistic invalidate + // batch (1-20 inputs) plus min-UTxO for the change output Blaze appends. + // Prefer an ADA-only input, but safely support a token-bearing one when + // its explicit filler output still satisfies the ledger's min-ADA rule. + const FEE_BUFFER = 5_000_000n; + const feeCandidates = walletUtxos.filter(u => !excludedInputIds.has(utxoKey(u.input()))).sort((a, b) => { + const aHasAssets = (a.output().amount().multiasset()?.size ?? 0) > 0; + const bHasAssets = (b.output().amount().multiasset()?.size ?? 0) > 0; + return Number(aHasAssets) - Number(bHasAssets); + }); + const feeUtxo = feeCandidates.find(u => { + const inputValue = u.output().amount(); + if (inputValue.coin() < FEE_BUFFER) return false; + const fillerValue = new Core.Value(inputValue.coin() - FEE_BUFFER, inputValue.multiasset()); + const fillerOutput = new Core.TransactionOutput(walletAddress, fillerValue); + return fillerValue.coin() >= calculateMinAda(fillerOutput, this.blaze.params.coinsPerUtxoByte); + }); + if (!feeUtxo) { + throw new Error("buildInvalidatedOrdersTx: no wallet UTxO can cover fees while retaining its minimum ADA"); + } + const items = orderUtxos.map(utxo => { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(this.schemas.OrderDatumV1, datumData); + if (!("Signature" in datum.owner)) { + throw new Error("Invalidated redeemer only supports simple Signature owners"); + } + return { + kind: "order", + utxo, + ownerKeyHash: datum.owner.Signature.key_hash + }; + }); + items.push({ + kind: "fee", + utxo: feeUtxo + }); + items.sort((a, b) => { + const txA = a.utxo.input().transactionId().toString(); + const txB = b.utxo.input().transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.utxo.input().index()) - Number(b.utxo.input().index()); + }); + const tx = this.newOrderTransaction(); + for (const orderRefInput of orderRefInputs.values()) { + tx.addReferenceInput(orderRefInput); + } + tx.addReferenceInput(proxyUtxo); + for (const item of items) { + if (item.kind === "order") { + const ownerCredential = Core.Credential.fromCore({ + type: Core.CredentialType.KeyHash, + hash: Core.Hash28ByteBase16(item.ownerKeyHash) + }); + const ownerAddress = addressFromCredentials(this.network, ownerCredential); + tx.addInput(item.utxo, invalidatedRedeemer); + // Owner gets back the order's full value at the matching output + // index. Per-input check `output_ada >= input_ada - tx.fee` holds + // trivially because output == input here; the tx fee is absorbed + // by the filler+change pair coming out of the wallet fee input. + addDirectOutput(tx, ownerAddress, item.utxo.output().amount()); + } else { + tx.addInput(item.utxo); + // Wallet filler at the fee UTxO's canonical index. Sends value + // back to the wallet minus FEE_BUFFER, which Blaze then splits + // into the tx fee and an automatic change output (appended after + // all explicit outputs, beyond any script-input index — so no + // validator ever reads it). + const inputValue = item.utxo.output().amount(); + const fillerValue = new Core.Value(inputValue.coin() - FEE_BUFFER, inputValue.multiasset()); + addDirectOutput(tx, walletAddress, fillerValue); + } + } + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Protected Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Parse order UTxOs into IOrderInfo objects and validate they are all the + * same type. The optional `fees` map (keyed by `${txHash}#${outputIndex}`) + * stamps each order with its locked fee in the action's output unit. + * Missing entries default to 0 (no fee retained). + */ + parseOrderInfos(orderUtxos, fees) { + const orderInfos = []; + let expectedActionType = null; + for (const utxo of orderUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(this.schemas.OrderDatumV1, datumData); + const classified = this.classifyOrderAction(datum); + if (expectedActionType === null) { + expectedActionType = classified.actionType; + } else if (expectedActionType !== classified.actionType) { + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + } + const input = utxo.input(); + const key = `${input.transactionId().toString()}#${input.index().toString()}`; + const fee = fees?.get(key) ?? 0n; + orderInfos.push({ + utxo, + datum, + actionType: classified.actionType, + amount: classified.amount, + yield: classified.yield, + forfeit: classified.forfeit, + minReceived: classified.minReceived, + reserveAsset: classified.reserveAsset, + fee + }); + } + if (orderInfos.length === 0) { + throw new Error("No orders to execute"); + } + return orderInfos; + } + + /** + * Full executability screen for one open order (WTB-1764): the datum + * predicates plus the two value-dependent aborts (input funding, unsatisfiable + * `min_received`). Every consumer that decides whether an order may join a + * batch should call this rather than `screenOrderAction` alone — the datum-only + * screen cannot see an underfunded UTxO, which is the cheapest batch-killer. + * + * Reads settings for the reserve multiplier on mint/burn. `getParsedProxyDatum` + * memoises, so the per-order cost after the first call is local arithmetic — + * safe for the approvals cron's whole-address sweep. + */ + async screenOrderForExecution(utxo, action) { + const datumVerdict = screenOrderAction(action); + if (!datumVerdict.ok) { + return datumVerdict; + } + const settings = await this.getValidatedScreeningSettings(); + return screenOrderUtxoFacts(action, await this.deriveOrderUtxoFacts(utxo, action, settings)); + } + + /** + * Derive the value-dependent facts {@link screenOrderUtxoFacts} needs. Mirrors + * the per-action consumed asset and ceiling the validators use; see that + * function's doc comment for the `.ak` line references. + */ + async deriveOrderUtxoFacts(utxo, action, settings) { + const multiasset = utxo.output().amount().multiasset(); + const quantityOf = assetId => multiasset?.get(assetId) ?? 0n; + // These are deployment settings, not datum fields. Let invalid trusted + // configuration and provider failures propagate to the caller instead of + // hiding an operational outage as a poisoned order. + const usdrAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + + // Only deterministic datum-derived errors are a rejection: an unknown + // reserve asset or an invalid asset id carried by the order datum. + try { + return this.deriveOrderUtxoFactsUnsafe(action, settings, quantityOf, usdrAssetId); + } catch (error) { + return { + consumedRequired: 0n, + consumedLocked: 0n, + unresolvable: error instanceof Error ? error.message : String(error) + }; + } + } + deriveOrderUtxoFactsUnsafe(action, settings, quantityOf, usdrAssetId) { + switch (action.actionType) { + case "stake": + return { + consumedRequired: action.amount, + consumedLocked: quantityOf(usdrAssetId) + }; + case "unstake": + return { + consumedRequired: action.amount, + consumedLocked: quantityOf(Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex)) + }; + case "mint": + { + if (!action.reserveAsset) { + return { + consumedRequired: 0n, + consumedLocked: 0n + }; + } + const ra = findReserveAsset(settings, action.reserveAsset); + return { + consumedRequired: usdrToReserveCeil(action.amount, ra), + consumedLocked: quantityOf(Core.AssetId(action.reserveAsset[0] + action.reserveAsset[1])), + // mint.ak:140 passes request.amount as max_delivered. + maxDelivered: action.amount + }; + } + case "burn": + { + // classifyOrderAction negates ORedeem.amount; the validator compares the + // raw datum amount against the locked USDr. + const rawAmount = -action.amount; + if (!action.reserveAsset) { + return { + consumedRequired: rawAmount, + consumedLocked: quantityOf(usdrAssetId) + }; + } + const ra = findReserveAsset(settings, action.reserveAsset); + return { + consumedRequired: rawAmount, + consumedLocked: quantityOf(usdrAssetId), + // burn.ak:136 passes usdr_to_reserve(|amount|, ra) as max_delivered. + maxDelivered: usdrToReserve(rawAmount, ra) + }; + } + case "direct_burn": + // direct_burn DOES have a per-order funding predicate + // (`v1_0/direct_burn.ak:50`), unlike direct_mint. Same sign flip as burn. + // Unreachable from the approvals cron, which routes direct actions + // out-of-scope, but getSignedPayloadFromOrderInputs builds direct-burn + // batches for the treasury-admin flow. + return { + consumedRequired: -action.amount, + consumedLocked: quantityOf(usdrAssetId) + }; + case "deposit": + { + if (!action.reserveAsset) { + return { + consumedRequired: 0n, + consumedLocked: 0n + }; + } + const ra = findReserveAsset(settings, action.reserveAsset); + const usdrBacking = (action.yield ?? 0n) >= 0n ? action.amount + (action.yield ?? 0n) : action.amount; + return { + consumedRequired: usdrToReserve(usdrBacking, ra), + consumedLocked: quantityOf(Core.AssetId(action.reserveAsset[0] + action.reserveAsset[1])) + }; + } + case "withdraw": + if (action.reserveAsset) { + // Withdrawal consumes treasury funds, but the order's asset must be + // registered or buildWithdrawExecute will fail after signing. + findReserveAsset(settings, action.reserveAsset); + } + return { + consumedRequired: 0n, + consumedLocked: 0n + }; + default: + // direct_mint has no per-order funding predicate. + return { + consumedRequired: 0n, + consumedLocked: 0n + }; + } + } + async getValidatedScreeningSettings() { + const settings = this.settingsConfig(await this.getVersionSettings()); + for (const reserveAsset of settings.reserve_assets) { + if (reserveAsset.numerator === 0n) { + throw new Error("Reserve asset numerator must be non-zero"); + } + if (reserveAsset.denominator === 0n) { + throw new Error("Reserve asset denominator must be non-zero"); + } + Core.AssetId(reserveAsset.asset[0] + reserveAsset.asset[1]); + } + return settings; + } + + /** + * Classify an order action from its datum. + */ + classifyOrderAction(datum) { + const action = datum.action; + if ("OMint" in action) { + return { + actionType: "mint", + amount: action.OMint.amount, + minReceived: action.OMint.min_received, + reserveAsset: action.OMint.reserve_asset, + isTreasuryAction: true + }; + } else if ("ORedeem" in action) { + return { + actionType: "burn", + amount: -action.ORedeem.amount, + minReceived: action.ORedeem.min_received, + reserveAsset: action.ORedeem.reserve_asset, + isTreasuryAction: true + }; + } else if ("ODeposit" in action) { + return { + actionType: "deposit", + amount: action.ODeposit.principal, + yield: action.ODeposit.yield, + reserveAsset: action.ODeposit.reserve_asset, + isTreasuryAction: true + }; + } else if ("OWithdraw" in action) { + return { + actionType: "withdraw", + amount: action.OWithdraw.amount, + reserveAsset: action.OWithdraw.reserve_asset, + isTreasuryAction: true + }; + } else if ("OStake" in action) { + return { + actionType: "stake", + amount: action.OStake.amount, + minReceived: action.OStake.min_received, + isTreasuryAction: false + }; + } else if ("OUnstake" in action) { + return { + actionType: "unstake", + amount: action.OUnstake.amount, + forfeit: action.OUnstake.forfeit, + minReceived: action.OUnstake.min_received, + isTreasuryAction: false + }; + } else if ("ODirectMint" in action) { + return { + actionType: "direct_mint", + amount: action.ODirectMint.amount, + isTreasuryAction: true + }; + } else if ("ODirectBurn" in action) { + return { + actionType: "direct_burn", + amount: -action.ODirectBurn.amount, + isTreasuryAction: true + }; + } + throw new Error("Unknown order action type"); + } + + /** + * Build the signed-payload treasury request for a deposit/withdraw order. + * + * v1_0 / v1_0_rc1 emit the four-field request. Versions whose on-chain + * `TreasuryRequestV1` carries extra fields (v1_1_rc1's `diffusion_end`, which + * the validator requires the signed request to echo from the order datum) + * override this to add them; the return stays assignable to the v1_0 shape, + * and the extra fields are encoded by the version's own payload schema value. + */ + buildTreasuryRequest(datum, parsed, origin) { + return { + destination: datum.destination, + amount: parsed.amount, + yield: parsed.yield ?? 0n, + origin, + reserve_asset: parsed.reserveAsset + }; + } + + /** + * Update treasury output with new reserve and circulating supply. + */ + updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, circulatingSupplyDelta) { + const newTreasuryDatum = { + circulating_supply: parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta + }; + const serializedTreasuryDatum = Data.serialize(V0_1TreasuryDatum, newTreasuryDatum); + tx.addInput(treasuryUtxo, Data.Void()); + const treasuryValue = treasuryUtxo.output().amount(); + let newTreasuryValue = makeValue(treasuryValue.coin(), [this.treasuryNFTAssetId, 1n]); + const modifiedAssetIds = new Set([this.treasuryNFTAssetId.toString()]); + for (const [reserveAssetId, delta] of reserveDeltas.entries()) { + const currentReserve = treasuryValue.multiasset()?.get(Core.AssetId(reserveAssetId)) ?? 0n; + const newReserve = currentReserve + delta; + newTreasuryValue = Value.merge(newTreasuryValue, makeValue(0n, [Core.AssetId(reserveAssetId), newReserve])); + modifiedAssetIds.add(reserveAssetId); + } + const existingMultiasset = treasuryValue.multiasset(); + if (existingMultiasset) { + for (const [assetId, amount] of existingMultiasset.entries()) { + if (!modifiedAssetIds.has(assetId)) { + newTreasuryValue = Value.merge(newTreasuryValue, makeValue(0n, [Core.AssetId(assetId), amount])); + } + } + } + tx.lockAssets(this.treasuryAddress, newTreasuryValue, serializedTreasuryDatum); + } + + /** + * Update treasury output without reserve changes (for DirectMint/DirectBurn). + */ + updateTreasuryOutputNoReserve(tx, treasuryUtxo, parsedTreasuryDatum, circulatingSupplyDelta) { + const newTreasuryDatum = { + circulating_supply: parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta + }; + const serializedTreasuryDatum = Data.serialize(V0_1TreasuryDatum, newTreasuryDatum); + tx.addInput(treasuryUtxo, Data.Void()); + + // Preserve exact treasury value (no reserve changes) + const treasuryValue = treasuryUtxo.output().amount(); + tx.lockAssets(this.treasuryAddress, treasuryValue, serializedTreasuryDatum); + } + + /** + * Update vault output with new circulating_susdr and USDr balance. + * + * The datum construction is delegated to the version's + * `buildUpdatedVaultDatum` seam; the value rebuild below is + * datum-shape-agnostic and shared by all versions. + */ + updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, sUSDrDelta, uSDrDelta = 0n) { + this.updateVaultOutputWithDatum(tx, vaultUtxo, this.buildUpdatedVaultDatum(parsedVaultDatum, sUSDrDelta), uSDrDelta); + } + + /** + * Lock the vault output with an already-constructed datum, rebuilding its + * USDr balance by `uSDrDelta`. The value rebuild is datum-shape-agnostic; + * versions whose datum update needs more than `sUSDrDelta` (v1_1_rc1's + * deposit diffusion window) build the datum themselves and call this. + */ + updateVaultOutputWithDatum(tx, vaultUtxo, newVaultDatum, uSDrDelta = 0n) { + const serializedVaultDatum = Data.serialize(this.schemas.VaultDatumV1, newVaultDatum); + tx.addInput(vaultUtxo, Data.Void()); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + let newVaultValue = vaultUtxo.output().amount(); + if (uSDrDelta !== 0n) { + const currentUSDr = newVaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const newUSDr = currentUSDr + uSDrDelta; + newVaultValue = makeValue(newVaultValue.coin(), [this.stakingVaultNFTAssetId, 1n]); + if (newUSDr > 0n) { + newVaultValue = Value.merge(newVaultValue, makeValue(0n, [stablecoinAssetId, newUSDr])); + } + const existingMultiasset = vaultUtxo.output().amount().multiasset(); + if (existingMultiasset) { + for (const [assetId, amount] of existingMultiasset.entries()) { + if (assetId !== this.stakingVaultNFTAssetId.toString() && assetId !== stablecoinAssetId.toString()) { + newVaultValue = Value.merge(newVaultValue, makeValue(0n, [Core.AssetId(assetId), amount])); + } + } + } + } + tx.lockAssets(this.stakingVaultAddress, newVaultValue, serializedVaultDatum); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Reserve Asset Conversion Utilities + // ───────────────────────────────────────────────────────────────────────────── + + async getVersionSettings() { + const { + parsedProxyDatum + } = await this.getParsedProxyDatum(); + return parsedProxyDatum.settings; + } +} +_defineProperty(RealfiSDKV1Family, "buildTimelockNativeScript", buildTimelockNativeScript); +_defineProperty(RealfiSDKV1Family, "buildTimelockAddress", buildTimelockAddress); +_defineProperty(RealfiSDKV1Family, "buildMultisigTimelockNativeScript", buildMultisigTimelockNativeScript); +//# sourceMappingURL=family.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1/family.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v1/family.js.map new file mode 100644 index 0000000000..70a397111a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1/family.js.map @@ -0,0 +1 @@ +{"version":3,"file":"family.js","names":["addressFromCredentials","addressFromValidator","blake2b_256","Ed25519KeyHashHex","HexBlob","PlutusData","toHex","Data","parse","calculateMinAda","Core","makeValue","Value","TreasuryDatum","V0_1TreasuryDatum","addDirectOutput","addDestinationOutput","buildNonceFromUtxo","buildMultisigTimelockNativeScript","buildTimelockAddress","buildTimelockDestination","buildTimelockNativeScript","buildUnstakeMetadatum","UNSTAKE_METADATA_LABEL","credentialFromScript","deployScript","findReserveAsset","getDatumFromNFT","getSignatureKeyHashesFromMultisigScript","usdrToReserve","usdrToReserveCeil","computeReserveDeltas","lockOrPayAssets","sortOrderInputs","RealfiSDKBase","resolveOrderReferenceInputs","parseCancelOwner","screenOrderAction","screenDepositBatch","screenOrderUtxoFacts","DIRECT_ACTION_PADDING_ASSET","repeat","TextEncoder","encode","DEPLOYED_VALIDATOR_FIELDS","DEPLOYED_VALIDATOR_PREFIXES","V1_0","V1_0_Rc1","V1_1_Rc1","COMPATIBLE_STATE_VALIDATOR_FIELDS","Set","DEPLOYED_ADDRESS_FIELDS","orderScriptHash","treasuryScriptHash","stakingVaultScriptHash","MIN_LOVELACE","getRequestsFromAction","action","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","DirectMint","DirectBurn","Error","calculateYieldShares","totalYield","vaultUSDr","treasuryCirculating","stakedYieldShare","unstakedYieldShare","assertPositiveMinReceived","label","minReceived","buildOrderDestinationValue","orderInfo","consumedAssets","deliveredAssets","value","utxo","output","amount","assetId","merge","RealfiSDKV1Family","constructor","blaze","params","schemas","scripts","cachedReferenceInputs","signingSchemas","version","proxyBootstrap","assetNameHex","enableTrace","scriptDeploymentAddress","clientSource","_defineProperty","sUSDrAssetNameHex","defaultSlippageToleranceBps","oneShotScript","protocolOrchestratorScript","protocolScript","protocolMintScript","protocolStakeScript","protocolManagementScript","mintProxyScript","treasuryScript","orderScript","stakingVaultScript","oneShotPolicyId","PolicyId","hash","protocolScriptHash","protocolMintScriptHash","protocolStakeScriptHash","protocolManagementScriptHash","stablecoinPolicyId","treasuryAddress","network","orderScriptAddress","stakingVaultAddress","applyDeployedValidators","deployedValidators","treasuryAssetName","AssetName","Buffer","from","treasuryNFTAssetId","AssetId","toString","vaultAssetName","stakingVaultNFTAssetId","deployed","prefix","mutable","suffix","field","versionedHash","activeStateHash","has","undefined","deployedHash","Hash28ByteBase16","toLowerCase","addressField","Credential","fromCore","type","CredentialType","ScriptHash","signing","settledVaultBacking","_parsedVaultDatum","applyExecutionValidityBounds","_tx","_context","buildDepositAction","alpha","resolveDepositYieldShares","_action","serializeOrchestratorWithdrawalRedeemer","redeemer","serialize","SignedRedeemer_ExtraProtocolRedeemerV1","mintTreasuryNFT","treasuryBootstrapUtxo","initialDatum","circulating_supply","treasuryPolicyId","datum","tx","newTransaction","addInput","addMint","Map","Void","lockAssets","provideScript","nftAssetId","deployTreasury","deployOrderContract","getTreasuryDatum","treasuryUtxo","treasuryDatum","parsedDatum","parsedTreasuryDatum","mintStakingVaultNFT","stakingVaultBootstrapUtxo","vaultPolicyId","VaultDatumV1","buildInitialVaultDatum","deployStakingVault","deployProtocolMint","deployProtocolStake","deployProtocolManagement","registerProtocolMintStake","stakeCredential","addRegisterStake","registerProtocolStakeStake","registerProtocolManagementStake","registerStakingVaultStake","registerAllStakes","deployScriptsBatched","budgetBytes","batches","current","currentBytes","script","size","toCbor","length","push","map","batch","getSusdrAssetId","getVaultDatum","vaultUtxo","vaultDatum","parsedVaultDatum","mintOneShot","receiverAddress","resolveBootstrapUtxo","serializedDatum","ProxyDatumV1","logic","settings","baseTx","policyId","updateOneShotDatum","newDatum","oneshotUtxo","provider","getUnspentOutputByNFT","getParsedProxyDatum","cachedProxyDatumResult","proxyUtxo","proxyDatum","getRawProxyDatum","parsedProxyDatum","result","isProtocolUpgraded","registry","settingsRegistry","orderUpgraded","order","protocolUpgraded","getSettingsConfig","settingsConfig","getVersionSettings","batchNeedsAlpha","orderInputs","resolveUnspentOutputs","classifyOrderUtxo","actionType","splitsYield","datumData","asInlineData","OrderDatumV1","classifyOrderAction","parseOrders","orderUtxos","fees","parseOrderInfos","_buildOrderTx","owner","resolveOrderOwner","serializeOrderDatum","destination","data","newOrderTransaction","extraLabels","valueToLock","Signature","key_hash","wallet","getChangeAddress","getProps","paymentPart","orderDatum","buildMintOrderTx","orderLovelace","reserveAssetId","reserveAsset","ra","reserveAmount","OMint","min_received","reserve_asset","buildRedeemOrderTx","stablecoinAssetId","ORedeem","buildDepositOrderTx","principal","yield","totalUSDrBacking","principalReserve","vaultValue","multiasset","get","ODeposit","buildWithdrawOrderTx","OWithdraw","buildStakeOrderTx","computeStakeMinReceived","slippageToleranceBps","OStake","buildStakeContinuation","swap","expectedSundaeAssetId","metadata","address","_buildUnstakeOrderTx","forfeit","sUSDrAssetId","computeUnstakeMinReceived","OUnstake","buildUnstakeOrderTx","timelockDestination","unlockSlot","buildTreasuryUnstakeOrderTx","nativeScript","payment_credential","Script","stake_credential","perCallToleranceBps","toleranceBps","resolveStakeSlippageToleranceBps","vaultUsdr","circulatingSusdr","circulating_susdr","expected","expectedGross","expectedNet","buildDirectMintOrderTx","ODirectMint","buildDirectBurnOrderTx","ODirectBurn","getSignedPayloadFromOrderInputs","sortedInputs","nonce","resolvedUtxos","exchangeRequests","treasuryRequests","stakeRequests","directRequests","origin","transaction_id","input","transactionId","output_index","index","parsed","screened","screenOrderForExecution","ok","reason","buildTreasuryRequest","batchVerdict","request","payload","serialized","SignedPayload_ProtocolRedeemerV1","signedPayload","payloadHash","buildExecuteOrdersTx","signedPayloadCbor","signatures","fromCbor","sortedOrderInputs","orderInfos","needsTreasury","includes","needsVault","isMintAction","isStakeAction","scriptHashesNeeded","protocol","protocolMint","protocolStake","protocolManagement","treasury","stakingVault","refInputs","getScriptReferenceInputs","treasuryResult","vaultResult","walletUtxos","getUnspentOutputs","excludedInputIds","utxoKey","inp","add","refUtxo","Object","values","feeUtxos","filter","allInputRefs","o","feeUtxo","sortedAllInputRefs","sort","a","b","txA","txB","Number","findInputIdx","idx","findIndex","r","BigInt","treasuryInputIdx","vaultInputIdx","signedRequests","originToRequestIdx","i","set","inputToRequests","requestToOutputs","outputIdx","key","requestIdx","numDestOutputs","numExtraOutputs","reduce","sum","totalForfeit","treasuryOutputIdx","vaultOutputIdx","extra","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","serializedSignedRedeemer","executeRedeemer","OrderRedeemerV1","addReferenceInput","orchestratorRewardAccount","RewardAccount","fromCredential","addWithdrawal","subValidatorHash","subValidatorRewardAccount","voidRedeemer","buildMintExecute","buildBurnExecute","buildWithdrawExecute","buildDepositExecute","buildStakeExecute","buildUnstakeExecute","buildDirectMintExecute","buildDirectBurnExecute","totalDelivered","fee","userAmount","reserveDeltas","updateTreasuryOutput","totalAmount","deliveredByAsset","naturalReserve","assetKey","delivered","entries","remainingOrderUSDrToBurn","yieldValue","usdrBacking","orderUSDr","consumedUSDr","unstaked_yield_pot","updateDepositVaultOutput","ctx","updateVaultOutput","settledBacking","circulatingSUSDr","totalUSDrToVault","totalSUSDrMinted","usDrToVault","sUSDrAmount","totalSUSDrBurned","totalUSDrLeavingVault","uSDrEntitled","uSDrAmount","totalYieldPot","updateTreasuryOutputNoReserve","buildCancelOrdersTx","availableSigners","versionHint","cachedOrderRefs","orderRefInput","orderRefInputs","cancelRedeemer","destAddress","currentOrderRefInput","requiredSigners","keyHash","outputValue","effectiveSigners","k","addRequiredSigner","buildInvalidatedOrdersTx","hasActiveOrder","keys","some","err","message","invalidatedRedeemer","walletAddress","refInput","u","FEE_BUFFER","feeCandidates","aHasAssets","bHasAssets","find","inputValue","coin","fillerValue","fillerOutput","TransactionOutput","coinsPerUtxoByte","items","kind","ownerKeyHash","item","ownerCredential","KeyHash","ownerAddress","expectedActionType","classified","datumVerdict","getValidatedScreeningSettings","deriveOrderUtxoFacts","quantityOf","usdrAssetId","deriveOrderUtxoFactsUnsafe","error","consumedRequired","consumedLocked","unresolvable","String","maxDelivered","rawAmount","reserve_assets","numerator","denominator","asset","isTreasuryAction","circulatingSupplyDelta","newTreasuryDatum","serializedTreasuryDatum","treasuryValue","newTreasuryValue","modifiedAssetIds","delta","currentReserve","newReserve","existingMultiasset","sUSDrDelta","uSDrDelta","updateVaultOutputWithDatum","buildUpdatedVaultDatum","newVaultDatum","serializedVaultDatum","newVaultValue","currentUSDr","newUSDr"],"sources":["../../../../src/sdk/v1/family.ts"],"sourcesContent":["import {\n addressFromCredentials,\n addressFromValidator,\n blake2b_256,\n Ed25519KeyHashHex,\n HexBlob,\n PlutusData,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n calculateMinAda,\n Core,\n makeValue,\n TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport type {\n Asset,\n Destination,\n DirectRequestV1,\n ExchangeRequestV1,\n ExtraProtocolRedeemerV1,\n MultisigScript,\n Nonce,\n OrderActionV1,\n OrderDatumV1,\n ProtocolRedeemerV1,\n SignedPayload_ProtocolRedeemerV1,\n StakeRequestV1,\n TreasuryRequestV1,\n Tuple_VerificationKey_COSESign1,\n} from \"../../generated-types/v1_0/index.js\";\n\nimport {\n addDirectOutput,\n addDestinationOutput,\n buildNonceFromUtxo,\n buildMultisigTimelockNativeScript,\n buildTimelockAddress,\n buildTimelockDestination,\n buildTimelockNativeScript,\n buildUnstakeMetadatum,\n UNSTAKE_METADATA_LABEL,\n credentialFromScript,\n deployScript,\n findReserveAsset,\n getDatumFromNFT,\n getSignatureKeyHashesFromMultisigScript,\n usdrToReserve,\n usdrToReserveCeil,\n computeReserveDeltas,\n lockOrPayAssets,\n sortOrderInputs,\n type ICachedReferenceInputs,\n type IProxyDatumResult,\n type IRealfiSDKWithTreasury,\n type ITreasuryDatumResult,\n type IVaultDatumResult,\n RealfiSDKBase,\n type TProtocolVersion,\n resolveOrderReferenceInputs,\n parseCancelOwner,\n} from \"../shared/index.js\";\nimport {\n screenOrderAction,\n screenDepositBatch,\n screenOrderUtxoFacts,\n type IOrderUtxoFacts,\n type TOrderSanityResult,\n} from \"./order-sanity.js\";\nimport type {\n IProxyDatum,\n IV1FamilySchemas,\n IV1FamilyScripts,\n IV1SigningSchemas,\n IVaultDatumLike,\n IYieldSplitAlpha,\n TV1Registry,\n TV1SettingsConfig,\n} from \"./types.js\";\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Constants\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Sentinel `reserve_asset` used in V1_0 TreasuryRequestV1 redeemers for\n * DirectMint and DirectBurn actions, which have no real reserve asset in\n * their order datum. The on-chain validators `direct_mint_logic` and\n * `direct_burn_logic` do not inspect this field; this sentinel makes the\n * intent explicit both in code and when inspecting on-chain redeemers.\n *\n * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a\n * sentinel and extremely unlikely to occur as a real script hash)\n * - `asset_name`: \"unused\" (ASCII)\n *\n * Keep in sync with backend `contract.DirectActionPaddingAsset`.\n */\nexport const DIRECT_ACTION_PADDING_ASSET: Asset = [\n \"00\".repeat(28),\n toHex(new TextEncoder().encode(\"unused\")),\n];\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Types\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Parsed order information extracted from a UTXO.\n */\nexport interface IOrderInfo {\n utxo: Core.TransactionUnspentOutput;\n datum: OrderDatumV1;\n actionType: TOrderActionType;\n amount: bigint;\n /** Yield amount for deposit actions */\n yield?: bigint;\n /** Forfeit amount for unstake actions */\n forfeit?: bigint;\n /** Reserve asset for treasury actions, undefined for stake/unstake */\n reserveAsset?: [string, string];\n /**\n * Absolute fee retained by the protocol, in this action's output unit\n * (USDr for Mint, reserve for Burn). Always 0 for Stake/Unstake — the\n * protocol does not retain a fee on those actions. Locked at indexing\n * time by the Go backend; the SDK never recomputes. Zero (the default)\n * means \"no fee\", e.g. when the dispatcher passes no fees map or the\n * map has no entry for this order.\n */\n fee: bigint;\n /**\n * User-enforced output floor copied from the v1.0 datum (in output unit).\n * Used as a defensive sanity check by buildXxxExecute to throw early if\n * the fee somehow pushes the user output below what was signed.\n */\n minReceived?: bigint;\n}\n\n/** Minimal completed-swap shape accepted by the stake continuation builder. */\nexport interface IStakeContinuationSwap {\n minReceived: {\n amount: bigint;\n metadata: {\n assetId: string;\n };\n };\n}\n\n/** Parameters for building a RealFi stake order as another order's destination. */\nexport interface IBuildStakeContinuationParams {\n swap: IStakeContinuationSwap;\n destination: Destination;\n slippageToleranceBps?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n}\n\n/** Address and inline datum a preceding protocol should pay its result to. */\nexport interface IStakeContinuation {\n address: Core.Address;\n datum: PlutusData;\n}\n\nexport type TOrderActionType =\n | \"mint\"\n | \"burn\"\n | \"deposit\"\n | \"withdraw\"\n | \"stake\"\n | \"unstake\"\n | \"direct_mint\"\n | \"direct_burn\";\n\n/** Result of {@link RealfiSDKV1Family.classifyOrderAction}. */\nexport interface IClassifiedOrderAction {\n actionType: TOrderActionType;\n amount: bigint;\n yield?: bigint;\n forfeit?: bigint;\n minReceived?: bigint;\n reserveAsset?: [string, string];\n isTreasuryAction: boolean;\n}\n\n/** Result of {@link RealfiSDKV1Family.classifyOrderUtxo}. */\nexport interface IClassifiedOrderUtxo {\n /** The order datum decoded with this version's `OrderDatumV1` schema. */\n datum: OrderDatumV1;\n /** The action classified from {@link datum}. */\n action: IClassifiedOrderAction;\n}\n\n/** The `origin` field shared by every request kind — the consumed order UTxO. */\nexport interface IRequestOrigin {\n transaction_id: string;\n output_index: bigint;\n}\n\nexport interface ITreasuryUnstakeOrderTxResult {\n /** Transaction builder for the treasury unstake order. */\n tx: TxBuilder;\n /**\n * Native script used as the unstake output destination:\n * AllOf { After(unlockSlot), owner }.\n */\n nativeScript: Core.NativeScript;\n}\n\n/**\n * Context handed to {@link RealfiSDKV1Family.applyExecutionValidityBounds}\n * at the end of `buildExecuteOrdersTx`. The vault fields are set only when\n * the executed action consumed the staking vault (stake/unstake/deposit).\n */\nexport interface IExecutionValidityContext {\n actionType: TOrderActionType;\n vaultUtxo?: Core.TransactionUnspentOutput;\n parsedVaultDatum?: TVaultDatum;\n}\n\n/**\n * Version-agnostic constructor parameters for the V1 family. Each version's\n * `static create` assembles this from its own public params interface.\n */\nexport interface IV1FamilyConstructorParams {\n version: TProtocolVersion;\n proxyBootstrap: { txHash: Core.TransactionId; outputIndex: bigint };\n /** USDr asset name hex */\n assetNameHex: string;\n /** sUSDr asset name hex */\n sUSDrAssetNameHex: string;\n enableTrace?: boolean;\n defaultSlippageToleranceBps?: bigint;\n scriptDeploymentAddress?: Core.Address;\n clientSource?: import(\"../shared/client-id.js\").TClientSource;\n /**\n * Hashes of the validators this deployment actually runs, keyed as in\n * `backend/config/env/.protocol.yaml`.\n *\n * Every identity below is otherwise derived from the Plutus artifacts this\n * package bundles, which is correct only while those bytes match the ones on\n * chain. Where they do not, the derived order address is an address nothing\n * watches — and because an order is `lockAssets` with no on-chain validation,\n * funds go there silently. Supplying the deployment's own hashes overrides\n * the derivation; the scripts themselves still come from on-chain reference\n * inputs, so identity is all that is needed.\n *\n * Partial maps are normal — validators the deployment does not name keep\n * their derived identity.\n */\n deployedValidators?: Readonly>;\n}\n\n/** Blueprint validator key (within a version slot) -> SDK identity field. */\nconst DEPLOYED_VALIDATOR_FIELDS = [\n [\n \"protocol_orchestrator.protocol_orchestrator.withdraw\",\n \"protocolScriptHash\",\n ],\n [\"protocol_mint.protocol_mint.withdraw\", \"protocolMintScriptHash\"],\n [\"protocol_stake.protocol_stake.withdraw\", \"protocolStakeScriptHash\"],\n [\n \"protocol_management.protocol_management.withdraw\",\n \"protocolManagementScriptHash\",\n ],\n [\"order.order.spend\", \"orderScriptHash\"],\n [\"treasury.treasury.spend\", \"treasuryScriptHash\"],\n [\"staking_vault.staking_vault.spend\", \"stakingVaultScriptHash\"],\n] as const;\n\nconst DEPLOYED_VALIDATOR_PREFIXES = {\n V1_0: \"v1_0/\",\n V1_0_Rc1: \"v1_0_rc1/\",\n V1_1_Rc1: \"v1_1_rc1/\",\n} as const;\n\ntype TV1ProtocolVersion = keyof typeof DEPLOYED_VALIDATOR_PREFIXES;\n\nconst COMPATIBLE_STATE_VALIDATOR_FIELDS = new Set([\n \"treasuryScriptHash\",\n \"stakingVaultScriptHash\",\n]);\n\n/** Hash fields whose address must move with them. */\nconst DEPLOYED_ADDRESS_FIELDS = {\n orderScriptHash: \"orderScriptAddress\",\n treasuryScriptHash: \"treasuryAddress\",\n stakingVaultScriptHash: \"stakingVaultAddress\",\n} as const;\n\nexport const MIN_LOVELACE = 2000000n;\n\n/**\n * Calculate yield split between staked and unstaked portions.\n * Matches on-chain deposit.ak logic: staked_yield_share = total_yield * vault_usdr / treasury_circulating\n *\n * IMPORTANT: Uses truncation toward zero (BigInt default `/` operator) to match\n * Aiken's builtin.quotient_integer. Do NOT use floor division here, as it\n * rounds toward negative infinity which gives different results for negative yields.\n * Example: floor(-165/90) = -2, but trunc(-165/90) = -1.\n */\n/**\n * Extract the requests list from a signed payload action, regardless of action type.\n * Both TreasuryRequestV1 and RequestV1 have `origin: { transaction_id, output_index }`.\n */\nfunction getRequestsFromAction(\n action: ProtocolRedeemerV1,\n): Array<{ origin: { transaction_id: string; output_index: bigint } }> {\n if (\"Mint\" in action) return action.Mint.requests;\n if (\"Burn\" in action) return action.Burn.requests;\n if (\"Withdraw\" in action) return action.Withdraw.requests;\n if (\"Deposit\" in action) return action.Deposit.requests;\n if (\"Stake\" in action) return action.Stake.requests;\n if (\"Unstake\" in action) return action.Unstake.requests;\n if (\"DirectMint\" in action) return action.DirectMint.requests;\n if (\"DirectBurn\" in action) return action.DirectBurn.requests;\n throw new Error(\"Unknown action type in signed payload\");\n}\n\nexport function calculateYieldShares(\n totalYield: bigint,\n vaultUSDr: bigint,\n treasuryCirculating: bigint,\n): { stakedYieldShare: bigint; unstakedYieldShare: bigint } {\n // Note: BigInt / truncates toward zero, matching Aiken's quotient_integer\n const stakedYieldShare =\n treasuryCirculating > 0n\n ? (totalYield * vaultUSDr) / treasuryCirculating\n : 0n;\n const unstakedYieldShare = totalYield - stakedYieldShare;\n return { stakedYieldShare, unstakedYieldShare };\n}\n\n/**\n * Refuse to create an order whose `min_received` floor is not strictly\n * positive (WTB-1764).\n *\n * Every v1-family validator predicate that reads `min_received` requires it to\n * be > 0, and those predicates run inside a `zip_fold` that `expect`s each\n * request in turn — so one order with a zero floor crashes the ENTIRE execution\n * transaction, killing every valid order batched alongside it. Such an order can\n * never execute; creating it only plants a landmine at the order script address.\n *\n * This guards both an explicit caller-supplied floor and a computed one that\n * rounds or nets down to zero (a dust stake at a high exchange rate, or a\n * full-forfeit unstake).\n */\nfunction assertPositiveMinReceived(label: string, minReceived: bigint): void {\n if (minReceived <= 0n) {\n throw new Error(\n `${label} minReceived must be positive (got ${minReceived}); an order with a ` +\n \"non-positive min_received can never execute and crashes every batch it joins\",\n );\n }\n}\n\nfunction buildOrderDestinationValue(\n orderInfo: IOrderInfo,\n consumedAssets: Array<[Core.AssetId, bigint]>,\n deliveredAssets: Array<[Core.AssetId, bigint]> = [],\n): Core.Value {\n let value = orderInfo.utxo.output().amount();\n for (const [assetId, amount] of consumedAssets) {\n if (amount !== 0n) {\n value = Value.merge(value, makeValue(0n, [assetId, -amount]));\n }\n }\n for (const [assetId, amount] of deliveredAssets) {\n if (amount !== 0n) {\n value = Value.merge(value, makeValue(0n, [assetId, amount]));\n }\n }\n return value;\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// SDK Family Base Class\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Shared implementation for the V1 protocol family (v1_0, v1_0_rc1, v1_1+).\n *\n * The family is generic over the two datum shapes that differ across\n * versions — `TSettings` (the proxy settings static) and `TVaultDatum` (the\n * staking-vault datum static) — and receives all generated artifacts from the\n * subclass: schema VALUES via {@link IV1FamilySchemas} (plus, optionally,\n * {@link IV1SigningSchemas}) and instantiated scripts via\n * {@link IV1FamilyScripts}. Method bodies never touch a version's generated\n * module directly, so this chunk adds no runtime import edge to any\n * `generated-types/v1_x` module and per-version code-splitting is preserved.\n *\n * Method defaults implement v1_0 semantics (fees, min_received, the v1_0\n * protocol-redeemer schema). Versions that diverge override the affected\n * members:\n * - vault datum construction is NEVER done inline — it goes through the\n * abstract `buildInitialVaultDatum` / `buildUpdatedVaultDatum` seam so\n * versions with additional vault fields cannot be silently truncated;\n * - settings access goes through the abstract `settingsConfig` /\n * `settingsRegistry` adapters;\n * - `applyExecutionValidityBounds` lets a version constrain the validity\n * interval of execution transactions (no-op by default).\n */\nexport abstract class RealfiSDKV1Family<\n P extends Provider,\n W extends Wallet,\n TSettings,\n TVaultDatum extends IVaultDatumLike,\n>\n extends RealfiSDKBase\n implements IRealfiSDKWithTreasury\n{\n // Script hashes and policy IDs\n readonly stablecoinPolicyId: Core.PolicyId;\n readonly oneShotPolicyId: Core.PolicyId;\n readonly protocolScriptHash: Core.Hash28ByteBase16;\n readonly protocolMintScriptHash: Core.Hash28ByteBase16;\n readonly protocolStakeScriptHash: Core.Hash28ByteBase16;\n readonly protocolManagementScriptHash: Core.Hash28ByteBase16;\n readonly treasuryScriptHash: Core.Hash28ByteBase16;\n readonly treasuryNFTAssetId: Core.AssetId;\n readonly orderScriptHash: Core.Hash28ByteBase16;\n readonly orderScriptAddress: Core.Address;\n readonly treasuryAddress: Core.Address;\n readonly stakingVaultScriptHash: Core.Hash28ByteBase16;\n readonly stakingVaultAddress: Core.Address;\n readonly stakingVaultNFTAssetId: Core.AssetId;\n readonly sUSDrAssetNameHex: string;\n\n // Scripts\n protected readonly oneShotScript: Core.Script;\n protected readonly protocolScript: Core.Script; // Alias for orchestrator (base class compatibility)\n protected readonly protocolOrchestratorScript: Core.Script;\n protected readonly protocolMintScript: Core.Script;\n protected readonly protocolStakeScript: Core.Script;\n protected readonly protocolManagementScript: Core.Script;\n protected readonly mintProxyScript: Core.Script;\n protected readonly treasuryScript: Core.Script;\n protected readonly orderScript: Core.Script;\n protected readonly stakingVaultScript: Core.Script;\n\n protected readonly defaultSlippageToleranceBps?: bigint;\n\n /** Schema values used by every shared serialize/parse site. */\n protected readonly schemas: IV1FamilySchemas;\n private readonly signingSchemas?: IV1SigningSchemas;\n\n protected constructor(\n blaze: Blaze,\n params: IV1FamilyConstructorParams,\n schemas: IV1FamilySchemas,\n scripts: IV1FamilyScripts,\n cachedReferenceInputs?: ICachedReferenceInputs,\n signingSchemas?: IV1SigningSchemas,\n ) {\n super(\n blaze,\n {\n version: params.version,\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n enableTrace: params.enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n clientSource: params.clientSource,\n },\n cachedReferenceInputs,\n );\n\n this.schemas = schemas;\n this.signingSchemas = signingSchemas;\n\n this.sUSDrAssetNameHex = params.sUSDrAssetNameHex;\n this.defaultSlippageToleranceBps = params.defaultSlippageToleranceBps;\n\n this.oneShotScript = scripts.oneShotScript;\n this.protocolOrchestratorScript = scripts.protocolOrchestratorScript;\n this.protocolScript = scripts.protocolOrchestratorScript; // Alias for base class\n this.protocolMintScript = scripts.protocolMintScript;\n this.protocolStakeScript = scripts.protocolStakeScript;\n this.protocolManagementScript = scripts.protocolManagementScript;\n this.mintProxyScript = scripts.mintProxyScript;\n this.treasuryScript = scripts.treasuryScript;\n this.orderScript = scripts.orderScript;\n this.stakingVaultScript = scripts.stakingVaultScript;\n\n this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash());\n this.protocolScriptHash = this.protocolOrchestratorScript.hash();\n this.protocolMintScriptHash = this.protocolMintScript.hash();\n this.protocolStakeScriptHash = this.protocolStakeScript.hash();\n this.protocolManagementScriptHash = this.protocolManagementScript.hash();\n this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash());\n this.treasuryScriptHash = this.treasuryScript.hash();\n this.orderScriptHash = this.orderScript.hash();\n this.stakingVaultScriptHash = this.stakingVaultScript.hash();\n\n this.treasuryAddress = addressFromValidator(\n this.network,\n this.treasuryScript,\n );\n this.orderScriptAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n this.stakingVaultAddress = addressFromValidator(\n this.network,\n this.stakingVaultScript,\n );\n\n // Every identity above is derived from this package's own artifacts, which\n // only describes a deployment running those exact bytes. Where the caller\n // knows what the chain actually runs, that wins — otherwise the derived\n // order address is one nothing watches, and an order (lockAssets, no\n // on-chain validation) would submit successfully into it.\n this.applyDeployedValidators(params.deployedValidators, params.version);\n\n // Treasury NFT: policy = treasury script hash, name = \"treasury\"\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n this.treasuryNFTAssetId = Core.AssetId(\n this.treasuryScriptHash + treasuryAssetName.toString(),\n );\n\n // Staking vault NFT: policy = staking vault script hash, name = \"staking_vault\"\n const vaultAssetName = Core.AssetName(toHex(Buffer.from(\"staking_vault\")));\n this.stakingVaultNFTAssetId = Core.AssetId(\n this.stakingVaultScriptHash + vaultAssetName.toString(),\n );\n }\n\n /**\n * Replace derived script identity with the deployment's own hashes.\n *\n * Version-owned validators are selected only from this SDK's exact version\n * slot. Treasury and staking-vault validators can deliberately survive a\n * protocol-only upgrade, so their unversioned entries are used as the\n * authoritative active-state fallback.\n *\n * Unrecognised keys are ignored: a blueprint legitimately carries validators\n * outside this family (oneshot, mint_proxy) and future ones this build has\n * never heard of.\n */\n private applyDeployedValidators(\n deployed: Readonly> | undefined,\n version: TProtocolVersion,\n ): void {\n if (!deployed) return;\n\n if (!(version in DEPLOYED_VALIDATOR_PREFIXES)) return;\n const prefix = DEPLOYED_VALIDATOR_PREFIXES[version as TV1ProtocolVersion];\n\n const mutable = this as unknown as Record;\n for (const [suffix, field] of DEPLOYED_VALIDATOR_FIELDS) {\n const versionedHash = deployed[`${prefix}${suffix}`];\n const activeStateHash = COMPATIBLE_STATE_VALIDATOR_FIELDS.has(field)\n ? deployed[suffix]\n : undefined;\n const deployedHash = activeStateHash ?? versionedHash;\n if (!deployedHash) continue;\n\n const hash = Core.Hash28ByteBase16(deployedHash.toLowerCase());\n mutable[field] = hash;\n\n const addressField =\n DEPLOYED_ADDRESS_FIELDS[field as keyof typeof DEPLOYED_ADDRESS_FIELDS];\n if (addressField) {\n mutable[addressField] = addressFromCredentials(\n this.network,\n Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash,\n }),\n );\n }\n }\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Version Seams\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Schemas for the v1_0-semantics signing/execute defaults. Throws for\n * versions that neither supplied {@link IV1SigningSchemas} nor overrode\n * the two consumers (`getSignedPayloadFromOrderInputs`,\n * `buildExecuteOrdersTx`).\n */\n protected get signing(): IV1SigningSchemas {\n if (!this.signingSchemas) {\n throw new Error(\n `${this.version}: no signing schemas supplied — pass signingSchemas to the family constructor or override getSignedPayloadFromOrderInputs and buildExecuteOrdersTx`,\n );\n }\n return this.signingSchemas;\n }\n\n /**\n * Project the version's settings onto the fields the shared tx-builders\n * read. v1_0/v1_0_rc1: the settings object itself; v1_1+: `settings.config`.\n */\n protected abstract settingsConfig(settings: TSettings): TV1SettingsConfig;\n\n /**\n * Extract the validator registry (the fields the family reads) from the\n * version's settings.\n */\n protected abstract settingsRegistry(settings: TSettings): TV1Registry;\n\n /**\n * Build the vault datum used when bootstrapping the staking vault.\n * This is the ONLY place (together with `buildUpdatedVaultDatum`) that\n * knows the version's full vault-datum shape.\n */\n protected abstract buildInitialVaultDatum(): TVaultDatum;\n\n /**\n * Build the vault datum that replaces `previous` after an execution that\n * changes circulating sUSDr by `sUSDrDelta`. Versions with additional\n * vault fields decide here how each field carries over.\n */\n protected abstract buildUpdatedVaultDatum(\n previous: TVaultDatum,\n sUSDrDelta: bigint,\n ): TVaultDatum;\n\n /**\n * Version hook: the USDr backing the stake/unstake exchange rate is\n * computed against. Defaults to the vault's full USDr balance (v1_0 /\n * v1_0_rc1 semantics). Versions with time-diffused yield (v1_1_rc1+)\n * override this to exclude the not-yet-diffused pending yield\n * (`settled_backing` in utilities.ak).\n */\n protected settledVaultBacking(\n _parsedVaultDatum: TVaultDatum,\n vaultUSDr: bigint,\n ): bigint {\n return vaultUSDr;\n }\n\n /**\n * Version hook: constrain the transaction validity interval on order\n * executions. Called once at the end of `buildExecuteOrdersTx`, right\n * before the builder is returned.\n *\n * No-op by default: v1_0 / v1_0_rc1 executions carry no validity\n * constraints. Versions with time-diffused yield (v1_1_rc1+) override this\n * to attach validFrom/validTo bounds on vault-touching executions.\n */\n protected async applyExecutionValidityBounds(\n _tx: TxBuilder,\n _context: IExecutionValidityContext,\n ): Promise {\n // no-op by default\n }\n\n /**\n * Version hook: build the `Deposit` protocol action that goes into the\n * COSE-signed payload. v1_0 / v1_0_rc1 have no yield split — the validator\n * recomputes it from live state — so they take no `alpha` and reject one.\n * Versions that carry a signed `alpha` (v1_1_rc1+) override this and require\n * it: it is the batch's parameter, never something a signer derives.\n */\n protected async buildDepositAction(\n requests: TreasuryRequestV1[],\n alpha?: IYieldSplitAlpha,\n ): Promise {\n if (alpha) {\n throw new Error(\n `${this.version}: a deposit batch takes no yield-split alpha (the validator recomputes the split from live state)`,\n );\n }\n return { Deposit: { requests } };\n }\n\n /**\n * Version hook: split a deposit's total yield between the staked vault and\n * the unstaked pot at EXECUTION time.\n *\n * v1_0 / v1_0_rc1 (default): the on-chain validator recomputes the split from\n * live vault/treasury state, so recomputing it here from the same state\n * matches. v1_1_rc1+ carry a COSE-signed `alpha` in the Deposit action and\n * the validator splits against THAT — so those versions override this to echo\n * the signed alpha, never a second live read (which would diverge if state\n * moved between signing and execution). `action` is the signed action being\n * executed; the default ignores it.\n */\n protected resolveDepositYieldShares(\n totalYield: bigint,\n vaultUSDr: bigint,\n treasuryCirculating: bigint,\n _action: ProtocolRedeemerV1,\n ): { stakedYieldShare: bigint; unstakedYieldShare: bigint } {\n return calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating);\n }\n\n /**\n * Version hook: serialize the redeemer attached to the orchestrator\n * withdrawal. Defaults to the bare `SignedRedeemer`\n * (v1_0 / v1_0_rc1). Versions whose orchestrator wraps execution in a\n * top-level dispatch enum (v1_1_rc1+: `ExecuteOrders(...)`/`PublishYieldOracle`)\n * override this to nest the signed redeemer inside that wrapper.\n */\n protected serializeOrchestratorWithdrawalRedeemer(redeemer: {\n extra: ExtraProtocolRedeemerV1;\n payload: SignedPayload_ProtocolRedeemerV1;\n signatures: Tuple_VerificationKey_COSESign1[];\n }): PlutusData {\n return Data.serialize(\n this.signing.SignedRedeemer_ExtraProtocolRedeemerV1,\n redeemer,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Treasury Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the treasury NFT.\n */\n async mintTreasuryNFT(\n treasuryBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n },\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash);\n const treasuryAssetName = Core.AssetName(toHex(Buffer.from(\"treasury\")));\n\n const datum = Data.serialize(V0_1TreasuryDatum, initialDatum);\n const tx = await this.blaze\n .newTransaction()\n .addInput(treasuryBootstrapUtxo)\n .addMint(\n treasuryPolicyId,\n new Map([[treasuryAssetName, 1n]]),\n Data.Void(),\n )\n .lockAssets(\n this.treasuryAddress,\n makeValue(10000000n, [this.treasuryNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.treasuryScript);\n\n return { tx, nftAssetId: this.treasuryNFTAssetId };\n }\n\n async deployTreasury(): Promise {\n return deployScript(\n this.blaze,\n this.treasuryScript,\n this.scriptDeploymentAddress,\n );\n }\n\n async deployOrderContract(): Promise {\n return deployScript(\n this.blaze,\n this.orderScript,\n this.scriptDeploymentAddress,\n );\n }\n\n async getTreasuryDatum(): Promise> {\n const {\n utxo: treasuryUtxo,\n datum: treasuryDatum,\n parsedDatum: parsedTreasuryDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.treasuryNFTAssetId,\n V0_1TreasuryDatum,\n );\n\n if (!treasuryUtxo) {\n throw new Error(\"No UTXO found with the treasury NFT\");\n }\n if (!treasuryDatum) {\n throw new Error(\"No treasury datum found\");\n }\n\n return {\n treasuryUtxo,\n treasuryDatum,\n parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Staking Vault Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint the staking vault NFT and create initial vault UTxO.\n */\n async mintStakingVaultNFT(\n stakingVaultBootstrapUtxo: Core.TransactionUnspentOutput,\n initialDatum?: TVaultDatum,\n ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> {\n const vaultPolicyId = Core.PolicyId(this.stakingVaultScriptHash);\n const vaultAssetName = Core.AssetName(toHex(Buffer.from(\"staking_vault\")));\n\n const datum = Data.serialize(\n this.schemas.VaultDatumV1,\n initialDatum ?? this.buildInitialVaultDatum(),\n );\n const tx = await this.blaze\n .newTransaction()\n .addInput(stakingVaultBootstrapUtxo)\n .addMint(vaultPolicyId, new Map([[vaultAssetName, 1n]]), Data.Void())\n .lockAssets(\n this.stakingVaultAddress,\n makeValue(10000000n, [this.stakingVaultNFTAssetId, 1n]),\n datum,\n )\n .provideScript(this.stakingVaultScript);\n\n return { tx, nftAssetId: this.stakingVaultNFTAssetId };\n }\n\n async deployStakingVault(): Promise {\n return deployScript(\n this.blaze,\n this.stakingVaultScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Deploy the protocol mint script as a reference script (V1.0 only).\n */\n async deployProtocolMint(): Promise {\n return deployScript(\n this.blaze,\n this.protocolMintScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Deploy the protocol stake script as a reference script (V1.0 only).\n */\n async deployProtocolStake(): Promise {\n return deployScript(\n this.blaze,\n this.protocolStakeScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Deploy the protocol management script as a reference script (V1.0 only).\n */\n async deployProtocolManagement(): Promise {\n return deployScript(\n this.blaze,\n this.protocolManagementScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Register the protocol mint stake credential (V1.0 sub-validator).\n */\n registerProtocolMintStake(): TxBuilder {\n const stakeCredential = credentialFromScript(this.protocolMintScript);\n return this.blaze.newTransaction().addRegisterStake(stakeCredential);\n }\n\n /**\n * Register the protocol stake stake credential (V1.0 sub-validator).\n */\n registerProtocolStakeStake(): TxBuilder {\n const stakeCredential = credentialFromScript(this.protocolStakeScript);\n return this.blaze.newTransaction().addRegisterStake(stakeCredential);\n }\n\n /**\n * Register the protocol management stake credential (V1.0 sub-validator).\n */\n registerProtocolManagementStake(): TxBuilder {\n const stakeCredential = credentialFromScript(this.protocolManagementScript);\n return this.blaze.newTransaction().addRegisterStake(stakeCredential);\n }\n\n /**\n * Register the staking vault stake credential (for stake/unstake operations).\n */\n registerStakingVaultStake(): TxBuilder {\n const stakeCredential = credentialFromScript(this.stakingVaultScript);\n return this.blaze.newTransaction().addRegisterStake(stakeCredential);\n }\n\n // ───────────────────────────────────────────────────────────────────────────\n // Batched bootstrap helpers (fast fresh-deploy path)\n //\n // The NFT mints CANNOT be batched: each one-shot mint validator runs\n // `mint_oneshots_strict`, which flattens the transaction's ENTIRE mint field\n // and fails unless it equals exactly that validator's single token. So a tx\n // minting more than one NFT fails phase-2 for all of them — the mints stay\n // one-tx-each. Deploys and stake registrations have no such constraint and\n // batch freely.\n // ───────────────────────────────────────────────────────────────────────────\n\n /**\n * Register all five protocol stake credentials (orchestrator + mint / stake /\n * management sub-validators + staking vault) in a SINGLE transaction.\n * Certificates are tiny, so there is no size constraint. Replaces five\n * `register*Stake` calls (and, for a cold wallet, five sign/submit cycles).\n */\n registerAllStakes(): TxBuilder {\n return this.blaze\n .newTransaction()\n .addRegisterStake(credentialFromScript(this.protocolScript))\n .addRegisterStake(credentialFromScript(this.protocolMintScript))\n .addRegisterStake(credentialFromScript(this.protocolStakeScript))\n .addRegisterStake(credentialFromScript(this.protocolManagementScript))\n .addRegisterStake(credentialFromScript(this.stakingVaultScript));\n }\n\n /**\n * Pack the eight protocol reference-script deployments into as few\n * transactions as fit under `budgetBytes` of script payload each, returning\n * one TxBuilder per batch in deploy order.\n *\n * Batches by measured script size (`script.toCbor()` bytes) rather than a\n * fixed count, because the validators are wildly uneven (~0.5–11 KB) and two\n * of the ~10 KB sub-validators cannot share a transaction. The default budget\n * (13 000) leaves headroom under the 16 384-byte tx limit for tx overhead and\n * future script growth; callers can lower it if a validator grows.\n *\n * Fresh-deploy only: it does NOT skip already-deployed scripts. To resume a\n * partial deploy, use the granular `deploy*` methods (which throw\n * `ScriptAlreadyDeployedError` for idempotent reruns).\n */\n deployScriptsBatched(budgetBytes = 13_000): TxBuilder[] {\n const scripts: Core.Script[] = [\n this.treasuryScript,\n this.protocolScript,\n this.protocolMintScript,\n this.protocolStakeScript,\n this.protocolManagementScript,\n this.mintProxyScript,\n this.orderScript,\n this.stakingVaultScript,\n ];\n\n const batches: Core.Script[][] = [];\n let current: Core.Script[] = [];\n let currentBytes = 0;\n for (const script of scripts) {\n const size = script.toCbor().length / 2;\n if (current.length > 0 && currentBytes + size > budgetBytes) {\n batches.push(current);\n current = [];\n currentBytes = 0;\n }\n current.push(script);\n currentBytes += size;\n }\n if (current.length > 0) batches.push(current);\n\n return batches.map((batch) => {\n let tx = this.blaze.newTransaction();\n for (const script of batch) {\n tx = tx.deployScript(script, this.scriptDeploymentAddress);\n }\n return tx;\n });\n }\n\n /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */\n getSusdrAssetId(): Core.AssetId {\n return Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex);\n }\n\n async getVaultDatum(): Promise> {\n const {\n utxo: vaultUtxo,\n datum: vaultDatum,\n parsedDatum: parsedVaultDatum,\n } = await getDatumFromNFT(\n this.blaze,\n this.stakingVaultNFTAssetId,\n this.schemas.VaultDatumV1,\n );\n\n if (!vaultUtxo) {\n throw new Error(\"No UTXO found with the staking vault NFT\");\n }\n if (!vaultDatum) {\n throw new Error(\"No vault datum found\");\n }\n\n return {\n vaultUtxo,\n vaultDatum,\n parsedVaultDatum: parsedVaultDatum as TVaultDatum,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // One-Shot Operations\n // ─────────────────────────────────────────────────────────────────────────────\n\n async mintOneShot(\n receiverAddress: Core.Address,\n datum: IProxyDatum,\n ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> {\n const utxo = await this.resolveBootstrapUtxo();\n const serializedDatum = Data.serialize(this.schemas.ProxyDatumV1, {\n logic: datum.logic,\n settings: datum.settings,\n });\n\n const baseTx = this.blaze\n .newTransaction()\n .addInput(utxo)\n .addMint(\n this.oneShotPolicyId,\n new Map([[Core.AssetName(\"\"), 1n]]),\n Data.Void(),\n );\n const tx = lockOrPayAssets(\n baseTx,\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n ).provideScript(this.oneShotScript);\n return { tx, policyId: this.oneShotPolicyId };\n }\n\n async updateOneShotDatum(\n receiverAddress: Core.Address,\n newDatum: IProxyDatum,\n ): Promise {\n const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT(\n Core.AssetId(this.oneShotPolicyId),\n );\n if (!oneshotUtxo) {\n throw new Error(\"No UTXO found with the one-shot NFT\");\n }\n\n const serializedDatum = Data.serialize(this.schemas.ProxyDatumV1, {\n logic: newDatum.logic,\n settings: newDatum.settings,\n });\n\n return lockOrPayAssets(\n this.blaze.newTransaction().addInput(oneshotUtxo),\n receiverAddress,\n makeValue(10000000n, [this.oneShotPolicyId, 1n]),\n serializedDatum,\n );\n }\n\n async getParsedProxyDatum(): Promise<\n IProxyDatumResult>\n > {\n if (this.cachedProxyDatumResult) {\n return this.cachedProxyDatumResult as IProxyDatumResult<\n IProxyDatum\n >;\n }\n\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n const parsedProxyDatum = parse(this.schemas.ProxyDatumV1, proxyDatum);\n const result = { proxyUtxo, proxyDatum, parsedProxyDatum };\n\n this.cachedProxyDatumResult = result;\n return result;\n }\n\n /**\n * Check if the protocol has been upgraded past this SDK version.\n *\n * Returns true if either:\n * - The order script hash no longer matches registry.order (order validator upgraded)\n * - The protocol logic no longer matches this SDK's protocol script hash (protocol upgraded)\n *\n * When this returns true, orders created with this SDK version can use the\n * `Invalidated` redeemer to recover funds via `buildInvalidatedOrdersTx`.\n */\n async isProtocolUpgraded(): Promise {\n const { parsedProxyDatum } = await this.getParsedProxyDatum();\n const registry = this.settingsRegistry(parsedProxyDatum.settings);\n const orderUpgraded = registry.order !== this.orderScriptHash;\n const protocolUpgraded = parsedProxyDatum.logic !== this.protocolScriptHash;\n return orderUpgraded || protocolUpgraded;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Public Order-Scan / Settings Accessors\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Read the version-agnostic settings config (`reserve_assets`,\n * `unstaked_yield_pot`) off the live proxy datum. Public accessor over the\n * `settingsConfig` / `getVersionSettings` seam so consumers read the shared\n * fields without casting a version-specific settings shape: v1_0 / v1_0_rc1\n * project the flat settings, v1_1+ project `settings.config`.\n */\n async getSettingsConfig(): Promise {\n return this.settingsConfig(await this.getVersionSettings());\n }\n\n /**\n * Whether the batch covering these orders needs a yield-split alpha, i.e. it is\n * a deposit on a version that splits yield. Callers that both create and sign a\n * batch use it to decide whether to pick one (computeDepositAlpha); a co-signer\n * has no use for it — it reads the batch's stored alpha either way.\n */\n async batchNeedsAlpha(\n orderInputs: Core.TransactionInput[],\n ): Promise {\n if (orderInputs.length === 0) {\n return false;\n }\n const [utxo] = await this.blaze.provider.resolveUnspentOutputs([\n orderInputs[0]!,\n ]);\n return (\n this.classifyOrderUtxo(utxo!).action.actionType === \"deposit\" &&\n this.splitsYield\n );\n }\n\n /**\n * Whether this version's Deposit action carries a signed yield split. False for\n * v1_0 / v1_0_rc1, whose validator recomputes the split from live state;\n * v1_1_rc1+ override it.\n */\n protected get splitsYield(): boolean {\n return false;\n }\n\n /**\n * Decode and classify a single open order UTxO with this version's schema.\n *\n * Parses the UTxO's inline datum via `this.schemas.OrderDatumV1` — exactly\n * the way {@link parseOrderInfos} does — then classifies the action. Unlike\n * {@link parseOrders}, this imposes NO same-action-type constraint, so it is\n * the per-UTxO primitive for scanning a MIXED batch of open orders at the\n * order script address and handling each by its action type.\n *\n * @throws if the UTxO carries no inline datum, or the datum fails to decode\n * under this version's order schema (e.g. a V1.1 order read by a V1.0 SDK).\n */\n classifyOrderUtxo(utxo: Core.TransactionUnspentOutput): IClassifiedOrderUtxo {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1;\n return { datum, action: this.classifyOrderAction(datum) };\n }\n\n /**\n * Decode a batch of order UTxOs into {@link IOrderInfo} objects, validating\n * they are ALL the same action type (throws on a mixed batch). Public\n * wrapper over {@link parseOrderInfos}; use it to prepare inputs for the\n * same-type execute builders. To scan a mixed batch, classify each UTxO\n * individually with {@link classifyOrderUtxo} instead.\n *\n * The optional `fees` map (keyed by `${txHash}#${outputIndex}`) stamps each\n * order with its locked fee in the action's output unit; missing entries\n * default to 0 (no fee retained).\n */\n parseOrders(\n orderUtxos: Core.TransactionUnspentOutput[],\n fees?: Map,\n ): IOrderInfo[] {\n return this.parseOrderInfos(orderUtxos, fees);\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Order Builder Methods (8 methods: 6 from V0_4 + DirectMint + DirectBurn)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Internal helper to build an order transaction.\n */\n protected async _buildOrderTx(params: {\n action: OrderActionV1;\n valueToLock: Core.Value;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n extraLabels?: Map;\n }): Promise {\n const owner = await this.resolveOrderOwner(params.owner);\n const serializedDatum = this.serializeOrderDatum(\n params.action,\n params.destination,\n owner,\n params.data,\n );\n\n const tx = this.newOrderTransaction(params.extraLabels);\n tx.lockAssets(this.orderScriptAddress, params.valueToLock, serializedDatum);\n return tx;\n }\n\n /** Resolve the order owner exactly once for transaction and continuation builders. */\n protected async resolveOrderOwner(\n owner?: MultisigScript,\n ): Promise {\n if (owner) return owner;\n return {\n Signature: {\n key_hash: (await this.blaze.wallet.getChangeAddress())\n .getProps()\n .paymentPart!.hash!.toString(),\n },\n };\n }\n\n /** Serialize an order datum through the live version instance's schema seam. */\n protected serializeOrderDatum(\n action: OrderActionV1,\n destination: Destination,\n owner: MultisigScript,\n data?: PlutusData,\n ): PlutusData {\n const orderDatum: OrderDatumV1 = {\n action,\n owner,\n destination,\n data: data ?? Data.Void(),\n };\n return Data.serialize(this.schemas.OrderDatumV1, orderDatum);\n }\n\n /**\n * Build a mint order: lock reserve tokens, request USDr minting.\n */\n async buildMintOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n minReceived?: bigint;\n /**\n * ADA to lock in the RealFi order UTxO and forward to the destination\n * output when the order is executed. Defaults to MIN_LOVELACE.\n */\n orderLovelace?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Mint amount must be positive\");\n }\n const orderLovelace = params.orderLovelace ?? MIN_LOVELACE;\n if (orderLovelace < MIN_LOVELACE) {\n throw new Error(\"Mint order lovelace cannot be less than MIN_LOVELACE\");\n }\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n // Convert USDr amount to reserve amount using ceiling division\n // to ensure enough reserve is locked for on-chain validation\n const settings = this.settingsConfig(await this.getVersionSettings());\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAmount = usdrToReserveCeil(params.amount, ra);\n // Mint is 1:1 reserve→USDR with no protocol fee in v1_0, so the user\n // receives exactly `amount`. Default the floor to `amount`; callers can\n // lower it if a future fee makes that too tight.\n const minReceived = params.minReceived ?? params.amount;\n assertPositiveMinReceived(\"Mint\", minReceived);\n return this._buildOrderTx({\n action: {\n OMint: {\n amount: params.amount,\n min_received: minReceived,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(orderLovelace, [reserveAssetId, reserveAmount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a redeem (burn) order: lock USDr, request reserve token redemption.\n */\n async buildRedeemOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n minReceived?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Redeem amount must be positive\");\n }\n const settings = this.settingsConfig(await this.getVersionSettings());\n const ra = findReserveAsset(settings, params.reserveAsset);\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n // burn.ak caps delivery at usdr_to_reserve(amount, ra), so the default\n // floor must use the configured reserve multiplier rather than assume 1:1.\n const minReceived = params.minReceived ?? usdrToReserve(params.amount, ra);\n assertPositiveMinReceived(\"Redeem\", minReceived);\n return this._buildOrderTx({\n action: {\n ORedeem: {\n amount: params.amount,\n min_received: minReceived,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a deposit order: lock reserve tokens, request treasury deposit.\n */\n async buildDepositOrderTx(params: {\n principal: bigint;\n yield: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.principal < 0n) {\n throw new Error(\"Deposit principal must be non-negative\");\n }\n if (params.principal === 0n && params.yield === 0n) {\n throw new Error(\"Deposit must have non-zero principal or yield\");\n }\n const settings = this.settingsConfig(await this.getVersionSettings());\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n\n let valueToLock: Core.Value;\n\n if (params.yield >= 0n) {\n // POSITIVE YIELD: need reserve backing for BOTH principal AND yield.\n // Contract validates: reserve_to_usdr(treasury_delta) >= principal + yield\n // So we must lock: usdrToReserveCeil(principal + yield) reserve tokens\n const totalUSDrBacking = params.principal + params.yield;\n if (totalUSDrBacking > 0n) {\n const reserveAmount = usdrToReserveCeil(totalUSDrBacking, ra);\n valueToLock = makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]);\n } else {\n valueToLock = makeValue(MIN_LOVELACE);\n }\n } else {\n // NEGATIVE YIELD: lock principal (in reserve) + unstaked yield share (in USDr).\n // The staked share comes from the vault (validated on-chain via vault USDr change).\n const principalReserve =\n params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n;\n\n valueToLock =\n principalReserve > 0n\n ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve])\n : makeValue(MIN_LOVELACE);\n\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n // Fetch current state to calculate yield split\n const { parsedTreasuryDatum } = await this.getTreasuryDatum();\n const vaultUtxo = (await this.getVaultDatum()).vaultUtxo;\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n\n const { unstakedYieldShare } = calculateYieldShares(\n params.yield,\n vaultUSDr,\n treasuryCirculating,\n );\n\n // Lock only the unstaked portion (negated since unstakedYieldShare is negative)\n if (unstakedYieldShare < 0n) {\n valueToLock = Value.merge(\n valueToLock,\n makeValue(0n, [stablecoinAssetId, -unstakedYieldShare]),\n );\n }\n }\n return this._buildOrderTx({\n action: {\n ODeposit: {\n principal: params.principal,\n yield: params.yield,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock,\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a withdraw order: lock min ADA, request reserve token withdrawal.\n */\n async buildWithdrawOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Withdraw amount must be positive\");\n }\n const settings = this.settingsConfig(await this.getVersionSettings());\n findReserveAsset(settings, params.reserveAsset);\n return this._buildOrderTx({\n action: {\n OWithdraw: {\n amount: params.amount,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a stake order: lock USDr, request sUSDr minting.\n */\n async buildStakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n minReceived?: bigint;\n slippageToleranceBps?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Stake amount must be positive\");\n }\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const minReceived =\n params.minReceived ??\n (await this.computeStakeMinReceived(\n params.amount,\n params.slippageToleranceBps,\n ));\n assertPositiveMinReceived(\"Stake\", minReceived);\n return this._buildOrderTx({\n action: {\n OStake: {\n amount: params.amount,\n min_received: minReceived,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a stake-order continuation from a completed swap's guaranteed USDr\n * output. The swap quote remains observable to the caller, while the SDK\n * owns the RealFi amount, exchange-rate quote, schema, and request address.\n */\n async buildStakeContinuation(\n params: IBuildStakeContinuationParams,\n ): Promise {\n const amount = params.swap.minReceived.amount;\n if (amount <= 0n) {\n throw new Error(\"Swap minReceived amount must be positive\");\n }\n\n const expectedSundaeAssetId = `${this.stablecoinPolicyId}.${this.assetNameHex}`;\n if (params.swap.minReceived.metadata.assetId !== expectedSundaeAssetId) {\n throw new Error(\n `Swap minReceived must be USDr (${expectedSundaeAssetId}), got ${params.swap.minReceived.metadata.assetId}`,\n );\n }\n\n const minReceived = await this.computeStakeMinReceived(\n amount,\n params.slippageToleranceBps,\n );\n assertPositiveMinReceived(\"Stake\", minReceived);\n const owner = await this.resolveOrderOwner(params.owner);\n\n return {\n address: this.orderScriptAddress,\n datum: this.serializeOrderDatum(\n {\n OStake: {\n amount,\n min_received: minReceived,\n },\n },\n params.destination,\n owner,\n params.data,\n ),\n };\n }\n\n protected async _buildUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n forfeit?: bigint;\n minReceived?: bigint;\n slippageToleranceBps?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n extraLabels?: Map;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Unstake amount must be positive\");\n }\n const forfeit = params.forfeit ?? 0n;\n if (forfeit < 0n) {\n throw new Error(\"Forfeit amount cannot be negative\");\n }\n\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n const minReceived =\n params.minReceived ??\n (await this.computeUnstakeMinReceived(\n params.amount,\n forfeit,\n params.slippageToleranceBps,\n ));\n // Also catches a full forfeit, where computeUnstakeMinReceived nets to 0:\n // unstake.ak's own comment defers that case to `min_received > 0`, i.e. the\n // batch-wide crash. Refuse to create the order instead.\n assertPositiveMinReceived(\"Unstake\", minReceived);\n\n return this._buildOrderTx({\n action: {\n OUnstake: {\n amount: params.amount,\n min_received: minReceived,\n forfeit,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n extraLabels: params.extraLabels,\n });\n }\n\n /**\n * Build an unstake order: lock sUSDr, request USDr release.\n *\n * The destination is automatically set to a native script address that\n * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }.\n * This means the released USDr can only be spent by the user after the\n * unlock time has passed.\n *\n * @param params.amount - Amount of sUSDr to unstake\n * @param params.destination - The user's actual destination (used to extract payment key hash)\n * @param params.unlockSlot - Slot number after which the user can spend the released USDr\n * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0)\n * @param params.slippageToleranceBps - Optional min-received tolerance override in basis points\n */\n async buildUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n unlockSlot: bigint;\n forfeit?: bigint;\n minReceived?: bigint;\n slippageToleranceBps?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n const timelockDestination = buildTimelockDestination(\n params.destination,\n params.unlockSlot,\n );\n const extraLabels = new Map([\n [\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(params.destination, params.unlockSlot),\n ],\n ]);\n\n return this._buildUnstakeOrderTx({\n amount: params.amount,\n destination: timelockDestination,\n forfeit: params.forfeit,\n minReceived: params.minReceived,\n slippageToleranceBps: params.slippageToleranceBps,\n owner: params.owner,\n data: params.data,\n extraLabels,\n });\n }\n\n /**\n * Build a treasury-managed unstake order that wraps the destination in a\n * native timelock script controlled by the order owner.\n *\n * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps\n * treasury multisig ownership on the released USDr while enforcing the same\n * unlock slot used by the retail unstake helper. The owner must be convertible\n * to a Cardano native script.\n */\n async buildTreasuryUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n unlockSlot: bigint;\n forfeit?: bigint;\n minReceived?: bigint;\n slippageToleranceBps?: bigint;\n owner: MultisigScript;\n data?: PlutusData;\n }): Promise {\n const nativeScript = buildMultisigTimelockNativeScript(\n params.owner,\n params.unlockSlot,\n );\n const timelockDestination: Destination = {\n address: {\n payment_credential: { Script: [nativeScript.hash()] },\n stake_credential: params.destination.address.stake_credential,\n },\n datum: \"NoDatum\",\n };\n\n // Attach the unstake metadata (label 55534472) exactly like the retail\n // path (buildUnstakeOrderTx). track-chain requires this label to index the\n // order; without it the confirmed unstake output is silently dropped\n // (WTB-1466). Mirror retail precisely: the metadatum is built from the\n // user-supplied destination (params.destination), not the derived timelock\n // destination, and carries the same unlock_time.\n const extraLabels = new Map([\n [\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(params.destination, params.unlockSlot),\n ],\n ]);\n\n const tx = await this._buildUnstakeOrderTx({\n amount: params.amount,\n destination: timelockDestination,\n forfeit: params.forfeit,\n minReceived: params.minReceived,\n slippageToleranceBps: params.slippageToleranceBps,\n owner: params.owner,\n data: params.data,\n extraLabels,\n });\n\n return { tx, nativeScript };\n }\n\n /**\n * Compute the default `min_received` (output sUSDR floor) for a stake order\n * by reading the current staking-vault exchange rate and applying a\n * slippage tolerance buffer.\n *\n * Tolerance resolution: per-call > SDK-level (defaultSlippageToleranceBps)\n * > built-in 50bps (0.5%).\n *\n * Yield accrual moves `vault_usdr` up over time, so shares-per-USDR shrinks\n * between order placement and execution. The buffer protects the user from\n * receiving fewer shares than they expected at sign time.\n *\n * Bootstrap edge case: when the vault is empty (no USDR locked or no sUSDR\n * circulating), the rate is treated as 1:1 and the buffer is skipped.\n */\n protected async computeStakeMinReceived(\n amount: bigint,\n perCallToleranceBps?: bigint,\n ): Promise {\n const toleranceBps =\n this.resolveStakeSlippageToleranceBps(perCallToleranceBps);\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const { vaultUtxo, parsedVaultDatum } = await this.getVaultDatum();\n const vaultUsdr = this.settledVaultBacking(\n parsedVaultDatum,\n vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n,\n );\n const circulatingSusdr = parsedVaultDatum.circulating_susdr;\n if (vaultUsdr === 0n || circulatingSusdr === 0n) {\n return amount;\n }\n const expected = (amount * circulatingSusdr) / vaultUsdr;\n return (expected * (10000n - toleranceBps)) / 10000n;\n }\n\n protected resolveStakeSlippageToleranceBps(\n perCallToleranceBps?: bigint,\n ): bigint {\n const toleranceBps =\n perCallToleranceBps ?? this.defaultSlippageToleranceBps ?? 50n;\n if (toleranceBps < 0n || toleranceBps > 10_000n) {\n throw new Error(\"Slippage tolerance must be between 0 and 10000 bps\");\n }\n return toleranceBps;\n }\n\n /**\n * Compute the default `min_received` (output USDR floor) for an unstake\n * order by reading the current staking-vault exchange rate.\n *\n * `forfeit` is subtracted from the gross expected USDR, then a slippage\n * tolerance protects the order from quote/provider drift. Tolerance\n * resolution is per-call > SDK-level > built-in 50bps (0.5%).\n *\n * Bootstrap edge case: when the vault is empty, the rate is treated as 1:1.\n */\n protected async computeUnstakeMinReceived(\n amount: bigint,\n forfeit: bigint,\n perCallToleranceBps?: bigint,\n ): Promise {\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const { vaultUtxo, parsedVaultDatum } = await this.getVaultDatum();\n const vaultUsdr = this.settledVaultBacking(\n parsedVaultDatum,\n vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n,\n );\n const circulatingSusdr = parsedVaultDatum.circulating_susdr;\n const expectedGross =\n vaultUsdr === 0n || circulatingSusdr === 0n\n ? amount\n : (amount * vaultUsdr) / circulatingSusdr;\n const expectedNet = expectedGross > forfeit ? expectedGross - forfeit : 0n;\n const toleranceBps =\n this.resolveStakeSlippageToleranceBps(perCallToleranceBps);\n return (expectedNet * (10000n - toleranceBps)) / 10000n;\n }\n\n /**\n * Build a direct mint order: mint USDr without reserve asset backing.\n * Used for fiat wire scenarios where reserve arrives off-chain.\n */\n async buildDirectMintOrderTx(params: {\n amount: bigint;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Direct mint amount must be positive\");\n }\n // DirectMint orders only need min ADA - no reserve tokens\n return this._buildOrderTx({\n action: { ODirectMint: { amount: params.amount } },\n valueToLock: makeValue(MIN_LOVELACE),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a direct burn order: burn USDr without reserve asset redemption.\n * Used for fiat wire scenarios where reserve is sent off-chain.\n */\n async buildDirectBurnOrderTx(params: {\n amount: bigint;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Direct burn amount must be positive\");\n }\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n // DirectBurn orders must lock the USDr being burned\n return this._buildOrderTx({\n action: { ODirectBurn: { amount: params.amount } },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n static buildTimelockNativeScript = buildTimelockNativeScript;\n static buildTimelockAddress = buildTimelockAddress;\n static buildMultisigTimelockNativeScript = buildMultisigTimelockNativeScript;\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Signed Payload and Signing\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build the V1_0 SignedPayload_ProtocolRedeemer from order inputs.\n * Returns both the CBOR hex string (for buildExecuteOrdersTx) and\n * the blake2b_256 hash (for CIP-30 signing).\n *\n * `alpha` is the batch's yield split, required by versions whose Deposit\n * action carries one (v1_1_rc1+) and rejected everywhere else. It is a\n * parameter of the batch, chosen once by whoever created it and read back from\n * the backend by every co-signer: on-chain, all signatures of a batch are\n * checked against ONE payload hash, so a signer that derived its own value\n * would produce bytes nobody else can co-sign.\n */\n async getSignedPayloadFromOrderInputs(\n orderInputs: Core.TransactionInput[],\n alpha?: IYieldSplitAlpha,\n ): Promise<{ signedPayload: string; payloadHash: string }> {\n if (orderInputs.length === 0) {\n throw new Error(\"At least one order input is required\");\n }\n\n const sortedInputs = sortOrderInputs(orderInputs);\n const nonce = buildNonceFromUtxo(sortedInputs[0]!) as Nonce;\n\n const resolvedUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedInputs);\n\n let actionType: TOrderActionType | null = null;\n const exchangeRequests: ExchangeRequestV1[] = [];\n const treasuryRequests: TreasuryRequestV1[] = [];\n const stakeRequests: StakeRequestV1[] = [];\n const directRequests: DirectRequestV1[] = [];\n\n for (const utxo of resolvedUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1;\n const origin = {\n transaction_id: utxo.input().transactionId().toString(),\n output_index: utxo.input().index(),\n };\n\n const parsed = this.classifyOrderAction(datum);\n\n // WTB-1764: the validators check each request inside one zip_fold via\n // `expect validation(request)`, so a request that fails its predicate\n // crashes the WHOLE execution transaction — every valid order batched\n // alongside it dies too, with only an opaque \"the validator crashed\"\n // to go on. Refuse to package it, and say which order it was.\n const screened = await this.screenOrderForExecution(utxo, parsed);\n if (!screened.ok) {\n throw new Error(\n `Order ${origin.transaction_id}#${origin.output_index} cannot be executed: ` +\n `${screened.reason}. Every order batched with it would crash on-chain.`,\n );\n }\n\n if (actionType === null) {\n actionType = parsed.actionType;\n } else if (actionType !== parsed.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n if (parsed.actionType === \"mint\" || parsed.actionType === \"burn\") {\n exchangeRequests.push({\n destination: datum.destination,\n amount: parsed.amount,\n min_received: parsed.minReceived ?? 0n,\n origin,\n reserve_asset: parsed.reserveAsset!,\n });\n } else if (\n parsed.actionType === \"deposit\" ||\n parsed.actionType === \"withdraw\"\n ) {\n treasuryRequests.push(this.buildTreasuryRequest(datum, parsed, origin));\n } else if (\n parsed.actionType === \"stake\" ||\n parsed.actionType === \"unstake\"\n ) {\n stakeRequests.push({\n destination: datum.destination,\n amount: parsed.amount,\n min_received: parsed.minReceived ?? 0n,\n origin,\n forfeit: parsed.forfeit ?? 0n,\n });\n } else {\n directRequests.push({\n destination: datum.destination,\n amount: parsed.amount,\n origin,\n });\n }\n }\n\n // Only a deposit splits yield. Silently dropping an alpha here would let a\n // caller believe it had parameterised a batch that ignores the value.\n if (alpha && actionType !== \"deposit\") {\n throw new Error(\n `a ${actionType} batch takes no yield-split alpha (only a deposit splits yield)`,\n );\n }\n if (actionType === \"deposit\") {\n const batchVerdict = screenDepositBatch(\n treasuryRequests.map((request) => ({\n actionType: \"deposit\",\n amount: request.amount,\n yield: request.yield,\n })),\n );\n if (!batchVerdict.ok) {\n throw new Error(\n `${batchVerdict.reason}. Every order batched with it would crash on-chain.`,\n );\n }\n }\n\n let action: ProtocolRedeemerV1;\n switch (actionType) {\n case \"mint\":\n action = { Mint: { requests: exchangeRequests } };\n break;\n case \"burn\":\n action = { Burn: { requests: exchangeRequests } };\n break;\n case \"withdraw\":\n action = { Withdraw: { requests: treasuryRequests } };\n break;\n case \"deposit\":\n action = await this.buildDepositAction(treasuryRequests, alpha);\n break;\n case \"stake\":\n action = { Stake: { requests: stakeRequests } };\n break;\n case \"unstake\":\n action = { Unstake: { requests: stakeRequests } };\n break;\n case \"direct_mint\":\n action = { DirectMint: { requests: directRequests } };\n break;\n case \"direct_burn\":\n action = { DirectBurn: { requests: directRequests } };\n break;\n default:\n throw new Error(\"No orders to process\");\n }\n\n const payload: SignedPayload_ProtocolRedeemerV1 = {\n action,\n nonce,\n };\n const serialized = Data.serialize(\n this.signing.SignedPayload_ProtocolRedeemerV1,\n payload,\n );\n const signedPayload = serialized.toCbor().toString();\n const payloadHash = blake2b_256(HexBlob(signedPayload));\n\n return { signedPayload, payloadHash };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Execute Orders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to execute orders.\n *\n * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake,\n * direct_mint, direct_burn.\n */\n async buildExecuteOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n signedPayload: string;\n signatures: Tuple_VerificationKey_COSESign1[];\n /**\n * Per-order fees retained by the protocol, keyed by `${txHash}#${index}`,\n * in the action's output unit (USDr for Mint, reserve for Burn, sUSDr for\n * Stake, USDr for Unstake). Computed and locked by the Go backend at the\n * order's index time. Missing entries default to 0 (no fee retained).\n * The SDK never recomputes a fee — it just subtracts this absolute value\n * from each user's destination output.\n */\n fees?: Map;\n }): Promise {\n const {\n orderInputs,\n signedPayload: signedPayloadCbor,\n signatures,\n fees,\n } = params;\n\n // Deserialize CBOR hex to object for internal use\n const signedPayload = parse(\n this.signing.SignedPayload_ProtocolRedeemerV1,\n PlutusData.fromCbor(HexBlob(signedPayloadCbor)),\n ) as SignedPayload_ProtocolRedeemerV1;\n\n // 1. Sort and resolve order UTxOs\n const sortedOrderInputs = sortOrderInputs(orderInputs);\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs);\n\n // 2. Parse orders and validate same type. The fees map (if any) stamps\n // each IOrderInfo with the locked fee that buildXxxExecute will subtract.\n const orderInfos = this.parseOrderInfos(orderUtxos, fees);\n const actionType = orderInfos[0]!.actionType;\n\n // 3. Get protocol settings\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const settings = this.settingsConfig(parsedProxyDatum.settings);\n\n // 4. Determine what we need\n const needsTreasury = [\n \"mint\",\n \"burn\",\n \"withdraw\",\n \"deposit\",\n \"direct_mint\",\n \"direct_burn\",\n ].includes(actionType);\n const needsVault = [\"stake\", \"unstake\", \"deposit\"].includes(actionType);\n\n // 5. Get script reference inputs\n // V1.0 requires the orchestrator and the relevant sub-validator script\n const isMintAction = [\n \"mint\",\n \"burn\",\n \"direct_mint\",\n \"direct_burn\",\n ].includes(actionType);\n const isStakeAction = [\"stake\", \"unstake\"].includes(actionType);\n\n const scriptHashesNeeded: Record = {\n protocol: this.protocolScriptHash,\n order: this.orderScriptHash,\n };\n if (isMintAction) {\n scriptHashesNeeded.protocolMint = this.protocolMintScriptHash;\n } else if (isStakeAction) {\n scriptHashesNeeded.protocolStake = this.protocolStakeScriptHash;\n } else {\n scriptHashesNeeded.protocolManagement = this.protocolManagementScriptHash;\n }\n if (needsTreasury) {\n scriptHashesNeeded.treasury = this.treasuryScriptHash;\n }\n if (needsVault) {\n scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash;\n }\n const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded);\n\n // 6. Fetch treasury and vault if needed\n let treasuryUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedTreasuryDatum: V0_1TreasuryDatum | undefined;\n if (needsTreasury) {\n const treasuryResult = await this.getTreasuryDatum();\n treasuryUtxo = treasuryResult.treasuryUtxo;\n parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum;\n }\n\n let vaultUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedVaultDatum: TVaultDatum | undefined;\n if (needsVault) {\n const vaultResult = await this.getVaultDatum();\n vaultUtxo = vaultResult.vaultUtxo;\n parsedVaultDatum = vaultResult.parsedVaultDatum;\n }\n\n // 7. Gather wallet UTxOs so we can include them in index calculations.\n const walletUtxos = await this.blaze.wallet.getUnspentOutputs();\n const excludedInputIds = new Set();\n const utxoKey = (inp: Core.TransactionInput) =>\n `${inp.transactionId().toString()}#${inp.index().toString()}`;\n // Exclude script inputs (order, treasury, vault)\n for (const orderInfo of orderInfos) {\n excludedInputIds.add(utxoKey(orderInfo.utxo.input()));\n }\n if (treasuryUtxo) {\n excludedInputIds.add(utxoKey(treasuryUtxo.input()));\n }\n if (vaultUtxo) {\n excludedInputIds.add(utxoKey(vaultUtxo.input()));\n }\n // Exclude reference inputs (must be disjoint from regular inputs)\n excludedInputIds.add(utxoKey(proxyUtxo.input()));\n for (const refUtxo of Object.values(refInputs)) {\n if (refUtxo) {\n excludedInputIds.add(utxoKey(refUtxo.input()));\n }\n }\n const feeUtxos = walletUtxos.filter(\n (utxo) => !excludedInputIds.has(utxoKey(utxo.input())),\n );\n\n // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex).\n const allInputRefs: Core.TransactionInput[] = orderInfos.map((o) =>\n o.utxo.input(),\n );\n if (treasuryUtxo) {\n allInputRefs.push(treasuryUtxo.input());\n }\n if (vaultUtxo) {\n allInputRefs.push(vaultUtxo.input());\n }\n for (const feeUtxo of feeUtxos) {\n allInputRefs.push(feeUtxo.input());\n }\n\n const sortedAllInputRefs = [...allInputRefs].sort((a, b) => {\n const txA = a.transactionId().toString();\n const txB = b.transactionId().toString();\n if (txA < txB) return -1;\n if (txA > txB) return 1;\n return Number(a.index()) - Number(b.index());\n });\n\n const findInputIdx = (input: Core.TransactionInput): bigint => {\n const idx = sortedAllInputRefs.findIndex(\n (r) =>\n r.transactionId().toString() === input.transactionId().toString() &&\n r.index() === input.index(),\n );\n return BigInt(idx);\n };\n\n const treasuryInputIdx = treasuryUtxo\n ? findInputIdx(treasuryUtxo.input())\n : 0n;\n const vaultInputIdx = vaultUtxo\n ? findInputIdx(vaultUtxo.input())\n : undefined;\n\n // 8a. Correlate order inputs to signed request indices via origin fields.\n // When all orders are present this produces the same identity mapping as before.\n // When a subset is passed (partial execution), it maps each input to the\n // correct request index in the signed payload.\n const signedRequests = getRequestsFromAction(signedPayload.action);\n const originToRequestIdx = new Map();\n for (let i = 0; i < signedRequests.length; i++) {\n const o = signedRequests[i]!.origin;\n originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i);\n }\n\n const inputToRequests: bigint[] = [];\n const requestToOutputs: bigint[] = [];\n for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) {\n const input = orderInfos[outputIdx]!.utxo.input();\n const key = `${input.transactionId()}#${input.index()}`;\n const requestIdx = originToRequestIdx.get(key);\n if (requestIdx === undefined) {\n throw new Error(`Order input ${key} not found in signed payload`);\n }\n inputToRequests.push(BigInt(requestIdx));\n requestToOutputs.push(BigInt(outputIdx));\n }\n\n // 9. Build outputs and compute output indices\n const numDestOutputs = orderInfos.length;\n\n // For deposit with positive yield, the yield pot output is inserted after destinations\n let numExtraOutputs = 0;\n if (actionType === \"deposit\") {\n const totalYield = orderInfos.reduce(\n (sum, o) => sum + (o.yield ?? 0n),\n 0n,\n );\n if (totalYield > 0n) {\n const vaultValue = vaultUtxo!.output().amount();\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum!.circulating_supply;\n // Use the signed split (rc1 echoes alpha; v1_0 recomputes) so pot-output\n // existence/indexing agrees with buildDepositExecute and the validator.\n const { unstakedYieldShare } = this.resolveDepositYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n signedPayload.action,\n );\n if (unstakedYieldShare > 0n) {\n numExtraOutputs = 1;\n }\n }\n }\n\n // For unstake, add yield pot output if forfeit is non-zero.\n if (actionType === \"unstake\") {\n const totalForfeit = orderInfos.reduce(\n (sum, o) => sum + (o.forfeit ?? 0n),\n 0n,\n );\n if (totalForfeit > 0n) {\n numExtraOutputs = 1;\n }\n }\n\n const treasuryOutputIdx = needsTreasury\n ? BigInt(numDestOutputs + numExtraOutputs)\n : 0n;\n const vaultOutputIdx = needsVault\n ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0))\n : undefined;\n\n // 10. Build ExtraProtocolRedeemer\n const extra: ExtraProtocolRedeemerV1 = {\n request_to_outputs: requestToOutputs,\n input_to_requests: inputToRequests,\n treasury_input_idx: treasuryInputIdx,\n treasury_output_idx: treasuryOutputIdx,\n vault_input_idx: vaultInputIdx,\n vault_output_idx: vaultOutputIdx,\n };\n\n // 11. Build SignedRedeemer (versions may wrap it in a dispatch enum)\n const serializedSignedRedeemer =\n this.serializeOrchestratorWithdrawalRedeemer({\n extra,\n payload: signedPayload,\n signatures,\n });\n\n const executeRedeemer = Data.serialize(\n this.schemas.OrderRedeemerV1,\n \"Execute\",\n );\n\n // 12. Build the transaction\n const tx = this.newOrderTransaction();\n\n // Add order inputs with Execute redeemer\n for (const orderInfo of orderInfos) {\n tx.addInput(orderInfo.utxo, executeRedeemer);\n }\n\n // Add wallet fee inputs explicitly\n for (const feeUtxo of feeUtxos) {\n tx.addInput(feeUtxo);\n }\n\n // Add reference inputs\n tx.addReferenceInput(refInputs.protocol!);\n tx.addReferenceInput(refInputs.order!);\n tx.addReferenceInput(proxyUtxo);\n // V1.0 sub-validator reference inputs\n if (refInputs.protocolMint) {\n tx.addReferenceInput(refInputs.protocolMint);\n }\n if (refInputs.protocolStake) {\n tx.addReferenceInput(refInputs.protocolStake);\n }\n if (refInputs.protocolManagement) {\n tx.addReferenceInput(refInputs.protocolManagement);\n }\n if (refInputs.treasury) {\n tx.addReferenceInput(refInputs.treasury);\n }\n if (refInputs.stakingVault) {\n tx.addReferenceInput(refInputs.stakingVault);\n }\n\n // Add orchestrator withdrawal with signed redeemer\n const orchestratorRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: this.protocolScriptHash,\n },\n this.network,\n );\n tx.addWithdrawal(orchestratorRewardAccount, 0n, serializedSignedRedeemer);\n\n // Determine which sub-validator to use based on action type\n const subValidatorHash =\n actionType === \"mint\" ||\n actionType === \"burn\" ||\n actionType === \"direct_mint\" ||\n actionType === \"direct_burn\"\n ? this.protocolMintScriptHash\n : actionType === \"stake\" || actionType === \"unstake\"\n ? this.protocolStakeScriptHash\n : this.protocolManagementScriptHash; // deposit, withdraw\n\n // Add sub-validator withdrawal with void redeemer\n const subValidatorRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: subValidatorHash,\n },\n this.network,\n );\n const voidRedeemer = Data.Void();\n tx.addWithdrawal(subValidatorRewardAccount, 0n, voidRedeemer);\n\n // Build per-action-type outputs, minting, and state updates\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n\n switch (actionType) {\n case \"mint\":\n this.buildMintExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"burn\":\n this.buildBurnExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"withdraw\":\n this.buildWithdrawExecute(\n tx,\n orderInfos,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"deposit\":\n this.buildDepositExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n vaultUtxo!,\n parsedVaultDatum!,\n settings,\n signedPayload.action,\n );\n break;\n case \"stake\":\n this.buildStakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n );\n break;\n case \"unstake\":\n this.buildUnstakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n settings,\n );\n break;\n case \"direct_mint\":\n this.buildDirectMintExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n );\n break;\n case \"direct_burn\":\n this.buildDirectBurnExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n );\n break;\n }\n\n // Provide the mint proxy script for minting\n tx.provideScript(this.mintProxyScript);\n\n await this.applyExecutionValidityBounds(tx, {\n actionType,\n vaultUtxo,\n parsedVaultDatum,\n });\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Per-Action Execute Builders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint: reserve goes to treasury, USDr minted to destinations.\n *\n * The per-order fee (in USDr, locked at index time) is retained by the\n * treasury: the user receives `amount − fee` USDr while `amount` is still\n * minted, so the protocol pockets the difference via the treasury balance.\n */\n protected buildMintExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: TV1SettingsConfig,\n ): void {\n // The audited mint contract enforces `mint_amount == total_delivered`\n // and `circulating_supply` increases by `total_delivered` (cf.\n // utilities.ak::maintain_treasury_mint). So we mint and credit the\n // treasury for what users actually receive — `amount − fee` per order —\n // while the reserve consumed per request stays based on the full\n // signed `amount` (the user paid in reserve for the whole `amount`,\n // even though they receive less; the protocol keeps the spread in\n // reserve worth — this is the locked fee).\n const totalDelivered = orderInfos.reduce(\n (sum, o) => sum + (o.amount - o.fee),\n 0n,\n );\n\n // Destination outputs: send `amount − fee` USDr to each destination.\n for (const orderInfo of orderInfos) {\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserveCeil(orderInfo.amount, ra);\n const userAmount = orderInfo.amount - orderInfo.fee;\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [[reserveAssetId, reserveAmount]],\n [[stablecoinAssetId, userAmount]],\n ),\n );\n }\n\n // Mint USDr — exactly what was delivered (contract invariant).\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalDelivered]]),\n Data.Void(),\n );\n\n // Reserve deltas: based on the full signed amounts (unchanged by fees).\n const reserveDeltas = computeReserveDeltas(orderInfos, settings);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalDelivered,\n );\n }\n\n /**\n * Burn: USDr burned, reserve sent to destinations.\n *\n * The audited contract decreases circulating_supply by the FULL signed\n * `amount` (the user burns the whole `amount` of USDr) and the reserve\n * outflow per asset equals what the user actually receives. The locked\n * fee (in reserve units) stays in the treasury — by paying out\n * `usdr_to_reserve(amount, ra) − fee` instead of the full natural\n * amount, the protocol pockets the difference.\n */\n protected buildBurnExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: TV1SettingsConfig,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send `usdr_to_reserve(amount, ra) − fee` reserve\n // to each destination. Track the actually-delivered amount per reserve\n // asset so we can subtract the fee from the treasury reserve outflow.\n const deliveredByAsset = new Map();\n for (const orderInfo of orderInfos) {\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const naturalReserve = usdrToReserve(-orderInfo.amount, ra);\n const reserveAmount = naturalReserve - orderInfo.fee;\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [[stablecoinAssetId, -orderInfo.amount]],\n [[reserveAssetId, reserveAmount]],\n ),\n );\n const assetKey = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1];\n deliveredByAsset.set(\n assetKey,\n (deliveredByAsset.get(assetKey) ?? 0n) + reserveAmount,\n );\n }\n\n // Burn USDr — full signed amount per request (totalAmount is negative).\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Reserve deltas: out by what we actually delivered (negated). The\n // protocol keeps the per-order fee inside the treasury balance.\n const reserveDeltas = new Map();\n for (const [assetKey, delivered] of deliveredByAsset.entries()) {\n reserveDeltas.set(assetKey, -delivered);\n }\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalAmount,\n );\n }\n\n /**\n * Withdraw: reserve sent to destinations, no mint/burn.\n */\n protected buildWithdrawExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: TV1SettingsConfig,\n ): void {\n // Destination outputs: send reserve tokens to each destination\n for (const orderInfo of orderInfos) {\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserve(orderInfo.amount, ra);\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [],\n [[reserveAssetId, reserveAmount]],\n ),\n );\n }\n\n // Update treasury: reserve decreases, no circulating_supply change\n const reserveDeltas = computeReserveDeltas(orderInfos, settings, true);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n 0n,\n );\n }\n\n /**\n * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot.\n */\n protected buildDepositExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: TVaultDatum,\n settings: TV1SettingsConfig,\n action: ProtocolRedeemerV1,\n ): void {\n const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n);\n\n // Calculate yield split. rc1 echoes the COSE-signed alpha; v1_0 recomputes\n // from live state. Must NOT re-derive independently from vault/treasury —\n // the validator checks the split against the signed action.\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n\n const { stakedYieldShare, unstakedYieldShare } =\n this.resolveDepositYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n action,\n );\n\n let remainingOrderUSDrToBurn =\n unstakedYieldShare < 0n ? -unstakedYieldShare : 0n;\n\n // Destination outputs: return any order surplus after protocol consumption.\n for (const orderInfo of orderInfos) {\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const yieldValue = orderInfo.yield ?? 0n;\n const usdrBacking =\n yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount;\n const reserveAmount = usdrToReserve(usdrBacking, ra);\n const consumedAssets: Array<[Core.AssetId, bigint]> = [\n [reserveAssetId, reserveAmount],\n ];\n\n if (remainingOrderUSDrToBurn > 0n) {\n const orderUSDr =\n orderInfo.utxo\n .output()\n .amount()\n .multiasset()\n ?.get(stablecoinAssetId) ?? 0n;\n const consumedUSDr =\n orderUSDr < remainingOrderUSDrToBurn\n ? orderUSDr\n : remainingOrderUSDrToBurn;\n if (consumedUSDr > 0n) {\n consumedAssets.push([stablecoinAssetId, consumedUSDr]);\n remainingOrderUSDrToBurn -= consumedUSDr;\n }\n }\n\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(orderInfo, consumedAssets),\n );\n }\n\n if (totalYield > 0n) {\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n\n if (unstakedYieldShare > 0n) {\n // The yield pot is a script address in production (WTB-1172), so\n // build the output directly with NoDatum.\n addDestinationOutput(\n tx,\n this.network,\n { address: settings.unstaked_yield_pot, datum: \"NoDatum\" },\n makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare]),\n );\n }\n } else if (totalYield < 0n) {\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n }\n\n // Update treasury\n const reserveDeltas = new Map();\n for (const orderInfo of orderInfos) {\n const assetId = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1];\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const yieldValue = orderInfo.yield ?? 0n;\n\n const usdrBacking =\n yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount;\n\n const reserveAmount = usdrToReserve(usdrBacking, ra);\n reserveDeltas.set(\n assetId,\n (reserveDeltas.get(assetId) ?? 0n) + reserveAmount,\n );\n }\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalYield,\n );\n\n // Update vault. Datum construction is delegated so versions with a\n // yield-diffusion window (v1_1_rc1) can set it from the batch's requests;\n // the v1_0 default just moves the vault USDr by the staked share.\n this.updateDepositVaultOutput(tx, vaultUtxo, parsedVaultDatum, {\n stakedYieldShare,\n totalYield,\n orderInfos,\n });\n }\n\n /**\n * Version hook: lock the post-deposit vault output. v1_0 / v1_0_rc1 keep the\n * one-field datum and simply add `stakedYieldShare` USDr to the vault.\n * Versions with time-diffused yield override this to roll the staked share\n * into the diffusion window (`validate_deposit_diffusion` in deposit.ak).\n */\n protected updateDepositVaultOutput(\n tx: TxBuilder,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: TVaultDatum,\n ctx: {\n stakedYieldShare: bigint;\n totalYield: bigint;\n orderInfos: IOrderInfo[];\n },\n ): void {\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n 0n,\n ctx.stakedYieldShare,\n );\n }\n\n /**\n * Stake: USDr locked in vault, sUSDr minted to destinations.\n *\n * Stake is not fee-filtered (no protocol fee retained on stake), so the\n * vault receives the full `amount` USDr and mints sUSDr at the natural\n * rate.\n */\n protected buildStakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: TVaultDatum,\n ): void {\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n // Rate is quoted against settled backing (v1_0: full balance; v1_1_rc1:\n // balance minus not-yet-diffused pending yield).\n const settledBacking = this.settledVaultBacking(\n parsedVaultDatum,\n vaultUSDr,\n );\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n let totalUSDrToVault = 0n;\n let totalSUSDrMinted = 0n;\n\n for (const orderInfo of orderInfos) {\n const usDrToVault = orderInfo.amount;\n totalUSDrToVault += usDrToVault;\n\n let sUSDrAmount: bigint;\n if (circulatingSUSDr === 0n || settledBacking === 0n) {\n // Bootstrap rate is 1:1 (cf. stake.ak).\n sUSDrAmount = usDrToVault;\n } else {\n sUSDrAmount = (usDrToVault * circulatingSUSDr) / settledBacking;\n }\n totalSUSDrMinted += sUSDrAmount;\n\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [[stablecoinAssetId, usDrToVault]],\n [[sUSDrAssetId, sUSDrAmount]],\n ),\n );\n }\n\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]),\n Data.Void(),\n );\n\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n totalSUSDrMinted,\n totalUSDrToVault,\n );\n }\n\n /**\n * Unstake: sUSDr burned, USDr sent to user's destination address.\n * V1_0: Supports forfeit parameter - forfeited USDr goes to yield pot.\n */\n protected buildUnstakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: TVaultDatum,\n settings: TV1SettingsConfig,\n ): void {\n const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n // Entitlement is quoted against settled backing (v1_0: full balance;\n // v1_1_rc1: balance minus not-yet-diffused pending yield).\n const settledBacking = this.settledVaultBacking(\n parsedVaultDatum,\n vaultUSDr,\n );\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n if (circulatingSUSDr === 0n) {\n throw new Error(\"Cannot unstake: no sUSDr in circulation\");\n }\n\n // The user receives `entitled − forfeit` USDr. Forfeit goes to the\n // unstaked yield pot; the vault decreases by the full natural entitlement\n // for each order. (Unstake is not fee-filtered.)\n let totalUSDrLeavingVault = 0n;\n let totalForfeit = 0n;\n\n for (const orderInfo of orderInfos) {\n const uSDrEntitled =\n (orderInfo.amount * settledBacking) / circulatingSUSDr;\n const forfeit = orderInfo.forfeit ?? 0n;\n const uSDrAmount = uSDrEntitled - forfeit;\n\n totalUSDrLeavingVault += uSDrEntitled;\n totalForfeit += forfeit;\n\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [[sUSDrAssetId, orderInfo.amount]],\n [[stablecoinAssetId, uSDrAmount]],\n ),\n );\n }\n\n // Send forfeited USDr to yield pot if any\n const totalYieldPot = totalForfeit;\n if (totalYieldPot > 0n) {\n // Script pot in production (WTB-1172) — see buildDepositExecute.\n addDestinationOutput(\n tx,\n this.network,\n { address: settings.unstaked_yield_pot, datum: \"NoDatum\" },\n makeValue(MIN_LOVELACE, [stablecoinAssetId, totalYieldPot]),\n );\n }\n\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]),\n Data.Void(),\n );\n\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n -totalSUSDrBurned,\n -totalUSDrLeavingVault,\n );\n }\n\n /**\n * DirectMint: Mint USDr without reserve asset flow.\n * USDr is minted to destinations, treasury circulating_supply increases.\n * NO reserve asset changes.\n */\n protected buildDirectMintExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send USDr to each destination\n for (const orderInfo of orderInfos) {\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(\n orderInfo,\n [],\n [[stablecoinAssetId, orderInfo.amount]],\n ),\n );\n }\n\n // Mint USDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Update treasury: circulating_supply increases, NO reserve changes\n this.updateTreasuryOutputNoReserve(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n totalAmount,\n );\n }\n\n /**\n * DirectBurn: Burn USDr without reserve asset flow.\n * USDr is burned, treasury circulating_supply decreases.\n * NO reserve asset changes, NO destination outputs (fiat sent off-chain).\n */\n protected buildDirectBurnExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n ): void {\n // totalAmount is negative for burns (from classifyOrderAction)\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Fiat is sent off-chain. On-chain, return the order value minus the\n // burned USDr to the destination.\n for (const orderInfo of orderInfos) {\n addDestinationOutput(\n tx,\n this.network,\n orderInfo.datum.destination,\n buildOrderDestinationValue(orderInfo, [\n [stablecoinAssetId, -orderInfo.amount],\n ]),\n );\n }\n\n // Burn USDr (totalAmount is negative)\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Update treasury: circulating_supply decreases, NO reserve changes\n this.updateTreasuryOutputNoReserve(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n totalAmount,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Cancel Orders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to cancel orders.\n */\n async buildCancelOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n destination?: Core.Address;\n availableSigners?: Set;\n versionHint?: TProtocolVersion; // version of the orders to cancel. Optional, only to ensure correct datum parsing.\n }): Promise {\n const { orderInputs, destination, availableSigners, versionHint } = params;\n\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(orderInputs);\n\n if (orderUtxos.length === 0) {\n throw new Error(\"No orders to cancel\");\n }\n\n const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput\n ? new Map([\n [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput],\n ])\n : undefined;\n\n const orderRefInputs = await resolveOrderReferenceInputs(\n this.blaze,\n orderUtxos,\n cachedOrderRefs,\n this.scriptDeploymentAddress,\n );\n\n const cancelRedeemer = Data.serialize(\n this.schemas.OrderRedeemerV1,\n \"Cancel\",\n );\n const destAddress =\n destination ?? (await this.blaze.wallet.getChangeAddress());\n\n const tx = this.newOrderTransaction();\n\n for (const orderRefInput of orderRefInputs.values()) {\n tx.addReferenceInput(orderRefInput);\n }\n\n // cache current version of order script reference input\n const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash);\n if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) {\n this.cachedReferenceInputs.orderRefInput = currentOrderRefInput;\n }\n\n const requiredSigners = new Set();\n\n for (const utxo of orderUtxos) {\n const owner = await parseCancelOwner(utxo, versionHint);\n for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) {\n requiredSigners.add(keyHash);\n }\n\n tx.addInput(utxo, cancelRedeemer);\n const outputValue = utxo.output().amount();\n addDirectOutput(tx, destAddress, outputValue);\n }\n\n const effectiveSigners = availableSigners\n ? new Set([...requiredSigners].filter((k) => availableSigners.has(k)))\n : requiredSigners;\n\n for (const keyHash of effectiveSigners) {\n tx.addRequiredSigner(Ed25519KeyHashHex(keyHash));\n }\n\n return tx;\n }\n\n /**\n * Build a transaction to recover funds from invalidated orders.\n * Only works when the protocol has been upgraded and the order validator\n * no longer matches the current protocol logic.\n *\n * IMPORTANT: Only works for orders with simple Signature owners.\n *\n * Output-at-same-index constraint: Each output must be at the same\n * transaction index as its corresponding input.\n */\n async buildInvalidatedOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n }): Promise {\n const { orderInputs } = params;\n\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(orderInputs);\n\n if (orderUtxos.length === 0) {\n throw new Error(\"No orders to invalidate\");\n }\n\n // Resolve references from the validators that actually hold the supplied\n // orders. A current SDK instance may be recovering same-schema orders left\n // at a superseded validator, so its own orderScriptHash is not necessarily\n // the script needed to spend these inputs.\n const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput\n ? new Map([\n [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput],\n ])\n : undefined;\n const orderRefInputs = await resolveOrderReferenceInputs(\n this.blaze,\n orderUtxos,\n cachedOrderRefs,\n this.scriptDeploymentAddress,\n );\n\n // The proxy UTxO is always required as a reference input. If the live\n // proxy datum no longer matches this SDK's schema, skip the client-side\n // upgrade check and rely on the validator's on-chain check instead.\n const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum();\n try {\n const parsedProxyDatum = parse(this.schemas.ProxyDatumV1, proxyDatum);\n const registry = this.settingsRegistry(parsedProxyDatum.settings);\n const isProtocolUpgraded =\n parsedProxyDatum.logic !== this.protocolScriptHash;\n const hasActiveOrder = [...orderRefInputs.keys()].some(\n (orderScriptHash) => orderScriptHash === registry.order,\n );\n\n if (hasActiveOrder && !isProtocolUpgraded) {\n throw new Error(\n \"Cannot use Invalidated redeemer: protocol has not been upgraded\",\n );\n }\n } catch (err) {\n if (\n err instanceof Error &&\n err.message ===\n \"Cannot use Invalidated redeemer: protocol has not been upgraded\"\n ) {\n throw err;\n }\n }\n\n const invalidatedRedeemer = Data.serialize(\n this.schemas.OrderRedeemerV1,\n \"Invalidated\",\n );\n\n // The order validator's Invalidated branch enforces\n // `outputs[index_of(self_input)] == owner_address`. The input index\n // is computed against the *full* canonical input sort, including any\n // wallet fee inputs. To make the alignment deterministic, pre-select\n // a single wallet UTxO to act as the fee input, build the canonical\n // sort across [orders + fee UTxO] up front, and lay outputs at\n // matching positions: owner payouts at order indices, a wallet\n // filler at the fee UTxO's index. Modeled on buildExecuteOrdersTx.\n const walletUtxos = await this.blaze.wallet.getUnspentOutputs();\n const walletAddress = await this.blaze.wallet.getChangeAddress();\n const utxoKey = (inp: Core.TransactionInput) =>\n `${inp.transactionId().toString()}#${inp.index().toString()}`;\n const excludedInputIds = new Set([\n utxoKey(proxyUtxo.input()),\n ...[...orderRefInputs.values()].map((refInput) =>\n utxoKey(refInput.input()),\n ),\n ...orderUtxos.map((u) => utxoKey(u.input())),\n ]);\n // 5 ADA buffer comfortably covers tx fees for any realistic invalidate\n // batch (1-20 inputs) plus min-UTxO for the change output Blaze appends.\n // Prefer an ADA-only input, but safely support a token-bearing one when\n // its explicit filler output still satisfies the ledger's min-ADA rule.\n const FEE_BUFFER = 5_000_000n;\n const feeCandidates = walletUtxos\n .filter((u) => !excludedInputIds.has(utxoKey(u.input())))\n .sort((a, b) => {\n const aHasAssets = (a.output().amount().multiasset()?.size ?? 0) > 0;\n const bHasAssets = (b.output().amount().multiasset()?.size ?? 0) > 0;\n return Number(aHasAssets) - Number(bHasAssets);\n });\n const feeUtxo = feeCandidates.find((u) => {\n const inputValue = u.output().amount();\n if (inputValue.coin() < FEE_BUFFER) return false;\n\n const fillerValue = new Core.Value(\n inputValue.coin() - FEE_BUFFER,\n inputValue.multiasset(),\n );\n const fillerOutput = new Core.TransactionOutput(\n walletAddress,\n fillerValue,\n );\n return (\n fillerValue.coin() >=\n calculateMinAda(fillerOutput, this.blaze.params.coinsPerUtxoByte)\n );\n });\n if (!feeUtxo) {\n throw new Error(\n \"buildInvalidatedOrdersTx: no wallet UTxO can cover fees while retaining its minimum ADA\",\n );\n }\n\n type TSortedItem =\n | {\n kind: \"order\";\n utxo: Core.TransactionUnspentOutput;\n ownerKeyHash: string;\n }\n | { kind: \"fee\"; utxo: Core.TransactionUnspentOutput };\n\n const items: TSortedItem[] = orderUtxos.map((utxo) => {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1;\n if (!(\"Signature\" in datum.owner)) {\n throw new Error(\n \"Invalidated redeemer only supports simple Signature owners\",\n );\n }\n return {\n kind: \"order\" as const,\n utxo,\n ownerKeyHash: datum.owner.Signature.key_hash,\n };\n });\n items.push({ kind: \"fee\" as const, utxo: feeUtxo });\n items.sort((a, b) => {\n const txA = a.utxo.input().transactionId().toString();\n const txB = b.utxo.input().transactionId().toString();\n if (txA < txB) return -1;\n if (txA > txB) return 1;\n return Number(a.utxo.input().index()) - Number(b.utxo.input().index());\n });\n\n const tx = this.newOrderTransaction();\n for (const orderRefInput of orderRefInputs.values()) {\n tx.addReferenceInput(orderRefInput);\n }\n tx.addReferenceInput(proxyUtxo);\n\n for (const item of items) {\n if (item.kind === \"order\") {\n const ownerCredential = Core.Credential.fromCore({\n type: Core.CredentialType.KeyHash,\n hash: Core.Hash28ByteBase16(item.ownerKeyHash),\n });\n const ownerAddress = addressFromCredentials(\n this.network,\n ownerCredential,\n );\n tx.addInput(item.utxo, invalidatedRedeemer);\n // Owner gets back the order's full value at the matching output\n // index. Per-input check `output_ada >= input_ada - tx.fee` holds\n // trivially because output == input here; the tx fee is absorbed\n // by the filler+change pair coming out of the wallet fee input.\n addDirectOutput(tx, ownerAddress, item.utxo.output().amount());\n } else {\n tx.addInput(item.utxo);\n // Wallet filler at the fee UTxO's canonical index. Sends value\n // back to the wallet minus FEE_BUFFER, which Blaze then splits\n // into the tx fee and an automatic change output (appended after\n // all explicit outputs, beyond any script-input index — so no\n // validator ever reads it).\n const inputValue = item.utxo.output().amount();\n const fillerValue = new Core.Value(\n inputValue.coin() - FEE_BUFFER,\n inputValue.multiasset(),\n );\n addDirectOutput(tx, walletAddress, fillerValue);\n }\n }\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Protected Helpers\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Parse order UTxOs into IOrderInfo objects and validate they are all the\n * same type. The optional `fees` map (keyed by `${txHash}#${outputIndex}`)\n * stamps each order with its locked fee in the action's output unit.\n * Missing entries default to 0 (no fee retained).\n */\n protected parseOrderInfos(\n orderUtxos: Core.TransactionUnspentOutput[],\n fees?: Map,\n ): IOrderInfo[] {\n const orderInfos: IOrderInfo[] = [];\n let expectedActionType: TOrderActionType | null = null;\n\n for (const utxo of orderUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1;\n const classified = this.classifyOrderAction(datum);\n\n if (expectedActionType === null) {\n expectedActionType = classified.actionType;\n } else if (expectedActionType !== classified.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n const input = utxo.input();\n const key = `${input.transactionId().toString()}#${input.index().toString()}`;\n const fee = fees?.get(key) ?? 0n;\n\n orderInfos.push({\n utxo,\n datum,\n actionType: classified.actionType,\n amount: classified.amount,\n yield: classified.yield,\n forfeit: classified.forfeit,\n minReceived: classified.minReceived,\n reserveAsset: classified.reserveAsset,\n fee,\n });\n }\n\n if (orderInfos.length === 0) {\n throw new Error(\"No orders to execute\");\n }\n\n return orderInfos;\n }\n\n /**\n * Full executability screen for one open order (WTB-1764): the datum\n * predicates plus the two value-dependent aborts (input funding, unsatisfiable\n * `min_received`). Every consumer that decides whether an order may join a\n * batch should call this rather than `screenOrderAction` alone — the datum-only\n * screen cannot see an underfunded UTxO, which is the cheapest batch-killer.\n *\n * Reads settings for the reserve multiplier on mint/burn. `getParsedProxyDatum`\n * memoises, so the per-order cost after the first call is local arithmetic —\n * safe for the approvals cron's whole-address sweep.\n */\n async screenOrderForExecution(\n utxo: Core.TransactionUnspentOutput,\n action: IClassifiedOrderAction,\n ): Promise {\n const datumVerdict = screenOrderAction(action);\n if (!datumVerdict.ok) {\n return datumVerdict;\n }\n const settings = await this.getValidatedScreeningSettings();\n return screenOrderUtxoFacts(\n action,\n await this.deriveOrderUtxoFacts(utxo, action, settings),\n );\n }\n\n /**\n * Derive the value-dependent facts {@link screenOrderUtxoFacts} needs. Mirrors\n * the per-action consumed asset and ceiling the validators use; see that\n * function's doc comment for the `.ak` line references.\n */\n protected async deriveOrderUtxoFacts(\n utxo: Core.TransactionUnspentOutput,\n action: IClassifiedOrderAction,\n settings: TV1SettingsConfig,\n ): Promise {\n const multiasset = utxo.output().amount().multiasset();\n const quantityOf = (assetId: Core.AssetId): bigint =>\n multiasset?.get(assetId) ?? 0n;\n // These are deployment settings, not datum fields. Let invalid trusted\n // configuration and provider failures propagate to the caller instead of\n // hiding an operational outage as a poisoned order.\n const usdrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n // Only deterministic datum-derived errors are a rejection: an unknown\n // reserve asset or an invalid asset id carried by the order datum.\n try {\n return this.deriveOrderUtxoFactsUnsafe(\n action,\n settings,\n quantityOf,\n usdrAssetId,\n );\n } catch (error) {\n return {\n consumedRequired: 0n,\n consumedLocked: 0n,\n unresolvable: error instanceof Error ? error.message : String(error),\n };\n }\n }\n\n private deriveOrderUtxoFactsUnsafe(\n action: IClassifiedOrderAction,\n settings: TV1SettingsConfig,\n quantityOf: (assetId: Core.AssetId) => bigint,\n usdrAssetId: Core.AssetId,\n ): IOrderUtxoFacts {\n switch (action.actionType) {\n case \"stake\":\n return {\n consumedRequired: action.amount,\n consumedLocked: quantityOf(usdrAssetId),\n };\n case \"unstake\":\n return {\n consumedRequired: action.amount,\n consumedLocked: quantityOf(\n Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex),\n ),\n };\n case \"mint\": {\n if (!action.reserveAsset) {\n return { consumedRequired: 0n, consumedLocked: 0n };\n }\n const ra = findReserveAsset(settings, action.reserveAsset);\n return {\n consumedRequired: usdrToReserveCeil(action.amount, ra),\n consumedLocked: quantityOf(\n Core.AssetId(action.reserveAsset[0] + action.reserveAsset[1]),\n ),\n // mint.ak:140 passes request.amount as max_delivered.\n maxDelivered: action.amount,\n };\n }\n case \"burn\": {\n // classifyOrderAction negates ORedeem.amount; the validator compares the\n // raw datum amount against the locked USDr.\n const rawAmount = -action.amount;\n if (!action.reserveAsset) {\n return {\n consumedRequired: rawAmount,\n consumedLocked: quantityOf(usdrAssetId),\n };\n }\n const ra = findReserveAsset(settings, action.reserveAsset);\n return {\n consumedRequired: rawAmount,\n consumedLocked: quantityOf(usdrAssetId),\n // burn.ak:136 passes usdr_to_reserve(|amount|, ra) as max_delivered.\n maxDelivered: usdrToReserve(rawAmount, ra),\n };\n }\n case \"direct_burn\":\n // direct_burn DOES have a per-order funding predicate\n // (`v1_0/direct_burn.ak:50`), unlike direct_mint. Same sign flip as burn.\n // Unreachable from the approvals cron, which routes direct actions\n // out-of-scope, but getSignedPayloadFromOrderInputs builds direct-burn\n // batches for the treasury-admin flow.\n return {\n consumedRequired: -action.amount,\n consumedLocked: quantityOf(usdrAssetId),\n };\n case \"deposit\": {\n if (!action.reserveAsset) {\n return { consumedRequired: 0n, consumedLocked: 0n };\n }\n const ra = findReserveAsset(settings, action.reserveAsset);\n const usdrBacking =\n (action.yield ?? 0n) >= 0n\n ? action.amount + (action.yield ?? 0n)\n : action.amount;\n return {\n consumedRequired: usdrToReserve(usdrBacking, ra),\n consumedLocked: quantityOf(\n Core.AssetId(action.reserveAsset[0] + action.reserveAsset[1]),\n ),\n };\n }\n case \"withdraw\":\n if (action.reserveAsset) {\n // Withdrawal consumes treasury funds, but the order's asset must be\n // registered or buildWithdrawExecute will fail after signing.\n findReserveAsset(settings, action.reserveAsset);\n }\n return { consumedRequired: 0n, consumedLocked: 0n };\n default:\n // direct_mint has no per-order funding predicate.\n return { consumedRequired: 0n, consumedLocked: 0n };\n }\n }\n\n private async getValidatedScreeningSettings(): Promise {\n const settings = this.settingsConfig(await this.getVersionSettings());\n for (const reserveAsset of settings.reserve_assets) {\n if (reserveAsset.numerator === 0n) {\n throw new Error(\"Reserve asset numerator must be non-zero\");\n }\n if (reserveAsset.denominator === 0n) {\n throw new Error(\"Reserve asset denominator must be non-zero\");\n }\n Core.AssetId(reserveAsset.asset[0] + reserveAsset.asset[1]);\n }\n return settings;\n }\n\n /**\n * Classify an order action from its datum.\n */\n protected classifyOrderAction(datum: OrderDatumV1): IClassifiedOrderAction {\n const action = datum.action;\n if (\"OMint\" in action) {\n return {\n actionType: \"mint\",\n amount: action.OMint.amount,\n minReceived: action.OMint.min_received,\n reserveAsset: action.OMint.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ORedeem\" in action) {\n return {\n actionType: \"burn\",\n amount: -action.ORedeem.amount,\n minReceived: action.ORedeem.min_received,\n reserveAsset: action.ORedeem.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ODeposit\" in action) {\n return {\n actionType: \"deposit\",\n amount: action.ODeposit.principal,\n yield: action.ODeposit.yield,\n reserveAsset: action.ODeposit.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OWithdraw\" in action) {\n return {\n actionType: \"withdraw\",\n amount: action.OWithdraw.amount,\n reserveAsset: action.OWithdraw.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OStake\" in action) {\n return {\n actionType: \"stake\",\n amount: action.OStake.amount,\n minReceived: action.OStake.min_received,\n isTreasuryAction: false,\n };\n } else if (\"OUnstake\" in action) {\n return {\n actionType: \"unstake\",\n amount: action.OUnstake.amount,\n forfeit: action.OUnstake.forfeit,\n minReceived: action.OUnstake.min_received,\n isTreasuryAction: false,\n };\n } else if (\"ODirectMint\" in action) {\n return {\n actionType: \"direct_mint\",\n amount: action.ODirectMint.amount,\n isTreasuryAction: true,\n };\n } else if (\"ODirectBurn\" in action) {\n return {\n actionType: \"direct_burn\",\n amount: -action.ODirectBurn.amount,\n isTreasuryAction: true,\n };\n }\n throw new Error(\"Unknown order action type\");\n }\n\n /**\n * Build the signed-payload treasury request for a deposit/withdraw order.\n *\n * v1_0 / v1_0_rc1 emit the four-field request. Versions whose on-chain\n * `TreasuryRequestV1` carries extra fields (v1_1_rc1's `diffusion_end`, which\n * the validator requires the signed request to echo from the order datum)\n * override this to add them; the return stays assignable to the v1_0 shape,\n * and the extra fields are encoded by the version's own payload schema value.\n */\n protected buildTreasuryRequest(\n datum: OrderDatumV1,\n parsed: IClassifiedOrderAction,\n origin: IRequestOrigin,\n ): TreasuryRequestV1 {\n return {\n destination: datum.destination,\n amount: parsed.amount,\n yield: parsed.yield ?? 0n,\n origin,\n reserve_asset: parsed.reserveAsset!,\n };\n }\n\n /**\n * Update treasury output with new reserve and circulating supply.\n */\n protected updateTreasuryOutput(\n tx: TxBuilder,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n reserveDeltas: Map,\n circulatingSupplyDelta: bigint,\n ): void {\n const newTreasuryDatum: V0_1TreasuryDatum = {\n circulating_supply:\n parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta,\n };\n const serializedTreasuryDatum = Data.serialize(\n V0_1TreasuryDatum,\n newTreasuryDatum,\n );\n\n tx.addInput(treasuryUtxo, Data.Void());\n\n const treasuryValue = treasuryUtxo.output().amount();\n\n let newTreasuryValue = makeValue(treasuryValue.coin(), [\n this.treasuryNFTAssetId,\n 1n,\n ]);\n\n const modifiedAssetIds = new Set([\n this.treasuryNFTAssetId.toString(),\n ]);\n for (const [reserveAssetId, delta] of reserveDeltas.entries()) {\n const currentReserve =\n treasuryValue.multiasset()?.get(Core.AssetId(reserveAssetId)) ?? 0n;\n const newReserve = currentReserve + delta;\n newTreasuryValue = Value.merge(\n newTreasuryValue,\n makeValue(0n, [Core.AssetId(reserveAssetId), newReserve]),\n );\n modifiedAssetIds.add(reserveAssetId);\n }\n\n const existingMultiasset = treasuryValue.multiasset();\n if (existingMultiasset) {\n for (const [assetId, amount] of existingMultiasset.entries()) {\n if (!modifiedAssetIds.has(assetId)) {\n newTreasuryValue = Value.merge(\n newTreasuryValue,\n makeValue(0n, [Core.AssetId(assetId), amount]),\n );\n }\n }\n }\n tx.lockAssets(\n this.treasuryAddress,\n newTreasuryValue,\n serializedTreasuryDatum,\n );\n }\n\n /**\n * Update treasury output without reserve changes (for DirectMint/DirectBurn).\n */\n protected updateTreasuryOutputNoReserve(\n tx: TxBuilder,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n circulatingSupplyDelta: bigint,\n ): void {\n const newTreasuryDatum: V0_1TreasuryDatum = {\n circulating_supply:\n parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta,\n };\n const serializedTreasuryDatum = Data.serialize(\n V0_1TreasuryDatum,\n newTreasuryDatum,\n );\n\n tx.addInput(treasuryUtxo, Data.Void());\n\n // Preserve exact treasury value (no reserve changes)\n const treasuryValue = treasuryUtxo.output().amount();\n tx.lockAssets(this.treasuryAddress, treasuryValue, serializedTreasuryDatum);\n }\n\n /**\n * Update vault output with new circulating_susdr and USDr balance.\n *\n * The datum construction is delegated to the version's\n * `buildUpdatedVaultDatum` seam; the value rebuild below is\n * datum-shape-agnostic and shared by all versions.\n */\n protected updateVaultOutput(\n tx: TxBuilder,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: TVaultDatum,\n sUSDrDelta: bigint,\n uSDrDelta: bigint = 0n,\n ): void {\n this.updateVaultOutputWithDatum(\n tx,\n vaultUtxo,\n this.buildUpdatedVaultDatum(parsedVaultDatum, sUSDrDelta),\n uSDrDelta,\n );\n }\n\n /**\n * Lock the vault output with an already-constructed datum, rebuilding its\n * USDr balance by `uSDrDelta`. The value rebuild is datum-shape-agnostic;\n * versions whose datum update needs more than `sUSDrDelta` (v1_1_rc1's\n * deposit diffusion window) build the datum themselves and call this.\n */\n protected updateVaultOutputWithDatum(\n tx: TxBuilder,\n vaultUtxo: Core.TransactionUnspentOutput,\n newVaultDatum: TVaultDatum,\n uSDrDelta: bigint = 0n,\n ): void {\n const serializedVaultDatum = Data.serialize(\n this.schemas.VaultDatumV1,\n newVaultDatum,\n );\n\n tx.addInput(vaultUtxo, Data.Void());\n\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n\n let newVaultValue = vaultUtxo.output().amount();\n if (uSDrDelta !== 0n) {\n const currentUSDr =\n newVaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const newUSDr = currentUSDr + uSDrDelta;\n newVaultValue = makeValue(newVaultValue.coin(), [\n this.stakingVaultNFTAssetId,\n 1n,\n ]);\n if (newUSDr > 0n) {\n newVaultValue = Value.merge(\n newVaultValue,\n makeValue(0n, [stablecoinAssetId, newUSDr]),\n );\n }\n const existingMultiasset = vaultUtxo.output().amount().multiasset();\n if (existingMultiasset) {\n for (const [assetId, amount] of existingMultiasset.entries()) {\n if (\n assetId !== this.stakingVaultNFTAssetId.toString() &&\n assetId !== stablecoinAssetId.toString()\n ) {\n newVaultValue = Value.merge(\n newVaultValue,\n makeValue(0n, [Core.AssetId(assetId), amount]),\n );\n }\n }\n }\n }\n\n tx.lockAssets(\n this.stakingVaultAddress,\n newVaultValue,\n serializedVaultDatum,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Reserve Asset Conversion Utilities\n // ─────────────────────────────────────────────────────────────────────────────\n\n protected async getVersionSettings(): Promise {\n const { parsedProxyDatum } = await this.getParsedProxyDatum();\n return parsedProxyDatum.settings;\n }\n}\n"],"mappings":"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c,CAACC,UAAU;UACpCtC;QACF,CAAC,CACH,CAAC;MACH;IACF;EACF;;EAEA;EACA;EACA;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAcuC,OAAOA,CAAA,EAAsB;IACzC,IAAI,CAAC,IAAI,CAAC7D,cAAc,EAAE;MACxB,MAAM,IAAI3B,KAAK,CACb,GAAG,IAAI,CAAC4B,OAAO,oJACjB,CAAC;IACH;IACA,OAAO,IAAI,CAACD,cAAc;EAC5B;;EAEA;AACF;AACA;AACA;;EAGE;AACF;AACA;AACA;;EAGE;AACF;AACA;AACA;AACA;;EAGE;AACF;AACA;AACA;AACA;;EAME;AACF;AACA;AACA;AACA;AACA;AACA;EACY8D,mBAAmBA,CAC3BC,iBAA8B,EAC9BvF,SAAiB,EACT;IACR,OAAOA,SAAS;EAClB;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAgBwF,4BAA4BA,CAC1CC,GAAc,EACdC,QAAgD,EACjC;IACf;EAAA;;EAGF;AACF;AACA;AACA;AACA;AACA;AACA;EACE,MAAgBC,kBAAkBA,CAChCtG,QAA6B,EAC7BuG,KAAwB,EACK;IAC7B,IAAIA,KAAK,EAAE;MACT,MAAM,IAAI/F,KAAK,CACb,GAAG,IAAI,CAAC4B,OAAO,mGACjB,CAAC;IACH;IACA,OAAO;MAAEjC,OAAO,EAAE;QAAEH;MAAS;IAAE,CAAC;EAClC;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACYwG,yBAAyBA,CACjC9F,UAAkB,EAClBC,SAAiB,EACjBC,mBAA2B,EAC3B6F,OAA2B,EAC+B;IAC1D,OAAOhG,oBAAoB,CAACC,UAAU,EAAEC,SAAS,EAAEC,mBAAmB,CAAC;EACzE;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACY8F,uCAAuCA,CAACC,QAIjD,EAAc;IACb,OAAO/J,IAAI,CAACgK,SAAS,CACnB,IAAI,CAACZ,OAAO,CAACa,sCAAsC,EACnDF,QACF,CAAC;EACH;;EAEA;EACA;EACA;;EAEA;AACF;AACA;EACE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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1/order-sanity.js b/modules/realfi-partner-sdk/dist/esm/sdk/v1/order-sanity.js new file mode 100644 index 0000000000..9913741acc --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1/order-sanity.js @@ -0,0 +1,216 @@ +/** + * Static, off-chain mirror of the per-request predicates the v1-family + * protocol validators apply to each request in an execution batch. + * + * Why this exists (WTB-1764): `process_exchange_requests`, + * `process_stake_requests` and `process_treasury_requests` + * (`contracts/lib/v1_0/utilities.ak`) validate every request in the batch + * inside one `zip_fold` via `expect validation(request)`. There is no + * per-request graceful exclusion — the first request that fails its predicate + * crashes the WHOLE execution transaction, taking down every valid order + * bundled alongside it. Order creation is permissionless and has no on-chain + * gate (sending funds + an inline datum to the order script address is a plain + * payment; no validator runs on receipt), so a single order carrying, say, + * `min_received = 0` is a cheap, repeatable denial-of-service against the whole + * execution pipeline. + * + * Every request that reaches a batch must therefore be screened off-chain + * first. This module is the one place that mirrors the on-chain predicates, so + * a validator change has a single off-chain counterpart to update. + * + * Two screens live here, because the validators abort the whole transaction from + * two kinds of check and only one of them is answerable from the datum alone: + * + * 1. {@link screenOrderAction} — the `process_*_requests` per-request predicates. + * Pure, datum-only. + * 2. {@link screenOrderUtxoFacts} — the checks that also need the order UTxO's + * value and (for mint/burn) the reserve multiplier: input funding and the + * statically-knowable deliverability ceiling. Callers derive the facts, since + * that is where the asset ids and settings live; `RealfiSDKV1Family` + * .screenOrderForExecution does both in one call. + * + * Still deliberately NOT covered, because it is not decidable from the order in + * isolation: predicates that move with live protocol state — unstake's + * `forfeit <= request_usdr`, and the stake/unstake deliverability ceilings, + * which follow the vault exchange rate between screening and execution. + * + * A caller with a narrower policy (the approvals cron accepts just the + * zero-principal, positive-yield deposit shape) also keeps that policy to + * itself; folding it in here would reject orders other first-party flows + * legitimately create and execute. + * + * | action | on-chain predicate | source | + * | -------- | ------------------------------------------------------- | ----------------------------- | + * | mint | `amount > 0 && min_received > 0` | `v1_0/mint.ak:86` | + * | burn | `amount < 0 && min_received > 0` | `v1_0/burn.ak:90` | + * | stake | `amount > 0 && min_received > 0 && forfeit == 0` | `v1_0/stake.ak:45-47` | + * | unstake | `amount > 0 && min_received > 0` (+ `forfeit >= 0`) | `v1_0/unstake.ak:77,101` | + * | deposit | `amount >= 0` | `v1_0/deposit.ak:67` | + * | withdraw | `amount > 0 && yield == 0` | `v1_0/withdraw.ak:73` | + * + * v1_1_rc1 carries the identical predicates. v1_0_rc1 does NOT — its datum has + * no `min_received` field at all and its predicates are amount-only + * (`v1_0_rc1/stake.ak:64`, `unstake.ak:64`), which is why an absent floor is + * treated as "no floor to check" below rather than as zero. + */ + +/** Machine-stable reason token for a rejected request. */ + +/** + * The subset of `IClassifiedOrderAction` the screen reads. Structural, so a + * full classified action is assignable without this module depending on the + * SDK family module (and without a test needing to construct one). + * + * Sign convention follows `classifyOrderAction`, which matches the on-chain + * request shape: `amount` is already negated for burn. + */ + +const OK = { + ok: true +}; +function reject(code, reason) { + return { + ok: false, + code, + reason + }; +} + +/** + * Screen one classified order action against the predicates the validator will + * apply to it. + * + * Unknown actions pass through. Every known action is checked because + * `getSignedPayloadFromOrderInputs` packages both the approvals and + * treasury-admin flows. + */ +export function screenOrderAction(action) { + const { + actionType + } = action; + + // Mint, burn, stake and unstake carry a user-signed output floor that the + // validator requires to be strictly positive — in the versions that HAVE one. + // v1_0_rc1's datum has no min_received field and its validators have no + // min_received predicate, so `undefined` means "this version has no floor to + // check", not "the floor is zero". The v1_0 / v1_1_rc1 schemas make the field + // mandatory, so a genuinely poisoned order always arrives as 0. + const floor = action.minReceived; + switch (actionType) { + case "mint": + case "stake": + case "unstake": + if (action.amount <= 0n) { + return reject("amount_not_positive", `Invalid ${actionType} amount (<= 0)`); + } + if (floor !== undefined && floor <= 0n) { + return reject("min_received_not_positive", `Invalid ${actionType} min_received (<= 0)`); + } + // Unstake's forfeit is user-supplied in the datum; a negative one crashes + // the batch on `expect r.forfeit >= 0` exactly like a zero min_received + // does. (Stake requests carry no datum forfeit — OStake has no such + // field, so the validator's `forfeit == 0` holds by construction.) + if (actionType === "unstake" && (action.forfeit ?? 0n) < 0n) { + return reject("forfeit_negative", "Invalid unstake forfeit (< 0)"); + } + return OK; + case "burn": + // classifyOrderAction negates ORedeem.amount, so the on-chain + // `amount < 0` check is the raw datum amount being positive. + if (action.amount >= 0n) { + return reject("amount_not_positive", "Invalid burn amount (<= 0)"); + } + if (floor !== undefined && floor <= 0n) { + return reject("min_received_not_positive", "Invalid burn min_received (<= 0)"); + } + return OK; + case "withdraw": + if (action.amount <= 0n) { + return reject("amount_not_positive", "Invalid withdraw amount (<= 0)"); + } + if ((action.yield ?? 0n) !== 0n) { + return reject("withdraw_yield_not_zero", "Invalid withdraw request (yield must be 0)"); + } + return OK; + case "deposit": + if (action.amount < 0n) { + return reject("deposit_principal_negative", "Invalid deposit principal (< 0)"); + } + return OK; + case "direct_mint": + if (action.amount <= 0n) { + return reject("amount_not_positive", "Invalid direct_mint amount (<= 0)"); + } + return OK; + case "direct_burn": + // classifyOrderAction negates ODirectBurn.amount to match the signed + // request and direct_burn.ak's required negative amount. + if (action.amount >= 0n) { + return reject("amount_not_positive", "Invalid direct_burn amount (<= 0)"); + } + return OK; + default: + return OK; + } +} + +/** + * Screen deposit predicates that the validator applies to the complete batch, + * after it has summed every request. This must not run per order: offsetting + * yields can make a non-empty pair unexecutable, while a zero/zero order can + * validly accompany a principal-bearing one. + */ +export function screenDepositBatch(actions) { + const { + principal, + totalYield + } = actions.reduce((totals, action) => ({ + principal: totals.principal + action.amount, + totalYield: totals.totalYield + (action.yield ?? 0n) + }), { + principal: 0n, + totalYield: 0n + }); + if (principal === 0n && totalYield === 0n) { + return reject("deposit_batch_empty", "Invalid deposit batch (principal and yield both total 0)"); + } + return OK; +} + +/** + * The value-dependent facts about an order UTxO that the validator checks but + * the datum alone cannot answer. The caller derives these because it owns the + * asset ids and the reserve multiplier from settings. + */ + +/** + * Screen the value-dependent aborts. Run alongside {@link screenOrderAction} — + * neither subsumes the other. + * + * Both conditions kill the whole transaction, not just the offending order: + * + * - **Underfunded input.** `validate_stake_inputs` / `validate_unstake_inputs` + * (`v1_0/utilities.ak:417`, `:443`) `expect` the locked quantity to cover + * `request.amount`; mint (`mint.ak:32`) and burn (`burn.ak:31`) fold the same + * comparison into an `and {}` whose `False` fails the enclosing `expect`. An + * order UTxO holding min-ADA and none of the consumed asset is therefore a + * complete batch-killer that costs the planter nothing but the min-ADA. + * - **Unsatisfiable floor.** `validate_destination_value` + * (`v1_0/utilities.ak:594-595`) `expect`s `min_delivered <= delivered <= + * max_delivered`. A `min_received` above the ceiling makes the pair + * unsatisfiable no matter what the operator builds. + */ +export function screenOrderUtxoFacts(action, facts) { + if (facts.unresolvable !== undefined) { + return reject("order_facts_unresolvable", `Order datum cannot be resolved against protocol settings: ${facts.unresolvable}`); + } + if (facts.consumedRequired > 0n && facts.consumedLocked < facts.consumedRequired) { + return reject("input_underfunded", `Order UTxO locks ${facts.consumedLocked} of the consumed asset but its ` + `${action.actionType} datum requires ${facts.consumedRequired}`); + } + const floor = action.minReceived; + if (floor !== undefined && facts.maxDelivered !== undefined && floor > facts.maxDelivered) { + return reject("min_received_above_max_delivered", `Invalid ${action.actionType} min_received (${floor}) — above the maximum ` + `deliverable ${facts.maxDelivered}, so no execution can satisfy it`); + } + return OK; +} +//# sourceMappingURL=order-sanity.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1/order-sanity.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v1/order-sanity.js.map new file mode 100644 index 0000000000..965cb750a7 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1/order-sanity.js.map @@ -0,0 +1 @@ +{"version":3,"file":"order-sanity.js","names":["OK","ok","reject","code","reason","screenOrderAction","action","actionType","floor","minReceived","amount","undefined","forfeit","yield","screenDepositBatch","actions","principal","totalYield","reduce","totals","screenOrderUtxoFacts","facts","unresolvable","consumedRequired","consumedLocked","maxDelivered"],"sources":["../../../../src/sdk/v1/order-sanity.ts"],"sourcesContent":["/**\n * Static, off-chain mirror of the per-request predicates the v1-family\n * protocol validators apply to each request in an execution batch.\n *\n * Why this exists (WTB-1764): `process_exchange_requests`,\n * `process_stake_requests` and `process_treasury_requests`\n * (`contracts/lib/v1_0/utilities.ak`) validate every request in the batch\n * inside one `zip_fold` via `expect validation(request)`. There is no\n * per-request graceful exclusion — the first request that fails its predicate\n * crashes the WHOLE execution transaction, taking down every valid order\n * bundled alongside it. Order creation is permissionless and has no on-chain\n * gate (sending funds + an inline datum to the order script address is a plain\n * payment; no validator runs on receipt), so a single order carrying, say,\n * `min_received = 0` is a cheap, repeatable denial-of-service against the whole\n * execution pipeline.\n *\n * Every request that reaches a batch must therefore be screened off-chain\n * first. This module is the one place that mirrors the on-chain predicates, so\n * a validator change has a single off-chain counterpart to update.\n *\n * Two screens live here, because the validators abort the whole transaction from\n * two kinds of check and only one of them is answerable from the datum alone:\n *\n * 1. {@link screenOrderAction} — the `process_*_requests` per-request predicates.\n * Pure, datum-only.\n * 2. {@link screenOrderUtxoFacts} — the checks that also need the order UTxO's\n * value and (for mint/burn) the reserve multiplier: input funding and the\n * statically-knowable deliverability ceiling. Callers derive the facts, since\n * that is where the asset ids and settings live; `RealfiSDKV1Family`\n * .screenOrderForExecution does both in one call.\n *\n * Still deliberately NOT covered, because it is not decidable from the order in\n * isolation: predicates that move with live protocol state — unstake's\n * `forfeit <= request_usdr`, and the stake/unstake deliverability ceilings,\n * which follow the vault exchange rate between screening and execution.\n *\n * A caller with a narrower policy (the approvals cron accepts just the\n * zero-principal, positive-yield deposit shape) also keeps that policy to\n * itself; folding it in here would reject orders other first-party flows\n * legitimately create and execute.\n *\n * | action | on-chain predicate | source |\n * | -------- | ------------------------------------------------------- | ----------------------------- |\n * | mint | `amount > 0 && min_received > 0` | `v1_0/mint.ak:86` |\n * | burn | `amount < 0 && min_received > 0` | `v1_0/burn.ak:90` |\n * | stake | `amount > 0 && min_received > 0 && forfeit == 0` | `v1_0/stake.ak:45-47` |\n * | unstake | `amount > 0 && min_received > 0` (+ `forfeit >= 0`) | `v1_0/unstake.ak:77,101` |\n * | deposit | `amount >= 0` | `v1_0/deposit.ak:67` |\n * | withdraw | `amount > 0 && yield == 0` | `v1_0/withdraw.ak:73` |\n *\n * v1_1_rc1 carries the identical predicates. v1_0_rc1 does NOT — its datum has\n * no `min_received` field at all and its predicates are amount-only\n * (`v1_0_rc1/stake.ak:64`, `unstake.ak:64`), which is why an absent floor is\n * treated as \"no floor to check\" below rather than as zero.\n */\n\n/** Machine-stable reason token for a rejected request. */\nexport type TOrderRejectCode =\n | \"amount_not_positive\"\n | \"min_received_not_positive\"\n | \"forfeit_negative\"\n | \"deposit_principal_negative\"\n | \"deposit_batch_empty\"\n | \"withdraw_yield_not_zero\"\n | \"input_underfunded\"\n | \"min_received_above_max_delivered\"\n | \"order_facts_unresolvable\";\n\n/**\n * The subset of `IClassifiedOrderAction` the screen reads. Structural, so a\n * full classified action is assignable without this module depending on the\n * SDK family module (and without a test needing to construct one).\n *\n * Sign convention follows `classifyOrderAction`, which matches the on-chain\n * request shape: `amount` is already negated for burn.\n */\nexport interface IOrderActionSanityInput {\n actionType: string;\n amount: bigint;\n minReceived?: bigint;\n forfeit?: bigint;\n yield?: bigint;\n}\n\nexport type TOrderSanityResult =\n | { ok: true }\n | { ok: false; code: TOrderRejectCode; reason: string };\n\nconst OK: TOrderSanityResult = { ok: true };\n\nfunction reject(code: TOrderRejectCode, reason: string): TOrderSanityResult {\n return { ok: false, code, reason };\n}\n\n/**\n * Screen one classified order action against the predicates the validator will\n * apply to it.\n *\n * Unknown actions pass through. Every known action is checked because\n * `getSignedPayloadFromOrderInputs` packages both the approvals and\n * treasury-admin flows.\n */\nexport function screenOrderAction(\n action: IOrderActionSanityInput,\n): TOrderSanityResult {\n const { actionType } = action;\n\n // Mint, burn, stake and unstake carry a user-signed output floor that the\n // validator requires to be strictly positive — in the versions that HAVE one.\n // v1_0_rc1's datum has no min_received field and its validators have no\n // min_received predicate, so `undefined` means \"this version has no floor to\n // check\", not \"the floor is zero\". The v1_0 / v1_1_rc1 schemas make the field\n // mandatory, so a genuinely poisoned order always arrives as 0.\n const floor = action.minReceived;\n\n switch (actionType) {\n case \"mint\":\n case \"stake\":\n case \"unstake\":\n if (action.amount <= 0n) {\n return reject(\n \"amount_not_positive\",\n `Invalid ${actionType} amount (<= 0)`,\n );\n }\n if (floor !== undefined && floor <= 0n) {\n return reject(\n \"min_received_not_positive\",\n `Invalid ${actionType} min_received (<= 0)`,\n );\n }\n // Unstake's forfeit is user-supplied in the datum; a negative one crashes\n // the batch on `expect r.forfeit >= 0` exactly like a zero min_received\n // does. (Stake requests carry no datum forfeit — OStake has no such\n // field, so the validator's `forfeit == 0` holds by construction.)\n if (actionType === \"unstake\" && (action.forfeit ?? 0n) < 0n) {\n return reject(\"forfeit_negative\", \"Invalid unstake forfeit (< 0)\");\n }\n return OK;\n\n case \"burn\":\n // classifyOrderAction negates ORedeem.amount, so the on-chain\n // `amount < 0` check is the raw datum amount being positive.\n if (action.amount >= 0n) {\n return reject(\"amount_not_positive\", \"Invalid burn amount (<= 0)\");\n }\n if (floor !== undefined && floor <= 0n) {\n return reject(\n \"min_received_not_positive\",\n \"Invalid burn min_received (<= 0)\",\n );\n }\n return OK;\n\n case \"withdraw\":\n if (action.amount <= 0n) {\n return reject(\"amount_not_positive\", \"Invalid withdraw amount (<= 0)\");\n }\n if ((action.yield ?? 0n) !== 0n) {\n return reject(\n \"withdraw_yield_not_zero\",\n \"Invalid withdraw request (yield must be 0)\",\n );\n }\n return OK;\n\n case \"deposit\":\n if (action.amount < 0n) {\n return reject(\n \"deposit_principal_negative\",\n \"Invalid deposit principal (< 0)\",\n );\n }\n return OK;\n\n case \"direct_mint\":\n if (action.amount <= 0n) {\n return reject(\n \"amount_not_positive\",\n \"Invalid direct_mint amount (<= 0)\",\n );\n }\n return OK;\n\n case \"direct_burn\":\n // classifyOrderAction negates ODirectBurn.amount to match the signed\n // request and direct_burn.ak's required negative amount.\n if (action.amount >= 0n) {\n return reject(\n \"amount_not_positive\",\n \"Invalid direct_burn amount (<= 0)\",\n );\n }\n return OK;\n\n default:\n return OK;\n }\n}\n\n/**\n * Screen deposit predicates that the validator applies to the complete batch,\n * after it has summed every request. This must not run per order: offsetting\n * yields can make a non-empty pair unexecutable, while a zero/zero order can\n * validly accompany a principal-bearing one.\n */\nexport function screenDepositBatch(\n actions: readonly IOrderActionSanityInput[],\n): TOrderSanityResult {\n const { principal, totalYield } = actions.reduce(\n (totals, action) => ({\n principal: totals.principal + action.amount,\n totalYield: totals.totalYield + (action.yield ?? 0n),\n }),\n { principal: 0n, totalYield: 0n },\n );\n if (principal === 0n && totalYield === 0n) {\n return reject(\n \"deposit_batch_empty\",\n \"Invalid deposit batch (principal and yield both total 0)\",\n );\n }\n return OK;\n}\n\n/**\n * The value-dependent facts about an order UTxO that the validator checks but\n * the datum alone cannot answer. The caller derives these because it owns the\n * asset ids and the reserve multiplier from settings.\n */\nexport interface IOrderUtxoFacts {\n /**\n * Quantity of the consumed asset the validator will require this UTxO to\n * hold. Per action: mint → `usdr_to_reserve_ceil(amount, ra)` of the reserve\n * asset; burn → `|amount|` USDr; stake → `amount` USDr; unstake → `amount`\n * sUSDr. Zero for actions with no such check (treasury, direct).\n */\n consumedRequired: bigint;\n /** Quantity of that same asset actually locked in the UTxO. */\n consumedLocked: bigint;\n /**\n * Ceiling on what may be delivered to the destination, when it is knowable\n * without live vault state: mint → `amount`, burn →\n * `usdr_to_reserve(|amount|, ra)`. `undefined` where the ceiling follows the\n * vault exchange rate (stake, unstake) and so cannot be screened here.\n */\n maxDelivered?: bigint;\n /**\n * Set when the facts could not be derived from the datum at all — the reserve\n * asset it names is not in settings, or its policy id is malformed. Every\n * field of the datum is attacker-chosen, so this must be a REJECTION, never a\n * thrown error: a throw from a screen would abort the caller's whole sweep,\n * which is a strictly worse denial of service than the batch-kill the screen\n * exists to prevent. The validator reaches the same conclusion via\n * `expect Some(ra) = find_reserve_asset(...)` (`v1_0/mint.ak:29`).\n */\n unresolvable?: string;\n}\n\n/**\n * Screen the value-dependent aborts. Run alongside {@link screenOrderAction} —\n * neither subsumes the other.\n *\n * Both conditions kill the whole transaction, not just the offending order:\n *\n * - **Underfunded input.** `validate_stake_inputs` / `validate_unstake_inputs`\n * (`v1_0/utilities.ak:417`, `:443`) `expect` the locked quantity to cover\n * `request.amount`; mint (`mint.ak:32`) and burn (`burn.ak:31`) fold the same\n * comparison into an `and {}` whose `False` fails the enclosing `expect`. An\n * order UTxO holding min-ADA and none of the consumed asset is therefore a\n * complete batch-killer that costs the planter nothing but the min-ADA.\n * - **Unsatisfiable floor.** `validate_destination_value`\n * (`v1_0/utilities.ak:594-595`) `expect`s `min_delivered <= delivered <=\n * max_delivered`. A `min_received` above the ceiling makes the pair\n * unsatisfiable no matter what the operator builds.\n */\nexport function screenOrderUtxoFacts(\n action: IOrderActionSanityInput,\n facts: IOrderUtxoFacts,\n): TOrderSanityResult {\n if (facts.unresolvable !== undefined) {\n return reject(\n \"order_facts_unresolvable\",\n `Order datum cannot be resolved against protocol settings: ${facts.unresolvable}`,\n );\n }\n\n if (\n facts.consumedRequired > 0n &&\n facts.consumedLocked < facts.consumedRequired\n ) {\n return reject(\n \"input_underfunded\",\n `Order UTxO locks ${facts.consumedLocked} of the consumed asset but its ` +\n `${action.actionType} datum requires ${facts.consumedRequired}`,\n );\n }\n\n const floor = action.minReceived;\n if (\n floor !== undefined &&\n facts.maxDelivered !== undefined &&\n floor > facts.maxDelivered\n ) {\n return reject(\n \"min_received_above_max_delivered\",\n `Invalid ${action.actionType} min_received (${floor}) — above the maximum ` +\n `deliverable ${facts.maxDelivered}, so no execution can satisfy it`,\n );\n }\n\n return OK;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAaA,MAAMA,EAAsB,GAAG;EAAEC,EAAE,EAAE;AAAK,CAAC;AAE3C,SAASC,MAAMA,CAACC,IAAsB,EAAEC,MAAc,EAAsB;EAC1E,OAAO;IAAEH,EAAE,EAAE,KAAK;IAAEE,IAAI;IAAEC;EAAO,CAAC;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAC/BC,MAA+B,EACX;EACpB,MAAM;IAAEC;EAAW,CAAC,GAAGD,MAAM;;EAE7B;EACA;EACA;EACA;EACA;EACA;EACA,MAAME,KAAK,GAAGF,MAAM,CAACG,WAAW;EAEhC,QAAQF,UAAU;IAChB,KAAK,MAAM;IACX,KAAK,OAAO;IACZ,KAAK,SAAS;MACZ,IAAID,MAAM,CAACI,MAAM,IAAI,EAAE,EAAE;QACvB,OAAOR,MAAM,CACX,qBAAqB,EACrB,WAAWK,UAAU,gBACvB,CAAC;MACH;MACA,IAAIC,KAAK,KAAKG,SAAS,IAAIH,KAAK,IAAI,EAAE,EAAE;QACtC,OAAON,MAAM,CACX,2BAA2B,EAC3B,WAAWK,UAAU,sBACvB,CAAC;MACH;MACA;MACA;MACA;MACA;MACA,IAAIA,UAAU,KAAK,SAAS,IAAI,CAACD,MAAM,CAACM,OAAO,IAAI,EAAE,IAAI,EAAE,EAAE;QAC3D,OAAOV,MAAM,CAAC,kBAAkB,EAAE,+BAA+B,CAAC;MACpE;MACA,OAAOF,EAAE;IAEX,KAAK,MAAM;MACT;MACA;MACA,IAAIM,MAAM,CAACI,MAAM,IAAI,EAAE,EAAE;QACvB,OAA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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1/types.js b/modules/realfi-partner-sdk/dist/esm/sdk/v1/types.js new file mode 100644 index 0000000000..718fd38ae4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1/types.js @@ -0,0 +1,2 @@ +export {}; +//# sourceMappingURL=types.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1/types.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v1/types.js.map new file mode 100644 index 0000000000..e6955f394d --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1/types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"types.js","names":[],"sources":["../../../../src/sdk/v1/types.ts"],"sourcesContent":["import type { TSchema } from \"@blaze-cardano/data\";\nimport type { Core } from \"@blaze-cardano/sdk\";\n\n// Type-only imports of the canonical V1-family statics. These are erased at\n// compile time (verbatimModuleSyntax), so this module adds NO runtime edge\n// from the family chunk to the v1_0 generated-types chunk — each version's\n// chunk still loads only its own generated module.\nimport type {\n Nonce,\n OrderRedeemerV1,\n RegistryV1,\n SettingsV1 as SettingsV1_0,\n} from \"../../generated-types/v1_0/index.js\";\n\n/**\n * A TypeBox schema whose inferred static is exactly `T`, regardless of which\n * generated module it came from.\n *\n * The generated modules export `TImport` schemas that carry the WHOLE\n * module's `$defs` in their type, so `typeof V1_0Types.X` is not assignable\n * to `typeof V1_1Rc1Types.X` even when the statics are structurally identical.\n * `Data.serialize`/`parse` only infer through `T[\"static\"]`, so this\n * intersection keeps full type safety at every call site while accepting any\n * version's schema value. Runtime ref resolution reads `$defs` off the schema\n * VALUE, so cross-version dispatch is safe.\n */\nexport type TSchemaOf = TSchema & { static: T };\n\n/**\n * Version-agnostic proxy datum shape. `ProxyDatumV1.settings` is the only\n * settings-transitive field in the schemas the family touches, so the family\n * is generic over it instead of using a version's concrete `ProxyDatumV1`.\n */\nexport interface IProxyDatum {\n logic: string;\n settings: TSettings;\n}\n\n/**\n * The minimal vault-datum shape every V1-family version shares. Shared code\n * may READ `circulating_susdr`; it must never construct a whole vault datum —\n * datum construction goes through the version's `buildInitialVaultDatum` /\n * `buildUpdatedVaultDatum` seam so versions with extra fields (v1_1_rc1's\n * yield-diffusion fields) can't be silently truncated.\n */\nexport interface IVaultDatumLike {\n circulating_susdr: bigint;\n}\n\n/**\n * The schema values the family base serializes/parses. Each per-version\n * generated module namespace satisfies this structurally.\n *\n * `OrderDatumV1` is deliberately loose (`TSchema`): the order-datum statics\n * differ across the family (v1_0 actions carry `min_received`, v1_0_rc1's do\n * not), so the base's v1_0-semantics defaults cast parse results to the v1_0\n * static. Versions with a different static override every constructor and\n * consumer of order datums.\n */\nexport interface IV1FamilySchemas {\n ProxyDatumV1: TSchemaOf>;\n SettingsV1: TSchemaOf;\n OrderDatumV1: TSchema;\n OrderRedeemerV1: TSchemaOf;\n VaultDatumV1: TSchemaOf;\n Nonce: TSchemaOf;\n}\n\n/**\n * Schemas used ONLY by the base's v1_0-semantics signing/execute defaults\n * (`getSignedPayloadFromOrderInputs`, `buildExecuteOrdersTx`). Versions whose\n * protocol redeemer is structurally different (v1_0_rc1) omit this bag and\n * override both consumers; the family's guarded accessor throws if neither\n * is done.\n *\n * Both fields are deliberately loose (`TSchema`), for the same reason\n * `OrderDatumV1` above is: the protocol-redeemer static diverges across the\n * family (v1_1_rc1's `Deposit` carries `alpha` and its action union adds\n * `MigrateState`), so a `TSchemaOf` would reject the\n * wider v1_1_rc1 schema value even though runtime ref-resolution reads `$defs`\n * off the schema VALUE and is safe. Versions build their own action shape via\n * the `buildDepositAction` / `serializeOrchestratorWithdrawalRedeemer` seams.\n */\nexport interface IV1SigningSchemas {\n SignedPayload_ProtocolRedeemerV1: TSchema;\n SignedRedeemer_ExtraProtocolRedeemerV1: TSchema;\n}\n\n/**\n * The fraction of a deposit's yield routed to the staked vault, the remainder\n * going to the unstaked yield pot (v1_1_rc1+ `YieldSplitAlpha`).\n *\n * It is a parameter of the batch: its creator picks it, the backend stores it on\n * the batch, and every co-signer signs THAT value. On-chain every signature of a\n * batch is verified against a single payload hash, so a signer deriving its own\n * value from live state could never be co-signed — which is why the signing path\n * takes it as an input instead of reading the vault itself.\n */\nexport interface IYieldSplitAlpha {\n numerator: bigint;\n denominator: bigint;\n}\n\n/**\n * Version-agnostic view over the settings fields the shared tx-builders use.\n * v1_0: the (flat) settings object itself. v1_1_rc1: `settings.config`.\n */\nexport type TV1SettingsConfig = Pick<\n SettingsV1_0,\n \"reserve_assets\" | \"unstaked_yield_pot\"\n>;\n\n/**\n * The registry fields the family base reads (protocol-upgrade checks).\n * Registries differ across versions (v1_0 adds `yield_oracle`), so the\n * seam exposes only the shared field.\n */\nexport type TV1Registry = Pick;\n\n/**\n * Instantiated scripts each version's `create()` builds from its own\n * generated script classes and hands to the family constructor. Method\n * bodies only ever see `Core.Script` values.\n */\nexport interface IV1FamilyScripts {\n oneShotScript: Core.Script;\n protocolOrchestratorScript: Core.Script;\n protocolMintScript: Core.Script;\n protocolStakeScript: Core.Script;\n protocolManagementScript: Core.Script;\n mintProxyScript: Core.Script;\n treasuryScript: Core.Script;\n orderScript: Core.Script;\n stakingVaultScript: Core.Script;\n}\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1_0/index.js b/modules/realfi-partner-sdk/dist/esm/sdk/v1_0/index.js new file mode 100644 index 0000000000..141993dbe6 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1_0/index.js @@ -0,0 +1,127 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import { BaseTypes, V0_1Types, V0_4Types, V1_0Types } from "../../generated-types/index.js"; +import { RealfiSDKV1Family } from "../v1/family.js"; +export { DIRECT_ACTION_PADDING_ASSET } from "../v1/family.js"; + +// eslint-disable-next-line @typescript-eslint/naming-convention + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * V1_0 SDK implementation. + * + * Extends V0_4 with: + * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios) + * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded + * - Forfeit parameter: Support yield forfeiture during unstake operations + * - New Settings fields: direct_mint_permission, direct_burn_permission + * + * All transaction-building logic lives in {@link RealfiSDKV1Family}; this + * class instantiates the V1_0 scripts and implements the version seams + * (flat settings, 1-field vault datum). + */ +export class RealfiSDKV1_0 extends RealfiSDKV1Family { + constructor(...args) { + super(...args); + _defineProperty(this, "version", "V1_0"); + } + /** + * Create a V1_0 SDK instance. + */ + static create(blaze, params) { + const enableTrace = params.enableTrace ?? false; + + // 1. Create oneshot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + const oneShotPolicyId = oneShotScript.hash(); + + // 2. Create sub-validator scripts first (they only need proxy policy) + const protocolMintScript = new V1_0Types.V1_0ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script; + const protocolStakeScript = new V1_0Types.V1_0ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script; + const protocolManagementScript = new V1_0Types.V1_0ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script; + + // 3. Create orchestrator with sub-validator hashes + const protocolOrchestratorScript = new V1_0Types.V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintScript.hash(), protocolStakeScript.hash(), protocolManagementScript.hash(), enableTrace).Script; + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + + // Use V0.1 or V1.0 treasury script based on option + // V0.1 is needed for protocol-only upgrades where treasury stays at V0.1 address + const treasuryScript = params.useV0_1Treasury ? new V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new V1_0Types.V1_0TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + + // 4. Create order script with orchestrator hash (order needs to know the protocol) + const orderScript = new V1_0Types.V1_0OrderOrderSpend(oneShotPolicyId, protocolOrchestratorScript.hash(), enableTrace).Script; + + // Use V0.4 or V1.0 staking vault script based on option + // V0.4 is needed for protocol-only upgrades where vault stays at V0.4 address + const stakingVaultScript = params.useV0_4StakingVault ? new V0_4Types.V0_4StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new V1_0Types.V1_0StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV1_0(blaze, { + version: "V1_0", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace, + defaultSlippageToleranceBps: params.defaultSlippageToleranceBps, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource, + deployedValidators: params.deployedValidators + }, V1_0Types, { + oneShotScript, + protocolOrchestratorScript, + protocolMintScript, + protocolStakeScript, + protocolManagementScript, + mintProxyScript, + treasuryScript, + orderScript, + stakingVaultScript + }, { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + orderRefInput: params.referenceInputs?.orderRefInput, + stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput + }, V1_0Types); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + settingsConfig(settings) { + // V1_0 settings are flat: the settings object IS the config. + return settings; + } + settingsRegistry(settings) { + return settings.registry; + } + buildInitialVaultDatum() { + return { + circulating_susdr: 0n + }; + } + buildUpdatedVaultDatum(previous, sUSDrDelta) { + return { + circulating_susdr: previous.circulating_susdr + sUSDrDelta + }; + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1_0/index.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v1_0/index.js.map new file mode 100644 index 0000000000..60696026eb --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1_0/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["BaseTypes","V0_1Types","V0_4Types","V1_0Types","RealfiSDKV1Family","DIRECT_ACTION_PADDING_ASSET","RealfiSDKV1_0","constructor","args","_defineProperty","create","blaze","params","enableTrace","oneShotScript","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","oneShotPolicyId","hash","protocolMintScript","V1_0ProtocolMintProtocolMintWithdraw","protocolStakeScript","V1_0ProtocolStakeProtocolStakeWithdraw","protocolManagementScript","V1_0ProtocolManagementProtocolManagementWithdraw","protocolOrchestratorScript","V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw","mintProxyScript","BaseMintProxyMintProxyMint","treasuryScript","useV0_1Treasury","V0_1TreasuryTreasurySpend","treasuryBootstrap","V1_0TreasuryTreasurySpend","orderScript","V1_0OrderOrderSpend","stakingVaultScript","useV0_4StakingVault","V0_4StakingVaultStakingVaultSpend","stakingVaultBootstrap","V1_0StakingVaultStakingVaultSpend","version","assetNameHex","sUSDrAssetNameHex","defaultSlippageToleranceBps","scriptDeploymentAddress","clientSource","deployedValidators","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","orderRefInput","stakingVaultRefInput","settingsConfig","settings","settingsRegistry","registry","buildInitialVaultDatum","circulating_susdr","buildUpdatedVaultDatum","previous","sUSDrDelta"],"sources":["../../../../src/sdk/v1_0/index.ts"],"sourcesContent":["import type { Provider } from \"@blaze-cardano/query\";\nimport { type Blaze, Core, type Wallet } from \"@blaze-cardano/sdk\";\n\nimport {\n BaseTypes,\n V0_1Types,\n V0_4Types,\n V1_0Types,\n} from \"../../generated-types/index.js\";\nimport type {\n RegistryV1,\n SettingsV1,\n VaultDatumV1,\n} from \"../../generated-types/v1_0/index.js\";\nimport type { TV1SettingsConfig } from \"../v1/types.js\";\nimport { RealfiSDKV1Family } from \"../v1/family.js\";\n\nexport {\n DIRECT_ACTION_PADDING_ASSET,\n type ITreasuryUnstakeOrderTxResult,\n} from \"../v1/family.js\";\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV1_0 {\n version: \"V1_0\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** USDr asset name hex */\n assetNameHex: string;\n /** sUSDr asset name hex */\n sUSDrAssetNameHex: string;\n /** The treasury bootstrap UTxO reference */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** The staking vault bootstrap UTxO reference */\n stakingVaultBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Fallback slippage tolerance (in basis points) used by buildStakeOrderTx /\n * buildUnstakeOrderTx when the caller doesn't pass a per-call value and\n * doesn't pass an explicit `minReceived`. 50n = 0.5%. Default: 50n.\n */\n defaultSlippageToleranceBps?: bigint;\n /**\n * Use V0.1 treasury script instead of V1.0.\n * This is needed for protocol-only upgrades where the treasury NFT\n * remains at the V0.1 treasury address. Default: false\n */\n useV0_1Treasury?: boolean;\n /**\n * Use V0.4 staking vault script instead of V1.0.\n * This is needed for protocol-only upgrades where the vault NFT\n * remains at the V0.4 vault address. Default: false\n */\n useV0_4StakingVault?: boolean;\n /**\n * Hashes of the validators this deployment actually runs. See\n * IV1FamilyConstructorParams.deployedValidators — without them, identity is\n * derived from bundled artifacts and an order can be locked at an address\n * nothing watches.\n */\n deployedValidators?: Readonly>;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n stakingVaultRefInput?: Core.TransactionUnspentOutput;\n };\n clientSource?: import(\"../shared/client-id.js\").TClientSource;\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// SDK Class\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * V1_0 SDK implementation.\n *\n * Extends V0_4 with:\n * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios)\n * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded\n * - Forfeit parameter: Support yield forfeiture during unstake operations\n * - New Settings fields: direct_mint_permission, direct_burn_permission\n *\n * All transaction-building logic lives in {@link RealfiSDKV1Family}; this\n * class instantiates the V1_0 scripts and implements the version seams\n * (flat settings, 1-field vault datum).\n */\nexport class RealfiSDKV1_0<\n P extends Provider,\n W extends Wallet,\n> extends RealfiSDKV1Family {\n readonly version = \"V1_0\" as const;\n\n /**\n * Create a V1_0 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0,\n ): RealfiSDKV1_0 {\n const enableTrace = params.enableTrace ?? false;\n\n // 1. Create oneshot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n\n // 2. Create sub-validator scripts first (they only need proxy policy)\n const protocolMintScript =\n new V1_0Types.V1_0ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolStakeScript =\n new V1_0Types.V1_0ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolManagementScript =\n new V1_0Types.V1_0ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 3. Create orchestrator with sub-validator hashes\n const protocolOrchestratorScript =\n new V1_0Types.V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintScript.hash(),\n protocolStakeScript.hash(),\n protocolManagementScript.hash(),\n enableTrace,\n ).Script;\n\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Use V0.1 or V1.0 treasury script based on option\n // V0.1 is needed for protocol-only upgrades where treasury stays at V0.1 address\n const treasuryScript = params.useV0_1Treasury\n ? new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_0Types.V1_0TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 4. Create order script with orchestrator hash (order needs to know the protocol)\n const orderScript = new V1_0Types.V1_0OrderOrderSpend(\n oneShotPolicyId,\n protocolOrchestratorScript.hash(),\n enableTrace,\n ).Script;\n\n // Use V0.4 or V1.0 staking vault script based on option\n // V0.4 is needed for protocol-only upgrades where vault stays at V0.4 address\n const stakingVaultScript = params.useV0_4StakingVault\n ? new V0_4Types.V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_0Types.V1_0StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV1_0(\n blaze,\n {\n version: \"V1_0\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n sUSDrAssetNameHex: params.sUSDrAssetNameHex,\n enableTrace,\n defaultSlippageToleranceBps: params.defaultSlippageToleranceBps,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n clientSource: params.clientSource,\n deployedValidators: params.deployedValidators,\n },\n V1_0Types,\n {\n oneShotScript,\n protocolOrchestratorScript,\n protocolMintScript,\n protocolStakeScript,\n protocolManagementScript,\n mintProxyScript,\n treasuryScript,\n orderScript,\n stakingVaultScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n orderRefInput: params.referenceInputs?.orderRefInput,\n stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput,\n },\n V1_0Types,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Version Seams\n // ─────────────────────────────────────────────────────────────────────────────\n\n protected settingsConfig(settings: SettingsV1): TV1SettingsConfig {\n // V1_0 settings are flat: the settings object IS the config.\n return settings;\n }\n\n protected settingsRegistry(settings: SettingsV1): RegistryV1 {\n return settings.registry;\n }\n\n protected buildInitialVaultDatum(): VaultDatumV1 {\n return { circulating_susdr: 0n };\n }\n\n protected buildUpdatedVaultDatum(\n previous: VaultDatumV1,\n sUSDrDelta: bigint,\n ): VaultDatumV1 {\n return { circulating_susdr: previous.circulating_susdr + sUSDrDelta };\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1_0_rc1/index.js b/modules/realfi-partner-sdk/dist/esm/sdk/v1_0_rc1/index.js new file mode 100644 index 0000000000..00a7713798 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1_0_rc1/index.js @@ -0,0 +1,1099 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import { addressFromValidator, blake2b_256, HexBlob, PlutusData, toHex } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import { Core, makeValue } from "@blaze-cardano/sdk"; +import { BaseTypes, V0_1Types, V0_4Types, V1_0Rc1Types } from "../../generated-types/index.js"; +import { addDirectOutput, buildNonceFromUtxo, buildMultisigTimelockNativeScript, buildTimelockDestination, buildUnstakeMetadatum, UNSTAKE_METADATA_LABEL, destinationToAddress, findReserveAsset, usdrToReserve, usdrToReserveCeil, computeReserveDeltas, sortOrderInputs } from "../shared/index.js"; +import { calculateYieldShares, MIN_LOVELACE, RealfiSDKV1Family } from "../v1/family.js"; +import { screenDepositBatch } from "../v1/order-sanity.js"; +// ───────────────────────────────────────────────────────────────────────────── +// Constants +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Sentinel `reserve_asset` used in V1_0_Rc1 TreasuryRequestV1 redeemers for + * DirectMint and DirectBurn actions, which have no real reserve asset in + * their order datum. The on-chain validators `direct_mint_logic` and + * `direct_burn_logic` do not inspect this field; this sentinel makes the + * intent explicit both in code and when inspecting on-chain redeemers. + * + * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a + * sentinel and extremely unlikely to occur as a real script hash) + * - `asset_name`: "unused" (ASCII) + * + * Keep in sync with backend `contract.DirectActionPaddingAsset`. + */ +export const DIRECT_ACTION_PADDING_ASSET = ["00".repeat(28), toHex(new TextEncoder().encode("unused"))]; + +// ───────────────────────────────────────────────────────────────────────────── +// Types +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Extract the requests list from a signed payload action, regardless of action type. + * Both TreasuryRequestV1 and RequestV1 have `origin: { transaction_id, output_index }`. + */ +function getRequestsFromAction(action) { + if ("Mint" in action) return action.Mint.requests; + if ("Burn" in action) return action.Burn.requests; + if ("Withdraw" in action) return action.Withdraw.requests; + if ("Deposit" in action) return action.Deposit.requests; + if ("Stake" in action) return action.Stake.requests; + if ("Unstake" in action) return action.Unstake.requests; + if ("DirectMint" in action) return action.DirectMint.requests; + if ("DirectBurn" in action) return action.DirectBurn.requests; + throw new Error("Unknown action type in signed payload"); +} + +// eslint-disable-next-line @typescript-eslint/naming-convention + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * V1_0Rc1 SDK implementation. + * + * Extends V0_4 with: + * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios) + * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded + * - Forfeit parameter: Support yield forfeiture during unstake operations + * - New Settings fields: direct_mint_permission, direct_burn_permission + * + * Scaffolding (scripts, deploy/register, treasury, vault, one-shot, cancel, + * invalidate) is inherited from {@link RealfiSDKV1Family}. The release + * candidate's protocol redeemer schema is structurally different from v1_0 + * (`TreasuryRequestV1[]` + `RequestV1[]`, no fees, no `min_received`), so the + * order builders, signed-payload construction, and execute builders override + * the family's v1_0-semantics defaults with the rc1 behavior verbatim. No + * signing schemas are passed to the family constructor — both consumers are + * overridden here. + */ +export class RealfiSDKV1_0Rc1 extends RealfiSDKV1Family { + constructor(...args) { + super(...args); + _defineProperty(this, "version", "V1_0_Rc1"); + } + /** + * Create a V1_0Rc1 SDK instance. + */ + static create(blaze, params) { + const enableTrace = params.enableTrace ?? false; + + // 1. Create oneshot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + const oneShotPolicyId = oneShotScript.hash(); + + // 2. Create sub-validator scripts first (they only need proxy policy) + const protocolMintScript = new V1_0Rc1Types.V1_0Rc1ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script; + const protocolStakeScript = new V1_0Rc1Types.V1_0Rc1ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script; + const protocolManagementScript = new V1_0Rc1Types.V1_0Rc1ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script; + + // 3. Create orchestrator with sub-validator hashes + const protocolOrchestratorScript = new V1_0Rc1Types.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintScript.hash(), protocolStakeScript.hash(), protocolManagementScript.hash(), enableTrace).Script; + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + + // Use V0.1 or V1.0 treasury script based on option + // V0.1 is needed for protocol-only upgrades where treasury stays at V0.1 address + const treasuryScript = params.useV0_1Treasury ? new V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new V1_0Rc1Types.V1_0Rc1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + + // 4. Create order script with orchestrator hash (order needs to know the protocol) + const orderScript = new V1_0Rc1Types.V1_0Rc1OrderOrderSpend(oneShotPolicyId, protocolOrchestratorScript.hash(), enableTrace).Script; + + // Use V0.4 or V1.0 staking vault script based on option + // V0.4 is needed for protocol-only upgrades where vault stays at V0.4 address + const stakingVaultScript = params.useV0_4StakingVault ? new V0_4Types.V0_4StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new V1_0Rc1Types.V1_0Rc1StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV1_0Rc1(blaze, { + version: "V1_0_Rc1", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource, + deployedValidators: params.deployedValidators + }, V1_0Rc1Types, { + oneShotScript, + protocolOrchestratorScript, + protocolMintScript, + protocolStakeScript, + protocolManagementScript, + mintProxyScript, + treasuryScript, + orderScript, + stakingVaultScript + }, { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + orderRefInput: params.referenceInputs?.orderRefInput, + stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput + }); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + settingsConfig(settings) { + // V1_0_Rc1 settings are flat: the settings object IS the config. + return settings; + } + settingsRegistry(settings) { + return settings.registry; + } + buildInitialVaultDatum() { + return { + circulating_susdr: 0n + }; + } + buildUpdatedVaultDatum(previous, sUSDrDelta) { + return { + circulating_susdr: previous.circulating_susdr + sUSDrDelta + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Order Builder Methods (rc1 order datums carry no min_received) + // ───────────────────────────────────────────────────────────────────────────── + + async buildStakeContinuation(_params) { + throw new Error("Stake continuations are not supported on V1_0_Rc1 because its order schema has no min_received"); + } + + /** + * Internal helper to build an order transaction. + */ + async _buildOrderTx(params) { + const orderContractAddress = addressFromValidator(this.network, this.orderScript); + let owner = params.owner; + if (!owner) { + owner = { + Signature: { + key_hash: (await this.blaze.wallet.getChangeAddress()).getProps().paymentPart.hash.toString() + } + }; + } + const orderDatum = { + action: params.action, + owner, + destination: params.destination, + data: params.data ?? Data.Void() + }; + const serializedDatum = Data.serialize(V1_0Rc1Types.OrderDatumV1, orderDatum); + const tx = this.newOrderTransaction(params.extraLabels); + tx.lockAssets(orderContractAddress, params.valueToLock, serializedDatum); + return tx; + } + + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + async buildMintOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Mint amount must be positive"); + } + const reserveAssetId = Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); + // Convert USDr amount to reserve amount using ceiling division + // to ensure enough reserve is locked for on-chain validation + const settings = await this.getVersionSettings(); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAmount = usdrToReserveCeil(params.amount, ra); + return this._buildOrderTx({ + action: { + OMint: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + async buildRedeemOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Redeem amount must be positive"); + } + const settings = await this.getVersionSettings(); + findReserveAsset(settings, params.reserveAsset); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + return this._buildOrderTx({ + action: { + ORedeem: { + amount: params.amount, + reserve_asset: params.reserveAsset + } + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + async buildStakeOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Stake amount must be positive"); + } + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + return this._buildOrderTx({ + action: { + OStake: { + amount: params.amount + } + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + async _buildUnstakeOrderTx(params) { + if (params.amount <= 0n) { + throw new Error("Unstake amount must be positive"); + } + const forfeit = params.forfeit ?? 0n; + if (forfeit < 0n) { + throw new Error("Forfeit amount cannot be negative"); + } + const sUSDrAssetId = Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + return this._buildOrderTx({ + action: { + OUnstake: { + amount: params.amount, + forfeit + } + }, + valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + extraLabels: params.extraLabels + }); + } + + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockSlot - Slot number after which the user can spend the released USDr + * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0) + */ + async buildUnstakeOrderTx(params) { + const timelockDestination = buildTimelockDestination(params.destination, params.unlockSlot); + const extraLabels = new Map([[UNSTAKE_METADATA_LABEL, buildUnstakeMetadatum(params.destination, params.unlockSlot)]]); + return this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + owner: params.owner, + data: params.data, + extraLabels + }); + } + + /** + * Build a treasury-managed unstake order that wraps the destination in a + * native timelock script controlled by the order owner. + * + * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps + * treasury multisig ownership on the released USDr while enforcing the same + * unlock slot used by the retail unstake helper. The owner must be convertible + * to a Cardano native script. + */ + async buildTreasuryUnstakeOrderTx(params) { + const nativeScript = buildMultisigTimelockNativeScript(params.owner, params.unlockSlot); + const timelockDestination = { + address: { + payment_credential: { + Script: [nativeScript.hash()] + }, + stake_credential: params.destination.address.stake_credential + }, + datum: "NoDatum" + }; + + // Attach the unstake metadata (label 55534472) exactly like the retail + // path (buildUnstakeOrderTx). track-chain requires this label to index the + // order; without it the confirmed unstake output is silently dropped + // (WTB-1466). Mirror retail precisely: the metadatum is built from the + // user-supplied destination (params.destination), not the derived timelock + // destination, and carries the same unlock_time. + const extraLabels = new Map([[UNSTAKE_METADATA_LABEL, buildUnstakeMetadatum(params.destination, params.unlockSlot)]]); + const tx = await this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + owner: params.owner, + data: params.data, + extraLabels + }); + return { + tx, + nativeScript + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Signed Payload and Signing + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build the V1_0Rc1 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + */ + async getSignedPayloadFromOrderInputs(orderInputs) { + if (orderInputs.length === 0) { + throw new Error("At least one order input is required"); + } + const sortedInputs = sortOrderInputs(orderInputs); + const nonce = buildNonceFromUtxo(sortedInputs[0]); + const resolvedUtxos = await this.blaze.provider.resolveUnspentOutputs(sortedInputs); + let actionType = null; + const treasuryRequests = []; + const requests = []; + for (const utxo of resolvedUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(V1_0Rc1Types.OrderDatumV1, datumData); + const origin = { + transaction_id: utxo.input().transactionId().toString(), + output_index: utxo.input().index() + }; + const parsed = this.classifyOrderAction(datum); + + // WTB-1764: same screen the family applies. rc1 has no min_received, but + // its predicates still demand an amount sign (`v1_0_rc1/stake.ak:64`, + // `unstake.ak:64`) and every one of them is an `expect` inside a single + // fold, so a request that fails takes the whole transaction with it. + const screened = await this.screenOrderForExecution(utxo, parsed); + if (!screened.ok) { + throw new Error(`Order ${origin.transaction_id}#${origin.output_index} cannot be executed: ` + `${screened.reason}. Every order batched with it would crash on-chain.`); + } + if (actionType === null) { + actionType = parsed.actionType; + } else if (actionType !== parsed.actionType) { + throw new Error("Mixed order types in inputs. All orders must be of the same type."); + } + if (parsed.isTreasuryAction) { + // DirectMint/DirectBurn datums have no reserve_asset; the redeemer + // struct requires one but the on-chain validator ignores it for + // direct actions, so we pad with DIRECT_ACTION_PADDING_ASSET. + const reserveAsset = parsed.reserveAsset ?? DIRECT_ACTION_PADDING_ASSET; + treasuryRequests.push({ + destination: datum.destination, + amount: parsed.amount, + yield: parsed.yield ?? 0n, + origin, + reserve_asset: reserveAsset + }); + } else { + requests.push({ + destination: datum.destination, + amount: parsed.amount, + origin, + forfeit: parsed.forfeit ?? 0n + }); + } + } + if (actionType === "deposit") { + const batchVerdict = screenDepositBatch(treasuryRequests.map(request => ({ + actionType: "deposit", + amount: request.amount, + yield: request.yield + }))); + if (!batchVerdict.ok) { + throw new Error(`${batchVerdict.reason}. Every order batched with it would crash on-chain.`); + } + } + let action; + switch (actionType) { + case "mint": + action = { + Mint: { + requests: treasuryRequests + } + }; + break; + case "burn": + action = { + Burn: { + requests: treasuryRequests + } + }; + break; + case "withdraw": + action = { + Withdraw: { + requests: treasuryRequests + } + }; + break; + case "deposit": + action = { + Deposit: { + requests: treasuryRequests + } + }; + break; + case "stake": + action = { + Stake: { + requests + } + }; + break; + case "unstake": + action = { + Unstake: { + requests + } + }; + break; + case "direct_mint": + action = { + DirectMint: { + requests: treasuryRequests + } + }; + break; + case "direct_burn": + action = { + DirectBurn: { + requests: treasuryRequests + } + }; + break; + default: + throw new Error("No orders to process"); + } + const payload = { + action, + nonce + }; + const serialized = Data.serialize(V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1, payload); + const signedPayload = serialized.toCbor().toString(); + const payloadHash = blake2b_256(HexBlob(signedPayload)); + return { + signedPayload, + payloadHash + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Execute Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to execute orders. + * + * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake, + * direct_mint, direct_burn. + */ + async buildExecuteOrdersTx(params) { + const { + orderInputs, + signedPayload: signedPayloadCbor, + signatures + } = params; + + // Deserialize CBOR hex to object for internal use + const signedPayload = parse(V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1, PlutusData.fromCbor(HexBlob(signedPayloadCbor))); + + // 1. Sort and resolve order UTxOs + const sortedOrderInputs = sortOrderInputs(orderInputs); + const orderUtxos = await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + + // 2. Parse orders and validate same type + const orderInfos = this.parseOrderInfos(orderUtxos); + const actionType = orderInfos[0].actionType; + + // 3. Get protocol settings + const { + proxyUtxo, + parsedProxyDatum + } = await this.getParsedProxyDatum(); + const settings = parsedProxyDatum.settings; + + // 4. Determine what we need + const needsTreasury = ["mint", "burn", "withdraw", "deposit", "direct_mint", "direct_burn"].includes(actionType); + const needsVault = ["stake", "unstake", "deposit"].includes(actionType); + + // 5. Get script reference inputs + // V1.0 requires the orchestrator and the relevant sub-validator script + const isMintAction = ["mint", "burn", "direct_mint", "direct_burn"].includes(actionType); + const isStakeAction = ["stake", "unstake"].includes(actionType); + const scriptHashesNeeded = { + protocol: this.protocolScriptHash, + order: this.orderScriptHash + }; + if (isMintAction) { + scriptHashesNeeded.protocolMint = this.protocolMintScriptHash; + } else if (isStakeAction) { + scriptHashesNeeded.protocolStake = this.protocolStakeScriptHash; + } else { + scriptHashesNeeded.protocolManagement = this.protocolManagementScriptHash; + } + if (needsTreasury) { + scriptHashesNeeded.treasury = this.treasuryScriptHash; + } + if (needsVault) { + scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash; + } + const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded); + + // 6. Fetch treasury and vault if needed + let treasuryUtxo; + let parsedTreasuryDatum; + if (needsTreasury) { + const treasuryResult = await this.getTreasuryDatum(); + treasuryUtxo = treasuryResult.treasuryUtxo; + parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum; + } + let vaultUtxo; + let parsedVaultDatum; + if (needsVault) { + const vaultResult = await this.getVaultDatum(); + vaultUtxo = vaultResult.vaultUtxo; + parsedVaultDatum = vaultResult.parsedVaultDatum; + } + + // 7. Gather wallet UTxOs so we can include them in index calculations. + const walletUtxos = await this.blaze.wallet.getUnspentOutputs(); + const excludedInputIds = new Set(); + const utxoKey = inp => `${inp.transactionId().toString()}#${inp.index().toString()}`; + // Exclude script inputs (order, treasury, vault) + for (const orderInfo of orderInfos) { + excludedInputIds.add(utxoKey(orderInfo.utxo.input())); + } + if (treasuryUtxo) { + excludedInputIds.add(utxoKey(treasuryUtxo.input())); + } + if (vaultUtxo) { + excludedInputIds.add(utxoKey(vaultUtxo.input())); + } + // Exclude reference inputs (must be disjoint from regular inputs) + excludedInputIds.add(utxoKey(proxyUtxo.input())); + for (const refUtxo of Object.values(refInputs)) { + if (refUtxo) { + excludedInputIds.add(utxoKey(refUtxo.input())); + } + } + const feeUtxos = walletUtxos.filter(utxo => !excludedInputIds.has(utxoKey(utxo.input()))); + + // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex). + const allInputRefs = orderInfos.map(o => o.utxo.input()); + if (treasuryUtxo) { + allInputRefs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + allInputRefs.push(vaultUtxo.input()); + } + for (const feeUtxo of feeUtxos) { + allInputRefs.push(feeUtxo.input()); + } + const sortedAllInputRefs = [...allInputRefs].sort((a, b) => { + const txA = a.transactionId().toString(); + const txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + const findInputIdx = input => { + const idx = sortedAllInputRefs.findIndex(r => r.transactionId().toString() === input.transactionId().toString() && r.index() === input.index()); + return BigInt(idx); + }; + const treasuryInputIdx = treasuryUtxo ? findInputIdx(treasuryUtxo.input()) : 0n; + const vaultInputIdx = vaultUtxo ? findInputIdx(vaultUtxo.input()) : undefined; + + // 8a. Correlate order inputs to signed request indices via origin fields. + // When all orders are present this produces the same identity mapping as before. + // When a subset is passed (partial execution), it maps each input to the + // correct request index in the signed payload. + const signedRequests = getRequestsFromAction(signedPayload.action); + const originToRequestIdx = new Map(); + for (let i = 0; i < signedRequests.length; i++) { + const o = signedRequests[i].origin; + originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i); + } + const inputToRequests = []; + const requestToOutputs = []; + for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) { + const input = orderInfos[outputIdx].utxo.input(); + const key = `${input.transactionId()}#${input.index()}`; + const requestIdx = originToRequestIdx.get(key); + if (requestIdx === undefined) { + throw new Error(`Order input ${key} not found in signed payload`); + } + inputToRequests.push(BigInt(requestIdx)); + requestToOutputs.push(BigInt(outputIdx)); + } + + // 9. Build outputs and compute output indices + const numDestOutputs = orderInfos.length; + + // For deposit with positive yield, the yield pot output is inserted after destinations + let numExtraOutputs = 0; + if (actionType === "deposit") { + const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n); + if (totalYield > 0n) { + const vaultValue = vaultUtxo.output().amount(); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + const { + unstakedYieldShare + } = calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating); + if (unstakedYieldShare > 0n) { + numExtraOutputs = 1; + } + } + } + + // For unstake with forfeit, add yield pot output + if (actionType === "unstake") { + const totalForfeit = orderInfos.reduce((sum, o) => sum + (o.forfeit ?? 0n), 0n); + if (totalForfeit > 0n) { + numExtraOutputs = 1; + } + } + const treasuryOutputIdx = needsTreasury ? BigInt(numDestOutputs + numExtraOutputs) : 0n; + const vaultOutputIdx = needsVault ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0)) : undefined; + + // 10. Build ExtraProtocolRedeemer + const extra = { + request_to_outputs: requestToOutputs, + input_to_requests: inputToRequests, + treasury_input_idx: treasuryInputIdx, + treasury_output_idx: treasuryOutputIdx, + vault_input_idx: vaultInputIdx, + vault_output_idx: vaultOutputIdx + }; + + // 11. Build SignedRedeemer + const serializedSignedRedeemer = Data.serialize(V1_0Rc1Types.SignedRedeemer_v1_0_ExtraProtocolRedeemerV1, { + extra, + payload: signedPayload, + signatures + }); + const executeRedeemer = Data.serialize(V1_0Rc1Types.OrderRedeemerV1, "Execute"); + + // 12. Build the transaction + const tx = this.newOrderTransaction(); + + // Add order inputs with Execute redeemer + for (const orderInfo of orderInfos) { + tx.addInput(orderInfo.utxo, executeRedeemer); + } + + // Add wallet fee inputs explicitly + for (const feeUtxo of feeUtxos) { + tx.addInput(feeUtxo); + } + + // Add reference inputs + tx.addReferenceInput(refInputs.protocol); + tx.addReferenceInput(refInputs.order); + tx.addReferenceInput(proxyUtxo); + // V1.0 sub-validator reference inputs + if (refInputs.protocolMint) { + tx.addReferenceInput(refInputs.protocolMint); + } + if (refInputs.protocolStake) { + tx.addReferenceInput(refInputs.protocolStake); + } + if (refInputs.protocolManagement) { + tx.addReferenceInput(refInputs.protocolManagement); + } + if (refInputs.treasury) { + tx.addReferenceInput(refInputs.treasury); + } + if (refInputs.stakingVault) { + tx.addReferenceInput(refInputs.stakingVault); + } + + // Add orchestrator withdrawal with signed redeemer + const orchestratorRewardAccount = Core.RewardAccount.fromCredential({ + type: Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash + }, this.network); + tx.addWithdrawal(orchestratorRewardAccount, 0n, serializedSignedRedeemer); + + // Determine which sub-validator to use based on action type + const subValidatorHash = actionType === "mint" || actionType === "burn" || actionType === "direct_mint" || actionType === "direct_burn" ? this.protocolMintScriptHash : actionType === "stake" || actionType === "unstake" ? this.protocolStakeScriptHash : this.protocolManagementScriptHash; // deposit, withdraw + + // Add sub-validator withdrawal with void redeemer + const subValidatorRewardAccount = Core.RewardAccount.fromCredential({ + type: Core.CredentialType.ScriptHash, + hash: subValidatorHash + }, this.network); + const voidRedeemer = Data.Void(); + tx.addWithdrawal(subValidatorRewardAccount, 0n, voidRedeemer); + + // Build per-action-type outputs, minting, and state updates + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const sUSDrAssetId = Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + switch (actionType) { + case "mint": + this.buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + break; + case "burn": + this.buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings); + break; + case "withdraw": + this.buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings); + break; + case "deposit": + this.buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings); + break; + case "stake": + this.buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum); + break; + case "unstake": + this.buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum, settings); + break; + case "direct_mint": + this.buildDirectMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum); + break; + case "direct_burn": + this.buildDirectBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum); + break; + } + + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Per-Action Execute Builders (rc1: no fees, plain min-ADA destination outputs) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + */ + buildMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send USDr to each destination + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress(this.network, orderInfo.datum.destination); + addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount])); + } + + // Mint USDr + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Compute per-reserve-asset deltas + const reserveDeltas = computeReserveDeltas(orderInfos, settings); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalAmount); + } + + /** + * Burn: USDr burned, reserve sent to destinations. + */ + buildBurnExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, settings) { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send reserve tokens to each destination + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress(this.network, orderInfo.datum.destination); + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const reserveAssetId = Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + const reserveAmount = usdrToReserve(-orderInfo.amount, ra); + addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount])); + } + + // Burn USDr (totalAmount is negative) + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Compute per-reserve-asset deltas + const reserveDeltas = computeReserveDeltas(orderInfos, settings); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalAmount); + } + + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + buildWithdrawExecute(tx, orderInfos, treasuryUtxo, parsedTreasuryDatum, settings) { + // Destination outputs: send reserve tokens to each destination + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress(this.network, orderInfo.datum.destination); + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const reserveAssetId = Core.AssetId(orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]); + const reserveAmount = usdrToReserve(orderInfo.amount, ra); + addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount])); + } + + // Update treasury: reserve decreases, no circulating_supply change + const reserveDeltas = computeReserveDeltas(orderInfos, settings, true); + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, 0n); + } + + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + buildDepositExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum, vaultUtxo, parsedVaultDatum, settings) { + const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n); + + // Destination outputs: min ADA to each destination + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress(this.network, orderInfo.datum.destination); + addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE)); + } + + // Calculate yield split + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + const { + stakedYieldShare, + unstakedYieldShare + } = calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating); + if (totalYield > 0n) { + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + if (unstakedYieldShare > 0n) { + const yieldPotAddress = destinationToAddress(this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum" + }); + addDirectOutput(tx, yieldPotAddress, makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare])); + } + } else if (totalYield < 0n) { + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalYield]]), Data.Void()); + } + + // Update treasury + const reserveDeltas = new Map(); + for (const orderInfo of orderInfos) { + const assetId = orderInfo.reserveAsset[0] + orderInfo.reserveAsset[1]; + const ra = findReserveAsset(settings, orderInfo.reserveAsset); + const yieldValue = orderInfo.yield ?? 0n; + const usdrBacking = yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount; + const reserveAmount = usdrToReserve(usdrBacking, ra); + reserveDeltas.set(assetId, (reserveDeltas.get(assetId) ?? 0n) + reserveAmount); + } + this.updateTreasuryOutput(tx, treasuryUtxo, parsedTreasuryDatum, reserveDeltas, totalYield); + + // Update vault + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, 0n, stakedYieldShare); + } + + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + */ + buildStakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum) { + const totalUSDrStaked = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + let totalSUSDrMinted; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + totalSUSDrMinted = totalUSDrStaked; + } else { + totalSUSDrMinted = totalUSDrStaked * circulatingSUSDr / vaultUSDr; + } + for (const orderInfo of orderInfos) { + let sUSDrAmount; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + sUSDrAmount = orderInfo.amount; + } else { + sUSDrAmount = orderInfo.amount * circulatingSUSDr / vaultUSDr; + } + const destAddress = destinationToAddress(this.network, orderInfo.datum.destination); + addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE, [sUSDrAssetId, sUSDrAmount])); + } + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]), Data.Void()); + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, totalSUSDrMinted, totalUSDrStaked); + } + + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + * V1_0Rc1: Supports forfeit parameter - forfeited USDr goes to yield pot. + */ + buildUnstakeExecute(tx, orderInfos, stablecoinAssetId, sUSDrAssetId, vaultUtxo, parsedVaultDatum, settings) { + const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + if (circulatingSUSDr === 0n) { + throw new Error("Cannot unstake: no sUSDr in circulation"); + } + let totalUSDrReleased = 0n; + let totalForfeit = 0n; + for (const orderInfo of orderInfos) { + const uSDrEntitled = orderInfo.amount * vaultUSDr / circulatingSUSDr; + const forfeit = orderInfo.forfeit ?? 0n; + const uSDrAmount = uSDrEntitled - forfeit; + totalUSDrReleased += uSDrEntitled; + totalForfeit += forfeit; + const destAddress = destinationToAddress(this.network, orderInfo.datum.destination); + const output = new Core.TransactionOutput(destAddress, makeValue(MIN_LOVELACE, [stablecoinAssetId, uSDrAmount])); + tx.addOutput(output); + } + + // Send forfeited USDr to yield pot if any + if (totalForfeit > 0n) { + const yieldPotAddress = destinationToAddress(this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum" + }); + addDirectOutput(tx, yieldPotAddress, makeValue(MIN_LOVELACE, [stablecoinAssetId, totalForfeit])); + } + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]), Data.Void()); + this.updateVaultOutput(tx, vaultUtxo, parsedVaultDatum, -totalSUSDrBurned, -totalUSDrReleased); + } + + /** + * DirectMint: Mint USDr without reserve asset flow. + * USDr is minted to destinations, treasury circulating_supply increases. + * NO reserve asset changes. + */ + buildDirectMintExecute(tx, orderInfos, stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum) { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send USDr to each destination + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress(this.network, orderInfo.datum.destination); + addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount])); + } + + // Mint USDr + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Update treasury: circulating_supply increases, NO reserve changes + this.updateTreasuryOutputNoReserve(tx, treasuryUtxo, parsedTreasuryDatum, totalAmount); + } + + /** + * DirectBurn: Burn USDr without reserve asset flow. + * USDr is burned, treasury circulating_supply decreases. + * NO reserve asset changes, NO destination outputs (fiat sent off-chain). + * + * The `_stablecoinAssetId` parameter exists only to keep the override + * signature compatible with the family's; rc1's direct-burn output is + * min-ADA only and does not touch the stablecoin asset. + */ + buildDirectBurnExecute(tx, orderInfos, _stablecoinAssetId, treasuryUtxo, parsedTreasuryDatum) { + // totalAmount is negative for burns (from classifyOrderAction) + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // CRITICAL: No destination outputs for DirectBurn + // USDr is burned, fiat is sent off-chain. Nothing goes to user on-chain. + // We just need to return min ADA to the destination (contract may require this) + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress(this.network, orderInfo.datum.destination); + addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE)); + } + + // Burn USDr (totalAmount is negative) + tx.addMint(this.stablecoinPolicyId, new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), Data.Void()); + + // Update treasury: circulating_supply decreases, NO reserve changes + this.updateTreasuryOutputNoReserve(tx, treasuryUtxo, parsedTreasuryDatum, totalAmount); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Protected Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Classify an order action from its datum (rc1 actions carry no min_received). + */ + classifyOrderAction(datum) { + const action = datum.action; + if ("OMint" in action) { + return { + actionType: "mint", + amount: action.OMint.amount, + reserveAsset: action.OMint.reserve_asset, + isTreasuryAction: true + }; + } else if ("ORedeem" in action) { + return { + actionType: "burn", + amount: -action.ORedeem.amount, + reserveAsset: action.ORedeem.reserve_asset, + isTreasuryAction: true + }; + } else if ("ODeposit" in action) { + return { + actionType: "deposit", + amount: action.ODeposit.principal, + yield: action.ODeposit.yield, + reserveAsset: action.ODeposit.reserve_asset, + isTreasuryAction: true + }; + } else if ("OWithdraw" in action) { + return { + actionType: "withdraw", + amount: action.OWithdraw.amount, + reserveAsset: action.OWithdraw.reserve_asset, + isTreasuryAction: true + }; + } else if ("OStake" in action) { + return { + actionType: "stake", + amount: action.OStake.amount, + isTreasuryAction: false + }; + } else if ("OUnstake" in action) { + return { + actionType: "unstake", + amount: action.OUnstake.amount, + forfeit: action.OUnstake.forfeit, + isTreasuryAction: false + }; + } else if ("ODirectMint" in action) { + return { + actionType: "direct_mint", + amount: action.ODirectMint.amount, + isTreasuryAction: true + }; + } else if ("ODirectBurn" in action) { + return { + actionType: "direct_burn", + amount: -action.ODirectBurn.amount, + isTreasuryAction: true + }; + } + throw new Error("Unknown order action type"); + } +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1_0_rc1/index.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v1_0_rc1/index.js.map new file mode 100644 index 0000000000..f31271fb9d --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1_0_rc1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["addressFromValidator","blake2b_256","HexBlob","PlutusData","toHex","Data","parse","Core","makeValue","BaseTypes","V0_1Types","V0_4Types","V1_0Rc1Types","addDirectOutput","buildNonceFromUtxo","buildMultisigTimelockNativeScript","buildTimelockDestination","buildUnstakeMetadatum","UNSTAKE_METADATA_LABEL","destinationToAddress","findReserveAsset","usdrToReserve","usdrToReserveCeil","computeReserveDeltas","sortOrderInputs","calculateYieldShares","MIN_LOVELACE","RealfiSDKV1Family","screenDepositBatch","DIRECT_ACTION_PADDING_ASSET","repeat","TextEncoder","encode","getRequestsFromAction","action","Mint","requests","Burn","Withdraw","Deposit","Stake","Unstake","DirectMint","DirectBurn","Error","RealfiSDKV1_0Rc1","constructor","args","_defineProperty","create","blaze","params","enableTrace","oneShotScript","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","oneShotPolicyId","hash","protocolMintScript","V1_0Rc1ProtocolMintProtocolMintWithdraw","protocolStakeScript","V1_0Rc1ProtocolStakeProtocolStakeWithdraw","protocolManagementScript","V1_0Rc1ProtocolManagementProtocolManagementWithdraw","protocolOrchestratorScript","V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","mintProxyScript","BaseMintProxyMintProxyMint","treasuryScript","useV0_1Treasury","V0_1TreasuryTreasurySpend","treasuryBootstrap","V1_0Rc1TreasuryTreasurySpend","orderScript","V1_0Rc1OrderOrderSpend","stakingVaultScript","useV0_4StakingVault","V0_4StakingVaultStakingVaultSpend","stakingVaultBootstrap","V1_0Rc1StakingVaultStakingVaultSpend","version","assetNameHex","sUSDrAssetNameHex","scriptDeploymentAddress","clientSource","deployedValidators","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","orderRefInput","stakingVaultRefInput","settingsConfig","settings","settingsRegistry","registry","buildInitialVaultDatum","circulating_susdr","buildUpdatedVaultDatum","previous","sUSDrDelta","buildStakeContinuation","_params","_buildOrderTx","orderContractAddress","network","owner","Signature","key_hash","wallet","getChangeAddress","getProps","paymentPart","toString","orderDatum","destination","data","Void","serializedDatum","serialize","OrderDatumV1","tx","newOrderTransaction","extraLabels","lockAssets","valueToLock","buildMintOrderTx","amount","reserveAssetId","AssetId","reserveAsset","getVersionSettings","ra","reserveAmount","OMint","reserve_asset","buildRedeemOrderTx","stablecoinAssetId","stablecoinPolicyId","ORedeem","buildStakeOrderTx","OStake","_buildUnstakeOrderTx","forfeit","sUSDrAssetId","OUnstake","buildUnstakeOrderTx","timelockDestination","unlockSlot","Map","buildTreasuryUnstakeOrderTx","nativeScript","address","payment_credential","stake_credential","datum","getSignedPayloadFromOrderInputs","orderInputs","length","sortedInputs","nonce","resolvedUtxos","provider","resolveUnspentOutputs","actionType","treasuryRequests","utxo","datumData","output","asInlineData","origin","input","transactionId","index","parsed","classifyOrderAction","screened","screenOrderForExecution","ok","reason","isTreasuryAction","push","yield","batchVerdict","map","request","payload","serialized","SignedPayload_v1_0_ProtocolRedeemerV1","signedPayload","toCbor","payloadHash","buildExecuteOrdersTx","signedPayloadCbor","signatures","fromCbor","sortedOrderInputs","orderUtxos","orderInfos","parseOrderInfos","proxyUtxo","parsedProxyDatum","getParsedProxyDatum","needsTreasury","includes","needsVault","isMintAction","isStakeAction","scriptHashesNeeded","protocol","protocolScriptHash","order","orderScriptHash","protocolMint","protocolMintScriptHash","protocolStake","protocolStakeScriptHash","protocolManagement","protocolManagementScriptHash","treasury","treasuryScriptHash","stakingVault","stakingVaultScriptHash","refInputs","getScriptReferenceInputs","treasuryUtxo","parsedTreasuryDatum","treasuryResult","getTreasuryDatum","vaultUtxo","parsedVaultDatum","vaultResult","getVaultDatum","walletUtxos","getUnspentOutputs","excludedInputIds","Set","utxoKey","inp","orderInfo","add","refUtxo","Object","values","feeUtxos","filter","has","allInputRefs","o","feeUtxo","sortedAllInputRefs","sort","a","b","txA","txB","Number","findInputIdx","idx","findIndex","r","BigInt","treasuryInputIdx","vaultInputIdx","undefined","signedRequests","originToRequestIdx","i","set","inputToRequests","requestToOutputs","outputIdx","key","requestIdx","get","numDestOutputs","numExtraOutputs","totalYield","reduce","sum","vaultValue","vaultUSDr","multiasset","treasuryCirculating","circulating_supply","unstakedYieldShare","totalForfeit","treasuryOutputIdx","vaultOutputIdx","extra","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","serializedSignedRedeemer","SignedRedeemer_v1_0_ExtraProtocolRedeemerV1","executeRedeemer","OrderRedeemerV1","addInput","addReferenceInput","orchestratorRewardAccount","RewardAccount","fromCredential","type","CredentialType","ScriptHash","addWithdrawal","subValidatorHash","subValidatorRewardAccount","voidRedeemer","buildMintExecute","buildBurnExecute","buildWithdrawExecute","buildDepositExecute","buildStakeExecute","buildUnstakeExecute","buildDirectMintExecute","buildDirectBurnExecute","provideScript","totalAmount","destAddress","addMint","AssetName","reserveDeltas","updateTreasuryOutput","stakedYieldShare","yieldPotAddress","unstaked_yield_pot","assetId","yieldValue","usdrBacking","updateVaultOutput","totalUSDrStaked","circulatingSUSDr","totalSUSDrMinted","sUSDrAmount","totalSUSDrBurned","totalUSDrReleased","uSDrEntitled","uSDrAmount","TransactionOutput","addOutput","updateTreasuryOutputNoReserve","_stablecoinAssetId","ODeposit","principal","OWithdraw","ODirectMint","ODirectBurn"],"sources":["../../../../src/sdk/v1_0_rc1/index.ts"],"sourcesContent":["import {\n addressFromValidator,\n blake2b_256,\n HexBlob,\n PlutusData,\n toHex,\n} from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n TxBuilder,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport {\n BaseTypes,\n V0_1Types,\n V0_4Types,\n V1_0Rc1Types,\n} from \"../../generated-types/index.js\";\nimport type { TreasuryDatum as V0_1TreasuryDatum } from \"../../generated-types/v0_1/index.js\";\nimport type {\n Destination,\n MultisigScript,\n OrderDatumV1,\n RegistryV1,\n SettingsV1,\n VaultDatumV1,\n} from \"../../generated-types/v1_0_rc1/index.js\";\n\nimport {\n addDirectOutput,\n buildNonceFromUtxo,\n buildMultisigTimelockNativeScript,\n buildTimelockDestination,\n buildUnstakeMetadatum,\n UNSTAKE_METADATA_LABEL,\n destinationToAddress,\n findReserveAsset,\n usdrToReserve,\n usdrToReserveCeil,\n computeReserveDeltas,\n sortOrderInputs,\n} from \"../shared/index.js\";\nimport {\n calculateYieldShares,\n MIN_LOVELACE,\n RealfiSDKV1Family,\n type IBuildStakeContinuationParams,\n type IStakeContinuation,\n type IOrderInfo,\n type TOrderActionType,\n} from \"../v1/family.js\";\nimport { screenDepositBatch } from \"../v1/order-sanity.js\";\nimport type { TV1SettingsConfig } from \"../v1/types.js\";\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Constants\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Sentinel `reserve_asset` used in V1_0_Rc1 TreasuryRequestV1 redeemers for\n * DirectMint and DirectBurn actions, which have no real reserve asset in\n * their order datum. The on-chain validators `direct_mint_logic` and\n * `direct_burn_logic` do not inspect this field; this sentinel makes the\n * intent explicit both in code and when inspecting on-chain redeemers.\n *\n * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a\n * sentinel and extremely unlikely to occur as a real script hash)\n * - `asset_name`: \"unused\" (ASCII)\n *\n * Keep in sync with backend `contract.DirectActionPaddingAsset`.\n */\nexport const DIRECT_ACTION_PADDING_ASSET: V1_0Rc1Types.Asset = [\n \"00\".repeat(28),\n toHex(new TextEncoder().encode(\"unused\")),\n];\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Types\n// ─────────────────────────────────────────────────────────────────────────────\n\nexport interface ITreasuryUnstakeOrderTxResultRc1 {\n /** Transaction builder for the treasury unstake order. */\n tx: TxBuilder;\n /**\n * Native script used as the unstake output destination:\n * AllOf { After(unlockSlot), owner }.\n */\n nativeScript: Core.NativeScript;\n}\n\n/**\n * Extract the requests list from a signed payload action, regardless of action type.\n * Both TreasuryRequestV1 and RequestV1 have `origin: { transaction_id, output_index }`.\n */\nfunction getRequestsFromAction(\n action: V1_0Rc1Types.ProtocolRedeemerV1,\n): Array<{ origin: { transaction_id: string; output_index: bigint } }> {\n if (\"Mint\" in action) return action.Mint.requests;\n if (\"Burn\" in action) return action.Burn.requests;\n if (\"Withdraw\" in action) return action.Withdraw.requests;\n if (\"Deposit\" in action) return action.Deposit.requests;\n if (\"Stake\" in action) return action.Stake.requests;\n if (\"Unstake\" in action) return action.Unstake.requests;\n if (\"DirectMint\" in action) return action.DirectMint.requests;\n if (\"DirectBurn\" in action) return action.DirectBurn.requests;\n throw new Error(\"Unknown action type in signed payload\");\n}\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV1_0Rc1 {\n version: \"V1_0_Rc1\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** USDr asset name hex */\n assetNameHex: string;\n /** sUSDr asset name hex */\n sUSDrAssetNameHex: string;\n /** The treasury bootstrap UTxO reference */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** The staking vault bootstrap UTxO reference */\n stakingVaultBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Use V0.1 treasury script instead of V1.0.\n * This is needed for protocol-only upgrades where the treasury NFT\n * remains at the V0.1 treasury address. Default: false\n */\n useV0_1Treasury?: boolean;\n /**\n * Use V0.4 staking vault script instead of V1.0.\n * This is needed for protocol-only upgrades where the vault NFT\n * remains at the V0.4 vault address. Default: false\n */\n useV0_4StakingVault?: boolean;\n /**\n * Hashes of the validators this deployment actually runs. See\n * IV1FamilyConstructorParams.deployedValidators.\n */\n deployedValidators?: Readonly>;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n stakingVaultRefInput?: Core.TransactionUnspentOutput;\n };\n clientSource?: import(\"../shared/client-id.js\").TClientSource;\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// SDK Class\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * V1_0Rc1 SDK implementation.\n *\n * Extends V0_4 with:\n * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios)\n * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded\n * - Forfeit parameter: Support yield forfeiture during unstake operations\n * - New Settings fields: direct_mint_permission, direct_burn_permission\n *\n * Scaffolding (scripts, deploy/register, treasury, vault, one-shot, cancel,\n * invalidate) is inherited from {@link RealfiSDKV1Family}. The release\n * candidate's protocol redeemer schema is structurally different from v1_0\n * (`TreasuryRequestV1[]` + `RequestV1[]`, no fees, no `min_received`), so the\n * order builders, signed-payload construction, and execute builders override\n * the family's v1_0-semantics defaults with the rc1 behavior verbatim. No\n * signing schemas are passed to the family constructor — both consumers are\n * overridden here.\n */\nexport class RealfiSDKV1_0Rc1<\n P extends Provider,\n W extends Wallet,\n> extends RealfiSDKV1Family {\n readonly version = \"V1_0_Rc1\" as const;\n\n /**\n * Create a V1_0Rc1 SDK instance.\n */\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_0Rc1,\n ): RealfiSDKV1_0Rc1 {\n const enableTrace = params.enableTrace ?? false;\n\n // 1. Create oneshot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n\n // 2. Create sub-validator scripts first (they only need proxy policy)\n const protocolMintScript =\n new V1_0Rc1Types.V1_0Rc1ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolStakeScript =\n new V1_0Rc1Types.V1_0Rc1ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolManagementScript =\n new V1_0Rc1Types.V1_0Rc1ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 3. Create orchestrator with sub-validator hashes\n const protocolOrchestratorScript =\n new V1_0Rc1Types.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintScript.hash(),\n protocolStakeScript.hash(),\n protocolManagementScript.hash(),\n enableTrace,\n ).Script;\n\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Use V0.1 or V1.0 treasury script based on option\n // V0.1 is needed for protocol-only upgrades where treasury stays at V0.1 address\n const treasuryScript = params.useV0_1Treasury\n ? new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_0Rc1Types.V1_0Rc1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 4. Create order script with orchestrator hash (order needs to know the protocol)\n const orderScript = new V1_0Rc1Types.V1_0Rc1OrderOrderSpend(\n oneShotPolicyId,\n protocolOrchestratorScript.hash(),\n enableTrace,\n ).Script;\n\n // Use V0.4 or V1.0 staking vault script based on option\n // V0.4 is needed for protocol-only upgrades where vault stays at V0.4 address\n const stakingVaultScript = params.useV0_4StakingVault\n ? new V0_4Types.V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_0Rc1Types.V1_0Rc1StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV1_0Rc1(\n blaze,\n {\n version: \"V1_0_Rc1\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n sUSDrAssetNameHex: params.sUSDrAssetNameHex,\n enableTrace,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n clientSource: params.clientSource,\n deployedValidators: params.deployedValidators,\n },\n V1_0Rc1Types,\n {\n oneShotScript,\n protocolOrchestratorScript,\n protocolMintScript,\n protocolStakeScript,\n protocolManagementScript,\n mintProxyScript,\n treasuryScript,\n orderScript,\n stakingVaultScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n orderRefInput: params.referenceInputs?.orderRefInput,\n stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput,\n },\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Version Seams\n // ─────────────────────────────────────────────────────────────────────────────\n\n protected settingsConfig(settings: SettingsV1): TV1SettingsConfig {\n // V1_0_Rc1 settings are flat: the settings object IS the config.\n return settings;\n }\n\n protected settingsRegistry(settings: SettingsV1): RegistryV1 {\n return settings.registry;\n }\n\n protected buildInitialVaultDatum(): VaultDatumV1 {\n return { circulating_susdr: 0n };\n }\n\n protected buildUpdatedVaultDatum(\n previous: VaultDatumV1,\n sUSDrDelta: bigint,\n ): VaultDatumV1 {\n return { circulating_susdr: previous.circulating_susdr + sUSDrDelta };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Order Builder Methods (rc1 order datums carry no min_received)\n // ─────────────────────────────────────────────────────────────────────────────\n\n override async buildStakeContinuation(\n _params: IBuildStakeContinuationParams,\n ): Promise {\n throw new Error(\n \"Stake continuations are not supported on V1_0_Rc1 because its order schema has no min_received\",\n );\n }\n\n /**\n * Internal helper to build an order transaction.\n */\n protected override async _buildOrderTx(params: {\n action: V1_0Rc1Types.OrderActionV1;\n valueToLock: Core.Value;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n extraLabels?: Map;\n }): Promise {\n const orderContractAddress = addressFromValidator(\n this.network,\n this.orderScript,\n );\n\n let owner = params.owner;\n if (!owner) {\n owner = {\n Signature: {\n key_hash: (await this.blaze.wallet.getChangeAddress())\n .getProps()\n .paymentPart!.hash!.toString(),\n },\n };\n }\n\n const orderDatum: OrderDatumV1 = {\n action: params.action,\n owner,\n destination: params.destination,\n data: params.data ?? Data.Void(),\n };\n const serializedDatum = Data.serialize(\n V1_0Rc1Types.OrderDatumV1,\n orderDatum,\n );\n\n const tx = this.newOrderTransaction(params.extraLabels);\n tx.lockAssets(orderContractAddress, params.valueToLock, serializedDatum);\n return tx;\n }\n\n /**\n * Build a mint order: lock reserve tokens, request USDr minting.\n */\n override async buildMintOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Mint amount must be positive\");\n }\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n // Convert USDr amount to reserve amount using ceiling division\n // to ensure enough reserve is locked for on-chain validation\n const settings = await this.getVersionSettings();\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAmount = usdrToReserveCeil(params.amount, ra);\n return this._buildOrderTx({\n action: {\n OMint: { amount: params.amount, reserve_asset: params.reserveAsset },\n },\n valueToLock: makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a redeem (burn) order: lock USDr, request reserve token redemption.\n */\n override async buildRedeemOrderTx(params: {\n amount: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Redeem amount must be positive\");\n }\n const settings = await this.getVersionSettings();\n findReserveAsset(settings, params.reserveAsset);\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n return this._buildOrderTx({\n action: {\n ORedeem: {\n amount: params.amount,\n reserve_asset: params.reserveAsset,\n },\n },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n /**\n * Build a stake order: lock USDr, request sUSDr minting.\n */\n override async buildStakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Stake amount must be positive\");\n }\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n return this._buildOrderTx({\n action: { OStake: { amount: params.amount } },\n valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n protected override async _buildUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n forfeit?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n extraLabels?: Map;\n }): Promise {\n if (params.amount <= 0n) {\n throw new Error(\"Unstake amount must be positive\");\n }\n const forfeit = params.forfeit ?? 0n;\n if (forfeit < 0n) {\n throw new Error(\"Forfeit amount cannot be negative\");\n }\n\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n\n return this._buildOrderTx({\n action: { OUnstake: { amount: params.amount, forfeit } },\n valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]),\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n extraLabels: params.extraLabels,\n });\n }\n\n /**\n * Build an unstake order: lock sUSDr, request USDr release.\n *\n * The destination is automatically set to a native script address that\n * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }.\n * This means the released USDr can only be spent by the user after the\n * unlock time has passed.\n *\n * @param params.amount - Amount of sUSDr to unstake\n * @param params.destination - The user's actual destination (used to extract payment key hash)\n * @param params.unlockSlot - Slot number after which the user can spend the released USDr\n * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0)\n */\n override async buildUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n unlockSlot: bigint;\n forfeit?: bigint;\n owner?: MultisigScript;\n data?: PlutusData;\n }): Promise {\n const timelockDestination = buildTimelockDestination(\n params.destination,\n params.unlockSlot,\n );\n const extraLabels = new Map([\n [\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(params.destination, params.unlockSlot),\n ],\n ]);\n\n return this._buildUnstakeOrderTx({\n amount: params.amount,\n destination: timelockDestination,\n forfeit: params.forfeit,\n owner: params.owner,\n data: params.data,\n extraLabels,\n });\n }\n\n /**\n * Build a treasury-managed unstake order that wraps the destination in a\n * native timelock script controlled by the order owner.\n *\n * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps\n * treasury multisig ownership on the released USDr while enforcing the same\n * unlock slot used by the retail unstake helper. The owner must be convertible\n * to a Cardano native script.\n */\n override async buildTreasuryUnstakeOrderTx(params: {\n amount: bigint;\n destination: Destination;\n unlockSlot: bigint;\n forfeit?: bigint;\n owner: MultisigScript;\n data?: PlutusData;\n }): Promise {\n const nativeScript = buildMultisigTimelockNativeScript(\n params.owner,\n params.unlockSlot,\n );\n const timelockDestination: Destination = {\n address: {\n payment_credential: { Script: [nativeScript.hash()] },\n stake_credential: params.destination.address.stake_credential,\n },\n datum: \"NoDatum\",\n };\n\n // Attach the unstake metadata (label 55534472) exactly like the retail\n // path (buildUnstakeOrderTx). track-chain requires this label to index the\n // order; without it the confirmed unstake output is silently dropped\n // (WTB-1466). Mirror retail precisely: the metadatum is built from the\n // user-supplied destination (params.destination), not the derived timelock\n // destination, and carries the same unlock_time.\n const extraLabels = new Map([\n [\n UNSTAKE_METADATA_LABEL,\n buildUnstakeMetadatum(params.destination, params.unlockSlot),\n ],\n ]);\n\n const tx = await this._buildUnstakeOrderTx({\n amount: params.amount,\n destination: timelockDestination,\n forfeit: params.forfeit,\n owner: params.owner,\n data: params.data,\n extraLabels,\n });\n\n return { tx, nativeScript };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Signed Payload and Signing\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build the V1_0Rc1 SignedPayload_ProtocolRedeemer from order inputs.\n * Returns both the CBOR hex string (for buildExecuteOrdersTx) and\n * the blake2b_256 hash (for CIP-30 signing).\n */\n override async getSignedPayloadFromOrderInputs(\n orderInputs: Core.TransactionInput[],\n ): Promise<{ signedPayload: string; payloadHash: string }> {\n if (orderInputs.length === 0) {\n throw new Error(\"At least one order input is required\");\n }\n\n const sortedInputs = sortOrderInputs(orderInputs);\n const nonce = buildNonceFromUtxo(sortedInputs[0]!) as V1_0Rc1Types.Nonce;\n\n const resolvedUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedInputs);\n\n let actionType: TOrderActionType | null = null;\n const treasuryRequests: V1_0Rc1Types.TreasuryRequestV1[] = [];\n const requests: V1_0Rc1Types.RequestV1[] = [];\n\n for (const utxo of resolvedUtxos) {\n const datumData = utxo.output().datum()?.asInlineData();\n if (!datumData) {\n throw new Error(\"Order UTXO has no inline datum\");\n }\n const datum = parse(V1_0Rc1Types.OrderDatumV1, datumData) as OrderDatumV1;\n const origin = {\n transaction_id: utxo.input().transactionId().toString(),\n output_index: utxo.input().index(),\n };\n\n const parsed = this.classifyOrderAction(datum);\n\n // WTB-1764: same screen the family applies. rc1 has no min_received, but\n // its predicates still demand an amount sign (`v1_0_rc1/stake.ak:64`,\n // `unstake.ak:64`) and every one of them is an `expect` inside a single\n // fold, so a request that fails takes the whole transaction with it.\n const screened = await this.screenOrderForExecution(utxo, parsed);\n if (!screened.ok) {\n throw new Error(\n `Order ${origin.transaction_id}#${origin.output_index} cannot be executed: ` +\n `${screened.reason}. Every order batched with it would crash on-chain.`,\n );\n }\n\n if (actionType === null) {\n actionType = parsed.actionType;\n } else if (actionType !== parsed.actionType) {\n throw new Error(\n \"Mixed order types in inputs. All orders must be of the same type.\",\n );\n }\n\n if (parsed.isTreasuryAction) {\n // DirectMint/DirectBurn datums have no reserve_asset; the redeemer\n // struct requires one but the on-chain validator ignores it for\n // direct actions, so we pad with DIRECT_ACTION_PADDING_ASSET.\n const reserveAsset = parsed.reserveAsset ?? DIRECT_ACTION_PADDING_ASSET;\n treasuryRequests.push({\n destination: datum.destination,\n amount: parsed.amount,\n yield: parsed.yield ?? 0n,\n origin,\n reserve_asset: reserveAsset,\n });\n } else {\n requests.push({\n destination: datum.destination,\n amount: parsed.amount,\n origin,\n forfeit: parsed.forfeit ?? 0n,\n });\n }\n }\n\n if (actionType === \"deposit\") {\n const batchVerdict = screenDepositBatch(\n treasuryRequests.map((request) => ({\n actionType: \"deposit\",\n amount: request.amount,\n yield: request.yield,\n })),\n );\n if (!batchVerdict.ok) {\n throw new Error(\n `${batchVerdict.reason}. Every order batched with it would crash on-chain.`,\n );\n }\n }\n\n let action: V1_0Rc1Types.ProtocolRedeemerV1;\n switch (actionType) {\n case \"mint\":\n action = { Mint: { requests: treasuryRequests } };\n break;\n case \"burn\":\n action = { Burn: { requests: treasuryRequests } };\n break;\n case \"withdraw\":\n action = { Withdraw: { requests: treasuryRequests } };\n break;\n case \"deposit\":\n action = { Deposit: { requests: treasuryRequests } };\n break;\n case \"stake\":\n action = { Stake: { requests } };\n break;\n case \"unstake\":\n action = { Unstake: { requests } };\n break;\n case \"direct_mint\":\n action = { DirectMint: { requests: treasuryRequests } };\n break;\n case \"direct_burn\":\n action = { DirectBurn: { requests: treasuryRequests } };\n break;\n default:\n throw new Error(\"No orders to process\");\n }\n\n const payload: V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1 = {\n action,\n nonce,\n };\n const serialized = Data.serialize(\n V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1,\n payload,\n );\n const signedPayload = serialized.toCbor().toString();\n const payloadHash = blake2b_256(HexBlob(signedPayload));\n\n return { signedPayload, payloadHash };\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Execute Orders\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a transaction to execute orders.\n *\n * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake,\n * direct_mint, direct_burn.\n */\n override async buildExecuteOrdersTx(params: {\n orderInputs: Core.TransactionInput[];\n signedPayload: string;\n signatures: V1_0Rc1Types.Tuple_VerificationKey_COSESign1[];\n }): Promise {\n const {\n orderInputs,\n signedPayload: signedPayloadCbor,\n signatures,\n } = params;\n\n // Deserialize CBOR hex to object for internal use\n const signedPayload = parse(\n V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1,\n PlutusData.fromCbor(HexBlob(signedPayloadCbor)),\n ) as V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1;\n\n // 1. Sort and resolve order UTxOs\n const sortedOrderInputs = sortOrderInputs(orderInputs);\n const orderUtxos =\n await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs);\n\n // 2. Parse orders and validate same type\n const orderInfos = this.parseOrderInfos(orderUtxos);\n const actionType = orderInfos[0]!.actionType;\n\n // 3. Get protocol settings\n const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum();\n const settings = parsedProxyDatum.settings as SettingsV1;\n\n // 4. Determine what we need\n const needsTreasury = [\n \"mint\",\n \"burn\",\n \"withdraw\",\n \"deposit\",\n \"direct_mint\",\n \"direct_burn\",\n ].includes(actionType);\n const needsVault = [\"stake\", \"unstake\", \"deposit\"].includes(actionType);\n\n // 5. Get script reference inputs\n // V1.0 requires the orchestrator and the relevant sub-validator script\n const isMintAction = [\n \"mint\",\n \"burn\",\n \"direct_mint\",\n \"direct_burn\",\n ].includes(actionType);\n const isStakeAction = [\"stake\", \"unstake\"].includes(actionType);\n\n const scriptHashesNeeded: Record = {\n protocol: this.protocolScriptHash,\n order: this.orderScriptHash,\n };\n if (isMintAction) {\n scriptHashesNeeded.protocolMint = this.protocolMintScriptHash;\n } else if (isStakeAction) {\n scriptHashesNeeded.protocolStake = this.protocolStakeScriptHash;\n } else {\n scriptHashesNeeded.protocolManagement = this.protocolManagementScriptHash;\n }\n if (needsTreasury) {\n scriptHashesNeeded.treasury = this.treasuryScriptHash;\n }\n if (needsVault) {\n scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash;\n }\n const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded);\n\n // 6. Fetch treasury and vault if needed\n let treasuryUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedTreasuryDatum: V0_1TreasuryDatum | undefined;\n if (needsTreasury) {\n const treasuryResult = await this.getTreasuryDatum();\n treasuryUtxo = treasuryResult.treasuryUtxo;\n parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum;\n }\n\n let vaultUtxo: Core.TransactionUnspentOutput | undefined;\n let parsedVaultDatum: VaultDatumV1 | undefined;\n if (needsVault) {\n const vaultResult = await this.getVaultDatum();\n vaultUtxo = vaultResult.vaultUtxo;\n parsedVaultDatum = vaultResult.parsedVaultDatum;\n }\n\n // 7. Gather wallet UTxOs so we can include them in index calculations.\n const walletUtxos = await this.blaze.wallet.getUnspentOutputs();\n const excludedInputIds = new Set();\n const utxoKey = (inp: Core.TransactionInput) =>\n `${inp.transactionId().toString()}#${inp.index().toString()}`;\n // Exclude script inputs (order, treasury, vault)\n for (const orderInfo of orderInfos) {\n excludedInputIds.add(utxoKey(orderInfo.utxo.input()));\n }\n if (treasuryUtxo) {\n excludedInputIds.add(utxoKey(treasuryUtxo.input()));\n }\n if (vaultUtxo) {\n excludedInputIds.add(utxoKey(vaultUtxo.input()));\n }\n // Exclude reference inputs (must be disjoint from regular inputs)\n excludedInputIds.add(utxoKey(proxyUtxo.input()));\n for (const refUtxo of Object.values(refInputs)) {\n if (refUtxo) {\n excludedInputIds.add(utxoKey(refUtxo.input()));\n }\n }\n const feeUtxos = walletUtxos.filter(\n (utxo) => !excludedInputIds.has(utxoKey(utxo.input())),\n );\n\n // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex).\n const allInputRefs: Core.TransactionInput[] = orderInfos.map((o) =>\n o.utxo.input(),\n );\n if (treasuryUtxo) {\n allInputRefs.push(treasuryUtxo.input());\n }\n if (vaultUtxo) {\n allInputRefs.push(vaultUtxo.input());\n }\n for (const feeUtxo of feeUtxos) {\n allInputRefs.push(feeUtxo.input());\n }\n\n const sortedAllInputRefs = [...allInputRefs].sort((a, b) => {\n const txA = a.transactionId().toString();\n const txB = b.transactionId().toString();\n if (txA < txB) return -1;\n if (txA > txB) return 1;\n return Number(a.index()) - Number(b.index());\n });\n\n const findInputIdx = (input: Core.TransactionInput): bigint => {\n const idx = sortedAllInputRefs.findIndex(\n (r) =>\n r.transactionId().toString() === input.transactionId().toString() &&\n r.index() === input.index(),\n );\n return BigInt(idx);\n };\n\n const treasuryInputIdx = treasuryUtxo\n ? findInputIdx(treasuryUtxo.input())\n : 0n;\n const vaultInputIdx = vaultUtxo\n ? findInputIdx(vaultUtxo.input())\n : undefined;\n\n // 8a. Correlate order inputs to signed request indices via origin fields.\n // When all orders are present this produces the same identity mapping as before.\n // When a subset is passed (partial execution), it maps each input to the\n // correct request index in the signed payload.\n const signedRequests = getRequestsFromAction(signedPayload.action);\n const originToRequestIdx = new Map();\n for (let i = 0; i < signedRequests.length; i++) {\n const o = signedRequests[i]!.origin;\n originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i);\n }\n\n const inputToRequests: bigint[] = [];\n const requestToOutputs: bigint[] = [];\n for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) {\n const input = orderInfos[outputIdx]!.utxo.input();\n const key = `${input.transactionId()}#${input.index()}`;\n const requestIdx = originToRequestIdx.get(key);\n if (requestIdx === undefined) {\n throw new Error(`Order input ${key} not found in signed payload`);\n }\n inputToRequests.push(BigInt(requestIdx));\n requestToOutputs.push(BigInt(outputIdx));\n }\n\n // 9. Build outputs and compute output indices\n const numDestOutputs = orderInfos.length;\n\n // For deposit with positive yield, the yield pot output is inserted after destinations\n let numExtraOutputs = 0;\n if (actionType === \"deposit\") {\n const totalYield = orderInfos.reduce(\n (sum, o) => sum + (o.yield ?? 0n),\n 0n,\n );\n if (totalYield > 0n) {\n const vaultValue = vaultUtxo!.output().amount();\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum!.circulating_supply;\n const { unstakedYieldShare } = calculateYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n );\n if (unstakedYieldShare > 0n) {\n numExtraOutputs = 1;\n }\n }\n }\n\n // For unstake with forfeit, add yield pot output\n if (actionType === \"unstake\") {\n const totalForfeit = orderInfos.reduce(\n (sum, o) => sum + (o.forfeit ?? 0n),\n 0n,\n );\n if (totalForfeit > 0n) {\n numExtraOutputs = 1;\n }\n }\n\n const treasuryOutputIdx = needsTreasury\n ? BigInt(numDestOutputs + numExtraOutputs)\n : 0n;\n const vaultOutputIdx = needsVault\n ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0))\n : undefined;\n\n // 10. Build ExtraProtocolRedeemer\n const extra: V1_0Rc1Types.ExtraProtocolRedeemerV1 = {\n request_to_outputs: requestToOutputs,\n input_to_requests: inputToRequests,\n treasury_input_idx: treasuryInputIdx,\n treasury_output_idx: treasuryOutputIdx,\n vault_input_idx: vaultInputIdx,\n vault_output_idx: vaultOutputIdx,\n };\n\n // 11. Build SignedRedeemer\n const serializedSignedRedeemer = Data.serialize(\n V1_0Rc1Types.SignedRedeemer_v1_0_ExtraProtocolRedeemerV1,\n {\n extra,\n payload: signedPayload,\n signatures,\n },\n );\n\n const executeRedeemer = Data.serialize(\n V1_0Rc1Types.OrderRedeemerV1,\n \"Execute\",\n );\n\n // 12. Build the transaction\n const tx = this.newOrderTransaction();\n\n // Add order inputs with Execute redeemer\n for (const orderInfo of orderInfos) {\n tx.addInput(orderInfo.utxo, executeRedeemer);\n }\n\n // Add wallet fee inputs explicitly\n for (const feeUtxo of feeUtxos) {\n tx.addInput(feeUtxo);\n }\n\n // Add reference inputs\n tx.addReferenceInput(refInputs.protocol!);\n tx.addReferenceInput(refInputs.order!);\n tx.addReferenceInput(proxyUtxo);\n // V1.0 sub-validator reference inputs\n if (refInputs.protocolMint) {\n tx.addReferenceInput(refInputs.protocolMint);\n }\n if (refInputs.protocolStake) {\n tx.addReferenceInput(refInputs.protocolStake);\n }\n if (refInputs.protocolManagement) {\n tx.addReferenceInput(refInputs.protocolManagement);\n }\n if (refInputs.treasury) {\n tx.addReferenceInput(refInputs.treasury);\n }\n if (refInputs.stakingVault) {\n tx.addReferenceInput(refInputs.stakingVault);\n }\n\n // Add orchestrator withdrawal with signed redeemer\n const orchestratorRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: this.protocolScriptHash,\n },\n this.network,\n );\n tx.addWithdrawal(orchestratorRewardAccount, 0n, serializedSignedRedeemer);\n\n // Determine which sub-validator to use based on action type\n const subValidatorHash =\n actionType === \"mint\" ||\n actionType === \"burn\" ||\n actionType === \"direct_mint\" ||\n actionType === \"direct_burn\"\n ? this.protocolMintScriptHash\n : actionType === \"stake\" || actionType === \"unstake\"\n ? this.protocolStakeScriptHash\n : this.protocolManagementScriptHash; // deposit, withdraw\n\n // Add sub-validator withdrawal with void redeemer\n const subValidatorRewardAccount = Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: subValidatorHash,\n },\n this.network,\n );\n const voidRedeemer = Data.Void();\n tx.addWithdrawal(subValidatorRewardAccount, 0n, voidRedeemer);\n\n // Build per-action-type outputs, minting, and state updates\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const sUSDrAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.sUSDrAssetNameHex,\n );\n\n switch (actionType) {\n case \"mint\":\n this.buildMintExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"burn\":\n this.buildBurnExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"withdraw\":\n this.buildWithdrawExecute(\n tx,\n orderInfos,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n settings,\n );\n break;\n case \"deposit\":\n this.buildDepositExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n vaultUtxo!,\n parsedVaultDatum!,\n settings,\n );\n break;\n case \"stake\":\n this.buildStakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n );\n break;\n case \"unstake\":\n this.buildUnstakeExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n sUSDrAssetId,\n vaultUtxo!,\n parsedVaultDatum!,\n settings,\n );\n break;\n case \"direct_mint\":\n this.buildDirectMintExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n );\n break;\n case \"direct_burn\":\n this.buildDirectBurnExecute(\n tx,\n orderInfos,\n stablecoinAssetId,\n treasuryUtxo!,\n parsedTreasuryDatum!,\n );\n break;\n }\n\n // Provide the mint proxy script for minting\n tx.provideScript(this.mintProxyScript);\n\n return tx;\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Per-Action Execute Builders (rc1: no fees, plain min-ADA destination outputs)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Mint: reserve goes to treasury, USDr minted to destinations.\n */\n protected override buildMintExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: SettingsV1,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send USDr to each destination\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n addDirectOutput(\n tx,\n destAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount]),\n );\n }\n\n // Mint USDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Compute per-reserve-asset deltas\n const reserveDeltas = computeReserveDeltas(orderInfos, settings);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalAmount,\n );\n }\n\n /**\n * Burn: USDr burned, reserve sent to destinations.\n */\n protected override buildBurnExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: SettingsV1,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send reserve tokens to each destination\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserve(-orderInfo.amount, ra);\n addDirectOutput(\n tx,\n destAddress,\n makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n );\n }\n\n // Burn USDr (totalAmount is negative)\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Compute per-reserve-asset deltas\n const reserveDeltas = computeReserveDeltas(orderInfos, settings);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalAmount,\n );\n }\n\n /**\n * Withdraw: reserve sent to destinations, no mint/burn.\n */\n protected override buildWithdrawExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n settings: SettingsV1,\n ): void {\n // Destination outputs: send reserve tokens to each destination\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const reserveAssetId = Core.AssetId(\n orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1],\n );\n const reserveAmount = usdrToReserve(orderInfo.amount, ra);\n addDirectOutput(\n tx,\n destAddress,\n makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]),\n );\n }\n\n // Update treasury: reserve decreases, no circulating_supply change\n const reserveDeltas = computeReserveDeltas(orderInfos, settings, true);\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n 0n,\n );\n }\n\n /**\n * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot.\n */\n protected override buildDepositExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatumV1,\n settings: SettingsV1,\n ): void {\n const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n);\n\n // Destination outputs: min ADA to each destination\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE));\n }\n\n // Calculate yield split\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n\n const { stakedYieldShare, unstakedYieldShare } = calculateYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n );\n\n if (totalYield > 0n) {\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n\n if (unstakedYieldShare > 0n) {\n const yieldPotAddress = destinationToAddress(this.network, {\n address: settings.unstaked_yield_pot,\n datum: \"NoDatum\",\n });\n addDirectOutput(\n tx,\n yieldPotAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare]),\n );\n }\n } else if (totalYield < 0n) {\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalYield]]),\n Data.Void(),\n );\n }\n\n // Update treasury\n const reserveDeltas = new Map();\n for (const orderInfo of orderInfos) {\n const assetId = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1];\n const ra = findReserveAsset(settings, orderInfo.reserveAsset!);\n const yieldValue = orderInfo.yield ?? 0n;\n\n const usdrBacking =\n yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount;\n\n const reserveAmount = usdrToReserve(usdrBacking, ra);\n reserveDeltas.set(\n assetId,\n (reserveDeltas.get(assetId) ?? 0n) + reserveAmount,\n );\n }\n this.updateTreasuryOutput(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n reserveDeltas,\n totalYield,\n );\n\n // Update vault\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n 0n,\n stakedYieldShare,\n );\n }\n\n /**\n * Stake: USDr locked in vault, sUSDr minted to destinations.\n */\n protected override buildStakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatumV1,\n ): void {\n const totalUSDrStaked = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n let totalSUSDrMinted: bigint;\n if (circulatingSUSDr === 0n || vaultUSDr === 0n) {\n totalSUSDrMinted = totalUSDrStaked;\n } else {\n totalSUSDrMinted = (totalUSDrStaked * circulatingSUSDr) / vaultUSDr;\n }\n\n for (const orderInfo of orderInfos) {\n let sUSDrAmount: bigint;\n if (circulatingSUSDr === 0n || vaultUSDr === 0n) {\n sUSDrAmount = orderInfo.amount;\n } else {\n sUSDrAmount = (orderInfo.amount * circulatingSUSDr) / vaultUSDr;\n }\n\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n addDirectOutput(\n tx,\n destAddress,\n makeValue(MIN_LOVELACE, [sUSDrAssetId, sUSDrAmount]),\n );\n }\n\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]),\n Data.Void(),\n );\n\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n totalSUSDrMinted,\n totalUSDrStaked,\n );\n }\n\n /**\n * Unstake: sUSDr burned, USDr sent to user's destination address.\n * V1_0Rc1: Supports forfeit parameter - forfeited USDr goes to yield pot.\n */\n protected override buildUnstakeExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n sUSDrAssetId: Core.AssetId,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatumV1,\n settings: SettingsV1,\n ): void {\n const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n const vaultValue = vaultUtxo.output().amount();\n const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n;\n const circulatingSUSDr = parsedVaultDatum.circulating_susdr;\n\n if (circulatingSUSDr === 0n) {\n throw new Error(\"Cannot unstake: no sUSDr in circulation\");\n }\n\n let totalUSDrReleased = 0n;\n let totalForfeit = 0n;\n\n for (const orderInfo of orderInfos) {\n const uSDrEntitled = (orderInfo.amount * vaultUSDr) / circulatingSUSDr;\n const forfeit = orderInfo.forfeit ?? 0n;\n const uSDrAmount = uSDrEntitled - forfeit;\n\n totalUSDrReleased += uSDrEntitled;\n totalForfeit += forfeit;\n\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n const output = new Core.TransactionOutput(\n destAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, uSDrAmount]),\n );\n tx.addOutput(output);\n }\n\n // Send forfeited USDr to yield pot if any\n if (totalForfeit > 0n) {\n const yieldPotAddress = destinationToAddress(this.network, {\n address: settings.unstaked_yield_pot,\n datum: \"NoDatum\",\n });\n addDirectOutput(\n tx,\n yieldPotAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, totalForfeit]),\n );\n }\n\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]),\n Data.Void(),\n );\n\n this.updateVaultOutput(\n tx,\n vaultUtxo,\n parsedVaultDatum,\n -totalSUSDrBurned,\n -totalUSDrReleased,\n );\n }\n\n /**\n * DirectMint: Mint USDr without reserve asset flow.\n * USDr is minted to destinations, treasury circulating_supply increases.\n * NO reserve asset changes.\n */\n protected override buildDirectMintExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n ): void {\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // Destination outputs: send USDr to each destination\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n addDirectOutput(\n tx,\n destAddress,\n makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount]),\n );\n }\n\n // Mint USDr\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Update treasury: circulating_supply increases, NO reserve changes\n this.updateTreasuryOutputNoReserve(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n totalAmount,\n );\n }\n\n /**\n * DirectBurn: Burn USDr without reserve asset flow.\n * USDr is burned, treasury circulating_supply decreases.\n * NO reserve asset changes, NO destination outputs (fiat sent off-chain).\n *\n * The `_stablecoinAssetId` parameter exists only to keep the override\n * signature compatible with the family's; rc1's direct-burn output is\n * min-ADA only and does not touch the stablecoin asset.\n */\n protected override buildDirectBurnExecute(\n tx: TxBuilder,\n orderInfos: IOrderInfo[],\n _stablecoinAssetId: Core.AssetId,\n treasuryUtxo: Core.TransactionUnspentOutput,\n parsedTreasuryDatum: V0_1TreasuryDatum,\n ): void {\n // totalAmount is negative for burns (from classifyOrderAction)\n const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n);\n\n // CRITICAL: No destination outputs for DirectBurn\n // USDr is burned, fiat is sent off-chain. Nothing goes to user on-chain.\n // We just need to return min ADA to the destination (contract may require this)\n for (const orderInfo of orderInfos) {\n const destAddress = destinationToAddress(\n this.network,\n orderInfo.datum.destination,\n );\n addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE));\n }\n\n // Burn USDr (totalAmount is negative)\n tx.addMint(\n this.stablecoinPolicyId,\n new Map([[Core.AssetName(this.assetNameHex), totalAmount]]),\n Data.Void(),\n );\n\n // Update treasury: circulating_supply decreases, NO reserve changes\n this.updateTreasuryOutputNoReserve(\n tx,\n treasuryUtxo,\n parsedTreasuryDatum,\n totalAmount,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Protected Helpers\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Classify an order action from its datum (rc1 actions carry no min_received).\n */\n protected override classifyOrderAction(datum: OrderDatumV1): {\n actionType: TOrderActionType;\n amount: bigint;\n yield?: bigint;\n forfeit?: bigint;\n reserveAsset?: [string, string];\n isTreasuryAction: boolean;\n } {\n const action = datum.action;\n if (\"OMint\" in action) {\n return {\n actionType: \"mint\",\n amount: action.OMint.amount,\n reserveAsset: action.OMint.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ORedeem\" in action) {\n return {\n actionType: \"burn\",\n amount: -action.ORedeem.amount,\n reserveAsset: action.ORedeem.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"ODeposit\" in action) {\n return {\n actionType: \"deposit\",\n amount: action.ODeposit.principal,\n yield: action.ODeposit.yield,\n reserveAsset: action.ODeposit.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OWithdraw\" in action) {\n return {\n actionType: \"withdraw\",\n amount: action.OWithdraw.amount,\n reserveAsset: action.OWithdraw.reserve_asset,\n isTreasuryAction: true,\n };\n } else if (\"OStake\" in action) {\n return {\n actionType: \"stake\",\n amount: action.OStake.amount,\n isTreasuryAction: false,\n };\n } else if (\"OUnstake\" in action) {\n return {\n actionType: \"unstake\",\n amount: action.OUnstake.amount,\n forfeit: action.OUnstake.forfeit,\n isTreasuryAction: false,\n };\n } else if (\"ODirectMint\" in action) {\n return {\n actionType: \"direct_mint\",\n amount: action.ODirectMint.amount,\n isTreasuryAction: true,\n };\n } else if (\"ODirectBurn\" in action) {\n return {\n actionType: \"direct_burn\",\n amount: -action.ODirectBurn.amount,\n isTreasuryAction: true,\n };\n }\n throw new Error(\"Unknown order action type\");\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/diffusion.js b/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/diffusion.js new file mode 100644 index 0000000000..71ddd14726 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/diffusion.js @@ -0,0 +1,125 @@ +export const SUSDR_EXCHANGE_RATE_PRECISION = 1_000_000n; + +/** + * Time-diffused yield — a verbatim TypeScript port of the on-chain helpers in + * `contracts/lib/v1_1_rc1/utilities.ak`. Deposited staked yield does not hit + * the exchange rate instantly; it releases linearly over a window so a large + * deposit cannot be sniped by staking right before it and unstaking right + * after. The SDK must reproduce this math exactly to build vault datums and + * rate quotes the validators accept. + * + * All timestamps are absolute POSIX milliseconds, matching the on-chain datum + * and the Plutus validity range (the ledger presents tx validity bounds to the + * script in POSIX ms, not slots). + */ + +/** + * Maximum tx validity-range span (ms) tolerated while a diffusion window is + * active. Mirrors `max_diffusion_rate_span` (utilities.ak). The validator + * rejects a wider range so an interpolated rate can't be read from a stale, + * far-future lower bound. + */ +export const MAX_DIFFUSION_RATE_SPAN_MS = 3_600_000n; + +/** + * USDr not yet diffused into the exchange rate at `atTimeMs`. Releases linearly + * from `diffusion_start` (full `pending_yield`) to `diffusion_end` (zero), + * rounded UP so settled backing is never overstated (conservative on unstake). + * + * Port of `pending_remaining` (utilities.ak:1082). + */ +export function pendingRemaining(vault, atTimeMs) { + const { + pending_yield, + diffusion_start, + diffusion_end + } = vault; + if (pending_yield <= 0n || atTimeMs >= diffusion_end) { + return 0n; + } + if (atTimeMs <= diffusion_start) { + return pending_yield; + } + const span = diffusion_end - diffusion_start; + // Round up: (a + span - 1) / span with BigInt truncating division. + return (pending_yield * (diffusion_end - atTimeMs) + span - 1n) / span; +} + +/** + * Settled backing — the USDr currently backing sUSDr — given the full vault + * USDr balance and diffusion state at `atTimeMs`. Port of `settled_backing` + * (utilities.ak:1099). When no window is active the whole balance is settled + * and `atTimeMs` is irrelevant (matches the validator, which then requires no + * validity bound). + */ +export function settledBacking(usdrBalance, vault, atTimeMs) { + if (vault.pending_yield <= 0n) { + return usdrBalance; + } + return usdrBalance - pendingRemaining(vault, atTimeMs); +} + +/** + * Diffusion-aware USDr-per-sUSDr exchange rate, scaled by `precision`. + * Returns 1:1 when no sUSDr is circulating, matching the on-chain convention. + */ +export function calculateSusdrExchangeRate(inputs, atTimeMs, precision = SUSDR_EXCHANGE_RATE_PRECISION) { + if (inputs.circulatingSusdr <= 0n) { + return precision; + } + const vault = { + circulating_susdr: inputs.circulatingSusdr, + pending_yield: inputs.pendingYield, + diffusion_start: inputs.diffusionStartUnixMilli, + diffusion_end: inputs.diffusionEndUnixMilli + }; + return settledBacking(inputs.vaultUsdr, vault, atTimeMs) * precision / inputs.circulatingSusdr; +} + +/** + * The diffusion fields (`pending_yield`, `diffusion_start`, `diffusion_end`) + * the vault output must carry after a deposit. Port of the field expectations + * inside `validate_deposit_diffusion` (utilities.ak:1117). + * + * - Positive yield: the staked share rolls into `pending` on top of whatever + * hasn't diffused yet, and the window becomes `[nowMs, windowEndMs]`. If no + * window is requested (`windowEndMs <= 0`) and none is active, or the + * requested window has already elapsed by execution (`windowEndMs <= nowMs`), + * it collapses to instant `(0, 0, 0)`. + * - Loss (negative yield): the window is frozen (carried over unchanged); the + * loss is recognised immediately rather than diffused. + * + * `windowEndMs` is the max `diffusion_end` across the batch's deposit requests + * (`max_end` in deposit.ak); `nowMs` is the execution time (the tx validity + * lower bound). + */ +export function nextDepositDiffusion(vaultIn, stakedYieldShare, totalYield, windowEndMs, nowMs) { + if (totalYield >= 0n) { + if (vaultIn.pending_yield <= 0n && windowEndMs <= 0n) { + return { + pending_yield: 0n, + diffusion_start: 0n, + diffusion_end: 0n + }; + } + if (windowEndMs > nowMs) { + return { + pending_yield: pendingRemaining(vaultIn, nowMs) + stakedYieldShare, + diffusion_start: nowMs, + diffusion_end: windowEndMs + }; + } + return { + pending_yield: 0n, + diffusion_start: 0n, + diffusion_end: 0n + }; + } + // Loss: freeze the existing window. + return { + pending_yield: vaultIn.pending_yield, + diffusion_start: vaultIn.diffusion_start, + diffusion_end: vaultIn.diffusion_end + }; +} +//# sourceMappingURL=diffusion.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/diffusion.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/diffusion.js.map new file mode 100644 index 0000000000..10bea48fee --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/diffusion.js.map @@ -0,0 +1 @@ +{"version":3,"file":"diffusion.js","names":["SUSDR_EXCHANGE_RATE_PRECISION","MAX_DIFFUSION_RATE_SPAN_MS","pendingRemaining","vault","atTimeMs","pending_yield","diffusion_start","diffusion_end","span","settledBacking","usdrBalance","calculateSusdrExchangeRate","inputs","precision","circulatingSusdr","circulating_susdr","pendingYield","diffusionStartUnixMilli","diffusionEndUnixMilli","vaultUsdr","nextDepositDiffusion","vaultIn","stakedYieldShare","totalYield","windowEndMs","nowMs"],"sources":["../../../../src/sdk/v1_1_rc1/diffusion.ts"],"sourcesContent":["import type { VaultDatumV1 } from \"../../generated-types/v1_1_rc1/index.js\";\n\nexport interface ISusdrExchangeRateInputs {\n circulatingSusdr: bigint;\n vaultUsdr: bigint;\n pendingYield: bigint;\n diffusionStartUnixMilli: bigint;\n diffusionEndUnixMilli: bigint;\n}\n\nexport const SUSDR_EXCHANGE_RATE_PRECISION = 1_000_000n;\n\n/**\n * Time-diffused yield — a verbatim TypeScript port of the on-chain helpers in\n * `contracts/lib/v1_1_rc1/utilities.ak`. Deposited staked yield does not hit\n * the exchange rate instantly; it releases linearly over a window so a large\n * deposit cannot be sniped by staking right before it and unstaking right\n * after. The SDK must reproduce this math exactly to build vault datums and\n * rate quotes the validators accept.\n *\n * All timestamps are absolute POSIX milliseconds, matching the on-chain datum\n * and the Plutus validity range (the ledger presents tx validity bounds to the\n * script in POSIX ms, not slots).\n */\n\n/**\n * Maximum tx validity-range span (ms) tolerated while a diffusion window is\n * active. Mirrors `max_diffusion_rate_span` (utilities.ak). The validator\n * rejects a wider range so an interpolated rate can't be read from a stale,\n * far-future lower bound.\n */\nexport const MAX_DIFFUSION_RATE_SPAN_MS = 3_600_000n;\n\n/**\n * USDr not yet diffused into the exchange rate at `atTimeMs`. Releases linearly\n * from `diffusion_start` (full `pending_yield`) to `diffusion_end` (zero),\n * rounded UP so settled backing is never overstated (conservative on unstake).\n *\n * Port of `pending_remaining` (utilities.ak:1082).\n */\nexport function pendingRemaining(\n vault: VaultDatumV1,\n atTimeMs: bigint,\n): bigint {\n const { pending_yield, diffusion_start, diffusion_end } = vault;\n if (pending_yield <= 0n || atTimeMs >= diffusion_end) {\n return 0n;\n }\n if (atTimeMs <= diffusion_start) {\n return pending_yield;\n }\n const span = diffusion_end - diffusion_start;\n // Round up: (a + span - 1) / span with BigInt truncating division.\n return (pending_yield * (diffusion_end - atTimeMs) + span - 1n) / span;\n}\n\n/**\n * Settled backing — the USDr currently backing sUSDr — given the full vault\n * USDr balance and diffusion state at `atTimeMs`. Port of `settled_backing`\n * (utilities.ak:1099). When no window is active the whole balance is settled\n * and `atTimeMs` is irrelevant (matches the validator, which then requires no\n * validity bound).\n */\nexport function settledBacking(\n usdrBalance: bigint,\n vault: VaultDatumV1,\n atTimeMs: bigint,\n): bigint {\n if (vault.pending_yield <= 0n) {\n return usdrBalance;\n }\n return usdrBalance - pendingRemaining(vault, atTimeMs);\n}\n\n/**\n * Diffusion-aware USDr-per-sUSDr exchange rate, scaled by `precision`.\n * Returns 1:1 when no sUSDr is circulating, matching the on-chain convention.\n */\nexport function calculateSusdrExchangeRate(\n inputs: ISusdrExchangeRateInputs,\n atTimeMs: bigint,\n precision: bigint = SUSDR_EXCHANGE_RATE_PRECISION,\n): bigint {\n if (inputs.circulatingSusdr <= 0n) {\n return precision;\n }\n\n const vault: VaultDatumV1 = {\n circulating_susdr: inputs.circulatingSusdr,\n pending_yield: inputs.pendingYield,\n diffusion_start: inputs.diffusionStartUnixMilli,\n diffusion_end: inputs.diffusionEndUnixMilli,\n };\n\n return (\n (settledBacking(inputs.vaultUsdr, vault, atTimeMs) * precision) /\n inputs.circulatingSusdr\n );\n}\n\n/**\n * The diffusion fields (`pending_yield`, `diffusion_start`, `diffusion_end`)\n * the vault output must carry after a deposit. Port of the field expectations\n * inside `validate_deposit_diffusion` (utilities.ak:1117).\n *\n * - Positive yield: the staked share rolls into `pending` on top of whatever\n * hasn't diffused yet, and the window becomes `[nowMs, windowEndMs]`. If no\n * window is requested (`windowEndMs <= 0`) and none is active, or the\n * requested window has already elapsed by execution (`windowEndMs <= nowMs`),\n * it collapses to instant `(0, 0, 0)`.\n * - Loss (negative yield): the window is frozen (carried over unchanged); the\n * loss is recognised immediately rather than diffused.\n *\n * `windowEndMs` is the max `diffusion_end` across the batch's deposit requests\n * (`max_end` in deposit.ak); `nowMs` is the execution time (the tx validity\n * lower bound).\n */\nexport function nextDepositDiffusion(\n vaultIn: VaultDatumV1,\n stakedYieldShare: bigint,\n totalYield: bigint,\n windowEndMs: bigint,\n nowMs: bigint,\n): { pending_yield: bigint; diffusion_start: bigint; diffusion_end: bigint } {\n if (totalYield >= 0n) {\n if (vaultIn.pending_yield <= 0n && windowEndMs <= 0n) {\n return { pending_yield: 0n, diffusion_start: 0n, diffusion_end: 0n };\n }\n if (windowEndMs > nowMs) {\n return {\n pending_yield: pendingRemaining(vaultIn, nowMs) + stakedYieldShare,\n diffusion_start: nowMs,\n diffusion_end: windowEndMs,\n };\n }\n return { pending_yield: 0n, diffusion_start: 0n, diffusion_end: 0n };\n }\n // Loss: freeze the existing window.\n return {\n pending_yield: vaultIn.pending_yield,\n diffusion_start: vaultIn.diffusion_start,\n diffusion_end: vaultIn.diffusion_end,\n };\n}\n"],"mappings":"AAUA,OAAO,MAAMA,6BAA6B,GAAG,UAAU;;AAEvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,0BAA0B,GAAG,UAAU;;AAEpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAC9BC,KAAmB,EACnBC,QAAgB,EACR;EACR,MAAM;IAAEC,aAAa;IAAEC,eAAe;IAAEC;EAAc,CAAC,GAAGJ,KAAK;EAC/D,IAAIE,aAAa,IAAI,EAAE,IAAID,QAAQ,IAAIG,aAAa,EAAE;IACpD,OAAO,EAAE;EACX;EACA,IAAIH,QAAQ,IAAIE,eAAe,EAAE;IAC/B,OAAOD,aAAa;EACtB;EACA,MAAMG,IAAI,GAAGD,aAAa,GAAGD,eAAe;EAC5C;EACA,OAAO,CAACD,aAAa,IAAIE,aAAa,GAAGH,QAAQ,CAAC,GAAGI,IAAI,GAAG,EAAE,IAAIA,IAAI;AACxE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAC5BC,WAAmB,EACnBP,KAAmB,EACnBC,QAAgB,EACR;EACR,IAAID,KAAK,CAACE,aAAa,IAAI,EAAE,EAAE;IAC7B,OAAOK,WAAW;EACpB;EACA,OAAOA,WAAW,GAAGR,gBAAgB,CAACC,KAAK,EAAEC,QAAQ,CAAC;AACxD;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASO,0BAA0BA,CACxCC,MAAgC,EAChCR,QAAgB,EAChBS,SAAiB,GAAGb,6BAA6B,EACzC;EACR,IAAIY,MAAM,CAACE,gBAAgB,IAAI,EAAE,EAAE;IACjC,OAAOD,SAAS;EAClB;EAEA,MAAMV,KAAmB,GAAG;IAC1BY,iBAAiB,EAAEH,MAAM,CAACE,gBAAgB;IAC1CT,aAAa,EAAEO,MAAM,CAACI,YAAY;IAClCV,eAAe,EAAEM,MAAM,CAACK,uBAAuB;IAC/CV,aAAa,EAAEK,MAAM,CAACM;EACxB,CAAC;EAED,OACGT,cAAc,CAACG,MAAM,CAACO,SAAS,EAAEhB,KAAK,EAAEC,QAAQ,CAAC,GAAGS,SAAS,GAC9DD,MAAM,CAACE,gBAAgB;AAE3B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASM,oBAAoBA,CAClCC,OAAqB,EACrBC,gBAAwB,EACxBC,UAAkB,EAClBC,WAAmB,EACnBC,KAAa,EAC8D;EAC3E,IAAIF,UAAU,IAAI,EAAE,EAAE;IACpB,IAAIF,OAAO,CAAChB,aAAa,IAAI,EAAE,IAAImB,WAAW,IAAI,EAAE,EAAE;MACpD,OAAO;QAAEnB,aAAa,EAAE,EAAE;QAAEC,eAAe,EAAE,EAAE;QAAEC,aAAa,EAAE;MAAG,CAAC;IACtE;IACA,IAAIiB,WAAW,GAAGC,KAAK,EAAE;MACvB,OAAO;QACLpB,aAAa,EAAEH,gBAAgB,CAACmB,OAAO,EAAEI,KAAK,CAAC,GAAGH,gBAAgB;QAClEhB,eAAe,EAAEmB,KAAK;QACtBlB,aAAa,EAAEiB;MACjB,CAAC;IACH;IACA,OAAO;MAAEnB,aAAa,EAAE,EAAE;MAAEC,eAAe,EAAE,EAAE;MAAEC,aAAa,EAAE;IAAG,CAAC;EACtE;EACA;EACA,OAAO;IACLF,aAAa,EAAEgB,OAAO,CAAChB,aAAa;IACpCC,eAAe,EAAEe,OAAO,CAACf,eAAe;IACxCC,aAAa,EAAEc,OAAO,CAACd;EACzB,CAAC;AACH","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/index.js b/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/index.js new file mode 100644 index 0000000000..826fde8108 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/index.js @@ -0,0 +1,776 @@ +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +import { blake2b_256, HexBlob, PlutusData } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import { Core, makeValue, Value } from "@blaze-cardano/sdk"; +import { BaseTypes, V0_1Types, V0_4Types, V1_0Types, V1_1Rc1Types } from "../../generated-types/index.js"; +import { buildNonceFromUtxo, credentialFromScript, deployScript, findReserveAsset, getDatumFromNFT, slotAlignedTimeMs, slotFloor, usdrToReserveCeil, YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER } from "../shared/index.js"; +import { calculateYieldShares, MIN_LOVELACE, RealfiSDKV1Family } from "../v1/family.js"; + +/** V1_1-specific knobs threaded from the public params to the constructor. */ +// eslint-disable-next-line @typescript-eslint/naming-convention + +import { MAX_DIFFUSION_RATE_SPAN_MS, nextDepositDiffusion, pendingRemaining, settledBacking } from "./diffusion.js"; + +// eslint-disable-next-line @typescript-eslint/naming-convention + +const DEFAULT_EXECUTION_VALIDITY_WINDOW_MS = 1_800_000n; // 30 minutes + +/** + * How far in the past to open a vault-touching execution's validity interval + * when using the default wall clock. + * + * The validator requires the vault's `diffusion_start` to equal the validity + * lower bound. Backing off both values absorbs submitter clock skew without + * shortening duration-based order windows or the forward execution window. + * Injected clocks are used verbatim for deterministic emulator tests. + */ +const DEFAULT_CLOCK_BACKOFF_MS = 120_000n; // 2 minutes + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * V1_1_Rc1 SDK implementation. + * + * The release candidate keeps V1_0's order/redeemer taxonomy (fees, + * `min_received`, `ExchangeRequestV1`/`TreasuryRequestV1`/`StakeRequestV1`) and + * adds **time-diffused yield**: the staking vault datum grows to four fields + * (`circulating_susdr`, `pending_yield`, `diffusion_start`, `diffusion_end`) + * and deposited staked yield releases into the exchange rate linearly over a + * window rather than instantly. + * + * Because the redeemer shape is V1_0 plus an additive `diffusion_end`, this + * class reuses {@link RealfiSDKV1Family}'s V1_0-semantics tx-builders wholesale + * and overrides only the diffusion seams: + * - the four-field vault datum ({@link buildInitialVaultDatum} / + * {@link buildUpdatedVaultDatum}) and nested settings adapters; + * - {@link settledVaultBacking}: quote stake/unstake rates against settled + * backing (balance minus not-yet-diffused pending yield); + * - {@link buildTreasuryRequest}: echo the order datum's `diffusion_end` into + * the signed payload; + * - {@link updateDepositVaultOutput}: roll the staked share into the diffusion + * window on deposit; + * - {@link buildDepositOrderTx}: expose the `diffusion_end` order parameter; + * - {@link applyExecutionValidityBounds}: attach the validity range the + * diffusion rate time is read from. + */ +export class RealfiSDKV1_1Rc1 extends RealfiSDKV1Family { + static create(blaze, params) { + const enableTrace = params.enableTrace ?? false; + + // 1. Create oneshot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint({ + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex + }, enableTrace).Script; + const oneShotPolicyId = oneShotScript.hash(); + + // 2. Create sub-validator scripts first (they only need proxy policy) + const protocolMintScript = new V1_1Rc1Types.V1_1Rc1ProtocolMintProtocolMintWithdraw(oneShotPolicyId, enableTrace).Script; + const protocolStakeScript = new V1_1Rc1Types.V1_1Rc1ProtocolStakeProtocolStakeWithdraw(oneShotPolicyId, enableTrace).Script; + const protocolManagementScript = new V1_1Rc1Types.V1_1Rc1ProtocolManagementProtocolManagementWithdraw(oneShotPolicyId, enableTrace).Script; + + // 3. Derive the two oracle validators. They are DISTINCT scripts with + // distinct roles and hashes (the shared "yield_oracle" naming is a contract + // quirk): + // - `yield_oracle` is a mint+spend validator: its single hash is both the + // oracle-NFT policy id AND the address holding the long-lived oracle + // UTxO. This is the orchestrator's `yield_oracle_validator` compile-time + // param — ExecuteOrders' `no_script_input` guard protects that UTxO from + // being drained by a normal execution. + // - `distribution_oracle` is the withdraw-only publish-logic validator. + // Its hash is what `registry.yield_oracle` must hold (PublishYieldOracle + // requires THIS validator's withdrawal). + // Seeded by its OWN dedicated bootstrap UTxO (NOT proxyBootstrap, which the + // proxy NFT mint consumes) so the oracle one-shot stays satisfiable when the + // publish flow later bootstraps the oracle NFT. Only the hashes are needed + // here (the publish path / NFT mint is a follow-up). + // A deferred oracle omits the seed → default to the placeholder (a + // permanently un-consumable reference). A deployment that runs the oracle + // supplies a real seed. Either way the orchestrator hash is deterministic. + const yieldOracleBootstrap = params.yieldOracleBootstrap ?? YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER; + const yieldOracleScript = new V1_1Rc1Types.V1_1Rc1YieldOracleYieldOracleMint({ + transaction_id: yieldOracleBootstrap.txHash, + output_index: yieldOracleBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + const yieldOracleValidatorHash = yieldOracleScript.hash(); + // The oracle NFT is minted under the yield_oracle validator's own policy, so + // the NFT policy id equals that validator's hash. + const oracleNftPolicyId = yieldOracleValidatorHash; + const distributionOracleScript = new V1_1Rc1Types.V1_1Rc1DistributionOracleDistributionOracleWithdraw(oneShotPolicyId, oracleNftPolicyId, enableTrace).Script; + const distributionOracleScriptHash = distributionOracleScript.hash(); + + // The v1_0→v1_1 migration validator. Withdraw-only and registry-gated (not + // an orchestrator compile param): whitelisted at runtime via + // `registry.migration`. Only the proxy policy id parametrizes it. + const migrationScript = new V1_1Rc1Types.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw(oneShotPolicyId, enableTrace).Script; + + // 4. Create orchestrator with sub-validator hashes + the yield_oracle + // validator hash (the validator that HOLDS the oracle UTxO — NOT + // distribution_oracle). + const protocolOrchestratorScript = new V1_1Rc1Types.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(oneShotPolicyId, protocolMintScript.hash(), protocolStakeScript.hash(), protocolManagementScript.hash(), yieldOracleValidatorHash, enableTrace).Script; + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(oneShotPolicyId, enableTrace).Script; + + // Use V0.1 or V1.1 treasury script based on option + const treasuryScript = params.useV0_1Treasury ? new V0_1Types.V0_1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new V1_1Rc1Types.V1_1Rc1TreasuryTreasurySpend({ + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + + // 4. Create order script with orchestrator hash + const orderScript = new V1_1Rc1Types.V1_1Rc1OrderOrderSpend(oneShotPolicyId, protocolOrchestratorScript.hash(), enableTrace).Script; + + // Use V0.4 or V1.1 staking vault script based on option + const stakingVaultScript = params.useV0_4StakingVault ? new V0_4Types.V0_4StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script : new V1_1Rc1Types.V1_1Rc1StakingVaultStakingVaultSpend({ + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex + }, oneShotPolicyId, enableTrace).Script; + return new RealfiSDKV1_1Rc1(blaze, { + version: "V1_1_Rc1", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace, + defaultSlippageToleranceBps: params.defaultSlippageToleranceBps, + scriptDeploymentAddress: params.scriptDeploymentAddress, + deployedValidators: params.deployedValidators + }, V1_1Rc1Types, { + oneShotScript, + protocolOrchestratorScript, + protocolMintScript, + protocolStakeScript, + protocolManagementScript, + mintProxyScript, + treasuryScript, + orderScript, + stakingVaultScript + }, { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + orderRefInput: params.referenceInputs?.orderRefInput, + stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput + }, + // The v1_1 signed-payload / signed-redeemer schemas are the V1_0-shaped + // payload plus TreasuryRequestV1.diffusion_end (additive), so they map + // onto the family's stable signing-schema keys. blaze mangles the + // orchestrator generics with a `_v1_1_` infix (see the codegen note in + // project_v1_1_rc1_vs_audited_v1_1_divergence); remap them here. + { + SignedPayload_ProtocolRedeemerV1: V1_1Rc1Types.SignedPayload_v1_1_ProtocolRedeemerV1, + SignedRedeemer_ExtraProtocolRedeemerV1: V1_1Rc1Types.SignedRedeemer_v1_1_ExtraProtocolRedeemerV1 + }, { + now: params.now, + defaultDiffusionDurationMs: params.defaultDiffusionDurationMs, + executionValidityWindowMs: params.executionValidityWindowMs, + diffusionShortfallThresholdMs: params.diffusionShortfallThresholdMs, + throwOnDiffusionWindowShortfall: params.throwOnDiffusionWindowShortfall, + distributionOracleScriptHash, + migrationScript + }); + } + constructor(blaze, params, schemas, scripts, cachedReferenceInputs, signingSchemas, options) { + super(blaze, params, schemas, scripts, cachedReferenceInputs, signingSchemas); + _defineProperty(this, "version", "V1_1_Rc1"); + _defineProperty(this, "nowFn", void 0); + _defineProperty(this, "defaultDiffusionDurationMs", void 0); + _defineProperty(this, "executionValidityWindowMs", void 0); + _defineProperty(this, "executionClockBackoffMs", void 0); + _defineProperty(this, "diffusionShortfallThresholdMs", void 0); + _defineProperty(this, "throwOnDiffusionWindowShortfall", void 0); + /** + * The `distribution_oracle` (publish-logic) validator hash. Exposed so + * settings datums can point `registry.yield_oracle` at it — that is the + * withdrawal the orchestrator's PublishYieldOracle path requires. NOTE: this + * is NOT the orchestrator's 5th compile-time parameter; that parameter is the + * `yield_oracle` validator hash (the mint+spend validator that holds the + * oracle UTxO), which is a different validator with a different hash. + */ + _defineProperty(this, "distributionOracleScriptHash", void 0); + /** + * The `protocol_migration_v1_0_to_v1_1` withdraw validator and its hash. + * The validator is registry-gated (whitelisted via `registry.migration`), NOT + * an orchestrator compile-time parameter, so it lives version-locally on this + * class. Deploy it (`deployMigration`) + register its stake + * (`registerMigrationStake`), then run `buildMigrateStateTx` to migrate a + * v1_0 one-field vault datum to the four-field v1_1 shape in place. + */ + _defineProperty(this, "migrationScript", void 0); + _defineProperty(this, "migrationScriptHash", void 0); + /** + * Slot-aligned execution bounds for the in-flight `buildExecuteOrdersTx`. + * `executionNowMs` is the backed-off lower bound used by the diffusion datum + * and rate quote; `executionValidUntilMs` is based on the unshifted wall time. + * Both are undefined outside an execution build. + */ + _defineProperty(this, "executionNowMs", void 0); + _defineProperty(this, "executionValidUntilMs", void 0); + this.nowFn = options.now ?? (() => BigInt(Date.now())); + this.executionClockBackoffMs = options.now === undefined ? DEFAULT_CLOCK_BACKOFF_MS : 0n; + this.defaultDiffusionDurationMs = options.defaultDiffusionDurationMs; + this.diffusionShortfallThresholdMs = options.diffusionShortfallThresholdMs ?? 0n; + // A negative threshold would silently suppress detection of a window that + // HAS lapsed (remaining is negative by then), defeating the whole guard — + // and, with throwOnDiffusionWindowShortfall set, defeating it silently. + if (this.diffusionShortfallThresholdMs < 0n) { + throw new RangeError(`diffusionShortfallThresholdMs must be non-negative, got ${this.diffusionShortfallThresholdMs} ms.`); + } + this.throwOnDiffusionWindowShortfall = options.throwOnDiffusionWindowShortfall ?? false; + this.executionValidityWindowMs = options.executionValidityWindowMs ?? DEFAULT_EXECUTION_VALIDITY_WINDOW_MS; + const validitySpanMs = this.executionClockBackoffMs + this.executionValidityWindowMs; + if (this.executionValidityWindowMs < 0n || validitySpanMs > MAX_DIFFUSION_RATE_SPAN_MS) { + throw new RangeError(`Execution validity span must be at most 1 hour (${MAX_DIFFUSION_RATE_SPAN_MS} ms), got ${validitySpanMs} ms.`); + } + this.distributionOracleScriptHash = options.distributionOracleScriptHash; + this.migrationScript = options.migrationScript; + this.migrationScriptHash = options.migrationScript.hash(); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + settingsConfig(settings) { + // V1_1 settings are nested: the reserve/pot config lives under `config`. + return settings.config; + } + settingsRegistry(settings) { + return settings.registry; + } + buildInitialVaultDatum() { + return { + circulating_susdr: 0n, + pending_yield: 0n, + diffusion_start: 0n, + diffusion_end: 0n + }; + } + buildUpdatedVaultDatum(previous, sUSDrDelta) { + // Stake / unstake move only circulating_susdr; the diffusion window passes + // through untouched (stake.ak / unstake.ak enforce this). Deposit builds + // its datum via updateDepositVaultOutput, not this seam. + return { + circulating_susdr: previous.circulating_susdr + sUSDrDelta, + pending_yield: previous.pending_yield, + diffusion_start: previous.diffusion_start, + diffusion_end: previous.diffusion_end + }; + } + settledVaultBacking(parsedVaultDatum, vaultUSDr) { + return settledBacking(vaultUSDr, parsedVaultDatum, this.rateTimeMs()); + } + buildTreasuryRequest(datum, parsed, origin) { + // The signed request must echo the order datum's diffusion_end + // (utilities.ak enforces request.diffusion_end == order.diffusion_end). + const action = datum.action; + const diffusionEnd = "ODeposit" in action ? action.ODeposit.diffusion_end : 0n; + return { + destination: datum.destination, + amount: parsed.amount, + yield: parsed.yield ?? 0n, + diffusion_end: diffusionEnd, + origin, + reserve_asset: parsed.reserveAsset + }; + } + get splitsYield() { + return true; + } + + /** + * The yield split a deposit batch's creator should pick: + * vault_usdr / treasury_circulating, i.e. the share of the circulating supply + * that is staked. Pinning it to that ratio makes the SIGNED split reproduce + * exactly the integer staked share the executor writes to the vault — + * deposit.ak recomputes staked_yield_share = total_yield * numerator / + * denominator with the same truncation-toward-zero, and the same two values + * feed the execute path's calculateYieldShares. + * + * Only the creator of a batch calls this. A co-signer must NOT: it reads live + * state, and two signers reading it at different chain states would produce + * different payload bytes, which cannot be co-signed (the orchestrator checks + * every signature against one payload hash). Co-signers read the batch's alpha + * back from the backend and pass it to getSignedPayloadFromOrderInputs. + */ + async computeDepositAlpha() { + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const { + vaultUtxo + } = await this.getVaultDatum(); + const vaultUSDr = vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n; + const { + parsedTreasuryDatum + } = await this.getTreasuryDatum(); + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + return treasuryCirculating > 0n ? { + numerator: vaultUSDr, + denominator: treasuryCirculating + } : { + numerator: 0n, + denominator: 1n + }; + } + async buildDepositAction(requests, alpha) { + // No fallback to live state: that is what made two signings of one batch + // disagree. The batch's alpha has to be handed in — its creator computes it + // once (computeDepositAlpha), everyone else reads it back from the backend. + if (!alpha) { + throw new Error("v1_1_rc1: a deposit batch needs its yield-split alpha — pass the batch's stored alpha (created with computeDepositAlpha)"); + } + if (alpha.denominator <= 0n) { + throw new Error(`v1_1_rc1: yield-split alpha denominator must be positive, got ${alpha.denominator}`); + } + if (alpha.numerator < 0n || alpha.numerator > alpha.denominator) { + throw new Error(`v1_1_rc1: yield-split alpha must be within [0, 1], got ${alpha.numerator}/${alpha.denominator}`); + } + // The family action type is v1_0-shaped (Deposit has no `alpha`); the rc1 + // signing schema serializes `alpha` via its $defs (see IV1SigningSchemas). + return { + Deposit: { + requests, + alpha + } + }; + } + + /** + * rc1's Deposit carries a COSE-signed `alpha`; `deposit.ak` splits total_yield + * against that signed ratio (quotient_integer), NOT live vault/treasury state. + * Echo the signed alpha here so the executor's vault/pot outputs (and the + * pot-output indexing) match what the validator checks — re-reading state + * would diverge if the vault or treasury moved between signing and execution. + */ + resolveDepositYieldShares(totalYield, vaultUSDr, treasuryCirculating, action) { + const deposit = action.Deposit; + if (!deposit) { + // Defensive: a non-Deposit action routed here → live-state split. + return super.resolveDepositYieldShares(totalYield, vaultUSDr, treasuryCirculating, action); + } + const { + numerator, + denominator + } = deposit.alpha; + // BigInt division truncates toward zero, matching Aiken quotient_integer. + const stakedYieldShare = denominator > 0n ? totalYield * numerator / denominator : 0n; + return { + stakedYieldShare, + unstakedYieldShare: totalYield - stakedYieldShare + }; + } + serializeOrchestratorWithdrawalRedeemer(redeemer) { + // v1_1_rc1's orchestrator dispatch wraps order execution in + // ExecuteOrders(...) (the sibling PublishYieldOracle path is a follow-up + // PR). Nest the family's signed redeemer inside the wrapper. The redeemer is + // v1_0-typed at the family layer (Deposit carries `alpha` only at runtime, + // injected by buildDepositAction); cast to the wrapper's static. + return Data.serialize(V1_1Rc1Types.ProtocolOrchestratorRedeemerV1, { + ExecuteOrders: [redeemer] + }); + } + updateDepositVaultOutput(tx, vaultUtxo, parsedVaultDatum, ctx) { + // Vault window end = max diffusion_end across the batch's deposit orders + // (max_end in deposit.ak). Read from each order datum's ODeposit action. + let windowEndMs = 0n; + for (const orderInfo of ctx.orderInfos) { + const action = orderInfo.datum.action; + if ("ODeposit" in action && action.ODeposit.diffusion_end > windowEndMs) { + windowEndMs = action.ODeposit.diffusion_end; + } + } + + // One timestamp for both the shortfall check and the datum, so the warning + // can never describe a different execution time than the one written. + const nowMs = this.rateTimeMs(); + this.checkDiffusionWindow(parsedVaultDatum, ctx, windowEndMs, nowMs); + const window = nextDepositDiffusion(parsedVaultDatum, ctx.stakedYieldShare, ctx.totalYield, windowEndMs, nowMs); + this.updateVaultOutputWithDatum(tx, vaultUtxo, { + circulating_susdr: parsedVaultDatum.circulating_susdr, + ...window + }, ctx.stakedYieldShare); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Deposit order builder (adds the diffusion_end datum field) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a deposit order. Identical to the family default except the ODeposit + * datum carries `diffusion_end` — the absolute POSIX-ms timestamp the staked + * yield diffuses until, set at ORDER CREATION and echoed by the executed + * request. Resolution: explicit `diffusionEnd` > `diffusionDurationMs` added to + * the order-creation time > the SDK's `defaultDiffusionDurationMs` added to the + * order-creation time > `0n` (instant). + * + * NB: because the window is absolute and fixed here, any delay before the + * execute lands (batching, cold/multisig signature collection) shortens the + * effective window; a window that fully elapses before execution collapses the + * deposit to instant on-chain. + */ + async buildDepositOrderTx(params) { + if (params.principal < 0n) { + throw new Error("Deposit principal must be non-negative"); + } + if (params.principal === 0n && params.yield === 0n) { + throw new Error("Deposit must have non-zero principal or yield"); + } + const settings = this.settingsConfig(await this.getVersionSettings()); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAssetId = Core.AssetId(params.reserveAsset[0] + params.reserveAsset[1]); + let valueToLock; + if (params.yield >= 0n) { + // Positive yield: lock reserve backing for BOTH principal AND yield. + const totalUSDrBacking = params.principal + params.yield; + valueToLock = totalUSDrBacking > 0n ? makeValue(MIN_LOVELACE, [reserveAssetId, usdrToReserveCeil(totalUSDrBacking, ra)]) : makeValue(MIN_LOVELACE); + } else { + // Negative yield: lock principal (reserve) + unstaked yield share (USDr). + const principalReserve = params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n; + valueToLock = principalReserve > 0n ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve]) : makeValue(MIN_LOVELACE); + const stablecoinAssetId = Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + const { + parsedTreasuryDatum + } = await this.getTreasuryDatum(); + const vaultUtxo = (await this.getVaultDatum()).vaultUtxo; + const vaultUSDr = vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n; + const { + unstakedYieldShare + } = calculateYieldShares(params.yield, vaultUSDr, parsedTreasuryDatum.circulating_supply); + if (unstakedYieldShare < 0n) { + valueToLock = Value.merge(valueToLock, makeValue(0n, [stablecoinAssetId, -unstakedYieldShare])); + } + } + + // Typed as the v1_1 action (carries diffusion_end); assignable to the + // family's v1_0 action param since the extra field is additive. + const action = { + ODeposit: { + principal: params.principal, + yield: params.yield, + diffusion_end: this.resolveDiffusionEnd(params), + reserve_asset: params.reserveAsset + } + }; + return this._buildOrderTx({ + action, + valueToLock, + owner: params.owner, + destination: params.destination, + data: params.data + }); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Execution validity / diffusion rate time + // ───────────────────────────────────────────────────────────────────────────── + + async buildExecuteOrdersTx(params) { + // Pin both execution bounds once and align them to integer slots. The + // backed-off lower bound drives diffusion_start and rate math; the upper + // bound stays relative to unshifted wall time so skew protection does not + // shorten the configured forward window. + const provider = this.blaze.provider; + const wallNowMs = slotAlignedTimeMs(provider, this.nowFn()); + this.executionNowMs = slotAlignedTimeMs(provider, wallNowMs - this.executionClockBackoffMs); + this.executionValidUntilMs = slotAlignedTimeMs(provider, wallNowMs + this.executionValidityWindowMs); + try { + return await super.buildExecuteOrdersTx(params); + } finally { + this.executionNowMs = undefined; + this.executionValidUntilMs = undefined; + } + } + async applyExecutionValidityBounds(tx, context) { + const nowMs = this.executionNowMs; + const validUntilMs = this.executionValidUntilMs; + if (nowMs === undefined || validUntilMs === undefined) { + return; + } + const { + actionType, + parsedVaultDatum + } = context; + + // Deposit always reads the diffusion rate time once a window is requested + // or already active; setting bounds unconditionally on deposit is safe + // (the validator only caps the span when it reads it). Stake/unstake need + // bounds only when a diffusion window is active. + const needsBounds = actionType === "deposit" || (actionType === "stake" || actionType === "unstake") && (parsedVaultDatum?.pending_yield ?? 0n) > 0n; + if (!needsBounds) { + return; + } + + // Both bounds are already slot-aligned times, but go through `slotFloor` + // anyway: it is the only conversion allowed to reach the tx builder, and it + // guarantees an integer slot (the CBOR writer would silently truncate a + // fractional one, putting a different value on-chain than the datum's). + tx.setValidFrom(slotFloor(this.blaze.provider, nowMs)); + tx.setValidUntil(slotFloor(this.blaze.provider, validUntilMs)); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * The diffusion rate timestamp (POSIX ms): the pinned execution time during + * an execution build, else the current wall-clock time (used by order-build + * min-received estimation, where an exact rate time is not yet knowable). + */ + rateTimeMs() { + return this.executionNowMs ?? this.nowFn(); + } + resolveDiffusionEnd(params) { + if (params.diffusionEnd !== undefined) { + return params.diffusionEnd; + } + const duration = params.diffusionDurationMs ?? this.defaultDiffusionDurationMs; + return duration !== undefined ? this.nowFn() + duration : 0n; + } + + /** + * Surface a diffusion-window shortfall on a deposit execution. + * + * `diffusion_end` is absolute and fixed at ORDER CREATION, so waiting to + * execute (batching, cold/multisig signing) eats the window. Once it is gone, + * `validate_deposit_diffusion` (utilities.ak:1117) zeroes the window and the + * deposit settles instantly — a VALID on-chain outcome, so the tx succeeds and + * nothing else in the stack complains. This is the only place that sees it: + * the operator would otherwise have to read the resulting vault datum. + * + * Advisory by default; {@link IRealfiSDKParamsV1_1Rc1.throwOnDiffusionWindowShortfall} + * turns it into a refusal. + */ + checkDiffusionWindow(vaultIn, ctx, windowEndMs, nowMs) { + // A loss freezes the window rather than collapsing it (utilities.ak:1143). + if (ctx.totalYield < 0n) { + return; + } + // What the vault still owes the exchange rate — NOT `pending_yield`, which + // keeps its original value in the datum until a tx rewrites it and so stays + // positive long after the window has run its course. Only an unfinished + // window has anything left to lose. + const pendingLeftUsdr = pendingRemaining(vaultIn, nowMs); + // No window requested and nothing left owed: the validator zeroes the datum + // as its benign no-op case (utilities.ak:1128) — either a plain instant + // deposit, or bookkeeping cleanup after a window ran to completion. + if (windowEndMs <= 0n && pendingLeftUsdr <= 0n) { + return; + } + // Nothing to diffuse: no staked share arriving and nothing still owed. + if (ctx.stakedYieldShare <= 0n && pendingLeftUsdr <= 0n) { + return; + } + const remainingMs = windowEndMs - nowMs; + let message; + if (windowEndMs > 0n) { + if (remainingMs > this.diffusionShortfallThresholdMs) { + return; + } + // Distinct outcomes: a lapsed window collapses to instant, while a + // near-lapsed one still opens and diffuses over what is left. + if (remainingMs <= 0n) { + message = `deposit diffusion window lapsed ${-remainingMs}ms before execution ` + `(diffusion_end=${windowEndMs}, execution time=${nowMs}); the staked ` + `yield settles INSTANTLY instead of diffusing. Re-create the order ` + `with a longer window to diffuse it.`; + } else { + message = `deposit diffusion window has only ${remainingMs}ms left at ` + `execution (diffusion_end=${windowEndMs}); the staked yield diffuses ` + `over that remainder.`; + } + } else { + // No window requested while one is unfinished: the validator clears the + // active window instead of carrying it (utilities.ak:1128-1136). + message = `deposit requests no diffusion window while ${pendingLeftUsdr} USDr has ` + `not yet diffused (of ${vaultIn.pending_yield} pending, at execution ` + `time ${nowMs}); the active window is CLEARED and that remainder ` + `settles instantly.`; + } + const text = `[realfi-sdk] ${message}`; + if (this.throwOnDiffusionWindowShortfall) { + throw new Error(text); + } + console.warn(text); + } + + // ─────────────────────────────────────────────────────────────────────────── + // In-place v1_0 → v1_1_rc1 upgrade: vault-datum migration (MigrateState) + // ─────────────────────────────────────────────────────────────────────────── + + /** + * Deploy the migration validator as a reference script. Required before its + * withdrawal can be attached in {@link buildMigrateStateTx}. + */ + async deployMigration() { + return deployScript(this.blaze, this.migrationScript, this.scriptDeploymentAddress); + } + + /** + * Register the migration validator's stake credential. Its withdrawal cannot + * be exercised until the stake credential is registered. + */ + registerMigrationStake() { + return this.blaze.newTransaction().addRegisterStake(credentialFromScript(this.migrationScript)); + } + + /** + * Read the staking-vault UTxO holding a legacy v1_0 (one-field) datum. The + * inherited {@link getVaultDatum} parses the four-field v1_1 schema and THROWS + * on a pre-migration vault, so the migration path reads the input with the + * v1_0 single-field schema (`circulating_susdr` only). + */ + async readLegacyVaultDatum() { + const { + utxo, + parsedDatum + } = await getDatumFromNFT(this.blaze, this.stakingVaultNFTAssetId, V1_0Types.VaultDatumV1); + const legacy = parsedDatum; + return { + vaultUtxo: utxo, + circulatingSusdr: legacy.circulating_susdr + }; + } + + /** + * Build the COSE payload for a `MigrateState` action. Unlike the order path + * (whose nonce derives from the sorted order inputs), migration spends the + * vault UTxO, so the nonce is anchored to the vault input. Returns the CBOR + * payload (for {@link buildMigrateStateTx}) and its blake2b-256 hash (for + * CIP-30 signing by the `permissions.migrate` signer(s)). + */ + async getMigrateStatePayload() { + const { + vaultUtxo + } = await this.readLegacyVaultDatum(); + const nonce = buildNonceFromUtxo(vaultUtxo.input()); + // The family signing-schema key is v1_0-typed at compile time (its action + // union predates MigrateState), but the runtime schema is the v1_1 one whose + // ProtocolRedeemerV1 includes the MigrateState literal (ctor 8). Cast the + // payload to the family payload type the serializer expects. + const payload = { + action: "MigrateState", + nonce + }; + const serialized = Data.serialize(this.signing.SignedPayload_ProtocolRedeemerV1, payload); + const signedPayload = serialized.toCbor().toString(); + const payloadHash = blake2b_256(HexBlob(signedPayload)); + return { + signedPayload, + payloadHash + }; + } + + /** + * Build the in-place vault-datum migration transaction (`MigrateState`). Spends + * the staking-vault UTxO (still holding the v1_0 one-field datum) and re-locks + * it at the SAME address and value with the four-field v1_1 datum + * (`circulating_susdr` preserved, diffusion window zeroed). Operator-only — not + * on the partner surface, like {@link buildExecuteOrdersTx}. + * + * Requires (per `protocol_migration_v1_0_to_v1_1.ak` + the orchestrator's + * MigrateState branch): the migration validator deployed + stake-registered, + * `registry.migration = Some(migrationScriptHash)` in the live settings, and + * `signatures` = the `permissions.migrate` COSE signatures over the payload + * hash from {@link getMigrateStatePayload}. + */ + async buildMigrateStateTx(params) { + const signedPayload = parse(this.signing.SignedPayload_ProtocolRedeemerV1, PlutusData.fromCbor(HexBlob(params.signedPayload))); + const { + vaultUtxo, + circulatingSusdr + } = await this.readLegacyVaultDatum(); + + // Reference inputs: orchestrator + staking-vault + migration scripts, plus + // the proxy datum (read as a reference input, never spent). + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + stakingVault: this.stakingVaultScriptHash, + migration: this.migrationScriptHash + }); + const { + proxyUtxo + } = await this.getParsedProxyDatum(); + + // Fee inputs: wallet UTxOs minus the vault (a script input), the proxy, and + // every reference input (regular and reference inputs must be disjoint). + const walletUtxos = await this.blaze.wallet.getUnspentOutputs(); + const utxoKey = inp => `${inp.transactionId().toString()}#${inp.index().toString()}`; + const excluded = new Set([utxoKey(vaultUtxo.input()), utxoKey(proxyUtxo.input())]); + for (const ref of Object.values(refInputs)) { + if (ref) { + excluded.add(utxoKey(ref.input())); + } + } + const feeUtxos = walletUtxos.filter(u => !excluded.has(utxoKey(u.input()))); + + // Vault input index in the ledger-sorted input set (txHash, then index). + const sortedInputRefs = [vaultUtxo.input(), ...feeUtxos.map(u => u.input())].sort((a, b) => { + const txA = a.transactionId().toString(); + const txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + const vaultInputIdx = BigInt(sortedInputRefs.findIndex(r => r.transactionId().toString() === vaultUtxo.input().transactionId().toString() && r.index() === vaultUtxo.input().index())); + + // Migrated datum: preserve circulating_susdr, zero the diffusion window (no + // pending yield at migration time). The vault output is the first output the + // builder adds, so its index is 0 (change outputs are appended after). + const migratedDatum = { + circulating_susdr: circulatingSusdr, + pending_yield: 0n, + diffusion_start: 0n, + diffusion_end: 0n + }; + + // No order requests travel in a migration; the request/treasury indices are + // dummies (the migration branch reads only the vault indices). + const extra = { + request_to_outputs: [], + input_to_requests: [], + treasury_input_idx: 0n, + treasury_output_idx: 0n, + vault_input_idx: vaultInputIdx, + vault_output_idx: 0n + }; + const orchestratorRedeemer = this.serializeOrchestratorWithdrawalRedeemer({ + extra, + payload: signedPayload, + signatures: params.signatures + }); + const tx = this.newOrderTransaction(); + + // Spend the vault with DeferToProtocol (Void); the vault script resolves + // from the staking-vault reference input. + tx.addInput(vaultUtxo, Data.Void()); + for (const feeUtxo of feeUtxos) { + tx.addInput(feeUtxo); + } + tx.addReferenceInput(refInputs.protocol); + tx.addReferenceInput(refInputs.stakingVault); + tx.addReferenceInput(refInputs.migration); + tx.addReferenceInput(proxyUtxo); + + // Re-lock exactly one vault output at the SAME address (payment + stake) and + // the SAME value, no reference script, carrying the four-field datum. + tx.lockAssets(vaultUtxo.output().address(), vaultUtxo.output().amount(), Data.serialize(this.schemas.VaultDatumV1, migratedDatum)); + + // Orchestrator withdrawal carries the ExecuteOrders(MigrateState) redeemer + // plus the permissions.migrate COSE signatures. + tx.addWithdrawal(Core.RewardAccount.fromCredential({ + type: Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash + }, this.network), 0n, orchestratorRedeemer); + // Migration validator withdrawal (Void); enforces the migration tx shape. + tx.addWithdrawal(Core.RewardAccount.fromCredential({ + type: Core.CredentialType.ScriptHash, + hash: this.migrationScriptHash + }, this.network), 0n, Data.Void()); + return tx; + } +} + +/** Re-exported for parity with the sibling version modules. */ +export { MAX_DIFFUSION_RATE_SPAN_MS }; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/index.js.map b/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/index.js.map new file mode 100644 index 0000000000..ad2c43352a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sdk/v1_1_rc1/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["blake2b_256","HexBlob","PlutusData","Data","parse","Core","makeValue","Value","BaseTypes","V0_1Types","V0_4Types","V1_0Types","V1_1Rc1Types","buildNonceFromUtxo","credentialFromScript","deployScript","findReserveAsset","getDatumFromNFT","slotAlignedTimeMs","slotFloor","usdrToReserveCeil","YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER","calculateYieldShares","MIN_LOVELACE","RealfiSDKV1Family","MAX_DIFFUSION_RATE_SPAN_MS","nextDepositDiffusion","pendingRemaining","settledBacking","DEFAULT_EXECUTION_VALIDITY_WINDOW_MS","DEFAULT_CLOCK_BACKOFF_MS","RealfiSDKV1_1Rc1","create","blaze","params","enableTrace","oneShotScript","BaseOneshotOneshotMint","transaction_id","proxyBootstrap","txHash","output_index","outputIndex","Script","oneShotPolicyId","hash","protocolMintScript","V1_1Rc1ProtocolMintProtocolMintWithdraw","protocolStakeScript","V1_1Rc1ProtocolStakeProtocolStakeWithdraw","protocolManagementScript","V1_1Rc1ProtocolManagementProtocolManagementWithdraw","yieldOracleBootstrap","yieldOracleScript","V1_1Rc1YieldOracleYieldOracleMint","yieldOracleValidatorHash","oracleNftPolicyId","distributionOracleScript","V1_1Rc1DistributionOracleDistributionOracleWithdraw","distributionOracleScriptHash","migrationScript","V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw","protocolOrchestratorScript","V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw","mintProxyScript","BaseMintProxyMintProxyMint","treasuryScript","useV0_1Treasury","V0_1TreasuryTreasurySpend","treasuryBootstrap","V1_1Rc1TreasuryTreasurySpend","orderScript","V1_1Rc1OrderOrderSpend","stakingVaultScript","useV0_4StakingVault","V0_4StakingVaultStakingVaultSpend","stakingVaultBootstrap","V1_1Rc1StakingVaultStakingVaultSpend","version","assetNameHex","sUSDrAssetNameHex","defaultSlippageToleranceBps","scriptDeploymentAddress","deployedValidators","protocolRefInput","referenceInputs","proxyRefInput","treasuryRefInput","orderRefInput","stakingVaultRefInput","SignedPayload_ProtocolRedeemerV1","SignedPayload_v1_1_ProtocolRedeemerV1","SignedRedeemer_ExtraProtocolRedeemerV1","SignedRedeemer_v1_1_ExtraProtocolRedeemerV1","now","defaultDiffusionDurationMs","executionValidityWindowMs","diffusionShortfallThresholdMs","throwOnDiffusionWindowShortfall","constructor","schemas","scripts","cachedReferenceInputs","signingSchemas","options","_defineProperty","nowFn","BigInt","Date","executionClockBackoffMs","undefined","RangeError","validitySpanMs","migrationScriptHash","settingsConfig","settings","config","settingsRegistry","registry","buildInitialVaultDatum","circulating_susdr","pending_yield","diffusion_start","diffusion_end","buildUpdatedVaultDatum","previous","sUSDrDelta","settledVaultBacking","parsedVaultDatum","vaultUSDr","rateTimeMs","buildTreasuryRequest","datum","parsed","origin","action","diffusionEnd","ODeposit","destination","amount","yield","reserve_asset","reserveAsset","splitsYield","computeDepositAlpha","stablecoinAssetId","AssetId","stablecoinPolicyId","vaultUtxo","getVaultDatum","output","multiasset","get","parsedTreasuryDatum","getTreasuryDatum","treasuryCirculating","circulating_supply","numerator","denominator","buildDepositAction","requests","alpha","Error","Deposit","resolveDepositYieldShares","totalYield","deposit","stakedYieldShare","unstakedYieldShare","serializeOrchestratorWithdrawalRedeemer","redeemer","serialize","ProtocolOrchestratorRedeemerV1","ExecuteOrders","updateDepositVaultOutput","tx","ctx","windowEndMs","orderInfo","orderInfos","nowMs","checkDiffusionWindow","window","updateVaultOutputWithDatum","buildDepositOrderTx","principal","getVersionSettings","ra","reserveAssetId","valueToLock","totalUSDrBacking","principalReserve","merge","resolveDiffusionEnd","_buildOrderTx","owner","data","buildExecuteOrdersTx","provider","wallNowMs","executionNowMs","executionValidUntilMs","applyExecutionValidityBounds","context","validUntilMs","actionType","needsBounds","setValidFrom","setValidUntil","duration","diffusionDurationMs","vaultIn","pendingLeftUsdr","remainingMs","message","text","console","warn","deployMigration","registerMigrationStake","newTransaction","addRegisterStake","readLegacyVaultDatum","utxo","parsedDatum","stakingVaultNFTAssetId","VaultDatumV1","legacy","circulatingSusdr","getMigrateStatePayload","nonce","input","payload","serialized","signing","signedPayload","toCbor","toString","payloadHash","buildMigrateStateTx","fromCbor","refInputs","getScriptReferenceInputs","protocol","protocolScriptHash","stakingVault","stakingVaultScriptHash","migration","proxyUtxo","getParsedProxyDatum","walletUtxos","wallet","getUnspentOutputs","utxoKey","inp","transactionId","index","excluded","Set","ref","Object","values","add","feeUtxos","filter","u","has","sortedInputRefs","map","sort","a","b","txA","txB","Number","vaultInputIdx","findIndex","r","migratedDatum","extra","request_to_outputs","input_to_requests","treasury_input_idx","treasury_output_idx","vault_input_idx","vault_output_idx","orchestratorRedeemer","signatures","newOrderTransaction","addInput","Void","feeUtxo","addReferenceInput","lockAssets","address","addWithdrawal","RewardAccount","fromCredential","type","CredentialType","ScriptHash","network"],"sources":["../../../../src/sdk/v1_1_rc1/index.ts"],"sourcesContent":["import { blake2b_256, HexBlob, PlutusData } from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { parse, type Exact } from \"@blaze-cardano/data\";\nimport type { Provider } from \"@blaze-cardano/query\";\nimport {\n type Blaze,\n Core,\n makeValue,\n type TxBuilder,\n Value,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\n\nimport {\n BaseTypes,\n V0_1Types,\n V0_4Types,\n V1_0Types,\n V1_1Rc1Types,\n} from \"../../generated-types/index.js\";\nimport type {\n Destination,\n MultisigScript,\n OrderActionV1,\n SettingsV1,\n TreasuryRequestV1,\n Tuple_VerificationKey_COSESign1,\n VaultDatumV1,\n} from \"../../generated-types/v1_1_rc1/index.js\";\n\nimport {\n buildNonceFromUtxo,\n credentialFromScript,\n deployScript,\n findReserveAsset,\n getDatumFromNFT,\n slotAlignedTimeMs,\n slotFloor,\n usdrToReserveCeil,\n YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER,\n type ICachedReferenceInputs,\n} from \"../shared/index.js\";\nimport {\n calculateYieldShares,\n MIN_LOVELACE,\n RealfiSDKV1Family,\n type IClassifiedOrderAction,\n type IExecutionValidityContext,\n type IOrderInfo,\n type IRequestOrigin,\n type IV1FamilyConstructorParams,\n} from \"../v1/family.js\";\nimport type {\n IV1FamilySchemas,\n IV1FamilyScripts,\n IV1SigningSchemas,\n IYieldSplitAlpha,\n TV1Registry,\n TV1SettingsConfig,\n} from \"../v1/types.js\";\n\n/** V1_1-specific knobs threaded from the public params to the constructor. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\ninterface IV1_1Rc1Options {\n now?: () => bigint;\n defaultDiffusionDurationMs?: bigint;\n executionValidityWindowMs?: bigint;\n diffusionShortfallThresholdMs?: bigint;\n throwOnDiffusionWindowShortfall?: boolean;\n distributionOracleScriptHash: Core.Hash28ByteBase16;\n /**\n * The `protocol_migration_v1_0_to_v1_1` withdraw validator script. Used to\n * deploy/register it and to attach its withdrawal + hash when running the\n * in-place vault-datum migration (`MigrateState`).\n */\n migrationScript: Core.Script;\n}\n\nimport {\n MAX_DIFFUSION_RATE_SPAN_MS,\n nextDepositDiffusion,\n pendingRemaining,\n settledBacking,\n} from \"./diffusion.js\";\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IRealfiSDKParamsV1_1Rc1 {\n version: \"V1_1_Rc1\";\n proxyBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** USDr asset name hex */\n assetNameHex: string;\n /** sUSDr asset name hex */\n sUSDrAssetNameHex: string;\n /** The treasury bootstrap UTxO reference */\n treasuryBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /** The staking vault bootstrap UTxO reference */\n stakingVaultBootstrap: {\n txHash: Core.TransactionId;\n outputIndex: bigint;\n };\n /**\n * Dedicated bootstrap UTxO for the yield_oracle NFT one-shot, baked into the\n * orchestrator's logic hash (via the yield_oracle validator param).\n *\n * OPTIONAL: a deployment that DEFERS the oracle can omit it, in which case the\n * SDK uses {@link YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER} — a permanently\n * un-consumable all-zeros reference. A deployment that intends to actually run\n * the oracle must supply a real, still-unspent UTxO here (distinct from the\n * proxy/treasury/stakingVault seeds, each of which its own NFT mint consumes),\n * so the oracle policy stays mintable when the publish flow bootstraps the\n * oracle NFT.\n */\n yieldOracleBootstrap?: {\n readonly txHash: Core.TransactionId;\n readonly outputIndex: bigint;\n };\n /** Enable trace output in Plutus scripts for debugging. Default: false */\n enableTrace?: boolean;\n /**\n * Fallback slippage tolerance (bps) for stake/unstake `minReceived`. 50n =\n * 0.5%. Default: 50n. Same semantics as V1_0.\n */\n defaultSlippageToleranceBps?: bigint;\n /**\n * Use V0.1 treasury script instead of V1.1. Needed for protocol-only\n * upgrades where the treasury NFT stays at the V0.1 address. Default: false\n */\n useV0_1Treasury?: boolean;\n /**\n * Use V0.4 staking vault script instead of V1.1. Needed for protocol-only\n * upgrades where the vault NFT stays at the V0.4 address. Default: false\n */\n useV0_4StakingVault?: boolean;\n /**\n * Hashes of the validators this deployment actually runs. See\n * IV1FamilyConstructorParams.deployedValidators.\n */\n deployedValidators?: Readonly>;\n /**\n * Address to deploy reference scripts to (and resolve them from). When\n * omitted, Blaze's burn address is used for both deploy and resolve.\n */\n scriptDeploymentAddress?: Core.Address;\n referenceInputs?: {\n protocolRefInput?: Core.TransactionUnspentOutput;\n proxyRefInput?: Core.TransactionUnspentOutput;\n treasuryRefInput?: Core.TransactionUnspentOutput;\n orderRefInput?: Core.TransactionUnspentOutput;\n stakingVaultRefInput?: Core.TransactionUnspentOutput;\n };\n /**\n * Default diffusion window length (ms) applied to `buildDepositOrderTx` when\n * the caller passes neither `diffusionEnd` nor `diffusionDurationMs`. Measured\n * from ORDER-CREATION time (not execution). When unset, deposits default to\n * instant (no diffusion window). Choose to match the yield-deposit cadence\n * (~24h for daily deposits, ~5d per epoch).\n */\n defaultDiffusionDurationMs?: bigint;\n /**\n * Forward validity window (ms) attached to vault-touching executions while a\n * diffusion window is active. The window plus any default-clock backoff must\n * not exceed 1h (`MAX_DIFFUSION_RATE_SPAN_MS`). Default: 30 minutes.\n */\n executionValidityWindowMs?: bigint;\n /**\n * Remaining diffusion window (ms) at or below which a deposit execution\n * reports a shortfall (see {@link throwOnDiffusionWindowShortfall} for how).\n * Default: 0n — only a window that has FULLY lapsed by execution time, which\n * is the point the validator collapses it to an instant deposit. Raise it\n * (e.g. 300_000n) to also flag a window that will survive execution but has\n * nearly nothing left to diffuse over.\n */\n diffusionShortfallThresholdMs?: bigint;\n /**\n * Refuse (throw) rather than `console.warn` when a deposit execution hits a\n * diffusion-window shortfall. Default: false — a lapsed window is still a\n * valid, executable deposit on-chain (it just settles instantly), so the\n * default never blocks an execution. Set true in automation that must not\n * silently under-deliver a diffused deposit.\n */\n throwOnDiffusionWindowShortfall?: boolean;\n /**\n * Injectable clock (POSIX ms) for the diffusion rate time and deposit\n * `diffusion_end` defaulting. Defaults to wall-clock `Date.now()`. Tests\n * pass a deterministic function tied to the emulator clock.\n */\n now?: () => bigint;\n}\n\nconst DEFAULT_EXECUTION_VALIDITY_WINDOW_MS = 1_800_000n; // 30 minutes\n\n/**\n * How far in the past to open a vault-touching execution's validity interval\n * when using the default wall clock.\n *\n * The validator requires the vault's `diffusion_start` to equal the validity\n * lower bound. Backing off both values absorbs submitter clock skew without\n * shortening duration-based order windows or the forward execution window.\n * Injected clocks are used verbatim for deterministic emulator tests.\n */\nconst DEFAULT_CLOCK_BACKOFF_MS = 120_000n; // 2 minutes\n\n// ─────────────────────────────────────────────────────────────────────────────\n// SDK Class\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * V1_1_Rc1 SDK implementation.\n *\n * The release candidate keeps V1_0's order/redeemer taxonomy (fees,\n * `min_received`, `ExchangeRequestV1`/`TreasuryRequestV1`/`StakeRequestV1`) and\n * adds **time-diffused yield**: the staking vault datum grows to four fields\n * (`circulating_susdr`, `pending_yield`, `diffusion_start`, `diffusion_end`)\n * and deposited staked yield releases into the exchange rate linearly over a\n * window rather than instantly.\n *\n * Because the redeemer shape is V1_0 plus an additive `diffusion_end`, this\n * class reuses {@link RealfiSDKV1Family}'s V1_0-semantics tx-builders wholesale\n * and overrides only the diffusion seams:\n * - the four-field vault datum ({@link buildInitialVaultDatum} /\n * {@link buildUpdatedVaultDatum}) and nested settings adapters;\n * - {@link settledVaultBacking}: quote stake/unstake rates against settled\n * backing (balance minus not-yet-diffused pending yield);\n * - {@link buildTreasuryRequest}: echo the order datum's `diffusion_end` into\n * the signed payload;\n * - {@link updateDepositVaultOutput}: roll the staked share into the diffusion\n * window on deposit;\n * - {@link buildDepositOrderTx}: expose the `diffusion_end` order parameter;\n * - {@link applyExecutionValidityBounds}: attach the validity range the\n * diffusion rate time is read from.\n */\nexport class RealfiSDKV1_1Rc1<\n P extends Provider,\n W extends Wallet,\n> extends RealfiSDKV1Family {\n readonly version = \"V1_1_Rc1\" as const;\n\n private readonly nowFn: () => bigint;\n private readonly defaultDiffusionDurationMs?: bigint;\n private readonly executionValidityWindowMs: bigint;\n private readonly executionClockBackoffMs: bigint;\n private readonly diffusionShortfallThresholdMs: bigint;\n private readonly throwOnDiffusionWindowShortfall: boolean;\n /**\n * The `distribution_oracle` (publish-logic) validator hash. Exposed so\n * settings datums can point `registry.yield_oracle` at it — that is the\n * withdrawal the orchestrator's PublishYieldOracle path requires. NOTE: this\n * is NOT the orchestrator's 5th compile-time parameter; that parameter is the\n * `yield_oracle` validator hash (the mint+spend validator that holds the\n * oracle UTxO), which is a different validator with a different hash.\n */\n readonly distributionOracleScriptHash: Core.Hash28ByteBase16;\n\n /**\n * The `protocol_migration_v1_0_to_v1_1` withdraw validator and its hash.\n * The validator is registry-gated (whitelisted via `registry.migration`), NOT\n * an orchestrator compile-time parameter, so it lives version-locally on this\n * class. Deploy it (`deployMigration`) + register its stake\n * (`registerMigrationStake`), then run `buildMigrateStateTx` to migrate a\n * v1_0 one-field vault datum to the four-field v1_1 shape in place.\n */\n readonly migrationScript: Core.Script;\n readonly migrationScriptHash: Core.Hash28ByteBase16;\n\n /**\n * Slot-aligned execution bounds for the in-flight `buildExecuteOrdersTx`.\n * `executionNowMs` is the backed-off lower bound used by the diffusion datum\n * and rate quote; `executionValidUntilMs` is based on the unshifted wall time.\n * Both are undefined outside an execution build.\n */\n private executionNowMs?: bigint;\n private executionValidUntilMs?: bigint;\n\n static create

(\n blaze: Blaze,\n params: IRealfiSDKParamsV1_1Rc1,\n ): RealfiSDKV1_1Rc1 {\n const enableTrace = params.enableTrace ?? false;\n\n // 1. Create oneshot script\n const oneShotScript = new BaseTypes.BaseOneshotOneshotMint(\n {\n transaction_id: params.proxyBootstrap.txHash,\n output_index: params.proxyBootstrap.outputIndex,\n },\n enableTrace,\n ).Script;\n const oneShotPolicyId = oneShotScript.hash();\n\n // 2. Create sub-validator scripts first (they only need proxy policy)\n const protocolMintScript =\n new V1_1Rc1Types.V1_1Rc1ProtocolMintProtocolMintWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolStakeScript =\n new V1_1Rc1Types.V1_1Rc1ProtocolStakeProtocolStakeWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n const protocolManagementScript =\n new V1_1Rc1Types.V1_1Rc1ProtocolManagementProtocolManagementWithdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 3. Derive the two oracle validators. They are DISTINCT scripts with\n // distinct roles and hashes (the shared \"yield_oracle\" naming is a contract\n // quirk):\n // - `yield_oracle` is a mint+spend validator: its single hash is both the\n // oracle-NFT policy id AND the address holding the long-lived oracle\n // UTxO. This is the orchestrator's `yield_oracle_validator` compile-time\n // param — ExecuteOrders' `no_script_input` guard protects that UTxO from\n // being drained by a normal execution.\n // - `distribution_oracle` is the withdraw-only publish-logic validator.\n // Its hash is what `registry.yield_oracle` must hold (PublishYieldOracle\n // requires THIS validator's withdrawal).\n // Seeded by its OWN dedicated bootstrap UTxO (NOT proxyBootstrap, which the\n // proxy NFT mint consumes) so the oracle one-shot stays satisfiable when the\n // publish flow later bootstraps the oracle NFT. Only the hashes are needed\n // here (the publish path / NFT mint is a follow-up).\n // A deferred oracle omits the seed → default to the placeholder (a\n // permanently un-consumable reference). A deployment that runs the oracle\n // supplies a real seed. Either way the orchestrator hash is deterministic.\n const yieldOracleBootstrap =\n params.yieldOracleBootstrap ?? YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER;\n const yieldOracleScript =\n new V1_1Rc1Types.V1_1Rc1YieldOracleYieldOracleMint(\n {\n transaction_id: yieldOracleBootstrap.txHash,\n output_index: yieldOracleBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n const yieldOracleValidatorHash = yieldOracleScript.hash();\n // The oracle NFT is minted under the yield_oracle validator's own policy, so\n // the NFT policy id equals that validator's hash.\n const oracleNftPolicyId = yieldOracleValidatorHash;\n const distributionOracleScript =\n new V1_1Rc1Types.V1_1Rc1DistributionOracleDistributionOracleWithdraw(\n oneShotPolicyId,\n oracleNftPolicyId,\n enableTrace,\n ).Script;\n const distributionOracleScriptHash = distributionOracleScript.hash();\n\n // The v1_0→v1_1 migration validator. Withdraw-only and registry-gated (not\n // an orchestrator compile param): whitelisted at runtime via\n // `registry.migration`. Only the proxy policy id parametrizes it.\n const migrationScript =\n new V1_1Rc1Types.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 4. Create orchestrator with sub-validator hashes + the yield_oracle\n // validator hash (the validator that HOLDS the oracle UTxO — NOT\n // distribution_oracle).\n const protocolOrchestratorScript =\n new V1_1Rc1Types.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw(\n oneShotPolicyId,\n protocolMintScript.hash(),\n protocolStakeScript.hash(),\n protocolManagementScript.hash(),\n yieldOracleValidatorHash,\n enableTrace,\n ).Script;\n\n const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint(\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // Use V0.1 or V1.1 treasury script based on option\n const treasuryScript = params.useV0_1Treasury\n ? new V0_1Types.V0_1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_1Rc1Types.V1_1Rc1TreasuryTreasurySpend(\n {\n transaction_id: params.treasuryBootstrap.txHash,\n output_index: params.treasuryBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n // 4. Create order script with orchestrator hash\n const orderScript = new V1_1Rc1Types.V1_1Rc1OrderOrderSpend(\n oneShotPolicyId,\n protocolOrchestratorScript.hash(),\n enableTrace,\n ).Script;\n\n // Use V0.4 or V1.1 staking vault script based on option\n const stakingVaultScript = params.useV0_4StakingVault\n ? new V0_4Types.V0_4StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script\n : new V1_1Rc1Types.V1_1Rc1StakingVaultStakingVaultSpend(\n {\n transaction_id: params.stakingVaultBootstrap.txHash,\n output_index: params.stakingVaultBootstrap.outputIndex,\n },\n oneShotPolicyId,\n enableTrace,\n ).Script;\n\n return new RealfiSDKV1_1Rc1(\n blaze,\n {\n version: \"V1_1_Rc1\",\n proxyBootstrap: params.proxyBootstrap,\n assetNameHex: params.assetNameHex,\n sUSDrAssetNameHex: params.sUSDrAssetNameHex,\n enableTrace,\n defaultSlippageToleranceBps: params.defaultSlippageToleranceBps,\n scriptDeploymentAddress: params.scriptDeploymentAddress,\n deployedValidators: params.deployedValidators,\n },\n V1_1Rc1Types,\n {\n oneShotScript,\n protocolOrchestratorScript,\n protocolMintScript,\n protocolStakeScript,\n protocolManagementScript,\n mintProxyScript,\n treasuryScript,\n orderScript,\n stakingVaultScript,\n },\n {\n protocolRefInput: params.referenceInputs?.protocolRefInput,\n proxyRefInput: params.referenceInputs?.proxyRefInput,\n treasuryRefInput: params.referenceInputs?.treasuryRefInput,\n orderRefInput: params.referenceInputs?.orderRefInput,\n stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput,\n },\n // The v1_1 signed-payload / signed-redeemer schemas are the V1_0-shaped\n // payload plus TreasuryRequestV1.diffusion_end (additive), so they map\n // onto the family's stable signing-schema keys. blaze mangles the\n // orchestrator generics with a `_v1_1_` infix (see the codegen note in\n // project_v1_1_rc1_vs_audited_v1_1_divergence); remap them here.\n {\n SignedPayload_ProtocolRedeemerV1:\n V1_1Rc1Types.SignedPayload_v1_1_ProtocolRedeemerV1,\n SignedRedeemer_ExtraProtocolRedeemerV1:\n V1_1Rc1Types.SignedRedeemer_v1_1_ExtraProtocolRedeemerV1,\n },\n {\n now: params.now,\n defaultDiffusionDurationMs: params.defaultDiffusionDurationMs,\n executionValidityWindowMs: params.executionValidityWindowMs,\n diffusionShortfallThresholdMs: params.diffusionShortfallThresholdMs,\n throwOnDiffusionWindowShortfall: params.throwOnDiffusionWindowShortfall,\n distributionOracleScriptHash,\n migrationScript,\n },\n );\n }\n\n protected constructor(\n blaze: Blaze,\n params: IV1FamilyConstructorParams,\n schemas: IV1FamilySchemas,\n scripts: IV1FamilyScripts,\n cachedReferenceInputs: ICachedReferenceInputs | undefined,\n signingSchemas: IV1SigningSchemas,\n options: IV1_1Rc1Options,\n ) {\n super(\n blaze,\n params,\n schemas,\n scripts,\n cachedReferenceInputs,\n signingSchemas,\n );\n this.nowFn = options.now ?? (() => BigInt(Date.now()));\n this.executionClockBackoffMs =\n options.now === undefined ? DEFAULT_CLOCK_BACKOFF_MS : 0n;\n this.defaultDiffusionDurationMs = options.defaultDiffusionDurationMs;\n this.diffusionShortfallThresholdMs =\n options.diffusionShortfallThresholdMs ?? 0n;\n // A negative threshold would silently suppress detection of a window that\n // HAS lapsed (remaining is negative by then), defeating the whole guard —\n // and, with throwOnDiffusionWindowShortfall set, defeating it silently.\n if (this.diffusionShortfallThresholdMs < 0n) {\n throw new RangeError(\n `diffusionShortfallThresholdMs must be non-negative, got ${this.diffusionShortfallThresholdMs} ms.`,\n );\n }\n this.throwOnDiffusionWindowShortfall =\n options.throwOnDiffusionWindowShortfall ?? false;\n this.executionValidityWindowMs =\n options.executionValidityWindowMs ?? DEFAULT_EXECUTION_VALIDITY_WINDOW_MS;\n const validitySpanMs =\n this.executionClockBackoffMs + this.executionValidityWindowMs;\n if (\n this.executionValidityWindowMs < 0n ||\n validitySpanMs > MAX_DIFFUSION_RATE_SPAN_MS\n ) {\n throw new RangeError(\n `Execution validity span must be at most 1 hour (${MAX_DIFFUSION_RATE_SPAN_MS} ms), got ${validitySpanMs} ms.`,\n );\n }\n this.distributionOracleScriptHash = options.distributionOracleScriptHash;\n this.migrationScript = options.migrationScript;\n this.migrationScriptHash = options.migrationScript.hash();\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Version Seams\n // ─────────────────────────────────────────────────────────────────────────────\n\n protected settingsConfig(settings: SettingsV1): TV1SettingsConfig {\n // V1_1 settings are nested: the reserve/pot config lives under `config`.\n return settings.config;\n }\n\n protected settingsRegistry(settings: SettingsV1): TV1Registry {\n return settings.registry;\n }\n\n protected buildInitialVaultDatum(): VaultDatumV1 {\n return {\n circulating_susdr: 0n,\n pending_yield: 0n,\n diffusion_start: 0n,\n diffusion_end: 0n,\n };\n }\n\n protected buildUpdatedVaultDatum(\n previous: VaultDatumV1,\n sUSDrDelta: bigint,\n ): VaultDatumV1 {\n // Stake / unstake move only circulating_susdr; the diffusion window passes\n // through untouched (stake.ak / unstake.ak enforce this). Deposit builds\n // its datum via updateDepositVaultOutput, not this seam.\n return {\n circulating_susdr: previous.circulating_susdr + sUSDrDelta,\n pending_yield: previous.pending_yield,\n diffusion_start: previous.diffusion_start,\n diffusion_end: previous.diffusion_end,\n };\n }\n\n protected override settledVaultBacking(\n parsedVaultDatum: VaultDatumV1,\n vaultUSDr: bigint,\n ): bigint {\n return settledBacking(vaultUSDr, parsedVaultDatum, this.rateTimeMs());\n }\n\n protected override buildTreasuryRequest(\n datum: Parameters<\n RealfiSDKV1Family[\"buildTreasuryRequest\"]\n >[0],\n parsed: IClassifiedOrderAction,\n origin: IRequestOrigin,\n ): TreasuryRequestV1 {\n // The signed request must echo the order datum's diffusion_end\n // (utilities.ak enforces request.diffusion_end == order.diffusion_end).\n const action = datum.action as OrderActionV1;\n const diffusionEnd =\n \"ODeposit\" in action ? action.ODeposit.diffusion_end : 0n;\n return {\n destination: datum.destination,\n amount: parsed.amount,\n yield: parsed.yield ?? 0n,\n diffusion_end: diffusionEnd,\n origin,\n reserve_asset: parsed.reserveAsset!,\n };\n }\n\n protected override get splitsYield(): boolean {\n return true;\n }\n\n /**\n * The yield split a deposit batch's creator should pick:\n * vault_usdr / treasury_circulating, i.e. the share of the circulating supply\n * that is staked. Pinning it to that ratio makes the SIGNED split reproduce\n * exactly the integer staked share the executor writes to the vault —\n * deposit.ak recomputes staked_yield_share = total_yield * numerator /\n * denominator with the same truncation-toward-zero, and the same two values\n * feed the execute path's calculateYieldShares.\n *\n * Only the creator of a batch calls this. A co-signer must NOT: it reads live\n * state, and two signers reading it at different chain states would produce\n * different payload bytes, which cannot be co-signed (the orchestrator checks\n * every signature against one payload hash). Co-signers read the batch's alpha\n * back from the backend and pass it to getSignedPayloadFromOrderInputs.\n */\n async computeDepositAlpha(): Promise {\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const { vaultUtxo } = await this.getVaultDatum();\n const vaultUSDr =\n vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n;\n const { parsedTreasuryDatum } = await this.getTreasuryDatum();\n const treasuryCirculating = parsedTreasuryDatum.circulating_supply;\n return treasuryCirculating > 0n\n ? { numerator: vaultUSDr, denominator: treasuryCirculating }\n : { numerator: 0n, denominator: 1n };\n }\n\n protected override async buildDepositAction(\n requests: TreasuryRequestV1[],\n alpha?: IYieldSplitAlpha,\n ): Promise<\n Awaited<\n ReturnType<\n RealfiSDKV1Family[\"buildDepositAction\"]\n >\n >\n > {\n // No fallback to live state: that is what made two signings of one batch\n // disagree. The batch's alpha has to be handed in — its creator computes it\n // once (computeDepositAlpha), everyone else reads it back from the backend.\n if (!alpha) {\n throw new Error(\n \"v1_1_rc1: a deposit batch needs its yield-split alpha — pass the batch's stored alpha (created with computeDepositAlpha)\",\n );\n }\n if (alpha.denominator <= 0n) {\n throw new Error(\n `v1_1_rc1: yield-split alpha denominator must be positive, got ${alpha.denominator}`,\n );\n }\n if (alpha.numerator < 0n || alpha.numerator > alpha.denominator) {\n throw new Error(\n `v1_1_rc1: yield-split alpha must be within [0, 1], got ${alpha.numerator}/${alpha.denominator}`,\n );\n }\n // The family action type is v1_0-shaped (Deposit has no `alpha`); the rc1\n // signing schema serializes `alpha` via its $defs (see IV1SigningSchemas).\n return { Deposit: { requests, alpha } } as unknown as Awaited<\n ReturnType<\n RealfiSDKV1Family[\"buildDepositAction\"]\n >\n >;\n }\n\n /**\n * rc1's Deposit carries a COSE-signed `alpha`; `deposit.ak` splits total_yield\n * against that signed ratio (quotient_integer), NOT live vault/treasury state.\n * Echo the signed alpha here so the executor's vault/pot outputs (and the\n * pot-output indexing) match what the validator checks — re-reading state\n * would diverge if the vault or treasury moved between signing and execution.\n */\n protected override resolveDepositYieldShares(\n totalYield: bigint,\n vaultUSDr: bigint,\n treasuryCirculating: bigint,\n action: Parameters<\n RealfiSDKV1Family<\n P,\n W,\n SettingsV1,\n VaultDatumV1\n >[\"resolveDepositYieldShares\"]\n >[3],\n ): { stakedYieldShare: bigint; unstakedYieldShare: bigint } {\n const deposit = (\n action as unknown as {\n Deposit?: { alpha: { numerator: bigint; denominator: bigint } };\n }\n ).Deposit;\n if (!deposit) {\n // Defensive: a non-Deposit action routed here → live-state split.\n return super.resolveDepositYieldShares(\n totalYield,\n vaultUSDr,\n treasuryCirculating,\n action,\n );\n }\n const { numerator, denominator } = deposit.alpha;\n // BigInt division truncates toward zero, matching Aiken quotient_integer.\n const stakedYieldShare =\n denominator > 0n ? (totalYield * numerator) / denominator : 0n;\n return {\n stakedYieldShare,\n unstakedYieldShare: totalYield - stakedYieldShare,\n };\n }\n\n protected override serializeOrchestratorWithdrawalRedeemer(\n redeemer: Parameters<\n RealfiSDKV1Family<\n P,\n W,\n SettingsV1,\n VaultDatumV1\n >[\"serializeOrchestratorWithdrawalRedeemer\"]\n >[0],\n ): PlutusData {\n // v1_1_rc1's orchestrator dispatch wraps order execution in\n // ExecuteOrders(...) (the sibling PublishYieldOracle path is a follow-up\n // PR). Nest the family's signed redeemer inside the wrapper. The redeemer is\n // v1_0-typed at the family layer (Deposit carries `alpha` only at runtime,\n // injected by buildDepositAction); cast to the wrapper's static.\n return Data.serialize(V1_1Rc1Types.ProtocolOrchestratorRedeemerV1, {\n ExecuteOrders: [redeemer],\n } as unknown as Exact);\n }\n\n protected override updateDepositVaultOutput(\n tx: TxBuilder,\n vaultUtxo: Core.TransactionUnspentOutput,\n parsedVaultDatum: VaultDatumV1,\n ctx: {\n stakedYieldShare: bigint;\n totalYield: bigint;\n orderInfos: IOrderInfo[];\n },\n ): void {\n // Vault window end = max diffusion_end across the batch's deposit orders\n // (max_end in deposit.ak). Read from each order datum's ODeposit action.\n let windowEndMs = 0n;\n for (const orderInfo of ctx.orderInfos) {\n const action = orderInfo.datum.action as OrderActionV1;\n if (\"ODeposit\" in action && action.ODeposit.diffusion_end > windowEndMs) {\n windowEndMs = action.ODeposit.diffusion_end;\n }\n }\n\n // One timestamp for both the shortfall check and the datum, so the warning\n // can never describe a different execution time than the one written.\n const nowMs = this.rateTimeMs();\n this.checkDiffusionWindow(parsedVaultDatum, ctx, windowEndMs, nowMs);\n\n const window = nextDepositDiffusion(\n parsedVaultDatum,\n ctx.stakedYieldShare,\n ctx.totalYield,\n windowEndMs,\n nowMs,\n );\n\n this.updateVaultOutputWithDatum(\n tx,\n vaultUtxo,\n {\n circulating_susdr: parsedVaultDatum.circulating_susdr,\n ...window,\n },\n ctx.stakedYieldShare,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Deposit order builder (adds the diffusion_end datum field)\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * Build a deposit order. Identical to the family default except the ODeposit\n * datum carries `diffusion_end` — the absolute POSIX-ms timestamp the staked\n * yield diffuses until, set at ORDER CREATION and echoed by the executed\n * request. Resolution: explicit `diffusionEnd` > `diffusionDurationMs` added to\n * the order-creation time > the SDK's `defaultDiffusionDurationMs` added to the\n * order-creation time > `0n` (instant).\n *\n * NB: because the window is absolute and fixed here, any delay before the\n * execute lands (batching, cold/multisig signature collection) shortens the\n * effective window; a window that fully elapses before execution collapses the\n * deposit to instant on-chain.\n */\n override async buildDepositOrderTx(params: {\n principal: bigint;\n yield: bigint;\n reserveAsset: [string, string];\n destination: Destination;\n owner?: MultisigScript;\n data?: PlutusData;\n /** Absolute POSIX-ms timestamp the staked yield diffuses until. */\n diffusionEnd?: bigint;\n /** Diffusion window length (ms) from order-creation time. */\n diffusionDurationMs?: bigint;\n }): Promise {\n if (params.principal < 0n) {\n throw new Error(\"Deposit principal must be non-negative\");\n }\n if (params.principal === 0n && params.yield === 0n) {\n throw new Error(\"Deposit must have non-zero principal or yield\");\n }\n const settings = this.settingsConfig(await this.getVersionSettings());\n const ra = findReserveAsset(settings, params.reserveAsset);\n const reserveAssetId = Core.AssetId(\n params.reserveAsset[0] + params.reserveAsset[1],\n );\n\n let valueToLock: Core.Value;\n if (params.yield >= 0n) {\n // Positive yield: lock reserve backing for BOTH principal AND yield.\n const totalUSDrBacking = params.principal + params.yield;\n valueToLock =\n totalUSDrBacking > 0n\n ? makeValue(MIN_LOVELACE, [\n reserveAssetId,\n usdrToReserveCeil(totalUSDrBacking, ra),\n ])\n : makeValue(MIN_LOVELACE);\n } else {\n // Negative yield: lock principal (reserve) + unstaked yield share (USDr).\n const principalReserve =\n params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n;\n valueToLock =\n principalReserve > 0n\n ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve])\n : makeValue(MIN_LOVELACE);\n\n const stablecoinAssetId = Core.AssetId(\n this.stablecoinPolicyId + this.assetNameHex,\n );\n const { parsedTreasuryDatum } = await this.getTreasuryDatum();\n const vaultUtxo = (await this.getVaultDatum()).vaultUtxo;\n const vaultUSDr =\n vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n;\n const { unstakedYieldShare } = calculateYieldShares(\n params.yield,\n vaultUSDr,\n parsedTreasuryDatum.circulating_supply,\n );\n if (unstakedYieldShare < 0n) {\n valueToLock = Value.merge(\n valueToLock,\n makeValue(0n, [stablecoinAssetId, -unstakedYieldShare]),\n );\n }\n }\n\n // Typed as the v1_1 action (carries diffusion_end); assignable to the\n // family's v1_0 action param since the extra field is additive.\n const action: OrderActionV1 = {\n ODeposit: {\n principal: params.principal,\n yield: params.yield,\n diffusion_end: this.resolveDiffusionEnd(params),\n reserve_asset: params.reserveAsset,\n },\n };\n\n return this._buildOrderTx({\n action,\n valueToLock,\n owner: params.owner,\n destination: params.destination,\n data: params.data,\n });\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Execution validity / diffusion rate time\n // ─────────────────────────────────────────────────────────────────────────────\n\n override async buildExecuteOrdersTx(\n params: Parameters<\n RealfiSDKV1Family[\"buildExecuteOrdersTx\"]\n >[0],\n ): Promise {\n // Pin both execution bounds once and align them to integer slots. The\n // backed-off lower bound drives diffusion_start and rate math; the upper\n // bound stays relative to unshifted wall time so skew protection does not\n // shorten the configured forward window.\n const provider = this.blaze.provider;\n const wallNowMs = slotAlignedTimeMs(provider, this.nowFn());\n this.executionNowMs = slotAlignedTimeMs(\n provider,\n wallNowMs - this.executionClockBackoffMs,\n );\n this.executionValidUntilMs = slotAlignedTimeMs(\n provider,\n wallNowMs + this.executionValidityWindowMs,\n );\n try {\n return await super.buildExecuteOrdersTx(params);\n } finally {\n this.executionNowMs = undefined;\n this.executionValidUntilMs = undefined;\n }\n }\n\n protected override async applyExecutionValidityBounds(\n tx: TxBuilder,\n context: IExecutionValidityContext,\n ): Promise {\n const nowMs = this.executionNowMs;\n const validUntilMs = this.executionValidUntilMs;\n if (nowMs === undefined || validUntilMs === undefined) {\n return;\n }\n const { actionType, parsedVaultDatum } = context;\n\n // Deposit always reads the diffusion rate time once a window is requested\n // or already active; setting bounds unconditionally on deposit is safe\n // (the validator only caps the span when it reads it). Stake/unstake need\n // bounds only when a diffusion window is active.\n const needsBounds =\n actionType === \"deposit\" ||\n ((actionType === \"stake\" || actionType === \"unstake\") &&\n (parsedVaultDatum?.pending_yield ?? 0n) > 0n);\n if (!needsBounds) {\n return;\n }\n\n // Both bounds are already slot-aligned times, but go through `slotFloor`\n // anyway: it is the only conversion allowed to reach the tx builder, and it\n // guarantees an integer slot (the CBOR writer would silently truncate a\n // fractional one, putting a different value on-chain than the datum's).\n tx.setValidFrom(slotFloor(this.blaze.provider, nowMs));\n tx.setValidUntil(slotFloor(this.blaze.provider, validUntilMs));\n }\n\n // ─────────────────────────────────────────────────────────────────────────────\n // Helpers\n // ─────────────────────────────────────────────────────────────────────────────\n\n /**\n * The diffusion rate timestamp (POSIX ms): the pinned execution time during\n * an execution build, else the current wall-clock time (used by order-build\n * min-received estimation, where an exact rate time is not yet knowable).\n */\n private rateTimeMs(): bigint {\n return this.executionNowMs ?? this.nowFn();\n }\n\n private resolveDiffusionEnd(params: {\n diffusionEnd?: bigint;\n diffusionDurationMs?: bigint;\n }): bigint {\n if (params.diffusionEnd !== undefined) {\n return params.diffusionEnd;\n }\n const duration =\n params.diffusionDurationMs ?? this.defaultDiffusionDurationMs;\n return duration !== undefined ? this.nowFn() + duration : 0n;\n }\n\n /**\n * Surface a diffusion-window shortfall on a deposit execution.\n *\n * `diffusion_end` is absolute and fixed at ORDER CREATION, so waiting to\n * execute (batching, cold/multisig signing) eats the window. Once it is gone,\n * `validate_deposit_diffusion` (utilities.ak:1117) zeroes the window and the\n * deposit settles instantly — a VALID on-chain outcome, so the tx succeeds and\n * nothing else in the stack complains. This is the only place that sees it:\n * the operator would otherwise have to read the resulting vault datum.\n *\n * Advisory by default; {@link IRealfiSDKParamsV1_1Rc1.throwOnDiffusionWindowShortfall}\n * turns it into a refusal.\n */\n private checkDiffusionWindow(\n vaultIn: VaultDatumV1,\n ctx: { stakedYieldShare: bigint; totalYield: bigint },\n windowEndMs: bigint,\n nowMs: bigint,\n ): void {\n // A loss freezes the window rather than collapsing it (utilities.ak:1143).\n if (ctx.totalYield < 0n) {\n return;\n }\n // What the vault still owes the exchange rate — NOT `pending_yield`, which\n // keeps its original value in the datum until a tx rewrites it and so stays\n // positive long after the window has run its course. Only an unfinished\n // window has anything left to lose.\n const pendingLeftUsdr = pendingRemaining(vaultIn, nowMs);\n // No window requested and nothing left owed: the validator zeroes the datum\n // as its benign no-op case (utilities.ak:1128) — either a plain instant\n // deposit, or bookkeeping cleanup after a window ran to completion.\n if (windowEndMs <= 0n && pendingLeftUsdr <= 0n) {\n return;\n }\n // Nothing to diffuse: no staked share arriving and nothing still owed.\n if (ctx.stakedYieldShare <= 0n && pendingLeftUsdr <= 0n) {\n return;\n }\n\n const remainingMs = windowEndMs - nowMs;\n let message: string;\n if (windowEndMs > 0n) {\n if (remainingMs > this.diffusionShortfallThresholdMs) {\n return;\n }\n // Distinct outcomes: a lapsed window collapses to instant, while a\n // near-lapsed one still opens and diffuses over what is left.\n if (remainingMs <= 0n) {\n message =\n `deposit diffusion window lapsed ${-remainingMs}ms before execution ` +\n `(diffusion_end=${windowEndMs}, execution time=${nowMs}); the staked ` +\n `yield settles INSTANTLY instead of diffusing. Re-create the order ` +\n `with a longer window to diffuse it.`;\n } else {\n message =\n `deposit diffusion window has only ${remainingMs}ms left at ` +\n `execution (diffusion_end=${windowEndMs}); the staked yield diffuses ` +\n `over that remainder.`;\n }\n } else {\n // No window requested while one is unfinished: the validator clears the\n // active window instead of carrying it (utilities.ak:1128-1136).\n message =\n `deposit requests no diffusion window while ${pendingLeftUsdr} USDr has ` +\n `not yet diffused (of ${vaultIn.pending_yield} pending, at execution ` +\n `time ${nowMs}); the active window is CLEARED and that remainder ` +\n `settles instantly.`;\n }\n\n const text = `[realfi-sdk] ${message}`;\n if (this.throwOnDiffusionWindowShortfall) {\n throw new Error(text);\n }\n console.warn(text);\n }\n\n // ───────────────────────────────────────────────────────────────────────────\n // In-place v1_0 → v1_1_rc1 upgrade: vault-datum migration (MigrateState)\n // ───────────────────────────────────────────────────────────────────────────\n\n /**\n * Deploy the migration validator as a reference script. Required before its\n * withdrawal can be attached in {@link buildMigrateStateTx}.\n */\n async deployMigration(): Promise {\n return deployScript(\n this.blaze,\n this.migrationScript,\n this.scriptDeploymentAddress,\n );\n }\n\n /**\n * Register the migration validator's stake credential. Its withdrawal cannot\n * be exercised until the stake credential is registered.\n */\n registerMigrationStake(): TxBuilder {\n return this.blaze\n .newTransaction()\n .addRegisterStake(credentialFromScript(this.migrationScript));\n }\n\n /**\n * Read the staking-vault UTxO holding a legacy v1_0 (one-field) datum. The\n * inherited {@link getVaultDatum} parses the four-field v1_1 schema and THROWS\n * on a pre-migration vault, so the migration path reads the input with the\n * v1_0 single-field schema (`circulating_susdr` only).\n */\n private async readLegacyVaultDatum(): Promise<{\n vaultUtxo: Core.TransactionUnspentOutput;\n circulatingSusdr: bigint;\n }> {\n const { utxo, parsedDatum } = await getDatumFromNFT(\n this.blaze,\n this.stakingVaultNFTAssetId,\n V1_0Types.VaultDatumV1,\n );\n const legacy = parsedDatum as V1_0Types.VaultDatumV1;\n return { vaultUtxo: utxo, circulatingSusdr: legacy.circulating_susdr };\n }\n\n /**\n * Build the COSE payload for a `MigrateState` action. Unlike the order path\n * (whose nonce derives from the sorted order inputs), migration spends the\n * vault UTxO, so the nonce is anchored to the vault input. Returns the CBOR\n * payload (for {@link buildMigrateStateTx}) and its blake2b-256 hash (for\n * CIP-30 signing by the `permissions.migrate` signer(s)).\n */\n async getMigrateStatePayload(): Promise<{\n signedPayload: string;\n payloadHash: string;\n }> {\n const { vaultUtxo } = await this.readLegacyVaultDatum();\n const nonce = buildNonceFromUtxo(vaultUtxo.input());\n // The family signing-schema key is v1_0-typed at compile time (its action\n // union predates MigrateState), but the runtime schema is the v1_1 one whose\n // ProtocolRedeemerV1 includes the MigrateState literal (ctor 8). Cast the\n // payload to the family payload type the serializer expects.\n const payload = { action: \"MigrateState\", nonce } as unknown as Parameters<\n RealfiSDKV1Family<\n P,\n W,\n SettingsV1,\n VaultDatumV1\n >[\"serializeOrchestratorWithdrawalRedeemer\"]\n >[0][\"payload\"];\n const serialized = Data.serialize(\n this.signing.SignedPayload_ProtocolRedeemerV1,\n payload,\n );\n const signedPayload = serialized.toCbor().toString();\n const payloadHash = blake2b_256(HexBlob(signedPayload));\n return { signedPayload, payloadHash };\n }\n\n /**\n * Build the in-place vault-datum migration transaction (`MigrateState`). Spends\n * the staking-vault UTxO (still holding the v1_0 one-field datum) and re-locks\n * it at the SAME address and value with the four-field v1_1 datum\n * (`circulating_susdr` preserved, diffusion window zeroed). Operator-only — not\n * on the partner surface, like {@link buildExecuteOrdersTx}.\n *\n * Requires (per `protocol_migration_v1_0_to_v1_1.ak` + the orchestrator's\n * MigrateState branch): the migration validator deployed + stake-registered,\n * `registry.migration = Some(migrationScriptHash)` in the live settings, and\n * `signatures` = the `permissions.migrate` COSE signatures over the payload\n * hash from {@link getMigrateStatePayload}.\n */\n async buildMigrateStateTx(params: {\n signedPayload: string;\n signatures: Tuple_VerificationKey_COSESign1[];\n }): Promise {\n const signedPayload = parse(\n this.signing.SignedPayload_ProtocolRedeemerV1,\n PlutusData.fromCbor(HexBlob(params.signedPayload)),\n ) as Parameters<\n RealfiSDKV1Family<\n P,\n W,\n SettingsV1,\n VaultDatumV1\n >[\"serializeOrchestratorWithdrawalRedeemer\"]\n >[0][\"payload\"];\n\n const { vaultUtxo, circulatingSusdr } = await this.readLegacyVaultDatum();\n\n // Reference inputs: orchestrator + staking-vault + migration scripts, plus\n // the proxy datum (read as a reference input, never spent).\n const refInputs = await this.getScriptReferenceInputs({\n protocol: this.protocolScriptHash,\n stakingVault: this.stakingVaultScriptHash,\n migration: this.migrationScriptHash,\n });\n const { proxyUtxo } = await this.getParsedProxyDatum();\n\n // Fee inputs: wallet UTxOs minus the vault (a script input), the proxy, and\n // every reference input (regular and reference inputs must be disjoint).\n const walletUtxos = await this.blaze.wallet.getUnspentOutputs();\n const utxoKey = (inp: Core.TransactionInput) =>\n `${inp.transactionId().toString()}#${inp.index().toString()}`;\n const excluded = new Set([\n utxoKey(vaultUtxo.input()),\n utxoKey(proxyUtxo.input()),\n ]);\n for (const ref of Object.values(refInputs)) {\n if (ref) {\n excluded.add(utxoKey(ref.input()));\n }\n }\n const feeUtxos = walletUtxos.filter(\n (u) => !excluded.has(utxoKey(u.input())),\n );\n\n // Vault input index in the ledger-sorted input set (txHash, then index).\n const sortedInputRefs = [\n vaultUtxo.input(),\n ...feeUtxos.map((u) => u.input()),\n ].sort((a, b) => {\n const txA = a.transactionId().toString();\n const txB = b.transactionId().toString();\n if (txA < txB) return -1;\n if (txA > txB) return 1;\n return Number(a.index()) - Number(b.index());\n });\n const vaultInputIdx = BigInt(\n sortedInputRefs.findIndex(\n (r) =>\n r.transactionId().toString() ===\n vaultUtxo.input().transactionId().toString() &&\n r.index() === vaultUtxo.input().index(),\n ),\n );\n\n // Migrated datum: preserve circulating_susdr, zero the diffusion window (no\n // pending yield at migration time). The vault output is the first output the\n // builder adds, so its index is 0 (change outputs are appended after).\n const migratedDatum: VaultDatumV1 = {\n circulating_susdr: circulatingSusdr,\n pending_yield: 0n,\n diffusion_start: 0n,\n diffusion_end: 0n,\n };\n\n // No order requests travel in a migration; the request/treasury indices are\n // dummies (the migration branch reads only the vault indices).\n const extra: Parameters<\n RealfiSDKV1Family<\n P,\n W,\n SettingsV1,\n VaultDatumV1\n >[\"serializeOrchestratorWithdrawalRedeemer\"]\n >[0][\"extra\"] = {\n request_to_outputs: [],\n input_to_requests: [],\n treasury_input_idx: 0n,\n treasury_output_idx: 0n,\n vault_input_idx: vaultInputIdx,\n vault_output_idx: 0n,\n };\n\n const orchestratorRedeemer = this.serializeOrchestratorWithdrawalRedeemer({\n extra,\n payload: signedPayload,\n signatures: params.signatures,\n });\n\n const tx = this.newOrderTransaction();\n\n // Spend the vault with DeferToProtocol (Void); the vault script resolves\n // from the staking-vault reference input.\n tx.addInput(vaultUtxo, Data.Void());\n for (const feeUtxo of feeUtxos) {\n tx.addInput(feeUtxo);\n }\n\n tx.addReferenceInput(refInputs.protocol!);\n tx.addReferenceInput(refInputs.stakingVault!);\n tx.addReferenceInput(refInputs.migration!);\n tx.addReferenceInput(proxyUtxo);\n\n // Re-lock exactly one vault output at the SAME address (payment + stake) and\n // the SAME value, no reference script, carrying the four-field datum.\n tx.lockAssets(\n vaultUtxo.output().address(),\n vaultUtxo.output().amount(),\n Data.serialize(this.schemas.VaultDatumV1, migratedDatum),\n );\n\n // Orchestrator withdrawal carries the ExecuteOrders(MigrateState) redeemer\n // plus the permissions.migrate COSE signatures.\n tx.addWithdrawal(\n Core.RewardAccount.fromCredential(\n { type: Core.CredentialType.ScriptHash, hash: this.protocolScriptHash },\n this.network,\n ),\n 0n,\n orchestratorRedeemer,\n );\n // Migration validator withdrawal (Void); enforces the migration tx shape.\n tx.addWithdrawal(\n Core.RewardAccount.fromCredential(\n {\n type: Core.CredentialType.ScriptHash,\n hash: this.migrationScriptHash,\n },\n this.network,\n ),\n 0n,\n Data.Void(),\n );\n\n return tx;\n }\n}\n\n/** Re-exported for parity with the sibling version modules. */\nexport { MAX_DIFFUSION_RATE_SPAN_MS };\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sundae/discovery.js b/modules/realfi-partner-sdk/dist/esm/sundae/discovery.js new file mode 100644 index 0000000000..6145205520 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sundae/discovery.js @@ -0,0 +1,121 @@ +import { QueryProviderSundaeSwap, SundaeUtils } from "@sundaeswap/core"; +import { RealfiApi } from "../api/realfi-api.js"; +import { API_REGISTRY } from "../api/registry.js"; +import { isSwappableSundaeSwapVersion } from "./support.js"; +import { withV4CurveData } from "./v4-curve.js"; + +/** + * Which pools discovery returns, narrowing left to right: + * `curated ⊆ buildable ⊆ all`. + * + * - `all` — every pool the Sundae API returns for the asset, any version. + * - `buildable` — those the SDK can build an order *for*. Note "for", not + * "against": a V4 pool is included because the SDK places a pool-less intent + * for it, even though no order names the pool. + * - `curated` — the buildable pools whose pair RealFi has approved. + */ + +/** Internal seam for RealFi's authoritative runtime pair configuration. */ + +const SUNDAE_POOL_QUERY_RESULT_LIMIT = 50; +const SUNDAE_POOL_DISCOVERY_SCOPES = ["curated", "buildable", "all"]; +function isPoolAsset(assetId, candidate) { + return SundaeUtils.isAssetIdsEqual(assetId, candidate); +} +function poolContainsAsset(pool, assetId) { + return isPoolAsset(pool.assetA.assetId, assetId) || isPoolAsset(pool.assetB.assetId, assetId); +} +function deterministicUniquePools(pools) { + const unique = new Map(); + for (const pool of pools) { + const key = `${pool.version}\u0000${pool.ident}`; + if (!unique.has(key)) { + unique.set(key, pool); + } + } + return [...unique.values()].sort((left, right) => { + if (left.ident !== right.ident) { + return left.ident < right.ident ? -1 : 1; + } + if (left.version === right.version) { + return 0; + } + return left.version < right.version ? -1 : 1; + }); +} +function isCuratedPool(pool, { + baseAssetId, + counterpartAssetIds +}) { + const aIsBase = isPoolAsset(pool.assetA.assetId, baseAssetId); + const bIsBase = isPoolAsset(pool.assetB.assetId, baseAssetId); + const counterpartId = aIsBase ? pool.assetB.assetId : bIsBase ? pool.assetA.assetId : undefined; + return counterpartId !== undefined && counterpartAssetIds.some(assetId => isPoolAsset(counterpartId, assetId)); +} + +/** + * Internal constructor. The loader remains behind the package export boundary + * so RealFi, not partners, owns curated pair selection. + */ +export function createPoolDiscovery(network, options = {}, loadCuratedPoolAssets) { + const queryProvider = new QueryProviderSundaeSwap(network); + if (options.endpoint !== undefined) { + queryProvider.baseUrl = options.endpoint; + } + return { + async findPoolsByAsset(assetId, { + scope = "curated" + } = {}) { + if (assetId.trim().length === 0) { + throw new Error("Sundae pool discovery requires a non-empty asset id"); + } + if (!SUNDAE_POOL_DISCOVERY_SCOPES.includes(scope)) { + throw new Error(`Unsupported Sundae pool discovery scope: ${scope}`); + } + if (scope === "curated" && !loadCuratedPoolAssets) { + throw new Error("Curated Sundae pool discovery requires authoritative RealFi asset configuration"); + } + const curatedAssets = scope === "curated" ? await loadCuratedPoolAssets(network) : undefined; + const rawPools = await queryProvider.findPoolDataByAssetId(assetId); + // Sundae's byAsset query has no pagination arguments. Treat the gateway's + // 50-result boundary as incomplete rather than silently hiding pools. + if (rawPools.length >= SUNDAE_POOL_QUERY_RESULT_LIMIT) { + throw new Error(`Sundae pool discovery returned ${rawPools.length} pools for ${assetId}; results may be truncated`); + } + + // Before any scope filter, so `all` carries the curve data too. Retires + // itself once Sundae's own query selects these fields — see v4-curve.ts. + const all = await withV4CurveData(deterministicUniquePools(rawPools), assetId, queryProvider.baseUrl); + if (scope === "all") { + return all; + } + + // `swap`, not `buildAgainstPool` — see TSundaePoolDiscoveryScope. The + // narrower capability would hide V4 from `curated` too, since that is + // derived from this. + const buildable = all.filter(pool => isSwappableSundaeSwapVersion(pool.version) && poolContainsAsset(pool, assetId)); + if (scope === "buildable") { + return buildable; + } + return buildable.filter(pool => isCuratedPool(pool, curatedAssets)); + } + }; +} + +/** RealFi-owned runtime curation used by the public network factory. */ +export function createRuntimeCuratedPoolAssetsLoader(partnerConfigUrl) { + return async network => { + const api = RealfiApi.create({ + ...API_REGISTRY[network], + ...(partnerConfigUrl === undefined ? {} : { + partnerConfigUrl + }) + }); + const config = await api.getPartnerConfig(); + return { + baseAssetId: config.stablecoinAssetId, + counterpartAssetIds: config.swapCounterpartAssets + }; + }; +} +//# sourceMappingURL=discovery.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sundae/discovery.js.map b/modules/realfi-partner-sdk/dist/esm/sundae/discovery.js.map new file mode 100644 index 0000000000..a8218a4873 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sundae/discovery.js.map @@ -0,0 +1 @@ +{"version":3,"file":"discovery.js","names":["QueryProviderSundaeSwap","SundaeUtils","RealfiApi","API_REGISTRY","isSwappableSundaeSwapVersion","withV4CurveData","SUNDAE_POOL_QUERY_RESULT_LIMIT","SUNDAE_POOL_DISCOVERY_SCOPES","isPoolAsset","assetId","candidate","isAssetIdsEqual","poolContainsAsset","pool","assetA","assetB","deterministicUniquePools","pools","unique","Map","key","version","ident","has","set","values","sort","left","right","isCuratedPool","baseAssetId","counterpartAssetIds","aIsBase","bIsBase","counterpartId","undefined","some","createPoolDiscovery","network","options","loadCuratedPoolAssets","queryProvider","endpoint","baseUrl","findPoolsByAsset","scope","trim","length","Error","includes","curatedAssets","rawPools","findPoolDataByAssetId","all","buildable","filter","createRuntimeCuratedPoolAssetsLoader","partnerConfigUrl","api","create","config","getPartnerConfig","stablecoinAssetId","swapCounterpartAssets"],"sources":["../../../src/sundae/discovery.ts"],"sourcesContent":["import {\n QueryProviderSundaeSwap,\n SundaeUtils,\n type IPoolData,\n type TSupportedNetworks,\n} from \"@sundaeswap/core\";\n\nimport { RealfiApi } from \"../api/realfi-api.js\";\nimport { API_REGISTRY } from \"../api/registry.js\";\nimport { isSwappableSundaeSwapVersion } from \"./support.js\";\nimport { withV4CurveData } from \"./v4-curve.js\";\n\n/**\n * Which pools discovery returns, narrowing left to right:\n * `curated ⊆ buildable ⊆ all`.\n *\n * - `all` — every pool the Sundae API returns for the asset, any version.\n * - `buildable` — those the SDK can build an order *for*. Note \"for\", not\n * \"against\": a V4 pool is included because the SDK places a pool-less intent\n * for it, even though no order names the pool.\n * - `curated` — the buildable pools whose pair RealFi has approved.\n */\nexport type TSundaePoolDiscoveryScope = \"curated\" | \"buildable\" | \"all\";\n\nexport interface ISundaePoolDiscoveryParams {\n /** Defaults to the RealFi-approved `curated` scope. */\n scope?: TSundaePoolDiscoveryScope;\n}\n\nexport interface ISundaePoolDiscoveryOptions {\n /** Overrides Sundae's endpoint while retaining the network for fee math. */\n endpoint?: string;\n /** Overrides RealFi's runtime partner configuration for custom deployments. */\n partnerConfigUrl?: string;\n}\n\nexport interface ISundaePoolDiscoverySDK {\n findPoolsByAsset(\n assetId: string,\n params?: ISundaePoolDiscoveryParams,\n ): Promise;\n}\n\n/** Internal seam for RealFi's authoritative runtime pair configuration. */\nexport interface ISundaeCuratedPoolAssets {\n baseAssetId: string;\n counterpartAssetIds: readonly string[];\n}\n\nexport type TSundaeCuratedPoolAssetsLoader = (\n network: TSupportedNetworks,\n) => Promise;\n\nconst SUNDAE_POOL_QUERY_RESULT_LIMIT = 50;\nconst SUNDAE_POOL_DISCOVERY_SCOPES: readonly TSundaePoolDiscoveryScope[] = [\n \"curated\",\n \"buildable\",\n \"all\",\n];\n\nfunction isPoolAsset(assetId: string, candidate: string): boolean {\n return SundaeUtils.isAssetIdsEqual(assetId, candidate);\n}\n\nfunction poolContainsAsset(pool: IPoolData, assetId: string): boolean {\n return (\n isPoolAsset(pool.assetA.assetId, assetId) ||\n isPoolAsset(pool.assetB.assetId, assetId)\n );\n}\n\nfunction deterministicUniquePools(pools: readonly IPoolData[]): IPoolData[] {\n const unique = new Map();\n for (const pool of pools) {\n const key = `${pool.version}\\u0000${pool.ident}`;\n if (!unique.has(key)) {\n unique.set(key, pool);\n }\n }\n\n return [...unique.values()].sort((left, right) => {\n if (left.ident !== right.ident) {\n return left.ident < right.ident ? -1 : 1;\n }\n if (left.version === right.version) {\n return 0;\n }\n return left.version < right.version ? -1 : 1;\n });\n}\n\nfunction isCuratedPool(\n pool: IPoolData,\n { baseAssetId, counterpartAssetIds }: ISundaeCuratedPoolAssets,\n): boolean {\n const aIsBase = isPoolAsset(pool.assetA.assetId, baseAssetId);\n const bIsBase = isPoolAsset(pool.assetB.assetId, baseAssetId);\n const counterpartId = aIsBase\n ? pool.assetB.assetId\n : bIsBase\n ? pool.assetA.assetId\n : undefined;\n\n return (\n counterpartId !== undefined &&\n counterpartAssetIds.some((assetId) => isPoolAsset(counterpartId, assetId))\n );\n}\n\n/**\n * Internal constructor. The loader remains behind the package export boundary\n * so RealFi, not partners, owns curated pair selection.\n */\nexport function createPoolDiscovery(\n network: TSupportedNetworks,\n options: ISundaePoolDiscoveryOptions = {},\n loadCuratedPoolAssets?: TSundaeCuratedPoolAssetsLoader,\n): ISundaePoolDiscoverySDK {\n const queryProvider = new QueryProviderSundaeSwap(network);\n if (options.endpoint !== undefined) {\n queryProvider.baseUrl = options.endpoint;\n }\n\n return {\n async findPoolsByAsset(\n assetId,\n { scope = \"curated\" }: ISundaePoolDiscoveryParams = {},\n ) {\n if (assetId.trim().length === 0) {\n throw new Error(\"Sundae pool discovery requires a non-empty asset id\");\n }\n if (!SUNDAE_POOL_DISCOVERY_SCOPES.includes(scope)) {\n throw new Error(`Unsupported Sundae pool discovery scope: ${scope}`);\n }\n if (scope === \"curated\" && !loadCuratedPoolAssets) {\n throw new Error(\n \"Curated Sundae pool discovery requires authoritative RealFi asset configuration\",\n );\n }\n\n const curatedAssets =\n scope === \"curated\" ? await loadCuratedPoolAssets!(network) : undefined;\n const rawPools = await queryProvider.findPoolDataByAssetId(assetId);\n // Sundae's byAsset query has no pagination arguments. Treat the gateway's\n // 50-result boundary as incomplete rather than silently hiding pools.\n if (rawPools.length >= SUNDAE_POOL_QUERY_RESULT_LIMIT) {\n throw new Error(\n `Sundae pool discovery returned ${rawPools.length} pools for ${assetId}; results may be truncated`,\n );\n }\n\n // Before any scope filter, so `all` carries the curve data too. Retires\n // itself once Sundae's own query selects these fields — see v4-curve.ts.\n const all = await withV4CurveData(\n deterministicUniquePools(rawPools),\n assetId,\n queryProvider.baseUrl,\n );\n if (scope === \"all\") {\n return all;\n }\n\n // `swap`, not `buildAgainstPool` — see TSundaePoolDiscoveryScope. The\n // narrower capability would hide V4 from `curated` too, since that is\n // derived from this.\n const buildable = all.filter(\n (pool) =>\n isSwappableSundaeSwapVersion(pool.version) &&\n poolContainsAsset(pool, assetId),\n );\n if (scope === \"buildable\") {\n return buildable;\n }\n\n return buildable.filter((pool) => isCuratedPool(pool, curatedAssets!));\n },\n };\n}\n\n/** RealFi-owned runtime curation used by the public network factory. */\nexport function createRuntimeCuratedPoolAssetsLoader(\n partnerConfigUrl?: string,\n): TSundaeCuratedPoolAssetsLoader {\n return async (network) => {\n const api = RealfiApi.create({\n ...API_REGISTRY[network],\n ...(partnerConfigUrl === undefined ? {} : { partnerConfigUrl }),\n });\n const config = await api.getPartnerConfig();\n return {\n baseAssetId: config.stablecoinAssetId,\n counterpartAssetIds: config.swapCounterpartAssets,\n };\n };\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sundae/index.js b/modules/realfi-partner-sdk/dist/esm/sundae/index.js new file mode 100644 index 0000000000..bb5ca9fad9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sundae/index.js @@ -0,0 +1,497 @@ +import { Core } from "@blaze-cardano/sdk"; +import { AssetAmount } from "@sundaeswap/asset"; +import { BlazeHelper, EContractVersion, EDatumType, EPoolCurve, ESwapType, SundaeSDK, SundaeUtils } from "@sundaeswap/core"; + +// Keep the partner construction surface self-contained. Consumers can build +// swap inputs through `SundaeSwap` without importing our implementation +// dependencies directly. +export { AssetAmount, EContractVersion, EDatumType, EPoolCurve, ESwapType }; +import { addressToRealFiDestination, plutusDataFromCbor, realfiOwnerFromSundaeV3OwnerAddress, sundaeV3DestinationAddressFromStepResult } from "../tx-builder/destination.js"; +import { createPoolDiscovery, createRuntimeCuratedPoolAssetsLoader } from "./discovery.js"; +import { assertSupportedSundaeSwapPool, assertSwappableSundaeSwapPool } from "./support.js"; +export { assertSupportedSundaeSwapPool, assertSwappableSundaeSwapPool, isSupportedSundaeSwapVersion, isSwappableSundaeSwapVersion, SUPPORTED_SUNDAE_SWAP_VERSIONS, SWAPPABLE_SUNDAE_SWAP_VERSIONS } from "./support.js"; + +/** + * A V4 swap intent: an offer and a floor, naming no pool. + * + * `referralFee` is deliberately not surfaced — no RealFi path takes one. + */ + +/** Creates a network-scoped, Blaze-free Sundae pool discovery adapter. */ +export function forNetwork(network, options = {}) { + return createPoolDiscovery(network, options, createRuntimeCuratedPoolAssetsLoader(options.partnerConfigUrl)); +} +function canonicalizePoolAsset(pool, asset) { + const metadata = [pool.assetA, pool.assetB].find(poolAsset => SundaeUtils.isAssetIdsEqual(poolAsset.assetId, asset.metadata.assetId)); + if (!metadata) { + throw new Error(`Asset is not part of the Sundae swap pool: ${asset.metadata.assetId}`); + } + return new AssetAmount(asset.amount, metadata); +} +function oppositePoolAsset(pool, suppliedAsset) { + return suppliedAsset.metadata.assetId === pool.assetA.assetId ? pool.assetB : pool.assetA; +} +function canonicalizeSwapType(pool, suppliedAsset, swapType) { + if (swapType.type === ESwapType.MARKET) { + return swapType; + } + const minReceivable = canonicalizePoolAsset(pool, swapType.minReceivable); + const expectedAsset = oppositePoolAsset(pool, suppliedAsset); + if (minReceivable.metadata.assetId !== expectedAsset.assetId) { + throw new Error(`Sundae LIMIT minimum must use the pool asset opposite the supplied asset: ${expectedAsset.assetId}`); + } + return { + ...swapType, + minReceivable + }; +} +function assertValidSlippage(slippage) { + if (!Number.isFinite(slippage) || slippage < 0 || slippage > 1) { + throw new Error("Sundae swap slippage must be a finite number between 0 and 1 inclusive"); + } +} +function decimalFraction(value) { + const [coefficient = "0", exponentText] = value.toString().toLowerCase().split("e"); + const exponent = Number(exponentText ?? 0); + const [whole, fraction = ""] = coefficient.split("."); + const digits = BigInt(`${whole}${fraction}`); + const scale = fraction.length - exponent; + return scale > 0 ? { + numerator: digits, + denominator: 10n ** BigInt(scale) + } : { + numerator: digits * 10n ** BigInt(-scale), + denominator: 1n + }; +} +function ceilDiv(numerator, denominator) { + return numerator === 0n ? 0n : (numerator + denominator - 1n) / denominator; +} + +/** + * Applies the caller's decimal slippage to an integer quote without coercing + * the quote to a JavaScript number. Sundae's helper performs that coercion, + * which can weaken large minimums after `Number.MAX_SAFE_INTEGER`. + */ +function minReceivableFromSlippage(output, receivedAsset, slippage) { + const { + numerator, + denominator + } = decimalFraction(slippage); + const remaining = denominator - numerator; + const amount = ceilDiv(output * remaining, denominator); + return new AssetAmount(amount, receivedAsset); +} + +/** + * Why this fee cannot quote a constant-sum swap, or undefined if it can. + * + * At a fee of 1 the forward quote settles to nothing and the inverse divides by + * zero; above 1 the forward quote goes negative. The bound matches + * `ConstantSumPool.getSwapInput`'s own `[0, 1)` — the forward direction + * tolerates exactly 1, but a pool taking the whole trade is not one we should be + * quoting either way. + */ +function feeRefusal(currentFee) { + if (!Number.isFinite(currentFee) || currentFee < 0 || currentFee >= 1) { + return `Sundae constant-sum swap requires a fee in [0, 1); got ${currentFee}`; + } + return undefined; +} + +/** + * The positive-amount rule matches what V3 and Stableswaps already enforce + * through Sundae's "Input and reserves must be positive"; V4 was the only + * version that quietly returned zero instead. + */ +function assertQuotableConstantSum(amount, currentFee) { + if (amount <= 0n) { + throw new Error("Sundae constant-sum swap requires a positive amount"); + } + const refusal = feeRefusal(currentFee); + if (refusal) { + throw new Error(refusal); + } +} + +/** + * Settles a V4 (constant-sum) swap the way Sundae's own engine does: + * + * output = offered − floor(offered × fee) + * + * That is `ConstantSumPool.getSwapOutput` from `@sundaeswap/math` specialised to + * equal per-asset prices, not an approximation of it. We cannot call + * `SundaeUtils.getSwapOutput` for V4 because it dispatches on `pool.curve`, and + * the Sundae API populates neither `curve` nor `prices` — it would fall through + * to `Unsupported v4 pool curve: undefined`. + * + * The rate comes from `currentFee`'s exact decimal expansion rather than a float + * product: past `Number.MAX_SAFE_INTEGER` a float drops the low digits and + * shifts the result, the same hazard {@link minReceivableFromSlippage} avoids. + * + * `priceWeight` is the pool's per-asset constant-sum price, which both assets of + * a supported pool share. It cannot be divided out: the fee is floored at the + * *scaled* value and the quotient is floored again, so the two roundings only + * collapse into one at a weight of `1`. At a weight of `2`, offering `1999` at a + * fee of `0.001` settles to `1997`, where dividing out would say `1998` — and + * since this figure also becomes `minReceived`, the higher answer would leave a + * floor the fill can never clear. + * + * Deliberately does NOT cap the output at the pool's reserve. `ConstantSumPool` + * caps, because it prices one specific pool; a V4 order names no pool, so + * capping here would silently lower `minReceived` — the owner's only guarantee — + * whenever a large order is quoted against a shallow pool. + */ +function constantSumSwapOutput(offered, currentFee, priceWeight) { + assertQuotableConstantSum(offered, currentFee); + const { + numerator, + denominator + } = decimalFraction(currentFee); + const offeredValue = offered * priceWeight; + const feeValue = offeredValue * numerator / denominator; + return (offeredValue - feeValue) / priceWeight; +} + +/** + * Quotes a V4 swap. `slippage` is validated by {@link quoteSwap} and then + * ignored: a constant-sum pool has no price movement to buffer against, and — + * decisively — the surplus above `min_received` is unbound on-chain, so slack in + * the floor is not a safety margin, it is directly skimmable by the scooper. + * `estimatedReceived` and `minReceived` are therefore the same figure. + * + * Assumes the pool weights its two assets equally. That precondition is + * unverifiable from the API, which never serves `prices`; the matching-decimals + * half of it is checked here, and the pools RealFi trades satisfy both. + */ +/** + * Why this pool cannot be priced as an equal-weight constant-sum pool, or + * undefined if it can. {@link constantSumPriceWeight} throws it and + * {@link selectV4QuotePool} filters on it, so the two cannot drift apart. + */ +function constantSumRefusal(pool) { + // A V4 pool's swap math follows its invariant module, not its contract + // version, so "V4" alone does not mean constant-sum. Nor does an absent + // `curve`: that means whoever fetched the pool did not ask for it, which is + // not evidence of anything. Pool discovery asks; Sundae's own query provider + // does not. + if (pool.curve !== EPoolCurve.ConstantSum) { + return `Sundae V4 pool ${pool.ident} is not known to be ${EPoolCurve.ConstantSum} ` + `(curve: ${pool.curve ?? "unknown"}). Resolve pools through pool ` + `discovery, which supplies the curve.`; + } + // Same story for `prices`: absent means unasked, not 1:1. Unequal weights need + // the two-price form of the constant-sum formula and a reserve orientation + // this quote does not model; equal weights of any magnitude are handled, and + // carried into the arithmetic rather than divided out. + if (pool.prices === undefined) { + return `Sundae V4 pool ${pool.ident} declares no price weights. Resolve pools ` + `through pool discovery, which supplies them.`; + } + const [priceIn, priceOut] = pool.prices; + if (priceIn !== priceOut) { + return `Sundae V4 pool ${pool.ident} weights its assets ` + `${priceIn}:${priceOut}; only equal weights are priced here`; + } + if (priceIn <= 0n) { + return `Sundae V4 pool ${pool.ident} declares a non-positive price weight`; + } + // Decimals stand in for the price weights we usually cannot see: a 1:1 + // constant-sum pair settles raw amounts one-for-one only at equal scale. + if (pool.assetA.decimals !== pool.assetB.decimals) { + return `Sundae V4 pool ${pool.ident} pairs assets of differing decimals ` + `(${pool.assetA.decimals} and ${pool.assetB.decimals}); the 1:1 ` + `constant-sum assumption does not hold`; + } + return undefined; +} +function constantSumPriceWeight(pool) { + const refusal = constantSumRefusal(pool); + if (refusal) { + throw new Error(refusal); + } + return pool.prices[0]; +} + +/** + * Stricter than the quote, deliberately: a swap form trades both ways against + * the one pool it selected, so both reserves must be usable, where a single + * quote only checks the side it pays out. + */ +function isSelectableV4Pool(pool) { + return constantSumRefusal(pool) === undefined && feeRefusal(pool.currentFee) === undefined && pool.liquidity.aReserve > 0n && pool.liquidity.bReserve > 0n; +} + +/** + * Picks the V4 pool whose fee should quote a swap, ignoring any non-V4 pool in + * `pools` and any V4 pool {@link quoteSwap} would refuse. Undefined when none + * qualifies, which means the caller should fall back to another version. + * + * A V4 order names no pool, so this routes nothing — it only decides whose fee + * sets `min_received`. Cheapest is both the best rate and the safer pick: the + * floor is the owner's only guarantee, and a pool overstating its fee would drag + * it down into territory a scooper can fill cheaply and pocket the difference. + * A hostile pool can therefore only win by genuinely being the cheapest. + * + * Selection lives here rather than in the caller so that the eligibility rules + * have one home. `SundaeUtils.getBestPoolBySwapOutcome` is the equivalent for + * the other versions and cannot be used: it calls `getSwapOutput`, which throws + * on a V4 pool. + */ +export function selectV4QuotePool(pools) { + return pools.filter(pool => pool.version === EContractVersion.V4 && isSelectableV4Pool(pool)).reduce((best, pool) => best === undefined || pool.currentFee < best.currentFee ? pool : best, undefined); +} +function quoteConstantSumSwap(pool, suppliedAsset, receivedAsset, outputReserve) { + const priceIn = constantSumPriceWeight(pool); + if (outputReserve <= 0n) { + throw new Error(`Sundae V4 pool ${pool.ident} holds no ${receivedAsset.assetId} to swap into`); + } + const output = constantSumSwapOutput(suppliedAsset.amount, pool.currentFee, priceIn); + return { + estimatedReceived: new AssetAmount(output, receivedAsset), + minReceived: new AssetAmount(output, receivedAsset), + priceImpact: 0 + }; +} + +/** + * Quotes a market swap for any swappable pool version. Callers do not branch on + * `pool.version`; this does. + * + * V3 / Stableswaps use Sundae's own pool math with the caller's slippage applied + * at bigint precision. V4 is constant-sum — see {@link quoteConstantSumSwap} for + * why its quote is exact, why `priceImpact` is `0`, and why `slippage` is + * ignored there. + */ +export function quoteSwap({ + pool, + suppliedAsset, + slippage +}) { + assertSwappableSundaeSwapPool(pool); + assertValidSlippage(slippage); + const canonicalSuppliedAsset = canonicalizePoolAsset(pool, suppliedAsset); + const receivesAssetA = SundaeUtils.isAssetIdsEqual(pool.assetB.assetId, canonicalSuppliedAsset.metadata.assetId); + const receivedAsset = receivesAssetA ? pool.assetA : pool.assetB; + if (pool.version === EContractVersion.V4) { + return quoteConstantSumSwap(pool, canonicalSuppliedAsset, receivedAsset, receivesAssetA ? pool.liquidity.aReserve : pool.liquidity.bReserve); + } + const outcome = SundaeUtils.getSwapOutput(pool, canonicalSuppliedAsset); + return { + estimatedReceived: new AssetAmount(outcome.output, receivedAsset), + minReceived: minReceivableFromSlippage(outcome.output, receivedAsset, slippage), + priceImpact: outcome.priceImpact.toNumber() + }; +} + +/** + * The smallest constant-sum supply that still yields `output`. + * + * Mirrors `ConstantSumPool.getSwapInput`. Not a plain gross-up: the forward + * settlement is `ceil(input·price·(feeDen−feeNum)/feeDen)`, and that clears + * `output·price` exactly when the numerator reaches `feeDen·(target−1)+1`, so + * the `−1n` is what keeps the answer minimal rather than a unit high. + */ +function constantSumSwapInput(output, currentFee, priceWeight) { + // Reasserted here even though `quoteSwapInput` checks the amount: this is + // where a fee of 1 would divide by zero, and the raw error would name the + // division rather than the fee that caused it. + assertQuotableConstantSum(output, currentFee); + const { + numerator: feeNum, + denominator: feeDen + } = decimalFraction(currentFee); + const targetValue = output * priceWeight; + const numerator = feeDen * (targetValue - 1n) + 1n; + const denominator = (feeDen - feeNum) * priceWeight; + return (numerator + denominator - 1n) / denominator; +} + +/** + * Quotes the supply needed to receive `desiredOutput`, for any swappable pool + * version. The inverse of {@link quoteSwap}, and the direction a swap form needs + * when the user edits the receive field rather than the pay field. + */ +export function quoteSwapInput({ + pool, + desiredOutput +}) { + assertSwappableSundaeSwapPool(pool); + const canonicalDesiredOutput = canonicalizePoolAsset(pool, desiredOutput); + const suppliedAsset = oppositePoolAsset(pool, canonicalDesiredOutput); + if (pool.version === EContractVersion.V4) { + if (canonicalDesiredOutput.amount <= 0n) { + throw new Error("Sundae V4 swap requires a positive desired output"); + } + return { + requiredInput: new AssetAmount(constantSumSwapInput(canonicalDesiredOutput.amount, pool.currentFee, constantSumPriceWeight(pool)), suppliedAsset) + }; + } + return { + requiredInput: new AssetAmount(SundaeUtils.getSwapInput(pool, canonicalDesiredOutput).input, suppliedAsset) + }; +} + +/** + * Builds a standalone Sundae swap order against a specific pool. + * + * V4 is quotable but not buildable here: its order carries no pool reference at + * all, so it cannot share this pool-taking argument shape. Use + * {@link buildSwapIntentTx}. + */ +export async function buildSwapOrderTx(blaze, params) { + if (params.pool.version === EContractVersion.V4) { + throw new Error("Sundae V4 swaps are placed as pool-less intents; use buildSwapIntentTx"); + } + assertSupportedSundaeSwapPool(params.pool); + if (params.swapType.type === ESwapType.MARKET) { + assertValidSlippage(params.swapType.slippage); + } + const suppliedAsset = canonicalizePoolAsset(params.pool, params.suppliedAsset); + const swapType = canonicalizeSwapType(params.pool, suppliedAsset, params.swapType); + const builderSwapType = swapType.type === ESwapType.MARKET ? { + type: ESwapType.LIMIT, + minReceivable: minReceivableFromSlippage(SundaeUtils.getSwapOutput(params.pool, suppliedAsset).output, oppositePoolAsset(params.pool, suppliedAsset), swapType.slippage) + } : swapType; + const canonicalParams = { + ...params, + suppliedAsset, + // Convert MARKET inputs to the equivalent LIMIT input ourselves so the + // Sundae builder cannot repeat its bigint-unsafe slippage calculation. + swapType: builderSwapType + }; + const builder = SundaeSDK.new({ + blazeInstance: blaze + }).builder(params.pool.version); + return builder.swap(canonicalParams); +} + +/** + * Places a Sundae V4 swap. + * + * A V4 order is an intent: an offer and a floor, naming no pool. The scooper + * decides how to fill it — one pool, a split across the pair's pools, or a + * multi-hop chain — and `minReceived` is what bounds the result. + * + * Goes through `swapIntent` rather than `swap`: `TxBuilderV4.swap` throws by + * design, because a swap order carries the route constraint, which is outside + * the launch's audited surface. + */ +export async function buildSwapIntentTx(blaze, params) { + if (!params.ownerAddress) { + throw new Error("Sundae V4 swap requires ownerAddress so the order remains cancellable"); + } + if (params.offered.amount <= 0n) { + throw new Error("Sundae V4 swap requires a positive offered amount"); + } + if (params.minReceived.amount <= 0n) { + throw new Error("Sundae V4 swap requires a positive minReceived amount"); + } + if (SundaeUtils.isAssetIdsEqual(params.offered.metadata.assetId, params.minReceived.metadata.assetId)) { + throw new Error("Sundae V4 swap requires the offered and received assets to differ"); + } + const builder = SundaeSDK.new({ + blazeInstance: blaze + }).builder(EContractVersion.V4); + + // Each optional is forwarded only when supplied, so Sundae's own defaults + // apply otherwise. + return builder.swapIntent({ + ownerAddress: params.ownerAddress, + offered: params.offered, + minReceived: params.minReceived, + ...(params.destination === undefined ? {} : { + destination: params.destination + }), + ...(params.budget === undefined ? {} : { + budget: params.budget + }), + ...(params.maxPerExecution === undefined ? {} : { + maxPerExecution: params.maxPerExecution + }), + ...(params.configToken === undefined ? {} : { + configToken: params.configToken + }) + }); +} + +/** + * Builds a Sundae V3 or Stableswaps order whose proceeds continue into a + * version-aware RealFi stake order. The caller's original Sundae destination + * becomes the RealFi destination, so both sUSDr and any USDr above Sundae's + * guaranteed minimum continue to the intended recipient. + */ +export async function buildSwapToStakeOrderTx(blaze, { + sdk, + swap, + stake +}) { + assertSupportedSundaeSwapPool(swap.pool); + if (!swap.ownerAddress) { + throw new Error("Sundae swap-to-stake requires ownerAddress so the swap remains cancellable"); + } + + // The Sundae builder validates the continuation address that replaces this + // destination. Validate the caller's original final destination first so a + // cross-network address or a script address without a datum cannot be hidden + // by composition and later receive the sUSDr/excess output incorrectly. + BlazeHelper.validateAddressAndDatumAreValid({ + ...swap.orderAddresses.DestinationAddress, + network: SundaeUtils.getNetworkFromProvider(blaze.provider.networkName) + }); + const suppliedAsset = canonicalizePoolAsset(swap.pool, swap.suppliedAsset); + const swapType = canonicalizeSwapType(swap.pool, suppliedAsset, swap.swapType); + const minReceived = swapType.type === ESwapType.LIMIT ? swapType.minReceivable : quoteSwap({ + pool: swap.pool, + suppliedAsset, + slippage: swapType.slippage + }).minReceived; + const continuation = await sdk.buildStakeContinuation({ + ...stake, + owner: stake?.owner ?? realfiOwnerFromSundaeV3OwnerAddress(Core.Address.fromBech32(swap.ownerAddress).getNetworkId() === Core.NetworkId.Mainnet ? "mainnet" : "preview", swap.ownerAddress), + swap: { + minReceived + }, + destination: realfiDestinationFromSundaeDestination(swap.orderAddresses.DestinationAddress) + }); + return buildSwapOrderTx(blaze, { + ...swap, + orderAddresses: { + DestinationAddress: sundaeV3DestinationAddressFromStepResult(continuation), + ...(swap.orderAddresses.AlternateAddress ? { + AlternateAddress: swap.orderAddresses.AlternateAddress + } : {}) + } + }); +} + +/** Creates a Blaze-scoped partner swap adapter. */ +export function create(blaze) { + return { + quoteSwap, + quoteSwapInput, + buildSwapOrderTx: params => buildSwapOrderTx(blaze, params), + buildSwapIntentTx: params => buildSwapIntentTx(blaze, params), + buildSwapToStakeOrderTx: params => buildSwapToStakeOrderTx(blaze, params) + }; +} +function realfiDestinationFromSundaeDestination({ + address, + datum +}) { + const realfiDatum = (() => { + switch (datum.type) { + case EDatumType.NONE: + return "NoDatum"; + case EDatumType.HASH: + return { + DatumHash: [datum.value] + }; + case EDatumType.INLINE: + return { + InlineDatum: [plutusDataFromCbor(datum.value)] + }; + default: + { + const unreachable = datum; + return unreachable; + } + } + })(); + return addressToRealFiDestination(Core.Address.fromBech32(address), realfiDatum); +} +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sundae/index.js.map b/modules/realfi-partner-sdk/dist/esm/sundae/index.js.map new file mode 100644 index 0000000000..363f045596 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sundae/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":["Core","AssetAmount","BlazeHelper","EContractVersion","EDatumType","EPoolCurve","ESwapType","SundaeSDK","SundaeUtils","addressToRealFiDestination","plutusDataFromCbor","realfiOwnerFromSundaeV3OwnerAddress","sundaeV3DestinationAddressFromStepResult","createPoolDiscovery","createRuntimeCuratedPoolAssetsLoader","assertSupportedSundaeSwapPool","assertSwappableSundaeSwapPool","isSupportedSundaeSwapVersion","isSwappableSundaeSwapVersion","SUPPORTED_SUNDAE_SWAP_VERSIONS","SWAPPABLE_SUNDAE_SWAP_VERSIONS","forNetwork","network","options","partnerConfigUrl","canonicalizePoolAsset","pool","asset","metadata","assetA","assetB","find","poolAsset","isAssetIdsEqual","assetId","Error","amount","oppositePoolAsset","suppliedAsset","canonicalizeSwapType","swapType","type","MARKET","minReceivable","expectedAsset","assertValidSlippage","slippage","Number","isFinite","decimalFraction","value","coefficient","exponentText","toString","toLowerCase","split","exponent","whole","fraction","digits","BigInt","scale","length","numerator","denominator","ceilDiv","minReceivableFromSlippage","output","receivedAsset","remaining","feeRefusal","currentFee","undefined","assertQuotableConstantSum","refusal","constantSumSwapOutput","offered","priceWeight","offeredValue","feeValue","constantSumRefusal","curve","ConstantSum","ident","prices","priceIn","priceOut","decimals","constantSumPriceWeight","isSelectableV4Pool","liquidity","aReserve","bReserve","selectV4QuotePool","pools","filter","version","V4","reduce","best","quoteConstantSumSwap","outputReserve","estimatedReceived","minReceived","priceImpact","quoteSwap","canonicalSuppliedAsset","receivesAssetA","outcome","getSwapOutput","toNumber","constantSumSwapInput","feeNum","feeDen","targetValue","quoteSwapInput","desiredOutput","canonicalDesiredOutput","requiredInput","getSwapInput","input","buildSwapOrderTx","blaze","params","builderSwapType","LIMIT","canonicalParams","builder","new","blazeInstance","swap","buildSwapIntentTx","ownerAddress","swapIntent","destination","budget","maxPerExecution","configToken","buildSwapToStakeOrderTx","sdk","stake","validateAddressAndDatumAreValid","orderAddresses","DestinationAddress","getNetworkFromProvider","provider","networkName","continuation","buildStakeContinuation","owner","Address","fromBech32","getNetworkId","NetworkId","Mainnet","realfiDestinationFromSundaeDestination","AlternateAddress","create","address","datum","realfiDatum","NONE","HASH","DatumHash","INLINE","InlineDatum","unreachable"],"sources":["../../../src/sundae/index.ts"],"sourcesContent":["import {\n Core,\n type Blaze,\n type Provider,\n type TxBuilder as BlazeTxBuilder,\n type Wallet,\n} from \"@blaze-cardano/sdk\";\nimport { AssetAmount, type IAssetAmountMetadata } from \"@sundaeswap/asset\";\nimport {\n BlazeHelper,\n EContractVersion,\n EDatumType,\n EPoolCurve,\n ESwapType,\n SundaeSDK,\n SundaeUtils,\n type IComposedTx,\n type IPoolData,\n type ISwapConfigArgs,\n type TDestinationAddress,\n type TOrderAddressesArgs,\n type TSupportedNetworks,\n type TSwapType,\n} from \"@sundaeswap/core\";\n\n// Keep the partner construction surface self-contained. Consumers can build\n// swap inputs through `SundaeSwap` without importing our implementation\n// dependencies directly.\nexport { AssetAmount, EContractVersion, EDatumType, EPoolCurve, ESwapType };\nexport type {\n IAssetAmountMetadata,\n IPoolData,\n ISwapConfigArgs,\n TDestinationAddress,\n TSwapType,\n};\n\nimport type { IBuildStakeContinuationParams } from \"../sdk/v1/family.js\";\nimport {\n addressToRealFiDestination,\n plutusDataFromCbor,\n realfiOwnerFromSundaeV3OwnerAddress,\n sundaeV3DestinationAddressFromStepResult,\n} from \"../tx-builder/destination.js\";\nimport type { RealFiDestinationDatum } from \"../tx-builder/destination.js\";\nimport type { StakeContinuationBuilder } from \"../tx-builder/registry.js\";\nimport {\n createPoolDiscovery,\n createRuntimeCuratedPoolAssetsLoader,\n type ISundaePoolDiscoveryOptions,\n type ISundaePoolDiscoverySDK,\n} from \"./discovery.js\";\nimport {\n assertSupportedSundaeSwapPool,\n assertSwappableSundaeSwapPool,\n} from \"./support.js\";\n\nexport type {\n ISundaePoolDiscoveryOptions,\n ISundaePoolDiscoveryParams,\n ISundaePoolDiscoverySDK,\n TSundaePoolDiscoveryScope,\n} from \"./discovery.js\";\nexport {\n assertSupportedSundaeSwapPool,\n assertSwappableSundaeSwapPool,\n isSupportedSundaeSwapVersion,\n isSwappableSundaeSwapVersion,\n SUPPORTED_SUNDAE_SWAP_VERSIONS,\n SWAPPABLE_SUNDAE_SWAP_VERSIONS,\n type TSundaeSwapVersion,\n type TSwappableSundaeSwapVersion,\n} from \"./support.js\";\n\nexport interface ISundaeSwapQuoteParams {\n pool: IPoolData;\n suppliedAsset: AssetAmount;\n /** Decimal fraction: `0.01` is 1%. No application default is applied. */\n slippage: number;\n}\n\nexport interface ISundaeSwapQuote {\n estimatedReceived: AssetAmount;\n minReceived: AssetAmount;\n /** Decimal fraction: `0.01` is 1%. */\n priceImpact: number;\n}\n\nexport interface ISundaeSwapInputQuoteParams {\n pool: IPoolData;\n /** The amount the owner wants to receive. */\n desiredOutput: AssetAmount;\n}\n\nexport interface ISundaeSwapInputQuote {\n /** The smallest supply that still yields `desiredOutput`. */\n requiredInput: AssetAmount;\n}\n\nexport type TSundaeSwapOrder = IComposedTx;\n\nexport type TSundaeOwnedSwapConfigArgs = Omit<\n ISwapConfigArgs,\n \"ownerAddress\" | \"orderAddresses\"\n> & {\n ownerAddress: string;\n /** Final recipient and optional cancellation address; not a Sundae order route. */\n orderAddresses: Omit;\n};\n\nexport interface ISundaeSwapToStakeParams {\n sdk: StakeContinuationBuilder;\n swap: TSundaeOwnedSwapConfigArgs;\n stake?: Omit;\n}\n\n/**\n * A V4 swap intent: an offer and a floor, naming no pool.\n *\n * `referralFee` is deliberately not surfaced — no RealFi path takes one.\n */\nexport interface ISundaeSwapIntentParams {\n /** Bech32 owner: the cancel authority and the default payout destination. */\n ownerAddress: string;\n /** What the owner pays into the swap. */\n offered: AssetAmount;\n /**\n * The floor the fill must clear, and the owner's only guarantee: the surplus\n * above it is unbound on-chain, so the scooper keeps whatever the fill clears\n * it by. Take it from {@link quoteSwap}; never slacken it to help an order\n * fill.\n */\n minReceived: AssetAmount;\n /** Final recipient. Defaults to a fixed destination at `ownerAddress`. */\n destination?: TDestinationAddress | \"Self\";\n /** Lifetime service-fee allocation, in lovelace. */\n budget?: bigint;\n /**\n * Per-scoop fee cap, in lovelace — also the scooper's routing fan-out budget\n * (`maxPerExecution / costPerPool` pools). Too small and the order cannot be\n * routed at all; a fill spanning more of the pair's pools needs more of it.\n */\n maxPerExecution?: bigint;\n /**\n * The OrderConfig settings entry this order fulfills. Resolved from the\n * protocol query when omitted — but that query returns nothing on a\n * deployment whose API does not serve settings yet, so it stays passable.\n */\n configToken?: string;\n}\n\nexport interface ISundaeSwapSDK {\n quoteSwap(params: ISundaeSwapQuoteParams): ISundaeSwapQuote;\n quoteSwapInput(params: ISundaeSwapInputQuoteParams): ISundaeSwapInputQuote;\n buildSwapOrderTx(params: ISwapConfigArgs): Promise;\n /** V4 only: a pool-less intent. See {@link buildSwapIntentTx}. */\n buildSwapIntentTx(params: ISundaeSwapIntentParams): Promise;\n buildSwapToStakeOrderTx(\n params: ISundaeSwapToStakeParams,\n ): Promise;\n}\n\n/** Creates a network-scoped, Blaze-free Sundae pool discovery adapter. */\nexport function forNetwork(\n network: TSupportedNetworks,\n options: ISundaePoolDiscoveryOptions = {},\n): ISundaePoolDiscoverySDK {\n return createPoolDiscovery(\n network,\n options,\n createRuntimeCuratedPoolAssetsLoader(options.partnerConfigUrl),\n );\n}\n\nfunction canonicalizePoolAsset(\n pool: IPoolData,\n asset: AssetAmount,\n): AssetAmount {\n const metadata = [pool.assetA, pool.assetB].find((poolAsset) =>\n SundaeUtils.isAssetIdsEqual(poolAsset.assetId, asset.metadata.assetId),\n );\n\n if (!metadata) {\n throw new Error(\n `Asset is not part of the Sundae swap pool: ${asset.metadata.assetId}`,\n );\n }\n\n return new AssetAmount(asset.amount, metadata);\n}\n\nfunction oppositePoolAsset(\n pool: IPoolData,\n suppliedAsset: AssetAmount,\n): IAssetAmountMetadata {\n return suppliedAsset.metadata.assetId === pool.assetA.assetId\n ? pool.assetB\n : pool.assetA;\n}\n\nfunction canonicalizeSwapType(\n pool: IPoolData,\n suppliedAsset: AssetAmount,\n swapType: TSwapType,\n): TSwapType {\n if (swapType.type === ESwapType.MARKET) {\n return swapType;\n }\n\n const minReceivable = canonicalizePoolAsset(pool, swapType.minReceivable);\n const expectedAsset = oppositePoolAsset(pool, suppliedAsset);\n if (minReceivable.metadata.assetId !== expectedAsset.assetId) {\n throw new Error(\n `Sundae LIMIT minimum must use the pool asset opposite the supplied asset: ${expectedAsset.assetId}`,\n );\n }\n\n return { ...swapType, minReceivable };\n}\n\nfunction assertValidSlippage(slippage: number): void {\n if (!Number.isFinite(slippage) || slippage < 0 || slippage > 1) {\n throw new Error(\n \"Sundae swap slippage must be a finite number between 0 and 1 inclusive\",\n );\n }\n}\n\nfunction decimalFraction(value: number): {\n numerator: bigint;\n denominator: bigint;\n} {\n const [coefficient = \"0\", exponentText] = value\n .toString()\n .toLowerCase()\n .split(\"e\");\n const exponent = Number(exponentText ?? 0);\n const [whole, fraction = \"\"] = coefficient.split(\".\");\n const digits = BigInt(`${whole}${fraction}`);\n const scale = fraction.length - exponent;\n\n return scale > 0\n ? { numerator: digits, denominator: 10n ** BigInt(scale) }\n : { numerator: digits * 10n ** BigInt(-scale), denominator: 1n };\n}\n\nfunction ceilDiv(numerator: bigint, denominator: bigint): bigint {\n return numerator === 0n ? 0n : (numerator + denominator - 1n) / denominator;\n}\n\n/**\n * Applies the caller's decimal slippage to an integer quote without coercing\n * the quote to a JavaScript number. Sundae's helper performs that coercion,\n * which can weaken large minimums after `Number.MAX_SAFE_INTEGER`.\n */\nfunction minReceivableFromSlippage(\n output: bigint,\n receivedAsset: IAssetAmountMetadata,\n slippage: number,\n): AssetAmount {\n const { numerator, denominator } = decimalFraction(slippage);\n const remaining = denominator - numerator;\n const amount = ceilDiv(output * remaining, denominator);\n\n return new AssetAmount(amount, receivedAsset);\n}\n\n/**\n * Why this fee cannot quote a constant-sum swap, or undefined if it can.\n *\n * At a fee of 1 the forward quote settles to nothing and the inverse divides by\n * zero; above 1 the forward quote goes negative. The bound matches\n * `ConstantSumPool.getSwapInput`'s own `[0, 1)` — the forward direction\n * tolerates exactly 1, but a pool taking the whole trade is not one we should be\n * quoting either way.\n */\nfunction feeRefusal(currentFee: number): string | undefined {\n if (!Number.isFinite(currentFee) || currentFee < 0 || currentFee >= 1) {\n return `Sundae constant-sum swap requires a fee in [0, 1); got ${currentFee}`;\n }\n return undefined;\n}\n\n/**\n * The positive-amount rule matches what V3 and Stableswaps already enforce\n * through Sundae's \"Input and reserves must be positive\"; V4 was the only\n * version that quietly returned zero instead.\n */\nfunction assertQuotableConstantSum(amount: bigint, currentFee: number): void {\n if (amount <= 0n) {\n throw new Error(\"Sundae constant-sum swap requires a positive amount\");\n }\n const refusal = feeRefusal(currentFee);\n if (refusal) {\n throw new Error(refusal);\n }\n}\n\n/**\n * Settles a V4 (constant-sum) swap the way Sundae's own engine does:\n *\n * output = offered − floor(offered × fee)\n *\n * That is `ConstantSumPool.getSwapOutput` from `@sundaeswap/math` specialised to\n * equal per-asset prices, not an approximation of it. We cannot call\n * `SundaeUtils.getSwapOutput` for V4 because it dispatches on `pool.curve`, and\n * the Sundae API populates neither `curve` nor `prices` — it would fall through\n * to `Unsupported v4 pool curve: undefined`.\n *\n * The rate comes from `currentFee`'s exact decimal expansion rather than a float\n * product: past `Number.MAX_SAFE_INTEGER` a float drops the low digits and\n * shifts the result, the same hazard {@link minReceivableFromSlippage} avoids.\n *\n * `priceWeight` is the pool's per-asset constant-sum price, which both assets of\n * a supported pool share. It cannot be divided out: the fee is floored at the\n * *scaled* value and the quotient is floored again, so the two roundings only\n * collapse into one at a weight of `1`. At a weight of `2`, offering `1999` at a\n * fee of `0.001` settles to `1997`, where dividing out would say `1998` — and\n * since this figure also becomes `minReceived`, the higher answer would leave a\n * floor the fill can never clear.\n *\n * Deliberately does NOT cap the output at the pool's reserve. `ConstantSumPool`\n * caps, because it prices one specific pool; a V4 order names no pool, so\n * capping here would silently lower `minReceived` — the owner's only guarantee —\n * whenever a large order is quoted against a shallow pool.\n */\nfunction constantSumSwapOutput(\n offered: bigint,\n currentFee: number,\n priceWeight: bigint,\n): bigint {\n assertQuotableConstantSum(offered, currentFee);\n\n const { numerator, denominator } = decimalFraction(currentFee);\n const offeredValue = offered * priceWeight;\n const feeValue = (offeredValue * numerator) / denominator;\n\n return (offeredValue - feeValue) / priceWeight;\n}\n\n/**\n * Quotes a V4 swap. `slippage` is validated by {@link quoteSwap} and then\n * ignored: a constant-sum pool has no price movement to buffer against, and —\n * decisively — the surplus above `min_received` is unbound on-chain, so slack in\n * the floor is not a safety margin, it is directly skimmable by the scooper.\n * `estimatedReceived` and `minReceived` are therefore the same figure.\n *\n * Assumes the pool weights its two assets equally. That precondition is\n * unverifiable from the API, which never serves `prices`; the matching-decimals\n * half of it is checked here, and the pools RealFi trades satisfy both.\n */\n/**\n * Why this pool cannot be priced as an equal-weight constant-sum pool, or\n * undefined if it can. {@link constantSumPriceWeight} throws it and\n * {@link selectV4QuotePool} filters on it, so the two cannot drift apart.\n */\nfunction constantSumRefusal(pool: IPoolData): string | undefined {\n // A V4 pool's swap math follows its invariant module, not its contract\n // version, so \"V4\" alone does not mean constant-sum. Nor does an absent\n // `curve`: that means whoever fetched the pool did not ask for it, which is\n // not evidence of anything. Pool discovery asks; Sundae's own query provider\n // does not.\n if (pool.curve !== EPoolCurve.ConstantSum) {\n return (\n `Sundae V4 pool ${pool.ident} is not known to be ${EPoolCurve.ConstantSum} ` +\n `(curve: ${pool.curve ?? \"unknown\"}). Resolve pools through pool ` +\n `discovery, which supplies the curve.`\n );\n }\n // Same story for `prices`: absent means unasked, not 1:1. Unequal weights need\n // the two-price form of the constant-sum formula and a reserve orientation\n // this quote does not model; equal weights of any magnitude are handled, and\n // carried into the arithmetic rather than divided out.\n if (pool.prices === undefined) {\n return (\n `Sundae V4 pool ${pool.ident} declares no price weights. Resolve pools ` +\n `through pool discovery, which supplies them.`\n );\n }\n const [priceIn, priceOut] = pool.prices;\n if (priceIn !== priceOut) {\n return (\n `Sundae V4 pool ${pool.ident} weights its assets ` +\n `${priceIn}:${priceOut}; only equal weights are priced here`\n );\n }\n if (priceIn <= 0n) {\n return `Sundae V4 pool ${pool.ident} declares a non-positive price weight`;\n }\n // Decimals stand in for the price weights we usually cannot see: a 1:1\n // constant-sum pair settles raw amounts one-for-one only at equal scale.\n if (pool.assetA.decimals !== pool.assetB.decimals) {\n return (\n `Sundae V4 pool ${pool.ident} pairs assets of differing decimals ` +\n `(${pool.assetA.decimals} and ${pool.assetB.decimals}); the 1:1 ` +\n `constant-sum assumption does not hold`\n );\n }\n return undefined;\n}\n\nfunction constantSumPriceWeight(pool: IPoolData): bigint {\n const refusal = constantSumRefusal(pool);\n if (refusal) {\n throw new Error(refusal);\n }\n return pool.prices![0];\n}\n\n/**\n * Stricter than the quote, deliberately: a swap form trades both ways against\n * the one pool it selected, so both reserves must be usable, where a single\n * quote only checks the side it pays out.\n */\nfunction isSelectableV4Pool(pool: IPoolData): boolean {\n return (\n constantSumRefusal(pool) === undefined &&\n feeRefusal(pool.currentFee) === undefined &&\n pool.liquidity.aReserve > 0n &&\n pool.liquidity.bReserve > 0n\n );\n}\n\n/**\n * Picks the V4 pool whose fee should quote a swap, ignoring any non-V4 pool in\n * `pools` and any V4 pool {@link quoteSwap} would refuse. Undefined when none\n * qualifies, which means the caller should fall back to another version.\n *\n * A V4 order names no pool, so this routes nothing — it only decides whose fee\n * sets `min_received`. Cheapest is both the best rate and the safer pick: the\n * floor is the owner's only guarantee, and a pool overstating its fee would drag\n * it down into territory a scooper can fill cheaply and pocket the difference.\n * A hostile pool can therefore only win by genuinely being the cheapest.\n *\n * Selection lives here rather than in the caller so that the eligibility rules\n * have one home. `SundaeUtils.getBestPoolBySwapOutcome` is the equivalent for\n * the other versions and cannot be used: it calls `getSwapOutput`, which throws\n * on a V4 pool.\n */\nexport function selectV4QuotePool(pools: IPoolData[]): IPoolData | undefined {\n return pools\n .filter(\n (pool) =>\n pool.version === EContractVersion.V4 && isSelectableV4Pool(pool),\n )\n .reduce<\n IPoolData | undefined\n >((best, pool) => (best === undefined || pool.currentFee < best.currentFee ? pool : best), undefined);\n}\n\nfunction quoteConstantSumSwap(\n pool: IPoolData,\n suppliedAsset: AssetAmount,\n receivedAsset: IAssetAmountMetadata,\n outputReserve: bigint,\n): ISundaeSwapQuote {\n const priceIn = constantSumPriceWeight(pool);\n if (outputReserve <= 0n) {\n throw new Error(\n `Sundae V4 pool ${pool.ident} holds no ${receivedAsset.assetId} to swap into`,\n );\n }\n\n const output = constantSumSwapOutput(\n suppliedAsset.amount,\n pool.currentFee,\n priceIn,\n );\n\n return {\n estimatedReceived: new AssetAmount(output, receivedAsset),\n minReceived: new AssetAmount(output, receivedAsset),\n priceImpact: 0,\n };\n}\n\n/**\n * Quotes a market swap for any swappable pool version. Callers do not branch on\n * `pool.version`; this does.\n *\n * V3 / Stableswaps use Sundae's own pool math with the caller's slippage applied\n * at bigint precision. V4 is constant-sum — see {@link quoteConstantSumSwap} for\n * why its quote is exact, why `priceImpact` is `0`, and why `slippage` is\n * ignored there.\n */\nexport function quoteSwap({\n pool,\n suppliedAsset,\n slippage,\n}: ISundaeSwapQuoteParams): ISundaeSwapQuote {\n assertSwappableSundaeSwapPool(pool);\n assertValidSlippage(slippage);\n\n const canonicalSuppliedAsset = canonicalizePoolAsset(pool, suppliedAsset);\n const receivesAssetA = SundaeUtils.isAssetIdsEqual(\n pool.assetB.assetId,\n canonicalSuppliedAsset.metadata.assetId,\n );\n const receivedAsset = receivesAssetA ? pool.assetA : pool.assetB;\n\n if (pool.version === EContractVersion.V4) {\n return quoteConstantSumSwap(\n pool,\n canonicalSuppliedAsset,\n receivedAsset,\n receivesAssetA ? pool.liquidity.aReserve : pool.liquidity.bReserve,\n );\n }\n\n const outcome = SundaeUtils.getSwapOutput(pool, canonicalSuppliedAsset);\n\n return {\n estimatedReceived: new AssetAmount(outcome.output, receivedAsset),\n minReceived: minReceivableFromSlippage(\n outcome.output,\n receivedAsset,\n slippage,\n ),\n priceImpact: outcome.priceImpact.toNumber(),\n };\n}\n\n/**\n * The smallest constant-sum supply that still yields `output`.\n *\n * Mirrors `ConstantSumPool.getSwapInput`. Not a plain gross-up: the forward\n * settlement is `ceil(input·price·(feeDen−feeNum)/feeDen)`, and that clears\n * `output·price` exactly when the numerator reaches `feeDen·(target−1)+1`, so\n * the `−1n` is what keeps the answer minimal rather than a unit high.\n */\nfunction constantSumSwapInput(\n output: bigint,\n currentFee: number,\n priceWeight: bigint,\n): bigint {\n // Reasserted here even though `quoteSwapInput` checks the amount: this is\n // where a fee of 1 would divide by zero, and the raw error would name the\n // division rather than the fee that caused it.\n assertQuotableConstantSum(output, currentFee);\n\n const { numerator: feeNum, denominator: feeDen } =\n decimalFraction(currentFee);\n const targetValue = output * priceWeight;\n const numerator = feeDen * (targetValue - 1n) + 1n;\n const denominator = (feeDen - feeNum) * priceWeight;\n\n return (numerator + denominator - 1n) / denominator;\n}\n\n/**\n * Quotes the supply needed to receive `desiredOutput`, for any swappable pool\n * version. The inverse of {@link quoteSwap}, and the direction a swap form needs\n * when the user edits the receive field rather than the pay field.\n */\nexport function quoteSwapInput({\n pool,\n desiredOutput,\n}: ISundaeSwapInputQuoteParams): ISundaeSwapInputQuote {\n assertSwappableSundaeSwapPool(pool);\n\n const canonicalDesiredOutput = canonicalizePoolAsset(pool, desiredOutput);\n const suppliedAsset = oppositePoolAsset(pool, canonicalDesiredOutput);\n\n if (pool.version === EContractVersion.V4) {\n if (canonicalDesiredOutput.amount <= 0n) {\n throw new Error(\"Sundae V4 swap requires a positive desired output\");\n }\n\n return {\n requiredInput: new AssetAmount(\n constantSumSwapInput(\n canonicalDesiredOutput.amount,\n pool.currentFee,\n constantSumPriceWeight(pool),\n ),\n suppliedAsset,\n ),\n };\n }\n\n return {\n requiredInput: new AssetAmount(\n SundaeUtils.getSwapInput(pool, canonicalDesiredOutput).input,\n suppliedAsset,\n ),\n };\n}\n\n/**\n * Builds a standalone Sundae swap order against a specific pool.\n *\n * V4 is quotable but not buildable here: its order carries no pool reference at\n * all, so it cannot share this pool-taking argument shape. Use\n * {@link buildSwapIntentTx}.\n */\nexport async function buildSwapOrderTx(\n blaze: Blaze,\n params: ISwapConfigArgs,\n): Promise {\n if (params.pool.version === EContractVersion.V4) {\n throw new Error(\n \"Sundae V4 swaps are placed as pool-less intents; use buildSwapIntentTx\",\n );\n }\n assertSupportedSundaeSwapPool(params.pool);\n if (params.swapType.type === ESwapType.MARKET) {\n assertValidSlippage(params.swapType.slippage);\n }\n\n const suppliedAsset = canonicalizePoolAsset(\n params.pool,\n params.suppliedAsset,\n );\n const swapType = canonicalizeSwapType(\n params.pool,\n suppliedAsset,\n params.swapType,\n );\n const builderSwapType: TSwapType =\n swapType.type === ESwapType.MARKET\n ? {\n type: ESwapType.LIMIT,\n minReceivable: minReceivableFromSlippage(\n SundaeUtils.getSwapOutput(params.pool, suppliedAsset).output,\n oppositePoolAsset(params.pool, suppliedAsset),\n swapType.slippage,\n ),\n }\n : swapType;\n const canonicalParams: ISwapConfigArgs = {\n ...params,\n suppliedAsset,\n // Convert MARKET inputs to the equivalent LIMIT input ourselves so the\n // Sundae builder cannot repeat its bigint-unsafe slippage calculation.\n swapType: builderSwapType,\n };\n\n const builder = SundaeSDK.new({ blazeInstance: blaze }).builder(\n params.pool.version,\n );\n return builder.swap(canonicalParams);\n}\n\n/**\n * Places a Sundae V4 swap.\n *\n * A V4 order is an intent: an offer and a floor, naming no pool. The scooper\n * decides how to fill it — one pool, a split across the pair's pools, or a\n * multi-hop chain — and `minReceived` is what bounds the result.\n *\n * Goes through `swapIntent` rather than `swap`: `TxBuilderV4.swap` throws by\n * design, because a swap order carries the route constraint, which is outside\n * the launch's audited surface.\n */\nexport async function buildSwapIntentTx(\n blaze: Blaze,\n params: ISundaeSwapIntentParams,\n): Promise {\n if (!params.ownerAddress) {\n throw new Error(\n \"Sundae V4 swap requires ownerAddress so the order remains cancellable\",\n );\n }\n if (params.offered.amount <= 0n) {\n throw new Error(\"Sundae V4 swap requires a positive offered amount\");\n }\n if (params.minReceived.amount <= 0n) {\n throw new Error(\"Sundae V4 swap requires a positive minReceived amount\");\n }\n if (\n SundaeUtils.isAssetIdsEqual(\n params.offered.metadata.assetId,\n params.minReceived.metadata.assetId,\n )\n ) {\n throw new Error(\n \"Sundae V4 swap requires the offered and received assets to differ\",\n );\n }\n\n const builder = SundaeSDK.new({ blazeInstance: blaze }).builder(\n EContractVersion.V4,\n );\n\n // Each optional is forwarded only when supplied, so Sundae's own defaults\n // apply otherwise.\n return builder.swapIntent({\n ownerAddress: params.ownerAddress,\n offered: params.offered,\n minReceived: params.minReceived,\n ...(params.destination === undefined\n ? {}\n : { destination: params.destination }),\n ...(params.budget === undefined ? {} : { budget: params.budget }),\n ...(params.maxPerExecution === undefined\n ? {}\n : { maxPerExecution: params.maxPerExecution }),\n ...(params.configToken === undefined\n ? {}\n : { configToken: params.configToken }),\n });\n}\n\n/**\n * Builds a Sundae V3 or Stableswaps order whose proceeds continue into a\n * version-aware RealFi stake order. The caller's original Sundae destination\n * becomes the RealFi destination, so both sUSDr and any USDr above Sundae's\n * guaranteed minimum continue to the intended recipient.\n */\nexport async function buildSwapToStakeOrderTx(\n blaze: Blaze,\n { sdk, swap, stake }: ISundaeSwapToStakeParams,\n): Promise {\n assertSupportedSundaeSwapPool(swap.pool);\n if (!swap.ownerAddress) {\n throw new Error(\n \"Sundae swap-to-stake requires ownerAddress so the swap remains cancellable\",\n );\n }\n\n // The Sundae builder validates the continuation address that replaces this\n // destination. Validate the caller's original final destination first so a\n // cross-network address or a script address without a datum cannot be hidden\n // by composition and later receive the sUSDr/excess output incorrectly.\n BlazeHelper.validateAddressAndDatumAreValid({\n ...swap.orderAddresses.DestinationAddress,\n network: SundaeUtils.getNetworkFromProvider(blaze.provider.networkName),\n });\n\n const suppliedAsset = canonicalizePoolAsset(swap.pool, swap.suppliedAsset);\n const swapType = canonicalizeSwapType(\n swap.pool,\n suppliedAsset,\n swap.swapType,\n );\n const minReceived =\n swapType.type === ESwapType.LIMIT\n ? swapType.minReceivable\n : quoteSwap({\n pool: swap.pool,\n suppliedAsset,\n slippage: swapType.slippage,\n }).minReceived;\n\n const continuation = await sdk.buildStakeContinuation({\n ...stake,\n owner:\n stake?.owner ??\n realfiOwnerFromSundaeV3OwnerAddress(\n Core.Address.fromBech32(swap.ownerAddress).getNetworkId() ===\n Core.NetworkId.Mainnet\n ? \"mainnet\"\n : \"preview\",\n swap.ownerAddress,\n ),\n swap: { minReceived },\n destination: realfiDestinationFromSundaeDestination(\n swap.orderAddresses.DestinationAddress,\n ),\n });\n\n return buildSwapOrderTx(blaze, {\n ...swap,\n orderAddresses: {\n DestinationAddress:\n sundaeV3DestinationAddressFromStepResult(continuation),\n ...(swap.orderAddresses.AlternateAddress\n ? { AlternateAddress: swap.orderAddresses.AlternateAddress }\n : {}),\n },\n });\n}\n\n/** Creates a Blaze-scoped partner swap adapter. */\nexport function create(blaze: Blaze): ISundaeSwapSDK {\n return {\n quoteSwap,\n quoteSwapInput,\n buildSwapOrderTx: (params) => buildSwapOrderTx(blaze, params),\n buildSwapIntentTx: (params) => buildSwapIntentTx(blaze, params),\n buildSwapToStakeOrderTx: (params) => buildSwapToStakeOrderTx(blaze, params),\n };\n}\n\nfunction realfiDestinationFromSundaeDestination({\n address,\n datum,\n}: TDestinationAddress) {\n const realfiDatum: RealFiDestinationDatum = (() => {\n switch (datum.type) {\n case EDatumType.NONE:\n return \"NoDatum\";\n case EDatumType.HASH:\n return { DatumHash: [datum.value] };\n case EDatumType.INLINE:\n return { InlineDatum: [plutusDataFromCbor(datum.value)] };\n default: {\n const unreachable: never = datum;\n return unreachable;\n }\n }\n })();\n\n return addressToRealFiDestination(\n Core.Address.fromBech32(address),\n realfiDatum,\n );\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sundae/support.js b/modules/realfi-partner-sdk/dist/esm/sundae/support.js new file mode 100644 index 0000000000..fbdc4f68d2 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sundae/support.js @@ -0,0 +1,80 @@ +import { EContractVersion } from "@sundaeswap/core"; +/** + * What the SDK can do with a pool, by Sundae contract version. + * + * Deliberately a `Record` over every version: a new Sundae version will not + * compile until someone answers both questions for it, rather than silently + * defaulting to unsupported because nobody remembered a second list. + */ +const POOL_SUPPORT = { + [EContractVersion.V1]: { + swap: false, + buildAgainstPool: false + }, + [EContractVersion.V3]: { + swap: true, + buildAgainstPool: true + }, + [EContractVersion.NftCheck]: { + swap: false, + buildAgainstPool: false + }, + [EContractVersion.Condition]: { + swap: false, + buildAgainstPool: false + }, + [EContractVersion.Stableswaps]: { + swap: true, + buildAgainstPool: true + }, + [EContractVersion.V4]: { + swap: true, + buildAgainstPool: false + } +}; +function versionsWhere(capability) { + return Object.keys(POOL_SUPPORT).filter(version => POOL_SUPPORT[version][capability]); +} + +/** + * `pool.version` comes off the Sundae API, so a version absent from the table + * reads as unsupported rather than throwing. Fail closed. + */ +function supports(version, capability) { + return POOL_SUPPORT[version]?.[capability] === true; +} + +/** Versions whose order names the pool. See {@link isSupportedSundaeSwapVersion}. */ +export const SUPPORTED_SUNDAE_SWAP_VERSIONS = versionsWhere("buildAgainstPool"); +/** + * Whether the pool-taking `buildSwapOrderTx` accepts this version. Narrower than + * {@link isSwappableSundaeSwapVersion} — a V4 pool is swappable but its order + * names no pool, so it is not buildable *against a pool*. + */ +export function isSupportedSundaeSwapVersion(version) { + return supports(version, "buildAgainstPool"); +} +export function assertSupportedSundaeSwapPool(pool) { + if (!isSupportedSundaeSwapVersion(pool.version)) { + throw new Error(`Unsupported Sundae swap pool version: ${pool.version}`); + } +} + +/** Versions the SDK can quote and place a swap for. */ +export const SWAPPABLE_SUNDAE_SWAP_VERSIONS = versionsWhere("swap"); +/** Whether the SDK can quote this version and place a swap for it. */ +export function isSwappableSundaeSwapVersion(version) { + return supports(version, "swap"); +} + +/** + * Throws the same message as {@link assertSupportedSundaeSwapPool} on purpose: + * callers and tests treat "Unsupported Sundae swap pool version: X" as the one + * version-rejection string. + */ +export function assertSwappableSundaeSwapPool(pool) { + if (!isSwappableSundaeSwapVersion(pool.version)) { + throw new Error(`Unsupported Sundae swap pool version: ${pool.version}`); + } +} +//# sourceMappingURL=support.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sundae/support.js.map b/modules/realfi-partner-sdk/dist/esm/sundae/support.js.map new file mode 100644 index 0000000000..5c4e38d426 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sundae/support.js.map @@ -0,0 +1 @@ +{"version":3,"file":"support.js","names":["EContractVersion","POOL_SUPPORT","V1","swap","buildAgainstPool","V3","NftCheck","Condition","Stableswaps","V4","versionsWhere","capability","Object","keys","filter","version","supports","SUPPORTED_SUNDAE_SWAP_VERSIONS","isSupportedSundaeSwapVersion","assertSupportedSundaeSwapPool","pool","Error","SWAPPABLE_SUNDAE_SWAP_VERSIONS","isSwappableSundaeSwapVersion","assertSwappableSundaeSwapPool"],"sources":["../../../src/sundae/support.ts"],"sourcesContent":["import { EContractVersion, type IPoolData } from \"@sundaeswap/core\";\n\ninterface IPoolSupport {\n /** We can quote this pool and place a swap for it. */\n swap: boolean;\n /**\n * The order names the pool, so the pool-taking `buildSwapOrderTx` accepts it.\n * A V4 order is an intent that names no pool — the scooper chooses — so a V4\n * pool is swappable without this.\n */\n buildAgainstPool: boolean;\n}\n\n/**\n * What the SDK can do with a pool, by Sundae contract version.\n *\n * Deliberately a `Record` over every version: a new Sundae version will not\n * compile until someone answers both questions for it, rather than silently\n * defaulting to unsupported because nobody remembered a second list.\n */\nconst POOL_SUPPORT = {\n [EContractVersion.V1]: { swap: false, buildAgainstPool: false },\n [EContractVersion.V3]: { swap: true, buildAgainstPool: true },\n [EContractVersion.NftCheck]: { swap: false, buildAgainstPool: false },\n [EContractVersion.Condition]: { swap: false, buildAgainstPool: false },\n [EContractVersion.Stableswaps]: { swap: true, buildAgainstPool: true },\n [EContractVersion.V4]: { swap: true, buildAgainstPool: false },\n} as const satisfies Record;\n\ntype TVersionsWhere = {\n [V in EContractVersion]: (typeof POOL_SUPPORT)[V][K] extends true ? V : never;\n}[EContractVersion];\n\nfunction versionsWhere(\n capability: K,\n): readonly TVersionsWhere[] {\n return (Object.keys(POOL_SUPPORT) as EContractVersion[]).filter(\n (version): version is TVersionsWhere =>\n POOL_SUPPORT[version][capability],\n );\n}\n\n/**\n * `pool.version` comes off the Sundae API, so a version absent from the table\n * reads as unsupported rather than throwing. Fail closed.\n */\nfunction supports(\n version: EContractVersion,\n capability: keyof IPoolSupport,\n): boolean {\n return POOL_SUPPORT[version]?.[capability] === true;\n}\n\n/** Versions whose order names the pool. See {@link isSupportedSundaeSwapVersion}. */\nexport const SUPPORTED_SUNDAE_SWAP_VERSIONS = versionsWhere(\"buildAgainstPool\");\n\nexport type TSundaeSwapVersion = TVersionsWhere<\"buildAgainstPool\">;\n\n/**\n * Whether the pool-taking `buildSwapOrderTx` accepts this version. Narrower than\n * {@link isSwappableSundaeSwapVersion} — a V4 pool is swappable but its order\n * names no pool, so it is not buildable *against a pool*.\n */\nexport function isSupportedSundaeSwapVersion(\n version: EContractVersion,\n): version is TSundaeSwapVersion {\n return supports(version, \"buildAgainstPool\");\n}\n\nexport function assertSupportedSundaeSwapPool(\n pool: IPoolData,\n): asserts pool is IPoolData & { version: TSundaeSwapVersion } {\n if (!isSupportedSundaeSwapVersion(pool.version)) {\n throw new Error(`Unsupported Sundae swap pool version: ${pool.version}`);\n }\n}\n\n/** Versions the SDK can quote and place a swap for. */\nexport const SWAPPABLE_SUNDAE_SWAP_VERSIONS = versionsWhere(\"swap\");\n\nexport type TSwappableSundaeSwapVersion = TVersionsWhere<\"swap\">;\n\n/** Whether the SDK can quote this version and place a swap for it. */\nexport function isSwappableSundaeSwapVersion(\n version: EContractVersion,\n): version is TSwappableSundaeSwapVersion {\n return supports(version, \"swap\");\n}\n\n/**\n * Throws the same message as {@link assertSupportedSundaeSwapPool} on purpose:\n * callers and tests treat \"Unsupported Sundae swap pool version: X\" as the one\n * version-rejection string.\n */\nexport function assertSwappableSundaeSwapPool(\n pool: IPoolData,\n): asserts pool is IPoolData & { version: TSwappableSundaeSwapVersion } {\n if (!isSwappableSundaeSwapVersion(pool.version)) {\n throw new Error(`Unsupported Sundae swap pool version: ${pool.version}`);\n }\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAwB,kBAAkB;AAanE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,YAAY,GAAG;EACnB,CAACD,gBAAgB,CAACE,EAAE,GAAG;IAAEC,IAAI,EAAE,KAAK;IAAEC,gBAAgB,EAAE;EAAM,CAAC;EAC/D,CAACJ,gBAAgB,CAACK,EAAE,GAAG;IAAEF,IAAI,EAAE,IAAI;IAAEC,gBAAgB,EAAE;EAAK,CAAC;EAC7D,CAACJ,gBAAgB,CAACM,QAAQ,GAAG;IAAEH,IAAI,EAAE,KAAK;IAAEC,gBAAgB,EAAE;EAAM,CAAC;EACrE,CAACJ,gBAAgB,CAACO,SAAS,GAAG;IAAEJ,IAAI,EAAE,KAAK;IAAEC,gBAAgB,EAAE;EAAM,CAAC;EACtE,CAACJ,gBAAgB,CAACQ,WAAW,GAAG;IAAEL,IAAI,EAAE,IAAI;IAAEC,gBAAgB,EAAE;EAAK,CAAC;EACtE,CAACJ,gBAAgB,CAACS,EAAE,GAAG;IAAEN,IAAI,EAAE,IAAI;IAAEC,gBAAgB,EAAE;EAAM;AAC/D,CAA2D;AAM3D,SAASM,aAAaA,CACpBC,UAAa,EACiB;EAC9B,OAAQC,MAAM,CAACC,IAAI,CAACZ,YAAY,CAAC,CAAwBa,MAAM,CAC5DC,OAAO,IACNd,YAAY,CAACc,OAAO,CAAC,CAACJ,UAAU,CACpC,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA,SAASK,QAAQA,CACfD,OAAyB,EACzBJ,UAA8B,EACrB;EACT,OAAOV,YAAY,CAACc,OAAO,CAAC,GAAGJ,UAAU,CAAC,KAAK,IAAI;AACrD;;AAEA;AACA,OAAO,MAAMM,8BAA8B,GAAGP,aAAa,CAAC,kBAAkB,CAAC;AAI/E;AACA;AACA;AACA;AACA;AACA,OAAO,SAASQ,4BAA4BA,CAC1CH,OAAyB,EACM;EAC/B,OAAOC,QAAQ,CAACD,OAAO,EAAE,kBAAkB,CAAC;AAC9C;AAEA,OAAO,SAASI,6BAA6BA,CAC3CC,IAAe,EAC8C;EAC7D,IAAI,CAACF,4BAA4B,CAACE,IAAI,CAACL,OAAO,CAAC,EAAE;IAC/C,MAAM,IAAIM,KAAK,CAAC,yCAAyCD,IAAI,CAACL,OAAO,EAAE,CAAC;EAC1E;AACF;;AAEA;AACA,OAAO,MAAMO,8BAA8B,GAAGZ,aAAa,CAAC,MAAM,CAAC;AAInE;AACA,OAAO,SAASa,4BAA4BA,CAC1CR,OAAyB,EACe;EACxC,OAAOC,QAAQ,CAACD,OAAO,EAAE,MAAM,CAAC;AAClC;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASS,6BAA6BA,CAC3CJ,IAAe,EACuD;EACtE,IAAI,CAACG,4BAA4B,CAACH,IAAI,CAACL,OAAO,CAAC,EAAE;IAC/C,MAAM,IAAIM,KAAK,CAAC,yCAAyCD,IAAI,CAACL,OAAO,EAAE,CAAC;EAC1E;AACF","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sundae/v4-curve.js b/modules/realfi-partner-sdk/dist/esm/sundae/v4-curve.js new file mode 100644 index 0000000000..0488783a5f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sundae/v4-curve.js @@ -0,0 +1,104 @@ +import { EContractVersion, EPoolCurve } from "@sundaeswap/core"; + +/** + * Fills in the two v4 fields Sundae's own pool query does not select. + * + * `QueryProviderSundaeSwap.findPoolDataByAssetId` builds its query inside + * `@sundaeswap/core`, and that query asks for neither `modules` nor `prices`. + * So every v4 pool it returns arrives with `curve` and `prices` undefined, and + * anything downstream has to assume the curve rather than check it. + * + * This is a stopgap for that gap, deliberately shaped to retire itself: it only + * queries for pools that are *missing* the fields. The day Sundae selects them + * upstream, the candidate list is empty, the extra request never fires, and + * deleting this module is pure cleanup rather than a behaviour change. + */ + +const POOL_CURVE_QUERY = `query poolCurves($asset: ID!) { + pools { byAsset(asset: $asset) { id modules { identifier } prices } } +}`; +const CURVES = [EPoolCurve.ConstantProduct, EPoolCurve.ConstantSum, EPoolCurve.ConcentratedLiquidity]; + +/** + * The invariant module identifiers are exactly the `EPoolCurve` values, so match + * on those rather than on the `kind` discriminator — one less shape to depend on. + */ +function curveOf(row) { + return CURVES.find(curve => (row.modules ?? []).some(module => module.identifier === curve)); +} + +/** + * `IPoolData.prices` is a two-tuple aligned to `[assetA, assetB]`, but a v4 pool + * can hold up to 16 assets and the API returns a weight for each. Two cases are + * safe to map: + * + * - every weight is equal, so whichever two `assetA`/`assetB` project to are + * equal as well — this is what RealFi's stablecoin pools look like, including + * the three-asset ones; + * - exactly two weights, which align with the pair directly. + * + * Anything else is left undefined rather than guessed at. A consumer that needs + * the weights then refuses the pool, which is the right answer for a pool we + * cannot describe. + */ +function pricesOf(row) { + const raw = row.prices ?? []; + if (raw.length === 0) return undefined; + const weights = raw.map(price => BigInt(price)); + if (new Set(weights).size === 1) { + return [weights[0], weights[0]]; + } + return weights.length === 2 ? [weights[0], weights[1]] : undefined; +} +function needsCurveData(pool) { + return pool.version === EContractVersion.V4 && (pool.curve === undefined || pool.prices === undefined); +} + +/** + * Returns `pools` with `curve`/`prices` filled in for the v4 pools that lacked + * them. A pool the query cannot describe is returned untouched; a failed request + * leaves every pool untouched, so discovery degrades to today's behaviour rather + * than failing outright. + */ +export async function withV4CurveData(pools, assetId, endpoint) { + if (!pools.some(needsCurveData)) { + return [...pools]; + } + let rows; + try { + const response = await fetch(endpoint, { + body: JSON.stringify({ + query: POOL_CURVE_QUERY, + variables: { + asset: assetId + } + }), + headers: { + "Content-Type": "application/json" + }, + method: "POST" + }); + const payload = await response.json(); + rows = payload.data?.pools?.byAsset ?? []; + } catch { + return [...pools]; + } + const byIdent = new Map(rows.map(row => [row.id, row])); + return pools.map(pool => { + if (!needsCurveData(pool)) return pool; + const row = byIdent.get(pool.ident); + if (!row) return pool; + const curve = pool.curve ?? curveOf(row); + const prices = pool.prices ?? pricesOf(row); + return { + ...pool, + ...(curve === undefined ? {} : { + curve + }), + ...(prices === undefined ? {} : { + prices + }) + }; + }); +} +//# sourceMappingURL=v4-curve.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/sundae/v4-curve.js.map b/modules/realfi-partner-sdk/dist/esm/sundae/v4-curve.js.map new file mode 100644 index 0000000000..32e88db55a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/sundae/v4-curve.js.map @@ -0,0 +1 @@ +{"version":3,"file":"v4-curve.js","names":["EContractVersion","EPoolCurve","POOL_CURVE_QUERY","CURVES","ConstantProduct","ConstantSum","ConcentratedLiquidity","curveOf","row","find","curve","modules","some","module","identifier","pricesOf","raw","prices","length","undefined","weights","map","price","BigInt","Set","size","needsCurveData","pool","version","V4","withV4CurveData","pools","assetId","endpoint","rows","response","fetch","body","JSON","stringify","query","variables","asset","headers","method","payload","json","data","byAsset","byIdent","Map","id","get","ident"],"sources":["../../../src/sundae/v4-curve.ts"],"sourcesContent":["import { EContractVersion, EPoolCurve, type IPoolData } from \"@sundaeswap/core\";\n\n/**\n * Fills in the two v4 fields Sundae's own pool query does not select.\n *\n * `QueryProviderSundaeSwap.findPoolDataByAssetId` builds its query inside\n * `@sundaeswap/core`, and that query asks for neither `modules` nor `prices`.\n * So every v4 pool it returns arrives with `curve` and `prices` undefined, and\n * anything downstream has to assume the curve rather than check it.\n *\n * This is a stopgap for that gap, deliberately shaped to retire itself: it only\n * queries for pools that are *missing* the fields. The day Sundae selects them\n * upstream, the candidate list is empty, the extra request never fires, and\n * deleting this module is pure cleanup rather than a behaviour change.\n */\n\ninterface IPoolCurveRow {\n id: string;\n modules?: { identifier: string }[] | null;\n prices?: (string | number)[] | null;\n}\n\nconst POOL_CURVE_QUERY = `query poolCurves($asset: ID!) {\n pools { byAsset(asset: $asset) { id modules { identifier } prices } }\n}`;\n\nconst CURVES: readonly EPoolCurve[] = [\n EPoolCurve.ConstantProduct,\n EPoolCurve.ConstantSum,\n EPoolCurve.ConcentratedLiquidity,\n];\n\n/**\n * The invariant module identifiers are exactly the `EPoolCurve` values, so match\n * on those rather than on the `kind` discriminator — one less shape to depend on.\n */\nfunction curveOf(row: IPoolCurveRow): EPoolCurve | undefined {\n return CURVES.find((curve) =>\n (row.modules ?? []).some((module) => module.identifier === curve),\n );\n}\n\n/**\n * `IPoolData.prices` is a two-tuple aligned to `[assetA, assetB]`, but a v4 pool\n * can hold up to 16 assets and the API returns a weight for each. Two cases are\n * safe to map:\n *\n * - every weight is equal, so whichever two `assetA`/`assetB` project to are\n * equal as well — this is what RealFi's stablecoin pools look like, including\n * the three-asset ones;\n * - exactly two weights, which align with the pair directly.\n *\n * Anything else is left undefined rather than guessed at. A consumer that needs\n * the weights then refuses the pool, which is the right answer for a pool we\n * cannot describe.\n */\nfunction pricesOf(row: IPoolCurveRow): [bigint, bigint] | undefined {\n const raw = row.prices ?? [];\n if (raw.length === 0) return undefined;\n\n const weights = raw.map((price) => BigInt(price));\n if (new Set(weights).size === 1) {\n return [weights[0]!, weights[0]!];\n }\n return weights.length === 2 ? [weights[0]!, weights[1]!] : undefined;\n}\n\nfunction needsCurveData(pool: IPoolData): boolean {\n return (\n pool.version === EContractVersion.V4 &&\n (pool.curve === undefined || pool.prices === undefined)\n );\n}\n\n/**\n * Returns `pools` with `curve`/`prices` filled in for the v4 pools that lacked\n * them. A pool the query cannot describe is returned untouched; a failed request\n * leaves every pool untouched, so discovery degrades to today's behaviour rather\n * than failing outright.\n */\nexport async function withV4CurveData(\n pools: readonly IPoolData[],\n assetId: string,\n endpoint: string,\n): Promise {\n if (!pools.some(needsCurveData)) {\n return [...pools];\n }\n\n let rows: IPoolCurveRow[];\n try {\n const response = await fetch(endpoint, {\n body: JSON.stringify({\n query: POOL_CURVE_QUERY,\n variables: { asset: assetId },\n }),\n headers: { \"Content-Type\": \"application/json\" },\n method: \"POST\",\n });\n const payload = (await response.json()) as {\n data?: { pools?: { byAsset?: IPoolCurveRow[] } };\n };\n rows = payload.data?.pools?.byAsset ?? [];\n } catch {\n return [...pools];\n }\n\n const byIdent = new Map(rows.map((row) => [row.id, row]));\n\n return pools.map((pool) => {\n if (!needsCurveData(pool)) return pool;\n\n const row = byIdent.get(pool.ident);\n if (!row) return pool;\n\n const curve = pool.curve ?? curveOf(row);\n const prices = pool.prices ?? pricesOf(row);\n\n return {\n ...pool,\n ...(curve === undefined ? {} : { curve }),\n ...(prices === undefined ? {} : { prices }),\n };\n });\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/tx-builder/destination.js b/modules/realfi-partner-sdk/dist/esm/tx-builder/destination.js new file mode 100644 index 0000000000..32a7f6c217 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/tx-builder/destination.js @@ -0,0 +1,162 @@ +/* eslint-disable @typescript-eslint/naming-convention */ + +import { Hash28ByteBase16, HexBlob, PlutusData } from "@blaze-cardano/core"; +import { Core } from "@blaze-cardano/sdk"; +import { DatumBuilderV3, EDatumType } from "@sundaeswap/core"; + +/** + * Intermediate output produced by one flow step and consumed by the previous + * flow step as its continuation destination. + */ + +/** + * Converts a step result's optional inline datum into the RealFi destination + * datum shape. + */ +export function realfiDestinationDatumFromStepResult(stepResult) { + return stepResult.datum ? { + InlineDatum: [stepResult.datum] + } : "NoDatum"; +} + +/** + * Builds a RealFi destination that points to a step result's address and datum. + */ +export function realfiDestinationFromStepResult(stepResult) { + return addressToRealFiDestination(stepResult.address, realfiDestinationDatumFromStepResult(stepResult)); +} + +/** + * Converts a Cardano address plus optional datum into the generated RealFi + * destination type. + */ +export function addressToRealFiDestination(address, datum = "NoDatum") { + const props = address.getProps(); + const paymentPart = props.paymentPart; + if (!paymentPart) { + throw new Error("Address must have a payment part"); + } + const paymentCredential = paymentPart.type === Core.CredentialType.KeyHash ? { + VerificationKey: [paymentPart.hash] + } : { + Script: [paymentPart.hash] + }; + let stakeCredential = undefined; + if (props.delegationPart) { + const stakeCred = props.delegationPart.type === Core.CredentialType.KeyHash ? { + VerificationKey: [props.delegationPart.hash] + } : { + Script: [props.delegationPart.hash] + }; + stakeCredential = { + Inline: [stakeCred] + }; + } + return { + address: { + payment_credential: paymentCredential, + stake_credential: stakeCredential + }, + datum + }; +} + +/** + * Derives a RealFi owner from the exact cancellation authority Sundae V3 + * assigns to an owner address. Sundae prefers a base address's staking hash + * over its payment hash, while deciding Signature vs Script from the address's + * payment credential, so this must use Sundae's builder rather than reimplement + * those semantics from the Blaze address parts. + */ +export function realfiOwnerFromSundaeV3OwnerAddress(network, ownerAddress) { + const sundaeOwner = new DatumBuilderV3(network).buildOwnerDatum(ownerAddress).schema; + if ("Signature" in sundaeOwner) { + return { + Signature: { + key_hash: sundaeOwner.Signature.keyHash + } + }; + } + if ("Script" in sundaeOwner) { + return { + Script: { + script_hash: sundaeOwner.Script.scriptHash + } + }; + } + throw new Error("Unsupported Sundae V3 owner datum derived from address"); +} + +/** + * Reconstructs a Cardano address from a generated RealFi destination address. + */ +export function realfiDestinationToAddress(network, destination) { + const paymentCred = destination.address.payment_credential; + const stakingCred = destination.address.stake_credential; + const paymentCredCore = "VerificationKey" in paymentCred ? keyCredential(paymentCred.VerificationKey[0]) : scriptCredential(paymentCred.Script[0]); + let stakingCredCore = undefined; + if (stakingCred && "Inline" in stakingCred) { + const inlineCredential = stakingCred.Inline[0]; + stakingCredCore = "VerificationKey" in inlineCredential ? keyCredential(inlineCredential.VerificationKey[0]) : scriptCredential(inlineCredential.Script[0]); + } + return Core.addressFromCredentials(network, paymentCredCore, stakingCredCore); +} + +/** + * Converts a step result's optional inline datum into the Sundae V3 destination + * datum shape. + */ +export function sundaeV3DestinationDatumFromStepResult(stepResult) { + return stepResult.datum ? { + type: EDatumType.INLINE, + value: stepResult.datum.toCbor().toString() + } : { + type: EDatumType.NONE + }; +} + +/** + * Builds the Sundae V3 destination address payload for a step result. + */ +export function sundaeV3DestinationAddressFromStepResult(stepResult) { + return { + address: stepResult.address.toBech32(), + datum: sundaeV3DestinationDatumFromStepResult(stepResult) + }; +} + +/** + * Serializes the Sundae V3 destination used by classic, stableswap, and + * linearswap orders to route proceeds to the next step. + */ +export function sundaeV3DestinationFromStepResult(network, stepResult) { + return new DatumBuilderV3(network).buildDestinationAddresses(sundaeV3DestinationAddressFromStepResult(stepResult)); +} + +/** + * Returns the step result's inline datum for protocols that store continuation + * data directly as an optional Plutus datum. + */ +export function inlineDatumFromStepResult(stepResult) { + return stepResult.datum; +} + +/** + * Parses Plutus data from a CBOR hex string. + */ +export function plutusDataFromCbor(cborHex) { + return PlutusData.fromCbor(HexBlob(cborHex)); +} +function keyCredential(hash) { + return Core.Credential.fromCore({ + type: Core.CredentialType.KeyHash, + hash: Hash28ByteBase16(hash) + }); +} +function scriptCredential(hash) { + return Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash: Hash28ByteBase16(hash) + }); +} +//# sourceMappingURL=destination.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/tx-builder/destination.js.map b/modules/realfi-partner-sdk/dist/esm/tx-builder/destination.js.map new file mode 100644 index 0000000000..867fd0179f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/tx-builder/destination.js.map @@ -0,0 +1 @@ +{"version":3,"file":"destination.js","names":["Hash28ByteBase16","HexBlob","PlutusData","Core","DatumBuilderV3","EDatumType","realfiDestinationDatumFromStepResult","stepResult","datum","InlineDatum","realfiDestinationFromStepResult","addressToRealFiDestination","address","props","getProps","paymentPart","Error","paymentCredential","type","CredentialType","KeyHash","VerificationKey","hash","Script","stakeCredential","undefined","delegationPart","stakeCred","Inline","payment_credential","stake_credential","realfiOwnerFromSundaeV3OwnerAddress","network","ownerAddress","sundaeOwner","buildOwnerDatum","schema","Signature","key_hash","keyHash","script_hash","scriptHash","realfiDestinationToAddress","destination","paymentCred","stakingCred","paymentCredCore","keyCredential","scriptCredential","stakingCredCore","inlineCredential","addressFromCredentials","sundaeV3DestinationDatumFromStepResult","INLINE","value","toCbor","toString","NONE","sundaeV3DestinationAddressFromStepResult","toBech32","sundaeV3DestinationFromStepResult","buildDestinationAddresses","inlineDatumFromStepResult","plutusDataFromCbor","cborHex","fromCbor","Credential","fromCore","ScriptHash"],"sources":["../../../src/tx-builder/destination.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\n\nimport { Hash28ByteBase16, HexBlob, PlutusData } from \"@blaze-cardano/core\";\nimport { Core } from \"@blaze-cardano/sdk\";\nimport {\n DatumBuilderV3,\n EDatumType,\n type TDatum,\n type TDatumResult,\n type TDestinationAddress,\n type TSupportedNetworks,\n} from \"@sundaeswap/core\";\n\nimport type {\n Destination,\n MultisigScript,\n} from \"../generated-types/v1_0/index.js\";\n\n/**\n * Intermediate output produced by one flow step and consumed by the previous\n * flow step as its continuation destination.\n */\nexport interface TxBuilderStepResult {\n address: Core.Address;\n datum?: PlutusData;\n}\n\nexport type RealFiDestinationDatum = Destination[\"datum\"];\nexport type SundaeV3DestinationResult = TDatumResult<\n ReturnType[\"schema\"]\n>;\n\n/**\n * Converts a step result's optional inline datum into the RealFi destination\n * datum shape.\n */\nexport function realfiDestinationDatumFromStepResult(\n stepResult: TxBuilderStepResult,\n): RealFiDestinationDatum {\n return stepResult.datum ? { InlineDatum: [stepResult.datum] } : \"NoDatum\";\n}\n\n/**\n * Builds a RealFi destination that points to a step result's address and datum.\n */\nexport function realfiDestinationFromStepResult(\n stepResult: TxBuilderStepResult,\n): Destination {\n return addressToRealFiDestination(\n stepResult.address,\n realfiDestinationDatumFromStepResult(stepResult),\n );\n}\n\n/**\n * Converts a Cardano address plus optional datum into the generated RealFi\n * destination type.\n */\nexport function addressToRealFiDestination(\n address: Core.Address,\n datum: RealFiDestinationDatum = \"NoDatum\",\n): Destination {\n const props = address.getProps();\n const paymentPart = props.paymentPart;\n\n if (!paymentPart) {\n throw new Error(\"Address must have a payment part\");\n }\n\n const paymentCredential =\n paymentPart.type === Core.CredentialType.KeyHash\n ? { VerificationKey: [paymentPart.hash] as [string] }\n : { Script: [paymentPart.hash] as [string] };\n\n let stakeCredential: Destination[\"address\"][\"stake_credential\"] = undefined;\n if (props.delegationPart) {\n const stakeCred =\n props.delegationPart.type === Core.CredentialType.KeyHash\n ? { VerificationKey: [props.delegationPart.hash] as [string] }\n : { Script: [props.delegationPart.hash] as [string] };\n stakeCredential = { Inline: [stakeCred] };\n }\n\n return {\n address: {\n payment_credential: paymentCredential,\n stake_credential: stakeCredential,\n },\n datum,\n };\n}\n\n/**\n * Derives a RealFi owner from the exact cancellation authority Sundae V3\n * assigns to an owner address. Sundae prefers a base address's staking hash\n * over its payment hash, while deciding Signature vs Script from the address's\n * payment credential, so this must use Sundae's builder rather than reimplement\n * those semantics from the Blaze address parts.\n */\nexport function realfiOwnerFromSundaeV3OwnerAddress(\n network: TSupportedNetworks,\n ownerAddress: string,\n): MultisigScript {\n const sundaeOwner = new DatumBuilderV3(network).buildOwnerDatum(\n ownerAddress,\n ).schema;\n\n if (\"Signature\" in sundaeOwner) {\n return { Signature: { key_hash: sundaeOwner.Signature.keyHash } };\n }\n if (\"Script\" in sundaeOwner) {\n return { Script: { script_hash: sundaeOwner.Script.scriptHash } };\n }\n\n throw new Error(\"Unsupported Sundae V3 owner datum derived from address\");\n}\n\n/**\n * Reconstructs a Cardano address from a generated RealFi destination address.\n */\nexport function realfiDestinationToAddress(\n network: Core.NetworkId,\n destination: Destination,\n): Core.Address {\n const paymentCred = destination.address.payment_credential;\n const stakingCred = destination.address.stake_credential;\n\n const paymentCredCore =\n \"VerificationKey\" in paymentCred\n ? keyCredential(paymentCred.VerificationKey[0])\n : scriptCredential(paymentCred.Script[0]);\n\n let stakingCredCore: Core.Credential | undefined = undefined;\n if (stakingCred && \"Inline\" in stakingCred) {\n const inlineCredential = stakingCred.Inline[0];\n stakingCredCore =\n \"VerificationKey\" in inlineCredential\n ? keyCredential(inlineCredential.VerificationKey[0])\n : scriptCredential(inlineCredential.Script[0]);\n }\n\n return Core.addressFromCredentials(network, paymentCredCore, stakingCredCore);\n}\n\n/**\n * Converts a step result's optional inline datum into the Sundae V3 destination\n * datum shape.\n */\nexport function sundaeV3DestinationDatumFromStepResult(\n stepResult: TxBuilderStepResult,\n): TDatum {\n return stepResult.datum\n ? {\n type: EDatumType.INLINE,\n value: stepResult.datum.toCbor().toString(),\n }\n : { type: EDatumType.NONE };\n}\n\n/**\n * Builds the Sundae V3 destination address payload for a step result.\n */\nexport function sundaeV3DestinationAddressFromStepResult(\n stepResult: TxBuilderStepResult,\n): TDestinationAddress {\n return {\n address: stepResult.address.toBech32(),\n datum: sundaeV3DestinationDatumFromStepResult(stepResult),\n };\n}\n\n/**\n * Serializes the Sundae V3 destination used by classic, stableswap, and\n * linearswap orders to route proceeds to the next step.\n */\nexport function sundaeV3DestinationFromStepResult(\n network: TSupportedNetworks,\n stepResult: TxBuilderStepResult,\n): SundaeV3DestinationResult {\n return new DatumBuilderV3(network).buildDestinationAddresses(\n sundaeV3DestinationAddressFromStepResult(stepResult),\n );\n}\n\n/**\n * Returns the step result's inline datum for protocols that store continuation\n * data directly as an optional Plutus datum.\n */\nexport function inlineDatumFromStepResult(\n stepResult: TxBuilderStepResult,\n): PlutusData | undefined {\n return stepResult.datum;\n}\n\n/**\n * Parses Plutus data from a CBOR hex string.\n */\nexport function plutusDataFromCbor(cborHex: string): PlutusData {\n return PlutusData.fromCbor(HexBlob(cborHex));\n}\n\nfunction keyCredential(hash: string): Core.Credential {\n return Core.Credential.fromCore({\n type: Core.CredentialType.KeyHash,\n hash: Hash28ByteBase16(hash),\n });\n}\n\nfunction scriptCredential(hash: string): Core.Credential {\n return Core.Credential.fromCore({\n type: Core.CredentialType.ScriptHash,\n hash: Hash28ByteBase16(hash),\n });\n}\n"],"mappings":"AAAA;;AAEA,SAASA,gBAAgB,EAAEC,OAAO,EAAEC,UAAU,QAAQ,qBAAqB;AAC3E,SAASC,IAAI,QAAQ,oBAAoB;AACzC,SACEC,cAAc,EACdC,UAAU,QAKL,kBAAkB;;AAOzB;AACA;AACA;AACA;;AAWA;AACA;AACA;AACA;AACA,OAAO,SAASC,oCAAoCA,CAClDC,UAA+B,EACP;EACxB,OAAOA,UAAU,CAACC,KAAK,GAAG;IAAEC,WAAW,EAAE,CAACF,UAAU,CAACC,KAAK;EAAE,CAAC,GAAG,SAAS;AAC3E;;AAEA;AACA;AACA;AACA,OAAO,SAASE,+BAA+BA,CAC7CH,UAA+B,EAClB;EACb,OAAOI,0BAA0B,CAC/BJ,UAAU,CAACK,OAAO,EAClBN,oCAAoC,CAACC,UAAU,CACjD,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASI,0BAA0BA,CACxCC,OAAqB,EACrBJ,KAA6B,GAAG,SAAS,EAC5B;EACb,MAAMK,KAAK,GAAGD,OAAO,CAACE,QAAQ,CAAC,CAAC;EAChC,MAAMC,WAAW,GAAGF,KAAK,CAACE,WAAW;EAErC,IAAI,CAACA,WAAW,EAAE;IAChB,MAAM,IAAIC,KAAK,CAAC,kCAAkC,CAAC;EACrD;EAEA,MAAMC,iBAAiB,GACrBF,WAAW,CAACG,IAAI,KAAKf,IAAI,CAACgB,cAAc,CAACC,OAAO,GAC5C;IAAEC,eAAe,EAAE,CAACN,WAAW,CAACO,IAAI;EAAc,CAAC,GACnD;IAAEC,MAAM,EAAE,CAACR,WAAW,CAACO,IAAI;EAAc,CAAC;EAEhD,IAAIE,eAA2D,GAAGC,SAAS;EAC3E,IAAIZ,KAAK,CAACa,cAAc,EAAE;IACxB,MAAMC,SAAS,GACbd,KAAK,CAACa,cAAc,CAACR,IAAI,KAAKf,IAAI,CAACgB,cAAc,CAACC,OAAO,GACrD;MAAEC,eAAe,EAAE,CAACR,KAAK,CAACa,cAAc,CAACJ,IAAI;IAAc,CAAC,GAC5D;MAAEC,MAAM,EAAE,CAACV,KAAK,CAACa,cAAc,CAACJ,IAAI;IAAc,CAAC;IACzDE,eAAe,GAAG;MAAEI,MAAM,EAAE,CAACD,SAAS;IAAE,CAAC;EAC3C;EAEA,OAAO;IACLf,OAAO,EAAE;MACPiB,kBAAkB,EAAEZ,iBAAiB;MACrCa,gBAAgB,EAAEN;IACpB,CAAC;IACDhB;EACF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASuB,mCAAmCA,CACjDC,OAA2B,EAC3BC,YAAoB,EACJ;EAChB,MAAMC,WAAW,GAAG,IAAI9B,cAAc,CAAC4B,OAAO,CAAC,CAACG,eAAe,CAC7DF,YACF,CAAC,CAACG,MAAM;EAER,IAAI,WAAW,IAAIF,WAAW,EAAE;IAC9B,OAAO;MAAEG,SAAS,EAAE;QAAEC,QAAQ,EAAEJ,WAAW,CAACG,SAAS,CAACE;MAAQ;IAAE,CAAC;EACnE;EACA,IAAI,QAAQ,IAAIL,WAAW,EAAE;IAC3B,OAAO;MAAEX,MAAM,EAAE;QAAEiB,WAAW,EAAEN,WAAW,CAACX,MAAM,CAACkB;MAAW;IAAE,CAAC;EACnE;EAEA,MAAM,IAAIzB,KAAK,CAAC,wDAAwD,CAAC;AAC3E;;AAEA;AACA;AACA;AACA,OAAO,SAAS0B,0BAA0BA,CACxCV,OAAuB,EACvBW,WAAwB,EACV;EACd,MAAMC,WAAW,GAAGD,WAAW,CAAC/B,OAAO,CAACiB,kBAAkB;EAC1D,MAAMgB,WAAW,GAAGF,WAAW,CAAC/B,OAAO,CAACkB,gBAAgB;EAExD,MAAMgB,eAAe,GACnB,iBAAiB,IAAIF,WAAW,GAC5BG,aAAa,CAACH,WAAW,CAACvB,eAAe,CAAC,CAAC,CAAC,CAAC,GAC7C2B,gBAAgB,CAACJ,WAAW,CAACrB,MAAM,CAAC,CAAC,CAAC,CAAC;EAE7C,IAAI0B,eAA4C,GAAGxB,SAAS;EAC5D,IAAIoB,WAAW,IAAI,QAAQ,IAAIA,WAAW,EAAE;IAC1C,MAAMK,gBAAgB,GAAGL,WAAW,CAACjB,MAAM,CAAC,CAAC,CAAC;IAC9CqB,eAAe,GACb,iBAAiB,IAAIC,gBAAgB,GACjCH,aAAa,CAACG,gBAAgB,CAAC7B,eAAe,CAAC,CAAC,CAAC,CAAC,GAClD2B,gBAAgB,CAACE,gBAAgB,CAAC3B,MAAM,CAAC,CAAC,CAAC,CAAC;EACpD;EAEA,OAAOpB,IAAI,CAACgD,sBAAsB,CAACnB,OAAO,EAAEc,eAAe,EAAEG,eAAe,CAAC;AAC/E;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASG,sCAAsCA,CACpD7C,UAA+B,EACvB;EACR,OAAOA,UAAU,CAACC,KAAK,GACnB;IACEU,IAAI,EAAEb,UAAU,CAACgD,MAAM;IACvBC,KAAK,EAAE/C,UAAU,CAACC,KAAK,CAAC+C,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC;EAC5C,CAAC,GACD;IAAEtC,IAAI,EAAEb,UAAU,CAACoD;EAAK,CAAC;AAC/B;;AAEA;AACA;AACA;AACA,OAAO,SAASC,wCAAwCA,CACtDnD,UAA+B,EACV;EACrB,OAAO;IACLK,OAAO,EAAEL,UAAU,CAACK,OAAO,CAAC+C,QAAQ,CAAC,CAAC;IACtCnD,KAAK,EAAE4C,sCAAsC,CAAC7C,UAAU;EAC1D,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASqD,iCAAiCA,CAC/C5B,OAA2B,EAC3BzB,UAA+B,EACJ;EAC3B,OAAO,IAAIH,cAAc,CAAC4B,OAAO,CAAC,CAAC6B,yBAAyB,CAC1DH,wCAAwC,CAACnD,UAAU,CACrD,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASuD,yBAAyBA,CACvCvD,UAA+B,EACP;EACxB,OAAOA,UAAU,CAACC,KAAK;AACzB;;AAEA;AACA;AACA;AACA,OAAO,SAASuD,kBAAkBA,CAACC,OAAe,EAAc;EAC9D,OAAO9D,UAAU,CAAC+D,QAAQ,CAAChE,OAAO,CAAC+D,OAAO,CAAC,CAAC;AAC9C;AAEA,SAASjB,aAAaA,CAACzB,IAAY,EAAmB;EACpD,OAAOnB,IAAI,CAAC+D,UAAU,CAACC,QAAQ,CAAC;IAC9BjD,IAAI,EAAEf,IAAI,CAACgB,cAAc,CAACC,OAAO;IACjCE,IAAI,EAAEtB,gBAAgB,CAACsB,IAAI;EAC7B,CAAC,CAAC;AACJ;AAEA,SAAS0B,gBAAgBA,CAAC1B,IAAY,EAAmB;EACvD,OAAOnB,IAAI,CAAC+D,UAAU,CAACC,QAAQ,CAAC;IAC9BjD,IAAI,EAAEf,IAAI,CAACgB,cAAc,CAACiD,UAAU;IACpC9C,IAAI,EAAEtB,gBAAgB,CAACsB,IAAI;EAC7B,CAAC,CAAC;AACJ","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/tx-builder/flow.js b/modules/realfi-partner-sdk/dist/esm/tx-builder/flow.js new file mode 100644 index 0000000000..f692a22676 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/tx-builder/flow.js @@ -0,0 +1,173 @@ +/* eslint-disable @typescript-eslint/naming-convention */ + +import * as Data from "@blaze-cardano/data"; +import { Core } from "@blaze-cardano/sdk"; +import { DatumBuilderV3 } from "@sundaeswap/core"; +import { V1_0Types } from "../generated-types/index.js"; +import { plutusDataFromCbor, realfiDestinationFromStepResult, sundaeV3DestinationAddressFromStepResult } from "./destination.js"; + +/** + * Output produced by one flow step. The previous step consumes only this + * result's address and datum as its continuation destination. The value is the + * Cardano assets locked at this step's output; after the right fold, only the + * outermost folded result is converted into the transaction output. + */ + +export const STAKE_VAULT_RATIO_SCALE = 1_000_000n; +export const DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS = 50n; +const BPS_DENOMINATOR = 10_000n; + +/** + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ + +/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */ + +/** + * Computes stake order `min_received` from the current vault exchange rate. + * + * `vaultRatio` is USDr per sUSDr scaled by 1e6, so the natural sUSDr output is + * `amount * 1e6 / vaultRatio`. The tolerance is applied to that output floor. + * + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ +export function computeStakeMinReceivedFromVaultRatio(amount, vaultRatio, slippageToleranceBps = DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS) { + if (amount <= 0n) { + throw new Error("Stake amount must be positive"); + } + if (vaultRatio <= 0n) { + throw new Error("Vault ratio must be positive"); + } + if (slippageToleranceBps < 0n || slippageToleranceBps > BPS_DENOMINATOR) { + throw new Error("Slippage tolerance must be between 0 and 10000 bps"); + } + const expected = amount * STAKE_VAULT_RATIO_SCALE / vaultRatio; + const minReceived = expected * (BPS_DENOMINATOR - slippageToleranceBps) / BPS_DENOMINATOR; + // WTB-1764: stake.ak requires min_received > 0 and crashes the entire + // execution transaction (not just this request) when it is not, so a floor + // that rounds or tolerances down to zero must not become an order. + if (minReceived <= 0n) { + throw new Error(`Quoted min_received must be positive (got ${minReceived}); the stake amount ` + "is too small for this vault ratio and tolerance to quote a non-zero floor"); + } + return minReceived; +} + +/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */ +export function buildRealFiStakeAction({ + amount, + vaultRatio, + slippageToleranceBps +}) { + return { + OStake: { + amount, + min_received: computeStakeMinReceivedFromVaultRatio(amount, vaultRatio, slippageToleranceBps) + } + }; +} + +/** + * Builds the final flow result by folding from the final step backward through + * each requested flow step. + */ +export function buildTxFlow(steps, finalStep) { + return steps.reduceRight((nextStep, step) => buildTxFlowStep(step, nextStep), finalStep); +} + +/** + * Builds one flow step using the already-built next step as its continuation. + */ +export function buildTxFlowStep(step, nextStep) { + switch (step.kind) { + case "realfi": + return buildRealFiTxFlowStep(step, nextStep); + case "sundae-v3": + return buildSundaeV3TxFlowStep(step, nextStep); + default: + { + const unreachable = step; + return unreachable; + } + } +} + +/** + * Builds a RealFi order flow result whose destination points to the next step. + * + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ +export function buildRealFiTxFlowStep(step, nextStep) { + const orderDatum = { + owner: step.owner, + destination: realfiDestinationFromStepResult(nextStep), + action: step.action, + data: step.data ?? Data.Void() + }; + return { + address: step.address, + datum: Data.serialize(V1_0Types.OrderDatumV1, orderDatum), + value: step.value + }; +} + +/** + * Builds a Sundae V3 flow result by injecting the next step as the order + * destination and serializing the selected order datum. + */ +export function buildSundaeV3TxFlowStep(step, nextStep) { + const builder = new DatumBuilderV3(step.network); + const destinationAddress = sundaeV3DestinationAddressFromStepResult(nextStep); + let inlineDatum; + switch (step.orderKind) { + case "swap": + inlineDatum = builder.buildSwapDatum({ + destinationAddress, + ident: step.ident, + order: step.order, + ownerAddress: step.ownerAddress, + scooperFee: step.scooperFee + }).inline; + break; + case "deposit": + inlineDatum = builder.buildDepositDatum({ + destinationAddress, + ident: step.ident, + order: step.order, + ownerAddress: step.ownerAddress, + scooperFee: step.scooperFee + }).inline; + break; + case "withdraw": + inlineDatum = builder.buildWithdrawDatum({ + destinationAddress, + ident: step.ident, + order: step.order, + ownerAddress: step.ownerAddress, + scooperFee: step.scooperFee + }).inline; + break; + default: + { + const unreachable = step; + return unreachable; + } + } + return { + address: step.address, + datum: plutusDataFromCbor(inlineDatum), + value: step.value + }; +} + +/** + * Converts the folded flow result into a transaction output with an inline + * datum when the result includes one. + */ +export function txBuilderFlowResultToCoreOutput(result) { + const output = new Core.TransactionOutput(result.address, result.value); + if (result.datum) { + output.setDatum(Core.Datum.newInlineData(result.datum)); + } + return output; +} +//# sourceMappingURL=flow.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/tx-builder/flow.js.map b/modules/realfi-partner-sdk/dist/esm/tx-builder/flow.js.map new file mode 100644 index 0000000000..74f7f7a959 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/tx-builder/flow.js.map @@ -0,0 +1 @@ +{"version":3,"file":"flow.js","names":["Data","Core","DatumBuilderV3","V1_0Types","plutusDataFromCbor","realfiDestinationFromStepResult","sundaeV3DestinationAddressFromStepResult","STAKE_VAULT_RATIO_SCALE","DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS","BPS_DENOMINATOR","computeStakeMinReceivedFromVaultRatio","amount","vaultRatio","slippageToleranceBps","Error","expected","minReceived","buildRealFiStakeAction","OStake","min_received","buildTxFlow","steps","finalStep","reduceRight","nextStep","step","buildTxFlowStep","kind","buildRealFiTxFlowStep","buildSundaeV3TxFlowStep","unreachable","orderDatum","owner","destination","action","data","Void","address","datum","serialize","OrderDatumV1","value","builder","network","destinationAddress","inlineDatum","orderKind","buildSwapDatum","ident","order","ownerAddress","scooperFee","inline","buildDepositDatum","buildWithdrawDatum","txBuilderFlowResultToCoreOutput","result","output","TransactionOutput","setDatum","Datum","newInlineData"],"sources":["../../../src/tx-builder/flow.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\n\nimport type { PlutusData } from \"@blaze-cardano/core\";\nimport * as Data from \"@blaze-cardano/data\";\nimport { Core } from \"@blaze-cardano/sdk\";\nimport {\n DatumBuilderV3,\n type IDatumBuilderDepositV3Args,\n type IDatumBuilderSwapV3Args,\n type IDatumBuilderWithdrawV3Args,\n type TSupportedNetworks,\n} from \"@sundaeswap/core\";\n\nimport { V1_0Types } from \"../generated-types/index.js\";\nimport type {\n MultisigScript,\n OrderActionV1,\n OrderDatumV1,\n} from \"../generated-types/v1_0/index.js\";\nimport {\n type TxBuilderStepResult,\n plutusDataFromCbor,\n realfiDestinationFromStepResult,\n sundaeV3DestinationAddressFromStepResult,\n} from \"./destination.js\";\n\n/**\n * Output produced by one flow step. The previous step consumes only this\n * result's address and datum as its continuation destination. The value is the\n * Cardano assets locked at this step's output; after the right fold, only the\n * outermost folded result is converted into the transaction output.\n */\nexport interface TxBuilderFlowResult extends TxBuilderStepResult {\n value: Core.Value;\n}\n\nexport interface TxBuilderFinalStep extends TxBuilderFlowResult {}\n\nexport const STAKE_VAULT_RATIO_SCALE = 1_000_000n;\nexport const DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS = 50n;\n\nconst BPS_DENOMINATOR = 10_000n;\n\n/**\n * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper.\n */\nexport interface RealFiStakeActionInput {\n amount: bigint;\n /**\n * Current USDr-per-sUSDr vault ratio scaled by 1e6.\n *\n * This is the shape returned by the RealFi API's latestVaultRatio query.\n */\n vaultRatio: bigint;\n slippageToleranceBps?: bigint;\n}\n\n/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */\nexport interface RealFiTxFlowStep {\n kind: \"realfi\";\n address: Core.Address;\n value: Core.Value;\n owner: MultisigScript;\n action: OrderActionV1;\n data?: PlutusData;\n}\n\nexport interface SundaeV3BaseTxFlowStep {\n kind: \"sundae-v3\";\n network: TSupportedNetworks;\n address: Core.Address;\n value: Core.Value;\n}\n\nexport interface SundaeV3SwapTxFlowStep\n extends\n SundaeV3BaseTxFlowStep,\n Omit {\n orderKind: \"swap\";\n}\n\nexport interface SundaeV3DepositTxFlowStep\n extends\n SundaeV3BaseTxFlowStep,\n Omit {\n orderKind: \"deposit\";\n}\n\nexport interface SundaeV3WithdrawTxFlowStep\n extends\n SundaeV3BaseTxFlowStep,\n Omit {\n orderKind: \"withdraw\";\n}\n\nexport type SundaeV3TxFlowStep =\n | SundaeV3SwapTxFlowStep\n | SundaeV3DepositTxFlowStep\n | SundaeV3WithdrawTxFlowStep;\n\nexport type SundaeTxFlowStep = SundaeV3TxFlowStep;\n\nexport type TxFlowStep = RealFiTxFlowStep | SundaeTxFlowStep;\n\n/**\n * Computes stake order `min_received` from the current vault exchange rate.\n *\n * `vaultRatio` is USDr per sUSDr scaled by 1e6, so the natural sUSDr output is\n * `amount * 1e6 / vaultRatio`. The tolerance is applied to that output floor.\n *\n * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper.\n */\nexport function computeStakeMinReceivedFromVaultRatio(\n amount: bigint,\n vaultRatio: bigint,\n slippageToleranceBps: bigint = DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS,\n): bigint {\n if (amount <= 0n) {\n throw new Error(\"Stake amount must be positive\");\n }\n if (vaultRatio <= 0n) {\n throw new Error(\"Vault ratio must be positive\");\n }\n if (slippageToleranceBps < 0n || slippageToleranceBps > BPS_DENOMINATOR) {\n throw new Error(\"Slippage tolerance must be between 0 and 10000 bps\");\n }\n\n const expected = (amount * STAKE_VAULT_RATIO_SCALE) / vaultRatio;\n const minReceived =\n (expected * (BPS_DENOMINATOR - slippageToleranceBps)) / BPS_DENOMINATOR;\n // WTB-1764: stake.ak requires min_received > 0 and crashes the entire\n // execution transaction (not just this request) when it is not, so a floor\n // that rounds or tolerances down to zero must not become an order.\n if (minReceived <= 0n) {\n throw new Error(\n `Quoted min_received must be positive (got ${minReceived}); the stake amount ` +\n \"is too small for this vault ratio and tolerance to quote a non-zero floor\",\n );\n }\n return minReceived;\n}\n\n/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */\nexport function buildRealFiStakeAction({\n amount,\n vaultRatio,\n slippageToleranceBps,\n}: RealFiStakeActionInput): OrderActionV1 {\n return {\n OStake: {\n amount,\n min_received: computeStakeMinReceivedFromVaultRatio(\n amount,\n vaultRatio,\n slippageToleranceBps,\n ),\n },\n };\n}\n\n/**\n * Builds the final flow result by folding from the final step backward through\n * each requested flow step.\n */\nexport function buildTxFlow(\n steps: readonly TxFlowStep[],\n finalStep: TxBuilderFinalStep,\n): TxBuilderFlowResult {\n return steps.reduceRight(\n (nextStep, step) => buildTxFlowStep(step, nextStep),\n finalStep,\n );\n}\n\n/**\n * Builds one flow step using the already-built next step as its continuation.\n */\nexport function buildTxFlowStep(\n step: TxFlowStep,\n nextStep: TxBuilderFlowResult,\n): TxBuilderFlowResult {\n switch (step.kind) {\n case \"realfi\":\n return buildRealFiTxFlowStep(step, nextStep);\n case \"sundae-v3\":\n return buildSundaeV3TxFlowStep(step, nextStep);\n default: {\n const unreachable: never = step;\n return unreachable;\n }\n }\n}\n\n/**\n * Builds a RealFi order flow result whose destination points to the next step.\n *\n * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper.\n */\nexport function buildRealFiTxFlowStep(\n step: RealFiTxFlowStep,\n nextStep: TxBuilderStepResult,\n): TxBuilderFlowResult {\n const orderDatum: OrderDatumV1 = {\n owner: step.owner,\n destination: realfiDestinationFromStepResult(nextStep),\n action: step.action,\n data: step.data ?? Data.Void(),\n };\n\n return {\n address: step.address,\n datum: Data.serialize(V1_0Types.OrderDatumV1, orderDatum),\n value: step.value,\n };\n}\n\n/**\n * Builds a Sundae V3 flow result by injecting the next step as the order\n * destination and serializing the selected order datum.\n */\nexport function buildSundaeV3TxFlowStep(\n step: SundaeV3TxFlowStep,\n nextStep: TxBuilderStepResult,\n): TxBuilderFlowResult {\n const builder = new DatumBuilderV3(step.network);\n const destinationAddress = sundaeV3DestinationAddressFromStepResult(nextStep);\n let inlineDatum: string;\n\n switch (step.orderKind) {\n case \"swap\":\n inlineDatum = builder.buildSwapDatum({\n destinationAddress,\n ident: step.ident,\n order: step.order,\n ownerAddress: step.ownerAddress,\n scooperFee: step.scooperFee,\n }).inline;\n break;\n case \"deposit\":\n inlineDatum = builder.buildDepositDatum({\n destinationAddress,\n ident: step.ident,\n order: step.order,\n ownerAddress: step.ownerAddress,\n scooperFee: step.scooperFee,\n }).inline;\n break;\n case \"withdraw\":\n inlineDatum = builder.buildWithdrawDatum({\n destinationAddress,\n ident: step.ident,\n order: step.order,\n ownerAddress: step.ownerAddress,\n scooperFee: step.scooperFee,\n }).inline;\n break;\n default: {\n const unreachable: never = step;\n return unreachable;\n }\n }\n\n return {\n address: step.address,\n datum: plutusDataFromCbor(inlineDatum),\n value: step.value,\n };\n}\n\n/**\n * Converts the folded flow result into a transaction output with an inline\n * datum when the result includes one.\n */\nexport function txBuilderFlowResultToCoreOutput(\n result: TxBuilderFlowResult,\n): Core.TransactionOutput {\n const output = new Core.TransactionOutput(result.address, result.value);\n\n if (result.datum) {\n output.setDatum(Core.Datum.newInlineData(result.datum));\n }\n\n return output;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/tx-builder/index.js b/modules/realfi-partner-sdk/dist/esm/tx-builder/index.js new file mode 100644 index 0000000000..4995a581c1 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/tx-builder/index.js @@ -0,0 +1,4 @@ +export * from "./destination.js"; +export * from "./flow.js"; +export * from "./registry.js"; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/tx-builder/index.js.map b/modules/realfi-partner-sdk/dist/esm/tx-builder/index.js.map new file mode 100644 index 0000000000..6a6b828193 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/tx-builder/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","names":[],"sources":["../../../src/tx-builder/index.ts"],"sourcesContent":["export * from \"./destination.js\";\nexport * from \"./flow.js\";\nexport * from \"./registry.js\";\n"],"mappings":"AAAA,cAAc,kBAAkB;AAChC,cAAc,WAAW;AACzB,cAAc,eAAe","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/tx-builder/registry.js b/modules/realfi-partner-sdk/dist/esm/tx-builder/registry.js new file mode 100644 index 0000000000..7d9db086d9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/tx-builder/registry.js @@ -0,0 +1,144 @@ +/* eslint-disable @typescript-eslint/naming-convention */ + +import { Core } from "@blaze-cardano/sdk"; +import { buildRealFiStakeAction, buildSundaeV3TxFlowStep, buildTxFlow, txBuilderFlowResultToCoreOutput } from "./flow.js"; +import { realfiOwnerFromSundaeV3OwnerAddress, realfiDestinationFromStepResult } from "./destination.js"; + +/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */ + +/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */ + +/** A swap leg with explicit cancellation authority for the routed order. */ + +/** + * Any SDK instance exposing `buildStakeContinuation` — the partner facade's + * per-build dispatcher, an `"at-init"` instance, or a raw version-pinned SDK. + * Only the per-build dispatcher fails closed on a stale protocol version; + * the others carry no such guarantee. + */ + +/** + * @deprecated Prefer `RealfiSDK.sundae.create(blaze).buildSwapToStakeOrderTx`. + * This input belongs to the lower-level, V3-only flow composer. + */ + +/** + * Default request address registry. Sundae V3 entries are enterprise order + * script addresses. The RealFi entry is a legacy V1_0-only path; preview runs + * V1_1, so its old V1_0 address is deliberately unset. New stake continuations + * derive the live address from the version-aware SDK instead. + */ +export const TX_BUILDER_REGISTRY = { + preview: { + realfi: {}, + sundaeV3: { + requestAddress: "addr_test1wr866xg5kkvarzll69xjh0tfvqvu9zvuhht2qve9ehmgp0qfgf3wc" + } + }, + preprod: { + realfi: { + requestAddress: "addr_test1wrkgqyfrz7qhlhu737nf4v5dllypylasaqruphlul5jhpeczfzjzl" + }, + sundaeV3: { + requestAddress: "addr_test1wz5cn230um3cve5gvvgk9kxveqcd888r3vl3rtxn3qxpvhcv0tzpr" + } + }, + mainnet: { + realfi: {}, + sundaeV3: { + requestAddress: "addr1w8ax5k9mutg07p2ngscu3chsauktmstq92z9de938j8nqacprc9mw" + } + } +}; + +/** + * Returns the registry entry for the selected network. + */ +export function getTxBuilderNetworkRegistry(network, registry = TX_BUILDER_REGISTRY) { + return registry[network]; +} + +/** + * Returns the RealFi request script address for the selected network. + * + * @deprecated V1_0 only. Prefer the version-aware SDK continuation builder. + */ +export function getRealFiRequestAddress(network, registry = TX_BUILDER_REGISTRY) { + return requestAddressFromRegistry(getTxBuilderNetworkRegistry(network, registry).realfi.requestAddress, network, "RealFi"); +} + +/** + * Returns the Sundae V3 request script address for the selected network. + */ +export function getSundaeV3RequestAddress(network, registry = TX_BUILDER_REGISTRY) { + return requestAddressFromRegistry(getTxBuilderNetworkRegistry(network, registry).sundaeV3.requestAddress, network, "Sundae V3"); +} + +/** + * Creates a network-scoped flow builder that fills request script addresses from + * the registry before building the right-folded transaction flow. + */ +export function createTxFlowBuilder({ + network, + registry = TX_BUILDER_REGISTRY +}) { + const sundaeV3 = step => ({ + ...step, + kind: "sundae-v3", + network, + address: getSundaeV3RequestAddress(network, registry) + }); + return { + network, + realfi: step => ({ + ...step, + kind: "realfi", + address: getRealFiRequestAddress(network, registry) + }), + realfiStake: ({ + amount, + vaultRatio, + slippageToleranceBps, + ...step + }) => ({ + ...step, + kind: "realfi", + address: getRealFiRequestAddress(network, registry), + action: buildRealFiStakeAction({ + amount, + vaultRatio, + slippageToleranceBps + }) + }), + sundaeV3, + sundaeV3SwapToStake: async ({ + sdk, + swap, + finalStep, + stake + }) => { + if (!swap.ownerAddress) { + throw new Error("Sundae V3 swap-to-stake requires ownerAddress so the swap remains cancellable"); + } + // Default the inner RealFi order's owner to the Sundae leg's owner, so + // one address retains cancellation authority over both legs unless the + // caller deliberately splits it via `stake.owner`. + const continuation = await sdk.buildStakeContinuation({ + owner: realfiOwnerFromSundaeV3OwnerAddress(network, swap.ownerAddress), + ...stake, + swap: swap.order, + destination: realfiDestinationFromStepResult(finalStep) + }); + return buildSundaeV3TxFlowStep(sundaeV3(swap), continuation); + }, + build: buildTxFlow, + toOutput: txBuilderFlowResultToCoreOutput + }; +} +function requestAddressFromRegistry(requestAddress, network, protocol) { + if (!requestAddress) { + throw new Error(`No ${protocol} request address configured for ${network}. Add it to the tx-builder registry before building this step.`); + } + return Core.Address.fromBech32(requestAddress); +} +//# sourceMappingURL=registry.js.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/esm/tx-builder/registry.js.map b/modules/realfi-partner-sdk/dist/esm/tx-builder/registry.js.map new file mode 100644 index 0000000000..4bc6a0a192 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/esm/tx-builder/registry.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry.js","names":["Core","buildRealFiStakeAction","buildSundaeV3TxFlowStep","buildTxFlow","txBuilderFlowResultToCoreOutput","realfiOwnerFromSundaeV3OwnerAddress","realfiDestinationFromStepResult","TX_BUILDER_REGISTRY","preview","realfi","sundaeV3","requestAddress","preprod","mainnet","getTxBuilderNetworkRegistry","network","registry","getRealFiRequestAddress","requestAddressFromRegistry","getSundaeV3RequestAddress","createTxFlowBuilder","step","kind","address","realfiStake","amount","vaultRatio","slippageToleranceBps","action","sundaeV3SwapToStake","sdk","swap","finalStep","stake","ownerAddress","Error","continuation","buildStakeContinuation","owner","order","destination","build","toOutput","protocol","Address","fromBech32"],"sources":["../../../src/tx-builder/registry.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\n\nimport { Core } from \"@blaze-cardano/sdk\";\nimport type { TSupportedNetworks } from \"@sundaeswap/core\";\n\nimport type {\n IBuildStakeContinuationParams,\n IStakeContinuation,\n} from \"../sdk/v1/family.js\";\nimport {\n buildRealFiStakeAction,\n buildSundaeV3TxFlowStep,\n buildTxFlow,\n txBuilderFlowResultToCoreOutput,\n type RealFiTxFlowStep,\n type RealFiStakeActionInput,\n type SundaeV3TxFlowStep,\n type TxBuilderFinalStep,\n type TxBuilderFlowResult,\n type TxFlowStep,\n} from \"./flow.js\";\nimport {\n realfiOwnerFromSundaeV3OwnerAddress,\n realfiDestinationFromStepResult,\n} from \"./destination.js\";\n\ntype TxFlowStepInput = TStep extends unknown\n ? Omit\n : never;\n\nexport type TxBuilderNetwork = TSupportedNetworks;\n\nexport interface TxBuilderProtocolRegistry {\n requestAddress?: string;\n}\n\nexport interface TxBuilderNetworkRegistry {\n realfi: TxBuilderProtocolRegistry;\n sundaeV3: TxBuilderProtocolRegistry;\n}\n\nexport type TxBuilderRegistry = Record<\n TxBuilderNetwork,\n TxBuilderNetworkRegistry\n>;\n\n/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */\nexport type RealFiTxFlowStepInput = TxFlowStepInput;\n\n/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */\nexport type RealFiStakeTxFlowStepInput = Omit &\n RealFiStakeActionInput;\n\nexport type SundaeV3TxFlowStepInput = TxFlowStepInput;\n\nexport type SundaeV3SwapTxFlowStepInput = Extract<\n SundaeV3TxFlowStepInput,\n { orderKind: \"swap\" }\n>;\n\n/** A swap leg with explicit cancellation authority for the routed order. */\nexport type SundaeV3OwnedSwapTxFlowStepInput = Omit<\n SundaeV3SwapTxFlowStepInput,\n \"ownerAddress\"\n> & {\n ownerAddress: string;\n};\n\n/**\n * Any SDK instance exposing `buildStakeContinuation` — the partner facade's\n * per-build dispatcher, an `\"at-init\"` instance, or a raw version-pinned SDK.\n * Only the per-build dispatcher fails closed on a stale protocol version;\n * the others carry no such guarantee.\n */\nexport interface StakeContinuationBuilder {\n buildStakeContinuation(\n params: IBuildStakeContinuationParams,\n ): Promise;\n}\n\n/**\n * @deprecated Prefer `RealfiSDK.sundae.create(blaze).buildSwapToStakeOrderTx`.\n * This input belongs to the lower-level, V3-only flow composer.\n */\nexport interface SundaeV3SwapToStakeInput {\n sdk: StakeContinuationBuilder;\n swap: SundaeV3OwnedSwapTxFlowStepInput;\n finalStep: TxBuilderFinalStep;\n stake?: Omit;\n}\n\nexport interface CreateTxFlowBuilderOptions {\n network: TxBuilderNetwork;\n registry?: TxBuilderRegistry;\n}\n\nexport interface TxFlowBuilder {\n network: TxBuilderNetwork;\n /** @deprecated V1_0 only. Prefer `sundaeV3SwapToStake`. */\n realfi: (step: RealFiTxFlowStepInput) => RealFiTxFlowStep;\n /** @deprecated V1_0 only. Prefer `sundaeV3SwapToStake`. */\n realfiStake: (step: RealFiStakeTxFlowStepInput) => RealFiTxFlowStep;\n sundaeV3: (step: SundaeV3TxFlowStepInput) => SundaeV3TxFlowStep;\n /**\n * @deprecated Prefer `RealfiSDK.sundae.create(blaze).buildSwapToStakeOrderTx`,\n * which builds the complete V3 or Stableswaps order transaction.\n */\n sundaeV3SwapToStake: (\n input: SundaeV3SwapToStakeInput,\n ) => Promise;\n build: (\n steps: readonly TxFlowStep[],\n finalStep: TxBuilderFinalStep,\n ) => TxBuilderFlowResult;\n toOutput: (result: TxBuilderFlowResult) => Core.TransactionOutput;\n}\n\n/**\n * Default request address registry. Sundae V3 entries are enterprise order\n * script addresses. The RealFi entry is a legacy V1_0-only path; preview runs\n * V1_1, so its old V1_0 address is deliberately unset. New stake continuations\n * derive the live address from the version-aware SDK instead.\n */\nexport const TX_BUILDER_REGISTRY = {\n preview: {\n realfi: {},\n sundaeV3: {\n requestAddress:\n \"addr_test1wr866xg5kkvarzll69xjh0tfvqvu9zvuhht2qve9ehmgp0qfgf3wc\",\n },\n },\n preprod: {\n realfi: {\n requestAddress:\n \"addr_test1wrkgqyfrz7qhlhu737nf4v5dllypylasaqruphlul5jhpeczfzjzl\",\n },\n sundaeV3: {\n requestAddress:\n \"addr_test1wz5cn230um3cve5gvvgk9kxveqcd888r3vl3rtxn3qxpvhcv0tzpr\",\n },\n },\n mainnet: {\n realfi: {},\n sundaeV3: {\n requestAddress:\n \"addr1w8ax5k9mutg07p2ngscu3chsauktmstq92z9de938j8nqacprc9mw\",\n },\n },\n} satisfies TxBuilderRegistry;\n\n/**\n * Returns the registry entry for the selected network.\n */\nexport function getTxBuilderNetworkRegistry(\n network: TxBuilderNetwork,\n registry: TxBuilderRegistry = TX_BUILDER_REGISTRY,\n): TxBuilderNetworkRegistry {\n return registry[network];\n}\n\n/**\n * Returns the RealFi request script address for the selected network.\n *\n * @deprecated V1_0 only. Prefer the version-aware SDK continuation builder.\n */\nexport function getRealFiRequestAddress(\n network: TxBuilderNetwork,\n registry: TxBuilderRegistry = TX_BUILDER_REGISTRY,\n): Core.Address {\n return requestAddressFromRegistry(\n getTxBuilderNetworkRegistry(network, registry).realfi.requestAddress,\n network,\n \"RealFi\",\n );\n}\n\n/**\n * Returns the Sundae V3 request script address for the selected network.\n */\nexport function getSundaeV3RequestAddress(\n network: TxBuilderNetwork,\n registry: TxBuilderRegistry = TX_BUILDER_REGISTRY,\n): Core.Address {\n return requestAddressFromRegistry(\n getTxBuilderNetworkRegistry(network, registry).sundaeV3.requestAddress,\n network,\n \"Sundae V3\",\n );\n}\n\n/**\n * Creates a network-scoped flow builder that fills request script addresses from\n * the registry before building the right-folded transaction flow.\n */\nexport function createTxFlowBuilder({\n network,\n registry = TX_BUILDER_REGISTRY,\n}: CreateTxFlowBuilderOptions): TxFlowBuilder {\n const sundaeV3 = (step: SundaeV3TxFlowStepInput): SundaeV3TxFlowStep =>\n ({\n ...step,\n kind: \"sundae-v3\",\n network,\n address: getSundaeV3RequestAddress(network, registry),\n }) as SundaeV3TxFlowStep;\n\n return {\n network,\n realfi: (step) => ({\n ...step,\n kind: \"realfi\",\n address: getRealFiRequestAddress(network, registry),\n }),\n realfiStake: ({ amount, vaultRatio, slippageToleranceBps, ...step }) => ({\n ...step,\n kind: \"realfi\",\n address: getRealFiRequestAddress(network, registry),\n action: buildRealFiStakeAction({\n amount,\n vaultRatio,\n slippageToleranceBps,\n }),\n }),\n sundaeV3,\n sundaeV3SwapToStake: async ({ sdk, swap, finalStep, stake }) => {\n if (!swap.ownerAddress) {\n throw new Error(\n \"Sundae V3 swap-to-stake requires ownerAddress so the swap remains cancellable\",\n );\n }\n // Default the inner RealFi order's owner to the Sundae leg's owner, so\n // one address retains cancellation authority over both legs unless the\n // caller deliberately splits it via `stake.owner`.\n const continuation = await sdk.buildStakeContinuation({\n owner: realfiOwnerFromSundaeV3OwnerAddress(network, swap.ownerAddress),\n ...stake,\n swap: swap.order,\n destination: realfiDestinationFromStepResult(finalStep),\n });\n return buildSundaeV3TxFlowStep(sundaeV3(swap), continuation);\n },\n build: buildTxFlow,\n toOutput: txBuilderFlowResultToCoreOutput,\n };\n}\n\nfunction requestAddressFromRegistry(\n requestAddress: string | undefined,\n network: TxBuilderNetwork,\n protocol: string,\n): Core.Address {\n if (!requestAddress) {\n throw new Error(\n `No ${protocol} request address configured for ${network}. Add it to the tx-builder registry before building this step.`,\n );\n }\n\n return Core.Address.fromBech32(requestAddress);\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/index.d.ts b/modules/realfi-partner-sdk/dist/types/admin/index.d.ts new file mode 100644 index 0000000000..3b44d1693a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/index.d.ts @@ -0,0 +1,2 @@ +export * from "./settings/index.js"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/admin/index.d.ts.map new file mode 100644 index 0000000000..761f1e3b9c --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/admin/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/settings/index.d.ts b/modules/realfi-partner-sdk/dist/types/admin/settings/index.d.ts new file mode 100644 index 0000000000..a3d4f47cfa --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/settings/index.d.ts @@ -0,0 +1,4 @@ +export * from "./types.js"; +export * from "./utils.js"; +export * from "./protocol-settings.js"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/settings/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/admin/settings/index.d.ts.map new file mode 100644 index 0000000000..28c94ed059 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/settings/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/admin/settings/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,wBAAwB,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/settings/protocol-settings.d.ts b/modules/realfi-partner-sdk/dist/types/admin/settings/protocol-settings.d.ts new file mode 100644 index 0000000000..a01d43a18c --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/settings/protocol-settings.d.ts @@ -0,0 +1,2 @@ +export * from "./v1_1_rc1.js"; +//# sourceMappingURL=protocol-settings.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/settings/protocol-settings.d.ts.map b/modules/realfi-partner-sdk/dist/types/admin/settings/protocol-settings.d.ts.map new file mode 100644 index 0000000000..99c602d21b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/settings/protocol-settings.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"protocol-settings.d.ts","sourceRoot":"","sources":["../../../../src/admin/settings/protocol-settings.ts"],"names":[],"mappings":"AAEA,cAAc,eAAe,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/settings/types.d.ts b/modules/realfi-partner-sdk/dist/types/admin/settings/types.d.ts new file mode 100644 index 0000000000..78c4525071 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/settings/types.d.ts @@ -0,0 +1,111 @@ +import type { Provider } from "@blaze-cardano/query"; +import type { Blaze, Core, TxBuilder, Wallet } from "@blaze-cardano/sdk"; +import type { GovernanceConfig, MultisigScript, Permissions, ProtocolConfig, RegistryV1, SettingsV1, Tuple_VerificationKey_COSESign1 } from "../../generated-types/v1_1_rc1/index.js"; +/** + * COSE (CIP-8) signatures authorizing a settings change — `(VerificationKey, + * COSESign1)` tuples over the auth-payload hash from `getSettingsAuthPayloadHash`. + * Collected out-of-band (e.g. from hardware wallets), then passed to the build + * method — mirroring the orchestrator's `buildExecuteOrdersTx({ signatures })`. + */ +export type TSettingsSignatures = Tuple_VerificationKey_COSESign1[]; +export interface IProtocolSettingsAdminParams { + proxyPolicyId: Core.PolicyId; + governanceConfig: GovernanceConfig; + enableTrace?: boolean; + referenceInputs?: { + settingsRefInput?: Core.TransactionUnspentOutput; + }; +} +export interface IProtocolSettingsAdminSource

{ + readonly blaze: Blaze; + readonly oneShotPolicyId: Core.PolicyId; + readonly enableTrace: boolean; +} +export interface IProtocolSettingsState { + proxyUtxo: Core.TransactionUnspentOutput; + proxyDatum: Core.PlutusData; + proxyAddress: Core.Address; + logicHash: Core.ScriptHash; + settingsData: Core.PlutusData; + liveSettings?: SettingsV1; + paymentCredentialHash: string; + isFrozen: boolean; + isGovernedByThisValidator: boolean; +} +export interface IBuildChangePermissionsTxParams { + nextPermissions: Permissions; + signatures: TSettingsSignatures; +} +export interface IBuildChangeConfigTxParams { + nextConfig: ProtocolConfig; + signatures: TSettingsSignatures; +} +export interface IBuildChangeLogicTxParams { + nextLogicHash?: Core.ScriptHash; + nextRegistry?: RegistryV1; + signatures: TSettingsSignatures; +} +/** + * A settings change resolved against the current on-chain state — the shared + * intermediate used to both compute the auth-payload hash and build the tx, so + * the signed message and the submitted tx always agree. + */ +export interface IResolvedSettingsChange { + redeemer: "ChangeLogic" | "ChangePermissions" | "ChangeConfig" | "Shutdown" | "Restore" | "Migrate"; + nextLogicHash: Core.ScriptHash; + nextSettingsData: Core.PlutusData; + receiverAddress: Core.Address; + coValidateWith?: { + rewardAccount: Core.RewardAccount; + applyWitness(tx: TxBuilder): Promise; + }; +} +export interface IBuildMigrateTxParams

{ + destination: IProtocolSettingsAdminInstance; + /** COSE signatures satisfying this (source) validator's `migrate` permission. */ + signatures: TSettingsSignatures; + /** COSE signatures satisfying the destination validator's `migrate` permission. */ + destinationSignatures: TSettingsSignatures; +} +/** + * The change to authorize, passed to both `getSettingsAuthPayloadHash` (to get + * the hash to sign) and the matching build method — mirroring how the + * orchestrator passes the same order inputs to `getSignedPayloadFromOrderInputs` + * and `buildExecuteOrdersTx`. + */ +export type TSettingsChange

= { + type: "ChangePermissions"; + nextPermissions: Permissions; +} | { + type: "ChangeConfig"; + nextConfig: ProtocolConfig; +} | { + type: "ChangeLogic"; + nextLogicHash?: Core.ScriptHash; + nextRegistry?: RegistryV1; +} | { + type: "Shutdown"; +} | { + type: "Restore"; +} | { + type: "Migrate"; + destination: IProtocolSettingsAdminInstance; +}; +export interface IProtocolSettingsAdminInstance

{ + readonly blaze: Blaze; + readonly proxyPolicyId: Core.PolicyId; + readonly governanceConfig: GovernanceConfig; + readonly settingsScriptHash: Core.ScriptHash; + readonly settingsValidatorAddress: Core.Address; + readonly settingsRewardAccount: Core.RewardAccount; + readonly enableTrace: boolean; + getSettingsState(): Promise; + applySettingsWitness(tx: TxBuilder): Promise; +} +export type TGovernancePermissionKey = "logic_change" | "permission_change" | "config_change" | "shutdown" | "restore" | "migrate"; +export interface IParsedProxyDatum { + logicHash: Core.ScriptHash; + settingsData: Core.PlutusData; +} +export type TPermissionedScript = MultisigScript; +//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/settings/types.d.ts.map b/modules/realfi-partner-sdk/dist/types/admin/settings/types.d.ts.map new file mode 100644 index 0000000000..8f115e38e4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/settings/types.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/admin/settings/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEzE,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,cAAc,EACd,UAAU,EACV,UAAU,EACV,+BAA+B,EAChC,MAAM,yCAAyC,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG,+BAA+B,EAAE,CAAC;AAEpE,MAAM,WAAW,4BAA4B;IAC3C,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE;QAChB,gBAAgB,CAAC,EAAE,IAAI,CAAC,wBAAwB,CAAC;KAClD,CAAC;CACH;AAED,MAAM,WAAW,4BAA4B,CAC3C,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,MAAM;IAEhB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,IAAI,CAAC,wBAAwB,CAAC;IACzC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;IAC5B,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC;IAC3B,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC;IAC3B,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC;IAC9B,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,yBAAyB,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,+BAA+B;IAC9C,eAAe,EAAE,WAAW,CAAC;IAC7B,UAAU,EAAE,mBAAmB,CAAC;CACjC;AAED,MAAM,WAAW,0BAA0B;IACzC,UAAU,EAAE,cAAc,CAAC;IAC3B,UAAU,EAAE,mBAAmB,CAAC;CACjC;AAED,MAAM,WAAW,yBAAyB;IACxC,aAAa,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC;IAChC,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,UAAU,EAAE,mBAAmB,CAAC;CACjC;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EACJ,aAAa,GACb,mBAAmB,GACnB,cAAc,GACd,UAAU,GACV,SAAS,GACT,SAAS,CAAC;IACd,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC;IAC/B,gBAAgB,EAAE,IAAI,CAAC,UAAU,CAAC;IAClC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE;QACf,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;QAClC,YAAY,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAC5C,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM;IACzE,WAAW,EAAE,8BAA8B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClD,iFAAiF;IACjF,UAAU,EAAE,mBAAmB,CAAC;IAChC,mFAAmF;IACnF,qBAAqB,EAAE,mBAAmB,CAAC;CAC5C;AAED;;;;;GAKG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM,IAC5D;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,eAAe,EAAE,WAAW,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,UAAU,EAAE,cAAc,CAAA;CAAE,GACpD;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,aAAa,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC;IAChC,YAAY,CAAC,EAAE,UAAU,CAAC;CAC3B,GACD;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,WAAW,EAAE,8BAA8B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;CAAE,CAAC;AAE3E,MAAM,WAAW,8BAA8B,CAC7C,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,MAAM;IAEhB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC;IACtC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAC,UAAU,CAAC;IAC7C,QAAQ,CAAC,wBAAwB,EAAE,IAAI,CAAC,OAAO,CAAC;IAChD,QAAQ,CAAC,qBAAqB,EAAE,IAAI,CAAC,aAAa,CAAC;IACnD,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAE9B,gBAAgB,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACpD,oBAAoB,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpD;AAED,MAAM,MAAM,wBAAwB,GAChC,cAAc,GACd,mBAAmB,GACnB,eAAe,GACf,UAAU,GACV,SAAS,GACT,SAAS,CAAC;AAEd,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC;IAC3B,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC;CAC/B;AAED,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/settings/utils.d.ts b/modules/realfi-partner-sdk/dist/types/admin/settings/utils.d.ts new file mode 100644 index 0000000000..ff66511e39 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/settings/utils.d.ts @@ -0,0 +1,38 @@ +import { Core } from "@blaze-cardano/sdk"; +import * as V1_1Rc1Types from "../../generated-types/v1_1_rc1/index.js"; +import type { GovernanceConfig, SettingsV1, Tuple_VerificationKey_COSESign1 } from "../../generated-types/v1_1_rc1/index.js"; +import type { IParsedProxyDatum } from "./types.js"; +export declare const SETTINGS_FROZEN_CONSTR = 1n; +export declare function createSettingsValidatorScript(proxyPolicyId: Core.PolicyId, governanceConfig: GovernanceConfig, enableTrace?: boolean): Core.Script; +export declare function createSettingsValidatorAddress(network: Core.NetworkId, proxyPolicyId: Core.PolicyId, governanceConfig: GovernanceConfig, enableTrace?: boolean): Core.Address; +export declare function parseProxyDatumRaw(datum: Core.PlutusData): IParsedProxyDatum; +export declare function buildRawProxyDatum(logicHash: Core.ScriptHash, settingsData: Core.PlutusData): Core.PlutusData; +export declare function getSettingsAlternative(settingsData: Core.PlutusData): bigint; +export declare function isFrozenSettingsData(settingsData: Core.PlutusData): boolean; +export declare function freezeSettingsData(settingsData: Core.PlutusData): Core.PlutusData; +export declare function unwrapFrozenSettingsData(settingsData: Core.PlutusData): Core.PlutusData; +export declare function parseLiveSettings(settingsData: Core.PlutusData): SettingsV1 | undefined; +export declare function serializeSettings(settings: SettingsV1): Core.PlutusData; +export declare function serializeSettingsRedeemer(redeemer: V1_1Rc1Types.SettingsRedeemer): Core.PlutusData; +/** + * Serialize the `SettingsAuthPayload` the on-chain validator reconstructs from + * the proxy in/out and hashes. `datum` is the resulting proxy output datum + * (`{ logic, settings }`); `nonce` is the proxy input's `OutputReference`. + * + * The `SettingsAuthPayload` schema is emitted into the blueprint via the + * `documentation` validator (see `validators/v1_1_rc1/documentation.ak`), so we + * serialize against the generated type rather than hand-building PlutusData. + */ +export declare function buildSettingsAuthPayload(change: V1_1Rc1Types.SettingsRedeemer, destinationScriptHash: Core.ScriptHash, nextLogicHash: Core.ScriptHash, nextSettingsData: Core.PlutusData, nonce: Core.TransactionInput): Core.PlutusData; +/** + * blake2b-256 of the auth payload's CBOR — the 32-byte message each governance + * signer COSE-signs (CIP-8). Mirrors the on-chain + * `blake2b_256(cbor.serialise(payload))` and the orchestrator's payload hashing. + */ +export declare function hashSettingsAuthPayload(payload: Core.PlutusData): string; +/** + * The withdraw-handler redeemer: the change-class selector plus the COSE + * signatures authorizing it (the payload itself is reconstructed on-chain). + */ +export declare function serializeSettingsSignedRedeemer(change: V1_1Rc1Types.SettingsRedeemer, signatures: Tuple_VerificationKey_COSESign1[]): Core.PlutusData; +//# sourceMappingURL=utils.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/settings/utils.d.ts.map b/modules/realfi-partner-sdk/dist/types/admin/settings/utils.d.ts.map new file mode 100644 index 0000000000..45b2c8c6c4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/settings/utils.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/admin/settings/utils.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,OAAO,KAAK,YAAY,MAAM,yCAAyC,CAAC;AACxE,OAAO,KAAK,EACV,gBAAgB,EAChB,UAAU,EACV,+BAA+B,EAChC,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC,wBAAgB,6BAA6B,CAC3C,aAAa,EAAE,IAAI,CAAC,QAAQ,EAC5B,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,UAAQ,GAClB,IAAI,CAAC,MAAM,CAMb;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,IAAI,CAAC,SAAS,EACvB,aAAa,EAAE,IAAI,CAAC,QAAQ,EAC5B,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,UAAQ,GAClB,IAAI,CAAC,OAAO,CAOd;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAgB5E;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,IAAI,CAAC,UAAU,EAC1B,YAAY,EAAE,IAAI,CAAC,UAAU,GAC5B,IAAI,CAAC,UAAU,CAOjB;AAED,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,GAAG,MAAM,CAM5E;AAED,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,GAAG,OAAO,CAE3E;AAED,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,IAAI,CAAC,UAAU,GAC5B,IAAI,CAAC,UAAU,CAMjB;AAED,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,IAAI,CAAC,UAAU,GAC5B,IAAI,CAAC,UAAU,CAMjB;AAED,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,IAAI,CAAC,UAAU,GAC5B,UAAU,GAAG,SAAS,CAKxB;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,UAAU,GAAG,IAAI,CAAC,UAAU,CAEvE;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,YAAY,CAAC,gBAAgB,GACtC,IAAI,CAAC,UAAU,CAEjB;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,YAAY,CAAC,gBAAgB,EACrC,qBAAqB,EAAE,IAAI,CAAC,UAAU,EACtC,aAAa,EAAE,IAAI,CAAC,UAAU,EAC9B,gBAAgB,EAAE,IAAI,CAAC,UAAU,EACjC,KAAK,EAAE,IAAI,CAAC,gBAAgB,GAC3B,IAAI,CAAC,UAAU,CAWjB;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,GAAG,MAAM,CAExE;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,YAAY,CAAC,gBAAgB,EACrC,UAAU,EAAE,+BAA+B,EAAE,GAC5C,IAAI,CAAC,UAAU,CAKjB"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/settings/v1_1_rc1.d.ts b/modules/realfi-partner-sdk/dist/types/admin/settings/v1_1_rc1.d.ts new file mode 100644 index 0000000000..e846430424 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/settings/v1_1_rc1.d.ts @@ -0,0 +1,82 @@ +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, type TxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import type { GovernanceConfig } from "../../generated-types/v1_1_rc1/index.js"; +import type { IBuildChangeConfigTxParams, IBuildChangeLogicTxParams, IBuildChangePermissionsTxParams, IBuildMigrateTxParams, IProtocolSettingsAdminInstance, IProtocolSettingsAdminParams, IProtocolSettingsAdminSource, IProtocolSettingsState, TSettingsChange, TSettingsSignatures } from "./types.js"; +export declare class RealfiProtocolSettingsAdmin

implements IProtocolSettingsAdminInstance { + readonly blaze: Blaze; + readonly proxyPolicyId: Core.PolicyId; + readonly governanceConfig: GovernanceConfig; + readonly settingsScript: Core.Script; + readonly settingsScriptHash: Core.ScriptHash; + readonly settingsValidatorAddress: Core.Address; + readonly settingsRewardAccount: Core.RewardAccount; + readonly enableTrace: boolean; + private settingsRefInput?; + private constructor(); + static create

(blaze: Blaze, params: IProtocolSettingsAdminParams): RealfiProtocolSettingsAdmin; + static fromProtocolSdk

(sdk: IProtocolSettingsAdminSource, params: Omit & { + enableTrace?: boolean; + }): RealfiProtocolSettingsAdmin; + deploySettingsValidator(): Promise; + registerSettingsStake(): TxBuilder; + getSettingsState(): Promise; + buildDepositProxyTx(): Promise; + /** + * Compute the 32-byte auth-payload hash the governance keys must COSE-sign for + * `change`, against the current on-chain proxy state. Two-phase, mirroring the + * orchestrator's `getSignedPayloadFromOrderInputs`: get this hash, collect the + * signatures out-of-band, then pass them to the matching build method. The + * proxy UTxO must be unchanged between the two calls (it is the nonce). + */ + getSettingsAuthPayloadHash(change: TSettingsChange): Promise; + buildChangePermissionsTx(params: IBuildChangePermissionsTxParams): Promise; + buildChangeConfigTx(params: IBuildChangeConfigTxParams): Promise; + buildChangeLogicTx(params: IBuildChangeLogicTxParams): Promise; + buildShutdownTx(params: { + signatures: TSettingsSignatures; + }): Promise; + buildRestoreTx(params: { + signatures: TSettingsSignatures; + }): Promise; + buildMigrateTx(params: IBuildMigrateTxParams): Promise; + /** + * Resolve a change against the current state into the concrete redeemer + + * resulting proxy output (logic, canonical settings, destination). Shared by + * `getSettingsAuthPayloadHash` and `buildChange` so the signed hash and the + * submitted tx always describe the same resulting state. Settings read from + * chain are canonicalized through the typed schema (see `canonicalizeSettings`) + * so blaze's encoding matches the validator's `cbor.serialise`. + */ + private resolveChange; + private requireLive; + /** + * Re-serialize live settings through the typed schema so the CBOR matches the + * validator's `cbor.serialise` of the parsed output datum. Settings read from + * chain and re-embedded opaquely (Restore's unwrap, Migrate's passthrough) + * otherwise don't. Frozen settings aren't a `SettingsV1`, so pass through. + */ + private canonicalizeSettings; + private buildChange; + /** + * The value to put on a settings output carrying `datum`, topped up to the + * min-ADA floor for that datum when the incoming coin no longer covers it. + * + * A settings edit can grow the datum (appending a reserve asset, a larger + * registry), and the coin comes from the UTxO being spent, which was sized + * for the *previous* datum. `TxBuilder` would raise an under-funded output to + * the floor on its way out, but that happens after balancing has already + * decided what to draw from the wallet, so the bump is never funded and the + * built transaction is short by exactly that amount. Reserving it here means + * `complete()` treats the growth as an ordinary larger payment from the first + * iteration. + * + * The floor is recomputed after each raise: a larger coin is itself a few + * bytes wider on the wire, which can lift the floor again. + */ + private valueWithDatumMinAda; + /** The payment-credential script hash of a settings validator address. */ + private scriptHashOfAddress; + private requireGovernedState; + applySettingsWitness(tx: TxBuilder): Promise; +} +//# sourceMappingURL=v1_1_rc1.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/admin/settings/v1_1_rc1.d.ts.map b/modules/realfi-partner-sdk/dist/types/admin/settings/v1_1_rc1.d.ts.map new file mode 100644 index 0000000000..e9d6e14bff --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/admin/settings/v1_1_rc1.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"v1_1_rc1.d.ts","sourceRoot":"","sources":["../../../../src/admin/settings/v1_1_rc1.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/client.d.ts b/modules/realfi-partner-sdk/dist/types/api/client.d.ts new file mode 100644 index 0000000000..5a85031a9a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/client.d.ts @@ -0,0 +1,8 @@ +/** POST a GraphQL query and return its `data`, throwing on HTTP or GraphQL errors. */ +export declare function gqlRequest(url: string, query: string, variables?: Record, clientId?: string): Promise; +/** + * Derive the payment (and stake, when present) key hashes from a bech32 address. + * Wallet-keyed queries match on any supplied hash. + */ +export declare function ownerKeyHashes(address: string): string[]; +//# sourceMappingURL=client.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/client.d.ts.map b/modules/realfi-partner-sdk/dist/types/api/client.d.ts.map new file mode 100644 index 0000000000..0b742ce65b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/client.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/api/client.ts"],"names":[],"mappings":"AAOA,sFAAsF;AACtF,wBAAsB,UAAU,CAAC,CAAC,EAChC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,CAAC,CAAC,CAyBZ;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAKxD"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/index.d.ts b/modules/realfi-partner-sdk/dist/types/api/index.d.ts new file mode 100644 index 0000000000..e2094b1027 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/index.d.ts @@ -0,0 +1,5 @@ +export { RealfiApi, type IRealfiApiSDK } from "./realfi-api.js"; +export { API_REGISTRY } from "./registry.js"; +export type { IApiEndpoints, TApiNetwork } from "./registry.js"; +export type { IApiOrderUtxo, IOrderFees, IOrderInfo, IPartnerConfig, IPartnerLimits, IPointsBalance, IReferrerCode, IStakeTimes, IYieldBreakdown, TOrderAction, TOrderStatus, } from "./types.js"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/api/index.d.ts.map new file mode 100644 index 0000000000..b19611473b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAChE,YAAY,EACV,aAAa,EACb,UAAU,EACV,UAAU,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,aAAa,EACb,WAAW,EACX,eAAe,EACf,YAAY,EACZ,YAAY,GACb,MAAM,YAAY,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/partner-config.d.ts b/modules/realfi-partner-sdk/dist/types/api/partner-config.d.ts new file mode 100644 index 0000000000..7cd17b69ca --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/partner-config.d.ts @@ -0,0 +1,4 @@ +import type { IPartnerConfig } from "./types.js"; +/** Validate untrusted JSON and return fresh partner-owned values. */ +export declare function parsePartnerConfig(value: unknown): IPartnerConfig; +//# sourceMappingURL=partner-config.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/partner-config.d.ts.map b/modules/realfi-partner-sdk/dist/types/api/partner-config.d.ts.map new file mode 100644 index 0000000000..d63cb0e327 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/partner-config.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"partner-config.d.ts","sourceRoot":"","sources":["../../../src/api/partner-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAkDjD,qEAAqE;AACrE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc,CA8BjE"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/queries.d.ts b/modules/realfi-partner-sdk/dist/types/api/queries.d.ts new file mode 100644 index 0000000000..21c198e3a1 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/queries.d.ts @@ -0,0 +1,94 @@ +import type { TOrderAction, TOrderStatus } from "./types.js"; +export declare const STAKE_TIMES_QUERY = "{\n stakeTimes {\n CurrentCooldownPeriodEnd { slot }\n NextCooldownPeriodEnd { slot }\n }\n}"; +export interface IRawStakeTimes { + stakeTimes: { + CurrentCooldownPeriodEnd: { + slot: number; + }; + NextCooldownPeriodEnd: { + slot: number; + }; + }; +} +export declare const ORDER_FEES_QUERY = "{ orderFees { mintBps redeemBps } }"; +export interface IRawOrderFees { + orderFees: { + mintBps: number; + redeemBps: number; + }; +} +export declare const SUSDR_EXCHANGE_RATE_INPUTS_QUERY = "{\n susdrExchangeRateInputs {\n circulatingSusdr\n vaultUsdr\n pendingYield\n diffusionStartUnixMilli\n diffusionEndUnixMilli\n }\n}"; +export interface IRawSusdrExchangeRateInputs { + susdrExchangeRateInputs: { + circulatingSusdr: string; + vaultUsdr: string; + pendingYield: string; + diffusionStartUnixMilli: string; + diffusionEndUnixMilli: string; + }; +} +export declare const YIELD_BREAKDOWN_QUERY = "query ($owner: String!) {\n susdrYieldBreakdown(owner: $owner) {\n totalSUSDr\n totalUSDrValue\n principal\n yield\n yieldPercent\n }\n}"; +export interface IRawYieldBreakdown { + susdrYieldBreakdown: { + totalSUSDr: string; + totalUSDrValue: string; + principal: string; + yield: string; + yieldPercent: number; + }; +} +export declare const ORDERS_BY_OWNER_QUERY = "query ($owner: String!, $status: OrderStatus!) {\n ordersByOwner(owner: $owner, status: $status) {\n status\n order {\n Owner\n Action\n Amount\n Principal\n Yield\n Slot\n Forfeit\n UnlockSlot\n MatureSlot\n ClaimTxHash\n Version\n utxo { txHash index }\n resultUtxo { txHash index }\n }\n }\n}"; +export interface IRawUtxo { + txHash: string; + index: number; +} +export interface IRawOrder { + Owner: string; + Action: TOrderAction; + Amount: string; + Principal: string | null; + Yield: string | null; + Slot: string; + Forfeit: string; + UnlockSlot: string | null; + MatureSlot: string | null; + ClaimTxHash: string | null; + Version: string; + utxo: IRawUtxo; + resultUtxo: IRawUtxo | null; +} +export interface IRawOrdersByOwner { + ordersByOwner: { + status: TOrderStatus; + order: IRawOrder; + }[]; +} +export declare const POINTS_BALANCE_QUERY = "query ($value: String!) {\n V_WALLET_POINTS_BALANCE(\n filters: [{ field: \"WALLET_ADDRESS\", operator: IN, value: $value }]\n ) {\n nodes { WALLET_POINTS_BALANCE }\n }\n}"; +export interface IRawPointsBalance { + V_WALLET_POINTS_BALANCE: { + nodes: { + WALLET_POINTS_BALANCE: string | null; + }[]; + }; +} +export interface IRawPointsBalanceData { + current_balance?: number; + potential_points?: number; + day_multiplier?: number; +} +export declare const REFERRER_CODE_QUERY = "query ($walletAddress: String!) {\n referrerCode(walletAddress: $walletAddress) { code createdAt }\n}"; +export interface IRawReferrerCode { + referrerCode: { + code: string; + createdAt: string; + } | null; +} +export declare const REFERRAL_REWARDS_QUERY = "query ($walletAddress: String!) {\n referralRewards(walletAddress: $walletAddress)\n}"; +export interface IRawReferralRewards { + referralRewards: number | null; +} +export declare const INVITED_COUNT_QUERY = "query ($walletAddress: String!) {\n invitedCount(walletAddress: $walletAddress)\n}"; +export interface IRawInvitedCount { + invitedCount: number | null; +} +//# sourceMappingURL=queries.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/queries.d.ts.map b/modules/realfi-partner-sdk/dist/types/api/queries.d.ts.map new file mode 100644 index 0000000000..263878594b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/queries.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../src/api/queries.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE7D,eAAO,MAAM,iBAAiB,yGAK5B,CAAC;AAEH,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE;QACV,wBAAwB,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QAC3C,qBAAqB,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;KACzC,CAAC;CACH;AAED,eAAO,MAAM,gBAAgB,wCAAwC,CAAC;AAEtE,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACnD;AAED,eAAO,MAAM,gCAAgC,0JAQ3C,CAAC;AAEH,MAAM,WAAW,2BAA2B;IAC1C,uBAAuB,EAAE;QACvB,gBAAgB,EAAE,MAAM,CAAC;QACzB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,uBAAuB,EAAE,MAAM,CAAC;QAChC,qBAAqB,EAAE,MAAM,CAAC;KAC/B,CAAC;CACH;AAED,eAAO,MAAM,qBAAqB,8JAQhC,CAAC;AAEH,MAAM,WAAW,kBAAkB;IACjC,mBAAmB,EAAE;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED,eAAO,MAAM,qBAAqB,wXAmBhC,CAAC;AAEH,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE;QAAE,MAAM,EAAE,YAAY,CAAC;QAAC,KAAK,EAAE,SAAS,CAAA;KAAE,EAAE,CAAC;CAC7D;AAED,eAAO,MAAM,oBAAoB,yLAM/B,CAAC;AAEH,MAAM,WAAW,iBAAiB;IAChC,uBAAuB,EAAE;QACvB,KAAK,EAAE;YAAE,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,EAAE,CAAC;KACnD,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,mBAAmB,2GAE9B,CAAC;AAEH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC1D;AAED,eAAO,MAAM,sBAAsB,2FAEjC,CAAC;AAEH,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,eAAO,MAAM,mBAAmB,wFAE9B,CAAC;AAEH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/realfi-api.d.ts b/modules/realfi-partner-sdk/dist/types/api/realfi-api.d.ts new file mode 100644 index 0000000000..bc51d50eaa --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/realfi-api.d.ts @@ -0,0 +1,52 @@ +import type { ISusdrExchangeRateInputs } from "../sdk/v1_1_rc1/diffusion.js"; +import { type IApiEndpoints, type TApiNetwork } from "./registry.js"; +import type { IOrderFees, IOrderInfo, IPartnerConfig, IPointsBalance, IReferrerCode, IStakeTimes, IYieldBreakdown, TOrderStatus } from "./types.js"; +/** Off-chain RealFi data: order status, stake times, yield, fees, points, referrals. */ +export interface IRealfiApiSDK { + /** Product-curated swap lists and USD UX limits from deployed runtime config. */ + getPartnerConfig(): Promise; + /** Cooldown boundary slots for unstaking. */ + getStakeTimes(): Promise; + /** The slot to pass as an unstake `unlockSlot` (the next cooldown boundary). */ + getCooldownUnlockSlot(): Promise; + /** Orders owned by `address` across the given statuses (default: all tracked). */ + getOrdersByOwner(address: string, statuses?: TOrderStatus[]): Promise; + /** Per-action minimum-fee policy (basis points). */ + getOrderFees(): Promise; + /** Inputs for calculating the diffusion-aware USDr-per-sUSDr rate. */ + getSusdrExchangeRateInputs(): Promise; + /** Yield owed on a wallet's sUSDr holdings. */ + getYieldBreakdown(address: string): Promise; + /** A wallet's points balance. */ + getPointsBalance(address: string): Promise; + /** A wallet's referral code, or null if none. */ + getReferrerCode(address: string): Promise; + /** Cumulative referral-bonus points credited to a wallet. */ + getReferralRewards(address: string): Promise; + /** Number of referees a wallet has invited. */ + getInvitedCount(address: string): Promise; +} +/** + * Off-chain GraphQL reads. Construct with {@link RealfiApi.forNetwork} or + * {@link RealfiApi.create}; no Blaze instance required. + */ +export declare class RealfiApi implements IRealfiApiSDK { + private readonly endpoints; + private readonly clientId; + private constructor(); + private request; + static forNetwork(network: TApiNetwork, clientId?: string): IRealfiApiSDK; + static create(endpoints: IApiEndpoints, clientId?: string): IRealfiApiSDK; + getPartnerConfig(): Promise; + getStakeTimes(): Promise; + getCooldownUnlockSlot(): Promise; + getOrdersByOwner(address: string, statuses?: TOrderStatus[]): Promise; + getOrderFees(): Promise; + getSusdrExchangeRateInputs(): Promise; + getYieldBreakdown(address: string): Promise; + getPointsBalance(address: string): Promise; + getReferrerCode(address: string): Promise; + getReferralRewards(address: string): Promise; + getInvitedCount(address: string): Promise; +} +//# sourceMappingURL=realfi-api.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/realfi-api.d.ts.map b/modules/realfi-partner-sdk/dist/types/api/realfi-api.d.ts.map new file mode 100644 index 0000000000..25e81ff01b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/realfi-api.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"realfi-api.d.ts","sourceRoot":"","sources":["../../../src/api/realfi-api.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAyB7E,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,WAAW,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,cAAc,EACd,aAAa,EACb,WAAW,EACX,eAAe,EACf,YAAY,EACb,MAAM,YAAY,CAAC;AAWpB,wFAAwF;AACxF,MAAM,WAAW,aAAa;IAC5B,iFAAiF;IACjF,gBAAgB,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;IAC5C,6CAA6C;IAC7C,aAAa,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IACtC,gFAAgF;IAChF,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACzC,kFAAkF;IAClF,gBAAgB,CACd,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,YAAY,EAAE,GACxB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACzB,oDAAoD;IACpD,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IACpC,sEAAsE;IACtE,0BAA0B,IAAI,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAChE,+CAA+C;IAC/C,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC7D,iCAAiC;IACjC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3D,iDAAiD;IACjD,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAChE,6DAA6D;IAC7D,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5D,+CAA+C;IAC/C,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC1D;AAuBD;;;GAGG;AACH,qBAAa,SAAU,YAAW,aAAa;IAE3C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAF3B,OAAO;IAKP,OAAO,CAAC,OAAO;IAQf,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa;IAIzE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa;IAInE,gBAAgB,IAAI,OAAO,CAAC,cAAc,CAAC;IA4B3C,aAAa,IAAI,OAAO,CAAC,WAAW,CAAC;IAarC,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIxC,gBAAgB,CACpB,OAAO,EAAE,MAAM,EACf,QAAQ,GAAE,YAAY,EAA2B,GAChD,OAAO,CAAC,UAAU,EAAE,CAAC;IA0BlB,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC;IAQnC,0BAA0B,IAAI,OAAO,CAAC,wBAAwB,CAAC;IAe/D,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAoB5D,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAmB1D,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAS/D,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAS3D,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAQ/D"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/registry.d.ts b/modules/realfi-partner-sdk/dist/types/api/registry.d.ts new file mode 100644 index 0000000000..f2744b4029 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/registry.d.ts @@ -0,0 +1,15 @@ +export type TApiNetwork = "mainnet" | "preprod" | "preview"; +export interface IApiEndpoints { + /** Main RealFi GraphQL API — orders, stake times, yield, fees, wallet status. */ + realfiUrl: string; + /** Asset-transparency GraphQL API — points and referral reads. */ + assetTransparencyUrl: string; + /** + * Sanitized partner runtime configuration. Optional only for backwards + * compatibility with custom endpoint objects created before this read was + * added; `getPartnerConfig()` requires it. + */ + partnerConfigUrl?: string; +} +export declare const API_REGISTRY: Record; +//# sourceMappingURL=registry.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/registry.d.ts.map b/modules/realfi-partner-sdk/dist/types/api/registry.d.ts.map new file mode 100644 index 0000000000..8d61ddbf22 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/registry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/api/registry.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,iFAAiF;IACjF,SAAS,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,oBAAoB,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,aAAa,CAkB3D,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/types.d.ts b/modules/realfi-partner-sdk/dist/types/api/types.d.ts new file mode 100644 index 0000000000..6036a468fc --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/types.d.ts @@ -0,0 +1,80 @@ +export type TOrderStatus = "Open" | "Validating" | "Canceled" | "Executed" | "Invalidated" | "InvalidMinReceived"; +export type TOrderAction = "Mint" | "Redeem" | "Deposit" | "Withdraw" | "Stake" | "Unstake" | "DirectMint" | "DirectBurn"; +export interface IApiOrderUtxo { + txHash: string; + outputIndex: number; +} +export interface IOrderInfo { + owner: string; + action: TOrderAction; + status: TOrderStatus; + amount: bigint; + slot: bigint; + forfeit: bigint; + version: string; + utxo: IApiOrderUtxo; + /** Output produced once the order is Executed or Canceled. */ + resultUtxo?: IApiOrderUtxo; + /** Timelock unlock slot (Unstake only). */ + unlockSlot?: bigint; + /** Cooldown maturity slot (Unstake only). */ + matureSlot?: bigint; + /** Populated for Deposit orders. */ + principal?: bigint; + /** Populated for Deposit orders. */ + yield?: bigint; + /** Transaction that claimed an Unstake order's cooldown output. */ + claimTxHash?: string; +} +export interface IStakeTimes { + currentCooldownSlot: bigint; + nextCooldownSlot: bigint; +} +export interface IOrderFees { + mintBps: number; + redeemBps: number; +} +export interface IYieldBreakdown { + totalSUSDr: bigint; + totalUSDrValue: bigint; + principal: bigint; + yield: bigint; + yieldPercent: number; +} +export interface IPointsBalance { + pointsBalance: number | null; + potentialPoints: number | null; + multiplier: number | null; +} +export interface IReferrerCode { + code: string; + createdAt: string; +} +/** + * Non-negative safe-integer USD UX/business minimums; not protocol + * `min_received` or fees. + */ +export interface IPartnerLimits { + readonly mintMinUsd: number; + readonly redeemMinUsd: number; +} +/** + * Environment runtime configuration shared with the deployed RealFi dapp. + * + * `swapCounterpartAssets` is the product-curated live swap list. + * `swapOrderHistoryAssets` is its superset for historical and in-flight orders, + * including disabled pairs. The deploy artifact falls back to the live list + * when the dapp source leaves the history list unset. + * Every asset identifier uses Sundae's canonical dotted form + * (`policyId.assetName`, or `ada.lovelace`), not Cardano Core's concatenated + * `Core.AssetId` representation. The values can be passed directly to + * `RealfiSDK.sundae` discovery and builder APIs. + */ +export interface IPartnerConfig { + /** Authoritative USDr ID in Sundae's dotted `policyId.assetName` form. */ + readonly stablecoinAssetId: string; + readonly swapCounterpartAssets: readonly string[]; + readonly swapOrderHistoryAssets: readonly string[]; + readonly limits: IPartnerLimits; +} +//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/api/types.d.ts.map b/modules/realfi-partner-sdk/dist/types/api/types.d.ts.map new file mode 100644 index 0000000000..76bf50a97d --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/api/types.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/api/types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,YAAY,GACZ,UAAU,GACV,UAAU,GACV,aAAa,GACb,oBAAoB,CAAC;AAEzB,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,QAAQ,GACR,SAAS,GACT,UAAU,GACV,OAAO,GACP,SAAS,GACT,YAAY,GACZ,YAAY,CAAC;AAEjB,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,aAAa,CAAC;IACpB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,qBAAqB,EAAE,SAAS,MAAM,EAAE,CAAC;IAClD,QAAQ,CAAC,sBAAsB,EAAE,SAAS,MAAM,EAAE,CAAC;IACnD,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;CACjC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/base/index.d.ts b/modules/realfi-partner-sdk/dist/types/generated-types/base/index.d.ts new file mode 100644 index 0000000000..f8177f0ace --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/base/index.d.ts @@ -0,0 +1,23 @@ +import { type Script } from "@blaze-cardano/core"; +type OutputReference = { + output_index: bigint; + transaction_id: string; +}; +export declare class BaseMintProxyMintProxyMint { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class BaseMintProxyMintProxyElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class BaseOneshotOneshotMint { + Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean); +} +export declare class BaseOneshotOneshotElse { + Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean); +} +export {}; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/base/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/generated-types/base/index.d.ts.map new file mode 100644 index 0000000000..6f64993f04 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/base/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generated-types/base/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAOlD,KAAK,eAAe,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,CAAC;AAMxE,qBAAa,0BAA0B;IAC9B,MAAM,EAAE,MAAM,CAAA;gBAEnB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAmB1B;AACD,qBAAa,0BAA0B;IAC9B,MAAM,EAAE,MAAM,CAAA;gBAEnB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAmB1B;AACD,qBAAa,sBAAsB;IAC1B,MAAM,EAAE,MAAM,CAAA;gBAEnB,OAAO,EAAE,eAAe,EACxB,KAAK,CAAC,EAAE,OAAe;CAsB1B;AACD,qBAAa,sBAAsB;IAC1B,MAAM,EAAE,MAAM,CAAA;gBAEnB,OAAO,EAAE,eAAe,EACxB,KAAK,CAAC,EAAE,OAAe;CAsB1B"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/index.d.ts b/modules/realfi-partner-sdk/dist/types/generated-types/index.d.ts new file mode 100644 index 0000000000..85061a81c9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/index.d.ts @@ -0,0 +1,10 @@ +export * as BaseTypes from "./base/index.js"; +export * as V0Types from "./v0/index.js"; +export * as V0_1Types from "./v0_1/index.js"; +export * as V0_2Types from "./v0_2/index.js"; +export * as V0_3Types from "./v0_3/index.js"; +export * as V0_4Types from "./v0_4/index.js"; +export * as V1_0Types from "./v1_0/index.js"; +export * as V1_0Rc1Types from "./v1_0_rc1/index.js"; +export * as V1_1Rc1Types from "./v1_1_rc1/index.js"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/generated-types/index.d.ts.map new file mode 100644 index 0000000000..6c400163bf --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generated-types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v0/index.d.ts b/modules/realfi-partner-sdk/dist/types/generated-types/v0/index.d.ts new file mode 100644 index 0000000000..0bf4cde6a6 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v0/index.d.ts @@ -0,0 +1,10 @@ +import { type Script } from "@blaze-cardano/core"; +export declare class V0ProtocolProtocolWithdraw { + Script: Script; + constructor(trace?: boolean); +} +export declare class V0ProtocolProtocolElse { + Script: Script; + constructor(trace?: boolean); +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v0/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/generated-types/v0/index.d.ts.map new file mode 100644 index 0000000000..08b2c18da2 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v0/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generated-types/v0/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAalD,qBAAa,0BAA0B;IAC9B,MAAM,EAAE,MAAM,CAAA;gBAEnB,KAAK,CAAC,EAAE,OAAe;CAW1B;AACD,qBAAa,sBAAsB;IAC1B,MAAM,EAAE,MAAM,CAAA;gBAEnB,KAAK,CAAC,EAAE,OAAe;CAW1B"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v0_1/index.d.ts b/modules/realfi-partner-sdk/dist/types/generated-types/v0_1/index.d.ts new file mode 100644 index 0000000000..06a0de9530 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v0_1/index.d.ts @@ -0,0 +1,392 @@ +import { type Script } from "@blaze-cardano/core"; +import { Exact } from "@blaze-cardano/data"; +type OutputReference = { + output_index: bigint; + transaction_id: string; +}; +export declare const MultisigScript: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + TreasuryDatum: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; +}, "MultisigScript">; +export type MultisigScript = Exact; +export declare const Asset: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + TreasuryDatum: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; +}, "Asset">; +export type Asset = Exact; +export declare const ProtocolRedeemer: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + TreasuryDatum: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; +}, "ProtocolRedeemer">; +export type ProtocolRedeemer = Exact; +export declare const ProxyDatum: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + TreasuryDatum: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; +}, "ProxyDatum">; +export type ProxyDatum = Exact; +export declare const Registry: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + TreasuryDatum: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; +}, "Registry">; +export type Registry = Exact; +export declare const Settings: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + TreasuryDatum: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; +}, "Settings">; +export type Settings = Exact; +export declare const TreasuryDatum: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + TreasuryDatum: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; +}, "TreasuryDatum">; +export type TreasuryDatum = Exact; +export declare class V0_1ProtocolProtocolWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_1ProtocolProtocolElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_1TreasuryTreasuryMint { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_1TreasuryTreasurySpend { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_1TreasuryTreasuryElse { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export {}; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v0_1/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/generated-types/v0_1/index.d.ts.map new file mode 100644 index 0000000000..22e4ef0199 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v0_1/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generated-types/v0_1/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAQ,KAAK,EAAe,MAAM,qBAAqB,CAAC;AAM/D,KAAK,eAAe,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,CAAC;AA0ExE,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAAqC,CAAC;AACjE,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC1D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAA4B,CAAC;AAC/C,MAAM,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AACxC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAAuC,CAAC;AACrE,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC9D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAAiC,CAAC;AACzD,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAClD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA+B,CAAC;AACrD,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC9C,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA+B,CAAC;AACrD,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC9C,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAoC,CAAC;AAC/D,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAExD,qBAAa,4BAA4B;IAChC,MAAM,EAAE,MAAM,CAAA;gBAEnB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAmB1B;AACD,qBAAa,wBAAwB;IAC5B,MAAM,EAAE,MAAM,CAAA;gBAEnB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAmB1B;AACD,qBAAa,wBAAwB;IAC5B,MAAM,EAAE,MAAM,CAAA;gBAEnB,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAwB1B;AACD,qBAAa,yBAAyB;IAC7B,MAAM,EAAE,MAAM,CAAA;gBAEnB,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAwB1B;AACD,qBAAa,wBAAwB;IAC5B,MAAM,EAAE,MAAM,CAAA;gBAEnB,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAwB1B"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v0_2/index.d.ts b/modules/realfi-partner-sdk/dist/types/generated-types/v0_2/index.d.ts new file mode 100644 index 0000000000..e9942f7496 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v0_2/index.d.ts @@ -0,0 +1,365 @@ +import { type Script } from "@blaze-cardano/core"; +import { Exact } from "@blaze-cardano/data"; +export declare const MultisigScript: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; +}, "MultisigScript">; +export type MultisigScript = Exact; +export declare const Asset: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; +}, "Asset">; +export type Asset = Exact; +export declare const Registry: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; +}, "Registry">; +export type Registry = Exact; +export declare const ProtocolRedeemer: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; +}, "ProtocolRedeemer">; +export type ProtocolRedeemer = Exact; +export declare const ProxyDatum: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; +}, "ProxyDatum">; +export type ProxyDatum = Exact; +export declare const Settings: import("@sinclair/typebox").TImport<{ + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + }>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Mint">, import("@sinclair/typebox").TLiteral<"Burn">, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; +}, "Settings">; +export type Settings = Exact; +export declare class V0_2ProtocolProtocolWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_2ProtocolProtocolElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v0_2/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/generated-types/v0_2/index.d.ts.map new file mode 100644 index 0000000000..ba6e47817c --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v0_2/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generated-types/v0_2/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAQ,KAAK,EAAe,MAAM,qBAAqB,CAAC;AAyF/D,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAAqC,CAAC;AACjE,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC1D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAA4B,CAAC;AAC/C,MAAM,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AACxC,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA+B,CAAC;AACrD,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC9C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAAuC,CAAC;AACrE,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC9D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAAiC,CAAC;AACzD,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAClD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA+B,CAAC;AACrD,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE9C,qBAAa,4BAA4B;IAChC,MAAM,EAAE,MAAM,CAAA;gBAEnB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAmB1B;AACD,qBAAa,wBAAwB;IAC5B,MAAM,EAAE,MAAM,CAAA;gBAEnB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAmB1B"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v0_3/index.d.ts b/modules/realfi-partner-sdk/dist/types/generated-types/v0_3/index.d.ts new file mode 100644 index 0000000000..26f68e92b9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v0_3/index.d.ts @@ -0,0 +1,3463 @@ +import { type Script } from "@blaze-cardano/core"; +import { Exact } from "@blaze-cardano/data"; +export declare const Bool: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "Bool">; +export type Bool = Exact; +export declare const COSESign1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "COSESign1">; +export type COSESign1 = Exact; +export declare const HeaderMap: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "HeaderMap">; +export type HeaderMap = Exact; +export declare const Headers: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "Headers">; +export type Headers = Exact; +export declare const MultisigScript: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "MultisigScript">; +export type MultisigScript = Exact; +export declare const Asset: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "Asset">; +export type Asset = Exact; +export declare const Destination: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "Destination">; +export type Destination = Exact; +export declare const ExtraProtocolRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "ExtraProtocolRedeemer">; +export type ExtraProtocolRedeemer = Exact; +export declare const Nonce: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "Nonce">; +export type Nonce = Exact; +export declare const OrderAction: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "OrderAction">; +export type OrderAction = Exact; +export declare const OrderDatum: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "OrderDatum">; +export type OrderDatum = Exact; +export declare const OrderRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "OrderRedeemer">; +export type OrderRedeemer = Exact; +export declare const ProtocolRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "ProtocolRedeemer">; +export type ProtocolRedeemer = Exact; +export declare const ProxyDatum: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "ProxyDatum">; +export type ProxyDatum = Exact; +export declare const Registry: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "Registry">; +export type Registry = Exact; +export declare const Request: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "Request">; +export type Request = Exact; +export declare const Settings: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "Settings">; +export type Settings = Exact; +export declare const SigWithKey: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "SigWithKey">; +export type SigWithKey = Exact; +export declare const SignatureList: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "SignatureList">; +export type SignatureList = Exact; +export declare const SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "SignedPayload_ProtocolRedeemer">; +export type SignedPayload_ProtocolRedeemer = Exact; +export declare const SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TRecord; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Nullifier: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + withdraw_amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + deposit_amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TOptional; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_token: import("@sinclair/typebox").TRef<"Asset">; + }>; + SigWithKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + SignatureList: import("@sinclair/typebox").TArray>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TString; + signatures: import("@sinclair/typebox").TRef<"SignatureList">; + }>; +}, "SignedRedeemer_ExtraProtocolRedeemer">; +export type SignedRedeemer_ExtraProtocolRedeemer = Exact; +export declare class V0_3OrderOrderSpend { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_3OrderOrderElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_3ProtocolProtocolWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_3ProtocolProtocolElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v0_3/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/generated-types/v0_3/index.d.ts.map new file mode 100644 index 0000000000..bbd2080053 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v0_3/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generated-types/v0_3/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v0_4/index.d.ts b/modules/realfi-partner-sdk/dist/types/generated-types/v0_4/index.d.ts new file mode 100644 index 0000000000..4f0d620cfb --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v0_4/index.d.ts @@ -0,0 +1,5820 @@ +import { type Script } from "@blaze-cardano/core"; +import { Exact } from "@blaze-cardano/data"; +type OutputReference = { + output_index: bigint; + transaction_id: string; +}; +export declare const Bool: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Bool">; +export type Bool = Exact; +export declare const Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Tuple_VerificationKey_COSESign1">; +export type Tuple_VerificationKey_COSESign1 = Exact; +export declare const COSESign1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "COSESign1">; +export type COSESign1 = Exact; +export declare const HeaderMap: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "HeaderMap">; +export type HeaderMap = Exact; +export declare const Headers: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Headers">; +export type Headers = Exact; +export declare const MultisigScript: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "MultisigScript">; +export type MultisigScript = Exact; +export declare const Asset: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Asset">; +export type Asset = Exact; +export declare const Destination: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Destination">; +export type Destination = Exact; +export declare const ExtraProtocolRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ExtraProtocolRedeemer">; +export type ExtraProtocolRedeemer = Exact; +export declare const Nonce: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Nonce">; +export type Nonce = Exact; +export declare const OrderAction: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderAction">; +export type OrderAction = Exact; +export declare const OrderDatum: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderDatum">; +export type OrderDatum = Exact; +export declare const OrderRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderRedeemer">; +export type OrderRedeemer = Exact; +export declare const ProtocolRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ProtocolRedeemer">; +export type ProtocolRedeemer = Exact; +export declare const ProxyDatum: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ProxyDatum">; +export type ProxyDatum = Exact; +export declare const Registry: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Registry">; +export type Registry = Exact; +export declare const Request: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Request">; +export type Request = Exact; +export declare const ReserveAsset: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ReserveAsset">; +export type ReserveAsset = Exact; +export declare const Settings: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Settings">; +export type Settings = Exact; +export declare const SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "SignedPayload_ProtocolRedeemer">; +export type SignedPayload_ProtocolRedeemer = Exact; +export declare const SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "SignedRedeemer_ExtraProtocolRedeemer">; +export type SignedRedeemer_ExtraProtocolRedeemer = Exact; +export declare const StakingVaultRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "StakingVaultRedeemer">; +export type StakingVaultRedeemer = Exact; +export declare const TreasuryRequest: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "TreasuryRequest">; +export type TreasuryRequest = Exact; +export declare const VaultDatum: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderAction: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatum: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderAction">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">]>; + ProtocolRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"Settings">; + }>; + Registry: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + susdr: import("@sinclair/typebox").TString; + }>; + Request: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + Settings: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"Registry">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemer: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemer">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemer: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemer">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemer: import("@sinclair/typebox").TUndefined; + TreasuryRequest: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatum: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "VaultDatum">; +export type VaultDatum = Exact; +export declare class V0_4OrderOrderSpend { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_4OrderOrderElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_4ProtocolProtocolWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_4ProtocolProtocolElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_4StakingVaultStakingVaultMint { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_4StakingVaultStakingVaultSpend { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V0_4StakingVaultStakingVaultElse { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export {}; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v0_4/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/generated-types/v0_4/index.d.ts.map new file mode 100644 index 0000000000..6830551763 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v0_4/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generated-types/v0_4/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAQ,KAAK,EAAe,MAAM,qBAAqB,CAAC;AAK/D,KAAK,eAAe,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,CAAC;AAuXxE,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAA2B,CAAC;AAC7C,MAAM,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AACtC,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCAAsD,CAAC;AACnG,MAAM,MAAM,+BAA+B,GAAG,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAC5F,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAAgC,CAAC;AACvD,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC;AAChD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAAgC,CAAC;AACvD,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC;AAChD,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAA8B,CAAC;AACnD,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAC5C,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAAqC,CAAC;AACjE,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC1D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAA4B,CAAC;AAC/C,MAAM,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AACxC,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAkC,CAAC;AAC3D,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACpD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAA4C,CAAC;AAC/E,MAAM,MAAM,qBAAqB,GAAG,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACxE,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAA4B,CAAC;AAC/C,MAAM,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AACxC,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAkC,CAAC;AAC3D,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACpD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAAiC,CAAC;AACzD,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAClD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAoC,CAAC;AAC/D,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACxD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAAuC,CAAC;AACrE,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC9D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAAiC,CAAC;AACzD,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAClD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA+B,CAAC;AACrD,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC9C,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAA8B,CAAC;AACnD,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAC5C,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAmC,CAAC;AAC7D,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AACtD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA+B,CAAC;AACrD,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC9C,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAAqD,CAAC;AACjG,MAAM,MAAM,8BAA8B,GAAG,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAC1F,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0CAA2D,CAAC;AAC7G,MAAM,MAAM,oCAAoC,GAAG,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AACtG,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAA2C,CAAC;AAC7E,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACtE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAAsC,CAAC;AACnE,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAC5D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAAiC,CAAC;AACzD,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAElD,qBAAa,mBAAmB;IACvB,MAAM,EAAE,MAAM,CAAA;gBAEnB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAmB1B;AACD,qBAAa,kBAAkB;IACtB,MAAM,EAAE,MAAM,CAAA;gBAEnB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAmB1B;AACD,qBAAa,4BAA4B;IAChC,MAAM,EAAE,MAAM,CAAA;gBAEnB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAmB1B;AACD,qBAAa,wBAAwB;IAC5B,MAAM,EAAE,MAAM,CAAA;gBAEnB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAmB1B;AACD,qBAAa,gCAAgC;IACpC,MAAM,EAAE,MAAM,CAAA;gBAEnB,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAwB1B;AACD,qBAAa,iCAAiC;IACrC,MAAM,EAAE,MAAM,CAAA;gBAEnB,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAwB1B;AACD,qBAAa,gCAAgC;IACpC,MAAM,EAAE,MAAM,CAAA;gBAEnB,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,QAAQ,EACvB,KAAK,CAAC,EAAE,OAAe;CAwB1B"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v1_0/index.d.ts b/modules/realfi-partner-sdk/dist/types/generated-types/v1_0/index.d.ts new file mode 100644 index 0000000000..04dd8e6115 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v1_0/index.d.ts @@ -0,0 +1,7880 @@ +import { type Script } from "@blaze-cardano/core"; +import { Exact } from "@blaze-cardano/data"; +type OutputReference = { + output_index: bigint; + transaction_id: string; +}; +export declare const Bool: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Bool">; +export type Bool = Exact; +export declare const Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Tuple_VerificationKey_COSESign1">; +export type Tuple_VerificationKey_COSESign1 = Exact; +export declare const COSESign1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "COSESign1">; +export type COSESign1 = Exact; +export declare const HeaderMap: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "HeaderMap">; +export type HeaderMap = Exact; +export declare const Headers: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Headers">; +export type Headers = Exact; +export declare const MultisigScript: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "MultisigScript">; +export type MultisigScript = Exact; +export declare const Asset: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Asset">; +export type Asset = Exact; +export declare const Destination: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Destination">; +export type Destination = Exact; +export declare const DirectRequestV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "DirectRequestV1">; +export type DirectRequestV1 = Exact; +export declare const ExchangeRequestV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ExchangeRequestV1">; +export type ExchangeRequestV1 = Exact; +export declare const ExtraProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ExtraProtocolRedeemerV1">; +export type ExtraProtocolRedeemerV1 = Exact; +export declare const Nonce: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Nonce">; +export type Nonce = Exact; +export declare const OrderActionV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderActionV1">; +export type OrderActionV1 = Exact; +export declare const OrderDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderDatumV1">; +export type OrderDatumV1 = Exact; +export declare const OrderRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderRedeemerV1">; +export type OrderRedeemerV1 = Exact; +export declare const ProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ProtocolRedeemerV1">; +export type ProtocolRedeemerV1 = Exact; +export declare const ProxyDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ProxyDatumV1">; +export type ProxyDatumV1 = Exact; +export declare const RegistryV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "RegistryV1">; +export type RegistryV1 = Exact; +export declare const ReserveAsset: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ReserveAsset">; +export type ReserveAsset = Exact; +export declare const SettingsV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "SettingsV1">; +export type SettingsV1 = Exact; +export declare const SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "SignedPayload_ProtocolRedeemerV1">; +export type SignedPayload_ProtocolRedeemerV1 = Exact; +export declare const SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "SignedRedeemer_ExtraProtocolRedeemerV1">; +export type SignedRedeemer_ExtraProtocolRedeemerV1 = Exact; +export declare const StakeRequestV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "StakeRequestV1">; +export type StakeRequestV1 = Exact; +export declare const StakingVaultRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "StakingVaultRedeemerV1">; +export type StakingVaultRedeemerV1 = Exact; +export declare const TreasuryDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "TreasuryDatumV1">; +export type TreasuryDatumV1 = Exact; +export declare const TreasuryRequestV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "TreasuryRequestV1">; +export type TreasuryRequestV1 = Exact; +export declare const VaultDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "VaultDatumV1">; +export type VaultDatumV1 = Exact; +export declare class V1_0OrderOrderSpend { + Script: Script; + constructor(proxyPolicyId: PolicyId, protocolScripthash: ScriptHash, trace?: boolean); +} +export declare class V1_0OrderOrderElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, protocolScripthash: ScriptHash, trace?: boolean); +} +export declare class V1_0ProtocolManagementProtocolManagementWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0ProtocolManagementProtocolManagementPublish { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0ProtocolManagementProtocolManagementElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0ProtocolMintProtocolMintWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0ProtocolMintProtocolMintPublish { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0ProtocolMintProtocolMintElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, mintValidator: ScriptHash, stakeValidator: ScriptHash, managementValidator: ScriptHash, trace?: boolean); +} +export declare class V1_0ProtocolOrchestratorProtocolOrchestratorPublish { + Script: Script; + constructor(proxyPolicyId: PolicyId, mintValidator: ScriptHash, stakeValidator: ScriptHash, managementValidator: ScriptHash, trace?: boolean); +} +export declare class V1_0ProtocolOrchestratorProtocolOrchestratorElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, mintValidator: ScriptHash, stakeValidator: ScriptHash, managementValidator: ScriptHash, trace?: boolean); +} +export declare class V1_0ProtocolStakeProtocolStakeWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0ProtocolStakeProtocolStakePublish { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0ProtocolStakeProtocolStakeElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0ProxyNftProxyNftMint { + Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean); +} +export declare class V1_0ProxyNftProxyNftElse { + Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean); +} +export declare class V1_0RealfiMintingPolicyRealfiMintingPolicyMint { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0RealfiMintingPolicyRealfiMintingPolicyElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0StakingVaultStakingVaultMint { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0StakingVaultStakingVaultSpend { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0StakingVaultStakingVaultElse { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0TreasuryTreasuryMint { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0TreasuryTreasurySpend { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0TreasuryTreasuryElse { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export {}; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v1_0/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/generated-types/v1_0/index.d.ts.map new file mode 100644 index 0000000000..9b36d7353c --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v1_0/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generated-types/v1_0/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v1_0_rc1/index.d.ts b/modules/realfi-partner-sdk/dist/types/generated-types/v1_0_rc1/index.d.ts new file mode 100644 index 0000000000..bf724889af --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v1_0_rc1/index.d.ts @@ -0,0 +1,6667 @@ +import { type Script } from "@blaze-cardano/core"; +import { Exact } from "@blaze-cardano/data"; +type OutputReference = { + output_index: bigint; + transaction_id: string; +}; +export declare const Bool: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Bool">; +export type Bool = Exact; +export declare const Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Tuple_VerificationKey_COSESign1">; +export type Tuple_VerificationKey_COSESign1 = Exact; +export declare const COSESign1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "COSESign1">; +export type COSESign1 = Exact; +export declare const HeaderMap: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "HeaderMap">; +export type HeaderMap = Exact; +export declare const Headers: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Headers">; +export type Headers = Exact; +export declare const MultisigScript: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "MultisigScript">; +export type MultisigScript = Exact; +export declare const Asset: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Asset">; +export type Asset = Exact; +export declare const Destination: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Destination">; +export type Destination = Exact; +export declare const ExtraProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ExtraProtocolRedeemerV1">; +export type ExtraProtocolRedeemerV1 = Exact; +export declare const Nonce: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "Nonce">; +export type Nonce = Exact; +export declare const OrderActionV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderActionV1">; +export type OrderActionV1 = Exact; +export declare const OrderDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderDatumV1">; +export type OrderDatumV1 = Exact; +export declare const OrderRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderRedeemerV1">; +export type OrderRedeemerV1 = Exact; +export declare const ProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ProtocolRedeemerV1">; +export type ProtocolRedeemerV1 = Exact; +export declare const ProxyDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ProxyDatumV1">; +export type ProxyDatumV1 = Exact; +export declare const RegistryV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "RegistryV1">; +export type RegistryV1 = Exact; +export declare const RequestV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "RequestV1">; +export type RequestV1 = Exact; +export declare const ReserveAsset: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "ReserveAsset">; +export type ReserveAsset = Exact; +export declare const SettingsV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "SettingsV1">; +export type SettingsV1 = Exact; +export declare const SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "SignedPayload_v1_0_ProtocolRedeemerV1">; +export type SignedPayload_v1_0_ProtocolRedeemerV1 = Exact; +export declare const SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "SignedRedeemer_v1_0_ExtraProtocolRedeemerV1">; +export type SignedRedeemer_v1_0_ExtraProtocolRedeemerV1 = Exact; +export declare const StakingVaultRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "StakingVaultRedeemerV1">; +export type StakingVaultRedeemerV1 = Exact; +export declare const TreasuryDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "TreasuryDatumV1">; +export type TreasuryDatumV1 = Exact; +export declare const TreasuryRequestV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "TreasuryRequestV1">; +export type TreasuryRequestV1 = Exact; +export declare const VaultDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + }>; + RequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + stake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn_permission: import("@sinclair/typebox").TRef<"MultisigScript">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + SignedPayload_v1_0_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_0_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + }>; +}, "VaultDatumV1">; +export type VaultDatumV1 = Exact; +export declare class V1_0Rc1OrderOrderSpend { + Script: Script; + constructor(proxyPolicyId: PolicyId, protocolScripthash: ScriptHash, trace?: boolean); +} +export declare class V1_0Rc1OrderOrderElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, protocolScripthash: ScriptHash, trace?: boolean); +} +export declare class V1_0Rc1ProtocolManagementProtocolManagementWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1ProtocolManagementProtocolManagementElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1ProtocolMintProtocolMintWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1ProtocolMintProtocolMintElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, mintValidator: ScriptHash, stakeValidator: ScriptHash, managementValidator: ScriptHash, trace?: boolean); +} +export declare class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish { + Script: Script; + constructor(proxyPolicyId: PolicyId, mintValidator: ScriptHash, stakeValidator: ScriptHash, managementValidator: ScriptHash, trace?: boolean); +} +export declare class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, mintValidator: ScriptHash, stakeValidator: ScriptHash, managementValidator: ScriptHash, trace?: boolean); +} +export declare class V1_0Rc1ProtocolStakeProtocolStakeWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1ProtocolStakeProtocolStakeElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1ProxyNftProxyNftMint { + Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean); +} +export declare class V1_0Rc1ProxyNftProxyNftElse { + Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean); +} +export declare class V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1StakingVaultStakingVaultMint { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1StakingVaultStakingVaultSpend { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1StakingVaultStakingVaultElse { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1TreasuryTreasuryMint { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1TreasuryTreasurySpend { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_0Rc1TreasuryTreasuryElse { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export {}; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v1_0_rc1/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/generated-types/v1_0_rc1/index.d.ts.map new file mode 100644 index 0000000000..2ada1d3894 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v1_0_rc1/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generated-types/v1_0_rc1/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v1_1_rc1/index.d.ts b/modules/realfi-partner-sdk/dist/types/generated-types/v1_1_rc1/index.d.ts new file mode 100644 index 0000000000..c629325655 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v1_1_rc1/index.d.ts @@ -0,0 +1,16622 @@ +import { type Script } from "@blaze-cardano/core"; +import { Exact } from "@blaze-cardano/data"; +type OutputReference = { + output_index: bigint; + transaction_id: string; +}; +export declare const Bool: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Bool">; +export type Bool = Exact; +export declare const Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Tuple_VerificationKey_COSESign1">; +export type Tuple_VerificationKey_COSESign1 = Exact; +export declare const GovernanceConfig: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "GovernanceConfig">; +export type GovernanceConfig = Exact; +export declare const SettingsAuthPayload: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "SettingsAuthPayload">; +export type SettingsAuthPayload = Exact; +export declare const SettingsRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "SettingsRedeemer">; +export type SettingsRedeemer = Exact; +export declare const SettingsSignedRedeemer: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "SettingsSignedRedeemer">; +export type SettingsSignedRedeemer = Exact; +export declare const COSESign1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "COSESign1">; +export type COSESign1 = Exact; +export declare const HeaderMap: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "HeaderMap">; +export type HeaderMap = Exact; +export declare const Headers: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Headers">; +export type Headers = Exact; +export declare const MultisigScript: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "MultisigScript">; +export type MultisigScript = Exact; +export declare const ProxyDatum: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "ProxyDatum">; +export type ProxyDatum = Exact; +export declare const Denominator: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Denominator">; +export type Denominator = Exact; +export declare const DistributionOracleDatum: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "DistributionOracleDatum">; +export type DistributionOracleDatum = Exact; +export declare const DistributionOracleMessage: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "DistributionOracleMessage">; +export type DistributionOracleMessage = Exact; +export declare const Numerator: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Numerator">; +export type Numerator = Exact; +export declare const ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "ProtocolOrchestratorRedeemerV1">; +export type ProtocolOrchestratorRedeemerV1 = Exact; +export declare const Ratio: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Ratio">; +export type Ratio = Exact; +export declare const SignedDistributionOracleMessage: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "SignedDistributionOracleMessage">; +export type SignedDistributionOracleMessage = Exact; +export declare const Slot: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Slot">; +export type Slot = Exact; +export declare const YieldDistributionInput: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "YieldDistributionInput">; +export type YieldDistributionInput = Exact; +export declare const Asset: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Asset">; +export type Asset = Exact; +export declare const Destination: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Destination">; +export type Destination = Exact; +export declare const DirectRequestV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "DirectRequestV1">; +export type DirectRequestV1 = Exact; +export declare const ExchangeRequestV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "ExchangeRequestV1">; +export type ExchangeRequestV1 = Exact; +export declare const ExtraProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "ExtraProtocolRedeemerV1">; +export type ExtraProtocolRedeemerV1 = Exact; +export declare const Nonce: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Nonce">; +export type Nonce = Exact; +export declare const OrderActionV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderActionV1">; +export type OrderActionV1 = Exact; +export declare const OrderDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderDatumV1">; +export type OrderDatumV1 = Exact; +export declare const OrderRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "OrderRedeemerV1">; +export type OrderRedeemerV1 = Exact; +export declare const Permissions: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "Permissions">; +export type Permissions = Exact; +export declare const ProtocolConfig: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "ProtocolConfig">; +export type ProtocolConfig = Exact; +export declare const ProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "ProtocolRedeemerV1">; +export type ProtocolRedeemerV1 = Exact; +export declare const ProxyDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "ProxyDatumV1">; +export type ProxyDatumV1 = Exact; +export declare const RegistryV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "RegistryV1">; +export type RegistryV1 = Exact; +export declare const ReserveAsset: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "ReserveAsset">; +export type ReserveAsset = Exact; +export declare const SettingsV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "SettingsV1">; +export type SettingsV1 = Exact; +export declare const SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; +export type SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage = Exact; +export declare const SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "SignedPayload_v1_1_ProtocolRedeemerV1">; +export type SignedPayload_v1_1_ProtocolRedeemerV1 = Exact; +export declare const SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">; +export type SignedRedeemer_v1_1_ExtraProtocolRedeemerV1 = Exact; +export declare const StakeRequestV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "StakeRequestV1">; +export type StakeRequestV1 = Exact; +export declare const StakingVaultRedeemerV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "StakingVaultRedeemerV1">; +export type StakingVaultRedeemerV1 = Exact; +export declare const TreasuryDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "TreasuryDatumV1">; +export type TreasuryDatumV1 = Exact; +export declare const TreasuryRequestV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "TreasuryRequestV1">; +export type TreasuryRequestV1 = Exact; +export declare const VaultDatumV1: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "VaultDatumV1">; +export type VaultDatumV1 = Exact; +export declare const YieldSplitAlpha: import("@sinclair/typebox").TImport<{ + Bool: import("@sinclair/typebox").TBoolean; + Tuple_VerificationKey_COSESign1: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRef<"COSESign1">]>; + GovernanceConfig: import("@sinclair/typebox").TObject<{ + logic_change: import("@sinclair/typebox").TRef<"MultisigScript">; + permission_change: import("@sinclair/typebox").TRef<"MultisigScript">; + config_change: import("@sinclair/typebox").TRef<"MultisigScript">; + shutdown: import("@sinclair/typebox").TRef<"MultisigScript">; + restore: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + SettingsAuthPayload: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + destination: import("@sinclair/typebox").TString; + datum: import("@sinclair/typebox").TRef<"ProxyDatum">; + nonce: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + SettingsRedeemer: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"ChangeLogic">, import("@sinclair/typebox").TLiteral<"ChangePermissions">, import("@sinclair/typebox").TLiteral<"ChangeConfig">, import("@sinclair/typebox").TLiteral<"Shutdown">, import("@sinclair/typebox").TLiteral<"Restore">, import("@sinclair/typebox").TLiteral<"Migrate">]>; + SettingsSignedRedeemer: import("@sinclair/typebox").TObject<{ + change: import("@sinclair/typebox").TRef<"SettingsRedeemer">; + signatures: import("@sinclair/typebox").TArray>; + }>; + COSESign1: import("@sinclair/typebox").TObject<{ + headers: import("@sinclair/typebox").TRef<"Headers">; + payload: import("@sinclair/typebox").TOptional; + signature: import("@sinclair/typebox").TString; + }>; + HeaderMap: import("@sinclair/typebox").TString; + Headers: import("@sinclair/typebox").TObject<{ + protected: import("@sinclair/typebox").TRef<"HeaderMap">; + unprotected: import("@sinclair/typebox").TRef<"HeaderMap">; + }>; + MultisigScript: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Signature: import("@sinclair/typebox").TObject<{ + key_hash: import("@sinclair/typebox").TString; + }>; + }>, import("@sinclair/typebox").TObject<{ + AllOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AnyOf: import("@sinclair/typebox").TObject<{ + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + AtLeast: import("@sinclair/typebox").TObject<{ + required: import("@sinclair/typebox").TBigInt; + scripts: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Before: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + After: import("@sinclair/typebox").TObject<{ + time: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TObject<{ + script_hash: import("@sinclair/typebox").TString; + }>; + }>]>; + ProxyDatum: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TSchema; + }>; + Denominator: import("@sinclair/typebox").TBigInt; + DistributionOracleDatum: import("@sinclair/typebox").TObject<{ + message: import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">; + staked_usdr: import("@sinclair/typebox").TBigInt; + staking_yield: import("@sinclair/typebox").TBigInt; + }>; + DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + input: import("@sinclair/typebox").TRef<"YieldDistributionInput">; + hurdle: import("@sinclair/typebox").TRef<"Ratio">; + floor: import("@sinclair/typebox").TRef<"Ratio">; + timestamp: import("@sinclair/typebox").TRef<"Slot">; + base: import("@sinclair/typebox").TBigInt; + r_max: import("@sinclair/typebox").TBigInt; + }>; + Numerator: import("@sinclair/typebox").TBigInt; + ProtocolOrchestratorRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + ExecuteOrders: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedRedeemer_v1_1_ExtraProtocolRedeemerV1">]>; + }>, import("@sinclair/typebox").TObject<{ + PublishYieldOracle: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"SignedDistributionOracleMessage">]>; + }>]>; + Ratio: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TRef<"Numerator">, import("@sinclair/typebox").TRef<"Denominator">]>; + SignedDistributionOracleMessage: import("@sinclair/typebox").TObject<{ + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage">; + signatures: import("@sinclair/typebox").TArray>; + }>; + Slot: import("@sinclair/typebox").TBigInt; + YieldDistributionInput: import("@sinclair/typebox").TObject<{ + net_distributable_income: import("@sinclair/typebox").TBigInt; + staked_usdr: import("@sinclair/typebox").TBigInt; + }>; + Asset: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TString]>; + Destination: import("@sinclair/typebox").TObject<{ + address: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + datum: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NoDatum">, import("@sinclair/typebox").TObject<{ + DatumHash: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + InlineDatum: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TSchema]>; + }>]>; + }>; + DirectRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + }>; + ExchangeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + request_to_outputs: import("@sinclair/typebox").TArray; + input_to_requests: import("@sinclair/typebox").TArray; + treasury_input_idx: import("@sinclair/typebox").TBigInt; + treasury_output_idx: import("@sinclair/typebox").TBigInt; + vault_input_idx: import("@sinclair/typebox").TOptional; + vault_output_idx: import("@sinclair/typebox").TOptional; + }>; + Nonce: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + UTxO: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>]>; + }>, import("@sinclair/typebox").TObject<{ + Validity: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TObject<{ + lower_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + upper_bound: import("@sinclair/typebox").TObject<{ + bound_type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"NegativeInfinity">, import("@sinclair/typebox").TObject<{ + Finite: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TBigInt]>; + }>, import("@sinclair/typebox").TLiteral<"PositiveInfinity">]>; + is_inclusive: import("@sinclair/typebox").TRef<"Bool">; + }>; + }>]>; + }>]>; + OrderActionV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + OMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ORedeem: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODeposit: import("@sinclair/typebox").TObject<{ + principal: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OWithdraw: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + }>, import("@sinclair/typebox").TObject<{ + OStake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + OUnstake: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectMint: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>, import("@sinclair/typebox").TObject<{ + ODirectBurn: import("@sinclair/typebox").TObject<{ + amount: import("@sinclair/typebox").TBigInt; + }>; + }>]>; + OrderDatumV1: import("@sinclair/typebox").TObject<{ + owner: import("@sinclair/typebox").TRef<"MultisigScript">; + destination: import("@sinclair/typebox").TRef<"Destination">; + action: import("@sinclair/typebox").TRef<"OrderActionV1">; + data: import("@sinclair/typebox").TSchema; + }>; + OrderRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"Execute">, import("@sinclair/typebox").TLiteral<"Cancel">, import("@sinclair/typebox").TLiteral<"Invalidated">]>; + Permissions: import("@sinclair/typebox").TObject<{ + mint: import("@sinclair/typebox").TRef<"MultisigScript">; + burn: import("@sinclair/typebox").TRef<"MultisigScript">; + withdraw: import("@sinclair/typebox").TRef<"MultisigScript">; + deposit: import("@sinclair/typebox").TRef<"MultisigScript">; + stake: import("@sinclair/typebox").TRef<"MultisigScript">; + unstake: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_mint: import("@sinclair/typebox").TRef<"MultisigScript">; + direct_burn: import("@sinclair/typebox").TRef<"MultisigScript">; + yield_oracle: import("@sinclair/typebox").TRef<"MultisigScript">; + migrate: import("@sinclair/typebox").TRef<"MultisigScript">; + }>; + ProtocolConfig: import("@sinclair/typebox").TObject<{ + reserve_assets: import("@sinclair/typebox").TArray>; + unstaked_yield_pot: import("@sinclair/typebox").TObject<{ + payment_credential: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + VerificationKey: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>; + stake_credential: import("@sinclair/typebox").TOptional; + }>, import("@sinclair/typebox").TObject<{ + Script: import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TString]>; + }>]>]>; + }>, import("@sinclair/typebox").TObject<{ + Pointer: import("@sinclair/typebox").TObject<{ + slot_number: import("@sinclair/typebox").TBigInt; + transaction_index: import("@sinclair/typebox").TBigInt; + certificate_index: import("@sinclair/typebox").TBigInt; + }>; + }>]>>; + }>; + }>; + ProtocolRedeemerV1: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ + Mint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Burn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Withdraw: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Deposit: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + alpha: import("@sinclair/typebox").TRef<"YieldSplitAlpha">; + }>; + }>, import("@sinclair/typebox").TObject<{ + Stake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + Unstake: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectMint: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TObject<{ + DirectBurn: import("@sinclair/typebox").TObject<{ + requests: import("@sinclair/typebox").TArray>; + }>; + }>, import("@sinclair/typebox").TLiteral<"MigrateState">]>; + ProxyDatumV1: import("@sinclair/typebox").TObject<{ + logic: import("@sinclair/typebox").TString; + settings: import("@sinclair/typebox").TRef<"SettingsV1">; + }>; + RegistryV1: import("@sinclair/typebox").TObject<{ + treasury: import("@sinclair/typebox").TString; + usdr: import("@sinclair/typebox").TString; + order: import("@sinclair/typebox").TString; + staking_vault: import("@sinclair/typebox").TString; + yield_oracle: import("@sinclair/typebox").TString; + migration: import("@sinclair/typebox").TOptional; + }>; + ReserveAsset: import("@sinclair/typebox").TObject<{ + asset: import("@sinclair/typebox").TRef<"Asset">; + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; + SettingsV1: import("@sinclair/typebox").TObject<{ + permissions: import("@sinclair/typebox").TRef<"Permissions">; + registry: import("@sinclair/typebox").TRef<"RegistryV1">; + config: import("@sinclair/typebox").TRef<"ProtocolConfig">; + }>; + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"DistributionOracleMessage">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedPayload_v1_1_ProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + action: import("@sinclair/typebox").TRef<"ProtocolRedeemerV1">; + nonce: import("@sinclair/typebox").TRef<"Nonce">; + }>; + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: import("@sinclair/typebox").TObject<{ + extra: import("@sinclair/typebox").TRef<"ExtraProtocolRedeemerV1">; + payload: import("@sinclair/typebox").TRef<"SignedPayload_v1_1_ProtocolRedeemerV1">; + signatures: import("@sinclair/typebox").TArray>; + }>; + StakeRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + min_received: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + forfeit: import("@sinclair/typebox").TBigInt; + }>; + StakingVaultRedeemerV1: import("@sinclair/typebox").TUndefined; + TreasuryDatumV1: import("@sinclair/typebox").TObject<{ + circulating_supply: import("@sinclair/typebox").TBigInt; + }>; + TreasuryRequestV1: import("@sinclair/typebox").TObject<{ + destination: import("@sinclair/typebox").TRef<"Destination">; + amount: import("@sinclair/typebox").TBigInt; + yield: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + origin: import("@sinclair/typebox").TObject<{ + transaction_id: import("@sinclair/typebox").TString; + output_index: import("@sinclair/typebox").TBigInt; + }>; + reserve_asset: import("@sinclair/typebox").TRef<"Asset">; + }>; + VaultDatumV1: import("@sinclair/typebox").TObject<{ + circulating_susdr: import("@sinclair/typebox").TBigInt; + pending_yield: import("@sinclair/typebox").TBigInt; + diffusion_start: import("@sinclair/typebox").TBigInt; + diffusion_end: import("@sinclair/typebox").TBigInt; + }>; + YieldSplitAlpha: import("@sinclair/typebox").TObject<{ + numerator: import("@sinclair/typebox").TBigInt; + denominator: import("@sinclair/typebox").TBigInt; + }>; +}, "YieldSplitAlpha">; +export type YieldSplitAlpha = Exact; +export declare class SettingsProtocolSettingsProtocolSettingsSpend { + Script: Script; + constructor(proxyPolicyId: PolicyId, gov: GovernanceConfig, trace?: boolean); +} +export declare class SettingsProtocolSettingsProtocolSettingsWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, gov: GovernanceConfig, trace?: boolean); +} +export declare class SettingsProtocolSettingsProtocolSettingsPublish { + Script: Script; + constructor(proxyPolicyId: PolicyId, gov: GovernanceConfig, trace?: boolean); +} +export declare class SettingsProtocolSettingsProtocolSettingsElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, gov: GovernanceConfig, trace?: boolean); +} +export declare class V1_1Rc1DistributionOracleDistributionOracleWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, oracleNftPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1DistributionOracleDistributionOracleElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, oracleNftPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1OrderOrderSpend { + Script: Script; + constructor(proxyPolicyId: PolicyId, protocolScripthash: ScriptHash, trace?: boolean); +} +export declare class V1_1Rc1OrderOrderElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, protocolScripthash: ScriptHash, trace?: boolean); +} +export declare class V1_1Rc1ProtocolManagementProtocolManagementWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolManagementProtocolManagementPublish { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolManagementProtocolManagementElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolMintProtocolMintWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolMintProtocolMintPublish { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolMintProtocolMintElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, mintValidator: ScriptHash, stakeValidator: ScriptHash, managementValidator: ScriptHash, yieldOracleValidator: ScriptHash, trace?: boolean); +} +export declare class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish { + Script: Script; + constructor(proxyPolicyId: PolicyId, mintValidator: ScriptHash, stakeValidator: ScriptHash, managementValidator: ScriptHash, yieldOracleValidator: ScriptHash, trace?: boolean); +} +export declare class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, mintValidator: ScriptHash, stakeValidator: ScriptHash, managementValidator: ScriptHash, yieldOracleValidator: ScriptHash, trace?: boolean); +} +export declare class V1_1Rc1ProtocolStakeProtocolStakeWithdraw { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolStakeProtocolStakePublish { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProtocolStakeProtocolStakeElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1ProxyNftProxyNftMint { + Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean); +} +export declare class V1_1Rc1ProxyNftProxyNftElse { + Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean); +} +export declare class V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse { + Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1StakingVaultStakingVaultMint { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1StakingVaultStakingVaultSpend { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1StakingVaultStakingVaultElse { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1TreasuryTreasuryMint { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1TreasuryTreasurySpend { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1TreasuryTreasuryElse { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1YieldOracleYieldOracleMint { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1YieldOracleYieldOracleSpend { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export declare class V1_1Rc1YieldOracleYieldOracleElse { + Script: Script; + constructor(utxoRef: OutputReference, proxyPolicyId: PolicyId, trace?: boolean); +} +export {}; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/generated-types/v1_1_rc1/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/generated-types/v1_1_rc1/index.d.ts.map new file mode 100644 index 0000000000..fb10678832 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/generated-types/v1_1_rc1/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generated-types/v1_1_rc1/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/index.d.ts b/modules/realfi-partner-sdk/dist/types/index.d.ts new file mode 100644 index 0000000000..7a9366779a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/index.d.ts @@ -0,0 +1,28 @@ +import type { IApiEndpoints, IRealfiApiSDK, TApiNetwork } from "./api/index.js"; +import type { IRealfiCardanoFactory } from "./sdk/partner.js"; +import * as SundaeSwapSDK from "./sundae/index.js"; +declare const PartnerRealfiApi: { + forNetwork(network: TApiNetwork): IRealfiApiSDK; + create(endpoints: IApiEndpoints): IRealfiApiSDK; +}; +export declare const RealfiSDK: { + cardano: IRealfiCardanoFactory; + api: { + forNetwork(network: TApiNetwork): IRealfiApiSDK; + create(endpoints: IApiEndpoints): IRealfiApiSDK; + }; + sundae: typeof SundaeSwapSDK; +}; +export type { IRealfiCardanoCreateOptions, IBuildStakeContinuationParams, IStakeContinuation, IStakeContinuationSwap, IRealfiCardanoSDKV0_4, IRealfiCardanoSDKV1_0, IRealfiCardanoSDKV1_0Rc1, IRealfiCardanoSDKV1_1Rc1, TDetectedVersion, TRealfiCardanoSDK, TVersionDetectionMode, } from "./sdk/partner.js"; +export type { TDetectedSDKParams, IRealfiSDKParamsV0_4, IRealfiSDKParamsV1_0, IRealfiSDKParamsV1_0Rc1, IRealfiSDKParamsV1_1Rc1, } from "./sdk/index.js"; +export { detectSDKParams, NETWORK_REGISTRY, UnknownProtocolVersionError, YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER, } from "./sdk/shared/detect-params.js"; +export type { IDetectInput, TNetworkPreset, } from "./sdk/shared/detect-params.js"; +export type { TProtocolVersion, IProxyBootstrap, IBaseSDKParams, IRawProxyDatumResult, IProxyDatumResult, ITreasuryDatumResult, IVaultDatumResult, IProxySettings, IReserveAsset, TMultisigScript, IOutputReference, TPermissionKey, } from "./sdk/shared/types.js"; +export { V0_4Types, V1_0Types, V1_0Rc1Types, V1_1Rc1Types, } from "./generated-types/index.js"; +export { calculateSusdrExchangeRate, SUSDR_EXCHANGE_RATE_PRECISION, type ISusdrExchangeRateInputs, } from "./sdk/v1_1_rc1/diffusion.js"; +export * as Utils from "./sdk/shared/public.js"; +export * as TxBuilder from "./tx-builder/index.js"; +export * as SundaeSwap from "./sundae/index.js"; +export { PartnerRealfiApi as RealfiApi }; +export type { IRealfiApiSDK, IApiEndpoints, TApiNetwork, IOrderInfo, IPartnerConfig, IPartnerLimits, IApiOrderUtxo, IStakeTimes, IOrderFees, IYieldBreakdown, IPointsBalance, IReferrerCode, TOrderStatus, TOrderAction, } from "./api/index.js"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/index.d.ts.map new file mode 100644 index 0000000000..7e24c5dfd4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAIhF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,aAAa,MAAM,mBAAmB,CAAC;AAuBnD,QAAA,MAAM,gBAAgB;wBACA,WAAW,GAAG,aAAa;sBAG7B,aAAa,GAAG,aAAa;CAGhD,CAAC;AAGF,eAAO,MAAM,SAAS;;;4BATA,WAAW,GAAG,aAAa;0BAG7B,aAAa,GAAG,aAAa;;;CAUhD,CAAC;AAGF,YAAY,EACV,2BAA2B,EAC3B,6BAA6B,EAC7B,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,2BAA2B,EAC3B,kCAAkC,GACnC,MAAM,+BAA+B,CAAC;AACvC,YAAY,EACV,YAAY,EACZ,cAAc,GACf,MAAM,+BAA+B,CAAC;AAGvC,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,cAAc,GACf,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,SAAS,EACT,SAAS,EACT,YAAY,EACZ,YAAY,GACb,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,KAAK,wBAAwB,GAC9B,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,wBAAwB,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAC;AAIhD,OAAO,EAAE,gBAAgB,IAAI,SAAS,EAAE,CAAC;AACzC,YAAY,EACV,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACV,cAAc,EACd,cAAc,EACd,aAAa,EACb,WAAW,EACX,UAAU,EACV,eAAe,EACf,cAAc,EACd,aAAa,EACb,YAAY,EACZ,YAAY,GACb,MAAM,gBAAgB,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/index.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/index.d.ts new file mode 100644 index 0000000000..d141debcab --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/index.d.ts @@ -0,0 +1,111 @@ +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, type Wallet } from "@blaze-cardano/sdk"; +import type { IDetectInput, TDetectedSDKParams, TNetworkPreset } from "./shared/detect-params.js"; +export type { TDetectedSDKParams } from "./shared/detect-params.js"; +export type { TNetworkPreset } from "./shared/detect-params.js"; +import type { IRealfiSDKParamsV0, RealfiSDKV0 } from "./v0/index.js"; +import type { IRealfiSDKParamsV0_1, RealfiSDKV0_1 } from "./v0_1/index.js"; +import type { IRealfiSDKParamsV0_2, RealfiSDKV0_2 } from "./v0_2/index.js"; +import type { IRealfiSDKParamsV0_3, RealfiSDKV0_3 } from "./v0_3/index.js"; +import type { IRealfiSDKParamsV0_4, RealfiSDKV0_4 } from "./v0_4/index.js"; +import type { IRealfiSDKParamsV1_0, RealfiSDKV1_0 } from "./v1_0/index.js"; +import type { IRealfiSDKParamsV1_0Rc1, RealfiSDKV1_0Rc1 } from "./v1_0_rc1/index.js"; +import type { IRealfiSDKParamsV1_1Rc1, RealfiSDKV1_1Rc1 } from "./v1_1_rc1/index.js"; +export type { IRealfiSDKParamsV0 } from "./v0/index.js"; +export type { IRealfiSDKParamsV0_1 } from "./v0_1/index.js"; +export type { IRealfiSDKParamsV0_2 } from "./v0_2/index.js"; +export type { IRealfiSDKParamsV0_3 } from "./v0_3/index.js"; +export type { IRealfiSDKParamsV0_4 } from "./v0_4/index.js"; +export type { IRealfiSDKParamsV1_0 } from "./v1_0/index.js"; +export type { IRealfiSDKParamsV1_0Rc1 } from "./v1_0_rc1/index.js"; +export type { IRealfiSDKParamsV1_1Rc1 } from "./v1_1_rc1/index.js"; +export * from "./shared/index.js"; +export { RealfiSDKV0 } from "./v0/index.js"; +export { RealfiSDKV0_1 } from "./v0_1/index.js"; +export { RealfiSDKV0_2 } from "./v0_2/index.js"; +export { RealfiSDKV0_3 } from "./v0_3/index.js"; +export { RealfiSDKV0_4 } from "./v0_4/index.js"; +export { RealfiSDKV1_0 } from "./v1_0/index.js"; +export { RealfiSDKV1_0Rc1 } from "./v1_0_rc1/index.js"; +export { RealfiSDKV1_1Rc1 } from "./v1_1_rc1/index.js"; +/** + * Union type of all SDK parameter types + */ +export type TRealfiSDKParams = IRealfiSDKParamsV0 | IRealfiSDKParamsV0_1 | IRealfiSDKParamsV0_2 | IRealfiSDKParamsV0_3 | IRealfiSDKParamsV0_4 | IRealfiSDKParamsV1_0 | IRealfiSDKParamsV1_0Rc1 | IRealfiSDKParamsV1_1Rc1; +/** + * Union type of all SDK versions + */ +export type TRealfiSDK

= RealfiSDKV0 | RealfiSDKV0_1 | RealfiSDKV0_2 | RealfiSDKV0_3 | RealfiSDKV0_4 | RealfiSDKV1_0 | RealfiSDKV1_0Rc1 | RealfiSDKV1_1Rc1; +declare function createRealfiSDK

(blaze: Blaze, params: IRealfiSDKParamsV0): Promise>; +declare function createRealfiSDK

(blaze: Blaze, params: IRealfiSDKParamsV0_1): Promise>; +declare function createRealfiSDK

(blaze: Blaze, params: IRealfiSDKParamsV0_2): Promise>; +declare function createRealfiSDK

(blaze: Blaze, params: IRealfiSDKParamsV0_3): Promise>; +declare function createRealfiSDK

(blaze: Blaze, params: IRealfiSDKParamsV0_4): Promise>; +declare function createRealfiSDK

(blaze: Blaze, params: IRealfiSDKParamsV1_0): Promise>; +declare function createRealfiSDK

(blaze: Blaze, params: IRealfiSDKParamsV1_0Rc1): Promise>; +declare function createRealfiSDK

(blaze: Blaze, params: IRealfiSDKParamsV1_1Rc1): Promise>; +declare function createRealfiSDK

(blaze: Blaze, params: TDetectedSDKParams): Promise | RealfiSDKV1_0 | RealfiSDKV1_0Rc1 | RealfiSDKV1_1Rc1>; +declare function createRealfiSDK

(blaze: Blaze, params: TRealfiSDKParams): Promise>; +/** Call signature for {@link RealfiSDK.detectParams}, kept as an interface so it can carry overloads. */ +interface IDetectParams { + (provider: Provider, config: IDetectInput): Promise; + (provider: Provider, network: TNetworkPreset): Promise; +} +/** + * RealfiSDK namespace for creating SDK instances. + * + * The SDK is the single entry point for all protocol operations. + * Each version class (RealfiSDKV0, RealfiSDKV0_1, RealfiSDKV0_2, etc.) provides + * version-specific functionality with correct types. + * + * The facade lazy-loads each version module via dynamic `import()` so consumer + * bundles only ship the version they actually select at runtime. + * + * @example V0 - Simple minting + * ```typescript + * const sdk = await RealfiSDK.create(blaze, { + * version: "V0", + * proxyBootstrap: { txHash, outputIndex }, + * assetNameHex: "55534472", + * }); + * const mintTx = await sdk.buildMintTx(AssetAmount.fromValue(1000n, decimals)); + * ``` + * + * @example V1_0 - Full protocol with DirectMint/DirectBurn + * ```typescript + * const sdk = await RealfiSDK.create(blaze, { + * version: "V1_0", + * proxyBootstrap: { txHash, outputIndex }, + * treasuryBootstrap: { txHash: treasuryTxHash, outputIndex: treasuryOutputIndex }, + * stakingVaultBootstrap: { txHash: vaultTxHash, outputIndex: vaultOutputIndex }, + * assetNameHex: "55534472", + * sUSDrAssetNameHex: "7355534472", + * }); + * const directMintTx = await sdk.buildDirectMintOrderTx({ amount, destination }); + * ``` + */ +export declare const RealfiSDK: { + /** + * Create a new RealfiSDK instance. + * + * Returns the appropriate version-specific SDK based on the params. + * The returned SDK has full type information for that version. + */ + create: typeof createRealfiSDK; + /** + * Detect the active protocol version from the on-chain proxy datum. + * + * Reads the proxy UTxO, extracts the `logic` script hash, and compares it + * against expected hashes for each known SDK version. Returns fully-typed + * SDK params (including V1_0 backward-compatibility flags) that can be + * passed directly to `RealfiSDK.create`. + * + * `config` also accepts a network preset name (`"mainnet"`, `"preprod"`, + * `"preview"`) in place of an explicit config, resolved via the built-in + * network registry. Custom deployments still pass an explicit config. + * + * @throws {UnknownProtocolVersionError} if the on-chain hash matches no known version. + */ + detectParams: IDetectParams; +}; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/index.d.ts.map new file mode 100644 index 0000000000..d1aba3aaba --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sdk/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/partner-dispatcher.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/partner-dispatcher.d.ts new file mode 100644 index 0000000000..28fd428d9d --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/partner-dispatcher.d.ts @@ -0,0 +1,38 @@ +import type { Provider } from "@blaze-cardano/query"; +import type { Blaze, Wallet } from "@blaze-cardano/sdk"; +import type { IRealfiCardanoCreateOptions, TRealfiCardanoSDK } from "./partner.js"; +import type { TClientSource } from "./shared/client-id.js"; +import { type TDetectedSDKParams } from "./shared/detect-params.js"; +/** + * Create a partner SDK that re-resolves the live protocol version before each + * order build and dispatches to the matching version instance. + * + * Detection identity: the one-shot NFT policy (deterministic from + * `proxyBootstrap`). The proxy UTxO ref changes on every settings update, but + * the NFT lookup follows it, so each refresh is exactly one provider call. + * The fetched `logic` hash is compared against the current instance's + * `protocolScriptHash` — equal in every detectable version — and only on a + * mismatch does the (local, provider-free) version matcher run and the + * underlying instance get recreated, preserving `clientSource` so partner + * order metadata survives the switch. Read helpers never trigger a refresh. + * + * No result caching beyond the last observed hash: freshness only shrinks the + * stale window — correctness is enforced on-chain, and a stale-version build + * is recovered via order invalidation. + * + * Refresh failure policy: an {@link UnknownProtocolVersionError} rejects the + * build — the chain moved to a version this SDK cannot target. Any other + * refresh error (e.g. a transient provider failure) logs a warning and the + * build proceeds on the last known version, which is exactly what an + * `"at-init"` instance would have produced. Stake continuations are stricter + * under this `"per-build"` dispatcher: their address, schema, and + * exchange-rate quote must all match the current deployment, so + * `buildStakeContinuation` fails closed on every refresh error here. An + * `"at-init"` instance, or a raw version-pinned SDK used outside this + * dispatcher, never refreshes at all and carries no such guarantee. + * + * Method identity is unstable across accesses (`sdk.buildX !== sdk.buildX`): + * each access returns a fresh wrapper over the live instance, by design. + */ +export declare function createPartnerCardanoSDK

(blaze: Blaze, params: TDetectedSDKParams, clientSource: TClientSource, options?: IRealfiCardanoCreateOptions): Promise>; +//# sourceMappingURL=partner-dispatcher.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/partner-dispatcher.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/partner-dispatcher.d.ts.map new file mode 100644 index 0000000000..f74cf11266 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/partner-dispatcher.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"partner-dispatcher.d.ts","sourceRoot":"","sources":["../../../src/sdk/partner-dispatcher.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,KAAK,EAAQ,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG9D,OAAO,KAAK,EACV,2BAA2B,EAE3B,iBAAiB,EAClB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAIL,KAAK,kBAAkB,EAExB,MAAM,2BAA2B,CAAC;AA6BnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,uBAAuB,CAC3C,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,MAAM,EAEhB,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAClB,MAAM,EAAE,kBAAkB,EAC1B,YAAY,EAAE,aAAa,EAC3B,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAyJlC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/partner.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/partner.d.ts new file mode 100644 index 0000000000..df60ecd9b9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/partner.d.ts @@ -0,0 +1,81 @@ +import type { Provider } from "@blaze-cardano/query"; +import type { Blaze, Wallet } from "@blaze-cardano/sdk"; +import type { IDetectInput, TDetectedSDKParams, TNetworkPreset } from "./shared/detect-params.js"; +import type { IRealfiSDKParamsV0_4, RealfiSDKV0_4 } from "./v0_4/index.js"; +import type { IRealfiSDKParamsV1_0, RealfiSDKV1_0 } from "./v1_0/index.js"; +import type { IRealfiSDKParamsV1_0Rc1, RealfiSDKV1_0Rc1 } from "./v1_0_rc1/index.js"; +import type { IRealfiSDKParamsV1_1Rc1, RealfiSDKV1_1Rc1 } from "./v1_1_rc1/index.js"; +export type { IBuildStakeContinuationParams, IStakeContinuation, IStakeContinuationSwap, } from "./v1/family.js"; +type TCardanoVersionProp = "version"; +type TCardanoReadMethods = "getRawProxyDatum" | "getParsedProxyDatum" | "getSettings" | "getTreasuryDatum" | "getVaultDatum" | "getUsdrAssetId" | "getSusdrAssetId"; +type TCardanoOrderMethods = "buildMintOrderTx" | "buildRedeemOrderTx" | "buildStakeOrderTx" | "buildUnstakeOrderTx" | "buildDepositOrderTx" | "buildWithdrawOrderTx" | "buildCancelOrdersTx" | "buildClaimTimelockTx"; +type TCardanoOrderMethodsV1 = "buildInvalidatedOrdersTx" | "buildStakeContinuation"; +/** Partner-facing surface of the V0_4 SDK: order builders + read helpers only. */ +export interface IRealfiCardanoSDKV0_4

extends Pick, TCardanoVersionProp | TCardanoReadMethods | TCardanoOrderMethods> { +} +/** Partner-facing surface of the V1_0 SDK. */ +export interface IRealfiCardanoSDKV1_0

extends Pick, TCardanoVersionProp | TCardanoReadMethods | TCardanoOrderMethods | TCardanoOrderMethodsV1> { +} +/** Partner-facing surface of the V1_0_Rc1 SDK. */ +export interface IRealfiCardanoSDKV1_0Rc1

extends Pick, TCardanoVersionProp | TCardanoReadMethods | TCardanoOrderMethods | TCardanoOrderMethodsV1> { +} +/** Partner-facing surface of the V1_1_Rc1 SDK. */ +export interface IRealfiCardanoSDKV1_1Rc1

extends Pick, TCardanoVersionProp | TCardanoReadMethods | TCardanoOrderMethods | TCardanoOrderMethodsV1> { +} +/** Any partner-facing SDK the facade can return after version detection. */ +export type TRealfiCardanoSDK

= IRealfiCardanoSDKV0_4 | IRealfiCardanoSDKV1_0 | IRealfiCardanoSDKV1_0Rc1 | IRealfiCardanoSDKV1_1Rc1; +/** Protocol version as reported by on-chain detection. */ +export type TDetectedVersion = TDetectedSDKParams["version"]; +/** Version-detection behavior of SDK instances returned by `create`. */ +export type TVersionDetectionMode = "per-build" | "at-init"; +/** Options for the partner facade's `create`. */ +export interface IRealfiCardanoCreateOptions { + /** + * `"per-build"` (default): before every order build (`build*`), re-resolve + * the live protocol version — one provider lookup — and dispatch to the + * matching version instance, so an on-chain protocol upgrade needs no + * re-init. Read helpers (`get*`) never re-detect; they use the version as of + * the last check. `"at-init"`: the instance is frozen at the version it was + * created with and never re-detects. + * + * This binding happens at property access, not at call time — a cached + * reference (`const f = sdk.getUsdrAssetId`) keeps targeting the instance + * live when it was read, even if a later `build*Tx` call switches versions. + * Call `sdk.getX()` directly to always read the live version. + * + * Refresh failures under `"per-build"`: an `UnknownProtocolVersionError` + * rejects the build (the chain runs a version this SDK does not know); any + * other error — e.g. a transient provider failure — logs a warning and the + * build proceeds on the last known version. `buildStakeContinuation` fails + * closed on every refresh error under `"per-build"`, because its address, + * schema, and quote must all come from the currently deployed version. + * `"at-init"` instances, and raw version-pinned SDKs used outside this + * factory, never refresh and so carry no such guarantee. + */ + versionDetection?: TVersionDetectionMode; + /** + * Called once per observed protocol-version change, after builders have + * switched to the new version. Exceptions are logged and swallowed. + */ + onVersionChange?: (previous: TDetectedVersion, next: TDetectedVersion) => void; +} +/** + * Partner-facing view of the RealfiSDK facade. `create` returns the narrowed + * `IRealfiCardanoSDK` surface (order builders + read helpers); deploy/operator + * methods are reachable only through the internal entry point. + * + * The static return type reflects the version at creation time. Under + * `"per-build"` detection the runtime instance may later dispatch to a newer + * protocol version — the partner surface is call-compatible across versions, + * so existing call sites keep working; `version` reports the live value. + */ +export interface IRealfiCardanoFactory { + create

(blaze: Blaze, params: IRealfiSDKParamsV0_4, options?: IRealfiCardanoCreateOptions): Promise>; + create

(blaze: Blaze, params: IRealfiSDKParamsV1_0, options?: IRealfiCardanoCreateOptions): Promise>; + create

(blaze: Blaze, params: IRealfiSDKParamsV1_0Rc1, options?: IRealfiCardanoCreateOptions): Promise>; + create

(blaze: Blaze, params: IRealfiSDKParamsV1_1Rc1, options?: IRealfiCardanoCreateOptions): Promise>; + create

(blaze: Blaze, params: TDetectedSDKParams, options?: IRealfiCardanoCreateOptions): Promise>; + detectParams(provider: Provider, config: IDetectInput): Promise; + detectParams(provider: Provider, network: TNetworkPreset): Promise; +} +//# sourceMappingURL=partner.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/partner.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/partner.d.ts.map new file mode 100644 index 0000000000..8b4ca03e4d --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/partner.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"partner.d.ts","sourceRoot":"","sources":["../../../src/sdk/partner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EACV,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EACV,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,6BAA6B,EAC7B,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AAIxB,KAAK,mBAAmB,GAAG,SAAS,CAAC;AAGrC,KAAK,mBAAmB,GACpB,kBAAkB,GAClB,qBAAqB,GACrB,aAAa,GACb,kBAAkB,GAClB,eAAe,GACf,gBAAgB,GAChB,iBAAiB,CAAC;AAGtB,KAAK,oBAAoB,GACrB,kBAAkB,GAClB,oBAAoB,GACpB,mBAAmB,GACnB,qBAAqB,GACrB,qBAAqB,GACrB,sBAAsB,GACtB,qBAAqB,GACrB,sBAAsB,CAAC;AAG3B,KAAK,sBAAsB,GACvB,0BAA0B,GAC1B,wBAAwB,CAAC;AAE7B,kFAAkF;AAElF,MAAM,WAAW,qBAAqB,CACpC,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,MAAM,CAChB,SAAQ,IAAI,CACZ,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EACnB,mBAAmB,GAAG,mBAAmB,GAAG,oBAAoB,CACjE;CAAG;AAEJ,8CAA8C;AAE9C,MAAM,WAAW,qBAAqB,CACpC,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,MAAM,CAChB,SAAQ,IAAI,CACZ,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EACjB,mBAAmB,GACnB,mBAAmB,GACnB,oBAAoB,GACpB,sBAAsB,CACzB;CAAG;AAEJ,kDAAkD;AAElD,MAAM,WAAW,wBAAwB,CACvC,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,MAAM,CAChB,SAAQ,IAAI,CACZ,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EACpB,mBAAmB,GACnB,mBAAmB,GACnB,oBAAoB,GACpB,sBAAsB,CACzB;CAAG;AAEJ,kDAAkD;AAElD,MAAM,WAAW,wBAAwB,CACvC,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,MAAM,CAChB,SAAQ,IAAI,CACZ,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EACpB,mBAAmB,GACnB,mBAAmB,GACnB,oBAAoB,GACpB,sBAAsB,CACzB;CAAG;AAEJ,4EAA4E;AAC5E,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM,IAC9D,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC9B,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAEnC,0DAA0D;AAC1D,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;AAE7D,wEAAwE;AACxE,MAAM,MAAM,qBAAqB,GAAG,WAAW,GAAG,SAAS,CAAC;AAE5D,iDAAiD;AACjD,MAAM,WAAW,2BAA2B;IAC1C;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;IACzC;;;OAGG;IACH,eAAe,CAAC,EAAE,CAChB,QAAQ,EAAE,gBAAgB,EAC1B,IAAI,EAAE,gBAAgB,KACnB,IAAI,CAAC;CACX;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM,EACzC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAClB,MAAM,EAAE,oBAAoB,EAC5B,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM,EACzC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAClB,MAAM,EAAE,oBAAoB,EAC5B,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM,EACzC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAClB,MAAM,EAAE,uBAAuB,EAC/B,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM,EACzC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAClB,MAAM,EAAE,uBAAuB,EAC/B,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM,EACzC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAClB,MAAM,EAAE,kBAAkB,EAC1B,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACpC,YAAY,CACV,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/B,YAAY,CACV,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAChC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/base.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/base.d.ts new file mode 100644 index 0000000000..6b1c8e4a8b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/base.d.ts @@ -0,0 +1,185 @@ +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, TxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import { type TClientSource } from "./client-id.js"; +import type { IBaseSDKParams, ICachedReferenceInputs, IOutputReference, IProxyDatumResult, IProxySettings, IRawProxyDatumResult, ITreasuryDatumResult, TProtocolVersion } from "./types.js"; +/** + * Base interface for SDK version implementations. + * Each version implements this with version-specific logic. + */ +export interface IRealfiSDK { + /** Protocol version */ + readonly version: TProtocolVersion; + /** Stablecoin policy ID (mint proxy) */ + readonly stablecoinPolicyId: Core.PolicyId; + /** One-shot NFT policy ID */ + readonly oneShotPolicyId: Core.PolicyId; + /** Protocol script hash */ + readonly protocolScriptHash: Core.Hash28ByteBase16; + /** Get the raw proxy UTxO + inline datum from the one-shot token UTXO */ + getRawProxyDatum(): Promise; + /** Get and parse the proxy datum using this SDK version's schema */ + getParsedProxyDatum(): Promise>; + /** @deprecated Use getParsedProxyDatum() or getRawProxyDatum() */ + getProxyDatum(): Promise>; + /** Deploy the protocol script */ + deployProtocol(): Promise; + /** Deploy the mint proxy script */ + deployMintProxy(): Promise; + /** Register the protocol stake credential */ + registerProtocolStake(): TxBuilder; + /** Get the protocol reward account */ + getProtocolRewardAccount(): Core.RewardAccount; + /** Mint the one-shot NFT with initial datum */ + mintOneShot(receiverAddress: Core.Address, datum: unknown): Promise<{ + tx: TxBuilder; + policyId: Core.PolicyId; + }>; + /** Update the one-shot datum */ + updateOneShotDatum(receiverAddress: Core.Address, newDatum: unknown): Promise; + /** Get version-agnostic proxy settings (common fields only) */ + getSettings(): Promise; +} +export interface IRealfiSDKWithTreasury extends IRealfiSDK { + /** Treasury NFT asset ID */ + readonly treasuryNFTAssetId: Core.AssetId; + /** Treasury script hash */ + readonly treasuryScriptHash: Core.Hash28ByteBase16; + /** Mint the treasury NFT */ + mintTreasuryNFT(utxo?: Core.TransactionUnspentOutput): Promise<{ + tx: TxBuilder; + nftAssetId: Core.AssetId; + }>; + /** Deploy the treasury script (requires original UTXO for script instantiation) */ + deployTreasury(utxo: Core.TransactionUnspentOutput): Promise; + /** Get the treasury datum */ + getTreasuryDatum(): Promise>; +} +/** + * Abstract base class for SDK versions. + * Provides common implementation and utilities. + */ +export declare abstract class RealfiSDKBase

implements IRealfiSDK { + /** Blaze instance for blockchain interactions */ + protected readonly blaze: Blaze; + /** Bootstrap parameters */ + protected readonly proxyBootstrap: IBaseSDKParams["proxyBootstrap"]; + /** Asset name hex for the stablecoin */ + protected readonly assetNameHex: string; + /** Cached reference inputs for performance (populated on first fetch) */ + protected cachedReferenceInputs: ICachedReferenceInputs; + /** + * Address used to deploy reference scripts and to resolve them from. + * When undefined, Blaze's burn address is used for both. + */ + protected readonly scriptDeploymentAddress?: Core.Address; + /** Cached raw proxy datum result (populated on first fetch) */ + protected cachedRawProxyDatumResult?: IRawProxyDatumResult; + /** Cached parsed proxy datum result (populated on first fetch) */ + protected cachedProxyDatumResult?: IProxyDatumResult; + /** One-shot output reference (derived from bootstrap) */ + protected readonly oneShotTxoRef: IOutputReference; + /** Enable trace output in Plutus scripts */ + readonly enableTrace: boolean; + /** Origin attached to all built order transactions. */ + readonly clientSource: TClientSource; + /** SDK version attached to all built order transactions. */ + readonly sdkVersion: string; + abstract readonly version: TProtocolVersion; + abstract readonly stablecoinPolicyId: Core.PolicyId; + abstract readonly oneShotPolicyId: Core.PolicyId; + abstract readonly protocolScriptHash: Core.Hash28ByteBase16; + protected abstract readonly oneShotScript: Core.Script; + protected abstract readonly protocolScript: Core.Script; + protected abstract readonly mintProxyScript: Core.Script; + protected constructor(blaze: Blaze, params: IBaseSDKParams & { + clientSource?: TClientSource; + }, cachedReferenceInputs?: ICachedReferenceInputs); + /** Get the network from blaze */ + protected get network(): Core.NetworkId; + /** + * Start a transaction with a single setMetadata call. Origin label (55534473) is always + * present and not overridable; extra labels are merged in before the origin is set. + */ + protected newOrderTransaction(extraLabels?: Map): TxBuilder; + /** + * Helper to get reference inputs for scripts. + * Fetched values are cached for subsequent calls. + */ + getScriptReferenceInputs(scriptHashes: Record): Promise>; + /** + * Resolve the bootstrap UTXO from the provider. + * This will fail if the UTXO has already been consumed (i.e., the one-shot token was minted). + */ + protected resolveBootstrapUtxo(): Promise; + /** + * Deploy the protocol script as a reference script. + */ + deployProtocol(): Promise; + /** + * Deploy the mint proxy script as a reference script. + */ + deployMintProxy(): Promise; + /** + * Register the protocol stake credential. + */ + registerProtocolStake(): TxBuilder; + /** + * Get the protocol reward account. + */ + getProtocolRewardAccount(): Core.RewardAccount; + /** + * Get version-agnostic proxy settings. + * Extracts only the common fields shared across V0_2+ protocol versions. + */ + getSettings(): Promise; + /** The USDr asset ID (stablecoin policy + USDr asset name). */ + getUsdrAssetId(): Core.AssetId; + /** + * Build a transaction that claims USDr locked in a timelock address after + * the unstake cooldown has expired. + * + * Reconstructs the timelock native script for the owner's key hash and the + * original unlock slot, then spends the UTxO. `owner` is the timelock owner + * (defaults to the connected wallet) and is set as the required signer, so a + * custodian holding the user's key can claim. The released USDr goes to + * `destination`, or to `owner` when only an owner is given; with neither it + * returns to the connected wallet. + * + * A single owner key has two timelock shapes in the protocol, differing only + * in element order: `buildUnstakeOrderTx` locks to + * `AllOf { Signature, After }` and the treasury/multisig unstake path to + * `AllOf { After, Signature }`. They hash differently, so which one applies + * is read off the UTxO's own locking address rather than assumed. + */ + buildClaimTimelockTx(params: { + resultUtxo: { + txHash: string; + index: number; + }; + unlockSlot: bigint; + owner?: Core.Address; + destination?: Core.Address; + }): Promise; + /** + * Fetch the live proxy UTxO and inline datum without attempting a + * version-specific parse. Cached after first fetch. + * + * `readSingletonDatum` both retries the lookup (a not-found answer is the + * provider's index lagging the UTxO's latest move, not a missing proxy — + * Blockfrost returns HTTP 404 in that window, Sentry TREASURY-ADMIN-API-G) + * and repairs a datum the provider reports as a hash. + */ + getRawProxyDatum(): Promise; + /** + * @deprecated Use getParsedProxyDatum() or getRawProxyDatum() depending on + * whether the caller needs a version-specific schema parse. + */ + getProxyDatum(): Promise>; + abstract getParsedProxyDatum(): Promise>; + abstract mintOneShot(receiverAddress: Core.Address, datum: unknown): Promise<{ + tx: TxBuilder; + policyId: Core.PolicyId; + }>; + abstract updateOneShotDatum(receiverAddress: Core.Address, newDatum: unknown): Promise; +} +//# sourceMappingURL=base.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/base.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/base.d.ts.map new file mode 100644 index 0000000000..44e994375b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/base.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/base.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/cancel.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/cancel.d.ts new file mode 100644 index 0000000000..9e43a97d59 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/cancel.d.ts @@ -0,0 +1,13 @@ +import type { Core } from "@blaze-cardano/sdk"; +import type { TMultisigScript, TProtocolVersion } from "./types.js"; +/** + * Parse an order owner for cancel flows. + * + * Behavior: + * - no version hint: use strict generic owner parsing immediately + * - with version hint: try the hinted schema first + * - hinted parse failure: fall back to strict generic owner parsing + */ +export declare function parseCancelOwner(utxo: Core.TransactionUnspentOutput, versionHint?: TProtocolVersion): Promise; +export declare const parseOrderOwnerWithHint: typeof parseCancelOwner; +//# sourceMappingURL=cancel.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/cancel.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/cancel.d.ts.map new file mode 100644 index 0000000000..582da09620 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/cancel.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"cancel.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/cancel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAapE;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,IAAI,CAAC,wBAAwB,EACnC,WAAW,CAAC,EAAE,gBAAgB,GAC7B,OAAO,CAAC,eAAe,CAAC,CA6C1B;AAED,eAAO,MAAM,uBAAuB,yBAAmB,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/client-id.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/client-id.d.ts new file mode 100644 index 0000000000..a69c41e2b5 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/client-id.d.ts @@ -0,0 +1,4 @@ +export type TClientSource = "partner-sdk" | "internal-sdk"; +export declare const SDK_VERSION = "2.14.0"; +export declare const DEFAULT_CLIENT_SOURCE: TClientSource; +//# sourceMappingURL=client-id.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/client-id.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/client-id.d.ts.map new file mode 100644 index 0000000000..d75cf0eb9e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/client-id.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"client-id.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/client-id.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,cAAc,CAAC;AAK3D,eAAO,MAAM,WAAW,cAAc,CAAC;AAEvC,eAAO,MAAM,qBAAqB,EAAE,aAA8B,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/detect-params.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/detect-params.d.ts new file mode 100644 index 0000000000..2a32f7eabf --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/detect-params.d.ts @@ -0,0 +1,170 @@ +import type { Provider } from "@blaze-cardano/query"; +import { Core } from "@blaze-cardano/sdk"; +import { type TNetworkPreset } from "./network-registry.js"; +import type { IRealfiSDKParamsV0_4 } from "../v0_4/index.js"; +import type { IRealfiSDKParamsV1_0 } from "../v1_0/index.js"; +import type { IRealfiSDKParamsV1_0Rc1 } from "../v1_0_rc1/index.js"; +import type { IRealfiSDKParamsV1_1Rc1 } from "../v1_1_rc1/index.js"; +export type { TNetworkPreset } from "./network-registry.js"; +export { NETWORK_REGISTRY } from "./network-registry.js"; +export type TDetectedSDKParams = IRealfiSDKParamsV0_4 | IRealfiSDKParamsV1_0 | IRealfiSDKParamsV1_0Rc1 | IRealfiSDKParamsV1_1Rc1; +/** + * Default yield_oracle NFT one-shot seed for a deployment that DEFERS the oracle. + * + * The seed only feeds the orchestrator hash at compile time; on-chain it is + * consumed solely when minting the oracle NFT, which a deferred deployment never + * does. An all-zeros tx hash is a valid but permanently un-consumable + * OutputReference, so a deferred deployment can omit the seed entirely and every + * consumer still reconstructs the same orchestrator hash. Supplying a real seed + * overrides this (for a deployment that intends to run the oracle). + */ +export declare const YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER: Readonly<{ + txHash: any; + outputIndex: 0n; +}>; +export interface IDetectInput { + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + stakingVaultBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** + * Dedicated yield_oracle NFT one-shot seed. Only V1_1_Rc1 deployments use + * one. When omitted, detection uses the deferred-oracle placeholder; a + * deployment with a live oracle must supply its real seed. + */ + yieldOracleBootstrap?: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + assetNameHex: string; + sUSDrAssetNameHex: string; + enableTrace?: boolean; + /** + * Deployed validator hashes, keyed exactly as in + * `backend/config/env/.protocol.yaml` (e.g. + * `"v1_0/protocol_orchestrator.protocol_orchestrator.withdraw"`). + * + * Detection otherwise derives each version's hash from the Plutus artifacts + * this package bundles, which only identifies a deployment while those + * artifacts stay byte-identical to the ones actually on chain. Supplying the + * blueprint identifies the deployment by what it *is* rather than by what + * this build happens to ship, so regenerating an artifact cannot strand a + * live deployment. + * + * Omitted, derivation is used unchanged. + */ + protocolValidators?: TBlueprintValidators; +} +/** + * Deployed validator hashes, keyed as in + * `backend/config/env/.protocol.yaml`. + * + * An array carries more than one *generation* of the same deployment — the + * hashes before and after a script cutover. Detection picks the generation + * whose orchestrator matches the chain and applies that one whole, so a + * consumer holding both spans the flip instead of failing closed between the + * on-chain update and its own config reaching it. + * + * Listing both in a single map cannot work and is actively unsafe: the + * override reads exact keys, so one generation's hashes would be applied + * regardless of which one matched, and the SDK would build against addresses + * the chain is not using. + */ +export type TBlueprintValidators = Readonly> | ReadonlyArray>>; +/** + * The generation whose protocol orchestrator equals the deployed `logic` hash. + * + * A single map is returned when it matches, so existing callers are unchanged. + * Nothing is returned when no generation matches — detection then fails closed + * rather than guessing, which is what stops a mismatched build from locking + * orders at an address nothing watches. + */ +export declare function selectBlueprintGeneration(logicHash: Core.ScriptHash, validators: TBlueprintValidators | undefined): Readonly> | undefined; +/** + * Version-discriminating view of the live proxy datum, resolved via the + * one-shot NFT (the proxy's stable identity — the UTxO ref changes on every + * settings update, the NFT does not). + */ +export interface IProxyLogicSnapshot { + /** The `logic` script hash — first field of every ProxyDatum variant. */ + logicHash: Core.ScriptHash; + /** All datum constructor fields; index 1 holds the version-specific settings. */ + datumFields: Core.PlutusList; +} +/** + * Which version a deployed `logic` hash belongs to according to the blueprint, + * or undefined when no blueprint was supplied or none of its orchestrators + * matches. + * + * Only orchestrator entries are consulted: the proxy datum's first field is the + * protocol orchestrator hash, so any other validator matching would mean the + * blueprint disagrees with the chain about what a proxy points at. + */ +export declare function resolveBlueprintVersion(logicHash: Core.ScriptHash, validators: Readonly> | undefined): TDetectedSDKParams["version"] | undefined; +/** + * Compute the one-shot policy id from the proxy bootstrap reference. + * Deterministic and local — no provider access. + */ +export declare function computeOneShotPolicyId(proxyBootstrap: IDetectInput["proxyBootstrap"], enableTrace: boolean): Core.Hash28ByteBase16; +/** + * Fetch the live proxy datum and extract the `logic` script hash. + * Costs exactly one provider lookup. + */ +export declare function fetchProxyLogicSnapshot(provider: Provider, oneShotPolicyId: Core.Hash28ByteBase16): Promise; +/** + * Detect the active SDK version by reading the proxy datum on-chain. + * + * Phase 1: Extract the `logic` script hash from the proxy datum using raw CBOR + * access, avoiding the chicken-and-egg problem where the datum schema differs + * per version. + * + * Phase 2: Compare the extracted hash against expected protocol hashes computed + * deterministically from `proxyBootstrap`. Each version's generated-types + * module is dynamic-imported only when its turn comes — so on a V1_0_Rc1 + * deployment the V1_0 types chunk (~52 KB gzip / ~214 KB raw) is never + * fetched. Vite's chunk splitter creates one chunk per `await import()` site, + * so the chunk topology mirrors the version branches without needing + * a separate matcher file per version. + * + * Priority order: V1_0_Rc1 → V1_0 → V0_4. Latest-deployed-version-first so + * that on the current production environments (which are on V1_0_Rc1), the + * very first matcher succeeds and no additional version chunks are fetched + * to fail a mismatch check first. Rc1 stays ahead of V1_0 so that during the + * transitional period where both SDK slots resolve to byte-identical scripts + * (Rc1 is a module-path-only duplicate of V1_0), we prefer the Rc1 path — + * once V1_0 evolves on-chain, the two hashes diverge and each branch catches + * its own deployment automatically. V0_4 stays as the legacy fallback. + * + * **Re-evaluate this order if V0_4 ever becomes a primary production + * deployment again** — every session on a V0_4-only environment would pay + * two failed-hash-check fetches (V1_0_Rc1 + V1_0) before reaching V0_4. + * + * Throws `UnknownProtocolVersionError` if the `logic` hash does not match any + * known version. + * + * `config` also accepts a network preset name (`"mainnet"`, `"preprod"`, + * `"preview"`) in place of an explicit {@link IDetectInput} — resolved via + * {@link NETWORK_REGISTRY}. Custom deployments still pass an explicit config. + */ +export declare function detectSDKParams(provider: Provider, config: IDetectInput): Promise; +export declare function detectSDKParams(provider: Provider, network: TNetworkPreset): Promise; +/** + * Phase 2 of detection: match an already-fetched `logic` hash against each + * known version's expected hash. Local-only — dynamic imports and hash + * computation, no provider access — so a caller holding a fresh + * `IProxyLogicSnapshot` can re-resolve the version without another lookup. + */ +export declare function matchProtocolVersion(snapshot: IProxyLogicSnapshot, oneShotPolicyId: Core.Hash28ByteBase16, config: IDetectInput): Promise; +export declare class UnknownProtocolVersionError extends Error { + readonly logicHash: string; + constructor(logicHash: string); +} +//# sourceMappingURL=detect-params.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/detect-params.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/detect-params.d.ts.map new file mode 100644 index 0000000000..176748a835 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/detect-params.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"detect-params.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/detect-params.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAI1C,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,MAAM,kBAAkB,GAC1B,oBAAoB,GACpB,oBAAoB,GACpB,uBAAuB,GACvB,uBAAuB,CAAC;AAE5B;;;;;;;;;GASG;AAIH,eAAO,MAAM,kCAAkC;;;EAG7C,CAAC;AAEH,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE;QAAE,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACpE,iBAAiB,EAAE;QAAE,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE,qBAAqB,EAAE;QAAE,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3E;;;;OAIG;IACH,oBAAoB,CAAC,EAAE;QAAE,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3E,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;OAaG;IACH,kBAAkB,CAAC,EAAE,oBAAoB,CAAC;CAC3C;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,oBAAoB,GAC5B,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAChC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;AAEpD;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,IAAI,CAAC,UAAU,EAC1B,UAAU,EAAE,oBAAoB,GAAG,SAAS,GAC3C,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAO9C;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,yEAAyE;IACzE,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC;IAC3B,iFAAiF;IACjF,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC;CAC9B;AAeD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,IAAI,CAAC,UAAU,EAC1B,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,GACvD,kBAAkB,CAAC,SAAS,CAAC,GAAG,SAAS,CAa3C;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,cAAc,EAAE,YAAY,CAAC,gBAAgB,CAAC,EAC9C,WAAW,EAAE,OAAO,GACnB,IAAI,CAAC,gBAAgB,CAQvB;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,IAAI,CAAC,gBAAgB,GACrC,OAAO,CAAC,mBAAmB,CAAC,CAuB9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAC/B,wBAAsB,eAAe,CACnC,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,kBAAkB,CAAC,CAAC;AA6B/B;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,mBAAmB,EAC7B,eAAe,EAAE,IAAI,CAAC,gBAAgB,EACtC,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAsX7B;AAED,qBAAa,2BAA4B,SAAQ,KAAK;aACxB,SAAS,EAAE,MAAM;gBAAjB,SAAS,EAAE,MAAM;CAQ9C"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/errors.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/errors.d.ts new file mode 100644 index 0000000000..eaa71b658c --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/errors.d.ts @@ -0,0 +1,31 @@ +import type { Core } from "@blaze-cardano/sdk"; +/** + * Thrown by `deployScript` when a reference script with the same hash + * already exists on-chain. The thrown instance carries the existing + * reference UTxO so callers that want to reuse the deployment don't + * need to re-query the provider. + * + * Catch this class specifically when a deployment step should be + * idempotent across reruns (e.g. resuming a partially-failed + * bootstrap or upgrade flow): + * + * ```ts + * try { + * const tx = await sdk.deployProtocol(); + * // ...submit... + * } catch (e) { + * if (e instanceof ScriptAlreadyDeployedError) { + * // Use e.refInput, or just skip this step. + * return; + * } + * throw e; + * } + * ``` + */ +export declare class ScriptAlreadyDeployedError extends Error { + readonly name = "ScriptAlreadyDeployedError"; + readonly scriptHash: Core.ScriptHash; + readonly refInput: Core.TransactionUnspentOutput; + constructor(scriptHash: Core.ScriptHash, refInput: Core.TransactionUnspentOutput); +} +//# sourceMappingURL=errors.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/errors.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/errors.d.ts.map new file mode 100644 index 0000000000..497a46124f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/errors.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,0BAA2B,SAAQ,KAAK;IACnD,SAAkB,IAAI,gCAAgC;IACtD,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,wBAAwB,CAAC;gBAG/C,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,QAAQ,EAAE,IAAI,CAAC,wBAAwB;CAS1C"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/index.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/index.d.ts new file mode 100644 index 0000000000..01489af7d1 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/index.d.ts @@ -0,0 +1,11 @@ +export * from "./types.js"; +export * from "./utils.js"; +export * from "./base.js"; +export * from "./client-id.js"; +export * from "./detect-params.js"; +export * from "./timelock.js"; +export * from "./reserve-assets.js"; +export * from "./slots.js"; +export * from "./cancel.js"; +export * from "./errors.js"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/index.d.ts.map new file mode 100644 index 0000000000..4144ce0161 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/network-registry.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/network-registry.d.ts new file mode 100644 index 0000000000..4d0d50ff96 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/network-registry.d.ts @@ -0,0 +1,4 @@ +import type { IDetectInput } from "./detect-params.js"; +export type TNetworkPreset = "mainnet" | "preprod" | "preview"; +export declare const NETWORK_REGISTRY: Readonly>; +//# sourceMappingURL=network-registry.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/network-registry.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/network-registry.d.ts.map new file mode 100644 index 0000000000..f65b9b7309 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/network-registry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"network-registry.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/network-registry.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AA2B/D,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,CAoExE,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/public.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/public.d.ts new file mode 100644 index 0000000000..352e5124db --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/public.d.ts @@ -0,0 +1,4 @@ +export { addressToDestination, destinationToAddress, getSignatureKeyHashesFromMultisigScript, getScriptKeyHashesFromMultisigScript, getAllKeyHashesFromMultisigScript, normalizeProtocolVersion, normalizeOrderVersion, } from "./utils.js"; +export { findReserveAsset, usdrToReserve, usdrToReserveCeil, } from "./reserve-assets.js"; +export { buildTimelockAddress } from "./timelock.js"; +//# sourceMappingURL=public.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/public.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/public.d.ts.map new file mode 100644 index 0000000000..e2f6a8428c --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/public.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/public.ts"],"names":[],"mappings":"AACA,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,uCAAuC,EACvC,oCAAoC,EACpC,iCAAiC,EACjC,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/reserve-assets.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/reserve-assets.d.ts new file mode 100644 index 0000000000..e664a05a0d --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/reserve-assets.d.ts @@ -0,0 +1,30 @@ +import type { IReserveAsset } from "./types.js"; +type TSettingsWithReserveAssets = { + reserve_assets: IReserveAsset[]; +}; +type TOrderInfoWithReserveAsset = { + reserveAsset?: [string, string]; + amount: bigint; +}; +/** + * Find a reserve asset config by policy+name from settings. + */ +export declare function findReserveAsset(settings: TSettingsWithReserveAssets, asset: [string, string]): IReserveAsset; +/** + * Convert USDr amount to reserve amount (floor division, protocol-protective for burns). + * Matches on-chain: usdr_to_reserve(amount, ra) = amount * denominator / numerator + */ +export declare function usdrToReserve(usdrAmount: bigint, ra: IReserveAsset): bigint; +/** + * Convert USDr amount to reserve amount (ceiling division, protocol-protective for mints). + * Matches on-chain: usdr_to_reserve_ceil(amount, ra) = (amount * denominator + numerator - 1) / numerator + */ +export declare function usdrToReserveCeil(usdrAmount: bigint, ra: IReserveAsset): bigint; +/** + * Compute per-reserve-asset deltas from order infos. + * Groups orders by reserve asset and converts USDr amounts to reserve amounts. + * @param negate If true, negate the delta (used for withdraw where amounts are positive but treasury outflow is negative) + */ +export declare function computeReserveDeltas(orderInfos: TOrderInfoWithReserveAsset[], settings: TSettingsWithReserveAssets, negate?: boolean): Map; +export {}; +//# sourceMappingURL=reserve-assets.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/reserve-assets.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/reserve-assets.d.ts.map new file mode 100644 index 0000000000..c75a45fc86 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/reserve-assets.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"reserve-assets.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/reserve-assets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,KAAK,0BAA0B,GAAG;IAChC,cAAc,EAAE,aAAa,EAAE,CAAC;CACjC,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,0BAA0B,EACpC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GACtB,aAAa,CAgBf;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,GAAG,MAAM,CAE3E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,aAAa,GAChB,MAAM,CAER;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,0BAA0B,EAAE,EACxC,QAAQ,EAAE,0BAA0B,EACpC,MAAM,GAAE,OAAe,GACtB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAsBrB"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/slots.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/slots.d.ts new file mode 100644 index 0000000000..19fa8e3c97 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/slots.d.ts @@ -0,0 +1,58 @@ +import type { Provider } from "@blaze-cardano/query"; +import { Core } from "@blaze-cardano/sdk"; +/** + * The slot/time conversions a slot-alignment needs. Structural (rather than the + * `Provider` class) so callers can pass any provider — Blockfrost, Kupmios, + * `EmulatorProvider` — and tests can pass a plain object with a known slot + * config. Note that `Emulator` (the clock, not its provider) also satisfies this + * shape while rounding the other way; {@link slotFloor} handles both. + */ +export type TSlotClock = Pick; +/** + * The integer slot that contains `timeMs`: the latest slot that has already + * started at `timeMs`. + * + * `provider.unixToSlot` does **not** floor — it returns + * `(ms - zeroTime) / slotLength + zeroSlot`, so for any wall-clock time that is + * not exactly on a slot boundary it yields a **fractional** slot. Two things + * then go wrong if that value is used as-is: + * + * 1. A tx body stores `invalid_before` / `invalid_hereafter` as **integer** + * slots, and the CBOR writer silently truncates the fraction. The value the + * validator reads is therefore not the value the SDK computed with. + * 2. The round-trip `slotToUnix(unixToSlot(t))` — the natural way to express + * "snap `t` to its slot" — is the *identity* on `t`, not an alignment. + * + * That combination cost us a crashed windowed deposit on preview: the vault + * output's `diffusion_start` kept the sub-slot remainder while the tx's validity + * lower bound was floored, so `validate_deposit_diffusion`'s + * `diffusion_start == now` check failed by that remainder (REALFI-653). The + * emulator hid it because the clock injected in tests is already slot-aligned — + * not because of any provider difference: `EmulatorProvider` extends the same + * `Provider` base and returns the same fractional slots. + * + * Flooring alone would not be enough for a clock that ROUNDS UP: `Emulator` + * itself (as opposed to the `EmulatorProvider` Blaze hands the SDK) implements + * `unixToSlot` with `Math.ceil`, and being structural, `TSlotClock` accepts it. + * Flooring a ceiled slot is a no-op, which would hand back a slot that has not + * started yet. So the candidate is checked against its own start time and walked + * back when it overshoots — a branch no real provider ever takes, and the reason + * the contract above holds for *any* clock rather than only the fractional ones. + * + * **Audit invariant:** `unixToSlot` must not be called anywhere else in the SDK. + * `rg 'unixToSlot' src/` matching only this file *is* the audit — keep it that + * way so a future time→slot conversion cannot reintroduce the bug. + */ +export declare function slotFloor(clock: TSlotClock, timeMs: bigint | number): Core.Slot; +/** + * `timeMs` snapped back to the start of its slot, as POSIX ms — exactly the + * "now" a validator reads from a tx whose validity bound is + * `slotFloor(clock, timeMs)`. Use this for any timestamp that has to equal a + * validity bound on-chain (a diffusion window's `diffusion_start`, a rate quote + * time), so the datum and the tx body cannot disagree. + * + * Idempotent — aligning an already-aligned time is a no-op — so a time derived + * from an aligned one (a backoff, a forward window) can be aligned again safely. + */ +export declare function slotAlignedTimeMs(clock: TSlotClock, timeMs: bigint | number): bigint; +//# sourceMappingURL=slots.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/slots.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/slots.d.ts.map new file mode 100644 index 0000000000..1bbc283f0a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/slots.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"slots.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/slots.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,YAAY,CAAC,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,GAAG,MAAM,GACtB,IAAI,CAAC,IAAI,CAKX;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,GAAG,MAAM,GACtB,MAAM,CAER"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/timelock.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/timelock.d.ts new file mode 100644 index 0000000000..8bcacafac0 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/timelock.d.ts @@ -0,0 +1,102 @@ +import { Core } from "@blaze-cardano/sdk"; +import type { TClientSource } from "./client-id.js"; +import type { TMultisigScript } from "./types.js"; +type TDestinationCredentialLike = { + VerificationKey: [string]; +} | { + Script: [string]; +}; +type TTimelockDestinationLike = { + address: { + payment_credential: TDestinationCredentialLike; + stake_credential?: { + Inline: [TDestinationCredentialLike]; + } | { + Pointer: unknown; + }; + }; +}; +/** + * Convert the protocol MultisigScript shape to a Cardano native script. + * + * The protocol's `Script` variant references an arbitrary script hash, which + * native scripts cannot require directly, so this helper rejects it. + */ +export declare function multisigScriptToNativeScript(multisig: TMultisigScript): Core.NativeScript; +/** + * Build the native script used for timelock destinations after unstaking. + * + * The script enforces: AllOf { Signature(userKeyHash), After(unlockTime) } + * meaning the user can only spend the locked USDr after the unlock time. + * + * Use this to reconstruct the script when spending from a timelock address. + */ +export declare function buildTimelockNativeScript(userKeyHash: string, unlockTime: bigint): Core.NativeScript; +/** + * Build the native script used for treasury-managed unstake destinations. + * + * The script enforces: AllOf { After(unlockSlot), ownerMultisigScript }. + */ +export declare function buildMultisigTimelockNativeScript(owner: TMultisigScript, unlockSlot: bigint): Core.NativeScript; +/** + * Pick the timelock native script that a UTxO is actually locked at. + * + * One owner key and one unlock slot yield two different scripts depending on + * which flow created the timelock: the retail unstake path builds + * `AllOf { Signature, After }` and the treasury/multisig path + * `AllOf { After, Signature }`. Same requirements, different element order, + * different hash. The locking address names the script, so it is the authority + * on which one to provide — guessing produces a witness the ledger cannot + * resolve (Sentry DAPP-58). + * + * Timelocks requiring keys beyond `ownerKeyHash` match neither candidate and + * are rejected here, where the reason can be stated, rather than deep inside + * transaction building. + */ +export declare function resolveTimelockNativeScript(lockingAddress: Core.Address, ownerKeyHash: string, unlockSlot: bigint): Core.NativeScript; +/** + * Reconstruct the timelock address for a given user key hash, optional stake + * credential, and unlock slot. Useful for querying the live UTxO set to + * determine whether a claim has already been made. + */ +export declare function buildTimelockAddress(networkId: Core.NetworkId, userKeyHash: string, unlockSlot: bigint, stakeCredential?: Core.Credential): Core.Address; +/** + * Build a destination that routes funds to a timelock native script while + * preserving the original stake credential. + */ +export declare function buildTimelockDestination(userDestination: T, unlockTime: bigint): { + address: { + payment_credential: { + Script: [string]; + }; + stake_credential: T["address"]["stake_credential"]; + }; + datum: "NoDatum"; +}; +export declare function destinationToUnstakeMetadatum(destination: TTimelockDestinationLike): Core.Metadatum; +/** Label 55534472: unstake destination + unlock_time on every unstake order. */ +export declare const UNSTAKE_METADATA_LABEL = 55534472n; +/** Build the metadatum for label 55534472 from a destination and unlock slot. */ +export declare function buildUnstakeMetadatum(destination: TTimelockDestinationLike, unlockSlot: bigint): Core.Metadatum; +/** Label 55534473: SDK builder origin + version on every order transaction. */ +export declare const ORDER_ORIGIN_METADATA_LABEL = 55534473n; +/** Build the metadatum for label 55534473 from a source + version pair. */ +export declare function buildOrderOriginMetadatum(source: TClientSource, sdkVersion: string): Core.Metadatum; +/** Build a Metadata object containing only the origin label (55534473). */ +export declare function buildOrderOriginMetadata(source: TClientSource, sdkVersion: string): Core.Metadata; +export declare function buildUnstakeOrderMetadata(destination: TTimelockDestinationLike, unlockSlot: bigint, source: TClientSource, sdkVersion: string): Core.Metadata; +/** + * Build a destination that routes funds to a treasury multisig timelock native + * script while preserving the original stake credential. + */ +export declare function buildMultisigTimelockDestination(destination: T, owner: TMultisigScript, unlockSlot: bigint): { + address: { + payment_credential: { + Script: [string]; + }; + stake_credential: T["address"]["stake_credential"]; + }; + datum: "NoDatum"; +}; +export {}; +//# sourceMappingURL=timelock.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/timelock.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/timelock.d.ts.map new file mode 100644 index 0000000000..9a389dad7b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/timelock.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"timelock.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/timelock.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/types.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/types.d.ts new file mode 100644 index 0000000000..46e6ffd5a0 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/types.d.ts @@ -0,0 +1,137 @@ +import type { Core } from "@blaze-cardano/sdk"; +/** + * Protocol version identifier + */ +export type TProtocolVersion = "V0" | "V0_1" | "V0_2" | "V0_3" | "V0_4" | "V1_0" | "V1_0_Rc1" | "V1_1_Rc1"; +/** + * Bootstrap parameters for initializing the SDK + */ +export interface IProxyBootstrap { + txHash: Core.TransactionId; + outputIndex: bigint; +} +/** + * Base parameters common to all SDK versions + */ +export interface IBaseSDKParams { + version: TProtocolVersion; + proxyBootstrap: IProxyBootstrap; + assetNameHex: string; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When set, + * deployment locks reference UTxOs at this address and resolution queries it + * first (a small, fast UTxO set). When omitted, Blaze's burn address is used. + */ + scriptDeploymentAddress?: Core.Address; +} +/** + * Reference inputs that can be cached for performance + */ +export interface ICachedReferenceInputs { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + stakingVaultRefInput?: Core.TransactionUnspentOutput; + protocolMintRefInput?: Core.TransactionUnspentOutput; + protocolStakeRefInput?: Core.TransactionUnspentOutput; + protocolManagementRefInput?: Core.TransactionUnspentOutput; +} +/** + * Result type for raw proxy-datum fetches. + */ +export interface IRawProxyDatumResult { + proxyUtxo: Core.TransactionUnspentOutput; + proxyDatum: Core.PlutusData; +} +/** + * Result type for parsed proxy-datum fetches. + */ +export interface IProxyDatumResult extends IRawProxyDatumResult { + parsedProxyDatum: T; +} +/** + * Result type for getTreasuryDatum operations + */ +export interface ITreasuryDatumResult { + treasuryUtxo: Core.TransactionUnspentOutput; + treasuryDatum: Core.PlutusData; + parsedTreasuryDatum: T; +} +/** + * Result type for getVaultDatum operations + */ +export interface IVaultDatumResult { + vaultUtxo: Core.TransactionUnspentOutput; + vaultDatum: Core.PlutusData; + parsedVaultDatum: T; +} +/** + * Output reference type used in scripts + */ +export interface IOutputReference { + transaction_id: Core.TransactionId; + output_index: bigint; +} +/** + * Version-agnostic MultisigScript. Structurally identical across all + * protocol versions (same Plutus CBOR encoding). + */ +export type TMultisigScript = { + Signature: { + key_hash: string; + }; +} | { + AllOf: { + scripts: TMultisigScript[]; + }; +} | { + AnyOf: { + scripts: TMultisigScript[]; + }; +} | { + AtLeast: { + required: bigint; + scripts: TMultisigScript[]; + }; +} | { + Before: { + time: bigint; + }; +} | { + After: { + time: bigint; + }; +} | { + Script: { + script_hash: string; + }; +}; +/** + * Version-agnostic reserve asset. + */ +export interface IReserveAsset { + asset: [string, string]; + numerator: bigint; + denominator: bigint; +} +/** + * Version-agnostic proxy settings — common fields only. + * Hides version-specific fields (direct_mint/burn_permission, registry shape). + */ +export interface IProxySettings { + mint_permission: TMultisigScript; + burn_permission: TMultisigScript; + withdraw_permission: TMultisigScript; + deposit_permission: TMultisigScript; + stake_permission: TMultisigScript; + unstake_permission: TMultisigScript; + reserve_assets: IReserveAsset[]; +} +/** + * Permission key — for safely indexing into IProxySettings. + */ +export type TPermissionKey = "mint_permission" | "burn_permission" | "withdraw_permission" | "deposit_permission" | "stake_permission" | "unstake_permission"; +//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/types.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/types.d.ts.map new file mode 100644 index 0000000000..883cd34007 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/types.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/types.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/utils.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/shared/utils.d.ts new file mode 100644 index 0000000000..00a4555185 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/utils.d.ts @@ -0,0 +1,274 @@ +import { type TSchema } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { Core, TxBuilder, type Blaze, type CIP30DataSignature, type Wallet } from "@blaze-cardano/sdk"; +import { SignatureList, type Destination } from "src/generated-types/v0_3/index.js"; +import { V0_3Types } from "../../generated-types/index.js"; +import type { TMultisigScript, TProtocolVersion } from "./types.js"; +type TDestinationCredentialLike = { + VerificationKey: [string]; +} | { + Script: [string]; +}; +type TDestinationLike = { + address: { + payment_credential: TDestinationCredentialLike; + stake_credential?: { + Inline: [TDestinationCredentialLike]; + } | unknown; + }; + datum: "NoDatum" | { + DatumHash: [string]; + } | { + InlineDatum: [Core.PlutusData | unknown]; + }; +}; +/** + * Create a reward account from a script + */ +export declare function rewardAccountFromScript(script: Core.Script, network: Core.NetworkId): Core.RewardAccount; +/** + * Create a credential from a script + */ +export declare function credentialFromScript(script: Core.Script): Core.Credential; +/** + * Create a credential from a script hash + */ +export declare function credentialFromScriptHash(scriptHash: Core.Hash28ByteBase16): Core.Credential; +/** + * Send a value (with an attached datum) to either a key-credentialled or + * script-credentialled address. This helper emits an explicit output for + * the destination address so callers (mintOneShot / updateOneShotDatum / + * etc.) work transparently in both single-signer and multisig deployments. + * + * Mutates `tx` (matching Blaze's builder pattern) and returns it for chaining. + */ +export declare function lockOrPayAssets(tx: TxBuilder, address: Core.Address, value: Core.Value, datum: Core.PlutusData): TxBuilder; +/** + * Add an explicit transaction output for the target address and value. + * + * Mutates `tx` and returns it for call sites that want to keep builder-style + * chaining. + */ +export declare function addDirectOutput(tx: TxBuilder, address: Core.Address, value: Core.Value, datum?: Core.PlutusData): TxBuilder; +/** + * Deploy a script as a reference script. + * + * When `address` is provided, the reference UTxO is locked at that address + * (instead of Blaze's default burn address), which lets resolution query a + * small, dedicated UTxO set rather than the shared burn address. + * + * Throws `ScriptAlreadyDeployedError` (carrying the existing reference + * UTxO) if the script is already deployed *at the target location* — the + * specified `address` when given, otherwise the burn-address default. The + * guard is intentionally scoped to the deploy target only: a copy that + * exists elsewhere (e.g. a legacy copy at the burn address) does NOT block + * deploying to a newly specified address, which is exactly what a migration + * needs. Callers that want idempotent reruns should catch that specific class. + */ +export declare function deployScript

(blaze: Blaze, script: Core.Script, address?: Core.Address): Promise; +/** + * Look up an NFT UTxO, retrying indexer lag after the output moves. + * Treats both a thrown 404 and an empty result as lag. Re-throws the last + * provider error when the budget is exhausted. + */ +export declare function getUnspentOutputByNftWithRetry(provider: Provider, assetId: Core.AssetId): Promise; +/** + * Read an NFT singleton (proxy, treasury, vault) and its datum. + * + * Protocol singletons are locked inline. A hash-form read is a provider + * artifact (Blockfrost omitting `inline_datum`). Validators require + * `InlineDatum` on the singleton input; passing the preimage as `addInput`'s + * 3rd arg is a supplemental witness datum that local eval and phase-1 reject. + * Resolve the hash, verify the preimage, and reattach it inline. + * + * The lookup is retried: a singleton always exists, so a not-found answer is + * the provider's index lagging the UTxO's latest move, not a missing singleton. + */ +export declare function readSingletonDatum(provider: Provider, nftAssetId: Core.AssetId): Promise<{ + utxo: Core.TransactionUnspentOutput; + datum: Core.PlutusData; +}>; +/** + * Get datum from a UTxO containing a specific NFT, optionally parsed under + * `datumSchema`. Datum-hash reads are repaired by {@link readSingletonDatum}. + */ +export declare function getDatumFromNFT

(blaze: Blaze, nftAssetId: Core.AssetId, datumSchema?: TSchema): Promise<{ + utxo: Core.TransactionUnspentOutput; + datum: Core.PlutusData; + parsedDatum: T; +}>; +/** + * Get script reference inputs, using cached values when available. + * + * When `address` is provided, each script is resolved at that address first + * (a fast, dedicated query) and only falls back to Blaze's burn-address + * default if it isn't found there. This keeps previously burn-address-deployed + * scripts resolvable while migrating to a specified deployment address. + */ +export declare function getReferenceInputs

(blaze: Blaze, scriptHashes: Record, cachedInputs?: Partial>, address?: Core.Address): Promise>; +/** + * Extract signature key hashes from a multisig script + */ +export declare const getSignatureKeyHashesFromMultisigScript: (multisig: TMultisigScript) => string[]; +/** + * Extract script key hashes from a multisig script + */ +export declare const getScriptKeyHashesFromMultisigScript: (multisig: TMultisigScript) => string[]; +/** + * Extract all key hashes (signature + script) from a multisig script + */ +export declare const getAllKeyHashesFromMultisigScript: (multisig: TMultisigScript) => string[]; +/** + * Sort order inputs by txHash and outputIndex for deterministic ordering. + * This ensures consistent payload generation across all signers. + */ +export declare const sortOrderInputs: (orderInputs: Core.TransactionInput[]) => Core.TransactionInput[]; +/** + * Build a nonce from the first order UTxO. + */ +export declare const buildNonceFromUtxo: (utxo: Core.TransactionInput) => V0_3Types.Nonce; +/** + * Build the origin ByteArray (CBOR-serialized OutputReference) from a UTxO. + * Used by v0_4 SDK and shared helpers. + */ +export declare const buildOriginFromUtxo: (utxo: Core.TransactionUnspentOutput) => string; +/** + * KeySignature type matching the contract's KeySignature tuple. + * A tuple of [VerificationKey, COSESign1] where: + * - VerificationKey: 32-byte Ed25519 public key (hex string) + * - COSESign1: COSE signature with headers (raw CBOR bytes) and detached payload + */ +export type TKeySignature = [ + string, + { + headers: { + protected: string; + unprotected: string; + }; + payload?: string; + signature: string; + } +]; +export declare const destructureCip30Signature: (cip30Signature: CIP30DataSignature) => Promise<{ + publicKey: string; + coseSign1: { + headers: { + protected: string; + unprotected: string; + }; + signature: string; + }; +}>; +/** + * Produce a COSE (CIP-8) signature tuple over `payloadHash` using the connected + * wallet's key. The reusable building block for signer callbacks — e.g. the + * settings-governance `signAuthPayload` or an orchestrator signed redeemer — + * that wraps `signData` + `destructureCip30Signature` into the on-chain tuple. + */ +export declare const signPayloadHashWithWallet:

(blaze: Blaze, payloadHash: string) => Promise; +/** + * Create a SignedRedeemer_ExtraProtocolRedeemer structure for on-chain verification. + * + * @param extra - The extra protocol redeemer data (e.g., request_to_outputs mapping) + * @param payload - The SignedPayload_ProtocolRedeemer CBOR hex string (action + nonce) + * @param signatures - Array of KeySignature tuples from each signer + * @returns A SignedRedeemer_ExtraProtocolRedeemer ready for use in transaction + */ +export declare const createSignedRedeemer: (extra: V0_3Types.ExtraProtocolRedeemer, payload: string, signatures: SignatureList) => V0_3Types.SignedRedeemer_ExtraProtocolRedeemer; +/** + * Parse a CIP-8 COSE_Sign1 and extract the pieces the on-chain KeySignature + * tuple needs: the protected header map bytes (byte-string content, wrapper + * removed) and the raw Ed25519 signature bytes. + * + * COSE_Sign1 = [ protected: bstr, unprotected: map, payload: bstr / nil, + * signature: bstr ], optionally wrapped in CBOR tag 18. The protected element + * is itself a byte string whose content is the serialized header map; reading + * the byte-string content yields the raw header-map bytes the tuple stores. + * Indefinite-length encodings of the array, the maps, and the byte strings + * are accepted alongside the definite forms. + */ +export declare const readCoseSign1Parts: (coseSign1Hex: string) => { + protected: string; + signature: string; +}; +/** + * Build the SignedPayload_ProtocolRedeemer for a withdraw operation. + * Uses the treasury UTxO as the nonce source. + * + * @param requests - Array of withdraw requests with destinations and amounts + * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce) + * @returns SignedPayload_ProtocolRedeemer CBOR hex string + */ +export declare const getSignedPayloadForWithdraw: (amount: bigint, treasuryUtxo: Core.TransactionUnspentOutput) => string; +/** + * Build the SignedPayload_ProtocolRedeemer for a deposit operation. + * Uses the treasury UTxO as the nonce source. + * + * @param amount - The amount of reserve tokens to deposit + * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce) + * @returns SignedPayload_ProtocolRedeemer CBOR hex string + */ +export declare const getSignedPayloadForDeposit: (amount: bigint, treasuryUtxo: Core.TransactionUnspentOutput) => string; +/** + * Convert a Cardano address to a Destination type for order transactions. + * Extracts payment and stake credentials from the address. + * + * @param address - The Cardano address to convert + * @param datum - Optional datum for the destination (defaults to "NoDatum") + * @returns A Destination object suitable for order transactions + */ +export declare function addressToDestination(address: Core.Address, datum?: Destination["datum"]): Destination; +/** + * Convert a Destination-like value into a Cardano address. + * Supports enterprise and base addresses. Pointer credentials are ignored. + */ +export declare function destinationToAddress(network: Core.NetworkId, destination: TDestinationLike): Core.Address; +/** + * Add an output for a Destination, including script-payment addresses and + * any datum metadata attached to the destination. + * + * Attaches the datum directly to a fresh TransactionOutput rather than + * routing through Core.TransactionOutput.fromCore, because generated + * TPlutusData values from @blaze-cardano/data are already Blaze + * PlutusData instances and PlutusData.fromCore does not know how to + * decode them (throws NotImplementedError). + */ +export declare function addDestinationOutput(tx: TxBuilder, network: Core.NetworkId, destination: TDestinationLike, value: Core.Value): void; +/** + * Normalize externally-sourced protocol/order version strings into the SDK's + * canonical `TProtocolVersion` values. + */ +export declare const normalizeProtocolVersion: (version: string | null | undefined) => TProtocolVersion | undefined; +/** + * Alias for frontend order-version sources (GraphQL/backend strings). + */ +export declare const normalizeOrderVersion: (version: string | null | undefined) => TProtocolVersion | undefined; +/** + * Extract the inline datum from a UTxO. + */ +export declare const getInlineDatumFromUtxo: (utxo: Core.TransactionUnspentOutput, label?: string) => Core.PlutusData; +/** + * Extract the payment script hash from an order UTxO's output address. + */ +export declare const getScriptHashFromOrderUtxo: (utxo: Core.TransactionUnspentOutput) => Core.Hash28ByteBase16; +/** + * Resolve one reference input per unique script hash. + */ +export declare function resolveReferenceInputsByScriptHash

(blaze: Blaze, scriptHashes: Iterable, cachedInputs?: ReadonlyMap | Partial>, address?: Core.Address): Promise>; +/** + * Resolve the order reference inputs needed to spend a batch of order UTxOs. + */ +export declare function resolveOrderReferenceInputs

(blaze: Blaze, orderUtxos: Iterable, cachedInputs?: ReadonlyMap | Partial>, address?: Core.Address): Promise>; +/** + * Strict owner-only parser for order datums used by cross-version cancel. + * + * All currently-supported order datum variants encode as: + * Constr(0, [owner, destination, action, data]). + */ +export declare const parseOrderOwnerGenericFromDatum: (datum: Core.PlutusData) => TMultisigScript; +/** + * Strict owner-only parser for cancel flows. + */ +export declare const parseOrderOwnerGeneric: (utxo: Core.TransactionUnspentOutput) => TMultisigScript; +export {}; +//# sourceMappingURL=utils.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/shared/utils.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/shared/utils.d.ts.map new file mode 100644 index 0000000000..b29d4fbdec --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/shared/utils.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/sdk/shared/utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v0/index.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v0/index.d.ts new file mode 100644 index 0000000000..b728a69aaa --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v0/index.d.ts @@ -0,0 +1,79 @@ +import * as Data from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, TxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import { AssetAmount } from "@sundaeswap/asset"; +import { type IProxyDatumResult, RealfiSDKBase } from "../shared/index.js"; +/** + * V0 datum type - simple datum with logic hash and no settings + */ +export declare const AdminDatum: Data.TObject<{ + logic: Data.TString; + settings: Data.TVoid; +}>; +export type TAdminDatumType = { + logic: string; + settings: void; +}; +export interface IRealfiSDKParamsV0 { + version: "V0"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + assetNameHex: string; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + }; +} +/** + * V0 SDK implementation. + * + * Simple minting without treasury management. + * All operations (oneshot, protocol, mint proxy) are consolidated here. + */ +export declare class RealfiSDKV0

extends RealfiSDKBase { + readonly version: "V0"; + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + private constructor(); + /** + * Create a V0 SDK instance. + */ + static create

(blaze: Blaze, params: IRealfiSDKParamsV0): RealfiSDKV0; + /** + * Mint the one-shot NFT with the initial datum. + * This consumes the bootstrap UTXO and can only be done once. + */ + mintOneShot(receiverAddress: Core.Address, datum: TAdminDatumType): Promise<{ + tx: TxBuilder; + policyId: Core.PolicyId; + }>; + /** + * Update the one-shot datum. + * This spends the one-shot UTXO and sends it back to the receiver with new datum. + */ + updateOneShotDatum(receiverAddress: Core.Address, newDatum: TAdminDatumType): Promise; + /** + * Get the proxy datum from the one-shot token UTXO. + * Result is cached after first fetch. + */ + getParsedProxyDatum(): Promise>; + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0 minting is simple - no treasury involvement. + */ + buildMintTx(amount: AssetAmount): Promise; +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v0/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v0/index.d.ts.map new file mode 100644 index 0000000000..799e1befd5 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v0/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v0/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,qBAAqB,CAAC;AAE5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,KAAK,KAAK,EACV,IAAI,EAEJ,SAAS,EACT,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAGL,KAAK,iBAAiB,EAEtB,aAAa,EACd,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,eAAO,MAAM,UAAU;;;EAMtB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,IAAI,CAAC;CAChB,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,IAAI,CAAC;IACd,cAAc,EAAE;QACd,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;QAC3B,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,YAAY,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,uBAAuB,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC;IACvC,eAAe,CAAC,EAAE;QAChB,gBAAgB,CAAC,EAAE,IAAI,CAAC,wBAAwB,CAAC;QACjD,aAAa,CAAC,EAAE,IAAI,CAAC,wBAAwB,CAAC;KAC/C,CAAC;CACH;AAED;;;;;GAKG;AACH,qBAAa,WAAW,CACtB,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,MAAM,CAChB,SAAQ,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAG,IAAI,CAAU;IAGjC,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC3C,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC;IACxC,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAC,gBAAgB,CAAC;IAGnD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC;IAC9C,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC;IAEhD,OAAO;IAqBP;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM,EAChD,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAClB,MAAM,EAAE,kBAAkB,GACzB,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC;IAgDpB;;;OAGG;IACG,WAAW,CACf,eAAe,EAAE,IAAI,CAAC,OAAO,EAC7B,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC;QAAE,EAAE,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAA;KAAE,CAAC;IAyBtD;;;OAGG;IACG,kBAAkB,CACtB,eAAe,EAAE,IAAI,CAAC,OAAO,EAC7B,QAAQ,EAAE,eAAe,GACxB,OAAO,CAAC,SAAS,CAAC;IAqBrB;;;OAGG;IACG,mBAAmB,IAAI,OAAO,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;IAiBxE;;;OAGG;IACG,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;CA6B3D"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v0_1/index.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v0_1/index.d.ts new file mode 100644 index 0000000000..aec385c32a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v0_1/index.d.ts @@ -0,0 +1,98 @@ +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, TxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import { AssetAmount } from "@sundaeswap/asset"; +import { V0_1Types } from "../../generated-types/index.js"; +import type { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import { type IProxyDatumResult, type IRealfiSDKWithTreasury, type ITreasuryDatumResult, RealfiSDKBase } from "../shared/index.js"; +export interface IRealfiSDKParamsV0_1 { + version: "V0_1"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + assetNameHex: string; + /** + * The bootstrap UTXO reference for treasury script parameterization. + * Treasury script and NFT are derived from this. + */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + }; +} +/** + * V0_1 SDK implementation. + * + * Includes treasury management, reserve backing, and circulating supply tracking. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +export declare class RealfiSDKV0_1

extends RealfiSDKBase implements IRealfiSDKWithTreasury { + readonly version: "V0_1"; + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + readonly treasuryScriptHash: Core.Hash28ByteBase16; + readonly treasuryNFTAssetId: Core.AssetId; + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + protected readonly treasuryScript: Core.Script; + private constructor(); + /** + * Create a V0_1 SDK instance. + */ + static create

(blaze: Blaze, params: IRealfiSDKParamsV0_1): RealfiSDKV0_1; + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * Uses the treasury bootstrap UTXO that was provided when creating the SDK. + */ + mintTreasuryNFT(treasuryBootstrapUtxo: Core.TransactionUnspentOutput, initialDatum?: V0_1TreasuryDatum): Promise<{ + tx: TxBuilder; + nftAssetId: Core.AssetId; + }>; + /** + * Deploy the treasury script as a reference script. + */ + deployTreasury(): Promise; + /** + * Get the treasury datum. + */ + getTreasuryDatum(): Promise>; + /** + * Mint the one-shot NFT with the initial datum. + * This consumes the bootstrap UTXO and can only be done once. + */ + mintOneShot(receiverAddress: Core.Address, datum: V0_1Types.ProxyDatum): Promise<{ + tx: TxBuilder; + policyId: Core.PolicyId; + }>; + /** + * Update the one-shot datum. + * This spends the one-shot UTXO and sends it back to the receiver with new datum. + */ + updateOneShotDatum(receiverAddress: Core.Address, newDatum: V0_1Types.ProxyDatum): Promise; + /** + * Get the proxy datum from the one-shot token UTXO. + * Result is cached after first fetch. + */ + getParsedProxyDatum(): Promise>; + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0_1 minting includes treasury update for circulating supply tracking. + */ + buildMintTx(assetAmount: AssetAmount): Promise; +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v0_1/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v0_1/index.d.ts.map new file mode 100644 index 0000000000..bbf736aa94 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v0_1/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v0_1/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v0_2/index.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v0_2/index.d.ts new file mode 100644 index 0000000000..beb4b435d5 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v0_2/index.d.ts @@ -0,0 +1,109 @@ +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, TxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import { AssetAmount } from "@sundaeswap/asset"; +import { V0_2Types } from "../../generated-types/index.js"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import { type IProxyDatumResult, type IRealfiSDKWithTreasury, type ITreasuryDatumResult, RealfiSDKBase } from "../shared/index.js"; +export interface IRealfiSDKParamsV0_2 { + version: "V0_2"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + assetNameHex: string; + /** + * The treasury bootstrap UTxO reference. The treasury script and NFT asset ID + * are derived from this reference and the stablecoin policy ID. + */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + }; +} +/** + * V0_2 SDK implementation. + * + * Extends V0_1 with deposit and withdraw operations for treasury management. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +export declare class RealfiSDKV0_2

extends RealfiSDKBase implements IRealfiSDKWithTreasury { + readonly version: "V0_2"; + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + readonly treasuryScriptHash: Core.Hash28ByteBase16; + readonly treasuryNFTAssetId: Core.AssetId; + readonly treasuryAddress: Core.Address; + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + protected readonly treasuryScript: Core.Script; + private constructor(); + /** + * Create a V0_2 SDK instance. + */ + static create

(blaze: Blaze, params: IRealfiSDKParamsV0_2): RealfiSDKV0_2; + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * The treasury bootstrap UTxO must be provided to consume it. + */ + mintTreasuryNFT(treasuryBootstrapUtxo: Core.TransactionUnspentOutput, initialDatum?: V0_1TreasuryDatum): Promise<{ + tx: TxBuilder; + nftAssetId: Core.AssetId; + }>; + /** + * Deploy the treasury script as a reference script. + */ + deployTreasury(): Promise; + /** + * Get the treasury datum. + */ + getTreasuryDatum(): Promise>; + /** + * Mint the one-shot NFT with the initial datum. + * V0_2 uses V0_2Types.ProxyDatum which includes withdraw/deposit permissions. + */ + mintOneShot(receiverAddress: Core.Address, datum: V0_2Types.ProxyDatum): Promise<{ + tx: TxBuilder; + policyId: Core.PolicyId; + }>; + /** + * Update the one-shot datum. + */ + updateOneShotDatum(receiverAddress: Core.Address, newDatum: V0_2Types.ProxyDatum): Promise; + /** + * Get the proxy datum from the one-shot token UTXO. + * V0_2 returns V0_2Types.ProxyDatum which includes withdraw/deposit permissions. + * Result is cached after first fetch. + */ + getParsedProxyDatum(): Promise>; + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0_2 minting uses V0_2Types.ProtocolRedeemer. + */ + buildMintTx(assetAmount: AssetAmount): Promise; + /** + * Build a deposit transaction to add reserve to the treasury. + */ + buildDepositTx(assetAmount: AssetAmount): Promise; + /** + * Build a withdraw transaction to remove reserve from the treasury. + * @param amount Amount to withdraw from treasury + * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address + */ + buildWithdrawTx(assetAmount: AssetAmount, receiverAddress?: string): Promise; +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v0_2/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v0_2/index.d.ts.map new file mode 100644 index 0000000000..b776c1c921 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v0_2/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v0_2/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v0_3/index.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v0_3/index.d.ts new file mode 100644 index 0000000000..9e4c56e2f8 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v0_3/index.d.ts @@ -0,0 +1,198 @@ +import { PlutusData } from "@blaze-cardano/core"; +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, TxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import type { AssetAmount } from "@sundaeswap/asset"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import type { Destination, MultisigScript, ProxyDatum, SignatureList } from "../../generated-types/v0_3/index.js"; +import { type IProxyDatumResult, type IRealfiSDKWithTreasury, type ITreasuryDatumResult, type TProtocolVersion, RealfiSDKBase } from "../shared/index.js"; +export interface IRealfiSDKParamsV0_3 { + version: "V0_3"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + assetNameHex: string; + /** + * The treasury bootstrap UTxO reference. The treasury script and NFT asset ID + * are derived from this reference and the stablecoin policy ID. + */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + }; +} +/** + * V0_3 SDK implementation. + * + * Extends V0_1 with deposit and withdraw operations for treasury management. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +export declare class RealfiSDKV0_3

extends RealfiSDKBase implements IRealfiSDKWithTreasury { + readonly version: "V0_3"; + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + readonly treasuryScriptHash: Core.Hash28ByteBase16; + readonly treasuryNFTAssetId: Core.AssetId; + readonly orderScriptHash: Core.Hash28ByteBase16; + readonly orderScriptAddress: Core.Address; + readonly treasuryAddress: Core.Address; + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + protected readonly treasuryScript: Core.Script; + protected readonly orderScript: Core.Script; + private constructor(); + /** + * Create a V0_3 SDK instance. + */ + static create

(blaze: Blaze, params: IRealfiSDKParamsV0_3): RealfiSDKV0_3; + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * The treasury bootstrap UTxO must be provided to consume it. + */ + mintTreasuryNFT(treasuryBootstrapUtxo: Core.TransactionUnspentOutput, initialDatum?: V0_1TreasuryDatum): Promise<{ + tx: TxBuilder; + nftAssetId: Core.AssetId; + }>; + /** + * Deploy the treasury script as a reference script. + */ + deployTreasury(): Promise; + /** + * Deploy the Orders script as a reference script. + */ + deployOrderContract(): Promise; + /** + * Get the treasury datum. + */ + getTreasuryDatum(): Promise>; + /** + * Mint the one-shot NFT with the initial datum. + * V0_3 uses ProxyDatum which includes withdraw/deposit permissions. + */ + mintOneShot(receiverAddress: Core.Address, datum: ProxyDatum): Promise<{ + tx: TxBuilder; + policyId: Core.PolicyId; + }>; + /** + * Update the one-shot datum. + */ + updateOneShotDatum(receiverAddress: Core.Address, newDatum: ProxyDatum): Promise; + /** + * Get the proxy datum from the one-shot token UTXO. + * V0_3 returns ProxyDatum which includes withdraw/deposit permissions. + * Result is cached after first fetch. + */ + getParsedProxyDatum(): Promise>; + /** + * Parse order UTXOs into IOrderInfo objects and validate they're all the same type. + * @returns The parsed order infos and the action type (mint or burn) + */ + private parseOrderInfos; + /** + * Calculate treasury state for order execution. + * Validates that treasury has sufficient reserve tokens for burn operations. + */ + private calculateTreasuryState; + /** + * Add destination outputs for executed orders. + * For mints: sends stablecoins to destinations. + * For burns: sends reserve tokens to destinations. + */ + private addDestinationOutputs; + /** + * Update treasury with new reserve balance and circulating supply. + */ + private updateTreasury; + /** + * + * @param action "mint" | "burn" + * @param amount amount of stablecoin to mint or burn + * @param owner Optional owner multisig script. Defaults to the wallet's change address. + * @param destination When minting, where to send the minted stablecoins. When burning, where to send the redeemed assets. A datum can be attached. + * @param data Optional datum data. Defaults to Data.Void() + * @returns TxBuilder + */ + buildOrderTx({ action, amount, owner, destination, data, }: { + action: "mint" | "burn"; + amount: bigint; + owner?: MultisigScript; + destination: Destination; + data?: PlutusData; + }): Promise; + /** + * Build the SignedPayload_ProtocolRedeemer from order inputs. + * Returns CBOR hex string to be signed and included in SignedMessage. + */ + getSignedPayloadFromOrderInputs(orderUtxos: Core.TransactionInput[]): Promise; + /** + * Parse an order UTxO and extract action type, amount, and destination. + */ + private parseOrderActionForPayload; + /** + * Build a Request from an order UTxO. + * Serializes the origin (OutputReference) as CBOR to match Aiken's format. + */ + private buildRequestFromUtxo; + /** + * Build a transaction to execute orders. + * This consumes order UTXOs, validates the signed redeemer, mints/burns stablecoins, + * and sends the results to the destinations specified in the orders. + * + * @param params.orderInputs - The order transaction inputs to execute + * @param params.signedPayload - The signed payload hex string from getSignedPayloadFromOrderInputs + * @param params.signatures - Array of signatures from each signer + * @returns TxBuilder ready to be completed and signed + */ + buildExecuteOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + signedPayload: string; + signatures: SignatureList; + }): Promise; + /** + * Build a transaction to cancel orders. + * This returns the locked assets to the specified destination address. + * The transaction must be signed by the owner(s) specified in each order's datum. + * + * @param params.orderInputs - The order transaction inputs to cancel + * @param params.destination - Optional destination address. Defaults to the wallet's change address. + * @returns TxBuilder ready to be completed and signed + */ + buildCancelOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + destination?: Core.Address; + versionHint?: TProtocolVersion; + }): Promise; + /** + * Build a transaction to withdraw reserve tokens from the treasury. + * The transaction must be signed by the authorized withdraw permission signers. + * + * @param params.requests - Array of withdraw requests with destinations and amounts + * @param params.signedPayload - The signed payload hex string from getSignedPayloadForWithdraw + * @param params.signatures - Array of KeySignature tuples from authorized signers + * @returns TxBuilder ready to be completed and signed + */ + /** + * Build a withdraw transaction to remove reserve from the treasury. + * @param amount Amount to withdraw from treasury + * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address + */ + buildWithdrawTx(assetAmount: AssetAmount, receiverAddress?: string): Promise; + buildDepositTx(assetAmount: AssetAmount): Promise; +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v0_3/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v0_3/index.d.ts.map new file mode 100644 index 0000000000..86b12f6c44 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v0_3/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v0_3/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v0_4/index.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v0_4/index.d.ts new file mode 100644 index 0000000000..b70b4ef555 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v0_4/index.d.ts @@ -0,0 +1,276 @@ +import { PlutusData } from "@blaze-cardano/core"; +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, TxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import { V0_4Types } from "../../generated-types/index.js"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import type { Destination, MultisigScript, ProxyDatum, VaultDatum } from "../../generated-types/v0_4/index.js"; +import { buildTimelockAddress, buildTimelockNativeScript, type IProxyDatumResult, type IRealfiSDKWithTreasury, type ITreasuryDatumResult, type IVaultDatumResult, type TClientSource, type TProtocolVersion, RealfiSDKBase } from "../shared/index.js"; +export interface IRealfiSDKParamsV0_4 { + version: "V0_4"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** USDr asset name hex */ + assetNameHex: string; + /** sUSDr asset name hex */ + sUSDrAssetNameHex: string; + /** The treasury bootstrap UTxO reference */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** The staking vault bootstrap UTxO reference */ + stakingVaultBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + stakingVaultRefInput?: Core.TransactionUnspentOutput; + }; + clientSource?: TClientSource; +} +/** + * V0_4 SDK implementation. + * + * Extends the protocol with staking (USDr->sUSDr), unstaking (sUSDr->USDr), + * multi-reserve assets, deposit with interest splitting, and index-based optimization. + * All order types (mint, burn, deposit, withdraw, stake, unstake) are request-based. + */ +export declare class RealfiSDKV0_4

extends RealfiSDKBase implements IRealfiSDKWithTreasury { + readonly version: "V0_4"; + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + readonly treasuryScriptHash: Core.Hash28ByteBase16; + readonly treasuryNFTAssetId: Core.AssetId; + readonly orderScriptHash: Core.Hash28ByteBase16; + readonly orderScriptAddress: Core.Address; + readonly treasuryAddress: Core.Address; + readonly stakingVaultScriptHash: Core.Hash28ByteBase16; + readonly stakingVaultAddress: Core.Address; + readonly stakingVaultNFTAssetId: Core.AssetId; + readonly sUSDrAssetNameHex: string; + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + protected readonly treasuryScript: Core.Script; + protected readonly orderScript: Core.Script; + protected readonly stakingVaultScript: Core.Script; + private constructor(); + /** + * Create a V0_4 SDK instance. + */ + static create

(blaze: Blaze, params: IRealfiSDKParamsV0_4): RealfiSDKV0_4; + /** + * Mint the treasury NFT. + */ + mintTreasuryNFT(treasuryBootstrapUtxo: Core.TransactionUnspentOutput, initialDatum?: V0_1TreasuryDatum): Promise<{ + tx: TxBuilder; + nftAssetId: Core.AssetId; + }>; + deployTreasury(): Promise; + deployOrderContract(): Promise; + getTreasuryDatum(): Promise>; + /** + * Mint the staking vault NFT and create initial vault UTxO. + */ + mintStakingVaultNFT(stakingVaultBootstrapUtxo: Core.TransactionUnspentOutput, initialDatum?: VaultDatum): Promise<{ + tx: TxBuilder; + nftAssetId: Core.AssetId; + }>; + deployStakingVault(): Promise; + /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */ + getSusdrAssetId(): Core.AssetId; + getVaultDatum(): Promise>; + mintOneShot(receiverAddress: Core.Address, datum: ProxyDatum): Promise<{ + tx: TxBuilder; + policyId: Core.PolicyId; + }>; + updateOneShotDatum(receiverAddress: Core.Address, newDatum: ProxyDatum): Promise; + getParsedProxyDatum(): Promise>; + /** + * Internal helper to build an order transaction. + */ + private _buildOrderTx; + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + buildMintOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + buildRedeemOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a deposit order: lock reserve tokens, request treasury deposit. + */ + buildDepositOrderTx(params: { + principal: bigint; + yield: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a withdraw order: lock min ADA, request reserve token withdrawal. + */ + buildWithdrawOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + buildStakeOrderTx(params: { + amount: bigint; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockTime) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockTime - Slot number after which the user can spend the released USDr + */ + buildUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + unlockSlot: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a timelock Destination from a user's destination and unlock time. + * + * Creates a native script: AllOf { Signature(userKeyHash), After(unlockTime) } + * and returns a Destination pointing to that script's address. + */ + static buildTimelockNativeScript: typeof buildTimelockNativeScript; + static buildTimelockAddress: typeof buildTimelockAddress; + /** + * Build the V0_4 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + * + * V0.4 contract requires signing the blake2b_256 hash of the payload, + * not the raw CBOR like V0.3. + */ + getSignedPayloadFromOrderInputs(orderInputs: Core.TransactionInput[]): Promise<{ + signedPayload: string; + payloadHash: string; + }>; + /** + * Build a transaction to execute orders. + * + * Handles all 6 action types: mint, burn, deposit, withdraw, stake, unstake. + * The signedPayload is a CBOR hex string (matching V0.3 style). + * + * NOTE: All wallet fee inputs are pre-added to the transaction so that + * input indices for the ExtraProtocolRedeemer are stable. Coin selection + * during complete() should be a no-op since all wallet UTxOs are already + * included, but it cannot be disabled because Blaze also uses that phase + * to prepare collateral. + */ + buildExecuteOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + signedPayload: string; + signatures: V0_4Types.Tuple_VerificationKey_COSESign1[]; + }): Promise; + private realignSpendRedeemerIndices; + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + */ + private buildMintExecute; + /** + * Burn: USDr burned, reserve sent to destinations. + */ + private buildBurnExecute; + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + private buildWithdrawExecute; + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + private buildDepositExecute; + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + */ + private buildStakeExecute; + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + */ + private buildUnstakeExecute; + /** + * Build a transaction to cancel orders. + */ + buildCancelOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + destination?: Core.Address; + /** + * Optional set of key hashes that the caller can sign with. + * When provided, only these keys are added as required signers — + * essential for AnyOf/AtLeast multisig owners where not all keys + * need to sign. When omitted, all extracted key hashes are added + * (correct for Signature and AllOf owners, but over-constrains + * AnyOf/AtLeast). + */ + availableSigners?: Set; + versionHint?: TProtocolVersion; + }): Promise; + /** + * Parse order UTxOs into IOrderInfo objects and validate they are all the same type. + */ + private parseOrderInfos; + /** + * Classify an order action from its datum. + */ + private classifyOrderAction; + /** + * Update treasury output with new reserve and circulating supply. + */ + private updateTreasuryOutput; + /** + * Update vault output with new circulating_susdr and USDr balance. + */ + private updateVaultOutput; + /** + * Get protocol settings from proxy datum (cached). + */ + private getVersionSettings; +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v0_4/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v0_4/index.d.ts.map new file mode 100644 index 0000000000..17fea91217 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v0_4/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v0_4/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1/family.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v1/family.d.ts new file mode 100644 index 0000000000..944c40000c --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1/family.d.ts @@ -0,0 +1,813 @@ +import { PlutusData } from "@blaze-cardano/core"; +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, TxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import type { Asset, Destination, ExtraProtocolRedeemerV1, MultisigScript, OrderActionV1, OrderDatumV1, ProtocolRedeemerV1, SignedPayload_ProtocolRedeemerV1, TreasuryRequestV1, Tuple_VerificationKey_COSESign1 } from "../../generated-types/v1_0/index.js"; +import { buildMultisigTimelockNativeScript, buildTimelockAddress, buildTimelockNativeScript, type ICachedReferenceInputs, type IProxyDatumResult, type IRealfiSDKWithTreasury, type ITreasuryDatumResult, type IVaultDatumResult, RealfiSDKBase, type TProtocolVersion } from "../shared/index.js"; +import { type IOrderUtxoFacts, type TOrderSanityResult } from "./order-sanity.js"; +import type { IProxyDatum, IV1FamilySchemas, IV1FamilyScripts, IV1SigningSchemas, IVaultDatumLike, IYieldSplitAlpha, TV1Registry, TV1SettingsConfig } from "./types.js"; +/** + * Sentinel `reserve_asset` used in V1_0 TreasuryRequestV1 redeemers for + * DirectMint and DirectBurn actions, which have no real reserve asset in + * their order datum. The on-chain validators `direct_mint_logic` and + * `direct_burn_logic` do not inspect this field; this sentinel makes the + * intent explicit both in code and when inspecting on-chain redeemers. + * + * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a + * sentinel and extremely unlikely to occur as a real script hash) + * - `asset_name`: "unused" (ASCII) + * + * Keep in sync with backend `contract.DirectActionPaddingAsset`. + */ +export declare const DIRECT_ACTION_PADDING_ASSET: Asset; +/** + * Parsed order information extracted from a UTXO. + */ +export interface IOrderInfo { + utxo: Core.TransactionUnspentOutput; + datum: OrderDatumV1; + actionType: TOrderActionType; + amount: bigint; + /** Yield amount for deposit actions */ + yield?: bigint; + /** Forfeit amount for unstake actions */ + forfeit?: bigint; + /** Reserve asset for treasury actions, undefined for stake/unstake */ + reserveAsset?: [string, string]; + /** + * Absolute fee retained by the protocol, in this action's output unit + * (USDr for Mint, reserve for Burn). Always 0 for Stake/Unstake — the + * protocol does not retain a fee on those actions. Locked at indexing + * time by the Go backend; the SDK never recomputes. Zero (the default) + * means "no fee", e.g. when the dispatcher passes no fees map or the + * map has no entry for this order. + */ + fee: bigint; + /** + * User-enforced output floor copied from the v1.0 datum (in output unit). + * Used as a defensive sanity check by buildXxxExecute to throw early if + * the fee somehow pushes the user output below what was signed. + */ + minReceived?: bigint; +} +/** Minimal completed-swap shape accepted by the stake continuation builder. */ +export interface IStakeContinuationSwap { + minReceived: { + amount: bigint; + metadata: { + assetId: string; + }; + }; +} +/** Parameters for building a RealFi stake order as another order's destination. */ +export interface IBuildStakeContinuationParams { + swap: IStakeContinuationSwap; + destination: Destination; + slippageToleranceBps?: bigint; + owner?: MultisigScript; + data?: PlutusData; +} +/** Address and inline datum a preceding protocol should pay its result to. */ +export interface IStakeContinuation { + address: Core.Address; + datum: PlutusData; +} +export type TOrderActionType = "mint" | "burn" | "deposit" | "withdraw" | "stake" | "unstake" | "direct_mint" | "direct_burn"; +/** Result of {@link RealfiSDKV1Family.classifyOrderAction}. */ +export interface IClassifiedOrderAction { + actionType: TOrderActionType; + amount: bigint; + yield?: bigint; + forfeit?: bigint; + minReceived?: bigint; + reserveAsset?: [string, string]; + isTreasuryAction: boolean; +} +/** Result of {@link RealfiSDKV1Family.classifyOrderUtxo}. */ +export interface IClassifiedOrderUtxo { + /** The order datum decoded with this version's `OrderDatumV1` schema. */ + datum: OrderDatumV1; + /** The action classified from {@link datum}. */ + action: IClassifiedOrderAction; +} +/** The `origin` field shared by every request kind — the consumed order UTxO. */ +export interface IRequestOrigin { + transaction_id: string; + output_index: bigint; +} +export interface ITreasuryUnstakeOrderTxResult { + /** Transaction builder for the treasury unstake order. */ + tx: TxBuilder; + /** + * Native script used as the unstake output destination: + * AllOf { After(unlockSlot), owner }. + */ + nativeScript: Core.NativeScript; +} +/** + * Context handed to {@link RealfiSDKV1Family.applyExecutionValidityBounds} + * at the end of `buildExecuteOrdersTx`. The vault fields are set only when + * the executed action consumed the staking vault (stake/unstake/deposit). + */ +export interface IExecutionValidityContext { + actionType: TOrderActionType; + vaultUtxo?: Core.TransactionUnspentOutput; + parsedVaultDatum?: TVaultDatum; +} +/** + * Version-agnostic constructor parameters for the V1 family. Each version's + * `static create` assembles this from its own public params interface. + */ +export interface IV1FamilyConstructorParams { + version: TProtocolVersion; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** USDr asset name hex */ + assetNameHex: string; + /** sUSDr asset name hex */ + sUSDrAssetNameHex: string; + enableTrace?: boolean; + defaultSlippageToleranceBps?: bigint; + scriptDeploymentAddress?: Core.Address; + clientSource?: import("../shared/client-id.js").TClientSource; + /** + * Hashes of the validators this deployment actually runs, keyed as in + * `backend/config/env/.protocol.yaml`. + * + * Every identity below is otherwise derived from the Plutus artifacts this + * package bundles, which is correct only while those bytes match the ones on + * chain. Where they do not, the derived order address is an address nothing + * watches — and because an order is `lockAssets` with no on-chain validation, + * funds go there silently. Supplying the deployment's own hashes overrides + * the derivation; the scripts themselves still come from on-chain reference + * inputs, so identity is all that is needed. + * + * Partial maps are normal — validators the deployment does not name keep + * their derived identity. + */ + deployedValidators?: Readonly>; +} +export declare const MIN_LOVELACE = 2000000n; +export declare function calculateYieldShares(totalYield: bigint, vaultUSDr: bigint, treasuryCirculating: bigint): { + stakedYieldShare: bigint; + unstakedYieldShare: bigint; +}; +/** + * Shared implementation for the V1 protocol family (v1_0, v1_0_rc1, v1_1+). + * + * The family is generic over the two datum shapes that differ across + * versions — `TSettings` (the proxy settings static) and `TVaultDatum` (the + * staking-vault datum static) — and receives all generated artifacts from the + * subclass: schema VALUES via {@link IV1FamilySchemas} (plus, optionally, + * {@link IV1SigningSchemas}) and instantiated scripts via + * {@link IV1FamilyScripts}. Method bodies never touch a version's generated + * module directly, so this chunk adds no runtime import edge to any + * `generated-types/v1_x` module and per-version code-splitting is preserved. + * + * Method defaults implement v1_0 semantics (fees, min_received, the v1_0 + * protocol-redeemer schema). Versions that diverge override the affected + * members: + * - vault datum construction is NEVER done inline — it goes through the + * abstract `buildInitialVaultDatum` / `buildUpdatedVaultDatum` seam so + * versions with additional vault fields cannot be silently truncated; + * - settings access goes through the abstract `settingsConfig` / + * `settingsRegistry` adapters; + * - `applyExecutionValidityBounds` lets a version constrain the validity + * interval of execution transactions (no-op by default). + */ +export declare abstract class RealfiSDKV1Family

extends RealfiSDKBase implements IRealfiSDKWithTreasury { + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + readonly protocolMintScriptHash: Core.Hash28ByteBase16; + readonly protocolStakeScriptHash: Core.Hash28ByteBase16; + readonly protocolManagementScriptHash: Core.Hash28ByteBase16; + readonly treasuryScriptHash: Core.Hash28ByteBase16; + readonly treasuryNFTAssetId: Core.AssetId; + readonly orderScriptHash: Core.Hash28ByteBase16; + readonly orderScriptAddress: Core.Address; + readonly treasuryAddress: Core.Address; + readonly stakingVaultScriptHash: Core.Hash28ByteBase16; + readonly stakingVaultAddress: Core.Address; + readonly stakingVaultNFTAssetId: Core.AssetId; + readonly sUSDrAssetNameHex: string; + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly protocolOrchestratorScript: Core.Script; + protected readonly protocolMintScript: Core.Script; + protected readonly protocolStakeScript: Core.Script; + protected readonly protocolManagementScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + protected readonly treasuryScript: Core.Script; + protected readonly orderScript: Core.Script; + protected readonly stakingVaultScript: Core.Script; + protected readonly defaultSlippageToleranceBps?: bigint; + /** Schema values used by every shared serialize/parse site. */ + protected readonly schemas: IV1FamilySchemas; + private readonly signingSchemas?; + protected constructor(blaze: Blaze, params: IV1FamilyConstructorParams, schemas: IV1FamilySchemas, scripts: IV1FamilyScripts, cachedReferenceInputs?: ICachedReferenceInputs, signingSchemas?: IV1SigningSchemas); + /** + * Replace derived script identity with the deployment's own hashes. + * + * Version-owned validators are selected only from this SDK's exact version + * slot. Treasury and staking-vault validators can deliberately survive a + * protocol-only upgrade, so their unversioned entries are used as the + * authoritative active-state fallback. + * + * Unrecognised keys are ignored: a blueprint legitimately carries validators + * outside this family (oneshot, mint_proxy) and future ones this build has + * never heard of. + */ + private applyDeployedValidators; + /** + * Schemas for the v1_0-semantics signing/execute defaults. Throws for + * versions that neither supplied {@link IV1SigningSchemas} nor overrode + * the two consumers (`getSignedPayloadFromOrderInputs`, + * `buildExecuteOrdersTx`). + */ + protected get signing(): IV1SigningSchemas; + /** + * Project the version's settings onto the fields the shared tx-builders + * read. v1_0/v1_0_rc1: the settings object itself; v1_1+: `settings.config`. + */ + protected abstract settingsConfig(settings: TSettings): TV1SettingsConfig; + /** + * Extract the validator registry (the fields the family reads) from the + * version's settings. + */ + protected abstract settingsRegistry(settings: TSettings): TV1Registry; + /** + * Build the vault datum used when bootstrapping the staking vault. + * This is the ONLY place (together with `buildUpdatedVaultDatum`) that + * knows the version's full vault-datum shape. + */ + protected abstract buildInitialVaultDatum(): TVaultDatum; + /** + * Build the vault datum that replaces `previous` after an execution that + * changes circulating sUSDr by `sUSDrDelta`. Versions with additional + * vault fields decide here how each field carries over. + */ + protected abstract buildUpdatedVaultDatum(previous: TVaultDatum, sUSDrDelta: bigint): TVaultDatum; + /** + * Version hook: the USDr backing the stake/unstake exchange rate is + * computed against. Defaults to the vault's full USDr balance (v1_0 / + * v1_0_rc1 semantics). Versions with time-diffused yield (v1_1_rc1+) + * override this to exclude the not-yet-diffused pending yield + * (`settled_backing` in utilities.ak). + */ + protected settledVaultBacking(_parsedVaultDatum: TVaultDatum, vaultUSDr: bigint): bigint; + /** + * Version hook: constrain the transaction validity interval on order + * executions. Called once at the end of `buildExecuteOrdersTx`, right + * before the builder is returned. + * + * No-op by default: v1_0 / v1_0_rc1 executions carry no validity + * constraints. Versions with time-diffused yield (v1_1_rc1+) override this + * to attach validFrom/validTo bounds on vault-touching executions. + */ + protected applyExecutionValidityBounds(_tx: TxBuilder, _context: IExecutionValidityContext): Promise; + /** + * Version hook: build the `Deposit` protocol action that goes into the + * COSE-signed payload. v1_0 / v1_0_rc1 have no yield split — the validator + * recomputes it from live state — so they take no `alpha` and reject one. + * Versions that carry a signed `alpha` (v1_1_rc1+) override this and require + * it: it is the batch's parameter, never something a signer derives. + */ + protected buildDepositAction(requests: TreasuryRequestV1[], alpha?: IYieldSplitAlpha): Promise; + /** + * Version hook: split a deposit's total yield between the staked vault and + * the unstaked pot at EXECUTION time. + * + * v1_0 / v1_0_rc1 (default): the on-chain validator recomputes the split from + * live vault/treasury state, so recomputing it here from the same state + * matches. v1_1_rc1+ carry a COSE-signed `alpha` in the Deposit action and + * the validator splits against THAT — so those versions override this to echo + * the signed alpha, never a second live read (which would diverge if state + * moved between signing and execution). `action` is the signed action being + * executed; the default ignores it. + */ + protected resolveDepositYieldShares(totalYield: bigint, vaultUSDr: bigint, treasuryCirculating: bigint, _action: ProtocolRedeemerV1): { + stakedYieldShare: bigint; + unstakedYieldShare: bigint; + }; + /** + * Version hook: serialize the redeemer attached to the orchestrator + * withdrawal. Defaults to the bare `SignedRedeemer` + * (v1_0 / v1_0_rc1). Versions whose orchestrator wraps execution in a + * top-level dispatch enum (v1_1_rc1+: `ExecuteOrders(...)`/`PublishYieldOracle`) + * override this to nest the signed redeemer inside that wrapper. + */ + protected serializeOrchestratorWithdrawalRedeemer(redeemer: { + extra: ExtraProtocolRedeemerV1; + payload: SignedPayload_ProtocolRedeemerV1; + signatures: Tuple_VerificationKey_COSESign1[]; + }): PlutusData; + /** + * Mint the treasury NFT. + */ + mintTreasuryNFT(treasuryBootstrapUtxo: Core.TransactionUnspentOutput, initialDatum?: V0_1TreasuryDatum): Promise<{ + tx: TxBuilder; + nftAssetId: Core.AssetId; + }>; + deployTreasury(): Promise; + deployOrderContract(): Promise; + getTreasuryDatum(): Promise>; + /** + * Mint the staking vault NFT and create initial vault UTxO. + */ + mintStakingVaultNFT(stakingVaultBootstrapUtxo: Core.TransactionUnspentOutput, initialDatum?: TVaultDatum): Promise<{ + tx: TxBuilder; + nftAssetId: Core.AssetId; + }>; + deployStakingVault(): Promise; + /** + * Deploy the protocol mint script as a reference script (V1.0 only). + */ + deployProtocolMint(): Promise; + /** + * Deploy the protocol stake script as a reference script (V1.0 only). + */ + deployProtocolStake(): Promise; + /** + * Deploy the protocol management script as a reference script (V1.0 only). + */ + deployProtocolManagement(): Promise; + /** + * Register the protocol mint stake credential (V1.0 sub-validator). + */ + registerProtocolMintStake(): TxBuilder; + /** + * Register the protocol stake stake credential (V1.0 sub-validator). + */ + registerProtocolStakeStake(): TxBuilder; + /** + * Register the protocol management stake credential (V1.0 sub-validator). + */ + registerProtocolManagementStake(): TxBuilder; + /** + * Register the staking vault stake credential (for stake/unstake operations). + */ + registerStakingVaultStake(): TxBuilder; + /** + * Register all five protocol stake credentials (orchestrator + mint / stake / + * management sub-validators + staking vault) in a SINGLE transaction. + * Certificates are tiny, so there is no size constraint. Replaces five + * `register*Stake` calls (and, for a cold wallet, five sign/submit cycles). + */ + registerAllStakes(): TxBuilder; + /** + * Pack the eight protocol reference-script deployments into as few + * transactions as fit under `budgetBytes` of script payload each, returning + * one TxBuilder per batch in deploy order. + * + * Batches by measured script size (`script.toCbor()` bytes) rather than a + * fixed count, because the validators are wildly uneven (~0.5–11 KB) and two + * of the ~10 KB sub-validators cannot share a transaction. The default budget + * (13 000) leaves headroom under the 16 384-byte tx limit for tx overhead and + * future script growth; callers can lower it if a validator grows. + * + * Fresh-deploy only: it does NOT skip already-deployed scripts. To resume a + * partial deploy, use the granular `deploy*` methods (which throw + * `ScriptAlreadyDeployedError` for idempotent reruns). + */ + deployScriptsBatched(budgetBytes?: number): TxBuilder[]; + /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */ + getSusdrAssetId(): Core.AssetId; + getVaultDatum(): Promise>; + mintOneShot(receiverAddress: Core.Address, datum: IProxyDatum): Promise<{ + tx: TxBuilder; + policyId: Core.PolicyId; + }>; + updateOneShotDatum(receiverAddress: Core.Address, newDatum: IProxyDatum): Promise; + getParsedProxyDatum(): Promise>>; + /** + * Check if the protocol has been upgraded past this SDK version. + * + * Returns true if either: + * - The order script hash no longer matches registry.order (order validator upgraded) + * - The protocol logic no longer matches this SDK's protocol script hash (protocol upgraded) + * + * When this returns true, orders created with this SDK version can use the + * `Invalidated` redeemer to recover funds via `buildInvalidatedOrdersTx`. + */ + isProtocolUpgraded(): Promise; + /** + * Read the version-agnostic settings config (`reserve_assets`, + * `unstaked_yield_pot`) off the live proxy datum. Public accessor over the + * `settingsConfig` / `getVersionSettings` seam so consumers read the shared + * fields without casting a version-specific settings shape: v1_0 / v1_0_rc1 + * project the flat settings, v1_1+ project `settings.config`. + */ + getSettingsConfig(): Promise; + /** + * Whether the batch covering these orders needs a yield-split alpha, i.e. it is + * a deposit on a version that splits yield. Callers that both create and sign a + * batch use it to decide whether to pick one (computeDepositAlpha); a co-signer + * has no use for it — it reads the batch's stored alpha either way. + */ + batchNeedsAlpha(orderInputs: Core.TransactionInput[]): Promise; + /** + * Whether this version's Deposit action carries a signed yield split. False for + * v1_0 / v1_0_rc1, whose validator recomputes the split from live state; + * v1_1_rc1+ override it. + */ + protected get splitsYield(): boolean; + /** + * Decode and classify a single open order UTxO with this version's schema. + * + * Parses the UTxO's inline datum via `this.schemas.OrderDatumV1` — exactly + * the way {@link parseOrderInfos} does — then classifies the action. Unlike + * {@link parseOrders}, this imposes NO same-action-type constraint, so it is + * the per-UTxO primitive for scanning a MIXED batch of open orders at the + * order script address and handling each by its action type. + * + * @throws if the UTxO carries no inline datum, or the datum fails to decode + * under this version's order schema (e.g. a V1.1 order read by a V1.0 SDK). + */ + classifyOrderUtxo(utxo: Core.TransactionUnspentOutput): IClassifiedOrderUtxo; + /** + * Decode a batch of order UTxOs into {@link IOrderInfo} objects, validating + * they are ALL the same action type (throws on a mixed batch). Public + * wrapper over {@link parseOrderInfos}; use it to prepare inputs for the + * same-type execute builders. To scan a mixed batch, classify each UTxO + * individually with {@link classifyOrderUtxo} instead. + * + * The optional `fees` map (keyed by `${txHash}#${outputIndex}`) stamps each + * order with its locked fee in the action's output unit; missing entries + * default to 0 (no fee retained). + */ + parseOrders(orderUtxos: Core.TransactionUnspentOutput[], fees?: Map): IOrderInfo[]; + /** + * Internal helper to build an order transaction. + */ + protected _buildOrderTx(params: { + action: OrderActionV1; + valueToLock: Core.Value; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + extraLabels?: Map; + }): Promise; + /** Resolve the order owner exactly once for transaction and continuation builders. */ + protected resolveOrderOwner(owner?: MultisigScript): Promise; + /** Serialize an order datum through the live version instance's schema seam. */ + protected serializeOrderDatum(action: OrderActionV1, destination: Destination, owner: MultisigScript, data?: PlutusData): PlutusData; + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + buildMintOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + minReceived?: bigint; + /** + * ADA to lock in the RealFi order UTxO and forward to the destination + * output when the order is executed. Defaults to MIN_LOVELACE. + */ + orderLovelace?: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + buildRedeemOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + minReceived?: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a deposit order: lock reserve tokens, request treasury deposit. + */ + buildDepositOrderTx(params: { + principal: bigint; + yield: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a withdraw order: lock min ADA, request reserve token withdrawal. + */ + buildWithdrawOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + buildStakeOrderTx(params: { + amount: bigint; + destination: Destination; + minReceived?: bigint; + slippageToleranceBps?: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a stake-order continuation from a completed swap's guaranteed USDr + * output. The swap quote remains observable to the caller, while the SDK + * owns the RealFi amount, exchange-rate quote, schema, and request address. + */ + buildStakeContinuation(params: IBuildStakeContinuationParams): Promise; + protected _buildUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + forfeit?: bigint; + minReceived?: bigint; + slippageToleranceBps?: bigint; + owner?: MultisigScript; + data?: PlutusData; + extraLabels?: Map; + }): Promise; + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockSlot - Slot number after which the user can spend the released USDr + * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0) + * @param params.slippageToleranceBps - Optional min-received tolerance override in basis points + */ + buildUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + unlockSlot: bigint; + forfeit?: bigint; + minReceived?: bigint; + slippageToleranceBps?: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a treasury-managed unstake order that wraps the destination in a + * native timelock script controlled by the order owner. + * + * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps + * treasury multisig ownership on the released USDr while enforcing the same + * unlock slot used by the retail unstake helper. The owner must be convertible + * to a Cardano native script. + */ + buildTreasuryUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + unlockSlot: bigint; + forfeit?: bigint; + minReceived?: bigint; + slippageToleranceBps?: bigint; + owner: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Compute the default `min_received` (output sUSDR floor) for a stake order + * by reading the current staking-vault exchange rate and applying a + * slippage tolerance buffer. + * + * Tolerance resolution: per-call > SDK-level (defaultSlippageToleranceBps) + * > built-in 50bps (0.5%). + * + * Yield accrual moves `vault_usdr` up over time, so shares-per-USDR shrinks + * between order placement and execution. The buffer protects the user from + * receiving fewer shares than they expected at sign time. + * + * Bootstrap edge case: when the vault is empty (no USDR locked or no sUSDR + * circulating), the rate is treated as 1:1 and the buffer is skipped. + */ + protected computeStakeMinReceived(amount: bigint, perCallToleranceBps?: bigint): Promise; + protected resolveStakeSlippageToleranceBps(perCallToleranceBps?: bigint): bigint; + /** + * Compute the default `min_received` (output USDR floor) for an unstake + * order by reading the current staking-vault exchange rate. + * + * `forfeit` is subtracted from the gross expected USDR, then a slippage + * tolerance protects the order from quote/provider drift. Tolerance + * resolution is per-call > SDK-level > built-in 50bps (0.5%). + * + * Bootstrap edge case: when the vault is empty, the rate is treated as 1:1. + */ + protected computeUnstakeMinReceived(amount: bigint, forfeit: bigint, perCallToleranceBps?: bigint): Promise; + /** + * Build a direct mint order: mint USDr without reserve asset backing. + * Used for fiat wire scenarios where reserve arrives off-chain. + */ + buildDirectMintOrderTx(params: { + amount: bigint; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a direct burn order: burn USDr without reserve asset redemption. + * Used for fiat wire scenarios where reserve is sent off-chain. + */ + buildDirectBurnOrderTx(params: { + amount: bigint; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + static buildTimelockNativeScript: typeof buildTimelockNativeScript; + static buildTimelockAddress: typeof buildTimelockAddress; + static buildMultisigTimelockNativeScript: typeof buildMultisigTimelockNativeScript; + /** + * Build the V1_0 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + * + * `alpha` is the batch's yield split, required by versions whose Deposit + * action carries one (v1_1_rc1+) and rejected everywhere else. It is a + * parameter of the batch, chosen once by whoever created it and read back from + * the backend by every co-signer: on-chain, all signatures of a batch are + * checked against ONE payload hash, so a signer that derived its own value + * would produce bytes nobody else can co-sign. + */ + getSignedPayloadFromOrderInputs(orderInputs: Core.TransactionInput[], alpha?: IYieldSplitAlpha): Promise<{ + signedPayload: string; + payloadHash: string; + }>; + /** + * Build a transaction to execute orders. + * + * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake, + * direct_mint, direct_burn. + */ + buildExecuteOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + signedPayload: string; + signatures: Tuple_VerificationKey_COSESign1[]; + /** + * Per-order fees retained by the protocol, keyed by `${txHash}#${index}`, + * in the action's output unit (USDr for Mint, reserve for Burn, sUSDr for + * Stake, USDr for Unstake). Computed and locked by the Go backend at the + * order's index time. Missing entries default to 0 (no fee retained). + * The SDK never recomputes a fee — it just subtracts this absolute value + * from each user's destination output. + */ + fees?: Map; + }): Promise; + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + * + * The per-order fee (in USDr, locked at index time) is retained by the + * treasury: the user receives `amount − fee` USDr while `amount` is still + * minted, so the protocol pockets the difference via the treasury balance. + */ + protected buildMintExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum, settings: TV1SettingsConfig): void; + /** + * Burn: USDr burned, reserve sent to destinations. + * + * The audited contract decreases circulating_supply by the FULL signed + * `amount` (the user burns the whole `amount` of USDr) and the reserve + * outflow per asset equals what the user actually receives. The locked + * fee (in reserve units) stays in the treasury — by paying out + * `usdr_to_reserve(amount, ra) − fee` instead of the full natural + * amount, the protocol pockets the difference. + */ + protected buildBurnExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum, settings: TV1SettingsConfig): void; + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + protected buildWithdrawExecute(tx: TxBuilder, orderInfos: IOrderInfo[], treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum, settings: TV1SettingsConfig): void; + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + protected buildDepositExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum, vaultUtxo: Core.TransactionUnspentOutput, parsedVaultDatum: TVaultDatum, settings: TV1SettingsConfig, action: ProtocolRedeemerV1): void; + /** + * Version hook: lock the post-deposit vault output. v1_0 / v1_0_rc1 keep the + * one-field datum and simply add `stakedYieldShare` USDr to the vault. + * Versions with time-diffused yield override this to roll the staked share + * into the diffusion window (`validate_deposit_diffusion` in deposit.ak). + */ + protected updateDepositVaultOutput(tx: TxBuilder, vaultUtxo: Core.TransactionUnspentOutput, parsedVaultDatum: TVaultDatum, ctx: { + stakedYieldShare: bigint; + totalYield: bigint; + orderInfos: IOrderInfo[]; + }): void; + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + * + * Stake is not fee-filtered (no protocol fee retained on stake), so the + * vault receives the full `amount` USDr and mints sUSDr at the natural + * rate. + */ + protected buildStakeExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, sUSDrAssetId: Core.AssetId, vaultUtxo: Core.TransactionUnspentOutput, parsedVaultDatum: TVaultDatum): void; + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + * V1_0: Supports forfeit parameter - forfeited USDr goes to yield pot. + */ + protected buildUnstakeExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, sUSDrAssetId: Core.AssetId, vaultUtxo: Core.TransactionUnspentOutput, parsedVaultDatum: TVaultDatum, settings: TV1SettingsConfig): void; + /** + * DirectMint: Mint USDr without reserve asset flow. + * USDr is minted to destinations, treasury circulating_supply increases. + * NO reserve asset changes. + */ + protected buildDirectMintExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum): void; + /** + * DirectBurn: Burn USDr without reserve asset flow. + * USDr is burned, treasury circulating_supply decreases. + * NO reserve asset changes, NO destination outputs (fiat sent off-chain). + */ + protected buildDirectBurnExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum): void; + /** + * Build a transaction to cancel orders. + */ + buildCancelOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + destination?: Core.Address; + availableSigners?: Set; + versionHint?: TProtocolVersion; + }): Promise; + /** + * Build a transaction to recover funds from invalidated orders. + * Only works when the protocol has been upgraded and the order validator + * no longer matches the current protocol logic. + * + * IMPORTANT: Only works for orders with simple Signature owners. + * + * Output-at-same-index constraint: Each output must be at the same + * transaction index as its corresponding input. + */ + buildInvalidatedOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + }): Promise; + /** + * Parse order UTxOs into IOrderInfo objects and validate they are all the + * same type. The optional `fees` map (keyed by `${txHash}#${outputIndex}`) + * stamps each order with its locked fee in the action's output unit. + * Missing entries default to 0 (no fee retained). + */ + protected parseOrderInfos(orderUtxos: Core.TransactionUnspentOutput[], fees?: Map): IOrderInfo[]; + /** + * Full executability screen for one open order (WTB-1764): the datum + * predicates plus the two value-dependent aborts (input funding, unsatisfiable + * `min_received`). Every consumer that decides whether an order may join a + * batch should call this rather than `screenOrderAction` alone — the datum-only + * screen cannot see an underfunded UTxO, which is the cheapest batch-killer. + * + * Reads settings for the reserve multiplier on mint/burn. `getParsedProxyDatum` + * memoises, so the per-order cost after the first call is local arithmetic — + * safe for the approvals cron's whole-address sweep. + */ + screenOrderForExecution(utxo: Core.TransactionUnspentOutput, action: IClassifiedOrderAction): Promise; + /** + * Derive the value-dependent facts {@link screenOrderUtxoFacts} needs. Mirrors + * the per-action consumed asset and ceiling the validators use; see that + * function's doc comment for the `.ak` line references. + */ + protected deriveOrderUtxoFacts(utxo: Core.TransactionUnspentOutput, action: IClassifiedOrderAction, settings: TV1SettingsConfig): Promise; + private deriveOrderUtxoFactsUnsafe; + private getValidatedScreeningSettings; + /** + * Classify an order action from its datum. + */ + protected classifyOrderAction(datum: OrderDatumV1): IClassifiedOrderAction; + /** + * Build the signed-payload treasury request for a deposit/withdraw order. + * + * v1_0 / v1_0_rc1 emit the four-field request. Versions whose on-chain + * `TreasuryRequestV1` carries extra fields (v1_1_rc1's `diffusion_end`, which + * the validator requires the signed request to echo from the order datum) + * override this to add them; the return stays assignable to the v1_0 shape, + * and the extra fields are encoded by the version's own payload schema value. + */ + protected buildTreasuryRequest(datum: OrderDatumV1, parsed: IClassifiedOrderAction, origin: IRequestOrigin): TreasuryRequestV1; + /** + * Update treasury output with new reserve and circulating supply. + */ + protected updateTreasuryOutput(tx: TxBuilder, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum, reserveDeltas: Map, circulatingSupplyDelta: bigint): void; + /** + * Update treasury output without reserve changes (for DirectMint/DirectBurn). + */ + protected updateTreasuryOutputNoReserve(tx: TxBuilder, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum, circulatingSupplyDelta: bigint): void; + /** + * Update vault output with new circulating_susdr and USDr balance. + * + * The datum construction is delegated to the version's + * `buildUpdatedVaultDatum` seam; the value rebuild below is + * datum-shape-agnostic and shared by all versions. + */ + protected updateVaultOutput(tx: TxBuilder, vaultUtxo: Core.TransactionUnspentOutput, parsedVaultDatum: TVaultDatum, sUSDrDelta: bigint, uSDrDelta?: bigint): void; + /** + * Lock the vault output with an already-constructed datum, rebuilding its + * USDr balance by `uSDrDelta`. The value rebuild is datum-shape-agnostic; + * versions whose datum update needs more than `sUSDrDelta` (v1_1_rc1's + * deposit diffusion window) build the datum themselves and call this. + */ + protected updateVaultOutputWithDatum(tx: TxBuilder, vaultUtxo: Core.TransactionUnspentOutput, newVaultDatum: TVaultDatum, uSDrDelta?: bigint): void; + protected getVersionSettings(): Promise; +} +//# sourceMappingURL=family.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1/family.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v1/family.d.ts.map new file mode 100644 index 0000000000..306b30ab24 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1/family.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"family.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v1/family.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1/order-sanity.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v1/order-sanity.d.ts new file mode 100644 index 0000000000..5f4337dcad --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1/order-sanity.d.ts @@ -0,0 +1,147 @@ +/** + * Static, off-chain mirror of the per-request predicates the v1-family + * protocol validators apply to each request in an execution batch. + * + * Why this exists (WTB-1764): `process_exchange_requests`, + * `process_stake_requests` and `process_treasury_requests` + * (`contracts/lib/v1_0/utilities.ak`) validate every request in the batch + * inside one `zip_fold` via `expect validation(request)`. There is no + * per-request graceful exclusion — the first request that fails its predicate + * crashes the WHOLE execution transaction, taking down every valid order + * bundled alongside it. Order creation is permissionless and has no on-chain + * gate (sending funds + an inline datum to the order script address is a plain + * payment; no validator runs on receipt), so a single order carrying, say, + * `min_received = 0` is a cheap, repeatable denial-of-service against the whole + * execution pipeline. + * + * Every request that reaches a batch must therefore be screened off-chain + * first. This module is the one place that mirrors the on-chain predicates, so + * a validator change has a single off-chain counterpart to update. + * + * Two screens live here, because the validators abort the whole transaction from + * two kinds of check and only one of them is answerable from the datum alone: + * + * 1. {@link screenOrderAction} — the `process_*_requests` per-request predicates. + * Pure, datum-only. + * 2. {@link screenOrderUtxoFacts} — the checks that also need the order UTxO's + * value and (for mint/burn) the reserve multiplier: input funding and the + * statically-knowable deliverability ceiling. Callers derive the facts, since + * that is where the asset ids and settings live; `RealfiSDKV1Family` + * .screenOrderForExecution does both in one call. + * + * Still deliberately NOT covered, because it is not decidable from the order in + * isolation: predicates that move with live protocol state — unstake's + * `forfeit <= request_usdr`, and the stake/unstake deliverability ceilings, + * which follow the vault exchange rate between screening and execution. + * + * A caller with a narrower policy (the approvals cron accepts just the + * zero-principal, positive-yield deposit shape) also keeps that policy to + * itself; folding it in here would reject orders other first-party flows + * legitimately create and execute. + * + * | action | on-chain predicate | source | + * | -------- | ------------------------------------------------------- | ----------------------------- | + * | mint | `amount > 0 && min_received > 0` | `v1_0/mint.ak:86` | + * | burn | `amount < 0 && min_received > 0` | `v1_0/burn.ak:90` | + * | stake | `amount > 0 && min_received > 0 && forfeit == 0` | `v1_0/stake.ak:45-47` | + * | unstake | `amount > 0 && min_received > 0` (+ `forfeit >= 0`) | `v1_0/unstake.ak:77,101` | + * | deposit | `amount >= 0` | `v1_0/deposit.ak:67` | + * | withdraw | `amount > 0 && yield == 0` | `v1_0/withdraw.ak:73` | + * + * v1_1_rc1 carries the identical predicates. v1_0_rc1 does NOT — its datum has + * no `min_received` field at all and its predicates are amount-only + * (`v1_0_rc1/stake.ak:64`, `unstake.ak:64`), which is why an absent floor is + * treated as "no floor to check" below rather than as zero. + */ +/** Machine-stable reason token for a rejected request. */ +export type TOrderRejectCode = "amount_not_positive" | "min_received_not_positive" | "forfeit_negative" | "deposit_principal_negative" | "deposit_batch_empty" | "withdraw_yield_not_zero" | "input_underfunded" | "min_received_above_max_delivered" | "order_facts_unresolvable"; +/** + * The subset of `IClassifiedOrderAction` the screen reads. Structural, so a + * full classified action is assignable without this module depending on the + * SDK family module (and without a test needing to construct one). + * + * Sign convention follows `classifyOrderAction`, which matches the on-chain + * request shape: `amount` is already negated for burn. + */ +export interface IOrderActionSanityInput { + actionType: string; + amount: bigint; + minReceived?: bigint; + forfeit?: bigint; + yield?: bigint; +} +export type TOrderSanityResult = { + ok: true; +} | { + ok: false; + code: TOrderRejectCode; + reason: string; +}; +/** + * Screen one classified order action against the predicates the validator will + * apply to it. + * + * Unknown actions pass through. Every known action is checked because + * `getSignedPayloadFromOrderInputs` packages both the approvals and + * treasury-admin flows. + */ +export declare function screenOrderAction(action: IOrderActionSanityInput): TOrderSanityResult; +/** + * Screen deposit predicates that the validator applies to the complete batch, + * after it has summed every request. This must not run per order: offsetting + * yields can make a non-empty pair unexecutable, while a zero/zero order can + * validly accompany a principal-bearing one. + */ +export declare function screenDepositBatch(actions: readonly IOrderActionSanityInput[]): TOrderSanityResult; +/** + * The value-dependent facts about an order UTxO that the validator checks but + * the datum alone cannot answer. The caller derives these because it owns the + * asset ids and the reserve multiplier from settings. + */ +export interface IOrderUtxoFacts { + /** + * Quantity of the consumed asset the validator will require this UTxO to + * hold. Per action: mint → `usdr_to_reserve_ceil(amount, ra)` of the reserve + * asset; burn → `|amount|` USDr; stake → `amount` USDr; unstake → `amount` + * sUSDr. Zero for actions with no such check (treasury, direct). + */ + consumedRequired: bigint; + /** Quantity of that same asset actually locked in the UTxO. */ + consumedLocked: bigint; + /** + * Ceiling on what may be delivered to the destination, when it is knowable + * without live vault state: mint → `amount`, burn → + * `usdr_to_reserve(|amount|, ra)`. `undefined` where the ceiling follows the + * vault exchange rate (stake, unstake) and so cannot be screened here. + */ + maxDelivered?: bigint; + /** + * Set when the facts could not be derived from the datum at all — the reserve + * asset it names is not in settings, or its policy id is malformed. Every + * field of the datum is attacker-chosen, so this must be a REJECTION, never a + * thrown error: a throw from a screen would abort the caller's whole sweep, + * which is a strictly worse denial of service than the batch-kill the screen + * exists to prevent. The validator reaches the same conclusion via + * `expect Some(ra) = find_reserve_asset(...)` (`v1_0/mint.ak:29`). + */ + unresolvable?: string; +} +/** + * Screen the value-dependent aborts. Run alongside {@link screenOrderAction} — + * neither subsumes the other. + * + * Both conditions kill the whole transaction, not just the offending order: + * + * - **Underfunded input.** `validate_stake_inputs` / `validate_unstake_inputs` + * (`v1_0/utilities.ak:417`, `:443`) `expect` the locked quantity to cover + * `request.amount`; mint (`mint.ak:32`) and burn (`burn.ak:31`) fold the same + * comparison into an `and {}` whose `False` fails the enclosing `expect`. An + * order UTxO holding min-ADA and none of the consumed asset is therefore a + * complete batch-killer that costs the planter nothing but the min-ADA. + * - **Unsatisfiable floor.** `validate_destination_value` + * (`v1_0/utilities.ak:594-595`) `expect`s `min_delivered <= delivered <= + * max_delivered`. A `min_received` above the ceiling makes the pair + * unsatisfiable no matter what the operator builds. + */ +export declare function screenOrderUtxoFacts(action: IOrderActionSanityInput, facts: IOrderUtxoFacts): TOrderSanityResult; +//# sourceMappingURL=order-sanity.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1/order-sanity.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v1/order-sanity.d.ts.map new file mode 100644 index 0000000000..a9f9d26704 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1/order-sanity.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"order-sanity.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v1/order-sanity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAEH,0DAA0D;AAC1D,MAAM,MAAM,gBAAgB,GACxB,qBAAqB,GACrB,2BAA2B,GAC3B,kBAAkB,GAClB,4BAA4B,GAC5B,qBAAqB,GACrB,yBAAyB,GACzB,mBAAmB,GACnB,kCAAkC,GAClC,0BAA0B,CAAC;AAE/B;;;;;;;GAOG;AACH,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,kBAAkB,GAC1B;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GACZ;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,gBAAgB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAQ1D;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,uBAAuB,GAC9B,kBAAkB,CA8FpB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,SAAS,uBAAuB,EAAE,GAC1C,kBAAkB,CAepB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,+DAA+D;IAC/D,cAAc,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,uBAAuB,EAC/B,KAAK,EAAE,eAAe,GACrB,kBAAkB,CAiCpB"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1/types.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v1/types.d.ts new file mode 100644 index 0000000000..de2ba0a8a5 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1/types.d.ts @@ -0,0 +1,116 @@ +import type { TSchema } from "@blaze-cardano/data"; +import type { Core } from "@blaze-cardano/sdk"; +import type { Nonce, OrderRedeemerV1, RegistryV1, SettingsV1 as SettingsV1_0 } from "../../generated-types/v1_0/index.js"; +/** + * A TypeBox schema whose inferred static is exactly `T`, regardless of which + * generated module it came from. + * + * The generated modules export `TImport` schemas that carry the WHOLE + * module's `$defs` in their type, so `typeof V1_0Types.X` is not assignable + * to `typeof V1_1Rc1Types.X` even when the statics are structurally identical. + * `Data.serialize`/`parse` only infer through `T["static"]`, so this + * intersection keeps full type safety at every call site while accepting any + * version's schema value. Runtime ref resolution reads `$defs` off the schema + * VALUE, so cross-version dispatch is safe. + */ +export type TSchemaOf = TSchema & { + static: T; +}; +/** + * Version-agnostic proxy datum shape. `ProxyDatumV1.settings` is the only + * settings-transitive field in the schemas the family touches, so the family + * is generic over it instead of using a version's concrete `ProxyDatumV1`. + */ +export interface IProxyDatum { + logic: string; + settings: TSettings; +} +/** + * The minimal vault-datum shape every V1-family version shares. Shared code + * may READ `circulating_susdr`; it must never construct a whole vault datum — + * datum construction goes through the version's `buildInitialVaultDatum` / + * `buildUpdatedVaultDatum` seam so versions with extra fields (v1_1_rc1's + * yield-diffusion fields) can't be silently truncated. + */ +export interface IVaultDatumLike { + circulating_susdr: bigint; +} +/** + * The schema values the family base serializes/parses. Each per-version + * generated module namespace satisfies this structurally. + * + * `OrderDatumV1` is deliberately loose (`TSchema`): the order-datum statics + * differ across the family (v1_0 actions carry `min_received`, v1_0_rc1's do + * not), so the base's v1_0-semantics defaults cast parse results to the v1_0 + * static. Versions with a different static override every constructor and + * consumer of order datums. + */ +export interface IV1FamilySchemas { + ProxyDatumV1: TSchemaOf>; + SettingsV1: TSchemaOf; + OrderDatumV1: TSchema; + OrderRedeemerV1: TSchemaOf; + VaultDatumV1: TSchemaOf; + Nonce: TSchemaOf; +} +/** + * Schemas used ONLY by the base's v1_0-semantics signing/execute defaults + * (`getSignedPayloadFromOrderInputs`, `buildExecuteOrdersTx`). Versions whose + * protocol redeemer is structurally different (v1_0_rc1) omit this bag and + * override both consumers; the family's guarded accessor throws if neither + * is done. + * + * Both fields are deliberately loose (`TSchema`), for the same reason + * `OrderDatumV1` above is: the protocol-redeemer static diverges across the + * family (v1_1_rc1's `Deposit` carries `alpha` and its action union adds + * `MigrateState`), so a `TSchemaOf` would reject the + * wider v1_1_rc1 schema value even though runtime ref-resolution reads `$defs` + * off the schema VALUE and is safe. Versions build their own action shape via + * the `buildDepositAction` / `serializeOrchestratorWithdrawalRedeemer` seams. + */ +export interface IV1SigningSchemas { + SignedPayload_ProtocolRedeemerV1: TSchema; + SignedRedeemer_ExtraProtocolRedeemerV1: TSchema; +} +/** + * The fraction of a deposit's yield routed to the staked vault, the remainder + * going to the unstaked yield pot (v1_1_rc1+ `YieldSplitAlpha`). + * + * It is a parameter of the batch: its creator picks it, the backend stores it on + * the batch, and every co-signer signs THAT value. On-chain every signature of a + * batch is verified against a single payload hash, so a signer deriving its own + * value from live state could never be co-signed — which is why the signing path + * takes it as an input instead of reading the vault itself. + */ +export interface IYieldSplitAlpha { + numerator: bigint; + denominator: bigint; +} +/** + * Version-agnostic view over the settings fields the shared tx-builders use. + * v1_0: the (flat) settings object itself. v1_1_rc1: `settings.config`. + */ +export type TV1SettingsConfig = Pick; +/** + * The registry fields the family base reads (protocol-upgrade checks). + * Registries differ across versions (v1_0 adds `yield_oracle`), so the + * seam exposes only the shared field. + */ +export type TV1Registry = Pick; +/** + * Instantiated scripts each version's `create()` builds from its own + * generated script classes and hands to the family constructor. Method + * bodies only ever see `Core.Script` values. + */ +export interface IV1FamilyScripts { + oneShotScript: Core.Script; + protocolOrchestratorScript: Core.Script; + protocolMintScript: Core.Script; + protocolStakeScript: Core.Script; + protocolManagementScript: Core.Script; + mintProxyScript: Core.Script; + treasuryScript: Core.Script; + orderScript: Core.Script; + stakingVaultScript: Core.Script; +} +//# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1/types.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v1/types.d.ts.map new file mode 100644 index 0000000000..cb50634cd0 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1/types.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v1/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAM/C,OAAO,KAAK,EACV,KAAK,EACL,eAAe,EACf,UAAU,EACV,UAAU,IAAI,YAAY,EAC3B,MAAM,qCAAqC,CAAC;AAE7C;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,OAAO,GAAG;IAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAEnD;;;;GAIG;AACH,MAAM,WAAW,WAAW,CAAC,SAAS;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,gBAAgB,CAAC,SAAS,EAAE,WAAW;IACtD,YAAY,EAAE,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;IAChD,UAAU,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,SAAS,CAAC,eAAe,CAAC,CAAC;IAC5C,YAAY,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IACrC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;CACzB;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,iBAAiB;IAChC,gCAAgC,EAAE,OAAO,CAAC;IAC1C,sCAAsC,EAAE,OAAO,CAAC;CACjD;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,YAAY,EACZ,gBAAgB,GAAG,oBAAoB,CACxC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAEpD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC;IAC3B,0BAA0B,EAAE,IAAI,CAAC,MAAM,CAAC;IACxC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC;IAChC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC;IACjC,wBAAwB,EAAE,IAAI,CAAC,MAAM,CAAC;IACtC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC;IAC7B,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC;IAC5B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;IACzB,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC;CACjC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1_0/index.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v1_0/index.d.ts new file mode 100644 index 0000000000..6dfe27a6b4 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1_0/index.d.ts @@ -0,0 +1,92 @@ +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, type Wallet } from "@blaze-cardano/sdk"; +import type { RegistryV1, SettingsV1, VaultDatumV1 } from "../../generated-types/v1_0/index.js"; +import type { TV1SettingsConfig } from "../v1/types.js"; +import { RealfiSDKV1Family } from "../v1/family.js"; +export { DIRECT_ACTION_PADDING_ASSET, type ITreasuryUnstakeOrderTxResult, } from "../v1/family.js"; +export interface IRealfiSDKParamsV1_0 { + version: "V1_0"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** USDr asset name hex */ + assetNameHex: string; + /** sUSDr asset name hex */ + sUSDrAssetNameHex: string; + /** The treasury bootstrap UTxO reference */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** The staking vault bootstrap UTxO reference */ + stakingVaultBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Fallback slippage tolerance (in basis points) used by buildStakeOrderTx / + * buildUnstakeOrderTx when the caller doesn't pass a per-call value and + * doesn't pass an explicit `minReceived`. 50n = 0.5%. Default: 50n. + */ + defaultSlippageToleranceBps?: bigint; + /** + * Use V0.1 treasury script instead of V1.0. + * This is needed for protocol-only upgrades where the treasury NFT + * remains at the V0.1 treasury address. Default: false + */ + useV0_1Treasury?: boolean; + /** + * Use V0.4 staking vault script instead of V1.0. + * This is needed for protocol-only upgrades where the vault NFT + * remains at the V0.4 vault address. Default: false + */ + useV0_4StakingVault?: boolean; + /** + * Hashes of the validators this deployment actually runs. See + * IV1FamilyConstructorParams.deployedValidators — without them, identity is + * derived from bundled artifacts and an order can be locked at an address + * nothing watches. + */ + deployedValidators?: Readonly>; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + stakingVaultRefInput?: Core.TransactionUnspentOutput; + }; + clientSource?: import("../shared/client-id.js").TClientSource; +} +/** + * V1_0 SDK implementation. + * + * Extends V0_4 with: + * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios) + * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded + * - Forfeit parameter: Support yield forfeiture during unstake operations + * - New Settings fields: direct_mint_permission, direct_burn_permission + * + * All transaction-building logic lives in {@link RealfiSDKV1Family}; this + * class instantiates the V1_0 scripts and implements the version seams + * (flat settings, 1-field vault datum). + */ +export declare class RealfiSDKV1_0

extends RealfiSDKV1Family { + readonly version: "V1_0"; + /** + * Create a V1_0 SDK instance. + */ + static create

(blaze: Blaze, params: IRealfiSDKParamsV1_0): RealfiSDKV1_0; + protected settingsConfig(settings: SettingsV1): TV1SettingsConfig; + protected settingsRegistry(settings: SettingsV1): RegistryV1; + protected buildInitialVaultDatum(): VaultDatumV1; + protected buildUpdatedVaultDatum(previous: VaultDatumV1, sUSDrDelta: bigint): VaultDatumV1; +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1_0/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v1_0/index.d.ts.map new file mode 100644 index 0000000000..ea31e298b3 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1_0/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v1_0/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,KAAK,KAAK,EAAE,IAAI,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAQnE,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,YAAY,EACb,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EACL,2BAA2B,EAC3B,KAAK,6BAA6B,GACnC,MAAM,iBAAiB,CAAC;AAGzB,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE;QACd,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;QAC3B,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,0BAA0B;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,2BAA2B;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4CAA4C;IAC5C,iBAAiB,EAAE;QACjB,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;QAC3B,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,iDAAiD;IACjD,qBAAqB,EAAE;QACrB,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;QAC3B,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,0EAA0E;IAC1E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD;;;OAGG;IACH,uBAAuB,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC;IACvC,eAAe,CAAC,EAAE;QAChB,gBAAgB,CAAC,EAAE,IAAI,CAAC,wBAAwB,CAAC;QACjD,aAAa,CAAC,EAAE,IAAI,CAAC,wBAAwB,CAAC;QAC9C,gBAAgB,CAAC,EAAE,IAAI,CAAC,wBAAwB,CAAC;QACjD,aAAa,CAAC,EAAE,IAAI,CAAC,wBAAwB,CAAC;QAC9C,oBAAoB,CAAC,EAAE,IAAI,CAAC,wBAAwB,CAAC;KACtD,CAAC;IACF,YAAY,CAAC,EAAE,OAAO,wBAAwB,EAAE,aAAa,CAAC;CAC/D;AAMD;;;;;;;;;;;;GAYG;AACH,qBAAa,aAAa,CACxB,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,MAAM,CAChB,SAAQ,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC;IACzD,QAAQ,CAAC,OAAO,EAAG,MAAM,CAAU;IAEnC;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM,EAChD,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAClB,MAAM,EAAE,oBAAoB,GAC3B,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;IAsItB,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,UAAU,GAAG,iBAAiB;IAKjE,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU;IAI5D,SAAS,CAAC,sBAAsB,IAAI,YAAY;IAIhD,SAAS,CAAC,sBAAsB,CAC9B,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,MAAM,GACjB,YAAY;CAGhB"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1_0_rc1/index.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v1_0_rc1/index.d.ts new file mode 100644 index 0000000000..88991ac286 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1_0_rc1/index.d.ts @@ -0,0 +1,273 @@ +import { PlutusData } from "@blaze-cardano/core"; +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, TxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import { V1_0Rc1Types } from "../../generated-types/index.js"; +import type { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import type { Destination, MultisigScript, OrderDatumV1, RegistryV1, SettingsV1, VaultDatumV1 } from "../../generated-types/v1_0_rc1/index.js"; +import { RealfiSDKV1Family, type IBuildStakeContinuationParams, type IStakeContinuation, type IOrderInfo, type TOrderActionType } from "../v1/family.js"; +import type { TV1SettingsConfig } from "../v1/types.js"; +/** + * Sentinel `reserve_asset` used in V1_0_Rc1 TreasuryRequestV1 redeemers for + * DirectMint and DirectBurn actions, which have no real reserve asset in + * their order datum. The on-chain validators `direct_mint_logic` and + * `direct_burn_logic` do not inspect this field; this sentinel makes the + * intent explicit both in code and when inspecting on-chain redeemers. + * + * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a + * sentinel and extremely unlikely to occur as a real script hash) + * - `asset_name`: "unused" (ASCII) + * + * Keep in sync with backend `contract.DirectActionPaddingAsset`. + */ +export declare const DIRECT_ACTION_PADDING_ASSET: V1_0Rc1Types.Asset; +export interface ITreasuryUnstakeOrderTxResultRc1 { + /** Transaction builder for the treasury unstake order. */ + tx: TxBuilder; + /** + * Native script used as the unstake output destination: + * AllOf { After(unlockSlot), owner }. + */ + nativeScript: Core.NativeScript; +} +export interface IRealfiSDKParamsV1_0Rc1 { + version: "V1_0_Rc1"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** USDr asset name hex */ + assetNameHex: string; + /** sUSDr asset name hex */ + sUSDrAssetNameHex: string; + /** The treasury bootstrap UTxO reference */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** The staking vault bootstrap UTxO reference */ + stakingVaultBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Use V0.1 treasury script instead of V1.0. + * This is needed for protocol-only upgrades where the treasury NFT + * remains at the V0.1 treasury address. Default: false + */ + useV0_1Treasury?: boolean; + /** + * Use V0.4 staking vault script instead of V1.0. + * This is needed for protocol-only upgrades where the vault NFT + * remains at the V0.4 vault address. Default: false + */ + useV0_4StakingVault?: boolean; + /** + * Hashes of the validators this deployment actually runs. See + * IV1FamilyConstructorParams.deployedValidators. + */ + deployedValidators?: Readonly>; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + stakingVaultRefInput?: Core.TransactionUnspentOutput; + }; + clientSource?: import("../shared/client-id.js").TClientSource; +} +/** + * V1_0Rc1 SDK implementation. + * + * Extends V0_4 with: + * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios) + * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded + * - Forfeit parameter: Support yield forfeiture during unstake operations + * - New Settings fields: direct_mint_permission, direct_burn_permission + * + * Scaffolding (scripts, deploy/register, treasury, vault, one-shot, cancel, + * invalidate) is inherited from {@link RealfiSDKV1Family}. The release + * candidate's protocol redeemer schema is structurally different from v1_0 + * (`TreasuryRequestV1[]` + `RequestV1[]`, no fees, no `min_received`), so the + * order builders, signed-payload construction, and execute builders override + * the family's v1_0-semantics defaults with the rc1 behavior verbatim. No + * signing schemas are passed to the family constructor — both consumers are + * overridden here. + */ +export declare class RealfiSDKV1_0Rc1

extends RealfiSDKV1Family { + readonly version: "V1_0_Rc1"; + /** + * Create a V1_0Rc1 SDK instance. + */ + static create

(blaze: Blaze, params: IRealfiSDKParamsV1_0Rc1): RealfiSDKV1_0Rc1; + protected settingsConfig(settings: SettingsV1): TV1SettingsConfig; + protected settingsRegistry(settings: SettingsV1): RegistryV1; + protected buildInitialVaultDatum(): VaultDatumV1; + protected buildUpdatedVaultDatum(previous: VaultDatumV1, sUSDrDelta: bigint): VaultDatumV1; + buildStakeContinuation(_params: IBuildStakeContinuationParams): Promise; + /** + * Internal helper to build an order transaction. + */ + protected _buildOrderTx(params: { + action: V1_0Rc1Types.OrderActionV1; + valueToLock: Core.Value; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + extraLabels?: Map; + }): Promise; + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + buildMintOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + buildRedeemOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + buildStakeOrderTx(params: { + amount: bigint; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + protected _buildUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + forfeit?: bigint; + owner?: MultisigScript; + data?: PlutusData; + extraLabels?: Map; + }): Promise; + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockSlot - Slot number after which the user can spend the released USDr + * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0) + */ + buildUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + unlockSlot: bigint; + forfeit?: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build a treasury-managed unstake order that wraps the destination in a + * native timelock script controlled by the order owner. + * + * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps + * treasury multisig ownership on the released USDr while enforcing the same + * unlock slot used by the retail unstake helper. The owner must be convertible + * to a Cardano native script. + */ + buildTreasuryUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + unlockSlot: bigint; + forfeit?: bigint; + owner: MultisigScript; + data?: PlutusData; + }): Promise; + /** + * Build the V1_0Rc1 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + */ + getSignedPayloadFromOrderInputs(orderInputs: Core.TransactionInput[]): Promise<{ + signedPayload: string; + payloadHash: string; + }>; + /** + * Build a transaction to execute orders. + * + * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake, + * direct_mint, direct_burn. + */ + buildExecuteOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + signedPayload: string; + signatures: V1_0Rc1Types.Tuple_VerificationKey_COSESign1[]; + }): Promise; + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + */ + protected buildMintExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum, settings: SettingsV1): void; + /** + * Burn: USDr burned, reserve sent to destinations. + */ + protected buildBurnExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum, settings: SettingsV1): void; + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + protected buildWithdrawExecute(tx: TxBuilder, orderInfos: IOrderInfo[], treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum, settings: SettingsV1): void; + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + protected buildDepositExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum, vaultUtxo: Core.TransactionUnspentOutput, parsedVaultDatum: VaultDatumV1, settings: SettingsV1): void; + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + */ + protected buildStakeExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, sUSDrAssetId: Core.AssetId, vaultUtxo: Core.TransactionUnspentOutput, parsedVaultDatum: VaultDatumV1): void; + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + * V1_0Rc1: Supports forfeit parameter - forfeited USDr goes to yield pot. + */ + protected buildUnstakeExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, sUSDrAssetId: Core.AssetId, vaultUtxo: Core.TransactionUnspentOutput, parsedVaultDatum: VaultDatumV1, settings: SettingsV1): void; + /** + * DirectMint: Mint USDr without reserve asset flow. + * USDr is minted to destinations, treasury circulating_supply increases. + * NO reserve asset changes. + */ + protected buildDirectMintExecute(tx: TxBuilder, orderInfos: IOrderInfo[], stablecoinAssetId: Core.AssetId, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum): void; + /** + * DirectBurn: Burn USDr without reserve asset flow. + * USDr is burned, treasury circulating_supply decreases. + * NO reserve asset changes, NO destination outputs (fiat sent off-chain). + * + * The `_stablecoinAssetId` parameter exists only to keep the override + * signature compatible with the family's; rc1's direct-burn output is + * min-ADA only and does not touch the stablecoin asset. + */ + protected buildDirectBurnExecute(tx: TxBuilder, orderInfos: IOrderInfo[], _stablecoinAssetId: Core.AssetId, treasuryUtxo: Core.TransactionUnspentOutput, parsedTreasuryDatum: V0_1TreasuryDatum): void; + /** + * Classify an order action from its datum (rc1 actions carry no min_received). + */ + protected classifyOrderAction(datum: OrderDatumV1): { + actionType: TOrderActionType; + amount: bigint; + yield?: bigint; + forfeit?: bigint; + reserveAsset?: [string, string]; + isTreasuryAction: boolean; + }; +} +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1_0_rc1/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v1_0_rc1/index.d.ts.map new file mode 100644 index 0000000000..31a3438bfa --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1_0_rc1/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v1_0_rc1/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/diffusion.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/diffusion.d.ts new file mode 100644 index 0000000000..ee157c63fc --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/diffusion.d.ts @@ -0,0 +1,72 @@ +import type { VaultDatumV1 } from "../../generated-types/v1_1_rc1/index.js"; +export interface ISusdrExchangeRateInputs { + circulatingSusdr: bigint; + vaultUsdr: bigint; + pendingYield: bigint; + diffusionStartUnixMilli: bigint; + diffusionEndUnixMilli: bigint; +} +export declare const SUSDR_EXCHANGE_RATE_PRECISION = 1000000n; +/** + * Time-diffused yield — a verbatim TypeScript port of the on-chain helpers in + * `contracts/lib/v1_1_rc1/utilities.ak`. Deposited staked yield does not hit + * the exchange rate instantly; it releases linearly over a window so a large + * deposit cannot be sniped by staking right before it and unstaking right + * after. The SDK must reproduce this math exactly to build vault datums and + * rate quotes the validators accept. + * + * All timestamps are absolute POSIX milliseconds, matching the on-chain datum + * and the Plutus validity range (the ledger presents tx validity bounds to the + * script in POSIX ms, not slots). + */ +/** + * Maximum tx validity-range span (ms) tolerated while a diffusion window is + * active. Mirrors `max_diffusion_rate_span` (utilities.ak). The validator + * rejects a wider range so an interpolated rate can't be read from a stale, + * far-future lower bound. + */ +export declare const MAX_DIFFUSION_RATE_SPAN_MS = 3600000n; +/** + * USDr not yet diffused into the exchange rate at `atTimeMs`. Releases linearly + * from `diffusion_start` (full `pending_yield`) to `diffusion_end` (zero), + * rounded UP so settled backing is never overstated (conservative on unstake). + * + * Port of `pending_remaining` (utilities.ak:1082). + */ +export declare function pendingRemaining(vault: VaultDatumV1, atTimeMs: bigint): bigint; +/** + * Settled backing — the USDr currently backing sUSDr — given the full vault + * USDr balance and diffusion state at `atTimeMs`. Port of `settled_backing` + * (utilities.ak:1099). When no window is active the whole balance is settled + * and `atTimeMs` is irrelevant (matches the validator, which then requires no + * validity bound). + */ +export declare function settledBacking(usdrBalance: bigint, vault: VaultDatumV1, atTimeMs: bigint): bigint; +/** + * Diffusion-aware USDr-per-sUSDr exchange rate, scaled by `precision`. + * Returns 1:1 when no sUSDr is circulating, matching the on-chain convention. + */ +export declare function calculateSusdrExchangeRate(inputs: ISusdrExchangeRateInputs, atTimeMs: bigint, precision?: bigint): bigint; +/** + * The diffusion fields (`pending_yield`, `diffusion_start`, `diffusion_end`) + * the vault output must carry after a deposit. Port of the field expectations + * inside `validate_deposit_diffusion` (utilities.ak:1117). + * + * - Positive yield: the staked share rolls into `pending` on top of whatever + * hasn't diffused yet, and the window becomes `[nowMs, windowEndMs]`. If no + * window is requested (`windowEndMs <= 0`) and none is active, or the + * requested window has already elapsed by execution (`windowEndMs <= nowMs`), + * it collapses to instant `(0, 0, 0)`. + * - Loss (negative yield): the window is frozen (carried over unchanged); the + * loss is recognised immediately rather than diffused. + * + * `windowEndMs` is the max `diffusion_end` across the batch's deposit requests + * (`max_end` in deposit.ak); `nowMs` is the execution time (the tx validity + * lower bound). + */ +export declare function nextDepositDiffusion(vaultIn: VaultDatumV1, stakedYieldShare: bigint, totalYield: bigint, windowEndMs: bigint, nowMs: bigint): { + pending_yield: bigint; + diffusion_start: bigint; + diffusion_end: bigint; +}; +//# sourceMappingURL=diffusion.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/diffusion.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/diffusion.d.ts.map new file mode 100644 index 0000000000..68c70942db --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/diffusion.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"diffusion.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v1_1_rc1/diffusion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAE5E,MAAM,WAAW,wBAAwB;IACvC,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,uBAAuB,EAAE,MAAM,CAAC;IAChC,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,eAAO,MAAM,6BAA6B,WAAa,CAAC;AAExD;;;;;;;;;;;GAWG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,WAAa,CAAC;AAErD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,MAAM,GACf,MAAM,CAWR;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,MAAM,GACf,MAAM,CAKR;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,wBAAwB,EAChC,QAAQ,EAAE,MAAM,EAChB,SAAS,GAAE,MAAsC,GAChD,MAAM,CAgBR;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,YAAY,EACrB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,GACZ;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAoB3E"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/index.d.ts b/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/index.d.ts new file mode 100644 index 0000000000..052f069a53 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/index.d.ts @@ -0,0 +1,331 @@ +import { PlutusData } from "@blaze-cardano/core"; +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, type TxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import type { Destination, MultisigScript, SettingsV1, TreasuryRequestV1, Tuple_VerificationKey_COSESign1, VaultDatumV1 } from "../../generated-types/v1_1_rc1/index.js"; +import { type ICachedReferenceInputs } from "../shared/index.js"; +import { RealfiSDKV1Family, type IClassifiedOrderAction, type IExecutionValidityContext, type IOrderInfo, type IRequestOrigin, type IV1FamilyConstructorParams } from "../v1/family.js"; +import type { IV1FamilySchemas, IV1FamilyScripts, IV1SigningSchemas, IYieldSplitAlpha, TV1Registry, TV1SettingsConfig } from "../v1/types.js"; +/** V1_1-specific knobs threaded from the public params to the constructor. */ +interface IV1_1Rc1Options { + now?: () => bigint; + defaultDiffusionDurationMs?: bigint; + executionValidityWindowMs?: bigint; + diffusionShortfallThresholdMs?: bigint; + throwOnDiffusionWindowShortfall?: boolean; + distributionOracleScriptHash: Core.Hash28ByteBase16; + /** + * The `protocol_migration_v1_0_to_v1_1` withdraw validator script. Used to + * deploy/register it and to attach its withdrawal + hash when running the + * in-place vault-datum migration (`MigrateState`). + */ + migrationScript: Core.Script; +} +import { MAX_DIFFUSION_RATE_SPAN_MS } from "./diffusion.js"; +export interface IRealfiSDKParamsV1_1Rc1 { + version: "V1_1_Rc1"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** USDr asset name hex */ + assetNameHex: string; + /** sUSDr asset name hex */ + sUSDrAssetNameHex: string; + /** The treasury bootstrap UTxO reference */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** The staking vault bootstrap UTxO reference */ + stakingVaultBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** + * Dedicated bootstrap UTxO for the yield_oracle NFT one-shot, baked into the + * orchestrator's logic hash (via the yield_oracle validator param). + * + * OPTIONAL: a deployment that DEFERS the oracle can omit it, in which case the + * SDK uses {@link YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER} — a permanently + * un-consumable all-zeros reference. A deployment that intends to actually run + * the oracle must supply a real, still-unspent UTxO here (distinct from the + * proxy/treasury/stakingVault seeds, each of which its own NFT mint consumes), + * so the oracle policy stays mintable when the publish flow bootstraps the + * oracle NFT. + */ + yieldOracleBootstrap?: { + readonly txHash: Core.TransactionId; + readonly outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Fallback slippage tolerance (bps) for stake/unstake `minReceived`. 50n = + * 0.5%. Default: 50n. Same semantics as V1_0. + */ + defaultSlippageToleranceBps?: bigint; + /** + * Use V0.1 treasury script instead of V1.1. Needed for protocol-only + * upgrades where the treasury NFT stays at the V0.1 address. Default: false + */ + useV0_1Treasury?: boolean; + /** + * Use V0.4 staking vault script instead of V1.1. Needed for protocol-only + * upgrades where the vault NFT stays at the V0.4 address. Default: false + */ + useV0_4StakingVault?: boolean; + /** + * Hashes of the validators this deployment actually runs. See + * IV1FamilyConstructorParams.deployedValidators. + */ + deployedValidators?: Readonly>; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + stakingVaultRefInput?: Core.TransactionUnspentOutput; + }; + /** + * Default diffusion window length (ms) applied to `buildDepositOrderTx` when + * the caller passes neither `diffusionEnd` nor `diffusionDurationMs`. Measured + * from ORDER-CREATION time (not execution). When unset, deposits default to + * instant (no diffusion window). Choose to match the yield-deposit cadence + * (~24h for daily deposits, ~5d per epoch). + */ + defaultDiffusionDurationMs?: bigint; + /** + * Forward validity window (ms) attached to vault-touching executions while a + * diffusion window is active. The window plus any default-clock backoff must + * not exceed 1h (`MAX_DIFFUSION_RATE_SPAN_MS`). Default: 30 minutes. + */ + executionValidityWindowMs?: bigint; + /** + * Remaining diffusion window (ms) at or below which a deposit execution + * reports a shortfall (see {@link throwOnDiffusionWindowShortfall} for how). + * Default: 0n — only a window that has FULLY lapsed by execution time, which + * is the point the validator collapses it to an instant deposit. Raise it + * (e.g. 300_000n) to also flag a window that will survive execution but has + * nearly nothing left to diffuse over. + */ + diffusionShortfallThresholdMs?: bigint; + /** + * Refuse (throw) rather than `console.warn` when a deposit execution hits a + * diffusion-window shortfall. Default: false — a lapsed window is still a + * valid, executable deposit on-chain (it just settles instantly), so the + * default never blocks an execution. Set true in automation that must not + * silently under-deliver a diffused deposit. + */ + throwOnDiffusionWindowShortfall?: boolean; + /** + * Injectable clock (POSIX ms) for the diffusion rate time and deposit + * `diffusion_end` defaulting. Defaults to wall-clock `Date.now()`. Tests + * pass a deterministic function tied to the emulator clock. + */ + now?: () => bigint; +} +/** + * V1_1_Rc1 SDK implementation. + * + * The release candidate keeps V1_0's order/redeemer taxonomy (fees, + * `min_received`, `ExchangeRequestV1`/`TreasuryRequestV1`/`StakeRequestV1`) and + * adds **time-diffused yield**: the staking vault datum grows to four fields + * (`circulating_susdr`, `pending_yield`, `diffusion_start`, `diffusion_end`) + * and deposited staked yield releases into the exchange rate linearly over a + * window rather than instantly. + * + * Because the redeemer shape is V1_0 plus an additive `diffusion_end`, this + * class reuses {@link RealfiSDKV1Family}'s V1_0-semantics tx-builders wholesale + * and overrides only the diffusion seams: + * - the four-field vault datum ({@link buildInitialVaultDatum} / + * {@link buildUpdatedVaultDatum}) and nested settings adapters; + * - {@link settledVaultBacking}: quote stake/unstake rates against settled + * backing (balance minus not-yet-diffused pending yield); + * - {@link buildTreasuryRequest}: echo the order datum's `diffusion_end` into + * the signed payload; + * - {@link updateDepositVaultOutput}: roll the staked share into the diffusion + * window on deposit; + * - {@link buildDepositOrderTx}: expose the `diffusion_end` order parameter; + * - {@link applyExecutionValidityBounds}: attach the validity range the + * diffusion rate time is read from. + */ +export declare class RealfiSDKV1_1Rc1

extends RealfiSDKV1Family { + readonly version: "V1_1_Rc1"; + private readonly nowFn; + private readonly defaultDiffusionDurationMs?; + private readonly executionValidityWindowMs; + private readonly executionClockBackoffMs; + private readonly diffusionShortfallThresholdMs; + private readonly throwOnDiffusionWindowShortfall; + /** + * The `distribution_oracle` (publish-logic) validator hash. Exposed so + * settings datums can point `registry.yield_oracle` at it — that is the + * withdrawal the orchestrator's PublishYieldOracle path requires. NOTE: this + * is NOT the orchestrator's 5th compile-time parameter; that parameter is the + * `yield_oracle` validator hash (the mint+spend validator that holds the + * oracle UTxO), which is a different validator with a different hash. + */ + readonly distributionOracleScriptHash: Core.Hash28ByteBase16; + /** + * The `protocol_migration_v1_0_to_v1_1` withdraw validator and its hash. + * The validator is registry-gated (whitelisted via `registry.migration`), NOT + * an orchestrator compile-time parameter, so it lives version-locally on this + * class. Deploy it (`deployMigration`) + register its stake + * (`registerMigrationStake`), then run `buildMigrateStateTx` to migrate a + * v1_0 one-field vault datum to the four-field v1_1 shape in place. + */ + readonly migrationScript: Core.Script; + readonly migrationScriptHash: Core.Hash28ByteBase16; + /** + * Slot-aligned execution bounds for the in-flight `buildExecuteOrdersTx`. + * `executionNowMs` is the backed-off lower bound used by the diffusion datum + * and rate quote; `executionValidUntilMs` is based on the unshifted wall time. + * Both are undefined outside an execution build. + */ + private executionNowMs?; + private executionValidUntilMs?; + static create

(blaze: Blaze, params: IRealfiSDKParamsV1_1Rc1): RealfiSDKV1_1Rc1; + protected constructor(blaze: Blaze, params: IV1FamilyConstructorParams, schemas: IV1FamilySchemas, scripts: IV1FamilyScripts, cachedReferenceInputs: ICachedReferenceInputs | undefined, signingSchemas: IV1SigningSchemas, options: IV1_1Rc1Options); + protected settingsConfig(settings: SettingsV1): TV1SettingsConfig; + protected settingsRegistry(settings: SettingsV1): TV1Registry; + protected buildInitialVaultDatum(): VaultDatumV1; + protected buildUpdatedVaultDatum(previous: VaultDatumV1, sUSDrDelta: bigint): VaultDatumV1; + protected settledVaultBacking(parsedVaultDatum: VaultDatumV1, vaultUSDr: bigint): bigint; + protected buildTreasuryRequest(datum: Parameters["buildTreasuryRequest"]>[0], parsed: IClassifiedOrderAction, origin: IRequestOrigin): TreasuryRequestV1; + protected get splitsYield(): boolean; + /** + * The yield split a deposit batch's creator should pick: + * vault_usdr / treasury_circulating, i.e. the share of the circulating supply + * that is staked. Pinning it to that ratio makes the SIGNED split reproduce + * exactly the integer staked share the executor writes to the vault — + * deposit.ak recomputes staked_yield_share = total_yield * numerator / + * denominator with the same truncation-toward-zero, and the same two values + * feed the execute path's calculateYieldShares. + * + * Only the creator of a batch calls this. A co-signer must NOT: it reads live + * state, and two signers reading it at different chain states would produce + * different payload bytes, which cannot be co-signed (the orchestrator checks + * every signature against one payload hash). Co-signers read the batch's alpha + * back from the backend and pass it to getSignedPayloadFromOrderInputs. + */ + computeDepositAlpha(): Promise; + protected buildDepositAction(requests: TreasuryRequestV1[], alpha?: IYieldSplitAlpha): Promise["buildDepositAction"]>>>; + /** + * rc1's Deposit carries a COSE-signed `alpha`; `deposit.ak` splits total_yield + * against that signed ratio (quotient_integer), NOT live vault/treasury state. + * Echo the signed alpha here so the executor's vault/pot outputs (and the + * pot-output indexing) match what the validator checks — re-reading state + * would diverge if the vault or treasury moved between signing and execution. + */ + protected resolveDepositYieldShares(totalYield: bigint, vaultUSDr: bigint, treasuryCirculating: bigint, action: Parameters["resolveDepositYieldShares"]>[3]): { + stakedYieldShare: bigint; + unstakedYieldShare: bigint; + }; + protected serializeOrchestratorWithdrawalRedeemer(redeemer: Parameters["serializeOrchestratorWithdrawalRedeemer"]>[0]): PlutusData; + protected updateDepositVaultOutput(tx: TxBuilder, vaultUtxo: Core.TransactionUnspentOutput, parsedVaultDatum: VaultDatumV1, ctx: { + stakedYieldShare: bigint; + totalYield: bigint; + orderInfos: IOrderInfo[]; + }): void; + /** + * Build a deposit order. Identical to the family default except the ODeposit + * datum carries `diffusion_end` — the absolute POSIX-ms timestamp the staked + * yield diffuses until, set at ORDER CREATION and echoed by the executed + * request. Resolution: explicit `diffusionEnd` > `diffusionDurationMs` added to + * the order-creation time > the SDK's `defaultDiffusionDurationMs` added to the + * order-creation time > `0n` (instant). + * + * NB: because the window is absolute and fixed here, any delay before the + * execute lands (batching, cold/multisig signature collection) shortens the + * effective window; a window that fully elapses before execution collapses the + * deposit to instant on-chain. + */ + buildDepositOrderTx(params: { + principal: bigint; + yield: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + /** Absolute POSIX-ms timestamp the staked yield diffuses until. */ + diffusionEnd?: bigint; + /** Diffusion window length (ms) from order-creation time. */ + diffusionDurationMs?: bigint; + }): Promise; + buildExecuteOrdersTx(params: Parameters["buildExecuteOrdersTx"]>[0]): Promise; + protected applyExecutionValidityBounds(tx: TxBuilder, context: IExecutionValidityContext): Promise; + /** + * The diffusion rate timestamp (POSIX ms): the pinned execution time during + * an execution build, else the current wall-clock time (used by order-build + * min-received estimation, where an exact rate time is not yet knowable). + */ + private rateTimeMs; + private resolveDiffusionEnd; + /** + * Surface a diffusion-window shortfall on a deposit execution. + * + * `diffusion_end` is absolute and fixed at ORDER CREATION, so waiting to + * execute (batching, cold/multisig signing) eats the window. Once it is gone, + * `validate_deposit_diffusion` (utilities.ak:1117) zeroes the window and the + * deposit settles instantly — a VALID on-chain outcome, so the tx succeeds and + * nothing else in the stack complains. This is the only place that sees it: + * the operator would otherwise have to read the resulting vault datum. + * + * Advisory by default; {@link IRealfiSDKParamsV1_1Rc1.throwOnDiffusionWindowShortfall} + * turns it into a refusal. + */ + private checkDiffusionWindow; + /** + * Deploy the migration validator as a reference script. Required before its + * withdrawal can be attached in {@link buildMigrateStateTx}. + */ + deployMigration(): Promise; + /** + * Register the migration validator's stake credential. Its withdrawal cannot + * be exercised until the stake credential is registered. + */ + registerMigrationStake(): TxBuilder; + /** + * Read the staking-vault UTxO holding a legacy v1_0 (one-field) datum. The + * inherited {@link getVaultDatum} parses the four-field v1_1 schema and THROWS + * on a pre-migration vault, so the migration path reads the input with the + * v1_0 single-field schema (`circulating_susdr` only). + */ + private readLegacyVaultDatum; + /** + * Build the COSE payload for a `MigrateState` action. Unlike the order path + * (whose nonce derives from the sorted order inputs), migration spends the + * vault UTxO, so the nonce is anchored to the vault input. Returns the CBOR + * payload (for {@link buildMigrateStateTx}) and its blake2b-256 hash (for + * CIP-30 signing by the `permissions.migrate` signer(s)). + */ + getMigrateStatePayload(): Promise<{ + signedPayload: string; + payloadHash: string; + }>; + /** + * Build the in-place vault-datum migration transaction (`MigrateState`). Spends + * the staking-vault UTxO (still holding the v1_0 one-field datum) and re-locks + * it at the SAME address and value with the four-field v1_1 datum + * (`circulating_susdr` preserved, diffusion window zeroed). Operator-only — not + * on the partner surface, like {@link buildExecuteOrdersTx}. + * + * Requires (per `protocol_migration_v1_0_to_v1_1.ak` + the orchestrator's + * MigrateState branch): the migration validator deployed + stake-registered, + * `registry.migration = Some(migrationScriptHash)` in the live settings, and + * `signatures` = the `permissions.migrate` COSE signatures over the payload + * hash from {@link getMigrateStatePayload}. + */ + buildMigrateStateTx(params: { + signedPayload: string; + signatures: Tuple_VerificationKey_COSESign1[]; + }): Promise; +} +/** Re-exported for parity with the sibling version modules. */ +export { MAX_DIFFUSION_RATE_SPAN_MS }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/index.d.ts.map new file mode 100644 index 0000000000..f1faacba6f --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sdk/v1_1_rc1/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/v1_1_rc1/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sundae/discovery.d.ts b/modules/realfi-partner-sdk/dist/types/sundae/discovery.d.ts new file mode 100644 index 0000000000..06519a6f30 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sundae/discovery.d.ts @@ -0,0 +1,39 @@ +import { type IPoolData, type TSupportedNetworks } from "@sundaeswap/core"; +/** + * Which pools discovery returns, narrowing left to right: + * `curated ⊆ buildable ⊆ all`. + * + * - `all` — every pool the Sundae API returns for the asset, any version. + * - `buildable` — those the SDK can build an order *for*. Note "for", not + * "against": a V4 pool is included because the SDK places a pool-less intent + * for it, even though no order names the pool. + * - `curated` — the buildable pools whose pair RealFi has approved. + */ +export type TSundaePoolDiscoveryScope = "curated" | "buildable" | "all"; +export interface ISundaePoolDiscoveryParams { + /** Defaults to the RealFi-approved `curated` scope. */ + scope?: TSundaePoolDiscoveryScope; +} +export interface ISundaePoolDiscoveryOptions { + /** Overrides Sundae's endpoint while retaining the network for fee math. */ + endpoint?: string; + /** Overrides RealFi's runtime partner configuration for custom deployments. */ + partnerConfigUrl?: string; +} +export interface ISundaePoolDiscoverySDK { + findPoolsByAsset(assetId: string, params?: ISundaePoolDiscoveryParams): Promise; +} +/** Internal seam for RealFi's authoritative runtime pair configuration. */ +export interface ISundaeCuratedPoolAssets { + baseAssetId: string; + counterpartAssetIds: readonly string[]; +} +export type TSundaeCuratedPoolAssetsLoader = (network: TSupportedNetworks) => Promise; +/** + * Internal constructor. The loader remains behind the package export boundary + * so RealFi, not partners, owns curated pair selection. + */ +export declare function createPoolDiscovery(network: TSupportedNetworks, options?: ISundaePoolDiscoveryOptions, loadCuratedPoolAssets?: TSundaeCuratedPoolAssetsLoader): ISundaePoolDiscoverySDK; +/** RealFi-owned runtime curation used by the public network factory. */ +export declare function createRuntimeCuratedPoolAssetsLoader(partnerConfigUrl?: string): TSundaeCuratedPoolAssetsLoader; +//# sourceMappingURL=discovery.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sundae/discovery.d.ts.map b/modules/realfi-partner-sdk/dist/types/sundae/discovery.d.ts.map new file mode 100644 index 0000000000..634ca2a8f6 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sundae/discovery.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../src/sundae/discovery.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,kBAAkB,EACxB,MAAM,kBAAkB,CAAC;AAO1B;;;;;;;;;GASG;AACH,MAAM,MAAM,yBAAyB,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC;AAExE,MAAM,WAAW,0BAA0B;IACzC,uDAAuD;IACvD,KAAK,CAAC,EAAE,yBAAyB,CAAC;CACnC;AAED,MAAM,WAAW,2BAA2B;IAC1C,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,gBAAgB,CACd,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,0BAA0B,GAClC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;CACzB;AAED,2EAA2E;AAC3E,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,MAAM,MAAM,8BAA8B,GAAG,CAC3C,OAAO,EAAE,kBAAkB,KACxB,OAAO,CAAC,wBAAwB,CAAC,CAAC;AA0DvC;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,kBAAkB,EAC3B,OAAO,GAAE,2BAAgC,EACzC,qBAAqB,CAAC,EAAE,8BAA8B,GACrD,uBAAuB,CA4DzB;AAED,wEAAwE;AACxE,wBAAgB,oCAAoC,CAClD,gBAAgB,CAAC,EAAE,MAAM,GACxB,8BAA8B,CAYhC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sundae/index.d.ts b/modules/realfi-partner-sdk/dist/types/sundae/index.d.ts new file mode 100644 index 0000000000..7eed77d454 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sundae/index.d.ts @@ -0,0 +1,149 @@ +import { Core, type Blaze, type Provider, type TxBuilder as BlazeTxBuilder, type Wallet } from "@blaze-cardano/sdk"; +import { AssetAmount, type IAssetAmountMetadata } from "@sundaeswap/asset"; +import { EContractVersion, EDatumType, EPoolCurve, ESwapType, type IComposedTx, type IPoolData, type ISwapConfigArgs, type TDestinationAddress, type TOrderAddressesArgs, type TSupportedNetworks, type TSwapType } from "@sundaeswap/core"; +export { AssetAmount, EContractVersion, EDatumType, EPoolCurve, ESwapType }; +export type { IAssetAmountMetadata, IPoolData, ISwapConfigArgs, TDestinationAddress, TSwapType, }; +import type { IBuildStakeContinuationParams } from "../sdk/v1/family.js"; +import type { StakeContinuationBuilder } from "../tx-builder/registry.js"; +import { type ISundaePoolDiscoveryOptions, type ISundaePoolDiscoverySDK } from "./discovery.js"; +export type { ISundaePoolDiscoveryOptions, ISundaePoolDiscoveryParams, ISundaePoolDiscoverySDK, TSundaePoolDiscoveryScope, } from "./discovery.js"; +export { assertSupportedSundaeSwapPool, assertSwappableSundaeSwapPool, isSupportedSundaeSwapVersion, isSwappableSundaeSwapVersion, SUPPORTED_SUNDAE_SWAP_VERSIONS, SWAPPABLE_SUNDAE_SWAP_VERSIONS, type TSundaeSwapVersion, type TSwappableSundaeSwapVersion, } from "./support.js"; +export interface ISundaeSwapQuoteParams { + pool: IPoolData; + suppliedAsset: AssetAmount; + /** Decimal fraction: `0.01` is 1%. No application default is applied. */ + slippage: number; +} +export interface ISundaeSwapQuote { + estimatedReceived: AssetAmount; + minReceived: AssetAmount; + /** Decimal fraction: `0.01` is 1%. */ + priceImpact: number; +} +export interface ISundaeSwapInputQuoteParams { + pool: IPoolData; + /** The amount the owner wants to receive. */ + desiredOutput: AssetAmount; +} +export interface ISundaeSwapInputQuote { + /** The smallest supply that still yields `desiredOutput`. */ + requiredInput: AssetAmount; +} +export type TSundaeSwapOrder = IComposedTx; +export type TSundaeOwnedSwapConfigArgs = Omit & { + ownerAddress: string; + /** Final recipient and optional cancellation address; not a Sundae order route. */ + orderAddresses: Omit; +}; +export interface ISundaeSwapToStakeParams { + sdk: StakeContinuationBuilder; + swap: TSundaeOwnedSwapConfigArgs; + stake?: Omit; +} +/** + * A V4 swap intent: an offer and a floor, naming no pool. + * + * `referralFee` is deliberately not surfaced — no RealFi path takes one. + */ +export interface ISundaeSwapIntentParams { + /** Bech32 owner: the cancel authority and the default payout destination. */ + ownerAddress: string; + /** What the owner pays into the swap. */ + offered: AssetAmount; + /** + * The floor the fill must clear, and the owner's only guarantee: the surplus + * above it is unbound on-chain, so the scooper keeps whatever the fill clears + * it by. Take it from {@link quoteSwap}; never slacken it to help an order + * fill. + */ + minReceived: AssetAmount; + /** Final recipient. Defaults to a fixed destination at `ownerAddress`. */ + destination?: TDestinationAddress | "Self"; + /** Lifetime service-fee allocation, in lovelace. */ + budget?: bigint; + /** + * Per-scoop fee cap, in lovelace — also the scooper's routing fan-out budget + * (`maxPerExecution / costPerPool` pools). Too small and the order cannot be + * routed at all; a fill spanning more of the pair's pools needs more of it. + */ + maxPerExecution?: bigint; + /** + * The OrderConfig settings entry this order fulfills. Resolved from the + * protocol query when omitted — but that query returns nothing on a + * deployment whose API does not serve settings yet, so it stays passable. + */ + configToken?: string; +} +export interface ISundaeSwapSDK { + quoteSwap(params: ISundaeSwapQuoteParams): ISundaeSwapQuote; + quoteSwapInput(params: ISundaeSwapInputQuoteParams): ISundaeSwapInputQuote; + buildSwapOrderTx(params: ISwapConfigArgs): Promise; + /** V4 only: a pool-less intent. See {@link buildSwapIntentTx}. */ + buildSwapIntentTx(params: ISundaeSwapIntentParams): Promise; + buildSwapToStakeOrderTx(params: ISundaeSwapToStakeParams): Promise; +} +/** Creates a network-scoped, Blaze-free Sundae pool discovery adapter. */ +export declare function forNetwork(network: TSupportedNetworks, options?: ISundaePoolDiscoveryOptions): ISundaePoolDiscoverySDK; +/** + * Picks the V4 pool whose fee should quote a swap, ignoring any non-V4 pool in + * `pools` and any V4 pool {@link quoteSwap} would refuse. Undefined when none + * qualifies, which means the caller should fall back to another version. + * + * A V4 order names no pool, so this routes nothing — it only decides whose fee + * sets `min_received`. Cheapest is both the best rate and the safer pick: the + * floor is the owner's only guarantee, and a pool overstating its fee would drag + * it down into territory a scooper can fill cheaply and pocket the difference. + * A hostile pool can therefore only win by genuinely being the cheapest. + * + * Selection lives here rather than in the caller so that the eligibility rules + * have one home. `SundaeUtils.getBestPoolBySwapOutcome` is the equivalent for + * the other versions and cannot be used: it calls `getSwapOutput`, which throws + * on a V4 pool. + */ +export declare function selectV4QuotePool(pools: IPoolData[]): IPoolData | undefined; +/** + * Quotes a market swap for any swappable pool version. Callers do not branch on + * `pool.version`; this does. + * + * V3 / Stableswaps use Sundae's own pool math with the caller's slippage applied + * at bigint precision. V4 is constant-sum — see {@link quoteConstantSumSwap} for + * why its quote is exact, why `priceImpact` is `0`, and why `slippage` is + * ignored there. + */ +export declare function quoteSwap({ pool, suppliedAsset, slippage, }: ISundaeSwapQuoteParams): ISundaeSwapQuote; +/** + * Quotes the supply needed to receive `desiredOutput`, for any swappable pool + * version. The inverse of {@link quoteSwap}, and the direction a swap form needs + * when the user edits the receive field rather than the pay field. + */ +export declare function quoteSwapInput({ pool, desiredOutput, }: ISundaeSwapInputQuoteParams): ISundaeSwapInputQuote; +/** + * Builds a standalone Sundae swap order against a specific pool. + * + * V4 is quotable but not buildable here: its order carries no pool reference at + * all, so it cannot share this pool-taking argument shape. Use + * {@link buildSwapIntentTx}. + */ +export declare function buildSwapOrderTx(blaze: Blaze, params: ISwapConfigArgs): Promise; +/** + * Places a Sundae V4 swap. + * + * A V4 order is an intent: an offer and a floor, naming no pool. The scooper + * decides how to fill it — one pool, a split across the pair's pools, or a + * multi-hop chain — and `minReceived` is what bounds the result. + * + * Goes through `swapIntent` rather than `swap`: `TxBuilderV4.swap` throws by + * design, because a swap order carries the route constraint, which is outside + * the launch's audited surface. + */ +export declare function buildSwapIntentTx(blaze: Blaze, params: ISundaeSwapIntentParams): Promise; +/** + * Builds a Sundae V3 or Stableswaps order whose proceeds continue into a + * version-aware RealFi stake order. The caller's original Sundae destination + * becomes the RealFi destination, so both sUSDr and any USDr above Sundae's + * guaranteed minimum continue to the intended recipient. + */ +export declare function buildSwapToStakeOrderTx(blaze: Blaze, { sdk, swap, stake }: ISundaeSwapToStakeParams): Promise; +/** Creates a Blaze-scoped partner swap adapter. */ +export declare function create(blaze: Blaze): ISundaeSwapSDK; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sundae/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/sundae/index.d.ts.map new file mode 100644 index 0000000000..fe68c03684 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sundae/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sundae/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,KAAK,KAAK,EACV,KAAK,QAAQ,EACb,KAAK,SAAS,IAAI,cAAc,EAChC,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAEL,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,SAAS,EAGT,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;AAC5E,YAAY,EACV,oBAAoB,EACpB,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,SAAS,GACV,CAAC;AAEF,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAQzE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAGL,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,EAC7B,MAAM,gBAAgB,CAAC;AAMxB,YAAY,EACV,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,4BAA4B,EAC5B,4BAA4B,EAC5B,8BAA8B,EAC9B,8BAA8B,EAC9B,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,GACjC,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAC;IACjD,yEAAyE;IACzE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAC;IACrD,WAAW,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAC/C,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,SAAS,CAAC;IAChB,6CAA6C;IAC7C,aAAa,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,qBAAqB;IACpC,6DAA6D;IAC7D,aAAa,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAC;CAClD;AAED,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AAE7E,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,eAAe,EACf,cAAc,GAAG,gBAAgB,CAClC,GAAG;IACF,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,cAAc,EAAE,IAAI,CAAC,mBAAmB,EAAE,wBAAwB,CAAC,CAAC;CACrE,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,wBAAwB,CAAC;IAC9B,IAAI,EAAE,0BAA0B,CAAC;IACjC,KAAK,CAAC,EAAE,IAAI,CAAC,6BAA6B,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC;CACrE;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,OAAO,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAC3C;;;;;OAKG;IACH,WAAW,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAC/C,0EAA0E;IAC1E,WAAW,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAAC;IAC3C,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,MAAM,EAAE,sBAAsB,GAAG,gBAAgB,CAAC;IAC5D,cAAc,CAAC,MAAM,EAAE,2BAA2B,GAAG,qBAAqB,CAAC;IAC3E,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACrE,kEAAkE;IAClE,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC9E,uBAAuB,CACrB,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC9B;AAED,0EAA0E;AAC1E,wBAAgB,UAAU,CACxB,OAAO,EAAE,kBAAkB,EAC3B,OAAO,GAAE,2BAAgC,GACxC,uBAAuB,CAMzB;AA2PD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,SAAS,GAAG,SAAS,CAS3E;AA4BD;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,aAAa,EACb,QAAQ,GACT,EAAE,sBAAsB,GAAG,gBAAgB,CA+B3C;AA6BD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAC7B,IAAI,EACJ,aAAa,GACd,EAAE,2BAA2B,GAAG,qBAAqB,CA6BrD;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,EAC9B,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,gBAAgB,CAAC,CA2C3B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,EAC9B,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CA4C3B;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,EAC9B,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,wBAAwB,GAC7C,OAAO,CAAC,gBAAgB,CAAC,CA2D3B;AAED,mDAAmD;AACnD,wBAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,cAAc,CAQrE"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sundae/support.d.ts b/modules/realfi-partner-sdk/dist/types/sundae/support.d.ts new file mode 100644 index 0000000000..65da11f6be --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sundae/support.d.ts @@ -0,0 +1,74 @@ +import { EContractVersion, type IPoolData } from "@sundaeswap/core"; +interface IPoolSupport { + /** We can quote this pool and place a swap for it. */ + swap: boolean; + /** + * The order names the pool, so the pool-taking `buildSwapOrderTx` accepts it. + * A V4 order is an intent that names no pool — the scooper chooses — so a V4 + * pool is swappable without this. + */ + buildAgainstPool: boolean; +} +/** + * What the SDK can do with a pool, by Sundae contract version. + * + * Deliberately a `Record` over every version: a new Sundae version will not + * compile until someone answers both questions for it, rather than silently + * defaulting to unsupported because nobody remembered a second list. + */ +declare const POOL_SUPPORT: { + readonly V1: { + readonly swap: false; + readonly buildAgainstPool: false; + }; + readonly V3: { + readonly swap: true; + readonly buildAgainstPool: true; + }; + readonly NftCheck: { + readonly swap: false; + readonly buildAgainstPool: false; + }; + readonly Condition: { + readonly swap: false; + readonly buildAgainstPool: false; + }; + readonly Stableswaps: { + readonly swap: true; + readonly buildAgainstPool: true; + }; + readonly V4: { + readonly swap: true; + readonly buildAgainstPool: false; + }; +}; +type TVersionsWhere = { + [V in EContractVersion]: (typeof POOL_SUPPORT)[V][K] extends true ? V : never; +}[EContractVersion]; +/** Versions whose order names the pool. See {@link isSupportedSundaeSwapVersion}. */ +export declare const SUPPORTED_SUNDAE_SWAP_VERSIONS: readonly TVersionsWhere<"buildAgainstPool">[]; +export type TSundaeSwapVersion = TVersionsWhere<"buildAgainstPool">; +/** + * Whether the pool-taking `buildSwapOrderTx` accepts this version. Narrower than + * {@link isSwappableSundaeSwapVersion} — a V4 pool is swappable but its order + * names no pool, so it is not buildable *against a pool*. + */ +export declare function isSupportedSundaeSwapVersion(version: EContractVersion): version is TSundaeSwapVersion; +export declare function assertSupportedSundaeSwapPool(pool: IPoolData): asserts pool is IPoolData & { + version: TSundaeSwapVersion; +}; +/** Versions the SDK can quote and place a swap for. */ +export declare const SWAPPABLE_SUNDAE_SWAP_VERSIONS: readonly TVersionsWhere<"swap">[]; +export type TSwappableSundaeSwapVersion = TVersionsWhere<"swap">; +/** Whether the SDK can quote this version and place a swap for it. */ +export declare function isSwappableSundaeSwapVersion(version: EContractVersion): version is TSwappableSundaeSwapVersion; +/** + * Throws the same message as {@link assertSupportedSundaeSwapPool} on purpose: + * callers and tests treat "Unsupported Sundae swap pool version: X" as the one + * version-rejection string. + */ +export declare function assertSwappableSundaeSwapPool(pool: IPoolData): asserts pool is IPoolData & { + version: TSwappableSundaeSwapVersion; +}; +export {}; +//# sourceMappingURL=support.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sundae/support.d.ts.map b/modules/realfi-partner-sdk/dist/types/sundae/support.d.ts.map new file mode 100644 index 0000000000..eb9e92ec1b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sundae/support.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"support.d.ts","sourceRoot":"","sources":["../../../src/sundae/support.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEpE,UAAU,YAAY;IACpB,sDAAsD;IACtD,IAAI,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;CAOyC,CAAC;AAE5D,KAAK,cAAc,CAAC,CAAC,SAAS,MAAM,YAAY,IAAI;KACjD,CAAC,IAAI,gBAAgB,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK;CAC9E,CAAC,gBAAgB,CAAC,CAAC;AAsBpB,qFAAqF;AACrF,eAAO,MAAM,8BAA8B,+CAAoC,CAAC;AAEhF,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;AAEpE;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,gBAAgB,GACxB,OAAO,IAAI,kBAAkB,CAE/B;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,IAAI,IAAI,SAAS,GAAG;IAAE,OAAO,EAAE,kBAAkB,CAAA;CAAE,CAI7D;AAED,uDAAuD;AACvD,eAAO,MAAM,8BAA8B,mCAAwB,CAAC;AAEpE,MAAM,MAAM,2BAA2B,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;AAEjE,sEAAsE;AACtE,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,gBAAgB,GACxB,OAAO,IAAI,2BAA2B,CAExC;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,IAAI,IAAI,SAAS,GAAG;IAAE,OAAO,EAAE,2BAA2B,CAAA;CAAE,CAItE"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sundae/v4-curve.d.ts b/modules/realfi-partner-sdk/dist/types/sundae/v4-curve.d.ts new file mode 100644 index 0000000000..937743d761 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sundae/v4-curve.d.ts @@ -0,0 +1,9 @@ +import { type IPoolData } from "@sundaeswap/core"; +/** + * Returns `pools` with `curve`/`prices` filled in for the v4 pools that lacked + * them. A pool the query cannot describe is returned untouched; a failed request + * leaves every pool untouched, so discovery degrades to today's behaviour rather + * than failing outright. + */ +export declare function withV4CurveData(pools: readonly IPoolData[], assetId: string, endpoint: string): Promise; +//# sourceMappingURL=v4-curve.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/sundae/v4-curve.d.ts.map b/modules/realfi-partner-sdk/dist/types/sundae/v4-curve.d.ts.map new file mode 100644 index 0000000000..b8a412e6dd --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/sundae/v4-curve.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"v4-curve.d.ts","sourceRoot":"","sources":["../../../src/sundae/v4-curve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AA0EhF;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,SAAS,SAAS,EAAE,EAC3B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,SAAS,EAAE,CAAC,CAwCtB"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/tx-builder/destination.d.ts b/modules/realfi-partner-sdk/dist/types/tx-builder/destination.d.ts new file mode 100644 index 0000000000..f479a2e69b --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/tx-builder/destination.d.ts @@ -0,0 +1,64 @@ +import { PlutusData } from "@blaze-cardano/core"; +import { Core } from "@blaze-cardano/sdk"; +import { DatumBuilderV3, type TDatum, type TDatumResult, type TDestinationAddress, type TSupportedNetworks } from "@sundaeswap/core"; +import type { Destination, MultisigScript } from "../generated-types/v1_0/index.js"; +/** + * Intermediate output produced by one flow step and consumed by the previous + * flow step as its continuation destination. + */ +export interface TxBuilderStepResult { + address: Core.Address; + datum?: PlutusData; +} +export type RealFiDestinationDatum = Destination["datum"]; +export type SundaeV3DestinationResult = TDatumResult["schema"]>; +/** + * Converts a step result's optional inline datum into the RealFi destination + * datum shape. + */ +export declare function realfiDestinationDatumFromStepResult(stepResult: TxBuilderStepResult): RealFiDestinationDatum; +/** + * Builds a RealFi destination that points to a step result's address and datum. + */ +export declare function realfiDestinationFromStepResult(stepResult: TxBuilderStepResult): Destination; +/** + * Converts a Cardano address plus optional datum into the generated RealFi + * destination type. + */ +export declare function addressToRealFiDestination(address: Core.Address, datum?: RealFiDestinationDatum): Destination; +/** + * Derives a RealFi owner from the exact cancellation authority Sundae V3 + * assigns to an owner address. Sundae prefers a base address's staking hash + * over its payment hash, while deciding Signature vs Script from the address's + * payment credential, so this must use Sundae's builder rather than reimplement + * those semantics from the Blaze address parts. + */ +export declare function realfiOwnerFromSundaeV3OwnerAddress(network: TSupportedNetworks, ownerAddress: string): MultisigScript; +/** + * Reconstructs a Cardano address from a generated RealFi destination address. + */ +export declare function realfiDestinationToAddress(network: Core.NetworkId, destination: Destination): Core.Address; +/** + * Converts a step result's optional inline datum into the Sundae V3 destination + * datum shape. + */ +export declare function sundaeV3DestinationDatumFromStepResult(stepResult: TxBuilderStepResult): TDatum; +/** + * Builds the Sundae V3 destination address payload for a step result. + */ +export declare function sundaeV3DestinationAddressFromStepResult(stepResult: TxBuilderStepResult): TDestinationAddress; +/** + * Serializes the Sundae V3 destination used by classic, stableswap, and + * linearswap orders to route proceeds to the next step. + */ +export declare function sundaeV3DestinationFromStepResult(network: TSupportedNetworks, stepResult: TxBuilderStepResult): SundaeV3DestinationResult; +/** + * Returns the step result's inline datum for protocols that store continuation + * data directly as an optional Plutus datum. + */ +export declare function inlineDatumFromStepResult(stepResult: TxBuilderStepResult): PlutusData | undefined; +/** + * Parses Plutus data from a CBOR hex string. + */ +export declare function plutusDataFromCbor(cborHex: string): PlutusData; +//# sourceMappingURL=destination.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/tx-builder/destination.d.ts.map b/modules/realfi-partner-sdk/dist/types/tx-builder/destination.d.ts.map new file mode 100644 index 0000000000..8b96b166e9 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/tx-builder/destination.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"destination.d.ts","sourceRoot":"","sources":["../../../src/tx-builder/destination.ts"],"names":[],"mappings":"AAEA,OAAO,EAA6B,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EACL,cAAc,EAEd,KAAK,MAAM,EACX,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACxB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACf,MAAM,kCAAkC,CAAC;AAE1C;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,MAAM,sBAAsB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAC1D,MAAM,MAAM,yBAAyB,GAAG,YAAY,CAClD,UAAU,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC,CAAC,QAAQ,CAAC,CAClE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,oCAAoC,CAClD,UAAU,EAAE,mBAAmB,GAC9B,sBAAsB,CAExB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,mBAAmB,GAC9B,WAAW,CAKb;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,GAAE,sBAAkC,GACxC,WAAW,CA6Bb;AAED;;;;;;GAMG;AACH,wBAAgB,mCAAmC,CACjD,OAAO,EAAE,kBAAkB,EAC3B,YAAY,EAAE,MAAM,GACnB,cAAc,CAahB;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,IAAI,CAAC,SAAS,EACvB,WAAW,EAAE,WAAW,GACvB,IAAI,CAAC,OAAO,CAmBd;AAED;;;GAGG;AACH,wBAAgB,sCAAsC,CACpD,UAAU,EAAE,mBAAmB,GAC9B,MAAM,CAOR;AAED;;GAEG;AACH,wBAAgB,wCAAwC,CACtD,UAAU,EAAE,mBAAmB,GAC9B,mBAAmB,CAKrB;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,mBAAmB,GAC9B,yBAAyB,CAI3B;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,mBAAmB,GAC9B,UAAU,GAAG,SAAS,CAExB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAE9D"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/tx-builder/flow.d.ts b/modules/realfi-partner-sdk/dist/types/tx-builder/flow.d.ts new file mode 100644 index 0000000000..efadf0f884 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/tx-builder/flow.d.ts @@ -0,0 +1,95 @@ +import type { PlutusData } from "@blaze-cardano/core"; +import { Core } from "@blaze-cardano/sdk"; +import { type IDatumBuilderDepositV3Args, type IDatumBuilderSwapV3Args, type IDatumBuilderWithdrawV3Args, type TSupportedNetworks } from "@sundaeswap/core"; +import type { MultisigScript, OrderActionV1 } from "../generated-types/v1_0/index.js"; +import { type TxBuilderStepResult } from "./destination.js"; +/** + * Output produced by one flow step. The previous step consumes only this + * result's address and datum as its continuation destination. The value is the + * Cardano assets locked at this step's output; after the right fold, only the + * outermost folded result is converted into the transaction output. + */ +export interface TxBuilderFlowResult extends TxBuilderStepResult { + value: Core.Value; +} +export interface TxBuilderFinalStep extends TxBuilderFlowResult { +} +export declare const STAKE_VAULT_RATIO_SCALE = 1000000n; +export declare const DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS = 50n; +/** + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ +export interface RealFiStakeActionInput { + amount: bigint; + /** + * Current USDr-per-sUSDr vault ratio scaled by 1e6. + * + * This is the shape returned by the RealFi API's latestVaultRatio query. + */ + vaultRatio: bigint; + slippageToleranceBps?: bigint; +} +/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */ +export interface RealFiTxFlowStep { + kind: "realfi"; + address: Core.Address; + value: Core.Value; + owner: MultisigScript; + action: OrderActionV1; + data?: PlutusData; +} +export interface SundaeV3BaseTxFlowStep { + kind: "sundae-v3"; + network: TSupportedNetworks; + address: Core.Address; + value: Core.Value; +} +export interface SundaeV3SwapTxFlowStep extends SundaeV3BaseTxFlowStep, Omit { + orderKind: "swap"; +} +export interface SundaeV3DepositTxFlowStep extends SundaeV3BaseTxFlowStep, Omit { + orderKind: "deposit"; +} +export interface SundaeV3WithdrawTxFlowStep extends SundaeV3BaseTxFlowStep, Omit { + orderKind: "withdraw"; +} +export type SundaeV3TxFlowStep = SundaeV3SwapTxFlowStep | SundaeV3DepositTxFlowStep | SundaeV3WithdrawTxFlowStep; +export type SundaeTxFlowStep = SundaeV3TxFlowStep; +export type TxFlowStep = RealFiTxFlowStep | SundaeTxFlowStep; +/** + * Computes stake order `min_received` from the current vault exchange rate. + * + * `vaultRatio` is USDr per sUSDr scaled by 1e6, so the natural sUSDr output is + * `amount * 1e6 / vaultRatio`. The tolerance is applied to that output floor. + * + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ +export declare function computeStakeMinReceivedFromVaultRatio(amount: bigint, vaultRatio: bigint, slippageToleranceBps?: bigint): bigint; +/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */ +export declare function buildRealFiStakeAction({ amount, vaultRatio, slippageToleranceBps, }: RealFiStakeActionInput): OrderActionV1; +/** + * Builds the final flow result by folding from the final step backward through + * each requested flow step. + */ +export declare function buildTxFlow(steps: readonly TxFlowStep[], finalStep: TxBuilderFinalStep): TxBuilderFlowResult; +/** + * Builds one flow step using the already-built next step as its continuation. + */ +export declare function buildTxFlowStep(step: TxFlowStep, nextStep: TxBuilderFlowResult): TxBuilderFlowResult; +/** + * Builds a RealFi order flow result whose destination points to the next step. + * + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ +export declare function buildRealFiTxFlowStep(step: RealFiTxFlowStep, nextStep: TxBuilderStepResult): TxBuilderFlowResult; +/** + * Builds a Sundae V3 flow result by injecting the next step as the order + * destination and serializing the selected order datum. + */ +export declare function buildSundaeV3TxFlowStep(step: SundaeV3TxFlowStep, nextStep: TxBuilderStepResult): TxBuilderFlowResult; +/** + * Converts the folded flow result into a transaction output with an inline + * datum when the result includes one. + */ +export declare function txBuilderFlowResultToCoreOutput(result: TxBuilderFlowResult): Core.TransactionOutput; +//# sourceMappingURL=flow.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/tx-builder/flow.d.ts.map b/modules/realfi-partner-sdk/dist/types/tx-builder/flow.d.ts.map new file mode 100644 index 0000000000..7023dee725 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/tx-builder/flow.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../../../src/tx-builder/flow.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/tx-builder/index.d.ts b/modules/realfi-partner-sdk/dist/types/tx-builder/index.d.ts new file mode 100644 index 0000000000..4851626c9e --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/tx-builder/index.d.ts @@ -0,0 +1,4 @@ +export * from "./destination.js"; +export * from "./flow.js"; +export * from "./registry.js"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/tx-builder/index.d.ts.map b/modules/realfi-partner-sdk/dist/types/tx-builder/index.d.ts.map new file mode 100644 index 0000000000..524edcc15a --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/tx-builder/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tx-builder/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/tx-builder/registry.d.ts b/modules/realfi-partner-sdk/dist/types/tx-builder/registry.d.ts new file mode 100644 index 0000000000..09d20531b7 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/tx-builder/registry.d.ts @@ -0,0 +1,113 @@ +import { Core } from "@blaze-cardano/sdk"; +import type { TSupportedNetworks } from "@sundaeswap/core"; +import type { IBuildStakeContinuationParams, IStakeContinuation } from "../sdk/v1/family.js"; +import { type RealFiTxFlowStep, type RealFiStakeActionInput, type SundaeV3TxFlowStep, type TxBuilderFinalStep, type TxBuilderFlowResult, type TxFlowStep } from "./flow.js"; +type TxFlowStepInput = TStep extends unknown ? Omit : never; +export type TxBuilderNetwork = TSupportedNetworks; +export interface TxBuilderProtocolRegistry { + requestAddress?: string; +} +export interface TxBuilderNetworkRegistry { + realfi: TxBuilderProtocolRegistry; + sundaeV3: TxBuilderProtocolRegistry; +} +export type TxBuilderRegistry = Record; +/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */ +export type RealFiTxFlowStepInput = TxFlowStepInput; +/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */ +export type RealFiStakeTxFlowStepInput = Omit & RealFiStakeActionInput; +export type SundaeV3TxFlowStepInput = TxFlowStepInput; +export type SundaeV3SwapTxFlowStepInput = Extract; +/** A swap leg with explicit cancellation authority for the routed order. */ +export type SundaeV3OwnedSwapTxFlowStepInput = Omit & { + ownerAddress: string; +}; +/** + * Any SDK instance exposing `buildStakeContinuation` — the partner facade's + * per-build dispatcher, an `"at-init"` instance, or a raw version-pinned SDK. + * Only the per-build dispatcher fails closed on a stale protocol version; + * the others carry no such guarantee. + */ +export interface StakeContinuationBuilder { + buildStakeContinuation(params: IBuildStakeContinuationParams): Promise; +} +/** + * @deprecated Prefer `RealfiSDK.sundae.create(blaze).buildSwapToStakeOrderTx`. + * This input belongs to the lower-level, V3-only flow composer. + */ +export interface SundaeV3SwapToStakeInput { + sdk: StakeContinuationBuilder; + swap: SundaeV3OwnedSwapTxFlowStepInput; + finalStep: TxBuilderFinalStep; + stake?: Omit; +} +export interface CreateTxFlowBuilderOptions { + network: TxBuilderNetwork; + registry?: TxBuilderRegistry; +} +export interface TxFlowBuilder { + network: TxBuilderNetwork; + /** @deprecated V1_0 only. Prefer `sundaeV3SwapToStake`. */ + realfi: (step: RealFiTxFlowStepInput) => RealFiTxFlowStep; + /** @deprecated V1_0 only. Prefer `sundaeV3SwapToStake`. */ + realfiStake: (step: RealFiStakeTxFlowStepInput) => RealFiTxFlowStep; + sundaeV3: (step: SundaeV3TxFlowStepInput) => SundaeV3TxFlowStep; + /** + * @deprecated Prefer `RealfiSDK.sundae.create(blaze).buildSwapToStakeOrderTx`, + * which builds the complete V3 or Stableswaps order transaction. + */ + sundaeV3SwapToStake: (input: SundaeV3SwapToStakeInput) => Promise; + build: (steps: readonly TxFlowStep[], finalStep: TxBuilderFinalStep) => TxBuilderFlowResult; + toOutput: (result: TxBuilderFlowResult) => Core.TransactionOutput; +} +/** + * Default request address registry. Sundae V3 entries are enterprise order + * script addresses. The RealFi entry is a legacy V1_0-only path; preview runs + * V1_1, so its old V1_0 address is deliberately unset. New stake continuations + * derive the live address from the version-aware SDK instead. + */ +export declare const TX_BUILDER_REGISTRY: { + preview: { + realfi: {}; + sundaeV3: { + requestAddress: string; + }; + }; + preprod: { + realfi: { + requestAddress: string; + }; + sundaeV3: { + requestAddress: string; + }; + }; + mainnet: { + realfi: {}; + sundaeV3: { + requestAddress: string; + }; + }; +}; +/** + * Returns the registry entry for the selected network. + */ +export declare function getTxBuilderNetworkRegistry(network: TxBuilderNetwork, registry?: TxBuilderRegistry): TxBuilderNetworkRegistry; +/** + * Returns the RealFi request script address for the selected network. + * + * @deprecated V1_0 only. Prefer the version-aware SDK continuation builder. + */ +export declare function getRealFiRequestAddress(network: TxBuilderNetwork, registry?: TxBuilderRegistry): Core.Address; +/** + * Returns the Sundae V3 request script address for the selected network. + */ +export declare function getSundaeV3RequestAddress(network: TxBuilderNetwork, registry?: TxBuilderRegistry): Core.Address; +/** + * Creates a network-scoped flow builder that fills request script addresses from + * the registry before building the right-folded transaction flow. + */ +export declare function createTxFlowBuilder({ network, registry, }: CreateTxFlowBuilderOptions): TxFlowBuilder; +export {}; +//# sourceMappingURL=registry.d.ts.map \ No newline at end of file diff --git a/modules/realfi-partner-sdk/dist/types/tx-builder/registry.d.ts.map b/modules/realfi-partner-sdk/dist/types/tx-builder/registry.d.ts.map new file mode 100644 index 0000000000..ed5d204811 --- /dev/null +++ b/modules/realfi-partner-sdk/dist/types/tx-builder/registry.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/tx-builder/registry.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/package.json b/modules/realfi-partner-sdk/package.json new file mode 100644 index 0000000000..5856273bda --- /dev/null +++ b/modules/realfi-partner-sdk/package.json @@ -0,0 +1,69 @@ +{ + "name": "@bitgo/realfi-partner-sdk", + "version": "2.14.0", + "private": true, + "description": "BitGo fork of RealFi partner SDK for Cardano sUSDr liquid staking (Plutus order txs).", + "type": "module", + "sideEffects": false, + "license": "UNLICENSED", + "main": "./dist/cjs/index.js", + "module": "./dist/esm/index.js", + "types": "./dist/types/index.d.ts", + "exports": { + ".": { + "require": "./dist/cjs/index.js", + "import": "./dist/esm/index.js", + "types": "./dist/types/index.d.ts" + }, + "./tx-builder": { + "require": "./dist/cjs/tx-builder/index.js", + "import": "./dist/esm/tx-builder/index.js", + "types": "./dist/types/tx-builder/index.d.ts" + } + }, + "files": [ + "dist", + "src", + "CHANGELOG.md", + "README.md", + "UPSTREAM.md" + ], + "engines": { + "node": ">=20" + }, + "scripts": { + "build": "echo 'Prebuilt dist from upstream @realfi-co/realfi-partner-sdk@2.14.0 — see UPSTREAM.md'", + "prepare": "npm run build", + "test": "echo 'No unit tests in fork yet'" + }, + "dependencies": { + "@blaze-cardano/blueprint": "0.8.2", + "@blaze-cardano/core": "0.8.0", + "@blaze-cardano/data": "0.6.6", + "@blaze-cardano/emulator": "^0.4.4", + "@blaze-cardano/query": "0.5.6", + "@blaze-cardano/sdk": "0.2.47", + "@blaze-cardano/uplc": "0.4.3", + "@blaze-cardano/vm": "0.2.3", + "@blaze-cardano/wallet": "^0.5.2", + "@cardano-sdk/core": "0.46.15", + "@sundaeswap/asset": "1.0.11", + "@sundaeswap/core": "^2.13.1", + "cbor": "10.0.11" + }, + "repository": { + "type": "git", + "url": "https://github.com/BitGo/BitGoJS.git", + "directory": "modules/realfi-partner-sdk" + }, + "publishConfig": { + "access": "public" + }, + "keywords": [ + "cardano", + "realfi", + "susdr", + "staking" + ], + "author": "BitGo Inc. (fork of RealFi)" +} diff --git a/modules/realfi-partner-sdk/src/admin/index.ts b/modules/realfi-partner-sdk/src/admin/index.ts new file mode 100644 index 0000000000..b14e32d715 --- /dev/null +++ b/modules/realfi-partner-sdk/src/admin/index.ts @@ -0,0 +1 @@ +export * from "./settings/index.js"; diff --git a/modules/realfi-partner-sdk/src/admin/settings/index.ts b/modules/realfi-partner-sdk/src/admin/settings/index.ts new file mode 100644 index 0000000000..771c9c1a1c --- /dev/null +++ b/modules/realfi-partner-sdk/src/admin/settings/index.ts @@ -0,0 +1,3 @@ +export * from "./types.js"; +export * from "./utils.js"; +export * from "./protocol-settings.js"; diff --git a/modules/realfi-partner-sdk/src/admin/settings/protocol-settings.ts b/modules/realfi-partner-sdk/src/admin/settings/protocol-settings.ts new file mode 100644 index 0000000000..2b5faed7e1 --- /dev/null +++ b/modules/realfi-partner-sdk/src/admin/settings/protocol-settings.ts @@ -0,0 +1,3 @@ +// Version-neutral public entrypoint for the protocol settings admin SDK. +// The current implementation targets the v1.1-era settings shape internally. +export * from "./v1_1_rc1.js"; diff --git a/modules/realfi-partner-sdk/src/admin/settings/types.ts b/modules/realfi-partner-sdk/src/admin/settings/types.ts new file mode 100644 index 0000000000..e21a765cbc --- /dev/null +++ b/modules/realfi-partner-sdk/src/admin/settings/types.ts @@ -0,0 +1,145 @@ +import type { Provider } from "@blaze-cardano/query"; +import type { Blaze, Core, TxBuilder, Wallet } from "@blaze-cardano/sdk"; + +import type { + GovernanceConfig, + MultisigScript, + Permissions, + ProtocolConfig, + RegistryV1, + SettingsV1, + Tuple_VerificationKey_COSESign1, +} from "../../generated-types/v1_1_rc1/index.js"; + +/** + * COSE (CIP-8) signatures authorizing a settings change — `(VerificationKey, + * COSESign1)` tuples over the auth-payload hash from `getSettingsAuthPayloadHash`. + * Collected out-of-band (e.g. from hardware wallets), then passed to the build + * method — mirroring the orchestrator's `buildExecuteOrdersTx({ signatures })`. + */ +export type TSettingsSignatures = Tuple_VerificationKey_COSESign1[]; + +export interface IProtocolSettingsAdminParams { + proxyPolicyId: Core.PolicyId; + governanceConfig: GovernanceConfig; + enableTrace?: boolean; + referenceInputs?: { + settingsRefInput?: Core.TransactionUnspentOutput; + }; +} + +export interface IProtocolSettingsAdminSource< + P extends Provider, + W extends Wallet, +> { + readonly blaze: Blaze; + readonly oneShotPolicyId: Core.PolicyId; + readonly enableTrace: boolean; +} + +export interface IProtocolSettingsState { + proxyUtxo: Core.TransactionUnspentOutput; + proxyDatum: Core.PlutusData; + proxyAddress: Core.Address; + logicHash: Core.ScriptHash; + settingsData: Core.PlutusData; + liveSettings?: SettingsV1; + paymentCredentialHash: string; + isFrozen: boolean; + isGovernedByThisValidator: boolean; +} + +export interface IBuildChangePermissionsTxParams { + nextPermissions: Permissions; + signatures: TSettingsSignatures; +} + +export interface IBuildChangeConfigTxParams { + nextConfig: ProtocolConfig; + signatures: TSettingsSignatures; +} + +export interface IBuildChangeLogicTxParams { + nextLogicHash?: Core.ScriptHash; + nextRegistry?: RegistryV1; + signatures: TSettingsSignatures; +} + +/** + * A settings change resolved against the current on-chain state — the shared + * intermediate used to both compute the auth-payload hash and build the tx, so + * the signed message and the submitted tx always agree. + */ +export interface IResolvedSettingsChange { + redeemer: + | "ChangeLogic" + | "ChangePermissions" + | "ChangeConfig" + | "Shutdown" + | "Restore" + | "Migrate"; + nextLogicHash: Core.ScriptHash; + nextSettingsData: Core.PlutusData; + receiverAddress: Core.Address; + coValidateWith?: { + rewardAccount: Core.RewardAccount; + applyWitness(tx: TxBuilder): Promise; + }; +} + +export interface IBuildMigrateTxParams

{ + destination: IProtocolSettingsAdminInstance; + /** COSE signatures satisfying this (source) validator's `migrate` permission. */ + signatures: TSettingsSignatures; + /** COSE signatures satisfying the destination validator's `migrate` permission. */ + destinationSignatures: TSettingsSignatures; +} + +/** + * The change to authorize, passed to both `getSettingsAuthPayloadHash` (to get + * the hash to sign) and the matching build method — mirroring how the + * orchestrator passes the same order inputs to `getSignedPayloadFromOrderInputs` + * and `buildExecuteOrdersTx`. + */ +export type TSettingsChange

= + | { type: "ChangePermissions"; nextPermissions: Permissions } + | { type: "ChangeConfig"; nextConfig: ProtocolConfig } + | { + type: "ChangeLogic"; + nextLogicHash?: Core.ScriptHash; + nextRegistry?: RegistryV1; + } + | { type: "Shutdown" } + | { type: "Restore" } + | { type: "Migrate"; destination: IProtocolSettingsAdminInstance }; + +export interface IProtocolSettingsAdminInstance< + P extends Provider, + W extends Wallet, +> { + readonly blaze: Blaze; + readonly proxyPolicyId: Core.PolicyId; + readonly governanceConfig: GovernanceConfig; + readonly settingsScriptHash: Core.ScriptHash; + readonly settingsValidatorAddress: Core.Address; + readonly settingsRewardAccount: Core.RewardAccount; + readonly enableTrace: boolean; + + getSettingsState(): Promise; + applySettingsWitness(tx: TxBuilder): Promise; +} + +export type TGovernancePermissionKey = + | "logic_change" + | "permission_change" + | "config_change" + | "shutdown" + | "restore" + | "migrate"; + +export interface IParsedProxyDatum { + logicHash: Core.ScriptHash; + settingsData: Core.PlutusData; +} + +export type TPermissionedScript = MultisigScript; diff --git a/modules/realfi-partner-sdk/src/admin/settings/utils.ts b/modules/realfi-partner-sdk/src/admin/settings/utils.ts new file mode 100644 index 0000000000..3ef35aa31e --- /dev/null +++ b/modules/realfi-partner-sdk/src/admin/settings/utils.ts @@ -0,0 +1,176 @@ +import { + addressFromValidator, + blake2b_256, + HexBlob, +} from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import { Core } from "@blaze-cardano/sdk"; + +import * as V1_1Rc1Types from "../../generated-types/v1_1_rc1/index.js"; +import type { + GovernanceConfig, + SettingsV1, + Tuple_VerificationKey_COSESign1, +} from "../../generated-types/v1_1_rc1/index.js"; +import type { IParsedProxyDatum } from "./types.js"; + +export const SETTINGS_FROZEN_CONSTR = 1n; + +export function createSettingsValidatorScript( + proxyPolicyId: Core.PolicyId, + governanceConfig: GovernanceConfig, + enableTrace = false, +): Core.Script { + return new V1_1Rc1Types.SettingsProtocolSettingsProtocolSettingsWithdraw( + proxyPolicyId, + governanceConfig, + enableTrace, + ).Script; +} + +export function createSettingsValidatorAddress( + network: Core.NetworkId, + proxyPolicyId: Core.PolicyId, + governanceConfig: GovernanceConfig, + enableTrace = false, +): Core.Address { + const script = createSettingsValidatorScript( + proxyPolicyId, + governanceConfig, + enableTrace, + ); + return addressFromValidator(network, script); +} + +export function parseProxyDatumRaw(datum: Core.PlutusData): IParsedProxyDatum { + const constr = datum.asConstrPlutusData(); + if (!constr) { + throw new Error("Proxy datum is not constructor PlutusData"); + } + + const fields = constr.getData(); + const logicBytes = fields.get(0).asBoundedBytes(); + if (!logicBytes) { + throw new Error("Proxy datum logic field is not bytes"); + } + + return { + logicHash: Buffer.from(logicBytes).toString("hex") as Core.ScriptHash, + settingsData: fields.get(1), + }; +} + +export function buildRawProxyDatum( + logicHash: Core.ScriptHash, + settingsData: Core.PlutusData, +): Core.PlutusData { + const fields = new Core.PlutusList(); + fields.add(Core.PlutusData.newBytes(Buffer.from(logicHash, "hex"))); + fields.add(settingsData); + return Core.PlutusData.newConstrPlutusData( + new Core.ConstrPlutusData(0n, fields), + ); +} + +export function getSettingsAlternative(settingsData: Core.PlutusData): bigint { + const constr = settingsData.asConstrPlutusData(); + if (!constr) { + throw new Error("Settings data is not constructor PlutusData"); + } + return constr.getAlternative(); +} + +export function isFrozenSettingsData(settingsData: Core.PlutusData): boolean { + return getSettingsAlternative(settingsData) === SETTINGS_FROZEN_CONSTR; +} + +export function freezeSettingsData( + settingsData: Core.PlutusData, +): Core.PlutusData { + const fields = new Core.PlutusList(); + fields.add(settingsData); + return Core.PlutusData.newConstrPlutusData( + new Core.ConstrPlutusData(SETTINGS_FROZEN_CONSTR, fields), + ); +} + +export function unwrapFrozenSettingsData( + settingsData: Core.PlutusData, +): Core.PlutusData { + const constr = settingsData.asConstrPlutusData(); + if (!constr || constr.getAlternative() !== SETTINGS_FROZEN_CONSTR) { + throw new Error("Settings data is not frozen"); + } + return constr.getData().get(0); +} + +export function parseLiveSettings( + settingsData: Core.PlutusData, +): SettingsV1 | undefined { + if (isFrozenSettingsData(settingsData)) { + return undefined; + } + return parse(V1_1Rc1Types.SettingsV1, settingsData) as SettingsV1; +} + +export function serializeSettings(settings: SettingsV1): Core.PlutusData { + return Data.serialize(V1_1Rc1Types.SettingsV1, settings); +} + +export function serializeSettingsRedeemer( + redeemer: V1_1Rc1Types.SettingsRedeemer, +): Core.PlutusData { + return Data.serialize(V1_1Rc1Types.SettingsRedeemer, redeemer); +} + +/** + * Serialize the `SettingsAuthPayload` the on-chain validator reconstructs from + * the proxy in/out and hashes. `datum` is the resulting proxy output datum + * (`{ logic, settings }`); `nonce` is the proxy input's `OutputReference`. + * + * The `SettingsAuthPayload` schema is emitted into the blueprint via the + * `documentation` validator (see `validators/v1_1_rc1/documentation.ak`), so we + * serialize against the generated type rather than hand-building PlutusData. + */ +export function buildSettingsAuthPayload( + change: V1_1Rc1Types.SettingsRedeemer, + destinationScriptHash: Core.ScriptHash, + nextLogicHash: Core.ScriptHash, + nextSettingsData: Core.PlutusData, + nonce: Core.TransactionInput, +): Core.PlutusData { + const payload: V1_1Rc1Types.SettingsAuthPayload = { + change, + destination: destinationScriptHash, + datum: { logic: nextLogicHash, settings: nextSettingsData }, + nonce: { + transaction_id: nonce.transactionId().toString(), + output_index: nonce.index(), + }, + }; + return Data.serialize(V1_1Rc1Types.SettingsAuthPayload, payload); +} + +/** + * blake2b-256 of the auth payload's CBOR — the 32-byte message each governance + * signer COSE-signs (CIP-8). Mirrors the on-chain + * `blake2b_256(cbor.serialise(payload))` and the orchestrator's payload hashing. + */ +export function hashSettingsAuthPayload(payload: Core.PlutusData): string { + return blake2b_256(HexBlob(payload.toCbor())); +} + +/** + * The withdraw-handler redeemer: the change-class selector plus the COSE + * signatures authorizing it (the payload itself is reconstructed on-chain). + */ +export function serializeSettingsSignedRedeemer( + change: V1_1Rc1Types.SettingsRedeemer, + signatures: Tuple_VerificationKey_COSESign1[], +): Core.PlutusData { + return Data.serialize(V1_1Rc1Types.SettingsSignedRedeemer, { + change, + signatures, + }); +} diff --git a/modules/realfi-partner-sdk/src/admin/settings/v1_1_rc1.ts b/modules/realfi-partner-sdk/src/admin/settings/v1_1_rc1.ts new file mode 100644 index 0000000000..4687417a86 --- /dev/null +++ b/modules/realfi-partner-sdk/src/admin/settings/v1_1_rc1.ts @@ -0,0 +1,504 @@ +import { addressFromValidator } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { + type Blaze, + calculateMinAda, + Core, + type TxBuilder, + type Wallet, +} from "@blaze-cardano/sdk"; + +import type { + GovernanceConfig, + SettingsV1, +} from "../../generated-types/v1_1_rc1/index.js"; +import { + credentialFromScript, + deployScript, + lockOrPayAssets, + readSingletonDatum, + rewardAccountFromScript, +} from "../../sdk/shared/index.js"; +import type { + IBuildChangeConfigTxParams, + IBuildChangeLogicTxParams, + IBuildChangePermissionsTxParams, + IBuildMigrateTxParams, + IProtocolSettingsAdminInstance, + IProtocolSettingsAdminParams, + IProtocolSettingsAdminSource, + IProtocolSettingsState, + IResolvedSettingsChange, + TSettingsChange, + TSettingsSignatures, +} from "./types.js"; +import { + buildRawProxyDatum, + buildSettingsAuthPayload, + createSettingsValidatorScript, + freezeSettingsData, + hashSettingsAuthPayload, + isFrozenSettingsData, + parseLiveSettings, + parseProxyDatumRaw, + serializeSettings, + serializeSettingsSignedRedeemer, + unwrapFrozenSettingsData, +} from "./utils.js"; + +// Internal implementation for the current v1.1-era settings layout. +// Public consumers should import the version-neutral RealfiProtocolSettingsAdmin +// from admin/settings or the package root. +export class RealfiProtocolSettingsAdmin< + P extends Provider, + W extends Wallet, +> implements IProtocolSettingsAdminInstance { + readonly blaze: Blaze; + readonly proxyPolicyId: Core.PolicyId; + readonly governanceConfig: GovernanceConfig; + readonly settingsScript: Core.Script; + readonly settingsScriptHash: Core.ScriptHash; + readonly settingsValidatorAddress: Core.Address; + readonly settingsRewardAccount: Core.RewardAccount; + readonly enableTrace: boolean; + + private settingsRefInput?: Core.TransactionUnspentOutput; + + private constructor( + blaze: Blaze, + params: IProtocolSettingsAdminParams, + ) { + this.blaze = blaze; + this.proxyPolicyId = params.proxyPolicyId; + this.governanceConfig = params.governanceConfig; + this.enableTrace = params.enableTrace ?? false; + this.settingsRefInput = params.referenceInputs?.settingsRefInput; + + this.settingsScript = createSettingsValidatorScript( + this.proxyPolicyId, + this.governanceConfig, + this.enableTrace, + ); + this.settingsScriptHash = this.settingsScript.hash(); + this.settingsValidatorAddress = addressFromValidator( + this.blaze.provider.network, + this.settingsScript, + ); + this.settingsRewardAccount = rewardAccountFromScript( + this.settingsScript, + this.blaze.provider.network, + ); + } + + static create

( + blaze: Blaze, + params: IProtocolSettingsAdminParams, + ): RealfiProtocolSettingsAdmin { + return new RealfiProtocolSettingsAdmin(blaze, params); + } + + static fromProtocolSdk

( + sdk: IProtocolSettingsAdminSource, + params: Omit< + IProtocolSettingsAdminParams, + "proxyPolicyId" | "enableTrace" + > & { + enableTrace?: boolean; + }, + ): RealfiProtocolSettingsAdmin { + return new RealfiProtocolSettingsAdmin(sdk.blaze, { + proxyPolicyId: sdk.oneShotPolicyId, + governanceConfig: params.governanceConfig, + enableTrace: params.enableTrace ?? sdk.enableTrace, + referenceInputs: params.referenceInputs, + }); + } + + async deploySettingsValidator(): Promise { + return deployScript(this.blaze, this.settingsScript); + } + + registerSettingsStake(): TxBuilder { + return this.blaze + .newTransaction() + .addRegisterStake(credentialFromScript(this.settingsScript)); + } + + async getSettingsState(): Promise { + const proxyAssetId = Core.AssetId(this.proxyPolicyId); + const { utxo: proxyUtxo, datum: proxyDatum } = await readSingletonDatum( + this.blaze.provider, + proxyAssetId, + ); + + const { logicHash, settingsData } = parseProxyDatumRaw(proxyDatum); + const proxyAddress = proxyUtxo.output().address(); + const paymentCredentialHash = proxyAddress.getProps().paymentPart?.hash; + if (!paymentCredentialHash) { + throw new Error("Proxy UTxO address has no payment credential"); + } + + const isFrozen = isFrozenSettingsData(settingsData); + return { + proxyUtxo, + proxyDatum, + proxyAddress, + logicHash, + settingsData, + liveSettings: isFrozen ? undefined : parseLiveSettings(settingsData), + paymentCredentialHash, + isFrozen, + isGovernedByThisValidator: + paymentCredentialHash === this.settingsScriptHash, + }; + } + + async buildDepositProxyTx(): Promise { + const state = await this.getSettingsState(); + + if (state.isGovernedByThisValidator) { + throw new Error("Proxy NFT is already locked at this settings validator"); + } + + if ( + state.proxyAddress.getProps().paymentPart?.type === + Core.CredentialType.ScriptHash + ) { + throw new Error( + "Proxy NFT is currently held by another script. Move it with the current controller before depositing into protocol settings.", + ); + } + + return lockOrPayAssets( + this.blaze.newTransaction().addInput(state.proxyUtxo), + this.settingsValidatorAddress, + // Same datum, but a script address is wider than the wallet address the + // proxy is moving from, so the floor can still rise here. + this.valueWithDatumMinAda( + this.settingsValidatorAddress, + state.proxyUtxo.output().amount(), + state.proxyDatum, + ), + state.proxyDatum, + ); + } + + /** + * Compute the 32-byte auth-payload hash the governance keys must COSE-sign for + * `change`, against the current on-chain proxy state. Two-phase, mirroring the + * orchestrator's `getSignedPayloadFromOrderInputs`: get this hash, collect the + * signatures out-of-band, then pass them to the matching build method. The + * proxy UTxO must be unchanged between the two calls (it is the nonce). + */ + async getSettingsAuthPayloadHash( + change: TSettingsChange, + ): Promise { + const state = await this.requireGovernedState(); + const resolved = this.resolveChange(state, change); + return hashSettingsAuthPayload( + buildSettingsAuthPayload( + resolved.redeemer, + this.scriptHashOfAddress(resolved.receiverAddress), + resolved.nextLogicHash, + resolved.nextSettingsData, + state.proxyUtxo.input(), + ), + ); + } + + async buildChangePermissionsTx( + params: IBuildChangePermissionsTxParams, + ): Promise { + return this.buildChange( + { type: "ChangePermissions", nextPermissions: params.nextPermissions }, + params.signatures, + ); + } + + async buildChangeConfigTx( + params: IBuildChangeConfigTxParams, + ): Promise { + return this.buildChange( + { type: "ChangeConfig", nextConfig: params.nextConfig }, + params.signatures, + ); + } + + async buildChangeLogicTx( + params: IBuildChangeLogicTxParams, + ): Promise { + return this.buildChange( + { + type: "ChangeLogic", + nextLogicHash: params.nextLogicHash, + nextRegistry: params.nextRegistry, + }, + params.signatures, + ); + } + + async buildShutdownTx(params: { + signatures: TSettingsSignatures; + }): Promise { + return this.buildChange({ type: "Shutdown" }, params.signatures); + } + + async buildRestoreTx(params: { + signatures: TSettingsSignatures; + }): Promise { + return this.buildChange({ type: "Restore" }, params.signatures); + } + + async buildMigrateTx( + params: IBuildMigrateTxParams, + ): Promise { + return this.buildChange( + { type: "Migrate", destination: params.destination }, + params.signatures, + params.destinationSignatures, + ); + } + + /** + * Resolve a change against the current state into the concrete redeemer + + * resulting proxy output (logic, canonical settings, destination). Shared by + * `getSettingsAuthPayloadHash` and `buildChange` so the signed hash and the + * submitted tx always describe the same resulting state. Settings read from + * chain are canonicalized through the typed schema (see `canonicalizeSettings`) + * so blaze's encoding matches the validator's `cbor.serialise`. + */ + private resolveChange( + state: IProtocolSettingsState, + change: TSettingsChange, + ): IResolvedSettingsChange { + const here = this.settingsValidatorAddress; + switch (change.type) { + case "ChangePermissions": { + const current = this.requireLive(state); + const next: SettingsV1 = { + ...current, + permissions: change.nextPermissions, + }; + return { + redeemer: "ChangePermissions", + nextLogicHash: state.logicHash, + nextSettingsData: serializeSettings(next), + receiverAddress: here, + }; + } + case "ChangeConfig": { + const current = this.requireLive(state); + const next: SettingsV1 = { ...current, config: change.nextConfig }; + return { + redeemer: "ChangeConfig", + nextLogicHash: state.logicHash, + nextSettingsData: serializeSettings(next), + receiverAddress: here, + }; + } + case "ChangeLogic": { + const current = this.requireLive(state); + const nextLogicHash = change.nextLogicHash ?? state.logicHash; + const nextRegistry = change.nextRegistry ?? current.registry; + if ( + nextLogicHash === state.logicHash && + JSON.stringify(nextRegistry) === JSON.stringify(current.registry) + ) { + throw new Error("ChangeLogic requires a logic or registry change"); + } + return { + redeemer: "ChangeLogic", + nextLogicHash, + nextSettingsData: serializeSettings({ + ...current, + registry: nextRegistry, + }), + receiverAddress: here, + }; + } + case "Shutdown": { + if (state.isFrozen) { + throw new Error("Settings are already frozen"); + } + return { + redeemer: "Shutdown", + nextLogicHash: state.logicHash, + nextSettingsData: freezeSettingsData(state.settingsData), + receiverAddress: here, + }; + } + case "Restore": { + if (!state.isFrozen) { + throw new Error("Settings are not frozen"); + } + return { + redeemer: "Restore", + nextLogicHash: state.logicHash, + nextSettingsData: this.canonicalizeSettings( + unwrapFrozenSettingsData(state.settingsData), + ), + receiverAddress: here, + }; + } + case "Migrate": { + const destination = change.destination; + if (destination.settingsScriptHash === this.settingsScriptHash) { + throw new Error( + "Migrate requires a different destination settings validator", + ); + } + return { + redeemer: "Migrate", + nextLogicHash: state.logicHash, + nextSettingsData: this.canonicalizeSettings(state.settingsData), + receiverAddress: destination.settingsValidatorAddress, + coValidateWith: { + rewardAccount: destination.settingsRewardAccount, + applyWitness: destination.applySettingsWitness.bind(destination), + }, + }; + } + } + } + + private requireLive(state: IProtocolSettingsState): SettingsV1 { + if (state.isFrozen || !state.liveSettings) { + throw new Error("Settings are not in a live state"); + } + return state.liveSettings; + } + + /** + * Re-serialize live settings through the typed schema so the CBOR matches the + * validator's `cbor.serialise` of the parsed output datum. Settings read from + * chain and re-embedded opaquely (Restore's unwrap, Migrate's passthrough) + * otherwise don't. Frozen settings aren't a `SettingsV1`, so pass through. + */ + private canonicalizeSettings(settingsData: Core.PlutusData): Core.PlutusData { + const live = parseLiveSettings(settingsData); + return live ? serializeSettings(live) : settingsData; + } + + private async buildChange( + change: TSettingsChange, + signatures: TSettingsSignatures, + destinationSignatures?: TSettingsSignatures, + ): Promise { + const state = await this.requireGovernedState(); + const resolved = this.resolveChange(state, change); + + const tx = this.blaze.newTransaction(); + tx.addInput(state.proxyUtxo, Data.Void()); + tx.addWithdrawal( + this.settingsRewardAccount, + 0n, + serializeSettingsSignedRedeemer(resolved.redeemer, signatures), + ); + + await this.applySettingsWitness(tx); + + if (resolved.coValidateWith) { + if (!destinationSignatures) { + throw new Error( + "Migrate requires destinationSignatures for the destination validator", + ); + } + // The destination validator independently verifies signatures over the + // same auth-payload hash against its own governance config. + tx.addWithdrawal( + resolved.coValidateWith.rewardAccount, + 0n, + serializeSettingsSignedRedeemer("Migrate", destinationSignatures), + ); + await resolved.coValidateWith.applyWitness(tx); + } + + const nextDatum = buildRawProxyDatum( + resolved.nextLogicHash, + resolved.nextSettingsData, + ); + return lockOrPayAssets( + tx, + resolved.receiverAddress, + this.valueWithDatumMinAda( + resolved.receiverAddress, + state.proxyUtxo.output().amount(), + nextDatum, + ), + nextDatum, + ); + } + + /** + * The value to put on a settings output carrying `datum`, topped up to the + * min-ADA floor for that datum when the incoming coin no longer covers it. + * + * A settings edit can grow the datum (appending a reserve asset, a larger + * registry), and the coin comes from the UTxO being spent, which was sized + * for the *previous* datum. `TxBuilder` would raise an under-funded output to + * the floor on its way out, but that happens after balancing has already + * decided what to draw from the wallet, so the bump is never funded and the + * built transaction is short by exactly that amount. Reserving it here means + * `complete()` treats the growth as an ordinary larger payment from the first + * iteration. + * + * The floor is recomputed after each raise: a larger coin is itself a few + * bytes wider on the wire, which can lift the floor again. + */ + private valueWithDatumMinAda( + address: Core.Address, + value: Core.Value, + datum: Core.PlutusData, + ): Core.Value { + let result = value; + // Converges in one or two passes; the bound just refuses to spin. + for (let i = 0; i < 4; i++) { + const output = new Core.TransactionOutput(address, result); + output.setDatum(Core.Datum.newInlineData(datum)); + const floor = calculateMinAda(output, this.blaze.params.coinsPerUtxoByte); + if (result.coin() >= floor) return result; + result = new Core.Value(floor, result.multiasset()); + } + return result; + } + + /** The payment-credential script hash of a settings validator address. */ + private scriptHashOfAddress(address: Core.Address): Core.ScriptHash { + const paymentPart = address.getProps().paymentPart; + if (!paymentPart || paymentPart.type !== Core.CredentialType.ScriptHash) { + throw new Error( + "Governed settings output must be locked at a script (validator) address", + ); + } + return paymentPart.hash as Core.ScriptHash; + } + + private async requireGovernedState(): Promise { + const state = await this.getSettingsState(); + if (!state.isGovernedByThisValidator) { + throw new Error( + "Proxy NFT is not currently governed by this settings validator. Deposit it first.", + ); + } + return state; + } + + async applySettingsWitness(tx: TxBuilder): Promise { + if (this.settingsRefInput) { + tx.addReferenceInput(this.settingsRefInput); + return; + } + + const refInput = await this.blaze.provider.resolveScriptRef( + this.settingsScriptHash, + ); + if (refInput) { + this.settingsRefInput = refInput; + tx.addReferenceInput(refInput); + return; + } + + tx.provideScript(this.settingsScript); + } +} diff --git a/modules/realfi-partner-sdk/src/api/client.ts b/modules/realfi-partner-sdk/src/api/client.ts new file mode 100644 index 0000000000..dbca965df0 --- /dev/null +++ b/modules/realfi-partner-sdk/src/api/client.ts @@ -0,0 +1,50 @@ +import * as Core from "@blaze-cardano/core"; + +interface IGraphQLResponse { + data?: T; + errors?: { message: string }[]; +} + +/** POST a GraphQL query and return its `data`, throwing on HTTP or GraphQL errors. */ +export async function gqlRequest( + url: string, + query: string, + variables?: Record, + clientId?: string, +): Promise { + const payload: Record = { query, variables }; + if (clientId) { + payload.extensions = { clientId }; + } + const response = await fetch(url, { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify(payload), + }); + if (!response.ok) { + throw new Error( + `RealFi API request failed: ${response.status} ${response.statusText}`, + ); + } + const body = (await response.json()) as IGraphQLResponse; + if (body.errors?.length) { + throw new Error( + `RealFi API error: ${body.errors.map((error) => error.message).join("; ")}`, + ); + } + if (body.data == null) { + throw new Error("RealFi API returned no data"); + } + return body.data; +} + +/** + * Derive the payment (and stake, when present) key hashes from a bech32 address. + * Wallet-keyed queries match on any supplied hash. + */ +export function ownerKeyHashes(address: string): string[] { + const props = Core.Address.fromBech32(address).getProps(); + return [props.paymentPart?.hash, props.delegationPart?.hash].filter( + (hash): hash is string => Boolean(hash), + ); +} diff --git a/modules/realfi-partner-sdk/src/api/index.ts b/modules/realfi-partner-sdk/src/api/index.ts new file mode 100644 index 0000000000..a7d2c68a2c --- /dev/null +++ b/modules/realfi-partner-sdk/src/api/index.ts @@ -0,0 +1,18 @@ +// Off-chain RealFi API part of the SDK. + +export { RealfiApi, type IRealfiApiSDK } from "./realfi-api.js"; +export { API_REGISTRY } from "./registry.js"; +export type { IApiEndpoints, TApiNetwork } from "./registry.js"; +export type { + IApiOrderUtxo, + IOrderFees, + IOrderInfo, + IPartnerConfig, + IPartnerLimits, + IPointsBalance, + IReferrerCode, + IStakeTimes, + IYieldBreakdown, + TOrderAction, + TOrderStatus, +} from "./types.js"; diff --git a/modules/realfi-partner-sdk/src/api/partner-config.ts b/modules/realfi-partner-sdk/src/api/partner-config.ts new file mode 100644 index 0000000000..1bbf96e330 --- /dev/null +++ b/modules/realfi-partner-sdk/src/api/partner-config.ts @@ -0,0 +1,82 @@ +import type { IPartnerConfig } from "./types.js"; + +function isRecord(value: unknown): value is Record { + return typeof value === "object" && value !== null && !Array.isArray(value); +} + +// Cardano native asset names are 0-32 bytes, so the canonical dotted form may +// legitimately end after the separator. Policy IDs and byte strings are +// lowercase hex; ADA is Sundae's single canonical non-native sentinel. +const PARTNER_ASSET_ID = + /^(?:ada\.lovelace|[0-9a-f]{56}\.(?:[0-9a-f]{2}){0,32})$/; + +function readAssetList(source: Record, key: string): string[] { + const value = source[key]; + if ( + !Array.isArray(value) || + !value.every( + (asset) => typeof asset === "string" && PARTNER_ASSET_ID.test(asset), + ) + ) { + throw new Error( + `invalid partner configuration: ${key} must be an asset ID array`, + ); + } + return [...value]; +} + +function readLimit(source: Record, key: string): number { + const value = source[key]; + if (typeof value !== "number" || !Number.isSafeInteger(value) || value < 0) { + throw new Error( + `invalid partner configuration: limits.${key} must be a non-negative safe integer`, + ); + } + return value; +} + +function readStablecoinAssetId(source: Record): string { + const assetId = source.stablecoinAssetId; + if ( + typeof assetId !== "string" || + !/^[0-9a-f]{56}\.(?:[0-9a-f]{2}){1,32}$/.test(assetId) + ) { + throw new Error( + "invalid partner configuration: stablecoinAssetId must be a canonical Sundae asset ID", + ); + } + return assetId; +} + +/** Validate untrusted JSON and return fresh partner-owned values. */ +export function parsePartnerConfig(value: unknown): IPartnerConfig { + if (!isRecord(value)) { + throw new Error("invalid partner configuration: expected an object"); + } + + const swapCounterpartAssets = readAssetList(value, "swapCounterpartAssets"); + const swapOrderHistoryAssets = readAssetList(value, "swapOrderHistoryAssets"); + const history = new Set(swapOrderHistoryAssets); + const omittedLiveAsset = swapCounterpartAssets.find( + (asset) => !history.has(asset), + ); + if (omittedLiveAsset !== undefined) { + throw new Error( + `invalid partner configuration: history list omits live swap asset ${omittedLiveAsset}`, + ); + } + + if (!isRecord(value.limits)) { + throw new Error("invalid partner configuration: limits must be an object"); + } + + return { + stablecoinAssetId: readStablecoinAssetId(value), + swapCounterpartAssets, + swapOrderHistoryAssets, + limits: { + mintMinUsd: readLimit(value.limits, "mintMinUsd"), + redeemMinUsd: readLimit(value.limits, "redeemMinUsd"), + }, + }; +} diff --git a/modules/realfi-partner-sdk/src/api/queries.ts b/modules/realfi-partner-sdk/src/api/queries.ts new file mode 100644 index 0000000000..779cd43a21 --- /dev/null +++ b/modules/realfi-partner-sdk/src/api/queries.ts @@ -0,0 +1,154 @@ +// GraphQL operations + their raw response shapes (field names match the schema). +// The clean SDK-facing types live in ./types; the API class maps raw -> clean. + +import type { TOrderAction, TOrderStatus } from "./types.js"; + +export const STAKE_TIMES_QUERY = `{ + stakeTimes { + CurrentCooldownPeriodEnd { slot } + NextCooldownPeriodEnd { slot } + } +}`; + +export interface IRawStakeTimes { + stakeTimes: { + CurrentCooldownPeriodEnd: { slot: number }; + NextCooldownPeriodEnd: { slot: number }; + }; +} + +export const ORDER_FEES_QUERY = `{ orderFees { mintBps redeemBps } }`; + +export interface IRawOrderFees { + orderFees: { mintBps: number; redeemBps: number }; +} + +export const SUSDR_EXCHANGE_RATE_INPUTS_QUERY = `{ + susdrExchangeRateInputs { + circulatingSusdr + vaultUsdr + pendingYield + diffusionStartUnixMilli + diffusionEndUnixMilli + } +}`; + +export interface IRawSusdrExchangeRateInputs { + susdrExchangeRateInputs: { + circulatingSusdr: string; + vaultUsdr: string; + pendingYield: string; + diffusionStartUnixMilli: string; + diffusionEndUnixMilli: string; + }; +} + +export const YIELD_BREAKDOWN_QUERY = `query ($owner: String!) { + susdrYieldBreakdown(owner: $owner) { + totalSUSDr + totalUSDrValue + principal + yield + yieldPercent + } +}`; + +export interface IRawYieldBreakdown { + susdrYieldBreakdown: { + totalSUSDr: string; + totalUSDrValue: string; + principal: string; + yield: string; + yieldPercent: number; + }; +} + +export const ORDERS_BY_OWNER_QUERY = `query ($owner: String!, $status: OrderStatus!) { + ordersByOwner(owner: $owner, status: $status) { + status + order { + Owner + Action + Amount + Principal + Yield + Slot + Forfeit + UnlockSlot + MatureSlot + ClaimTxHash + Version + utxo { txHash index } + resultUtxo { txHash index } + } + } +}`; + +export interface IRawUtxo { + txHash: string; + index: number; +} + +export interface IRawOrder { + Owner: string; + Action: TOrderAction; + Amount: string; + Principal: string | null; + Yield: string | null; + Slot: string; + Forfeit: string; + UnlockSlot: string | null; + MatureSlot: string | null; + ClaimTxHash: string | null; + Version: string; + utxo: IRawUtxo; + resultUtxo: IRawUtxo | null; +} + +export interface IRawOrdersByOwner { + ordersByOwner: { status: TOrderStatus; order: IRawOrder }[]; +} + +export const POINTS_BALANCE_QUERY = `query ($value: String!) { + V_WALLET_POINTS_BALANCE( + filters: [{ field: "WALLET_ADDRESS", operator: IN, value: $value }] + ) { + nodes { WALLET_POINTS_BALANCE } + } +}`; + +export interface IRawPointsBalance { + V_WALLET_POINTS_BALANCE: { + nodes: { WALLET_POINTS_BALANCE: string | null }[]; + }; +} + +export interface IRawPointsBalanceData { + current_balance?: number; + potential_points?: number; + day_multiplier?: number; +} + +export const REFERRER_CODE_QUERY = `query ($walletAddress: String!) { + referrerCode(walletAddress: $walletAddress) { code createdAt } +}`; + +export interface IRawReferrerCode { + referrerCode: { code: string; createdAt: string } | null; +} + +export const REFERRAL_REWARDS_QUERY = `query ($walletAddress: String!) { + referralRewards(walletAddress: $walletAddress) +}`; + +export interface IRawReferralRewards { + referralRewards: number | null; +} + +export const INVITED_COUNT_QUERY = `query ($walletAddress: String!) { + invitedCount(walletAddress: $walletAddress) +}`; + +export interface IRawInvitedCount { + invitedCount: number | null; +} diff --git a/modules/realfi-partner-sdk/src/api/realfi-api.ts b/modules/realfi-partner-sdk/src/api/realfi-api.ts new file mode 100644 index 0000000000..0345cb298c --- /dev/null +++ b/modules/realfi-partner-sdk/src/api/realfi-api.ts @@ -0,0 +1,290 @@ +import { DEFAULT_CLIENT_SOURCE, SDK_VERSION } from "../sdk/shared/client-id.js"; +import type { ISusdrExchangeRateInputs } from "../sdk/v1_1_rc1/diffusion.js"; +import { gqlRequest, ownerKeyHashes } from "./client.js"; +import { parsePartnerConfig } from "./partner-config.js"; +import { + INVITED_COUNT_QUERY, + ORDER_FEES_QUERY, + ORDERS_BY_OWNER_QUERY, + POINTS_BALANCE_QUERY, + REFERRAL_REWARDS_QUERY, + REFERRER_CODE_QUERY, + STAKE_TIMES_QUERY, + SUSDR_EXCHANGE_RATE_INPUTS_QUERY, + YIELD_BREAKDOWN_QUERY, + type IRawInvitedCount, + type IRawOrder, + type IRawOrderFees, + type IRawOrdersByOwner, + type IRawPointsBalance, + type IRawPointsBalanceData, + type IRawReferralRewards, + type IRawReferrerCode, + type IRawStakeTimes, + type IRawSusdrExchangeRateInputs, + type IRawYieldBreakdown, +} from "./queries.js"; +import { + API_REGISTRY, + type IApiEndpoints, + type TApiNetwork, +} from "./registry.js"; +import type { + IOrderFees, + IOrderInfo, + IPartnerConfig, + IPointsBalance, + IReferrerCode, + IStakeTimes, + IYieldBreakdown, + TOrderStatus, +} from "./types.js"; + +const DEFAULT_ORDER_STATUSES: TOrderStatus[] = [ + "Open", + "Validating", + "Canceled", + "Executed", + "Invalidated", + "InvalidMinReceived", +]; + +/** Off-chain RealFi data: order status, stake times, yield, fees, points, referrals. */ +export interface IRealfiApiSDK { + /** Product-curated swap lists and USD UX limits from deployed runtime config. */ + getPartnerConfig(): Promise; + /** Cooldown boundary slots for unstaking. */ + getStakeTimes(): Promise; + /** The slot to pass as an unstake `unlockSlot` (the next cooldown boundary). */ + getCooldownUnlockSlot(): Promise; + /** Orders owned by `address` across the given statuses (default: all tracked). */ + getOrdersByOwner( + address: string, + statuses?: TOrderStatus[], + ): Promise; + /** Per-action minimum-fee policy (basis points). */ + getOrderFees(): Promise; + /** Inputs for calculating the diffusion-aware USDr-per-sUSDr rate. */ + getSusdrExchangeRateInputs(): Promise; + /** Yield owed on a wallet's sUSDr holdings. */ + getYieldBreakdown(address: string): Promise; + /** A wallet's points balance. */ + getPointsBalance(address: string): Promise; + /** A wallet's referral code, or null if none. */ + getReferrerCode(address: string): Promise; + /** Cumulative referral-bonus points credited to a wallet. */ + getReferralRewards(address: string): Promise; + /** Number of referees a wallet has invited. */ + getInvitedCount(address: string): Promise; +} + +function mapOrder(status: TOrderStatus, order: IRawOrder): IOrderInfo { + return { + owner: order.Owner, + action: order.Action, + status, + amount: BigInt(order.Amount), + slot: BigInt(order.Slot), + forfeit: BigInt(order.Forfeit), + version: order.Version, + utxo: { txHash: order.utxo.txHash, outputIndex: order.utxo.index }, + resultUtxo: order.resultUtxo + ? { txHash: order.resultUtxo.txHash, outputIndex: order.resultUtxo.index } + : undefined, + unlockSlot: order.UnlockSlot == null ? undefined : BigInt(order.UnlockSlot), + matureSlot: order.MatureSlot == null ? undefined : BigInt(order.MatureSlot), + principal: order.Principal == null ? undefined : BigInt(order.Principal), + yield: order.Yield == null ? undefined : BigInt(order.Yield), + claimTxHash: order.ClaimTxHash ?? undefined, + }; +} + +/** + * Off-chain GraphQL reads. Construct with {@link RealfiApi.forNetwork} or + * {@link RealfiApi.create}; no Blaze instance required. + */ +export class RealfiApi implements IRealfiApiSDK { + private constructor( + private readonly endpoints: IApiEndpoints, + private readonly clientId: string = `${DEFAULT_CLIENT_SOURCE}/${SDK_VERSION}`, + ) {} + + private request( + url: string, + query: string, + variables?: Record, + ): Promise { + return gqlRequest(url, query, variables, this.clientId); + } + + static forNetwork(network: TApiNetwork, clientId?: string): IRealfiApiSDK { + return new RealfiApi(API_REGISTRY[network], clientId); + } + + static create(endpoints: IApiEndpoints, clientId?: string): IRealfiApiSDK { + return new RealfiApi(endpoints, clientId); + } + + async getPartnerConfig(): Promise { + const url = this.endpoints.partnerConfigUrl; + if (!url) { + throw new Error( + "partnerConfigUrl is required to read partner runtime configuration", + ); + } + const response = await fetch(url, { + method: "GET", + headers: { Accept: "application/json" }, + cache: "no-store", + }); + if (!response.ok) { + throw new Error( + `Partner configuration request failed: ${response.status} ${response.statusText}`, + ); + } + let body: unknown; + try { + body = await response.json(); + } catch (error) { + throw new Error("invalid partner configuration: response is not JSON", { + cause: error, + }); + } + return parsePartnerConfig(body); + } + + async getStakeTimes(): Promise { + const data = await this.request( + this.endpoints.realfiUrl, + STAKE_TIMES_QUERY, + ); + return { + currentCooldownSlot: BigInt( + data.stakeTimes.CurrentCooldownPeriodEnd.slot, + ), + nextCooldownSlot: BigInt(data.stakeTimes.NextCooldownPeriodEnd.slot), + }; + } + + async getCooldownUnlockSlot(): Promise { + return (await this.getStakeTimes()).nextCooldownSlot; + } + + async getOrdersByOwner( + address: string, + statuses: TOrderStatus[] = DEFAULT_ORDER_STATUSES, + ): Promise { + const owners = ownerKeyHashes(address); + const batches = await Promise.all( + owners.flatMap((owner) => + statuses.map((status) => + this.request( + this.endpoints.realfiUrl, + ORDERS_BY_OWNER_QUERY, + { owner, status }, + ).then((data) => data.ordersByOwner), + ), + ), + ); + const seen = new Set(); + return batches + .flat() + .map((result) => mapOrder(result.status, result.order)) + .filter((order) => { + const key = `${order.utxo.txHash}#${order.utxo.outputIndex}`; + if (seen.has(key)) return false; + seen.add(key); + return true; + }) + .sort((a, b) => Number(b.slot - a.slot)); + } + + async getOrderFees(): Promise { + const data = await this.request( + this.endpoints.realfiUrl, + ORDER_FEES_QUERY, + ); + return data.orderFees; + } + + async getSusdrExchangeRateInputs(): Promise { + const data = await this.request( + this.endpoints.realfiUrl, + SUSDR_EXCHANGE_RATE_INPUTS_QUERY, + ); + const inputs = data.susdrExchangeRateInputs; + return { + circulatingSusdr: BigInt(inputs.circulatingSusdr), + vaultUsdr: BigInt(inputs.vaultUsdr), + pendingYield: BigInt(inputs.pendingYield), + diffusionStartUnixMilli: BigInt(inputs.diffusionStartUnixMilli), + diffusionEndUnixMilli: BigInt(inputs.diffusionEndUnixMilli), + }; + } + + async getYieldBreakdown(address: string): Promise { + const [owner] = ownerKeyHashes(address); + if (!owner) { + throw new Error("address has no payment credential"); + } + const data = await this.request( + this.endpoints.realfiUrl, + YIELD_BREAKDOWN_QUERY, + { owner }, + ); + const breakdown = data.susdrYieldBreakdown; + return { + totalSUSDr: BigInt(breakdown.totalSUSDr), + totalUSDrValue: BigInt(breakdown.totalUSDrValue), + principal: BigInt(breakdown.principal), + yield: BigInt(breakdown.yield), + yieldPercent: breakdown.yieldPercent, + }; + } + + async getPointsBalance(address: string): Promise { + const value = ownerKeyHashes(address).join(","); + const data = await this.request( + this.endpoints.assetTransparencyUrl, + POINTS_BALANCE_QUERY, + { value }, + ); + const raw = data.V_WALLET_POINTS_BALANCE.nodes[0]?.WALLET_POINTS_BALANCE; + if (!raw) { + return { pointsBalance: null, potentialPoints: null, multiplier: null }; + } + const parsed = JSON.parse(raw) as IRawPointsBalanceData; + return { + pointsBalance: parsed.current_balance ?? null, + potentialPoints: parsed.potential_points ?? null, + multiplier: parsed.day_multiplier ?? null, + }; + } + + async getReferrerCode(address: string): Promise { + const data = await this.request( + this.endpoints.assetTransparencyUrl, + REFERRER_CODE_QUERY, + { walletAddress: ownerKeyHashes(address).join(",") }, + ); + return data.referrerCode; + } + + async getReferralRewards(address: string): Promise { + const data = await this.request( + this.endpoints.assetTransparencyUrl, + REFERRAL_REWARDS_QUERY, + { walletAddress: ownerKeyHashes(address).join(",") }, + ); + return data.referralRewards; + } + + async getInvitedCount(address: string): Promise { + const data = await this.request( + this.endpoints.assetTransparencyUrl, + INVITED_COUNT_QUERY, + { walletAddress: ownerKeyHashes(address).join(",") }, + ); + return data.invitedCount; + } +} diff --git a/modules/realfi-partner-sdk/src/api/registry.ts b/modules/realfi-partner-sdk/src/api/registry.ts new file mode 100644 index 0000000000..11939b4e8b --- /dev/null +++ b/modules/realfi-partner-sdk/src/api/registry.ts @@ -0,0 +1,36 @@ +// Per-network GraphQL endpoints for the RealFi off-chain API. + +export type TApiNetwork = "mainnet" | "preprod" | "preview"; + +export interface IApiEndpoints { + /** Main RealFi GraphQL API — orders, stake times, yield, fees, wallet status. */ + realfiUrl: string; + /** Asset-transparency GraphQL API — points and referral reads. */ + assetTransparencyUrl: string; + /** + * Sanitized partner runtime configuration. Optional only for backwards + * compatibility with custom endpoint objects created before this read was + * added; `getPartnerConfig()` requires it. + */ + partnerConfigUrl?: string; +} + +export const API_REGISTRY: Record = { + mainnet: { + realfiUrl: "https://api.app.realfi.co/graphql", + assetTransparencyUrl: "https://api.app.realfi.co/api/v1/asset-transparency", + partnerConfigUrl: "https://app.realfi.co/partner-config.json", + }, + preprod: { + realfiUrl: "https://api.preprod.realfi.co/graphql", + assetTransparencyUrl: + "https://api.preprod.realfi.co/api/v1/asset-transparency", + partnerConfigUrl: "https://preprod.realfi.co/partner-config.json", + }, + preview: { + realfiUrl: "https://api.preview.realfi.co/graphql", + assetTransparencyUrl: + "https://api.preview.realfi.co/api/v1/asset-transparency", + partnerConfigUrl: "https://preview.realfi.co/partner-config.json", + }, +}; diff --git a/modules/realfi-partner-sdk/src/api/types.ts b/modules/realfi-partner-sdk/src/api/types.ts new file mode 100644 index 0000000000..a9f3e6275b --- /dev/null +++ b/modules/realfi-partner-sdk/src/api/types.ts @@ -0,0 +1,105 @@ +// Clean, partner-facing result types for the off-chain API. + +export type TOrderStatus = + | "Open" + | "Validating" + | "Canceled" + | "Executed" + | "Invalidated" + | "InvalidMinReceived"; + +export type TOrderAction = + | "Mint" + | "Redeem" + | "Deposit" + | "Withdraw" + | "Stake" + | "Unstake" + | "DirectMint" + | "DirectBurn"; + +export interface IApiOrderUtxo { + txHash: string; + outputIndex: number; +} + +export interface IOrderInfo { + owner: string; + action: TOrderAction; + status: TOrderStatus; + amount: bigint; + slot: bigint; + forfeit: bigint; + version: string; + utxo: IApiOrderUtxo; + /** Output produced once the order is Executed or Canceled. */ + resultUtxo?: IApiOrderUtxo; + /** Timelock unlock slot (Unstake only). */ + unlockSlot?: bigint; + /** Cooldown maturity slot (Unstake only). */ + matureSlot?: bigint; + /** Populated for Deposit orders. */ + principal?: bigint; + /** Populated for Deposit orders. */ + yield?: bigint; + /** Transaction that claimed an Unstake order's cooldown output. */ + claimTxHash?: string; +} + +export interface IStakeTimes { + currentCooldownSlot: bigint; + nextCooldownSlot: bigint; +} + +export interface IOrderFees { + mintBps: number; + redeemBps: number; +} + +export interface IYieldBreakdown { + totalSUSDr: bigint; + totalUSDrValue: bigint; + principal: bigint; + yield: bigint; + yieldPercent: number; +} + +export interface IPointsBalance { + pointsBalance: number | null; + potentialPoints: number | null; + multiplier: number | null; +} + +export interface IReferrerCode { + code: string; + createdAt: string; +} + +/** + * Non-negative safe-integer USD UX/business minimums; not protocol + * `min_received` or fees. + */ +export interface IPartnerLimits { + readonly mintMinUsd: number; + readonly redeemMinUsd: number; +} + +/** + * Environment runtime configuration shared with the deployed RealFi dapp. + * + * `swapCounterpartAssets` is the product-curated live swap list. + * `swapOrderHistoryAssets` is its superset for historical and in-flight orders, + * including disabled pairs. The deploy artifact falls back to the live list + * when the dapp source leaves the history list unset. + * Every asset identifier uses Sundae's canonical dotted form + * (`policyId.assetName`, or `ada.lovelace`), not Cardano Core's concatenated + * `Core.AssetId` representation. The values can be passed directly to + * `RealfiSDK.sundae` discovery and builder APIs. + */ +export interface IPartnerConfig { + /** Authoritative USDr ID in Sundae's dotted `policyId.assetName` form. */ + readonly stablecoinAssetId: string; + readonly swapCounterpartAssets: readonly string[]; + readonly swapOrderHistoryAssets: readonly string[]; + readonly limits: IPartnerLimits; +} diff --git a/modules/realfi-partner-sdk/src/generated-types/base/index.ts b/modules/realfi-partner-sdk/src/generated-types/base/index.ts new file mode 100644 index 0000000000..e2bbcf1789 --- /dev/null +++ b/modules/realfi-partner-sdk/src/generated-types/base/index.ts @@ -0,0 +1,118 @@ +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { type Script } from "@blaze-cardano/core"; +import { Type, Exact, TPlutusData } from "@blaze-cardano/data"; +import { type PlutusData } from "@blaze-cardano/core"; +type Data = PlutusData; +type Int = bigint; +type ByteArray = string; +const PolicyId = Type.String(); +type OutputReference = { output_index: bigint; transaction_id: string }; + +const Contracts = Type.Module({ +}); + + +export class BaseMintProxyMintProxyMint { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : + "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class BaseMintProxyMintProxyElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : + "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class BaseOneshotOneshotMint { + public Script: Script + constructor( + utxoRef: OutputReference, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "59031f010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd718098019bae3013001899b87375a6026602800290014528201a30133758602400319800801cc04c00a6026002801a294100c2020404114a3153300a491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" + : + "5901a3010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d159800992cc004cdc79bae3012003375c602400313370e6eb4c048c04c00520028a50403460246eb0c0440063300100398090014c04800500345282018403c807a29462c804a2c8048dd7180618049baa00359800980118041baa0048acc004c024dd500245268b20148b200e8b200e180400098019baa0088a4d1365640041", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + ]), + [ + utxoRef, + ], + ), + "PlutusV3" + ); + } +} +export class BaseOneshotOneshotElse { + public Script: Script + constructor( + utxoRef: OutputReference, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "59031f010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd718098019bae3013001899b87375a6026602800290014528201a30133758602400319800801cc04c00a6026002801a294100c2020404114a3153300a491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" + : + "5901a3010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d159800992cc004cdc79bae3012003375c602400313370e6eb4c048c04c00520028a50403460246eb0c0440063300100398090014c04800500345282018403c807a29462c804a2c8048dd7180618049baa00359800980118041baa0048acc004c024dd500245268b20148b200e8b200e180400098019baa0088a4d1365640041", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + ]), + [ + utxoRef, + ], + ), + "PlutusV3" + ); + } +} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/src/generated-types/index.ts b/modules/realfi-partner-sdk/src/generated-types/index.ts new file mode 100644 index 0000000000..4446e3be6d --- /dev/null +++ b/modules/realfi-partner-sdk/src/generated-types/index.ts @@ -0,0 +1,9 @@ +export * as BaseTypes from "./base/index.js"; +export * as V0Types from "./v0/index.js"; +export * as V0_1Types from "./v0_1/index.js"; +export * as V0_2Types from "./v0_2/index.js"; +export * as V0_3Types from "./v0_3/index.js"; +export * as V0_4Types from "./v0_4/index.js"; +export * as V1_0Types from "./v1_0/index.js"; +export * as V1_0Rc1Types from "./v1_0_rc1/index.js"; +export * as V1_1Rc1Types from "./v1_1_rc1/index.js"; diff --git a/modules/realfi-partner-sdk/src/generated-types/v0/index.ts b/modules/realfi-partner-sdk/src/generated-types/v0/index.ts new file mode 100644 index 0000000000..0553c76c31 --- /dev/null +++ b/modules/realfi-partner-sdk/src/generated-types/v0/index.ts @@ -0,0 +1,46 @@ +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { type Script } from "@blaze-cardano/core"; +import { Type, Exact, TPlutusData } from "@blaze-cardano/data"; +import { type PlutusData } from "@blaze-cardano/core"; +type Data = PlutusData; +type Int = bigint; +type ByteArray = string; +const PolicyId = Type.String(); +type OutputReference = { output_index: bigint; transaction_id: string }; + +const Contracts = Type.Module({ +}); + + +export class V0ProtocolProtocolWithdraw { + public Script: Script + constructor( + trace?: boolean = false, + ) { + this.Script = cborToScript( + trace + ? + "58b601010029800aba4aba2aba1aab9faab9eaab9dab9cab9a488888888c96600264653001300900198049805000cc0240092225980099b8748010c024dd500144c96600200915980099b8748000c028dd5002456600260166ea8012294600e806200e804200f007803c01d00f180618051baa0028b200e180480098029baa00a8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" + : + "587401010029800aba2aba1aab9faab9eaab9dab9a48888896600264653001300700198039804000cc01c0092225980099b8748010c01cdd500144cc8928980518041baa0025980099b8748000c01cdd5001c56600260106ea800e2934590094590064590060c01c004c00cdd5003c52689b2b200201", + "PlutusV3" + ); + } +} +export class V0ProtocolProtocolElse { + public Script: Script + constructor( + trace?: boolean = false, + ) { + this.Script = cborToScript( + trace + ? + "58b601010029800aba4aba2aba1aab9faab9eaab9dab9cab9a488888888c96600264653001300900198049805000cc0240092225980099b8748010c024dd500144c96600200915980099b8748000c028dd5002456600260166ea8012294600e806200e804200f007803c01d00f180618051baa0028b200e180480098029baa00a8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" + : + "587401010029800aba2aba1aab9faab9eaab9dab9a48888896600264653001300700198039804000cc01c0092225980099b8748010c01cdd500144cc8928980518041baa0025980099b8748000c01cdd5001c56600260106ea800e2934590094590064590060c01c004c00cdd5003c52689b2b200201", + "PlutusV3" + ); + } +} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/src/generated-types/v0_1/index.ts b/modules/realfi-partner-sdk/src/generated-types/v0_1/index.ts new file mode 100644 index 0000000000..77935d6ae0 --- /dev/null +++ b/modules/realfi-partner-sdk/src/generated-types/v0_1/index.ts @@ -0,0 +1,237 @@ +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { type Script } from "@blaze-cardano/core"; +import { Type, Exact, TPlutusData } from "@blaze-cardano/data"; +import { type PlutusData } from "@blaze-cardano/core"; +type Data = PlutusData; +type Int = bigint; +type ByteArray = string; +const PolicyId = Type.String(); +type OutputReference = { output_index: bigint; transaction_id: string }; + +const Contracts = Type.Module({ + MultisigScript: Type.Union([ + Type.Object({ + Signature: Type.Object({ + key_hash: Type.String(), + }, { ctor: 0n }) + }), + Type.Object({ + AllOf: Type.Object({ + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 1n }) + }), + Type.Object({ + AnyOf: Type.Object({ + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 2n }) + }), + Type.Object({ + AtLeast: Type.Object({ + required: Type.BigInt(), + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 3n }) + }), + Type.Object({ + Before: Type.Object({ + time: Type.BigInt(), + }, { ctor: 4n }) + }), + Type.Object({ + After: Type.Object({ + time: Type.BigInt(), + }, { ctor: 5n }) + }), + Type.Object({ + Script: Type.Object({ + script_hash: Type.String(), + }, { ctor: 6n }) + }), + ]), + Asset: Type.Tuple([ + Type.String(), + Type.String(), + ]), + ProtocolRedeemer: Type.Union([ + Type.Literal("Mint", { ctor: 0n }), + Type.Literal("Burn", { ctor: 1n }), + ]), + ProxyDatum: Type.Object({ + logic: Type.String(), + settings: Type.Ref("Settings"), + }, { ctor: 0n }), + Registry: Type.Object({ + treasury: Type.String(), + usdr: Type.String(), + }, { ctor: 0n }), + Settings: Type.Object({ + mint_permission: Type.Ref("MultisigScript"), + burn_permission: Type.Ref("MultisigScript"), + registry: Type.Ref("Registry"), + reserve_token: Type.Ref("Asset"), + }, { ctor: 0n }), + TreasuryDatum: Type.Object({ + circulating_supply: Type.BigInt(), + }, { ctor: 0n }), +}); + +export const MultisigScript = Contracts.Import("MultisigScript"); +export type MultisigScript = Exact; +export const Asset = Contracts.Import("Asset"); +export type Asset = Exact; +export const ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +export type ProtocolRedeemer = Exact; +export const ProxyDatum = Contracts.Import("ProxyDatum"); +export type ProxyDatum = Exact; +export const Registry = Contracts.Import("Registry"); +export type Registry = Exact; +export const Settings = Contracts.Import("Settings"); +export type Settings = Exact; +export const TreasuryDatum = Contracts.Import("TreasuryDatum"); +export type TreasuryDatum = Exact; + +export class V0_1ProtocolProtocolWithdraw { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5914b1010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692015e657870656374205b50616972286e616d652c206d696e745f616d6f756e74295d203d0a2020202074782e6d696e74207c3e20746f6b656e732873657474696e67732e72656769737472792e7573647229207c3e20746f5f7061697273282900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488896600264653001300e00198071807800cdc3a4009300e00248889660026004601c6ea800e264b30010058999119912cc004c00c0062b300130143754013002806202a8acc004c0100062b300130143754013002806202a80620224044330012259800800c52f5c1133016301330170013300200230180014055374a900048c058c05c00644646600200200644b30010018a508acc004cdc79bae30190010038a51899801001180d000a026405d2301630173017001488888c8cc88c8c96600200313232598009806980e9baa0038992cc00400603113259800800c4c96600200301a8992cc004006264b300100180e44c96600200313259800800c07a264b300100180fc07e264b3001302b0038cc004022330010068acc004c058c098dd500244c9660020030218992cc004006045022811408a26644b300100181244c966002003025812c09604b132598009818801c56600200f0268992cc00400604f027813c09e26644b3001001814c4c96600200302a81540aa05513259800981b001c660026e9520029181b181b981b981b981b981b981b981b981b800c8c0d8c0dcc0dcc0dcc0dcc0dcc0dcc0dc0064606c606e606e606e606e606e606e002911119912cc004c09cc0dcdd5016c5660033001303b3038375403b3758600a60706ea80aa600860706ea80aa6eacc00cc0e0dd50152004899b8848000cc0040740aa2a6606c9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d5159800cc004c090c0e0dd500ecdd61802981c1baa02a9802181c1baa02a9bab3003303837540548012266e20cc0040740a920008a9981b2481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d481a88888c8cc00400401488c9660026058003133028006375c6080607a6ea800a2b3001302d001899198008009bac3041303e375400644b30010018a518acc004cc014014c108006266004004608600314a081e1040456600260600031323300100137586082607c6ea800c896600200314a1159800998028029821000c528c4cc008008c10c00503c20808acc004cdc3a400c003132337126eb4c104004c8cc004004dd618211821801112cc0040062900044cc89660026601001000513370000290014400503f1821800998010011822000a082303d375400515980099b874802000626644b3001302f303e3754003132598009818181f9baa302c30403754605860806ea8022266e2400400e266e2000400d03d1bad3042303f375400314a081e0dd69820181e9baa0023040303d37546052607a6ea80162b30013370e9005000c4cc8966002605e607c6ea8006264b30013030303f3754605860806ea8c10cc100dd500444cdc4801800c4cdc4001800a07a375a6084607e6ea8006294103c1bad3040303d37540046080607a6ea8c100c0f4dd5002c4c8c8cc004004018896600200314a115980099baf003303f30430018a518998010011822000a07a410460166607e6080607a6ea80092f5c081d103a207440e881d103a181d9baa001223259800800c0d2264b3001303e0028992cc004cdc79bae303a00248810455534472008992cc004cc896600200314a11329800992cc004c0bcc0fcdd5000c4dd6982018219bab30433040375400314800103d1821000cdd798211821800cdd58012444b30010018acc004c008016266e2520000038a5040fd1325980099baf30420014c10140008acc004cdc49bad304330463756608600200913003374c608e00514a082022b300133712900000244c00c01a294104020803045001410c329800800c00e4466086004660866e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1040066eacc108006608c0069112cc004cdc8a441000038acc004cdc7a441000038998029819198239ba60024bd70000c4cc015300103d87a8000006410919800803c006446600e0046609266ec0dd48029ba6004001401c82106088004821229422942294104319192cc004c0b4c0f4dd5000c4c96600266ebcc108c0fcdd51821181f9baa302b303f3754002601a660826ea400d2f5c1132598009817981f9baa0018992cc004cdd7982218209baa304430413754002601e660866ea40152f5c11329800800cdd5981718211baa00299198008009bab302f30433754605e60866ea8014896600200314bd6f7b63044c8cc11ccdd818220009ba632330010013756608c00444b30010018a5eb7bdb1822646609466ec0c11c004dd419b8148000dd698240009980180198260011825000a09033003003304900230470014114800888966002005100189919914c00401a609600b32330010010052259800800c4cc12ccdd81ba9004374c00697adef6c608994c004dd71824800cdd59825000cc1380092225980099b9000800389982799bb037520106e9801c0162b30013371e01000713259800981e98269baa00189982819bb0375201260a2609c6ea800400a20048258c966002b30010018a518a50413d14c0103d87a80008981d998281ba60014bd702096329800800c022006800888966002005100189919914c00401a60ae00b32330010010052259800800c4cc15ccdd81ba9004375000697adef6c608994c004dd7182a800cdd6982b000cc1680092225980099b9000800389982d99bb037520106ea001c0162b30013371e010007132598009824982c9baa00189982e19bb0375201260ba60b46ea800400a200482b8c966002609200314c0103d87a8000898239982e1ba80014bd7020ae3370000e00513305b337606ea400cdd400119803003000a0ac4158305800141588030dd718280009bad30510013053002414513304f337606ea400cdd300119803003000a0944128304c00141288030dd718220009bab304500130470024115153303f49013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f8608660806ea80062a6607c92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c2073637269707429001640f46604c6eb0c0a4c0fcdd500411981598141bab302c30403754002009153303d49014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f06082607c6ea8006297adef6c6040ec660466eb0c100c0f4dd50030009bae303f303c3754604c60786ea8018dd31981f19bb0303f001374c6607c66ec0c0fcc100004dd400125eb7bdb1812f5bded8c110028a9981d2481786578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612c0a2020202020205b5061697228726573657276655f706f6c6963792c205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74295d295d2c0a2020202020203e3d2c0a2020202029001640e46eb0c0f8c0fcc0fcc0fcc0ecdd5002c54cc0e5240113657870656374206e616d65203d3d2075736472001640e06eb4c0e800606a81d8c0f000503a1991192cc004c0acc0e8dd5000c52f5bded8c113756607c60766ea80050381919800800801912cc0040062980103d87a8000899192cc004cdc8802800c56600266e3c0140062605666080607c00497ae08a60103d87a800040ed133004004304200340ec6eb8c0f0004c0fc00503d1bab303b303c303c303c303c303837540026eb8c090c0e0dd51811181c1baa00240ad0331bae00140d860660028188dd700098190042066303000740b902640b86eb80050311817000a058375c002605a0048170c0ac00502918139baa0048102048810201481020148102050375800301f80fa05630280014098605000501d80ec07603a8148c0980050241813001406e03701b80da04e30240014088604800501980cc0660328128c088005020180f1baa00380ba036222329800800c0120068008888c966002602600313259800800c01a264b3001001803c01e00f0078992cc004c0ac00e00b00840a06eb800502b1814000a04c30243754007159800980a000c4c9660020030068992cc00400600f0078992cc004c0ac00e26601600244b3001002803c4c96600200319800805400626004605c006805201700b805c02d02f1816001205480420503758003007803a0563028001409860486ea800e2b300130170018992cc00400600d13259800800c01e00f132598009815801c4cc02c00489660020050078992cc0040063300100a800c4c008c0b800d00a402e01700b805a05e302c00240a900840a06eb000600f00740ac60500028130c090dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817001c4cc038004896600200500a8992cc0040063300100d800c4c008c0c400d00d403a01d00e8072064302f00240b500b40ac6eb000601500a40b860560028148dd68009815001401d02b1814000a04c3024375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302b003802c0210281bad001803a0563028001409860486ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260560070058042050375a00300740ac60500028130c090dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260560070058042050375c0028158c0a000502618121baa003802a04240848109021204240848108c088dd500111191980080080191198018009801001405602b01580aa0423007301b375464646644646644a6604066e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea407922010013259800980918111baa00189929981119b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980c18121baa0018992cc0040062b300130153025375400313259800800c086264b3001001811408a045022899912cc0040060491325980098178014401a04a8160c0b400502b1bae001302c00240b460540028140c098dd5000c08102340820410208102056302830253754003153302349013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164088601c60486ea8c040c090dd5000981318119baa0018a99810a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640806601000203c60020026eb0c030c080dd5009111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920505980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81110221bac3025002375a60460026466ec0dd418118009ba73024001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6050003337149101023a200098008054c0a400600a805100a181580144ca6002015302800199b8a489023a200098008054c0a4006600e66008008004805100a18158012052302b00140a066e29220102207d0000340946eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006204a3758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc40012402914818229037204e3371666e000056600266e2000520148a40c11481b9027002200c33706002901019b8600148080cdc70020012048375c0068140dc5245022c200022323300100100322598009808000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407880f08888c8cc004004014896600200310058992cc004006266008604e00400d1330053027002330030030014094604e0028120c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901b111980180111980418029bab3009301d37546012603a6ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146603e00297ae089980180198108012034301f0014074600a00a3011375400e6e1d2002370e90004022011008804202a3012300f3754007164030300e0013009375401f149a2a6600e92011856616c696461746f722072657475726e65642066616c7365001365640181" + : + "590b64010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a4001300937540089111192cc004c00c00a2b3001300f37540130018b20208acc004c01000a2b3001300f37540130018b20208b201a4034330012259800800c52f5c1133012300f30130013300200230140014045374a900048c048c04c00644646600200200644b30010018a508acc004cdc79bae30150010038a51899801001180b000a020404d230123013301300191191980080080191198018009801001244444466446644646644b3001300f301a375400513232323298009bac30220019811001cc08800922259800981300244cc020c09401c4cc020008566002602c60426ea8006264646644b3001302a00389919912cc004c0b400e33001374a900148c0b4c0b8c0b8c0b8c0b8c0b8c0b8c0b8c0b80064605a605c605c605c605c605c605c605c0032302d302e302e302e302e302e302e00148888cc89660026046605c6ea80a62b30019800981918179baa0169bac3005302f375404d3004302f375404d37566006605e6ea809900244cdc4240006600202c04d1640b5159800cc004c07cc0bcdd500b4dd6180298179baa026980218179baa0269bab3003302f375404c8012266e20cc00405809920008b205a40b44444646600200200a4464b300130280018998118031bae3037303437540051598009814800c4c8cc004004dd6181c181a9baa0032259800800c528c5660026600a00a6072003133002002303a0018a5040d081ba2b3001302c001899198008009bac30383035375400644b30010018a508acc004cc014014c0e40062946266004004607400281a1037456600266e1d200600189919b89375a607000264660020026eb0c0e4c0e8008896600200314800226644b300133008008002899b800014800a200281b8c0e8004cc008008c0ec005038181a1baa0028acc004cdc3a401000313322598009815981a9baa0018992cc004c0b0c0d8dd51813981b9baa30273037375401113371200200713371000200681a8dd6981c981b1baa0018a5040d06eb4c0dcc0d0dd5001181b981a1baa30243034375400b15980099b874802800626644b3001302b30353754003132598009816181b1baa3027303737546074606e6ea8022266e2400c006266e2000c0050351bad30393036375400314a081a0dd6981b981a1baa002303730343754606e60686ea8016264646600200200c44b30010018a508acc004cdd7801981b181d000c528c4cc008008c0ec0050352070300b3303630373034375400497ae040c88191032206440c88190c0c8dd500091192cc004c0d000626464b30013371e6eb8c0c40092210455534472008992cc004cc896600200314a11329800992cc004c0acc0d8dd5000c4dd6981b981d1bab303a30373754003148001035181c800cdd7981c981d000cdd58012444b30010018acc004c008016266e2520000038a5040dd1325980099baf30390014c10140008acc004cdc49bad303a303d3756607400200913003374c607c00514a081c22b300133712900000244c00c01a29410382070303c00140e8329800800c00e4466074004660746e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c0e00066eacc0e4006607a0069112cc004cdc8a441000038acc004cdc7a4410000389980298169981f1ba60024bd70000c4cc015300103d87a800000640e919800803c006446600e0046608066ec0dd48029ba6004001401c81d0607600481ca29422942294103a19192cc004c0a4c0d0dd5000c4c96600266ebcc0e4c0d8dd5181c981b1baa302630363754002601a660706ea400d2f5c1132598009815981b1baa0018992cc004cdd7981d981c1baa303b30383754002601e660746ea40152f5c11329800800cdd59814981c9baa00299198008009bab302a303a3754605460746ea8014896600200314bd6f7b63044c8cc0f8cdd8181d8009ba632330010013756607a00444b30010018a5eb7bdb1822646608266ec0c0f8004dd419b8148000dd6981f8009980180198218011820800a07e330030033040002303e00140f0800888966002005100189919914c00401a608400b32330010010052259800800c4cc108cdd81ba9004374c00697adef6c608994c004dd71820000cdd59820800cc1140092225980099b9000800389982319bb037520106e9801c0162b30013371e01000713259800981c98221baa00189982399bb037520126090608a6ea800400a20048218c966002b30010018a518a50411914c0103d87a80008981b198239ba60014bd702086329800800c022006800888966002005100189919914c00401a609c00b32330010010052259800800c4cc138cdd81ba9004375000697adef6c608994c004dd71826000cdd69826800cc1440092225980099b9000800389982919bb037520106ea001c0162b30013371e01000713259800982298281baa00189982999bb0375201260a860a26ea800400a20048278c966002608a00314c0103d87a800089821198299ba80014bd70209e3370000e005133052337606ea400cdd400119803003000a09c4138304f00141348030dd718238009bad3048001304a0024121133046337606ea400cdd300119803003000a0844108304300141048030dd7181d8009bab303c001303e00240f11640d86074606e6ea80062c81a8cc07cdd61812181b1baa00823302630213756604e606e6ea80040122c81a0c0e0c0d4dd5000c52f5bded8c08198cc070dd6181b981a1baa006001375c606c60666ea8c084c0ccdd50031ba63303533760606c0026e98cc0d4cdd8181b181b8009ba80024bd6f7b63025eb7bdb18220051640c46eb0c0d4c0d8c0d8c0d8c0c8dd5002c590301bad303100130330018b206233223259800981398189baa0018a5eb7bdb18226eacc0d4c0c8dd5000a06032330010010032259800800c5300103d87a8000899192cc004cdc8802800c56600266e3c0140062604c6606e606a00497ae08a60103d87a800040cd133004004303900340cc6eb8c0cc004c0d80050341bab30323033303330333033302f37540026eb8c07cc0bcdd5180e98179baa00245902a1bae302a001375c6054010605400f16409c6eb8c09c004dd71813801181380098111baa0018b20408b2046181100098108009810000980d9baa0028b203230093019375464b3001300e30193754003132598009809980d1baa0018992cc004c040c06cdd5000c4c8c8cc8966002604800710058b20423021001375c6042004604200260386ea80062c80d0c078c06cdd5000c590191804180d1baa300a301a3754603a60346ea80062c80c0cc004dd61804980c9baa0100163004004223300300223300a30053756601660366ea8c02cc06cdd500080111801800911919800800801912cc0040062980103d87a80008992cc004c010006260186603a00297ae0899801801980f8012032301d001406c600c00c44464b3001300c001899192cc004c07800a00916406c6eb8c070004c060dd5001c566002601a00313259800980e800c4cc018dd6180e000912cc00400a00b19800803cc07800a26002603e004803901c45901a180c1baa0038acc004c040006264b3001301d0018998031bac301c0012259800801401633001007980f00144c004c07c00900720388b20343018375400715980099b87480180062646644b3001301f0018998041bac301e0012259800801401e33001009981000144c004c084009009203c8b2038375a6038002603a00260306ea800e2b30013370e9004000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9005000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9006000c4c8c966002603c0050048b2036375c603800260306ea800e2c80b1016202c405880b1016202c301637540044590080c024004c010dd5005452689b2b20041", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_1ProtocolProtocolElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5914b1010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692015e657870656374205b50616972286e616d652c206d696e745f616d6f756e74295d203d0a2020202074782e6d696e74207c3e20746f6b656e732873657474696e67732e72656769737472792e7573647229207c3e20746f5f7061697273282900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488896600264653001300e00198071807800cdc3a4009300e00248889660026004601c6ea800e264b30010058999119912cc004c00c0062b300130143754013002806202a8acc004c0100062b300130143754013002806202a80620224044330012259800800c52f5c1133016301330170013300200230180014055374a900048c058c05c00644646600200200644b30010018a508acc004cdc79bae30190010038a51899801001180d000a026405d2301630173017001488888c8cc88c8c96600200313232598009806980e9baa0038992cc00400603113259800800c4c96600200301a8992cc004006264b300100180e44c96600200313259800800c07a264b300100180fc07e264b3001302b0038cc004022330010068acc004c058c098dd500244c9660020030218992cc004006045022811408a26644b300100181244c966002003025812c09604b132598009818801c56600200f0268992cc00400604f027813c09e26644b3001001814c4c96600200302a81540aa05513259800981b001c660026e9520029181b181b981b981b981b981b981b981b981b800c8c0d8c0dcc0dcc0dcc0dcc0dcc0dcc0dc0064606c606e606e606e606e606e606e002911119912cc004c09cc0dcdd5016c5660033001303b3038375403b3758600a60706ea80aa600860706ea80aa6eacc00cc0e0dd50152004899b8848000cc0040740aa2a6606c9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d5159800cc004c090c0e0dd500ecdd61802981c1baa02a9802181c1baa02a9bab3003303837540548012266e20cc0040740a920008a9981b2481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001640d481a88888c8cc00400401488c9660026058003133028006375c6080607a6ea800a2b3001302d001899198008009bac3041303e375400644b30010018a518acc004cc014014c108006266004004608600314a081e1040456600260600031323300100137586082607c6ea800c896600200314a1159800998028029821000c528c4cc008008c10c00503c20808acc004cdc3a400c003132337126eb4c104004c8cc004004dd618211821801112cc0040062900044cc89660026601001000513370000290014400503f1821800998010011822000a082303d375400515980099b874802000626644b3001302f303e3754003132598009818181f9baa302c30403754605860806ea8022266e2400400e266e2000400d03d1bad3042303f375400314a081e0dd69820181e9baa0023040303d37546052607a6ea80162b30013370e9005000c4cc8966002605e607c6ea8006264b30013030303f3754605860806ea8c10cc100dd500444cdc4801800c4cdc4001800a07a375a6084607e6ea8006294103c1bad3040303d37540046080607a6ea8c100c0f4dd5002c4c8c8cc004004018896600200314a115980099baf003303f30430018a518998010011822000a07a410460166607e6080607a6ea80092f5c081d103a207440e881d103a181d9baa001223259800800c0d2264b3001303e0028992cc004cdc79bae303a00248810455534472008992cc004cc896600200314a11329800992cc004c0bcc0fcdd5000c4dd6982018219bab30433040375400314800103d1821000cdd798211821800cdd58012444b30010018acc004c008016266e2520000038a5040fd1325980099baf30420014c10140008acc004cdc49bad304330463756608600200913003374c608e00514a082022b300133712900000244c00c01a294104020803045001410c329800800c00e4466086004660866e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1040066eacc108006608c0069112cc004cdc8a441000038acc004cdc7a441000038998029819198239ba60024bd70000c4cc015300103d87a8000006410919800803c006446600e0046609266ec0dd48029ba6004001401c82106088004821229422942294104319192cc004c0b4c0f4dd5000c4c96600266ebcc108c0fcdd51821181f9baa302b303f3754002601a660826ea400d2f5c1132598009817981f9baa0018992cc004cdd7982218209baa304430413754002601e660866ea40152f5c11329800800cdd5981718211baa00299198008009bab302f30433754605e60866ea8014896600200314bd6f7b63044c8cc11ccdd818220009ba632330010013756608c00444b30010018a5eb7bdb1822646609466ec0c11c004dd419b8148000dd698240009980180198260011825000a09033003003304900230470014114800888966002005100189919914c00401a609600b32330010010052259800800c4cc12ccdd81ba9004374c00697adef6c608994c004dd71824800cdd59825000cc1380092225980099b9000800389982799bb037520106e9801c0162b30013371e01000713259800981e98269baa00189982819bb0375201260a2609c6ea800400a20048258c966002b30010018a518a50413d14c0103d87a80008981d998281ba60014bd702096329800800c022006800888966002005100189919914c00401a60ae00b32330010010052259800800c4cc15ccdd81ba9004375000697adef6c608994c004dd7182a800cdd6982b000cc1680092225980099b9000800389982d99bb037520106ea001c0162b30013371e010007132598009824982c9baa00189982e19bb0375201260ba60b46ea800400a200482b8c966002609200314c0103d87a8000898239982e1ba80014bd7020ae3370000e00513305b337606ea400cdd400119803003000a0ac4158305800141588030dd718280009bad30510013053002414513304f337606ea400cdd300119803003000a0944128304c00141288030dd718220009bab304500130470024115153303f49013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f8608660806ea80062a6607c92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c2073637269707429001640f46604c6eb0c0a4c0fcdd500411981598141bab302c30403754002009153303d49014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742873637269707429001640f06082607c6ea8006297adef6c6040ec660466eb0c100c0f4dd50030009bae303f303c3754604c60786ea8018dd31981f19bb0303f001374c6607c66ec0c0fcc100004dd400125eb7bdb1812f5bded8c110028a9981d2481786578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612c0a2020202020205b5061697228726573657276655f706f6c6963792c205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74295d295d2c0a2020202020203e3d2c0a2020202029001640e46eb0c0f8c0fcc0fcc0fcc0ecdd5002c54cc0e5240113657870656374206e616d65203d3d2075736472001640e06eb4c0e800606a81d8c0f000503a1991192cc004c0acc0e8dd5000c52f5bded8c113756607c60766ea80050381919800800801912cc0040062980103d87a8000899192cc004cdc8802800c56600266e3c0140062605666080607c00497ae08a60103d87a800040ed133004004304200340ec6eb8c0f0004c0fc00503d1bab303b303c303c303c303c303837540026eb8c090c0e0dd51811181c1baa00240ad0331bae00140d860660028188dd700098190042066303000740b902640b86eb80050311817000a058375c002605a0048170c0ac00502918139baa0048102048810201481020148102050375800301f80fa05630280014098605000501d80ec07603a8148c0980050241813001406e03701b80da04e30240014088604800501980cc0660328128c088005020180f1baa00380ba036222329800800c0120068008888c966002602600313259800800c01a264b3001001803c01e00f0078992cc004c0ac00e00b00840a06eb800502b1814000a04c30243754007159800980a000c4c9660020030068992cc00400600f0078992cc004c0ac00e26601600244b3001002803c4c96600200319800805400626004605c006805201700b805c02d02f1816001205480420503758003007803a0563028001409860486ea800e2b300130170018992cc00400600d13259800800c01e00f132598009815801c4cc02c00489660020050078992cc0040063300100a800c4c008c0b800d00a402e01700b805a05e302c00240a900840a06eb000600f00740ac60500028130c090dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817001c4cc038004896600200500a8992cc0040063300100d800c4c008c0c400d00d403a01d00e8072064302f00240b500b40ac6eb000601500a40b860560028148dd68009815001401d02b1814000a04c3024375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302b003802c0210281bad001803a0563028001409860486ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260560070058042050375a00300740ac60500028130c090dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260560070058042050375c0028158c0a000502618121baa003802a04240848109021204240848108c088dd500111191980080080191198018009801001405602b01580aa0423007301b375464646644646644a6604066e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea407922010013259800980918111baa00189929981119b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980c18121baa0018992cc0040062b300130153025375400313259800800c086264b3001001811408a045022899912cc0040060491325980098178014401a04a8160c0b400502b1bae001302c00240b460540028140c098dd5000c08102340820410208102056302830253754003153302349013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164088601c60486ea8c040c090dd5000981318119baa0018a99810a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640806601000203c60020026eb0c030c080dd5009111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920505980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81110221bac3025002375a60460026466ec0dd418118009ba73024001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6050003337149101023a200098008054c0a400600a805100a181580144ca6002015302800199b8a489023a200098008054c0a4006600e66008008004805100a18158012052302b00140a066e29220102207d0000340946eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006204a3758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc40012402914818229037204e3371666e000056600266e2000520148a40c11481b9027002200c33706002901019b8600148080cdc70020012048375c0068140dc5245022c200022323300100100322598009808000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407880f08888c8cc004004014896600200310058992cc004006266008604e00400d1330053027002330030030014094604e0028120c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901b111980180111980418029bab3009301d37546012603a6ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146603e00297ae089980180198108012034301f0014074600a00a3011375400e6e1d2002370e90004022011008804202a3012300f3754007164030300e0013009375401f149a2a6600e92011856616c696461746f722072657475726e65642066616c7365001365640181" + : + "590b64010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a4001300937540089111192cc004c00c00a2b3001300f37540130018b20208acc004c01000a2b3001300f37540130018b20208b201a4034330012259800800c52f5c1133012300f30130013300200230140014045374a900048c048c04c00644646600200200644b30010018a508acc004cdc79bae30150010038a51899801001180b000a020404d230123013301300191191980080080191198018009801001244444466446644646644b3001300f301a375400513232323298009bac30220019811001cc08800922259800981300244cc020c09401c4cc020008566002602c60426ea8006264646644b3001302a00389919912cc004c0b400e33001374a900148c0b4c0b8c0b8c0b8c0b8c0b8c0b8c0b8c0b80064605a605c605c605c605c605c605c605c0032302d302e302e302e302e302e302e00148888cc89660026046605c6ea80a62b30019800981918179baa0169bac3005302f375404d3004302f375404d37566006605e6ea809900244cdc4240006600202c04d1640b5159800cc004c07cc0bcdd500b4dd6180298179baa026980218179baa0269bab3003302f375404c8012266e20cc00405809920008b205a40b44444646600200200a4464b300130280018998118031bae3037303437540051598009814800c4c8cc004004dd6181c181a9baa0032259800800c528c5660026600a00a6072003133002002303a0018a5040d081ba2b3001302c001899198008009bac30383035375400644b30010018a508acc004cc014014c0e40062946266004004607400281a1037456600266e1d200600189919b89375a607000264660020026eb0c0e4c0e8008896600200314800226644b300133008008002899b800014800a200281b8c0e8004cc008008c0ec005038181a1baa0028acc004cdc3a401000313322598009815981a9baa0018992cc004c0b0c0d8dd51813981b9baa30273037375401113371200200713371000200681a8dd6981c981b1baa0018a5040d06eb4c0dcc0d0dd5001181b981a1baa30243034375400b15980099b874802800626644b3001302b30353754003132598009816181b1baa3027303737546074606e6ea8022266e2400c006266e2000c0050351bad30393036375400314a081a0dd6981b981a1baa002303730343754606e60686ea8016264646600200200c44b30010018a508acc004cdd7801981b181d000c528c4cc008008c0ec0050352070300b3303630373034375400497ae040c88191032206440c88190c0c8dd500091192cc004c0d000626464b30013371e6eb8c0c40092210455534472008992cc004cc896600200314a11329800992cc004c0acc0d8dd5000c4dd6981b981d1bab303a30373754003148001035181c800cdd7981c981d000cdd58012444b30010018acc004c008016266e2520000038a5040dd1325980099baf30390014c10140008acc004cdc49bad303a303d3756607400200913003374c607c00514a081c22b300133712900000244c00c01a29410382070303c00140e8329800800c00e4466074004660746e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c0e00066eacc0e4006607a0069112cc004cdc8a441000038acc004cdc7a4410000389980298169981f1ba60024bd70000c4cc015300103d87a800000640e919800803c006446600e0046608066ec0dd48029ba6004001401c81d0607600481ca29422942294103a19192cc004c0a4c0d0dd5000c4c96600266ebcc0e4c0d8dd5181c981b1baa302630363754002601a660706ea400d2f5c1132598009815981b1baa0018992cc004cdd7981d981c1baa303b30383754002601e660746ea40152f5c11329800800cdd59814981c9baa00299198008009bab302a303a3754605460746ea8014896600200314bd6f7b63044c8cc0f8cdd8181d8009ba632330010013756607a00444b30010018a5eb7bdb1822646608266ec0c0f8004dd419b8148000dd6981f8009980180198218011820800a07e330030033040002303e00140f0800888966002005100189919914c00401a608400b32330010010052259800800c4cc108cdd81ba9004374c00697adef6c608994c004dd71820000cdd59820800cc1140092225980099b9000800389982319bb037520106e9801c0162b30013371e01000713259800981c98221baa00189982399bb037520126090608a6ea800400a20048218c966002b30010018a518a50411914c0103d87a80008981b198239ba60014bd702086329800800c022006800888966002005100189919914c00401a609c00b32330010010052259800800c4cc138cdd81ba9004375000697adef6c608994c004dd71826000cdd69826800cc1440092225980099b9000800389982919bb037520106ea001c0162b30013371e01000713259800982298281baa00189982999bb0375201260a860a26ea800400a20048278c966002608a00314c0103d87a800089821198299ba80014bd70209e3370000e005133052337606ea400cdd400119803003000a09c4138304f00141348030dd718238009bad3048001304a0024121133046337606ea400cdd300119803003000a0844108304300141048030dd7181d8009bab303c001303e00240f11640d86074606e6ea80062c81a8cc07cdd61812181b1baa00823302630213756604e606e6ea80040122c81a0c0e0c0d4dd5000c52f5bded8c08198cc070dd6181b981a1baa006001375c606c60666ea8c084c0ccdd50031ba63303533760606c0026e98cc0d4cdd8181b181b8009ba80024bd6f7b63025eb7bdb18220051640c46eb0c0d4c0d8c0d8c0d8c0c8dd5002c590301bad303100130330018b206233223259800981398189baa0018a5eb7bdb18226eacc0d4c0c8dd5000a06032330010010032259800800c5300103d87a8000899192cc004cdc8802800c56600266e3c0140062604c6606e606a00497ae08a60103d87a800040cd133004004303900340cc6eb8c0cc004c0d80050341bab30323033303330333033302f37540026eb8c07cc0bcdd5180e98179baa00245902a1bae302a001375c6054010605400f16409c6eb8c09c004dd71813801181380098111baa0018b20408b2046181100098108009810000980d9baa0028b203230093019375464b3001300e30193754003132598009809980d1baa0018992cc004c040c06cdd5000c4c8c8cc8966002604800710058b20423021001375c6042004604200260386ea80062c80d0c078c06cdd5000c590191804180d1baa300a301a3754603a60346ea80062c80c0cc004dd61804980c9baa0100163004004223300300223300a30053756601660366ea8c02cc06cdd500080111801800911919800800801912cc0040062980103d87a80008992cc004c010006260186603a00297ae0899801801980f8012032301d001406c600c00c44464b3001300c001899192cc004c07800a00916406c6eb8c070004c060dd5001c566002601a00313259800980e800c4cc018dd6180e000912cc00400a00b19800803cc07800a26002603e004803901c45901a180c1baa0038acc004c040006264b3001301d0018998031bac301c0012259800801401633001007980f00144c004c07c00900720388b20343018375400715980099b87480180062646644b3001301f0018998041bac301e0012259800801401e33001009981000144c004c084009009203c8b2038375a6038002603a00260306ea800e2b30013370e9004000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9005000c4c8c966002603c0050048b2036375a603800260306ea800e2b30013370e9006000c4c8c966002603c0050048b2036375c603800260306ea800e2c80b1016202c405880b1016202c301637540044590080c024004c010dd5005452689b2b20041", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_1TreasuryTreasuryMint { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : + "5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_1TreasuryTreasurySpend { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : + "5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_1TreasuryTreasuryElse { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "59086f0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b0019bae3016001899b87375a602c602e00290014528202030163758602a00319800801cc05800a602c002801a294100f2026404d14a3153300d491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : + "5902e40101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b133223322329800912cc00400629422b30013375e0066024602c00314a31330020023017001404480a26028602a00b30140054888cc00c00cdd5980b980c180c180c180c180c180c180a1baa00a19ba548008cc048c04cc040dd5192cc004c024c040dd5000c4c96600266e1d20043011375400313259800980598091baa0018991919912cc004c06c00e200b16406060300026eb8c060008c060004c04cdd5000c59011180a98091baa0018b202030143015301530113754600460226ea8c050c044dd5000c5900f198039bac30013010375400c4646600200260086eacc00cc048dd5180198091baa0022259800800c528456600266e3cdd7180b0008084528c4cc008008c05c00501120284bd70180080091809180980098061baa0062259800800c52f5c1133010300d3011001330020023012001403d164028805060126014002601200260086ea802629344d95900201", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/src/generated-types/v0_2/index.ts b/modules/realfi-partner-sdk/src/generated-types/v0_2/index.ts new file mode 100644 index 0000000000..e920103e4f --- /dev/null +++ b/modules/realfi-partner-sdk/src/generated-types/v0_2/index.ts @@ -0,0 +1,154 @@ +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { type Script } from "@blaze-cardano/core"; +import { Type, Exact, TPlutusData } from "@blaze-cardano/data"; +import { type PlutusData } from "@blaze-cardano/core"; +type Data = PlutusData; +type Int = bigint; +type ByteArray = string; +const PolicyId = Type.String(); +type OutputReference = { output_index: bigint; transaction_id: string }; + +const Contracts = Type.Module({ + MultisigScript: Type.Union([ + Type.Object({ + Signature: Type.Object({ + key_hash: Type.String(), + }, { ctor: 0n }) + }), + Type.Object({ + AllOf: Type.Object({ + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 1n }) + }), + Type.Object({ + AnyOf: Type.Object({ + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 2n }) + }), + Type.Object({ + AtLeast: Type.Object({ + required: Type.BigInt(), + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 3n }) + }), + Type.Object({ + Before: Type.Object({ + time: Type.BigInt(), + }, { ctor: 4n }) + }), + Type.Object({ + After: Type.Object({ + time: Type.BigInt(), + }, { ctor: 5n }) + }), + Type.Object({ + Script: Type.Object({ + script_hash: Type.String(), + }, { ctor: 6n }) + }), + ]), + Asset: Type.Tuple([ + Type.String(), + Type.String(), + ]), + Registry: Type.Object({ + treasury: Type.String(), + usdr: Type.String(), + }, { ctor: 0n }), + ProtocolRedeemer: Type.Union([ + Type.Literal("Mint", { ctor: 0n }), + Type.Literal("Burn", { ctor: 1n }), + Type.Object({ + Withdraw: Type.Object({ + withdraw_amount: Type.BigInt(), + }, { ctor: 2n }) + }), + Type.Object({ + Deposit: Type.Object({ + deposit_amount: Type.BigInt(), + }, { ctor: 3n }) + }), + ]), + ProxyDatum: Type.Object({ + logic: Type.String(), + settings: Type.Ref("Settings"), + }, { ctor: 0n }), + Settings: Type.Object({ + mint_permission: Type.Ref("MultisigScript"), + burn_permission: Type.Ref("MultisigScript"), + withdraw_permission: Type.Ref("MultisigScript"), + deposit_permission: Type.Ref("MultisigScript"), + registry: Type.Ref("Registry"), + reserve_token: Type.Ref("Asset"), + }, { ctor: 0n }), +}); + +export const MultisigScript = Contracts.Import("MultisigScript"); +export type MultisigScript = Exact; +export const Asset = Contracts.Import("Asset"); +export type Asset = Exact; +export const Registry = Contracts.Import("Registry"); +export type Registry = Exact; +export const ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +export type ProtocolRedeemer = Exact; +export const ProxyDatum = Contracts.Import("ProxyDatum"); +export type ProxyDatum = Exact; +export const Settings = Contracts.Import("Settings"); +export type Settings = Exact; + +export class V0_2ProtocolProtocolWithdraw { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "591944010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920130657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488888896600264653001301100198089809000cdc3a400930110024888966002600460226ea800e264b30010058cc004dc3a4005370e90034dc3a40013012375400a9111192cc004c00c00a2b300130183754015001806a0328acc004c01400a2b300130183754015001806a0328acc004c02000a264b300100180744c96600200300f807c03e264b3001301f003802404101c1bad001807a03e301c001406860306ea802a2b300130040028992cc00400601d13259800800c03e01f00f8992cc004c07c00e00901040706eb400601e80f8c07000501a180c1baa00a806a02a405480a90150cc004896600200314bd7044cc06cc060c070004cc008008c07400501a4dd2a40012301b301c001911919800800801912cc00400629422b30013371e6eb8c07800400e2946266004004603e00280c101c48c06cc070c07000522222323322323259800800c4c8c966002601c60446ea800e264b300100180d44c96600200313259800800c072264b30010018992cc00400603d13259800800c4c9660020030208992cc004006264b300100181144c96600200313259800800c092264b3001001812c096264b300130340038cc0040323300100a8cc004022330010068acc004c06cc0bcdd500244c9660020030278992cc00400605102881440a226644b300100181544c96600200302b815c0ae05713259800981d001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c206113259800981f801c660026e9520029181f98201820182018201820182018201820000c8c0fcc100c100c100c100c100c100c1000064607e608060806080608060806080003222598009814981e9baa0038992cc00400600513259800800c00e0070038992cc004c11400e00b00441086eb40060068228c108005040181f1baa003800a0769181f9820182018201820000c8966002003148002266e01200233002002304100140f9303a375405b371090002444444444646644b300130320058acc00660026094608e6ea809e6eb0c02cc11cdd501b4c028c11cdd501b4dd5980498239baa0364005130049800813c0da900020048a99822a481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981a002c5660033001302e3047375404f37586016608e6ea80da6014608e6ea80da6eacc024c11cdd501b2002899b889800813c0da90002004480022a6608a9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981b802c4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bc005003454cc1192411a6578706563742077697468647261775f616d6f756e74203e20300016411504041146eb4c128c11cdd501cc4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bccdc1000a4002801a2a6608c920119657870656374206465706f7369745f616d6f756e74203e20300016411504041146eb4c128c11cdd501ca08841108220888c8cc896600266e1cdd6982700080144c9660026644b30010018a508994c004c9660026076609e6ea800626eb4c140c14cdd5982998281baa0018a40008268c1480066ebcc148c14c0066eac00922259800800c566002600400b1337129000001c528209e8992cc004cdd79829000a6010140008acc004cdc49bad30533056375660a600200913003374c60ae00514a082822b300133712900000244c00c01a294105020a03055001414c329800800c00e44660a6004660a66e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1440066eacc14800660ac0069112cc004cdc8a441000038acc004cdc7a44100003899802981e9982b9ba60024bd70000c4cc015300103d87a8000006414919800803c006446600e004660b266ec0dd48029ba6004001401c829060a800482922942294229410531bab3033002374c6609c66ec0c13c004dd31982719bb0304f3050001375066e0400c0152f5bded8c097adef6c608801c54cc1292401be6578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a2020202029001641246eb0c138c13cc13cc13cc13cc13cc12cdd5003454cc1252401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e7400164120b3001303430050018a4001159800800c10a264b3001304e0028acc004cdc79bae3049001488104555344720089bad304a0018a998242491d657870656374206e616d65203d3d20636f6e7374616e74732e757364720016411d043412c6098002825104619192cc004c0d8c128dd5000c4c96600266ebcc13cc130dd5182798261baa3033304c375400260226609c6ea400d2f5c113259800981e98261baa0018992cc004006330010018992cc004c0e8c138dd5000c4c96600266ebcc14cc140dd5182998281baa001301533052375200e97ae08992cc004c104c140dd5000c4c96600200319800800c4cc150dd419b81375a60aa60a46ea8004dd6982a98291baa00533054374c6530010019bab303a3053375400932330010013756607660a86ea8c0ecc150dd5004912cc004006297adef6c608991982c19bb03055001374c64660020026eacc15c008896600200314bd6f7b63044c8cc16ccdd8182c0009ba83370290001bad305900133003003305d002305b00141646600600660b400460b000282b10011112cc00400a2003132332298008034c170016646600200200a44b300100189982e19bb037520086e9800d2f5bded8c113298009bae305a0019bab305b001982f8012444b300133720010007133060337606ea4020dd3003802c56600266e3c02000e264b3001304a305e3754003133061337606ea4024c188c17cdd50008014400905c192cc0056600200314a314a083022980103d87a800089823998309ba60014bd7020b8329800800c022006800888966002005100189919914c00401a60d000b32330010010052259800800c4cc1a0cdd81ba9004375000697adef6c608994c004dd71833000cdd69833800cc1ac0092225980099b9000800389983619bb037520106ea001c0162b30013371e01000713259800982b18351baa00189983699bb0375201260dc60d66ea800400a20048340c96600260ac00314c0103d87a800089829998369ba80014bd7020d03370000e00513306c337606ea400cdd400119803003000a0ce419c3069001419c8030dd718308009bad306200130640024189133060337606ea400cdd300119803003000a0b6416c305d001416c8030dd7182a8009bab30560013058002415897ae0826a026826c13609b04d415c60a860a26ea80062a6609e92012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d00164138606a60a06ea80062a6609c92013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016413460a4609e6ea80062a6609a92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c207363726970742900164130660606eb0c0ccc138dd500411981a98191bab3036304f375400200d048403d04882441220908298c140c134dd5000c54cc12d2413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d00164128606260986ea8c0ccc130dd5000c54cc12924014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287363726970742900164124609c60966ea8006297ae110100008101a00020903302b3758609a60946ea8010004dd7182618249baa300930493754008664464b30013038304a375400314bd6f7b63044dd5982718259baa0014120646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606c660a0609c00497ae08a60103d87a8000412d1330040043052003412c6eb8c130004c13c00504d1bab3008304837540046eb8c0bcc120dd5180418241baa00322223233001001005223259800981b800c4cc0c8018dd7182798261baa0028acc004c0e4006264660020026eb0c140c134dd5001912cc00400629462b30013300500530510018998010011829000c5282096413d159800981e000c4c8cc004004dd6182818269baa0032259800800c52845660026600a00a60a200314a31330020023052001412c827a2b3001303800189919b89375a60a000264660020026eb0c144c148008896600200314800226644b300133008008002899b800014800a20028270c148004cc008008c14c00505018261baa0028acc004cdc3a40100031332259800981d98269baa0018992cc004c0f0c138dd5181b18279baa3036304f37540111337120020071337100020068260dd6982898271baa0018a50412c6eb4c13cc130dd5001182798261baa3033304c375400b15980099b874802800626644b3001303b304d375400313259800981e18271baa3036304f375460a4609e6ea8022266e2400c006266e2000c00504c1bad3051304e375400314a08258dd6982798261baa002304f304c3754609e60986ea8016264646600200200c44b30010018a508acc004cdd780198271829000c528c4cc008008c14c00504c20a030113304e304f304c375400497ae041248249049209241248248c128dd50009801801a06281e0dd7000a07e303c00140e86eb8004c0ec02103c181c803a06e816206e375c00281d0c0dc0050351bae001303600240dc60680028190c0c0dd5002409902d409900e409900e409900e409900e40990311bac001812c0950341818800a05e3031002811c08e04702340c8605e0028168c0bc00a043021810c0850301816800a056302d00280fc07e03f01f40b860560028148c0ac00a03b01d80ec07502c1814800a04e302900280dc06e03701b40a8604e0028128c08cdd5001c065020111194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c058006264b300100180344c966002003007803c4c966002606000713300b0012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0c000e26601600244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b300130150018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009819801c4cc038004896600200500a8992cc0040063300100d800c4c008c0d800d00d403a01d00e807206e303400240c900b40c06eb000601500a40cc60600028170dd68009817801401d0301816800a0563029375400715980099b8748020006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c9660026060007005804205a375a00300740c0605a0028158c0a4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa003802a04c40988131026204c40988130c09cdd500111191980080080191198018009801001405e02f01780ba04c30073020375464646644646644a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea408d22010013259800980998139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980d18149baa0018992cc0040062b30013016302a375400313259800800c08e264b30010018124092049024899912cc00400604d13259800981a0014401a04e8188c0c80050301bae001303100240c8605e0028168c0acdd5000c089028408a0450228112060302d302a3754003153302849013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601c60526ea8c040c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601000204660020026eb0c030c094dd500a111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051009205a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81390271bac302a002375a60500026466ec0dd418140009ba73029001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a605a003337149101023a200098008054c0b800600a805100a181800144ca6002015302d00199b8a489023a200098008054c0b8006600e66008008004805100a1818001205c303000140b466e29220102207d0000340a86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900620543758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720583371666e000056600266e2000520148a40c11481b902c002200c33706002901019b8600148080cdc70020012052375c0068168dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003408c81188888c8cc004004014896600200310058992cc004006266008605800400d133005302c0023300300300140a860580028148c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c00028019020111980180111980418029bab300930223754601260446ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146604800297ae08998018019813001203e30240014088600a00a4022011008804203030153012375400716403c3011001300c3754025149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241" + : + "590d5b010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a400d370e90004c024dd500224444464b300130030028acc004c040dd500540062c808a2b300130050028acc004c040dd500540062c808a2b30013008002899192cc004c05800a00716404c6eb4c050004c040dd5005456600260080051323259800980b001400e2c8098dd6980a00098081baa00a8b201c4038807100e0cc004896600200314bd7044cc04cc040c050004cc008008c0540050124dd2a4001230133014001911919800800801912cc00400629422b30013371e6eb8c05800400e2946266004004602e002808901448c04cc050c05000644646600200200644660060026004004911111199119911919912cc004c03cc06cdd500144c8c8c8c8c8ca60026eb0c094006604a00b30250049812801cc0940092222259800981580344cc030c0a802c4cc0300104cc03000c4cc0300085660026034604c6ea8006264646644b3001302f00389919912cc004c0c800e33001374a900148c0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc00646064606660666066606660666066606600323032303330333033303330333033001912cc004c08cc0bcdd500144c8c966002606c0050038b2066375a606800260606ea800a2c81724606460666066606660660032259800800c52000899b8048008cc008008c0d00050314c0b4dd50144dc4240009111111111919912cc004c0b40162b30019800981e981d1baa0209bac300b303a3754063300a303a37540633756601260746ea80c500144c0126002041031a400080122c81c22b3001302f0058acc0066002605260746ea80826eb0c02cc0e8dd5018cc028c0e8dd5018cdd59804981d1baa03140051337113001020818d2000400890004590384566002606400b13259800cc004c0a0c0ecdd5010cdd61806181d9baa0329805981d9baa0329bab300a303b375406480122b30013005001898174c004086065001400d1640e51640e46eb4c0f4c0e8dd501a44c96600330013028303b37540433758601860766ea80ca601660766ea80ca6eacc028c0ecdd501920048acc004c0140062605d30010218194cdc1000a4002801a2c81ca2c81c8dd6981e981d1baa03440e081c10381111919912cc004cdc39bad30410010028992cc004cc896600200314a11329800992cc004c0d8c108dd5000c4dd6982198231bab3046304337540031480010411822800cdd798229823000cdd58012444b30010018acc004c008016266e2520000038a50410d1325980099baf30450014c010140008acc004cdc49bad304630493756608c00200913003374c609400514a082222b300133712900000244c00c01a2941044208830480014118329800800c00e446608c0046608c6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1100066eacc11400660920069112cc004cdc8a441000038acc004cdc7a44100003899802981c198251ba60024bd70000c4cc015300103d87a8000006411919800803c006446600e0046609866ec0dd48029ba6004001401c8230608e004822a2942294229410461bab302e002374c6608266ec0c108004dd31982099bb030423043001375066e0400c0152f5bded8c097adef6c608801c5903d1bac304130423042304230423042303e375400d1640f0b3001302f30050018a40011598009820000c4c96600266e3cdd7181e000a44104555344720089bad303d0018b2076303f0018b207a40e86464b30013031303d37540031325980099baf3042303f37546084607e6ea8c0b8c0fcdd50009808998209ba90034bd7044c9660026070607e6ea80062646601e002264b30013035304137540031325980099baf304630433754608c60866ea8004c054cc114dd4803a5eb82264b3001303c3043375400313233013001133047375066e04dd6982418229baa001375a6090608a6ea8014cc11cdd3194c0040066eacc0d4c118dd50024c8cc004004dd5981b18239baa30363047375401244b30010018a5eb7bdb1822646609666ec0c120004dd319198008009bab304a0022259800800c52f5bded8c11323304e3376060960026ea0cdc0a40006eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0924004444b30010028800c4c8cc8a600200d304f0059919800800802912cc00400626609e66ec0dd48021ba60034bd6f7b63044ca60026eb8c1340066eacc13800660a40049112cc004cdc8004001c4cc14ccdd81ba9008374c00e00b15980099b8f0080038992cc004c114c144dd5000c4cc150cdd81ba90093055305237540020051002414064b300159800800c528c52820a68a6103d87a8000898211982a1ba60014bd7020a0329800800c022006800888966002005100189919914c00401a60b600b32330010010052259800800c4cc16ccdd81ba9004375000697adef6c608994c004dd7182c800cdd6982d000cc1780092225980099b9000800389982f99bb037520106ea001c0162b30013371e010007132598009828982e9baa00189983019bb0375201260c260bc6ea800400a200482e0c96600260a200314c0103d87a800089827198301ba80014bd7020b83370000e00513305f337606ea400cdd400119803003000a0b6416c305c00141688030dd7182a0009bad305500130570024155133053337606ea400cdd300119803003000a09e413c305000141388030dd718240009bab3049001304b002412497ae0304730443754003164108606060866ea80062c8208c114c108dd5000c59040198149bac302e3041375401046606060566eacc0c4c108dd5000803182198201baa0018b207c302c303f3754605c607e6ea80062c81e8c104c0f8dd5000c52f5c30100008101a00020783302437586080607a6ea8010004dd7181f981e1baa3009303c3754008664464b30013033303d375400314bd6f7b63044dd59820981f1baa00140f0646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606266086608200497ae08a60103d87a800040fd133004004304500340fc6eb8c0fc004c1080050401bab3008303b37540046eb8c0a8c0ecdd51804181d9baa003222232330010010052232598009819000c4cc0b4018dd71821181f9baa0028acc004c0d0006264660020026eb0c10cc100dd5001912cc00400629462b30013300500530440018998010011822800c528207e4109159800981b800c4c8cc004004dd6182198201baa0032259800800c52845660026600a00a608800314a3133002002304500140fc82122b3001303300189919b89375a608600264660020026eb0c110c114008896600200314800226644b300133008008002899b800014800a20028210c114004cc008008c118005043181f9baa0028acc004cdc3a40100031332259800981b18201baa0018992cc004c0dcc104dd5181898211baa3031304237540111337120020071337100020068200dd6982218209baa0018a5040fc6eb4c108c0fcdd50011821181f9baa302e303f375400b15980099b874802800626644b300130363040375400313259800981b98209baa303130423754608a60846ea8022266e2400c006266e2000c0050401bad30443041375400314a081f8dd69821181f9baa0023042303f37546084607e6ea8016264646600200200c44b30010018a508acc004cdd780198209822800c528c4cc008008c11800504020863011330413042303f375400497ae040f481e903d207a40f481e8c0f4dd50009801801a2c8178dd718178009bae302f00a302f0098b2058375c60580026eb8c0b0008c0b0004c09cdd5000c590254590280c094004c090004c08c004c088004c084004c070dd500145901a1804980d1baa32598009807180d1baa0018992cc004c050c06cdd5000c4c966002602060386ea8006264646644b300130250038802c5902218110009bae30220023022001301d375400316406c603e60386ea80062c80d0c020c06cdd51805180d9baa301e301b3754003164064660026eb0c024c068dd500880b9802002111980180111980518029bab300b301c3754601660386ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c010006260186603c00297ae089980180198100012034301e0014070600c00c44464b3001300c001899192cc004c07c00a0091640706eb8c074004c064dd5001c566002601c00313259800980f000c4cc018dd6180e800912cc00400a00b19800803cc07c00a260026040004803901d45901b180c9baa0038acc004c044006264b3001301e0018998031bac301d0012259800801401633001007980f80144c004c080009007203a8b2036301937540071598009806800c4c8cc896600260400031330083758603e00244b3001002803c6600201330210028980098110012012407d1640746eb4c074004c078004c064dd5001c56600266e1d2008001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200a001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200c001899192cc004c07c00a0091640706eb8c074004c064dd5001c59017202e405c80b9017202e405c602e6ea80088b2010180480098021baa00a8a4d13656400801", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_2ProtocolProtocolElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "591944010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920130657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a491a72656465656d65723a2050726f746f636f6c52656465656d65720016488888896600264653001301100198089809000cdc3a400930110024888966002600460226ea800e264b30010058cc004dc3a4005370e90034dc3a40013012375400a9111192cc004c00c00a2b300130183754015001806a0328acc004c01400a2b300130183754015001806a0328acc004c02000a264b300100180744c96600200300f807c03e264b3001301f003802404101c1bad001807a03e301c001406860306ea802a2b300130040028992cc00400601d13259800800c03e01f00f8992cc004c07c00e00901040706eb400601e80f8c07000501a180c1baa00a806a02a405480a90150cc004896600200314bd7044cc06cc060c070004cc008008c07400501a4dd2a40012301b301c001911919800800801912cc00400629422b30013371e6eb8c07800400e2946266004004603e00280c101c48c06cc070c07000522222323322323259800800c4c8c966002601c60446ea800e264b300100180d44c96600200313259800800c072264b30010018992cc00400603d13259800800c4c9660020030208992cc004006264b300100181144c96600200313259800800c092264b3001001812c096264b300130340038cc0040323300100a8cc004022330010068acc004c06cc0bcdd500244c9660020030278992cc00400605102881440a226644b300100181544c96600200302b815c0ae05713259800981d001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c206113259800981f801c660026e9520029181f98201820182018201820182018201820000c8c0fcc100c100c100c100c100c100c1000064607e608060806080608060806080003222598009814981e9baa0038992cc00400600513259800800c00e0070038992cc004c11400e00b00441086eb40060068228c108005040181f1baa003800a0769181f9820182018201820000c8966002003148002266e01200233002002304100140f9303a375405b371090002444444444646644b300130320058acc00660026094608e6ea809e6eb0c02cc11cdd501b4c028c11cdd501b4dd5980498239baa0364005130049800813c0da900020048a99822a481866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981a002c5660033001302e3047375404f37586016608e6ea80da6014608e6ea80da6eacc024c11cdd501b2002899b889800813c0da90002004480022a6608a9201866578706563740a20202020736174697366696564280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164111159800981b802c4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bc005003454cc1192411a6578706563742077697468647261775f616d6f756e74203e20300016411504041146eb4c128c11cdd501cc4c9660033001302d304837540513758601860906ea80de601660906ea80de6eacc028c120dd501ba0048acc004c01400626067300102881bccdc1000a4002801a2a6608c920119657870656374206465706f7369745f616d6f756e74203e20300016411504041146eb4c128c11cdd501ca08841108220888c8cc896600266e1cdd6982700080144c9660026644b30010018a508994c004c9660026076609e6ea800626eb4c140c14cdd5982998281baa0018a40008268c1480066ebcc148c14c0066eac00922259800800c566002600400b1337129000001c528209e8992cc004cdd79829000a6010140008acc004cdc49bad30533056375660a600200913003374c60ae00514a082822b300133712900000244c00c01a294105020a03055001414c329800800c00e44660a6004660a66e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1440066eacc14800660ac0069112cc004cdc8a441000038acc004cdc7a44100003899802981e9982b9ba60024bd70000c4cc015300103d87a8000006414919800803c006446600e004660b266ec0dd48029ba6004001401c829060a800482922942294229410531bab3033002374c6609c66ec0c13c004dd31982719bb0304f3050001375066e0400c0152f5bded8c097adef6c608801c54cc1292401be6578706563740a202020206d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a2020202029001641246eb0c138c13cc13cc13cc13cc13cc12cdd5003454cc1252401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e7400164120b3001303430050018a4001159800800c10a264b3001304e0028acc004cdc79bae3049001488104555344720089bad304a0018a998242491d657870656374206e616d65203d3d20636f6e7374616e74732e757364720016411d043412c6098002825104619192cc004c0d8c128dd5000c4c96600266ebcc13cc130dd5182798261baa3033304c375400260226609c6ea400d2f5c113259800981e98261baa0018992cc004006330010018992cc004c0e8c138dd5000c4c96600266ebcc14cc140dd5182998281baa001301533052375200e97ae08992cc004c104c140dd5000c4c96600200319800800c4cc150dd419b81375a60aa60a46ea8004dd6982a98291baa00533054374c6530010019bab303a3053375400932330010013756607660a86ea8c0ecc150dd5004912cc004006297adef6c608991982c19bb03055001374c64660020026eacc15c008896600200314bd6f7b63044c8cc16ccdd8182c0009ba83370290001bad305900133003003305d002305b00141646600600660b400460b000282b10011112cc00400a2003132332298008034c170016646600200200a44b300100189982e19bb037520086e9800d2f5bded8c113298009bae305a0019bab305b001982f8012444b300133720010007133060337606ea4020dd3003802c56600266e3c02000e264b3001304a305e3754003133061337606ea4024c188c17cdd50008014400905c192cc0056600200314a314a083022980103d87a800089823998309ba60014bd7020b8329800800c022006800888966002005100189919914c00401a60d000b32330010010052259800800c4cc1a0cdd81ba9004375000697adef6c608994c004dd71833000cdd69833800cc1ac0092225980099b9000800389983619bb037520106ea001c0162b30013371e01000713259800982b18351baa00189983699bb0375201260dc60d66ea800400a20048340c96600260ac00314c0103d87a800089829998369ba80014bd7020d03370000e00513306c337606ea400cdd400119803003000a0ce419c3069001419c8030dd718308009bad306200130640024189133060337606ea400cdd300119803003000a0b6416c305d001416c8030dd7182a8009bab30560013058002415897ae0826a026826c13609b04d415c60a860a26ea80062a6609e92012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d00164138606a60a06ea80062a6609c92013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016413460a4609e6ea80062a6609a92013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c207363726970742900164130660606eb0c0ccc138dd500411981a98191bab3036304f375400200d048403d04882441220908298c140c134dd5000c54cc12d2413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d00164128606260986ea8c0ccc130dd5000c54cc12924014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287363726970742900164124609c60966ea8006297ae110100008101a00020903302b3758609a60946ea8010004dd7182618249baa300930493754008664464b30013038304a375400314bd6f7b63044dd5982718259baa0014120646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606c660a0609c00497ae08a60103d87a8000412d1330040043052003412c6eb8c130004c13c00504d1bab3008304837540046eb8c0bcc120dd5180418241baa00322223233001001005223259800981b800c4cc0c8018dd7182798261baa0028acc004c0e4006264660020026eb0c140c134dd5001912cc00400629462b30013300500530510018998010011829000c5282096413d159800981e000c4c8cc004004dd6182818269baa0032259800800c52845660026600a00a60a200314a31330020023052001412c827a2b3001303800189919b89375a60a000264660020026eb0c144c148008896600200314800226644b300133008008002899b800014800a20028270c148004cc008008c14c00505018261baa0028acc004cdc3a40100031332259800981d98269baa0018992cc004c0f0c138dd5181b18279baa3036304f37540111337120020071337100020068260dd6982898271baa0018a50412c6eb4c13cc130dd5001182798261baa3033304c375400b15980099b874802800626644b3001303b304d375400313259800981e18271baa3036304f375460a4609e6ea8022266e2400c006266e2000c00504c1bad3051304e375400314a08258dd6982798261baa002304f304c3754609e60986ea8016264646600200200c44b30010018a508acc004cdd780198271829000c528c4cc008008c14c00504c20a030113304e304f304c375400497ae041248249049209241248248c128dd50009801801a06281e0dd7000a07e303c00140e86eb8004c0ec02103c181c803a06e816206e375c00281d0c0dc0050351bae001303600240dc60680028190c0c0dd5002409902d409900e409900e409900e409900e40990311bac001812c0950341818800a05e3031002811c08e04702340c8605e0028168c0bc00a043021810c0850301816800a056302d00280fc07e03f01f40b860560028148c0ac00a03b01d80ec07502c1814800a04e302900280dc06e03701b40a8604e0028128c08cdd5001c065020111194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c058006264b300100180344c966002003007803c4c966002606000713300b0012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0c000e26601600244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b300130150018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009819801c4cc038004896600200500a8992cc0040063300100d800c4c008c0d800d00d403a01d00e807206e303400240c900b40c06eb000601500a40cc60600028170dd68009817801401d0301816800a0563029375400715980099b8748020006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c9660026060007005804205a375a00300740c0605a0028158c0a4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa003802a04c40988131026204c40988130c09cdd500111191980080080191198018009801001405e02f01780ba04c30073020375464646644646644a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea408d22010013259800980998139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980d18149baa0018992cc0040062b30013016302a375400313259800800c08e264b30010018124092049024899912cc00400604d13259800981a0014401a04e8188c0c80050301bae001303100240c8605e0028168c0acdd5000c089028408a0450228112060302d302a3754003153302849013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601c60526ea8c040c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601000204660020026eb0c030c094dd500a111192cc00400e2646466446601400466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051009205a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81390271bac302a002375a60500026466ec0dd418140009ba73029001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a605a003337149101023a200098008054c0b800600a805100a181800144ca6002015302d00199b8a489023a200098008054c0b8006600e66008008004805100a1818001205c303000140b466e29220102207d0000340a86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900620543758007133006375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720583371666e000056600266e2000520148a40c11481b902c002200c33706002901019b8600148080cdc70020012052375c0068168dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003408c81188888c8cc004004014896600200310058992cc004006266008605800400d133005302c0023300300300140a860580028148c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c00028019020111980180111980418029bab300930223754601260446ea80040088c00800488c8cc00400400c896600200314c103d87a80008992cc004c010006260146604800297ae08998018019813001203e30240014088600a00a4022011008804203030153012375400716403c3011001300c3754025149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241" + : + "590d5b010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90014dc3a400d370e90004c024dd500224444464b300130030028acc004c040dd500540062c808a2b300130050028acc004c040dd500540062c808a2b30013008002899192cc004c05800a00716404c6eb4c050004c040dd5005456600260080051323259800980b001400e2c8098dd6980a00098081baa00a8b201c4038807100e0cc004896600200314bd7044cc04cc040c050004cc008008c0540050124dd2a4001230133014001911919800800801912cc00400629422b30013371e6eb8c05800400e2946266004004602e002808901448c04cc050c05000644646600200200644660060026004004911111199119911919912cc004c03cc06cdd500144c8c8c8c8c8ca60026eb0c094006604a00b30250049812801cc0940092222259800981580344cc030c0a802c4cc0300104cc03000c4cc0300085660026034604c6ea8006264646644b3001302f00389919912cc004c0c800e33001374a900148c0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc00646064606660666066606660666066606600323032303330333033303330333033001912cc004c08cc0bcdd500144c8c966002606c0050038b2066375a606800260606ea800a2c81724606460666066606660660032259800800c52000899b8048008cc008008c0d00050314c0b4dd50144dc4240009111111111919912cc004c0b40162b30019800981e981d1baa0209bac300b303a3754063300a303a37540633756601260746ea80c500144c0126002041031a400080122c81c22b3001302f0058acc0066002605260746ea80826eb0c02cc0e8dd5018cc028c0e8dd5018cdd59804981d1baa03140051337113001020818d2000400890004590384566002606400b13259800cc004c0a0c0ecdd5010cdd61806181d9baa0329805981d9baa0329bab300a303b375406480122b30013005001898174c004086065001400d1640e51640e46eb4c0f4c0e8dd501a44c96600330013028303b37540433758601860766ea80ca601660766ea80ca6eacc028c0ecdd501920048acc004c0140062605d30010218194cdc1000a4002801a2c81ca2c81c8dd6981e981d1baa03440e081c10381111919912cc004cdc39bad30410010028992cc004cc896600200314a11329800992cc004c0d8c108dd5000c4dd6982198231bab3046304337540031480010411822800cdd798229823000cdd58012444b30010018acc004c008016266e2520000038a50410d1325980099baf30450014c010140008acc004cdc49bad304630493756608c00200913003374c609400514a082222b300133712900000244c00c01a2941044208830480014118329800800c00e446608c0046608c6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1100066eacc11400660920069112cc004cdc8a441000038acc004cdc7a44100003899802981c198251ba60024bd70000c4cc015300103d87a8000006411919800803c006446600e0046609866ec0dd48029ba6004001401c8230608e004822a2942294229410461bab302e002374c6608266ec0c108004dd31982099bb030423043001375066e0400c0152f5bded8c097adef6c608801c5903d1bac304130423042304230423042303e375400d1640f0b3001302f30050018a40011598009820000c4c96600266e3cdd7181e000a44104555344720089bad303d0018b2076303f0018b207a40e86464b30013031303d37540031325980099baf3042303f37546084607e6ea8c0b8c0fcdd50009808998209ba90034bd7044c9660026070607e6ea80062646601e002264b30013035304137540031325980099baf304630433754608c60866ea8004c054cc114dd4803a5eb82264b3001303c3043375400313233013001133047375066e04dd6982418229baa001375a6090608a6ea8014cc11cdd3194c0040066eacc0d4c118dd50024c8cc004004dd5981b18239baa30363047375401244b30010018a5eb7bdb1822646609666ec0c120004dd319198008009bab304a0022259800800c52f5bded8c11323304e3376060960026ea0cdc0a40006eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0924004444b30010028800c4c8cc8a600200d304f0059919800800802912cc00400626609e66ec0dd48021ba60034bd6f7b63044ca60026eb8c1340066eacc13800660a40049112cc004cdc8004001c4cc14ccdd81ba9008374c00e00b15980099b8f0080038992cc004c114c144dd5000c4cc150cdd81ba90093055305237540020051002414064b300159800800c528c52820a68a6103d87a8000898211982a1ba60014bd7020a0329800800c022006800888966002005100189919914c00401a60b600b32330010010052259800800c4cc16ccdd81ba9004375000697adef6c608994c004dd7182c800cdd6982d000cc1780092225980099b9000800389982f99bb037520106ea001c0162b30013371e010007132598009828982e9baa00189983019bb0375201260c260bc6ea800400a200482e0c96600260a200314c0103d87a800089827198301ba80014bd7020b83370000e00513305f337606ea400cdd400119803003000a0b6416c305c00141688030dd7182a0009bad305500130570024155133053337606ea400cdd300119803003000a09e413c305000141388030dd718240009bab3049001304b002412497ae0304730443754003164108606060866ea80062c8208c114c108dd5000c59040198149bac302e3041375401046606060566eacc0c4c108dd5000803182198201baa0018b207c302c303f3754605c607e6ea80062c81e8c104c0f8dd5000c52f5c30100008101a00020783302437586080607a6ea8010004dd7181f981e1baa3009303c3754008664464b30013033303d375400314bd6f7b63044dd59820981f1baa00140f0646600200200644b30010018a60103d87a8000899192cc004cdc8802800c56600266e3c0140062606266086608200497ae08a60103d87a800040fd133004004304500340fc6eb8c0fc004c1080050401bab3008303b37540046eb8c0a8c0ecdd51804181d9baa003222232330010010052232598009819000c4cc0b4018dd71821181f9baa0028acc004c0d0006264660020026eb0c10cc100dd5001912cc00400629462b30013300500530440018998010011822800c528207e4109159800981b800c4c8cc004004dd6182198201baa0032259800800c52845660026600a00a608800314a3133002002304500140fc82122b3001303300189919b89375a608600264660020026eb0c110c114008896600200314800226644b300133008008002899b800014800a20028210c114004cc008008c118005043181f9baa0028acc004cdc3a40100031332259800981b18201baa0018992cc004c0dcc104dd5181898211baa3031304237540111337120020071337100020068200dd6982218209baa0018a5040fc6eb4c108c0fcdd50011821181f9baa302e303f375400b15980099b874802800626644b300130363040375400313259800981b98209baa303130423754608a60846ea8022266e2400c006266e2000c0050401bad30443041375400314a081f8dd69821181f9baa0023042303f37546084607e6ea8016264646600200200c44b30010018a508acc004cdd780198209822800c528c4cc008008c11800504020863011330413042303f375400497ae040f481e903d207a40f481e8c0f4dd50009801801a2c8178dd718178009bae302f00a302f0098b2058375c60580026eb8c0b0008c0b0004c09cdd5000c590254590280c094004c090004c08c004c088004c084004c070dd500145901a1804980d1baa32598009807180d1baa0018992cc004c050c06cdd5000c4c966002602060386ea8006264646644b300130250038802c5902218110009bae30220023022001301d375400316406c603e60386ea80062c80d0c020c06cdd51805180d9baa301e301b3754003164064660026eb0c024c068dd500880b9802002111980180111980518029bab300b301c3754601660386ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c010006260186603c00297ae089980180198100012034301e0014070600c00c44464b3001300c001899192cc004c07c00a0091640706eb8c074004c064dd5001c566002601c00313259800980f000c4cc018dd6180e800912cc00400a00b19800803cc07c00a260026040004803901d45901b180c9baa0038acc004c044006264b3001301e0018998031bac301d0012259800801401633001007980f80144c004c080009007203a8b2036301937540071598009806800c4c8cc896600260400031330083758603e00244b3001002803c6600201330210028980098110012012407d1640746eb4c074004c078004c064dd5001c56600266e1d2008001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200a001899192cc004c07c00a0091640706eb4c074004c064dd5001c56600266e1d200c001899192cc004c07c00a0091640706eb8c074004c064dd5001c59017202e405c80b9017202e405c602e6ea80088b2010180480098021baa00a8a4d13656400801", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/src/generated-types/v0_3/index.ts b/modules/realfi-partner-sdk/src/generated-types/v0_3/index.ts new file mode 100644 index 0000000000..62890731a2 --- /dev/null +++ b/modules/realfi-partner-sdk/src/generated-types/v0_3/index.ts @@ -0,0 +1,409 @@ +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { type Script } from "@blaze-cardano/core"; +import { Type, Exact, TPlutusData } from "@blaze-cardano/data"; +type Data = Exact; +type Int = bigint; +type ByteArray = string; +const PolicyId = Type.String(); +type OutputReference = { output_index: bigint; transaction_id: string }; + +const Contracts = Type.Module({ + Bool: Type.Boolean(), + COSESign1: Type.Object({ + headers: Type.Ref("Headers"), + payload: Type.Optional( + Type.String() + ), + signature: Type.String(), + }, { ctor: 0n }), + HeaderMap: Type.String(), + Headers: Type.Object({ + protected: Type.Ref("HeaderMap"), + unprotected: Type.Ref("HeaderMap"), + }, { ctor: 0n }), + MultisigScript: Type.Union([ + Type.Object({ + Signature: Type.Object({ + key_hash: Type.String(), + }, { ctor: 0n }) + }), + Type.Object({ + AllOf: Type.Object({ + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 1n }) + }), + Type.Object({ + AnyOf: Type.Object({ + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 2n }) + }), + Type.Object({ + AtLeast: Type.Object({ + required: Type.BigInt(), + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 3n }) + }), + Type.Object({ + Before: Type.Object({ + time: Type.BigInt(), + }, { ctor: 4n }) + }), + Type.Object({ + After: Type.Object({ + time: Type.BigInt(), + }, { ctor: 5n }) + }), + Type.Object({ + Script: Type.Object({ + script_hash: Type.String(), + }, { ctor: 6n }) + }), + ]), + Asset: Type.Tuple([ + Type.String(), + Type.String(), + ]), + Destination: Type.Object({ + address: Type.Object({ + payment_credential: Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([ + Type.String(), + ], { ctor: 0n }) + }), + Type.Object({ + Script: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + ]), + stake_credential: Type.Optional( + Type.Union([ + Type.Object({ + Inline: Type.Tuple([ + Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([ + Type.String(), + ], { ctor: 0n }) + }), + Type.Object({ + Script: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + ]), + ], { ctor: 0n }) + }), + Type.Object({ + Pointer: Type.Object({ + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt(), + }, { ctor: 1n }) + }), + ]) + ), + }, { ctor: 0n }), + datum: Type.Union([ + Type.Literal("NoDatum", { ctor: 0n }), + Type.Object({ + DatumHash: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + Type.Object({ + InlineDatum: Type.Tuple([ + TPlutusData, + ], { ctor: 2n }) + }), + ]), + }, { ctor: 0n }), + ExtraProtocolRedeemer: Type.Object({ + request_to_outputs: Type.Record( + Type.Number(), + Type.BigInt(), + ), + }, { ctor: 0n }), + Nonce: Type.Union([ + Type.Object({ + UTxO: Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + ], { ctor: 0n }) + }), + Type.Object({ + Validity: Type.Tuple([ + Type.Object({ + lower_bound: Type.Object({ + bound_type: Type.Union([ + Type.Literal("NegativeInfinity", { ctor: 0n }), + Type.Object({ + Finite: Type.Tuple([ + Type.BigInt(), + ], { ctor: 1n }) + }), + Type.Literal("PositiveInfinity", { ctor: 2n }), + ]), + is_inclusive: Type.Ref("Bool"), + }, { ctor: 0n }), + upper_bound: Type.Object({ + bound_type: Type.Union([ + Type.Literal("NegativeInfinity", { ctor: 0n }), + Type.Object({ + Finite: Type.Tuple([ + Type.BigInt(), + ], { ctor: 1n }) + }), + Type.Literal("PositiveInfinity", { ctor: 2n }), + ]), + is_inclusive: Type.Ref("Bool"), + }, { ctor: 0n }), + }, { ctor: 0n }), + ], { ctor: 1n }) + }), + Type.Object({ + Nullifier: Type.Tuple([ + Type.String(), + ], { ctor: 2n }) + }), + ]), + OrderAction: Type.Union([ + Type.Object({ + OMint: Type.Object({ + amount: Type.BigInt(), + }, { ctor: 0n }) + }), + Type.Object({ + ORedeem: Type.Object({ + amount: Type.BigInt(), + }, { ctor: 1n }) + }), + ]), + OrderDatum: Type.Object({ + owner: Type.Ref("MultisigScript"), + destination: Type.Ref("Destination"), + action: Type.Ref("OrderAction"), + data: TPlutusData, + }, { ctor: 0n }), + OrderRedeemer: Type.Union([ + Type.Literal("Execute", { ctor: 0n }), + Type.Literal("Cancel", { ctor: 1n }), + ]), + ProtocolRedeemer: Type.Union([ + Type.Object({ + Mint: Type.Object({ + requests: Type.Array( + Type.Ref("Request") + ), + }, { ctor: 0n }) + }), + Type.Object({ + Burn: Type.Object({ + requests: Type.Array( + Type.Ref("Request") + ), + }, { ctor: 1n }) + }), + Type.Object({ + Withdraw: Type.Object({ + withdraw_amount: Type.BigInt(), + }, { ctor: 2n }) + }), + Type.Object({ + Deposit: Type.Object({ + deposit_amount: Type.BigInt(), + }, { ctor: 3n }) + }), + ]), + ProxyDatum: Type.Object({ + logic: Type.String(), + settings: Type.Ref("Settings"), + }, { ctor: 0n }), + Registry: Type.Object({ + treasury: Type.String(), + usdr: Type.String(), + order: Type.String(), + }, { ctor: 0n }), + Request: Type.Object({ + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + origin: Type.Optional( + Type.String() + ), + }, { ctor: 0n }), + Settings: Type.Object({ + mint_permission: Type.Ref("MultisigScript"), + burn_permission: Type.Ref("MultisigScript"), + withdraw_permission: Type.Ref("MultisigScript"), + deposit_permission: Type.Ref("MultisigScript"), + registry: Type.Ref("Registry"), + reserve_token: Type.Ref("Asset"), + }, { ctor: 0n }), + SigWithKey: Type.Tuple([ + Type.String(), + Type.Ref("COSESign1"), + ]), + SignatureList: Type.Array( + Type.Ref("SigWithKey") + ), + SignedPayload_ProtocolRedeemer: Type.Object({ + action: Type.Ref("ProtocolRedeemer"), + nonce: Type.Ref("Nonce"), + }, { ctor: 0n }), + SignedRedeemer_ExtraProtocolRedeemer: Type.Object({ + extra: Type.Ref("ExtraProtocolRedeemer"), + payload: Type.String(), + signatures: Type.Ref("SignatureList"), + }, { ctor: 0n }), +}); + +export const Bool = Contracts.Import("Bool"); +export type Bool = Exact; +export const COSESign1 = Contracts.Import("COSESign1"); +export type COSESign1 = Exact; +export const HeaderMap = Contracts.Import("HeaderMap"); +export type HeaderMap = Exact; +export const Headers = Contracts.Import("Headers"); +export type Headers = Exact; +export const MultisigScript = Contracts.Import("MultisigScript"); +export type MultisigScript = Exact; +export const Asset = Contracts.Import("Asset"); +export type Asset = Exact; +export const Destination = Contracts.Import("Destination"); +export type Destination = Exact; +export const ExtraProtocolRedeemer = Contracts.Import("ExtraProtocolRedeemer"); +export type ExtraProtocolRedeemer = Exact; +export const Nonce = Contracts.Import("Nonce"); +export type Nonce = Exact; +export const OrderAction = Contracts.Import("OrderAction"); +export type OrderAction = Exact; +export const OrderDatum = Contracts.Import("OrderDatum"); +export type OrderDatum = Exact; +export const OrderRedeemer = Contracts.Import("OrderRedeemer"); +export type OrderRedeemer = Exact; +export const ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +export type ProtocolRedeemer = Exact; +export const ProxyDatum = Contracts.Import("ProxyDatum"); +export type ProxyDatum = Exact; +export const Registry = Contracts.Import("Registry"); +export type Registry = Exact; +export const Request = Contracts.Import("Request"); +export type Request = Exact; +export const Settings = Contracts.Import("Settings"); +export type Settings = Exact; +export const SigWithKey = Contracts.Import("SigWithKey"); +export type SigWithKey = Exact; +export const SignatureList = Contracts.Import("SignatureList"); +export type SignatureList = Exact; +export const SignedPayload_ProtocolRedeemer = Contracts.Import("SignedPayload_ProtocolRedeemer"); +export type SignedPayload_ProtocolRedeemer = Exact; +export const SignedRedeemer_ExtraProtocolRedeemer = Contracts.Import("SignedRedeemer_ExtraProtocolRedeemer"); +export type SignedRedeemer_ExtraProtocolRedeemer = Exact; + +export class V0_3OrderOrderSpend { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "590e80010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004896600200314bd7044cc068c05cc06c004cc008008c070005019488c8cc00400400c88cc00c004c00800a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80b24444646600200200a44b30010018802c4c9660020031330043020002006899802981000119801801800a03c302000140752232330010010032259800800c5300103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444453001300600698020024888ca6002003004801a00222232598009809800c4c9660020030068992cc00400600f007803c01e264b3001302a003802c0210271bae00140a8604e0028128c08cdd5001c566002603000313259800800c01a264b3001001803c01e264b3001302a003899807800912cc00400a00f13259800800c66002015001898011816801a014805c02e01700b40b86056004814a0108138dd6000c01e00e8150c09c00502518119baa0038acc004c038006264b300100180344c966002003007803c4c966002605400713300f0012259800801401e264b30010018cc00402a00313002302d003402900b805c02e0168170c0ac00902940210271bac001803c01d02a1813800a04a3023375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605a0071330120012259800801402a264b30010018cc004036003130023030003403500e807403a01c8188c0b800902c402d02a1bac001805402902d1815000a050375a002605200500740a8604e0028128c08cdd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0a800e00b008409c6eb400600e8150c09c00502518119baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815001c0160108138dd6800c01d02a1813800a04a3023375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815001c0160108138dd7000a0543027001409460466ea800e00a8101020204040808101020204030213754005330023758603e60386ea80408cdd79810180e9baa00100f48888c8c8cc88c966002602a60486ea801a264b3001301b3025375400315980099b8f375c6052604c6ea8004dd7180598131baa3029302a302a302a302a302637546026604c6ea8c96600200319800800c40060448022045022811408902c198011bac30133026375403404513233225330273372c92010d63726564656e7469616c3a3a200037326600e0049101001330170010023374a9001198149ba90014bd701bab3016302737540366eb8c0a4c098dd5198011bac301330263754034045153302449013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016408d153302449132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f637265640016408c6050604a6ea8c0a0c094dd5180918129baa30283025375400d15330234913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408844a6604866e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980b98131baa00189929981319b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a18141baa0018992cc004006330010018800c095007409604b025812a05e302c3029375400315330274913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601a60506ea8c054c0a0dd5000981518139baa0018a99812a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640906601800446602660166eacc050c09cdd5180a18139baa001002300100122259800980a98121baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302e0028acc004c068c0a4dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200301280944c9660026076007198008064660020151980080446600200d1598009813981b1baa0048992cc00400602913259800800c05602b01580ac4cc89660020030178992cc00400603101880c406226644b300100180d44c96600200301b80dc06e037132598009822001c56600201501c8992cc00400603b01d80ec07626644b300100180fc4c9660020030208104082041132598009824801c08a0428230dd7000a092304600141106eb8004c11402d0461821805208280e2082375c0028220c10400503f1bae00130400024104607c00281e0dd7000981e801207c303b00140e4606e6ea801202681a202680ca02680ca02680ca02680ca02681c0dd6000c04a02481d8c0e0005036181c00140420210108082072303600140d0606c00500e807403a01c81b8c0d0005032181a001403201900c806206a303200140c0606400500a805402a0148198c0c000502e181800140220110088042062302e00140b060546ea800600c813a00c815a00d006803401902f1816000a054375c00260560048160c0a400502718129baa003800a0442223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020545980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81210241bac3027002375a604a0026466ec0dd418128009ba73026001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6054003337149101023a200098008054c0ac00600a805100a181680144ca6002015302a00199b8a489023a200098008054c0ac006600e66008008004805100a18168012056302d00140a866e29220102207d00003409c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d204e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720523371666e000056600266e2000520148a40c11481b9029002200c33706002901019b8600148080cdc7002001204c375c0068150dc5245022c20002232330010010032259800980a000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408481088acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" + : + "5906f2010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc004896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a60103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a4444646466446644b30013010301c375400313259800980b180e9baa0018acc004cdc79bae3021301e37540026eb8c020c078dd518109811181118111811180f1baa300e301e3754646600c0022002660066eb0c038c078dd500a80dc4cc03cdd59808180f1baa0153374a9001198101810980f1baa330033758601c603c6ea805406d2f5c11640711640706040603a6ea8c080c074dd51806980e9baa3020301d375400316406c4464b30013011301d3754003132598009806980f1baa0018991980380088009811180f9baa0018b203a3008301e3754601c603c6ea8c084c078dd5000c5901c1980400111980698021bab300e301e3754601c603c6ea8004008cc018dd6180f180d9baa01223375e603e60386ea80040448966002601c60346ea800a2646644b300130220018992cc004c048c078dd5000c4c8c8c8c8c8ca60026eb0c0a0006605000b30280049814001cc0a00092222259800981700344cc048c0b402c4cc0480104cc04800c4cc048008566002603a60526ea800626464653001375c6060003375c6060007375c60600049112cc004c0d00122646644b3001303700380cc590341bae3034001375c606801860680171640c43030001302f001302a37540031640a11640ac30280013027001302600130250013024001301f3754003164074604200316407c6eb8c07c004c080004c06cdd500145901918030031800800911192cc004c03800626464b3001302100280245901e1bae301f001301b37540071598009809800c4c96600260400031330083758603e00244b3001002802c6600200f3021002898009811001200e407d16407460366ea800e2b300130090018992cc004c0800062660106eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c56600266e1d200600189919912cc004c0880062660146eb0c08400489660020050078cc00402660460051300130240024024810a2c80f8dd6980f8009810000980d9baa0038acc004cdc3a40100031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40140031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40180031323259800981080140122c80f0dd7180f800980d9baa0038b2032406480c90192032406480c8c064dd500122b300130063012375400f19800980b18099baa30163013375400f3758602c602e602e602e602e602e602e602e602e60266ea802a602c602e602e602e602e602e602e602e60266ea802a6eacc014c04cdd500524444646600200200a4464b3001300d0018998048031bae301d301a37540051598009809000c4c8cc004004dd6180f180d9baa0032259800800c528c5660026600a00a603e00313300200230200018a50406880ea2b30013008001899198008009bac301e301b375400644b30010018a508acc004cc014014c07c0062946266004004604000280d101d456600266e1d200600189919b89375a603c00264660020026eb0c07cc080008896600200314800226644b300133008008002899b800014800a200280e8c080004cc008008c08400501e180d1baa0028acc004cdc3a4010003132332259800980a980e1baa0028acc004c054c070dd518101810801c4cdc49bad3020301d37540040031337106eb4c080c074dd5001000a0368a50406c603c0026eb4c078c06cdd5001980d1baa300a301a375400b15980099b87480280062646644b30013015301c3754005159800980a980e1baa30203021003899b89001375a6040603a6ea800a266e20004dd69810180e9baa002406d14a080d8c078004dd6980f180d9baa003301a3754603a60346ea801626601600866e9520023301c301d301a375400497ae0406080c10182030406080c0c060dd5000a2c80890110c034dd50040c028dd5001c590080c024004c010dd5004c52689b2b200401", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_3OrderOrderElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "590e80010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004896600200314bd7044cc068c05cc06c004cc008008c070005019488c8cc00400400c88cc00c004c00800a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80b24444646600200200a44b30010018802c4c9660020031330043020002006899802981000119801801800a03c302000140752232330010010032259800800c5300103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444453001300600698020024888ca6002003004801a00222232598009809800c4c9660020030068992cc00400600f007803c01e264b3001302a003802c0210271bae00140a8604e0028128c08cdd5001c566002603000313259800800c01a264b3001001803c01e264b3001302a003899807800912cc00400a00f13259800800c66002015001898011816801a014805c02e01700b40b86056004814a0108138dd6000c01e00e8150c09c00502518119baa0038acc004c038006264b300100180344c966002003007803c4c966002605400713300f0012259800801401e264b30010018cc00402a00313002302d003402900b805c02e0168170c0ac00902940210271bac001803c01d02a1813800a04a3023375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605a0071330120012259800801402a264b30010018cc004036003130023030003403500e807403a01c8188c0b800902c402d02a1bac001805402902d1815000a050375a002605200500740a8604e0028128c08cdd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0a800e00b008409c6eb400600e8150c09c00502518119baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815001c0160108138dd6800c01d02a1813800a04a3023375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815001c0160108138dd7000a0543027001409460466ea800e00a8101020204040808101020204030213754005330023758603e60386ea80408cdd79810180e9baa00100f48888c8c8cc88c966002602a60486ea801a264b3001301b3025375400315980099b8f375c6052604c6ea8004dd7180598131baa3029302a302a302a302a302637546026604c6ea8c96600200319800800c40060448022045022811408902c198011bac30133026375403404513233225330273372c92010d63726564656e7469616c3a3a200037326600e0049101001330170010023374a9001198149ba90014bd701bab3016302737540366eb8c0a4c098dd5198011bac301330263754034045153302449013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016408d153302449132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f637265640016408c6050604a6ea8c0a0c094dd5180918129baa30283025375400d15330234913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408844a6604866e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980b98131baa00189929981319b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a18141baa0018992cc004006330010018800c095007409604b025812a05e302c3029375400315330274913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601a60506ea8c054c0a0dd5000981518139baa0018a99812a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640906601800446602660166eacc050c09cdd5180a18139baa001002300100122259800980a98121baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302e0028acc004c068c0a4dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200301280944c9660026076007198008064660020151980080446600200d1598009813981b1baa0048992cc00400602913259800800c05602b01580ac4cc89660020030178992cc00400603101880c406226644b300100180d44c96600200301b80dc06e037132598009822001c56600201501c8992cc00400603b01d80ec07626644b300100180fc4c9660020030208104082041132598009824801c08a0428230dd7000a092304600141106eb8004c11402d0461821805208280e2082375c0028220c10400503f1bae00130400024104607c00281e0dd7000981e801207c303b00140e4606e6ea801202681a202680ca02680ca02680ca02680ca02681c0dd6000c04a02481d8c0e0005036181c00140420210108082072303600140d0606c00500e807403a01c81b8c0d0005032181a001403201900c806206a303200140c0606400500a805402a0148198c0c000502e181800140220110088042062302e00140b060546ea800600c813a00c815a00d006803401902f1816000a054375c00260560048160c0a400502718129baa003800a0442223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020545980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81210241bac3027002375a604a0026466ec0dd418128009ba73026001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6054003337149101023a200098008054c0ac00600a805100a181680144ca6002015302a00199b8a489023a200098008054c0ac006600e66008008004805100a18168012056302d00140a866e29220102207d00003409c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d204e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720523371666e000056600266e2000520148a40c11481b9029002200c33706002901019b8600148080cdc7002001204c375c0068150dc5245022c20002232330010010032259800980a000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408481088acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" + : + "5906f2010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc004896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a60103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a4444646466446644b30013010301c375400313259800980b180e9baa0018acc004cdc79bae3021301e37540026eb8c020c078dd518109811181118111811180f1baa300e301e3754646600c0022002660066eb0c038c078dd500a80dc4cc03cdd59808180f1baa0153374a9001198101810980f1baa330033758601c603c6ea805406d2f5c11640711640706040603a6ea8c080c074dd51806980e9baa3020301d375400316406c4464b30013011301d3754003132598009806980f1baa0018991980380088009811180f9baa0018b203a3008301e3754601c603c6ea8c084c078dd5000c5901c1980400111980698021bab300e301e3754601c603c6ea8004008cc018dd6180f180d9baa01223375e603e60386ea80040448966002601c60346ea800a2646644b300130220018992cc004c048c078dd5000c4c8c8c8c8c8ca60026eb0c0a0006605000b30280049814001cc0a00092222259800981700344cc048c0b402c4cc0480104cc04800c4cc048008566002603a60526ea800626464653001375c6060003375c6060007375c60600049112cc004c0d00122646644b3001303700380cc590341bae3034001375c606801860680171640c43030001302f001302a37540031640a11640ac30280013027001302600130250013024001301f3754003164074604200316407c6eb8c07c004c080004c06cdd500145901918030031800800911192cc004c03800626464b3001302100280245901e1bae301f001301b37540071598009809800c4c96600260400031330083758603e00244b3001002802c6600200f3021002898009811001200e407d16407460366ea800e2b300130090018992cc004c0800062660106eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c56600266e1d200600189919912cc004c0880062660146eb0c08400489660020050078cc00402660460051300130240024024810a2c80f8dd6980f8009810000980d9baa0038acc004cdc3a40100031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40140031323259800981080140122c80f0dd6980f800980d9baa0038acc004cdc3a40180031323259800981080140122c80f0dd7180f800980d9baa0038b2032406480c90192032406480c8c064dd500122b300130063012375400f19800980b18099baa30163013375400f3758602c602e602e602e602e602e602e602e602e60266ea802a602c602e602e602e602e602e602e602e60266ea802a6eacc014c04cdd500524444646600200200a4464b3001300d0018998048031bae301d301a37540051598009809000c4c8cc004004dd6180f180d9baa0032259800800c528c5660026600a00a603e00313300200230200018a50406880ea2b30013008001899198008009bac301e301b375400644b30010018a508acc004cc014014c07c0062946266004004604000280d101d456600266e1d200600189919b89375a603c00264660020026eb0c07cc080008896600200314800226644b300133008008002899b800014800a200280e8c080004cc008008c08400501e180d1baa0028acc004cdc3a4010003132332259800980a980e1baa0028acc004c054c070dd518101810801c4cdc49bad3020301d37540040031337106eb4c080c074dd5001000a0368a50406c603c0026eb4c078c06cdd5001980d1baa300a301a375400b15980099b87480280062646644b30013015301c3754005159800980a980e1baa30203021003899b89001375a6040603a6ea800a266e20004dd69810180e9baa002406d14a080d8c078004dd6980f180d9baa003301a3754603a60346ea801626601600866e9520023301c301d301a375400497ae0406080c10182030406080c0c060dd5000a2c80890110c034dd50040c028dd5001c590080c024004c010dd5004c52689b2b200401", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_3ProtocolProtocolWithdraw { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5948aa010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013a657870656374206d61746368696e675f6f75747075745f6964783a20496e74203d206d61746368696e675f6f75747075745f6964785f6461746100168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a494c657870656374207369676e65645f7061796c6f61643a205369676e65645061796c6f61643c50726f746f636f6c52656465656d65723e203d207369676e65645f7061796c6f61645f6461746100168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888966002646530013014001980a180a800cdc3a400930140024888966002600460286ea800e264b30010058999119912cc004c010c064dd5004c4c96600200300d8992cc004006264b3001001807c4c96600200301080840420211332259800800c04a264b3001001809c04e264b300130260038acc004c030c084dd5003c4c9660020030158992cc00400602d132598009814801c4cc030004896600200513300e0062259800801466002444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c814a6e05200091111919800800802912cc004006200b13259800800c4cc010c0cc00801a26600a6066004660060060028188c0cc0050304dc0240032259800800c52f5c113302d302a302e00133002002302f00140b1374a900048c0b4c0b800644646600200200644b30010018a508acc004cdc79bae30300010038a518998010011818800a05440b92302d302e302e0014888888888cc8a600244646600200200644b30013022001899b8a4890130000038acc004cdc4000a40011337149101012d0033002002300e00189980319b8400148050cdc599b803370a002900a240c000681a903548c00800644646600200200644b30010018a6103d87a80008992cc004c010006260166607600297ae0899801801981e801206c303b00140e4911191991192cc00400633001370e90034dc3a4011370e9005244464b30013029303e375400b13259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c0fa07d132598009828001c6600201919800805466002011198008034566002606c60966ea8012264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4c96600260b20071598008054122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260bc0071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc724503020408003370000490189180119bca4a2003124bded8c101400001012000416c82d905b488888ca600200300380120022225980099b89002480022600297ae08919194c00401a607200b23005330680020019bad3065002401860c60033001009804400500720be9b87483f80e6e0120029119bb00023750002911111991191919192cc004c13cc190dd5000c4c9660020031323298009112cc004c154c1a8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800983b00146600200d19800800c02601082d2010805a010839a0110088044021077183a000a0e4375a00260e600500541d060e20028378c1c400a007003801c00d0721837800a0da306b375400700141a11325330673372c9211c5b70726f746f636f6c5d20566572696679696e67206e6f6e63653a2000373266062607460d26ea801122010019800918369837183718371837183718371837000c89660020031480022601c6600400460de002836244646600200200644b30010018a508acc004c00cc1c0006294626600400460e2002835106e4dd2a40049111191929983699b964901205b70726f746f636f6c5d207665726966795f6e6f6e636520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041b0910100159800800c6600260e460de6ea802a44646600200200644b30010018a40011332259800980280144c06000620028390c1d8004cc008008c1dc005074488c8cc00400400c896600200314a115980099baf003307230760018a51899801001183b800a0e041d12232330010010032259800800c528c566002600660ec00313300200230770018a5041c083a2460e660e860e860e860e860e860e860e860e8003230733074307430743074307430740019112cc004c170c1c4dd5001c4c9660020030028992cc004006007003801c4c96600260f200700580220ec375a00300341e460ec00283a0c1c8dd5001c00506f48c1ccc1d0c1d0c1d0c1d00064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e8899802802983d80220e8375c60e80026eacc1d4004c1dc0050750a5eb7bdb18244b30010018a40011301433002002307500141c923073307430743074307430740019112cc00400a298103d87a80008acc004c17000626088660e860ea00497ae08cc00400e60ec0053046001400c837907348966002003148002260286600400460ea002839244b30010018a5eb82264660e86ea0004cc00c00cc8cc004004c1dc00c896600200314bd7044cc896600330013370e00400b4a14a2839a2660f06ea0008cc0100100062660080080028398dd6983b800983c000a0ea375a60e80028392444646600200200844b300100189983b19bb037520086ea000d2f5bded8c113298009bae30740019bad3075001983c8012444b30013372001000713307a337606ea4020dd4003802c56600266e3c02000e2660f466ec0dd48041ba800700189983d19bb037520066ea0008cc01801800507520ea183b800a0ea911919800800801912cc004006297ae0899912cc004cdd7983c183a9baa307830753754608c60ea6ea8008c024cc1dcdd4802a5eb822660ee0046600800800313300400400141c860ec00260ee00283a244b30010018a40011301433002002307500141c93710900024444444444444444453001222232330010010052232598009839000c4cc160018dd71845809844009baa0028acc004c1c400626602c6eb0c22c04c22004dd5001119802002000c56600260ea00313301d37586116026110026ea80088cc0100100062b3001304d00189919b89375a611802002660326eb0c23004c234040048cc014014004c22004dd500145660026098003132332259800983a1845009baa0028acc004c1d0c22804dd5184700984780801c4cdc49bad308e01308b0137540040031337106eb4c23804c22c04dd5001000a110028a504220046118020026eb4c23004c22404dd50019844009baa3059308801375400b1598009825800c4c8cc896600260e86114026ea800a2b30013074308a013754611c02611e020071337120026eb4c23804c22c04dd500144cdc40009bad308e01308b01375400484400a2941088011846008009bad308c0130890137540066110026ea8c22c04c22004dd5002c4cc05c010c070cc22804c22c04c22004dd500125eb8108501210a0242140484280908501210a02308601375400330090099840009baa0129111191980080080291192cc004c1c8006264a6610e0266e59240121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660a26ea400522010013259800983a1844809baa001899194c004dd7184780800cdd7184780984800800cdd71847808012444a6611a029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308d013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660ae6ea4005220100153308d013372c9201187665726966795f65643235353139207061796c6f61643a20003732660ae6ea4009220100153308d013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660ae6ea400d22010013253308e013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660b13001001a60103d87a8000a60103d879800042340491010010019800800c00a006b950c23c04004dd61846809845009baa0018a998440099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660a46ea400922010014a0843808c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c611e020020091305e3308e01374e00297ae08998018019848008012112023758611c02002846008dd71845809844009baa0028acc004c1c4006264a6610e0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416c6c4f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301700123300500500137586116026110026ea800a2b300130750018992998438099b96490122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416e794f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301e00123300500500137586116026110026ea800a2b3001304d00189919912998448099b96490112436865636b696e672041744c656173743a20003732660a66ea000922010013253308a013372c92011941744c656173742073617469736669656420636f756e743a20003732660a86ea000522010013253308b013372c92011041744c6561737420726573756c743a20003732660ab3001001a60103d87a8000a60103d87980004228049101001001337120060026603600246600e00e0026eb4c23004004dd61846009846808009844009baa0028acc004c130006264a6610e0266e5924111436865636b696e67204265666f72653a20003732660a26ea0005220100132533088013372c92010f4265666f726520726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc49bad308e01308b0137540020071337106eb4c23804c22c04dd5000801a110028a50422004611a020026112026ea8c168c22404dd50031bad308b0130880137540051598009825800c4c94cc21c04cdcb24910436865636b696e672041667465723a20003732660a26ea0005220100132533088013372c92010e416674657220726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc48019bad308e01308b0137540031337100066eb4c23804c22c04dd5000a110028a50422004611a020026112026ea8c23004c22404dd50031bad308b013088013754005132533087013372c920111436865636b696e67205363726970743a20003732660a26ea4005220100132533088013372c92010f53637269707420726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c04910100100133018005301d3308b01375200297ae0375c6116026110026ea800908501210a0242140484280908501210a023086013754003300700798030034c0140164446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803210e02899802802984700802210e02375c610e020026eb4c22004004c2280400508801198070020018a400130020024888888888ca6002444b30013370e60180046010600e646600200200644b30010018a5eb8226612402611e026126020026600400461280200284880a2646600200200644b30010018a5eb8410100008101a0008101a00044c8c8c8cc896600260fe6128026ea800a264b3001300900189984c009ba8337006eb4c26404008dd69833984b009baa0013309801374c64b300130800130960137540031375660d000713756613402612e026ea800509401192cc004c20004c25804dd5000c530103d87a8000898349984c809ba698009bab30680039bae309a013097013754003005406897ae042500460ca612c026ea8004cc26004dd34c004dd598328014dd9984c80984d00802c01101925eb822a66128029211a6578706563742076616c69646174696f6e2872657175657374290016424c04613002612a026ea800a2a661260292012f65787065637420536f6d65287265717565737429203d206c6973742e61742874612c20726571756573745f696478290016424804660120100026600a00a612e020086eb4c25404004cc24c04c24004004cc24c04c244040052f5c061260200284880a2a66118029201886578706563740a202020206c6973742e6c656e67746828726571756573745f746f5f6f75747075747329203d3d206c6973742e6c656e677468280a2020202020206c6973742e756e69717565286c6973742e6d617028726571756573745f746f5f6f7574707574732c20666e286974656d29207b206974656d2e317374207d29292c0a20202020290016422c0522225980099b873022004302200389980e8021192cc004c1ecc24004dd5000c4c96600260f86122026ea800626644b3001308101309301375400313259800800c4c966002610002612a026ea800a264b300100184880c4c96600200313259800800c24c06264b30010018992cc00400612a0313259800800c4c966002003097018992cc004c2880400a330010078cc004016264b30013089010018992cc0040061340313259800800c26c061360309b018992cc004c2980400e01b09c01428c046eb400613602853008c28c040050a101184f809baa0048acc004c22004006264b300100184d00c4c96600200309b0184d80c26c06264b300130a601003806c270050a3011bad00184d80a14c0230a301001428404613e026ea80121320284e00909c01184e809baa00384c00a06e84c00a0c084c00a13e0230a0010014278046140020050960184b00c2580612c02850808c2780400509c01184f00801425006128030940184a00a13e02309c010014268046138020050920184900c248061240284e808c2680400509801184b009baa00284800a1260215980099baf30663095013754002613002612a026ea800e2b3001337126eb4c198c25404dd5001cc004dd59833184a809baa3066309501375400d375c61300200f375c60cc00e806a264b3001308001309501375400313370e6eb4c26404c25804dd50009bad3067309601375400913370e6eb4c26404c25804dd50009bad30673096013754008849808c190c25404dd5000c54cc24c05241666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400164248051533093014913865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001642480508f0184780c23c0611e0284d008c25c04c25004dd5000c54cc248052413365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d0016424404612a026124026ea8004c184c24804dd518319849009baa0038a9984800a4814765787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c206d61746368696e675f726571756573745f696478290016423c046600e00a6eb4c25004c24404dd5000c54cc23c0524016565787065637420536f6d65286d61746368696e675f726571756573745f69647829203d0a2020202020202020646963742e676574286d617070696e672c2063626f722e73657269616c69736528696e7075742e6f75747075745f7265666572656e6365292900164238046644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130693309901375000297ae0803212802899802802984d80802212802375c6128020026eb4c25404004c25c04005095011bb330930130900137540022980103d87a80008a9984680a4933657870656374206c6973742e6c656e67746828696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016423005222253308d0149012d5b76616c69646174655f6f7574707574735d205374617274696e67206f75747075742076616c69646174696f6e0015980099b87300600230220038994c004006900040110011112cc004006294626644a661240266e59241305b76616c69646174655f6f7574707574735d2056616c69646174696e67207265717565737420617420696e6465783a20003732660b86ea001122010013259800983f984a009baa0018992cc004c20004c25404dd5000c4c9660020030920184900c2480626464b300130830130980137540031325980099baf309d01309a013754002613a026134026ea8c27404c26804dd5004456600266ebcc1a4c26804dd50009835984d009baa309d01309a0137540111533098013372c92012d5b76616c69646174655f6f7574707574735d20436865636b696e67206f757470757420617420696e6465783a20003732660c46ea000d2201001533098013372c9201245b76616c69646174655f6f7574707574735d20457870656374656420616d6f756e743a20003732660c460d66134026ea80212201001533098013372c9201225b76616c69646174655f6f7574707574735d2041637475616c20616d6f756e743a20003732660c46ea260026eacc1acc26804dd5000cdd7184e808064dd71835806202448900159800803c4cdc3cc004dd59835984d009baa0019bae309d0100c9bae306b00c404864b300133710002900044c1c4006200284c008dd69835984d009baa0088a50425c0515330980149139657870656374206d61746368696e675f6f75747075742e646174756d203d3d20726571756573742e64657374696e6174696f6e2e646174756d0016425c051533098014913d657870656374206d61746368696e675f6f75747075742e61646472657373203d3d20726571756573742e64657374696e6174696f6e2e616464726573730016425c046138026132026ea80062a6612e0292014465787065637420536f6d65286d61746368696e675f6f757470757429203d206c6973742e6174286f7574707574732c206d61746368696e675f6f75747075745f6964782900164258046601c01a0026eb40061240284e008c26404c25804dd5000c54cc250052415b65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f6461746129203d0a202020202020202063626f722e646573657269616c697365286d61746368696e675f6f75747075745f6964785f6279746573290016424c0460646eb8c26004c25404dd5000c54cc24c0524013e65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f627974657329203d20646963742e66696e64286d617070696e672c2069290016424804646600200201044b30010018a60103d87a80008992cc004cdc38039bad309701001898349984c80984b00800a5eb8226600600661360200484a008c2640400509701184a80800cc00400e606a005309601001400c84980a2a6611a0292013265787065637420646963742e73697a65286d617070696e6729203d3d206c6973742e6c656e6774682872657175657374732900164230052223233225980099b87375a6128020020051325980099912cc004006294226530013259800984000984a809baa00189bad3096013099013756613202612c026ea8006290002126023098010019baf3098013099010019bab0024889660020031598009801002c4cdc4a400000714a084a80a264b30013375e61300200298010140008acc004cdc49bad309901309c01375661320200200913003374c613a0200514a084b00a2b300133712900000244c00c01a294109601212c02309b01001426404329800800c00e44661320200466132026e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c25c040066eacc260040066138020069112cc004cdc8a441000038acc004cdc7a4410000389980298369984e809ba60024bd70000c4cc015300103d87a800000642600519800803c006446600e0046613e0266ec0dd48029ba6004001401c84c00861340200484c00a294229422941099011bab3063002374c661280266ec0c25404004dd31984a0099bb0309501309601001375066e0400c0152f5bded8c097adef6c608801c54cc240052401c56578706563740a202020206173736574732e6d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a20202020290016423c046eb0c060c24404dd5003454cc23c052401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e740016423804b30013079300d0018a4001159800800c21806264b30013094010028acc004cdc79bae308f01001488104555344720089bad3090010018a9984700a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200164234050870142440461240200284800908c0119192cc004c1ecc24004dd5000c4c96600266ebcc25404c24804dd5184a809849009baa30633092013754002604c66128026ea400d2f5c1132598009840009849009baa0018992cc004006330010018992cc004c1fcc25004dd5000c4c96600266ebcc26404c25804dd5184c80984b009baa001302a3309801375200e97ae08992cc004c21004c25804dd5000c4c96600200319800800c4cc26804dd419b81375a6136026130026ea8004dd6984d80984c009baa0053309a01374c6530010019bab306a30990137540093233001001375660d66134026ea8c1acc26804dd5004912cc004006297adef6c608991984f0099bb0309b01001374c64660020026eacc27404008896600200314bd6f7b63044c8cc28404cdd8184f008009ba83075375a613e020026600600661460200461420200284f808cc00c00cc28004008c2780400509c012002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd3001a5eb7bdb1822653001375c614002003375661420200330a50100248896600266e4002000e26614c0266ec0dd48041ba60070058acc004cdc7804001c4c966002b30010018a518a5042980510028998538099bb037520126e980040090a201194c0040060110034004444b30010028800c4c8cc8a600200d30ae010059919800800802912cc00400626615c0266ec0dd48021ba80034bd6f7b63044ca60026eb8c2b0040066eb4c2b4040066162020049112cc004cdc8004001c4cc2c804cdd81ba9008375000e00b15980099b8f0080038992cc004c26c0400620051330b301337606ea4024dd4000801215c023370000e0051330b201337606ea400cdd400119803003000a15a0242b40430af0100142b4048030dd71853808009bad30a80100130aa0100242a0051330a601337606ea400cdd300119803003000a1420242840430a3010014284048030dd7184d808009bab309c01001309e0100242700497ae084880a04684880c244061220309101427404613402612e026ea80062a6612a0292012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642500460ca612c026ea80062a661280292013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016424c04613002612a026ea80062a661260292013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c20736372697074290016424804660bc6eb0c18cc25004dd500411983298301bab3066309501375400200d08c01407d08c0184600c230061180284c808c25804c24c04dd5000c54cc244052413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642400460c26124026ea8c18cc24804dd5000c54cc2400524014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016423c046128026122026ea8006297ae110100008101a000211c023305737586126026120026ea8010004dd71849009847809baa3019308f0137540086602e6eacc060c23804dd50011bae305f308e0137546030611c026ea800d222259800983c80644cc894cc23c052411f5b6d696e745d205374617274696e67206d696e742076616c69646174696f6e00159800cc004c25004c24404dd502bc0a660506122026ea81f66eacc074c24404dd503ea01a8a9984780a49205b6d696e745d207361746973666965645f7061796c6f61647320706173736564001323298009bab3096010019bab3096013097010019bad30960100248894cc25004cdcb24812f5b6d696e745d2070726f636573735f7265717565737473207061737365642c2073756d6d65645f616d6f756e743a20003732660bc6ea0005220100132533095013372c92011b5b6d696e745d206f726465725f696e7075747320636f756e743a20003732660be6ea0c0a8005220100159800cc0040060110049bac301e30970137540ba805a2a6612a0292011d5b6d696e745d2076616c69646174655f696e707574732070617373656400159800cc004dd61833184b809baa08301804400e661320260d0612e026ea8c084c25c04dd502e9984c80a601054455534472004bd7020148a9984a80a4811e5b6d696e745d2076616c69646174655f6f7574707574732070617373656400132533096013372c9201215b6d696e745d206d61696e7461696e5f747265617375727920726573756c743a20003732660c13001001a60103d87a8000a60103d879800042540491010010013370f300105d84180d200040240051533095014901816578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a202020202900164250051533095014917a6578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f726967696e5f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016425004660306eb0c26404c25804dd5041009bae306530960137546040612c026ea8170612c020033001002800c8c048dd698319849009baa0014019153308f014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164238046eb0c24804c23c04dd50101bab309201308f013754612402611e026ea81fa2b3001307800c8992cc006600260c26120026ea815a051302730900137540f9375660386120026ea81f100c44c8c9660033001330143758612a026124026ea81f8dd718309849009baa301c30920137540b10039bab3095010019984a0098319849009baa301c30920137540b066128029801054455534472004bd70200c8acc00660026eb0c184c24804dd503f400e6eacc25404c258040066eb0c064c24804dd502c200a899b87980082c41fa90002008375a612a020051533090014901796578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f75747075745f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016423c05153309001491826578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f726967696e5f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a20202020290016423c04612a0200330010019bab30930130900137546126026120026ea81fe466e20dd698311848809baa00148001005454cc23805241856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164234046eb0c24804c23c04dd5010456600260f801913259800cc004c17cc24004dd502b4dd6180e9848009baa07c98139848009baa07c9bab301c30900137540f8807a2b300130100018983d4c00415a0f90014009153308e014911a6578706563742077697468647261775f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501044c9660033001305f30900137540ad3758603a6120026ea81f2604e6120026ea81f26eacc070c24004dd503e201e8acc004c040006260f5300105683e4cdc1000a400280122a6611c02920119657870656374206465706f7369745f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501021180242300484600844b300133710002900045300103d87a8000899803801000a1120222a660da920113657870656374206e6f6e63655f726573756c74001641b0653001306e37540032323232332259800982f8014528456600260c40051980099baf30783075375400298103d87b8000a50a5141c913233225980098310014528c56600260c200513322598009831983c9baa304b307a375400d13371000400313371200400283b8dd6983d983c1baa003598009830983b9baa30493078375400f10018980d800a0ea8a5041d483a8c1d4dd50009bad30793076375400860f060ea6ea800507220e43072375400260ec60ee00660ea60e46ea8004c1d0004c1c0dd5000c888c8cc896600260be005159800982f983a1baa0018a6103d87a80008a6103d879800041c91598009831001456600260c460e86ea80062980103d87a80008a6103d87b800041c913322598009830800c530103d87b80008acc004c180006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041d483a8dd6983d183b9baa0038a6103d879800041d083a0dd6983c183a9baa00330743754002839107218391baa0013002003300100348896600260b80071325330713372c921215b7665726966795f6e6f6e63655d204c6f6f6b696e6720666f72206f7265663a200037326607600291010015330713372c9201215b7665726966795f6e6f6e63655d204e756d626572206f6620696e707574733a20003732660766ea0c018dd6183b18399baa05f48900133008375860ec60e66ea817c94cc1c8cdcb24811f5b7665726966795f6e6f6e63655d20436865636b696e6720696e7075743a200037326607860ee60e86ea80052201001325330733372c9201185b7665726966795f6e6f6e63655d204d6174636865733a200037326607b3001001a60103d87a8000a60103d879800041c891010010013375e60ee60e86ea8004008c1d4c1c8dd5002456600260b600713322598009802000c528c566002600800514a1159800cc004cdd7cc004c1dcc1d0dd50014c1dcc1d0dd5000c8c8c96600260c060ec6ea8c1e8c1ec00a2003132598009830800c4c030cc1e8dd4180d9bad307b3078375400497ae08acc004c1880062005100241d483a8c1d8dd5000a0e83079001307537540028019300103d87b8000a50a5141c51980099baf98009822983a1baa0029822983a1baa001919192cc004c180c1d8dd5183d183d80144006264b30013061001898061983d1ba8304c375a60f660f06ea80092f5c11598009831000c400a200483a9075183b1baa00141d060f200260ea6ea8005003260103d8798000a50a5141c514a0838907120e2307530723754008601260e46ea817a294106f20de181f98371baa009300300319198008009bac3038306937540b044b30010018a5eb822660d86e9cc8c8cc1b8c1bc008cc1b8c0ecc1b0dd5000998371ba9980091838183898389838800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004835906b1b8d001981f198372610b4a5369676e617475726531003306e306f306c375460de60d86ea8004cc1b93010140003306e303d306c37540b697ae048894cc1b4cdcb249165369675374727563747572652e636f6e746578743a200037326606e60e460de6ea8005220100153306d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e608060de6ea8005220100153306d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607c60de6ea8005220100153306d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e600660de6ea800522010013253306e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b88370dc68009bae3072306f375400266e28c008dd7182018379baa0013371460046eb8c0f8c1bcdd500098011bae3003306f37540024bd70183718378009bac306d00133002002306e00141ad22259800982a98351baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130700018acc004cdc4a400860de0030068992cc004c1d4012264b3001305c0018acc004c1c8dd50034026010839a2b3001305b0018992cc00400601313259800800c02a01500a8992cc004c1e400e01900b41d86eb400601483c8c1d800507418391baa0068acc004c17c0062b30013072375400d00980420e680420de41bc8378c1c0dd5002c01d072182c9837800a0da80320e23754003005802c01600a83a0c1c400506f1838801400e007003801a0e4306f00141b460d66ea800e002834122259800982a98351baa0068992cc0040060c113259800800c4c9660020030628992cc0040062b30013073002899912cc004c16c006264b300100183344c966002003067833c4c96600260f000713305b0012259800801401e264b30010018cc0040062600460f600706b403d06b835c1ae0d683e0c1e400907741a10751bac001833c19d078183a800a0e63071375400b159800982d000c4c9660020030668992cc0040060cf0678992cc004c1e000e2660b600244b3001002803c4c96600200319800800c4c008c1ec00e0d6807a0d706b835c1ad07c183c80120ee83420ea3758003067833a0f0307500141cc60e26ea80162b3001305e0018992cc0040060cd13259800800c19e0cf0678992cc004c1e000e00b06841d46eb40060ce83c0c1d400507318389baa0058acc004c0d8006264b300100183344c966002003067833c19e264b30013078003802c1a10751bad001833a0f0307500141cc60e26ea80160ca837106e20dc41b8264b3001305a0018992cc0040060cb13259800800c56600260ec005159800982e18389baa0018992cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c4c96600260f800700f83620f2375a00306b41f060f200283b8dd7000983c00120f2307600141d060e46ea80060cc837a0cc839a0cd0668334199077183a000a0e430703754005159800982c800c4c9660020030658992cc0040062b300130760028acc004c170c1c4dd5000c4c9660020030678992cc004006264b3001001834c4c966002003159800983d00146600200719800800c0360d480620d480620d483ba0d506a83541a907b183c000a0ec307800283441a20d106841e460ec00283a0c1c8dd5000c19906f4199073419a0cd06683320ee307400141c860e06ea800a2b3001305d0018992cc0040060cb13259800800c19a0cd06683344c96600260ee00700a833a0e8375c00283b8c1d000507218381baa00283220da41b48368c1b8dd500098371baa003831a0e0831c18e0c706341d060e20028378c1c400a0c3061830c1850721837800a0da306b375400d05f41a022259800982a18349baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130720028992cc004c164c1b8dd500244c9660020030078992cc004006264b3001001804c4c966002003159800983b80146600200713259800982f000c4c96600200300c8992cc0040062b3001307a0028992cc004c184006264b3001001807c4c966002003159800983e80146600200300b808202680820f4808404202101041f860f600283c8c1dcdd5001456600260c000313259800800c03e264b300100180840420211332259800800c04a264b3001001809c04e0271332259800800c056264b300100180b405a02d13259800984200801c04a02e840808dd6800c05908401184080800a0fe375a00261000200501342040460fc00283e0dd6800983e801404107e183d800a0f23077375400500e41d083a0c1d4dd5000c035077403601b00d806a0f6307800141d860e86ea800a2b3001305d0018acc004c1d0dd5001401a01683aa016838907118391baa001805201a80520e8805402a01500a41e060ea0028398c1d400a01100880440210761839800a0e2306f375400900641b0264b300130590018acc004c1bcdd5001401e00c83822b300130580018992cc00400600f13259800800c02201100880444c96600260ec00700a804a0e6375c00283b0c1cc00507118379baa0028acc004c170006264b3001001803c4c96600260ea00500980420e4307300141c460de6ea800a00c836106c20d8306d375400300541bd005802c01600a8398c1c000506e1838001400e007003801a0e2306e00141b060d46ea800e0028338888c96600260a800313259800800c00e264b300100180240120090048992cc004c1c400e00d00541b86eb80050711837000a0d8306a37540091598009829800c4c9660020030038992cc0040060090048024012264b30013071003803401506e1bae00141c460dc0028360c1a8dd5002400906720ce3068375400705a82d416a0b48358c1a0c194dd5000c54cc18d24014565787065637420536f6d65287369676e65645f7061796c6f61645f6461746129203d2063626f722e646573657269616c6973652872656465656d65722e7061796c6f6164290016418860026eb8c0d4c190dd50299192cc004c13c006298103d87a80008992cc006600260a06eb4c1980069429450634530103d87a80008981c198341832800a5eb810634c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d06548896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b810010034195001400c8310dc680098008009119800911191919bb032374e660d660d0002660d660d200297ae03376060ce00460ce00260d0003300100691000c012007375a60ce0028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130510018cc004012007002918051ba800140351598009828000c6600200900399b80002480fe460146ea0c0f0c0f800500d456600266e1c00920be0189919800800918059ba9001223300648008966002601c00313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014419d19800802400e66e00009207f918051ba9001401c832106420c88acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300d3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180719ba5003001404080810672cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014198833100d4566002605600315980099b87002482f80a33001004801ccc01801888006460146e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300b374e002806900d20c88acc004c0a80062b30013370e004907f0144c8c8cc0040048c030dd30009119803a40044b3001300f0018980125eb7bdb18224646530010069180319838801000cdd69837001200c323376060e200260e260e40026eb0c1b000660020130089807800a00a41a06600c00c4400519800802400e66e0000920bf02919194c0040060072300d374c00280088896600266e24009200089800a5eb7bdb18224646530010069821802c8c014cc1c80080066eb4c1bc0090061919bb0307200130723073001375860da003300100a804c00500520d23300700722002403483222497bdb181014000010120004190832106420c8337060029020111119198008008011119803240044b3001300a0018980125eb8224646530010069180319836001000cdd69834801200c30670019800804401e6014002803106311114c00401200700291980200091801800a012413505b1bae001417860b600282c8dd7000982d005a0b6305800a415904841586eb8005059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500240fd04940fd00e40fd00e40fd00e40fd00e40fd04d1bac00181f40f90501826800a096304d00281e40f207903c413860960028248c12c00a07503a81d40e904c1824800a08e304900281c40e20710384128608e0028228c11c00a06d03681b40d90481822800a086304500281a40d2069034411860860028208c0fcdd5002c0c903c111194c004006009003400444464b3001302f0018992cc00400600d13259800800c01e00f007803c4c96600260980070058042092375c0028260c12400504718229baa0038acc004c0b8006264b300100180344c966002003007803c4c966002609800713302f0012259800801401e264b30010018cc00402a00313002304f003402900b805c02e0168280c13400904b40210491bac001803c01d04c1824800a08e304537540071598009819000c4c9660020030068992cc00400600f0078992cc004c13000e26605e00244b3001002803c4c96600200319800805400626004609e006805201700b805c02d0501826801209680420923758003007803a0983049001411c608a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009827801c4cc0c8004896600200500a8992cc0040063300100d800c4c008c14800d00d403a01d00e80720a63050002413900b41306eb000601500a413c60980028250dd68009825801401d04c1824800a08e304537540071598009804800c4c9660020030068992cc00400600f007803c4c96600260980070058042092375a003007413060920028238c114dd5001c566002601000313259800800c01a264b3001001803c01e00f132598009826001c0160108248dd6800c01d04c1824800a08e3045375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009826001c0160108248dd7000a0983049001411c608a6ea800e00a821104220844108821104220843043375400481740ba05d02e4100601660746ea8c94cc0e4cdcb24812467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea40dd220100132598009813181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a200037326600a002910100132598009815981e9baa0018992cc0040062b30013029303e375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098240014401a0728228c1180050441bae0013045002411860860028208c0fcdd5000c0d103c40d206903481a20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec6018607a6ea8c038c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46600400206e6eb0c02cc0e8dd50131800800911980200111980598031bab300c303b3754601860766ea8004008888c9660020071323233223300b0023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420805980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d103a1bac303d002375a60760026466ec0dd4181d8009ba7303c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6080003337149101023a200098008054c10400600a805100a182180144ca6002015304000199b8a489023a200098008054c104006600e66008008004805100a182180120823043001410066e29220102207d0000340f46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039011207a3758007133007375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40fc66e2ccdc0000acc004cdc4000a402914818229037207e004401866e0c00520203370c002901019b8e00400240f06eb800d0401b8a4881022c200018048049802802a264b300100180e4072264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0cc00a2b30013019302e375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc00400604f027813c09e264b3001303a0038acc004c080c0d4dd500344c9660020030298992cc00400605502a81540aa26644b300100181644c96600200302d816c0b605b132598009820001c660020151301430400158172048817207a375c0028200c0f400503b1bae001303c00240f4607400281c0c0d8dd500340a103340a10371bae00140e8606e00281a8c0dc00a04b025812c095038181a800a0663035002811c08e04702340d860660028188c0bcdd5000c08502c40850304086043021810a068303100140bc6eb8004c0c00090311817000a058375800301c80e205e302c00240a91323259800800c06e03701b899912cc00400603b01d80ec4c8c018c0c001cdd6800c0750301bad001302900280da05c3027001302a00240a101740986eac00602d01680b20523026001409060446ea801e02880fa0288118dd6000c04e0268130c08c0050211bae0013022002408c604000280f0c08000a01d00e8074039021180f000a038301a375401300c405c44464b300130060018992cc00400600713259800800c01200900480244c9660026046007006802a040375c0028118c08000501e180e1baa0048acc004c0140062b3001301c3754009003801203a8012032406460346ea800c88c8cc00400400c88cc00c004c008008dc3a40006e1d20028044022011008406c6030602a6ea800e2c80906028002601e6ea8056293454cc0352411856616c696461746f722072657475726e65642066616c7365001365640301" + : + "592497010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a40052232330010010032233003001300200248888c9660026008601c6ea802626464646644b300130180038992cc004c028c050dd5000c4c96600260340031330093756603200244b3001002899805803112cc00400a330012259800800c52f5c113301e301b301f0013300200230200014075374a900048c078c07c00644646600200200644b30010018a508acc004cdc79bae30210010038a518998010011811000a038407d2301e301f301f0019b874801a6e1d20089b8748029222222223322332232332259800980f18141baa00289919191919194c004dd61819000cc0c8016606400930320039819001244444b30013038006899806181b8058998060020998060018998060010acc004c0a4c0ccdd5000c4c8c8ca60026eb8c0e80066eb8c0e800e6eb8c0e800922259800981f00244c8cc896600260820071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc7244103020408003370000490189180119bca4a2003124bded8c10140000101200040fc81f903f4dc024003370e907f01cdc02400522337600046ea00066e052000488888a600244444653001001801c0090011112cc004cdc480124001130014bd70448c8ca600200d30100059180299828801000cdd69827001200c304c0019800804c022002803904948888c8cc00400400888cc01920022598009805800c4c0092f5c1123232980080348c018cc1400080066eb4c1340090061825800cc00402200f300b0014018824244453001004801c00a4660080024600600280512223232323259800981f98249baa00189919914c00489660026088609c6ea800a26464646644b30013058003899804982b802899823001003459055182a8009bad305500230550013054001304f37540051641351980099198008009bac3030304e375409044b30010018a5eb822660a26e9cc8c8cc14cc150008cc14cc0ccc144dd5000998299ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002414c8298dc68009bae30563053375400266e28c008dd7181b98299baa0013371460046eb8c0d4c14cdd500098011bae305630573057305730533754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241448288dc6800981b19829a610b4a5369676e617475726531003305330543051375460a860a26ea8004cc14d3010140003305330353051375409697ae04bd701829982a0009bac30520013300200230530014141230513052305230523052305230523052001911919800800801912cc00400629422b3001300330540018a51899801001182a800a09e4149374a900124444b300132980098289baa001919191919912cc004c13400a29422b300130500028cc004cdd7982d982c1baa0014c103d87b8000a50a51415913233225980098280014528c566002609e00513322598009828982e1baa3041305d375400d13371000400313371200400282d8dd6982f182d9baa003598009827982d1baa303f305b375400f10018980d800a0b28a50416482c8c160dd50009bad305c3059375400860b660b06ea800505620ac3055375400260b260b400660b060aa6ea8004c15c004c14cdd5000c888c8cc8966002609a0051598009826982b9baa0018a6103d87a80008a6103d879800041591598009828001456600260a060ae6ea80062980103d87a80008a6103d87b8000415913322598009827800c530103d87b80008acc004c138006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000416482c8dd6982e982d1baa0038a6103d8798000416082c0dd6982d982c1baa0033057375400282b1056182a9baa00130020033001003488966002609400713233007375860b260ac6ea81348cdd7982d182b9baa0010023058305537540091598009824801c4cc8966002600800314a315980098020014528456600330013375f3001305a30573754005305a3057375400323232598009827182c9baa305d305e0028800c4c966002609e0031300b3305d375060366eb4c178c16cdd500125eb822b3001305000188014400905920b23059375400282c0c170004c160dd5000a0064c0103d87b8000a50a5141551980099baf9800981d982b9baa002981d982b9baa001919192cc004c138c164dd5182e982f00144006264b3001304f001898059982e9ba8301d375a60bc60b66ea80092f5c11598009828000c400a200482c9059182c9baa001416060b800260b06ea8005003260103d8798000a50a51415514a082a905520aa305830553754008600e60aa6ea8132294105320a6181a98289baa0058cc004c150c144dd5002c88c8cc00400400c896600200314800226644b300130050028980b800c4005055182c00099801001182c800a0ac911919800800801912cc00400629422b30013375e00660a860b000314a31330020023059001414c82b244646600200200644b30010018a518acc004c00cc16000626600400460b200314a0829905648c154c158c158c158c158c158c158c158c158006460aa60ac60ac60ac60ac60ac60ac0032259800982418291baa002899192cc004c16400a0071641586eb4c15c004c14cdd500145905148c154c158c158c158c1580064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320ae899802802982e80220ae375c60ac0026eacc15c004c1640050570a5eb7bdb18244b30010018a400113013330020023057001415123055305630563056305630560019112cc00400a2980103d87a80008acc004c12400626072660ac60ae00497ae08cc00400e60b00053016001400c829105548966002003148002260266600400460ae00282a244b30010018a5eb82264660ac6ea0004cc00c00cc8cc004004c16400c896600200314bd7044cc896600330013370e00400b4a14a282b22660b46ea0008cc01001000626600800800282b0dd6982c800982d000a0ae375a60ac00282a2444646600200200844b300100189982c19bb037520086ea000d2f5bded8c113298009bae30560019bad3057001982d8012444b30013372001000713305c337606ea4020dd4003802c56600266e3c02000e2660b866ec0dd48041ba800700189982e19bb037520066ea0008cc01801800505820b0182c800a0ae911919800800801912cc004006297ae0899912cc004cdd7982d182b9baa305a30573754607660ae6ea8008c01ccc164dd4802a5eb822660b200466008008003133004004001415460b000260b200282b244b30010018a40011301333002002305700141512259800800c520008980999801001182b800a0a89b8848001222222222222222222298009111191980080080291192cc004c18000626609c00c6eb8c1b8c1acdd5001456600260be003133017375860dc60d66ea80088cc0100100062b3001306300189980e1bac306e306b37540044660080080031598009826000c4c8cdc49bad306f0013301a375860de60e000246600a00a00260d66ea800a2b3001304b00189919912cc004c188c1b4dd5001456600260c460da6ea8c1c4c1c800e266e24dd6983898371baa002001899b88375a60e260dc6ea800800506c452820d8306f001375a60de60d86ea800cc1acdd5182798359baa0058acc004c1280062646644b30013062306d3754005159800983118369baa30713072003899b89001375a60e260dc6ea800a266e20004dd6983898371baa00241b114a08360c1bc004dd6983798361baa003306b375460dc60d66ea80162660300086036660da60dc60d66ea80092f5c0834906920d241a4834906918349baa00198050054c18cdd5009c8888c8cc00400401488c96600260c00031323259800983118361baa001899194c004dd718390014dd718391839800cdd71839000ae5460e40026eb0c1c0c1b4dd5000c52820d632330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60e40020091305433071374e00297ae0899801801983980120da375860e20028378dd7183718359baa0028acc004c17c00626602e6eb0c1b8c1acdd5001119802002000c56600260c600313301c375860dc60d66ea80088cc0100100062b3001304c00189919b89375a60de002660346eb0c1bcc1c00048cc014014004c1acdd500145660026096003132332259800983118369baa0028acc004c188c1b4dd518389839001c4cdc49bad3071306e37540040031337106eb4c1c4c1b8dd5001000a0d88a5041b060de0026eb4c1bcc1b0dd500198359baa304f306b375400b1598009825000c4c8cc896600260c460da6ea800a2b30013062306d375460e260e40071337120026eb4c1c4c1b8dd500144cdc40009bad3071306e37540048362294106c18378009bad306f306c375400660d66ea8c1b8c1acdd5002c4cc060010c06ccc1b4c1b8c1acdd500125eb8106920d241a4834906920d23069375400330080089803803cc01801a6006007222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906b44cc014014c1c401106b1bae306a001375a60d600260da0028358cc03c01000c520009801001244444444446530012225980099b87300d0023009300832330010010032259800800c52f5c11330763073307700133002002307800141d5132330010010032259800800c52f5c30100008101a0008101a00044c8c8c8cc896600260dc60f06ea800a264b3001300900189983e1ba8337006eb4c1f4008dd6982f183d1baa0013307c374c64b3001306f307a37540031375660be0071375660fc60f66ea8005079192cc004c1bcc1e8dd5000c530103d87a8000898301983e9ba698009bab305f0039bae307e307b3754003005407097ae041e460b860f46ea8004cc1f0dd34c004dd5982e0014dd9983e983f002c01101b25eb822c83c0c1f0c1e4dd50014590771980480400099802802983d8021bad30790013307730740013307730750014bd70183b800a0ea8b20e091112cc004cdc398040021804001c4cc07c0108c96600260d460e86ea8006264b3001306b3075375400313322598009838183b9baa001899192cc004c1bcc1e4dd500144c8c8c8ca60026102020033081010039840808012444b300130850100489982c98420080389981b0010992cc004c1dc00626464b3001308801002805c59085011bad3086010013082013754005159800983b000c4c8c96600261100200500b8b210a02375a610c020026104026ea800a2c840009080011840009baa0018b210402184080800984000800983f800983d1baa0028b20f015980099baf305d3079375400260f860f26ea800e2b3001337126eb4c174c1e4dd5001cc004dd5982e983c9baa305d3079375400d375c60f800f375c60ba00e806a264b3001306f3079375400313370e6eb4c1f4c1e8dd50009bad305e307a375400913370e6eb4c1f4c1e8dd50009bad305e307a375400883c0c16cc1e4dd5000c59077459077183d983c1baa0018b20ec30793076375400260b060ec6ea8c168c1d8dd5001c59074198038029bad3078307537540031641cc6644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130603307d375000297ae080320f2899802802983f80220f2375c60f00026eb4c1e4004c1ec0050791bb3307730743754002298103d87a80008b20e291112cc004cdc398030011804001c4ca60020034800200880088896600200314a313322598009836983b9baa0018992cc004c1b8c1e0dd5000c4c96600260de60f26ea8006264b30013375e60fc60f66ea8004c1f8c1ecdd5183f183d9baa0058acc004cdd7982e983d9baa001305f307b375460fc60f66ea80162b300198008044c0ec01e60fe00c8042266e1e60026eacc17cc1ecdd5000cdd7183f004cdd7182f804a01e325980099b880014800226074003100141e86eb4c17cc1ecdd5002c52820f28b20f28b20f2307d307a37540031641e0660160146eb4c1f0c1e4dd5000c5907718181bae307b307837540031641d860f2002646600200200c44b30010018a60103d87a80008992cc004cdc38029bad30790018982f1983d983c000a5eb8226600600660fa00483b8c1ec00507920ee8b20e29111919912cc004cdc39bad30780010028992cc004cc896600200314a11329800992cc004c1bcc1e4dd5000c4dd6983d183e9bab307d307a3754003148001078183e000cdd7983e183e800cdd58012444b30010018acc004c008016266e2520000038a5041e91325980099baf307c0014c010140008acc004cdc49bad307d308001375660fa00200913003374c61020200514a083da2b300133712900000244c00c01a294107b20f6307f00141f4329800800c00e44660fa004660fa6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1ec0066eacc1f00066100020069112cc004cdc8a441000038acc004cdc7a44100003899802983219840809ba60024bd70000c4cc015300103d87a800000641f519800803c006446600e004661060266ec0dd48029ba6004001401c83e860fc00483e229422942294107d1bab305a002374c660f066ec0c1e4004dd31983c19bb03079307a001375066e0400c0152f5bded8c097adef6c608801c590741bac301a3075375400d1641ccb30013068300e0018a4001159800983b800c4c96600266e3cdd71839800a44104555344720089bad30740018b20e430760018b20e841c46464b3001306a307437540031325980099baf30793076375460f260ec6ea8c168c1d8dd500098131983c1ba90034bd7044c96600260de60ec6ea800626466042002264b3001306e307837540031325980099baf307d307a375460fa60f46ea8004c0a8cc1f0dd4803a5eb82264b30013073307a37540031323302500113307e375066e04dd6983f983e1baa001375a60fe60f86ea8014cc1f8dd3194c0040066eacc184c1f4dd50024c8cc004004dd59831183f1baa3062307e375401244b30010018a5eb7bdb182264661040266ec0c1fc004dd319198008009bab3081010022259800800c52f5bded8c11323308501337606104020026ea0c104dd698418080099801801984380801184280800a1060233003003308401002308201001420004800888966002005100189919914c00401a610c0200b32330010010052259800800c4cc21804cdd81ba9004374c00697adef6c608994c004dd7184200800cdd5984280800cc224040092225980099b900080038998450099bb037520106e9801c0162b30013371e01000713259800acc0040062946294108a014400a2661160266ec0dd48049ba6001002421c04653001001804400d0011112cc00400a2003132332298008034c24804016646600200200a44b30010018998490099bb037520086ea000d2f5bded8c113298009bae3090010019bad309101001984a808012444b30013372001000713309601337606ea4020dd4003802c56600266e3c02000e264b3001308a01001880144cc25c04cdd81ba90093750002004849808cdc000380144cc25804cdd81ba900337500046600c00c002849009092010c24c0400509101200c375c6116020026eb4c23004004c2380400908c0144cc22804cdd81ba9003374c0046600c00c002843009086010c21c0400508501200c375c60fe0026eacc20004004c208040090800125eb80c1f8c1ecdd5000c59079182e183d1baa0018b20f0307c307937540031641dc660a66eb0c168c1e0dd500411982e182a9bab305d3079375400200c60f460ee6ea80062c83a8c160c1d8dd5182d183b1baa0018b20e830783075375400314bd7090100008101a00020e63304e375860ee60e86ea8010004dd7183b18399baa301b30733754008660326eacc068c1c8dd50011bae305630723754603460e46ea800d2222598009834006c4c966003300130773074375409b0279813183a1baa06b9bab301e307437540d6806a26464b300198009980b1bac3079307637540da6eb8c160c1d8dd5180f183b1baa04f801cdd5983c800cdd6180d983b1baa04f4019159800cc004dd6182c183b1baa06d801cdd5983c983d000ccc1e0c168c1d8dd5180f183b1baa04f330784c1054455534472004bd70200a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba460246eb4c164c1d4dd5000a00a8b20e4375860ec60e66ea808a2b3001306700d8992cc006600260b060e86ea813604f3026307437540d73756603c60e86ea81ad00d44c8c966003300133016375860f260ec6ea81b4dd7182c183b1baa301e3076375409f0039bab30790019983c182d183b1baa301e3076375409e660f0981054455534472004bd70200c8acc00660026eb0c160c1d8dd5036c00e6eacc1e4c1e80066eb0c06cc1d8dd5027a00a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba466e20dd6982c983a9baa001480010054590721bac3076307337540451598009835806c4c966003300130563074375409b3758603e60e86ea81ae604c60e86ea81ae6eacc078c1d0dd5035a0208acc004c044006260d3300104d835c0050024590724590721bad30763073375404513259800cc004c158c1d0dd5026cdd6180f983a1baa06b9813183a1baa06b9bab301e307437540d680822b3001301100189834cc0041360d7337040029000a0048b20e48b20e4375a60ec60e66ea808907120e241c4225980099b8800148002298103d87a8000899804001000a0dc22c82792259800982218271baa00289919192cc004c15800a26464b300130490018acc004c150dd5001401a2c82aa2b30013048001899192cc004c16800a01116415c6eb4c160004c150dd500145660026098003159800982a1baa00280345905545905220a4414860a46ea8004c15400e2c8298c96600260a400315980099b8948010c1440062d130463051001414116414c6ea8c150004c150004c13cdd500145904d2444b30013045304f3754009132323259800982b80144c8cc8966002609600513259800982d800c4cc128dd6182d000912cc00400a00913300c305c00213001305d002416916416060ac6ea800e2b3001304a0028992cc004c16c0062660946eb0c1680048966002005004899806182e00109800982e80120b48b20b030563754007159800982700144c8c96600260b80050038b20b2375a60b400260ac6ea800e2b30013037002899192cc004c17000a0071641646eb4c168004c158dd5001c5905420a8415082a0c14cdd50008992cc004c128006264b3001305a0018992cc004c130c158dd5000c4c8c8cc896600260be00700d8b20b8375a60b80026eb8c170008c170004c15cdd5000c59055182c800c59057182a9baa0038acc004c124006264b3001305a0018992cc004c130c158dd5000c4c8c8c96600260bc00513300b305d00313300b00100c8b20b6305c001305c0013057375400316415460b200316415c60aa6ea800e2b3001304d001899192cc004c16c00a0131641606eb8c164004c154dd5001c5905320a6414c60a66ea8008c15800e2c82a0c154004c154004c140dd500245904e08966002608460986ea800a2646464b30013054002899912cc004c11cc144dd500144c8c8c96600260b200513300b3058003132598009825800c4c96600260b600313232598009827000c4c96600260bc003133010305d0010098b20b6305937540051598009826800c4c8c8ca60026eb4c17c0066eb4c17c00e6eb4c17c009222598009831802403a2c830060be00260bc00260b26ea800a2c82b9057182b9baa001305a0018b20b0305637540051598009825000c56600260ac6ea800a00b16415d16415082a0c150dd5000c59056182b800982b80098291baa0028b20a03053003132598009823000c56600260a26ea800a00b1641491598009822800c4c8c96600260ae0050078b20a8375c60aa00260a26ea800a2b30013049001899192cc004c15c00a00f16415060aa00260a26ea800a2c827904f209e304f375400316414460a400260a4002609a6ea800a2c8258c138c12cdd500111192cc004c10800626464b300130530028024590501bae3051001304d37540071598009820800c4c8c96600260a60050048b20a0375c60a2002609a6ea800e2c825904b18259baa0028b20903001375c605a60926ea810c8c966002607e00314c103d87a80008992cc006600260806eb4c12c0069429450494530103d87a800089818198269825000a5eb810494c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d04b48896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b81001003412d001400c8240dc680098008009119800911191919bb032374e660a0609a002660a0609c00297ae03376060980046098002609a003300100691000c012007375a60980028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130410018cc004012007002918061ba8001403d1598009820000c6600200900399b80002480fe460186ea0c03cc02c00500f456600266e1c00920be0189919800800918069ba9001223300648008966002602000313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014413519800802400e66e00009207f918061ba9001401c825104a20948acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300f3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180819ba50030014034809104d2cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014130826100f4566002605800315980099b87002482f80a33001004801ccc01801888006460186e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300d374e002805100f20948acc004c0ac0062b30013370e004907f0144c8c8cc0040048c038dd30009119803a40044b300130110018980125eb7bdb1822464653001006918031982b001000cdd69829801200c323376060ac00260ac60ae0026eb0c14400660020130089808800a00a41386600c00c4400519800802400e66e0000920bf02919194c0040060072300f374c00280088896600266e24009200089800a5eb7bdb1822464653001006980b002c8c014cc15c0080066eb4c1500090061919bb0305700130573058001375860a4003300100a804c005005209e3300700722002403c82522497bdb181014000010120004128825104a209433706002902011640f86eb8c0f8004dd7181f006181f005c5903b0c0e8004c0e4004c0d0dd5000c590324590350c0c8004c0c4004c0c0004c0bc004c0b8004c0a4dd5001459027180598139baa3259800980e98139baa0018992cc004c084c0a0dd5000c4c966002603e60526ea8006264646644b300130320038802c5902f18178009bae302f002302f001302a37540031640a0605860526ea80062c8138c028c0a0dd5180618141baa302b30283754003164098660026eb0c02cc09cdd500f0121802002111980180111980618029bab300d30293754601a60526ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c0100062601c6605600297ae08998018019816801204e302b00140a4601001044464b3001301b001899192cc004c0b000a0091640a46eb8c0a8004c098dd5001c5660026034003132598009815800c4cc068dd61815000912cc00400a00b19800803cc0b000a26002605a004803902a45902818131baa0038acc004c078006264b3001302b00189980d1bac302a0012259800801401633001007981600144c004c0b400900720548b2050302637540071598009803800c4c8cc8966002605a00313301c3758605800244b3001002803c66002013302e002898009817801201240b11640a86eb4c0a8004c0ac004c098dd5001c566002600c0031323259800981600140122c8148dd6981500098131baa0038acc004c01400626464b3001302c0028024590291bad302a0013026375400715980099b874803000626464b3001302c0028024590291bae302a00130263754007164090812102420484090812102418121baa00244c8cc89660026042003132598009809980e9baa0018991919192cc004c09800a264b3001301830223754003132323322598009815801c4cc064c0a80204c038c0ac03e2c8140dd718140009bae3028002302800130233754003164084604a00916408c6eb8c090004c090004c08c004c078dd5000c5901c1810000c5901e1bae301e001301f0013758603a00480da26466446008603e00a6eb4c060004dd6980c800980d80120328b202e3015375400316404c602e00b1640546eb0c054004dd7180a801180a800980a00098079baa0098b201a2232598009803000c4c8c966002602e0050048b2028375c602a00260226ea800e2b300130050018acc004c044dd5001c00a2c80922c807900f18079baa0024590080c024004c010dd5005452689b2b200401", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_3ProtocolProtocolElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5948aa010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013a657870656374206d61746368696e675f6f75747075745f6964783a20496e74203d206d61746368696e675f6f75747075745f6964785f6461746100168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a498a6578706563740a20202020736174697366696564280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a20202020202074782e65787472615f7369676e61746f726965732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a494c657870656374207369676e65645f7061796c6f61643a205369676e65645061796c6f61643c50726f746f636f6c52656465656d65723e203d207369676e65645f7061796c6f61645f6461746100168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888966002646530013014001980a180a800cdc3a400930140024888966002600460286ea800e264b30010058999119912cc004c010c064dd5004c4c96600200300d8992cc004006264b3001001807c4c96600200301080840420211332259800800c04a264b3001001809c04e264b300130260038acc004c030c084dd5003c4c9660020030158992cc00400602d132598009814801c4cc030004896600200513300e0062259800801466002444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c814a6e05200091111919800800802912cc004006200b13259800800c4cc010c0cc00801a26600a6066004660060060028188c0cc0050304dc0240032259800800c52f5c113302d302a302e00133002002302f00140b1374a900048c0b4c0b800644646600200200644b30010018a508acc004cdc79bae30300010038a518998010011818800a05440b92302d302e302e0014888888888cc8a600244646600200200644b30013022001899b8a4890130000038acc004cdc4000a40011337149101012d0033002002300e00189980319b8400148050cdc599b803370a002900a240c000681a903548c00800644646600200200644b30010018a6103d87a80008992cc004c010006260166607600297ae0899801801981e801206c303b00140e4911191991192cc00400633001370e90034dc3a4011370e9005244464b30013029303e375400b13259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c0fa07d132598009828001c6600201919800805466002011198008034566002606c60966ea8012264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4c96600260b20071598008054122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260bc0071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc724503020408003370000490189180119bca4a2003124bded8c101400001012000416c82d905b488888ca600200300380120022225980099b89002480022600297ae08919194c00401a607200b23005330680020019bad3065002401860c60033001009804400500720be9b87483f80e6e0120029119bb00023750002911111991191919192cc004c13cc190dd5000c4c9660020031323298009112cc004c154c1a8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800983b00146600200d19800800c02601082d2010805a010839a0110088044021077183a000a0e4375a00260e600500541d060e20028378c1c400a007003801c00d0721837800a0da306b375400700141a11325330673372c9211c5b70726f746f636f6c5d20566572696679696e67206e6f6e63653a2000373266062607460d26ea801122010019800918369837183718371837183718371837000c89660020031480022601c6600400460de002836244646600200200644b30010018a508acc004c00cc1c0006294626600400460e2002835106e4dd2a40049111191929983699b964901205b70726f746f636f6c5d207665726966795f6e6f6e636520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041b0910100159800800c6600260e460de6ea802a44646600200200644b30010018a40011332259800980280144c06000620028390c1d8004cc008008c1dc005074488c8cc00400400c896600200314a115980099baf003307230760018a51899801001183b800a0e041d12232330010010032259800800c528c566002600660ec00313300200230770018a5041c083a2460e660e860e860e860e860e860e860e860e8003230733074307430743074307430740019112cc004c170c1c4dd5001c4c9660020030028992cc004006007003801c4c96600260f200700580220ec375a00300341e460ec00283a0c1c8dd5001c00506f48c1ccc1d0c1d0c1d0c1d00064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e8899802802983d80220e8375c60e80026eacc1d4004c1dc0050750a5eb7bdb18244b30010018a40011301433002002307500141c923073307430743074307430740019112cc00400a298103d87a80008acc004c17000626088660e860ea00497ae08cc00400e60ec0053046001400c837907348966002003148002260286600400460ea002839244b30010018a5eb82264660e86ea0004cc00c00cc8cc004004c1dc00c896600200314bd7044cc896600330013370e00400b4a14a2839a2660f06ea0008cc0100100062660080080028398dd6983b800983c000a0ea375a60e80028392444646600200200844b300100189983b19bb037520086ea000d2f5bded8c113298009bae30740019bad3075001983c8012444b30013372001000713307a337606ea4020dd4003802c56600266e3c02000e2660f466ec0dd48041ba800700189983d19bb037520066ea0008cc01801800507520ea183b800a0ea911919800800801912cc004006297ae0899912cc004cdd7983c183a9baa307830753754608c60ea6ea8008c024cc1dcdd4802a5eb822660ee0046600800800313300400400141c860ec00260ee00283a244b30010018a40011301433002002307500141c93710900024444444444444444453001222232330010010052232598009839000c4cc160018dd71845809844009baa0028acc004c1c400626602c6eb0c22c04c22004dd5001119802002000c56600260ea00313301d37586116026110026ea80088cc0100100062b3001304d00189919b89375a611802002660326eb0c23004c234040048cc014014004c22004dd500145660026098003132332259800983a1845009baa0028acc004c1d0c22804dd5184700984780801c4cdc49bad308e01308b0137540040031337106eb4c23804c22c04dd5001000a110028a504220046118020026eb4c23004c22404dd50019844009baa3059308801375400b1598009825800c4c8cc896600260e86114026ea800a2b30013074308a013754611c02611e020071337120026eb4c23804c22c04dd500144cdc40009bad308e01308b01375400484400a2941088011846008009bad308c0130890137540066110026ea8c22c04c22004dd5002c4cc05c010c070cc22804c22c04c22004dd500125eb8108501210a0242140484280908501210a02308601375400330090099840009baa0129111191980080080291192cc004c1c8006264a6610e0266e59240121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660a26ea400522010013259800983a1844809baa001899194c004dd7184780800cdd7184780984800800cdd71847808012444a6611a029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308d013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660ae6ea4005220100153308d013372c9201187665726966795f65643235353139207061796c6f61643a20003732660ae6ea4009220100153308d013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660ae6ea400d22010013253308e013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660b13001001a60103d87a8000a60103d879800042340491010010019800800c00a006b950c23c04004dd61846809845009baa0018a998440099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660a46ea400922010014a0843808c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c611e020020091305e3308e01374e00297ae08998018019848008012112023758611c02002846008dd71845809844009baa0028acc004c1c4006264a6610e0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416c6c4f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301700123300500500137586116026110026ea800a2b300130750018992998438099b96490122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660a26ea0c070005220100132533088013372c92010e416e794f6620726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c0491010010013301e00123300500500137586116026110026ea800a2b3001304d00189919912998448099b96490112436865636b696e672041744c656173743a20003732660a66ea000922010013253308a013372c92011941744c656173742073617469736669656420636f756e743a20003732660a86ea000522010013253308b013372c92011041744c6561737420726573756c743a20003732660ab3001001a60103d87a8000a60103d87980004228049101001001337120060026603600246600e00e0026eb4c23004004dd61846009846808009844009baa0028acc004c130006264a6610e0266e5924111436865636b696e67204265666f72653a20003732660a26ea0005220100132533088013372c92010f4265666f726520726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc49bad308e01308b0137540020071337106eb4c23804c22c04dd5000801a110028a50422004611a020026112026ea8c168c22404dd50031bad308b0130880137540051598009825800c4c94cc21c04cdcb24910436865636b696e672041667465723a20003732660a26ea0005220100132533088013372c92010e416674657220726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c049101001001323259800983a1845009baa0018acc004c1d0c22804dd518470098478080144cdc48019bad308e01308b0137540031337100066eb4c23804c22c04dd5000a110028a50422004611a020026112026ea8c23004c22404dd50031bad308b013088013754005132533087013372c920111436865636b696e67205363726970743a20003732660a26ea4005220100132533088013372c92010f53637269707420726573756c743a20003732660a53001001a60103d87a8000a60103d8798000421c04910100100133018005301d3308b01375200297ae0375c6116026110026ea800908501210a0242140484280908501210a023086013754003300700798030034c0140164446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803210e02899802802984700802210e02375c610e020026eb4c22004004c2280400508801198070020018a400130020024888888888ca6002444b30013370e60180046010600e646600200200644b30010018a5eb8226612402611e026126020026600400461280200284880a2646600200200644b30010018a5eb8410100008101a0008101a00044c8c8c8cc896600260fe6128026ea800a264b3001300900189984c009ba8337006eb4c26404008dd69833984b009baa0013309801374c64b300130800130960137540031375660d000713756613402612e026ea800509401192cc004c20004c25804dd5000c530103d87a8000898349984c809ba698009bab30680039bae309a013097013754003005406897ae042500460ca612c026ea8004cc26004dd34c004dd598328014dd9984c80984d00802c01101925eb822a66128029211a6578706563742076616c69646174696f6e2872657175657374290016424c04613002612a026ea800a2a661260292012f65787065637420536f6d65287265717565737429203d206c6973742e61742874612c20726571756573745f696478290016424804660120100026600a00a612e020086eb4c25404004cc24c04c24004004cc24c04c244040052f5c061260200284880a2a66118029201886578706563740a202020206c6973742e6c656e67746828726571756573745f746f5f6f75747075747329203d3d206c6973742e6c656e677468280a2020202020206c6973742e756e69717565286c6973742e6d617028726571756573745f746f5f6f7574707574732c20666e286974656d29207b206974656d2e317374207d29292c0a20202020290016422c0522225980099b873022004302200389980e8021192cc004c1ecc24004dd5000c4c96600260f86122026ea800626644b3001308101309301375400313259800800c4c966002610002612a026ea800a264b300100184880c4c96600200313259800800c24c06264b30010018992cc00400612a0313259800800c4c966002003097018992cc004c2880400a330010078cc004016264b30013089010018992cc0040061340313259800800c26c061360309b018992cc004c2980400e01b09c01428c046eb400613602853008c28c040050a101184f809baa0048acc004c22004006264b300100184d00c4c96600200309b0184d80c26c06264b300130a601003806c270050a3011bad00184d80a14c0230a301001428404613e026ea80121320284e00909c01184e809baa00384c00a06e84c00a0c084c00a13e0230a0010014278046140020050960184b00c2580612c02850808c2780400509c01184f00801425006128030940184a00a13e02309c010014268046138020050920184900c248061240284e808c2680400509801184b009baa00284800a1260215980099baf30663095013754002613002612a026ea800e2b3001337126eb4c198c25404dd5001cc004dd59833184a809baa3066309501375400d375c61300200f375c60cc00e806a264b3001308001309501375400313370e6eb4c26404c25804dd50009bad3067309601375400913370e6eb4c26404c25804dd50009bad30673096013754008849808c190c25404dd5000c54cc24c05241666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400164248051533093014913865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001642480508f0184780c23c0611e0284d008c25c04c25004dd5000c54cc248052413365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d0016424404612a026124026ea8004c184c24804dd518319849009baa0038a9984800a4814765787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c206d61746368696e675f726571756573745f696478290016423c046600e00a6eb4c25004c24404dd5000c54cc23c0524016565787065637420536f6d65286d61746368696e675f726571756573745f69647829203d0a2020202020202020646963742e676574286d617070696e672c2063626f722e73657269616c69736528696e7075742e6f75747075745f7265666572656e6365292900164238046644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130693309901375000297ae0803212802899802802984d80802212802375c6128020026eb4c25404004c25c04005095011bb330930130900137540022980103d87a80008a9984680a4933657870656374206c6973742e6c656e67746828696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016423005222253308d0149012d5b76616c69646174655f6f7574707574735d205374617274696e67206f75747075742076616c69646174696f6e0015980099b87300600230220038994c004006900040110011112cc004006294626644a661240266e59241305b76616c69646174655f6f7574707574735d2056616c69646174696e67207265717565737420617420696e6465783a20003732660b86ea001122010013259800983f984a009baa0018992cc004c20004c25404dd5000c4c9660020030920184900c2480626464b300130830130980137540031325980099baf309d01309a013754002613a026134026ea8c27404c26804dd5004456600266ebcc1a4c26804dd50009835984d009baa309d01309a0137540111533098013372c92012d5b76616c69646174655f6f7574707574735d20436865636b696e67206f757470757420617420696e6465783a20003732660c46ea000d2201001533098013372c9201245b76616c69646174655f6f7574707574735d20457870656374656420616d6f756e743a20003732660c460d66134026ea80212201001533098013372c9201225b76616c69646174655f6f7574707574735d2041637475616c20616d6f756e743a20003732660c46ea260026eacc1acc26804dd5000cdd7184e808064dd71835806202448900159800803c4cdc3cc004dd59835984d009baa0019bae309d0100c9bae306b00c404864b300133710002900044c1c4006200284c008dd69835984d009baa0088a50425c0515330980149139657870656374206d61746368696e675f6f75747075742e646174756d203d3d20726571756573742e64657374696e6174696f6e2e646174756d0016425c051533098014913d657870656374206d61746368696e675f6f75747075742e61646472657373203d3d20726571756573742e64657374696e6174696f6e2e616464726573730016425c046138026132026ea80062a6612e0292014465787065637420536f6d65286d61746368696e675f6f757470757429203d206c6973742e6174286f7574707574732c206d61746368696e675f6f75747075745f6964782900164258046601c01a0026eb40061240284e008c26404c25804dd5000c54cc250052415b65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f6461746129203d0a202020202020202063626f722e646573657269616c697365286d61746368696e675f6f75747075745f6964785f6279746573290016424c0460646eb8c26004c25404dd5000c54cc24c0524013e65787065637420536f6d65286d61746368696e675f6f75747075745f6964785f627974657329203d20646963742e66696e64286d617070696e672c2069290016424804646600200201044b30010018a60103d87a80008992cc004cdc38039bad309701001898349984c80984b00800a5eb8226600600661360200484a008c2640400509701184a80800cc00400e606a005309601001400c84980a2a6611a0292013265787065637420646963742e73697a65286d617070696e6729203d3d206c6973742e6c656e6774682872657175657374732900164230052223233225980099b87375a6128020020051325980099912cc004006294226530013259800984000984a809baa00189bad3096013099013756613202612c026ea8006290002126023098010019baf3098013099010019bab0024889660020031598009801002c4cdc4a400000714a084a80a264b30013375e61300200298010140008acc004cdc49bad309901309c01375661320200200913003374c613a0200514a084b00a2b300133712900000244c00c01a294109601212c02309b01001426404329800800c00e44661320200466132026e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c25c040066eacc260040066138020069112cc004cdc8a441000038acc004cdc7a4410000389980298369984e809ba60024bd70000c4cc015300103d87a800000642600519800803c006446600e0046613e0266ec0dd48029ba6004001401c84c00861340200484c00a294229422941099011bab3063002374c661280266ec0c25404004dd31984a0099bb0309501309601001375066e0400c0152f5bded8c097adef6c608801c54cc240052401c56578706563740a202020206173736574732e6d61746368280a20202020202074726561737572795f64656c74612e326e642c0a2020202020205b0a202020202020202050616972280a20202020202020202020726573657276655f706f6c6963792c0a202020202020202020205b5061697228726573657276655f6e616d652c206d696e745f616d6f756e74202d2077697468647261775f616d6f756e74295d2c0a2020202020202020292c0a2020202020205d2c0a2020202020203e3d2c0a20202020290016423c046eb0c060c24404dd5003454cc23c052401286578706563742074726561737572795f64656c74612e317374203d3d206d696e745f616d6f756e740016423804b30013079300d0018a4001159800800c21806264b30013094010028acc004cdc79bae308f01001488104555344720089bad3090010018a9984700a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200164234050870142440461240200284800908c0119192cc004c1ecc24004dd5000c4c96600266ebcc25404c24804dd5184a809849009baa30633092013754002604c66128026ea400d2f5c1132598009840009849009baa0018992cc004006330010018992cc004c1fcc25004dd5000c4c96600266ebcc26404c25804dd5184c80984b009baa001302a3309801375200e97ae08992cc004c21004c25804dd5000c4c96600200319800800c4cc26804dd419b81375a6136026130026ea8004dd6984d80984c009baa0053309a01374c6530010019bab306a30990137540093233001001375660d66134026ea8c1acc26804dd5004912cc004006297adef6c608991984f0099bb0309b01001374c64660020026eacc27404008896600200314bd6f7b63044c8cc28404cdd8184f008009ba83075375a613e020026600600661460200461420200284f808cc00c00cc28004008c2780400509c012002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd3001a5eb7bdb1822653001375c614002003375661420200330a50100248896600266e4002000e26614c0266ec0dd48041ba60070058acc004cdc7804001c4c966002b30010018a518a5042980510028998538099bb037520126e980040090a201194c0040060110034004444b30010028800c4c8cc8a600200d30ae010059919800800802912cc00400626615c0266ec0dd48021ba80034bd6f7b63044ca60026eb8c2b0040066eb4c2b4040066162020049112cc004cdc8004001c4cc2c804cdd81ba9008375000e00b15980099b8f0080038992cc004c26c0400620051330b301337606ea4024dd4000801215c023370000e0051330b201337606ea400cdd400119803003000a15a0242b40430af0100142b4048030dd71853808009bad30a80100130aa0100242a0051330a601337606ea400cdd300119803003000a1420242840430a3010014284048030dd7184d808009bab309c01001309e0100242700497ae084880a04684880c244061220309101427404613402612e026ea80062a6612a0292012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642500460ca612c026ea80062a661280292013a657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016424c04613002612a026ea80062a661260292013c65787065637420536f6d65286f757470757429203d206f75747075745f776974685f706f6c6963792874782e6f7574707574732c20736372697074290016424804660bc6eb0c18cc25004dd500411983298301bab3066309501375400200d08c01407d08c0184600c230061180284c808c25804c24c04dd5000c54cc244052413365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642400460c26124026ea8c18cc24804dd5000c54cc2400524014065787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2053637269707428736372697074290016423c046128026122026ea8006297ae110100008101a000211c023305737586126026120026ea8010004dd71849009847809baa3019308f0137540086602e6eacc060c23804dd50011bae305f308e0137546030611c026ea800d222259800983c80644cc894cc23c052411f5b6d696e745d205374617274696e67206d696e742076616c69646174696f6e00159800cc004c25004c24404dd502bc0a660506122026ea81f66eacc074c24404dd503ea01a8a9984780a49205b6d696e745d207361746973666965645f7061796c6f61647320706173736564001323298009bab3096010019bab3096013097010019bad30960100248894cc25004cdcb24812f5b6d696e745d2070726f636573735f7265717565737473207061737365642c2073756d6d65645f616d6f756e743a20003732660bc6ea0005220100132533095013372c92011b5b6d696e745d206f726465725f696e7075747320636f756e743a20003732660be6ea0c0a8005220100159800cc0040060110049bac301e30970137540ba805a2a6612a0292011d5b6d696e745d2076616c69646174655f696e707574732070617373656400159800cc004dd61833184b809baa08301804400e661320260d0612e026ea8c084c25c04dd502e9984c80a601054455534472004bd7020148a9984a80a4811e5b6d696e745d2076616c69646174655f6f7574707574732070617373656400132533096013372c9201215b6d696e745d206d61696e7461696e5f747265617375727920726573756c743a20003732660c13001001a60103d87a8000a60103d879800042540491010010013370f300105d84180d200040240051533095014901816578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a202020202900164250051533095014917a6578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f726967696e5f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016425004660306eb0c26404c25804dd5041009bae306530960137546040612c026ea8170612c020033001002800c8c048dd698319849009baa0014019153308f014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164238046eb0c24804c23c04dd50101bab309201308f013754612402611e026ea81fa2b3001307800c8992cc006600260c26120026ea815a051302730900137540f9375660386120026ea81f100c44c8c9660033001330143758612a026124026ea81f8dd718309849009baa301c30920137540b10039bab3095010019984a0098319849009baa301c30920137540b066128029801054455534472004bd70200c8acc00660026eb0c184c24804dd503f400e6eacc25404c258040066eb0c064c24804dd502c200a899b87980082c41fa90002008375a612a020051533090014901796578706563740a2020202076616c69646174655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f75747075745f6964782c0a20202020202073657474696e67732e726573657276655f746f6b656e2c0a20202020290016423c05153309001491826578706563740a2020202076616c69646174655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a2020202020206f726967696e5f6964782c0a2020202020202873657474696e67732e72656769737472792e757364722c2075736472292c0a20202020290016423c04612a0200330010019bab30930130900137546126026120026ea81fe466e20dd698311848809baa00148001005454cc23805241856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a202020202900164234046eb0c24804c23c04dd5010456600260f801913259800cc004c17cc24004dd502b4dd6180e9848009baa07c98139848009baa07c9bab301c30900137540f8807a2b300130100018983d4c00415a0f90014009153308e014911a6578706563742077697468647261775f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501044c9660033001305f30900137540ad3758603a6120026ea81f2604e6120026ea81f26eacc070c24004dd503e201e8acc004c040006260f5300105683e4cdc1000a400280122a6611c02920119657870656374206465706f7369745f616d6f756e74203e20300016423405086014234046eb4c24804c23c04dd501021180242300484600844b300133710002900045300103d87a8000899803801000a1120222a660da920113657870656374206e6f6e63655f726573756c74001641b0653001306e37540032323232332259800982f8014528456600260c40051980099baf30783075375400298103d87b8000a50a5141c913233225980098310014528c56600260c200513322598009831983c9baa304b307a375400d13371000400313371200400283b8dd6983d983c1baa003598009830983b9baa30493078375400f10018980d800a0ea8a5041d483a8c1d4dd50009bad30793076375400860f060ea6ea800507220e43072375400260ec60ee00660ea60e46ea8004c1d0004c1c0dd5000c888c8cc896600260be005159800982f983a1baa0018a6103d87a80008a6103d879800041c91598009831001456600260c460e86ea80062980103d87a80008a6103d87b800041c913322598009830800c530103d87b80008acc004c180006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041d483a8dd6983d183b9baa0038a6103d879800041d083a0dd6983c183a9baa00330743754002839107218391baa0013002003300100348896600260b80071325330713372c921215b7665726966795f6e6f6e63655d204c6f6f6b696e6720666f72206f7265663a200037326607600291010015330713372c9201215b7665726966795f6e6f6e63655d204e756d626572206f6620696e707574733a20003732660766ea0c018dd6183b18399baa05f48900133008375860ec60e66ea817c94cc1c8cdcb24811f5b7665726966795f6e6f6e63655d20436865636b696e6720696e7075743a200037326607860ee60e86ea80052201001325330733372c9201185b7665726966795f6e6f6e63655d204d6174636865733a200037326607b3001001a60103d87a8000a60103d879800041c891010010013375e60ee60e86ea8004008c1d4c1c8dd5002456600260b600713322598009802000c528c566002600800514a1159800cc004cdd7cc004c1dcc1d0dd50014c1dcc1d0dd5000c8c8c96600260c060ec6ea8c1e8c1ec00a2003132598009830800c4c030cc1e8dd4180d9bad307b3078375400497ae08acc004c1880062005100241d483a8c1d8dd5000a0e83079001307537540028019300103d87b8000a50a5141c51980099baf98009822983a1baa0029822983a1baa001919192cc004c180c1d8dd5183d183d80144006264b30013061001898061983d1ba8304c375a60f660f06ea80092f5c11598009831000c400a200483a9075183b1baa00141d060f200260ea6ea8005003260103d8798000a50a5141c514a0838907120e2307530723754008601260e46ea817a294106f20de181f98371baa009300300319198008009bac3038306937540b044b30010018a5eb822660d86e9cc8c8cc1b8c1bc008cc1b8c0ecc1b0dd5000998371ba9980091838183898389838800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004835906b1b8d001981f198372610b4a5369676e617475726531003306e306f306c375460de60d86ea8004cc1b93010140003306e303d306c37540b697ae048894cc1b4cdcb249165369675374727563747572652e636f6e746578743a200037326606e60e460de6ea8005220100153306d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e608060de6ea8005220100153306d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607c60de6ea8005220100153306d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e600660de6ea800522010013253306e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b88370dc68009bae3072306f375400266e28c008dd7182018379baa0013371460046eb8c0f8c1bcdd500098011bae3003306f37540024bd70183718378009bac306d00133002002306e00141ad22259800982a98351baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130700018acc004cdc4a400860de0030068992cc004c1d4012264b3001305c0018acc004c1c8dd50034026010839a2b3001305b0018992cc00400601313259800800c02a01500a8992cc004c1e400e01900b41d86eb400601483c8c1d800507418391baa0068acc004c17c0062b30013072375400d00980420e680420de41bc8378c1c0dd5002c01d072182c9837800a0da80320e23754003005802c01600a83a0c1c400506f1838801400e007003801a0e4306f00141b460d66ea800e002834122259800982a98351baa0068992cc0040060c113259800800c4c9660020030628992cc0040062b30013073002899912cc004c16c006264b300100183344c966002003067833c4c96600260f000713305b0012259800801401e264b30010018cc0040062600460f600706b403d06b835c1ae0d683e0c1e400907741a10751bac001833c19d078183a800a0e63071375400b159800982d000c4c9660020030668992cc0040060cf0678992cc004c1e000e2660b600244b3001002803c4c96600200319800800c4c008c1ec00e0d6807a0d706b835c1ad07c183c80120ee83420ea3758003067833a0f0307500141cc60e26ea80162b3001305e0018992cc0040060cd13259800800c19e0cf0678992cc004c1e000e00b06841d46eb40060ce83c0c1d400507318389baa0058acc004c0d8006264b300100183344c966002003067833c19e264b30013078003802c1a10751bad001833a0f0307500141cc60e26ea80160ca837106e20dc41b8264b3001305a0018992cc0040060cb13259800800c56600260ec005159800982e18389baa0018992cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c4c96600260f800700f83620f2375a00306b41f060f200283b8dd7000983c00120f2307600141d060e46ea80060cc837a0cc839a0cd0668334199077183a000a0e430703754005159800982c800c4c9660020030658992cc0040062b300130760028acc004c170c1c4dd5000c4c9660020030678992cc004006264b3001001834c4c966002003159800983d00146600200719800800c0360d480620d480620d483ba0d506a83541a907b183c000a0ec307800283441a20d106841e460ec00283a0c1c8dd5000c19906f4199073419a0cd06683320ee307400141c860e06ea800a2b3001305d0018992cc0040060cb13259800800c19a0cd06683344c96600260ee00700a833a0e8375c00283b8c1d000507218381baa00283220da41b48368c1b8dd500098371baa003831a0e0831c18e0c706341d060e20028378c1c400a0c3061830c1850721837800a0da306b375400d05f41a022259800982a18349baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130720028992cc004c164c1b8dd500244c9660020030078992cc004006264b3001001804c4c966002003159800983b80146600200713259800982f000c4c96600200300c8992cc0040062b3001307a0028992cc004c184006264b3001001807c4c966002003159800983e80146600200300b808202680820f4808404202101041f860f600283c8c1dcdd5001456600260c000313259800800c03e264b300100180840420211332259800800c04a264b3001001809c04e0271332259800800c056264b300100180b405a02d13259800984200801c04a02e840808dd6800c05908401184080800a0fe375a00261000200501342040460fc00283e0dd6800983e801404107e183d800a0f23077375400500e41d083a0c1d4dd5000c035077403601b00d806a0f6307800141d860e86ea800a2b3001305d0018acc004c1d0dd5001401a01683aa016838907118391baa001805201a80520e8805402a01500a41e060ea0028398c1d400a01100880440210761839800a0e2306f375400900641b0264b300130590018acc004c1bcdd5001401e00c83822b300130580018992cc00400600f13259800800c02201100880444c96600260ec00700a804a0e6375c00283b0c1cc00507118379baa0028acc004c170006264b3001001803c4c96600260ea00500980420e4307300141c460de6ea800a00c836106c20d8306d375400300541bd005802c01600a8398c1c000506e1838001400e007003801a0e2306e00141b060d46ea800e0028338888c96600260a800313259800800c00e264b300100180240120090048992cc004c1c400e00d00541b86eb80050711837000a0d8306a37540091598009829800c4c9660020030038992cc0040060090048024012264b30013071003803401506e1bae00141c460dc0028360c1a8dd5002400906720ce3068375400705a82d416a0b48358c1a0c194dd5000c54cc18d24014565787065637420536f6d65287369676e65645f7061796c6f61645f6461746129203d2063626f722e646573657269616c6973652872656465656d65722e7061796c6f6164290016418860026eb8c0d4c190dd50299192cc004c13c006298103d87a80008992cc006600260a06eb4c1980069429450634530103d87a80008981c198341832800a5eb810634c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d06548896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b810010034195001400c8310dc680098008009119800911191919bb032374e660d660d0002660d660d200297ae03376060ce00460ce00260d0003300100691000c012007375a60ce0028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130510018cc004012007002918051ba800140351598009828000c6600200900399b80002480fe460146ea0c0f0c0f800500d456600266e1c00920be0189919800800918059ba9001223300648008966002601c00313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014419d19800802400e66e00009207f918051ba9001401c832106420c88acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300d3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180719ba5003001404080810672cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014198833100d4566002605600315980099b87002482f80a33001004801ccc01801888006460146e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300b374e002806900d20c88acc004c0a80062b30013370e004907f0144c8c8cc0040048c030dd30009119803a40044b3001300f0018980125eb7bdb18224646530010069180319838801000cdd69837001200c323376060e200260e260e40026eb0c1b000660020130089807800a00a41a06600c00c4400519800802400e66e0000920bf02919194c0040060072300d374c00280088896600266e24009200089800a5eb7bdb18224646530010069821802c8c014cc1c80080066eb4c1bc0090061919bb0307200130723073001375860da003300100a804c00500520d23300700722002403483222497bdb181014000010120004190832106420c8337060029020111119198008008011119803240044b3001300a0018980125eb8224646530010069180319836001000cdd69834801200c30670019800804401e6014002803106311114c00401200700291980200091801800a012413505b1bae001417860b600282c8dd7000982d005a0b6305800a415904841586eb8005059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500240fd04940fd00e40fd00e40fd00e40fd00e40fd04d1bac00181f40f90501826800a096304d00281e40f207903c413860960028248c12c00a07503a81d40e904c1824800a08e304900281c40e20710384128608e0028228c11c00a06d03681b40d90481822800a086304500281a40d2069034411860860028208c0fcdd5002c0c903c111194c004006009003400444464b3001302f0018992cc00400600d13259800800c01e00f007803c4c96600260980070058042092375c0028260c12400504718229baa0038acc004c0b8006264b300100180344c966002003007803c4c966002609800713302f0012259800801401e264b30010018cc00402a00313002304f003402900b805c02e0168280c13400904b40210491bac001803c01d04c1824800a08e304537540071598009819000c4c9660020030068992cc00400600f0078992cc004c13000e26605e00244b3001002803c4c96600200319800805400626004609e006805201700b805c02d0501826801209680420923758003007803a0983049001411c608a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009827801c4cc0c8004896600200500a8992cc0040063300100d800c4c008c14800d00d403a01d00e80720a63050002413900b41306eb000601500a413c60980028250dd68009825801401d04c1824800a08e304537540071598009804800c4c9660020030068992cc00400600f007803c4c96600260980070058042092375a003007413060920028238c114dd5001c566002601000313259800800c01a264b3001001803c01e00f132598009826001c0160108248dd6800c01d04c1824800a08e3045375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009826001c0160108248dd7000a0983049001411c608a6ea800e00a821104220844108821104220843043375400481740ba05d02e4100601660746ea8c94cc0e4cdcb24812467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea40dd220100132598009813181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a200037326600a002910100132598009815981e9baa0018992cc0040062b30013029303e375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098240014401a0728228c1180050441bae0013045002411860860028208c0fcdd5000c0d103c40d206903481a20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec6018607a6ea8c038c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46600400206e6eb0c02cc0e8dd50131800800911980200111980598031bab300c303b3754601860766ea8004008888c9660020071323233223300b0023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420805980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d103a1bac303d002375a60760026466ec0dd4181d8009ba7303c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6080003337149101023a200098008054c10400600a805100a182180144ca6002015304000199b8a489023a200098008054c104006600e66008008004805100a182180120823043001410066e29220102207d0000340f46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039011207a3758007133007375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40fc66e2ccdc0000acc004cdc4000a402914818229037207e004401866e0c00520203370c002901019b8e00400240f06eb800d0401b8a4881022c200018048049802802a264b300100180e4072264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0cc00a2b30013019302e375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc00400604f027813c09e264b3001303a0038acc004c080c0d4dd500344c9660020030298992cc00400605502a81540aa26644b300100181644c96600200302d816c0b605b132598009820001c660020151301430400158172048817207a375c0028200c0f400503b1bae001303c00240f4607400281c0c0d8dd500340a103340a10371bae00140e8606e00281a8c0dc00a04b025812c095038181a800a0663035002811c08e04702340d860660028188c0bcdd5000c08502c40850304086043021810a068303100140bc6eb8004c0c00090311817000a058375800301c80e205e302c00240a91323259800800c06e03701b899912cc00400603b01d80ec4c8c018c0c001cdd6800c0750301bad001302900280da05c3027001302a00240a101740986eac00602d01680b20523026001409060446ea801e02880fa0288118dd6000c04e0268130c08c0050211bae0013022002408c604000280f0c08000a01d00e8074039021180f000a038301a375401300c405c44464b300130060018992cc00400600713259800800c01200900480244c9660026046007006802a040375c0028118c08000501e180e1baa0048acc004c0140062b3001301c3754009003801203a8012032406460346ea800c88c8cc00400400c88cc00c004c008008dc3a40006e1d20028044022011008406c6030602a6ea800e2c80906028002601e6ea8056293454cc0352411856616c696461746f722072657475726e65642066616c7365001365640301" + : + "592497010100229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a40052232330010010032233003001300200248888c9660026008601c6ea802626464646644b300130180038992cc004c028c050dd5000c4c96600260340031330093756603200244b3001002899805803112cc00400a330012259800800c52f5c113301e301b301f0013300200230200014075374a900048c078c07c00644646600200200644b30010018a508acc004cdc79bae30210010038a518998010011811000a038407d2301e301f301f0019b874801a6e1d20089b8748029222222223322332232332259800980f18141baa00289919191919194c004dd61819000cc0c8016606400930320039819001244444b30013038006899806181b8058998060020998060018998060010acc004c0a4c0ccdd5000c4c8c8ca60026eb8c0e80066eb8c0e800e6eb8c0e800922259800981f00244c8cc896600260820071980091112cc004cdc400124061130010028acc004cdc380124061133004480088c0080062b300133710004901c44cc00ccdc7244103020408003370000490189180119bca4a2003124bded8c10140000101200040fc81f903f4dc024003370e907f01cdc02400522337600046ea00066e052000488888a600244444653001001801c0090011112cc004cdc480124001130014bd70448c8ca600200d30100059180299828801000cdd69827001200c304c0019800804c022002803904948888c8cc00400400888cc01920022598009805800c4c0092f5c1123232980080348c018cc1400080066eb4c1340090061825800cc00402200f300b0014018824244453001004801c00a4660080024600600280512223232323259800981f98249baa00189919914c00489660026088609c6ea800a26464646644b30013058003899804982b802899823001003459055182a8009bad305500230550013054001304f37540051641351980099198008009bac3030304e375409044b30010018a5eb822660a26e9cc8c8cc14cc150008cc14cc0ccc144dd5000998299ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002414c8298dc68009bae30563053375400266e28c008dd7181b98299baa0013371460046eb8c0d4c14cdd500098011bae305630573057305730533754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241448288dc6800981b19829a610b4a5369676e617475726531003305330543051375460a860a26ea8004cc14d3010140003305330353051375409697ae04bd701829982a0009bac30520013300200230530014141230513052305230523052305230523052001911919800800801912cc00400629422b3001300330540018a51899801001182a800a09e4149374a900124444b300132980098289baa001919191919912cc004c13400a29422b300130500028cc004cdd7982d982c1baa0014c103d87b8000a50a51415913233225980098280014528c566002609e00513322598009828982e1baa3041305d375400d13371000400313371200400282d8dd6982f182d9baa003598009827982d1baa303f305b375400f10018980d800a0b28a50416482c8c160dd50009bad305c3059375400860b660b06ea800505620ac3055375400260b260b400660b060aa6ea8004c15c004c14cdd5000c888c8cc8966002609a0051598009826982b9baa0018a6103d87a80008a6103d879800041591598009828001456600260a060ae6ea80062980103d87a80008a6103d87b8000415913322598009827800c530103d87b80008acc004c138006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000416482c8dd6982e982d1baa0038a6103d8798000416082c0dd6982d982c1baa0033057375400282b1056182a9baa00130020033001003488966002609400713233007375860b260ac6ea81348cdd7982d182b9baa0010023058305537540091598009824801c4cc8966002600800314a315980098020014528456600330013375f3001305a30573754005305a3057375400323232598009827182c9baa305d305e0028800c4c966002609e0031300b3305d375060366eb4c178c16cdd500125eb822b3001305000188014400905920b23059375400282c0c170004c160dd5000a0064c0103d87b8000a50a5141551980099baf9800981d982b9baa002981d982b9baa001919192cc004c138c164dd5182e982f00144006264b3001304f001898059982e9ba8301d375a60bc60b66ea80092f5c11598009828000c400a200482c9059182c9baa001416060b800260b06ea8005003260103d8798000a50a51415514a082a905520aa305830553754008600e60aa6ea8132294105320a6181a98289baa0058cc004c150c144dd5002c88c8cc00400400c896600200314800226644b300130050028980b800c4005055182c00099801001182c800a0ac911919800800801912cc00400629422b30013375e00660a860b000314a31330020023059001414c82b244646600200200644b30010018a518acc004c00cc16000626600400460b200314a0829905648c154c158c158c158c158c158c158c158c158006460aa60ac60ac60ac60ac60ac60ac0032259800982418291baa002899192cc004c16400a0071641586eb4c15c004c14cdd500145905148c154c158c158c158c1580064464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320ae899802802982e80220ae375c60ac0026eacc15c004c1640050570a5eb7bdb18244b30010018a400113013330020023057001415123055305630563056305630560019112cc00400a2980103d87a80008acc004c12400626072660ac60ae00497ae08cc00400e60b00053016001400c829105548966002003148002260266600400460ae00282a244b30010018a5eb82264660ac6ea0004cc00c00cc8cc004004c16400c896600200314bd7044cc896600330013370e00400b4a14a282b22660b46ea0008cc01001000626600800800282b0dd6982c800982d000a0ae375a60ac00282a2444646600200200844b300100189982c19bb037520086ea000d2f5bded8c113298009bae30560019bad3057001982d8012444b30013372001000713305c337606ea4020dd4003802c56600266e3c02000e2660b866ec0dd48041ba800700189982e19bb037520066ea0008cc01801800505820b0182c800a0ae911919800800801912cc004006297ae0899912cc004cdd7982d182b9baa305a30573754607660ae6ea8008c01ccc164dd4802a5eb822660b200466008008003133004004001415460b000260b200282b244b30010018a40011301333002002305700141512259800800c520008980999801001182b800a0a89b8848001222222222222222222298009111191980080080291192cc004c18000626609c00c6eb8c1b8c1acdd5001456600260be003133017375860dc60d66ea80088cc0100100062b3001306300189980e1bac306e306b37540044660080080031598009826000c4c8cdc49bad306f0013301a375860de60e000246600a00a00260d66ea800a2b3001304b00189919912cc004c188c1b4dd5001456600260c460da6ea8c1c4c1c800e266e24dd6983898371baa002001899b88375a60e260dc6ea800800506c452820d8306f001375a60de60d86ea800cc1acdd5182798359baa0058acc004c1280062646644b30013062306d3754005159800983118369baa30713072003899b89001375a60e260dc6ea800a266e20004dd6983898371baa00241b114a08360c1bc004dd6983798361baa003306b375460dc60d66ea80162660300086036660da60dc60d66ea80092f5c0834906920d241a4834906918349baa00198050054c18cdd5009c8888c8cc00400401488c96600260c00031323259800983118361baa001899194c004dd718390014dd718391839800cdd71839000ae5460e40026eb0c1c0c1b4dd5000c52820d632330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60e40020091305433071374e00297ae0899801801983980120da375860e20028378dd7183718359baa0028acc004c17c00626602e6eb0c1b8c1acdd5001119802002000c56600260c600313301c375860dc60d66ea80088cc0100100062b3001304c00189919b89375a60de002660346eb0c1bcc1c00048cc014014004c1acdd500145660026096003132332259800983118369baa0028acc004c188c1b4dd518389839001c4cdc49bad3071306e37540040031337106eb4c1c4c1b8dd5001000a0d88a5041b060de0026eb4c1bcc1b0dd500198359baa304f306b375400b1598009825000c4c8cc896600260c460da6ea800a2b30013062306d375460e260e40071337120026eb4c1c4c1b8dd500144cdc40009bad3071306e37540048362294106c18378009bad306f306c375400660d66ea8c1b8c1acdd5002c4cc060010c06ccc1b4c1b8c1acdd500125eb8106920d241a4834906920d23069375400330080089803803cc01801a6006007222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906b44cc014014c1c401106b1bae306a001375a60d600260da0028358cc03c01000c520009801001244444444446530012225980099b87300d0023009300832330010010032259800800c52f5c11330763073307700133002002307800141d5132330010010032259800800c52f5c30100008101a0008101a00044c8c8c8cc896600260dc60f06ea800a264b3001300900189983e1ba8337006eb4c1f4008dd6982f183d1baa0013307c374c64b3001306f307a37540031375660be0071375660fc60f66ea8005079192cc004c1bcc1e8dd5000c530103d87a8000898301983e9ba698009bab305f0039bae307e307b3754003005407097ae041e460b860f46ea8004cc1f0dd34c004dd5982e0014dd9983e983f002c01101b25eb822c83c0c1f0c1e4dd50014590771980480400099802802983d8021bad30790013307730740013307730750014bd70183b800a0ea8b20e091112cc004cdc398040021804001c4cc07c0108c96600260d460e86ea8006264b3001306b3075375400313322598009838183b9baa001899192cc004c1bcc1e4dd500144c8c8c8ca60026102020033081010039840808012444b300130850100489982c98420080389981b0010992cc004c1dc00626464b3001308801002805c59085011bad3086010013082013754005159800983b000c4c8c96600261100200500b8b210a02375a610c020026104026ea800a2c840009080011840009baa0018b210402184080800984000800983f800983d1baa0028b20f015980099baf305d3079375400260f860f26ea800e2b3001337126eb4c174c1e4dd5001cc004dd5982e983c9baa305d3079375400d375c60f800f375c60ba00e806a264b3001306f3079375400313370e6eb4c1f4c1e8dd50009bad305e307a375400913370e6eb4c1f4c1e8dd50009bad305e307a375400883c0c16cc1e4dd5000c59077459077183d983c1baa0018b20ec30793076375400260b060ec6ea8c168c1d8dd5001c59074198038029bad3078307537540031641cc6644646600200200c44b3001001801c4c8cc896600266e4401c00a2b30013371e00e005130603307d375000297ae080320f2899802802983f80220f2375c60f00026eb4c1e4004c1ec0050791bb3307730743754002298103d87a80008b20e291112cc004cdc398030011804001c4ca60020034800200880088896600200314a313322598009836983b9baa0018992cc004c1b8c1e0dd5000c4c96600260de60f26ea8006264b30013375e60fc60f66ea8004c1f8c1ecdd5183f183d9baa0058acc004cdd7982e983d9baa001305f307b375460fc60f66ea80162b300198008044c0ec01e60fe00c8042266e1e60026eacc17cc1ecdd5000cdd7183f004cdd7182f804a01e325980099b880014800226074003100141e86eb4c17cc1ecdd5002c52820f28b20f28b20f2307d307a37540031641e0660160146eb4c1f0c1e4dd5000c5907718181bae307b307837540031641d860f2002646600200200c44b30010018a60103d87a80008992cc004cdc38029bad30790018982f1983d983c000a5eb8226600600660fa00483b8c1ec00507920ee8b20e29111919912cc004cdc39bad30780010028992cc004cc896600200314a11329800992cc004c1bcc1e4dd5000c4dd6983d183e9bab307d307a3754003148001078183e000cdd7983e183e800cdd58012444b30010018acc004c008016266e2520000038a5041e91325980099baf307c0014c010140008acc004cdc49bad307d308001375660fa00200913003374c61020200514a083da2b300133712900000244c00c01a294107b20f6307f00141f4329800800c00e44660fa004660fa6e980052f5c08008889660020051330014c103d87a80004bd6f7b63044ca60026eb8c1ec0066eacc1f00066100020069112cc004cdc8a441000038acc004cdc7a44100003899802983219840809ba60024bd70000c4cc015300103d87a800000641f519800803c006446600e004661060266ec0dd48029ba6004001401c83e860fc00483e229422942294107d1bab305a002374c660f066ec0c1e4004dd31983c19bb03079307a001375066e0400c0152f5bded8c097adef6c608801c590741bac301a3075375400d1641ccb30013068300e0018a4001159800983b800c4c96600266e3cdd71839800a44104555344720089bad30740018b20e430760018b20e841c46464b3001306a307437540031325980099baf30793076375460f260ec6ea8c168c1d8dd500098131983c1ba90034bd7044c96600260de60ec6ea800626466042002264b3001306e307837540031325980099baf307d307a375460fa60f46ea8004c0a8cc1f0dd4803a5eb82264b30013073307a37540031323302500113307e375066e04dd6983f983e1baa001375a60fe60f86ea8014cc1f8dd3194c0040066eacc184c1f4dd50024c8cc004004dd59831183f1baa3062307e375401244b30010018a5eb7bdb182264661040266ec0c1fc004dd319198008009bab3081010022259800800c52f5bded8c11323308501337606104020026ea0c104dd698418080099801801984380801184280800a1060233003003308401002308201001420004800888966002005100189919914c00401a610c0200b32330010010052259800800c4cc21804cdd81ba9004374c00697adef6c608994c004dd7184200800cdd5984280800cc224040092225980099b900080038998450099bb037520106e9801c0162b30013371e01000713259800acc0040062946294108a014400a2661160266ec0dd48049ba6001002421c04653001001804400d0011112cc00400a2003132332298008034c24804016646600200200a44b30010018998490099bb037520086ea000d2f5bded8c113298009bae3090010019bad309101001984a808012444b30013372001000713309601337606ea4020dd4003802c56600266e3c02000e264b3001308a01001880144cc25c04cdd81ba90093750002004849808cdc000380144cc25804cdd81ba900337500046600c00c002849009092010c24c0400509101200c375c6116020026eb4c23004004c2380400908c0144cc22804cdd81ba9003374c0046600c00c002843009086010c21c0400508501200c375c60fe0026eacc20004004c208040090800125eb80c1f8c1ecdd5000c59079182e183d1baa0018b20f0307c307937540031641dc660a66eb0c168c1e0dd500411982e182a9bab305d3079375400200c60f460ee6ea80062c83a8c160c1d8dd5182d183b1baa0018b20e830783075375400314bd7090100008101a00020e63304e375860ee60e86ea8010004dd7183b18399baa301b30733754008660326eacc068c1c8dd50011bae305630723754603460e46ea800d2222598009834006c4c966003300130773074375409b0279813183a1baa06b9bab301e307437540d6806a26464b300198009980b1bac3079307637540da6eb8c160c1d8dd5180f183b1baa04f801cdd5983c800cdd6180d983b1baa04f4019159800cc004dd6182c183b1baa06d801cdd5983c983d000ccc1e0c168c1d8dd5180f183b1baa04f330784c1054455534472004bd70200a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba460246eb4c164c1d4dd5000a00a8b20e4375860ec60e66ea808a2b3001306700d8992cc006600260b060e86ea813604f3026307437540d73756603c60e86ea81ad00d44c8c966003300133016375860f260ec6ea81b4dd7182c183b1baa301e3076375409f0039bab30790019983c182d183b1baa301e3076375409e660f0981054455534472004bd70200c8acc00660026eb0c160c1d8dd5036c00e6eacc1e4c1e80066eb0c06cc1d8dd5027a00a899b879800827c1b690002008375a60f20051641d11641d060f200330010019bab30773074375460ee60e86ea81ba466e20dd6982c983a9baa001480010054590721bac3076307337540451598009835806c4c966003300130563074375409b3758603e60e86ea81ae604c60e86ea81ae6eacc078c1d0dd5035a0208acc004c044006260d3300104d835c0050024590724590721bad30763073375404513259800cc004c158c1d0dd5026cdd6180f983a1baa06b9813183a1baa06b9bab301e307437540d680822b3001301100189834cc0041360d7337040029000a0048b20e48b20e4375a60ec60e66ea808907120e241c4225980099b8800148002298103d87a8000899804001000a0dc22c82792259800982218271baa00289919192cc004c15800a26464b300130490018acc004c150dd5001401a2c82aa2b30013048001899192cc004c16800a01116415c6eb4c160004c150dd500145660026098003159800982a1baa00280345905545905220a4414860a46ea8004c15400e2c8298c96600260a400315980099b8948010c1440062d130463051001414116414c6ea8c150004c150004c13cdd500145904d2444b30013045304f3754009132323259800982b80144c8cc8966002609600513259800982d800c4cc128dd6182d000912cc00400a00913300c305c00213001305d002416916416060ac6ea800e2b3001304a0028992cc004c16c0062660946eb0c1680048966002005004899806182e00109800982e80120b48b20b030563754007159800982700144c8c96600260b80050038b20b2375a60b400260ac6ea800e2b30013037002899192cc004c17000a0071641646eb4c168004c158dd5001c5905420a8415082a0c14cdd50008992cc004c128006264b3001305a0018992cc004c130c158dd5000c4c8c8cc896600260be00700d8b20b8375a60b80026eb8c170008c170004c15cdd5000c59055182c800c59057182a9baa0038acc004c124006264b3001305a0018992cc004c130c158dd5000c4c8c8c96600260bc00513300b305d00313300b00100c8b20b6305c001305c0013057375400316415460b200316415c60aa6ea800e2b3001304d001899192cc004c16c00a0131641606eb8c164004c154dd5001c5905320a6414c60a66ea8008c15800e2c82a0c154004c154004c140dd500245904e08966002608460986ea800a2646464b30013054002899912cc004c11cc144dd500144c8c8c96600260b200513300b3058003132598009825800c4c96600260b600313232598009827000c4c96600260bc003133010305d0010098b20b6305937540051598009826800c4c8c8ca60026eb4c17c0066eb4c17c00e6eb4c17c009222598009831802403a2c830060be00260bc00260b26ea800a2c82b9057182b9baa001305a0018b20b0305637540051598009825000c56600260ac6ea800a00b16415d16415082a0c150dd5000c59056182b800982b80098291baa0028b20a03053003132598009823000c56600260a26ea800a00b1641491598009822800c4c8c96600260ae0050078b20a8375c60aa00260a26ea800a2b30013049001899192cc004c15c00a00f16415060aa00260a26ea800a2c827904f209e304f375400316414460a400260a4002609a6ea800a2c8258c138c12cdd500111192cc004c10800626464b300130530028024590501bae3051001304d37540071598009820800c4c8c96600260a60050048b20a0375c60a2002609a6ea800e2c825904b18259baa0028b20903001375c605a60926ea810c8c966002607e00314c103d87a80008992cc006600260806eb4c12c0069429450494530103d87a800089818198269825000a5eb810494c00488006444b3001337120029000452f7b63010140000101200089980119b8e0053370200800266e0400400d04b48896600266e2400520008a5ef6c601014000010120008998014c004cdc0802000c00e00ab8c19b81001003412d001400c8240dc680098008009119800911191919bb032374e660a0609a002660a0609c00297ae03376060980046098002609a003300100691000c012007375a60980028032600200b22001801c00a002802888cc00920022325980099b89001480122b300130410018cc004012007002918061ba8001403d1598009820000c6600200900399b80002480fe460186ea0c03cc02c00500f456600266e1c00920be0189919800800918069ba9001223300648008966002602000313002489008cc00401e00d33700002903fc8cc0100108c010cdc5001000a014413519800802400e66e00009207f918061ba9001401c825104a20948acc004cdc3800a401919800802400e66e0000920ff02919802a40044b30013370e004906600c492f7b63001014000010120008992cc004cdc38012417c0519800803c01a66012012440032300f3374a004002805a330010078034cdc0001241fe0329800804401e66014014440030019180819ba50030014034809104d2cc004cdc4a41002800513370066e0000920ff134803a266e0000920f1014130826100f4566002605800315980099b87002482f80a33001004801ccc01801888006460186e9c00500846600200900399b80002483fc06530010058024cc01c01c880060032300d374e002805100f20948acc004c0ac0062b30013370e004907f0144c8c8cc0040048c038dd30009119803a40044b300130110018980125eb7bdb1822464653001006918031982b001000cdd69829801200c323376060ac00260ac60ae0026eb0c14400660020130089808800a00a41386600c00c4400519800802400e66e0000920bf02919194c0040060072300f374c00280088896600266e24009200089800a5eb7bdb1822464653001006980b002c8c014cc15c0080066eb4c1500090061919bb0305700130573058001375860a4003300100a804c005005209e3300700722002403c82522497bdb181014000010120004128825104a209433706002902011640f86eb8c0f8004dd7181f006181f005c5903b0c0e8004c0e4004c0d0dd5000c590324590350c0c8004c0c4004c0c0004c0bc004c0b8004c0a4dd5001459027180598139baa3259800980e98139baa0018992cc004c084c0a0dd5000c4c966002603e60526ea8006264646644b300130320038802c5902f18178009bae302f002302f001302a37540031640a0605860526ea80062c8138c028c0a0dd5180618141baa302b30283754003164098660026eb0c02cc09cdd500f0121802002111980180111980618029bab300d30293754601a60526ea80040088c00c00488c8cc00400400c896600200314c103d87a80008992cc004c0100062601c6605600297ae08998018019816801204e302b00140a4601001044464b3001301b001899192cc004c0b000a0091640a46eb8c0a8004c098dd5001c5660026034003132598009815800c4cc068dd61815000912cc00400a00b19800803cc0b000a26002605a004803902a45902818131baa0038acc004c078006264b3001302b00189980d1bac302a0012259800801401633001007981600144c004c0b400900720548b2050302637540071598009803800c4c8cc8966002605a00313301c3758605800244b3001002803c66002013302e002898009817801201240b11640a86eb4c0a8004c0ac004c098dd5001c566002600c0031323259800981600140122c8148dd6981500098131baa0038acc004c01400626464b3001302c0028024590291bad302a0013026375400715980099b874803000626464b3001302c0028024590291bae302a00130263754007164090812102420484090812102418121baa00244c8cc89660026042003132598009809980e9baa0018991919192cc004c09800a264b3001301830223754003132323322598009815801c4cc064c0a80204c038c0ac03e2c8140dd718140009bae3028002302800130233754003164084604a00916408c6eb8c090004c090004c08c004c078dd5000c5901c1810000c5901e1bae301e001301f0013758603a00480da26466446008603e00a6eb4c060004dd6980c800980d80120328b202e3015375400316404c602e00b1640546eb0c054004dd7180a801180a800980a00098079baa0098b201a2232598009803000c4c8c966002602e0050048b2028375c602a00260226ea800e2b300130050018acc004c044dd5001c00a2c80922c807900f18079baa0024590080c024004c010dd5005452689b2b200401", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/src/generated-types/v0_4/index.ts b/modules/realfi-partner-sdk/src/generated-types/v0_4/index.ts new file mode 100644 index 0000000000..faa9ec5f0f --- /dev/null +++ b/modules/realfi-partner-sdk/src/generated-types/v0_4/index.ts @@ -0,0 +1,619 @@ +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { type Script } from "@blaze-cardano/core"; +import { Type, Exact, TPlutusData } from "@blaze-cardano/data"; +type Data = Exact; +type Int = bigint; +type ByteArray = string; +const PolicyId = Type.String(); +type OutputReference = { output_index: bigint; transaction_id: string }; + +const Contracts = Type.Module({ + Bool: Type.Boolean(), + Tuple_VerificationKey_COSESign1: Type.Tuple([ + Type.String(), + Type.Ref("COSESign1"), + ]), + COSESign1: Type.Object({ + headers: Type.Ref("Headers"), + payload: Type.Optional( + Type.String() + ), + signature: Type.String(), + }, { ctor: 0n }), + HeaderMap: Type.String(), + Headers: Type.Object({ + protected: Type.Ref("HeaderMap"), + unprotected: Type.Ref("HeaderMap"), + }, { ctor: 0n }), + MultisigScript: Type.Union([ + Type.Object({ + Signature: Type.Object({ + key_hash: Type.String(), + }, { ctor: 0n }) + }), + Type.Object({ + AllOf: Type.Object({ + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 1n }) + }), + Type.Object({ + AnyOf: Type.Object({ + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 2n }) + }), + Type.Object({ + AtLeast: Type.Object({ + required: Type.BigInt(), + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 3n }) + }), + Type.Object({ + Before: Type.Object({ + time: Type.BigInt(), + }, { ctor: 4n }) + }), + Type.Object({ + After: Type.Object({ + time: Type.BigInt(), + }, { ctor: 5n }) + }), + Type.Object({ + Script: Type.Object({ + script_hash: Type.String(), + }, { ctor: 6n }) + }), + ]), + Asset: Type.Tuple([ + Type.String(), + Type.String(), + ]), + Destination: Type.Object({ + address: Type.Object({ + payment_credential: Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([ + Type.String(), + ], { ctor: 0n }) + }), + Type.Object({ + Script: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + ]), + stake_credential: Type.Optional( + Type.Union([ + Type.Object({ + Inline: Type.Tuple([ + Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([ + Type.String(), + ], { ctor: 0n }) + }), + Type.Object({ + Script: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + ]), + ], { ctor: 0n }) + }), + Type.Object({ + Pointer: Type.Object({ + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt(), + }, { ctor: 1n }) + }), + ]) + ), + }, { ctor: 0n }), + datum: Type.Union([ + Type.Literal("NoDatum", { ctor: 0n }), + Type.Object({ + DatumHash: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + Type.Object({ + InlineDatum: Type.Tuple([ + TPlutusData, + ], { ctor: 2n }) + }), + ]), + }, { ctor: 0n }), + ExtraProtocolRedeemer: Type.Object({ + request_to_outputs: Type.Array( + Type.BigInt() + ), + input_to_requests: Type.Array( + Type.BigInt() + ), + treasury_input_idx: Type.BigInt(), + treasury_output_idx: Type.BigInt(), + vault_input_idx: Type.Optional( + Type.BigInt() + ), + vault_output_idx: Type.Optional( + Type.BigInt() + ), + }, { ctor: 0n }), + Nonce: Type.Union([ + Type.Object({ + UTxO: Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + ], { ctor: 0n }) + }), + Type.Object({ + Validity: Type.Tuple([ + Type.Object({ + lower_bound: Type.Object({ + bound_type: Type.Union([ + Type.Literal("NegativeInfinity", { ctor: 0n }), + Type.Object({ + Finite: Type.Tuple([ + Type.BigInt(), + ], { ctor: 1n }) + }), + Type.Literal("PositiveInfinity", { ctor: 2n }), + ]), + is_inclusive: Type.Ref("Bool"), + }, { ctor: 0n }), + upper_bound: Type.Object({ + bound_type: Type.Union([ + Type.Literal("NegativeInfinity", { ctor: 0n }), + Type.Object({ + Finite: Type.Tuple([ + Type.BigInt(), + ], { ctor: 1n }) + }), + Type.Literal("PositiveInfinity", { ctor: 2n }), + ]), + is_inclusive: Type.Ref("Bool"), + }, { ctor: 0n }), + }, { ctor: 0n }), + ], { ctor: 1n }) + }), + ]), + OrderAction: Type.Union([ + Type.Object({ + OMint: Type.Object({ + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, { ctor: 0n }) + }), + Type.Object({ + ORedeem: Type.Object({ + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, { ctor: 1n }) + }), + Type.Object({ + ODeposit: Type.Object({ + principal: Type.BigInt(), + yield: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, { ctor: 2n }) + }), + Type.Object({ + OWithdraw: Type.Object({ + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, { ctor: 3n }) + }), + Type.Object({ + OStake: Type.Object({ + amount: Type.BigInt(), + }, { ctor: 4n }) + }), + Type.Object({ + OUnstake: Type.Object({ + amount: Type.BigInt(), + }, { ctor: 5n }) + }), + ]), + OrderDatum: Type.Object({ + owner: Type.Ref("MultisigScript"), + destination: Type.Ref("Destination"), + action: Type.Ref("OrderAction"), + data: TPlutusData, + }, { ctor: 0n }), + OrderRedeemer: Type.Union([ + Type.Literal("Execute", { ctor: 0n }), + Type.Literal("Cancel", { ctor: 1n }), + ]), + ProtocolRedeemer: Type.Union([ + Type.Object({ + Mint: Type.Object({ + requests: Type.Array( + Type.Ref("TreasuryRequest") + ), + }, { ctor: 0n }) + }), + Type.Object({ + Burn: Type.Object({ + requests: Type.Array( + Type.Ref("TreasuryRequest") + ), + }, { ctor: 1n }) + }), + Type.Object({ + Withdraw: Type.Object({ + requests: Type.Array( + Type.Ref("TreasuryRequest") + ), + }, { ctor: 2n }) + }), + Type.Object({ + Deposit: Type.Object({ + requests: Type.Array( + Type.Ref("TreasuryRequest") + ), + }, { ctor: 3n }) + }), + Type.Object({ + Stake: Type.Object({ + requests: Type.Array( + Type.Ref("Request") + ), + }, { ctor: 4n }) + }), + Type.Object({ + Unstake: Type.Object({ + requests: Type.Array( + Type.Ref("Request") + ), + }, { ctor: 5n }) + }), + ]), + ProxyDatum: Type.Object({ + logic: Type.String(), + settings: Type.Ref("Settings"), + }, { ctor: 0n }), + Registry: Type.Object({ + treasury: Type.String(), + usdr: Type.String(), + order: Type.String(), + staking_vault: Type.String(), + susdr: Type.String(), + }, { ctor: 0n }), + Request: Type.Object({ + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + origin: Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + }, { ctor: 0n }), + ReserveAsset: Type.Object({ + asset: Type.Ref("Asset"), + numerator: Type.BigInt(), + denominator: Type.BigInt(), + }, { ctor: 0n }), + Settings: Type.Object({ + mint_permission: Type.Ref("MultisigScript"), + burn_permission: Type.Ref("MultisigScript"), + withdraw_permission: Type.Ref("MultisigScript"), + deposit_permission: Type.Ref("MultisigScript"), + stake_permission: Type.Ref("MultisigScript"), + unstake_permission: Type.Ref("MultisigScript"), + registry: Type.Ref("Registry"), + reserve_assets: Type.Array( + Type.Ref("ReserveAsset") + ), + unstaked_yield_pot: Type.Object({ + payment_credential: Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([ + Type.String(), + ], { ctor: 0n }) + }), + Type.Object({ + Script: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + ]), + stake_credential: Type.Optional( + Type.Union([ + Type.Object({ + Inline: Type.Tuple([ + Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([ + Type.String(), + ], { ctor: 0n }) + }), + Type.Object({ + Script: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + ]), + ], { ctor: 0n }) + }), + Type.Object({ + Pointer: Type.Object({ + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt(), + }, { ctor: 1n }) + }), + ]) + ), + }, { ctor: 0n }), + }, { ctor: 0n }), + SignedPayload_ProtocolRedeemer: Type.Object({ + action: Type.Ref("ProtocolRedeemer"), + nonce: Type.Ref("Nonce"), + }, { ctor: 0n }), + SignedRedeemer_ExtraProtocolRedeemer: Type.Object({ + extra: Type.Ref("ExtraProtocolRedeemer"), + payload: Type.Ref("SignedPayload_ProtocolRedeemer"), + signatures: Type.Array( + Type.Ref("Tuple_VerificationKey_COSESign1") + ), + }, { ctor: 0n }), + StakingVaultRedeemer: Type.Undefined(), + TreasuryRequest: Type.Object({ + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + yield: Type.BigInt(), + origin: Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + reserve_asset: Type.Ref("Asset"), + }, { ctor: 0n }), + VaultDatum: Type.Object({ + circulating_susdr: Type.BigInt(), + }, { ctor: 0n }), +}); + +export const Bool = Contracts.Import("Bool"); +export type Bool = Exact; +export const Tuple_VerificationKey_COSESign1 = Contracts.Import("Tuple_VerificationKey_COSESign1"); +export type Tuple_VerificationKey_COSESign1 = Exact; +export const COSESign1 = Contracts.Import("COSESign1"); +export type COSESign1 = Exact; +export const HeaderMap = Contracts.Import("HeaderMap"); +export type HeaderMap = Exact; +export const Headers = Contracts.Import("Headers"); +export type Headers = Exact; +export const MultisigScript = Contracts.Import("MultisigScript"); +export type MultisigScript = Exact; +export const Asset = Contracts.Import("Asset"); +export type Asset = Exact; +export const Destination = Contracts.Import("Destination"); +export type Destination = Exact; +export const ExtraProtocolRedeemer = Contracts.Import("ExtraProtocolRedeemer"); +export type ExtraProtocolRedeemer = Exact; +export const Nonce = Contracts.Import("Nonce"); +export type Nonce = Exact; +export const OrderAction = Contracts.Import("OrderAction"); +export type OrderAction = Exact; +export const OrderDatum = Contracts.Import("OrderDatum"); +export type OrderDatum = Exact; +export const OrderRedeemer = Contracts.Import("OrderRedeemer"); +export type OrderRedeemer = Exact; +export const ProtocolRedeemer = Contracts.Import("ProtocolRedeemer"); +export type ProtocolRedeemer = Exact; +export const ProxyDatum = Contracts.Import("ProxyDatum"); +export type ProxyDatum = Exact; +export const Registry = Contracts.Import("Registry"); +export type Registry = Exact; +export const Request = Contracts.Import("Request"); +export type Request = Exact; +export const ReserveAsset = Contracts.Import("ReserveAsset"); +export type ReserveAsset = Exact; +export const Settings = Contracts.Import("Settings"); +export type Settings = Exact; +export const SignedPayload_ProtocolRedeemer = Contracts.Import("SignedPayload_ProtocolRedeemer"); +export type SignedPayload_ProtocolRedeemer = Exact; +export const SignedRedeemer_ExtraProtocolRedeemer = Contracts.Import("SignedRedeemer_ExtraProtocolRedeemer"); +export type SignedRedeemer_ExtraProtocolRedeemer = Exact; +export const StakingVaultRedeemer = Contracts.Import("StakingVaultRedeemer"); +export type StakingVaultRedeemer = Exact; +export const TreasuryRequest = Contracts.Import("TreasuryRequest"); +export type TreasuryRequest = Exact; +export const VaultDatum = Contracts.Import("VaultDatum"); +export type VaultDatum = Exact; + +export class V0_4OrderOrderSpend { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5911bb010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004888c966002601400313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a37540091598009807800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024009017202e301837540072259800800c52f5c113301a3017301b00133002002301c00140652225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640592232330010010032233003001300200291111919800800802912cc004006200b13259800800c4cc010c08000801a26600a60400046600600600280f0c08000501d488c8cc00400400c896600200314c0103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444445300130060069802802c888ca6002003004801a0022223259800980a000c4c9660020030068992cc00400600f007803c01e264b3001302b003802c0210281bae00140ac60500028130c090dd5001c566002603200313259800800c01a264b3001001803c01e264b3001302b003899807000912cc00400a00f13259800800c66002015001898011817001a014805c02e01700b40bc605800481520108140dd6000c01e00e8158c0a000502618121baa0038acc004c03c006264b300100180344c966002003007803c4c966002605600713300e0012259800801401e264b30010018cc00402a00313002302e003402900b805c02e0168178c0b000902a40210281bac001803c01d02b1814000a04c3024375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605c0071330110012259800801402a264b30010018cc004036003130023031003403500e807403a01c8190c0bc00902d402d02b1bac001805402902e1815800a052375a002605400500740ac60500028130c090dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0ac00e00b00840a06eb400600e8158c0a000502618121baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815801c0160108140dd6800c01d02b1814000a04c3024375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815801c0160108140dd7000a0563028001409860486ea800e00a81090212042408481090212042302237540053300237586040603a6ea80448cdd79810980f1baa00101048888c8c8cc88c966002602c604a6ea801a264b3001301c3026375400315980099b8f375c6054604e6ea8004dd7180598139baa3016302737546028604e6ea8c96600200319800800c40060468022047023811c08d02d198011bac30143027375403604713233225330283372c9210d63726564656e7469616c3a3a200037326600e0049101001330180010023374a9001198151ba90014bd701bab3017302837540386eb8c0a8c09cdd5198011bac301430273754036047153302549013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f7264657200164091153302549132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f63726564001640906052604c6ea8c0a4c098dd5180998131baa30293026375400d15330244913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408c44a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980c18139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a98149baa0018992cc004006330010018800c099007409a04d0268132060302d302a375400315330284913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601a60526ea8c058c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601800446602860166eacc054c0a0dd5180a98141baa001002300100122259800980b18129baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302f0028acc004c06cc0a8dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200313259800800c04e264b30010018992cc00400602b13259800800c05a02d1332259800800c062264b30010018acc004c10800a330010128cc0040423300100e8cc0040323300100a8cc0040222b3001302e303d375400d13259800800c06a264b300100180dc06e03701b899912cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f0278992cc004c14400e26606802444b30010028acc004c0fcc138dd500944c96600200302b8992cc004006264b3001001816c4c966002003159800982b801466002007132598009822000c4c9660020030308992cc0040062b3001305a0028992cc004c11c006264b3001001819c4c966002003159800982e80146600200303581a208681a20b481a40d2069034417860b600282c8c15cdd50014566002609800313259800800c0ce264b300100181a40d20691332259800800c0da264b300100181bc0de06f1332259800800c0e6264b300100181d40ea075132598009832001c0f20768308dd6800c0e90641830800a0be375a00260c0005037418460bc00282e0dd6800982e80140d105e182d800a0b230573754005032415082a0c154dd5000c0c505740c6063031818a0b63058001415860a86ea800a2b300130490018acc004c150dd500140c205e82aa05e828905118291baa001817207a81720a881740ba05d02e416060aa0028298c15400a05902c81640b10561829800a0a2304f375402502a413113259800800c5660026080609e6ea8006264b300100181644c96600200302d816c4cc896600200302f8992cc00400606103081844cc89660020030328992cc004006067033819c4c96600260ba007159800803c0d2264b300100181ac0d606b035899912cc00400606f13259800800c0e207103881c44c96600260c400713010306201181ca0be375c0028310c17c00505d1bae001305e008417c60b800e82d206882d0dd6800c0cd05d182d000a0b0375a00260b2005030416860ae00282a8dd6000982b00140b605a82b8c15000505218281baa001815a09a815c0ae05702b415460a400482820508270dd7000a0a2304e00141306eb8004c13400904e1825800a092375c00260940048258c1200050461bae00130470024120608a0028218dd70009822001208a30420014100607c6ea801a03281da03280fa03280fa03280fa03280fa03280fa03280fa03281fa03301980cc0650431820000a07c3758002607e00501680b2080303d00140ec607a00501480a405202881f0c0ec005039181d801404a0250128092078303900140dc6072005010808404202081d0c0dc005035181b801403a01d00e8072070303500140cc606a00500c806403201881b0c0cc0050311819801402a01500a8052068303100140bc606200500880440220108190c0bc00502d18159baa00180320508032058803401a00d00640c0605a0028158dd70009816001205a302a00140a0604c6ea800e0028118888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020565980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81290251bac3028002375a604c0026466ec0dd418130009ba73027001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6056003337149101023a200098008054c0b000600a805100a181700144ca6002015302b00199b8a489023a200098008054c0b0006600e66008008004805100a18170012058302e00140ac66e29220102207d0000340a06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d20503758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720543371666e000056600266e2000520148a40c11481b902a002200c33706002901019b8600148080cdc7002001204e375c0068158dc5245022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408881108acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" + : + "590882010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc00488c96600260120031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c03800626464b3001301c0028024590191bae301a0013016375400716405080a0c050dd50014896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a6103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a44444646466446644b30013011301d375400313259800980b980f1baa0018acc004cdc79bae3022301f37540026eb8c020c07cdd51808980f9baa300f301f3754646600c0022002660066eb0c03cc07cdd500b00e44cc040dd59808980f9baa0163374a9001198109811180f9baa330033758601e603e6ea80580712f5c11640751640746042603c6ea8c084c078dd51807180f1baa3021301e37540031640704464b30013012301e3754003132598009807180f9baa001899198038008800981198101baa0018b203c3008301f3754601e603e6ea8c088c07cdd5000c5901d1980400111980718021bab300f301f3754601e603e6ea8004008cc018dd6180f980e1baa01323375e6040603a6ea80040488966002601e60366ea800a2646644b300130230018992cc004c04cc07cdd5000c4c8c8c8c8c8c8c8c8ca60026058003302c0089816003cc0b001a605800b302c0049816001cdd61816001244444444b3001303500989980c181a00889980c00389980c00309980c00289980c00209980c0018acc004c090c0c0dd500144c8c8c8c8ca60026eb8c0e40066eb8c0e40166eb8c0e40126eb8c0e400e6eb8c0e40092222259800981f80344cc09802c89660020051598009818181e1baa01489919192cc004c11000a26605a6086006264b300130340018992cc004c11800626464b300130370018992cc004c124006266064609000205516411860886ea800a2b3001303c00189919194c004dd69825000cdd69825001cdd698250012444b3001304e004817c5904b0c128004c124004c110dd5001459042208430423754002608a00316410c60826ea800a2b300130390018acc004c104dd5001409a2c82122c81f903f181f9baa0018b208230420013042001303d37540291640ed132598009818981e9baa001899191919912cc004c11c00e264646644b3001304b0038980598258064590481bae3048001375c609000460900026eb0c1180162c8220dd698220009bad304400230440013043001303e37540031640f0608000481f22c81e060720026070002606e002606c00260626ea800a2c817a2c819060580026056002605400260520026050002604e002604c002604a00260406ea80062c80f0c0880062c8100dd718100009810800980e1baa0028b20343006006300100122232598009807800c4c8c96600260440050048b203e375c604000260386ea800e2b300130140018992cc004c0840062660106eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c5660026014003132598009810800c4cc020dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004cdc3a400c0031323322598009811800c4cc028dd61811000912cc00400a00f19800804cc09000a26002604a00480490224590201bad30200013021001301c375400715980099b874802000626464b3001302200280245901f1bad3020001301c375400715980099b874802800626464b3001302200280245901f1bad3020001301c375400715980099b874803000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa0024566002600c60246ea801e33001301630133754602c60266ea801e6eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50054c058c05cc05cc05cc05cc05cc05cc05cc04cdd50054dd5980298099baa00a48888c8cc00400401488c966002601a003133009006375c603a60346ea800a2b30013012001899198008009bac301e301b375400644b30010018a518acc004cc014014c07c006266004004604000314a080d101d45660026010003132330010013758603c60366ea800c896600200314a115980099802802980f800c528c4cc008008c08000501a203a8acc004cdc3a400c003132337126eb4c078004c8cc004004dd6180f9810001112cc0040062900044cc89660026601001000513370000290014400501d1810000998010011810800a03c301a375400515980099b87480200062646644b30013015301c3754005159800980a980e1baa30203021003899b89375a6040603a6ea8008006266e20dd69810180e9baa002001406d14a080d8c078004dd6980f180d9baa003301a3754601460346ea80162b30013370e9005000c4c8cc8966002602a60386ea800a2b30013015301c3754604060420071337120026eb4c080c074dd500144cdc40009bad3020301d375400480da294101b180f0009bad301e301b375400660346ea8c074c068dd5002c4cc02c010cdd2a400466038603a60346ea80092f5c080c10182030406080c1018180c1baa001459011202218069baa00818051baa0038b2010180480098021baa0098a4d13656400801", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_4OrderOrderElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5911bb010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc896600264653001300c00198061806800cdc3a4005300c0024888966002600460186ea800e2646644b300100789919912cc004c00c0062b300130133754015002806a0288acc004c0200062b300130133754015002806a028806a02040403300123015301630163016301630163016001911919800800801912cc00400629422b30013375e0066028603000314a31330020023019001404880b24602a602c0032232330010010032259800800c528456600266e3cdd7180c000801c528c4cc008008c064005012202c9b874801122222598009803180a9baa00d8cc004888c966002601400313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a37540091598009807800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024009017202e301837540072259800800c52f5c113301a3017301b00133002002301c00140652225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640592232330010010032233003001300200291111919800800802912cc004006200b13259800800c4cc010c08000801a26600a60400046600600600280f0c08000501d488c8cc00400400c896600200314c0103d87a80008992cc004c010006266e9520003301d0014bd7044cc00c00cc07c009018180e800a0369180d180d980d800a4444445300130060069802802c888ca6002003004801a0022223259800980a000c4c9660020030068992cc00400600f007803c01e264b3001302b003802c0210281bae00140ac60500028130c090dd5001c566002603200313259800800c01a264b3001001803c01e264b3001302b003899807000912cc00400a00f13259800800c66002015001898011817001a014805c02e01700b40bc605800481520108140dd6000c01e00e8158c0a000502618121baa0038acc004c03c006264b300100180344c966002003007803c4c966002605600713300e0012259800801401e264b30010018cc00402a00313002302e003402900b805c02e0168178c0b000902a40210281bac001803c01d02b1814000a04c3024375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002605c0071330110012259800801402a264b30010018cc004036003130023031003403500e807403a01c8190c0bc00902d402d02b1bac001805402902e1815800a052375a002605400500740ac60500028130c090dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0ac00e00b00840a06eb400600e8158c0a000502618121baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009815801c0160108140dd6800c01d02b1814000a04c3024375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009815801c0160108140dd7000a0563028001409860486ea800e00a81090212042408481090212042302237540053300237586040603a6ea80448cdd79810980f1baa00101048888c8c8cc88c966002602c604a6ea801a264b3001301c3026375400315980099b8f375c6054604e6ea8004dd7180598139baa3016302737546028604e6ea8c96600200319800800c40060468022047023811c08d02d198011bac30143027375403604713233225330283372c9210d63726564656e7469616c3a3a200037326600e0049101001330180010023374a9001198151ba90014bd701bab3017302837540386eb8c0a8c09cdd5198011bac301430273754036047153302549013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f7264657200164091153302549132657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f63726564001640906052604c6ea8c0a4c098dd5180998131baa30293026375400d15330244913665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f7574290016408c44a6604a66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea400522010013259800980c18139baa00189929981399b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800980a98149baa0018992cc004006330010018800c099007409a04d0268132060302d302a375400315330284913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016409c601a60526ea8c058c0a4dd5000981598141baa0018a9981324814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946601800446602860166eacc054c0a0dd5180a98141baa001002300100122259800980b18129baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc0040062b3001302f0028acc004c06cc0a8dd5000c4c9660020030078992cc004006264b3001001804c4c96600200313259800800c02e264b30010018992cc00400601b13259800800c4c96600200300f8992cc004006264b3001001808c4c96600200313259800800c04e264b30010018992cc00400602b13259800800c05a02d1332259800800c062264b30010018acc004c10800a330010128cc0040423300100e8cc0040323300100a8cc0040222b3001302e303d375400d13259800800c06a264b300100180dc06e03701b899912cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f0278992cc004c14400e26606802444b30010028acc004c0fcc138dd500944c96600200302b8992cc004006264b3001001816c4c966002003159800982b801466002007132598009822000c4c9660020030308992cc0040062b3001305a0028992cc004c11c006264b3001001819c4c966002003159800982e80146600200303581a208681a20b481a40d2069034417860b600282c8c15cdd50014566002609800313259800800c0ce264b300100181a40d20691332259800800c0da264b300100181bc0de06f1332259800800c0e6264b300100181d40ea075132598009832001c0f20768308dd6800c0e90641830800a0be375a00260c0005037418460bc00282e0dd6800982e80140d105e182d800a0b230573754005032415082a0c154dd5000c0c505740c6063031818a0b63058001415860a86ea800a2b300130490018acc004c150dd500140c205e82aa05e828905118291baa001817207a81720a881740ba05d02e416060aa0028298c15400a05902c81640b10561829800a0a2304f375402502a413113259800800c5660026080609e6ea8006264b300100181644c96600200302d816c4cc896600200302f8992cc00400606103081844cc89660020030328992cc004006067033819c4c96600260ba007159800803c0d2264b300100181ac0d606b035899912cc00400606f13259800800c0e207103881c44c96600260c400713010306201181ca0be375c0028310c17c00505d1bae001305e008417c60b800e82d206882d0dd6800c0cd05d182d000a0b0375a00260b2005030416860ae00282a8dd6000982b00140b605a82b8c15000505218281baa001815a09a815c0ae05702b415460a400482820508270dd7000a0a2304e00141306eb8004c13400904e1825800a092375c00260940048258c1200050461bae00130470024120608a0028218dd70009822001208a30420014100607c6ea801a03281da03280fa03280fa03280fa03280fa03280fa03280fa03281fa03301980cc0650431820000a07c3758002607e00501680b2080303d00140ec607a00501480a405202881f0c0ec005039181d801404a0250128092078303900140dc6072005010808404202081d0c0dc005035181b801403a01d00e8072070303500140cc606a00500c806403201881b0c0cc0050311819801402a01500a8052068303100140bc606200500880440220108190c0bc00502d18159baa00180320508032058803401a00d00640c0605a0028158dd70009816001205a302a00140a0604c6ea800e0028118888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020565980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81290251bac3028002375a604c0026466ec0dd418130009ba73027001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6056003337149101023a200098008054c0b000600a805100a181700144ca6002015302b00199b8a489023a200098008054c0b0006600e66008008004805100a18170012058302e00140ac66e29220102207d0000340a06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d20503758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720543371666e000056600266e2000520148a40c11481b902a002200c33706002901019b8600148080cdc7002001204e375c0068158dc5245022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc01ccdc2000a402866e2ccdc019b85001480512060003408881108acc004c018c054dd5003c660026032602c6ea8c064c058dd5003cdd6180c980d180d180d180d180d180d180d180d180b1baa00a980c980d180d180d180d180d180d180d180b1baa00a9bab3005301637540149111191980080080291192cc004c03400626601200c6eb8c080c074dd5001456600260240031323300100137586042603c6ea800c896600200314a3159800998028029811000c4cc008008c08c006294101c20408acc004c020006264660020026eb0c084c078dd5001912cc00400629422b30013300500530220018a518998010011811800a038408115980099b874801800626466e24dd6981080099198008009bac302230230022259800800c52000899912cc004cc02002000a266e0000520028800a03e30230013300200230240014084603a6ea800a2b30013370e9004000c4c8cc8966002602a603e6ea800a2b30013015301f3754604660480071337126eb4c08cc080dd5001000c4cdc41bad30233020375400400280ea294101d18108009bad3021301e3754006603a6ea8c028c074dd5002c56600266e1d200a00189919912cc004c054c07cdd50014566002602a603e6ea8c08cc09000e266e24004dd6981198101baa002899b88001375a604660406ea800901d4528203a3021001375a6042603c6ea800cc074dd51810180e9baa00589980580219ba548008cc07cc080c074dd500125eb8101a2034406880d101a2034301b37540028a9980a24812065787065637420536f6d65286f726465725f646174756d29203d20646174756d0016404c809860206ea8020dc3a400100a805402a01480a8c044004c044c048004c034dd5001c5900a0c030004c01cdd5006c5268a99802a491856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911772656465656d65723a204f7264657252656465656d6572001601" + : + "590882010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400530090024888966002600460126ea800e2653001300e00198071807800cdc3a400091119912cc004c00c0062b3001301037540150028b20228acc004c0200062b3001301037540150028b20228b201c40383300123012301330133013301330133013001911919800800801912cc00400629422b30013375e0066022602a00314a313300200230160014040809a4602460260032232330010010032259800800c528456600266e3cdd7180a800801c528c4cc008008c05800501020269b87480112222259800980318091baa00d8cc00488c96600260120031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c03800626464b3001301c0028024590191bae301a0013016375400716405080a0c050dd50014896600200314bd7044cc05cc050c060004cc008008c064005016488c8cc00400400c88cc00c004c00800a44646600200200644b30010018a6103d87a80008992cc004c010006266e9520003301a0014bd7044cc00c00cc070009016180d000a0309180b980c180c000a44444646466446644b30013011301d375400313259800980b980f1baa0018acc004cdc79bae3022301f37540026eb8c020c07cdd51808980f9baa300f301f3754646600c0022002660066eb0c03cc07cdd500b00e44cc040dd59808980f9baa0163374a9001198109811180f9baa330033758601e603e6ea80580712f5c11640751640746042603c6ea8c084c078dd51807180f1baa3021301e37540031640704464b30013012301e3754003132598009807180f9baa001899198038008800981198101baa0018b203c3008301f3754601e603e6ea8c088c07cdd5000c5901d1980400111980718021bab300f301f3754601e603e6ea8004008cc018dd6180f980e1baa01323375e6040603a6ea80040488966002601e60366ea800a2646644b300130230018992cc004c04cc07cdd5000c4c8c8c8c8c8c8c8c8ca60026058003302c0089816003cc0b001a605800b302c0049816001cdd61816001244444444b3001303500989980c181a00889980c00389980c00309980c00289980c00209980c0018acc004c090c0c0dd500144c8c8c8c8ca60026eb8c0e40066eb8c0e40166eb8c0e40126eb8c0e400e6eb8c0e40092222259800981f80344cc09802c89660020051598009818181e1baa01489919192cc004c11000a26605a6086006264b300130340018992cc004c11800626464b300130370018992cc004c124006266064609000205516411860886ea800a2b3001303c00189919194c004dd69825000cdd69825001cdd698250012444b3001304e004817c5904b0c128004c124004c110dd5001459042208430423754002608a00316410c60826ea800a2b300130390018acc004c104dd5001409a2c82122c81f903f181f9baa0018b208230420013042001303d37540291640ed132598009818981e9baa001899191919912cc004c11c00e264646644b3001304b0038980598258064590481bae3048001375c609000460900026eb0c1180162c8220dd698220009bad304400230440013043001303e37540031640f0608000481f22c81e060720026070002606e002606c00260626ea800a2c817a2c819060580026056002605400260520026050002604e002604c002604a00260406ea80062c80f0c0880062c8100dd718100009810800980e1baa0028b20343006006300100122232598009807800c4c8c96600260440050048b203e375c604000260386ea800e2b300130140018992cc004c0840062660106eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c5660026014003132598009810800c4cc020dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004cdc3a400c0031323322598009811800c4cc028dd61811000912cc00400a00f19800804cc09000a26002604a00480490224590201bad30200013021001301c375400715980099b874802000626464b3001302200280245901f1bad3020001301c375400715980099b874802800626464b3001302200280245901f1bad3020001301c375400715980099b874803000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa0024566002600c60246ea801e33001301630133754602c60266ea801e6eb0c058c05cc05cc05cc05cc05cc05cc05cc05cc04cdd50054c058c05cc05cc05cc05cc05cc05cc05cc04cdd50054dd5980298099baa00a48888c8cc00400401488c966002601a003133009006375c603a60346ea800a2b30013012001899198008009bac301e301b375400644b30010018a518acc004cc014014c07c006266004004604000314a080d101d45660026010003132330010013758603c60366ea800c896600200314a115980099802802980f800c528c4cc008008c08000501a203a8acc004cdc3a400c003132337126eb4c078004c8cc004004dd6180f9810001112cc0040062900044cc89660026601001000513370000290014400501d1810000998010011810800a03c301a375400515980099b87480200062646644b30013015301c3754005159800980a980e1baa30203021003899b89375a6040603a6ea8008006266e20dd69810180e9baa002001406d14a080d8c078004dd6980f180d9baa003301a3754601460346ea80162b30013370e9005000c4c8cc8966002602a60386ea800a2b30013015301c3754604060420071337120026eb4c080c074dd500144cdc40009bad3020301d375400480da294101b180f0009bad301e301b375400660346ea8c074c068dd5002c4cc02c010cdd2a400466038603a60346ea80092f5c080c10182030406080c1018180c1baa001459011202218069baa00818051baa0038b2010180480098021baa0098a4d13656400801", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_4ProtocolProtocolWithdraw { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "596880010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492b657870656374207661756c745f646174756d3a205661756c74446174756d203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888888888888888896600264653001302100198109811000cdc3a400930210024888966002600460426ea800e264b3001005899914c004888c966002600c00313259800800c00e264b300100180240120090048992cc004c0c000e00d00540b46eb80050301816800a056302937540091598009802800c4c9660020030038992cc0040060090048024012264b30013030003803401502d1bae00140c0605a0028158c0a4dd50024009026204c3027375400722259800980298139baa0038992cc00400600513259800800c4c9660020030048992cc004006264b3001302d0018acc004cdc4a400860580030068992cc004c0c8012264b3001300c0018acc004c0bcdd5003402601081822b3001300b0018992cc00400601313259800800c02a01500a8992cc004c0d800e01900b40cc6eb400601481b0c0cc00503118179baa0068acc004c03c0062b3001302f375400d0098042060804205840b08160c0b4dd5002c01d02f18049816000a054803205c3754003005802c01600a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b300130053027375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0c800e01100740bc6eb400600c8190c0bc00502d1bae001302e00240bc60580028150c0a0dd5001c0050254888c966002600c00313259800800c00e264b30010018024012009132598009818001c01a00a8168dd6800c0110301816800a056302937540091598009802800c56600260526ea801200700240a900240988130c09cdd5001a44446465300122259800980598169baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130390028cc00401a33001001804c02100e402100b402103640220110088042074303700140d46eb4004c0d800a00a81b8c0d0005032181a001400e007003801a06a303200140c0605c6ea800e002815a444b3001300b302d375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0fc00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c11000e02901341046eb80050441820800a07e375c00260800048208c0f800503c40390144039011403903c1bac001806c03503f181e000a074303c002805c02e01700b40f4607400281c0dd6800981c801402103a181b800a06a375a002606c00500540dc60680028190c0d000a007003801c00d0351819000a060302e375400700140ad223233001001003223300300130020024889660026016605a6ea8042264b300100180a44c96600200313259800800c05a264b30010018992cc00400603113259800800c06603313259800981c801c566002602460686ea801a264b300100180dc4c96600200301c80e44cc896600200301e8992cc00400603f01f899912cc00400604313259800800c08a045022899912cc00400604913259800800c09604b025899912cc00400604f13259800800c4c9660020030298992cc0040062b3001304900289980c007112cc00400a26603401a44b30010028cc00401e330010058cc004dc3a400d370e90044dc3a4014911192cc004c0a8c130dd500e44c9660020030338992cc004006264b300100181ac4c966002003159800982a80144cc8966002606000313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205a81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c0bc006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b503e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b1598009819800c4c9660020030398992cc00400607503a8992cc004c16800e26605200244b3001002803c4c96600200319800800c4c008c17400e07c816a07d03e81f40f905e182d80120b281da0ae375800303a81d20b43057001415460a66ea80162b3001300a0018992cc00400607313259800800c0ea07513259800982d001c4cc0a400489660020050078992cc0040063300100189801182e801c0f902d40fa07d03e81f20bc305b002416503b415c6eb000607503a416860ae00282a8c14cdd5002c566002601200313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205c81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c020006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b903e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b0384140828105020a0414082804c966002605e00313259800800c0e2264b30010018acc004c16000a3300100180440e502d40e505540e607303981ca0b23056001415060a46ea800a2b3001302e0018992cc00400607113259800800c56600260b0005159800981898299baa0018992cc00400607513259800800c4c96600200303c8992cc0040062b3001305c0028cc00400e3300100180640f503240f503240f505940f607b03d81ea0ba305a001416060b400503b81dc0ee07682d8c160005056182a1baa00181ca0a281ca0aa81cc0e6073039416460ac00282a0c148dd500140dd04f209e3050375400260a06ea800e06c829206d03681b40d90561829800a0a2305300281a40d2069034415060a20028278c134dd500e40c904a09980f80c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00641393702900048888c8cc004004014896600200310058992cc00400626600860b000400d133005305800233003003001415860b000282aa6e012001918291829800c8c148c14cc14c0066e95200048888888c8c8c8cc88c96600200313259800981c982d9baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b3001001829414a26644b300100182a44c96600200315980098398014660020251980080846600201d19800806466002015198008044566002609860dc6ea801a264b300100182b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a899912cc0040060b913259800800c1760bb05d82ec4cc896600200305f8992cc0040060c1060830418226644b300100183144c966002003063831c18e0c713259800984100801c4cc144048896600200519800809466002605c6100026ea818a4610802610a02610a02610a020032232330010010032259800800c52845660026006610e0200314a313300200230880100142040484280a4610802610a02610a02610a02610a02610a02610a02610a02003374a90014dc02400491111119192cc0066002444646644b3001306b0028acc004c1acc23404dd5000c5300103d87a80008a6103d8798000422c051598009837001456600260dc611a026ea80062980103d87a80008a6103d87b8000422c0513322598009836800c530103d87b80008acc004c1b0006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000423804847008dd69849809848009baa0038a6103d8798000423404846808dd69848809847009baa003308d01375400284580908b011845809baa00130020033001003919191919912cc004c1ac00a29422b3001306e0028cc004cdd79848809847009baa0014c103d87b8000a50a51422c0513233225980098370014528c56600260da005133225980098379849009baa3041309301375400d133710004003133712004002848008dd6984a009848809baa0035980098369848009baa303f309101375400f100189806000a11c028a50423804847008c23804dd50009bad309201308f013754008612202611c026ea800508b01211602308b013754002611e02612002006611c026116026ea8004c23404004c22404dd5000cc0d8c22004dd50042444b30013068308a0137540031323300a3758611e026118026ea81ac8cdd79848009846809baa001002308e01308b01375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c24004c23404dd50014c24004c23404dd5000c8c8c96600260d8611e026ea8c24c04c2500400a2003132598009836800c4c034cc24c04dd418061bad309401309101375400497ae08acc004c1b800620051002423804847008c23c04dd5000a11a02309201001308e0137540028029300103d87b8000a50a514228051980099baf9800981d9846809baa002981d9846809baa001919192cc004c1b0c23c04dd5184980984a0080144006264b3001306d0018980699849809ba83040375a6128026122026ea80092f5c11598009837000c400a200484700908e011847809baa001423404612402002611c026ea8005005260103d8798000a50a5142280514a084500908a01211402308e01308b01375400260106116026ea81a908801233001308b01308801375401122232330010010042259800800c40122660066120020026600400461220200284700a44b30010018a40011300533002002308e01001422c0522980099804001119baf308e01308b013754611c026116026ea8c0e4c22c04dd5000980399846809ba90024bd70528528a10e02918329844009baa308c0132330010010022259800800c52f5c303d87a80008101800044c8cc89660033001306a308d0137546122020074a14a284580a2661200330014a14c103d87a8000a60103d8798000422c0466120026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c24c0400400e29462660040046128020028468090910144cc24006600294298103d87a8000a60103d8798000422c0466120026e9c0092f5c1133090019800a51a60103d87a8000a60103d8798000422c0466120026e9ccc24004dd400080125eb8108b012116023758611e026120020026eb4c23c04008cc008008c23c0400508c01489660020031480022600a66004004611c0200284580a4444653001001802c012006800888896600200710018acc00400a2a6611c029211d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012612802007309401002cc004c24c0400e6eb4c24c0400a0028029004212202424405222598008014530103d87a80008acc004c1a00062606e6611a02611c0200497ae08cc00400e611e02005303a001400c84400908c01488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064234051330050053094010044234046eb8c23404004dd5984700800984800800a11c0214bd6f7b63048896600260d06114026ea800e264b300100180144c966002003003801c00e264b3001309201003802c01108f011bad001801a12402308f010014234046116026ea800e00284400a44646600200200644b30010018a5eb8226644b30013375e612202611c026ea8c24404c23804dd5181e1847009baa002300a3309001375200a97ae08998480080119802002000c4cc01001000508b01184780800984800800a11a029184600984680984680984680984680984680800c8c23004c23404c23404c23404c23404c23404c23404006444653001001802400d0011112cc00400a2b30010018a518a50423c05159800800c5284566002660086122020046eb4c24404006330010039849008014c248040050034528211602423c0484780a444b30013068308a01375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002612e0200519800803c6600200b132598009838800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd5002456600260e000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001309e010038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b300130a30100380b40550a0011bae001428c0461400200284f008dd7000984f80801214002309d01001426c05010426c046eb000601f00f42780461360200284c808dd6800984d00801403109b01184c00800a12c023094013754009159800983a000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c2840400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c2980400e033018428c046eb80050a601185180800a14202375c002614402004851808c2800400509e01404d09e011bac00180940490a101184f00800a13802375a002613a0200500f42780461360200284c808dd6800984d00801403109b01184c00800a12c0230940137540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd50024566002609400313259800800c02e264b3001001806403201913259800984d80801c03a01a84c008dd6800c03109b01184c00800a12c0230940137540091598009824800c4c96600200300b8992cc00400601900c80644c96600261360200700e806a13002375a00300c426c0461300200284b008c25004dd500240290910121220242440484880909101212202309201375400700941a500940e1009425004612a02002849808c2540400a00f007803c01d09601184980800a12202309301002802c01600b005425004612202002847808c2440400a007003801c00d09201184780800a11a02308b013754007001422005222329800800c01200680088896600200510018cc00400e61240200533004309101002001400c84780a4611802611a02611a02611a02611a020032225980098341845009baa0038992cc00400600513259800800c00e0070038992cc004c2480400e00b004423c046eb4006006849008c23c0400508d011845809baa003800a11002912cc0040062900044c014cc008008c2380400508b01488cdc199b82002375a606e6114026ea8004dd6981c1845009baa0019b88480024466062004466ebcc23804c22c04dd50009ba700292cc004cdc4000a40011303a0018800a10c0248888888888888888888888a6002602a02b2301400198090094c0400424446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803214a02899802802985600802214a02375c614a020026eb4c29804004c2a0040050a601198098020018a400123014001984f009baa0179802802c88c9660026104026142026ea8006264b30010018cc0040062b30013375e60446146026ea800cc29804c28c04dd5002456600266ebcc144c28c04dd50009853009851809baa0038800c260050a001425c050a00142580500d42580612c030960184b00a1500230a50130a201375400309001427c04609c6142026ea8c13cc28404dd50012444444445300122223233001001005223259800984600800c4c94cc2b804cdcb248121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660b06ea4005220100132598009847009858009baa001899194c004dd7185b00800cdd7185b00985b80800cdd7185b008012444a66168029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330b4013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660bc6ea400522010015330b4013372c9201187665726966795f65643235353139207061796c6f61643a20003732660bc6ea400922010015330b4013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660bc6ea400d2201001325330b5013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660bf3001001a60103d87a8000a60103d879800042d00491010010019800800c00a006b950c2d804004dd6185a009858809baa0018a998578099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660b26ea400922010014a0857008c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c616c020020091305f330b501374e00297ae0899801801985b808012160023758616a02002859808dd71859009857809baa0028acc004c22c04006264a6615c0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416c6c4f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b804910100100132330010010022259800800c528c5660026600c00c616a0200313300200230b6010018a5042bc04859808dd61859009857809baa0028acc004c23c04006264a6615c0266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416e794f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013302e0012330050050013758616402615e026ea800a2b3001306600189919912998580099b96490112436865636b696e672041744c656173743a20003732660b46ea00092201001325330b1013372c92011941744c656173742073617469736669656420636f756e743a20003732660b66ea00052201001325330b2013372c92011041744c6561737420726573756c743a20003732660b93001001a60103d87a8000a60103d879800042c4049101001001337120060033001001a400122598009980400400144c0bc00620028588090291bad30b3010013758616602616802002615e026ea800a2b300130650018992998570099b9649111436865636b696e67204265666f72653a20003732660b06ea00052201001325330af013372c92010f4265666f726520726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc49bad30b50130b20137540020071337106eb4c2d404c2c804dd5000801a15e028a5042bc046168020026160026ea8c178c2c004dd50031bad30b20130af0137540051598009832000c4c94cc2b804cdcb24910436865636b696e672041667465723a20003732660b06ea00052201001325330af013372c92010e416674657220726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc48019bad30b50130b20137540031337100066eb4c2d404c2c804dd5000a15e028a5042bc046168020026160026ea8c2cc04c2c004dd50031bad30b20130af0137540051325330ae013372c920111436865636b696e67205363726970743a20003732660b06ea40052201001325330af013372c92010f53637269707420726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232330010010072259800800c528456600266ebc00cc2c804c2d8040062946266004004616e020028580090b401181619859009ba90014bd701bae30b20130af0137540048560090ac0121580242b0048560090ac011856809baa0019112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a15002912cc004cdc4000a400114c103d87a8000899804001000a14e029112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a1500248888ca60024444446644646644b30013370e66e04dd6985d80985c009baa30bb01003375a6176026170026ea8c2ec04010006264b30013370f30013758606c6172026ea80329000488cc89660033001309a01001a50a5142e8051325980099b893302300100598008044dd7186080801cdd7186080986100801a036899b800040018a9985e00a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642ec0466e08004016200685d008dd6185f00985d809baa00232980080552000912cc004cdd79813185f009baa002374e0071337000026eb4c1b0c2f804dd5001440050bb01204a3758617c026176026ea800902219b8100200a8801454cc2dc052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001642d804b3001301c0098a40031480090b501454cc2d8052415a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e74001642d4046eacc2e404c2e8040056600261260260200071480022b300100385800c4c96600261760200915980099b8f375c616c0200291104555344720089bad30b7010018a9985a80a491d657870656374206e616d65203d3d20636f6e7374616e74732e75736472001642d0050b10142e00461720200685b8090b301185c80800998119bab301b30b301375400a6eb8c184c2cc04dd5180f9859809baa0069800802cdd7185b009859809baa301f30b301375400d003801200e9111192cc004c23c04c2c404dd5000c4c96600266ebcc2d804c2cc04dd5185b009859809baa001302f330b501375200a97ae08acc004c23c0660026eacc184c2cc04dd5000c01691010d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b5013754007006a4504555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c54cc2c8052412d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001642c40460c06166026ea80062a661620292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b10149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001642bc046600e008003222232598009847809858809baa0018992cc004cdd7985b009859809baa30b60130b301375460c26166026ea8004c0bccc2d404dd4802a5eb822b3001308f0198009bab306130b301375460c26166026ea800600b48810d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b501375460c6616a026ea800e00d48904555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c288050b10118301859809baa306130b301375400315330b1014901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b1014914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001642bc046600e0080029112cc004c2340402e26644b30019800985a809859009baa058815cc0bcc2c804dd504880cdd5980f1859009baa091014029159800998139bac30b50130b2013754122026eb8c0c4c2c804dd5180f1859009baa0588acc0066002660406eb0c2d404c2c804dd5048809bae305f30b2013754603c6164026ea81626eb0c180c2c804dd5000cdd618179859009baa05848896600266e1cc05800cc0580162b300130110028cc00400e005223259800984a80985b809baa001899192cc004c25c04c2e404dd5000c4c8ca60026603e010003375860486178026ea80126eb4c2fc0400922259800984e00985f009baa0038acc004cdc499199119b8330713370066e08004dd698379861009baa003002002375a60dc6180026ea8004dd698371860009baa00830c20130bf0137540073001375660da617e026ea8c1b4c2fc04dd50054dd71861008014dd718610098618080120388acc004cdc38009bad306d30bf01375400f13375e6e9c010c09cc2fc04dd5003c5282178028a5042f00515330bd014914365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001642f0043758617c02617e020026174026ea800629410b7011833185c809baa3301200400130bb0130b80137540030aa0142d4046601a00e002810214c0285900a14a02859009159800cc004dd6182f9859009baa091019bac30b50130b2013754003330b401306030b2013754603c6164026ea8160cc2d0053001054455534472004bd702444b30013370e6028004602c00b19800802c00a4464b300130950130b70137540031325980099baf30bc0130b90137540026178026172026ea8c2f004c2e404dd5002456600266ebcc198c2e404dd50009833985c809baa30bc0130b901375400913370f3001375660ce6172026ea80066eb8c2f0040166eb8c19c015016180d9bad306730b901375400914a085b00a29410b601185d80985c009baa00185780a16a023300d00500140810a10142c804899b87980082c42440690004dd6982f9859009baa0019bad303130b2013754003002401530010029bac30b50130b201375400323017375a60c26166026ea8005007454cc2c005241856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a2020202029001642bc0515330b0014918f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642bc050ad0142bc0515330b0014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642bc046eb0c2cc04c2c004dd50141859809858009baa092018992cc004c2340403226644b3001980098309859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc0066002660426eb0c2d804c2cc04dd5049009bae306030b3013754603e6166026ea81666eb0c184c2cc04dd5000ccc2d404c184c2cc04dd5180f9859809baa059330b5014c1054455534472004bd702444b30013370e602e006602e00b159800980900146600200700291192cc004c25804c2e004dd5000c4c8c966002612e026174026ea800626464b3001337120033001375660d6617a026ea8c1acc2f404dd5003cdd71860008044dd718600098608080420348acc004cdc380098371bad306b30bd01375400913375e618002618202004604a617a026ea801229410ba014528217402375a617e020026176026ea800629410b8011833985d009baa3301300400130bc0130b90137540030ab0142d8046601c00e002810a14e0285980a14c02859809159800cc004dd618301859809baa092018014dd6185b009859809baa0019bac303030b30137540b2801a266e1e60020b309201a4001375a60c06166026ea80066eb4c0c8c2cc04dd5000c0090064c00400a6eb0c2d804c2cc04dd5000c8cdc41bad306230b4013754002900020108a9985880a4819e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001642c0050ae0142c00515330b1014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018acc004c2440403226644b3001980098301859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc004cc896600266e1cc058008c0580122b300130110018cc00400a003223259800984a80985b809baa001899192cc004c1c4c2e404dd5000c4c96600266e1cdd6985f008009bad306930bb01375400713375e617c02617e0200260466176026ea800e29410b801185d009baa0018a5042dc0460cc6172026ea8cc048010004c2ec04c2e004dd5000c2a8050b50119806803000a04085300a1640285280a16402330213758616c026166026ea824804dd718301859809baa301f30b30137540b26eb0c184c2cc04dd5000c5660033001375860c06166026ea8248060053758616c026166026ea80066eb0c0c0c2cc04dd502ca0068984800cc0041661240398008014dd6185b009859809baa00192cc004c060dd69831185a009baa00189848809bad306130b401375400314a08588090084dd698301859809baa0019bad303230b3013754003002401915330b1014901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001642c0050ae0142c00515330b1014901896578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018992cc004c1a4036330013758616a026164026ea80aa44444b30013370e603000a60300091598009809801c4cdc4800cc0040160074800244464b300130980130ba0137540031332259800984e80985e009baa0018992cc004006330010018acc004cdd7981e985f009baa00330c10130be01375400f15980099baf306c30be013754002618202617c026ea800e264b3001309f0130be013754003132325980099b87375a6188020046eb4c1bcc30404dd5003456600266e1cdd69862008009bad306e30c101375400d15980099baf30c40130c501001302930c101375400d1337000113001375660de6182026ea8c1bcc30404dd50054dd71862008064dd7186200986280806203c8a9985f80a493665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001642f80515330bf0149126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001642f80515330bf014912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001642f804618802002617e026ea80062a6617a02921184578706563746564204f4465706f73697420616374696f6e001642f00460d6617c026ea80061660285d80a1640285d80a162028142162030b10185880c2c4050c301186000985e809baa00185580a1740230be0130bb01375400260d06176026ea8c1a4c2ec04dd500242b4050b80119808003801205285400a1680285380a16802985a809859009baa094014889660033001303430b50137540b702e9819185a809baa094019bab302130b501375412802806a26644b300159800980d8014528c660026128020034a14a285a0090b40144c966002612a02616e026ea80063300198009bac30bb0130b801375412e03375c606e6170026ea8c090c2e004dd502f4dd71833185c009baa302430b80137540bd375a6176026170026ea80050094dd6985d80985c009baa30bb01980084b80cdd7185d80985c009baa302430b80137540bd375a60ca6170026ea80126eb4c0dcc2e004dd500220189b810029812985c009baa00448888c8c8cc8966002613a02617e026ea8016264b30013370e66e04dd6986200800802802456600266e1cdd698620098628080080145660026020017159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c01054455534472004bd7052000403915980099b8900398009bac306e30c1013754140034800244b30013375e618c026186026ea8008c31804c31c04c31c04c31c04c31c04c31c04c31c04c31c04c31c04c30c04dd5034c4cdc0000cc004dd598389861809baa0029bae307130c3013754605e6186026ea81a691010455534472004081100143000481c22b3001323371266e0003403260026eb0c0fcc30804dd5034520009119192cc004c0a8006266e0000ccdc199b82001375a60e8618c026ea8010dd698399863009baa0048801a1860298008024dd7186400800cdd7186400986480800a0443758618e026188026ea800902b1bab30c40130c50130c501980085000cdd71862009860809baa302d30c10137540cf375a60dc6182026ea80366eb4c100c30404dd5006a02a899b879800833c28006600e019375a60dc6182026ea80366eb4c100c30404dd5006c03d014005c54cc2fc052418d6578706563740a20202020202076616c69646174655f726573657276655f64656c74615f666f725f6465706f736974280a202020202020202076616c75655f64656c74612c0a202020202020202073657474696e67732e726573657276655f6173736574732c0a202020202020202072657175697265645f757364725f6261636b696e672c0a20202020202029001642f80515330bf014912b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001642f80515330bf014919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001642f805159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c1054455534472004bd704c1c800d00e44cdc3cc00419e14003300700c9bad306e30c101375401b375a60806182026ea803601e80a002e2a6617e02921b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001642f80485f00a2a6617e029213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001642f80515330bf014913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001642f8053001375860da6180026ea827c066eb8c0fcc30004dd518161860009baa0669bae306e30c001375460586180026ea819a6eb4c30c04c30004dd5002a02485500a17a023004001375a61820261840200cb30013021004899b833370400e0020091480010ba011bad30bf010044284050b501180f985b809baa0038a9985a80a4812e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001642d00530010039bac30b80130b501375400323005375a60c8616c026ea800500a4c00400e9000488cdc00009bad306430b701375400480f22a6616602921886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6465706f7369745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c8048acc004c1a003626644b30019800980e185a009baa05a816cc0c4c2d004dd504980cdd59810185a009baa093014031159800998149bac30b70130b4013754126026eb8c2dc04c2d004dd51810185a009baa05a899912cc004c24c04c2d404dd5000c4c8cc896600260100051598009804000c566002b30013096010018a518980e801216c028992cc004c0780062b30019800998141bac30bd0130ba013754132026eb8c19cc2e804dd51813185d009baa0609bac306830ba01375400f330bc01306830ba013754604c6174026ea8180cc2f005301054455534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e8c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b300198009bac306730ba013754132033758617a026174026ea801e661780260446174026ea8c098c2e804dd50301985e00a60106457355534472004bd702444b30013370e6038004603c01719800805c00a4464b3001309d0130bf0137540031325980099baf30c40130c10137540026188026182026ea8c31004c30404dd5002456600266ebcc1b8c30404dd500098379860809baa30c40130c101375400913370f3001375660de6182026ea80066eb8c310040166eb8c1bc01501e2cc004c2780402626eb4c1bcc30404dd500244cdc199b82375a60de6182026ea80100240290be014528217c028a5042f8046186026180026ea800616e0285e808cc05401400502842a4050ba012264b300130980130ba0137540031325980099b87375a617e0200266e000140222b30013370e6eb4c2fc04c30004004cdc0002001c56600266e1e60026eacc090c2f004dd504d80cdd71812185e009baa302830bc0137540c54881057355534472004064007130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd503152201045553447200406515330ba01491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001642e40515330ba014914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001642e40515330ba0149140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b801491dd6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001642dc0515330b801491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001642dc0515330b801491186578706563742073757364725f746f5f6d696e74203e2030001642dc04b30013096010018802c4cdc199b8200500100242d80515330b7014913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001642d80515330b701491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001642d80515330b7014911d657870656374207661756c745f757364725f6265666f7265203e3d2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491866578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa09401899912cc006600260426168026ea816a05b303130b401375412603375660406168026ea824c0500c4566002660526eb0c2dc04c2d004dd5049809bae30b70130b401375460406168026ea816a26644b300130930130b5013754003132332259800980e8014566002603a00313259800980f000c5660033001330283758617a026174026ea826404dd71833985d009baa302630ba0137540c1375860d06174026ea801e661780260446174026ea8c098c2e804dd50301985e00a6106457355534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e4c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b30013370f3001375660446174026ea8264066eb8c088c2e804dd51813185d009baa060a44105735553447200405c60d600d13259800984c00985d009baa0018992cc004cdc39bad30bf010013370200a00715980099b87375a617e0261800200266e040100222b300130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd5031522010455534472004065198009bac306930bc013754136033758617e026178026ea80266617c0260d46178026ea8c0a0c2f004dd50311985f00a61054455534472004bd702444b30013370e603c004604001b19800806c00a4464b3001309f0130c10137540031325980099baf30c60130c3013754002618c026186026ea8c31804c30c04dd5002456600266ebcc1c0c30c04dd500098389861809baa30c60130c301375400913370f3001375660e26186026ea80066eb8c318040166eb8c1c401502019b83337046eb4c1c4c30c04dd5002006005c5282180028a50430004618a026184026ea80061720285f808cc05c01400502a42ac050bc0122a66174029211765787065637420757364725f6d696e746564203d3d2030001642e40515330ba01491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001642e40515330ba014913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b8014912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001642dc0515330b801491a86578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202029001642dc0515330b8014911a65787065637420757364725f746f5f72656c65617365203e2030001642dc053001007a4001223370000266e0ccdc11bad306930bb01375400400800681122a6616e02921236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001642d80515330b7014911c657870656374207661756c745f757364725f6265666f7265203e2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e756e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa0940142bc04857808dc4a40008570090ae0111112cc004cdc39809801180a801c6600200700291192cc004c25004c2d804dd5000c66002617402616e026ea80066eb0c07cc2dc04dd5001ccc068010dd6180f985b809baa003488966002612e026172026ea80062b30013375e617a026174026ea800cc2f404c2e804dd5185e80985d009baa0068acc004cdd79833985d009baa003306830ba013754617a026174026ea801a266e1e60026eacc1a0c2e804dd5001cdd7185e808014dd7185e80985f00801202e3301f301c375a60d06174026ea8018c2f404c2e804dd5000c528216e028a5042dc0515330b80149015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642dc0485700a168023300c006001407d0a00142c404856808444464b3001308e0130b00137540031325980099baf30b50130b2013754616a026164026ea8c180c2c804dd500098171985a009ba90054bd704566002611c033001375660c06164026ea8c180c2c804dd5000c016910108747265617375727900403d132598009849809859009baa0018992cc004006330010018992cc004c24804c2d004dd5000c4c96600266ebcc2e404c2d804dd5185c80985b009baa0013032330b801375201297ae08acc004c2480660026eacc190c2d804dd5000c026910108747265617375727900404d13259800984b80985b009baa0018992cc0040063300100189985d008029985d008009985d009ba6329800800cdd59833985c809baa00499198008009bab306830ba01375460d06174026ea8024896600200314bd6f7b63044c8cc2f804cdd8185d808009ba632330010013756617a0200444b30010018a5eb7bdb182264661820266ec0c2f804004dd418381bad30bf010013300300330c30100230c10100142fc0466006006618002004617c0200285e0090011112cc00400a2003132332298008034c30804016646600200200a44b30010018998610099bb037520086e9800d2f5bded8c113298009bae30c0010019bab30c1010019862808012444b3001337200100071330c601337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528218c02880144cc31c04cdd81ba9009374c002004861008ca6002003008801a002222598008014400626466453001006986700802cc8cc00400401489660020031330ce01337606ea4010dd4001a5eb7bdb1822653001375c619802003375a619a0200330d10100248896600266e4002000e2661a40266ec0dd48041ba80070058acc004cdc7804001c4c966002615c0200310028998698099bb037520126ea00040090ce0119b800070028998690099bb037520066ea0008cc0180180050cd01219a02186780800a19a0240186eb8c31c04004dd69864008009865008012190028998630099bb037520066e98008cc0180180050c101218202186180800a1820240186eb8c2ec04004dd5985e00800985f008012178024bd7042c40501f42c406162030b10185880a17a0230ba0130b701375400315330b50149012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642d00460c6616c026ea80062a6616802920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642cc0515330b40149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642cc04617002616a026ea80062a661660292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001642c804660146eb0c184c2d004dd5004002c2b00501b42b006158030ac0185600a1720230b60130b301375400315330b10149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642c00460be6164026ea8c180c2c804dd5000c54cc2c0052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642bc0515330b0014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642bc046168026162026ea80062a6615e0292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001642b8046600c6eb0c2cc04c2c004dd500200108a9984300a4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001642140464660020026eb0c0d4c22004dd5035112cc004006297ae0899845809ba732323308d01308e010023308d013038308b0137540026611a026ea4cc894cc22c04cdcb2481165369675374727563747572652e636f6e746578743a200037326606a612002611a026ea8005220100153308b013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606a6076611a026ea8005220100153308b013372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606a6074611a026ea8005220100153308b013372c9201165369675374727563747572652e7061796c6f61643a200037326606a6018611a026ea800522010013253308c013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606c6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002423004846008dc68009bae309001308d01375400266e28c008dd7181d9846809baa0013371460046eb8c0e8c23404dd500098011bae300c308d013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002422804845008dc6800981b9984680a610b4a5369676e617475726531003308d01308e01308b013754611c026116026ea8004cc234053010140003308d01375200a97ae04bd701846809847008009bac308c0100133002002308d010014228046e50dd980320cc82ba264b30010018acc004c178c20004dd5000c4c9660020030688992cc0040060d3069899912cc0040060d713259800800c1b20d906c899912cc0040060dd13259800800c1be0df06f8992cc004c2380400e2b300100783844c966002003071838c1c60e31332259800800c1ce264b300100183a41d20e90748992cc004c24c0400e260206126020230754240046eb800509301184800800a11c02375c002611e02010848008c2340401d08b0141c108b011bad001837a11c02308b010014224046eb4004c2280400a0d8845808c22004005086011bac001308701002834c1a508801184280800a10602308101375400306741f9067833c19e0ce843008c20c0400908101419107f1bae00142080460fe00283e8dd7000983f00120fe307c00141e86eb8004c1ec00907c183c800a0ee375c00260f000483c8c1d80050741bae001307500241d860e60028388c1bcdd5003415506c415501441550144155014415501441550144155014415507041560ab05582aa0e8307100141bc6eb0004c1c000a0a505241c460dc0028360c1b800a0a1050828414106f1836000a0d4306c002827413a09d04e41b460d40028340c1a800a09904c826413106b1834000a0cc3068002825412a09504a41a460cc0028320c19800a09104882441210671832000a0c43064002823411a08d046419460c40028300c18800a08904482241110631830000a0bc305c37540050424164444653001001802400d001111192cc004c0fc006264b300100180344c966002003007803c01e00f132598009834801c0160108330dd7000a0d23066001419060c46ea800e2b3001303e0018992cc00400600d13259800800c01e00f132598009834801c4cc0e000489660020050078992cc0040063300100a800c4c008c1b000d00a402e01700b805a0da306a00241a100841986eb000600f00741a460cc0028320c188dd5001c566002608400313259800800c01a264b3001001803c01e264b3001306900389981c000912cc00400a00f13259800800c66002015001898011836001a014805c02e01700b41b460d400483420108330dd6000c01e00e8348c19800506418311baa0038acc004c064006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260d800713303b0012259800801402a264b30010018cc00403600313002306f003403500e807403a01c8380c1b400906b402d0691bac001805402906c1834800a0ce375a00260d000500741a460cc0028320c188dd5001c566002603000313259800800c01a264b3001001803c01e00f132598009834801c0160108330dd6800c01d0691833000a0c830623754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260d200700580420cc375a00300741a460cc0028320c188dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260d200700580420cc375c0028348c19800506418311baa003802a0be417c82f905f20be417c82f8c180dd50014106083041820a0c03008305a3754646644a660b666e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a200037326600a6ea416522010013259800981d982e9baa00189929982e99b9649113666f756e642070726f7879207574786f3a3a200037326600e002910100132598009820182f9baa0018992cc0040062b3001303e3060375400313259800800c126264b3001001825412a09504a899912cc0040060991325980098350014401a09a8338c1a00050661bae001306700241a060ca0028318c184dd5000c12105e412209104882420cc306330603754003153305e49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164174601860be6ea8c034c17cdd50009830982f1baa0018a9982e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016416c660080024646600200260086eacc034c17cdd51806982f9baa0022259800800c528456600266e3cdd7183180082e4528c4cc008008c19000505d20c230010013758601260b66ea80e8896600200314bd7044cc178c16cc17c004cc008008c18000505d1800800911919800800801912cc0040062980103d87a80008992cc004c01000626012660be00297ae0899801801983080120b4305f001417444464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20c05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c82d105a1bac305d002375a60b60026466ec0dd4182d8009ba7305c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60c0003337149101023a200098008054c18400600a805100a183180144ca6002015306000199b8a489023a200098008054c184006600e66008008004805100a183180120c23063001418066e29220102207d0000341746eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c20ba3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e417c66e2ccdc0000acc004cdc4000a40291481822903720be004401866e0c00520203370c002901019b8e00400241706eb800d0601b8a4881022c20002232330010010032259800981b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002300b00189980299b8400148050cdc599b803370a002900a240c000682b90571803803a264b300100181a40d2264b300100181ac4c96600200303681b40da06d1332259800800c0e2264b30010018acc004c16000a264b300130323054375400513259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc0040060810408204102264b300130600038acc004c0e4c16cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d132598009833001c4c966002608000313259800800c126264b3001001825412a09504a8992cc004c1a800e02504b419c6eb800506a1833800a0ca30633754017159800981f800c56600260c66ea802e01f048419104841808300c184dd5005411d0631bae001419860c60028308dd7000983100120c63060001417860b86ea801a08282ca08282e8dd7000a0c0305d001416c60ba00503e81f40fa07c82f0c16c005059182d80140f207903c81e20b83059001415c60aa6ea800a07482904c01cc16002207282aa07303981cc0e5059182b000a0a8375c00260aa00482b0c14c0050511bac00181a40d10541828801209e40b902140b902144c96600200302f817c0be2646006609e0086eb400605e8278c13000904a44c96600200302d816c0b62646006609a0086eb400605a8268c12800904840a904640aa05502a815209430470014114608e00502881440a20508240c1140050431bad0013044002812a08a304200141006eb4004c10400a0448210c0fc00503d1bac001303e00280fc07d03f181e000a0743758002607600501c80e2078303900140dc606a6ea801a034819203481b0dd6000c06603281c8c0d8005034181b001405e02f01780ba06e303400140c8606800501580ac05602a81a8c0c800503018171baa010809a0561112cc004c028c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a801466002007132598009807800c56600260646ea800a00f00640cd1598009807000c4c9660020030078992cc0040060110088044022264b3001303900380540250361bae00140e4606c00281a0c0c8dd50014566002602400313259800800c01e264b30013038002804c021035181b000a0683032375400500640bc817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a8444b30013009302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002601c00313259800800c01e264b30010018acc004c0dc00a264b300130110018992cc00400601513259800800c566002607400519800800c032016808a01681ba01700b805c02d03b181c000a06c303437540051598009808000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0340062b3001303137540050078032064803205c40b8605e6ea800600a805a00a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c0050290dc3a40006e1d2002804402201100840a0604a60446ea800e2c80f8604200260386ea808a293454cc06924011856616c696461746f722072657475726e65642066616c7365001365640641" + : + "593595010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a4005223233001001003223300300130020024888a60024464b30013006001899192cc004c05c00a0091640506eb8c054004c044dd5001c566002600a0031323259800980b80140122c80a0dd7180a80098089baa0038b201e403c601e6ea800a44b30013005300f3754005132323259800980b80144c8c9660026014003159800980a9baa002803459016456600260120031323259800980d80140222c80c0dd6980c800980a9baa0028acc004c0340062b3001301537540050068b202c8b2026404c8098c04cdd5000980b001c59014192cc004c04c0062b30013371290021809000c5a2600e6024002808a2c80a0dd5180a800980a80098081baa0028b201c912cc004c014c03cdd500144c8c8cc896600260300070058b202a375a602a0026eb8c054008c054004c040dd500145900e488c966002600c0031323259800980b80140122c80a0dd6980a80098089baa0038acc004c0140062b3001301137540070028b20248b201e403c601e6ea8009222232323322598009805980a9baa010899191919912cc004c07c00e264b30013011301b3754003132323232323298009812800cdd61812802cdd698128024dd69812801cc0940092222259800981580344cc068dd61815005912cc00400a26603800c44b300100289980d00289980d0048cc004dc3a400d370e90044dc3a4014911192cc004c090c0b8dd500ac4c8c8c966002606c005132332259800981500144c96600260740031330293758607200244b300100280244cc08cc0ec0084c004c0f0009039459037181a9baa0038acc004c0a400a264b3001303a0018998149bac303900122598008014012266046607600426002607800481ca2c81b8c0d4dd5001c566002605a00513259800981d000c4cc0a4dd6181c800912cc00400a009133023303b00213001303c00240e51640dc606a6ea800e2b3001300a0028992cc004c0e80062660526eb0c0e40048966002005004899811981d80109800981e00120728b206e30353754007159800980480144c96600260740031330293758607200244b300100280244cc090c0ec0084c004c0f0009039459037181a9baa0038acc004c02000a264b3001303a0018998149bac303900122598008014012266048607600426002607800481ca2c81b8c0d4dd5001c59033206640cc8199033206630323754002264b300130290018992cc004c0e400626604a607000200f1640d860686ea800e2b300130280018992cc004c0e4006264b3001302b30353754003132323259800981e80144cc0a8c0f000c4cc0a800402e2c81d0c0ec004c0ec004c0d8dd5000c59034181c000c59036181a1baa0038b206440c860646ea8008c0d400e2c8198c0d0004c0d0004c0bcdd500ac5902d09981080a912cc00400a330012303430350019181a181a981a800cdd2a400122232598009814800c4c8c96600260740050048b206e375c607000260686ea800e2b300130280018992cc004c0e40062660506eb0c0e000489660020050058cc00401e607400513001303b002401c81c22c81b0c0d0dd5001c566002605800313259800981c800c4cc0a0dd6181c000912cc00400a00b19800803cc0e800a2600260760048039038459036181a1baa0038acc004c0240062646644b3001303b0018998151bac303a0012259800801401e33001009981e00144c004c0f400900920748b2070375a6070002607200260686ea800e2b30013008001899192cc004c0e800a0091640dc6eb4c0e0004c0d0dd5001c566002600e0031323259800981d00140122c81b8dd6981c000981a1baa0038acc004cdc3a40180031323259800981d00140122c81b8dd7181c000981a1baa0038b206440c88191032206440c88190c0c8dd500124444646644b3001302c30363754005132323232323232323298009821800cc10c022608600f30430069821802cc10c012608600737586086004911111112cc004c130026266024609602226602400e26602400c26602400a2660240082660240062b3001303d304737540051323232323298009bae30500019bae30500059bae30500049bae30500039bae30500024888896600260ac00d13304500b225980080144cc10805066002604860a86ea813a460b060b260b260b20032232330010010032259800800c5284566002600660b600314a3133002002305c001415882ca460b060b260b260b260b260b260b260b200337009000cdc024005374a9001244444446464b300198009111919912cc004c16000a2b300130583062375400314c0103d87a80008a6103d87980004185159800982d801456600260b660c46ea80062980103d87a80008a6103d87b800041851332259800982d000c530103d87b80008acc004c164006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041908320dd6983418329baa0038a6103d8798000418c8318dd6983318319baa00330623754002830906118301baa00130020033001003919191919912cc004c16000a29422b3001305b0028cc004cdd7983318319baa0014c103d87b8000a50a514185132332259800982d8014528c56600260b40051332259800982e18339baa30383068375400d1337100040031337120040028330dd6983498331baa00359800982d18329baa30363066375400f100189806800a0c88a5041908320c18cdd50009bad30673064375400860cc60c66ea800506120c23060375400260c860ca00660c660c06ea8004c188004c178dd5000cc0b4c174dd5004a444b30013055305f37540031323300b375860c860c26ea81608cdd7983298311baa00100230633060375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c194c188dd50014c194c188dd5000c8c8c96600260b260c86ea8c1a0c1a400a200313259800982d000c4c030cc1a0dd418069bad30693066375400497ae08acc004c16c0062005100241908320c190dd5000a0c63067001306337540028029300103d87b8000a50a5141811980099baf9800981918311baa002981918311baa001919192cc004c164c190dd51834183480144006264b3001305a00189806198341ba8300e375a60d260cc6ea80092f5c1159800982d800c400a2004832106418321baa001418c60ce00260c66ea8005005260103d8798000a50a51418114a0830106020c0306330603754002601260c06ea815d05e2330013060305d375401322232330010010042259800800c401226600660ca0026600400460cc002831a4530013300900223375e60c660c06ea8c18cc180dd5181818301baa001300633062375200497ae0a50a51417523052305d375460c2646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130573062375460cc0074a14a2830a2660cb30014a14c103d87a8000a60103d87980004184660ca6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1a000400e294626600400460d2002831906644cc196600294298103d87a8000a60103d87980004184660ca6e9c0092f5c11330659800a51a60103d87a8000a60103d87980004184660ca6e9ccc194dd400080125eb8106120c2375860c860ca0026eb4c190008cc008008c190005061489660020031480022600c6600400460c6002830244b30010018a40011300633002002306300141812222329800800c01600900340044444b30010038800c66002009306900398348016600260d0007375a60d00050014014802106648896600200514c103d87a80008acc004c1540062605c660c460c600497ae08cc00400e60c80053008001400c82f1061488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006418d1330050053069004418c6eb8c188004dd598318009832800a0c614bd6f7b6304896600260a860bc6ea800a26464b30013065002801c590621bad3063001305f37540051641752232330010010032259800800c52f5c1133225980099baf30663063375460cc60c66ea8c0ccc18cdd50011804998329ba90054bd7044cc194008cc0100100062660080080028308c190004c19400506248c184c188c188c188c188c188006460c260c460c460c460c460c460c4003222329800800c012006800888966002005159800800c528c52820c88acc00400629422b3001330043066002375a60cc00319800801cc19c00a60ce002801a294106120c841912259800982a182f1baa0028991919194c004c19800660cc007306600248896600260d4009133030306900713305300213259800982e000c4c8cc896600260dc003132323322598009839001c0422c8378dd718378009bae306f002306f001375860da0031641ac6eb4c1ac004c1b0004c19cdd5001456600260b60031323322598009837000c4c8c8cc896600260e40070108b20de375c60de0026eb8c1bc008c1bc004dd61836800c5906b1bad306b001306c00130673754005159800982f800c4c8ca60026eb4c1b000660da003375a60d80049112cc004c1c000a264646644b300130740038094590711bae3071001375c60e200460e20026eb0c1bc00a2c836860d800260ce6ea800a2b3001303c00189919912cc004c1b8006264646644b3001307200380845906f1bae306f001375c60de00460de0026eb0c1b40062c8358dd69835800983600098339baa0028acc004c0ec00626464b3001306d002805c5906a1bad306b00130673754005159800981d000c4c8c96600260da00500b8b20d4375a60d600260ce6ea800a2c832906520ca4194832906518329baa0018b20ce183300098328009832000982f9baa0028b20ba911194c0040060090034004444b30010028800c660020073067002998021833001000a0064191230613062306230623062001912cc004c150c178dd500144c8c96600260ca0050038b20c4375a60c600260be6ea800a2c82ea44b30010018a400113006330020023063001418137029000488cdc199b82002375a605c60be6ea8004dd69817982f9baa0019b88480024466056004466ebcc18cc180dd50009ba700248888888888888888888888a60024444646600200200a4464b30013070001899192cc004c1c8c1f0dd5000c4c8ca60026eb8c2080400a6eb8c20804c20c040066eb8c2080400572a308201001375861000260fa6ea8006294107b1919800800804112cc0040062980103d87a80008992cc004cdc79bc8375c6104020020091304d3308101374e00297ae089980180198418080120fa375861020200283f8dd7183f183d9baa0028acc004c1bc006264660020026eb0c1fcc1f0dd5001912cc00400629462b300133005005308001001899801001184080800c52820f641f91598009839800c4cc094dd6183f183d9baa0022330040040018acc004c14000626466e24dd6983f800cc004dd6183f984000800d2000912cc004cc01801800a2604a003100141f080f0c1ecdd50014566002609e0031323322598009839183e9baa0028acc004c1c8c1f4dd5184080984100801c4cdc49bad308101307e37540040031337106eb4c20404c1f8dd5001000a0f88a5041f060fe0026eb4c1fcc1f0dd5001983d9baa304b307b375400b1598009827000c4c8cc896600260e460fa6ea800a2b30013072307d37546102026104020071337120026eb4c20404c1f8dd500144cdc40009bad308101307e375400483e2294107c183f8009bad307f307c375400660f66ea8c1f8c1ecdd5002c4c8c8cc004004018896600200314a115980099baf003307d3081010018a51899801001184100800a0f841fc6042660fa60fc60f66ea80092f5c083c907920f241e483c9079183c9baa0019180a800cc04c04e6024025301001091119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c83da26600a00a61020200883d8dd7183d0009bad307b001307d00141ec660260080062900048c05400660e66ea805e600a00b2232598009837983b1baa001899198068008acc004cdd79811983c1baa003307b3078375400915980099baf30483078375400260f660f06ea800e20031641d91641d860f460ee6ea80062c83a8c114c1d8dd51823183b1baa00292cc004cdc4000a4001130050018800a0e6488888888888c8ca60024444446644646644b30013370e66e04dd69847809846009baa308f01003375a611e026118026ea8c23c04010006264b30013370f30013758606c611a026ea80329000488cc89660033001308601001a50a51423c051325980099b893302100100598008044dd7184a80801cdd7184a80984b00801a032899b800040018b2120023370400200b1003423c046eb0c24804c23c04dd5001194c00402a90004896600266ebcc094c24804dd50011ba7003899b80001375a60c46124026ea800a20028480090241bac309201308f0137540048108cdc08010054400a2c845809660026034013148006290012114028b2114023756611a02611c02002b3001307f300e0038a4001159800984700801c4c96600266e3cdd7184500800a4504555344720089bad308b010018b211202308d010038b211602422004611a02002660446eacc068c21c04dd50029bae30573087013754603c610e026ea801a600200b375c611402610e026ea8c078c21c04dd5003400e004803a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444464b3001307b30850137540031325980099baf308a013087013754611402610e026ea8004c0b4cc22404dd4802a5eb822b3001307b98009bab30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab30593089013754007006a441045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5000c5908501459085011844809843009baa0018b210802330060040019111192cc004c1ecc21404dd5000c4c96600266ebcc22804c21c04dd51845009843809baa30573087013754002605a66112026ea40152f5c1159800983dcc004dd5982b9843809baa30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab3059308901375460b26112026ea800e00d4881045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5182b9843809baa0018b210a028b210a023089013086013754003164210046600c008002911112cc004c1ec02e26644b300198009845809844009baa0538164c0c4c22004dd503fcdd5980f9844009baa07f4051159800998149bac308b0130880137540fe6eb8c0ccc22004dd5180f9844009baa0538acc0066002660426eb0c22c04c22004dd503f9bae30573088013754603e6110026ea814e6eb0c160c22004dd5000cdd618189844009baa05348896600266e1cc05000cc0500162b300130110028cc00400e0052232598009841809846809baa001899192cc004c21404c23c04dd5000c4c8ca60026603e0100033758604a6124026ea80126eb4c2540400922259800984500984a009baa0038acc004cdc499199119b8330403370066e08004dd69833984c009baa003002002375a60cc612c026ea8004dd69833184b009baa00830980130950137540073001375660ca612a026ea8c194c25404dd50054dd7184c008014dd7184c00984c8080120388acc004cdc38009bad3065309501375400f13375e6e9c010c0a0c25404dd5003c5282126028a50424c0516424c043758612802612a020026120026ea8006294108e01182f1847809baa33012004001309101308e013754003164230046601c00e002810a2c84480a2c844809159800cc004dd6182b9844009baa07f9bac308b0130880137540033308a0130583088013754603e6110026ea814ccc228053001054455534472004bd702444b30013370e602a004602800b19800802c00a4464b3001308301308d0137540031325980099baf309201308f013754002612402611e026ea8c24804c23c04dd5002456600266ebcc178c23c04dd5000982f9847809baa309201308f01375400913370f3001375660be611e026ea80066eb8c248040166eb8c17c01501618089bad305f308f01375400914a084680a294108d011848809847009baa0018b2118023300e005001408516422404899b879800829c1fe90004dd6982b9844009baa0019bad30333088013754003002401d30010029bac308b01308801375400323017375a60b26112026ea8005006459086014590860145908601459086011bac3089013086013754052611202610c026ea820006264b3001307b00c899912cc006600260b26112026ea815205b3032308901375410003375660406112026ea8200050154566002660546eb0c23004c22404dd5040009bae3034308901375460406112026ea81522b30019800998111bac308c013089013754100026eb8c160c22404dd518101844809baa0549bac305930890137540033308b013059308901375460406112026ea8150cc22c05301054455534472004bd702444b30013370e602a006602a00b159800980900146600200700291192cc004c21004c23804dd5000c4c8c966002610a026120026ea800626464b3001337120033001375660c66126026ea8c18cc24c04dd5003cdd7184b008044dd7184b00984b8080420348acc004cdc380098119bad3063309301375400913375e612c02612e02004604c6126026ea80122941091014528212202375a612a020026122026ea8006294108f01182f9848009baa33013004001309201308f013754003164234046601e00e00281122c84500a2c845009159800cc004dd6182c1844809baa080018014dd61846009844809baa0019bac303230890137540a8801a266e1e60020a908001a4001375a60b06112026ea80066eb4c0d0c22404dd5000c0090084c00400a6eb0c23004c22404dd5000c8cdc41bad305a308a0137540029000200e8b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c56600260fe0191332259800cc004c160c22404dd502a40b660646112026ea8200066eacc080c22404dd504000a02a8acc004cc0a8dd61846009844809baa08001375c60686112026ea8c080c22404dd502a45660026644b30013370e602800460280091598009808800c6600200500191192cc004c20c04c23404dd5000c4c8c96600260ca611e026ea8006264b30013370e6eb4c25004004dd698309848809baa003899baf3094013095010013024309101375400714a0847808c24004dd5000c528211c02305e308f01375466024008002612202611c026ea80062c846008cc0380180050214590890145908901198111bac308c013089013754100026eb8c160c22404dd518101844809baa054375860b26112026ea80062b300198009bac30583089013754100030029bac308c013089013754003375860646112026ea815100344c1fa60020a908001cc00400a6eb0c23004c22404dd5000c96600260306eb4c168c22804dd5000c4c1fcdd6982c9845009baa0018a50422004803a6eb4c160c22404dd5000cdd6981a1844809baa00180120108b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c4c96600260ba01b198009bac308b013088013754057222225980099b87301600530160048acc004c04c00e266e24006600200b003a400122232598009843009848009baa001899912cc004c22c04c24804dd5000c4c8cc0a400456600266ebcc0fcc25004dd5001984b80984a009baa0078acc004cdd79832184a009baa001309701309401375400713259800984680984a009baa001899192cc004cdc39bad309a01002375a60ce612e026ea801a2b30013370e6eb4c26804004dd69833184b809baa0068acc004cdd7984d00984d808009815184b809baa006899b8000898009bab3067309701375460ce612e026ea802a6eb8c268040326eb8c26804c26c0403101e459095014590950145909501184d00800984a809baa0018b212602306330940137540031642480516424804612c026126026ea80062c848808c25004c24404dd500098301848809baa3061309101375400916423c046602200e00481522c84580a2c84580a6116026110026ea82080522259800cc004c0d8c22c04dd502b40be60686116026ea8208066eacc088c22c04dd504100a02e899912cc00566002603600514a319800984100800d28528a11602422c05132598009841809846809baa0018cc00660026eb0c24404c23804dd504280cdd7181c9847009baa3025308e0137540b3375c60bc611c026ea8c094c23804dd502ccdd69848809847009baa0014025375a612202611c026ea8c24406600210a03375c612202611c026ea8c094c23804dd502ccdd6982e9847009baa0049bad3039308e01375400880726e0400a604c611c026ea8011222232323259800984500984a009baa0048992cc004cdc399b81375a61320200200800715980099b87375a6132026134020026eb4c26404c268040222b3001300f00a8acc00660026605e6eb0c26404c25804dd5046809bae30653096013754605a612c026ea818601d375860cc612c026ea8032661300260cc612c026ea8c0b4c25804dd50309984c00a61054455534472004bd7052000403515980099b8900298009bac3065309601375411a034800244b30013375e6136026130026ea8008c26c04c27004c27004c27004c27004c27004c27004c27004c27004c26004dd5031c4cdc0000cc004dd59834184c009baa0029bae30683098013754605e6130026ea818e9101045553447200407d100142580481c22b3001323371266e0003002e60026eb0c100c25c04dd5031520009119192cc004c0a4006266e0000ccdc199b82001375a60d66136026ea8010dd69835184d809baa0048801a1320298008024dd7184e80800cdd7184e80984f00800a04237586138026132026ea800902b1bab309901309a01309a01980084680cdd7184c80984b009baa302d30960137540c3375a60ca612c026ea80326eb4c104c25804dd5006202c899b879800830c23406600c017375a60ca612c026ea80326eb4c104c25804dd50064039015005459094014590940145909401456600330013302f3758613202612c026ea823404dd71832984b009baa302d30960137540c300e9bac30663096013754019330980130663096013754605a612c026ea8184cc26005301054455534472004bd704c09800900d44cdc3cc00418611a03300600b9bad30653096013754019375a6082612c026ea803201c80a802a2c84a0090940145909401459094014c004dd61832184a809baa08c019bae304030950137546058612a026ea81826eb8c194c25404dd51816184a809baa0609bad3098013095013754008808a2c849808c01000566002604200913370666e0801c00401229000212202375a612a020088b2118023020308d01375400716422c0530010039bac308e01308b01375400323005375a60b86118026ea80050094c00400e9000488cdc00009bad305c308d01375400480fa2c844809159800982e006c4cc89660033001301d308a0137540ab02e98199845009baa081019bab3021308a0137541020280b22b30013302b3758611a026114026ea820404dd71846809845009baa3021308a0137540ab13322598009840809845809baa00189919912cc004c02000a2b300130080018acc0056600261080200314a31301d00242340513259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260c06120026ea8c09cc24004dd502d9984900a601054455534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b8c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c848809159800cc004dd6182f9848009baa087019bac309301309001375400f330920130233090013754604e6120026ea816ccc2480530106457355534472004bd702444b30013370e603a004603801719800805c00a4464b3001308b0130950137540031325980099baf309a013097013754002613402612e026ea8c26804c25c04dd5002456600266ebcc198c25c04dd50009833984b809baa309a01309701375400913370f3001375660ce612e026ea80066eb8c268040166eb8c19c01501e2cc004c2300402626eb4c19cc25c04dd500244cdc199b82375a60ce612e026ea8010024029095014528212a028a50425404613202612c026ea80062c84a008cc058014005029459091012264b300130860130900137540031325980099b87375a612a0200266e000140222b30013370e6eb4c25404c25804004cdc0002001c56600266e1e60026eacc094c24804dd504480cdd718129849009baa302930920137540bb4881057355534472004064007130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed220104555344720040651642400516424005164240053001375860c06122026ea8220066eb8c0f0c24404dd518141848809baa05c9bae3061309101375460506122026ea81726eb4c25004c24404dd5000a01a8b211e023028309001375400f164238051642380516423804b30013084010018802c4cdc199b820050010024234051642340516423405164234046eb4c24004004dd6984800984880800cc004dd61847809846009baa083019bae3037308c01375460466118026ea815e6eb8c170c23004dd518119846009baa0579bad308f01308c013754002803a2c84500a60020053758611a026114026ea8006460326eb4c16cc22c04dd5000a00e301d308a01375400316422005164220046eb0c22c04c22004dd50159845809844009baa08201899912cc006600260446114026ea815605d3033308a01375410203375660426114026ea8204050164566002660566eb0c23404c22804dd5040809bae308d01308a01375460426114026ea815626644b3001308101308b013754003132332259800980e8014566002603a00313259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260466120026ea8c09cc24004dd502d9984900a60106457355534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b4c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c84880915980099b8798009bab3023309001375410e03375c60466120026ea8c09cc24004dd502dd22105735553447200405c604000d132598009843009848009baa0018992cc004cdc39bad3095010013370200a00715980099b87375a612a02612c0200266e040100222b300130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed22010455534472004065198009bac30613092013754112033758612a026124026ea8026661280260c46124026ea8c0a4c24804dd502e9984a00a61054455534472004bd702444b30013370e603e004603c01b19800806c00a4464b3001308d0130970137540031325980099baf309c0130990137540026138026132026ea8c27004c26404dd5002456600266ebcc1a0c26404dd50009834984c809baa309c01309901375400913370f3001375660d26132026ea80066eb8c270040166eb8c1a401502019b83337046eb4c1a4c26404dd5002006005c528212e028a50425c046136026130026ea80062c84b008cc06001400502b4590930122c84800a2c84800a2c84800a60026eb0c180c24404dd504400cdd7181e1848809baa302830910137540b9375c60c26122026ea8c0a0c24404dd502e4dd6984a009848809baa001403516423c0460506120026ea801e2c84700a2c84700a2c84700a600200f480024466e00004cdc199b82375a60c26122026ea800801000d02345908d0145908d011bad309001001375a61200261220200330013758611e026118026ea820c066eb8c0dcc23004dd518119846009baa0579bae305c308c01375460466118026ea815e6eb4c23c04c23004dd5000a00e8b21140298008014dd61846809845009baa0019180c9bad305b308b0137540028038c074c22804dd5000c5908801459088011bac308b0130880137540566116026110026ea82080508601210c0237129000210a024214044444b30013370e6028004602600719800801c00a4464b3001308201308c013754003198009848009846809baa0019bac3020308d0137540073301a00437586040611a026ea800d222598009842809847809baa0018acc004cdd79849809848009baa00330930130900137546126026120026ea801a2b30013375e60be6120026ea800cc180c24004dd51849809848009baa006899b8798009bab30603090013754007375c612602005375c61260261280200480b8cc07cc048dd698301848009baa006309301309001375400314a084700a294108e0145908e0122c845808cc034018005020459088012108021111192cc004c1e8c21004dd5000c4c96600266ebcc22404c21804dd51844809843009baa30563086013754002605866110026ea40152f5c1159800983d4c004dd5982b1843009baa30563086013754003005a4508747265617375727900403513259800983f9843009baa0018991980d0008992cc004c1f8c22004dd5000c4c96600266ebcc23404c22804dd51846809845009baa00130303308c01375201297ae08acc004c1fa60026eacc168c22804dd5000c026911087472656173757279004045132598009841809845009baa0018991980f00089984700802998470080099847009ba6329800800cdd5982e9846809baa00499198008009bab305e308e01375460bc611c026ea8024896600200314bd6f7b63044c8cc24804cdd81847808009ba63233001001375661220200444b30010018a5eb7bdb1822646612a0266ec0c24804004dd418119bad30930100133003003309701002309501001424c04660060066128020046124020028480090011112cc00400a2003132332298008034c25804016646600200200a44b300100189984b0099bb037520086e9800d2f5bded8c113298009bae3094010019bab309501001984c808012444b30013372001000713309a01337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528213402880144cc26c04cdd81ba9009374c00200484b808ca6002003008801a002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd4001a5eb7bdb1822653001375c614002003375a61420200330a50100248896600266e4002000e26614c0266ec0dd48041ba80070058acc004cdc7804001c4c96600261340200310028998538099bb037520126ea00040090a30119b800070028998530099bb037520066ea0008cc0180180050a201214402185180800a1420240186eb8c26c04004dd6984e00800984f0080121380289984d0099bb037520066e98008cc01801800509601212c02184b80800a12a0240186eb8c23c04004dd59848008009849008012120024bd701847009845809baa0018b2112023059308a01375400316422005164220046118026112026ea80062c843808cc024dd6182b9844009baa008005308a0130870137540031642140460aa610c026ea8c158c21804dd5000c5908401459084011844009842809baa0018b210602330053758610e026108026ea8010008896600266e2000520008a6103d87a8000899804801000a0fe22c82d8c8cc004004dd61816182e9baa0572259800800c52f5c1133060374e6464660c460c6004660c4605e60c06ea8004cc188dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241888310dc68009bae30653062375400266e28c008dd7181918311baa0013371460046eb8c0c4c188dd500098011bae300d30623754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241808300dc68009817198312610b4a5369676e617475726531003306230633060375460c660c06ea8004cc18930101400033062375200a97ae04bd70183118318009bac3061001330020023062001417c6e50dd9803a264b3001304a305437540031323232332259800982f001c4c8c8cc896600260c40071300b306200c8b20be375c60be0026eb8c17c008c17c004dd6182e802c5905b1bad305b001375a60b600460b600260b400260aa6ea80062c8298c15c0090554590530c140004c13c004c138004c134004c120dd50014590464590490c10c004c108004c104004c100004c0fc004c0f8004c0f4004c0f0004c0dcdd50014590351802981a9baa323232598009816981b9baa0018992cc004c0c4c0e0dd5000c4c966002605e60726ea8006264646644b300130420038802c5903f181f8009bae303f002303f001303a37540031640e0607860726ea80062c81b8c01cc0e0dd51804181c1baa303b303837540031640d8660066eb0c01cc0dcdd50171191980080098019bab300930393754601260726ea8008896600200314a115980099b8f375c607a00206f14a3133002002303e00140e081d8c004004896600200314bd7044cc0e4c0d8c0e8004cc008008c0ec0050381801001111919800800801912cc0040062980103d87a80008992cc004c0100062600e6607600297ae0899801801981e801206e303b00140e489919912cc004c0dc00626644b3001302a303437540051323232332259800981f001c4c966002606060746ea8006264646644b300130430038992cc004c0d400626464b300130460028074590431bae30440013040375400f159800981a000c56600260806ea801e0191641051640f881f0c0f8dd50034590401bae3040001375c6080004608000260766ea80062c81c8c0f40162c81d8dd7181d800981d801181d800981d000981a9baa0028b206630360011300430370058b2068375c6068002606a0026eb0c0cc0090312264600460600066eb4c0b800902c44c8c008c0b800cdd6981600120548b205018128009812000981180098110009810800980e1baa0018b2034301e0058b203837586038002603800460380026036002602c6ea80422c80a089660026016602a6ea800a26464646644b3001301f003899804180f00289980580100345901c180e0009bad301c002301c001301b0013016375400516405044b3001300b301537540051323232323298009bac301e0019bad301e0049bad301e003980f00124444b30013023005899806181100489980780089919912cc004c09800e01b16408c6eb8c08c004dd7181180298118024590200c078004c074004c070004c06c004c058dd5001459014112cc004c028c050dd500144c8c8c9660026038005133006301b003132598009807000c56600260326ea800a00b1640691598009806800c4c8c966002603e0050078b2038375c603a00260326ea800a2b30013011001899192cc004c07c00a00f164070603a00260326ea800a2c80b9017202e3017375400316406460340026034002602a6ea800a2c80988966002601260266ea800a2646464b3001301b002899804980d0018992cc004c034006264b3001301d001899192cc004c040006264b30013020001899807180f800804c5901d180d9baa0028acc004c03c00626464653001375a6042003375a6042007375a60420049112cc004c09401201d16408830210013020001301b375400516406480c8c064dd5000980e000c5901a180c1baa0028acc004c0300062b3001301837540050058b20328b202c4058602c6ea80062c80c0c064004c064004c050dd50014590121164020300900130043754013149a26cac80101", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_4ProtocolProtocolElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "596880010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a66006920142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a4930657870656374206f75747075745f646174756d3a205472656173757279446174756d203d206f75747075745f6461746100168a99801a492e65787065637420696e7075745f646174756d3a205472656173757279446174756d203d20696e7075745f6461746100168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492565787065637420646174756d3a204f72646572446174756d203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492b657870656374207661756c745f646174756d3a205661756c74446174756d203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492a6578706563742073657474696e67733a2053657474696e6773203d2070726f78792e73657474696e677300168a99801a492f72656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d65723e00164888888888888888888888896600264653001302100198109811000cdc3a400930210024888966002600460426ea800e264b3001005899914c004888c966002600c00313259800800c00e264b300100180240120090048992cc004c0c000e00d00540b46eb80050301816800a056302937540091598009802800c4c9660020030038992cc0040060090048024012264b30013030003803401502d1bae00140c0605a0028158c0a4dd50024009026204c3027375400722259800980298139baa0038992cc00400600513259800800c4c9660020030048992cc004006264b3001302d0018acc004cdc4a400860580030068992cc004c0c8012264b3001300c0018acc004c0bcdd5003402601081822b3001300b0018992cc00400601313259800800c02a01500a8992cc004c0d800e01900b40cc6eb400601481b0c0cc00503118179baa0068acc004c03c0062b3001302f375400d0098042060804205840b08160c0b4dd5002c01d02f18049816000a054803205c3754003005802c01600a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b300130053027375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0c800e01100740bc6eb400600c8190c0bc00502d1bae001302e00240bc60580028150c0a0dd5001c0050254888c966002600c00313259800800c00e264b30010018024012009132598009818001c01a00a8168dd6800c0110301816800a056302937540091598009802800c56600260526ea801200700240a900240988130c09cdd5001a44446465300122259800980598169baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130390028cc00401a33001001804c02100e402100b402103640220110088042074303700140d46eb4004c0d800a00a81b8c0d0005032181a001400e007003801a06a303200140c0605c6ea800e002815a444b3001300b302d375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0fc00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c11000e02901341046eb80050441820800a07e375c00260800048208c0f800503c40390144039011403903c1bac001806c03503f181e000a074303c002805c02e01700b40f4607400281c0dd6800981c801402103a181b800a06a375a002606c00500540dc60680028190c0d000a007003801c00d0351819000a060302e375400700140ad223233001001003223300300130020024889660026016605a6ea8042264b300100180a44c96600200313259800800c05a264b30010018992cc00400603113259800800c06603313259800981c801c566002602460686ea801a264b300100180dc4c96600200301c80e44cc896600200301e8992cc00400603f01f899912cc00400604313259800800c08a045022899912cc00400604913259800800c09604b025899912cc00400604f13259800800c4c9660020030298992cc0040062b3001304900289980c007112cc00400a26603401a44b30010028cc00401e330010058cc004dc3a400d370e90044dc3a4014911192cc004c0a8c130dd500e44c9660020030338992cc004006264b300100181ac4c966002003159800982a80144cc8966002606000313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205a81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c0bc006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b503e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b1598009819800c4c9660020030398992cc00400607503a8992cc004c16800e26605200244b3001002803c4c96600200319800800c4c008c17400e07c816a07d03e81f40f905e182d80120b281da0ae375800303a81d20b43057001415460a66ea80162b3001300a0018992cc00400607313259800800c0ea07513259800982d001c4cc0a400489660020050078992cc0040063300100189801182e801c0f902d40fa07d03e81f20bc305b002416503b415c6eb000607503a416860ae00282a8c14cdd5002c566002601200313259800800c0e6264b300100181d40ea264b3001305a003899814800912cc00400a00f13259800800c6600200313002305d00381f205c81f40fa07d03e417860b600482ca07682b8dd6000c0ea07482d0c15c00505518299baa0058acc004c020006264b300100181cc4c96600200303a81d44c96600260b40071330290012259800801401e264b30010018cc0040062600460ba00703e40b903e81f40fa07c82f0c16c00905940ed0571bac00181d40e905a182b800a0aa3053375400b0384140828105020a0414082804c966002605e00313259800800c0e2264b30010018acc004c16000a3300100180440e502d40e505540e607303981ca0b23056001415060a46ea800a2b3001302e0018992cc00400607113259800800c56600260b0005159800981898299baa0018992cc00400607513259800800c4c96600200303c8992cc0040062b3001305c0028cc00400e3300100180640f503240f503240f505940f607b03d81ea0ba305a001416060b400503b81dc0ee07682d8c160005056182a1baa00181ca0a281ca0aa81cc0e6073039416460ac00282a0c148dd500140dd04f209e3050375400260a06ea800e06c829206d03681b40d90561829800a0a2305300281a40d2069034415060a20028278c134dd500e40c904a09980f80c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00641393702900048888c8cc004004014896600200310058992cc00400626600860b000400d133005305800233003003001415860b000282aa6e012001918291829800c8c148c14cc14c0066e95200048888888c8c8c8cc88c96600200313259800981c982d9baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b3001001829414a26644b300100182a44c96600200315980098398014660020251980080846600201d19800806466002015198008044566002609860dc6ea801a264b300100182b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a899912cc0040060b913259800800c1760bb05d82ec4cc896600200305f8992cc0040060c1060830418226644b300100183144c966002003063831c18e0c713259800984100801c4cc144048896600200519800809466002605c6100026ea818a4610802610a02610a02610a020032232330010010032259800800c52845660026006610e0200314a313300200230880100142040484280a4610802610a02610a02610a02610a02610a02610a02610a02003374a90014dc02400491111119192cc0066002444646644b3001306b0028acc004c1acc23404dd5000c5300103d87a80008a6103d8798000422c051598009837001456600260dc611a026ea80062980103d87a80008a6103d87b8000422c0513322598009836800c530103d87b80008acc004c1b0006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000423804847008dd69849809848009baa0038a6103d8798000423404846808dd69848809847009baa003308d01375400284580908b011845809baa00130020033001003919191919912cc004c1ac00a29422b3001306e0028cc004cdd79848809847009baa0014c103d87b8000a50a51422c0513233225980098370014528c56600260da005133225980098379849009baa3041309301375400d133710004003133712004002848008dd6984a009848809baa0035980098369848009baa303f309101375400f100189806000a11c028a50423804847008c23804dd50009bad309201308f013754008612202611c026ea800508b01211602308b013754002611e02612002006611c026116026ea8004c23404004c22404dd5000cc0d8c22004dd50042444b30013068308a0137540031323300a3758611e026118026ea81ac8cdd79848009846809baa001002308e01308b01375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c24004c23404dd50014c24004c23404dd5000c8c8c96600260d8611e026ea8c24c04c2500400a2003132598009836800c4c034cc24c04dd418061bad309401309101375400497ae08acc004c1b800620051002423804847008c23c04dd5000a11a02309201001308e0137540028029300103d87b8000a50a514228051980099baf9800981d9846809baa002981d9846809baa001919192cc004c1b0c23c04dd5184980984a0080144006264b3001306d0018980699849809ba83040375a6128026122026ea80092f5c11598009837000c400a200484700908e011847809baa001423404612402002611c026ea8005005260103d8798000a50a5142280514a084500908a01211402308e01308b01375400260106116026ea81a908801233001308b01308801375401122232330010010042259800800c40122660066120020026600400461220200284700a44b30010018a40011300533002002308e01001422c0522980099804001119baf308e01308b013754611c026116026ea8c0e4c22c04dd5000980399846809ba90024bd70528528a10e02918329844009baa308c0132330010010022259800800c52f5c303d87a80008101800044c8cc89660033001306a308d0137546122020074a14a284580a2661200330014a14c103d87a8000a60103d8798000422c0466120026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c24c0400400e29462660040046128020028468090910144cc24006600294298103d87a8000a60103d8798000422c0466120026e9c0092f5c1133090019800a51a60103d87a8000a60103d8798000422c0466120026e9ccc24004dd400080125eb8108b012116023758611e026120020026eb4c23c04008cc008008c23c0400508c01489660020031480022600a66004004611c0200284580a4444653001001802c012006800888896600200710018acc00400a2a6611c029211d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012612802007309401002cc004c24c0400e6eb4c24c0400a0028029004212202424405222598008014530103d87a80008acc004c1a00062606e6611a02611c0200497ae08cc00400e611e02005303a001400c84400908c01488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064234051330050053094010044234046eb8c23404004dd5984700800984800800a11c0214bd6f7b63048896600260d06114026ea800e264b300100180144c966002003003801c00e264b3001309201003802c01108f011bad001801a12402308f010014234046116026ea800e00284400a44646600200200644b30010018a5eb8226644b30013375e612202611c026ea8c24404c23804dd5181e1847009baa002300a3309001375200a97ae08998480080119802002000c4cc01001000508b01184780800984800800a11a029184600984680984680984680984680984680800c8c23004c23404c23404c23404c23404c23404c23404006444653001001802400d0011112cc00400a2b30010018a518a50423c05159800800c5284566002660086122020046eb4c24404006330010039849008014c248040050034528211602423c0484780a444b30013068308a01375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002612e0200519800803c6600200b132598009838800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd5002456600260e000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001309e010038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b300130a30100380b40550a0011bae001428c0461400200284f008dd7000984f80801214002309d01001426c05010426c046eb000601f00f42780461360200284c808dd6800984d00801403109b01184c00800a12c023094013754009159800983a000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c2840400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c2980400e033018428c046eb80050a601185180800a14202375c002614402004851808c2800400509e01404d09e011bac00180940490a101184f00800a13802375a002613a0200500f42780461360200284c808dd6800984d00801403109b01184c00800a12c0230940137540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c2780400e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c28c0400e02d0154280046eb80050a301185000800a13c02375c002613e02004850008c2740400509b01404109b011bac001807c03d09e01184d80800a13202375a00261340200500c426c0461300200284b008c25004dd50024566002609400313259800800c02e264b3001001806403201913259800984d80801c03a01a84c008dd6800c03109b01184c00800a12c0230940137540091598009824800c4c96600200300b8992cc00400601900c80644c96600261360200700e806a13002375a00300c426c0461300200284b008c25004dd500240290910121220242440484880909101212202309201375400700941a500940e1009425004612a02002849808c2540400a00f007803c01d09601184980800a12202309301002802c01600b005425004612202002847808c2440400a007003801c00d09201184780800a11a02308b013754007001422005222329800800c01200680088896600200510018cc00400e61240200533004309101002001400c84780a4611802611a02611a02611a02611a020032225980098341845009baa0038992cc00400600513259800800c00e0070038992cc004c2480400e00b004423c046eb4006006849008c23c0400508d011845809baa003800a11002912cc0040062900044c014cc008008c2380400508b01488cdc199b82002375a606e6114026ea8004dd6981c1845009baa0019b88480024466062004466ebcc23804c22c04dd50009ba700292cc004cdc4000a40011303a0018800a10c0248888888888888888888888a6002602a02b2301400198090094c0400424446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803214a02899802802985600802214a02375c614a020026eb4c29804004c2a0040050a601198098020018a400123014001984f009baa0179802802c88c9660026104026142026ea8006264b30010018cc0040062b30013375e60446146026ea800cc29804c28c04dd5002456600266ebcc144c28c04dd50009853009851809baa0038800c260050a001425c050a00142580500d42580612c030960184b00a1500230a50130a201375400309001427c04609c6142026ea8c13cc28404dd50012444444445300122223233001001005223259800984600800c4c94cc2b804cdcb248121436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660b06ea4005220100132598009847009858009baa001899194c004dd7185b00800cdd7185b00985b80800cdd7185b008012444a66168029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330b4013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660bc6ea400522010015330b4013372c9201187665726966795f65643235353139207061796c6f61643a20003732660bc6ea400922010015330b4013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660bc6ea400d2201001325330b5013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660bf3001001a60103d87a8000a60103d879800042d00491010010019800800c00a006b950c2d804004dd6185a009858809baa0018a998578099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660b26ea400922010014a0857008c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c616c020020091305f330b501374e00297ae0899801801985b808012160023758616a02002859808dd71859009857809baa0028acc004c22c04006264a6615c0266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416c6c4f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b804910100100132330010010022259800800c528c5660026600c00c616a0200313300200230b6010018a5042bc04859808dd61859009857809baa0028acc004c23c04006264a6615c0266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660b06ea0c0440052201001325330af013372c92010e416e794f6620726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013302e0012330050050013758616402615e026ea800a2b3001306600189919912998580099b96490112436865636b696e672041744c656173743a20003732660b46ea00092201001325330b1013372c92011941744c656173742073617469736669656420636f756e743a20003732660b66ea00052201001325330b2013372c92011041744c6561737420726573756c743a20003732660b93001001a60103d87a8000a60103d879800042c4049101001001337120060033001001a400122598009980400400144c0bc00620028588090291bad30b3010013758616602616802002615e026ea800a2b300130650018992998570099b9649111436865636b696e67204265666f72653a20003732660b06ea00052201001325330af013372c92010f4265666f726520726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc49bad30b50130b20137540020071337106eb4c2d404c2c804dd5000801a15e028a5042bc046168020026160026ea8c178c2c004dd50031bad30b20130af0137540051598009832000c4c94cc2b804cdcb24910436865636b696e672041667465723a20003732660b06ea00052201001325330af013372c92010e416674657220726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232598009847009858809baa0018acc004c23804c2c404dd5185a80985b0080144cdc48019bad30b50130b20137540031337100066eb4c2d404c2c804dd5000a15e028a5042bc046168020026160026ea8c2cc04c2c004dd50031bad30b20130af0137540051325330ae013372c920111436865636b696e67205363726970743a20003732660b06ea40052201001325330af013372c92010f53637269707420726573756c743a20003732660b33001001a60103d87a8000a60103d879800042b80491010010013232330010010072259800800c528456600266ebc00cc2c804c2d8040062946266004004616e020028580090b401181619859009ba90014bd701bae30b20130af0137540048560090ac0121580242b0048560090ac011856809baa0019112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a15002912cc004cdc4000a400114c103d87a8000899804001000a14e029112cc004c02c00a2b30013370e6014004601800719800801c00a900048896600260080071337000026eb4c170c2b804dd5001c26c050ab01203a84b80a1500284b00a1500248888ca60024444446644646644b30013370e66e04dd6985d80985c009baa30bb01003375a6176026170026ea8c2ec04010006264b30013370f30013758606c6172026ea80329000488cc89660033001309a01001a50a5142e8051325980099b893302300100598008044dd7186080801cdd7186080986100801a036899b800040018a9985e00a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642ec0466e08004016200685d008dd6185f00985d809baa00232980080552000912cc004cdd79813185f009baa002374e0071337000026eb4c1b0c2f804dd5001440050bb01204a3758617c026176026ea800902219b8100200a8801454cc2dc052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001642d804b3001301c0098a40031480090b501454cc2d8052415a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e74001642d4046eacc2e404c2e8040056600261260260200071480022b300100385800c4c96600261760200915980099b8f375c616c0200291104555344720089bad30b7010018a9985a80a491d657870656374206e616d65203d3d20636f6e7374616e74732e75736472001642d0050b10142e00461720200685b8090b301185c80800998119bab301b30b301375400a6eb8c184c2cc04dd5180f9859809baa0069800802cdd7185b009859809baa301f30b301375400d003801200e9111192cc004c23c04c2c404dd5000c4c96600266ebcc2d804c2cc04dd5185b009859809baa001302f330b501375200a97ae08acc004c23c0660026eacc184c2cc04dd5000c01691010d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b5013754007006a4504555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c54cc2c8052412d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001642c40460c06166026ea80062a661620292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b10149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001642bc046600e008003222232598009847809858809baa0018992cc004cdd7985b009859809baa30b60130b301375460c26166026ea8004c0bccc2d404dd4802a5eb822b3001308f0198009bab306130b301375460c26166026ea800600b48810d7374616b696e675f7661756c7400404113259800984a009859809baa0018992cc0040063300100189985b809ba898009bab306330b501375460c6616a026ea800e00d48904555344720040486616e02617002616a026ea8004cc2dc0400d2f5c10a40140910a40185200c290061480285d008c2dc04c2d004dd5000c288050b10118301859809baa306130b301375400315330b1014901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642c00515330b1014914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001642c004616a026164026ea80062a661600292013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001642bc046600e0080029112cc004c2340402e26644b30019800985a809859009baa058815cc0bcc2c804dd504880cdd5980f1859009baa091014029159800998139bac30b50130b2013754122026eb8c0c4c2c804dd5180f1859009baa0588acc0066002660406eb0c2d404c2c804dd5048809bae305f30b2013754603c6164026ea81626eb0c180c2c804dd5000cdd618179859009baa05848896600266e1cc05800cc0580162b300130110028cc00400e005223259800984a80985b809baa001899192cc004c25c04c2e404dd5000c4c8ca60026603e010003375860486178026ea80126eb4c2fc0400922259800984e00985f009baa0038acc004cdc499199119b8330713370066e08004dd698379861009baa003002002375a60dc6180026ea8004dd698371860009baa00830c20130bf0137540073001375660da617e026ea8c1b4c2fc04dd50054dd71861008014dd718610098618080120388acc004cdc38009bad306d30bf01375400f13375e6e9c010c09cc2fc04dd5003c5282178028a5042f00515330bd014914365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001642f0043758617c02617e020026174026ea800629410b7011833185c809baa3301200400130bb0130b80137540030aa0142d4046601a00e002810214c0285900a14a02859009159800cc004dd6182f9859009baa091019bac30b50130b2013754003330b401306030b2013754603c6164026ea8160cc2d0053001054455534472004bd702444b30013370e6028004602c00b19800802c00a4464b300130950130b70137540031325980099baf30bc0130b90137540026178026172026ea8c2f004c2e404dd5002456600266ebcc198c2e404dd50009833985c809baa30bc0130b901375400913370f3001375660ce6172026ea80066eb8c2f0040166eb8c19c015016180d9bad306730b901375400914a085b00a29410b601185d80985c009baa00185780a16a023300d00500140810a10142c804899b87980082c42440690004dd6982f9859009baa0019bad303130b2013754003002401530010029bac30b50130b201375400323017375a60c26166026ea8005007454cc2c005241856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a2020202029001642bc0515330b0014918f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642bc050ad0142bc0515330b0014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6d696e745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642bc046eb0c2cc04c2c004dd50141859809858009baa092018992cc004c2340403226644b3001980098309859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc0066002660426eb0c2d804c2cc04dd5049009bae306030b3013754603e6166026ea81666eb0c184c2cc04dd5000ccc2d404c184c2cc04dd5180f9859809baa059330b5014c1054455534472004bd702444b30013370e602e006602e00b159800980900146600200700291192cc004c25804c2e004dd5000c4c8c966002612e026174026ea800626464b3001337120033001375660d6617a026ea8c1acc2f404dd5003cdd71860008044dd718600098608080420348acc004cdc380098371bad306b30bd01375400913375e618002618202004604a617a026ea801229410ba014528217402375a617e020026176026ea800629410b8011833985d009baa3301300400130bc0130b90137540030ab0142d8046601c00e002810a14e0285980a14c02859809159800cc004dd618301859809baa092018014dd6185b009859809baa0019bac303030b30137540b2801a266e1e60020b309201a4001375a60c06166026ea80066eb4c0c8c2cc04dd5000c0090064c00400a6eb0c2d804c2cc04dd5000c8cdc41bad306230b4013754002900020108a9985880a4819e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001642c0050ae0142c00515330b1014901856578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6275726e5f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018acc004c2440403226644b3001980098301859809baa0598164c0c0c2cc04dd504900cdd5980f9859809baa09201402d159800998141bac30b60130b3013754124026eb8c0c8c2cc04dd5180f9859809baa0598acc004cc896600266e1cc058008c0580122b300130110018cc00400a003223259800984a80985b809baa001899192cc004c1c4c2e404dd5000c4c96600266e1cdd6985f008009bad306930bb01375400713375e617c02617e0200260466176026ea800e29410b801185d009baa0018a5042dc0460cc6172026ea8cc048010004c2ec04c2e004dd5000c2a8050b50119806803000a04085300a1640285280a16402330213758616c026166026ea824804dd718301859809baa301f30b30137540b26eb0c184c2cc04dd5000c5660033001375860c06166026ea8248060053758616c026166026ea80066eb0c0c0c2cc04dd502ca0068984800cc0041661240398008014dd6185b009859809baa00192cc004c060dd69831185a009baa00189848809bad306130b401375400314a08588090084dd698301859809baa0019bad303230b3013754003002401915330b1014901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001642c00515330b101491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001642c0050ae0142c00515330b1014901896578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e77697468647261775f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c0046eb0c2d004c2c404dd5014985a009858809baa093018992cc004c1a4036330013758616a026164026ea80aa44444b30013370e603000a60300091598009809801c4cdc4800cc0040160074800244464b300130980130ba0137540031332259800984e80985e009baa0018992cc004006330010018acc004cdd7981e985f009baa00330c10130be01375400f15980099baf306c30be013754002618202617c026ea800e264b3001309f0130be013754003132325980099b87375a6188020046eb4c1bcc30404dd5003456600266e1cdd69862008009bad306e30c101375400d15980099baf30c40130c501001302930c101375400d1337000113001375660de6182026ea8c1bcc30404dd50054dd71862008064dd7186200986280806203c8a9985f80a493665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001642f80515330bf0149126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001642f80515330bf014912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001642f804618802002617e026ea80062a6617a02921184578706563746564204f4465706f73697420616374696f6e001642f00460d6617c026ea80061660285d80a1640285d80a162028142162030b10185880c2c4050c301186000985e809baa00185580a1740230be0130bb01375400260d06176026ea8c1a4c2ec04dd500242b4050b80119808003801205285400a1680285380a16802985a809859009baa094014889660033001303430b50137540b702e9819185a809baa094019bab302130b501375412802806a26644b300159800980d8014528c660026128020034a14a285a0090b40144c966002612a02616e026ea80063300198009bac30bb0130b801375412e03375c606e6170026ea8c090c2e004dd502f4dd71833185c009baa302430b80137540bd375a6176026170026ea80050094dd6985d80985c009baa30bb01980084b80cdd7185d80985c009baa302430b80137540bd375a60ca6170026ea80126eb4c0dcc2e004dd500220189b810029812985c009baa00448888c8c8cc8966002613a02617e026ea8016264b30013370e66e04dd6986200800802802456600266e1cdd698620098628080080145660026020017159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c01054455534472004bd7052000403915980099b8900398009bac306e30c1013754140034800244b30013375e618c026186026ea8008c31804c31c04c31c04c31c04c31c04c31c04c31c04c31c04c31c04c30c04dd5034c4cdc0000cc004dd598389861809baa0029bae307130c3013754605e6186026ea81a691010455534472004081100143000481c22b3001323371266e0003403260026eb0c0fcc30804dd5034520009119192cc004c0a8006266e0000ccdc199b82001375a60e8618c026ea8010dd698399863009baa0048801a1860298008024dd7186400800cdd7186400986480800a0443758618e026188026ea800902b1bab30c40130c50130c501980085000cdd71862009860809baa302d30c10137540cf375a60dc6182026ea80366eb4c100c30404dd5006a02a899b879800833c28006600e019375a60dc6182026ea80366eb4c100c30404dd5006c03d014005c54cc2fc052418d6578706563740a20202020202076616c69646174655f726573657276655f64656c74615f666f725f6465706f736974280a202020202020202076616c75655f64656c74612c0a202020202020202073657474696e67732e726573657276655f6173736574732c0a202020202020202072657175697265645f757364725f6261636b696e672c0a20202020202029001642f80515330bf014912b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001642f80515330bf014919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001642f805159800cc004cc0bcdd61862009860809baa0a001375c60dc6182026ea8c0b4c30404dd5033c03e6eb0c1bcc30404dd5006ccc30c04c1bcc30404dd518169860809baa067330c3014c1054455534472004bd704c1c800d00e44cdc3cc00419e14003300700c9bad306e30c101375401b375a60806182026ea803601e80a002e2a6617e02921b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001642f80485f00a2a6617e029213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001642f80515330bf014913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001642f8053001375860da6180026ea827c066eb8c0fcc30004dd518161860009baa0669bae306e30c001375460586180026ea819a6eb4c30c04c30004dd5002a02485500a17a023004001375a61820261840200cb30013021004899b833370400e0020091480010ba011bad30bf010044284050b501180f985b809baa0038a9985a80a4812e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001642d00530010039bac30b80130b501375400323005375a60c8616c026ea800500a4c00400e9000488cdc00009bad306430b701375400480f22a6616602921886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e6465706f7369745f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c8048acc004c1a003626644b30019800980e185a009baa05a816cc0c4c2d004dd504980cdd59810185a009baa093014031159800998149bac30b70130b4013754126026eb8c2dc04c2d004dd51810185a009baa05a899912cc004c24c04c2d404dd5000c4c8cc896600260100051598009804000c566002b30013096010018a518980e801216c028992cc004c0780062b30019800998141bac30bd0130ba013754132026eb8c19cc2e804dd51813185d009baa0609bac306830ba01375400f330bc01306830ba013754604c6174026ea8180cc2f005301054455534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e8c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b300198009bac306730ba013754132033758617a026174026ea801e661780260446174026ea8c098c2e804dd50301985e00a60106457355534472004bd702444b30013370e6038004603c01719800805c00a4464b3001309d0130bf0137540031325980099baf30c40130c10137540026188026182026ea8c31004c30404dd5002456600266ebcc1b8c30404dd500098379860809baa30c40130c101375400913370f3001375660de6182026ea80066eb8c310040166eb8c1bc01501e2cc004c2780402626eb4c1bcc30404dd500244cdc199b82375a60de6182026ea80100240290be014528217c028a5042f8046186026180026ea800616e0285e808cc05401400502842a4050ba012264b300130980130ba0137540031325980099b87375a617e0200266e000140222b30013370e6eb4c2fc04c30004004cdc0002001c56600266e1e60026eacc090c2f004dd504d80cdd71812185e009baa302830bc0137540c54881057355534472004064007130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd503152201045553447200406515330ba01491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001642e40515330ba014914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001642e40515330ba0149140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b801491dd6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001642dc0515330b801491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001642dc0515330b801491186578706563742073757364725f746f5f6d696e74203e2030001642dc04b30013096010018802c4cdc199b8200500100242d80515330b7014913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001642d80515330b701491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001642d80515330b7014911d657870656374207661756c745f757364725f6265666f7265203e3d2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491866578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa09401899912cc006600260426168026ea816a05b303130b401375412603375660406168026ea824c0500c4566002660526eb0c2dc04c2d004dd5049809bae30b70130b401375460406168026ea816a26644b300130930130b5013754003132332259800980e8014566002603a00313259800980f000c5660033001330283758617a026174026ea826404dd71833985d009baa302630ba0137540c1375860d06174026ea801e661780260446174026ea8c098c2e804dd50301985e00a6106457355534472004bd702444b30013370e603c006603c017159800980c80146600200700291192cc004c27404c2fc04dd5000c4cc89660026144026182026ea8006264b30010018cc0040062b30013375e60e06186026ea800cc31804c30c04dd5003456600266ebcc1c4c30c04dd50009863009861809baa0038acc004cdc49bad307130c30137540073001375660e26186026ea8c1c4c30c04dd50034dd7186300803cdd71838803a0408992cc004c1e4c30c04dd5000c4cdc39bad30c70130c40137540026eb4c1c8c31004dd50024528218202307030c30137540030b9014300050b8014300050b7014300050b60140b50b60185b00c2d80616c02864008c31404c30804dd5000c2c0050bf011861809860009baa001306d30c001375460dc6180026ea800e1640285e808cc05403400502842b8050ba0142b4050ba0122b30013370f3001375660446174026ea8264066eb8c088c2e804dd51813185d009baa060a44105735553447200405c60d600d13259800984c00985d009baa0018992cc004cdc39bad30bf010013370200a00715980099b87375a617e0261800200266e040100222b300130990198009bab302430bc01375413603375c60d46178026ea8c0a0c2f004dd5031522010455534472004065198009bac306930bc013754136033758617e026178026ea80266617c0260d46178026ea8c0a0c2f004dd50311985f00a61054455534472004bd702444b30013370e603c004604001b19800806c00a4464b3001309f0130c10137540031325980099baf30c60130c3013754002618c026186026ea8c31804c30c04dd5002456600266ebcc1c0c30c04dd500098389861809baa30c60130c301375400913370f3001375660e26186026ea80066eb8c318040166eb8c1c401502019b83337046eb4c1c4c30c04dd5002006005c5282180028a50430004618a026184026ea80061720285f808cc05c01400502a42ac050bc0122a66174029211765787065637420757364725f6d696e746564203d3d2030001642e40515330ba01491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001642e40515330ba014913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001642e4053001375860d06176026ea8268066eb8c0e8c2ec04dd51813985d809baa0619bae306930bb013754604e6176026ea81866eb4c2f804c2ec04dd5000a01a85280a17002302730ba01375400f15330b8014912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001642dc0515330b801491a86578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e73757364722c20636f6e7374616e74732e7375736472292c0a2020202029001642dc0515330b8014911a65787065637420757364725f746f5f72656c65617365203e2030001642dc053001007a4001223370000266e0ccdc11bad306930bb01375400400800681122a6616e02921236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001642d80515330b7014911c657870656374207661756c745f757364725f6265666f7265203e2030001642d8046eb4c2e804004dd6985d00985d80800cc004dd6185c80985b009baa095019bae303530b60137546044616c026ea81726eb8c190c2d804dd51811185b009baa05c9bad30b90130b6013754002803a13e0285980a60020053758616e026168026ea8006460326eb4c18cc2d404dd5000a016301c30b401375400309c0142c40515330b201491886578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e756e7374616b655f7065726d697373696f6e2c0a2020202020207369676e6174757265732c0a20202020202074782e76616c69646974795f72616e67652c0a20202020202074782e7769746864726177616c732c0a2020202029001642c4046eb0c2d404c2c804dd5015185a809859009baa0940142bc04857808dc4a40008570090ae0111112cc004cdc39809801180a801c6600200700291192cc004c25004c2d804dd5000c66002617402616e026ea80066eb0c07cc2dc04dd5001ccc068010dd6180f985b809baa003488966002612e026172026ea80062b30013375e617a026174026ea800cc2f404c2e804dd5185e80985d009baa0068acc004cdd79833985d009baa003306830ba013754617a026174026ea801a266e1e60026eacc1a0c2e804dd5001cdd7185e808014dd7185e80985f00801202e3301f301c375a60d06174026ea8018c2f404c2e804dd5000c528216e028a5042dc0515330b80149015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642dc0485700a168023300c006001407d0a00142c404856808444464b3001308e0130b00137540031325980099baf30b50130b2013754616a026164026ea8c180c2c804dd500098171985a009ba90054bd704566002611c033001375660c06164026ea8c180c2c804dd5000c016910108747265617375727900403d132598009849809859009baa0018992cc004006330010018992cc004c24804c2d004dd5000c4c96600266ebcc2e404c2d804dd5185c80985b009baa0013032330b801375201297ae08acc004c2480660026eacc190c2d804dd5000c026910108747265617375727900404d13259800984b80985b009baa0018992cc0040063300100189985d008029985d008009985d009ba6329800800cdd59833985c809baa00499198008009bab306830ba01375460d06174026ea8024896600200314bd6f7b63044c8cc2f804cdd8185d808009ba632330010013756617a0200444b30010018a5eb7bdb182264661820266ec0c2f804004dd418381bad30bf010013300300330c30100230c10100142fc0466006006618002004617c0200285e0090011112cc00400a2003132332298008034c30804016646600200200a44b30010018998610099bb037520086e9800d2f5bded8c113298009bae30c0010019bab30c1010019862808012444b3001337200100071330c601337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528218c02880144cc31c04cdd81ba9009374c002004861008ca6002003008801a002222598008014400626466453001006986700802cc8cc00400401489660020031330ce01337606ea4010dd4001a5eb7bdb1822653001375c619802003375a619a0200330d10100248896600266e4002000e2661a40266ec0dd48041ba80070058acc004cdc7804001c4c966002615c0200310028998698099bb037520126ea00040090ce0119b800070028998690099bb037520066ea0008cc0180180050cd01219a02186780800a19a0240186eb8c31c04004dd69864008009865008012190028998630099bb037520066e98008cc0180180050c101218202186180800a1820240186eb8c2ec04004dd5985e00800985f008012178024bd7042c40501f42c406162030b10185880a17a0230ba0130b701375400315330b50149012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642d00460c6616c026ea80062a6616802920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642cc0515330b40149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642cc04617002616a026ea80062a661660292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001642c804660146eb0c184c2d004dd5004002c2b00501b42b006158030ac0185600a1720230b60130b301375400315330b10149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001642c00460be6164026ea8c180c2c804dd5000c54cc2c0052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642bc0515330b0014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001642bc046168026162026ea80062a6615e0292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001642b8046600c6eb0c2cc04c2c004dd500200108a9984300a4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001642140464660020026eb0c0d4c22004dd5035112cc004006297ae0899845809ba732323308d01308e010023308d013038308b0137540026611a026ea4cc894cc22c04cdcb2481165369675374727563747572652e636f6e746578743a200037326606a612002611a026ea8005220100153308b013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606a6076611a026ea8005220100153308b013372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606a6074611a026ea8005220100153308b013372c9201165369675374727563747572652e7061796c6f61643a200037326606a6018611a026ea800522010013253308c013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606c6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002423004846008dc68009bae309001308d01375400266e28c008dd7181d9846809baa0013371460046eb8c0e8c23404dd500098011bae300c308d013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002422804845008dc6800981b9984680a610b4a5369676e617475726531003308d01308e01308b013754611c026116026ea8004cc234053010140003308d01375200a97ae04bd701846809847008009bac308c0100133002002308d010014228046e50dd980320cc82ba264b30010018acc004c178c20004dd5000c4c9660020030688992cc0040060d3069899912cc0040060d713259800800c1b20d906c899912cc0040060dd13259800800c1be0df06f8992cc004c2380400e2b300100783844c966002003071838c1c60e31332259800800c1ce264b300100183a41d20e90748992cc004c24c0400e260206126020230754240046eb800509301184800800a11c02375c002611e02010848008c2340401d08b0141c108b011bad001837a11c02308b010014224046eb4004c2280400a0d8845808c22004005086011bac001308701002834c1a508801184280800a10602308101375400306741f9067833c19e0ce843008c20c0400908101419107f1bae00142080460fe00283e8dd7000983f00120fe307c00141e86eb8004c1ec00907c183c800a0ee375c00260f000483c8c1d80050741bae001307500241d860e60028388c1bcdd5003415506c415501441550144155014415501441550144155014415507041560ab05582aa0e8307100141bc6eb0004c1c000a0a505241c460dc0028360c1b800a0a1050828414106f1836000a0d4306c002827413a09d04e41b460d40028340c1a800a09904c826413106b1834000a0cc3068002825412a09504a41a460cc0028320c19800a09104882441210671832000a0c43064002823411a08d046419460c40028300c18800a08904482241110631830000a0bc305c37540050424164444653001001802400d001111192cc004c0fc006264b300100180344c966002003007803c01e00f132598009834801c0160108330dd7000a0d23066001419060c46ea800e2b3001303e0018992cc00400600d13259800800c01e00f132598009834801c4cc0e000489660020050078992cc0040063300100a800c4c008c1b000d00a402e01700b805a0da306a00241a100841986eb000600f00741a460cc0028320c188dd5001c566002608400313259800800c01a264b3001001803c01e264b3001306900389981c000912cc00400a00f13259800800c66002015001898011836001a014805c02e01700b41b460d400483420108330dd6000c01e00e8348c19800506418311baa0038acc004c064006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260d800713303b0012259800801402a264b30010018cc00403600313002306f003403500e807403a01c8380c1b400906b402d0691bac001805402906c1834800a0ce375a00260d000500741a460cc0028320c188dd5001c566002603000313259800800c01a264b3001001803c01e00f132598009834801c0160108330dd6800c01d0691833000a0c830623754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260d200700580420cc375a00300741a460cc0028320c188dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260d200700580420cc375c0028348c19800506418311baa003802a0be417c82f905f20be417c82f8c180dd50014106083041820a0c03008305a3754646644a660b666e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a200037326600a6ea416522010013259800981d982e9baa00189929982e99b9649113666f756e642070726f7879207574786f3a3a200037326600e002910100132598009820182f9baa0018992cc0040062b3001303e3060375400313259800800c126264b3001001825412a09504a899912cc0040060991325980098350014401a09a8338c1a00050661bae001306700241a060ca0028318c184dd5000c12105e412209104882420cc306330603754003153305e49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164174601860be6ea8c034c17cdd50009830982f1baa0018a9982e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016416c660080024646600200260086eacc034c17cdd51806982f9baa0022259800800c528456600266e3cdd7183180082e4528c4cc008008c19000505d20c230010013758601260b66ea80e8896600200314bd7044cc178c16cc17c004cc008008c18000505d1800800911919800800801912cc0040062980103d87a80008992cc004c01000626012660be00297ae0899801801983080120b4305f001417444464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20c05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c82d105a1bac305d002375a60b60026466ec0dd4182d8009ba7305c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60c0003337149101023a200098008054c18400600a805100a183180144ca6002015306000199b8a489023a200098008054c184006600e66008008004805100a183180120c23063001418066e29220102207d0000341746eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c20ba3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e417c66e2ccdc0000acc004cdc4000a40291481822903720be004401866e0c00520203370c002901019b8e00400241706eb800d0601b8a4881022c20002232330010010032259800981b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002300b00189980299b8400148050cdc599b803370a002900a240c000682b90571803803a264b300100181a40d2264b300100181ac4c96600200303681b40da06d1332259800800c0e2264b30010018acc004c16000a264b300130323054375400513259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc0040060810408204102264b300130600038acc004c0e4c16cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d132598009833001c4c966002608000313259800800c126264b3001001825412a09504a8992cc004c1a800e02504b419c6eb800506a1833800a0ca30633754017159800981f800c56600260c66ea802e01f048419104841808300c184dd5005411d0631bae001419860c60028308dd7000983100120c63060001417860b86ea801a08282ca08282e8dd7000a0c0305d001416c60ba00503e81f40fa07c82f0c16c005059182d80140f207903c81e20b83059001415c60aa6ea800a07482904c01cc16002207282aa07303981cc0e5059182b000a0a8375c00260aa00482b0c14c0050511bac00181a40d10541828801209e40b902140b902144c96600200302f817c0be2646006609e0086eb400605e8278c13000904a44c96600200302d816c0b62646006609a0086eb400605a8268c12800904840a904640aa05502a815209430470014114608e00502881440a20508240c1140050431bad0013044002812a08a304200141006eb4004c10400a0448210c0fc00503d1bac001303e00280fc07d03f181e000a0743758002607600501c80e2078303900140dc606a6ea801a034819203481b0dd6000c06603281c8c0d8005034181b001405e02f01780ba06e303400140c8606800501580ac05602a81a8c0c800503018171baa010809a0561112cc004c028c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a801466002007132598009807800c56600260646ea800a00f00640cd1598009807000c4c9660020030078992cc0040060110088044022264b3001303900380540250361bae00140e4606c00281a0c0c8dd50014566002602400313259800800c01e264b30013038002804c021035181b000a0683032375400500640bc817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a8444b30013009302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002601c00313259800800c01e264b30010018acc004c0dc00a264b300130110018992cc00400601513259800800c566002607400519800800c032016808a01681ba01700b805c02d03b181c000a06c303437540051598009808000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0340062b3001303137540050078032064803205c40b8605e6ea800600a805a00a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c0050290dc3a40006e1d2002804402201100840a0604a60446ea800e2c80f8604200260386ea808a293454cc06924011856616c696461746f722072657475726e65642066616c7365001365640641" + : + "593595010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007370e90004dc3a4005223233001001003223300300130020024888a60024464b30013006001899192cc004c05c00a0091640506eb8c054004c044dd5001c566002600a0031323259800980b80140122c80a0dd7180a80098089baa0038b201e403c601e6ea800a44b30013005300f3754005132323259800980b80144c8c9660026014003159800980a9baa002803459016456600260120031323259800980d80140222c80c0dd6980c800980a9baa0028acc004c0340062b3001301537540050068b202c8b2026404c8098c04cdd5000980b001c59014192cc004c04c0062b30013371290021809000c5a2600e6024002808a2c80a0dd5180a800980a80098081baa0028b201c912cc004c014c03cdd500144c8c8cc896600260300070058b202a375a602a0026eb8c054008c054004c040dd500145900e488c966002600c0031323259800980b80140122c80a0dd6980a80098089baa0038acc004c0140062b3001301137540070028b20248b201e403c601e6ea8009222232323322598009805980a9baa010899191919912cc004c07c00e264b30013011301b3754003132323232323298009812800cdd61812802cdd698128024dd69812801cc0940092222259800981580344cc068dd61815005912cc00400a26603800c44b300100289980d00289980d0048cc004dc3a400d370e90044dc3a4014911192cc004c090c0b8dd500ac4c8c8c966002606c005132332259800981500144c96600260740031330293758607200244b300100280244cc08cc0ec0084c004c0f0009039459037181a9baa0038acc004c0a400a264b3001303a0018998149bac303900122598008014012266046607600426002607800481ca2c81b8c0d4dd5001c566002605a00513259800981d000c4cc0a4dd6181c800912cc00400a009133023303b00213001303c00240e51640dc606a6ea800e2b3001300a0028992cc004c0e80062660526eb0c0e40048966002005004899811981d80109800981e00120728b206e30353754007159800980480144c96600260740031330293758607200244b300100280244cc090c0ec0084c004c0f0009039459037181a9baa0038acc004c02000a264b3001303a0018998149bac303900122598008014012266048607600426002607800481ca2c81b8c0d4dd5001c59033206640cc8199033206630323754002264b300130290018992cc004c0e400626604a607000200f1640d860686ea800e2b300130280018992cc004c0e4006264b3001302b30353754003132323259800981e80144cc0a8c0f000c4cc0a800402e2c81d0c0ec004c0ec004c0d8dd5000c59034181c000c59036181a1baa0038b206440c860646ea8008c0d400e2c8198c0d0004c0d0004c0bcdd500ac5902d09981080a912cc00400a330012303430350019181a181a981a800cdd2a400122232598009814800c4c8c96600260740050048b206e375c607000260686ea800e2b300130280018992cc004c0e40062660506eb0c0e000489660020050058cc00401e607400513001303b002401c81c22c81b0c0d0dd5001c566002605800313259800981c800c4cc0a0dd6181c000912cc00400a00b19800803cc0e800a2600260760048039038459036181a1baa0038acc004c0240062646644b3001303b0018998151bac303a0012259800801401e33001009981e00144c004c0f400900920748b2070375a6070002607200260686ea800e2b30013008001899192cc004c0e800a0091640dc6eb4c0e0004c0d0dd5001c566002600e0031323259800981d00140122c81b8dd6981c000981a1baa0038acc004cdc3a40180031323259800981d00140122c81b8dd7181c000981a1baa0038b206440c88191032206440c88190c0c8dd500124444646644b3001302c30363754005132323232323232323298009821800cc10c022608600f30430069821802cc10c012608600737586086004911111112cc004c130026266024609602226602400e26602400c26602400a2660240082660240062b3001303d304737540051323232323298009bae30500019bae30500059bae30500049bae30500039bae30500024888896600260ac00d13304500b225980080144cc10805066002604860a86ea813a460b060b260b260b20032232330010010032259800800c5284566002600660b600314a3133002002305c001415882ca460b060b260b260b260b260b260b260b200337009000cdc024005374a9001244444446464b300198009111919912cc004c16000a2b300130583062375400314c0103d87a80008a6103d87980004185159800982d801456600260b660c46ea80062980103d87a80008a6103d87b800041851332259800982d000c530103d87b80008acc004c164006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041908320dd6983418329baa0038a6103d8798000418c8318dd6983318319baa00330623754002830906118301baa00130020033001003919191919912cc004c16000a29422b3001305b0028cc004cdd7983318319baa0014c103d87b8000a50a514185132332259800982d8014528c56600260b40051332259800982e18339baa30383068375400d1337100040031337120040028330dd6983498331baa00359800982d18329baa30363066375400f100189806800a0c88a5041908320c18cdd50009bad30673064375400860cc60c66ea800506120c23060375400260c860ca00660c660c06ea8004c188004c178dd5000cc0b4c174dd5004a444b30013055305f37540031323300b375860c860c26ea81608cdd7983298311baa00100230633060375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c194c188dd50014c194c188dd5000c8c8c96600260b260c86ea8c1a0c1a400a200313259800982d000c4c030cc1a0dd418069bad30693066375400497ae08acc004c16c0062005100241908320c190dd5000a0c63067001306337540028029300103d87b8000a50a5141811980099baf9800981918311baa002981918311baa001919192cc004c164c190dd51834183480144006264b3001305a00189806198341ba8300e375a60d260cc6ea80092f5c1159800982d800c400a2004832106418321baa001418c60ce00260c66ea8005005260103d8798000a50a51418114a0830106020c0306330603754002601260c06ea815d05e2330013060305d375401322232330010010042259800800c401226600660ca0026600400460cc002831a4530013300900223375e60c660c06ea8c18cc180dd5181818301baa001300633062375200497ae0a50a51417523052305d375460c2646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130573062375460cc0074a14a2830a2660cb30014a14c103d87a8000a60103d87980004184660ca6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1a000400e294626600400460d2002831906644cc196600294298103d87a8000a60103d87980004184660ca6e9c0092f5c11330659800a51a60103d87a8000a60103d87980004184660ca6e9ccc194dd400080125eb8106120c2375860c860ca0026eb4c190008cc008008c190005061489660020031480022600c6600400460c6002830244b30010018a40011300633002002306300141812222329800800c01600900340044444b30010038800c66002009306900398348016600260d0007375a60d00050014014802106648896600200514c103d87a80008acc004c1540062605c660c460c600497ae08cc00400e60c80053008001400c82f1061488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006418d1330050053069004418c6eb8c188004dd598318009832800a0c614bd6f7b6304896600260a860bc6ea800a26464b30013065002801c590621bad3063001305f37540051641752232330010010032259800800c52f5c1133225980099baf30663063375460cc60c66ea8c0ccc18cdd50011804998329ba90054bd7044cc194008cc0100100062660080080028308c190004c19400506248c184c188c188c188c188c188006460c260c460c460c460c460c460c4003222329800800c012006800888966002005159800800c528c52820c88acc00400629422b3001330043066002375a60cc00319800801cc19c00a60ce002801a294106120c841912259800982a182f1baa0028991919194c004c19800660cc007306600248896600260d4009133030306900713305300213259800982e000c4c8cc896600260dc003132323322598009839001c0422c8378dd718378009bae306f002306f001375860da0031641ac6eb4c1ac004c1b0004c19cdd5001456600260b60031323322598009837000c4c8c8cc896600260e40070108b20de375c60de0026eb8c1bc008c1bc004dd61836800c5906b1bad306b001306c00130673754005159800982f800c4c8ca60026eb4c1b000660da003375a60d80049112cc004c1c000a264646644b300130740038094590711bae3071001375c60e200460e20026eb0c1bc00a2c836860d800260ce6ea800a2b3001303c00189919912cc004c1b8006264646644b3001307200380845906f1bae306f001375c60de00460de0026eb0c1b40062c8358dd69835800983600098339baa0028acc004c0ec00626464b3001306d002805c5906a1bad306b00130673754005159800981d000c4c8c96600260da00500b8b20d4375a60d600260ce6ea800a2c832906520ca4194832906518329baa0018b20ce183300098328009832000982f9baa0028b20ba911194c0040060090034004444b30010028800c660020073067002998021833001000a0064191230613062306230623062001912cc004c150c178dd500144c8c96600260ca0050038b20c4375a60c600260be6ea800a2c82ea44b30010018a400113006330020023063001418137029000488cdc199b82002375a605c60be6ea8004dd69817982f9baa0019b88480024466056004466ebcc18cc180dd50009ba700248888888888888888888888a60024444646600200200a4464b30013070001899192cc004c1c8c1f0dd5000c4c8ca60026eb8c2080400a6eb8c20804c20c040066eb8c2080400572a308201001375861000260fa6ea8006294107b1919800800804112cc0040062980103d87a80008992cc004cdc79bc8375c6104020020091304d3308101374e00297ae089980180198418080120fa375861020200283f8dd7183f183d9baa0028acc004c1bc006264660020026eb0c1fcc1f0dd5001912cc00400629462b300133005005308001001899801001184080800c52820f641f91598009839800c4cc094dd6183f183d9baa0022330040040018acc004c14000626466e24dd6983f800cc004dd6183f984000800d2000912cc004cc01801800a2604a003100141f080f0c1ecdd50014566002609e0031323322598009839183e9baa0028acc004c1c8c1f4dd5184080984100801c4cdc49bad308101307e37540040031337106eb4c20404c1f8dd5001000a0f88a5041f060fe0026eb4c1fcc1f0dd5001983d9baa304b307b375400b1598009827000c4c8cc896600260e460fa6ea800a2b30013072307d37546102026104020071337120026eb4c20404c1f8dd500144cdc40009bad308101307e375400483e2294107c183f8009bad307f307c375400660f66ea8c1f8c1ecdd5002c4c8c8cc004004018896600200314a115980099baf003307d3081010018a51899801001184100800a0f841fc6042660fa60fc60f66ea80092f5c083c907920f241e483c9079183c9baa0019180a800cc04c04e6024025301001091119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c83da26600a00a61020200883d8dd7183d0009bad307b001307d00141ec660260080062900048c05400660e66ea805e600a00b2232598009837983b1baa001899198068008acc004cdd79811983c1baa003307b3078375400915980099baf30483078375400260f660f06ea800e20031641d91641d860f460ee6ea80062c83a8c114c1d8dd51823183b1baa00292cc004cdc4000a4001130050018800a0e6488888888888c8ca60024444446644646644b30013370e66e04dd69847809846009baa308f01003375a611e026118026ea8c23c04010006264b30013370f30013758606c611a026ea80329000488cc89660033001308601001a50a51423c051325980099b893302100100598008044dd7184a80801cdd7184a80984b00801a032899b800040018b2120023370400200b1003423c046eb0c24804c23c04dd5001194c00402a90004896600266ebcc094c24804dd50011ba7003899b80001375a60c46124026ea800a20028480090241bac309201308f0137540048108cdc08010054400a2c845809660026034013148006290012114028b2114023756611a02611c02002b3001307f300e0038a4001159800984700801c4c96600266e3cdd7184500800a4504555344720089bad308b010018b211202308d010038b211602422004611a02002660446eacc068c21c04dd50029bae30573087013754603c610e026ea801a600200b375c611402610e026ea8c078c21c04dd5003400e004803a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444b3001300f0028acc004cdc398070011806801c66002007002a4001222598009802001c4cdc00009bad3057308701375400716421404810a2c84100a2c84100a444464b3001307b30850137540031325980099baf308a013087013754611402610e026ea8004c0b4cc22404dd4802a5eb822b3001307b98009bab30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab30593089013754007006a441045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5000c5908501459085011844809843009baa0018b210802330060040019111192cc004c1ecc21404dd5000c4c96600266ebcc22804c21c04dd51845009843809baa30573087013754002605a66112026ea40152f5c1159800983dcc004dd5982b9843809baa30573087013754003005a450d7374616b696e675f7661756c74004039132598009840009843809baa00189919811800899845809ba898009bab3059308901375460b26112026ea800e00d4881045553447200404066116026118026112026ea8004cc22c0400d2f5c06116026110026ea80062c843008c158c21c04dd5182b9843809baa0018b210a028b210a023089013086013754003164210046600c008002911112cc004c1ec02e26644b300198009845809844009baa0538164c0c4c22004dd503fcdd5980f9844009baa07f4051159800998149bac308b0130880137540fe6eb8c0ccc22004dd5180f9844009baa0538acc0066002660426eb0c22c04c22004dd503f9bae30573088013754603e6110026ea814e6eb0c160c22004dd5000cdd618189844009baa05348896600266e1cc05000cc0500162b300130110028cc00400e0052232598009841809846809baa001899192cc004c21404c23c04dd5000c4c8ca60026603e0100033758604a6124026ea80126eb4c2540400922259800984500984a009baa0038acc004cdc499199119b8330403370066e08004dd69833984c009baa003002002375a60cc612c026ea8004dd69833184b009baa00830980130950137540073001375660ca612a026ea8c194c25404dd50054dd7184c008014dd7184c00984c8080120388acc004cdc38009bad3065309501375400f13375e6e9c010c0a0c25404dd5003c5282126028a50424c0516424c043758612802612a020026120026ea8006294108e01182f1847809baa33012004001309101308e013754003164230046601c00e002810a2c84480a2c844809159800cc004dd6182b9844009baa07f9bac308b0130880137540033308a0130583088013754603e6110026ea814ccc228053001054455534472004bd702444b30013370e602a004602800b19800802c00a4464b3001308301308d0137540031325980099baf309201308f013754002612402611e026ea8c24804c23c04dd5002456600266ebcc178c23c04dd5000982f9847809baa309201308f01375400913370f3001375660be611e026ea80066eb8c248040166eb8c17c01501618089bad305f308f01375400914a084680a294108d011848809847009baa0018b2118023300e005001408516422404899b879800829c1fe90004dd6982b9844009baa0019bad30333088013754003002401d30010029bac308b01308801375400323017375a60b26112026ea8005006459086014590860145908601459086011bac3089013086013754052611202610c026ea820006264b3001307b00c899912cc006600260b26112026ea815205b3032308901375410003375660406112026ea8200050154566002660546eb0c23004c22404dd5040009bae3034308901375460406112026ea81522b30019800998111bac308c013089013754100026eb8c160c22404dd518101844809baa0549bac305930890137540033308b013059308901375460406112026ea8150cc22c05301054455534472004bd702444b30013370e602a006602a00b159800980900146600200700291192cc004c21004c23804dd5000c4c8c966002610a026120026ea800626464b3001337120033001375660c66126026ea8c18cc24c04dd5003cdd7184b008044dd7184b00984b8080420348acc004cdc380098119bad3063309301375400913375e612c02612e02004604c6126026ea80122941091014528212202375a612a020026122026ea8006294108f01182f9848009baa33013004001309201308f013754003164234046601e00e00281122c84500a2c845009159800cc004dd6182c1844809baa080018014dd61846009844809baa0019bac303230890137540a8801a266e1e60020a908001a4001375a60b06112026ea80066eb4c0d0c22404dd5000c0090084c00400a6eb0c23004c22404dd5000c8cdc41bad305a308a0137540029000200e8b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c56600260fe0191332259800cc004c160c22404dd502a40b660646112026ea8200066eacc080c22404dd504000a02a8acc004cc0a8dd61846009844809baa08001375c60686112026ea8c080c22404dd502a45660026644b30013370e602800460280091598009808800c6600200500191192cc004c20c04c23404dd5000c4c8c96600260ca611e026ea8006264b30013370e6eb4c25004004dd698309848809baa003899baf3094013095010013024309101375400714a0847808c24004dd5000c528211c02305e308f01375466024008002612202611c026ea80062c846008cc0380180050214590890145908901198111bac308c013089013754100026eb8c160c22404dd518101844809baa054375860b26112026ea80062b300198009bac30583089013754100030029bac308c013089013754003375860646112026ea815100344c1fa60020a908001cc00400a6eb0c23004c22404dd5000c96600260306eb4c168c22804dd5000c4c1fcdd6982c9845009baa0018a50422004803a6eb4c160c22404dd5000cdd6981a1844809baa00180120108b210e028b210e028b210e028b210e023758611402610e026ea80a8c22804c21c04dd504080c4c96600260ba01b198009bac308b013088013754057222225980099b87301600530160048acc004c04c00e266e24006600200b003a400122232598009843009848009baa001899912cc004c22c04c24804dd5000c4c8cc0a400456600266ebcc0fcc25004dd5001984b80984a009baa0078acc004cdd79832184a009baa001309701309401375400713259800984680984a009baa001899192cc004cdc39bad309a01002375a60ce612e026ea801a2b30013370e6eb4c26804004dd69833184b809baa0068acc004cdd7984d00984d808009815184b809baa006899b8000898009bab3067309701375460ce612e026ea802a6eb8c268040326eb8c26804c26c0403101e459095014590950145909501184d00800984a809baa0018b212602306330940137540031642480516424804612c026126026ea80062c848808c25004c24404dd500098301848809baa3061309101375400916423c046602200e00481522c84580a2c84580a6116026110026ea82080522259800cc004c0d8c22c04dd502b40be60686116026ea8208066eacc088c22c04dd504100a02e899912cc00566002603600514a319800984100800d28528a11602422c05132598009841809846809baa0018cc00660026eb0c24404c23804dd504280cdd7181c9847009baa3025308e0137540b3375c60bc611c026ea8c094c23804dd502ccdd69848809847009baa0014025375a612202611c026ea8c24406600210a03375c612202611c026ea8c094c23804dd502ccdd6982e9847009baa0049bad3039308e01375400880726e0400a604c611c026ea8011222232323259800984500984a009baa0048992cc004cdc399b81375a61320200200800715980099b87375a6132026134020026eb4c26404c268040222b3001300f00a8acc00660026605e6eb0c26404c25804dd5046809bae30653096013754605a612c026ea818601d375860cc612c026ea8032661300260cc612c026ea8c0b4c25804dd50309984c00a61054455534472004bd7052000403515980099b8900298009bac3065309601375411a034800244b30013375e6136026130026ea8008c26c04c27004c27004c27004c27004c27004c27004c27004c27004c26004dd5031c4cdc0000cc004dd59834184c009baa0029bae30683098013754605e6130026ea818e9101045553447200407d100142580481c22b3001323371266e0003002e60026eb0c100c25c04dd5031520009119192cc004c0a4006266e0000ccdc199b82001375a60d66136026ea8010dd69835184d809baa0048801a1320298008024dd7184e80800cdd7184e80984f00800a04237586138026132026ea800902b1bab309901309a01309a01980084680cdd7184c80984b009baa302d30960137540c3375a60ca612c026ea80326eb4c104c25804dd5006202c899b879800830c23406600c017375a60ca612c026ea80326eb4c104c25804dd50064039015005459094014590940145909401456600330013302f3758613202612c026ea823404dd71832984b009baa302d30960137540c300e9bac30663096013754019330980130663096013754605a612c026ea8184cc26005301054455534472004bd704c09800900d44cdc3cc00418611a03300600b9bad30653096013754019375a6082612c026ea803201c80a802a2c84a0090940145909401459094014c004dd61832184a809baa08c019bae304030950137546058612a026ea81826eb8c194c25404dd51816184a809baa0609bad3098013095013754008808a2c849808c01000566002604200913370666e0801c00401229000212202375a612a020088b2118023020308d01375400716422c0530010039bac308e01308b01375400323005375a60b86118026ea80050094c00400e9000488cdc00009bad305c308d01375400480fa2c844809159800982e006c4cc89660033001301d308a0137540ab02e98199845009baa081019bab3021308a0137541020280b22b30013302b3758611a026114026ea820404dd71846809845009baa3021308a0137540ab13322598009840809845809baa00189919912cc004c02000a2b300130080018acc0056600261080200314a31301d00242340513259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260c06120026ea8c09cc24004dd502d9984900a601054455534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b8c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c848809159800cc004dd6182f9848009baa087019bac309301309001375400f330920130233090013754604e6120026ea816ccc2480530106457355534472004bd702444b30013370e603a004603801719800805c00a4464b3001308b0130950137540031325980099baf309a013097013754002613402612e026ea8c26804c25c04dd5002456600266ebcc198c25c04dd50009833984b809baa309a01309701375400913370f3001375660ce612e026ea80066eb8c268040166eb8c19c01501e2cc004c2300402626eb4c19cc25c04dd500244cdc199b82375a60ce612e026ea8010024029095014528212a028a50425404613202612c026ea80062c84a008cc058014005029459091012264b300130860130900137540031325980099b87375a612a0200266e000140222b30013370e6eb4c25404c25804004cdc0002001c56600266e1e60026eacc094c24804dd504480cdd718129849009baa302930920137540bb4881057355534472004064007130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed220104555344720040651642400516424005164240053001375860c06122026ea8220066eb8c0f0c24404dd518141848809baa05c9bae3061309101375460506122026ea81726eb4c25004c24404dd5000a01a8b211e023028309001375400f164238051642380516423804b30013084010018802c4cdc199b820050010024234051642340516423405164234046eb4c24004004dd6984800984880800cc004dd61847809846009baa083019bae3037308c01375460466118026ea815e6eb8c170c23004dd518119846009baa0579bad308f01308c013754002803a2c84500a60020053758611a026114026ea8006460326eb4c16cc22c04dd5000a00e301d308a01375400316422005164220046eb0c22c04c22004dd50159845809844009baa08201899912cc006600260446114026ea815605d3033308a01375410203375660426114026ea8204050164566002660566eb0c23404c22804dd5040809bae308d01308a01375460426114026ea815626644b3001308101308b013754003132332259800980e8014566002603a00313259800980f000c56600330013302937586126026120026ea821c04dd7182f9848009baa302730900137540b7375860c06120026ea801e661240260466120026ea8c09cc24004dd502d9984900a60106457355534472004bd702444b30013370e60380066038017159800980c80146600200700291192cc004c22c04c25404dd5000c4cc8966002612002612e026ea80062646605c0022b30013375e60d06132026ea800cc27004c26404dd5003456600266ebcc1a4c26404dd5000984e00984c809baa0038acc004cdc49bad306930990137540073001375660d26132026ea8c1a4c26404dd50034dd7184e00803cdd71834803a0408992cc004c1b4c26404dd5000c4cdc39bad309d01309a0137540026eb4c1a8c26804dd500245282130023068309901375400316425c0516425c0516425c046136026130026ea80062c84b008c26404c25804dd50009832984b009baa30663096013754007164250046602c01a002814a2c84880a2c84880915980099b8798009bab3023309001375410e03375c60466120026ea8c09cc24004dd502dd22105735553447200405c604000d132598009843009848009baa0018992cc004cdc39bad3095010013370200a00715980099b87375a612a02612c0200266e040100222b300130870198009bab3025309201375411203375c60c46124026ea8c0a4c24804dd502ed22010455534472004065198009bac30613092013754112033758612a026124026ea8026661280260c46124026ea8c0a4c24804dd502e9984a00a61054455534472004bd702444b30013370e603e004603c01b19800806c00a4464b3001308d0130970137540031325980099baf309c0130990137540026138026132026ea8c27004c26404dd5002456600266ebcc1a0c26404dd50009834984c809baa309c01309901375400913370f3001375660d26132026ea80066eb8c270040166eb8c1a401502019b83337046eb4c1a4c26404dd5002006005c528212e028a50425c046136026130026ea80062c84b008cc06001400502b4590930122c84800a2c84800a2c84800a60026eb0c180c24404dd504400cdd7181e1848809baa302830910137540b9375c60c26122026ea8c0a0c24404dd502e4dd6984a009848809baa001403516423c0460506120026ea801e2c84700a2c84700a2c84700a600200f480024466e00004cdc199b82375a60c26122026ea800801000d02345908d0145908d011bad309001001375a61200261220200330013758611e026118026ea820c066eb8c0dcc23004dd518119846009baa0579bae305c308c01375460466118026ea815e6eb4c23c04c23004dd5000a00e8b21140298008014dd61846809845009baa0019180c9bad305b308b0137540028038c074c22804dd5000c5908801459088011bac308b0130880137540566116026110026ea82080508601210c0237129000210a024214044444b30013370e6028004602600719800801c00a4464b3001308201308c013754003198009848009846809baa0019bac3020308d0137540073301a00437586040611a026ea800d222598009842809847809baa0018acc004cdd79849809848009baa00330930130900137546126026120026ea801a2b30013375e60be6120026ea800cc180c24004dd51849809848009baa006899b8798009bab30603090013754007375c612602005375c61260261280200480b8cc07cc048dd698301848009baa006309301309001375400314a084700a294108e0145908e0122c845808cc034018005020459088012108021111192cc004c1e8c21004dd5000c4c96600266ebcc22404c21804dd51844809843009baa30563086013754002605866110026ea40152f5c1159800983d4c004dd5982b1843009baa30563086013754003005a4508747265617375727900403513259800983f9843009baa0018991980d0008992cc004c1f8c22004dd5000c4c96600266ebcc23404c22804dd51846809845009baa00130303308c01375201297ae08acc004c1fa60026eacc168c22804dd5000c026911087472656173757279004045132598009841809845009baa0018991980f00089984700802998470080099847009ba6329800800cdd5982e9846809baa00499198008009bab305e308e01375460bc611c026ea8024896600200314bd6f7b63044c8cc24804cdd81847808009ba63233001001375661220200444b30010018a5eb7bdb1822646612a0266ec0c24804004dd418119bad30930100133003003309701002309501001424c04660060066128020046124020028480090011112cc00400a2003132332298008034c25804016646600200200a44b300100189984b0099bb037520086e9800d2f5bded8c113298009bae3094010019bab309501001984c808012444b30013372001000713309a01337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528213402880144cc26c04cdd81ba9009374c00200484b808ca6002003008801a002222598008014400626466453001006985100802cc8cc00400401489660020031330a201337606ea4010dd4001a5eb7bdb1822653001375c614002003375a61420200330a50100248896600266e4002000e26614c0266ec0dd48041ba80070058acc004cdc7804001c4c96600261340200310028998538099bb037520126ea00040090a30119b800070028998530099bb037520066ea0008cc0180180050a201214402185180800a1420240186eb8c26c04004dd6984e00800984f0080121380289984d0099bb037520066e98008cc01801800509601212c02184b80800a12a0240186eb8c23c04004dd59848008009849008012120024bd701847009845809baa0018b2112023059308a01375400316422005164220046118026112026ea80062c843808cc024dd6182b9844009baa008005308a0130870137540031642140460aa610c026ea8c158c21804dd5000c5908401459084011844009842809baa0018b210602330053758610e026108026ea8010008896600266e2000520008a6103d87a8000899804801000a0fe22c82d8c8cc004004dd61816182e9baa0572259800800c52f5c1133060374e6464660c460c6004660c4605e60c06ea8004cc188dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241888310dc68009bae30653062375400266e28c008dd7181918311baa0013371460046eb8c0c4c188dd500098011bae300d30623754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241808300dc68009817198312610b4a5369676e617475726531003306230633060375460c660c06ea8004cc18930101400033062375200a97ae04bd70183118318009bac3061001330020023062001417c6e50dd9803a264b3001304a305437540031323232332259800982f001c4c8c8cc896600260c40071300b306200c8b20be375c60be0026eb8c17c008c17c004dd6182e802c5905b1bad305b001375a60b600460b600260b400260aa6ea80062c8298c15c0090554590530c140004c13c004c138004c134004c120dd50014590464590490c10c004c108004c104004c100004c0fc004c0f8004c0f4004c0f0004c0dcdd50014590351802981a9baa323232598009816981b9baa0018992cc004c0c4c0e0dd5000c4c966002605e60726ea8006264646644b300130420038802c5903f181f8009bae303f002303f001303a37540031640e0607860726ea80062c81b8c01cc0e0dd51804181c1baa303b303837540031640d8660066eb0c01cc0dcdd50171191980080098019bab300930393754601260726ea8008896600200314a115980099b8f375c607a00206f14a3133002002303e00140e081d8c004004896600200314bd7044cc0e4c0d8c0e8004cc008008c0ec0050381801001111919800800801912cc0040062980103d87a80008992cc004c0100062600e6607600297ae0899801801981e801206e303b00140e489919912cc004c0dc00626644b3001302a303437540051323232332259800981f001c4c966002606060746ea8006264646644b300130430038992cc004c0d400626464b300130460028074590431bae30440013040375400f159800981a000c56600260806ea801e0191641051640f881f0c0f8dd50034590401bae3040001375c6080004608000260766ea80062c81c8c0f40162c81d8dd7181d800981d801181d800981d000981a9baa0028b206630360011300430370058b2068375c6068002606a0026eb0c0cc0090312264600460600066eb4c0b800902c44c8c008c0b800cdd6981600120548b205018128009812000981180098110009810800980e1baa0018b2034301e0058b203837586038002603800460380026036002602c6ea80422c80a089660026016602a6ea800a26464646644b3001301f003899804180f00289980580100345901c180e0009bad301c002301c001301b0013016375400516405044b3001300b301537540051323232323298009bac301e0019bad301e0049bad301e003980f00124444b30013023005899806181100489980780089919912cc004c09800e01b16408c6eb8c08c004dd7181180298118024590200c078004c074004c070004c06c004c058dd5001459014112cc004c028c050dd500144c8c8c9660026038005133006301b003132598009807000c56600260326ea800a00b1640691598009806800c4c8c966002603e0050078b2038375c603a00260326ea800a2b30013011001899192cc004c07c00a00f164070603a00260326ea800a2c80b9017202e3017375400316406460340026034002602a6ea800a2c80988966002601260266ea800a2646464b3001301b002899804980d0018992cc004c034006264b3001301d001899192cc004c040006264b30013020001899807180f800804c5901d180d9baa0028acc004c03c00626464653001375a6042003375a6042007375a60420049112cc004c09401201d16408830210013020001301b375400516406480c8c064dd5000980e000c5901a180c1baa0028acc004c0300062b3001301837540050058b20328b202c4058602c6ea80062c80c0c064004c064004c050dd50014590121164020300900130043754013149a26cac80101", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_4StakingVaultStakingVaultMint { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601" + : + "5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_4StakingVaultStakingVaultSpend { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601" + : + "5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V0_4StakingVaultStakingVaultElse { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5908c40101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c96600266e3cdd7180b8019bae3017001899b87375a602e603000290014528202230173758602c00319800801cc05c00a602e002801a29410102028405114a3153300e491856578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c20285f2c2061637475616c2c20616d742929207b206578706563746564203d3d2061637475616c20262620616d74203d3d2031207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001615330034911f5f72656465656d65723a205374616b696e675661756c7452656465656d6572001601" + : + "5903010101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d159800992cc004cdc79bae3014003375c602800313370e6eb4c050c05400520028a50403c60286eb0c04c00633001003980a0014c0500050034528201c4044808a29462c805a2c8058dd7180798061baa0068acc004cdc3a400400b132332259800980398071baa0048acc004c03cdd500244c8cc88c8c8cc004004dd5980b980c180c180c180c180c180c180a1baa00a2259800800c528456600266ebc00cc050c06000629462660040046032002809901619ba548008cc050c054c048dd5192cc004c02cc048dd5000c4c96600266e1d200430133754003132598009806980a1baa0018991919912cc004c07400e200b16406860340026eb8c068008c068004c054dd5000c59013180b980a1baa0018b202430163017301730133754600460266ea8c058c04cdd5000c59011198049bac3001301237540104646600200260086eacc00cc050dd51801980a1baa0022259800800c528456600266e3cdd7180c0008094528c4cc008008c064005013202c4bd7018008009180a180a800912cc004006297ae08998099808180a00099801001180a800a0248b20208b201a301000130103011001300c375400d164028805060126014002601200260086ea802629344d95900201", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/src/generated-types/v1_0/index.ts b/modules/realfi-partner-sdk/src/generated-types/v1_0/index.ts new file mode 100644 index 0000000000..383f5d8cdf --- /dev/null +++ b/modules/realfi-partner-sdk/src/generated-types/v1_0/index.ts @@ -0,0 +1,1101 @@ +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { type Script } from "@blaze-cardano/core"; +import { Type, Exact, TPlutusData } from "@blaze-cardano/data"; +type Data = Exact; +type Int = bigint; +type ByteArray = string; +const PolicyId = Type.String(); +const ScriptHash = Type.String(); +type OutputReference = { output_index: bigint; transaction_id: string }; + +const Contracts = Type.Module({ + Bool: Type.Boolean(), + Tuple_VerificationKey_COSESign1: Type.Tuple([ + Type.String(), + Type.Ref("COSESign1"), + ]), + COSESign1: Type.Object( + { + headers: Type.Ref("Headers"), + payload: Type.Optional(Type.String()), + signature: Type.String(), + }, + { ctor: 0n }, + ), + HeaderMap: Type.String(), + Headers: Type.Object( + { + protected: Type.Ref("HeaderMap"), + unprotected: Type.Ref("HeaderMap"), + }, + { ctor: 0n }, + ), + MultisigScript: Type.Union([ + Type.Object({ + Signature: Type.Object( + { + key_hash: Type.String(), + }, + { ctor: 0n }, + ), + }), + Type.Object({ + AllOf: Type.Object( + { + scripts: Type.Array(Type.Ref("MultisigScript")), + }, + { ctor: 1n }, + ), + }), + Type.Object({ + AnyOf: Type.Object( + { + scripts: Type.Array(Type.Ref("MultisigScript")), + }, + { ctor: 2n }, + ), + }), + Type.Object({ + AtLeast: Type.Object( + { + required: Type.BigInt(), + scripts: Type.Array(Type.Ref("MultisigScript")), + }, + { ctor: 3n }, + ), + }), + Type.Object({ + Before: Type.Object( + { + time: Type.BigInt(), + }, + { ctor: 4n }, + ), + }), + Type.Object({ + After: Type.Object( + { + time: Type.BigInt(), + }, + { ctor: 5n }, + ), + }), + Type.Object({ + Script: Type.Object( + { + script_hash: Type.String(), + }, + { ctor: 6n }, + ), + }), + ]), + Asset: Type.Tuple([Type.String(), Type.String()]), + Destination: Type.Object( + { + address: Type.Object( + { + payment_credential: Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }), + }), + Type.Object({ + Script: Type.Tuple([Type.String()], { ctor: 1n }), + }), + ]), + stake_credential: Type.Optional( + Type.Union([ + Type.Object({ + Inline: Type.Tuple( + [ + Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { + ctor: 0n, + }), + }), + Type.Object({ + Script: Type.Tuple([Type.String()], { ctor: 1n }), + }), + ]), + ], + { ctor: 0n }, + ), + }), + Type.Object({ + Pointer: Type.Object( + { + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt(), + }, + { ctor: 1n }, + ), + }), + ]), + ), + }, + { ctor: 0n }, + ), + datum: Type.Union([ + Type.Literal("NoDatum", { ctor: 0n }), + Type.Object({ + DatumHash: Type.Tuple([Type.String()], { ctor: 1n }), + }), + Type.Object({ + InlineDatum: Type.Tuple([TPlutusData], { ctor: 2n }), + }), + ]), + }, + { ctor: 0n }, + ), + DirectRequestV1: Type.Object( + { + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + origin: Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + }, + { ctor: 0n }, + ), + ExchangeRequestV1: Type.Object( + { + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + min_received: Type.BigInt(), + origin: Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 0n }, + ), + ExtraProtocolRedeemerV1: Type.Object( + { + request_to_outputs: Type.Array(Type.BigInt()), + input_to_requests: Type.Array(Type.BigInt()), + treasury_input_idx: Type.BigInt(), + treasury_output_idx: Type.BigInt(), + vault_input_idx: Type.Optional(Type.BigInt()), + vault_output_idx: Type.Optional(Type.BigInt()), + }, + { ctor: 0n }, + ), + Nonce: Type.Union([ + Type.Object({ + UTxO: Type.Tuple( + [ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + ], + { ctor: 0n }, + ), + }), + Type.Object({ + Validity: Type.Tuple( + [ + Type.Object( + { + lower_bound: Type.Object( + { + bound_type: Type.Union([ + Type.Literal("NegativeInfinity", { ctor: 0n }), + Type.Object({ + Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }), + }), + Type.Literal("PositiveInfinity", { ctor: 2n }), + ]), + is_inclusive: Type.Ref("Bool"), + }, + { ctor: 0n }, + ), + upper_bound: Type.Object( + { + bound_type: Type.Union([ + Type.Literal("NegativeInfinity", { ctor: 0n }), + Type.Object({ + Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }), + }), + Type.Literal("PositiveInfinity", { ctor: 2n }), + ]), + is_inclusive: Type.Ref("Bool"), + }, + { ctor: 0n }, + ), + }, + { ctor: 0n }, + ), + ], + { ctor: 1n }, + ), + }), + ]), + OrderActionV1: Type.Union([ + Type.Object({ + OMint: Type.Object( + { + amount: Type.BigInt(), + min_received: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 0n }, + ), + }), + Type.Object({ + ORedeem: Type.Object( + { + amount: Type.BigInt(), + min_received: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 1n }, + ), + }), + Type.Object({ + ODeposit: Type.Object( + { + principal: Type.BigInt(), + yield: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 2n }, + ), + }), + Type.Object({ + OWithdraw: Type.Object( + { + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 3n }, + ), + }), + Type.Object({ + OStake: Type.Object( + { + amount: Type.BigInt(), + min_received: Type.BigInt(), + }, + { ctor: 4n }, + ), + }), + Type.Object({ + OUnstake: Type.Object( + { + amount: Type.BigInt(), + min_received: Type.BigInt(), + forfeit: Type.BigInt(), + }, + { ctor: 5n }, + ), + }), + Type.Object({ + ODirectMint: Type.Object( + { + amount: Type.BigInt(), + }, + { ctor: 6n }, + ), + }), + Type.Object({ + ODirectBurn: Type.Object( + { + amount: Type.BigInt(), + }, + { ctor: 7n }, + ), + }), + ]), + OrderDatumV1: Type.Object( + { + owner: Type.Ref("MultisigScript"), + destination: Type.Ref("Destination"), + action: Type.Ref("OrderActionV1"), + data: TPlutusData, + }, + { ctor: 0n }, + ), + OrderRedeemerV1: Type.Union([ + Type.Literal("Execute", { ctor: 0n }), + Type.Literal("Cancel", { ctor: 1n }), + Type.Literal("Invalidated", { ctor: 2n }), + ]), + ProtocolRedeemerV1: Type.Union([ + Type.Object({ + Mint: Type.Object( + { + requests: Type.Array(Type.Ref("ExchangeRequestV1")), + }, + { ctor: 0n }, + ), + }), + Type.Object({ + Burn: Type.Object( + { + requests: Type.Array(Type.Ref("ExchangeRequestV1")), + }, + { ctor: 1n }, + ), + }), + Type.Object({ + Withdraw: Type.Object( + { + requests: Type.Array(Type.Ref("TreasuryRequestV1")), + }, + { ctor: 2n }, + ), + }), + Type.Object({ + Deposit: Type.Object( + { + requests: Type.Array(Type.Ref("TreasuryRequestV1")), + }, + { ctor: 3n }, + ), + }), + Type.Object({ + Stake: Type.Object( + { + requests: Type.Array(Type.Ref("StakeRequestV1")), + }, + { ctor: 4n }, + ), + }), + Type.Object({ + Unstake: Type.Object( + { + requests: Type.Array(Type.Ref("StakeRequestV1")), + }, + { ctor: 5n }, + ), + }), + Type.Object({ + DirectMint: Type.Object( + { + requests: Type.Array(Type.Ref("DirectRequestV1")), + }, + { ctor: 6n }, + ), + }), + Type.Object({ + DirectBurn: Type.Object( + { + requests: Type.Array(Type.Ref("DirectRequestV1")), + }, + { ctor: 7n }, + ), + }), + ]), + ProxyDatumV1: Type.Object( + { + logic: Type.String(), + settings: Type.Ref("SettingsV1"), + }, + { ctor: 0n }, + ), + RegistryV1: Type.Object( + { + treasury: Type.String(), + usdr: Type.String(), + order: Type.String(), + staking_vault: Type.String(), + yield_oracle: Type.String(), + }, + { ctor: 0n }, + ), + ReserveAsset: Type.Object( + { + asset: Type.Ref("Asset"), + numerator: Type.BigInt(), + denominator: Type.BigInt(), + }, + { ctor: 0n }, + ), + SettingsV1: Type.Object( + { + mint_permission: Type.Ref("MultisigScript"), + burn_permission: Type.Ref("MultisigScript"), + withdraw_permission: Type.Ref("MultisigScript"), + deposit_permission: Type.Ref("MultisigScript"), + stake_permission: Type.Ref("MultisigScript"), + unstake_permission: Type.Ref("MultisigScript"), + direct_mint_permission: Type.Ref("MultisigScript"), + direct_burn_permission: Type.Ref("MultisigScript"), + yield_oracle_permission: Type.Ref("MultisigScript"), + registry: Type.Ref("RegistryV1"), + reserve_assets: Type.Array(Type.Ref("ReserveAsset")), + unstaked_yield_pot: Type.Object( + { + payment_credential: Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }), + }), + Type.Object({ + Script: Type.Tuple([Type.String()], { ctor: 1n }), + }), + ]), + stake_credential: Type.Optional( + Type.Union([ + Type.Object({ + Inline: Type.Tuple( + [ + Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { + ctor: 0n, + }), + }), + Type.Object({ + Script: Type.Tuple([Type.String()], { ctor: 1n }), + }), + ]), + ], + { ctor: 0n }, + ), + }), + Type.Object({ + Pointer: Type.Object( + { + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt(), + }, + { ctor: 1n }, + ), + }), + ]), + ), + }, + { ctor: 0n }, + ), + }, + { ctor: 0n }, + ), + SignedPayload_ProtocolRedeemerV1: Type.Object( + { + action: Type.Ref("ProtocolRedeemerV1"), + nonce: Type.Ref("Nonce"), + }, + { ctor: 0n }, + ), + SignedRedeemer_ExtraProtocolRedeemerV1: Type.Object( + { + extra: Type.Ref("ExtraProtocolRedeemerV1"), + payload: Type.Ref("SignedPayload_ProtocolRedeemerV1"), + signatures: Type.Array(Type.Ref("Tuple_VerificationKey_COSESign1")), + }, + { ctor: 0n }, + ), + StakeRequestV1: Type.Object( + { + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + min_received: Type.BigInt(), + origin: Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + forfeit: Type.BigInt(), + }, + { ctor: 0n }, + ), + StakingVaultRedeemerV1: Type.Undefined(), + TreasuryDatumV1: Type.Object( + { + circulating_supply: Type.BigInt(), + }, + { ctor: 0n }, + ), + TreasuryRequestV1: Type.Object( + { + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + yield: Type.BigInt(), + origin: Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 0n }, + ), + VaultDatumV1: Type.Object( + { + circulating_susdr: Type.BigInt(), + }, + { ctor: 0n }, + ), +}); + +export const Bool = Contracts.Import("Bool"); +export type Bool = Exact; +export const Tuple_VerificationKey_COSESign1 = Contracts.Import( + "Tuple_VerificationKey_COSESign1", +); +export type Tuple_VerificationKey_COSESign1 = Exact< + typeof Tuple_VerificationKey_COSESign1 +>; +export const COSESign1 = Contracts.Import("COSESign1"); +export type COSESign1 = Exact; +export const HeaderMap = Contracts.Import("HeaderMap"); +export type HeaderMap = Exact; +export const Headers = Contracts.Import("Headers"); +export type Headers = Exact; +export const MultisigScript = Contracts.Import("MultisigScript"); +export type MultisigScript = Exact; +export const Asset = Contracts.Import("Asset"); +export type Asset = Exact; +export const Destination = Contracts.Import("Destination"); +export type Destination = Exact; +export const DirectRequestV1 = Contracts.Import("DirectRequestV1"); +export type DirectRequestV1 = Exact; +export const ExchangeRequestV1 = Contracts.Import("ExchangeRequestV1"); +export type ExchangeRequestV1 = Exact; +export const ExtraProtocolRedeemerV1 = Contracts.Import( + "ExtraProtocolRedeemerV1", +); +export type ExtraProtocolRedeemerV1 = Exact; +export const Nonce = Contracts.Import("Nonce"); +export type Nonce = Exact; +export const OrderActionV1 = Contracts.Import("OrderActionV1"); +export type OrderActionV1 = Exact; +export const OrderDatumV1 = Contracts.Import("OrderDatumV1"); +export type OrderDatumV1 = Exact; +export const OrderRedeemerV1 = Contracts.Import("OrderRedeemerV1"); +export type OrderRedeemerV1 = Exact; +export const ProtocolRedeemerV1 = Contracts.Import("ProtocolRedeemerV1"); +export type ProtocolRedeemerV1 = Exact; +export const ProxyDatumV1 = Contracts.Import("ProxyDatumV1"); +export type ProxyDatumV1 = Exact; +export const RegistryV1 = Contracts.Import("RegistryV1"); +export type RegistryV1 = Exact; +export const ReserveAsset = Contracts.Import("ReserveAsset"); +export type ReserveAsset = Exact; +export const SettingsV1 = Contracts.Import("SettingsV1"); +export type SettingsV1 = Exact; +export const SignedPayload_ProtocolRedeemerV1 = Contracts.Import( + "SignedPayload_ProtocolRedeemerV1", +); +export type SignedPayload_ProtocolRedeemerV1 = Exact< + typeof SignedPayload_ProtocolRedeemerV1 +>; +export const SignedRedeemer_ExtraProtocolRedeemerV1 = Contracts.Import( + "SignedRedeemer_ExtraProtocolRedeemerV1", +); +export type SignedRedeemer_ExtraProtocolRedeemerV1 = Exact< + typeof SignedRedeemer_ExtraProtocolRedeemerV1 +>; +export const StakeRequestV1 = Contracts.Import("StakeRequestV1"); +export type StakeRequestV1 = Exact; +export const StakingVaultRedeemerV1 = Contracts.Import( + "StakingVaultRedeemerV1", +); +export type StakingVaultRedeemerV1 = Exact; +export const TreasuryDatumV1 = Contracts.Import("TreasuryDatumV1"); +export type TreasuryDatumV1 = Exact; +export const TreasuryRequestV1 = Contracts.Import("TreasuryRequestV1"); +export type TreasuryRequestV1 = Exact; +export const VaultDatumV1 = Contracts.Import("VaultDatumV1"); +export type VaultDatumV1 = Exact; + +export class V1_0OrderOrderSpend { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + protocolScripthash: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5916b70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d6572563100164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b30010078999119912cc004c00c0062b30013018375401700280720328acc004c0240062b30013018375401700280720328acc004c0100062b3001301837540170028072032807202a405480a8660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009810801c01a00a80f0dd7000a042301e001407060346ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026042007006802a03c375c0028108c07800501c180d1baa004801202e405c60306ea800e44b30010018a5eb82266034602e603600266004004603800280ca44646600200200644b30010018a508acc004cdc79bae301d0010038a51899801001180f000a02e406d223233001001003223300300130020029180d180d800c8c068c06cc06c00646034603660366036603660366036603660366036003301537540132301a301b301b301b301b301b301b001911919800800801912cc00400629422b30013375e0066032603a00314a3133002002301e001405c80da6e012001488888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260226605200297ae0899801801981580120483029001409d300a00a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c068006264b300100180344c966002003007803c4c96600260600071330120012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980a800c4c9660020030068992cc00400600f0078992cc004c0c000e26602400244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b30013370e9003000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0cc00e26602a00244b300100280544c96600200319800806c00626004606c006806a01d00e8074039037181a0012064805a060375800300a8052066303000140b86eb4004c0bc00a00e8180c0b400502b18149baa0038acc004cdc3a401000313259800800c01a264b3001001803c01e00f132598009818001c0160108168dd6800c01d0301816800a0563029375400715980099b8748028006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013030003802c02102d1bae00140c0605a0028158c0a4dd5001c015026204c40988131026204c4098604e6ea80092223322598009809004c4cc8966002602860506ea8006264b3001301b3029375400315980099b8f375c605a60546ea8004dd7180718151baa300d302a3754601e60546ea800e330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640a9222232330010010052259800800c4016264b3001001899802181a00100344cc014c0d0008cc00c00c005032181a000a0629bab300b302a37540353374a9001198161ba90254bd7024444646464a6605e66e592410d63726564656e7469616c3a3a200037333001001802522100400426602200a00844464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20725980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81990331bac3036002375a60680026466ec0dd4181a0009ba73035001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6072003337149101023a200098008054c0e800600a805100a181e00144ca6002015303900199b8a489023a200098008054c0e8006600e66008008004805100a181e0012074303c00140e466e29220102207d0000340d86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a206c3758007133005375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40e066e2ccdc0000acc004cdc4000a4029148182290372070004401866e0c00520203370c002901019b8e00400240d46eb800d0391b8a4881022c20002232330010010032259800980f000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c08180c010011153302849013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016409d023409c605860526ea8c0b0c0a4dd5180718149baa302c302937540030214098660026eb0c030c09cdd500b811998011bac302a3027375402e02b159800980c004c5660026024604c6ea805233001302a302737546054604e6ea80526eb0c0a8c0acc0acc0acc0acc0acc0acc0acc0acc09cdd500bcc0a8c0acc0acc0acc0acc0acc0acc0acc09cdd500bcdd5980418139baa01748888c8cc00400401488c9660026032003133015006375c6062605c6ea800a2b3001301f001899198008009bac3032302f375400644b30010018a518acc004cc014014c0cc006266004004606800314a08169031456600260340031323300100137586064605e6ea800c896600200314a1159800998028029819800c528c4cc008008c0d000502d20628acc004cdc3a400c003132337126eb4c0c8004c8cc004004dd61819981a001112cc0040062900044cc896600266010010005133700002900144005030181a00099801001181a800a064302e375400515980099b87480200062646644b3001302230303754005159800981118181baa30343035003899b89375a606860626ea8008006266e20dd6981a18189baa00200140b914a08170c0c8004dd6981918179baa003302e37546026605c6ea80162b30013370e9005000c4c8cc8966002604460606ea800a2b30013022303037546068606a0071337120026eb4c0d0c0c4dd500144cdc40009bad3034303137540048172294102e18190009bad3032302f3754006605c6ea8c0c4c0b8dd5002c4cc038010cdd2a4004660606062605c6ea80092f5c0815902b205640ac815902b18161baa001407902445660026024604c6ea805233001302a302737540293300137586018604e6ea805c08e660046eb0c0a8c09cdd500b80aa444b30013015302937540031323259800980e98159baa0018acc0056600330013371e6eb8c040c0b0dd5180798161baa3011302c37540086eb8c0bcc0b0dd5000d28528a0528a518cc004cdc79bae302f302c375400804f4a14a2814902944c966002603060586ea8006264b30013019302d375400313259800980d18171baa0018992cc004cdd7981998181baa001301a33032301a3303230333030375400897ae0330324c103d87a80004bd704660026eacc054c0c0dd5000cc054c0c0dd5180a98181baa0069119b89337020026eb4c0d4c0d8c0d8c0d8c0c8dd50110012444b30010028a508994c004c966002604060686ea800626eb4c0d4c0e0dd5981c181a9baa0018a40008190c0dc0066ebcc0dcc0e00066eac00d22259800800c566002600400d13300500348002294103444c96600266ebcc0dc0053010140008acc004cc018010dd6981c181d9bab3038001898019ba6303c0028a5040d51598009980300224001130030078a5040d481a8c0e80050380ca6002003004911981c0011981c1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0d80066eacc0dc00660760069112cc004cdc8a441000038acc004cdc7a4410000389980298121981e1ba60024bd70000c4cc015300103d87a800000640dd19800803c006446600e0046607c66ec0dd48029ba6004001401c81b8607200481ba2942294229410382294102d181918179baa0018a99816a493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640b065300130010019bad3032302f375400537586026605e6ea807d2225980099b8800248002298103d87a8000899801800801205e1112cc00400a298103d87a80008acc004c0700062603666066606800497ae08cc00400e606a0053010001400c8171032454cc0b124014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640ac6530010019bac3031302e375403d480010011112cc00400a298103d87a80008acc004cdd7981980100344c068cc0c8dd4000a5eb8233001003981a0014cdc0000a4004801902d20628a99815a48131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640a8605e60586ea80162a660549201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640a502540a4605c60566ea8c0b8c0acdd5180818159baa001302d302a3754003022409c80f20484090812088cc0140088cdd7981598141baa001002223259800800c4c966002602860506ea800a264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0c800a2b30013019302d375400313259800800c0a6264b30010018992cc00400605713259800800c4c96600200302d8992cc004006264b3001001817c4c96600200313259800800c0c6264b30010018992cc00400606713259800800c4c9660020030358992cc004006264b300100181bc4c96600200313259800800c0e6264b30010018992cc00400607713259800800c4c96600200303d8992cc00400607d03e899912cc00400608113259800800c56600260960051980080c46600202d1980080a4660020251980080846600201d198008064660020151980080445660026064608c6ea801a264b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4cc896600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f13259800982d001c4cc0f004889660020051598009821982b9baa0128992cc0040060a713259800800c4c9660020030558992cc0040062b300130600028cc00400e264b300130480018992cc0040060b113259800800c56600260c6005132598009825800c4c96600200305b8992cc0040062b300130660028cc00400607505c412d05c418d05c82e41720b88338c19000506218301baa0028acc004c144006264b300100182dc4c96600200305c82e417226644b300100182f44c96600200305f82fc17e26644b3001001830c4c966002003062831418a264b3001306d003820c18d06a1bad00183120da306a00141a06eb4004c1a400a0be8350c19c0050651bad001306600282e20ce3064001418860c06ea800a0b482e905d182f1baa00182ca0c082cc1660b3059419060c200282f8c174dd50014566002609c003159800982e9baa00281ac15d05e415d05a20b4305b37540030564115056417505682b415a0ac8308c17800505c182f00141520a905482a20be305c001416860b06ea804a0a482aa264b30010018acc004c110c160dd5000c4c9660020030548992cc0040060ab055899912cc0040060af13259800800c1620b1058899912cc0040060b513259800800c16e0b705b8992cc004c19800e2b300100782e44c96600200305d82ec1760bb1332259800800c17e264b300100183041820c10608992cc004c1ac00e2602060d602306141a06eb800506b1834000a0cc375c00260ce0108340c19401d06341710631bad00182da0cc306300141846eb4004c18800a0b08318c18000505e1bac001305f00282ac155060182e800a0b6305937540030534159053829c14e0a682f0c16c00905941410571bae001416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c1bae001304d002413860960028248c11cdd5003410504441050234105023410502341050234105023410502341050234105023410502341050484106083041820a0983049001411c6eb0004c12000a07d03e4124608c0028220c11800a07903c81e40f10471822000a084304400281d40ea07503a411460840028200c10800a07103881c40e10431820000a07c304000281b40da06d0364104607c00281e0c0f800a06903481a40d103f181e000a074303c00281940ca06503240f4607400281c0c0e800a06103081840c103b181c000a06c303800281740ba05d02e40e4606c00281a0c0d800a05902c81640b1037181a000a064303400281540aa05502a40d460640028180c0b8dd5000c0a102b40a102f40a20510288142066303000140b86eb8004c0bc0090301816800a0563029375400502340982003022811408a0448168c9660026026604e6ea8006264b30013015302837540031302c30293754003153302749013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601860506ea8c034c0a0dd5181598141baa0018a998132494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946600a00446601e600a6eacc034c0a0dd5180698141baa0010020c054dd50049b8748010dc3a400100a805402a01480c8c054004c054c058004c044dd5001c5900e0c040004c02cdd5008c5268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201" + : "590c000101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758604a604c604c604c604c604c604c604c604c60446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8c8ca6002606e003303700b981b8054c0dc026606e0113037007981b8034c0dc016606e00930370039bac3037002488888888889660026086019133021304201713302100a1330210091330210081330210071330210061330210051330210041330210031598009819181f1baa002899191919194c004dd71823800cdd71823802cdd718238024dd71823801cdd71823801244444b3001304d00689981a005912cc00400a2b3001303e304a375402f132323259800982900144cc0f0c14400c4c966002608400313259800982a000c4c8c966002608a00313259800982b800c4cc104c1580040c22c82a0c148dd500145660026092003132323298009bad30580019bad30580039bad305800248896600260b80090358b20b2182c000982b80098291baa0028b20a0414060a06ea8004c14c0062c8288c13cdd50014566002608c00315980098279baa00281645905045904d209a304d375400316413c60a000260a000260966ea805e2c824a264b3001303f304b37540031323232332259800982a801c4c8c8cc896600260b20071300b305900c8b20ac375c60ac0026eb8c158008c158004dd6182a002c590521bad3052001375a60a400460a400260a200260986ea80062c8250c13800904c45904a0c11c004c118004c114004c110004c0fcdd500145903d4590400c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815000c590281bae3028001302900130243754005164088200264b300130163022375400313259800980c18119baa0018981398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601", + Type.Tuple([PolicyId, ScriptHash]), + [proxyPolicyId, protocolScripthash], + ), + "PlutusV3", + ); + } +} +export class V1_0OrderOrderElse { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + protocolScripthash: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5916b70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d6572563100164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b30010078999119912cc004c00c0062b30013018375401700280720328acc004c0240062b30013018375401700280720328acc004c0100062b3001301837540170028072032807202a405480a8660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009810801c01a00a80f0dd7000a042301e001407060346ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026042007006802a03c375c0028108c07800501c180d1baa004801202e405c60306ea800e44b30010018a5eb82266034602e603600266004004603800280ca44646600200200644b30010018a508acc004cdc79bae301d0010038a51899801001180f000a02e406d223233001001003223300300130020029180d180d800c8c068c06cc06c00646034603660366036603660366036603660366036003301537540132301a301b301b301b301b301b301b001911919800800801912cc00400629422b30013375e0066032603a00314a3133002002301e001405c80da6e012001488888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260226605200297ae0899801801981580120483029001409d300a00a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c9660026060007005804205a375c0028180c0b400502b18149baa0038acc004c068006264b300100180344c966002003007803c4c96600260600071330120012259800801401e264b30010018cc00402a003130023033003402900b805c02e01681a0c0c400902f402102d1bac001803c01d0301816800a05630293754007159800980a800c4c9660020030068992cc00400600f0078992cc004c0c000e26602400244b3001002803c4c966002003198008054006260046066006805201700b805c02d0341818801205e804205a3758003007803a060302d00140ac60526ea800e2b30013370e9003000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0cc00e26602a00244b300100280544c96600200319800806c00626004606c006806a01d00e8074039037181a0012064805a060375800300a8052066303000140b86eb4004c0bc00a00e8180c0b400502b18149baa0038acc004cdc3a401000313259800800c01a264b3001001803c01e00f132598009818001c0160108168dd6800c01d0301816800a0563029375400715980099b8748028006264b300100180344c966002003007803c01e264b30013030003802c02102d1bad001803a060302d00140ac60526ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013030003802c02102d1bae00140c0605a0028158c0a4dd5001c015026204c40988131026204c4098604e6ea80092223322598009809004c4cc8966002602860506ea8006264b3001301b3029375400315980099b8f375c605a60546ea8004dd7180718151baa300d302a3754601e60546ea800e330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a00640a9222232330010010052259800800c4016264b3001001899802181a00100344cc014c0d0008cc00c00c005032181a000a0629bab300b302a37540353374a9001198161ba90254bd7024444646464a6605e66e592410d63726564656e7469616c3a3a200037333001001802522100400426602200a00844464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20725980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81990331bac3036002375a60680026466ec0dd4181a0009ba73035001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6072003337149101023a200098008054c0e800600a805100a181e00144ca6002015303900199b8a489023a200098008054c0e8006600e66008008004805100a181e0012074303c00140e466e29220102207d0000340d86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a206c3758007133005375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40e066e2ccdc0000acc004cdc4000a4029148182290372070004401866e0c00520203370c002901019b8e00400240d46eb800d0391b8a4881022c20002232330010010032259800980f000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c08180c010011153302849013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f726465720016409d023409c605860526ea8c0b0c0a4dd5180718149baa302c302937540030214098660026eb0c030c09cdd500b811998011bac302a3027375402e02b159800980c004c5660026024604c6ea805233001302a302737546054604e6ea80526eb0c0a8c0acc0acc0acc0acc0acc0acc0acc0acc09cdd500bcc0a8c0acc0acc0acc0acc0acc0acc0acc09cdd500bcdd5980418139baa01748888c8cc00400401488c9660026032003133015006375c6062605c6ea800a2b3001301f001899198008009bac3032302f375400644b30010018a518acc004cc014014c0cc006266004004606800314a08169031456600260340031323300100137586064605e6ea800c896600200314a1159800998028029819800c528c4cc008008c0d000502d20628acc004cdc3a400c003132337126eb4c0c8004c8cc004004dd61819981a001112cc0040062900044cc896600266010010005133700002900144005030181a00099801001181a800a064302e375400515980099b87480200062646644b3001302230303754005159800981118181baa30343035003899b89375a606860626ea8008006266e20dd6981a18189baa00200140b914a08170c0c8004dd6981918179baa003302e37546026605c6ea80162b30013370e9005000c4c8cc8966002604460606ea800a2b30013022303037546068606a0071337120026eb4c0d0c0c4dd500144cdc40009bad3034303137540048172294102e18190009bad3032302f3754006605c6ea8c0c4c0b8dd5002c4cc038010cdd2a4004660606062605c6ea80092f5c0815902b205640ac815902b18161baa001407902445660026024604c6ea805233001302a302737540293300137586018604e6ea805c08e660046eb0c0a8c09cdd500b80aa444b30013015302937540031323259800980e98159baa0018acc0056600330013371e6eb8c040c0b0dd5180798161baa3011302c37540086eb8c0bcc0b0dd5000d28528a0528a518cc004cdc79bae302f302c375400804f4a14a2814902944c966002603060586ea8006264b30013019302d375400313259800980d18171baa0018992cc004cdd7981998181baa001301a33032301a3303230333030375400897ae0330324c103d87a80004bd704660026eacc054c0c0dd5000cc054c0c0dd5180a98181baa0069119b89337020026eb4c0d4c0d8c0d8c0d8c0c8dd50110012444b30010028a508994c004c966002604060686ea800626eb4c0d4c0e0dd5981c181a9baa0018a40008190c0dc0066ebcc0dcc0e00066eac00d22259800800c566002600400d13300500348002294103444c96600266ebcc0dc0053010140008acc004cc018010dd6981c181d9bab3038001898019ba6303c0028a5040d51598009980300224001130030078a5040d481a8c0e80050380ca6002003004911981c0011981c1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0d80066eacc0dc00660760069112cc004cdc8a441000038acc004cdc7a4410000389980298121981e1ba60024bd70000c4cc015300103d87a800000640dd19800803c006446600e0046607c66ec0dd48029ba6004001401c81b8607200481ba2942294229410382294102d181918179baa0018a99816a493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640b065300130010019bad3032302f375400537586026605e6ea807d2225980099b8800248002298103d87a8000899801800801205e1112cc00400a298103d87a80008acc004c0700062603666066606800497ae08cc00400e606a0053010001400c8171032454cc0b124014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640ac6530010019bac3031302e375403d480010011112cc00400a298103d87a80008acc004cdd7981980100344c068cc0c8dd4000a5eb8233001003981a0014cdc0000a4004801902d20628a99815a48131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640a8605e60586ea80162a660549201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640a502540a4605c60566ea8c0b8c0acdd5180818159baa001302d302a3754003022409c80f20484090812088cc0140088cdd7981598141baa001002223259800800c4c966002602860506ea800a264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0c800a2b30013019302d375400313259800800c0a6264b30010018992cc00400605713259800800c4c96600200302d8992cc004006264b3001001817c4c96600200313259800800c0c6264b30010018992cc00400606713259800800c4c9660020030358992cc004006264b300100181bc4c96600200313259800800c0e6264b30010018992cc00400607713259800800c4c96600200303d8992cc00400607d03e899912cc00400608113259800800c56600260960051980080c46600202d1980080a4660020251980080846600201d198008064660020151980080445660026064608c6ea801a264b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4cc896600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f13259800982d001c4cc0f004889660020051598009821982b9baa0128992cc0040060a713259800800c4c9660020030558992cc0040062b300130600028cc00400e264b300130480018992cc0040060b113259800800c56600260c6005132598009825800c4c96600200305b8992cc0040062b300130660028cc00400607505c412d05c418d05c82e41720b88338c19000506218301baa0028acc004c144006264b300100182dc4c96600200305c82e417226644b300100182f44c96600200305f82fc17e26644b3001001830c4c966002003062831418a264b3001306d003820c18d06a1bad00183120da306a00141a06eb4004c1a400a0be8350c19c0050651bad001306600282e20ce3064001418860c06ea800a0b482e905d182f1baa00182ca0c082cc1660b3059419060c200282f8c174dd50014566002609c003159800982e9baa00281ac15d05e415d05a20b4305b37540030564115056417505682b415a0ac8308c17800505c182f00141520a905482a20be305c001416860b06ea804a0a482aa264b30010018acc004c110c160dd5000c4c9660020030548992cc0040060ab055899912cc0040060af13259800800c1620b1058899912cc0040060b513259800800c16e0b705b8992cc004c19800e2b300100782e44c96600200305d82ec1760bb1332259800800c17e264b300100183041820c10608992cc004c1ac00e2602060d602306141a06eb800506b1834000a0cc375c00260ce0108340c19401d06341710631bad00182da0cc306300141846eb4004c18800a0b08318c18000505e1bac001305f00282ac155060182e800a0b6305937540030534159053829c14e0a682f0c16c00905941410571bae001416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c1bae001304d002413860960028248c11cdd5003410504441050234105023410502341050234105023410502341050234105023410502341050484106083041820a0983049001411c6eb0004c12000a07d03e4124608c0028220c11800a07903c81e40f10471822000a084304400281d40ea07503a411460840028200c10800a07103881c40e10431820000a07c304000281b40da06d0364104607c00281e0c0f800a06903481a40d103f181e000a074303c00281940ca06503240f4607400281c0c0e800a06103081840c103b181c000a06c303800281740ba05d02e40e4606c00281a0c0d800a05902c81640b1037181a000a064303400281540aa05502a40d460640028180c0b8dd5000c0a102b40a102f40a20510288142066303000140b86eb8004c0bc0090301816800a0563029375400502340982003022811408a0448168c9660026026604e6ea8006264b30013015302837540031302c30293754003153302749013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164098601860506ea8c034c0a0dd5181598141baa0018a998132494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640946600a00446601e600a6eacc034c0a0dd5180698141baa0010020c054dd50049b8748010dc3a400100a805402a01480c8c054004c054c058004c044dd5001c5900e0c040004c02cdd5008c5268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201" + : "590c000101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758604a604c604c604c604c604c604c604c604c60446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8c8ca6002606e003303700b981b8054c0dc026606e0113037007981b8034c0dc016606e00930370039bac3037002488888888889660026086019133021304201713302100a1330210091330210081330210071330210061330210051330210041330210031598009819181f1baa002899191919194c004dd71823800cdd71823802cdd718238024dd71823801cdd71823801244444b3001304d00689981a005912cc00400a2b3001303e304a375402f132323259800982900144cc0f0c14400c4c966002608400313259800982a000c4c8c966002608a00313259800982b800c4cc104c1580040c22c82a0c148dd500145660026092003132323298009bad30580019bad30580039bad305800248896600260b80090358b20b2182c000982b80098291baa0028b20a0414060a06ea8004c14c0062c8288c13cdd50014566002608c00315980098279baa00281645905045904d209a304d375400316413c60a000260a000260966ea805e2c824a264b3001303f304b37540031323232332259800982a801c4c8c8cc896600260b20071300b305900c8b20ac375c60ac0026eb8c158008c158004dd6182a002c590521bad3052001375a60a400460a400260a200260986ea80062c8250c13800904c45904a0c11c004c118004c114004c110004c0fcdd500145903d4590400c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815000c590281bae3028001302900130243754005164088200264b300130163022375400313259800980c18119baa0018981398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601", + Type.Tuple([PolicyId, ScriptHash]), + [proxyPolicyId, protocolScripthash], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolManagementProtocolManagementWithdraw { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401" + : "59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolManagementProtocolManagementPublish { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401" + : "59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolManagementProtocolManagementElse { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594382010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918101810800c8c080c084c08400646040604260426042604260426042604260426042003374a900124444444444465300122259800980b18151baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130330028cc00400e264b3001301b0018992cc00400600f13259800800c566002606c00513259800980f000c4c96600200300a8992cc0040062b300130390028cc00400601900b403900b40d900b805c02e01681d0c0dc00503518199baa0028acc004c050006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013040003809c04903d1bad001808a080303d00140ec6eb4004c0f000a01c81e8c0e80050381bad0013039002805a074303700140d460666ea800a012818103018189baa0018042066804402201100840dc60680028190c0c0dd50014566002602200315980098181baa002803c019031401902d205a302e3754003005402100540c1005802c01600a81a0c0c400502f1818801400e007003801a064302f00140b460566ea800e0028142444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981b001c0160108198dd7000a06c303300140c4605e6ea800e2b300130100018992cc00400600d13259800800c01e00f13259800981b001c4cc05000489660020050078992cc0040063300100a800c4c008c0e400d00a402e01700b805a074303700240d500840cc6eb000600f00740d860660028188c0bcdd5001c566002603200313259800800c01a264b3001001803c01e264b3001303600389980a000912cc00400a00f13259800800c6600201500189801181c801a014805c02e01700b40e8606e00481aa0108198dd6000c01e00e81b0c0cc00503118179baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c96600260720071330170012259800801402a264b30010018cc00403600313002303c003403500e807403a01c81e8c0e8009038402d0361bac0018054029039181b000a068375a002606a00500740d860660028188c0bcdd5001c566002601e00313259800800c01a264b3001001803c01e00f13259800981b001c0160108198dd6800c01d0361819800a062302f37540071598009807000c4c9660020030068992cc00400600f007803c4c966002606c0070058042066375a00300740d860660028188c0bcdd5001c566002601a00313259800800c01a264b3001001803c01e00f0078992cc004c0d800e00b00840cc6eb80050361819800a062302f375400700540b0816102c205840b0816102c18169baa002911919800800801912cc0040062980103d87a80008992cc004c010006260206605e00297ae089980180198188012054302f00140b491119192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130160018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005403100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002603000313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3016303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130120018acc004c0c4dd5002400e0048192004817102e18179baa0034888a6002444b3001301f3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002607e005198008034660020030098042018804201c804207880440220110084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c11400e3300100c8cc00401201f00e404900e405100e41086eb400601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0629112cc004c07cc0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b300130450038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304a00380a404d0471bae0014128608e0028228dd70009823001208e3044001410900e404900e405100e41086eb000601b00d411460840028200c10800a01700b805c02d0431820000a07c375a002607e0050084100607a00281d8dd6800981e001401503d181d000a070303a002801c00e00700340ec607000281b0c0d0dd5001c005031488966002603e60666ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009822801c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009825001c0520268238dd7000a094304700141146eb8004c1180090471822000a084807202480720288072084375800300d806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e00281892222598009810181a1baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c96600260800071598009813981d9baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c14000a26605c01c44b3001002899818006912cc00400a330010078cc004016264b3001303c3050375403313259800800c102264b30010018992cc00400608513259800800c56600260b200513322598009821000c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096814a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130380018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d029412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002608200313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a054825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004c10c006264b300100182344c966002003047823c4c96600260bc00713303c0012259800801401e264b30010018cc0040062600460c200704b40a904b825c12e0968310c17c00905d412105b1bac001823c11d05e182d800a0b23057375400b159800981b800c4c9660020030468992cc00400608f0478992cc004c17800e26607800244b3001002803c4c96600200319800800c4c008c18400e096815a09704b825c12d062182f80120ba82420b63758003047823a0bc305b001416460ae6ea80162b300130360018992cc00400608d13259800800c11e08f13259800982f001c4cc0f000489660020050078992cc00400633001001898011830801c12d02b412e09704b825a0c4305f0024175048416c6eb000608f047417860b600282c8c15cdd5002c566002606a00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa0058acc004cdc3a401c00313259800800c11a264b3001001823c11e264b3001305e00389981e000912cc00400a00f13259800800c66002003130023061003825a058825c12e09704b418860be00482ea09082d8dd6000c11e08e82f0c16c005059182b9baa005822a0a8415082a105420a8415082a10540992cc004c104006264b3001001822c4c966002003159800982e001466002003008823205282320b2823411a08d046417460b400282c0c158dd50014566002606e00313259800800c116264b30010018acc004c17000a2b300130433057375400313259800800c11e264b30010018992cc00400609313259800800c56600260c000519800801c6600200300c825205c825205c82520ba825412a09504a418460bc00282e0c17800a091048824412105f182e000a0b43058375400304641550464165046823411a08c82e8c168005058182b1baa00282220a6414c60a86ea8004c150dd5001c10d056410e087043821a0b43057001415460ae005041820c10608282c0c15400505318289baa01981fa09c133032015225980080146600260aa60a46ea809a60aa60a46ea8c0bcc148dd501348896600200514c0103d87a80008acc004c10000626070660ae60b000497ae08cc00400e60b2005337000029000a006414882b24606860a46ea8c158c8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130393057375460b60074a14a282aa2660b530014a14c103d87a8000a60103d87980004154660b46e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17400400e294626600400460bc00282b905b44cc16a600294298103d87a8000a60103d87980004154660b46e9c0092f5c113305a9800a51a60103d87a8000a60103d87980004154660b46e9ccc168dd400080125eb8105520aa375860b260b40026eb4c164008cc008008c164005056488c8cc00400400c896600200314bd7044cc896600266ebcc16cc160dd5182d982c1baa3035305837540046064660b46ea40152f5c113305a00233004004001899802002000a0aa3059001305a001415d2259800800c52000899b8048008cc008008c160005055488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd5982c000982d000a0b014bd6f7b630488966002608060a86ea800e264b300100180144c966002003003801c00e264b3001305c003802c0110591bad001801a0b83059001415c60aa6ea800e0028292460ac60ae60ae60ae00337029000488c8cc00400400c896600200314bd7044cc160dd39801982c80099801001182d000a0ae9182b182b982b982b982b982b982b982b982b982b982b800c888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7182e000cdd6982e800ccc00c00cc184009009182f800a0ba375660b40066eb8c15c004cc00c00cc170008c168005058488c8cc00400400c896600200314a115980099baf3059001374e00714a3133002002305a001414c82ba444b300130403054375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260c200519800803c6600200b132598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009824000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1ac00e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1c000e03301841b46eb80050701836800a0d6375c00260d80048368c1a8005068404d0681bac001809404906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e37540091598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1a000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b400e02d01541a86eb800506d1835000a0d0375c00260d20048350c19c00506540410651bac001807c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009834001c0460208328dd6800c03d0681832800a0c6375a00260c800500c419460c40028300c178dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009835801c0520268340dd6800c04906b1834000a0cc375a00260ce00500f41a060ca0028318dd6800983200140310651831000a0c0305e3754009159800981e000c4c96600200300b8992cc00400601900c80644c96600260ca00700e806a0c4375a00300c419460c40028300c178dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c19400e01d00d41886eb40060188328c188005060182f1baa00480520b6416c82d905b20b6416c82d905b182e1baa003804a060804a068804a0bc305f001417460be005007803c01e00e8300c17400505b182e801401600b005802a0bc305b001416460b6005003801c00e00682e0c164005057182a9baa003800a0a49182b182b982b982b982b800c888ca6002003004801a002222598008014400633001003982e0014cc010c16c00800500320b29b89480026e2120004888888888888888888a600260c86ea804a602202322259800980980144ca6002003004801d200040044444b30010038acc00400a200306641b51598008014196330010049838001cc1c000a6644b30013007002899b80003375a609660dc6ea800a2a660d89211a6578706563742076616c69646174696f6e287265717565737429001641ac60de0066eb4c1bc00900420da41b5153306649012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164195300e00e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c835a26600a00a60e40088358dd718358009bad306c001306e00141b06602200800629000244444646644b300130590088cc0048896600260b660de6ea800e264b300100180144c966002003003801c00e264b30013077003802c0110741bad001801a0ee307400141c860e06ea800e002836a444466e24004ca60020030058025200040044444b30010038acc00400a200306f41d915980080141ba33001004983c801cc1e400a646644b300130623077375400513259800800c6600200315980099baf301f3079375400460f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd500144c96600260c860f26ea800626464b30013370e6eb4c1fc008dd6982c983e1baa0058acc004cdc39bad307f001375a60b060f86ea80162b30013375e60fe610002002603660f86ea8016266e0002260026eacc164c1f0dd5182c983e1baa0079bae307f00d9bae307f30800100d404d153307a49012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f6173736574001641e5153307a4911d657870656374207969656c64203d3d20726571756573742e7969656c64001641e5153307a49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e74001641e460fe00260f46ea80062a660f0921184578706563746564204f4465706f73697420616374696f6e001641dc60aa60f26ea80062a660ee92012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e001641d915330774912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d90714065071838c1c60e283f0c1ecc1e0dd500141bd0751829183b1baa30533076375400260f200660f0006802107620ec91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307b3078375460f60046eb4c1ecc1e0dd5183d80180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f0029983f9ba90043307f375200697ae041e914a083d101b44cdc4803cc004dd6180e183c9baa00ca400122323259800cc004c1a000694294507a4566002603200313370000666e0ccdc10009bad305a307d37540086eb4c164c1f4dd5002454cc1ed2401176578706563742061637475616c5f64656c7461203e2030001641e9100341e930010059bae307f0019bae307f308001001404c6eb0c1f8c1ecdd5001202e835a0ec3301c3758603660f06ea802c8dd6183e183c9baa001835a0ea375660f460f600260f400330010079bae30783075375460a060ea6ea802200d0054025153307349123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641c8b3001305f300c0018a4001159800800c192264b300130790028992cc004cdc79bae307500248810455534472008800c19d0731bad3075001832a0ec307700141d48388cc06cdd5980918399baa005375c60a060e66ea8c138c1ccdd50034cc008dd6183818369baa01a3758609460da6ea806e609460da6ea810922222332259800acc004c04000a294633001305f001a50a5141c4838a264b30013060307437540031323322323322598009833183d1baa0018992cc004cdc399b81375a60fe00200c00915980099b87375a60fe6100020026eb4c1fcc2000401e2b300130190098acc00660026604c6eb0c1fcc1f0dd50311bae3058307c375460ae60f86ea802e0193307e3059307c375460ae60f86ea802ccc1f93001054455534472004bd7052000403915980099b890033233001001375860b260fa6ea818c896600200314800226644b30013375e6106026100026ea8008c20c04c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c21004c20004dd5007c4cdc0000cc004dd5982e9840009baa0029bae305d308001375460b66100026ea803e9101045553447200405d100141f46102020026600400461040200283fa3300100b8314dd6982c183e1baa02a9bad3022307c3754055009805201a8a9983d24812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641e5153307a491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c203029001641e5159800cc004cc098dd6183f983e1baa062375c60b060f86ea8c15cc1f0dd5005c032660fc60b260f86ea8c15cc1f0dd50059983f2601054455534472004bd704c08400d00e4660020170629bad3058307c3754055375a604460f86ea80aa01300a4035153307a491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641e483ca2a660f49213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641e5153307a4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641e465300133012001375a60fe60f86ea800a6eb8c164c1f0dd5182b983e1baa00b9bae3022307c375460ae60f86ea802d222598009835183f1baa0038992cc004cdd79841809840009baa308301308001375400260b466104026ea40092f5c11598009830cc004dd5982e9840009baa00180152210d7374616b696e675f7661756c7400405d1325980098359840009baa0018992cc004006330010018acc004cdd798141841009baa0034c103d87a8000899842009ba898009bab305f3082013754007005a44104555344720040646610802610a026104026ea8004cc2100400d2f5c107841fd07d405507d83ec1f60fa843808c21004c20404dd5000c54cc1fd24012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641f860b86100026ea80062a660fc92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f5153307e49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f461040260fe6ea800e2a660fa92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641f0375860ae60f66ea81862a660f292013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641e066e04018004c1f0c1f4c1f4c1f4c1f4c1f4c1e4dd5013acc004c050006266e10cdc1002801000c5200041d46eb4c1e4004dd6983c983b1baa3079980082e4dd7183c983b1baa30513076375400b375a60a460ec6ea80926eb4c070c1d8dd50122014329800998060009bad307930763754005375c60a660ec6ea8c144c1d8dd5002cdd7180e183b1baa30513076375400a9112cc004c190c1e0dd5001c4c96600266ebcc1f4c1e8dd5183e983d1baa3057307a375400260a8660f86ea40092f5c1159800982dcc004dd5982b983d1baa3057307a3754003002a4410d7374616b696e675f7661756c74004045132598009832983d1baa0018992cc0040063300100189983f1ba898009bab3059307c375460b260f86ea800e00b489045553447200404c660fc60fe60f86ea8004cc1f800d2f5c1077403d07783bc1de0ee840808c1f8c1ecdd5000c1c9078182b183d1baa3057307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea800e2a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d8375860f060ea6ea816e2a660e692013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641c8602660e86ea808a2a660e492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641c530010029bac30753072375404123010375a60a060e66ea800500b4c00400a9000488cdc00009bad3050307437540048081159800982b80446600244b30010018a40011337009001198010011839800a0e0911194c0040060090034004444b30010028acc00400629462941074456600200314a115980099802183b0011bad30760018cc00400e60ee0053077001400d14a0838107420e89119b83337040046eb4c12cc1bcdd50009bad304c306f375400333002375860e060da6ea8068dd6182518369baa01b982518369baa042488888c9660026645300132330010010032259800800c528456600266ebcc1e8c1dcdd5183d183b9baa30543077375460f400260a2660f26ea400d2f5c114a3133002002307b00141d083c29429450721bac3076307337540b26eb8c064c1ccdd5182718399baa0028acc004cc896600266e1cc00c008c00c0162b300130200018cc00400a0032232598009831983b9baa001899192cc004c198c1e4dd5000c4c96600266e1cdd6983f0009bad3058307b375400713375e60fc60fe002603460f66ea800e2941078183d1baa0018a5041dc60aa60f26ea8c96600260c860f26ea8006264b30010018cc0040062b30013375e604260f66ea800cc1f8c1ecdd5003456600266ebcc160c1ecdd5000983f183d9baa0038800c54cc1e52413865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641e1153307949138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641e1073406d073839c1ce0e6840008c1f4c1e8dd5000c1c5077182a983c9baa30563079375400860f660f06ea80062a660ec92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641d46601a00e002803a2a660e69201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f726571756573747329001641c9153307349139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e67746828726571756573747329001641c86603a6eb0c1d8c1ccdd502c9bae304f30733754609c60e66ea8008dd6182818399baa0218acc00660026eb0c13cc1ccdd502ccdd6183b18399baa0219bac3016307337540049114c00401a0052232598009832183c1baa0018cc004c1f0c1e4dd5000cdd6180c183c9baa0039919828002919baf307e307b37540026e9c008dd6180c183c9baa00348896600260ce60f66ea80062b30013375e60fe60f86ea800cc1fcc1f0dd5183f983e1baa0068acc004cdd7982c183e1baa0033059307c375460fe60f86ea801a266e1e60026eacc164c1f0dd5001cdd7183f8014dd7183f98400080120263300d325980099b880014800226044003100141e86eb4c164c1f0dd5003183f983e1baa0018a5041e514a083ca2a660f492015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641e48a9983ba493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641d86601c00a00280411305e9800cc00400e6eb0c1d8c1ccdd5010c96600260206eb4c144c1d0dd5000c4c17cdd69828183a1baa0018a5041c48062660366eacc048c1ccdd502c9bae305030733754609c60e66ea800b30010599bae307630733754609c60e66ea800a6eb4c13cc1ccdd5010cdd6980c98399baa021401d330173758602c60e66ea80088dd6183b983a1baa00148888ca600260f6003375660f660f8003307b003acc004c18cc0400122900045660020090688992cc004c1f4016264b30013371e6eb8c1e400922010455534472008800c1ad0771bad3079001834a0f4307b00441e483a9222259800cc00400e9464444b30010018acc004cdc78022441008a5189981080519841009ba90043308201375200697ae041f514a083e901e456600266e1ccdc09bad307f307c37540086eb4c1fcc1f0dd5001000c4c96600266e1e60026eb0c080c1f4dd500652000911919912cc006600260da0034a14a283fa264b3001337126602800200c00713370000a0031533081014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642000466e0800401a2b3001301f0028802454cc200052401186578706563742061637475616c5f64656c7461203e3d2030001641fc83fa600200f375c610602003375c61060261080200280b8ca60020234800244b30013375e60446106026ea8008dd3801c4cdc00009bad30603083013754005100142000480f8dd61841809840009baa003375861040260fe6ea800901b19b8100200a8801454cc1ed2413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641e8b300130180098a400314800907941bd07941b90790c1ec00915330714901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641c11533071491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641c1153307149142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641c0600a00a8a5041a8835088c8cc004004008896600200314bd7044cc1c4c96600260b660de6ea8006260e660e06ea80062a660dc92013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641b46600a0086eb4c1c8004cc008008c1cc0050701111192cc004c16cc1bcdd5000c4c96600266ebcc1d0c1c4dd5183a18389baa304e307137540026096660e66ea40152f5c115980098294c004dd5982718389baa304e30713754003005a44108747265617375727900402113259800982e18389baa0018992cc004006330010018992cc004c17cc1ccdd5000c4c96600266ebcc1e0c1d4dd5183c183a9baa001304f33077375201297ae08acc004c15a60026eacc148c1d4dd5000c0269101087472656173757279004031132598009830183a9baa0018992cc004006330010018acc004cdd7980e983b9baa0034c103d87a800089983c8029983c8009983c9ba6329800800cdd5982a983c1baa00499198008009bab30563079375460ac60f26ea8024896600200314bd6f7b63044c8cc1f4cdd8183d0009ba63233001001375660f800444b30010018a5eb7bdb182264661000266ec0c1f4004dd418119bad307e0013300300330820100230800100141f86600600660fe00460fa00283d90011112cc00400a2003132332298008034c20404016646600200200a44b30010018998408099bb037520086e9800d2f5bded8c113298009bae307f0019bab3080010019842008012444b30013372001000713308501337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528210a02880144cc21804cdd81ba9009374c002004840808ca6002003008801a002222598008014400626466453001006984680802cc8cc004004014896600200313308d01337606ea4010dd4001a5eb7bdb1822653001375c611602003375a61180200330900100248896600266e4002000e2661220266ec0dd48041ba80070058acc004cdc7804001c4c96600260f600310028998490099bb037520126ea000400908d0119b800070028998488099bb037520066ea0008cc01801800508c01211802184700800a1180240186eb8c21804004dd6984380800984480801210e028998428099bb037520066e98008cc01801800508001210002184100800a1000240186eb8c1e8004dd5983d800983e80120f64bd7041b507441b101e41b20d906c83620f8307930763754003153307449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641cc60a260ea6ea80062a660e6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c9153307349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c860ee60e86ea80062a660e492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641c4660126eb0c13cc1ccdd5004002c19d01a419e0cf067833a0f0307530723754003153307049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641bc609a60e26ea8c138c1c4dd5000c54cc1bd2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641b9153306f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641b860e660e06ea80062a660dc92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641b46600a6eb0c1c8c1bcdd5002001112cc004cdc4000a400114c103d87a8000899803001000a0d22264b3001001820c106264b300100182144c966002003043821c10e0871332259800800c116264b30010018acc004c17000a264b300130443058375400513259800800c122264b30010018992cc00400609513259800800c4c96600200304c8992cc00400609b04d826c136264b300130640038acc004c12cc17cdd500344c96600200304f8992cc0040060a1050828414226644b300100182944c966002003053829c14e0a7132598009835001c4c96600260a400313259800800c15a264b300100182bc15e0af0578992cc004c1b800e02505841ac6eb800506e1835800a0d2306737540171598009824000c56600260ce6ea802e01f05541a105541908320c194dd500541510671bae00141a860ce0028328dd7000983300120ce3064001418860c06ea801a09c82ea09c8308dd7000a0c83061001417c60c200504b825c12e0968310c17c00505d182f8014126093049824a0c0305d001416c60b26ea800a08e82b04c01cc17002208c82ca08d046823411905d182d000a0b0375c00260b200482d0c15c0050551bac001820c105058182a80120a681f204081f20408992cc00400607f03f81fc4c8c00cc158010dd6800c0fd056182980120a28992cc00400607b03d81ec4c8c00cc150010dd6800c0f50541828801209e81d209a81d40ea07503a4144609c0028260c13800a07103881c40e104f1826000a094375a0026096005035413060920028238dd6800982400140c90491823000a0883758002608a00502f817a08c304300141046eb0004c10800a05902c410c608000281f0c0f0dd500340a903940a903d1bac001814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3035375401302340c8406e03701b80da06433223259800980d18171baa001898179919bb030330013033303400137586064605e6ea80062a6605a92018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc02ccc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600e60586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60966ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c12609313259800982f801c4cc0f4048896600200519800809440c209881aa264b30010018acc004c124c174dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1ac00e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1c000e2602060e002305b41b46eb80050701836800a0d6375c00260d80108368c1a801d06841590681bad00182aa0d6306800141986eb4004c19c00a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375400304d416d04d826c13609a8318c18000905e412905c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340ed04940ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed04d40ee07703b81da0a2304e00141306eb0004c13400a071038413860960028248c12c00a06d03681b40d904c1824800a08e304900281a40d20690344128608e0028228c11c00a06503281940c90481822800a086304500281840c2061030411860860028208c10c00a05d02e81740b90441820800a07e304100281640b205902c4108607e00281e8c0fc00a05502a81540a9040181e800a076303d00281440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c02cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac660066eb0c028c0b4dd50099191980080098019bab300c302f37546018605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e0888c966002602c00313259800800c00e264b300100180240120090048992cc004c0c800e00d00540bc6eb80050321817800a05a302b37540091598009806000c4c9660020030038992cc0040060090048024012264b30013032003803401502f1bae00140c8605e0028168c0acdd500240090282050302937540068acc004c02000e26464b30013009301d37546042604400514a314a080d8dd69810000980e1baa0048b20324064301b301c001301b00445268a99808a491856616c696461746f722072657475726e65642066616c7365001365640401" + : "59230b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c918089809000c8c044c048c04800646022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c010006260206604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300d0018992cc004c08800626601e6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc03cdd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998089bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300c001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260160031323259800981180140122c8100dd69810800980e9baa0038acc004c02800626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009806000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009808000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689807180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026018003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301933029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a2660526eb0c0ec02c896600200513302b006225980080144cc07c0144cc07c0244c966002606e60786ea804a2646464b3001304400289919912cc004c0f400a264b3001304800189981a9bac3047001225980080140122660406092004260026094004823a2c8228c10cdd5001c5660026066005132598009824000c4cc0d4dd61823800912cc00400a009133020304900213001304a002411d16411460866ea800e2b3001303c0028992cc004c12000626606a6eb0c11c00489660020050048998109824801098009825001208e8b208a30433754007159800981f00144c96600260900031330353758608e00244b300100280244cc084c1240084c004c12800904745904518219baa0038acc004c0c800a264b3001304800189981a9bac3047001225980080140122660446092004260026094004823a2c8228c10cdd5001c5660026062005132598009824000c4cc0d4dd61823800912cc00400a009133022304900213001304a002411d16411460866ea800e2b300130300028992cc004c12000626606a6eb0c11c00489660020050048998119824801098009825001208e8b208a3043375400715980099b874803800a264b3001304800189981a9bac3047001225980080140122660466092004260026094004823a2c8228c10cdd5001c59041208241048209041208241048208c100dd50008992cc004c0f0006264b300130470018998159823000803c5904418211baa0038acc004c0c8006264b300130470018992cc004c0f8c10cdd5000c4c8c8c966002609600513302b304a00313302b00100b8b20903049001304900130443754003164108608c00316411060846ea800e2c820104018201baa00230430038b208230420013042001303d37540251640ec26605a02444b30010028cc004c104c0f8dd500e4c104c0f8dd51815181f1baa01c9112cc00400a2980103d87a80008acc004c0ec0062606666086608800497ae08cc00400e608a005337000029000a00640fc82124605e607c6ea8c108c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001303430433754608e0074a14a2821226608d30014a14c103d87a8000a60103d879800041086608c6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12400400e29462660040046094002822104744cc11a600294298103d87a8000a60103d879800041086608c6e9c0092f5c11330469800a51a60103d87a8000a60103d879800041086608c6e9ccc118dd400080125eb8104220843758608a608c0026eb4c114008cc008008c114005042488c8cc00400400c896600200314bd7044cc896600266ebcc11cc110dd5182398221baa303030443754004605a6608c6ea40152f5c113304600233004004001899802002000a08430450013046001410d2259800800c52000899b8048008cc008008c110005041488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064111133005005304a00441106eb8c10c004dd598220009823000a08814bd6f7b630489660026074607e6ea800a26464b30013046002801c590431bad3044001304037540051640f9230423043304330430019b814800244646600200200644b30010018a5eb822660886e9cc00cc114004cc008008c11800504348c108c10cc10cc10cc10cc10cc10cc10cc10cc10cc10c006444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1200066eb4c12400666006006609a0048048c12c0050491bab3046003375c6086002660060066090004608c002822244646600200200644b30010018a508acc004cdd798228009ba70038a518998010011823000a080410d2259800981d181f9baa0028991919194c004c11c006608e00730470024889660026096009133029304a007133026002132598009821000c4c8ca60026eb4c134006609c003375a609a0049112cc004c14400a264646644b300130550038094590521bae3052001375c60a400460a40026eb0c14000a2c8270609a00260906ea800a2b30013038001899194c004dd69826800cc1380066eb4c13400922259800982880144c8c8cc896600260aa0070128b20a4375c60a40026eb8c148008c148004dd6182800145904e0c134004c120dd5001456600260820031323298009bad304d0019827000cdd698268012444b300130510028991919912cc004c15400e0251641486eb8c148004dd7182900118290009bac30500028b209c182680098241baa0028acc004c10c0062646644b3001304f0018991919912cc004c14c00e0211641406eb8c140004dd7182800118280009bac304e0018b2098375a6098002609a00260906ea800a2b300130370018991919912cc004c14000e01b1641346eb4c134004dd69826801182680098241baa0028acc004c0d800626464653001375a609c003375a609c007375a609c0049112cc004c14801201f16413c304e001304d00130483754005159800981a800c4c8c966002609c00500b8b2096375a609800260906ea800a2b30013370e9007000c4c8c966002609c00500b8b2096375a609800260906ea800a2c8231046208c41188231046208c4118608c6ea80062c8240608e002608c002608a00260806ea800a2c81f2460846086608660866086003222329800800c01200680088896600200510018cc00400e6090005330043047002001400c822a6e2520009b88480012222222222222222222980098281baa0129808808c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c59059466002009305c003982e0014cc8966002600e0051337000066eb4c118c168dd5001459058182d8019bad305b002401082ca2c8292601c01d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905844cc014014c1780110581bae3057001375a60b000260b400282c0cc04401000c52000488888c8cc896600260a801119800912cc004c154c168dd500144c8c96600260c20050038b20bc375a60be00260b66ea800a2c82ca444466e24004ca60020030058025200040044444b30010038acc00400a2003164189198008024c19400e60ca00532332259800982e98319baa0028991980c8008acc004cdd7980f98329baa00230683065375400915980099baf30513065375400260d060ca6ea800a264b3001305f30653754003132325980099b87375a60d60046eb4c150c1a0dd5002c56600266e1cdd698358009bad30533068375400b15980099baf306b306c001301b3068375400b1337000113001375660a860d06ea8c150c1a0dd5003cdd71835806cdd718359836006a0268b20cc8b20cc8b20cc306b0013066375400316419060a060ca6ea80062c831a2c8318c19cc190dd5001459062182698311baa304e3062375400260ca00660c800680210624888888c8c96600266e1c0040122646464b30013370e66e04dd6983398321baa3067002375a60ce60c86ea8c19c00c012264b30019800801528c88896600200315980099b8f004489008a5189980f002998359ba90043306b375200697ae0419d14a0833901b44cdc4803cc004dd6180e18329baa00ca400122323259800cc004c18c0069429450674566002603200313370000666e0ccdc10009bad3055306937540086eb4c150c1a4dd50024590674400d0674c0040166eb8c1ac0066eb8c1acc1b00050131bac306a3067375400480ba2c8318cc070dd6180d98321baa00b2375860d060ca6ea80062c8310dd5983318338009833000cc00401e6eb8c190c184dd5182598309baa008803401500945905f2cc004c168c03000629000456600260c80031325980099b8f375c60c0002910104555344720089bad30610018b20be30630018b20c24178660366eacc048c17cdd50029bae304b305f3754609260be6ea801a660046eb0c170c164dd500d1bac3045305937540373045305937540729111119912cc00566002602000514a319800982d000d28528a0bc417913259800982d98301baa00189919911919912cc004c184c198dd5000c4c96600266e1ccdc09bad306b0010060048acc004cdc39bad306b306c001375a60d660d800f159800980c804c566003300133026375860d660d06ea8174dd7182998341baa30523068375401700c99835182a18341baa305230683754016660d4981054455534472004bd7052000403915980099b890033233001001375860a860d26ea8178896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c18361baa0029bae3058306c375460ac60d86ea803e9101045553447200405d100141a860da0026600400460dc002835a3300100b82ecdd6982998341baa02a9bad302230683754055009805201a8b20cc8b20cc8acc00660026604c6eb0c1acc1a0dd502e9bae30533068375460a460d06ea802e0193306a30543068375460a460d06ea802ccc1a93001054455534472004bd704c08400d00e46600201705d9bad305330683754055375a604460d06ea80aa01300a403516419883322c83322c8330ca6002660240026eb4c1acc1a0dd50014dd7182a18341baa305230683754017375c604460d06ea8c148c1a0dd5005a444b30013065306a37540071325980099baf306f306c375460de60d86ea8004c154cc1b8dd480125eb822b3001305c98009bab3058306c3754003002a4410d7374616b696e675f7661756c7400405d13259800983318361baa0018991980a8008acc004cdd7981418371baa0034c0103d87a80008998381ba898009bab305a306e3754007005a4410455534472004064660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c15cc1b0dd5000c5906a45906a183718359baa0038b20d21bac3052306737540b916419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5013acc004c050006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082bcdd7183298311baa304c3062375400b375a609a60c46ea80926eb4c070c188dd50122014329800998060009bad306530623754005375c609c60c46ea8c130c188dd5002cdd7180e18311baa304c3062375400a9112cc004c17cc190dd5001c4c96600266ebcc1a4c198dd5183498331baa305230663754002609e660d06ea40092f5c1159800982b4c004dd5982918331baa305230663754003002a4410d7374616b696e675f7661756c7400404513259800983018331baa001899198078008998351ba898009bab30543068375460a860d06ea800e00b4881045553447200404c660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c144c198dd5182918331baa0018b20c88b20c830683065375400716418c375860c860c26ea815a2c82f8c04cc180dd501145905e4c00400a6eb0c184c178dd501048c040dd69825982f9baa001402d3001002a400122337000026eb4c12cc180dd50012020456600260a401119800912cc0040062900044cdc0240046600400460be00282e2444653001001802400d0011112cc00400a2b30010018a518a504181159800800c52845660026600860c40046eb4c1880063300100398318014c18c005003452820ba418083024466e0ccdc10011bad3046305b37540026eb4c11cc16cdd5000ccc008dd6182e182c9baa01a3758608a60b26ea806e608a60b26ea80e522222325980099914c004c8cc00400400c896600200314a115980099baf30663063375460cc60c66ea8c13cc18cdd518330009826198329ba90034bd704528c4cc008008c19c00506120c8a50a51417c6eb0c188c17cdd502a1bae3019305f3754609260be6ea800a2b300133225980099b87300300230030058acc004c08000633001002800c88c96600260bc60c66ea800626464b30013061306537540031325980099b87375a60d40026eb4c14cc19cdd5001c4cdd798351835800980d18339baa0038a50419460cc6ea80062941064182818329baa3259800982f98329baa0018991980d8008acc004cdd7981098339baa003306a3067375400d15980099baf30533067375400260d460ce6ea800e200316419516419460d260cc6ea80062c8320c140c194dd5182898329baa0043067306437540031641886601a00e002803a2c82fa2c82f8cc074dd61831182f9baa054375c609460be6ea8c124c17cdd50011bac304b305f3754043159800cc004dd61825182f9baa0549bac3062305f37540433758602c60be6ea80092229800803400a4464b3001305f3064375400319800983418329baa0019bac301830653754007323304d00523375e60d460ce6ea8004dd38011bac3018306537540069112cc004c188c19cdd5000c56600266ebcc1acc1a0dd5001983598341baa306b3068375400d15980099baf30533068375400660a860d06ea8c1acc1a0dd500344cdc3cc004dd5982a18341baa0039bae306b0029bae306b306c002404c6601a64b300133710002900044c08800620028338dd6982a18341baa006306b3068375400314a08332294106645906622c8318cc0380140050082260b330019800801cdd61831182f9baa02192cc004c040dd6982618301baa0018982d1bad304b3060375400314a082f100c4cc06cdd59809182f9baa054375c609660be6ea8c124c17cdd5001660020a9375c60c460be6ea8c124c17cdd50014dd69825182f9baa0219bad3019305f3754042803a6602e6eb0c058c17cdd500111bac30633060375400291111919912cc00660020054a3222259800800c56600266e3c011221008a5189980f804198361ba90043306c375200697ae041a114a0834101c456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c078c19cdd500552000911919912cc006600260cc0034a14a28352264b3001337126602400200c00713370000a0031641ac66e0800401a2b3001301d002880245906a20d498008034dd71836800cdd718369837000a02a329800807d2000912cc004cdd7981018369baa002374e0071337000026eb4c164c1b4dd50014400506b203a375860da60d46ea800cdd6183618349baa002406466e040080222005164194b300130160078a40031480090644590644590641bab3067306800159800982f18080024520008acc004c1a0012264b30013371e6eb8c190005220104555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3005005452820ae415c44646600200200444b30010018a5eb822660ba64b30013056305b37540031305f305c37540031641686600a0086eb4c178004cc008008c17c00505c1111192cc004c158c16cdd5000c4c96600266ebcc180c174dd51830182e9baa3049305d3754002608c660be6ea40152f5c11598009826cc004dd59824982e9baa3049305d3754003005a4508747265617375727900402113259800982b982e9baa0018991980d0008992cc004c168c17cdd5000c4c96600266ebcc190c184dd5183218309baa001304a33063375201297ae08acc004c14660026eacc134c184dd5000c02691108747265617375727900403113259800982d98309baa0018991980f0008acc004cdd7980e98319baa0034c0103d87a800089983280299832800998329ba6329800800cdd5982818321baa00499198008009bab30513065375460a260ca6ea8024896600200314bd6f7b63044c8cc1a4cdd818330009ba63233001001375660d000444b30010018a5eb7bdb182264660d866ec0c1a4004dd418119bad306a00133003003306e002306c00141a86600600660d600460d200283390011112cc00400a2003132332298008034c1b4016646600200200a44b300100189983699bb037520086e9800d2f5bded8c113298009bae306b0019bab306c00198380012444b300133720010007133071337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820e2880144cc1c8cdd81ba9009374c0020048370ca6002003008801a002222598008014400626466453001006983c802cc8cc0040040148966002003133079337606ea4010dd4001a5eb7bdb1822653001375c60ee003375a60f0003307c00248896600266e4002000e2660fa66ec0dd48041ba80070058acc004cdc7804001c4c96600260ec003100289983f19bb037520126ea000400907a19b8000700289983e99bb037520066ea0008cc01801800507920f2183d000a0f040186eb8c1c8004dd69839800983a80120e689983899bb037520066e98008cc01801800506d20da1837000a0d840186eb8c198004dd59833800983480120ce4bd70459061183298311baa0018b20c0304c3061375400316417d16417c60c660c06ea80062c82f0cc024dd61825182f9baa0080053061305e3754003164170609060ba6ea8c124c174dd5000c5905b45905b182f982e1baa0018b20b433005375860bc60b66ea8010008896600266e2000520008a6103d87a8000899803001000a0ac22646644b30013045001899912cc004c0f4c108dd500144c8c8c8cc8966002609800713259800982198241baa0018991919912cc004c14400e264b30013048001899192cc004c15000a01d1641446eb8c148004c138dd5003c566002607c00315980098271baa00780645904f45904c2098304c375400d1641386eb8c138004dd71827001182700098249baa0018b208e304b0058b2092375c609200260920046092002609000260866ea800a2c8208c1100044c010c1140162c8210dd7182100098218009bac304100240fd13230023041003375a607e00481ea2646004607e0066eb4c0f400903b4590390c0d8004c0d4004c0d0004c0cc004c0c8004c0b4dd5000c5902b1817802c5902d1bac302d001302d002302d001302c0013027375400b16409432323259800980e98111baa00189919912cc004c0a8006264b300130213026375400313232323232323232323232329800981b000cc0d802e606c0153036009981b0044c0d801e606c00d3036005981b0024c0d800e6eb0c0d80092222222222259800982100644cc080c10405c4cc0800284cc0800244cc0800204cc08001c4cc0800184cc0800144cc0800104cc08000c5660026070607a6ea800a264646464653001375c608c003375c608c00b375c608c009375c608c007375c608c004911112cc004c13001a26607201644b300100289981580b881444c966002608a60946ea800626464646644b300130540038991919912cc004c16000e2601660b00191641546eb8c154004dd7182a801182a8009bac30530058b20a2375a60a20026eb4c144008c144004c140004c12cdd5000c59049182680120968b20921823000982280098220009821800981f1baa0028b20788b207e181b000981a800981a0009819800981900098188009818000981780098170009816800981600098139baa0018b204a30290018b204e375c604e002605000260466ea80062c8108c966002603a60446ea8006264b3001301d302337540031302730243754003164088601c60466ea8c03cc08cdd5181318119baa0018b2042330093758601c60446ea805c8c8cc004004c00cdd5980818121baa30103024375400444b30010018a508acc004cdc79bae30280010228a518998010011814800a0464098600200244b30010018a5eb822660486042604a00266004004604c00281188966002603860426ea800a2646464b3001302900289980318140018992cc004c0800062b3001302637540050058b204e8acc004c05800626464b3001302c002803c590291bae302a00130263754005159800980f800c4c8c96600260580050078b2052302a00130263754005164090812102418121baa0018b204c3027001302700130223754005164080600800844b3001301a301f3754005132323259800981380144cc020c09800c4c966002603c003132598009814800c4c8c9660026042003132598009816000c4cc034c0ac0040262c8148c09cdd50014566002602e003132323298009bad302d0019bad302d0039bad302d002488966002606200900e8b205c1816800981600098139baa0028b204a4094604a6ea8004c0a00062c8130c090dd50014566002602800315980098121baa002802c59025459022204430223754003164090604a002604a00260406ea800a2c80f08acc004c02000e26464b30013009300e37546024602600514a314a08068dd6980880098069baa0048b2016402c300c300d001300c004452689b2b200401", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolMintProtocolMintWithdraw { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541" + : "5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolMintProtocolMintPublish { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541" + : "5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolMintProtocolMintElse { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5948de010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480324604a604c604c604c604c604c604c604c604c604c003374a900124444444444465300122259800980b18179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b3001301b0018992cc00400600f13259800800c566002607600513259800980f000c4c96600200300a8992cc0040062b3001303e0028cc00400601900b403900b40ed00b805c02e01681f8c0f000503a181c1baa0028acc004c048006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013045003809c0490421bad001808a08a304200141006eb4004c10400a01c8210c0fc00503d1bad001303e002805a07e303c00140e860706ea800a01281a9035181b1baa0018042070804402201100840f0607200281b8c0d4dd50014566002601e003159800981a9baa002803c0190364019032206430333754003005402100540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444653001001802400d001111192cc004c068006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e2b3001300e0018992cc00400600d13259800800c01e00f13259800981d801c4cc04800489660020050078992cc0040063300100a800c4c008c0f800d00a402e01700b805a07e303c00240e900840e06eb000600f00740ec607000281b0c0d0dd5001c566002603200313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c06c006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002607c0071330150012259800801402a264b30010018cc004036003130023041003403500e807403a01c8210c0fc00903d402d03b1bac001805402903e181d800a072375a002607400500740ec607000281b0c0d0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009806000c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002601600313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e00b00840e06eb800503b181c000a06c3034375400700540c48189031206240c4818903118191baa002911919800800801912cc004006298103d87a80008992cc004c0100062601c6606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026044003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603660686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c070006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0034888a6002444b3001301f3038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c5660026088005198008034660020030098042018804201c80420828044022011008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c12800e3300100c8cc00401201f00e404900e405100e411c6eb400601a8250c11c0050451823801402e01700b805a0903045001410c6eb4004c11000a0108228c1080050401bad0013041002802a084303f00140f4607e005003801c00e0068200c0f400503b181c9baa003800a06c9112cc004c07cc0e0dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304a0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001304f00380a404d04c1bae001413c60980028250dd7000982580120983049001411d00e404900e405100e411c6eb000601b00d4128608e0028228c11c00a01700b805c02d0481822800a086375a0026088005008411460840028200dd680098208014015042181f800a07a303f002801c00e0070034100607a00281d8c0e4dd5001c005036488966002603e60706ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009825001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009827801c0520268260dd7000a09e304c00141286eb8004c12c00904c1824800a08e80720248072028807208e375800300d806a09430470014114608e00500b805c02e0168240c1140050431bad0013044002804208a304200141006eb4004c10400a00a8210c0fc00503d181f801400e007003801a080303d00140ec60726ea800e00281b12222598009810181c9baa0098992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c966002003029814c4c966002608a007159800981398201baa0068992cc00400605713259800800c0b20591332259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281940ca26644b300100181a44c96600200303581ac0d626644b300100181bc4c96600200313259800800c0e6264b30010018acc004c15400a26605801c44b3001002899817006912cc00400a330010078cc00401626464b3001303d3056375403513259800800c106264b30010018992cc00400608713259800800c56600260be00513322598009821800c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098815209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130370018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102a413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002608400313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c660020031300230670038262056826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c110006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40ad04c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b159800981b000c4c9660020030478992cc0040060910488992cc004c19000e26607600244b3001002803c4c96600200319800800c4c008c19c00e098816209904c8264131068183280120c6824a0c2375800304882420c83061001417c60ba6ea80162b300130350018992cc00400608f13259800800c122091132598009832001c4cc0ec00489660020050078992cc00400633001001898011833801c13102c413209904c82620d03065002418d04941846eb0006091048419060c200282f8c174dd5002c566002606800313259800800c11e264b30010018244122264b3001306400389981d800912cc00400a00f13259800800c66002003130023067003826205a826413209904c41a060ca004831a0928308dd6000c1220908320c18400505f182e9baa0058acc004c020006264b3001001823c4c96600200304882444c96600260c800713303b0012259800801401e264b30010018cc0040062600460ce00704c40b504c82641320988340c19400906341250611bac00182441210641830800a0be305d375400b046416882d105a20b4416882d105a20b4132598009821000c4c9660020030468992cc0040062b300130620028cc00400601104740a9047417d047823c11e08e8318c18000505e182e1baa0028acc004c0d8006264b300100182344c96600200315980098310014566002608860ba6ea8006264b300100182444c96600200313259800800c12a264b30010018acc004c19800a330010038cc00400601904b40bd04b40bd04b418d04b825c12e0968338c19000506218320014126093049824a0ca3062001418060bc6ea800608e82da08e82fa08f047823c11d0631830000a0bc305c3754005045416482c8c168dd5000982d1baa00382220b88224112089044418060ba00282d8c17400a085042821410905e182d800a0b230573754035040415026606202c44b30010028cc004c16cc160dd5013cc16cc160dd5181a982c1baa0279112cc00400a298103d87a80008acc004c1040062606e660ba60bc00497ae08cc00400e60be005337000029000a006416082e245300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa3039305c375460be0026062660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303b305e37540046066660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230333058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013038305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48888ca6002003005802400d00111112cc00400e2b30010028800c54cc17924112657870656374205b5d203d206c6973745f6200164185159800801454cc1792411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c80073064002cc004c18c00e6eb4c18c00a002802900420c24185222329800800c012006800888966002005159800800c528c52820be8acc00400629422b300133004306100230610018cc00400e60c40053062001400d14a082d905f20be91111919800800802912cc0040062660c066ec0dd48029ba80044bd6f7b63044ca60026eb8c1780066eb4c17c00660c60049112cc004cdc8004801c4cc190cdd81ba9009375001000b15980099b8f0090038cc00402601100291983299bb037520146ea000400a2002803a2660c866ec0dd48019ba800233006006001417c82f860c200282fa4444646600200200a44b300100189983019bb0375200a6e980112f5bded8c113298009bae305e0019bab305f00198318012444b300133720012007133064337606ea4024dd3004002c56600266e3c02400e33001009804400a4660ca66ec0dd48051ba60010028800a00e89983219bb037520066e98008cc01801800505f20be1830800a0be91191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c82ea26600a00a60c800882e8dd7182e8009bab305e00130600014178297adef6c6092cc0040062946294105a4488888c966002608800300289801800a0b633700008007222598009820982d1baa0038992cc00400600513259800800c00e0070038992cc004c18800e00b004417c6eb40060068310c17c00505d182d9baa003800a0b09182e182e982e982e800cdc0a40012259800800c52000899b8048008cc008008c17800505b48c170c174c174c174c174c174c174c174c174c174c174006444b30013041305a375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c96600260ce00519800803c6600200b132598009825000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009824800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c1c400e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c1d800e03301841cc6eb80050761839800a0e2375c00260e40048398c1c000506e404d06e1bac00180940490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc306437540091598009825800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a025132598009838801c0520268370dd6800c0490711837000a0d8375a00260da00500f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981d800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002601e00313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc3064375400900a4184830906120c24184830906120c23062375400700940c500940d5009419060ca0028318c19400a00f007803c01d0661831800a0c23063002802c01600b005419060c200282f8c18400a007003801c00d062182f800a0ba305b37540070014161223302b00223375e60bc60b66ea8004dd3801488cdc199b82002375a607060b46ea8004dd6981b982d1baa001912cc00400629344c966002003149a264b3001337206eb8c16cc17c00cdd7182d800c4cc010010cc178004c18000a2a660b4921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416460bc00282e0c17800505b4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71831000cdd69831800ccc00c00cc19c0090091832800a0c6375660c00066eb8c174004cc00c00cc188008c18000505e488c8cc00400400c896600200314bd7044cc178dd39801982f800998010011830000a0ba911919800800801912cc00400629422b30013375e60be0026e9c00e294626600400460c000282c905d4888ca6002003004801a00222259800801440063300100398310014cc010c18400800500320be9182e182e982e982e982e800cdc424001371e910104555344720048888888888888888888888888888a600260e86ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad3058307b375400706741e080d20da83aa4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320f689980280298410080220f6375c60f60026eb4c1f0004c1f800507c1980b8020018a400122329800800c00e00480088896600200510018994c00401260fe00798008014dd7183d000cdd5983d800c88888c966002603c00300289801800a0fc32329800800c01a00a80088896600200510018994c00401261120200798008014dd7184200800cdd6984280800c0150252008308701002421404a03880d1004183e80120f691919800800801112cc004006297adef6c608991983d99bb03078001374c64660020026eacc1e8008896600200314bd6f7b63044c8cc1f8cdd8183d8009ba83015375a60f80026600600661000200460fc00283e0cc00c00cc1f4008c1ec0050794c0340364464b3001305d3077375400313259800800c6600200315980099baf30133079375400660f860f26ea80122b30013375e60ac60f26ea8004c1f0c1e4dd5001c40062a660ee9213865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e001641d9153307749138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e6365001641d9067403d067833c19e0ce83f0c1ecc1e0dd5000c195075182a983b9baa30543077375400530080084888888888ca600244646600200200444b30010018a5eb8226610a0264b3001306a30830137540031308701308401375400315330820149013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f6964782900164204046600a0086eb4c21804004cc008008c21c040050840148888c96600260d46106026ea8006264b30013375e611002610a026ea8c22004c21404dd518311842809baa001305a3308701375200a97ae08acc004c17e60026eacc188c21404dd518311842809baa001802d2210874726561737572790040351325980098359842809baa0018992cc004006330010018992cc004c1b8c21c04dd5000c4c96600266ebcc23004c22404dd51846009844809baa001305e3308b01375201297ae08acc004c18e60026eacc198c22404dd5000c02691010874726561737572790040451325980098379844809baa0018992cc004006330010018acc004cdd798129845809baa0034c103d87a800089984680802998468080099846809ba633012375660d06116026ea800cc044dd598341845809baa3068308b01375400e97ae08a9984480a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642200507f409907f83fc1fe0fe848008c23404c22804dd5000c54cc2200524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016421c0460ce6112026ea80062a6610e02920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001642180515330870149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f7363726970742900164218046116026110026ea80062a6610c0292013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f696478290016421404660126eb0c194c21c04dd5004002c1e902241ea0f507a83d211802308901308601375400315330840149013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016420c0460c6610a026ea8c188c21404dd5000c54cc20c052401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164208051533083014914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016420804610e026108026ea80062a661040292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f6964782900164204046600a6eb0c21804c20c04dd50020014888888896600266ebcc22804c21c04dd50039845009843809baa0068acc004cdd798329843809baa0073064308701375400d13259800cc0040069464444b3001001899b894800000a29410890120348992cc004cdc4802000c56600266e2400400e2003153308701491216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016421805153308701491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001642180530010019bae308b010049bae308b01308c010044041153308601490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d2900164214046601c6eacc190c21c04dd50039806cc004dd7184500802cdd7184500984580802cc080011222598009838000c402e3300100b801cc8c8008c038004cc23004cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001423404653001004804401e444453001005801c0120050014018818140ad029210e02454cc2140524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d00164210051533085014912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164210049112cc004c1a00363300122323370666e00cdc019b82003375a60c6610a026ea80080052001001375a60c26108026ea8006660066eb0c21404c20804dd50149bac305f30820137540553758610a026104026ea80aa6eb4c180c20804dd50154dd6980e1841009baa02a982f9841009baa0524888889660026605a6eb0c22c04c22004dd50349bae3022308801375460bc6110026ea800626644b300132980080140224464b30013074308d0137540031323232980099813003800cdd6180f9848809baa0059bad3094010039bad309401002488896600260f66128026ea80122b300133712660266eb4c1c8c25404dd5004984c00984a809baa00498009bab3072309501375460e4612a026ea802a6eb8c2600400e6eb8c26004c2640400d01d456600266e1c008dd69839184a809baa0098acc004cdc38009bad3073309501375401313375e6e9c014c08cc25404dd5004c5282124028a5042480514a084900a2a661260292014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164248043758612602612802002612602002611c026ea8006294108b0118359846809baa3301100200140b06eb0c084c22804dd5001c4c8c96600266e1c00660026eb0c1a8c23004dd5036ccc23804c1a4c23004dd518311846009baa0053308e014c1054455534472004bd704dd618119846009baa0054888ca6002003007806c03100111112cc00400e2900044cc896600200908d01899912cc004016120031332259800983f984c009baa001899912cc004c20404c26804dd5000c4cdc04c004dd5983c184d809baa3078309b013754011002984f00984d809baa0069bac3029309b01375400d33019375a60f06136026ea8018c27804c26c04dd5000c03a6eb4c1e4c26c04dd50034dd6983c184d809baa0064069300100c803c016008806212a0284c008c27004c26404dd5000998170059bac3027309901375400908f0142580461360200a660320166eb4c2680401509801184c00802184c80802212c02309601003309701003425004899194c004c244040066eacc24404c248040066603e6eb0c094c23804dd500391bac309201308f01375400330910100248889660033001003a5191112cc0040062b30013371e008911008a518998130031984c009ba90043309801375200697ae0424c0514a0849809024456600266e1ccdc09bad30950130920137540086eb4c25404c24804dd5000803c4c96600266e240200062604000315330910149012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f7573647200164240053001375860526124026ea802e9000488c8cc89660033001307d001a50a5142500515980099b893302b001005002899b800040018a9984a80a4812d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642500515980099b894800000a20091533095014901186578706563742061637475616c5f64656c7461203e3d2030001642500484a00a600200d375c613002003375c61300261320200280e8ca60020274800244b30013375e604c6130026ea8008dd3801c4cdc00009bad3075309801375400510014254048128dd6184c00984a809baa0033758612e026128026ea800902142240508f0142340508f010c2440400660020db375c611e026118026ea8c188c23004dd5002c01e00c80622a661140292125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c6976657265640016422404b3001307130100018a4001159800800c1f2264b30013090010028992cc004c064dd7184600801440060fe845008dd6984600800c1f508d01184700800a11802422004660506eacc060c22804dd50359bae3067308a01375460c06114026ea800e2a66110029201556578706563740a2020202076616c69646174655f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732c2073657474696e67732e726573657276655f617373657473290016421c0530010058024966002602c6eb4c198c22404dd5000c4c058dd698339844809baa0018a504218048088cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000c1cd08501226644b3001305e00f8cc004cc014dd61843809842009baa02b375860c26108026ea80b26eb0c21c04c21004dd50164dd698311842009baa02c9bad301e3084013754059306130840137540a8911112cc004cc0b8dd61846009844809baa06a375c60466112026ea8c17cc22404dd5000c660033001005802496600266e20dd698339845009baa001480022602e6eb4c1a0c22804dd5000c528210e0240493302d37586118026112026ea81a8dd718339844809baa305f30890137540033308b013066308901375460be6112026ea8004cc22c05301054455534472004bd702444b3001980080140224464b30013069308e01375400313233225980099b8900198009bab306f309201375460de6124026ea801a6eb8c2540401e6eb8c25404c2580401d01a456600266e1c004c0acdd698379849009baa0058acc004cdc39bad309501002375a60e06124026ea8016266ebcc25404c25804008c080c24804dd5002c528211e028a50423c0514a0847808c25004004dd69849808009847809baa0018a5042300460d8611c026ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600200908c01899912cc00401611e031332259800983f184b809baa001899912cc004c20004c26404dd5000c4cc88cc88cc00800800489660020031330a001374e66140026e9c010cc28004dd4001a5eb812f5c113298009bac30a2010019bad30a20130a3010019851808012444b30013375e6e9c00cdd380444cc29004dd399852009ba7003330a401375066e0000801d2f5c00031330a401374e66148026e9c00ccc29004dd400125eb80cc01801800509f010dd6185080800a13e029800807402600f00640386eb0c0a0c26804dd50034c004dd5983b984d009baa3077309a013754011002984e80984d009baa006807cc05cdd6983b984d009baa0069bac3028309a01375400d375a60f06134026ea801a6605c602e6eb4c1dcc26804dd5003184e80984d009baa001406509401425c046136026130026ea8004cc0b402cdd61813184c009baa00484700a12a02309a010053301800a375a61320200a84b808c25c04010c2600401109501184a80801984b00801a12602375860d46118026ea81b4dd618119846009baa004998151bab301a308c0137540da6eb8c1a4c23004dd518311846009baa004cc0041b66eb8c23c04c23004dd518311846009baa004803401500c4cc074dd618119846009baa00423758612002611a026ea80052222329800984a00800cdd5984a00984a80800cc2500400eb3001307730160048a4001159800802420806264b30013096010058992cc004c07cdd71849008014400610a02848008dd6984900800c20c0509301184a0080221240242380491112cc00660020074a3222259800800c56600266e3c0112201008a518998148051984d809ba90043309b01375200697ae042580514a084b009027456600266e1ccdc09bad30980130950137540086eb4c26004c25404dd5001000c56600266e1c0066002023480024466e00004dd6983a184b809baa0024091159800998099bac302c309501375401a46466e1e600200b375c613402003375c61340261360200280f8c0c0c8c8cc0040040348966002003148002264b30013375e613c020026e9c01226eb4c27804c27c04006266006006613e0200484c008dd6184e80800a136023758613402612e026ea8008dd6184c80984b009baa0018a518a9984980a49ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e6173736574290a20342020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001642480515330930149123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001642480508c0142480509001424804309401002454cc22805241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001642240483a210c02456600260b601f19800998029bac30870130840137540566eb0c184c21004dd50164dd61843809842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea81512222259800998171bac308c0130890137540d46eb8c08cc22404dd5182f9844809baa0018acc00660026605a6eb0c23004c22404dd50351bae3067308901375460be6112026ea800600b22325980098389845809baa0018992cc004006330010018acc004cdd798359846809baa003309001308d01375400915980099baf306a308d013754002612002611a026ea800e264b30013065308d01375400313370e6eb4c24404c23804dd50009bad306b308e01375400914a0845808c1acc23404dd5000c1f508a0141f108a0141ed02341ee0f707b83da12402308f01308c01375400307942240460d26116026ea8c1a0c22c04dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a084780a2b30010018a508acc004cc896600260ec611e026ea8006264b30013375e6128026122026ea8004c25004c24404dd5184a009848809baa0038acc004cdd798379848809baa001306e30910137546128026122026ea800e266e1e60026eacc1b8c24404dd5000cdd7184a00803cdd71837003a032300e375a60dc6122026ea800e294108e014528211c023093013090013754003086014234046122020046602000a6eb4c24404006330010039849008014c248040050034528211602423c04847808dd618339844809baa06a3308b013066308901375460be6112026ea8004cc22c05301054455534472004bd7044c8ca60026eacc23804c23c04006660526eacc064c22c04dd50361bae3068308b01375460c26116026ea800eb3001302e0068cc00401e00d48002444b3001301b375a60d6611c026ea800e266e00004dd698359847009baa00383d21160240b5080014220049112cc004cdc3acc004c1d0c04c00a29000456600200507f8992cc004c24c0400e264b3001301c375c611e02005100184100a11a02375a611e020030800142400461220200484780908b01000c56600266e1ccdc09bad309101308e0137546122020086eb4c24404c23804dd5184880802800c4cc030dd618129847009baa00623230769800802cdd7184980800cdd7184980984a00800a0303758612402611e026ea800610a0284580a2a661180292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e740016422c04308e0100198008354dd71846009844809baa305f308901375400300380120128a9984380a481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a202020202900164218051533087014913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f72657175657374732900164218050744218048acc004c0bc03e33001330053758610e026108026ea80acdd618309842009baa02c9bad30623084013754059375a603c6108026ea80b260c26108026ea8151222259800998169bac308b0130880137540d26eb8c088c22004dd5182f1844009baa0018acc004cc8a600200500691192cc004c1c8c23004dd5000c4c96600200319800800c56600266ebcc1b0c23804dd50019848809847009baa0048acc004cdd798359847009baa001309101308e01375400713259800981d1847009baa0018992cc004cdc4800cc004dd598369848009baa306d309001375400d375c61260200f375c61260261280200e80c2266e1c004c0a4dd698369848009baa0058a504234046eb4c24804c23c04dd5000c528211802306c308e01375400307e422c0507d422c0507c409107c83e41f20f8849808c24004c23404dd5000c1e908a0118351846009baa3069308c0137540048158cc0b0dd61845809844009baa069375c60cc6110026ea8c178c22004dd5000998450098329844009baa305e30880137540026611402981054455534472004bd7044c8ca60026eacc23404c23804006660506eacc060c22804dd50359bae3067308a01375460c06114026ea800f3001006a4001225980099b88375a60d26118026ea80092000899b80001375a60d26118026ea800a0f08448090192444b30013370eb3001307330120028a400115980080141fa264b30013092010038992cc004c06cdd71847008014400610202846008dd6984700800c1fd08f01184800801211c0242280400315980099b87337026eb4c24004c23404dd51848008021bad309001308d01375461200200a00313300b37586048611a026ea80188c8c1d6600200b375c612402003375c61240261260200280b8dd61848809847009baa0018a9984580a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016422805153308b014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016422804308d010019800834cdd71845809844009baa305e308801375400300380120108a9984300a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f61737365742900164214050734214048a5042040484080908101111919800800801912cc00400629462b30013003308901001899801001184500800c528210602421c044b300133710002900044c070006200284000907f0896600266e2000520008a60103d87a8000899805001000a0fa2264b3001001821410a264b3001001821c4c96600200304482241120891332259800800c11a264b30010018acc004c18800a264b30013045305e375400513259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc00400609d04e827413a264b3001306a0038acc004c130c194dd500344c9660020030508992cc0040060a3051828c14626644b3001001829c4c96600200305482a41520a9132598009838001c4c96600260a600313259800800c15e264b300100182c41620b10588992cc004c1d000e02505941c46eb80050741838800a0de306d37540171598009823800c56600260da6ea802e01f05641b905641a88350c1acdd5005415506d1bae00141c060da0028358dd7000983600120da306a00141a060cc6ea801a09e831a09e8338dd7000a0d43067001419460ce00504c82641320988340c1940050631832801412a09504a82520cc3063001418460be6ea800a09082e04c01cc18802208e82fa08f047823c11d0631830000a0bc375c00260be0048300c17400505b1bac001821410905e182d80120b2370e900740f902040f902044c96600200303f81fc0fe264600660b60086eb400607e82d8c16000905644c96600200303d81ec0f6264600660b20086eb400607a82c8c15800905440e905240ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f1bad001305000281aa0a2304e00141306eb4004c13400a0648270c12c0050491bac001304a002817c0bd04b1824000a08c3758002608e00502c81620903045001410c60826ea801a05481f20548210dd6000c0a60528228c1080050401821001409e04f027813a086304000140f86080005025812c09604a8208c0f800503c181d1baa009811a06e203701b80dc06d0371991192cc004c068c0ccdd5000c4c0d0c8cdd8181c000981c181c8009bac303730343754003153303249018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006071038899912cc00400607513259800800c56600260aa0051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606e60a06ea801a264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c126093132598009832001c4cc0ec048896600200519800809440c209881aa264b30010018acc004c124c188dd5000c4c96600200304e8992cc00400609f04f899912cc0040060a313259800800c14a0a5052899912cc0040060a913259800800c1560ab0558992cc004c1c000e2b300100782b44c96600200305782bc15e0af1332259800800c166264b300100182d416a0b505a8992cc004c1d400e2602060ea02305b41c86eb80050751839000a0e0375c00260e20108390c1bc01d06d415906d1bad00182aa0e0306d00141ac6eb4004c1b000a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375400304d418104d826c13609a8340c19400906341290611bae001419060c200282f8dd7000983000120c2305e00141706eb8004c17400905e182d800a0b2375c00260b400482d8c1600050561bae0013057002416060aa0028298c144dd500340ed04e40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05240ee07703b81da0ac305300141446eb0004c14800a071038414c60a00028270c14000a06d03681b40d90511827000a098304e00281a40d2069034413c60980028250c13000a06503281940c904d1825000a090304a00281840c2061030412c60900028230c12000a05d02e81740b90491823000a088304600281640b205902c411c60880028210c11000a05502a81540a90451821000a080304200281440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b3001301930333754003130373034375400315330324913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c0660066eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050330888c966002602c00313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a064303037540091598009805000c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd5002400902d205a302e37540068acc004c02000e26464b3001300930223754604c604e00514a314a08100dd6981280098109baa0048b203c407830203021001302000445268a9980b2491856616c696461746f722072657475726e65642066616c7365001365640541" + : "5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b874803246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911919800800801912cc0040062980103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a180d1baa002912cc004c054c068dd500144c8c8c96600260440051323259800980d000c56600260406ea800a00d1640851598009807000c4c8c966002604c0050088b2046375a604800260406ea800a2b300130190018acc004c080dd5001401a2c810a2c80f101e203c301e3754002604200716407c64b3001301e0018acc004cdc4a4008603a0031689806180e800a0388b203e37546040002604000260366ea800a2c80ca4464b30013016001899192cc004c08800a00916407c6eb4c080004c070dd5001c5660026014003159800980e1baa00380145901d45901a2034301a375400491111199119914c004cc88c966002603e60486ea80062604a6466ec0c0a4004c0a4c0a8004dd6181418129baa0018b204632330010010032259800800c5300103d87a80008992cc004cdd7981300099ba548010cc0a4c040cc0a4dd480225eb812f5c11301733029374e66052604c00266052604e00297ae04bd7044cc00c00cc0ac0090251814800a04e3756601860446ea805cdd7181298111baa002912cc004c078c08cdd500144c8c8c8cc8966002605a007133008302c0051330110020068b2054302a001375a60540046054002605200260486ea800a2c811244b3001301e302337540051323232323298009bad302c0019bad302c0049bad302c003981600124444b30013031005899806181800489980a80080545902e0c0b0004c0ac004c0a8004c0a4004c090dd500145902248966002603c60466ea800a26464646465300137586058003375a6058009375a6058007302c0024888966002606200b13300c3030009133015001132332259800981a001c0362c8188dd718188009bae303100530310048b205c181600098158009815000981480098121baa0028b2044912cc004c078c08cdd500144c8c8c8c8ca60026eb0c0b00066eb4c0b00126eb4c0b000e605800491112cc004c0c4016266018606001226602a0022646644b30013034003806c590311bae3031001375c606200a60620091640b8302c001302b001302a001302900130243754005164088911112cc004c084c098dd5002c4c8c8c8cc8966002606000713259800981398161baa00189919191919194c004c0d80066eb0c0d80166eb4c0d80126eb4c0d800e606c004911112cc004c0f001a26604e6eb0c0ec02c8966002005133029006225980080144cc07c0144cc07c0244c8c9660026070607a6ea804e2646464b3001304500289919912cc004c0f800a264b3001304900189981a1bac304800122598008014012266042609400426002609600482422c8230c110dd5001c5660026064005132598009824800c4cc0d0dd61824000912cc00400a009133021304a00213001304b002412116411860886ea800e2b3001303d0028992cc004c1240062660686eb0c1200048966002005004899811182500109800982580120908b208c30443754007159800981f80144c96600260920031330343758609000244b300100280244cc088c1280084c004c12c00904845904618221baa0038acc004c0c400a264b3001304900189981a1bac304800122598008014012266046609400426002609600482422c8230c110dd5001c5660026060005132598009824800c4cc0d0dd61824000912cc00400a009133023304a00213001304b002412116411860886ea800e2b3001302f0028992cc004c1240062660686eb0c1200048966002005004899812182500109800982580120908b208c30443754007159800980400144c96600260920031330343758609000244b300100280244cc090c1280084c004c12c00904845904618221baa0038b20844108821104220844108821104218209baa00113259800981e800c4c966002609000313302c30470010078b208a304337540071598009818800c4c966002609000313259800981f98221baa00189919192cc004c13000a266058609600626605800201716412460940026094002608a6ea80062c8218c11c0062c8228c10cdd5001c59041208230413754004608800716410860860026086002607c6ea804e2c81e04cc0b004c8966002005198009821181f9baa01d9821181f9baa3030303f375403b222598008014530103d87a80008acc004c0f00062606466088608a00497ae08cc00400e608c005337000029000a0064100821a45300132330010010032259800800c528456600266ebcc118c10cdd5182318219baa303430433754608c00260586608a6ea400d2f5c114a313300200230470014104822294294503f488c8cc00400400c896600200314bd7044cc896600266ebcc120c114dd5182418229baa303630453754004605c6608e6ea40152f5c113304700233004004001899802002000a0863046001304700141112302e303f37546086646600200200444b30010018a5eb84103d87a80008101800044c8cc8966003300130333044375460900074a14a2821a26608f30014a14c103d87a8000a60103d8798000410c6608e6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12800400e29462660040046096002822904844cc11e600294298103d87a8000a60103d8798000410c6608e6e9c0092f5c11330479800a51a60103d87a8000a60103d8798000410c6608e6e9ccc11cdd400080125eb8104320863758608c608e0026eb4c118008cc008008c11800504348888ca6002003005802400d00111112cc00400e2b30010028800c59048466002009304b0039825801660026094007375a6094005001401480210484888ca6002003004801a00222259800801456600200314a314a082322b30010018a508acc004cc010c120008c1200063300100398248014c12400500345282086411882324444646600200200a44b300100189982399bb0375200a6ea00112f5bded8c113298009bae30450019bad304600198250012444b30013372001200713304b337606ea4024dd4004002c56600266e3c02400e33001009804400a46609866ec0dd48051ba80010028800a00e89982599bb037520066ea0008cc018018005047208e1824000a08c91111919800800802912cc00400626608e66ec0dd48029ba60044bd6f7b63044ca60026eb8c1140066eacc11800660940049112cc004cdc8004801c4cc12ccdd81ba9009374c01000b15980099b8f0090038cc00402601100291982619bb037520146e9800400a2002803a26609666ec0dd48019ba600233006006001411c8238609000282324464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208a8998028029825802208a375c60880026eacc114004c11c0050450a5eb7bdb1824b30010018a518a5041051222223259800981f800c00a260060028218cdc0002001c8966002607660806ea800a26464b30013047002801c590441bad3045001304137540051640fd230433044304430440019b814800244b30010018a40011337009001198010011822800a084918219822182218221822182218221822182218221822000c8966002607660806ea800a264646465300130480019824001cc12000922259800982600244cc0a8c12c01c4cc09c0084c96600260860031323298009bad304e0019827800cdd698270012444b300130520028991919912cc004c15800e02516414c6eb8c14c004dd7182980118298009bac30510028b209e182700098249baa0028acc004c0dc006264653001375a609c003304f0019bad304e00248896600260a400513232332259800982b001c04a2c8298dd718298009bae30530023053001375860a200516413c304e001304937540051598009821000c4c8ca60026eb4c138006609e003375a609c0049112cc004c14800a264646644b300130560038094590531bae3053001375c60a600460a60026eb0c14400a2c8278609c00260926ea800a2b3001304400189919912cc004c140006264646644b300130540038084590511bae3051001375c60a200460a20026eb0c13c0062c8268dd69826800982700098249baa0028acc004c0d8006264646644b30013051003806c5904e1bad304e001375a609c004609c00260926ea800a2b3001303500189919194c004dd69827800cdd69827801cdd698278012444b30013053004807c590500c13c004c138004c124dd50014566002606800313232598009827801402e2c8260dd6982680098249baa0028acc004c03400626464b3001304f002805c5904c1bad304d0013049375400516411c8239047208e411c8239047208e30473754003164124304800130470013046001304137540051640fd223302800223375e608a60846ea8004dd3801488cdc199b82002375a606660826ea8004dd6981918209baa001912cc00400629344c966002003149a264b3001337206eb8c108c11800cdd71821000c4cc010010cc114004c11c00a2c8208c1140050431822800a0849111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30490019bad304a0019980180198270012012304c00141286eacc11c00cdd718220009980180198248011823800a08a911919800800801912cc004006297ae08998229ba73003304600133002002304700141112232330010010032259800800c528456600266ebcc118004dd3801c528c4cc008008c11c0050412088911194c0040060090034004444b30010028800c660020073049002998021824001000a00641192304330443044304430440019b88480026e3d22104555344720048888888888888888888888888888a600260b66ea8072603603722259800980d801466002007002a4001222598009802001c4cdc00009bad30533062375400716418080d22c82ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320c6899802802983480220c6375c60c40026eb4c18c004c1940050631980b8020018a400122329800800c00e00480088896600200510018994c00401260cc00798008014dd71830800cdd59831000c88888c966002603c00300289801800a0cc32329800800c01a00a80088896600200510018994c00401260e000798008014dd71835800cdd69836000c0150252008306e00241b0a03880d1004183200120c491919800800801112cc004006297adef6c608991983119bb0305f001374c64660020026eacc184008896600200314bd6f7b63044c8cc194cdd818310009ba83015375a60c60026600600660ce00460ca0028318cc00c00cc190008c1880050604c0340364464b30013058305e37540031323300f00115980099baf30133060375400660c660c06ea80122b30013375e60a260c06ea8004c18cc180dd5001c40062c82f22c82f0c188c17cdd5000c5905d1828182f1baa304f305e375400530080084888888888ca600244646600200200444b30010018a5eb822660d864b30013065306a37540031306e306b37540031641a46600a0086eb4c1b4004cc008008c1b800506b48888c96600260ca60d46ea8006264b30013375e60de60d86ea8c1bcc1b0dd5182e98361baa00130553306e375200a97ae08acc004c16a60026eacc174c1b0dd5182e98361baa001802d220108747265617375727900403513259800983318361baa001899198110008992cc004c1a4c1b8dd5000c4c96600266ebcc1ccc1c0dd5183998381baa001305933072375201297ae08acc004c17a60026eacc184c1c0dd5000c02691108747265617375727900404513259800983518381baa001899198130008acc004cdd7981298391baa0034c0103d87a800089983a0029983a0009983a1ba633012375660c660e46ea800cc044dd5983198391baa30633072375400e97ae08b20e03074307137540031641bc60c460e06ea80062c83722c8370c1c8c1bcdd5000c5906d198049bac3060306e375401000a60e060da6ea80062c8358c178c1b0dd5182e98361baa0018b20d48b20d4306e306b37540031641a46600a6eb0c1b4c1a8dd50020014888888896600266ebcc1c4c1b8dd5003983898371baa0068acc004cdd7983018371baa007305f306e375400d13259800cc0040069464444b3001001899b894800000a294107120348992cc004cdc4802000c56600266e2400400e20031641b91641b930010019bae30720049bae3072307300440411641b46601c6eacc17cc1b8dd50039806cc004dd71838802cdd718389839002cc080011222598009835800c402e3300100b801cc8c8008c038004cc1cccdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141d4653001004804401e444453001005801c0120050014018818140ad02920de45906c45906c2444b3001306300d8cc00488c8cdc199b803370066e0800cdd6982f18361baa00200148004004dd6982e18359baa001998019bac306c306937540526eb0c168c1a4dd50154dd6183618349baa02a9bad305b30693754055375a603860d26ea80aa60b460d26ea812522222259800998169bac3072306f37540c86eb8c088c1bcdd5182c98379baa001899912cc004ca600200500891192cc004c1bcc1d0dd5000c4c8c8ca60026604c00e0033758603e60f06ea80166eb4c1ec00e6eb4c1ec009222259800983b183d9baa0048acc004cdc4998099bad306d307c375401260fe60f86ea801260026eacc1b4c1f0dd51836983e1baa00a9bae307f0039bae307f308001003407515980099b87002375a60da60f86ea80262b30013370e0026eb4c1b8c1f0dd5004c4cdd79ba70053023307c375401314a083d2294107a452820f48b20f41bac307a307b001307a0013075375400314a08398c198c1d0dd519808801000a0583758604260e26ea800e26464b30013370e0033001375860ca60e66ea81a2660ea60c860e66ea8c174c1ccdd50029983aa601054455534472004bd704dd6181198399baa0054888ca6002003007806c03100111112cc00400e2900044cc896600260ec60f66ea8006264b30013077307c37540031337013001375660dc60fa6ea8c1b8c1f4dd51840008034c20004c1f4dd50014c20004c1f4dd5001cdd61812183e9baa0039980a1bad306e307d375400661000260fa6ea8006013375a60de60fa6ea800e6eb4c1b8c1f4dd5001a02a9800803cc2040401a61020200b308101004401d1641ec6605400e6eb0c08cc1f0dd500145907a183e8011980a8039bad307d00141ec8991919912cc00660020054a3222259800800c56600266e3c0112201008a518998120029983e9ba90043307d375200697ae041e514a083c9022456600266e1ccdc09bad307a3077375460f40066eb4c1e8c1dcdd5183d002002c4c96600266e240180062603c0031641d930013758604e60ee6ea80269000488c8cc896600330013076001a50a5141e915980099b8933029001005002899b800040018b20f48acc004cdc4a400000510048b20f441e930010059bae307d0019bae307d307e001406c653001011a4001225980099baf3024307d37540046e9c00e266e00004dd69837183e9baa0028800a0f6408c6eb0c1f4c1e8dd50019bac307c3079375400480fa2c83aa2c83a8dd5983c183c8009980f9bac30253075375400e46eb0c1e4c1d8dd5000983c000cc0041a26eb8c1d8c1ccdd5182e98399baa005803c01900c4590712cc004c1b0c04000629000456600260ec00313259800980c1bae307200189bad30730018b20e230750018b20e641c0660506eacc060c1c4dd50331bae30623071375460b660e26ea800e2c837a600200b00492cc004c058dd6983098381baa0018980b1bad30623070375400314a08371011198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa0018b20da44cc896600260b201f19800998029bac306e306b37540566eb0c170c1acdd50164dd6183718359baa02c9bad305d306b3754059375a603c60d66ea80b260b860d66ea812d2222259800998171bac3073307037540ca6eb8c08cc1c0dd5182d18381baa0018cc006600200b00492cc004cdc41bad306230713754002900044c05cdd6983198389baa0018a5041bc80926605a6eb0c1ccc1c0dd50329bae30623070375460b460e06ea8006660e460c260e06ea8c168c1c0dd500099839261054455534472004bd702444b3001980080140224464b300130643075375400313233225980099b8900198009bab306a3079375460d460f26ea801a6eb8c1f001e6eb8c1f0c1f401d01a456600266e1c004c0acdd69835183c9baa0058acc004cdc39bad307c002375a60d660f26ea8016266ebcc1f0c1f4008c080c1e4dd5002c52820ee8a5041dd14a083b8c1ec004dd6983d000983b1baa0018a5041d060ce60ea6ea8cc04800800502d4660026644653001001802c02e014800888896600200714bd7044cc896600260ea60f46ea8006264b30013076307b3754003133223322330020020012259800800c4cc20804dd399841009ba70043308201375000697ae04bd7044ca60026eb0c210040066eb4c21004c21404006610a020049112cc004cdd79ba7003374e01113308601374e6610c026e9c00ccc21804dd419b800020074bd70000c4cc21804dd399843009ba70033308601375000497ae033006006001420804375861060200284080a6002013308201008984100803cc208040190091bac3023307c37540073001375660da60f86ea8c1b4c1f0dd5183f8034c1fcc1f0dd50014c1fcc1f0dd5001c02a60246eb4c1b4c1f0dd5001cdd61811983e1baa0039bad306e307c3754007330293012375a60da60f86ea800cc1fcc1f0dd5000a0288b20f4330290073758604460f66ea800a2c83c8c1f0008cc050018dd6983e000a0f4375860ca60e66ea81a0dd6181198399baa004998151bab301a307337540d06eb8c190c1ccdd5182e98399baa004cc0041a26eb8c1d8c1ccdd5182e98399baa004803401500c4cc074dd6181198399baa0042375860ee60e86ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a5189981380419840009ba90043308001375200697ae041f114a083e1025456600266e1ccdc09bad307d307a375460fa0066eb4c1f4c1e8dd5183e802800c56600266e1c006600201f480024466e00004dd69836983e1baa0024089159800998089bac302a307a375401646466e1e6002009375c60fe003375c60fe61000200280e8c0b8c8c8cc00400402c8966002003148002264b30013375e6106020026e9c01226eb4c20c04c2100400626600600661080200483f0dd6184100800a10002375860fe60f86ea8008dd6183f183d9baa0018a518b20f08b20f08b20f08b20f0375660f660f8002b3001307230160048a4001159800983e00244c966002603c6eb8c1e000626eb4c1e40062c83b8c1ec0122c83c9076183d80122c83891641b88acc004c15803e3300133005375860dc60d66ea80acdd6182e18359baa02c9bac306e306b3754059375a60ba60d66ea80b26eb4c078c1acdd50164c170c1acdd5025a44444b30013302e375860e660e06ea8194dd7181198381baa305a30703754003159800cc004cc0b4dd6183998381baa065375c60c460e06ea8c168c1c0dd5000c0164464b3001306c307237540031323302300115980099baf30663074375400660ee60e86ea80122b30013375e60ca60e86ea8004c1dcc1d0dd5001c4c96600260c060e86ea8006266e1cdd6983c183a9baa001375a60cc60ea6ea801229410731833183a1baa0018b20e48b20e43076307337540031641c460c860e46ea8c18cc1c8dd500120548acc004cc88ca6002003008803a00222259800801456600200314a314a083b22b30010018a508acc004cc896600260e260ec6ea8006264b30013375e60f660f06ea8004c1ecc1e0dd5183d983c1baa0038acc004cdd79835183c1baa00130693078375460f660f06ea800e266e1e60026eacc1a4c1e0dd5000cdd7183d803cdd71834803a032300e375a60d260f06ea800e2941076452820ec307a307737540031641d460f00046602000a6eb4c1e000633001003983c8014c1e4005003452820e641d883b0dd6183118381baa0653307230613070375460b460e06ea8004cc1c9301054455534472004bd7044c8ca60026eacc1d4c1d8006660526eacc064c1c8dd50339bae30633072375460b860e46ea800eb3001302e0068cc00401e00d48002444b3001301b375a60cc60ea6ea800e266e00004dd69833183a9baa0038b20e640b51641c09112cc004cdc3acc004c1bcc04c00a29000456600260f200513259800980d9bae307500189bad30760018b20e830780028b20ec41cc00315980099b87337026eb4c1e0c1d4dd5183c0021bad30783075375460f000a00313300c3758604a60ea6ea80188c8c1c6600200b375c60f4003375c60f460f600280c0dd6183c983b1baa0018b20e68b20e6183a800cc0041966eb8c1ccc1c0dd5182d18381baa001801c00900945906e45906e45906e22b3001302f00f8cc004cc014dd6183718359baa02b375860b860d66ea80b26eb4c174c1acdd50164dd6980f18359baa02c982e18359baa04b48889660026605a6eb0c1c8c1bcdd50321bae3022306f375460b260de6ea80062b300133229800801401a4464b3001306d307337540031323302400115980099baf30673075375400660f060ea6ea80122b30013375e60cc60ea6ea8004c1e0c1d4dd5001c4c966002607460ea6ea8006264b3001337120033001375660d060ee6ea8c1a0c1dcdd50034dd7183d003cdd7183d183d803a030899b870013029375a60d060ee6ea801629410751bad30793076375400314a083a0c19cc1d4dd5000c59073459073183b983a1baa0018b20e430653073375460c860e66ea800902b198161bac3072306f37540c86eb8c184c1bcdd5182c98379baa001330713060306f375460b260de6ea8004cc1c53001054455534472004bd7044c8ca60026eacc1d0c1d4006660506eacc060c1c4dd50331bae30623071375460b660e26ea800f3001006a4001225980099b88375a60c860e66ea80092000899b80001375a60c860e66ea800a2c83890192444b30013370eb3001306e30120028a4001159800983c00144c96600260346eb8c1d000626eb4c1d40062c8398c1dc00a2c83a9072000c56600266e1ccdc09bad30773074375460ee0086eb4c1dcc1d0dd5183b802800c4cc02cdd61812183a1baa00623230709800802cdd7183c800cdd7183c983d000a02e375860f060ea6ea80062c83922c839060e800330010649bae3072306f375460b260de6ea800600700240211641b51641b48a5041a48349069111919800800801912cc00400629462b3001300330700018998010011838800c52820d641b84b300133710002900044c070006200283410670896600266e2000520008a60103d87a8000899805001000a0ca22646644b30013046001899912cc004c0f8c10cdd500144c8c8c8cc8966002609a00713259800982218249baa0018991919912cc004c14800e264b30013049001899192cc004c15400a01d1641486eb8c14c004c13cdd5003c566002607a00315980098279baa00780645905045904d209a304d375400d16413c6eb8c13c004dd71827801182780098251baa0018b2090304c0058b2094375c609400260940046094002609200260886ea800a2c8210c1140044c010c1180162c8218dd7182180098220009bac304200241006e1d200e899180118208019bad303f00240f51323002303f003375a607a00481da2c81c8606c002606a002606800260660026064002605a6ea80062c8158c0bc0162c8168dd6181680098168011816800981600098139baa0058b204a1919192cc004c074c088dd5000c4c8cc8966002605400313259800981098131baa00189919191919191919191919194c004c0d8006606c017303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c004911111111112cc004c108032266040608202e26604001426604001226604001026604000e26604000c26604000a2660400082660400062b30013038303d37540051323232323298009bae30460019bae30460059bae30460049bae30460039bae304600248888966002609800d13303700b225980080144cc0ac05c40a2264b30013045304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590490c118004c114004c110004c10c004c0f8dd500145903c45903f0c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0bc004c0b8004c0b4004c0b0004c09cdd5000c590251814800c590271bae302700130280013023375400316408464b3001301d3022375400313259800980e98119baa0018981398121baa0018b2044301530233754602860466ea8c098c08cdd5000c59021198049bac30133022375402e4646600200260066eacc054c090dd5180a98121baa0022259800800c528456600266e3cdd718140008114528c4cc008008c0a4005023204c30010012259800800c52f5c113302430213025001330020023026001408c44b3001301c30213754005132323259800981480144cc018c0a000c4c966002604000315980098131baa002802c590274566002602800313232598009816001401e2c8148dd7181500098131baa0028acc004c07c00626464b3001302c002803c59029181500098131baa0028b204840908120c090dd5000c590261813800981380098111baa0028b204030040042259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301500189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130120018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164078456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d95900201", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + mintValidator: ScriptHash, + stakeValidator: ScriptHash, + managementValidator: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201" + : "5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141", + Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash]), + [proxyPolicyId, mintValidator, stakeValidator, managementValidator], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolOrchestratorProtocolOrchestratorPublish { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + mintValidator: ScriptHash, + stakeValidator: ScriptHash, + managementValidator: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201" + : "5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141", + Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash]), + [proxyPolicyId, mintValidator, stakeValidator, managementValidator], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolOrchestratorProtocolOrchestratorElse { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + mintValidator: ScriptHash, + stakeValidator: ScriptHash, + managementValidator: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "592cb3010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130280028cc00401a33001001804c02100b402100c402102540220110088042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002605c0071980080646600200900f807202280720248072056375a00300d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488966002602060386ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009817001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009819801c0520268180dd7000a066303000140b86eb8004c0bc0090301816800a056807202280720248072056375800300d806a05c302b00140a4605600500b805c02e0168160c0a40050271bad00130280028042052302600140906eb4004c09400a00a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d2444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0b800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0cc00e02901340c06eb80050331818000a05c375c002605e0048180c0b400502b40390114039012403902b1bac001806c03502e1815800a052302b002805c02e01700b40b060520028138dd6800981400140210291813000a048375a002604a005005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406922323300100100322330030013002002911192cc004c044006264b3001001801c4c9660020030048024012264b3001302500380340150221bad001802204a30220014080603c6ea80122b300130090018acc004c078dd5002400e00480fa00480d901b180e1baa0039112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003132598009811000c56600266e252004302100180344c966002604e00913259800980b800c56600260486ea801a01300840951598009807800c4c9660020030098992cc00400601500a80544c966002605600700c805a050375a00300a40ac60500028130c090dd50034566002602c00315980098121baa006804c02102540210212042408460446ea801600e8120c034c08400501f40190231baa001802c01600b005409860460028108c08c00a007003801c00d0241810800a03e301d3754007001406891111112cc004c050c080dd500744c9660020030188992cc004006264b300100180d44c96600200313259800800c072264b300100180ec076264b3001302c0038acc004c06cc09cdd500344c96600200301f8992cc004006041020899912cc00400604513259800800c08e0471332259800800c096264b3001001813409a04d1332259800800c0a2264b3001001814c0a60531332259800800c0ae264b30010018992cc00400605b13259800800c566002607800513301a00e225980080144cc070034896600200519800803c6600200b198009b87480226e1d200a9b874803122232598009819981f9baa01c8992cc00400606f13259800800c4c9660020030398992cc0040062b30013048002899912cc004c0e4006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240bd042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009818800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084817a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130380018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109030410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c566002607400313259800800c0f6264b300100181f40fa264b3001304d003899815800912cc00400a00f13259800800c660020031300230500038212060821410a0850424144609c004826207e8250dd6000c0fa07c8268c12800504818231baa0058acc004c028006264b300100181ec4c96600200303e81f44c966002609a00713302b0012259800801401e264b30010018cc0040062600460a000704240c5042821410a0848288c13800904c40fd04a1bac00181f40f904d1825000a0903046375400b1598009804800c4c96600200303d8992cc00400607d03e8992cc004c13400e26605600244b3001002803c4c96600200319800800c4c008c14000e084818a08504282141090511827001209881fa094375800303e81f209a304a0014120608c6ea80162b300130080018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c56600266e1d200e0018992cc00400607b13259800800c0fa07d132598009826801c4cc0ac00489660020050078992cc00400633001001898011828001c109032410a08504282120a2304e002413103f41286eb000607d03e413460940028240c118dd5002c0f10432086410c82190432086410c82184c966002607000313259800800c0f2264b30010018acc004c12c00a3300100180440f502e40f504840f607b03d81ea0983049001411c608a6ea800a2b300130300018992cc00400607913259800800c5660026096005159800981d18231baa0018992cc00400607d13259800800c4c9660020030408992cc0040062b3001304f0028cc00400e33001001806410502b410502b410504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa00181ea08881ea09081ec0f607b03d413060920028238c114dd500140ed04220843043375400260866ea800e074822a07503a81d40e90491823000a088304600281c40e2071038411c60880028210c100dd500e40d903d09981080c112cc00400a330012225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064105222232330010010052259800800c4016264b3001001899802182580100344cc014c12c008cc00c00c0050491825800a0909b80480064608a608c608c0032304530460019ba548001222222323232323259800800c4c966002608060986ea800a264b3001001822c4c96600200313259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc004006264b3001001826c4c96600200313259800800c13e264b30010018992cc0040060a313259800800c4c9660020030538992cc004006264b300100182ac4c96600200313259800800c15e264b30010018992cc0040060b313259800800c16a0b51332259800800c172264b30010018acc004c1a800a330010188cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c164c194dd500344c96600200305e8992cc0040060bf05f82fc17e26644b3001001830c4c966002003062831418a0c51332259800800c192264b3001001832c1960cb065899912cc0040060cf13259800800c1a20d106883444cc896600200306a8992cc0040060d706b835c1ae264b3001307900389982b809112cc00400a330010128cc004c0c8c1dcdd503248c1ecc1f0c1f0c1f000644646600200200644b30010018a508acc004c00cc1f8006294626600400460fe00283c107c48c1ecc1f0c1f0c1f0c1f0c1f0c1f0c1f00066e0120029ba5480092222223259800cc004888c8cc896600260ee005159800983b9841809baa0018a60103d87a80008a6103d8798000420405159800983b001456600260ec6106026ea80062980103d87a80008a6103d87b80004204051332259800983c800c530103d87b80008acc004c1c4006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000421004842008dd69844809843009baa0038a6103d8798000420c04841808dd69843809842009baa0033083013754002840809081011840809baa00130020033001003919191919912cc004c1dc00a29422b300130760028cc004cdd79843809842009baa0014c103d87b8000a50a51420405132332259800983d0014528c56600260e40051332259800983a1844009baa3044308901375400d133710004003133712004002843008dd69845009843809baa0035980098391843009baa3042308701375400f100189806000a108028a50421004842008c21004dd50009bad3088013085013754008610e026108026ea8005081012102023081013754002610a02610c020066108026102026ea8004c20c04004c1fcdd5000cc0e4c1f8dd5003a444b300130743080013754003132330093758610a026104026ea81c08cdd79843009841809baa001002308401308101375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c21804c20c04dd50014c21804c20c04dd5000c8c8c96600260e2610a026ea8c22404c2280400a2003132598009839000c4c02ccc22404dd418061bad308a01308701375400497ae08acc004c1e800620051002421004842008c21404dd5000a1060230880100130840137540028029300103d87b8000a50a514200051980099baf9800981f1841809baa002981f1841809baa001919192cc004c1c4c21404dd518448098450080144006264b300130720018980599844809ba83044375a611402610e026ea80092f5c1159800983d000c400a2004842009084011842809baa001420c046110020026108026ea8005005260103d8798000a50a5142000514a0840009080012100023084013081013754002600e6102026ea81bd07e22b30013069307d375461020264660020026eb0c0e8c1fcdd5184100983f9baa06c2259800800c52f5c303d87a80008101800044c8cc89660033001306e3082013754610c020074a14a284000a26610a0330014a14c103d87a8000a60103d87980004200046610a026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c2200400400e29462660040046112020028410090860144cc21406600294298103d87a8000a60103d87980004200046610a026e9c0092f5c1133085019800a51a60103d87a8000a60103d87980004200046610a026e9ccc21404dd400080125eb81080012100023758610802610a020026eb4c21004008cc008008c210040050810144c8c96600330012259800800c520008980399801001184300800a10602984180984200800cc8cc004004dd6181e9840809baa06e2259800800c52f5c113308401374e64646610c02610e020046610c0260806108026ea8004cc21804dd499912998420099b96491165369675374727563747572652e636f6e746578743a2000373266078611202610c026ea80052201001533084013372c92011d5369675374727563747572652e626f64795f70726f7465637465643a20003732660786082610c026ea80052201001533084013372c92011b5369675374727563747572652e65787465726e616c5f6161643a20003732660786084610c026ea80052201001533084013372c9201165369675374727563747572652e7061796c6f61643a2000373266078601c610c026ea8005220100132533085013372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326607a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002421404842808dc68009bae308901308601375400266e28c008dd718209843009baa0013371460046eb8c108c21804dd500098011bae300e3086013754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002420c04841808dc6800981f1984300a610b4a5369676e6174757265310033086013087013084013754610e026108026ea8004cc218053010140003308601375200e97ae04bd701843009843808009bac30850100133002002308601001420c05300630800137540dd375660046100026ea81b922222323233001001006223259800983e000c4c94cc22004cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660806ea400522010013259800983f1845009baa001899194c004dd7184800800cdd7184800984880800cdd71848008012444a6611c029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153308e013372c92011b7665726966795f65643235353139207075626c69635f6b65793a200037326608c6ea4005220100153308e013372c9201187665726966795f65643235353139207061796c6f61643a200037326608c6ea4009220100153308e013372c92011a7665726966795f65643235353139207369676e61747572653a200037326608c6ea400d22010013253308f013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326608f3001001a60103d87a8000a60103d879800042380491010010019800800c00a006b950c24004004dd61847009845809baa0018a998448099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660826ea400922010014a0844008c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c612002002009130473308f01374e00297ae08998018019848808012114023758611e02002846808dd71846009844809baa0028acc004c1d0006264a661100266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416c6c4f6620726573756c743a20003732660833001001a60103d87a8000a60103d8798000422004910100100132330010010022259800800c528c5660026600c00c611e020031330020023090010018a50422404846808dd61846009844809baa0028acc004c1ec006264a661100266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660806ea0c014005220100132533089013372c92010e416e794f6620726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013301100123300500500137586118026112026ea800a2b3001307d00189919912998450099b96490112436865636b696e672041744c656173743a20003732660846ea000922010013253308b013372c92011941744c656173742073617469736669656420636f756e743a20003732660866ea000522010013253308c013372c92011041744c6561737420726573756c743a20003732660893001001a60103d87a8000a60103d8798000422c04910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002846808c24404004cc008008c2480400508f011bad308d010013758611a02611c020026112026ea800a2b3001304d0018992998440099b9649111436865636b696e67204265666f72653a20003732660806ea0005220100132533089013372c92010f4265666f726520726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc49bad308f01308c0137540020071337106eb4c23c04c23004dd5000801a112028a50422404611c020026114026ea8c114c22804dd50039bad308c0130890137540051598009826000c4c94cc22004cdcb24910436865636b696e672041667465723a20003732660806ea0005220100132533089013372c92010e416674657220726573756c743a20003732660833001001a60103d87a8000a60103d87980004220049101001001323259800983b9845809baa0018acc004c1dcc22c04dd518478098480080144cdc48019bad308f01308c0137540031337100066eb4c23c04c23004dd5000a112028a50422404611c020026114026ea8c23404c22804dd50039bad308c013089013754005132533088013372c920111436865636b696e67205363726970743a20003732660806ea4005220100132533089013372c92010f53637269707420726573756c743a20003732660833001001a60103d87a8000a60103d879800042200491010010013232330010010082259800800c528456600266ebc00cc23004c24004006294626600400461220200284500908e01180719846009ba90014bd701bae308c01308901375400484300908601210c02421804843009086011843809baa001300500544c8cc88cc008008004896600200314a115980099baf30820130860100130073308501375200697ae08a51899801001184380800a100024210046eacc00cc20404dd50379bae3083010018a9983f2481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641f464b30013073001899841009ba907b3308201308301308001375406a97ae08acc004c1ac006266104026ea41eccc20804c0ecc20004dd501aa5eb822b30013042001899841009ba907b33082013002308001375406a97ae08acc004cdc3a401c0031330820137520f66610402600c6100026ea80d52f5c11598009822000c4cc20804dd483d19841009841809842009842009842009842009840009baa0354bd70456600260860031330820137520f466104026106026108026108026108026108026108026100026ea80d52f5c1159800983a000c4cc20804dd483c998410098041840009baa0354bd7044cc20804dd483c9984100981e1840009baa0354bd7020fa41f483e907d20fa41f483e8c1f8dd5184100983f9baa00823082013083013083013083013083013083013083010018a9983e2481466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641ed153307c4912f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641ec6e50dd980320dc8302264b30010018acc004c1acc1dcdd5000c4c9660020030708992cc0040060e3071899912cc0040060e713259800800c1d20e9074899912cc0040060ed13259800800c1de0ef0778992cc004c2140400e2b300100783c44c96600200307983cc1e60f31332259800800c1ee264b300100183e41f20f907c8992cc004c2280400e2602061140202307d421c046eb800508a01184380800a10a02375c002610c02010843808c2100401d0820141e1082011bad00183ba10a023082010014200046eb4004c2040400a0e8841008c1fc00507d1bac001307e002838c1c507f183e000a0f43078375400306f41d506f837c1be0de83e8c1e800907841b10761bae00141e460ec00283a0dd7000983a80120ec307300141c46eb8004c1c80090731838000a0dc375c00260de0048380c1b400506b1bae001306c00241b460d40028340c198dd50034175063417501a417501a417501a417501a417501a417501a417501a417501a417501a417506741760bb05d82ea0d6306800141986eb0004c19c00a0b505a41a060ca0028318c19400a0b105882c41610661831800a0c2306300282b415a0ad056419060c200282f8c18400a0a905482a4151062182f800a0ba305f002829414a0a5052418060ba00282d8c17400a0a1050828414105e182d800a0b2305b002827413a09d04e417060b200282b8c16400a09904c826413105a182b800a0aa3057002825412a09504a416060aa0028298c15400a09104882441210561829800a0a23053002823411a08d046415060a20028278c134dd5001411104a111194c004006009003400444464b300130460018992cc00400600d13259800800c01e00f007803c4c96600260b400700580420ae375c00282d0c15c00505518299baa0038acc004c0f8006264b300100180344c966002003007803c4c96600260b40071330380012259800801401e264b30010018cc00402a00313002305d003402900b805c02e01682f0c16c00905940210571bac001803c01d05a182b800a0aa305337540071598009822800c4c9660020030068992cc00400600f0078992cc004c16800e26607000244b3001002803c4c9660020031980080540062600460ba006805201700b805c02d05e182d80120b280420ae3758003007803a0b43057001415460a66ea800e2b300130470018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800982e801c4cc0ec004896600200500a8992cc0040063300100d800c4c008c18000d00d403a01d00e80720c2305e002417100b41686eb000601500a417460b400282c0dd6800982c801401d05a182b800a0aa30533754007159800980b800c4c9660020030068992cc00400600f007803c4c96600260b400700580420ae375a003007416860ae00282a8c14cdd5001c566002602c00313259800800c01a264b3001001803c01e00f13259800982d001c01601082b8dd6800c01d05a182b800a0aa30533754007159800980a800c4c9660020030068992cc00400600f007803c01e264b3001305a003802c0210571bae001416860ae00282a8c14cdd5001c01505020a04140828105020a0414060a26ea800a087043821c10d051180318259baa32332253304c3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412922010013259800982118271baa00189929982719b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982198281baa0018992cc0040062b300130453051375400313259800800c12e264b3001001826413209904c899912cc00400609d13259800982d8014401a09e82c0c1640050571bae0013058002416460ac00282a0c148dd5000c12904f412a09504a82520ae305430513754003153304f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164138601860a06ea8c02cc140dd5000982918279baa0018a99826a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164130646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698291baa300d3052375400444b30010018a508acc004cdc79bae305600104f8a51899801001182b800a0a041511300b330530014bd7044cc00c00cc15400904e1829800a0a230010013758600e60986ea80e8896600200314bd7044cc13cc130c140004cc008008c14400504e1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a45980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c826104c1bac304f002375a609a0026466ec0dd418268009ba7304e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a4003337149101023a200098008054c14c00600a805100a182a80144ca6002015305200199b8a489023a200098008054c14c006600e66008008004805100a182a80120a63055001414866e29220102207d00003413c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209e3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e414466e2ccdc0000acc004cdc4000a40291481822903720a2004401866e0c00520203370c002901019b8e00400241386eb800d0521b8a4881022c20002232330010010032259800981f800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000341248248c01801913259800800c0e207113259800800c0e6264b300100181d40ea07503a899912cc00400607913259800800c566002609600513259800981d98239baa0028992cc00400607f13259800800c4c9660020030418992cc004006264b3001001821c4c9660020030448224112089132598009829801c5660026084609c6ea801a264b300100182344c966002003047823c11e08f1332259800800c126264b3001001825412a09504a8992cc004c16400e264b300130490018992cc00400609b13259800800c13a09d04e82744c96600260ba007012827a0b4375c00282e8c168005058182b1baa00b8acc004c1040062b30013056375401700f82620ae82620a6414c60a86ea802a09682b0dd7000a0b2305600141506eb8004c1540090561829800a0a2304f375400d045413104541406eb80050531828000a09c3050002821410a0850424144609c0028260c13800a081040820410104f1826000a0943048375400503e41142600e609601103d412103d81ec0f607a8260c1240050471bae00130480024124608c0028220dd6000c0e20708238c110009042206480ea06480ea264b3001001819c0ce06713230033042004375a0030334108607e00481ea264b3001001818c0c606313230033040004375a0030314100607a00481da05c81ca05d02e81740b903d181d000a070303a00281640b205902c40ec607000281b0dd6800981b80140a5038181a800a066375a002606800502640d460640028180dd60009818801408e0468190c0bc00502d1bac001302e002810408102f1816000a0543028375400d01e409501e40a46eb000603b01d40b060520028138c0a400a03701b80dc06d02a1813800a04a302700280cc06603301940a0604a0028118c084dd5007405d01e088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201" + : "5915b5010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa002899191919912cc004c08800e266010604200a26601600400d16407c603e0026eb4c07c008c07c004c078004c064dd500145901748966002602060306ea800a264646464653001375a6042003375a6042009375a604200730210024888966002604c00b13300c302500913300f00100a8b204618108009810000980f800980f000980c9baa0028b202e912cc004c040c060dd500144c8c8c8c8ca60026eb0c0840066eb4c0840126eb4c08400e604200491112cc004c098016266018604a01226601e0022646644b30013029003806c590261bae3026001375c604c00a604c00916408c30210013020001301f001301e0013019375400516405d22598009808180c1baa002899191919194c004dd61810800cdd698108024dd69810801cc0840092222598009813002c4cc030c0940244cc03c0044c8cc8966002605200700d8b204c375c604c0026eb8c098014c0980122c811860420026040002603e002603c00260326ea800a2c80ba4464b30013011001899192cc004c08000a0091640746eb4c078004c068dd5001c5660026010003159800980d1baa00380145901b45901820303018375400522598009808180c1baa00289919192cc004c08000a26464b300130150018acc004c078dd5001401a2c80fa2b3001300c001899192cc004c09000a0111640846eb4c088004c078dd500145660026028003159800980f1baa00280345901f45901c2038407060386ea8004c07c00e2c80e8c966002603800315980099b8948010c06c0062d1300a301b00140691640746ea8c078004c078004c064dd50014590172444444b30013014301c375401d13232323322598009813001c4c966002603460446ea800626464646464653001302c0019bac302c0059bad302c0049bad302c0039816001244444b3001303200689980e9bac303100b225980080144cc07c0188966002005133017005133017009198009b87480226e1d200a9b874803122232598009816981a9baa01589919192cc004c0f400a2646644b300130330028992cc004c1040062660586eb0c1000048966002005004899812982100109800982180120808b207c303c3754007159800981500144c966002608200313302c3758608000244b300100280244cc094c1080084c004c10c00904045903e181e1baa0038acc004c0c800a264b300130410018998161bac30400012259800801401226604c608400426002608600482022c81f0c0f0dd5001c5660026068005132598009820800c4cc0b0dd61820000912cc00400a009133026304200213001304300241011640f860786ea800e2b3001300a0028992cc004c1040062660586eb0c1000048966002005004899813982100109800982180120808b207c303c3754007159800980480144c966002608200313302c3758608000244b300100280244cc09cc1080084c004c10c00904045903e181e1baa0038acc004c02000a264b300130410018998161bac304000122598008014012266050608400426002608600482022c81f0c0f0dd5001c56600266e1d200e0028992cc004c1040062660586eb0c1000048966002005004899814182100109800982180120808b207c303c37540071640e881d103a207440e881d103a207430393754002264b300130320018992cc004c100006266052607e00200f1640f460766ea800e2b300130290018992cc004c100006264b30013034303c3754003132323259800982200144cc090c10c00c4cc09000402e2c8208c108004c108004c0f4dd5000c5903b181f800c5903d181d9baa0038b207240e460726ea8008c0f000e2c81d0c0ec004c0ec004c0d8dd500ac5903409981200a912cc00400a330012303b303c303c0019181d981e000cdd2a400122232598009819000c4c8c96600260820050048b207c375c607e00260766ea800e2b300130290018992cc004c1000062660566eb0c0fc00489660020050058cc00401e6082005130013042002401c81fa2c81e8c0ecdd5001c5660026062003132598009820000c4cc0acdd6181f800912cc00400a00b19800803cc10400a260026084004803903f45903d181d9baa0038acc004c0cc0062646644b300130420018998169bac30410012259800801401e33001009982180144c004c11000900920828b207e375a607e002608000260766ea800e2b30013009001899192cc004c10400a0091640f86eb4c0fc004c0ecdd5001c56600260100031323259800982080140122c81f0dd6981f800981d9baa0038acc004c01c00626464b3001304100280245903e1bae303f001303b37540071640e481c9039207240e481c9039181c9baa00248888cc8966002606860786ea800a26464646464646464646464653001304c0019826005cc13002a6098013304c0089826003cc13001a609800b304c0049826001cdd61826001244444444444b3001305800c89980c182b80b89980c00509980c00489980c00409980c00389980c00309980c00289980c00209980c0018acc004c12cc14cdd500144c8c8c8c8ca60026eb8c1700066eb8c1700166eb8c1700126eb8c17000e6eb8c1700092222259800983100344cc13402c896600200513304b01719800981418301baa05191832183298329832800c88c8cc00400400c896600200314a115980098019833800c528c4cc008008c1a000506220ca918321832983298329832983298329832800cdc024005374a9001244444464b300198009111919912cc004c19000a2b30013064306c375400314c103d87a80008a6103d879800041ad1598009831801456600260c660d86ea80062980103d87a80008a6103d87b800041ad13322598009833000c530103d87b80008acc004c174006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041b88370dd6983918379baa0038a6103d879800041b48368dd6983818369baa003306c3754002835906b18351baa00130020033001003919191919912cc004c19000a29422b300130630028cc004cdd7983818369baa0014c103d87b8000a50a5141ad13233225980098338014528c56600260bc0051332259800983018389baa303a3072375400d1337100040031337120040028380dd6983998381baa00359800982f18379baa30383070375400f100189806000a0dc8a5041b88370c1b4dd50009bad3071306e375400860e060da6ea800506b20d6306a375400260dc60de00660da60d46ea8004c1b0004c1a0dd5000cc0bcc19cdd5003a444b300130613069375400313233009375860dc60d66ea81748cdd7983798361baa001002306d306a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1bcc1b0dd50014c1bcc1b0dd5000c8c8c96600260ba60dc6ea8c1c8c1cc00a200313259800982f000c4c02ccc1c8dd418061bad30733070375400497ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d87b8000a50a5141a91980099baf9800981a18361baa002981a18361baa001919192cc004c174c1b8dd51839183980144006264b3001305e00189805998391ba8337006eb4c1ccc1c0dd50012400297ae08acc004c19c0062005100241b88370c1b8dd5000a0da3071001306d37540028029300103d8798000a50a5141a914a0835106a20d4306d306a3754002600e60d46ea817106822b300130553066375460d464660020026eb0c0c0c1a0dd5183598341baa0592259800800c52f5c303d87a80008101800044c8cc89660033001305a306b375460de0074a14a283522660dd30014a14c103d87a8000a60103d879800041a8660dc6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1c400400e294626600400460e4002836106f44cc1ba600294298103d87a8000a60103d879800041a8660dc6e9c0092f5c113306e9800a51a60103d87a8000a60103d879800041a8660dc6e9ccc1b8dd400080125eb8106a20d4375860da60dc0026eb4c1b4008cc008008c1b400506a44c8c9660033001306c306d00199198008009bac3033306a37540b644b30010018a5eb822660da6e9cc8c8cc1bcc1c0008cc1bcc0d8c1b4dd5000998379ba9332233714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241bc8378dc68009bae3072306f375400266e28c008dd7181b98379baa0013371460046eb8c0e0c1bcdd500098011bae300e306f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241b48368dc6800981a19837a610b4a5369676e617475726531003306f3070306d375460e060da6ea8004cc1bd3010140003306f375200e97ae04bd70183798380009bac306e00133002002306f00141b13006306937540b73756600460d26ea816d222232330010010052232598009833800c4c8c96600260d260e26ea8006264653001375c60ee005375c60ee60f0003375c60ee002b95183b8009bac30753072375400314a08380c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60ee0020091303b33076374e00297ae0899801801983c00120e4375860ec00283a0dd7183998381baa0028acc004c178006264660020026eb0c1d0c1c4dd5001912cc00400629462b3001330050053075001899801001183b000c52820e041cd1598009833000c4cc038dd6183998381baa0022330040040018acc004c1a000626466e24dd6983a00099198008009bac307530760022259800800c52000899912cc004cc02002000a26022003100141cc60ec0026600400460ee00283a0c1c0dd50014566002607c003132332259800983098391baa0028acc004c184c1c8dd5183b183b801c4cdc49bad3076307337540040031337106eb4c1d8c1ccdd5001000a0e28a5041c460e80026eb4c1d0c1c4dd500198381baa30383070375400b159800981e800c4c8cc896600260c260e46ea800a2b300130613072375460ec60ee0071337120026eb4c1d8c1ccdd500144cdc40009bad307630733754004838a2941071183a0009bad30743071375400660e06ea8c1ccc1c0dd5002c4c8c8cc004004018896600200314a115980099baf003307230760018a51899801001183b800a0e241d06016660e460e660e06ea80092f5c0837106e20dc41b8837106e18371baa00144c8cc88cc008008004896600200314a115980099baf306b306f00130073306e375200697ae08a518998010011838000a0d441b46eacc00cc1a8dd502e1bae306c0018b20ce32598009830000c4cc1acdd483299835983618349baa02e4bd70456600260ae00313306b37520ca660d6606260d26ea80b92f5c1159800981a800c4cc1acdd483299835980118349baa02e4bd70456600266e1d200e0018998359ba90653306b30063069375405c97ae08acc004c0dc0062660d66ea4190cc1acc1b0c1b4c1b4c1b4c1b4c1a4dd501725eb822b300130360018998359ba90643306b306c306d306d306d306d306d3069375405c97ae08acc004c1840062660d66ea418ccc1acc020c1a4dd501725eb822660d66ea418ccc1acc0c8c1a4dd501725eb8106720ce419c833906720ce419c60ce6ea8c1acc1a0dd500411835983618361836183618361836000c590654590651b94376600c8992cc004c160c180dd5000c4c8c8c8cc896600260d4007132323322598009837001c4c02cc1b80322c8358dd718358009bae306b002306b001375860d200b16419c6eb4c19c004dd698338011833800983300098309baa0018b20be3063002418516417c305c001305b001305a001305900130543754005164149164154304c001304b001304a00130490013048001304700130460013045001304400130430013042001303d37540051640ec600660766ea8c8c8c966002606a607a6ea8006264b30013035303e375400313259800981b981f9baa0018991919912cc004c12000e200b164114608a0026eb8c114008c114004c100dd5000c5903e1821181f9baa0018b207a3007303e3754600c607c6ea8c104c0f8dd5000c5903c19198008009bac3006303e375406044b30010018a60103d87a80008992cc004c8cc004004c014dd5980498209baa30093041375400444b30010018a508acc004cdc79bae304500103f8a518998010011823000a080410d13007330420014bd7044cc00c00cc11000903e1821000a08030010012259800800c52f5c113303f303c304000133002002304100140f8600200289919912cc004c0f800626644b30013033303b375400513232323322598009822801c4c966002607260826ea8006264646644b3001304a0038992cc004c0f800626464b3001304d00280745904a1bae304b0013047375400f159800981a800c566002608e6ea801e0191641211641148228c114dd50034590471bae3047001375c608e004608e00260846ea80062c8200c1100162c8210dd71821000982100118210009820800981e1baa0028b2074303d00113004303e0058b2076375c607600260780026eb0c0e800903822646004606e0066eb4c0d400903344c8c008c0d400cdd6981980120628b205e1816000981580098150009814800981400098119baa0018b204230250058b204637586046002604600460460026044002603a6ea803a2c80d844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141", + Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash]), + [proxyPolicyId, mintValidator, stakeValidator, managementValidator], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolStakeProtocolStakeWithdraw { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441" + : "592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolStakeProtocolStakePublish { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441" + : "592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0ProtocolStakeProtocolStakeElse { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594076010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49a96578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d65720016488888888888888966003300130143754035370e90034dc3a4001370e9002244446465300130193754003301d006980e8012444b300130060038cc004c080c074dd500248c084c088c088006460426044003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246042604460446044604460446044604460446044003374a90012444444444446466446464b30010018cc004889660026034605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c07c0062b300130353754005007803206c8acc004c050006264b3001001803c4c966002003008804402201113259800981e001c02a01281c8dd7000a078303900140dc606a6ea800a2b3001301e0018992cc00400600f13259800981d801402601081c0c0e4005037181a9baa002803206440c88190c0ccdd5000c01500b4015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a9112cc004c068c0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981a800c56600266e252004303400180344c9660026074009132598009810800c566002606e6ea801a01300840e1159800980b000c4c9660020030098992cc00400601500a80544c966002607c00700c805a076375a00300a40f8607600281c8c0dcdd500345660026040003159800981b9baa006804c0210384021034206840d0606a6ea801600e81b8c050c0d000503240190361baa001802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b522259800980d18179baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026074007008803a06e375a00300640e8606e00281a8dd7000981b001206e303400140c860606ea800e002816a44464b3001301b0018992cc00400600713259800800c0120090048992cc004c0e000e00d00540d46eb400600881c0c0d400503318189baa0048acc004c0400062b3001303137540090038012064801205c40b8605e6ea800d222298009112cc004c078c0ccdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981f80146600200d19800800c0260108062010807201081e20110088044021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130450038cc00403233001004807c039012403901440390421bad001806a08a30420014100608400500b805c02e0168218c10000503e1bad001303f0028042080303d00140ec6eb4004c0f000a00a81e8c0e8005038181d001400e007003801a076303800140d860686ea800e002818a444b3001301e3033375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12800e029013411c6eb800504a1823800a08a375c002608c0048238c1100050424039012403901440390421bac001806c0350451821000a0803042002805c02e01700b410c608000281f0dd6800981f8014021040181e800a076375a002607800500540f4607400281c0c0e800a007003801c00d03b181c000a06c3034375400700140c522259800980f18199baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002608a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026094007014809a08e375c0028250c11c0050451bae0013046002411c6088002821201c809201c80a201c8210dd6000c03601a8228c1080050401821001402e01700b805a086304000140f86eb4004c0fc00a0108200c0f400503b1bad001303c002802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0624888966002603e60686ea8026264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009820001c566002604c60766ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013050002899816007112cc00400a26605c01a44b30010028cc00401e330010058992cc004c0ecc140dd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982c80144cc8966002608200313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252052825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40a504a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009820000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094815209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b300130420018992cc00400608b13259800800c11a08d13259800982f001c4cc0e800489660020050078992cc00400633001001898011830801c12902a412a09504a82520c4305f0024175047416c6eb000608d046417860b600282c8c15cdd5002c566002606a00313259800800c116264b3001001823411a264b3001305e00389981d000912cc00400a00f13259800800c660020031300230610038252056825412a09504a418860be00482ea08e82d8dd6000c11a08c82f0c16c005059182b9baa0058acc004c0d0006264b3001001822c4c96600200304682344c96600260bc00713303a0012259800801401e264b30010018cc0040062600460c200704a40ad04a825412a0948310c17c00905d411d05b1bac001823411905e182d800a0b23057375400b1598009819800c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c17800e26607400244b3001002803c4c96600200319800800c4c008c18400e094816209504a8254129062182f80120ba823a0b6375800304682320bc305b001416460ae6ea801608882a105420a8415082a105420a84150264b300130400018992cc00400608913259800800c56600260b800519800800c02208a814a08a82ca08b045822c11505d182d000a0b030563754005159800981a800c4c9660020030448992cc0040062b3001305c0028acc004c108c15cdd5000c4c9660020030468992cc004006264b300100182444c966002003159800983000146600200719800800c0320928172092817209282ea093049824c125061182f000a0b8305e002823c11e08f047417c60b800282d0c160dd5000c1150554115059411608b045822a0ba305a001416060ac6ea800a0868299053182a1baa001305437540070424159042821410a08482d0c15c005055182b801410208104082020b03055001414c60a26ea806607c82704cc0c00548966002005133223259800981f982a1baa001899912cc004c104c158dd5000c660026eb4c168c15cdd5000cc168c15cdd5181c182b9baa02b9112cc00400a298103d87a80008acc004c1100062606a660b860ba00497ae08cc00400e60bc005337000029000a006415c82da44646600200200644b30010018a508acc004c00cc178006294626600400460be00282c105c48c16cc170c170c170c170c170c170c170c170c170c170c170006444b300130393059375460ba646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303e305e375460c40074a14a282e22660c330014a14c103d87a8000a60103d87980004170660c26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c19000400e294626600400460ca00282f106244cc186600294298103d87a8000a60103d87980004170660c26e9c0092f5c11330619800a51a60103d87a8000a60103d87980004170660c26e9ccc184dd400080125eb8105c20b8375860c060c20026eb4c180008cc008008c18000505d44ca6002003004801d200040044444b30010038acc00400a2003153305c49112657870656374205b5d203d206c6973745f620016417d159800801454cc1712411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c4007306200299912cc004c01c00a266e0000cdd6982098301baa0028a9982f24811a6578706563742076616c69646174696f6e2872657175657374290016417460c20066eb4c18400900420be417d153305849012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e6469636573290016415d222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905d44cc014014c19001105d1bae305d001375a60bc00260c000282f0c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064179133005005306500441786eb8c178004dd5982f8009830800a0be14bd6f7b6300a4001222598009822182c9baa0038992cc00400600513259800800c00e0070038992cc004c18400e00b00441786eb40060068308c17800505c182d1baa003800a0ae911919800800801912cc004006297ae0899912cc004cdd79830182e9baa3060305d3754607c60ba6ea8008c0d8cc17cdd4802a5eb822660be00466008008003133004004001416860bc00260be00282e2460b660b860b860b8003222232330010010052259800800c4cc17ccdd81ba9005375000897adef6c608994c004dd7182e800cdd6982f000cc1880092225980099b9000900389983199bb037520126ea00200162b30013371e01200719800804c022005233064337606ea4028dd40008014400500744cc18ccdd81ba900337500046600c00c00282f105e0c18000505e48888c8cc004004014896600200313305f337606ea4014dd300225eb7bdb1822653001375c60ba003375660bc003306200248896600266e4002400e2660c666ec0dd48049ba60080058acc004cdc7804801c6600201300880148cc190cdd81ba900a374c0020051001401d133063337606ea400cdd300119803003000a0bc417830600014179259800800c528c52820b2891111192cc004c11c00600513003001416866e0001000e6e0520009111919800800802112cc004006200913233223322330020020012259800800c400e26530010059bae30610019bad30620019980180198330012012306400141886eacc17c00cdd7182e000998018019830801182f800a0ba911194c0040060090034004444b30010028acc0040062946294105e456600200314a11598009980218300011830000c6600200730610029830800a0068a50416882f105e488966002608860b26ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c19800a330010078cc004016264b3001304d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b300130420018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304c0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009838001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800983a801c0660308390dd7000a0ea307200141c06eb8004c1c40090721837800a0da809a0da375800301280920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001304e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009836801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009839001c05a02a8378dd7000a0e4306f00141b46eb8004c1b800906f1836000a0d480820d4375800300f807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306d003808c04106a1bad001807a0da306a00141a06eb4004c1a400a0188350c19c00506518319baa0048acc004c100006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c966002003012809404a264b3001307000380a404d06d1bad00180920e0306d00141ac6eb4004c1b000a01e8368c1a80050681bad001306900280620d43067001419460c66ea80122b3001303f0018992cc00400601713259800800c03201900c8992cc004c1a800e01d00d419c6eb40060188350c19c00506518319baa0048acc004cdc3a401c00313259800800c02e264b30010018064032019132598009835001c03a01a8338dd6800c03106a1833800a0ca3063375400900a4180830106020c04180830106020c03061375400700940d500940e1009418c60c80028310c19000a00f007803c01d0651831000a0c03062002802c01600b005418c60c000282f0c18000a007003801c00d061182f000a0b8305a3754007001415d2259800800c5268992cc00400629344c96600266e40dd7182d182f0019bae305a0018998020021982e800982f801454cc1652401326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016416060ba00282d8c17400505a4dc4a40013710900024444444444444444444453001306b37540293013013914c004cc0500088cdd7983918379baa3072306f375460a060de6ea8004c120cc1c4dd480125eb8294294506b488ca6002003003801200222259800801440062653001004983b001e6002005375c60e2003375660e4003222223259800980a800c00a2600600283a8c8ca6002003006802a00222259800801440062653001004984000801e6002005375c60f6003375a60f8003005406c8020c1f800907c2809a020401060e800483924646600200200444b30010018a5eb7bdb182264660e466ec0c1bc004dd319198008009bab30710022259800800c52f5bded8c1132330753376060e40026ea0c038dd6983980099801801983b801183a800a0e6330030033074002307200141c1222259800982d000c528c4cdc48009919800800802912cc0040062900044cc896600266ebcc1dcc1d0dd5001003c4cdc0000cc004dd5982a983a1baa0029bae30770069bae3055006405d100141c460ea0026600400460ec002839906d4c00c00d2222222329800911919800800801112cc004006297ae089983d192cc004c18cc1e0dd5000c4c1f0c1e4dd5000c54cc1dd24013965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641d86600a0086eb4c1ec004cc008008c1f000507948888c96600260c660f06ea8006264b30013375e60fa60f46ea8c1f4c1e8dd5182d983d1baa00130533307c375200a97ae08acc004c16660026eacc16cc1e8dd5182d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc0040063300100189983f1ba898009bab305d307c375460ba60f86ea800e00d489045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1070407907083841c20e0840808c1f8c1ecdd5000c1b9078182e183d1baa305b307a375400315330784901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd15330784914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641d86600a008003222232598009831983c1baa0018992cc004cdd7983e983d1baa307d307a375400260a6660f86ea40152f5c1159800982ccc004dd5982d983d1baa001802d2210d7374616b696e675f7661756c74004075132598009832183d1baa0018992cc004006330010018acc004cdd7980e183e1baa0034c103d87a800089983f1ba898009bab305d307c3754007006a441045553447200407c660fc60fe60f86ea8004cc1f800d2f5c1153307a490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641e5070407907083841c20e0840808c1f8c1ecdd5000c54cc1e524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641e060b860f46ea80062a660f092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641dd153307849141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641dc60f860f26ea80062a660ee92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641d86600a008003222222225980099baf307f307c375400e60fe60f86ea801a2b30013375e60bc60f86ea801cc174c1f0dd500344c9660033001001a5191112cc0040062602e00514a083f101744c96600266e240100062b30013371200200710018a9983e2481216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641ed153307c491216578706563742064656c697665726564203e3d206d696e5f64656c697665726564001641ed30010019bae3080010049bae3080013081010044081153307b490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641e86601a6eacc174c1f0dd500398064c004dd7183f802cdd7183f984000802cc05c011222598009834800c402e3300100b801cc8c8008c038004cc20404cdd81ba9002375000297adef6c6091111192cc004c08800600513003001420804653001004804401e444453001005801c01200500140188121408101d20f8454cc1e924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d001641e5153307a4912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641e52229800998041bab305830773754004600e6eacc160c1dcdd5182c183b9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a5041e083c2294107820224888896600260ae01b19800998029bac307c307937540426eb0c168c1e4dd5013cdd6183e183c9baa027982d183c9baa04e4889660026601c6eb0c1fcc1f0dd50309bae307f307c375460ac60f86ea80062b30019800998111bac307f307c37540c2466ebcc20004c1f4dd5184000983e9baa305e307d375400261000260fa6ea8c088c1f4dd5001528528a0f28992cc004c048006264646644b300130170028acc0056600260d600514a31301600141f91332259800cc00400a01522325980098379842809baa0018992cc004006330010018acc004cdd798139843809baa003308a01308701375400915980099baf30683087013754002611402610e026ea800e2b3001337126eb4c1a0c21c04dd5001cc004dd598341843809baa30683087013754009375c61140200b375c60d000a8152264b3001306630870137540031325980099b87375a6118020026eb4c1a8c22404dd5002c4cdc39bad308c01308d01001375a60d66112026ea80162941086011844009baa0018a5042140460d2610e026ea80060fe84200a0fc84200a0fa84200a0f880fa0f907c83e41f108c011844809843009baa00183ca106023067308501375460cc610a026ea800901c44c8ca60026eb4c220040066644653001001803c03e01c800888896600200714800226644b300100484300c4cc896600200b08901899912cc004c1ecc24004dd5000c4cdc04c004dd598391848809baa3072309101375400d3094013091013754003309401309101375400900f9bad3072309101375400900b9bad3073309101375400959800983d80944dd698391848809baa004899b83337046eb4c1c8c24404dd5002009008a11c024069300100a802c00e004805211802847008c24c04014cc070028dd6984900802a12002309001004309101004423804611c02006611e02006846008dd618339842809baa06a33087013066308501375460be610a026ea8028cc21c05300106457355534472004bd704dd69844008012444b300198009845809846008054c22c04c230040126eb8c1a4c22004dd518311844009baa00d40411323322598009810800c56600266e1c018cdc0006002c56600266e1e60026eacc0e0c22c04dd50384dd718361845809baa3065308b0137540214890573555344720040b800b159800983acc004dd5981c1845809baa0709bae306c308b01375460ca6116026ea804291104555344720040b9198009bac306d308b0137540e13030308b0137540213308d01306c308b01375460ca6116026ea8040cc234053001054455534472004bd70400501a41f508801454cc224052412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c6976657265640016422005153308901491566578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c69766572656400164220051533089014910f65787065637420666565203e3d20300016422004b3001301e00a8acc004cdc499b8200300933704002015149a2a6610e029201626578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a207661756c745f757364725f6265666f7265001642180515980099b890030018a4d15330870149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c6976657265640016421804843008cdc080680099b8100100883ca10a02184400800cc004dd618329841809baa0689bae3023308301375460ba6106026ea80226eb8c190c20c04dd5182e9841809baa008816201a8a9984080a49466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f6173736574290016420004660446eb0c21004c20404dd50331bae3063308101375460b66102026ea8018cc20c04c188c20404dd5182d9840809baa00633083014c01054455534472004bd70454cc1fd2413d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641f9153307f491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811c65787065637420746f74616c5f757364725f7374616b6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c56600260246eb4c17cc1f4dd5000c4c19cdd69815183e9baa0018a5041e914a083d102041b107941ad07922b3001305600d8cc004cc014dd6183e183c9baa021375860b460f26ea809e6eb0c1f0c1e4dd5013cc168c1e4dd50272444b30013300e375860fe60f86ea8184dd7183f983e1baa3056307c3754003159800cc004cc088dd6183f983e1baa06123375e61000260fa6ea8c20004c1f4dd5182f183e9baa001308001307d3754604460fa6ea800a94294507944c966002602400313232332259800980b000c566002602c00519800994c004006013480010011112cc00400a200319800801cc2200400a64b3001301b375a6064610a026ea80062b3001337126eb4c0c8c21404dd500099b83337046eb4c198c21404dd500080280344cdc00011bad3032308501375400315330830149012065787065637420722e666f7266656974203c3d20726571756573745f7573647200164208051533083014911565787065637420722e666f7266656974203e3d20300016420804610e020048019085014cc088dd61842009840809baa066375c60c66102026ea8c16cc20404dd50034cc20c04c188c20404dd5182d9840809baa00633083014c106457355534472004bd702444b30019800801402e4464b30013070308601375400313259800800c6600200315980099baf302830880137540066116026110026ea80122b30013375e60d26110026ea8004c22c04c22004dd5001c56600266e24dd698349844009baa00398009bab3069308801375460d26110026ea80126eb8c22c040166eb8c1a401502b44c96600260cc6110026ea800626464b30013370e6eb4c23804008dd698361845809baa0068acc004cdc39bad308e01001375a60da6116026ea801a266e1cdd69847009847808009bad3038308b01375400d14a084400a2941088011847008009844809baa0018a5042180460d46110026ea80061000284280a0fe84280a0fc84280a0fa81020fb07d83ec1f508d011845009843809baa00183d2108023068308601375460ce610c026ea800901d456600266e1e60026eacc0c4c21004dd5034cdd718329842009baa305e308401375401348905735553447200409c603e0111323298009bad3089010019991194c00400600f010807a002222259800801c52000899912cc00401210e031332259800802c2280626644b3001307c30910137540031337013001375660e66124026ea8c1ccc24804dd50034c25404c24804dd5000cc25404c24804dd5002403e6eb4c1ccc24804dd5002402e6eb4c1d0c24804dd50024cdc099b83337046eb4c1ccc24804dd50020090099bad303f309201375400880da6002015005801c00900a42340508f01184a008029980e8051bad309301005424404612202008612402008847808c23c0400cc2400400d08d011bac306830860137540d6661100260ce610c026ea8c180c21804dd50059984400a601054455534472004bd704dd69844808012444b30019800984600984680805cc23004c234040126eb8c1a8c22404dd518319844809baa00e404515980099b870013370266e040240080222b30013370e00666e040280362b3001307398009bab303630890137540dd375c60d46112026ea8c18cc22404dd50075220104555344720040b1198009bac306b30890137540dd302e308901375401d3308b01306a308901375460c66112026ea8038cc22c053001054455534472004bd70402101841ed08601454cc21c05241536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e65640016421805153308701491576578706563740a202020207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f757364725f64656c697665726564202d20746f74616c5f666f7266656974001642180507a42180430890100198009bac306630840137540d3375c60486108026ea8c178c21004dd5004cdd718329842009baa305e308401375401302d403915330820149012a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e656400164204051533082014914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f61737365742900164204048a9983fa49236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641f9153307f4911c657870656374207661756c745f757364725f6265666f7265203e2030001641f86eb4c20804004dd6984100801184100800cc004dd6184000983e9baa0629bae301d307d375460ae60fa6ea800a6eb8c178c1f4dd5182b983e9baa00281420108a9983da4811d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641e93001003801496600260246eb4c178c1f4dd5000c4c048dd6982f983e9baa0018a5041e881020d883ca0d683c914a083b10760896600266e2000520008a6103d87a8000899804001000a0e422a660aa92013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001641506eb4c160c154dd5000982c182c982c982c982c982c982a9baa0038a99829a4813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f69647800164148600260a86ea8008c154c148dd50131182b182b982b982b982b800c4c96600200304082044c9660020030418992cc004006085042821410a26644b300100182244c966002003159800982e00144c966002608660b06ea800a264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c13209904c82644c96600260c80071598009825182f9baa0068992cc00400609d13259800800c13e09f04f827c4cc89660020030518992cc0040060a5052829414a264b3001306a0038992cc004c144006264b300100182ac4c96600200305682b415a0ad132598009837001c04a0ae8358dd7000a0dc306b00141a460ce6ea802e2b300130460018acc004c19cdd5005c03e0a883420a8832106418329baa00a829a0ce375c0028350c19c0050651bae0013066002419c60c80028310c180dd5003413505d41350611bae001419060c200282f8c18400a09504a8254129062182f800a0ba305f0028244122091048418060ba00282d8c164dd5001411905609803982e0044115059411608b045822a0ba305a00141606eb8004c16400905a182b800a0aa375800304082020b03055002414d03d408103d408113259800800c0fa07d03e8991801982b0021bad00181f20ac3053002414513259800800c0f207903c8991801982a0021bad00181e20a83051002413d039413503981cc0e60728288c13800504c182700140de06f03781ba09e304c00141286eb4004c12c00a0688260c1240050471bad0013048002818a092304600141106eb0004c11400a05d02e411860860028208dd6000982100140ae0568218c10000503e181e1baa006814a072814a07a37580030288142080303d00140ec607a005026813409a04c81f0c0ec005039181d80140920490248122078303900140dc606a6ea8026044819080d406a03501a40c8664464b30013019302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b52418b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc028cc0ccdd480225eb812f5c11300c33033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756600c60586ea8044dd7181798161baa00132323259800800c5660026030605a6ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0dc00a2b3001301d3032375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc004006264b300100181444c96600200313259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc004006264b300100181844c96600200313259800800c0ca264b30010018992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c56600260a00051980080c46600202d1980080a4660020251980080846600201d19800806466002015198008044566002606c60966ea801a264b300100181dc4c96600200303c81e40f20791332259800800c0fa264b300100181fc0fe07f03f899912cc00400608313259800800c10a08504282144cc89660020030448992cc00400608b045822c11626644b3001001823c4c966002003048824412209113259800982f801c4cc0ec048896600200519800809440c209681a2264b30010018acc004c120c174dd5000c4c96600200304d8992cc00400609d04e899912cc0040060a113259800800c1460a3051899912cc0040060a713259800800c1520a90548992cc004c1ac00e2b300100782ac4c96600200305682b415a0ad1332259800800c162264b300100182cc1660b30598992cc004c1c000e2602060e002305a41b46eb80050701836800a0d6375c00260d80108368c1a801d06841550681bad00182a20d6306800141986eb4004c19c00a0a28340c1940050631bac001306400282741390651831000a0c0305e375400304c416d04c82641320988318c18000905e412505c1bae001417c60b800282d0dd7000982d80120b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270c130dd500340e904940e902240e902240e902240e902240e902240e902240e902240e902240e902240e904d40ea07503a81d20a2304e00141306eb0004c13400a06f037413860960028248c12c00a06b03581ac0d504c1824800a08e3049002819c0ce0670334128608e0028228c11c00a063031818c0c50481822800a0863045002817c0be05f02f411860860028208c10c00a05b02d816c0b50441820800a07e3041002815c0ae05702b4108607e00281e8c0fc00a053029814c0a5040181e800a076303d002813c09e04f02740f8607600281c8c0ec00a04b025812c09503c181c800a06e3039002811c08e04702340e8606e00281a8c0ccdd5000c08503040850344086043021810a070303500140cc6eb8004c0d00090351819000a060302e375400301c40ad01c80e40720388198c9660026030605a6ea8006264b30013018302e375400313032302f3754003153302d4913365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06020605c6ea8c03cc0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac64660020026eb0c03cc0b8dd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd5980918189baa30123031375400444b30010018a508acc004cdc79bae303500102e8a51899801001181b000a05e40cd1300b330320014bd7044cc00c00cc0d000902d1819000a06030010012259800800c52f5c113302f302c303000133002002303100140b8444b30013016302b375400713259800800c00a264b30010018992cc00400600913259800800c566002606800519800801c4c966002603600313259800800c01e264b30010018acc004c0dc00a264b3001301e0018992cc00400601513259800800c566002607400519800800c032016807201681ba01700b805c02d03b181c000a06c303437540051598009809800c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026082007013809207c375a0030114104607c00281e0dd6800981e801403903e181d800a072375a002607400500b40ec607000281b0c0d0dd5001402503120623032375400300840d1008804402201081c0c0d400503318189baa0028acc004c0400062b3001303137540050078032064803205c40b8605e6ea800600a804200a818a00b005802c0150351819000a0603032002801c00e00700340cc60600028170c0b0dd5001c005029111194c004006009003400444464b3001301a0018992cc00400600d13259800800c01e00f007803c4c966002606e0070058042068375c00281b8c0d000503218181baa0038acc004c03c006264b300100180344c966002003007803c4c966002606e0071330130012259800801401e264b30010018cc00402a00313002303a003402900b805c02e01681d8c0e000903640210341bac001803c01d037181a000a06430303754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0dc00e26602600244b3001002803c4c966002003198008054006260046074006805201700b805c02d03b181c001206c80420683758003007803a06e303400140c860606ea800e2b3001301b0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d001c4cc058004896600200500a8992cc0040063300100d800c4c008c0f400d00d403a01d00e807207c303b00240e500b40dc6eb000601500a40e8606e00281a8dd6800981b001401d037181a000a064303037540071598009807000c4c9660020030068992cc00400600f007803c4c966002606e0070058042068375a00300740dc60680028190c0c0dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981b801c01601081a0dd6800c01d037181a000a064303037540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013037003802c0210341bae00140dc60680028190c0c0dd5001c01502d205a40b4816902d205a40b4605c6ea8008888c966002602c00313259800800c00e264b300100180240120090048992cc004c0cc00e00d00540c06eb80050331818000a05c302c37540091598009805800c4c9660020030038992cc0040060090048024012264b3001303300380340150301bae00140cc60600028170c0b0dd500240090292052302a37540068acc004c02000e26464b30013009301e37546044604600514a314a080e0dd69810800980e9baa0048b20344068301c301d001301c00445268a998092491856616c696461746f722072657475726e65642066616c7365001365640441" + : "592264010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba54800246022602460246024602460246024602460246024003374a9001489660026012601c6ea800a264646644b30013017003802c590141bad3014001375c60280046028002601e6ea800a2c80692222222222229800911192cc004c05c00626464b300130230028024590201bae3021001301d37540071598009806000c4c966002604400313300e3758604200244b3001002802c6600200f3023002898009812001200e408516407c603a6ea800e2b300130160018992cc004c08800626601c6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c56600260300031323322598009812000c4cc040dd61811800912cc00400a00f19800804cc09400a26002604c00480490234590211bad30210013022001301d37540071598009805800c4c8c96600260460050048b2040375a6042002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd71810800980e9baa0038b2036406c80d901b2036406c80d8c06cdd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02c00626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03c00626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c034c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300b0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa00248888cc88cc8a6002664464b3001301e302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c03ccc0a0dd480225eb812f5c11301133028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601660426ea8058dd7181218109baa002912cc004c074c088dd500144c8c8c8cc89660026058007133008302b0051330100020068b20523029001375a60520046052002605000260466ea800a2c810a44b3001301d302237540051323232323298009bad302b0019bad302b0049bad302b003981580124444b30013030005899806181780489980a00080545902d0c0ac004c0a8004c0a4004c0a0004c08cdd500145902148966002603a60446ea800a26464646465300137586056003375a6056009375a6056007302b0024888966002606000b13300c302f0091330140011323322598009819801c0362c8180dd718180009bae303000530300048b205a181580098150009814800981400098119baa0028b2042912cc004c074c088dd500144c8c8c8c8ca60026eb0c0ac0066eb4c0ac0126eb4c0ac00e605600491112cc004c0c0016266018605e0122660280022646644b30013033003806c590301bae3030001375c606000a60600091640b4302b001302a0013029001302800130233754005164084911112cc004c080c094dd5002c4c8c8c8cc8966002605e00713259800981318159baa00189919191919194c004c0d40066eb0c0d40166eb4c0d40126eb4c0d400e606a004911112cc004c0ec01a26604e6eb0c0e802c8966002005133029006225980080144cc07c0144cc07c0244c966002606c60766ea804a2646464b3001304300289919912cc004c0f000a264b300130470018998199bac304600122598008014012266040609000426002609200482322c8220c108dd5001c5660026062005132598009823800c4cc0ccdd61823000912cc00400a0091330203048002130013049002411916411060846ea800e2b3001303b0028992cc004c11c0062660666eb0c11800489660020050048998109824001098009824801208c8b208830423754007159800981e80144c966002608e0031330333758608c00244b300100280244cc084c1200084c004c12400904645904418211baa0038acc004c0c000a264b300130470018998199bac304600122598008014012266044609000426002609200482322c8220c108dd5001c566002605e005132598009823800c4cc0ccdd61823000912cc00400a0091330223048002130013049002411916411060846ea800e2b3001302e0028992cc004c11c0062660666eb0c11800489660020050048998119824001098009824801208c8b20883042375400715980099b874803800a264b300130470018998199bac304600122598008014012266046609000426002609200482322c8220c108dd5001c59040208041008201040208041008200c0fcdd50008992cc004c0ec006264b300130460018998151822800803c5904318209baa0038acc004c0c0006264b300130460018992cc004c0f4c108dd5000c4c8c8c966002609400513302b304900313302b00100b8b208e3048001304800130433754003164104608a00316410c60826ea800e2c81f903f181f9baa00230420038b208030410013041001303c37540251640e826605602444b300100289991192cc004c0e8c0fcdd5000c4cc8966002607860826ea800633001375a608a60846ea8006608a60846ea8c0ccc108dd5010c8896600200514c0103d87a80008acc004c0fc006260606608e609000497ae08cc00400e6092005337000029000a006410c823244646600200200644b30010018a508acc004c00cc12400629462660040046094002822104748c118c11cc11cc11cc11cc11cc11cc11cc11cc11cc11cc11c006444b30013034304437546090646600200200644b30010018a5eb84103d87a80008101800044c8cc89660033001303930493754609a0074a14a2824226609930014a14c103d87a8000a60103d87980004120660986e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c13c00400e294626600400460a0002825104d44cc132600294298103d87a8000a60103d87980004120660986e9c0092f5c113304c9800a51a60103d87a8000a60103d87980004120660986e9ccc130dd400080125eb8104820903758609660980026eb4c12c008cc008008c12c00504844ca6002003004801d200040044444b30010038acc00400a2003164129198008024c13400e609a005332259800980380144cdc00019bad303c304b375400516412460980066eb4c13000900420948b208691119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c824a26600a00a609e0088248dd718240009bad3049001304b001412464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803209489980280298280022094375c60920026eacc128004c13000504a0a5eb7bdb18052000912cc004c0f8c10cdd500144c8c96600260940050038b208e375a609000260886ea800a2c821244646600200200644b30010018a5eb8226644b30013375e609660906ea8c12cc120dd5181c98241baa00230313304a375200a97ae089982500119802002000c4cc01001000504618248009825000a08e91823182398239823800c8888c8cc004004014896600200313304a337606ea4014dd400225eb7bdb1822653001375c6090003375a6092003304d00248896600266e4002400e26609c66ec0dd48049ba80080058acc004cdc7804801c6600201300880148cc13ccdd81ba900a37500020051001401d13304e337606ea400cdd400119803003000a0944128304b0014125222232330010010052259800800c4cc128cdd81ba9005374c00897adef6c608994c004dd71824000cdd59824800cc1340092225980099b9000900389982719bb037520126e980200162b30013371e01200719800804c02200523304f337606ea4028dd30008014400500744cc138cdd81ba9003374c0046600c00c002825104a0c12c005049496600200314a314a0822224444464b3001304200180144c00c00504619b800040039b8148002444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1300066eb4c1340066600600660a20048048c13c00504d1bab304a003375c608e00266006006609800460940028242444653001001802400d0011112cc00400a2b30010018a518a504125159800800c5284566002660086096004609600319800801cc13000a6098002801a2941046209241252259800981f18219baa0028991919194c004c12c0066096007304b002488966002609e00913302e304e00713302b002132598009823000c4c8ca60026eb4c14400660a4003375a60a20049112cc004c15400a264646644b300130590038094590561bae3056001375c60ac00460ac0026eb0c15000a2c829060a200260986ea800a2b3001303b001899194c004dd69828800cc1480066eb4c14400922259800982a80144c8c8cc896600260b20070128b20ac375c60ac0026eb8c158008c158004dd6182a0014590520c144004c130dd50014566002608a0031323298009bad30510019829000cdd698288012444b300130550028991919912cc004c16400e0251641586eb8c158004dd7182b001182b0009bac30540028b20a4182880098261baa0028acc004c11c0062646644b300130530018991919912cc004c15c00e0211641506eb8c150004dd7182a001182a0009bac30520018b20a0375a60a000260a200260986ea800a2b3001303a0018991919912cc004c15000e01b1641446eb4c144004dd69828801182880098261baa0028acc004c0e400626464653001375a60a4003375a60a4007375a60a40049112cc004c15801201f16414c30520013051001304c3754005159800981c000c4c8c96600260a400500b8b209e375a60a000260986ea800a2b30013370e9007000c4c8c96600260a400500b8b209e375a60a000260986ea800a2c825104a20944128825104a2094412860946ea80062c826060960026094002609200260886ea800a2c821244b30010018a4d13259800800c5268992cc004cdc81bae30453049003375c608a00313300400433048001304a0028b2088304800141186090002822a6e2520009b88480012222222222222222222229800982b1baa0149809809c8a600266028004466ebcc174c168dd5182e982d1baa304b305a37540026086660b86ea40092f5c14a14a282ba44653001001801c0090011112cc00400a200313298008024c18400f30010029bae305c0019bab305d00191111192cc004c0540060051300300141846465300100180340150011112cc00400a200313298008024c1ac00f30010029bae30660019bad3067001802a036401060d20048339404d0102008305f0024175232330010010022259800800c52f5bded8c11323305d3376060b40026e98c8cc004004dd5982e001112cc004006297adef6c608991983019bb0305d0013750601c6eb4c178004cc00c00cc188008c18000505e19801801982f801182e800a0b691112cc004c1540062946266e24004c8cc004004014896600200314800226644b30013375e60c460be6ea800801e266e0000660026eacc140c17cdd50014dd718310034dd71828003202e8800a0ba3060001330020023061001417882ca60060069111111194c00488c8cc004004008896600200314bd7044cc194c96600260bc60c66ea8006260ce60c86ea80062c8310cc014010dd69833000998010011833800a0c89111192cc004c178c18cdd5000c4c96600266ebcc1a0c194dd5183418329baa305630653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa305630653754003005a450d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008998349ba898009bab30583067375460b060ce6ea800e00d4881045553447200407c660d260d460ce6ea8004cc1a400d2f5c060d260cc6ea80062c8320c15cc194dd5182b18329baa0018b20c68b20c63067306437540031641886600a00800322223259800982f18319baa0018992cc004cdd7983418329baa306830653754002609c660ce6ea40152f5c1159800982a4c004dd5982b18329baa001802d22010d7374616b696e675f7661756c7400407513259800982f98329baa0018991980f0008acc004cdd7980e18339baa0034c0103d87a80008998349ba898009bab305830673754007006a441045553447200407c660d260d460ce6ea8004cc1a400d2f5c116419460d260cc6ea80062c8320c15cc194dd5000c59063459063183398321baa0018b20c433005004001911111112cc004cdd7983518339baa007306a3067375400d15980099baf30593067375400e60b060ce6ea801a264b30019800800d28c888966002003130170028a5041a880ba264b30013371200800315980099b890010038800c590674590674c0040066eb8c1ac0126eb8c1acc1b0011020459066198069bab30583067375400e60193001375c60d400b375c60d460d600b301700448896600260c8003100b8cc00402e0073232002300e0013306c337606ea4008dd4000a5eb7bdb1824444464b3001302200180144c00c00506e194c004012011007911114c004016007004801400500620485020407483411641951641952229800998041bab305330623754004600e6eacc14cc188dd5182998311baa003a5191112cc0040062b30013371e0089101008a518acc004cdc7802002c4cdc7801a4410455534472008a5041908322294106420224888896600260a401b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130170028acc0056600260cc00514a31301600141a91332259800cc00400a015223259800983518381baa0018991980f8008acc004cdd7981398391baa00330753072375400915980099baf30633072375400260ea60e46ea800e2b3001337126eb4c18cc1c8dd5001cc004dd5983198391baa306330723754009375c60ea00b375c60c600a8152264b30013061307237540031325980099b87375a60ee0026eb4c194c1d0dd5002c4cdc39bad30773078001375a60cc60e86ea8016294107218399baa0018a5041c460c860e46ea80062c83822c83822c8380c1d0c1c4dd5000c5906f183118381baa30613070375400480e22646644b30019800983a183a8044c1d0c1d400a6eb8c188c1c4dd5182d98389baa00b4039132332259800980f800c56600266e1cdd6983b80299b8000a0048acc004cdc3cc004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91010573555344720040b000915980098374c004dd5981b183a1baa0699bae30653074375460bc60e86ea803a91104555344720040b1198009bac3066307437540d3302e3074375401d3307630653074375460bc60e86ea8038cc1d93001054455534472004bd7040050184590724590724590724590722cc004c0700222b30013371266e0800801ccdc100080445268b20e08acc004cdc4801000c5268b20e041c066e0402c004cdc09bad30740030068b20de30730013322329800800c01a01d00d40044444b30010038a400113322598009838983b1baa001899b8098009bab30683077375460d060ee6ea8c1e801660f460ee6ea800660f460ee6ea800a015375a60d060ee6ea800a00f375a60d260ee6ea800ab3001307100d89bad30683077375400513370666e08dd69834183b9baa00200d00c41d480aa600200d307b005983d8024c1ec00d006459075183c0011980b8031bad307800141d86eb0c184c1bcdd503219838983018379baa3059306f3754012660e298106457355534472004bd704c004dd6183018371baa0639bae3023306e375460b060dc6ea80226eb8c17cc1b8dd5182c18371baa008816201a8b20d833022375860de60d86ea8184dd7182f18361baa3056306c375400c660dc60ba60d86ea8c158c1b0dd5003198372601054455534472004bd7045906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa0018acc004c048dd6982d18341baa001898311bad302a3068375400314a08332294106620408b20ca8b20ca456600260a201b19800998029bac3067306437540426eb0c154c190dd5013cdd6183398321baa027982a98321baa0454889660026601c6eb0c1a8c19cdd502e1bae306a3067375460a260ce6ea80062b30019800998111bac306a306737540b8466ebcc1acc1a0dd5183598341baa30593068375400260d660d06ea8c088c1a0dd5001528528a0ca8992cc004c048006264646644b300130160018acc004c05800a33001329800800c0269000200222259800801440063300100398398014c96600260366eb4c0c8c1c0dd5000c56600266e24dd6981918381baa0013370666e08dd6983098381baa001005006899b80002375a606460e06ea80062c83722c8370c1c800900320e0998111bac306f306c37540c26eb8c178c1b0dd5182b18361baa00699837182e98361baa3056306c375400c660dc98106457355534472004bd702444b30019800801402e4464b3001306b307137540031323302000115980099baf30283073375400660ec60e66ea80122b30013375e60c860e66ea8004c1d8c1ccdd5001c56600266e24dd6983218399baa00398009bab30643073375460c860e66ea80126eb8c1d80166eb8c19001502b44c96600260c260e66ea800626464b30013370e6eb4c1e4008dd69833983b1baa0068acc004cdc39bad3079001375a60d060ec6ea801a266e1cdd6983c983d0009bad30383076375400d14a083a22941074183c800983a1baa0018a5041c860ca60e66ea80062c838a2c838a2c8388c1d4c1c8dd5000c59070183198389baa30623071375400480ea2b30013370f30013756606260de6ea81926eb8c180c1bcdd5182c98379baa009a44105735553447200409c603e0111323259800cc004c1d0c1d402260e860ea003375c60c460e26ea8c16cc1c4dd5005a01c8acc004cdc39bad30740023370266e04018cc88ca6002003007808403d00111112cc00400e2900044cc896600260e660f06ea8006266e0260026eacc1a8c1e4dd51835183c9baa307c005983e183c9baa001983e183c9baa002805cdd69835183c9baa002803cdd69835983c9baa00299b813370666e08dd69835183c9baa00200e00f375a607660f26ea80090174c00401a60fa00b307d004983e801a00c8b20ee307a00233019006375a60f400283c0dd6183198389baa0663307330623071375460b660e26ea802ccc1cd3001054455534472004bd70002c56600266e1cdd6983a00099b8100700a8acc004c1ae60026eacc0ccc1c4dd50334dd7183118389baa305b3071375401748904555344720040a5198009bac3063307137540cd302b307137540173307330623071375460b660e26ea802ccc1cd3001054455534472004bd70401501545906f45906f45906f45906f183a000cc004dd6183098379baa0649bae3024306f375460b260de6ea80266eb8c180c1bcdd5182c98379baa009816a01c8b20da8b20da45906a45906a1bad306d001375a60da00460da0033001375860d660d06ea81766eb8c074c1a0dd5182918341baa0029bae30593068375460a460d06ea800a05080422c8332600200700292cc004c048dd6982c98341baa001898091bad305a3068375400314a083310204590654590652294106220c4112cc004cdc4000a400114c103d87a8000899804001000a0bc22c8200dd6982198201baa001304330443044304430443044304037540071640f86002607e6ea8008c100c0f4dd500e118209821182118211821000c4c8cc896600260880031332259800981e18209baa002899191919912cc004c12c00e264b3001304230473754003132323322598009828001c4c966002608e00313232598009829801403a2c8280dd7182880098269baa0078acc004c0f00062b3001304d375400f00c8b209c8b2096412c60966ea801a2c8268dd718268009bae304d002304d00130483754003164118609400b1641206eb8c120004c120008c120004c11c004c108dd50014590401821800898021822002c590411bae304100130420013758608000481f2264600460800066eb4c0f800903c44c8c008c0f800cdd6981e00120748b2070181a800981a00098198009819000981880098161baa0018b2054302e0058b205837586058002605800460580026056002604c6ea80162c8120646464b3001301c302137540031323322598009814800c4c9660026040604a6ea8006264646464646464646464646530013035001981a805cc0d402a606a0133035008981a803cc0d401a606a00b3035004981a801cdd6181a801244444444444b3001304100c899810182000b8998100050998100048998100040998100038998100030998100028998100020998100018acc004c0dcc0f0dd500144c8c8c8c8ca60026eb8c1140066eb8c1140166eb8c1140126eb8c11400e6eb8c1140092222259800982580344cc0dc02c896600200513302b01710288992cc004c110c124dd5000c4c8c8c8cc896600260a600713232332259800982b801c4c02cc15c0322c82a0dd7182a0009bae30540023054001375860a400b1641406eb4c140004dd698280011828000982780098251baa0018b2090304c00241291641203045001304400130430013042001303d37540051640ed1640f8303500130340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c070c084dd5000c4c966002603860446ea80062604c60466ea80062c8108c050c088dd5180998111baa30253022375400316408064660020026eb0c04cc088dd500b912cc004006298103d87a80008992cc004c8cc004004c014dd5980b18129baa30163025375400444b30010018a508acc004cdc79bae30290010238a518998010011815000a048409d1300f330260014bd7044cc00c00cc0a00090221813000a04830010012259800800c52f5c113302330203024001330020023025001408844b3001301b30203754005132323259800981400144cc018c09c00c4c966002603e00315980098129baa002802c590264566002602800313232598009815801401e2c8140dd7181480098129baa0028acc004c07800626464b3001302b002803c59028181480098129baa0028b2046408c8118c08cdd5000c590251813000981300098109baa0028b203e30040042259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164074456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0ProxyNftProxyNftMint { + public Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" + : "5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + ]), + [utxoRef], + ), + "PlutusV3", + ); + } +} +export class V1_0ProxyNftProxyNftElse { + public Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" + : "5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + ]), + [utxoRef], + ), + "PlutusV3", + ); + } +} +export class V1_0RealfiMintingPolicyRealfiMintingPolicyMint { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0RealfiMintingPolicyRealfiMintingPolicyElse { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0StakingVaultStakingVaultMint { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601" + : "5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0StakingVaultStakingVaultSpend { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601" + : "5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0StakingVaultStakingVaultElse { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601" + : "5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0TreasuryTreasuryMint { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0TreasuryTreasurySpend { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_0TreasuryTreasuryElse { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} diff --git a/modules/realfi-partner-sdk/src/generated-types/v1_0_rc1/index.ts b/modules/realfi-partner-sdk/src/generated-types/v1_0_rc1/index.ts new file mode 100644 index 0000000000..316f4ba1f4 --- /dev/null +++ b/modules/realfi-partner-sdk/src/generated-types/v1_0_rc1/index.ts @@ -0,0 +1,1046 @@ +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { type Script } from "@blaze-cardano/core"; +import { Type, Exact, TPlutusData } from "@blaze-cardano/data"; +type Data = Exact; +type Int = bigint; +type ByteArray = string; +const PolicyId = Type.String(); +const ScriptHash = Type.String(); +type OutputReference = { output_index: bigint; transaction_id: string }; + +const Contracts = Type.Module({ + Bool: Type.Boolean(), + Tuple_VerificationKey_COSESign1: Type.Tuple([ + Type.String(), + Type.Ref("COSESign1"), + ]), + COSESign1: Type.Object({ + headers: Type.Ref("Headers"), + payload: Type.Optional( + Type.String() + ), + signature: Type.String(), + }, { ctor: 0n }), + HeaderMap: Type.String(), + Headers: Type.Object({ + protected: Type.Ref("HeaderMap"), + unprotected: Type.Ref("HeaderMap"), + }, { ctor: 0n }), + MultisigScript: Type.Union([ + Type.Object({ + Signature: Type.Object({ + key_hash: Type.String(), + }, { ctor: 0n }) + }), + Type.Object({ + AllOf: Type.Object({ + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 1n }) + }), + Type.Object({ + AnyOf: Type.Object({ + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 2n }) + }), + Type.Object({ + AtLeast: Type.Object({ + required: Type.BigInt(), + scripts: Type.Array( + Type.Ref("MultisigScript") + ), + }, { ctor: 3n }) + }), + Type.Object({ + Before: Type.Object({ + time: Type.BigInt(), + }, { ctor: 4n }) + }), + Type.Object({ + After: Type.Object({ + time: Type.BigInt(), + }, { ctor: 5n }) + }), + Type.Object({ + Script: Type.Object({ + script_hash: Type.String(), + }, { ctor: 6n }) + }), + ]), + Asset: Type.Tuple([ + Type.String(), + Type.String(), + ]), + Destination: Type.Object({ + address: Type.Object({ + payment_credential: Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([ + Type.String(), + ], { ctor: 0n }) + }), + Type.Object({ + Script: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + ]), + stake_credential: Type.Optional( + Type.Union([ + Type.Object({ + Inline: Type.Tuple([ + Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([ + Type.String(), + ], { ctor: 0n }) + }), + Type.Object({ + Script: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + ]), + ], { ctor: 0n }) + }), + Type.Object({ + Pointer: Type.Object({ + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt(), + }, { ctor: 1n }) + }), + ]) + ), + }, { ctor: 0n }), + datum: Type.Union([ + Type.Literal("NoDatum", { ctor: 0n }), + Type.Object({ + DatumHash: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + Type.Object({ + InlineDatum: Type.Tuple([ + TPlutusData, + ], { ctor: 2n }) + }), + ]), + }, { ctor: 0n }), + ExtraProtocolRedeemerV1: Type.Object({ + request_to_outputs: Type.Array( + Type.BigInt() + ), + input_to_requests: Type.Array( + Type.BigInt() + ), + treasury_input_idx: Type.BigInt(), + treasury_output_idx: Type.BigInt(), + vault_input_idx: Type.Optional( + Type.BigInt() + ), + vault_output_idx: Type.Optional( + Type.BigInt() + ), + }, { ctor: 0n }), + Nonce: Type.Union([ + Type.Object({ + UTxO: Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + ], { ctor: 0n }) + }), + Type.Object({ + Validity: Type.Tuple([ + Type.Object({ + lower_bound: Type.Object({ + bound_type: Type.Union([ + Type.Literal("NegativeInfinity", { ctor: 0n }), + Type.Object({ + Finite: Type.Tuple([ + Type.BigInt(), + ], { ctor: 1n }) + }), + Type.Literal("PositiveInfinity", { ctor: 2n }), + ]), + is_inclusive: Type.Ref("Bool"), + }, { ctor: 0n }), + upper_bound: Type.Object({ + bound_type: Type.Union([ + Type.Literal("NegativeInfinity", { ctor: 0n }), + Type.Object({ + Finite: Type.Tuple([ + Type.BigInt(), + ], { ctor: 1n }) + }), + Type.Literal("PositiveInfinity", { ctor: 2n }), + ]), + is_inclusive: Type.Ref("Bool"), + }, { ctor: 0n }), + }, { ctor: 0n }), + ], { ctor: 1n }) + }), + ]), + OrderActionV1: Type.Union([ + Type.Object({ + OMint: Type.Object({ + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, { ctor: 0n }) + }), + Type.Object({ + ORedeem: Type.Object({ + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, { ctor: 1n }) + }), + Type.Object({ + ODeposit: Type.Object({ + principal: Type.BigInt(), + yield: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, { ctor: 2n }) + }), + Type.Object({ + OWithdraw: Type.Object({ + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, { ctor: 3n }) + }), + Type.Object({ + OStake: Type.Object({ + amount: Type.BigInt(), + }, { ctor: 4n }) + }), + Type.Object({ + OUnstake: Type.Object({ + amount: Type.BigInt(), + forfeit: Type.BigInt(), + }, { ctor: 5n }) + }), + Type.Object({ + ODirectMint: Type.Object({ + amount: Type.BigInt(), + }, { ctor: 6n }) + }), + Type.Object({ + ODirectBurn: Type.Object({ + amount: Type.BigInt(), + }, { ctor: 7n }) + }), + ]), + OrderDatumV1: Type.Object({ + owner: Type.Ref("MultisigScript"), + destination: Type.Ref("Destination"), + action: Type.Ref("OrderActionV1"), + data: TPlutusData, + }, { ctor: 0n }), + OrderRedeemerV1: Type.Union([ + Type.Literal("Execute", { ctor: 0n }), + Type.Literal("Cancel", { ctor: 1n }), + Type.Literal("Invalidated", { ctor: 2n }), + ]), + ProtocolRedeemerV1: Type.Union([ + Type.Object({ + Mint: Type.Object({ + requests: Type.Array( + Type.Ref("TreasuryRequestV1") + ), + }, { ctor: 0n }) + }), + Type.Object({ + Burn: Type.Object({ + requests: Type.Array( + Type.Ref("TreasuryRequestV1") + ), + }, { ctor: 1n }) + }), + Type.Object({ + Withdraw: Type.Object({ + requests: Type.Array( + Type.Ref("TreasuryRequestV1") + ), + }, { ctor: 2n }) + }), + Type.Object({ + Deposit: Type.Object({ + requests: Type.Array( + Type.Ref("TreasuryRequestV1") + ), + }, { ctor: 3n }) + }), + Type.Object({ + Stake: Type.Object({ + requests: Type.Array( + Type.Ref("RequestV1") + ), + }, { ctor: 4n }) + }), + Type.Object({ + Unstake: Type.Object({ + requests: Type.Array( + Type.Ref("RequestV1") + ), + }, { ctor: 5n }) + }), + Type.Object({ + DirectMint: Type.Object({ + requests: Type.Array( + Type.Ref("TreasuryRequestV1") + ), + }, { ctor: 6n }) + }), + Type.Object({ + DirectBurn: Type.Object({ + requests: Type.Array( + Type.Ref("TreasuryRequestV1") + ), + }, { ctor: 7n }) + }), + ]), + ProxyDatumV1: Type.Object({ + logic: Type.String(), + settings: Type.Ref("SettingsV1"), + }, { ctor: 0n }), + RegistryV1: Type.Object({ + treasury: Type.String(), + usdr: Type.String(), + order: Type.String(), + staking_vault: Type.String(), + }, { ctor: 0n }), + RequestV1: Type.Object({ + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + origin: Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + forfeit: Type.BigInt(), + }, { ctor: 0n }), + ReserveAsset: Type.Object({ + asset: Type.Ref("Asset"), + numerator: Type.BigInt(), + denominator: Type.BigInt(), + }, { ctor: 0n }), + SettingsV1: Type.Object({ + mint_permission: Type.Ref("MultisigScript"), + burn_permission: Type.Ref("MultisigScript"), + withdraw_permission: Type.Ref("MultisigScript"), + deposit_permission: Type.Ref("MultisigScript"), + stake_permission: Type.Ref("MultisigScript"), + unstake_permission: Type.Ref("MultisigScript"), + direct_mint_permission: Type.Ref("MultisigScript"), + direct_burn_permission: Type.Ref("MultisigScript"), + registry: Type.Ref("RegistryV1"), + reserve_assets: Type.Array( + Type.Ref("ReserveAsset") + ), + unstaked_yield_pot: Type.Object({ + payment_credential: Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([ + Type.String(), + ], { ctor: 0n }) + }), + Type.Object({ + Script: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + ]), + stake_credential: Type.Optional( + Type.Union([ + Type.Object({ + Inline: Type.Tuple([ + Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([ + Type.String(), + ], { ctor: 0n }) + }), + Type.Object({ + Script: Type.Tuple([ + Type.String(), + ], { ctor: 1n }) + }), + ]), + ], { ctor: 0n }) + }), + Type.Object({ + Pointer: Type.Object({ + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt(), + }, { ctor: 1n }) + }), + ]) + ), + }, { ctor: 0n }), + }, { ctor: 0n }), + SignedPayload_v1_0_ProtocolRedeemerV1: Type.Object({ + action: Type.Ref("ProtocolRedeemerV1"), + nonce: Type.Ref("Nonce"), + }, { ctor: 0n }), + SignedRedeemer_v1_0_ExtraProtocolRedeemerV1: Type.Object({ + extra: Type.Ref("ExtraProtocolRedeemerV1"), + payload: Type.Ref("SignedPayload_v1_0_ProtocolRedeemerV1"), + signatures: Type.Array( + Type.Ref("Tuple_VerificationKey_COSESign1") + ), + }, { ctor: 0n }), + StakingVaultRedeemerV1: Type.Undefined(), + TreasuryDatumV1: Type.Object({ + circulating_supply: Type.BigInt(), + }, { ctor: 0n }), + TreasuryRequestV1: Type.Object({ + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + yield: Type.BigInt(), + origin: Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + reserve_asset: Type.Ref("Asset"), + }, { ctor: 0n }), + VaultDatumV1: Type.Object({ + circulating_susdr: Type.BigInt(), + }, { ctor: 0n }), +}); + +export const Bool = Contracts.Import("Bool"); +export type Bool = Exact; +export const Tuple_VerificationKey_COSESign1 = Contracts.Import("Tuple_VerificationKey_COSESign1"); +export type Tuple_VerificationKey_COSESign1 = Exact; +export const COSESign1 = Contracts.Import("COSESign1"); +export type COSESign1 = Exact; +export const HeaderMap = Contracts.Import("HeaderMap"); +export type HeaderMap = Exact; +export const Headers = Contracts.Import("Headers"); +export type Headers = Exact; +export const MultisigScript = Contracts.Import("MultisigScript"); +export type MultisigScript = Exact; +export const Asset = Contracts.Import("Asset"); +export type Asset = Exact; +export const Destination = Contracts.Import("Destination"); +export type Destination = Exact; +export const ExtraProtocolRedeemerV1 = Contracts.Import("ExtraProtocolRedeemerV1"); +export type ExtraProtocolRedeemerV1 = Exact; +export const Nonce = Contracts.Import("Nonce"); +export type Nonce = Exact; +export const OrderActionV1 = Contracts.Import("OrderActionV1"); +export type OrderActionV1 = Exact; +export const OrderDatumV1 = Contracts.Import("OrderDatumV1"); +export type OrderDatumV1 = Exact; +export const OrderRedeemerV1 = Contracts.Import("OrderRedeemerV1"); +export type OrderRedeemerV1 = Exact; +export const ProtocolRedeemerV1 = Contracts.Import("ProtocolRedeemerV1"); +export type ProtocolRedeemerV1 = Exact; +export const ProxyDatumV1 = Contracts.Import("ProxyDatumV1"); +export type ProxyDatumV1 = Exact; +export const RegistryV1 = Contracts.Import("RegistryV1"); +export type RegistryV1 = Exact; +export const RequestV1 = Contracts.Import("RequestV1"); +export type RequestV1 = Exact; +export const ReserveAsset = Contracts.Import("ReserveAsset"); +export type ReserveAsset = Exact; +export const SettingsV1 = Contracts.Import("SettingsV1"); +export type SettingsV1 = Exact; +export const SignedPayload_v1_0_ProtocolRedeemerV1 = Contracts.Import("SignedPayload_v1_0_ProtocolRedeemerV1"); +export type SignedPayload_v1_0_ProtocolRedeemerV1 = Exact; +export const SignedRedeemer_v1_0_ExtraProtocolRedeemerV1 = Contracts.Import("SignedRedeemer_v1_0_ExtraProtocolRedeemerV1"); +export type SignedRedeemer_v1_0_ExtraProtocolRedeemerV1 = Exact; +export const StakingVaultRedeemerV1 = Contracts.Import("StakingVaultRedeemerV1"); +export type StakingVaultRedeemerV1 = Exact; +export const TreasuryDatumV1 = Contracts.Import("TreasuryDatumV1"); +export type TreasuryDatumV1 = Exact; +export const TreasuryRequestV1 = Contracts.Import("TreasuryRequestV1"); +export type TreasuryRequestV1 = Exact; +export const VaultDatumV1 = Contracts.Import("VaultDatumV1"); +export type VaultDatumV1 = Exact; + +export class V1_0Rc1OrderOrderSpend { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + protocolScripthash: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5917090101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99802249286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d65725631001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b30010078999119912cc004c00c0062b30013019375401700280720348acc004c0240062b30013019375401700280720348acc004c0100062b3001301937540170028072034807202c405880b0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009811001c01a00a80f8dd7000a044301f001407460366ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026044007006802a03e375c0028110c07c00501d180d9baa0048012030406060326ea800e44b30010018a5eb822660366030603800266004004603a00280d2444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80ba44646600200200644b30010018a508acc004cdc79bae301e0010038a51899801001180f800a0304071222232330010010052259800800c4016264b3001001899802181080100344cc014c084008cc00c00c00501f1810800a03c9119198008008019119801800980100148c06cc070006460366038603800337009000c8c06cc070c070c070c070c070c070c070c070006602c6ea8026460366038603860386038603860380032232330010010032259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c24444444444444530012232330010010032259800800c530103d87a80008992cc004c010006260266605800297ae08998018019817001204e302c00140a9300c00c9805805c888ca6002003004801a0022223259800980b000c4c9660020030068992cc00400600f007803c01e264b30013033003802c0210301bae00140cc60600028170c0b0dd5001c566002603800313259800800c01a264b3001001803c01e264b30013033003899809000912cc00400a00f13259800800c6600201500189801181b001a014805c02e01700b40dc606800481920108180dd6000c01e00e8198c0c000502e18161baa0038acc004c05c006264b300100180344c966002003007803c4c96600260660071330120012259800801401e264b30010018cc00402a003130023036003402900b805c02e01681b8c0d000903240210301bac001803c01d0331818000a05c302c375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002606c0071330150012259800801402a264b30010018cc004036003130023039003403500e807403a01c81d0c0dc009035402d0331bac00180540290361819800a062375a002606400500740cc60600028170c0b0dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0cc00e00b00840c06eb400600e8198c0c000502e18161baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009819801c0160108180dd6800c01d0331818000a05c302c375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009819801c0160108180dd7000a066303000140b860586ea800e00a8149029205240a481490292052302a3754004911119191919912cc004c06003226644b3001301a302f375400313259800981098181baa0018acc004cdc79bae3034303137540026eb8c048c0c4dd5180818189baa301330313754007133225330313372c92010d63726564656e7469616c3a3a200037326601000291010013300f0020013756601c60626ea8080cdd2a4004660666ea40b12f5c1153302f49013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640b902940b8606660606ea8c0ccc0c0dd5180918181baa30333030375400302740b4660046eb0c040c0b8dd500e815198009bac3031302e375403a037159800980f00645660026030605a6ea806a330013031302e37546062605c6ea806a6eb0c034c0b8dd500ecc0c4c0c8c0c8c0c8c0c8c0c8c0c8c0c8c0b8dd500ecdd5980598171baa01d48888c8cc00400401488c966002603e00313301a006375c6070606a6ea800a2b30013025001899198008009bac30393036375400644b30010018a518acc004cc014014c0e8006266004004607600314a081a1038456600260400031323300100137586072606c6ea800c896600200314a115980099802802981d000c528c4cc008008c0ec00503420708acc004cdc3a400c003132337126eb4c0e4004c8cc004004dd6181d181d801112cc0040062900044cc896600266010010005133700002900144005037181d80099801001181e000a0723035375400515980099b87480200062646644b30013028303737540051598009814181b9baa303b303c003899b89375a607660706ea8008006266e20dd6981d981c1baa00200140d514a081a8c0e4004dd6981c981b1baa00330353754602e606a6ea80162b30013370e9005000c4c8cc89660026050606e6ea800a2b3001302830373754607660780071337120026eb4c0ecc0e0dd500144cdc40009bad303b3038375400481aa2941035181c8009bad303930363754006606a6ea8c0e0c0d4dd5002c4cc044010cdd2a40046606e6070606a6ea80092f5c08191032206440c8819103218199baa001409102b45660026030605a6ea806a330013031302e37540353300237586020605c6ea80740aa660026eb0c0c4c0b8dd500e80da444b3001301b303037540031323259800981198191baa0018acc0056600330013371e6eb8c050c0ccdd5180918199baa3015303337540086eb8c0d8c0ccdd5000d28528a0608a518cc004cdc79bae30363033375400805d4a14a2818103044c966002603c60666ea8006264b3001301f30343754003132598009810181a9baa0018992cc004cdd7981d181b9baa001302033039302033039303a3037375400897ae0330394c103d87a80004bd704660026eacc064c0dcdd5000cc064c0dcdd5180c981b9baa0069119b89337020026eb4c0f0c0f4c0f4c0f4c0e4dd50140012444b30010028a508994c004c966002604c60766ea800626eb4c0f0c0fcdd5981f981e1baa0018a400081c8c0f80066ebcc0f8c0fc0066eac00d22259800800c566002600400d13300500348002294103b44c96600266ebcc0f80053010140008acc004cc018010dd6981f98211bab303f001898019ba630430028a5040f11598009980300224001130030078a5040f081e0c10400503f0ca6002003004911981f8011981f9ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0f40066eacc0f800660840069112cc004cdc8a441000038acc004cdc7a441000038998029815198219ba60024bd70000c4cc015300103d87a800000640f919800803c006446600e0046608a66ec0dd48029ba6004001401c81f0608000481f229422942294103f22941034181c981b1baa0018a9981a2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640cc65300130010019bad3039303637540053758602e606c6ea80952225980099b8800248002298103d87a8000899801800801206c1112cc00400a298103d87a80008acc004c0880062604266074607600497ae08cc00400e60780053018001400c81a9039454cc0cd24014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640c86530010019bac303830353754049480010011112cc00400a298103d87a80008acc004cdd7981d00100344c080cc0e4dd4000a5eb8233001003981d8014cdc0000a4004801903420708a99819248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640c4606c60666ea80162a660629201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c102b40c0606a60646ea8c0d4c0c8dd5180a18191baa00130343031375400302840b8812205640ac815888c96600200313259800980d18179baa0028992cc00400605513259800800c0ae05702b815c4cc896600200302d8992cc0040062b300130390028acc004c07cc0d0dd5000c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c96600200304282144cc89660020030448992cc0040062b300130500028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c12cdd500344c9660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b3001001826c13609b04d899912cc00400609f13259800800c1420a105082844c96600260b800713303b00f22598008014566002608860b26ea803e264b300100182a44c96600200313259800800c15a264b30010018acc004c18800a330010038992cc004c124006264b300100182cc4c966002003159800983280144c966002609800313259800800c172264b30010018acc004c1a000a3300100181ac17504c417506541760bb05d82ea0d23066001419060c46ea800a2b300130520018992cc0040060b913259800800c1760bb05d899912cc0040060bf13259800800c1820c1060899912cc0040060c513259800800c18e0c70638992cc004c1bc00e07906441b06eb40060c68378c1b000506a1bad001306b00283020d83069001419c6eb4004c1a000a0ba8348c19800506418311baa00282da0be417c60c06ea80060b483120b505a82d41690661831800a0c2305f37540051598009827800c56600260be6ea800a0610584181058417082e0c174dd5000c15d046415d05f415e0af05782ba0c63060001417860c000505582ac1560aa8308c17800505c182d1baa00f829a0ae8992cc0040062b30013045305a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130680038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001306d003898081836808c18906a1bae00141b460d40028340dd7000983480420d43067007419505d41946eb40060b88340c1940050631bad001306400282ca0ca306200141806eb0004c18400a0ad056418860be00282e8c16cdd5000c15105841520a905482a20c0305d002416d05141646eb800505c182c800a0ae375c00260b000482c8c1580050541bae0013055002415860a60028288dd7000982900120a63050001413860986ea801a08a824a08a812208a812208a812208a812208a812208a812208a812208a812208a826a08b045822c1150511827000a0983758002609a005042821209c304b0014124609600504082041020808260c124005047182480140fa07d03e81f209430470014114608e00503c81e40f20788240c114005043182280140ea07503a81d208c30430014104608600503881c40e20708220c10400503f182080140da06d03681b2084303f00140f4607e00503481a40d20688200c0f400503b181e80140ca065032819207c303b00140e4607600503081840c206081e0c0e4005037181a9baa0018172064817206c81740ba05d02e40e8606e00281a8dd7000981b001206e303400140c860606ea800a0528168400605102881440a103429981619b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea400522010013259800980c98171baa00189929981719b9649113666f756e642070726f7879207574786f3a3a200037326600a00291010013259800980e18181baa0018992cc0040062b3001301c3031375400313259800800c0b6264b300100181740ba05d02e899912cc00400606113259800981d8014401a06281c0c0e40050371bae001303800240e4606c00281a0c0c8dd5000c0b102f40b205902c816206e303430313754003153302f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b8602260606ea8c048c0c0dd5000981918179baa0018a99816a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640b06601200446602860126eacc044c0bcdd5180898179baa001002223300900223375e6064605e6ea8004008c004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101620665980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c816902d1bac3030002375a605c0026466ec0dd418170009ba7302f001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6066003337149101023a200098008054c0d000600a805100a181b00144ca6002015303300199b8a489023a200098008054c0d0006600e66008008004805100a181b0012068303600140cc66e29220102207d0000340c06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901320603758007133005375a0060051323371491102682700329800800cc040dc68014cdc52450127000044004444b30013371000490004400626466453001006980a802ccdc599b800025980099b88002480522903045206e40c866e2ccdc0000acc004cdc4000a4029148182290372064004401866e0c00520203370c002901019b8e00400240bc6eb800d0331b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340a88150301637540126e1d2004370e9000402a01500a80520343016001301630170013012375400716403c3011001300c3754025149a2a6601492011856616c696461746f722072657475726e65642066616c7365001365640241" + : + "590c060101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758601460446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8ca6002606c003303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c00491111111112cc004c10402e26603e608002a26603e01226603e01026603e00e26603e00c26603e00a26603e00826603e0062b30013030303c375400513232323298009bae30440019bae30440049bae30440039bae30440024888966002609200b133030009225980080145660026074608c6ea80522646464b3001304e00289981c18268018992cc004c0f8006264b30013050001899192cc004c104006264b3001305300189981e982900081645905018271baa0028acc004c11400626464653001375a60a8003375a60a8007375a60a80049112cc004c16001206316415430540013053001304e37540051641308260c130dd50009827800c5904d18259baa0028acc004c1080062b3001304b37540050288b20988b2092412460926ea80062c8258c130004c130004c11cdd500a45904544c9660026076608e6ea800626464646644b300130510038991919912cc004c15400e2601660aa0191641486eb8c148004dd7182900118290009bac30500058b209c375a609c0026eb4c138008c138004c134004c120dd5000c59046182500120908b208c182200098218009821000981e9baa0028b20768b207c181b000981a800981a000981980098190009818800981800098178009817000981680098141baa0018b204c302a0018b2050375c6050002605200260486ea800a2c81104004c966002602c60446ea8006264b300130183023375400313259800980c18121baa0018991919912cc004c0b400e200b1640a860540026eb8c0a8008c0a8004c094dd5000c59023181398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601", + Type.Tuple([ + PolicyId, + ScriptHash, + ]), + [ + proxyPolicyId, + protocolScripthash, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1OrderOrderElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + protocolScripthash: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5917090101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99802249286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d65725631001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b30010078999119912cc004c00c0062b30013019375401700280720348acc004c0240062b30013019375401700280720348acc004c0100062b3001301937540170028072034807202c405880b0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009811001c01a00a80f8dd7000a044301f001407460366ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026044007006802a03e375c0028110c07c00501d180d9baa0048012030406060326ea800e44b30010018a5eb822660366030603800266004004603a00280d2444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80ba44646600200200644b30010018a508acc004cdc79bae301e0010038a51899801001180f800a0304071222232330010010052259800800c4016264b3001001899802181080100344cc014c084008cc00c00c00501f1810800a03c9119198008008019119801800980100148c06cc070006460366038603800337009000c8c06cc070c070c070c070c070c070c070c070006602c6ea8026460366038603860386038603860380032232330010010032259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c24444444444444530012232330010010032259800800c530103d87a80008992cc004c010006260266605800297ae08998018019817001204e302c00140a9300c00c9805805c888ca6002003004801a0022223259800980b000c4c9660020030068992cc00400600f007803c01e264b30013033003802c0210301bae00140cc60600028170c0b0dd5001c566002603800313259800800c01a264b3001001803c01e264b30013033003899809000912cc00400a00f13259800800c6600201500189801181b001a014805c02e01700b40dc606800481920108180dd6000c01e00e8198c0c000502e18161baa0038acc004c05c006264b300100180344c966002003007803c4c96600260660071330120012259800801401e264b30010018cc00402a003130023036003402900b805c02e01681b8c0d000903240210301bac001803c01d0331818000a05c302c375400715980099b8748018006264b300100180344c966002003007803c01e26644b3001001804c4c96600200300a80544c966002606c0071330150012259800801402a264b30010018cc004036003130023039003403500e807403a01c81d0c0dc009035402d0331bac00180540290361819800a062375a002606400500740cc60600028170c0b0dd5001c56600266e1d20080018992cc00400600d13259800800c01e00f0078992cc004c0cc00e00b00840c06eb400600e8198c0c000502e18161baa0038acc004cdc3a401400313259800800c01a264b3001001803c01e00f132598009819801c0160108180dd6800c01d0331818000a05c302c375400715980099b8748030006264b300100180344c966002003007803c01e00f132598009819801c0160108180dd7000a066303000140b860586ea800e00a8149029205240a481490292052302a3754004911119191919912cc004c06003226644b3001301a302f375400313259800981098181baa0018acc004cdc79bae3034303137540026eb8c048c0c4dd5180818189baa301330313754007133225330313372c92010d63726564656e7469616c3a3a200037326601000291010013300f0020013756601c60626ea8080cdd2a4004660666ea40b12f5c1153302f49013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640b902940b8606660606ea8c0ccc0c0dd5180918181baa30333030375400302740b4660046eb0c040c0b8dd500e815198009bac3031302e375403a037159800980f00645660026030605a6ea806a330013031302e37546062605c6ea806a6eb0c034c0b8dd500ecc0c4c0c8c0c8c0c8c0c8c0c8c0c8c0c8c0b8dd500ecdd5980598171baa01d48888c8cc00400401488c966002603e00313301a006375c6070606a6ea800a2b30013025001899198008009bac30393036375400644b30010018a518acc004cc014014c0e8006266004004607600314a081a1038456600260400031323300100137586072606c6ea800c896600200314a115980099802802981d000c528c4cc008008c0ec00503420708acc004cdc3a400c003132337126eb4c0e4004c8cc004004dd6181d181d801112cc0040062900044cc896600266010010005133700002900144005037181d80099801001181e000a0723035375400515980099b87480200062646644b30013028303737540051598009814181b9baa303b303c003899b89375a607660706ea8008006266e20dd6981d981c1baa00200140d514a081a8c0e4004dd6981c981b1baa00330353754602e606a6ea80162b30013370e9005000c4c8cc89660026050606e6ea800a2b3001302830373754607660780071337120026eb4c0ecc0e0dd500144cdc40009bad303b3038375400481aa2941035181c8009bad303930363754006606a6ea8c0e0c0d4dd5002c4cc044010cdd2a40046606e6070606a6ea80092f5c08191032206440c8819103218199baa001409102b45660026030605a6ea806a330013031302e37540353300237586020605c6ea80740aa660026eb0c0c4c0b8dd500e80da444b3001301b303037540031323259800981198191baa0018acc0056600330013371e6eb8c050c0ccdd5180918199baa3015303337540086eb8c0d8c0ccdd5000d28528a0608a518cc004cdc79bae30363033375400805d4a14a2818103044c966002603c60666ea8006264b3001301f30343754003132598009810181a9baa0018992cc004cdd7981d181b9baa001302033039302033039303a3037375400897ae0330394c103d87a80004bd704660026eacc064c0dcdd5000cc064c0dcdd5180c981b9baa0069119b89337020026eb4c0f0c0f4c0f4c0f4c0e4dd50140012444b30010028a508994c004c966002604c60766ea800626eb4c0f0c0fcdd5981f981e1baa0018a400081c8c0f80066ebcc0f8c0fc0066eac00d22259800800c566002600400d13300500348002294103b44c96600266ebcc0f80053010140008acc004cc018010dd6981f98211bab303f001898019ba630430028a5040f11598009980300224001130030078a5040f081e0c10400503f0ca6002003004911981f8011981f9ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0f40066eacc0f800660840069112cc004cdc8a441000038acc004cdc7a441000038998029815198219ba60024bd70000c4cc015300103d87a800000640f919800803c006446600e0046608a66ec0dd48029ba6004001401c81f0608000481f229422942294103f22941034181c981b1baa0018a9981a2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640cc65300130010019bad3039303637540053758602e606c6ea80952225980099b8800248002298103d87a8000899801800801206c1112cc00400a298103d87a80008acc004c0880062604266074607600497ae08cc00400e60780053018001400c81a9039454cc0cd24014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640c86530010019bac303830353754049480010011112cc00400a298103d87a80008acc004cdd7981d00100344c080cc0e4dd4000a5eb8233001003981d8014cdc0000a4004801903420708a99819248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640c4606c60666ea80162a660629201996578706563740a2020202020202020202076315f305f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c102b40c0606a60646ea8c0d4c0c8dd5180a18191baa00130343031375400302840b8812205640ac815888c96600200313259800980d18179baa0028992cc00400605513259800800c0ae05702b815c4cc896600200302d8992cc0040062b300130390028acc004c07cc0d0dd5000c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c4c9660020030378992cc004006264b300100181cc4c96600200313259800800c0ee264b30010018992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c96600200304282144cc89660020030448992cc0040062b300130500028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c12cdd500344c9660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b3001001826c13609b04d899912cc00400609f13259800800c1420a105082844c96600260b800713303b00f22598008014566002608860b26ea803e264b300100182a44c96600200313259800800c15a264b30010018acc004c18800a330010038992cc004c124006264b300100182cc4c966002003159800983280144c966002609800313259800800c172264b30010018acc004c1a000a3300100181ac17504c417506541760bb05d82ea0d23066001419060c46ea800a2b300130520018992cc0040060b913259800800c1760bb05d899912cc0040060bf13259800800c1820c1060899912cc0040060c513259800800c18e0c70638992cc004c1bc00e07906441b06eb40060c68378c1b000506a1bad001306b00283020d83069001419c6eb4004c1a000a0ba8348c19800506418311baa00282da0be417c60c06ea80060b483120b505a82d41690661831800a0c2305f37540051598009827800c56600260be6ea800a0610584181058417082e0c174dd5000c15d046415d05f415e0af05782ba0c63060001417860c000505582ac1560aa8308c17800505c182d1baa00f829a0ae8992cc0040062b30013045305a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130680038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001306d003898081836808c18906a1bae00141b460d40028340dd7000983480420d43067007419505d41946eb40060b88340c1940050631bad001306400282ca0ca306200141806eb0004c18400a0ad056418860be00282e8c16cdd5000c15105841520a905482a20c0305d002416d05141646eb800505c182c800a0ae375c00260b000482c8c1580050541bae0013055002415860a60028288dd7000982900120a63050001413860986ea801a08a824a08a812208a812208a812208a812208a812208a812208a812208a812208a826a08b045822c1150511827000a0983758002609a005042821209c304b0014124609600504082041020808260c124005047182480140fa07d03e81f209430470014114608e00503c81e40f20788240c114005043182280140ea07503a81d208c30430014104608600503881c40e20708220c10400503f182080140da06d03681b2084303f00140f4607e00503481a40d20688200c0f400503b181e80140ca065032819207c303b00140e4607600503081840c206081e0c0e4005037181a9baa0018172064817206c81740ba05d02e40e8606e00281a8dd7000981b001206e303400140c860606ea800a0528168400605102881440a103429981619b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea400522010013259800980c98171baa00189929981719b9649113666f756e642070726f7879207574786f3a3a200037326600a00291010013259800980e18181baa0018992cc0040062b3001301c3031375400313259800800c0b6264b300100181740ba05d02e899912cc00400606113259800981d8014401a06281c0c0e40050371bae001303800240e4606c00281a0c0c8dd5000c0b102f40b205902c816206e303430313754003153302f49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b8602260606ea8c048c0c0dd5000981918179baa0018a99816a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640b06601200446602860126eacc044c0bcdd5180898179baa001002223300900223375e6064605e6ea8004008c004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101620665980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c816902d1bac3030002375a605c0026466ec0dd418170009ba7302f001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6066003337149101023a200098008054c0d000600a805100a181b00144ca6002015303300199b8a489023a200098008054c0d0006600e66008008004805100a181b0012068303600140cc66e29220102207d0000340c06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901320603758007133005375a0060051323371491102682700329800800cc040dc68014cdc52450127000044004444b30013371000490004400626466453001006980a802ccdc599b800025980099b88002480522903045206e40c866e2ccdc0000acc004cdc4000a4029148182290372064004401866e0c00520203370c002901019b8e00400240bc6eb800d0331b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340a88150301637540126e1d2004370e9000402a01500a80520343016001301630170013012375400716403c3011001300c3754025149a2a6601492011856616c696461746f722072657475726e65642066616c7365001365640241" + : + "590c060101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e95200091192cc004c01c00626464b3001301a0028024590171bae3018001301437540071598009805800c4c8c96600260340050048b202e375c603000260286ea800e2c809101218091baa002912cc004006297ae089980a9809180b00099801001180b800a028911919800800801912cc00400629422b30013371e6eb8c06000400e294626600400460320028099016488c8cc00400400c88cc00c004c00800a4602a602c00323015301630160019180a980b180b180b180b180b180b180b180b000cc040dd500548c054c058c058c058c058c058c05800644646600200200644b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c488888888888cc88cc88cc8966002602a01313259800980b18111baa0018992cc004c06cc08cdd5000c56600266e3cdd7181398121baa001375c601a60486ea8c030c090dd5180718121baa330043758601c60486ea80680862660126eacc028c090dd500d19ba548008cc098dd481025eb822c81122c8110c098c08cdd5181318119baa300d30233754604c60466ea80062c8108cc004dd6181298111baa0180138acc004c0640262b300130153021375402519800981298111baa3025302237540253758601460446ea8062604a604c604c604c604c604c604c604c60446ea80626eacc020c088dd500c24444646600200200a4464b3001301c00189980a8031bae302c302937540051598009810000c4c8cc004004dd6181698151baa0032259800800c528c5660026600a00a605c003133002002302f0018a5040a481622b3001301d001899198008009bac302d302a375400644b30010018a508acc004cc014014c0b80062946266004004605e002814902c456600266e1d200600189919b89375a605a00264660020026eb0c0b8c0bc008896600200314800226644b300133008008002899b800014800a20028160c0bc004cc008008c0c000502d18149baa0028acc004cdc3a4010003132332259800981198159baa0028acc004c08cc0acdd518179818001c4cdc49bad302f302c37540040031337106eb4c0bcc0b0dd5001000a0548a5040a8605a0026eb4c0b4c0a8dd500198149baa30133029375400b15980099b87480280062646644b30013023302b3754005159800981198159baa302f3030003899b89001375a605e60586ea800a266e20004dd6981798161baa00240a914a08150c0b4004dd6981698151baa00330293754605860526ea801626601c00866e9520023302b302c3029375400497ae0409c8139027204e409c8138c09cdd5000a2c81022b300130153021375402513259800980b18111baa001899192cc004c070c090dd5000c56600264b3001980099b8f375c601e604c6ea8c038c098dd5180818131baa001375c6052604c6ea800a9429450244528c6600266e3cdd7181498131baa001022a50a5140908120cc014dd6180798129baa01b0228992cc004c064c094dd5000c4c9660026034604c6ea8006264b3001301b302737540031325980099baf302c30293754002603066056603066056605860526ea80112f5c06605698103d87a80004bd704660026eacc04cc0a4dd5000cc04cc0a4dd5180998149baa0069119b89337020026eb4c0b8c0bcc0bcc0bcc0acdd50108012444b30010028a508994c004c9660026042605a6ea800626eb4c0b8c0c4dd5981898171baa0018a40008160c0c00066ebcc0c0c0c40066eac00d22259800800c566002600400d13300500348002294102e44c96600266ebcc0c00053010140008acc004cc018010dd69818981a1bab3031001898019ba630350028a5040bd1598009980300224001130030078a5040bc8178c0cc0050310ca60020030049119818801198189ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0bc0066eacc0c000660680069112cc004cdc8a441000038acc004cdc7a4410000389980298111981a9ba60024bd70000c4cc015300103d87a800000640c519800803c006446600e0046606e66ec0dd48029ba6004001401c81886064004818229422942294103122941027181598141baa0018b204c3298009800800cdd6981598141baa0029bac30113028375403c9112cc004cdc40012400114c103d87a800089980180080120521112cc00400a298103d87a80008acc004c0740062603266058605a00497ae08cc00400e605c005337000029000a00640a0815a2c8128ca600200337586054604e6ea807690002002222598008014530103d87a80008acc004cdd7981600100344c060cc0acdd4000a5eb823300100398168014cdc0000a4004801902720548b20483028302537546050604a6ea80562c811a2c8118c09cc090dd5181398121baa300e30243754002604c60466ea80062c8108cc004dd6181298111baa0180138b20404080810088c8c966002602e60466ea800a2646644b3001302b0018992cc004c06cc09cdd5000c4c8c8c8c8c8c8c8c8c8c8ca6002606c003303600a981b004cc0d8022606c00f3036006981b002cc0d8012606c0073758606c00491111111112cc004c10402e26603e608002a26603e01226603e01026603e00e26603e00c26603e00a26603e00826603e0062b30013030303c375400513232323298009bae30440019bae30440049bae30440039bae30440024888966002609200b133030009225980080145660026074608c6ea80522646464b3001304e00289981c18268018992cc004c0f8006264b30013050001899192cc004c104006264b3001305300189981e982900081645905018271baa0028acc004c11400626464653001375a60a8003375a60a8007375a60a80049112cc004c16001206316415430540013053001304e37540051641308260c130dd50009827800c5904d18259baa0028acc004c1080062b3001304b37540050288b20988b2092412460926ea80062c8258c130004c130004c11cdd500a45904544c9660026076608e6ea800626464646644b300130510038991919912cc004c15400e2601660aa0191641486eb8c148004dd7182900118290009bac30500058b209c375a609c0026eb4c138008c138004c134004c120dd5000c59046182500120908b208c182200098218009821000981e9baa0028b20768b207c181b000981a800981a000981980098190009818800981800098178009817000981680098141baa0018b204c302a0018b2050375c6050002605200260486ea800a2c81104004c966002602c60446ea8006264b300130183023375400313259800980c18121baa0018991919912cc004c0b400e200b1640a860540026eb8c0a8008c0a8004c094dd5000c59023181398121baa0018b2044300c30233754601a60466ea8c098c08cdd5000c590211980300111980798021bab300d30233754601a60466ea800400888cc0180088cdd7981318119baa0010023001001300b00b2232330010010032259800800c5300103d87a80008992cc004c010006260206604600297ae08998018019812801203e3023001408444464b30013013001899192cc004c09800a00916408c6eb8c090004c080dd5001c566002602e003132598009812800c4cc030dd61812000912cc00400a00b19800803cc09800a26002604e004803902445902218101baa0038acc004c050006264b300130250018998061bac30240012259800801401633001007981300144c004c09c00900720488b20443020375400715980099b87480180062646644b300130270018998071bac30260012259800801401e33001009981400144c004c0a4009009204c8b2048375a6048002604a00260406ea800e2b30013370e9004000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9005000c4c8c966002604c0050048b2046375a604800260406ea800e2b30013370e9006000c4c8c966002604c0050048b2046375c604800260406ea800e2c80f101e203c407880f101e203c301e37540043012004301230130044590090c028004c014dd5005c52689b2b200601", + Type.Tuple([ + PolicyId, + ScriptHash, + ]), + [ + proxyPolicyId, + protocolScripthash, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProtocolManagementProtocolManagementWithdraw { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "594460010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888888896600264653001301c001980e180e800cdc3a4009301c0024888966002600460386ea800e330013020301d3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b874803246042604400323021302230220019b80480066e05200091810981118111811181118111811181118111811000cdd2a4004911111111111111194c004889660026020605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c054006264b3001001803c4c966002003159800981d80144c966002603000313259800800c02a264b30010018acc004c0f800a33001001806402d00e402d03b402e01700b805a07e303c00140e860706ea800a2b300130170018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11400e02701241086eb40060228228c1080050401bad00130410028072084303f00140f46eb4004c0f800a01681f8c0f000503a181c1baa002804a06a40d4606c6ea800601081c2011008804402103c181c800a06e30353754005159800980a000c566002606a6ea800a00f00640d900640c88190c0ccdd5000c0150084015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c96600260760070058042070375c00281d8c0e0005036181a1baa0038acc004c04c006264b300100180344c966002003007803c4c96600260760071330180012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0ec00e26603000244b3001002803c4c96600200319800805400626004607c006805201700b805c02d03f181e001207480420703758003007803a076303800140d860686ea800e2b300130120018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981f001c4cc06c004896600200500a8992cc0040063300100d800c4c008c10400d00d403a01d00e8072084303f00240f500b40ec6eb000601500a40f8607600281c8dd6800981d001401d03b181c000a06c303437540071598009808800c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002602000313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009807800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c015031206240c48189031206240c460646ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260286606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980a981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301a0018acc004c0e8dd5001401e00c81da2b300130190018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026038003159800981e1baa006804c02103d4566002603600313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783019303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002602a60686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c058006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130150018acc004c0d8dd5002400e00481ba0048199033181a1baa00348888cc89660026030606e6ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009821801c566002603e607c6ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013053002899818007112cc00400a26606401a44b30010028cc00401e330010058992cc004c0d0c14cdd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982e00144cc8966002607400313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252052825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0e4006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a504a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981f800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b300130380018992cc00400608b13259800800c11a08d132598009830801c4cc0f800489660020050078992cc00400633001001898011832001c129029412a09504a82520ca3062002418104741786eb000608d046418460bc00282e0c168dd5002c566002606e00313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252054825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a904a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981a800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea801608882b905720ae415c82b905720ae415c264b300130390018992cc00400608913259800800c56600260be00519800800c02208a813a08a82e208b045822c115060182e800a0b630593754005159800981c000c4c9660020030448992cc0040062b3001305f0028acc004c0ecc168dd5000c4c9660020030468992cc004006264b300100182444c966002003159800983180146600200719800800c032092816209281620928302093049824c1250641830800a0be3061002823c11e08f047418860be00282e8c16cdd5000c115058411505c411608b045822a0c0305d001416c60b26ea800a08682b1056182b9baa001305737540070424165042821410a08482e8c168005058182d001410208104082020b63058001415860a86ea806607c82884cc0d0054896600200519800982c182a9baa302f30553754049230353055375460b2646600200200444b30010018a5eb8503d87a80008101800044c8cc89660033001303a305a375460bc0074a14a282c22660bb30014a14c103d87a8000a60103d87980004160660ba6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18000400e294626600400460c200282d105e44cc176600294298103d87a8000a60103d87980004160660ba6e9c0092f5c113305d9800a51a60103d87a8000a60103d87980004160660ba6e9ccc174dd400080125eb8105820b0375860b860ba0026eb4c170008cc008008c17000505948888ca6002003005802400d00111112cc00400e2b30010028800c54cc16d24112657870656374205b5d203d206c6973745f6200164179159800801454cc16d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c20073061002cc004c18000e6eb4c18000a002802900420bc41792232330010010032259800800c52f5c1133225980099baf305e305b375460bc60b66ea8c0d4c16cdd500118181982e9ba90054bd7044cc174008cc01001000626600800800282c0c170004c17400505a4dc02400523059305a305a305a305a305a305a305a305a0019112cc00400a2980103d87a80008acc004c0e000626074660b460b600497ae08cc00400e60b80053030001400c82a9059488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd5982d800982e800a0b614bd6f7b630488966002607060ae6ea800e264b300100180144c966002003003801c00e264b3001305f003802c01105c1bad001801a0be305c001416860b06ea800e00282aa460b260b460b460b40032232330010010032259800800c52f5c113305b374e600660b80026600400460ba00282d2444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c17c0066eb4c1800066600600660c80048048c1880050601bab305d003375c60b40026600600660be00460ba00282da44646600200200644b30010018a508acc004cdd7982e0009ba70038a51899801001182e800a0ac416922259800981c182b9baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c96600200313259800800c022264b300130640028cc00401e330010058992cc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b300130400018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009835801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009838001c05a02a8368dd7000a0e0306d00141ac6eb8004c1b000906d1835000a0d080820d0375800300f807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c118006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c96600200301280944c96600260dc007159800800c04e264b300100180a4052029014899912cc00400602d13259800800c05e02f01780bc4c96600260e600701980c20e0375c0028398c1c000506e1bae001306f00241c060da002835a0268358dd6000c04a0248370c1ac0050691bad001306a002807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0fc006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b3001303e0018992cc00400601713259800800c03201900c8992cc004c1a000e01d00d41946eb40060188340c19400506318309baa0048acc004c0f4006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306b003808c0410681bad001807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0f0006264b3001001805c4c96600200300c8064032264b3001306800380740350651bad00180620d03065001418c60c26ea80122b30013370e9007000c4c96600200300b8992cc00400601900c80644c96600260d000700e806a0ca375a00300c41a060ca0028318c184dd5002402905e20bc417882f105e20bc417882f0c17cdd5001c02502e402503240250611831000a0c03062002803c01e00f007418c60c000282f0c18000a00b005802c015061182f000a0b8305e002801c00e007003417c60b800282d0c160dd5001c00505548c164c168c168c168c168006444653001001802400d0011112cc00400a200319800801cc17c00a6600860bc004002801905c4dc424000911111111111111114c004c194dd5008c88966002602600519800801c00a900048896600260080071337000026eb4c118c1b0dd5001c54cc1a924011a6578706563742076616c69646174696f6e287265717565737429001641a480922a660ce9212e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641992259800800c5200089807998010011836000a0d291808800c89660020031480022601e6600400460d8002834a6016017222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906c44cc014014c1cc01106c1bae306c001375a60da00260de0028368cc03801000c5200048888888ca6002444464b30013053307237540031325980099baf30773074375460ee60e86ea8c138c1d0dd500098249983b1ba90054bd70456600260a730013756609c60e86ea8c138c1d0dd5000c01691108747265617375727900402113259800982d183a1baa0018992cc004006330010018992cc004c15cc1d8dd5000c4c96600266ebcc1ecc1e0dd5183d983c1baa001304d3307a375201297ae08acc004c15e60026eacc148c1e0dd5000c026910108747265617375727900403113259800982f183c1baa0018992cc004006330010018acc004cdd7980e183d1baa0034c103d87a800089983e0029983e0009983e1ba6329800800cdd5982a983d9baa00499198008009bab3056307c375460ac60f86ea8024896600200314bd6f7b63044c8cc20004cdd8183e8009ba63233001001375660fe00444b30010018a5eb7bdb182264661060266ec0c20004004dd4182c1bad308101001330030033085010023083010014204046600600661040200461000200283f10011112cc00400a2003132332298008034c21004016646600200200a44b30010018998420099bb037520086e9800d2f5bded8c113298009bae3082010019bab3083010019843808012444b30013372001000713308801337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528211002880144cc22404cdd81ba9009374c002004842008ca6002003008801a002222598008014400626466453001006984800802cc8cc004004014896600200313309001337606ea4010dd4001a5eb7bdb1822653001375c611c02003375a611e0200330930100248896600266e4002000e2661280266ec0dd48041ba80070058acc004cdc7804001c4c96600260e6003100289984a8099bb037520126ea00040090900119b8000700289984a0099bb037520066ea0008cc01801800508f01211e02184880800a11e0240186eb8c22404004dd69845008009846008012114028998440099bb037520066e98008cc01801800508301210602184280800a1060240186eb8c1f4004dd5983f00098400080120fc4bd7041bd07741b901d41ba0dd06e83720fe307c30793754003153307749012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641d860a260f06ea80062a660ec920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641d5153307649143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641d460f460ee6ea80062a660ea92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641d0660126eb0c13cc1d8dd5004002c1a501941a60d3069834a0f6307830753754003153307349013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641c8609a60e86ea8c138c1d0dd5000c54cc1c92401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c515330724914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c460ec60e66ea80062a660e292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641c06600a6eb0c1d4c1c8dd50020014c010012600c00c9112cc004c13c02e33001375860e860e26ea8072444b300130543073375400713259800800c00a264b3001001801c00e00713259800983d801c01600883c0dd6800c00d07b183c000a0ec3074375400700141c5222225980099b87300600530060048acc004c03400e266e24006600200b003a40012223259800982d183c9baa001899912cc004c184c1ecdd5000c4c96600200319800800c56600266ebcc07cc1f4dd5001984000983e9baa0078acc004cdd7982b983e9baa001308001307d3754007132598009831983e9baa001899192cc004cdc39bad308301002375a60b46100026ea801a2b30013370e6eb4c20c04004dd6982c9840009baa0068acc004cdd7984180984200800980e9840009baa006899b8000898009bab305a308001375460b46100026ea802a6eb8c20c040326eb8c20c04c21004031014454cc1f92413665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001641f5153307e49126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001641f5153307e4912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001641f461060200260fc6ea80062a660f8921184578706563746564204f4465706f73697420616374696f6e001641ec60ac60fa6ea80060ec83d20ea83d20e880da0e907483a41d108201183f983e1baa00183920f2307d307a375400260a660f46ea8c150c1e8dd500241a107719806003801203e831a0e683120e691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307f307c375460fe0046eb4c1fcc1f0dd5183f80180244c9660033001002a5191112cc0040062b30013371e008911008a5189981000299841809ba90043308301375200697ae041f914a083f101d44cdc4803cc004dd61829983e9baa00ca400122323259800980e000c4cdc000199b83337040026eb4c16cc20404dd50021bad305a3081013754009100341f930010059bae3083010019bae30830130840100140506eb0c20804c1fcdd5001203283720f43301d375860a460f86ea802c8dd6184000983e9baa00183720f2375660fc60fe00260fc00330010079bae307c30793754603e60f26ea802200d005402d1533077490123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641d8b3001305830090018a4001159800800c19e264b3001307d0028992cc004cdc79bae307900248810455534472008800c1a90771bad307900183420f4307b00141e483a8cc06cdd5980a183b9baa005375c60a260ee6ea8c074c1dcdd50034c1d0c1c4dd50204c12cc1c4dd5020a4444446644b300159800980a0014528c6600260b20034a14a283b107644c96600260b460f26ea80062646644646644b30013060307f37540031325980099b87337026eb4c210040040180122b30013370e6eb4c21004c21404004dd6984200984280803c56600266e2520000098acc0066002660526eb0c21004c20404dd50329bae305a3081013754604e6102026ea802e021375860b66102026ea8032661060260b66102026ea8c09cc20404dd50059984180a61054455534472004bd7052000403915980099b890033233001001375860b66104026ea8198896600200314800226644b30013375e611002610a026ea8008c22004c22404c22404c22404c22404c22404c22404c22404c22404c22404c22404c21404dd5007c4cdc0000cc004dd5982f9842809baa0029bae305f30850137546056610a026ea803e910104555344720040651001420804610c0200266004004610e0200284200a3300100b832cdd6982d1840809baa00c9bad3023308101375401900999b8000a0094035153307f49012b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641f9153307f4919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001641f9159800cc004cc0a4dd61842009840809baa065375c60b46102026ea8c09cc20404dd5005c0426eb0c16cc20404dd50064cc20c04c16cc20404dd518139840809baa00b33083014c1054455534472004bd704c16000d00e4660020170659bad305a3081013754019375a60466102026ea803201300a4035153307f491b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641f883f22a660fe9213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641f9153307f4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641f865300133014001375a6108026102026ea800a6eb8c16cc20404dd518139840809baa00b9bae30233081013754604e6102026ea802d2225980098321841809baa0038992cc004cdd79844009842809baa308801308501375400260b46610e026ea40092f5c115980098324c004dd5982f9842809baa00180152210d7374616b696e675f7661756c740040651325980098359842809baa0018992cc004006330010018acc004cdd798149843809baa0034c103d87a8000899844809ba898009bab30613087013754007005a441045553447200406c6611202611402610e026ea8004cc2240400d2f5c107c4210050810140550810184080c2040610202846008c22404c21804dd5000c54cc2100524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016420c0460bc610a026ea80062a661060292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642080515330830149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016420804610e026108026ea800e2a661040292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f696478290016420404375860b26100026ea81922a660fc92013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641f466e04018004c20404c20804c20804c20804c20804c20804c1f8dd5004acc004c060006266e10cdc1002801000c5200041e86eb4c1f8004dd6983f183d9baa307e980082fcdd7183f183d9baa3021307b375400b375a60a860f66ea801a6eb4c074c1ecdd5003201a329800998070009bad307e307b3754005375c60aa60f66ea8c084c1ecdd5002cdd7180e983d9baa3021307b375400a9112cc004c178c1f4dd5001c4c96600266ebcc20804c1fcdd5184100983f9baa3059307f375400260a866102026ea40092f5c1159800982f4c004dd5982c983f9baa3059307f3754003002a4410d7374616b696e675f7661756c7400404d132598009832983f9baa0018992cc00400633001001899841809ba898009bab305b308101375460b66102026ea800e00b489045553447200405466106026108026102026ea8004cc20c0400d2f5c107b403d07b83dc1ee0f6843008c20c04c20004dd5000c1d907d182c183f9baa3059307f3754003153307d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f1153307d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f061020260fc6ea800e2a660f892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ec375860fa60f46ea817a2a660f092013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641dc602c60f26ea80122a660ee92012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641d930010069bac307a3077375400523371290001bad3052307837540028082600200d480024466e00004dd69829183c9baa002404c8acc004c15802e33001375860e860e26ea8072444653001001802400d0011112cc00400a2b30010018a518a5041e1159800800c52845660026600860f40046eb4c1e800633001003983d8014c1ec005003452820e841e083c244b30010018a40011301a33002002307700141d1223370666e08008dd6982618399baa001375a609a60e66ea800660e860e26ea8102609660e26ea8105222222325980099914c004c8cc00400400c896600200314a115980099baf307f307c375460fe60f86ea8c158c1f0dd5183f80098289983f1ba90034bd704528c4cc008008c2000400507920faa50a5141dc6eb0c1ecc1e0dd502e1bae301a30783754603c60f06ea800a2b300133225980099b87300a002300a0098acc004c04400633001002800c88c96600260ba60f86ea800626464b3001305d307e37540031325980099b87375a6106020026eb4c168c20004dd5001c4cdd7984180984200800980e9840009baa0038a5041f460fe6ea8006294107c182b983f1baa32598009832183f1baa0018992cc004006330010018acc004cdd798111840009baa003308301308001375400d15980099baf305a30800137540026106026100026ea800e200307941f507841f5077407907783bc1de0ee842808c20804c1fcdd5000c1d507c182b983f1baa3058307e375400861000260fa6ea80060d683d0cc03c02c005008419d0774199077198101bac307b307837540b86eb8c144c1e0dd5180f183c1baa002375860a460f06ea800e2b300198009bac3051307837540b9375860f660f06ea800e6eb0c138c1e0dd50012444b30013370e6008004601601519800805400a4464b3001305e307d375400319800984080983f1baa0019bac301b307e3754007323305000523375e6106026100026ea8004dd38011bac301b307e37540069112cc004c184c20004dd5000c56600266ebcc21004c20404dd50019842009840809baa308401308101375400d15980099baf305a308101375400660b66102026ea8c21004c20404dd500344cdc3cc004dd5982d9840809baa0039bae3084010029bae30840130850100240546601a64b300133710002900044c164006200283f8dd6982d9840809baa006308401308101375400314a083f2294107e454cc1fd24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641f88a9983e2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641ec6602000a002804a2a660f292013b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e67746828726571756573747329001641e08982c4c006600200f375860f660f06ea800e4b30013014375a60a660f26ea8006260b26eb4c148c1e4dd5000c52820ec40453301c3756602a60f06ea8170dd71829183c1baa301e30783754005980082e4dd7183d983c1baa301e30783754005375a60a260f06ea800e6eb4c068c1e0dd5001a0149980c9bac304e3078375400446eb0c1f0c1e4dd5000a44446530013080010019bab308001308101001984000801d6600260ba601c0091480022b300100483644c96600261040200b1325980099b8f375c60fc0049110455534472008800c1bd07c1bad307e001836a0fe30800100441f883d1222259800cc00400e9464444b30010018acc004cdc78022441008a5189981200519843809ba90043308701375200697ae042080514a0841009021456600266e1ccdc09bad30840130810137540086eb4c21004c20404dd5001000c4c96600266e1e60026eb0c160c20804dd5006520009119912cc006600260cc0034a14a284180a264b3001337126602600200b30010099bae308a010039bae308a01308b01003406d1337000080031533085014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642100466e080040162006841808dd61843809842009baa00232980080a52000912cc004cdd798121843809baa002374e0071337000026eb4c184c21c04dd5001440050840120423758610e026108026ea800901e19b8100200a8801454cc200052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641fcb3001301c0098a400314800907e41cd07e41c907e0c2000400915330764901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641d51533076491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641d5153307649142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641d460080088a5041b8837044b300133710002900045300103d87a8000899802001000a0d82264b30010018204102264b3001001820c4c966002003042821410a0851332259800800c112264b30010018acc004c17c00a264b3001303c305b375400513259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc00400609904c8264132264b300130670038acc004c10cc188dd500344c96600200304e8992cc00400609f04f827c13e26644b3001001828c4c966002003052829414a0a5132598009836801c4c966002609400313259800800c156264b300100182b415a0ad0568992cc004c1c400e02505741b86eb80050711837000a0d8306a37540171598009824800c56600260d46ea802e01f05441ad054419c8338c1a0dd5005414d06a1bae00141b460d40028340dd7000983480120d43067001419460c66ea801a09a830209a8320dd7000a0ce3064001418860c800504a825412a0948328c1880050601831001412209104882420c63060001417860b86ea800a08c82c84c01cc17c02208a82e208b045822c115060182e800a0b6375c00260b800482e8c1680050581bac001820410105b182c00120ac81ea03c81ea03c8992cc00400607d03e81f44c8c00cc164010dd6800c0f9059182b00120a88992cc00400607903c81e44c8c00cc15c010dd6800c0f1057182a00120a481ca0a081cc0e6073039415060a20028278c14400a06f03781bc0dd0521827800a09a375a002609c005034413c60980028250dd6800982580140c504c1824800a08e3758002609000502e8172092304600141106eb0004c11400a05702b411860860028208c0fcdd500340a503c40a50401bac00181440a10431820000a07c3040002813409a04d0264104607c00281e0c0f800a049024812409103f181e000a0743038375400f02240d4444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608e00719800804c6600200900c805a01e805a022805a088375a00300a411c60880028210c11000a01100880440210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d8444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c12800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13c00e02901341306eb800504f1826000a094375c00260960048260c1240050474039012403901440390471bac001806c03504a1823800a08a3047002805c02e01700b4120608a0028218dd6800982200140210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d880e407203901c40dc664464b30013014303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301833038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8054dd7181a18189baa0019800912cc004006297ae089981a1818981a80099801001181b000a0669112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206091111919800800802912cc004006200b13259800800c4cc010c0e800801a26600a60740046600600600281c0c0e80050374dd6180518181baa01448888c8c8c8cc88c966002003159800980d181c9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130430028acc004c07cc0f8dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305a0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c154dd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260cc00713304300f225980080146600201f102b827a06e8992cc0040062b300130453064375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130720038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307700389808183b808c1790741bae00141dc60e80028390dd7000983980420e8307100741bd05941bc6eb40060b08390c1bc00506d1bad001306e00282aa0de306c00141a86eb0004c1ac00a0a505241b060d20028338c194dd5000c14106241420a105082820d43067002419504d418c6eb80050661831800a0c2375c00260c40048318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a001416060ac6ea801a082829a0828142082814208281420828142082814208281420828142082814208282ba083041820c10505b182c000a0ac375800260ae00503e81f20b03055001414c60aa00503c81e40f207882b0c14c005051182980140ea07503a81d20a83051001413c60a200503881c40e20708290c13c00504d182780140da06d03681b20a0304d001412c609a00503481a40d20688270c12c005049182580140ca06503281920983049001411c609200503081840c20608250c11c005045182380140ba05d02e81720903045001410c608a00502c81640b20588230c10c005041181f9baa0018152078815208081540aa05502a4110608200281f8dd700098200012082303e00140f060746ea800604a81ba04b025812c09503f29981b99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40d522010013259800980d181c9baa00189929981c99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981d9baa0018992cc0040062b3001301d303c375400313259800800c0e6264b300100181d40ea07503a899912cc0040060791325980098230014401a07a8218c1100050421bae00130430024110608200281f8c0f4dd5000c0e103a40e207103881c2084303f303c3754003153303a49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640e4602860766ea8c054c0ecdd5000981e981d1baa0018a9981c24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640dc6601400c4646600200260066eacc054c0ecdd5180a981d9baa0022259800800c528456600266e3cdd7181f80081c4528c4cc008008c100005039207a300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c207e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81c90391bac303c002375a60740026466ec0dd4181d0009ba7303b001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a607e003337149101023a200098008054c10000600a805100a182100144ca6002015303f00199b8a489023a200098008054c100006600e66008008004805100a18210012080304200140fc66e29220102207d0000340f06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920783758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e40f866e2ccdc0000acc004cdc4000a402914818229037207c004401866e0c00520203370c002901019b8e00400240ec6eb800d03f1b8a4881022c20002232330010010032259800980c800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681b10361801801844464b300130100018992cc00400600713259800800c01200900480244c966002606e007006802a068375c00281b8c0d000503218181baa0048acc004c03c006264b3001001801c4c966002003004802401200913259800981b801c01a00a81a0dd7000a06e303400140c860606ea8012004816902d18171baa00345901a0c070004c05cdd500ec5268a9980aa491856616c696461746f722072657475726e65642066616c7365001365640501" + : + "5921fd010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480324601c601e0032300e300f300f00191807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c010006260226603c00297ae089980180198100012034301e001407122232598009807000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300d0018992cc004c0800062660206eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc040dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0300062646644b300130220018998091bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b3001300b001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260140031323259800981080140122c80f0dd6980f800980d9baa0038acc004c02400626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c03400626464b3001302000280245901d1bae301e001301a37540071598009806000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c030c060dd500144c8c8c966002604000513232598009808800c566002603c6ea800a00d16407d1598009808000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689807180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300c30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009806800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300c0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013017302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301b33028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c058c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980b18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980b98119baa003899191919912cc004c0b400e264b3001301d30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc0a4dd6181c005912cc00400a26605600c44b300100289980e80289980e8048992cc004c0b4c0e4dd500944c8c8c9660026082005132332259800981980144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038acc004c0c800a264b3001304500189981a9bac304400122598008014012266040608c00426002608e00482222c8210c100dd5001c5660026070005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b300130310028992cc004c11400626606a6eb0c1100048966002005004899810182300109800982380120888b208430403754007159800981800144c966002608a0031330353758608800244b300100280244cc084c1180084c004c11c00904445904218201baa0038acc004c0bc00a264b3001304500189981a9bac304400122598008014012266042608c00426002608e00482222c8210c100dd5001c566002605c005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b30013370e900700144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038b207c40f881f103e207c40f881f103e181e9baa001132598009819000c4c966002608800313302530430010078b2082303f37540071598009818800c4c966002608800313259800981a18201baa00189919192cc004c12000a266054608e006266054002017164114608c002608c00260826ea80062c81f8c10c0062c8208c0fcdd5001c5903d207a303d375400460800071640f8607e002607e00260746ea804a2c81c04cc0b4048896600200519800981f181d9baa3028303b37540352302e303b3754607e646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130333040375460880074a14a281fa26608730014a14c103d87a8000a60103d879800040fc660866e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11800400e2946266004004608e002820904444cc10e600294298103d87a8000a60103d879800040fc660866e9c0092f5c11330439800a51a60103d87a8000a60103d879800040fc660866e9ccc10cdd400080125eb8103f207e3758608460860026eb4c108008cc008008c10800503f48888ca6002003005802400d00111112cc00400e2b30010028800c590444660020093047003982380166002608c007375a608c00500140148021044488c8cc00400400c896600200314bd7044cc896600266ebcc110c104dd5182218209baa302e304137540046056660866ea40152f5c113304300233004004001899802002000a07e3042001304300141013700900148c0fcc100c100c100c100c100c100c100c100006444b30010028a6103d87a80008acc004c0c40062606666080608200497ae08cc00400e6084005337000029000a00640f081fa4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208289980280298238022082375c60800026eacc104004c10c0050410a5eb7bdb18244b30013030303c375400513232598009821801400e2c8200dd69820800981e9baa0028b20769181f982018201820000cdc0a40012232330010010032259800800c52f5c1133041374e600660840026600400460860028202444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1140066eb4c1180066600600660940048048c1200050461bab3043003375c608000266006006608a0046086002820a44646600200200644b30010018a508acc004cdd798210009ba70038a518998010011821800a07a410122598009818181e1baa0028991919194c004c110006608800730440024889660026090009133027304700713302400213259800981c000c4c8cc89660026098003132323322598009828001c0422c8268dd718268009bae304d002304d001375860960031641246eb4c124004c128004c114dd50014566002606e0031323322598009826000c4c8c8cc896600260a00070108b209a375c609a0026eb8c134008c134004dd61825800c590491bad3049001304a00130453754005159800981e800c4c8ca60026eb4c1280066096003375a60940049112cc004c13800a264646644b3001305200380945904f1bae304f001375c609e004609e0026eb0c13400a2c82586094002608a6ea800a2b3001303600189919912cc004c130006264646644b3001305000380845904d1bae304d001375c609a004609a0026eb0c12c0062c8248dd69824800982500098229baa0028acc004c0d400626464b3001304b002805c590481bad304900130453754005159800981a000c4c8c8cc8966002609a00700d8b2094375a60940026eb4c128008c128004c114dd50014566002606600313232598009825801402e2c8240dd6982480098229baa0028acc004cdc3a401c00313232598009825801402e2c8240dd6982480098229baa0028b2086410c82190432086410c821904318219baa0018b208a182200098218009821000981e9baa0028b20769181f9820182018201820000c888ca6002003004801a00222259800801440063300100398228014cc010c11000800500320849b8848001222222222222222222980098261baa0129112cc004c05000a33001003801520009112cc004c01000e266e00004dd6982018299baa0038b20a2404d1641392259800800c5200089808198010011829800a0a091809000c8966002003148002260206600400460a600282826018019222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905444cc014014c1680110541bae3053001375a60a800260ac00282a0cc03c01000c5200048888888ca6002444464b3001304d305937540031325980099baf305e305b375460bc60b66ea8c120c16cdd500098229982e9ba90054bd704566002609b30013756609060b66ea8c120c16cdd5000c01691108747265617375727900402113259800982a182d9baa0018991980d0008992cc004c144c174dd5000c4c96600266ebcc188c17cdd51831182f9baa001304933061375201297ae08acc004c14660026eacc130c17cdd5000c02691108747265617375727900403113259800982c182f9baa0018991980f0008acc004cdd7980e98309baa0034c0103d87a800089983180299831800998319ba6329800800cdd5982798311baa00499198008009bab30503063375460a060c66ea8024896600200314bd6f7b63044c8cc19ccdd818320009ba63233001001375660cc00444b30010018a5eb7bdb182264660d466ec0c19c004dd418119bad306800133003003306c002306a00141a06600600660d200460ce00283290011112cc00400a2003132332298008034c1ac016646600200200a44b300100189983599bb037520086e9800d2f5bded8c113298009bae30690019bab306a00198370012444b30013372001000713306f337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820de880144cc1c0cdd81ba9009374c0020048360ca6002003008801a002222598008014400626466453001006983b802cc8cc0040040148966002003133077337606ea4010dd4001a5eb7bdb1822653001375c60ea003375a60ec003307a00248896600266e4002000e2660f666ec0dd48041ba80070058acc004cdc7804001c4c96600260da003100289983e19bb037520126ea000400907819b8000700289983d99bb037520066ea0008cc01801800507720ee183c000a0ec40186eb8c1c0004dd69838800983980120e289983799bb037520066e98008cc01801800506b20d61836000a0d440186eb8c190004dd59832800983380120ca4bd7045905f183198301baa0018b20bc304b305f375400316417516417460c260bc6ea80062c82e0cc024dd61824982e9baa008005305f305c3754003164168608e60b66ea8c120c16cdd5000c59059459059182e982d1baa0018b20b033005375860b860b26ea801000a600800930060064889660026092017198009bac305b3058375403b22598009826982c9baa002899192cc004c18000a0071641746eb4c178004c168dd50014590584888896600266e1cc018014c0180122b3001300d003899b890019800802c00e90004888c96600260a860c06ea800626644b3001305b306237540031323301b00115980099baf30203064375400660ce60c86ea801e2b30013375e60a260c86ea8004c19cc190dd5001c4c96600260ba60c86ea800626464b30013370e6eb4c1a8008dd6982a18339baa0068acc004cdc39bad306a001375a60a660ce6ea801a2b30013375e60d460d6002603a60ce6ea801a266e0002260026eacc150c19cdd5182a18339baa00a9bae306a00c9bae306a306b00c405116419516419516419460d400260ca6ea80062c8318c140c190dd5000c59062459062183318319baa0018b20c2306430613754002609a60c26ea8c138c184dd500245905f1980600380120408b20b68b20b691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad30663063375460cc0046eb4c198c18cdd5183300180244c9660033001002a5191112cc0040062b30013371e008911008a51899810002998351ba90043306a375200697ae0419914a0833101d44cdc4803cc004dd6182798321baa00ca400122323259800980e000c4cdc000199b83337040026eb4c154c1a0dd50021bad3054306837540091003419930010059bae306a0019bae306a306b00140506eb0c1a4c198dd500120328b20c43301d3758609c60c66ea802c8dd6183398321baa0018b20c2375660ca60cc00260ca00330010079bae306330603754604060c06ea802200d005402d164178b3001305230090018a40011598009831800c4c96600266e3cdd7182f800a44104555344720089bad30600018b20bc30620018b20c04174660386eacc050c178dd50029bae304b305e3754603c60bc6ea801a60b660b06ea80de608a60b06ea80e5222222332259800acc004c05000a2946330013053001a50a51417882f2264b3001305430603754003132332232332259800982d18331baa0018992cc004cdc399b81375a60d600200c00915980099b87375a60d660d80026eb4c1acc1b001e2b3001337129000004c56600330013302a375860d660d06ea817cdd7182a18341baa3028306837540170109bac3055306837540193306a305530683754605060d06ea802ccc1a9301054455534472004bd7052000403915980099b890033233001001375860aa60d26ea8180896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c98361baa0029bae3059306c3754605860d86ea803e91010455534472004065100141a860da0026600400460dc002835a3300100b82fcdd6982a18341baa00c9bad30243068375401900999b8000a0094035164199164199159800cc004cc0a8dd6183598341baa05f375c60a860d06ea8c0a0c1a0dd5005c0426eb0c154c1a0dd50064cc1a8c154c1a0dd5181418341baa00b3306a4c01054455534472004bd704c08c00d00e46600201705f9bad305430683754019375a604860d06ea803201300a403516419883322c83322c8330ca6002660280026eb4c1acc1a0dd50014dd7182a98341baa302830683754017375c604860d06ea8c0a0c1a0dd5005a444b3001305e306a37540071325980099baf306f306c375460de60d86ea8004c158cc1b8dd480125eb822b3001305e98009bab3059306c3754003002a4410d7374616b696e675f7661756c7400406513259800983298361baa0018991980a8008acc004cdd7981518371baa0034c0103d87a80008998381ba898009bab305b306e3754007005a441045553447200406c660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c160c1b0dd5000c5906a45906a183718359baa0038b20d21bac3053306737540bd16419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5004acc004c060006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082ccdd7183298311baa30223062375400b375a609c60c46ea801a6eb4c078c188dd5003201a329800998070009bad306530623754005375c609e60c46ea8c088c188dd5002cdd7180f18311baa30223062375400a9112cc004c160c190dd5001c4c96600266ebcc1a4c198dd5183498331baa30533066375400260a0660d06ea40092f5c1159800982c4c004dd5982998331baa305330663754003002a4410d7374616b696e675f7661756c7400404d13259800982f98331baa001899198078008998351ba898009bab30553068375460aa60d06ea800e00b48810455534472004054660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c148c198dd5182998331baa0018b20c88b20c830683065375400716418c375860c860c26ea81622c82f8c058c180dd500245905e4c00401a6eb0c184c178dd500148cdc4a40006eb4c130c17cdd5000a0209800803520009119b80001375a609860c06ea800901322b3001305000b8cc004dd6182d982c1baa01d911194c0040060090034004444b30010028acc0040062946294105f456600200314a11598009980218308011bad30610018cc00400e60c40053062001400d14a082e105f20be912cc0040062900044c06ccc008008c17800505b488cdc199b82002375a608c60b46ea8004dd69823982d1baa001982d982c1baa0379822982c1baa0394888888c9660026645300132330010010032259800800c528456600266ebcc198c18cdd5183318319baa30503063375460cc002609a660ca6ea400d2f5c114a313300200230670014184832294294505f1bac3062305f37540ac6eb8c06cc17cdd5180f982f9baa0028acc004cc896600266e1cc028008c0280262b300130110018cc00400a003223259800982b98319baa001899192cc004c15cc194dd5000c4c96600266e1cdd698350009bad30543067375400713375e60d460d6002603a60ce6ea800e294106518331baa0018a50419060a260ca6ea8c96600260bc60ca6ea80062646603c0022b30013375e604660ce6ea800cc1a8c19cdd5003456600266ebcc150c19cdd5000983518339baa0038800c59065459065183498331baa0018b20c830513065375460a460ca6ea8010c19cc190dd5000c5906219807805800a0108b20be8b20be33021375860c460be6ea8158dd71825982f9baa301f305f37540046eb0c130c17cdd5001c56600330013758609660be6ea815a6eb0c188c17cdd5001cdd61825182f9baa00248896600266e1cc010008c02c02a3300100a801488c96600260b060c86ea8006330013068306537540033758603660ca6ea800e646609e00a466ebcc1a8c19cdd50009ba70023758603660ca6ea800d22259800982d98339baa0018acc004cdd7983598341baa003306b3068375460d660d06ea801a2b30013375e60a860d06ea800cc154c1a0dd5183598341baa006899b8798009bab305530683754007375c60d6005375c60d660d800480a8cc034c96600266e20005200089812000c40050671bad30553068375400c60d660d06ea80062941066452820cc8b20cc45906319808002800a0128b20c044c14a600330010079bac3062305f3754007259800980a1bad304d3060375400313053375a609860c06ea8006294105e20229980e9bab3015305f37540ac6eb8c130c17cdd5180f982f9baa002cc00415a6eb8c188c17cdd5180f982f9baa0029bad304b305f3754007375a603660be6ea800d00a4cc064dd61825182f9baa0022375860c660c06ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a51899811004198361ba90043306c375200697ae041a114a0834101f456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c148c19cdd5005520009119912cc006600260bc0034a14a2834a264b3001337126602200200b30010089bae306f0039bae306f307000340651337000080031641a866e0800401620068348dd6183618349baa00232980080952000912cc004cdd7981118361baa002374e0071337000026eb4c164c1b0dd50014400506a203e375860d860d26ea800901c19b8100200888014590652cc004c06801e29000c5200241911641911641906eacc19cc1a00056600260ae601c0091480022b300130680048992cc004cdc79bae306400148904555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3004004452820ac4158225980099b88001480022980103d87a8000899802001000a0a822646644b30013042001899912cc004c0ccc0fcdd500144c8c8c8cc8966002609200713259800981c98229baa0018991919912cc004c13800e264b3001303e001899192cc004c14400a01d1641386eb8c13c004c12cdd5003c566002607a00315980098259baa00780645904c45904920923049375400d16412c6eb8c12c004dd71825801182580098231baa0018b208830480058b208c375c608c002608c004608c002608a00260806ea800a2c81f0c1040044c010c1080162c81f8dd7181f80098200009bac303e00240f11323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980a98109baa00189919912cc004c0a4006264b3001301930253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b8c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0dc024896600200513302701410248992cc004c0e4c114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c054c084dd5000c4c966002603660446ea8006264b3001301730233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084601c60446ea8c03cc088dd5181298111baa0018b20403300a3758601c60426ea80608c8cc004004c00cdd5980818119baa30103023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602860406ea800a2646464b3001302800289980318138018992cc004c0600062b3001302537540050058b204c8acc004c05c00626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013012301e3754005132323259800981300144cc024c09400c4c966002602c003132598009814000c4c8c9660026032003132598009815800c4cc038c0a80040262c8140c098dd500145660026030003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602a00315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d13656400801", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProtocolManagementProtocolManagementElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "594460010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d6572001648888888888888888896600264653001301c001980e180e800cdc3a4009301c0024888966002600460386ea800e330013020301d3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b874803246042604400323021302230220019b80480066e05200091810981118111811181118111811181118111811000cdd2a4004911111111111111194c004889660026020605e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e000a330010038992cc004c054006264b3001001803c4c966002003159800981d80144c966002603000313259800800c02a264b30010018acc004c0f800a33001001806402d00e402d03b402e01700b805a07e303c00140e860706ea800a2b300130170018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11400e02701241086eb40060228228c1080050401bad00130410028072084303f00140f46eb4004c0f800a01681f8c0f000503a181c1baa002804a06a40d4606c6ea800601081c2011008804402103c181c800a06e30353754005159800980a000c566002606a6ea800a00f00640d900640c88190c0ccdd5000c0150084015035401600b005802a072303600140d0606c005003801c00e00681b8c0d000503218181baa003800a05a911194c004006009003400444464b300130140018992cc00400600d13259800800c01e00f007803c4c96600260760070058042070375c00281d8c0e0005036181a1baa0038acc004c04c006264b300100180344c966002003007803c4c96600260760071330180012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0ec00e26603000244b3001002803c4c96600200319800805400626004607c006805201700b805c02d03f181e001207480420703758003007803a076303800140d860686ea800e2b300130120018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981f001c4cc06c004896600200500a8992cc0040063300100d800c4c008c10400d00d403a01d00e8072084303f00240f500b40ec6eb000601500a40f8607600281c8dd6800981d001401d03b181c000a06c303437540071598009808800c4c9660020030068992cc00400600f007803c4c96600260760070058042070375a00300740ec607000281b0c0d0dd5001c566002602000313259800800c01a264b3001001803c01e00f13259800981d801c01601081c0dd6800c01d03b181c000a06c303437540071598009807800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c015031206240c48189031206240c460646ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260286606800297ae0899801801981b001205e303400140c891119192cc0040063300122259800980a981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301a0018acc004c0e8dd5001401e00c81da2b300130190018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026038003159800981e1baa006804c02103d4566002603600313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810800c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783019303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002602a60686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c058006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130150018acc004c0d8dd5002400e00481ba0048199033181a1baa00348888cc89660026030606e6ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009821801c566002603e607c6ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013053002899818007112cc00400a26606401a44b30010028cc00401e330010058992cc004c0d0c14cdd500cc4c96600200303f8992cc004006264b3001001820c4c966002003159800982e00144cc8966002607400313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252052825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0e4006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a504a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981f800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b300130380018992cc00400608b13259800800c11a08d132598009830801c4cc0f800489660020050078992cc00400633001001898011832001c129029412a09504a82520ca3062002418104741786eb000608d046418460bc00282e0c168dd5002c566002606e00313259800800c116264b3001001823411a264b3001306100389981f000912cc00400a00f13259800800c660020031300230640038252054825412a09504a419460c4004830208e82f0dd6000c11a08c8308c17800505c182d1baa0058acc004c0d8006264b3001001822c4c96600200304682344c96600260c200713303e0012259800801401e264b30010018cc0040062600460c800704a40a904a825412a0948328c188009060411d05e1bac0018234119061182f000a0b8305a375400b159800981a800c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea80162b30013370e9007000c4c9660020030458992cc00400608d0468992cc004c18400e26607c00244b3001002803c4c96600200319800800c4c008c19000e094814a09504a8254129065183100120c0823a0bc375800304682320c2305e001417060b46ea801608882b905720ae415c82b905720ae415c264b300130390018992cc00400608913259800800c56600260be00519800800c02208a813a08a82e208b045822c115060182e800a0b630593754005159800981c000c4c9660020030448992cc0040062b3001305f0028acc004c0ecc168dd5000c4c9660020030468992cc004006264b300100182444c966002003159800983180146600200719800800c032092816209281620928302093049824c1250641830800a0be3061002823c11e08f047418860be00282e8c16cdd5000c115058411505c411608b045822a0c0305d001416c60b26ea800a08682b1056182b9baa001305737540070424165042821410a08482e8c168005058182d001410208104082020b63058001415860a86ea806607c82884cc0d0054896600200519800982c182a9baa302f30553754049230353055375460b2646600200200444b30010018a5eb8503d87a80008101800044c8cc89660033001303a305a375460bc0074a14a282c22660bb30014a14c103d87a8000a60103d87980004160660ba6e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18000400e294626600400460c200282d105e44cc176600294298103d87a8000a60103d87980004160660ba6e9c0092f5c113305d9800a51a60103d87a8000a60103d87980004160660ba6e9ccc174dd400080125eb8105820b0375860b860ba0026eb4c170008cc008008c17000505948888ca6002003005802400d00111112cc00400e2b30010028800c54cc16d24112657870656374205b5d203d206c6973745f6200164179159800801454cc16d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260c20073061002cc004c18000e6eb4c18000a002802900420bc41792232330010010032259800800c52f5c1133225980099baf305e305b375460bc60b66ea8c0d4c16cdd500118181982e9ba90054bd7044cc174008cc01001000626600800800282c0c170004c17400505a4dc02400523059305a305a305a305a305a305a305a305a0019112cc00400a2980103d87a80008acc004c0e000626074660b460b600497ae08cc00400e60b80053030001400c82a9059488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd5982d800982e800a0b614bd6f7b630488966002607060ae6ea800e264b300100180144c966002003003801c00e264b3001305f003802c01105c1bad001801a0be305c001416860b06ea800e00282aa460b260b460b460b40032232330010010032259800800c52f5c113305b374e600660b80026600400460ba00282d2444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c17c0066eb4c1800066600600660c80048048c1880050601bab305d003375c60b40026600600660be00460ba00282da44646600200200644b30010018a508acc004cdd7982e0009ba70038a51899801001182e800a0ac416922259800981c182b9baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c96600200313259800800c022264b300130640028cc00401e330010058992cc004c104006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b300130400018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f132598009835801c5660020030108992cc004006023011808c04626644b3001001809c4c96600200301480a4052029132598009838001c05a02a8368dd7000a0e0306d00141ac6eb8004c1b000906d1835000a0d080820d0375800300f807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c118006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e26644b3001001808c4c96600200301280944c96600260dc007159800800c04e264b300100180a4052029014899912cc00400602d13259800800c05e02f01780bc4c96600260e600701980c20e0375c0028398c1c000506e1bae001306f00241c060da002835a0268358dd6000c04a0248370c1ac0050691bad001306a002807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0fc006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c96600260d6007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260e000701680aa0da375c0028380c1b400506b1bae001306c00241b460d400283420208340dd6000c03e01e8358c1a00050661bad001306700280620d03065001418c60c26ea80122b3001303e0018992cc00400601713259800800c03201900c8992cc004c1a000e01d00d41946eb40060188340c19400506318309baa0048acc004c0f4006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c03e264b3001306b003808c0410681bad001807a0d6306800141986eb4004c19c00a0188340c19400506318309baa0048acc004c0f0006264b3001001805c4c96600200300c8064032264b3001306800380740350651bad00180620d03065001418c60c26ea80122b30013370e9007000c4c96600200300b8992cc00400601900c80644c96600260d000700e806a0ca375a00300c41a060ca0028318c184dd5002402905e20bc417882f105e20bc417882f0c17cdd5001c02502e402503240250611831000a0c03062002803c01e00f007418c60c000282f0c18000a00b005802c015061182f000a0b8305e002801c00e007003417c60b800282d0c160dd5001c00505548c164c168c168c168c168006444653001001802400d0011112cc00400a200319800801cc17c00a6600860bc004002801905c4dc424000911111111111111114c004c194dd5008c88966002602600519800801c00a900048896600260080071337000026eb4c118c1b0dd5001c54cc1a924011a6578706563742076616c69646174696f6e287265717565737429001641a480922a660ce9212e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641992259800800c5200089807998010011836000a0d291808800c89660020031480022601e6600400460d8002834a6016017222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01906c44cc014014c1cc01106c1bae306c001375a60da00260de0028368cc03801000c5200048888888ca6002444464b30013053307237540031325980099baf30773074375460ee60e86ea8c138c1d0dd500098249983b1ba90054bd70456600260a730013756609c60e86ea8c138c1d0dd5000c01691108747265617375727900402113259800982d183a1baa0018992cc004006330010018992cc004c15cc1d8dd5000c4c96600266ebcc1ecc1e0dd5183d983c1baa001304d3307a375201297ae08acc004c15e60026eacc148c1e0dd5000c026910108747265617375727900403113259800982f183c1baa0018992cc004006330010018acc004cdd7980e183d1baa0034c103d87a800089983e0029983e0009983e1ba6329800800cdd5982a983d9baa00499198008009bab3056307c375460ac60f86ea8024896600200314bd6f7b63044c8cc20004cdd8183e8009ba63233001001375660fe00444b30010018a5eb7bdb182264661060266ec0c20004004dd4182c1bad308101001330030033085010023083010014204046600600661040200461000200283f10011112cc00400a2003132332298008034c21004016646600200200a44b30010018998420099bb037520086e9800d2f5bded8c113298009bae3082010019bab3083010019843808012444b30013372001000713308801337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528211002880144cc22404cdd81ba9009374c002004842008ca6002003008801a002222598008014400626466453001006984800802cc8cc004004014896600200313309001337606ea4010dd4001a5eb7bdb1822653001375c611c02003375a611e0200330930100248896600266e4002000e2661280266ec0dd48041ba80070058acc004cdc7804001c4c96600260e6003100289984a8099bb037520126ea00040090900119b8000700289984a0099bb037520066ea0008cc01801800508f01211e02184880800a11e0240186eb8c22404004dd69845008009846008012114028998440099bb037520066e98008cc01801800508301210602184280800a1060240186eb8c1f4004dd5983f00098400080120fc4bd7041bd07741b901d41ba0dd06e83720fe307c30793754003153307749012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001641d860a260f06ea80062a660ec920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641d5153307649143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641d460f460ee6ea80062a660ea92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641d0660126eb0c13cc1d8dd5004002c1a501941a60d3069834a0f6307830753754003153307349013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641c8609a60e86ea8c138c1d0dd5000c54cc1c92401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641c515330724914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641c460ec60e66ea80062a660e292013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641c06600a6eb0c1d4c1c8dd50020014c010012600c00c9112cc004c13c02e33001375860e860e26ea8072444b300130543073375400713259800800c00a264b3001001801c00e00713259800983d801c01600883c0dd6800c00d07b183c000a0ec3074375400700141c5222225980099b87300600530060048acc004c03400e266e24006600200b003a40012223259800982d183c9baa001899912cc004c184c1ecdd5000c4c96600200319800800c56600266ebcc07cc1f4dd5001984000983e9baa0078acc004cdd7982b983e9baa001308001307d3754007132598009831983e9baa001899192cc004cdc39bad308301002375a60b46100026ea801a2b30013370e6eb4c20c04004dd6982c9840009baa0068acc004cdd7984180984200800980e9840009baa006899b8000898009bab305a308001375460b46100026ea802a6eb8c20c040326eb8c20c04c21004031014454cc1f92413665787065637420726573657276655f6173736574203d3d206d61746368696e675f726571756573742e726573657276655f6173736574001641f5153307e49126657870656374207969656c64203d3d206d61746368696e675f726571756573742e7969656c64001641f5153307e4912b657870656374207072696e636970616c203d3d206d61746368696e675f726571756573742e616d6f756e74001641f461060200260fc6ea80062a660f8921184578706563746564204f4465706f73697420616374696f6e001641ec60ac60fa6ea80060ec83d20ea83d20e880da0e907483a41d108201183f983e1baa00183920f2307d307a375400260a660f46ea8c150c1e8dd500241a107719806003801203e831a0e683120e691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad307f307c375460fe0046eb4c1fcc1f0dd5183f80180244c9660033001002a5191112cc0040062b30013371e008911008a5189981000299841809ba90043308301375200697ae041f914a083f101d44cdc4803cc004dd61829983e9baa00ca400122323259800980e000c4cdc000199b83337040026eb4c16cc20404dd50021bad305a3081013754009100341f930010059bae3083010019bae30830130840100140506eb0c20804c1fcdd5001203283720f43301d375860a460f86ea802c8dd6184000983e9baa00183720f2375660fc60fe00260fc00330010079bae307c30793754603e60f26ea802200d005402d1533077490123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e74001641d8b3001305830090018a4001159800800c19e264b3001307d0028992cc004cdc79bae307900248810455534472008800c1a90771bad307900183420f4307b00141e483a8cc06cdd5980a183b9baa005375c60a260ee6ea8c074c1dcdd50034c1d0c1c4dd50204c12cc1c4dd5020a4444446644b300159800980a0014528c6600260b20034a14a283b107644c96600260b460f26ea80062646644646644b30013060307f37540031325980099b87337026eb4c210040040180122b30013370e6eb4c21004c21404004dd6984200984280803c56600266e2520000098acc0066002660526eb0c21004c20404dd50329bae305a3081013754604e6102026ea802e021375860b66102026ea8032661060260b66102026ea8c09cc20404dd50059984180a61054455534472004bd7052000403915980099b890033233001001375860b66104026ea8198896600200314800226644b30013375e611002610a026ea8008c22004c22404c22404c22404c22404c22404c22404c22404c22404c22404c22404c21404dd5007c4cdc0000cc004dd5982f9842809baa0029bae305f30850137546056610a026ea803e910104555344720040651001420804610c0200266004004610e0200284200a3300100b832cdd6982d1840809baa00c9bad3023308101375401900999b8000a0094035153307f49012b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641f9153307f4919f6578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a2020202020202020302c0a20202020202029001641f9159800cc004cc0a4dd61842009840809baa065375c60b46102026ea8c09cc20404dd5005c0426eb0c16cc20404dd50064cc20c04c16cc20404dd518139840809baa00b33083014c1054455534472004bd704c16000d00e4660020170659bad305a3081013754019375a60466102026ea803201300a4035153307f491b36578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a20202020202029001641f883f22a660fe9213a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265001641f9153307f4913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641f865300133014001375a6108026102026ea800a6eb8c16cc20404dd518139840809baa00b9bae30233081013754604e6102026ea802d2225980098321841809baa0038992cc004cdd79844009842809baa308801308501375400260b46610e026ea40092f5c115980098324c004dd5982f9842809baa00180152210d7374616b696e675f7661756c740040651325980098359842809baa0018992cc004006330010018acc004cdd798149843809baa0034c103d87a8000899844809ba898009bab30613087013754007005a441045553447200406c6611202611402610e026ea8004cc2240400d2f5c107c4210050810140550810184080c2040610202846008c22404c21804dd5000c54cc2100524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016420c0460bc610a026ea80062a661060292014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001642080515330830149141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016420804610e026108026ea800e2a661040292013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f696478290016420404375860b26100026ea81922a660fc92013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f696478001641f466e04018004c20404c20804c20804c20804c20804c20804c1f8dd5004acc004c060006266e10cdc1002801000c5200041e86eb4c1f8004dd6983f183d9baa307e980082fcdd7183f183d9baa3021307b375400b375a60a860f66ea801a6eb4c074c1ecdd5003201a329800998070009bad307e307b3754005375c60aa60f66ea8c084c1ecdd5002cdd7180e983d9baa3021307b375400a9112cc004c178c1f4dd5001c4c96600266ebcc20804c1fcdd5184100983f9baa3059307f375400260a866102026ea40092f5c1159800982f4c004dd5982c983f9baa3059307f3754003002a4410d7374616b696e675f7661756c7400404d132598009832983f9baa0018992cc00400633001001899841809ba898009bab305b308101375460b66102026ea800e00b489045553447200405466106026108026102026ea8004cc20c0400d2f5c107b403d07b83dc1ee0f6843008c20c04c20004dd5000c1d907d182c183f9baa3059307f3754003153307d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641f1153307d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641f061020260fc6ea800e2a660f892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ec375860fa60f46ea817a2a660f092013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f696478001641dc602c60f26ea80122a660ee92012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641d930010069bac307a3077375400523371290001bad3052307837540028082600200d480024466e00004dd69829183c9baa002404c8acc004c15802e33001375860e860e26ea8072444653001001802400d0011112cc00400a2b30010018a518a5041e1159800800c52845660026600860f40046eb4c1e800633001003983d8014c1ec005003452820e841e083c244b30010018a40011301a33002002307700141d1223370666e08008dd6982618399baa001375a609a60e66ea800660e860e26ea8102609660e26ea8105222222325980099914c004c8cc00400400c896600200314a115980099baf307f307c375460fe60f86ea8c158c1f0dd5183f80098289983f1ba90034bd704528c4cc008008c2000400507920faa50a5141dc6eb0c1ecc1e0dd502e1bae301a30783754603c60f06ea800a2b300133225980099b87300a002300a0098acc004c04400633001002800c88c96600260ba60f86ea800626464b3001305d307e37540031325980099b87375a6106020026eb4c168c20004dd5001c4cdd7984180984200800980e9840009baa0038a5041f460fe6ea8006294107c182b983f1baa32598009832183f1baa0018992cc004006330010018acc004cdd798111840009baa003308301308001375400d15980099baf305a30800137540026106026100026ea800e200307941f507841f5077407907783bc1de0ee842808c20804c1fcdd5000c1d507c182b983f1baa3058307e375400861000260fa6ea80060d683d0cc03c02c005008419d0774199077198101bac307b307837540b86eb8c144c1e0dd5180f183c1baa002375860a460f06ea800e2b300198009bac3051307837540b9375860f660f06ea800e6eb0c138c1e0dd50012444b30013370e6008004601601519800805400a4464b3001305e307d375400319800984080983f1baa0019bac301b307e3754007323305000523375e6106026100026ea8004dd38011bac301b307e37540069112cc004c184c20004dd5000c56600266ebcc21004c20404dd50019842009840809baa308401308101375400d15980099baf305a308101375400660b66102026ea8c21004c20404dd500344cdc3cc004dd5982d9840809baa0039bae3084010029bae30840130850100240546601a64b300133710002900044c164006200283f8dd6982d9840809baa006308401308101375400314a083f2294107e454cc1fd24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641f88a9983e2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f69647829001641ec6602000a002804a2a660f292013b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e67746828726571756573747329001641e08982c4c006600200f375860f660f06ea800e4b30013014375a60a660f26ea8006260b26eb4c148c1e4dd5000c52820ec40453301c3756602a60f06ea8170dd71829183c1baa301e30783754005980082e4dd7183d983c1baa301e30783754005375a60a260f06ea800e6eb4c068c1e0dd5001a0149980c9bac304e3078375400446eb0c1f0c1e4dd5000a44446530013080010019bab308001308101001984000801d6600260ba601c0091480022b300100483644c96600261040200b1325980099b8f375c60fc0049110455534472008800c1bd07c1bad307e001836a0fe30800100441f883d1222259800cc00400e9464444b30010018acc004cdc78022441008a5189981200519843809ba90043308701375200697ae042080514a0841009021456600266e1ccdc09bad30840130810137540086eb4c21004c20404dd5001000c4c96600266e1e60026eb0c160c20804dd5006520009119912cc006600260cc0034a14a284180a264b3001337126602600200b30010099bae308a010039bae308a01308b01003406d1337000080031533085014912d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642100466e080040162006841808dd61843809842009baa00232980080a52000912cc004cdd798121843809baa002374e0071337000026eb4c184c21c04dd5001440050840120423758610e026108026ea800901e19b8100200a8801454cc200052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c7461001641fcb3001301c0098a400314800907e41cd07e41c907e0c2000400915330764901a26578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641d51533076491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641d5153307649142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c7429001641d460080088a5041b8837044b300133710002900045300103d87a8000899802001000a0d82264b30010018204102264b3001001820c4c966002003042821410a0851332259800800c112264b30010018acc004c17c00a264b3001303c305b375400513259800800c11e264b30010018992cc00400609313259800800c4c96600200304b8992cc00400609904c8264132264b300130670038acc004c10cc188dd500344c96600200304e8992cc00400609f04f827c13e26644b3001001828c4c966002003052829414a0a5132598009836801c4c966002609400313259800800c156264b300100182b415a0ad0568992cc004c1c400e02505741b86eb80050711837000a0d8306a37540171598009824800c56600260d46ea802e01f05441ad054419c8338c1a0dd5005414d06a1bae00141b460d40028340dd7000983480120d43067001419460c66ea801a09a830209a8320dd7000a0ce3064001418860c800504a825412a0948328c1880050601831001412209104882420c63060001417860b86ea800a08c82c84c01cc17c02208a82e208b045822c115060182e800a0b6375c00260b800482e8c1680050581bac001820410105b182c00120ac81ea03c81ea03c8992cc00400607d03e81f44c8c00cc164010dd6800c0f9059182b00120a88992cc00400607903c81e44c8c00cc15c010dd6800c0f1057182a00120a481ca0a081cc0e6073039415060a20028278c14400a06f03781bc0dd0521827800a09a375a002609c005034413c60980028250dd6800982580140c504c1824800a08e3758002609000502e8172092304600141106eb0004c11400a05702b411860860028208c0fcdd500340a503c40a50401bac00181440a10431820000a07c3040002813409a04d0264104607c00281e0c0f800a049024812409103f181e000a0743038375400f02240d4444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608e00719800804c6600200900c805a01e805a022805a088375a00300a411c60880028210c11000a01100880440210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d8444b300130193038375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c12800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13c00e02901341306eb800504f1826000a094375c00260960048260c1240050474039012403901440390471bac001806c03504a1823800a08a3047002805c02e01700b4120608a0028218dd6800982200140210451821000a080375a00260820050054108607e00281e8c0fc00a007003801c00d040181e800a0763039375400700140d880e407203901c40dc664464b30013014303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11301833038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c3756600e60626ea8054dd7181a18189baa0019800912cc004006297ae089981a1818981a80099801001181b000a0669112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206091111919800800802912cc004006200b13259800800c4cc010c0e800801a26600a60740046600600600281c0c0e80050374dd6180518181baa01448888c8c8c8cc88c966002003159800980d181c9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130430028acc004c07cc0f8dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305a0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d8c154dd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260cc00713304300f225980080146600201f102b827a06e8992cc0040062b300130453064375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130720038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307700389808183b808c1790741bae00141dc60e80028390dd7000983980420e8307100741bd05941bc6eb40060b08390c1bc00506d1bad001306e00282aa0de306c00141a86eb0004c1ac00a0a505241b060d20028338c194dd5000c14106241420a105082820d43067002419504d418c6eb80050661831800a0c2375c00260c40048318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a001416060ac6ea801a082829a0828142082814208281420828142082814208281420828142082814208282ba083041820c10505b182c000a0ac375800260ae00503e81f20b03055001414c60aa00503c81e40f207882b0c14c005051182980140ea07503a81d20a83051001413c60a200503881c40e20708290c13c00504d182780140da06d03681b20a0304d001412c609a00503481a40d20688270c12c005049182580140ca06503281920983049001411c609200503081840c20608250c11c005045182380140ba05d02e81720903045001410c608a00502c81640b20588230c10c005041181f9baa0018152078815208081540aa05502a4110608200281f8dd700098200012082303e00140f060746ea800604a81ba04b025812c09503f29981b99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40d522010013259800980d181c9baa00189929981c99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981d9baa0018992cc0040062b3001301d303c375400313259800800c0e6264b300100181d40ea07503a899912cc0040060791325980098230014401a07a8218c1100050421bae00130430024110608200281f8c0f4dd5000c0e103a40e207103881c2084303f303c3754003153303a49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640e4602860766ea8c054c0ecdd5000981e981d1baa0018a9981c24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640dc6601400c4646600200260066eacc054c0ecdd5180a981d9baa0022259800800c528456600266e3cdd7181f80081c4528c4cc008008c100005039207a300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c207e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81c90391bac303c002375a60740026466ec0dd4181d0009ba7303b001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a607e003337149101023a200098008054c10000600a805100a182100144ca6002015303f00199b8a489023a200098008054c100006600e66008008004805100a18210012080304200140fc66e29220102207d0000340f06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920783758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e40f866e2ccdc0000acc004cdc4000a402914818229037207c004401866e0c00520203370c002901019b8e00400240ec6eb800d03f1b8a4881022c20002232330010010032259800980c800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681b10361801801844464b300130100018992cc00400600713259800800c01200900480244c966002606e007006802a068375c00281b8c0d000503218181baa0048acc004c03c006264b3001001801c4c966002003004802401200913259800981b801c01a00a81a0dd7000a06e303400140c860606ea8012004816902d18171baa00345901a0c070004c05cdd500ec5268a9980aa491856616c696461746f722072657475726e65642066616c7365001365640501" + : + "5921fd010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a3754007374a9000488c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480324601c601e0032300e300f300f00191807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c010006260226603c00297ae089980180198100012034301e001407122232598009807000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300d0018992cc004c0800062660206eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc040dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0300062646644b300130220018998091bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b3001300b001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260140031323259800981080140122c80f0dd6980f800980d9baa0038acc004c02400626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c03400626464b3001302000280245901d1bae301e001301a37540071598009806000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c030c060dd500144c8c8c966002604000513232598009808800c566002603c6ea800a00d16407d1598009808000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689807180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300c30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009806800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300c0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013017302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301b33028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c058c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980b18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980b98119baa003899191919912cc004c0b400e264b3001301d30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc0a4dd6181c005912cc00400a26605600c44b300100289980e80289980e8048992cc004c0b4c0e4dd500944c8c8c9660026082005132332259800981980144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038acc004c0c800a264b3001304500189981a9bac304400122598008014012266040608c00426002608e00482222c8210c100dd5001c5660026070005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b300130310028992cc004c11400626606a6eb0c1100048966002005004899810182300109800982380120888b208430403754007159800981800144c966002608a0031330353758608800244b300100280244cc084c1180084c004c11c00904445904218201baa0038acc004c0bc00a264b3001304500189981a9bac304400122598008014012266042608c00426002608e00482222c8210c100dd5001c566002605c005132598009822800c4cc0d4dd61822000912cc00400a0091330203046002130013047002411116410860806ea800e2b30013370e900700144c966002608a0031330353758608800244b300100280244cc080c1180084c004c11c00904445904218201baa0038b207c40f881f103e207c40f881f103e181e9baa001132598009819000c4c966002608800313302530430010078b2082303f37540071598009818800c4c966002608800313259800981a18201baa00189919192cc004c12000a266054608e006266054002017164114608c002608c00260826ea80062c81f8c10c0062c8208c0fcdd5001c5903d207a303d375400460800071640f8607e002607e00260746ea804a2c81c04cc0b4048896600200519800981f181d9baa3028303b37540352302e303b3754607e646600200200444b30010018a5eb8503d87a80008101800044c8cc8966003300130333040375460880074a14a281fa26608730014a14c103d87a8000a60103d879800040fc660866e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11800400e2946266004004608e002820904444cc10e600294298103d87a8000a60103d879800040fc660866e9c0092f5c11330439800a51a60103d87a8000a60103d879800040fc660866e9ccc10cdd400080125eb8103f207e3758608460860026eb4c108008cc008008c10800503f48888ca6002003005802400d00111112cc00400e2b30010028800c590444660020093047003982380166002608c007375a608c00500140148021044488c8cc00400400c896600200314bd7044cc896600266ebcc110c104dd5182218209baa302e304137540046056660866ea40152f5c113304300233004004001899802002000a07e3042001304300141013700900148c0fcc100c100c100c100c100c100c100c100006444b30010028a6103d87a80008acc004c0c40062606666080608200497ae08cc00400e6084005337000029000a00640f081fa4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208289980280298238022082375c60800026eacc104004c10c0050410a5eb7bdb18244b30013030303c375400513232598009821801400e2c8200dd69820800981e9baa0028b20769181f982018201820000cdc0a40012232330010010032259800800c52f5c1133041374e600660840026600400460860028202444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c1140066eb4c1180066600600660940048048c1200050461bab3043003375c608000266006006608a0046086002820a44646600200200644b30010018a508acc004cdd798210009ba70038a518998010011821800a07a410122598009818181e1baa0028991919194c004c110006608800730440024889660026090009133027304700713302400213259800981c000c4c8cc89660026098003132323322598009828001c0422c8268dd718268009bae304d002304d001375860960031641246eb4c124004c128004c114dd50014566002606e0031323322598009826000c4c8c8cc896600260a00070108b209a375c609a0026eb8c134008c134004dd61825800c590491bad3049001304a00130453754005159800981e800c4c8ca60026eb4c1280066096003375a60940049112cc004c13800a264646644b3001305200380945904f1bae304f001375c609e004609e0026eb0c13400a2c82586094002608a6ea800a2b3001303600189919912cc004c130006264646644b3001305000380845904d1bae304d001375c609a004609a0026eb0c12c0062c8248dd69824800982500098229baa0028acc004c0d400626464b3001304b002805c590481bad304900130453754005159800981a000c4c8c8cc8966002609a00700d8b2094375a60940026eb4c128008c128004c114dd50014566002606600313232598009825801402e2c8240dd6982480098229baa0028acc004cdc3a401c00313232598009825801402e2c8240dd6982480098229baa0028b2086410c82190432086410c821904318219baa0018b208a182200098218009821000981e9baa0028b20769181f9820182018201820000c888ca6002003004801a00222259800801440063300100398228014cc010c11000800500320849b8848001222222222222222222980098261baa0129112cc004c05000a33001003801520009112cc004c01000e266e00004dd6982018299baa0038b20a2404d1641392259800800c5200089808198010011829800a0a091809000c8966002003148002260206600400460a600282826018019222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01905444cc014014c1680110541bae3053001375a60a800260ac00282a0cc03c01000c5200048888888ca6002444464b3001304d305937540031325980099baf305e305b375460bc60b66ea8c120c16cdd500098229982e9ba90054bd704566002609b30013756609060b66ea8c120c16cdd5000c01691108747265617375727900402113259800982a182d9baa0018991980d0008992cc004c144c174dd5000c4c96600266ebcc188c17cdd51831182f9baa001304933061375201297ae08acc004c14660026eacc130c17cdd5000c02691108747265617375727900403113259800982c182f9baa0018991980f0008acc004cdd7980e98309baa0034c0103d87a800089983180299831800998319ba6329800800cdd5982798311baa00499198008009bab30503063375460a060c66ea8024896600200314bd6f7b63044c8cc19ccdd818320009ba63233001001375660cc00444b30010018a5eb7bdb182264660d466ec0c19c004dd418119bad306800133003003306c002306a00141a06600600660d200460ce00283290011112cc00400a2003132332298008034c1ac016646600200200a44b300100189983599bb037520086e9800d2f5bded8c113298009bae30690019bab306a00198370012444b30013372001000713306f337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820de880144cc1c0cdd81ba9009374c0020048360ca6002003008801a002222598008014400626466453001006983b802cc8cc0040040148966002003133077337606ea4010dd4001a5eb7bdb1822653001375c60ea003375a60ec003307a00248896600266e4002000e2660f666ec0dd48041ba80070058acc004cdc7804001c4c96600260da003100289983e19bb037520126ea000400907819b8000700289983d99bb037520066ea0008cc01801800507720ee183c000a0ec40186eb8c1c0004dd69838800983980120e289983799bb037520066e98008cc01801800506b20d61836000a0d440186eb8c190004dd59832800983380120ca4bd7045905f183198301baa0018b20bc304b305f375400316417516417460c260bc6ea80062c82e0cc024dd61824982e9baa008005305f305c3754003164168608e60b66ea8c120c16cdd5000c59059459059182e982d1baa0018b20b033005375860b860b26ea801000a600800930060064889660026092017198009bac305b3058375403b22598009826982c9baa002899192cc004c18000a0071641746eb4c178004c168dd50014590584888896600266e1cc018014c0180122b3001300d003899b890019800802c00e90004888c96600260a860c06ea800626644b3001305b306237540031323301b00115980099baf30203064375400660ce60c86ea801e2b30013375e60a260c86ea8004c19cc190dd5001c4c96600260ba60c86ea800626464b30013370e6eb4c1a8008dd6982a18339baa0068acc004cdc39bad306a001375a60a660ce6ea801a2b30013375e60d460d6002603a60ce6ea801a266e0002260026eacc150c19cdd5182a18339baa00a9bae306a00c9bae306a306b00c405116419516419516419460d400260ca6ea80062c8318c140c190dd5000c59062459062183318319baa0018b20c2306430613754002609a60c26ea8c138c184dd500245905f1980600380120408b20b68b20b691111119192cc004cdc380080244c8c8c96600266e1ccdc09bad30663063375460cc0046eb4c198c18cdd5183300180244c9660033001002a5191112cc0040062b30013371e008911008a51899810002998351ba90043306a375200697ae0419914a0833101d44cdc4803cc004dd6182798321baa00ca400122323259800980e000c4cdc000199b83337040026eb4c154c1a0dd50021bad3054306837540091003419930010059bae306a0019bae306a306b00140506eb0c1a4c198dd500120328b20c43301d3758609c60c66ea802c8dd6183398321baa0018b20c2375660ca60cc00260ca00330010079bae306330603754604060c06ea802200d005402d164178b3001305230090018a40011598009831800c4c96600266e3cdd7182f800a44104555344720089bad30600018b20bc30620018b20c04174660386eacc050c178dd50029bae304b305e3754603c60bc6ea801a60b660b06ea80de608a60b06ea80e5222222332259800acc004c05000a2946330013053001a50a51417882f2264b3001305430603754003132332232332259800982d18331baa0018992cc004cdc399b81375a60d600200c00915980099b87375a60d660d80026eb4c1acc1b001e2b3001337129000004c56600330013302a375860d660d06ea817cdd7182a18341baa3028306837540170109bac3055306837540193306a305530683754605060d06ea802ccc1a9301054455534472004bd7052000403915980099b890033233001001375860aa60d26ea8180896600200314800226644b30013375e60de60d86ea8008c1bcc1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1c0c1b0dd5007c4cdc0000cc004dd5982c98361baa0029bae3059306c3754605860d86ea803e91010455534472004065100141a860da0026600400460dc002835a3300100b82fcdd6982a18341baa00c9bad30243068375401900999b8000a0094035164199164199159800cc004cc0a8dd6183598341baa05f375c60a860d06ea8c0a0c1a0dd5005c0426eb0c154c1a0dd50064cc1a8c154c1a0dd5181418341baa00b3306a4c01054455534472004bd704c08c00d00e46600201705f9bad305430683754019375a604860d06ea803201300a403516419883322c83322c8330ca6002660280026eb4c1acc1a0dd50014dd7182a98341baa302830683754017375c604860d06ea8c0a0c1a0dd5005a444b3001305e306a37540071325980099baf306f306c375460de60d86ea8004c158cc1b8dd480125eb822b3001305e98009bab3059306c3754003002a4410d7374616b696e675f7661756c7400406513259800983298361baa0018991980a8008acc004cdd7981518371baa0034c0103d87a80008998381ba898009bab305b306e3754007005a441045553447200406c660e060e260dc6ea8004cc1c000d2f5c11641b060e060da6ea80062c8358c160c1b0dd5000c5906a45906a183718359baa0038b20d21bac3053306737540bd16419466e04018004c1a0c1a4c1a4c1a4c1a4c1a4c194dd5004acc004c060006266e10cdc1002801000c5200041886eb4c194004dd6983298311baa3065980082ccdd7183298311baa30223062375400b375a609c60c46ea801a6eb4c078c188dd5003201a329800998070009bad306530623754005375c609e60c46ea8c088c188dd5002cdd7180f18311baa30223062375400a9112cc004c160c190dd5001c4c96600266ebcc1a4c198dd5183498331baa30533066375400260a0660d06ea40092f5c1159800982c4c004dd5982998331baa305330663754003002a4410d7374616b696e675f7661756c7400404d13259800982f98331baa001899198078008998351ba898009bab30553068375460aa60d06ea800e00b48810455534472004054660d460d660d06ea8004cc1a800d2f5c060d460ce6ea80062c8328c148c198dd5182998331baa0018b20c88b20c830683065375400716418c375860c860c26ea81622c82f8c058c180dd500245905e4c00401a6eb0c184c178dd500148cdc4a40006eb4c130c17cdd5000a0209800803520009119b80001375a609860c06ea800901322b3001305000b8cc004dd6182d982c1baa01d911194c0040060090034004444b30010028acc0040062946294105f456600200314a11598009980218308011bad30610018cc00400e60c40053062001400d14a082e105f20be912cc0040062900044c06ccc008008c17800505b488cdc199b82002375a608c60b46ea8004dd69823982d1baa001982d982c1baa0379822982c1baa0394888888c9660026645300132330010010032259800800c528456600266ebcc198c18cdd5183318319baa30503063375460cc002609a660ca6ea400d2f5c114a313300200230670014184832294294505f1bac3062305f37540ac6eb8c06cc17cdd5180f982f9baa0028acc004cc896600266e1cc028008c0280262b300130110018cc00400a003223259800982b98319baa001899192cc004c15cc194dd5000c4c96600266e1cdd698350009bad30543067375400713375e60d460d6002603a60ce6ea800e294106518331baa0018a50419060a260ca6ea8c96600260bc60ca6ea80062646603c0022b30013375e604660ce6ea800cc1a8c19cdd5003456600266ebcc150c19cdd5000983518339baa0038800c59065459065183498331baa0018b20c830513065375460a460ca6ea8010c19cc190dd5000c5906219807805800a0108b20be8b20be33021375860c460be6ea8158dd71825982f9baa301f305f37540046eb0c130c17cdd5001c56600330013758609660be6ea815a6eb0c188c17cdd5001cdd61825182f9baa00248896600266e1cc010008c02c02a3300100a801488c96600260b060c86ea8006330013068306537540033758603660ca6ea800e646609e00a466ebcc1a8c19cdd50009ba70023758603660ca6ea800d22259800982d98339baa0018acc004cdd7983598341baa003306b3068375460d660d06ea801a2b30013375e60a860d06ea800cc154c1a0dd5183598341baa006899b8798009bab305530683754007375c60d6005375c60d660d800480a8cc034c96600266e20005200089812000c40050671bad30553068375400c60d660d06ea80062941066452820cc8b20cc45906319808002800a0128b20c044c14a600330010079bac3062305f3754007259800980a1bad304d3060375400313053375a609860c06ea8006294105e20229980e9bab3015305f37540ac6eb8c130c17cdd5180f982f9baa002cc00415a6eb8c188c17cdd5180f982f9baa0029bad304b305f3754007375a603660be6ea800d00a4cc064dd61825182f9baa0022375860c660c06ea8005222232332259800cc00400a9464444b30010018acc004cdc78022441008a51899811004198361ba90043306c375200697ae041a114a0834101f456600266e1ccdc09bad30693066375460d20066eb4c1a4c198dd51834802800c4c96600266e1e60026eb0c148c19cdd5005520009119912cc006600260bc0034a14a2834a264b3001337126602200200b30010089bae306f0039bae306f307000340651337000080031641a866e0800401620068348dd6183618349baa00232980080952000912cc004cdd7981118361baa002374e0071337000026eb4c164c1b0dd50014400506a203e375860d860d26ea800901c19b8100200888014590652cc004c06801e29000c5200241911641911641906eacc19cc1a00056600260ae601c0091480022b300130680048992cc004cdc79bae306400148904555344720089bad30650018b20c630670048b20ca418860ce0048b20ba8b20ba8b20ba3004004452820ac4158225980099b88001480022980103d87a8000899802001000a0a822646644b30013042001899912cc004c0ccc0fcdd500144c8c8c8cc8966002609200713259800981c98229baa0018991919912cc004c13800e264b3001303e001899192cc004c14400a01d1641386eb8c13c004c12cdd5003c566002607a00315980098259baa00780645904c45904920923049375400d16412c6eb8c12c004dd71825801182580098231baa0018b208830480058b208c375c608c002608c004608c002608a00260806ea800a2c81f0c1040044c010c1080162c81f8dd7181f80098200009bac303e00240f11323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980a98109baa00189919912cc004c0a4006264b3001301930253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b8c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0dc024896600200513302701410248992cc004c0e4c114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c054c084dd5000c4c966002603660446ea8006264b3001301730233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084601c60446ea8c03cc088dd5181298111baa0018b20403300a3758601c60426ea80608c8cc004004c00cdd5980818119baa30103023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602860406ea800a2646464b3001302800289980318138018992cc004c0600062b3001302537540050058b204c8acc004c05c00626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013012301e3754005132323259800981300144cc024c09400c4c966002602c003132598009814000c4c8c9660026032003132598009815800c4cc038c0a80040262c8140c098dd500145660026030003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602a00315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d13656400801", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProtocolMintProtocolMintWithdraw { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5942e3010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a49856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a202020202900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888888896600264653001301e001980f180f800cdc3a4009301e00248889660026004603c6ea800e330013022301f37540072302330243024001918119812000cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c9b80480066e05200091811981218121812181218121812181218121812000cdd2a4004911111111111111194c00488966002601c60626ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e800a330010038992cc004c04c006264b3001001803c4c966002003159800981e80144c966002602c00313259800800c02a264b30010018acc004c10000a33001001806402d00e402d03d402e01700b805a082303e00140f060746ea800a2b300130150018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11c00e02701241106eb40060228238c1100050421bad00130430028072088304100140fc6eb4004c10000a0168208c0f800503c181d1baa002804a06e40dc60706ea800601081d2011008804402103e181d800a072303737540051598009809000c566002606e6ea800a00f00640e100640d081a0c0d4dd5000c0150084015037401600b005802a076303800140d86070005003801c00e00681c8c0d800503418191baa003800a05e911194c004006009003400444464b300130120018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa0038acc004c044006264b300100180344c966002003007803c4c966002607a0071330160012259800801401e264b30010018cc00402a003130023040003402900b805c02e0168208c0f800903c402103a1bac001803c01d03d181d000a07030363754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0f400e26602c00244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130100018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009820001c4cc064004896600200500a8992cc0040063300100d800c4c008c10c00d00d403a01d00e8072088304100240fd00b40f46eb000601500a4100607a00281d8dd6800981e001401d03d181d000a070303637540071598009807800c4c9660020030068992cc00400600f007803c4c966002607a0070058042074375a00300740f4607400281c0c0d8dd5001c566002601c00313259800800c01a264b3001001803c01e00f13259800981e801c01601081d0dd6800c01d03d181d000a070303637540071598009806800c4c9660020030068992cc00400600f007803c01e264b3001303d003802c02103a1bae00140f4607400281c0c0d8dd5001c015033206640cc8199033206640cc60686ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260246606c00297ae0899801801981c0012062303600140d091119192cc00400633001222598009809981b1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303f0028cc00400e264b300130180018acc004c0f0dd5001401e00c81ea2b300130170018992cc00400600f13259800800c02201100880444c966002608600700a804a080375c0028218c10000503e181e1baa0028acc004c07c006264b3001001803c4c9660026084005009804207e304000140f860786ea800a00c81c90392072303a3754003005403100540f1005802c01600a8200c0f400503b181e801400e007003801a07c303b00140e4606e6ea800e00281a2444b300130133036375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607800315980099b8948010c0ec00600d13259800982080244c9660026034003159800981f1baa006804c02103f4566002603200313259800800c026264b3001001805402a015132598009822801c0320168210dd6800c0290451821000a080303e375400d1598009810800c566002607c6ea801a01300840fd00840ec81d903b181e1baa005803a07c3017303b00140e500640f46ea800600b005802c015040181e800a076303d002801c00e00700340f8607600281c8c0dcdd5001c0050344889660026026606c6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d132598009820801c02200e81f0dd6800c019041181f000a078375c002607a00481f0c0ec005039181b9baa003800a068911192cc004c050006264b3001001801c4c9660020030048024012264b3001303f003803401503c1bad001802207e303c00140e860706ea80122b300130130018acc004c0e0dd5002400e00481ca00481a9035181b1baa00348888cc8966002602c60726ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009822801c566002603a60806ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013055002899817007112cc00400a26606001a44b30010028cc00401e33001005899192cc004c0ccc158dd500d44c9660020030408992cc004006264b300100182144c966002003159800982f80144cc8966002607200313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a054825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0e0006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40a904b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b1598009820000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130370018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c566002606c00313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a056825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0d4006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40ad04b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b159800981a000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130080018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c11505a20b4416882d105a20b4416882d04c966002607000313259800800c116264b30010018acc004c18800a330010018044119028411905f411a08d04682320c63060001417860b86ea800a2b300130370018992cc00400608b13259800800c56600260c4005159800981d182e9baa0018992cc00400608f13259800800c4c9660020030498992cc0040062b300130660028cc00400e33001001806412902d412902d4129063412a09504a82520ce3064001418860c800504882441220908328c188005060182f1baa00182320b682320be823411a08d046418c60c000282f0c170dd5001411105920b2305a375400260b46ea800e08682e2087043821c10d060182e800a0b6305d002820c106083041417860b600282c8c15cdd500d40fd05409981980b112cc00400a33001305b30583754606e60b06ea809645300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa303b305c375460be002605e660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303d305e37540046062660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230343058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013039305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48896600200514c103d87a80008acc004c0dc00626072660ba60bc00497ae08cc00400e60be0053031001400c82c105c488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064175133005005306400441746eb8c174004dd5982f0009830000a0bc14bd6f7b6304dc024005222329800800c012006800888966002005159800800c528c52820be8acc00400629422b3001330043061002375a60c200319800801cc18800a60c4002801a294105b20be417d25980099b88001480022605c003100141592305c305d305d305d0019112cc004c0dcc168dd5001c4c9660020030028992cc004006007003801c4c96600260c400700580220be375a003003418860be00282e8c16cdd5001c00505848c170c174c174c174c174006460b860ba60ba60ba60ba60ba60ba60ba60ba003222329800800c01200680088896600200510018cc00400e60c4005330043061002001400c82fa4466e0ccdc10011bad303a305a37540026eb4c0e4c168dd5000cdc424001371e9110455534472009112cc004c0dcc168dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983380146600200f19800802c4c966002608000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002608e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130710038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001307600380cc0610731bae00141d860e60028388dd7000983900120e6307000141b901341b86eb000602501241c460dc0028360dd68009836801403d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981e800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607600313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc306437540091598009807800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd5002402906120c24184830906120c241848308c188dd5001c02502f402503340250641832800a0c63065002803c01e00f007419860c60028308c18c00a00b005802c0150641830800a0be3061002801c00e007003418860be00282e8c16cdd5001c005058488cc0a40088cdd7982f182d9baa001374e00491111111111111111114c004c1a8dd5009c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c54cc1c1240112657870656374205b5d203d206c6973745f62001641cd159800801454cc1c12411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260ec007307600299912cc004c01c00a266e0000cdd69829983a1baa00283020e23075003375a60ea004802107320e68a9983624812e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641ad300f00f912cc0040062900044c03ccc008008c1c400506e489660020031480022601e6600400460e200283724446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e2899802802983c00220e2375c60e20026eb4c1c8004c1d0005072198090020018a40012259800800c5200089807998010011838800a0dc91808800c88c96600260a260da6ea8006264b30010018cc0040062b30013375e601c60de6ea800cc1c8c1bcdd5002456600266ebcc138c1bcdd5000983918379baa0038800c18906c418506c418100641820c106083020e83071306e375400305e41ac609a60da6ea8c130c1b4dd50012444444445300130060069802802c896600266e2000520008a6103d87a8000899804801000a0e69801801a4444646644b300130570108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea8006264b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0029bac305e307f3754007375860a660fe6ea80092225980099b87300d003300d0078acc004c04000a33001003801488c96600260c26108026ea800626464b3001306330860137540031323298009980f804000cdd618131844809baa0049bad308c0100248896600260d06116026ea800e2b30013371264664466e0cc194cdc019b82001375a60de611e026ea800c008008dd698361846809baa001375a60d8611a026ea8020c23c04c23004dd5001cc004dd598359846009baa306b308c013754015375c611e02005375c611e0261200200480e22b30013370e0026eb4c1acc23004dd5003c4cdd79ba70043029308c01375400f14a084480a294108901454cc228052414365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164224043758611602611802002610e026ea800629410840118331843009baa3301300400130880130850137540030744208046601c012002811a0e083fa0de83f9159800cc004dd6182f983f9baa0618024dd6184100983f9baa0039984080982f183f9baa301b307f37540046610202981054455534472004bd70200a899b879800801418690004dd6982f983f9baa0039bad301e307f3754007004401800306a41f1153307d49018f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641f130010039bac308101307e375400523018375a60bc60fe6ea800501241a107b22b300130560108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea80062b30019800998121bac308101307e37540c06eb8c178c1f8dd5180d183f1baa0019bac305d307e37540053308001305d307e3754603460fc6ea8004cc20005301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c180c20c04dd5000c4c8c96600260c2610a026ea800626464b3001337120033001375660ce6110026ea8c19cc22004dd5003cdd71845808044dd718458098460080420308acc004cdc3800982e9bad3067308801375400913375e611602611802004604a6110026ea80122941085014528210a02375a611402002610c026ea800629410830118329842809baa3301200400130870130840137540030734204046601a01000281120de83f20dc83f1159800cc004dd6182f183f1baa0609bac308101307e3754005375860a460fc6ea80052225980099b87300d002300c0068cc00401a00522325980098301841809baa0018cc004c21c04c21004dd5000cdd618109842009baa0039980d0021bac302130840137540069112cc004c18cc21804dd5000c56600266ebcc22804c21c04dd50019845009843809baa308a01308701375400d15980099baf3067308701375400660cc610e026ea8c22804c21c04dd500344cdc3cc004dd598331843809baa0039bae308a010029bae308a01308b01002405c66042604e6eb4c198c21c04dd50031845009843809baa0018a5042100514a084200a2a6610a029215365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642100483ea102023300d005001408907941f8899b879800800c18290004dd6982f183f1baa0029bad301d307e3754005003401530010039bac308101307e37540052337106eb4c178c1fcdd5000a400080922a660f89219e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641ed153307c491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641ed06841ec8992cc004c14c04633001375860fe60f86ea809260fe60f86ea812660b660f86ea812922259800998131bac308201307f37540c26eb8c078c1fcdd5180d983f9baa0018992cc004cc896600266e1cc034008c03401a2b300130100018cc00400a00322325980098309842009baa001899912cc004c1a8c21804dd5000c4c96600200319800800c56600266ebcc09cc22004dd50019845809844009baa0068acc004cdd798339844009baa001308b0130880137540071325980098301844009baa001899b87375a6118026112026ea8004dd698341844809baa0048a5042180460d06110026ea80060f684280a0f484280a0f280fa0f307983cc1e508d011845009843809baa00183ba10802308801308501375400260ca610a026ea8c190c21404dd5001c1d10820119807004000a04683820fe837a0fe3302637586106026100026ea8188dd718301840009baa301c30800137540046eb0c17cc20004dd5001c5660033001375860c06100026ea818a00937586106026100026ea800e661040260be6100026ea8c070c20004dd50011984100a61054455534472004bd70200c8991919912cc004cdc3acc004c180c0340062900045660020030788992cc004c2240400a264b3001301e375c610a02005100183da10602375a610a02003079421804610e0200284280908101002c56600266e1ccdc09bad3087013084013754610e020066eb4c21c04c21004dd5184380802002c4cc024dd6182c1842009baa006232306298008024dd7184480800cdd7184480984500800a02c3758611002610a026ea80060fc84080a2a661040292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e7400164204046eacc21404c21804004cc094dd5980f9841009baa064375c60c26104026ea8c078c20804dd5002184280800cc00418a6eb8c20c04c20004dd5180e1840009baa0029bad30603080013754007375a603e6100026ea800d00841ad07d454cc1f9241776578706563740a2020202076616c69646174655f6469726563745f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641f530010039bac308201307f375400523019375a60be6100026ea800501341a507c22b300130270118cc004dd6183f983e1baa024983f983e1baa049982d983e1baa04a4889660026604c6eb0c20804c1fcdd50309bae301e307f3754603660fe6ea80062b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0019bac305e307f37540053308101305e307f3754603660fe6ea8004cc20405301054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c184c21004dd5000c4cc896600260d4610c026ea8006264b30010018cc0040062b30013375e604e6110026ea800cc22c04c22004dd5003456600266ebcc19cc22004dd50009845809844009baa0038992cc004c0d0c22004dd5000c4c96600266e2400660026eacc1a4c22804dd518349845009baa0089bae308d010099bae308d01308e01009406913370e00260be6eb4c1a4c22804dd5002c528210e02375a6118026112026ea800629410860118341844009baa00183da10a0283d210a0283ca03e83cc1e60f3079423404611402610e026ea80060ee842008c22004c21404dd500098329842809baa306430850137540070744208046601c010002811a0e083fa0de83f9198009bad305f307f3754005375a603c60fe6ea800b3001003a4001225980099b88375a60c06102026ea80092000899b80001375a60c06102026ea800a0da83f101a4cc088dd5980e183f9baa061375c60bc60fe6ea8c06cc1fcdd5000a4444646464b30013370eb30013062300f0048a400115980080241ea264b3001308b010058992cc004c080dd7184380801440060fa842808dd6984380800c1ed08801184480802210e02420c0400b15980099b87337026eb4c22404c21804dd51844808011bad308901308601375461120200600b13300b375860b4610c026ea80208c8c1926002007375c611602003375c61160261180200280c0dd61845009843809baa0018a9984200a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016420c051533084014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016420c046eacc22004c22404004c2200400660020cb375c610c026106026ea8c07cc20c04dd5002c0120068059153307d491896578706563740a2020202076616c69646174655f6469726563745f6275726e5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641f106941f08a5041e483c888c8cc00400400c896600200314a31598009801984100800c4cc008008c20c04006294107c21000241e083c0888888cc88ca60026eacc21404c2180400664660020026eb0c15cc20c04dd5005112cc004006297ae0899843009843809842009baa3087010013300200230880100142140559800982f1805801c520008acc00400e0ed1325980098438080244c96600260386eb8c20c0400a20030794204046eb4c20c040060ee842008c2140400d0830120fe488966002646600200200844b30010018a518991991199119801001000912cc004006200713233225980099802802984980802456600266e3c01d221008a518991919800800807112cc00400629422b30013375e612a020026e9c00e2946266004004612c020028478090930119848809ba90073309101375200497ae042300514a0846008dd71846008009bad308d01001308f010014234046eacc2280400cdd718438080099801801984600801184500800a110028acc004cdc399b81375a611002610a026ea8c22004010dd69844009842809baa3088010050018992cc004cdc3cc004dd6182d1843009baa00da400122332259800cc004c1980069429450870144c96600266e24cc0940040166002013375c611c02007375c611c02611e0200680da266e000100062a66112029212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642200466e080040162006843808dd61845809844009baa002329800805d2000912cc004cdd798141845809baa002374e0071337000026eb4c1a8c22c04dd50014400508801204837586116026110026ea800902119b8100200b8801454cc210052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016420c04b3001301e00a8a40031480090820141fd08201454cc20c052401b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a20202020290016420804308501001330223756603860fe6ea8014dd7182f183f9baa301b307f375400d30010059bae308201307f3754603660fe6ea801a007002401c4444b30013370e6012004601000719800801c00a4464b3001305c307f37540031325980099baf30840130810137540026108026102026ea8c21004c20404dd5002456600266ebcc184c20404dd500098301840809baa308401308101375400913370f3001375660c06102026ea80066eb8c210040166eb8c18001501118109bad3060308101375400914a083f2294107e1841809840009baa00183ca0fa33009006001407907541e8444464b30013059307c37540031325980099baf308101307e375461020260fc6ea8c174c1f8dd5000982899840009ba90054bd70456600260b33001375660ba60fc6ea8c174c1f8dd5000c016911087472656173757279004039132598009831183f1baa0018992cc004006330010018992cc004c174c20004dd5000c4c96600266ebcc21404c20804dd51842809841009baa00130553308401375201297ae08acc004c17660026eacc184c20804dd5000c02691010874726561737572790040491325980098331841009baa0018992cc004006330010018acc004cdd798119842009baa0034c103d87a800089984300802998430080099843009ba6329800800cdd598321842809baa00499198008009bab3065308601375460ca610c026ea8024896600200314bd6f7b63044c8cc22804cdd81843808009ba63233001001375661120200444b30010018a5eb7bdb1822646611a0266ec0c22804004dd418301bad308b0100133003003308f01002308d01001422c04660060066118020046114020028440090011112cc00400a2003132332298008034c23804016646600200200a44b30010018998470099bb037520086e9800d2f5bded8c113298009bae308c010019bab308d010019848808012444b30013372001000713309201337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528212402880144cc24c04cdd81ba9009374c002004847008ca6002003008801a002222598008014400626466453001006984d00802cc8cc004004014896600200313309a01337606ea4010dd4001a5eb7bdb1822653001375c613002003375a613202003309d0100248896600266e4002000e26613c0266ec0dd48041ba80070058acc004cdc7804001c4c96600260f2003100289984f8099bb037520126ea000400909a0119b8000700289984f0099bb037520066ea0008cc01801800509901213202184d80800a1320240186eb8c24c04004dd6984a00800984b008012128028998490099bb037520066e98008cc01801800508d01211a02184780800a11a0240186eb8c21c04004dd59844008009845008012110024bd70454cc2080524126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642040507b408907b83dc1ee0f6844808c21804c20c04dd5000c54cc2040524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642000460c46104026ea80062a6610002920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641fd15330800149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641fc6108026102026ea80062a660fe92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641f8660146eb0c180c20004dd5004002c1d901e41da0ed07683b210a02308201307f3754003153307d49013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641f060bc60fc6ea8c174c1f8dd5000c54cc1f12401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641ed153307c4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641ec61000260fa6ea80062a660f692013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641e86600c6eb0c1fcc1f0dd500200108992cc0040060830418992cc00400608513259800800c10e087043821c4cc89660020030458992cc0040062b300130620028992cc004c0ecc178dd500144c9660020030488992cc004006264b300100182544c96600200313259800800c132264b3001001826c13609b04d8992cc004c1a800e2b300130423065375400d13259800800c13e264b300100182841420a1050899912cc0040060a513259800800c14e0a7053829c4c96600260e0007132598009824800c4c9660020030568992cc0040060af05782bc15e264b3001307400380941610711bae00141d060e20028378c1b4dd5005c566002609000315980098369baa00b807c15506e415506a20d4306b375401505441b46eb80050701836800a0d6375c00260d80048368c1a800506818331baa00682720c682720ce375c0028350c19c0050651833801412e09704b825a0d03065001418c60ca005049824c1260928330c18c005061182f9baa002823a0b813007306200882320be823411a08d046418c60c000282f0dd7000982f80120c0305d001416c6eb0006083041417860b600482c8dc3a401d03d407903d407913259800800c0fa07d03e8991801982d8021bad00181f20b63058002415913259800800c0f207903c8991801982c8021bad00181e20b230560024151039414903981cc0e607282b0c14c005051182980140de06f03781ba0a83051001413c6eb4004c14000a0688288c13800504c1bad001304d002818a09c304b00141246eb0004c12800a05d02e412c60900028230dd6000982380140ae0568240c11400504318209baa006814a07c814a0843758003028814208a304200141006084005026813409a04c8218c10000503e182000140920490248122082303e00140f060746ea801e04481b888966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018992cc00400601313259800800c02a01500a8992cc004c12400e330010098cc00401201900b403d00b404500b41186eb40060148248c11800504418230014022011008804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c088966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009826001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009828801c0520268270dd7000a0a2304e00141306eb8004c13400904e1825800a092807202480720288072092375800300d806a0983049001411c609200500b805c02e0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c101c80e407203881c8cc88c9660026024606a6ea80062606c6466ec0c0e8004c0e8c0ec004dd6181c981b1baa0018a9981a24818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640cc646600200200644b30010018a60103d87a80008992cc004cdd7981b80099ba548010cc0e8c02ccc0e8dd480225eb812f5c1130163303a374e66074606e00266074607000297ae04bd7044cc00c00cc0f0009035181d000a0703756600e60666ea8054dd7181b18199baa0019800912cc004006297ae089981b1819981b80099801001181c000a06a9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206491111919800800802912cc004006200b13259800800c4cc010c0f000801a26600a60780046600600600281d0c0f00050394dd6180898191baa01448888c8c8c8cc88c966002003159800980c181d9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130450028acc004c074c100dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305c0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d0c15cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260d000713304100f225980080146600201f102b827a06e8992cc0040062b300130433066375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130740038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307900389808183c808c1790761bae00141e460ec00283a0dd7000983a80420ec307300741c505941c46eb40060b083a0c1c400506f1bad001307000282aa0e2306e00141b06eb0004c1b400a0a505241b860d60028348c19cdd5000c14106441420a105082820d83069002419d04d41946eb80050681832800a0c6375c00260c80048328c1880050601bae0013061002418860be00282e8dd7000982f00120be305c001416860b06ea801a08282aa0828142082814208281420828142082814208281420828142082814208282ca083041820c10505d182d000a0b0375800260b200503e81f20b43057001415460ae00503c81e40f207882c0c154005053182a80140ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f182880140da06d03681b20a4304f0014134609e00503481a40d20688280c13400504b182680140ca065032819209c304b0014124609600503081840c20608260c124005047182480140ba05d02e817209430470014114608e00502c81640b20588240c11400504318209baa001815207c815208481540aa05502a411860860028208dd700098210012086304000140f860786ea800604a81ca04b025812c09504129981c99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40dd22010013259800980c181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981e9baa0018992cc0040062b3001301b303e375400313259800800c0ee264b300100181e40f207903c899912cc00400607d1325980098240014401a07e8228c1180050441bae0013045002411860860028208c0fcdd5000c0e903c40ea07503a81d20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec603a607a6ea8c070c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46601400c4646600200260066eacc070c0f4dd5180e181e9baa0022259800800c528456600266e3cdd7182080081d4528c4cc008008c10800503b207e300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20825980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d903b1bac303e002375a60780026466ec0dd4181e0009ba7303d001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6082003337149101023a200098008054c10800600a805100a182200144ca6002015304100199b8a489023a200098008054c108006600e66008008004805100a182200120843044001410466e29220102207d0000340f86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039009207c3758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e410066e2ccdc0000acc004cdc4000a4029148182290372080004401866e0c00520203370c002901019b8e00400240f46eb800d0411b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681c10381801801844464b3001300e0018992cc00400600713259800800c01200900480244c9660026072007006802a06c375c00281c8c0d800503418191baa0048acc004c034006264b3001001801c4c966002003004802401200913259800981c801c01a00a81b0dd7000a072303600140d060646ea8012004817902f18181baa00345901c0c078004c064dd500fc5268a9980ba491856616c696461746f722072657475726e65642066616c7365001365640581" + : + "5922b1010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c91807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601e6603c00297ae089980180198100012034301e001407122232598009806000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300b0018992cc004c08000626601c6eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc038dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0280062646644b300130220018998081bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b30013009001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260100031323259800981080140122c80f0dd6980f800980d9baa0038acc004c01c00626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c02c00626464b3001302000280245901d1bae301e001301a37540071598009805000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c028c060dd500144c8c8c966002604000513232598009807800c566002603c6ea800a00d16407d1598009807000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689806180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300a30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009805800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300a0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013015302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301933028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c050c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980a18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980a98119baa003899191919912cc004c0b400e264b3001301b30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc09cdd6181c005912cc00400a26605200c44b300100289980e80289980e804899192cc004c0b0c0e8dd5009c4c8c8c9660026084005132332259800981900144c966002608c0031330343758608a00244b300100280244cc084c11c0084c004c12000904545904318209baa0038acc004c0c400a264b3001304600189981a1bac304500122598008014012266042608e004260026090004822a2c8218c104dd5001c5660026072005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130300028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b208630413754007159800981780144c966002608c0031330343758608a00244b300100280244cc088c11c0084c004c12000904545904318209baa0038acc004c0b800a264b3001304600189981a1bac304500122598008014012266044608e004260026090004822a2c8218c104dd5001c566002605a005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130080028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b2086304137540071640fc81f903f207e40fc81f903f207e303e3754002264b300130310018992cc004c11400626604c608800200f16410860806ea800e2b300130300018992cc004c114006264b3001303330413754003132323259800982480144cc0acc12000c4cc0ac00402e2c8230c11c004c11c004c108dd5000c590401822000c5904218201baa0038b207c40f8607c6ea8008c10400e2c81f8c100004c100004c0ecdd5009c59039099816009912cc00400a33001303f303c3754606060786ea806e45300132330010010032259800800c528456600266ebcc10cc100dd5182198201baa30343040375460860026054660846ea400d2f5c114a3133002002304400140f8820a94294503c488c8cc00400400c896600200314bd7044cc896600266ebcc114c108dd5182298211baa3036304237540046058660886ea40152f5c113304400233004004001899802002000a0803043001304400141052302d303c37546080646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001303230413754608a0074a14a2820226608930014a14c103d87a8000a60103d87980004100660886e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11c00400e29462660040046090002821104544cc112600294298103d87a8000a60103d87980004100660886e9c0092f5c11330449800a51a60103d87a8000a60103d87980004100660886e9ccc110dd400080125eb8104020803758608660880026eb4c10c008cc008008c10c00504048896600200514c103d87a80008acc004c0c00062606466082608400497ae08cc00400e6086005337000029000a00640f482024464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208489980280298240022084375c60820026eacc108004c1100050420a5eb7bdb1826e012002911194c0040060090034004444b30010028acc00400629462941043456600200314a11598009980218228011bad30450018cc00400e608c0053046001400d14a0820104320869b81480024608060826082608200322598009817981e9baa002899192cc004c11000a0071641046eb4c108004c0f8dd500145903c48c100c104c104c104c1040064608060826082608260826082608260826082003222329800800c01200680088896600200510018cc00400e608c005330043045002001400c821a4466e0ccdc10011bad3033303e37540026eb4c0c8c0f8dd5000cdc424001371e911045553447200912cc004c0bcc0f4dd500144c8c8c8ca6002608a003304500398228012444b3001304900489981418240038998128010992cc004c0dc0062646644b3001304d0018991919912cc004c14400e0211641386eb8c138004dd7182700118270009bac304c0018b2094375a60940026096002608c6ea800a2b3001303600189919912cc004c134006264646644b3001305100380845904e1bae304e001375c609c004609c0026eb0c1300062c8250dd69825000982580098231baa0028acc004c0f8006264653001375a6096003304c0019bad304b002488966002609e005132323322598009829801c04a2c8280dd718280009bae305000230500013758609c005164130304b00130463754005159800981a800c4c8cc8966002609a003132323322598009828801c0422c8270dd718270009bae304e002304e001375860980031641286eb4c128004c12c004c118dd50014566002606800313232598009826001402e2c8248dd6982500098231baa0028acc004c0cc006264646644b3001304e003806c5904b1bad304b001375a60960046096002608c6ea800a2b30013032001899192cc004c13000a0171641246eb4c128004c118dd50014566002601a00313232598009826001402e2c8248dd6982500098231baa0028b20884110822104420884110822104418221baa0018b208c182280098220009821800981f1baa0028b20789119813801119baf3042303f37540026e9c0092222222222222222222980098271baa0139112cc004c04c00a2653001001802400e90002002222259800801c56600200510018b20ae8cc00401260b4007305a00299912cc004c01c00a266e0000cdd69826182c1baa0028b20ac3059003375a60b200480210574590504c03c03e44b30010018a40011300f33002002305500141492259800800c520008980799801001182a800a0a491119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c82b226600a00a60b800882b0dd7182a8009bad3056001305800141586602400800629000496600266e20005200089806000c400504e489660020031480022601e6600400460aa002829246022003223259800982518289baa001899198030008acc004cdd7980718299baa00330563053375400915980099baf30473053375400260ac60a66ea800e200316414516414460aa60a46ea80062c8280c118c144dd5182298289baa0024888888888a6002600e00f3006006912cc004cdc4000a400114c0103d87a8000899805001000a0b29801801a4444646644b300130510118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac3057306337540053758609c60c66ea80052225980099b87300c003300c0068acc004c03c00a33001003801488c96600260b460d06ea800626464b3001305c306a37540031323298009980f804000cdd6181318369baa0049bad307000248896600260c260de6ea800e2b30013371264664466e0ccdc019b80337040026eb4c1a0c1ccdd5001801240020046eb4c194c1c4dd50009bad30653071375401060e660e06ea800e60026eacc190c1c0dd5183218381baa00a9bae30730029bae30733074002407115980099b87001375a60c860e06ea801e266ebcdd3802181498381baa0078a5041b914a083722c83706eb0c1bcc1c0004c1acdd5000c52820d2305f306a37546602400800260d860d26ea80062c8338cc03402000502345906445906422b300198009bac3058306337540b50039bac30663063375400533065305730633754603660c66ea8004cc195301054455534472004bd702008899b879800800c16a90004dd6982c18319baa0029bad301e30633754005003401530010039bac30663063375400523019375a60b060c86ea800501345906145906145906122b300130500118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac30573063375400533065305730633754603660c66ea8004cc195301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c168c1a0dd5000c4c8c96600260b660d46ea800626464b3001337120033001375660c260da6ea8c184c1b4dd5003cdd718380044dd71838183880420328acc004cdc380098149bad3061306d375400913375e60e060e2004604c60da6ea8012294106b452820d6375a60de00260d66ea80062941069182f98351baa33012004001306c3069375400316419c6601a010002811a2c83222c8321159800cc004dd6182c18319baa05a9bac3066306337540053758609c60c66ea80052225980099b87300d002300c0068cc00401a005223259800982d18341baa0018cc004c1b0c1a4dd5000cdd6181118349baa0039980d8021bac3022306937540069112cc004c174c1acdd5000c56600266ebcc1bcc1b0dd5001983798361baa306f306c375400d15980099baf3061306c375400660c060d86ea8c1bcc1b0dd500344cdc3cc004dd5983018361baa0039bae306f0029bae306f3070002406066044602e6eb4c180c1b0dd5003183798361baa0018a5041a914a083522c835116419c6601a00a002811a2c832113370f300100182d520009bad305830633754005375a603c60c66ea800a006802a6002007375860cc60c66ea800a466e20dd6982c18321baa001480010134590614590614590612264b3001304d0128cc004dd6183218309baa025983218309baa040982a98309baa0424889660026604e6eb0c19cc190dd502d9bae301f30643754603860c86ea80062b300133225980099b87300c002300c0058acc004c03c00633001002800c88c96600260b460d06ea800626644b30013063306a37540031323301f00115980099baf3027306c375400660de60d86ea801a2b30013375e60c060d86ea8004c1bcc1b0dd5001c4c96600260b260d86ea8006266e1cdd6983818369baa001375a60c260da6ea8012294106b183098361baa0018b20d48b20d4306e306b37540031641a460d860d26ea8004c178c1a4dd5182e98349baa0038b20ce3300d007001408d1641911641906604c6eb0c19cc190dd502d9bae305930643754603860c86ea8004dd6182c18321baa0028acc00660026eb0c164c190dd502dc00e6eb0c19cc190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd70200a8cc004dd6982c98321baa0029bad301f306437540059800801cdd6183398321baa0029180d1bad30593065375400280a2660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641891641888acc004c0a004a33001375860c860c26ea809660c860c26ea810260aa60c26ea810922259800998139bac3067306437540b66eb8c07cc190dd5180e18321baa0018acc00660026604c6eb0c19cc190dd502d9bae305930643754603860c86ea80066eb0c160c190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c16cc1a4dd5000c4cc896600260c860d66ea8006264660400022b30013375e605060da6ea800cc1c0c1b4dd5003456600266ebcc184c1b4dd5000983818369baa0038992cc004c0d4c1b4dd5000c4c96600266e2400660026eacc18cc1bcdd5183198379baa0089bae30720099bae30723073009406d13370e00260566eb4c18cc1bcdd5002c52820da375a60e260dc6ea8006294106c183118369baa0018b20d68b20d6306f306c37540031641a860da60d46ea8004c17cc1a8dd5182f18351baa0038b20d03300e00800140911641951641948cc004dd6982c98321baa0029bad301f306437540059800801d2000912cc004cdc41bad305a30663754004900044cdc00009bad305a3066375400516419080da660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641888a50417c82f888c8cc00400400c896600200314a315980098019833800c4cc008008c1a0006294106220ca417882f0888888cc88ca60026eacc1a8c1ac00664660020026eb0c14cc1a0dd5005112cc004006297ae0899835983618349baa306c00133002002306d00141a959800982c1805801c520008acc004c1ac00e264b3001301c375c60ce0031375a60d000316419860d40071641a08329222598009919800800802112cc0040062946264664466446600400400244b30010018801c4c8cc89660026600a00a60f000915980099b8f007489008a518991919800800807112cc00400629422b30013375e60f40026e9c00e294626600400460f600283a90781983b1ba900733076375200497ae041c914a08390dd718388009bad3072001307400141c86eacc1bc00cdd718360009980180198388011837800a0da8acc004cdc399b81375a60da60d46ea8c1b4010dd6983698351baa306d0050018992cc004cdc3cc004dd6182b18359baa00da400122332259800cc004c18000694294506d44c96600266e24cc0980040166002013375c60e6007375c60e660e800680e2266e000100062c8370cdc1000802c400d06d1bac3070306d375400465300100ba4001225980099baf3029307037540046e9c00e266e00004dd6983218381baa0028800a0dc40946eb0c1c0c1b4dd500120443370200401710028b20d259800980f8054520018a400483422c83422c834060d4002660466eacc074c190dd50029bae305830643754603860c86ea801a600200b375c60ce60c86ea8c070c190dd5003400e004803888896600266e1cc024008c02000e33001003801488c96600260ac60c86ea8006264b30013375e60d260cc6ea8004c1a4c198dd5183498331baa0048acc004cdd7982d98331baa001305a3066375460d260cc6ea8012266e1e60026eacc168c198dd5000cdd71834802cdd7182d002a0243011375a60b460cc6ea80122941064452820c830683065375400316418c6601200c00280fa2c83008888c96600260a660c26ea8006264b30013375e60cc60c66ea8c198c18cdd5182b98319baa001304d33065375200a97ae08acc004c14e60026eacc15cc18cdd5182b98319baa001802d220108747265617375727900403d13259800982e18319baa0018991980f8008992cc004c15cc194dd5000c4c96600266ebcc1a8c19cdd5183518339baa001305133069375201297ae08acc004c15e60026eacc16cc19cdd5000c02691108747265617375727900404d13259800983018339baa001899198118008acc004cdd7981218349baa0034c0103d87a800089983580299835800998359ba6329800800cdd5982f18351baa00499198008009bab305f306b375460be60d66ea8024896600200314bd6f7b63044c8cc1bccdd818360009ba63233001001375660dc00444b30010018a5eb7bdb182264660e466ec0c1bc004dd418161bad3070001330030033074002307200141c06600600660e200460de00283690011112cc00400a2003132332298008034c1cc016646600200200a44b300100189983999bb037520086e9800d2f5bded8c113298009bae30710019bab3072001983b0012444b300133720010007133077337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ee880144cc1e0cdd81ba9009374c00200483a0ca6002003008801a002222598008014400626466453001006983f802cc8cc004004014896600200313307f337606ea4010dd4001a5eb7bdb1822653001375c60fa003375a60fc00330820100248896600266e4002000e2661060266ec0dd48041ba80070058acc004cdc7804001c4c96600260e600310028998420099bb037520126ea00040090800119b800070028998418099bb037520066ea0008cc01801800507f20fe184000800a0fc40186eb8c1e0004dd6983c800983d80120f289983b99bb037520066e98008cc01801800507320e6183a000a0e440186eb8c1b0004dd59836800983780120da4bd70459067183598341baa0018b20cc305c3067375400316419516419460d260cc6ea80062c8320cc028dd6182d18329baa00800530673064375400316418860b060c66ea8c15cc18cdd5000c59061459061183298311baa0018b20c033006375860c860c26ea801000844c8cc896600260860031332259800981918201baa002899191919912cc004c12800e264b3001303830463754003132323322598009827801c4c966002607a00313232598009829001403a2c8278dd7182800098261baa0078acc004c0f00062b3001304c375400f00c8b209a8b2094412860946ea801a2c8260dd718260009bae304c002304c00130473754003164114609200b16411c6eb8c11c004c11c008c11c004c118004c104dd500145903f1821000898021821802c590401bae304000130410013758607e00481e8dc3a401d1323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980998109baa00189919912cc004c0a4006264b3001301730253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b0c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0d4024896600200513302701410248992cc004c0dcc114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c04cc084dd5000c4c966002603660446ea8006264b3001301530233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084602e60446ea8c058c088dd5181298111baa0018b20403300a3758602a60426ea80608c8cc004004c00cdd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602460406ea800a2646464b3001302800289980318138018992cc004c0580062b3001302537540050058b204c8acc004c05400626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013010301e3754005132323259800981300144cc024c09400c4c9660026028003132598009814000c4c8c966002602e003132598009815800c4cc038c0a80040262c8140c098dd50014566002602c003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602600315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d1365640081", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProtocolMintProtocolMintElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5942e3010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a49856578706563740a2020202076616c69646174655f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a202020202020757364725f61737365742c0a202020202900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888888896600264653001301e001980f180f800cdc3a4009301e00248889660026004603c6ea800e330013022301f37540072302330243024001918119812000cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c9b80480066e05200091811981218121812181218121812181218121812000cdd2a4004911111111111111194c00488966002601c60626ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0e800a330010038992cc004c04c006264b3001001803c4c966002003159800981e80144c966002602c00313259800800c02a264b30010018acc004c10000a33001001806402d00e402d03d402e01700b805a082303e00140f060746ea800a2b300130150018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c11c00e02701241106eb40060228238c1100050421bad00130430028072088304100140fc6eb4004c10000a0168208c0f800503c181d1baa002804a06e40dc60706ea800601081d2011008804402103e181d800a072303737540051598009809000c566002606e6ea800a00f00640e100640d081a0c0d4dd5000c0150084015037401600b005802a076303800140d86070005003801c00e00681c8c0d800503418191baa003800a05e911194c004006009003400444464b300130120018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa0038acc004c044006264b300100180344c966002003007803c4c966002607a0071330160012259800801401e264b30010018cc00402a003130023040003402900b805c02e0168208c0f800903c402103a1bac001803c01d03d181d000a07030363754007159800980c800c4c9660020030068992cc00400600f0078992cc004c0f400e26602c00244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130100018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009820001c4cc064004896600200500a8992cc0040063300100d800c4c008c10c00d00d403a01d00e8072088304100240fd00b40f46eb000601500a4100607a00281d8dd6800981e001401d03d181d000a070303637540071598009807800c4c9660020030068992cc00400600f007803c4c966002607a0070058042074375a00300740f4607400281c0c0d8dd5001c566002601c00313259800800c01a264b3001001803c01e00f13259800981e801c01601081d0dd6800c01d03d181d000a070303637540071598009806800c4c9660020030068992cc00400600f007803c01e264b3001303d003802c02103a1bae00140f4607400281c0c0d8dd5001c015033206640cc8199033206640cc60686ea800a44646600200200644b30010018a60103d87a80008992cc004c010006260246606c00297ae0899801801981c0012062303600140d091119192cc00400633001222598009809981b1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303f0028cc00400e264b300130180018acc004c0f0dd5001401e00c81ea2b300130170018992cc00400600f13259800800c02201100880444c966002608600700a804a080375c0028218c10000503e181e1baa0028acc004c07c006264b3001001803c4c9660026084005009804207e304000140f860786ea800a00c81c90392072303a3754003005403100540f1005802c01600a8200c0f400503b181e801400e007003801a07c303b00140e4606e6ea800e00281a2444b300130133036375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607800315980099b8948010c0ec00600d13259800982080244c9660026034003159800981f1baa006804c02103f4566002603200313259800800c026264b3001001805402a015132598009822801c0320168210dd6800c0290451821000a080303e375400d1598009810800c566002607c6ea801a01300840fd00840ec81d903b181e1baa005803a07c3017303b00140e500640f46ea800600b005802c015040181e800a076303d002801c00e00700340f8607600281c8c0dcdd5001c0050344889660026026606c6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d132598009820801c02200e81f0dd6800c019041181f000a078375c002607a00481f0c0ec005039181b9baa003800a068911192cc004c050006264b3001001801c4c9660020030048024012264b3001303f003803401503c1bad001802207e303c00140e860706ea80122b300130130018acc004c0e0dd5002400e00481ca00481a9035181b1baa00348888cc8966002602c60726ea801e264b3001001811c4c96600200313259800800c096264b30010018992cc00400604f13259800800c0a2051132598009822801c566002603a60806ea801a264b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e899912cc00400606113259800800c0c6063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c4c9660020030388992cc0040062b30013055002899817007112cc00400a26606001a44b30010028cc00401e33001005899192cc004c0ccc158dd500d44c9660020030408992cc004006264b300100182144c966002003159800982f80144cc8966002607200313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a054825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0e0006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40a904b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b1598009820000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130370018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c566002606c00313259800800c11a264b3001001823c11e264b3001306400389981e800912cc00400a00f13259800800c66002003130023067003825a056825c12e09704b41a060ca004831a0908308dd6000c11e08e8320c18400505f182e9baa0058acc004c0d4006264b300100182344c966002003047823c4c96600260c800713303d0012259800801401e264b30010018cc0040062600460ce00704b40ad04b825c12e0968340c19400906341210611bac001823c11d0641830800a0be305d375400b159800981a000c4c9660020030468992cc00400608f0478992cc004c19000e26607a00244b3001002803c4c96600200319800800c4c008c19c00e096815209704b825c12d068183280120c682420c23758003047823a0c83061001417c60ba6ea80162b300130080018992cc00400608d13259800800c11e08f132598009832001c4cc0f400489660020050078992cc00400633001001898011833801c12d02a412e09704b825a0d03065002418d04841846eb000608f047419060c200282f8c174dd5002c11505a20b4416882d105a20b4416882d04c966002607000313259800800c116264b30010018acc004c18800a330010018044119028411905f411a08d04682320c63060001417860b86ea800a2b300130370018992cc00400608b13259800800c56600260c4005159800981d182e9baa0018992cc00400608f13259800800c4c9660020030498992cc0040062b300130660028cc00400e33001001806412902d412902d4129063412a09504a82520ce3064001418860c800504882441220908328c188005060182f1baa00182320b682320be823411a08d046418c60c000282f0c170dd5001411105920b2305a375400260b46ea800e08682e2087043821c10d060182e800a0b6305d002820c106083041417860b600282c8c15cdd500d40fd05409981980b112cc00400a33001305b30583754606e60b06ea809645300132330010010032259800800c528456600266ebcc17cc170dd5182f982e1baa303b305c375460be002605e660bc6ea400d2f5c114a31330020023060001416482ea942945057488c8cc00400400c896600200314bd7044cc896600266ebcc184c178dd51830982f1baa303d305e37540046062660c06ea40152f5c113306000233004004001899802002000a0b6305f00130600014175230343058375460b8646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013039305d375460c20074a14a282da2660c130014a14c103d87a8000a60103d8798000416c660c06e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c18c00400e294626600400460c800282e906144cc182600294298103d87a8000a60103d8798000416c660c06e9c0092f5c11330609800a51a60103d87a8000a60103d8798000416c660c06e9ccc180dd400080125eb8105b20b6375860be60c00026eb4c17c008cc008008c17c00505c48896600200514c103d87a80008acc004c0dc00626072660ba60bc00497ae08cc00400e60be0053031001400c82c105c488c8c8cc004004010896600200300389919912cc004cdc8803801456600266e3c01c00a20030064175133005005306400441746eb8c174004dd5982f0009830000a0bc14bd6f7b6304dc024005222329800800c012006800888966002005159800800c528c52820be8acc00400629422b3001330043061002375a60c200319800801cc18800a60c4002801a294105b20be417d25980099b88001480022605c003100141592305c305d305d305d0019112cc004c0dcc168dd5001c4c9660020030028992cc004006007003801c4c96600260c400700580220be375a003003418860be00282e8c16cdd5001c00505848c170c174c174c174c174006460b860ba60ba60ba60ba60ba60ba60ba60ba003222329800800c01200680088896600200510018cc00400e60c4005330043061002001400c82fa4466e0ccdc10011bad303a305a37540026eb4c0e4c168dd5000cdc424001371e9110455534472009112cc004c0dcc168dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983380146600200f19800802c4c966002608000313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c1b800e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1cc00e02d01541c06eb80050731838000a0dc375c00260de0048380c1b400506b404106b1bac001807c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002608e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130710038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001307600380cc0610731bae00141d860e60028388dd7000983900120e6307000141b901341b86eb000602501241c460dc0028360dd68009836801403d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b3001306e0038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001307300380b40550701bae00141cc60e00028370dd7000983780120e0306d00141ad01041ac6eb000601f00f41b860d60028348dd68009835001403106b1834000a0cc30643754009159800981e800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd50024566002607800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009837001c0460208358dd6800c03d06e1835800a0d2375a00260d400500c41ac60d00028330c190dd50024566002607600313259800800c02e264b30010018064032019132598009835801c03a01a8340dd6800c03106b1834000a0cc306437540091598009807800c4c96600200300b8992cc00400601900c80644c96600260d600700e806a0d0375a00300c41ac60d00028330c190dd5002402906120c24184830906120c241848308c188dd5001c02502f402503340250641832800a0c63065002803c01e00f007419860c60028308c18c00a00b005802c0150641830800a0be3061002801c00e007003418860be00282e8c16cdd5001c005058488cc0a40088cdd7982f182d9baa001374e00491111111111111111114c004c1a8dd5009c8896600260260051329800800c0120074800100111112cc00400e2b30010028800c54cc1c1240112657870656374205b5d203d206c6973745f62001641cd159800801454cc1c12411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260ec007307600299912cc004c01c00a266e0000cdd69829983a1baa00283020e23075003375a60ea004802107320e68a9983624812e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001641ad300f00f912cc0040062900044c03ccc008008c1c400506e489660020031480022601e6600400460e200283724446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e005100180320e2899802802983c00220e2375c60e20026eb4c1c8004c1d0005072198090020018a40012259800800c5200089807998010011838800a0dc91808800c88c96600260a260da6ea8006264b30010018cc0040062b30013375e601c60de6ea800cc1c8c1bcdd5002456600266ebcc138c1bcdd5000983918379baa0038800c18906c418506c418100641820c106083020e83071306e375400305e41ac609a60da6ea8c130c1b4dd50012444444445300130060069802802c896600266e2000520008a6103d87a8000899804801000a0e69801801a4444646644b300130570108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea8006264b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0029bac305e307f3754007375860a660fe6ea80092225980099b87300d003300d0078acc004c04000a33001003801488c96600260c26108026ea800626464b3001306330860137540031323298009980f804000cdd618131844809baa0049bad308c0100248896600260d06116026ea800e2b30013371264664466e0cc194cdc019b82001375a60de611e026ea800c008008dd698361846809baa001375a60d8611a026ea8020c23c04c23004dd5001cc004dd598359846009baa306b308c013754015375c611e02005375c611e0261200200480e22b30013370e0026eb4c1acc23004dd5003c4cdd79ba70043029308c01375400f14a084480a294108901454cc228052414365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f61737365742900164224043758611602611802002610e026ea800629410840118331843009baa3301300400130880130850137540030744208046601c012002811a0e083fa0de83f9159800cc004dd6182f983f9baa0618024dd6184100983f9baa0039984080982f183f9baa301b307f37540046610202981054455534472004bd70200a899b879800801418690004dd6982f983f9baa0039bad301e307f3754007004401800306a41f1153307d49018f6578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641f130010039bac308101307e375400523018375a60bc60fe6ea800501241a107b22b300130560108cc004dd6183f183d9baa023983f183d9baa048982d183d9baa0494889660026604a6eb0c20404c1f8dd50301bae301d307e3754603460fc6ea80062b30019800998121bac308101307e37540c06eb8c178c1f8dd5180d183f1baa0019bac305d307e37540053308001305d307e3754603460fc6ea8004cc20005301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c180c20c04dd5000c4c8c96600260c2610a026ea800626464b3001337120033001375660ce6110026ea8c19cc22004dd5003cdd71845808044dd718458098460080420308acc004cdc3800982e9bad3067308801375400913375e611602611802004604a6110026ea80122941085014528210a02375a611402002610c026ea800629410830118329842809baa3301200400130870130840137540030734204046601a01000281120de83f20dc83f1159800cc004dd6182f183f1baa0609bac308101307e3754005375860a460fc6ea80052225980099b87300d002300c0068cc00401a00522325980098301841809baa0018cc004c21c04c21004dd5000cdd618109842009baa0039980d0021bac302130840137540069112cc004c18cc21804dd5000c56600266ebcc22804c21c04dd50019845009843809baa308a01308701375400d15980099baf3067308701375400660cc610e026ea8c22804c21c04dd500344cdc3cc004dd598331843809baa0039bae308a010029bae308a01308b01002405c66042604e6eb4c198c21c04dd50031845009843809baa0018a5042100514a084200a2a6610a029215365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001642100483ea102023300d005001408907941f8899b879800800c18290004dd6982f183f1baa0029bad301d307e3754005003401530010039bac308101307e37540052337106eb4c178c1fcdd5000a400080922a660f89219e6578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e726573657276655f6173736574732c0a2020202029001641ed153307c491846578706563740a2020202076616c69646174655f72656465656d5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641ed06841ec8992cc004c14c04633001375860fe60f86ea809260fe60f86ea812660b660f86ea812922259800998131bac308201307f37540c26eb8c078c1fcdd5180d983f9baa0018992cc004cc896600266e1cc034008c03401a2b300130100018cc00400a00322325980098309842009baa001899912cc004c1a8c21804dd5000c4c96600200319800800c56600266ebcc09cc22004dd50019845809844009baa0068acc004cdd798339844009baa001308b0130880137540071325980098301844009baa001899b87375a6118026112026ea8004dd698341844809baa0048a5042180460d06110026ea80060f684280a0f484280a0f280fa0f307983cc1e508d011845009843809baa00183ba10802308801308501375400260ca610a026ea8c190c21404dd5001c1d10820119807004000a04683820fe837a0fe3302637586106026100026ea8188dd718301840009baa301c30800137540046eb0c17cc20004dd5001c5660033001375860c06100026ea818a00937586106026100026ea800e661040260be6100026ea8c070c20004dd50011984100a61054455534472004bd70200c8991919912cc004cdc3acc004c180c0340062900045660020030788992cc004c2240400a264b3001301e375c610a02005100183da10602375a610a02003079421804610e0200284280908101002c56600266e1ccdc09bad3087013084013754610e020066eb4c21c04c21004dd5184380802002c4cc024dd6182c1842009baa006232306298008024dd7184480800cdd7184480984500800a02c3758611002610a026ea80060fc84080a2a661040292012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e7400164204046eacc21404c21804004cc094dd5980f9841009baa064375c60c26104026ea8c078c20804dd5002184280800cc00418a6eb8c20c04c20004dd5180e1840009baa0029bad30603080013754007375a603e6100026ea800d00841ad07d454cc1f9241776578706563740a2020202076616c69646174655f6469726563745f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202029001641f530010039bac308201307f375400523019375a60be6100026ea800501341a507c22b300130270118cc004dd6183f983e1baa024983f983e1baa049982d983e1baa04a4889660026604c6eb0c20804c1fcdd50309bae301e307f3754603660fe6ea80062b30019800998129bac308201307f37540c26eb8c17cc1fcdd5180d983f9baa0019bac305e307f37540053308101305e307f3754603660fe6ea8004cc20405301054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c184c21004dd5000c4cc896600260d4610c026ea8006264b30010018cc0040062b30013375e604e6110026ea800cc22c04c22004dd5003456600266ebcc19cc22004dd50009845809844009baa0038992cc004c0d0c22004dd5000c4c96600266e2400660026eacc1a4c22804dd518349845009baa0089bae308d010099bae308d01308e01009406913370e00260be6eb4c1a4c22804dd5002c528210e02375a6118026112026ea800629410860118341844009baa00183da10a0283d210a0283ca03e83cc1e60f3079423404611402610e026ea80060ee842008c22004c21404dd500098329842809baa306430850137540070744208046601c010002811a0e083fa0de83f9198009bad305f307f3754005375a603c60fe6ea800b3001003a4001225980099b88375a60c06102026ea80092000899b80001375a60c06102026ea800a0da83f101a4cc088dd5980e183f9baa061375c60bc60fe6ea8c06cc1fcdd5000a4444646464b30013370eb30013062300f0048a400115980080241ea264b3001308b010058992cc004c080dd7184380801440060fa842808dd6984380800c1ed08801184480802210e02420c0400b15980099b87337026eb4c22404c21804dd51844808011bad308901308601375461120200600b13300b375860b4610c026ea80208c8c1926002007375c611602003375c61160261180200280c0dd61845009843809baa0018a9984200a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e740016420c051533084014912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e740016420c046eacc22004c22404004c2200400660020cb375c610c026106026ea8c07cc20c04dd5002c0120068059153307d491896578706563740a2020202076616c69646174655f6469726563745f6275726e5f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206275726e5f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202020757364725f61737365742c0a2020202029001641f106941f08a5041e483c888c8cc00400400c896600200314a31598009801984100800c4cc008008c20c04006294107c21000241e083c0888888cc88ca60026eacc21404c2180400664660020026eb0c15cc20c04dd5005112cc004006297ae0899843009843809842009baa3087010013300200230880100142140559800982f1805801c520008acc00400e0ed1325980098438080244c96600260386eb8c20c0400a20030794204046eb4c20c040060ee842008c2140400d0830120fe488966002646600200200844b30010018a518991991199119801001000912cc004006200713233225980099802802984980802456600266e3c01d221008a518991919800800807112cc00400629422b30013375e612a020026e9c00e2946266004004612c020028478090930119848809ba90073309101375200497ae042300514a0846008dd71846008009bad308d01001308f010014234046eacc2280400cdd718438080099801801984600801184500800a110028acc004cdc399b81375a611002610a026ea8c22004010dd69844009842809baa3088010050018992cc004cdc3cc004dd6182d1843009baa00da400122332259800cc004c1980069429450870144c96600266e24cc0940040166002013375c611c02007375c611c02611e0200680da266e000100062a66112029212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001642200466e080040162006843808dd61845809844009baa002329800805d2000912cc004cdd798141845809baa002374e0071337000026eb4c1a8c22c04dd50014400508801204837586116026110026ea800902119b8100200b8801454cc210052413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016420c04b3001301e00a8a40031480090820141fd08201454cc20c052401b76578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a2020202020202020616363202626202820706f6c696379203d3d202222207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d65292920290a2020202020207d2c0a20202020290016420804308501001330223756603860fe6ea8014dd7182f183f9baa301b307f375400d30010059bae308201307f3754603660fe6ea801a007002401c4444b30013370e6012004601000719800801c00a4464b3001305c307f37540031325980099baf30840130810137540026108026102026ea8c21004c20404dd5002456600266ebcc184c20404dd500098301840809baa308401308101375400913370f3001375660c06102026ea80066eb8c210040166eb8c18001501118109bad3060308101375400914a083f2294107e1841809840009baa00183ca0fa33009006001407907541e8444464b30013059307c37540031325980099baf308101307e375461020260fc6ea8c174c1f8dd5000982899840009ba90054bd70456600260b33001375660ba60fc6ea8c174c1f8dd5000c016911087472656173757279004039132598009831183f1baa0018992cc004006330010018992cc004c174c20004dd5000c4c96600266ebcc21404c20804dd51842809841009baa00130553308401375201297ae08acc004c17660026eacc184c20804dd5000c02691010874726561737572790040491325980098331841009baa0018992cc004006330010018acc004cdd798119842009baa0034c103d87a800089984300802998430080099843009ba6329800800cdd598321842809baa00499198008009bab3065308601375460ca610c026ea8024896600200314bd6f7b63044c8cc22804cdd81843808009ba63233001001375661120200444b30010018a5eb7bdb1822646611a0266ec0c22804004dd418301bad308b0100133003003308f01002308d01001422c04660060066118020046114020028440090011112cc00400a2003132332298008034c23804016646600200200a44b30010018998470099bb037520086e9800d2f5bded8c113298009bae308c010019bab308d010019848808012444b30013372001000713309201337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c528212402880144cc24c04cdd81ba9009374c002004847008ca6002003008801a002222598008014400626466453001006984d00802cc8cc004004014896600200313309a01337606ea4010dd4001a5eb7bdb1822653001375c613002003375a613202003309d0100248896600266e4002000e26613c0266ec0dd48041ba80070058acc004cdc7804001c4c96600260f2003100289984f8099bb037520126ea000400909a0119b8000700289984f0099bb037520066ea0008cc01801800509901213202184d80800a1320240186eb8c24c04004dd6984a00800984b008012128028998490099bb037520066e98008cc01801800508d01211a02184780800a11a0240186eb8c21c04004dd59844008009845008012110024bd70454cc2080524126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001642040507b408907b83dc1ee0f6844808c21804c20c04dd5000c54cc2040524012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d001642000460c46104026ea80062a6610002920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641fd15330800149143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641fc6108026102026ea80062a660fe92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f69647829001641f8660146eb0c180c20004dd5004002c1d901e41da0ed07683b210a02308201307f3754003153307d49013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d001641f060bc60fc6ea8c174c1f8dd5000c54cc1f12401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d2031001641ed153307c4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f73637269707429001641ec61000260fa6ea80062a660f692013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641e86600c6eb0c1fcc1f0dd500200108992cc0040060830418992cc00400608513259800800c10e087043821c4cc89660020030458992cc0040062b300130620028992cc004c0ecc178dd500144c9660020030488992cc004006264b300100182544c96600200313259800800c132264b3001001826c13609b04d8992cc004c1a800e2b300130423065375400d13259800800c13e264b300100182841420a1050899912cc0040060a513259800800c14e0a7053829c4c96600260e0007132598009824800c4c9660020030568992cc0040060af05782bc15e264b3001307400380941610711bae00141d060e20028378c1b4dd5005c566002609000315980098369baa00b807c15506e415506a20d4306b375401505441b46eb80050701836800a0d6375c00260d80048368c1a800506818331baa00682720c682720ce375c0028350c19c0050651833801412e09704b825a0d03065001418c60ca005049824c1260928330c18c005061182f9baa002823a0b813007306200882320be823411a08d046418c60c000282f0dd7000982f80120c0305d001416c6eb0006083041417860b600482c8dc3a401d03d407903d407913259800800c0fa07d03e8991801982d8021bad00181f20b63058002415913259800800c0f207903c8991801982c8021bad00181e20b230560024151039414903981cc0e607282b0c14c005051182980140de06f03781ba0a83051001413c6eb4004c14000a0688288c13800504c1bad001304d002818a09c304b00141246eb0004c12800a05d02e412c60900028230dd6000982380140ae0568240c11400504318209baa006814a07c814a0843758003028814208a304200141006084005026813409a04c8218c10000503e182000140920490248122082303e00140f060746ea801e04481b888966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018992cc00400601313259800800c02a01500a8992cc004c12400e330010098cc00401201900b403d00b404500b41186eb40060148248c11800504418230014022011008804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c088966002602e60746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b132598009826001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a025132598009828801c0520268270dd7000a0a2304e00141306eb8004c13400904e1825800a092807202480720288072092375800300d806a0983049001411c609200500b805c02e0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c101c80e407203881c8cc88c9660026024606a6ea80062606c6466ec0c0e8004c0e8c0ec004dd6181c981b1baa0018a9981a24818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640cc646600200200644b30010018a60103d87a80008992cc004cdd7981b80099ba548010cc0e8c02ccc0e8dd480225eb812f5c1130163303a374e66074606e00266074607000297ae04bd7044cc00c00cc0f0009035181d000a0703756600e60666ea8054dd7181b18199baa0019800912cc004006297ae089981b1819981b80099801001181c000a06a9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003206491111919800800802912cc004006200b13259800800c4cc010c0f000801a26600a60780046600600600281d0c0f00050394dd6180898191baa01448888c8c8c8cc88c966002003159800980c181d9baa0018992cc00400604d13259800800c09e04f027813c4cc89660020030298992cc0040062b300130450028acc004c074c100dd5000c4c96600200302b8992cc004006264b3001001816c4c96600200313259800800c0be264b30010018992cc00400606313259800800c4c9660020030338992cc004006264b300100181ac4c96600200313259800800c0de264b30010018992cc00400607313259800800c4c96600200303b8992cc004006264b300100181ec4c96600200303e81f44cc89660020030408992cc0040062b3001305c0028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0d0c15cdd500344c9660020030428992cc004006087043821c10e26644b3001001822c4c966002003046823411a08d1332259800800c122264b3001001824c126093049899912cc00400609713259800800c13209904c82644c96600260d000713304100f225980080146600201f102b827a06e8992cc0040062b300130433066375400313259800800c146264b3001001829414a26644b300100182a44c96600200305582ac15626644b300100182bc4c96600200305882c4162264b300130740038acc00401e0b313259800800c16a0b505a82d44cc896600200305c8992cc0040060bb05d82ec176264b3001307900389808183c808c1790761bae00141e460ec00283a0dd7000983a80420ec307300741c505941c46eb40060b083a0c1c400506f1bad001307000282aa0e2306e00141b06eb0004c1b400a0a505241b860d60028348c19cdd5000c14106441420a105082820d83069002419d04d41946eb80050681832800a0c6375c00260c80048328c1880050601bae0013061002418860be00282e8dd7000982f00120be305c001416860b06ea801a08282aa0828142082814208281420828142082814208281420828142082814208282ca083041820c10505d182d000a0b0375800260b200503e81f20b43057001415460ae00503c81e40f207882c0c154005053182a80140ea07503a81d20ac3053001414460a600503881c40e207082a0c14400504f182880140da06d03681b20a4304f0014134609e00503481a40d20688280c13400504b182680140ca065032819209c304b0014124609600503081840c20608260c124005047182480140ba05d02e817209430470014114608e00502c81640b20588240c11400504318209baa001815207c815208481540aa05502a411860860028208dd700098210012086304000140f860786ea800604a81ca04b025812c09504129981c99b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40dd22010013259800980c181d9baa00189929981d99b9649113666f756e642070726f7879207574786f3a3a2000373266008002910100132598009810981e9baa0018992cc0040062b3001301b303e375400313259800800c0ee264b300100181e40f207903c899912cc00400607d1325980098240014401a07e8228c1180050441bae0013045002411860860028208c0fcdd5000c0e903c40ea07503a81d20883041303e3754003153303c49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640ec603a607a6ea8c070c0f4dd5000981f981e1baa0018a9981d24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640e46601400c4646600200260066eacc070c0f4dd5180e181e9baa0022259800800c528456600266e3cdd7182080081d4528c4cc008008c10800503b207e300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20825980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81d903b1bac303e002375a60780026466ec0dd4181e0009ba7303d001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6082003337149101023a200098008054c10800600a805100a182200144ca6002015304100199b8a489023a200098008054c108006600e66008008004805100a182200120843044001410466e29220102207d0000340f86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039009207c3758007133005375a0060051323371491102682700329800800cc050dc68014cdc52450127000044004444b30013371000490004400626466453001006980c802ccdc599b800025980099b88002480522903045206e410066e2ccdc0000acc004cdc4000a4029148182290372080004401866e0c00520203370c002901019b8e00400240f46eb800d0411b8a4881022c20002232330010010032259800980b800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002301000189980299b8400148050cdc599b803370a002900a240c000681c10381801801844464b3001300e0018992cc00400600713259800800c01200900480244c9660026072007006802a06c375c00281c8c0d800503418191baa0048acc004c034006264b3001001801c4c966002003004802401200913259800981c801c01a00a81b0dd7000a072303600140d060646ea8012004817902f18181baa00345901c0c078004c064dd500fc5268a9980ba491856616c696461746f722072657475726e65642066616c7365001365640581" + : + "5922b1010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800cdd2a4001223233001001003223300300130020029b87480026e1d20029b874801a6e1d20089b874802a6e1d200c91807180798079807980798079807980798079807800cdd2a400491111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601e6603c00297ae089980180198100012034301e001407122232598009806000c4c8c96600260420050048b203c375c603e00260366ea800e2b3001300b0018992cc004c08000626601c6eb0c07c00489660020050058cc00401e6042005130013022002401c80fa2c80e8c06cdd5001c5660026026003132598009810000c4cc038dd6180f800912cc00400a00b19800803cc08400a260026044004803901f45901d180d9baa0038acc004c0280062646644b300130220018998081bac30210012259800801401e33001009981180144c004c09000900920428b203e375a603e002604000260366ea800e2b30013009001899192cc004c08400a0091640786eb4c07c004c06cdd5001c56600260100031323259800981080140122c80f0dd6980f800980d9baa0038acc004c01c00626464b3001302100280245901e1bae301f001301b375400716406480c90192032406480c9019180c9baa00291192cc004c02c00626464b3001302000280245901d1bae301e001301a37540071598009805000c4c8c96600260400050048b203a375c603c00260346ea800e2c80c1018180c1baa002912cc004c028c060dd500144c8c8c966002604000513232598009807800c566002603c6ea800a00d16407d1598009807000c4c8c96600260480050088b2042375a6044002603c6ea800a2b300130160018acc004c078dd5001401a2c80fa2c80e101c2038301c3754002603e00716407464b3001301c0018acc004cdc4a400860360031689806180d800a0348b203a3754603c002603c00260326ea800a2c80ba44b3001300a30183754005132323322598009810801c0162c80f0dd6980f0009bae301e002301e0013019375400516405d2232598009805800c4c8c96600260400050048b203a375a603c00260346ea800e2b3001300a0018acc004c068dd5001c00a2c80da2c80c1018180c1baa0024888888cc88cc8a6002664464b30013015302337540031302432337606050002605060520026eb0c09cc090dd5000c590221919800800801912cc004006298103d87a80008992cc004cdd7981280099ba548010cc0a0c040cc0a0dd480225eb812f5c11301933028374e66050604a00266050604c00297ae04bd7044cc00c00cc0a80090241814000a04c3756601860426ea8060dd7181218109baa002912cc004c050c088dd500144c8c8c8ca60026eb4c0a80066eb4c0a800e60540049112cc004c0b8012266014605a00e26601e0020111640ac302a00130290013028001302337540051640852259800980a18111baa002899191919194c004dd61815800cdd698158024dd69815801cc0ac0092222598009818002c4cc030c0bc0244cc0440044c8cc8966002606600700d8b2060375c60600026eb8c0c0014c0c00122c8168605600260540026052002605000260466ea800a2c810922259800980a98119baa003899191919912cc004c0b400e264b3001301b30293754003132323232323298009819800cdd61819802cdd698198024dd69819801cc0cc0092222259800981c80344cc09cdd6181c005912cc00400a26605200c44b300100289980e80289980e804899192cc004c0b0c0e8dd5009c4c8c8c9660026084005132332259800981900144c966002608c0031330343758608a00244b300100280244cc084c11c0084c004c12000904545904318209baa0038acc004c0c400a264b3001304600189981a1bac304500122598008014012266042608e004260026090004822a2c8218c104dd5001c5660026072005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130300028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b208630413754007159800981780144c966002608c0031330343758608a00244b300100280244cc088c11c0084c004c12000904545904318209baa0038acc004c0b800a264b3001304600189981a1bac304500122598008014012266044608e004260026090004822a2c8218c104dd5001c566002605a005132598009823000c4cc0d0dd61822800912cc00400a0091330213047002130013048002411516410c60826ea800e2b300130080028992cc004c1180062660686eb0c11400489660020050048998109823801098009824001208a8b2086304137540071640fc81f903f207e40fc81f903f207e303e3754002264b300130310018992cc004c11400626604c608800200f16410860806ea800e2b300130300018992cc004c114006264b3001303330413754003132323259800982480144cc0acc12000c4cc0ac00402e2c8230c11c004c11c004c108dd5000c590401822000c5904218201baa0038b207c40f8607c6ea8008c10400e2c81f8c100004c100004c0ecdd5009c59039099816009912cc00400a33001303f303c3754606060786ea806e45300132330010010032259800800c528456600266ebcc10cc100dd5182198201baa30343040375460860026054660846ea400d2f5c114a3133002002304400140f8820a94294503c488c8cc00400400c896600200314bd7044cc896600266ebcc114c108dd5182298211baa3036304237540046058660886ea40152f5c113304400233004004001899802002000a0803043001304400141052302d303c37546080646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001303230413754608a0074a14a2820226608930014a14c103d87a8000a60103d87980004100660886e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11c00400e29462660040046090002821104544cc112600294298103d87a8000a60103d87980004100660886e9c0092f5c11330449800a51a60103d87a8000a60103d87980004100660886e9ccc110dd400080125eb8104020803758608660880026eb4c10c008cc008008c10c00504048896600200514c103d87a80008acc004c0c00062606466082608400497ae08cc00400e6086005337000029000a00640f482024464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208489980280298240022084375c60820026eacc108004c1100050420a5eb7bdb1826e012002911194c0040060090034004444b30010028acc00400629462941043456600200314a11598009980218228011bad30450018cc00400e608c0053046001400d14a0820104320869b81480024608060826082608200322598009817981e9baa002899192cc004c11000a0071641046eb4c108004c0f8dd500145903c48c100c104c104c104c1040064608060826082608260826082608260826082003222329800800c01200680088896600200510018cc00400e608c005330043045002001400c821a4466e0ccdc10011bad3033303e37540026eb4c0c8c0f8dd5000cdc424001371e911045553447200912cc004c0bcc0f4dd500144c8c8c8ca6002608a003304500398228012444b3001304900489981418240038998128010992cc004c0dc0062646644b3001304d0018991919912cc004c14400e0211641386eb8c138004dd7182700118270009bac304c0018b2094375a60940026096002608c6ea800a2b3001303600189919912cc004c134006264646644b3001305100380845904e1bae304e001375c609c004609c0026eb0c1300062c8250dd69825000982580098231baa0028acc004c0f8006264653001375a6096003304c0019bad304b002488966002609e005132323322598009829801c04a2c8280dd718280009bae305000230500013758609c005164130304b00130463754005159800981a800c4c8cc8966002609a003132323322598009828801c0422c8270dd718270009bae304e002304e001375860980031641286eb4c128004c12c004c118dd50014566002606800313232598009826001402e2c8248dd6982500098231baa0028acc004c0cc006264646644b3001304e003806c5904b1bad304b001375a60960046096002608c6ea800a2b30013032001899192cc004c13000a0171641246eb4c128004c118dd50014566002601a00313232598009826001402e2c8248dd6982500098231baa0028b20884110822104420884110822104418221baa0018b208c182280098220009821800981f1baa0028b20789119813801119baf3042303f37540026e9c0092222222222222222222980098271baa0139112cc004c04c00a2653001001802400e90002002222259800801c56600200510018b20ae8cc00401260b4007305a00299912cc004c01c00a266e0000cdd69826182c1baa0028b20ac3059003375a60b200480210574590504c03c03e44b30010018a40011300f33002002305500141492259800800c520008980799801001182a800a0a491119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c82b226600a00a60b800882b0dd7182a8009bad3056001305800141586602400800629000496600266e20005200089806000c400504e489660020031480022601e6600400460aa002829246022003223259800982518289baa001899198030008acc004cdd7980718299baa00330563053375400915980099baf30473053375400260ac60a66ea800e200316414516414460aa60a46ea80062c8280c118c144dd5182298289baa0024888888888a6002600e00f3006006912cc004cdc4000a400114c0103d87a8000899805001000a0b29801801a4444646644b300130510118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac3057306337540053758609c60c66ea80052225980099b87300c003300c0068acc004c03c00a33001003801488c96600260b460d06ea800626464b3001305c306a37540031323298009980f804000cdd6181318369baa0049bad307000248896600260c260de6ea800e2b30013371264664466e0ccdc019b80337040026eb4c1a0c1ccdd5001801240020046eb4c194c1c4dd50009bad30653071375401060e660e06ea800e60026eacc190c1c0dd5183218381baa00a9bae30730029bae30733074002407115980099b87001375a60c860e06ea801e266ebcdd3802181498381baa0078a5041b914a083722c83706eb0c1bcc1c0004c1acdd5000c52820d2305f306a37546602400800260d860d26ea80062c8338cc03402000502345906445906422b300198009bac3058306337540b50039bac30663063375400533065305730633754603660c66ea8004cc195301054455534472004bd702008899b879800800c16a90004dd6982c18319baa0029bad301e30633754005003401530010039bac30663063375400523019375a60b060c86ea800501345906145906145906122b300130500118cc004dd6183198301baa024983198301baa03f982a18301baa0414889660026604c6eb0c198c18cdd502d1bae301e30633754603660c66ea80062b30019800998129bac3066306337540b46eb8c160c18cdd5180d98319baa0019bac30573063375400533065305730633754603660c66ea8004cc195301054455534472004bd702444b30013370e6018006601800d159800980780146600200700291192cc004c168c1a0dd5000c4c8c96600260b660d46ea800626464b3001337120033001375660c260da6ea8c184c1b4dd5003cdd718380044dd71838183880420328acc004cdc380098149bad3061306d375400913375e60e060e2004604c60da6ea8012294106b452820d6375a60de00260d66ea80062941069182f98351baa33012004001306c3069375400316419c6601a010002811a2c83222c8321159800cc004dd6182c18319baa05a9bac3066306337540053758609c60c66ea80052225980099b87300d002300c0068cc00401a005223259800982d18341baa0018cc004c1b0c1a4dd5000cdd6181118349baa0039980d8021bac3022306937540069112cc004c174c1acdd5000c56600266ebcc1bcc1b0dd5001983798361baa306f306c375400d15980099baf3061306c375400660c060d86ea8c1bcc1b0dd500344cdc3cc004dd5983018361baa0039bae306f0029bae306f3070002406066044602e6eb4c180c1b0dd5003183798361baa0018a5041a914a083522c835116419c6601a00a002811a2c832113370f300100182d520009bad305830633754005375a603c60c66ea800a006802a6002007375860cc60c66ea800a466e20dd6982c18321baa001480010134590614590614590612264b3001304d0128cc004dd6183218309baa025983218309baa040982a98309baa0424889660026604e6eb0c19cc190dd502d9bae301f30643754603860c86ea80062b300133225980099b87300c002300c0058acc004c03c00633001002800c88c96600260b460d06ea800626644b30013063306a37540031323301f00115980099baf3027306c375400660de60d86ea801a2b30013375e60c060d86ea8004c1bcc1b0dd5001c4c96600260b260d86ea8006266e1cdd6983818369baa001375a60c260da6ea8012294106b183098361baa0018b20d48b20d4306e306b37540031641a460d860d26ea8004c178c1a4dd5182e98349baa0038b20ce3300d007001408d1641911641906604c6eb0c19cc190dd502d9bae305930643754603860c86ea8004dd6182c18321baa0028acc00660026eb0c164c190dd502dc00e6eb0c19cc190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd70200a8cc004dd6982c98321baa0029bad301f306437540059800801cdd6183398321baa0029180d1bad30593065375400280a2660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641891641888acc004c0a004a33001375860c860c26ea809660c860c26ea810260aa60c26ea810922259800998139bac3067306437540b66eb8c07cc190dd5180e18321baa0018acc00660026604c6eb0c19cc190dd502d9bae305930643754603860c86ea80066eb0c160c190dd50014cc198c160c190dd5180e18321baa001330664c01054455534472004bd702444b30013370e601a006601a00d159800980800146600200700291192cc004c16cc1a4dd5000c4cc896600260c860d66ea8006264660400022b30013375e605060da6ea800cc1c0c1b4dd5003456600266ebcc184c1b4dd5000983818369baa0038992cc004c0d4c1b4dd5000c4c96600266e2400660026eacc18cc1bcdd5183198379baa0089bae30720099bae30723073009406d13370e00260566eb4c18cc1bcdd5002c52820da375a60e260dc6ea8006294106c183118369baa0018b20d68b20d6306f306c37540031641a860da60d46ea8004c17cc1a8dd5182f18351baa0038b20d03300e00800140911641951641948cc004dd6982c98321baa0029bad301f306437540059800801d2000912cc004cdc41bad305a30663754004900044cdc00009bad305a3066375400516419080da660466eacc074c190dd502d9bae305830643754603860c86ea800522223232325980099b8759800982e18078024520008acc004c1bc012264b30013020375c60d60031375a60d80031641a860dc0091641b083480162b30013370e66e04dd6983718359baa306e002375a60dc60d66ea8c1b800c0162660166eb0c158c1acdd5004119182f4c00400e6eb8c1c00066eb8c1c0c1c40050191bac306f306c37540031641a51641a46eacc1b4c1b8004c1b400660020bf375c60d660d06ea8c080c1a0dd5002c01200680591641891641888a50417c82f888c8cc00400400c896600200314a315980098019833800c4cc008008c1a0006294106220ca417882f0888888cc88ca60026eacc1a8c1ac00664660020026eb0c14cc1a0dd5005112cc004006297ae0899835983618349baa306c00133002002306d00141a959800982c1805801c520008acc004c1ac00e264b3001301c375c60ce0031375a60d000316419860d40071641a08329222598009919800800802112cc0040062946264664466446600400400244b30010018801c4c8cc89660026600a00a60f000915980099b8f007489008a518991919800800807112cc00400629422b30013375e60f40026e9c00e294626600400460f600283a90781983b1ba900733076375200497ae041c914a08390dd718388009bad3072001307400141c86eacc1bc00cdd718360009980180198388011837800a0da8acc004cdc399b81375a60da60d46ea8c1b4010dd6983698351baa306d0050018992cc004cdc3cc004dd6182b18359baa00da400122332259800cc004c18000694294506d44c96600266e24cc0980040166002013375c60e6007375c60e660e800680e2266e000100062c8370cdc1000802c400d06d1bac3070306d375400465300100ba4001225980099baf3029307037540046e9c00e266e00004dd6983218381baa0028800a0dc40946eb0c1c0c1b4dd500120443370200401710028b20d259800980f8054520018a400483422c83422c834060d4002660466eacc074c190dd50029bae305830643754603860c86ea801a600200b375c60ce60c86ea8c070c190dd5003400e004803888896600266e1cc024008c02000e33001003801488c96600260ac60c86ea8006264b30013375e60d260cc6ea8004c1a4c198dd5183498331baa0048acc004cdd7982d98331baa001305a3066375460d260cc6ea8012266e1e60026eacc168c198dd5000cdd71834802cdd7182d002a0243011375a60b460cc6ea80122941064452820c830683065375400316418c6601200c00280fa2c83008888c96600260a660c26ea8006264b30013375e60cc60c66ea8c198c18cdd5182b98319baa001304d33065375200a97ae08acc004c14e60026eacc15cc18cdd5182b98319baa001802d220108747265617375727900403d13259800982e18319baa0018991980f8008992cc004c15cc194dd5000c4c96600266ebcc1a8c19cdd5183518339baa001305133069375201297ae08acc004c15e60026eacc16cc19cdd5000c02691108747265617375727900404d13259800983018339baa001899198118008acc004cdd7981218349baa0034c0103d87a800089983580299835800998359ba6329800800cdd5982f18351baa00499198008009bab305f306b375460be60d66ea8024896600200314bd6f7b63044c8cc1bccdd818360009ba63233001001375660dc00444b30010018a5eb7bdb182264660e466ec0c1bc004dd418161bad3070001330030033074002307200141c06600600660e200460de00283690011112cc00400a2003132332298008034c1cc016646600200200a44b300100189983999bb037520086e9800d2f5bded8c113298009bae30710019bab3072001983b0012444b300133720010007133077337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ee880144cc1e0cdd81ba9009374c00200483a0ca6002003008801a002222598008014400626466453001006983f802cc8cc004004014896600200313307f337606ea4010dd4001a5eb7bdb1822653001375c60fa003375a60fc00330820100248896600266e4002000e2661060266ec0dd48041ba80070058acc004cdc7804001c4c96600260e600310028998420099bb037520126ea00040090800119b800070028998418099bb037520066ea0008cc01801800507f20fe184000800a0fc40186eb8c1e0004dd6983c800983d80120f289983b99bb037520066e98008cc01801800507320e6183a000a0e440186eb8c1b0004dd59836800983780120da4bd70459067183598341baa0018b20cc305c3067375400316419516419460d260cc6ea80062c8320cc028dd6182d18329baa00800530673064375400316418860b060c66ea8c15cc18cdd5000c59061459061183298311baa0018b20c033006375860c860c26ea801000844c8cc896600260860031332259800981918201baa002899191919912cc004c12800e264b3001303830463754003132323322598009827801c4c966002607a00313232598009829001403a2c8278dd7182800098261baa0078acc004c0f00062b3001304c375400f00c8b209a8b2094412860946ea801a2c8260dd718260009bae304c002304c00130473754003164114609200b16411c6eb8c11c004c11c008c11c004c118004c104dd500145903f1821000898021821802c590401bae304000130410013758607e00481e8dc3a401d1323002303e003375a607800481d2264600460780066eb4c0e80090384590360c0cc004c0c8004c0c4004c0c0004c0bc004c0a8dd5000c590281816002c5902a1bac302a001302a002302a00130290013024375400716408832323259800980998109baa00189919912cc004c0a4006264b3001301730253754003132323232323232323232329800981a000cc0d002a60680133034008981a003cc0d001a606800b3034004981a001cdd6181a00124444444444b3001303f00b89980f181f00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0b0c0e8dd500144c8c8c8ca60026eb8c1080066eb8c1080126eb8c10800e6eb8c1080092222598009823802c4cc0d4024896600200513302701410248992cc004c0dcc114dd5000c4c8c8c8cc8966002609e007132323322598009829801c4c02cc14c0322c8280dd718280009bae305000230500013758609c00b1641306eb4c130004dd698260011826000982580098231baa0018b208830480024119164110304200130410013040001303b37540051640e51640f030340013033001303200130310013030001302f001302e001302d001302c001302b0013026375400316409060500031640986eb8c098004c09c004c088dd5000c59020192cc004c04cc084dd5000c4c966002603660446ea8006264b3001301530233754003132323322598009816001c40162c8148c0a4004dd71814801181480098121baa0018b2044302630233754003164084602e60446ea8c058c088dd5181298111baa0018b20403300a3758602a60426ea80608c8cc004004c00cdd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a0444094600200244b30010018a5eb822660466040604800266004004604a00281108966002602460406ea800a2646464b3001302800289980318138018992cc004c0580062b3001302537540050058b204c8acc004c05400626464b3001302b002803c590281bae302900130253754005159800980e800c4c8c96600260560050078b205030290013025375400516408c811902318119baa0018b204a302600130260013021375400516407c600a00a44b30013010301e3754005132323259800981300144cc024c09400c4c9660026028003132598009814000c4c8c966002602e003132598009815800c4cc038c0a80040262c8140c098dd50014566002602c003132323298009bad302c0019bad302c0039bad302c002488966002606000900e8b205a1816000981580098131baa0028b2048409060486ea8004c09c0062c8128c08cdd50014566002602600315980098119baa002802c5902445902120423021375400316408c60480026048002603e6ea800a2c80e88b2010180480098021baa0098a4d1365640081", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + mintValidator: ScriptHash, + stakeValidator: ScriptHash, + managementValidator: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201" + : + "5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141", + Type.Tuple([ + PolicyId, + ScriptHash, + ScriptHash, + ScriptHash, + ]), + [ + proxyPolicyId, + mintValidator, + stakeValidator, + managementValidator, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorPublish { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + mintValidator: ScriptHash, + stakeValidator: ScriptHash, + managementValidator: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201" + : + "5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141", + Type.Tuple([ + PolicyId, + ScriptHash, + ScriptHash, + ScriptHash, + ]), + [ + proxyPolicyId, + mintValidator, + stakeValidator, + managementValidator, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProtocolOrchestratorProtocolOrchestratorElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + mintValidator: ScriptHash, + stakeValidator: ScriptHash, + managementValidator: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "592899010100222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0059bae0049bae0039bae0024888888888888a60022a6600c921266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998032492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a998032493172656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e00164889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038992cc00400a264646466453001222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc004006264b3001001804c4c96600200300a805402a264b3001302b0038cc00402633001004806402d00e402d00f402d0281bad001805205630280014098605000500880440220108148c0980050241bad0013025002802a04c302300140846046005003801c00e0068120c08400501f180e9baa003800a0349112cc004c040c070dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001302e0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001303300380a404d0301bae00140cc60600028170dd700098178012060302d00140ad00e404500e404900e40ac6eb000601b00d40b860560028148c0ac00a01700b805c02d02c1814800a04e375a002605000500840a4604c0028120dd6800981280140150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a488c8cc00400400c88cc00c004c00800a44464b300130110018992cc00400600713259800800c0120090048992cc004c09400e00d00540886eb40060088128c088005020180f1baa0048acc004c0240062b3001301e3754009003801203e8012036406c60386ea800e444b30013010301c375400713259800800c00a264b30010018992cc00400600913259800800c4c966002604400315980099b8948010c08400600d13259800981380244c966002602e00315980098121baa006804c0210254566002601e00313259800800c026264b3001001805402a015132598009815801c0320168140dd6800c02902b1814000a04c3024375400d159800980b000c56600260486ea801a01300840950084084810902118111baa005803a048300d3021001407d006408c6ea800600b005802c0150261811800a0423023002801c00e0070034090604200280f8c074dd5001c00501a244444b30013012301e375401913259800800c05a264b30010018992cc00400603113259800800c4c96600200301a8992cc00400603701b8992cc004c0a800e2b300130193025375400d13259800800c076264b300100180f407a26644b300100181044c966002003021810c4cc89660020030238992cc00400604902481244cc89660020030268992cc00400604f027813c4cc89660020030298992cc004006264b3001001815c4c966002003159800981d00144cc068038896600200513301c00d225980080146600200f19800802c660026e1d20089b874802a6e1d200c4888c9660026062607a6ea8072264b300100181ac4c96600200313259800800c0de264b30010018acc004c11800a26644b300130370018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c10102f4102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002605e00313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e003820205e8204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c0d8006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b159800981c000c4c96600200303b8992cc00400607903c8992cc004c12c00e26605600244b3001002803c4c96600200319800800c4c008c13800e080817a081040820410104f1826001209481ea090375800303c81e20963048001411860886ea80162b3001300a0018992cc00400607713259800800c0f2079132598009825801c4cc0ac00489660020050078992cc00400633001001898011827001c1010304102081040820209e304c002412903d41206eb000607903c412c60900028230c110dd5002c566002601200313259800800c0ee264b300100181e40f2264b3001304b003899815800912cc00400a00f13259800800c6600200313002304e00382020608204102081040413c6098004825207a8240dd6000c0f20788258c12000504618221baa0058acc004c020006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b15980099b8748038006264b300100181dc4c96600200303c81e44c966002609600713302b0012259800801401e264b30010018cc00400626004609c00704040bd04082041020808278c13000904a40f50481bac00181e40f104b1824000a08c3044375400b03a41048209041208241048209041208213259800981b000c4c96600200303a8992cc0040062b300130490028cc00400601103b40b103b411903b81dc0ee0768250c11c00504518219baa0028acc004c0b8006264b300100181d44c96600200315980098248014566002607060886ea8006264b300100181e44c96600200313259800800c0fa264b30010018acc004c13400a330010038cc00400601903f40ad03f40ad03f412903f81fc0fe07e8270c12c005049182580140f607b03d81ea0983049001411c608a6ea80060768212076823207703b81dc0ed04a1823800a08a3043375400503941008200c104dd500098209baa00381c208681c40e2071038411c60880028210c11000a06d03681b40d90451821000a080303e375403903440ec26604203044b30010028cc0048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801903f48888c8cc004004014896600200310058992cc004006266008609200400d133005304900233003003001411c609200282326e0120019182198221822000c8c10cc1100066e9520004888888c8c8c8c8c96600200313259800981f18251baa0028992cc00400608713259800800c4c9660020030458992cc004006264b3001001823c4c96600200313259800800c126264b30010018992cc00400609713259800800c4c96600200304d8992cc004006264b3001001827c4c96600200313259800800c146264b30010018992cc0040060a713259800800c4c9660020030558992cc0040060ad056899912cc0040060b113259800800c56600260cc0051980080b466002029198008094660020211980080746600201919800805466002011159800982a98309baa0068992cc0040060b513259800800c16e0b705b82dc4cc896600200305d8992cc0040060bd05e82f417a26644b300100183044c966002003061830c1860c31332259800800c18e264b300100183241920c90648992cc004c1c800e2660a401e44b30010028cc00403e33001302d307037540bb23074307530753075001911919800800801912cc00400629422b3001300330770018a51899801001183c000a0e241d52307430753075307530753075307530750019b804800a6e9520024888888c9660033001222323322598009838001456600260e060f86ea80062980103d87a80008a6103d879800041e91598009837801456600260de60f86ea80062980103d87a80008a6103d87b800041e913322598009839000c530103d87b80008acc004c1a8006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041f483e8dd6984100983f9baa0038a6103d879800041f083e0dd6984000983e9baa003307c375400283d107a183d1baa00130020033001003919191919912cc004c1c000a29422b3001306f0028cc004cdd7984000983e9baa0014c103d87b8000a50a5141e913233225980098398014528c56600260d6005133225980098369840809baa303f308201375400d13371000400313371200400283f8dd69841809840009baa003598009835983f9baa303d308001375400f100189806000a0fa8a5041f483e8c1f4dd50009bad308101307e375400861000260fa6ea800507a20f4307a375400260fc60fe00660fa60f46ea8004c1f0004c1e0dd5000cc0d0c1dcdd5003a444b3001306d3079375400313233009375860fc60f66ea81a48cdd7983f983e1baa001002307d307a375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1fcc1f0dd50014c1fcc1f0dd5000c8c8c96600260d460fc6ea8c20804c20c0400a2003132598009835800c4c02ccc20804dd418061bad308301308001375400497ae08acc004c1cc0062005100241f483e8c1f8dd5000a0f8308101001307d37540028029300103d87b8000a50a5141e51980099baf9800981c983e1baa002981c983e1baa001919192cc004c1a8c1f8dd518410098418080144006264b3001306b0018980599841009ba8303f375a6106026100026ea80092f5c11598009839800c400a200483e907d183f1baa00141f061020200260fa6ea8005005260103d8798000a50a5141e514a083c907920f2307d307a3754002600e60f46ea81a1077226464b30019800912cc0040062900044c01ccc008008c1fc00507c4c1f0c1f400664660020026eb0c0e0c1e8dd5033912cc004006297ae089983e9ba732323307f3080010023307f303b307d3754002660fe6ea4cc894cc1f4cdcb249165369675374727563747572652e636f6e746578743a200037326606e61040260fe6ea8005220100153307d3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a200037326606e607860fe6ea8005220100153307d3372c92011b5369675374727563747572652e65787465726e616c5f6161643a200037326606e607a60fe6ea8005220100153307d3372c9201165369675374727563747572652e7061796c6f61643a200037326606e601c60fe6ea800522010013253307e3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660706ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241f883f0dc68009bae308201307f375400266e28c008dd7181e183f9baa0013371460046eb8c0f4c1fcdd500098011bae300e307f3754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e1800520800400241f083e0dc6800981c9983fa610b4a5369676e617475726531003307f308001307d375461000260fa6ea8004cc1fd3010140003307f375200e97ae04bd70183f9840008009bac307e00133002002307f00141f13006307937540cf3756600460f26ea819d22222323233001001006223259800983a800c4c94cc20404cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a20003732660766ea400522010013259800983b9841809baa001899194c004dd7184480800cdd7184480984500800cdd71844808012444a6610e029211d466f756e64207369676e61747572652c20766572696679696e672e2e2e001533087013372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660826ea40052201001533087013372c9201187665726966795f65643235353139207061796c6f61643a20003732660826ea40092201001533087013372c92011a7665726966795f65643235353139207369676e61747572653a20003732660826ea400d220100132533088013372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660853001001a60103d87a8000a60103d8798000421c0491010010019800800c00a006b950c22404004dd61843809842009baa0018a998410099b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a20003732660786ea400922010014a0840808c8cc004004024896600200314c0103d87a80008992cc004cdc79bc8375c611202002009130423308801374e00297ae08998018019845008012106023758611002002843008dd71842809841009baa0028acc004c1b4006264a661020266e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416c6c4f6620726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132330010010022259800800c528c5660026600c00c6110020031330020023089010018a50420804843008dd61842809841009baa0028acc004c1d0006264a661020266e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a20003732660766ea0c014005220100132533082013372c92010e416e794f6620726573756c743a20003732660793001001a60103d87a8000a60103d87980004204049101001001330110012330050050013758610a026104026ea800a2b3001307600189919912998418099b96490112436865636b696e672041744c656173743a200037326607a6ea0009220100132533084013372c92011941744c656173742073617469736669656420636f756e743a200037326607c6ea0005220100132533085013372c92011041744c6561737420726573756c743a200037326607f3001001a60103d87a8000a60103d8798000421004910100100133712006002646600200200444b30010018a400113322598009980500500144c0540062002843008c22804004cc008008c22c04005088011bad3086010013758610c02610e020026104026ea800a2b300130480018992998408099b9649111436865636b696e67204265666f72653a20003732660766ea0005220100132533082013372c92010f4265666f726520726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc49bad30880130850137540020071337106eb4c22004c21404dd5000801a104028a50420804610e020026106026ea8c100c20c04dd50039bad30850130820137540051598009823800c4c94cc20404cdcb24910436865636b696e672041667465723a20003732660766ea0005220100132533082013372c92010e416674657220726573756c743a20003732660793001001a60103d87a8000a60103d8798000420404910100100132325980098381842009baa0018acc004c1c0c21004dd518440098448080144cdc48019bad30880130850137540031337100066eb4c22004c21404dd5000a104028a50420804610e020026106026ea8c21804c20c04dd50039bad3085013082013754005132533081013372c920111436865636b696e67205363726970743a20003732660766ea4005220100132533082013372c92010f53637269707420726573756c743a20003732660793001001a60103d87a8000a60103d879800042040491010010013232330010010082259800800c528456600266ebc00cc21404c22404006294626600400461140200284180908701180719842809ba90014bd701bae308501308201375400483f907f20fe41fc83f907f1840009baa001300500544c8cc88cc008008004896600200314a115980099baf307b307f00130073307e375200697ae08a51899801001184000800a0f241f46eacc00cc1e8dd50341bae307c0018a9983ba481956578706563740a2020202020207361746973666965645f7061796c6f616473280a20202020202020207065726d697373696f6e2c0a20202020202020207369676e6174757265735f776974685f7061796c6f6164732c0a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202073656c662e7769746864726177616c732c0a20202020202029001641d864b3001306c00189983d9ba90743307b307c3079375406097ae08acc004c1900062660f66ea41d0cc1ecc0d8c1e4dd501825eb822b3001303d00189983d9ba90743307b30023079375406097ae08acc004cdc3a401c00313307b37520e8660f6600c60f26ea80c12f5c1159800981f800c4cc1ecdd48399983d983e183e983e983e983e983c9baa0304bd704566002607c00313307b37520e6660f660f860fa60fa60fa60fa60fa60f26ea80c12f5c11598009836800c4cc1ecdd48391983d9804183c9baa0304bd7044cc1ecdd48391983d981b983c9baa0304bd7020ec41d883b107620ec41d883b0c1dcdd5183d983c1baa0082307b307c307c307c307c307c307c0018a9983aa4812f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c6629001641d06e50dd980320ce82ca264b30010018acc004c190c1c0dd5000c4c9660020030698992cc0040060d506a899912cc0040060d913259800800c1b60db06d899912cc0040060df13259800800c1c20e10708992cc004c1f800e2b3001007838c4c96600200307283941ca0e51332259800800c1d2264b300100183ac1d60eb0758992cc004c20c0400e260206106020230764200046eb800508301184000800a0fc375c00260fe010840008c1f401d07b41c507b1bad00183820fc307b00141e46eb4004c1e800a0da83d8c1e00050761bac001307700283541a9078183a800a0e63071375400306841b906883441a20d083b0c1cc009071419506f1bae00141c860de0028368dd7000983700120de306c00141a86eb8004c1ac00906c1834800a0ce375c00260d00048348c19800506418311baa00682ca0be82ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca03082ca0c682cc1660b3059419c60c80028310dd60009831801415a0ac8320c18400505f183080141520a905482a20c4305f001417460be005052829414a0a48300c17400505b182e80141420a105082820bc305b001416460b600504e827413a09c82e0c164005057182c801413209904c82620b43057001415460ae00504a825412a09482c0c154005053182a801412209104882420ac3053001414460a6005046823411a08c82a0c14400504f1828801411208904482220a4304f001413460966ea800a0848240888ca6002003004801a00222232598009822000c4c9660020030068992cc00400600f007803c01e264b30013058003802c0210551bae001416060aa0028298c144dd5001c566002607800313259800800c01a264b3001001803c01e264b3001305800389981c000912cc00400a00f13259800800c6600201500189801182d801a014805c02e01700b417060b200482ba01082a8dd6000c01e00e82c0c15400505318289baa0038acc004c10c006264b300100180344c966002003007803c4c96600260b00071330380012259800801401e264b30010018cc00402a00313002305b003402900b805c02e01682e0c16400905740210551bac001803c01d058182a800a0a6305137540071598009822800c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c16c00e26607600244b300100280544c96600200319800806c0062600460bc006806a01d00e807403905f182e00120b4805a0b0375800300a80520b6305800141586eb4004c15c00a00e82c0c15400505318289baa0038acc004c05c006264b300100180344c966002003007803c01e264b30013058003802c0210551bad001803a0b03055001414c60a26ea800e2b300130160018992cc00400600d13259800800c01e00f0078992cc004c16000e00b00841546eb400600e82c0c15400505318289baa0038acc004c054006264b300100180344c966002003007803c01e00f13259800982c001c01601082a8dd7000a0b03055001414c60a26ea800e00a827104e209c4138827104e209c304f3754005041820c1060828278c018c124dd519199129982519b9649012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea412122010013259800982018261baa00189929982619b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800982098271baa0018992cc0040062b30013043304f375400313259800800c126264b3001001825412a09504a899912cc00400609913259800982c8014401a09a82b0c15c0050551bae0013056002415c60a80028290c140dd5000c12104d412209104882420aa3052304f3754003153304d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001641306018609c6ea8c02cc138dd5000982818269baa0018a99825a4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164128646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd5980698281baa300d3050375400444b30010018a508acc004cdc79bae305400104d8a51899801001182a800a09c41491300b330510014bd7044cc00c00cc14c00904c1828800a09e30010013758600e60946ea80e0896600200314bd7044cc134c128c138004cc008008c13c00504c1800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100f20a05980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c825104a1bac304d002375a60960026466ec0dd418258009ba7304c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a60a0003337149101023a200098008054c14400600a805100a182980144ca6002015305000199b8a489023a200098008054c144006600e66008008004805100a182980120a23053001414066e29220102207d0000341346eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900c209a3758007133005375a0060051323371491102682700329800800cc030dc68014cdc52450127000044004444b300133710004900044006264664530010069808802ccdc599b800025980099b88002480522903045206e413c66e2ccdc0000acc004cdc4000a402914818229037209e004401866e0c00520203370c002901019b8e00400241306eb800d0501b8a4881022c20002232330010010032259800981e800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003411c8238c01801913259800800c0da06d13259800800c0de264b300100181c40e2071038899912cc00400607513259800800c566002609200513259800981c98229baa0028992cc00400607b13259800800c4c96600200303f8992cc004006264b3001001820c4c966002003042821410a085132598009828801c566002608060986ea801a264b300100182244c966002003045822c11608b1332259800800c11e264b300100182441220910488992cc004c15c00e264b300130470018992cc00400609713259800800c13209904c82644c96600260b6007012826a0b0375c00282d8c160005056182a1baa00b8acc004c0fc0062b30013054375401700f82520aa82520a2414460a46ea802a09282a0dd7000a0ae305400141486eb8004c14c0090541828800a09e304d375400d043412904341386eb80050511827000a098304e0028204102081040413c60980028250c13000a07d03e81f40f904d1825000a0903046375400503c410c2600e609201103b411903b81dc0ee0768250c11c0050451bae0013046002411c60880028210dd6000c0da06c8228c108009040206080ea06080ea264b3001001818c0c606313230033040004375a0030314100607a00481da264b3001001817c0be05f1323003303e004375a00302f40f8607600481ca05881ba05902c81640b103b181c000a06c303800281540aa05502a40e4606c00281a0dd6800981a801409d0361819800a062375a002606400502440cc60600028170dd6000981780140860428180c0b400502b1bac001302c00280f407902d1815000a0503026375400d01c408d01c409c6eb000603701b40a8604e0028128c09c00a03301980cc0650281812800a046302500280bc05e02f017409860460028108c07cdd5006405501c088966002601c60346ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08c00a330010038992cc004c04c0062b30013020375400500780320428acc004c02c006264b3001001803c4c9660020030088044022011132598009813801c02a0128120dd7000a04e3024001408860406ea800a2b300130120018992cc00400600f13259800981300140260108118c09000502218101baa002803203a407480e8c078dd5000c0150084015020401600b005802a0483021001407c6042005003801c00e0068110c07c00501d180d9baa003800a030222598009807180d1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002604a007008803a044375a003006409460440028100dd700098108012044301f001407460366ea800e00280c088966002601a60326ea800e264b300100180144c96600200313259800800c012264b30010018acc004c08800a330010038992cc004c048006264b3001001803c4c966002003159800981280144c966002602a00313259800800c02a264b30010018acc004c0a000a33001001806402d00e402d025402e01700b805a0523026001409060446ea800a2b3001300d0018992cc00400601513259800800c02e01700b899912cc00400601b13259800800c03a01d00e899912cc00400602113259800800c0460230118992cc004c0bc00e02701240b06eb40060228178c0b000502a1bad001302b00280720583029001409c6eb4004c0a000a0168148c09800502418111baa002804a03e407c60406ea8006010811201100880440210261811800a042301f37540051598009805000c566002603e6ea800a00f0064081006407080e0c074dd5000c015008401501f401600b005802a046302000140786040005003801c00e0068108c07800501c180d1baa003800a02e22232598009806800c4c9660020030038992cc0040060090048024012264b30013021003803401501e1bae0014084603c00280e0c068dd50024566002600a00313259800800c00e264b300100180240120090048992cc004c08400e00d00540786eb8005021180f000a038301a3754009002405c80b8c060dd50019b874800a01700b805c02d01a180b980a1baa0048acc004c02000e26464b30013009301537546032603400514a314a08098dd6980c000980a1baa0048b2022404430133014001301300445268a99804a491856616c696461746f722072657475726e65642066616c7365001365640201" + : + "5913f1010100222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0059bae0049bae0039bae00248888888888966003300130073754019370e90034dc3a4001370e90022444464653001300c3754003301000698080012444b300130060038cc004c04cc040dd5002488c8cc00400400c88cc00c004c00800a6e1d2002912cc004c024c044dd500144c8c8cc896600260340070058b202e375a602e0026eb8c05c008c05c004c048dd500145901024444646465300122598009808180c1baa0028991919194c004dd69810000cdd69810001cc08000922259800981200244cc028c08c01c4cc0340040222c81086040002603e002603c00260326ea800a2c80ba44b30013010301837540051323232323298009bac30210019bad30210049bad3021003981080124444b30013026005899806181280489980780089919912cc004c0a400e01b1640986eb8c098004dd7181300298130024590230c084004c080004c07c004c078004c064dd5001459017488c96600260220031323259800981000140122c80e8dd6980f000980d1baa0038acc004c0200062b3001301a37540070028b20368b2030406060306ea800a44b3001301030183754005132323259800981000144c8c966002602a003159800980f1baa00280345901f456600260180031323259800981200140222c8108dd69811000980f1baa0028acc004c0500062b3001301e37540050068b203e8b2038407080e0c070dd5000980f801c5901d192cc004c0700062b3001337129002180d800c5a26014603600280d22c80e8dd5180f000980f000980c9baa0028b202e4888966002602460346ea803226464646644b300130240038992cc004c060c080dd5000c4c8c8c8c8c8ca600260540033758605400b375a6054009375a6054007302a00248888966002606000d13301b3758605e01644b300100289980e803112cc00400a26602e00a26602e01233001370e90044dc3a4015370e9006244464b3001302b3033375402b132323259800981d80144c8cc8966002606200513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2b300130280028992cc004c0fc0062660546eb0c0f800489660020050048998129820001098009820801207c8b2078303a3754007159800981800144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004c0c800a264b3001303f0018998151bac303e0012259800801401226604a608000426002608200481f22c81e0c0e8dd5001c566002601400513259800981f800c4cc0a8dd6181f000912cc00400a009133026304000213001304100240f91640f060746ea800e2b300130090028992cc004c0fc0062660546eb0c0f800489660020050048998131820001098009820801207c8b2078303a3754007159800980400144c966002607e00313302a3758607c00244b300100280244cc094c1000084c004c10400903e45903c181d1baa0038acc004cdc3a401c00513259800981f800c4cc0a8dd6181f000912cc00400a009133025304000213001304100240f91640f060746ea800e2c81c1038207040e081c1038207040e0606e6ea80044c966002606000313259800981f000c4cc09cc0f400401e2c81d8c0e4dd5001c566002604e00313259800981f000c4c966002606460746ea80062646464b300130420028998121820801899812000805c5903f18200009820000981d9baa0018b2072303d0018b2076303937540071640dc81b8c0dcdd5001181d001c59038181c800981c800981a1baa0158b20641330220152259800801466002460726074607400323039303a0019ba54800244464b30013030001899192cc004c0fc00a0091640f06eb8c0f4004c0e4dd5001c566002604e00313259800981f000c4cc0a4dd6181e800912cc00400a00b19800803cc0fc00a260026080004803903d45903b181c9baa0038acc004c0bc006264b3001303e0018998149bac303d0012259800801401633001007981f80144c004c100009007207a8b2076303937540071598009818800c4c8cc8966002608000313302b3758607e00244b3001002803c660020133041002898009821001201240fd1640f46eb4c0f4004c0f8004c0e4dd5001c56600260120031323259800981f80140122c81e0dd6981e800981c9baa0038acc004c02000626464b3001303f00280245903c1bad303d001303937540071598009803800c4c8c966002607e0050048b2078375c607a00260726ea800e2c81b9037206e40dc81b9037206e30373754004911119912cc004c0c8c0e8dd500144c8c8c8c8c8c8c8c8c8c8ca60026092003304900a9824804cc124022609200f30490069824802cc12401260920073758609200491111111112cc004c15002e26602c60a602a26602c01226602c01026602c00e26602c00c26602c00a26602c00826602c0062b30013047304f375400513232323298009bae30570019bae30570049bae30570039bae3057002488896600260b800b133047009225980080144cc11405066002604860b46ea812e460bc60be60be60be0032232330010010032259800800c5284566002600660c200314a31330020023062001417082fa460bc60be60be60be60be60be60be60be003370090014dd2a4004911111192cc0066002444646644b3001305e0028acc004c178c198dd5000c530103d87a80008a6103d87980004195159800982e801456600260ba60cc6ea80062980103d87a80008a6103d87b8000419513322598009830000c530103d87b80008acc004c15c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983618349baa0038a6103d8798000419c8338dd6983518339baa00330663754002832906518321baa00130020033001003919191919912cc004c17800a29422b3001305d0028cc004cdd7983518339baa0014c103d87b8000a50a51419513233225980098308014528c56600260b00051332259800982d18359baa3036306c375400d1337100040031337120040028350dd6983698351baa00359800982c18349baa3034306a375400f100189806000a0d08a5041a08340c19cdd50009bad306b3068375400860d460ce6ea800506520ca3064375400260d060d200660ce60c86ea8004c198004c188dd5000cc0acc184dd5003a444b3001305b3063375400313233009375860d060ca6ea815c8cdd7983498331baa00100230673064375400313322598009802000c528c566002600800514a1159800cc004cdd7cc004c1a4c198dd50014c1a4c198dd5000c8c8c96600260ae60d06ea8c1b0c1b400a200313259800982c000c4c02ccc1b0dd418061bad306d306a375400497ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d87b8000a50a5141911980099baf9800981818331baa002981818331baa001919192cc004c15cc1a0dd51836183680144006264b3001305800189805998361ba8337006eb4c1b4c1a8dd50012400297ae08acc004c1840062005100241a08340c1a0dd5000a0ce306b001306737540028029300103d8798000a50a51419114a0832106420c8306730643754002600e60c86ea8159062226464b3001980098331833800cc8cc004004dd6181798321baa0552259800800c52f5c1133067374e6464660d260d4004660d2606460ce6ea8004cc1a4dd4999119b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241a48348dc68009bae306c3069375400266e28c008dd7181998349baa0013371460046eb8c0d0c1a4dd500098011bae300e30693754002464b300133712002901744cdc599b80482000400400a2b300133712002907f01c4cdc5a41600266e2c00400a266e2d20b2013371666e0c0052080043371666e18005208004002419c8338dc6800981819834a610b4a5369676e6174757265310033069306a3067375460d460ce6ea8004cc1a530101400033069375200e97ae04bd70183498350009bac306800133002002306900141993006306337540ab3756600460c66ea8155222232330010010052232598009830800c4c8c96600260c660d66ea8006264653001375c60e2005375c60e260e4003375c60e2002b9518388009bac306f306c375400314a08350c8cc004004020896600200314c103d87a80008992cc004cdc79bc8375c60e20020091303733070374e00297ae0899801801983900120d8375860e00028370dd7183698351baa0028acc004c160006264660020026eb0c1b8c1acdd5001912cc00400629462b300133005005306f0018998010011838000c52820d441b51598009830000c4cc038dd6183698351baa0022330040040018acc004c18800626466e24dd6983700099198008009bac306f30700022259800800c52000899912cc004cc02002000a26022003100141b460e00026600400460e20028370c1a8dd500145660026074003132332259800982d98361baa0028acc004c16cc1b0dd518381838801c4cdc49bad3070306d37540040031337106eb4c1c0c1b4dd5001000a0d68a5041ac60dc0026eb4c1b8c1acdd500198351baa3034306a375400b159800981c800c4c8cc896600260b660d86ea800a2b3001305b306c375460e060e20071337120026eb4c1c0c1b4dd500144cdc40009bad3070306d3754004835a294106b18370009bad306e306b375400660d46ea8c1b4c1a8dd5002c4c8c8cc004004018896600200314a115980099baf003306c30700018a518998010011838800a0d641b86016660d860da60d46ea80092f5c0834106820d041a0834106818341baa00144c8cc88cc008008004896600200314a115980099baf30653069001300733068375200697ae08a518998010011835000a0c8419c6eacc00cc190dd502b1bae30660018b20c23259800982d000c4cc194dd482f99832983318319baa02a4bd70456600260a200313306537520be660ca605a60c66ea80a92f5c11598009818800c4cc194dd482f99832980118319baa02a4bd70456600266e1d200e0018998329ba905f3306530063063375405497ae08acc004c0cc0062660ca6ea4178cc194c198c19cc19cc19cc19cc18cdd501525eb822b300130320018998329ba905e330653066306730673067306730673063375405497ae08acc004c16c0062660ca6ea4174cc194c020c18cdd501525eb822660ca6ea4174cc194c0b8c18cdd501525eb8106120c24184830906120c2418460c26ea8c194c188dd500411832983318331833183318331833000c5905f1b94376600c8992cc004c148c168dd5000c4c8c8c8cc896600260c8007132323322598009834001c4c02cc1a00322c8328dd718328009bae30650023065001375860c600b1641846eb4c184004dd6983080118308009830000982d9baa0018b20b2305d002416d164164305700130560013055001305037540051641391641443049001304800130470013046001304500130440013043001304200130410013040001303b37540051640e4600660726ea8c8c8c966002606660766ea8006264b30013033303c375400313259800981a981e9baa0018991919912cc004c11800e200b16410c60860026eb8c10c008c10c004c0f8dd5000c5903c1820181e9baa0018b20763007303c3754600c60786ea8c0fcc0f0dd5000c5903a19198008009bac3006303c375405c44b30010018a60103d87a80008992cc004c8cc004004c014dd59804981f9baa3009303f375400444b30010018a508acc004cdc79bae304300103d8a518998010011822000a07c410513007330400014bd7044cc00c00cc10800903c1820000a07c30010012259800800c52f5c113303d303a303e00133002002303f00140f0600200289919912cc004c0f000626644b300130313039375400513232323322598009821801c4c966002606e607e6ea8006264646644b300130480038992cc004c0f000626464b3001304b0028074590481bae30490013045375400f1598009819800c566002608a6ea801e01916411916410c8218c10cdd50034590451bae3045001375c608a004608a00260806ea80062c81f0c1080162c8200dd7182000098200011820000981f800981d1baa0028b2070303b00113004303c0058b2072375c607200260740026eb0c0e000903622646004606a0066eb4c0cc00903144c8c008c0cc00cdd69818801205e8b205a1815000981480098140009813800981300098109baa0018b203e30230058b20423758604200260420046042002604000260366ea80322c80c844b3001300f30173754005132323259800980f80144cc018c07800c4c9660026026003159800980e1baa002802c5901d4566002601400313232598009811001401e2c80f8dd71810000980e1baa0028acc004c04800626464b30013022002803c5901f1810000980e1baa0028b2034406880d0c068dd5000c5901c180e800980e800980c1baa0028b202c22598009807180b1baa00289919192cc004c07800a26600c603a006264b300130120018992cc004c08000626464b300130150018992cc004c08c0062660166044002013164080603c6ea800a2b3001300c00189919194c004dd69812000cdd69812001cdd698120012444b300130280048074590250c090004c08c004c078dd500145901c2038301c3754002603e00316407460366ea800a2b300130090018acc004c06cdd500140162c80e22c80c9019180c9baa0018b2036301c001301c001301737540051640544464b3001300e001899192cc004c07400a0091640686eb8c06c004c05cdd5001c566002600a0031323259800980e80140122c80d0dd7180d800980b9baa0038b202a4054602a6ea80091598009804001c4c8c966002601260226ea8c054c05800a294629410101bad3014001301037540091640388070601e6020002601e0088a4d1365640141", + Type.Tuple([ + PolicyId, + ScriptHash, + ScriptHash, + ScriptHash, + ]), + [ + proxyPolicyId, + mintValidator, + stakeValidator, + managementValidator, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProtocolStakeProtocolStakeWithdraw { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "593b9d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888896600264653001301b001980d980e000cdc3a4009301b0024888966002600460366ea800e33001301f301c37540072302030213021001918101810800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009b80480066e95200248888888888888c8cc88c8c966002003198009112cc004c044c0c0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981c80146600200713259800980b000c566002606c6ea800a00f00640dd159800980a800c4c9660020030078992cc0040060110088044022264b3001303d003805402503a1bae00140f4607400281c0c0d8dd50014566002603800313259800800c01e264b3001303c002804c021039181d000a0703036375400500640cc8199033181a1baa001802a016802a06c802c01600b00540e8606e00281a8c0dc00a007003801c00d038181a800a0663031375400700140b922259800980898181baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130360018acc004cdc4a4008606a0030068992cc004c0ec012264b300130180018acc004c0e0dd5003402601081ca2b300130170018992cc00400601313259800800c02a01500a8992cc004c0fc00e01900b40f06eb400601481f8c0f000503a181c1baa0068acc004c0780062b30013038375400d0098042072804206a40d481a8c0d8dd5002c01d038180a981a800a066803206e3754003005802c01600a81d0c0dc005035181b801400e007003801a070303500140cc60626ea800e0028172444b300130113030375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0ec00e01100740e06eb400600c81d8c0e00050361bae001303700240e0606a0028198c0c4dd5001c00502e4888c966002602400313259800800c00e264b3001001802401200913259800981c801c01a00a81b0dd6800c011039181b000a068303237540091598009808800c56600260646ea801200700240cd00240bc8178c0c0dd5001a44446644b300130143033375400f13259800800c082264b30010018992cc00400604513259800800c4c9660020030248992cc00400604b0258992cc004c0fc00e2b3001301b303a375400d13259800800c09e264b300100181440a226644b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc004006264b300100181ac4c966002003159800982780144cc0b0038896600200513302e00d225980080146600200f19800802c4c9660026060609e6ea8066264b300100181e44c96600200313259800800c0fa264b30010018acc004c16000a26644b300130360018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d029411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606a00313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a052823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b159800981a000c4c9660020030428992cc0040060870438992cc004c17400e26607400244b3001002803c4c96600200319800800c4c008c18000e08e814a08f047823c11d061182f00120b882220b43758003043821a0ba305a001416060ac6ea80162b300130330018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d02a411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606400313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a054823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0c4006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b15980099b8748038006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b041414c829905320a6414c829905320a613259800981a800c4c9660020030418992cc0040062b3001305b0028cc004006011042409d0424161042821410a08482e0c164005057182a9baa0028acc004c0d0006264b3001001820c4c966002003159800982d8014566002606e60ac6ea8006264b3001001821c4c96600200313259800800c116264b30010018acc004c17c00a330010038cc00400601904640b104640b10464171046823411a08c8300c17400505b182e801411208904482220bc305b001416460ae6ea800608482a208482c2085042821410905c182c800a0ae3055375400504041488290c14cdd500098299baa00381fa0aa81fc0fe07f03f416460ac00282a0c15800a07b03d81ec0f5057182a000a0a43050375403303b413426606002a44b30010028cc004c150c144dd5181998289baa024914c004c8cc00400400c896600200314a115980099baf30583055375460b060aa6ea8c0dcc154dd5182c00098169982b9ba90034bd704528c4cc008008c16400505220aca50a51414123055305630563056305630563056305630560019181898289baa305532330010010022259800800c52f5c303d87a80008101800044c8cc8966003300130363056375460b40074a14a282a22660b330014a14c103d87a8000a60103d87980004150660b26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17000400e294626600400460ba00282b105a44cc166600294298103d87a8000a60103d87980004150660b26e9c0092f5c11330599800a51a60103d87a8000a60103d87980004150660b26e9ccc164dd400080125eb8105420a8375860b060b20026eb4c160008cc008008c16000505548c154c158c158c158c158006444b30010028a6103d87a80008acc004c0d00062605c660ac60ae00497ae08cc00400e60b0005302d001400c82890554888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd6982c000982d000a0b03232330010010062259800800c00e2646644b30013372201200515980099b8f0090028800c01905844cc014014c17c0110581bae3058001375660b200260b600282c852f5bded8c029000488966002606860a66ea800e264b300100180144c966002003003801c00e264b3001305b003802c0110581bad001801a0b63058001415860a86ea800e002828a44646600200200644b30010018a5eb8226644b30013375e60b460ae6ea8c168c15cdd5181c982b9baa002302f33059375200a97ae089982c80119802002000c4cc010010005054182c000982c800a0ac9182a982b182b182b182b182b000c8c154c158c158c15800644b30010018a4001133700900119801001182b800a0a8911194c0040060090034004444b30010028acc00400629462941058456600200314a115980099802182d0011bad305a0018cc00400e60b6005305b001400d14a082a105820b09112cc004c0d0c14cdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983000146600200f19800802c4c966002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981e000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c19c00e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b000e02d01541a46eb800506c1834800a0ce375c00260d00048348c19800506440410641bac001807c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002608600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b3001306a0038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001306f00380cc06106c1bae00141bc60d80028350dd7000983580120d83069001419d013419c6eb000602501241a860ce0028328dd68009833001403d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981d000c4c96600200300b8992cc00400601900c80644c96600260c800700e806a0c2375a00300c419060c200282f8c174dd50024566002607200313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009833801c0460208320dd6800c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607000313259800800c02e264b30010018064032019132598009832001c03a01a8308dd6800c0310641830800a0be305d375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001306400380740350611bad00180620c83061001417c60ba6ea801201482d105a20b4416882d105a20b4416860b66ea800e0128172012818a01282e8c17800505c182f001401e00f007803a0be305c001416860b8005005802c01600a82e8c168005058182d001400e007003801a0b63058001415860a86ea800e002828a44b30010018a4001133700900119801001182b800a0a89b89480026e21200048888888888888888a600260c26ea8046444b300130110028994c004006009003a40008008888966002007159800801440062a660ce92112657870656374205b5d203d206c6973745f62001641a9159800801454cc19d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260da007306d00299912cc004c01c00a266e0000cdd6982698359baa0028a99834a4811a6578706563742076616c69646174696f6e287265717565737429001641a060d80066eb4c1b000900420d441a9153306349012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164189300c00c980300348c03c00660060069111111919912cc004c12002633001375860dc60d66ea806a60dc60d66ea80fa609a60d66ea80fd222598009980e1bac3071306e37540a66eb8c1c4c1b8dd5180d98371baa001899912cc004c140c1bcdd5000c4c8cc896600260260051598009809800c566002b300130530018a518980900120e08992cc004c04c0062b300198009980d9bac3077307437540b26eb8c15cc1d0dd51810983a1baa0079bac30563074375401133076305630743754604260e86ea801ccc1d93001054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c168c1e4dd5000c4cc896600260c460f66ea8006264b30010018cc0040062b30013375e60c060fa6ea800cc20004c1f4dd5003456600266ebcc17cc1f4dd5000984000983e9baa0038acc004cdc49bad305f307d37540073001375660be60fa6ea8c17cc1f4dd50034dd7184000803cdd7182f803a04c8992cc004c16cc1f4dd5000c4cdc39bad308101307e37540026eb4c180c1f8dd5002452820f63060307d375400307541e907441e907341e9072407d07283941ca0e4841008c1fcc1f0dd5000c1b1079183e983d1baa001305d307a375460b860f46ea800e0dc83b8cc04403800501a41a907441a507422b300198009bac3057307437540b3375860ee60e86ea8022660ec60ac60e86ea8c084c1d0dd50039983b260106457355534472004bd702444b30013370e6020004602401919800806400a4464b3001305a307937540031325980099baf307e307b375400260fc60f66ea8c1f8c1ecdd5002456600266ebcc178c1ecdd5000982e983d9baa307e307b375400913370f3001375660ba60f66ea80066eb8c1f80166eb8c1740150242cc004c16c02626eb4c174c1ecdd500244cdc199b82375a60ba60f66ea8010024029078452820f08a5041e060fa60f46ea80060e883b8cc04401400501a41c10742264b30013055307437540031325980099b87375a60f200266e000140222b30013370e6eb4c1e4c1e8004cdc0002001c56600266e1e60026eacc084c1d8dd502dcdd7182c183b1baa302330763754013488105735553447200407c0071305698009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d2201045553447200407d1533074491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001641cd15330744914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001641cd153307449140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001641cd3001375860b060ea6ea816a6eb8c068c1d4dd51811183a9baa0089bae305730753754604460ea6ea80226eb4c1e0c1d4dd5000a01683220e4301a307437540111533072491dc6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641c51533072491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001641c51533072491186578706563742073757364725f746f5f6d696e74203e2030001641c4b300130530018802c4cdc199b8200500100241c115330714913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641c11533071491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641c115330714911d657870656374207661756c745f757364725f6265666f7265203e3d2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4b3001300e375a60a260de6ea80062609e6eb4c050c1bcdd5000c52820d8402c603260dc6ea800a0b683591598009823804c660026eb0c1b8c1acdd500d4c1b8c1acdd501f4c134c1acdd501fa444b30013301c375860e260dc6ea814cdd7183898371baa301b306e37540031332259800982818379baa00189919912cc004c04800a2b3001301200189919912cc004c05400a2b300198009980e9bac3079307637540b66eb8c164c1d8dd51811983b1baa0099bac30583076375401533078305830763754604660ec6ea8024cc1e130106457355534472004bd702444b30013370e6028006602801d159800980980146600200700291192cc004c170c1ecdd5000c4cc896600260c860fa6ea8006264b30010018cc0040062b30013375e60c460fe6ea800cc20804c1fcdd5003456600266ebcc184c1fcdd5000984100983f9baa0038acc004cdc49bad3061307f37540073001375660c260fe6ea8c184c1fcdd50034dd7184100803cdd71830803a0508992cc004c170c1fcdd5000c4c96600266e1cdd69842008009bad3063308101375400b13370e6eb4c21004c21404004dd698131840809baa0058a5041f86100026ea8006294107d1831183f9baa00183ba0f883b20f883aa0f883a204283a41d20e907442100461020260fc6ea80060dc83d8c1fcc1f0dd5000982f983e1baa305e307c375400707041e46602602000280e20d883b20d683b115980099b8798009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d220105735553447200407c66e0520000088992cc004c15cc1d8dd5000c4c96600266e1cdd6983d80099b810070048acc004cdc39bad307b307c0013370200c015159800982c4c004dd59811983c1baa05d9bae305a30783754604a60f06ea802e9110455534472004085159800cc004dd6182d983c1baa05d9bac307b307837540193307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b30013370e6028004602c02119800808400a4464b3001305e307d37540031325980099baf308201307f375400261040260fe6ea8c20804c1fcdd5002456600266ebcc188c1fcdd50009830983f9baa308201307f375400913370f3001375660c260fe6ea80066eb8c208040166eb8c18401502819b813370666e08dd69830983f9baa00400e00d375a604860fe6ea8012294107c452820f8308101307e375400307841ec6602a00a00280f20e883c1198009bac305b307837540bb307b307c307c307c307c307c307c307c307c307c307c307837540173307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b3001305b0068a51899b8900632330010010042259800800c52000899912cc004cdd7984100983f9baa002006899b8000198009bab3061307f3754005375c61040200b375c60c200a8142200283e0c20004004cc008008c2040400507e20f0454cc1d9241df6578706563740a2020202076616c69646174655f756e7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641d515330764911765787065637420757364725f6d696e746564203d3d2030001641d51533076491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641d515330764913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001641d53001375860b460ee6ea81726eb8c070c1dcdd51812183b9baa00a9bae305930773754604860ee6ea802a6eb4c1e8c1dcdd5000a01a83320e8301c3076375401515330744912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641cd1533074491a76578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202029001641cd15330744911a65787065637420757364725f746f5f72656c65617365203e2030001641cc6eb4c1dc004dd6983b983c000994c0040060134bd709010000810100002002222598008014400633001003983d0014c8c96600260306eb4c074c1e0dd5001456600266e24dd6980e983c1baa00200189983d1ba8337006eb4c1ec00c004cc1e8dd419b80375a60f660f80066eb4c074c1e0dd500125eb822a660ec92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641d515330764911565787065637420722e666f7266656974203e3d2030001641d466e0ccdc11bad30593077375400200c00a60f20048019077454cc1c52401236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641c115330714911c657870656374207661756c745f757364725f6265666f7265203e2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4601c6eb4c144c1bcdd5000a0163019306e375400505b41ac8a5041a083408888c966002609c60da6ea8006264b30013375e60e460de6ea8c1c8c1bcdd5182898379baa001304733071375200a97ae08acc004c13a60026eacc144c1bcdd5182898379baa001802d2210d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018998399ba898009bab30533071375460a660e26ea800e00d4890455534472004068660e660e860e26ea8004cc1cc00d2f5c10624065062831418a0c483b0c1ccc1c0dd5000c18106d182918379baa3051306f3754003153306d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ac6600a008002444464b3001304e306d37540031325980099baf3072306f375460e460de6ea8004c11ccc1c4dd4802a5eb822b3001304e98009bab3051306f3754003005a4410d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018acc004cdd7980b18389baa0034c103d87a80008998399ba898009bab305330713754007006a4410455534472004068660e660e860e26ea8004cc1cc00d2f5c1153306f490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641b90624065062831418a0c483b0c1ccc1c0dd5000c54cc1b924012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641b460a460de6ea80062a660da92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641ac6600a00800244b300133710002900045300103d87a8000899803001000a0ce2264b300100181ec0f6264b300100181f44c96600200303f81fc0fe07f1332259800800c106264b30010018acc004c16c00a264b300130383057375400513259800800c112264b30010018992cc00400608d13259800800c4c9660020030488992cc004006093049824c126264b300130630038acc004c0fcc178dd500344c96600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f132598009834801c4c966002608c00313259800800c14a264b3001001829c14e0a70538992cc004c1b400e02505441a86eb800506d1835000a0d0306637540171598009822800c56600260cc6ea802e01f051419d051418c8318c190dd500541410661bae00141a460cc0028320dd7000983280120cc3063001418460be6ea801a09482e20948300dd7000a0c63060001417860c0005047823c11e08e8308c17800505c182f001411608b045822a0be305c001416860b06ea800a08682a84c01cc16c02208482c2085042821410905c182c800a0ae375c00260b000482c8c1580050541bac00181ec0f5057182a00120a481d203c81d203c8992cc00400607703b81dc4c8c00cc154010dd6800c0ed055182900120a08992cc00400607303981cc4c8c00cc14c010dd6800c0e50531828001209c81b209881b40da06d0364140609a0028258c13400a06903481a40d104e1825800a092375a0026094005031412c60900028230dd6800982380140b90481822800a0863758002608800502b815a08a304200141006eb0004c10400a0510284108607e00281e8c0ecdd50034099038409903c1bac001812c09503f181e000a074303c002811c08e04702340f4607400281c0c0e800a043021810c08503b181c000a06c3034375400f01f40c4444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608600719800804c6600200900c805a01e805a022805a080375a00300a410c608000281f0c10000a0110088044021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12c00e02901341206eb800504b1824000a08c375c002608e0048240c1140050434039012403901440390431bac001806c0350461821800a0823043002805c02e01700b4110608200281f8dd680098200014021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c880cc06603301940cc664464b30013010302f375400313030323376060680026068606a0026eb0c0ccc0c0dd5000c54cc0b924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b4646600200200644b30010018a60103d87a80008992cc004cdd7981880099ba548010cc0d0c028cc0d0dd480225eb812f5c11300c33034374e66068606200266068606400297ae04bd7044cc00c00cc0d800902f181a000a06437566060606260626062606260626062606260626062605a6ea8048dd7181818169baa0019800912cc004006297ae089981818169818800998010011819000a05e9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003205891111919800800802912cc004006200b13259800800c4cc010c0d800801a26600a606c0046600600600281a0c0d80050334dd6180718161baa01148888c8c8c8cc88c966002003159800980b181a9baa0018992cc00400604713259800800c09204902481244cc89660020030268992cc0040062b3001303f0028acc004c06cc0e8dd5000c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c96600200303b81dc4cc896600200303d8992cc0040062b300130560028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0c8c144dd500344c96600200303f8992cc004006081040820410226644b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4c96600260c400713303f00f225980080146600201f102b826206c8992cc0040062b300130413060375400313259800800c13a264b3001001827c13e26644b3001001828c4c966002003052829414a26644b300100182a44c96600200305582ac156264b3001306e0038acc00401e0ad13259800800c15e0af05782bc4cc89660020030598992cc0040060b505a82d416a264b30013073003898081839808c16d0701bae00141cc60e00028370dd7000983780420e0306d00741ad05641ac6eb40060aa8370c1ac0050691bad001306a00282920d6306800141986eb0004c19c00a09f04f41a060ca0028318c184dd5000c13505e413609b04d826a0cc3063002418504a417c6eb8005062182f800a0ba375c00260bc00482f8c17000505a1bae001305b002417060b200282b8dd7000982c00120b23056001415060a46ea801a07c827a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c829a07d03e81f40f9057182a000a0a4375800260a600503b81da0a83051001413c60a200503981cc0e60728290c13c00504d182780140de06f03781ba0a0304d001412c609a00503581ac0d606a8270c12c005049182580140ce067033819a0983049001411c6092005031818c0c60628250c11c005045182380140be05f02f817a0903045001410c608a00502d816c0b605a8230c10c005041182180140ae05702b815a088304100140fc6082005029814c0a60528210c0fc00503d181d9baa001813a070813a078813c09e04f0274100607a00281d8dd7000981e001207a303a00140e0606c6ea8006044819a045022811408903b29981999b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40c522010013259800980b181a9baa00189929981a99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980f181b9baa0018992cc0040062b300130193038375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098210014401a07281f8c10000503e1bae001303f0024100607a00281d8c0e4dd5000c0d103640d206903481a207c303b30383754003153303649013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640d46034606e6ea8c064c0dcdd5000981c981b1baa0018a9981a24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640cc646600200200e44b30010018a60103d87a80008992cc004c8cc004004c014dd5980d981c9baa301b3039375400444b30010018a508acc004cdc79bae303d0010368a51899801001181f000a06e40ed130123303a0014bd7044cc00c00cc0f0009035181d000a070300100130070072223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20765980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81a90351bac3038002375a606c0026466ec0dd4181b0009ba73037001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6076003337149101023a200098008054c0f000600a805100a181f00144ca6002015303b00199b8a489023a200098008054c0f0006600e66008008004805100a181f0012078303e00140ec66e29220102207d0000340e06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920703758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40e866e2ccdc0000acc004cdc4000a4029148182290372074004401866e0c00520203370c002901019b8e00400240dc6eb800d03b1b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c88190c00c00c444b3001300d302c375400713259800800c00a264b30010018992cc00400600913259800800c566002606a00519800801c4c966002602400313259800800c01e264b30010018acc004c0e000a264b300130150018992cc00400601513259800800c566002607600519800800c032016807201681c201700b805c02d03c181c800a06e30353754005159800980a000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026084007013809207e375a0030114108607e00281e8dd6800981f001403903f181e000a074375a002607600500b40f0607200281b8c0d4dd5001402503220643033375400300840d5008804402201081c8c0d800503418191baa0028acc004c0440062b3001303237540050078032066803205e40bc60606ea800600a804200a819200b005802c0150361819800a0623033002801c00e00700340d060620028178c0b4dd5001c00502a111194c004006009003400444464b300130110018992cc00400600d13259800800c01e00f007803c4c9660026070007005804206a375c00281c0c0d400503318189baa0038acc004c040006264b300100180344c966002003007803c4c96600260700071330150012259800801401e264b30010018cc00402a00313002303b003402900b805c02e01681e0c0e400903740210351bac001803c01d038181a800a06630313754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0e000e26602a00244b3001002803c4c966002003198008054006260046076006805201700b805c02d03c181c801206e804206a3758003007803a070303500140cc60626ea800e2b3001300f0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d801c4cc060004896600200500a8992cc0040063300100d800c4c008c0f800d00d403a01d00e807207e303c00240e900b40e06eb000601500a40ec607000281b0dd6800981b801401d038181a800a066303137540071598009807000c4c9660020030068992cc00400600f007803c4c9660026070007005804206a375a00300740e0606a0028198c0c4dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981c001c01601081a8dd6800c01d038181a800a066303137540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013038003802c0210351bae00140e0606a0028198c0c4dd5001c01502e205c40b8817102e205c40b8605e6ea8008888c966002601a00313259800800c00e264b300100180240120090048992cc004c0d000e00d00540c46eb80050341818800a05e302d37540091598009806000c4c9660020030038992cc0040060090048024012264b3001303400380340150311bae00140d060620028178c0b4dd5002400902a2054302b37540068b2032180d800980b1baa01c8a4d15330144911856616c696461746f722072657475726e65642066616c73650013656404c1" + : + "591d0b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009ba5480092222222222229800911192cc004c03000626464b3001302000280245901d1bae301e001301a37540071598009805800c4c966002603e00313300e3758603c00244b3001002802c6600200f3020002898009810801200e407916407060346ea800e2b300130120018992cc004c07c00626601c6eb0c07800489660020050058cc00401e6040005130013021002401c80f22c80e0c068dd5001c56600260140031323322598009810800c4cc040dd61810000912cc00400a00f19800804cc08800a260026046004804902045901e1bad301e001301f001301a37540071598009804800c4c8c96600260400050048b203a375a603c00260346ea800e2b30013008001899192cc004c08000a0091640746eb4c078004c068dd5001c566002600e0031323259800981000140122c80e8dd7180f000980d1baa0038b2030406080c10182030406080c0c060dd5001488c96600260160031323259800980f80140122c80e0dd7180e800980c9baa0038acc004c02800626464b3001301f00280245901c1bae301d0013019375400716405c80b8c05cdd5001489660026014602e6ea800a2646464b3001301f002899192cc004c03c0062b3001301d37540050068b203c8acc004c03800626464b300130230028044590201bad3021001301d3754005159800980a800c566002603a6ea800a00d16407916406c80d901b180d9baa001301e0038b20383259800980d800c56600266e252004301a0018b44c030c06800501945901c1baa301d001301d0013018375400516405922598009805180b9baa0028991919912cc004c08000e00b1640746eb4c074004dd7180e801180e800980c1baa0028b202c91192cc004c02c00626464b3001301f00280245901c1bad301d001301937540071598009805000c56600260326ea800e00516406916405c80b8c05cdd500124444466446645300133223259800980a18109baa001898111919bb03026001302630270013758604a60446ea80062c8100c8cc00400400c896600200314c103d87a80008992cc004cdd7981180099ba548010cc098c03ccc098dd480225eb812f5c11301033026374e6604c60460026604c604800297ae04bd7044cc00c00cc0a00090221813000a04837566044604660466046604660466046604660466046603e6ea8058dd71811180f9baa002912cc004c04cc080dd500144c8c8c8ca60026eb4c0a00066eb4c0a000e60500049112cc004c0b0012266014605600e26601e0020111640a43028001302700130260013021375400516407d2259800980998101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc0440044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80f922259800980a18109baa003899191919912cc004c0ac00e264b3001301a30273754003132323232323298009818800cdd61818802cdd698188024dd69818801cc0c40092222259800981b80344cc098dd6181b005912cc00400a26605000c44b300100289980e80289980e8048992cc004c0a8c0dcdd500944c8c8c966002607e005132332259800981800144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038acc004c0bc00a264b300130430018998191bac304200122598008014012266040608800426002608a00482122c8200c0f8dd5001c566002606c005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b3001302e0028992cc004c10c0062660646eb0c1080048966002005004899810182200109800982280120848b2080303e3754007159800981680144c96600260860031330323758608400244b300100280244cc084c1100084c004c114009042459040181f1baa0038acc004c0b000a264b300130430018998191bac304200122598008014012266042608800426002608a00482122c8200c0f8dd5001c5660026056005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b30013370e900700144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038b207840f081e103c207840f081e103c181d9baa001132598009817800c4c966002608400313302530410010078b207e303d37540071598009817000c4c9660026084003132598009818981f1baa00189919192cc004c11800a266054608a00626605400201716410c60880026088002607e6ea80062c81e8c1040062c81f8c0f4dd5001c5903b2076303b3754004607c0071640f0607a002607a00260706ea804a2c81b04cc0a8048896600200519800981e181c9baa302d303937540352298009919800800801912cc00400629422b30013375e6080607a6ea8c100c0f4dd51818981e9baa304000130283303f375200697ae08a518998010011820800a07640f94a14a281ca4607a607c607c607c607c607c607c607c607c0032302b30393754607a646600200200444b30010018a5eb8503d87a80008101800044c8cc896600330013030303e375460840074a14a281ea26608330014a14c103d87a8000a60103d879800040f4660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f904244cc106600294298103d87a8000a60103d879800040f4660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f4660826e9ccc104dd400080125eb8103d207a3758608060820026eb4c100008cc008008c10000503d48c0f4c0f8c0f8c0f8c0f8006444b30010028a6103d87a80008acc004c0b8006260506607c607e00497ae08cc00400e6080005337000029000a00640e881ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208089980280298230022080375c607e0026eb4c100004c108005040191919800800803112cc00400600713233225980099b910090028acc004cdc78048014400600c820a26600a00a608e0088208dd718200009bab304100130430014104297adef6c6014800244b3001302d303a375400513232598009820801400e2c81f0dd6981f800981d9baa0028b2072911919800800801912cc004006297ae0899912cc004cdd79821181f9baa3042303f37546066607e6ea8008c0a8cc104dd4802a5eb822660820046600800800313300400400140f46080002608200281f24607a607c607c607c607c607c0032303d303e303e303e001912cc0040062900044cdc02400466004004607e00281e2444653001001802400d0011112cc00400a2b30010018a518a504101159800800c52845660026600860840046eb4c1080063300100398218014c10c0050034528207a4100820244b3001302d303a375400513232323298009821000cc10800e60840049112cc004c11801226604e608a00e266048004264b3001303500189919912cc004c128006264646644b3001304e00380845904b1bae304b001375c609600460960026eb0c1240062c8238dd69823800982400098219baa0028acc004c0d00062646644b3001304a0018991919912cc004c13800e02116412c6eb8c12c004dd7182580118258009bac30490018b208e375a608e002609000260866ea800a2b3001303b001899194c004dd69824000cc1240066eb4c12000922259800982600144c8c8cc896600260a00070128b209a375c609a0026eb8c134008c134004dd618258014590490c120004c10cdd5001456600260660031323322598009825000c4c8c8cc8966002609c0070108b2096375c60960026eb8c12c008c12c004dd61824800c590471bad30470013048001304337540051598009819000c4c8c966002609200500b8b208c375a608e00260866ea800a2b300130310018991919912cc004c12c00e01b1641206eb4c120004dd69824001182400098219baa0028acc004c0c000626464b30013049002805c590461bad30470013043375400515980099b874803800626464b30013049002805c590461bad304700130433754005164104820904120824104820904120823041375400316410c304200130410013040001303b37540051640e52259800800c52000899b8048008cc008008c0fc00503c4dc4a40013710900024444444444444444530013049375402322259800980880144ca6002003004801d200040044444b30010038acc00400a2003164149198008024c15400e60aa005332259800980380144cdc00019bad30473053375400516414460a80066eb4c15000900420a48b209698060064c01801a4601e00330030034888888c8cc89660026084013198009bac30563053375403530563053375406930473053375406c9112cc004cc070dd6182c982b1baa04d375c60b260ac6ea8c06cc158dd5000c4cc8966002609460ae6ea80062646644b300130130028acc004c04c0062b3001598009826800c528c4c04800905944c9660026026003159800cc004cc06cdd6182f982e1baa053375c60a260b86ea8c084c170dd5003cdd61828182e1baa0089982f1828182e1baa3021305c375400e660bc9801054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c150c184dd5000c4cc896600260b860c66ea80062646603e0022b30013375e60b460ca6ea800cc1a0c194dd5003456600266ebcc164c194dd5000983418329baa0038acc004cdc49bad3059306537540073001375660b260ca6ea8c164c194dd50034dd71834003cdd7182c803a04c8992cc004c154c194dd5000c4cdc39bad3069306637540026eb4c168c198dd5002452820c8305a3065375400316418d16418d16418c60ce60c86ea80062c8310c194c188dd5000982b98311baa3056306237540071641806602201c00280d22c82ea2c82e9159800cc004dd61828982e1baa0539bac305f305c37540113305e3050305c3754604260b86ea801ccc17930106457355534472004bd702444b30013370e6020004602401919800806400a4464b30013054306137540031325980099baf30663063375400260cc60c66ea8c198c18cdd5002456600266ebcc160c18cdd5000982b98319baa30663063375400913370f3001375660ae60c66ea80066eb8c1980166eb8c15c0150242cc004c15402626eb4c15cc18cdd500244cdc199b82375a60ae60c66ea8010024029061452820c28a50418460ca60c46ea80062c8300cc04401400501a45905d2264b3001304f305c37540031325980099b87375a60c200266e000140222b30013370e6eb4c184c188004cdc0002001c56600266e1e60026eacc084c178dd502acdd71829182f1baa3023305e3754013488105735553447200407c0071305098009bab3021305e37540ab375c60a460bc6ea8c08cc178dd5004d2201045553447200407d1641711641711641713001375860a460ba6ea81526eb8c068c174dd51811182e9baa0089bae3051305d3754604460ba6ea80226eb4c180c174dd5000a0168b20b6301a305c3754011164169164169164168b3001304d0018802c4cdc199b8200500100241651641651641651641646eb4c170004dd6982e182e800cc004dd6182d982c1baa04f9bae301530583754603a60b06ea800e6eb8c130c160dd5180e982c1baa0039bad305b30583754002803a2c82b26002007375860b260ac6ea800a4b3001300e375a609660ae6ea8006260926eb4c050c15cdd5000c52820aa402c603260ac6ea800a2c82a11598009820804c660026eb0c158c14cdd500d4c158c14cdd501a4c11cc14cdd501b2444b30013301c375860b260ac6ea8134dd7182c982b1baa301b3056375400313322598009825182b9baa00189919912cc004c04800a2b30013012001899192cc004c0500062b300198009980e1bac3060305d37540a86eb8c148c174dd51811182e9baa0089bac3051305d37540133305f3051305d3754604460ba6ea8020cc17d300106457355534472004bd702444b30013370e6026006602601b159800980900146600200700291192cc004c154c188dd5000c4cc896600260ba60c86ea8006264660400022b30013375e60b660cc6ea800cc1a4c198dd5003456600266ebcc168c198dd5000983498331baa0038acc004cdc49bad305a306637540073001375660b460cc6ea8c168c198dd50034dd71834803cdd7182d003a04e8992cc004c154c198dd5000c4c96600266e1cdd698358009bad305c3068375400b13370e6eb4c1acc1b0004dd6981298341baa0058a50419860ce6ea80062941065182d98331baa0018b20c88b20c88b20c830683065375400316418c60cc60c66ea8004c160c18cdd5182b98319baa0038b20c23301200f001406d1641791641788acc004cdc3cc004dd59810182e9baa0549bae3051305d3754604460ba6ea8022910105735553447200407866e0520000078992cc004c140c174dd5000c4c96600266e1cdd6983100099b810060038acc004cdc39bad306230630013370200a0131598009828cc004dd59811182f9baa0569bae3053305f3754604860be6ea802a9110455534472004081159800cc004dd6182a182f9baa0569bac3062305f3754017330613053305f3754604860be6ea8028cc185301054455534472004bd702444b30013370e6026004602a01f19800807c00a4464b30013057306437540031325980099baf30693066375400260d260cc6ea8c1a4c198dd5002456600266ebcc16cc198dd5000982d18331baa30693066375400913370f3001375660b460cc6ea80066eb8c1a40166eb8c16801502719b813370666e08dd6982d18331baa00400d00c375a604660cc6ea80122941064452820c830683065375400316418c6602800a00280ea2c8301198009bac3054305f37540ad30623063306330633063306330633063306330633063305f3754015330613053305f3754604860be6ea8028cc185301054455534472004bd704dd69831183180224444b300130550018a51899b8900132330010010052259800800c52000899912cc004cdd7983518339baa002007899b8000198009bab305b30673754005375c60d400d375c60b600c814220028328c1a0004cc008008c1a400506620c245905d45905d45905d45905d4c004dd61829982f1baa0559bae301b305e3754604660bc6ea80266eb8c148c178dd51811982f1baa0099bad3061305e375400280622c82e0c06cc174dd5004c5905b45905b45905b1bad305f001329800800c02697ae1101000081010000200222259800801440063300100398310014c8c96600260306eb4c074c180dd5001456600266e24dd6980e98301baa0020018998311ba8337006eb4c18c00c004cc188dd419b80375a60c660c80066eb4c074c180dd500125eb822c82f22c82f0cdc199b82375a60a660be6ea8004018014c18400900320be8b20b28b20b2375a60b80026eb4c170c17400660026eb0c16cc160dd5027cdd7180a982c1baa301d30583754007375c609860b06ea8c074c160dd5001cdd6982d982c1baa001401d16415930010039bac3059305637540052300e375a609660ae6ea800500b180c982b1baa0028b20a8452820a24144444464b30013048305537540031325980099baf305a3057375460b460ae6ea8c12cc15cdd500098211982c9ba90054bd704566002609130013756609660ae6ea8c12cc15cdd5000c01691010d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c80089982d9ba898009bab304d30593754609a60b26ea800e00d48810455534472004068660b660b860b26ea8004cc16c00d2f5c060b660b06ea80062c82b0c130c15cdd51825982b9baa0018b20aa8b20aa3059305637540031641506600a008002444464b30013048305537540031325980099baf305a3057375460b460ae6ea8004c108cc164dd4802a5eb822b3001304898009bab304b30573754003005a450d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c8008acc004cdd7980b182c9baa0034c0103d87a800089982d9ba898009bab304d30593754007006a4410455534472004068660b660b860b26ea8004cc16c00d2f5c116415c60b660b06ea80062c82b0c130c15cdd5000c59055459055182c982b1baa0018b20a833005004001225980099b8800148002298103d87a8000899803001000a0a022646644b30013040001899912cc004c0c0c0f4dd500144c8c8c8cc8966002608e00713259800981b18219baa0018991919912cc004c13000e264b3001303b001899192cc004c13c00a01d1641306eb8c134004c124dd5003c566002607400315980098249baa00780645904a459047208e3047375400d1641246eb8c124004dd71824801182480098221baa0018b208430460058b2088375c6088002608800460880026086002607c6ea800a2c81e0c0fc0044c010c1000162c81e8dd7181e800981f0009bac303c00240e91323002303c003375a607400481c2264600460740066eb4c0e00090364590340c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815002c590281bac302800130280023028001302700130223754007164080323232598009809180f9baa00189919912cc004c09c006264b30013016302337540031323232323232323232323298009819000cc0c802a606401330320089819003cc0c801a606400b30320049819001cdd6181900124444444444b3001303d00b89980f181e00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0acc0e0dd500144c8c8c8ca60026eb8c1000066eb8c1000126eb8c10000e6eb8c1000092222598009822802c4cc0d0024896600200513302701410248992cc004c0d8c10cdd5000c4c8c8c8cc8966002609a007132323322598009828801c4c02cc1440322c8270dd718270009bae304e002304e0013758609800b1641286eb4c128004dd698250011825000982480098221baa0018b2084304600241111641083040001303f001303e001303937540051640dd1640e8303200130310013030001302f001302e001302d001302c001302b001302a001302900130243754003164088604c0031640906eb8c090004c094004c080dd5000c5901e192cc004c048c07cdd5000c4c966002603260406ea8006264b3001301430213754003132323322598009815001c40162c8138c09c004dd71813801181380098111baa0018b204030243021375400316407c602a60406ea8c050c080dd5181198101baa0018b203c32330010013758602860406ea805c896600200314c0103d87a80008992cc004c8cc004004c014dd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a04440951300e330240014bd7044cc00c00cc0980090201812000a04430010012259800800c52f5c1133021301e3022001330020023023001408044b30013011301e3754005132323259800981300144cc018c09400c4c966002602a00315980098119baa002802c590244566002602800313232598009814801401e2c8130dd7181380098119baa0028acc004c06c00626464b30013029002803c59026181380098119baa0028b204240848108c084dd5000c5902318120009812000980f9baa0028b203a300500522598009807980e1baa00289919192cc004c09000a2660126046006264b300130130018992cc004c09800626464b300130160018992cc004c0a400626601c605000201316409860486ea800a2b3001301500189919194c004dd69815000cdd69815001cdd698150012444b3001302e00480745902b0c0a8004c0a4004c090dd5001459022204430223754002604a00316408c60426ea800a2b300130120018acc004c084dd500140162c81122c80f901f180f9baa0018b204230220013022001301d375400516406c4590080c024004c010dd5004c52689b2b20041", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProtocolStakeProtocolStakeElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "593b9d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a493b657870656374206c6973742e6c656e677468286f75747075745f696e646963657329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a49666578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d206d61746368696e675f726571756573742e616d6f756e7400168a99801a493865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00168a99801a4938657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f6964782900168a99801a49376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f72657175657374732900168a99801a4939657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e6774682872657175657374732900168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a493565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800168a99801a493365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49286578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d20646174756d00168a99801a49566578706563742072656465656d65723a205369676e656452656465656d65723c457874726150726f746f636f6c52656465656d657256313e203d0a2020202020206f7263686573747261746f725f72656465656d657200164888888888888888896600264653001301b001980d980e000cdc3a4009301b0024888966002600460366ea800e33001301f301c37540072302030213021001918101810800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009b80480066e95200248888888888888c8cc88c8c966002003198009112cc004c044c0c0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981c80146600200713259800980b000c566002606c6ea800a00f00640dd159800980a800c4c9660020030078992cc0040060110088044022264b3001303d003805402503a1bae00140f4607400281c0c0d8dd50014566002603800313259800800c01e264b3001303c002804c021039181d000a0703036375400500640cc8199033181a1baa001802a016802a06c802c01600b00540e8606e00281a8c0dc00a007003801c00d038181a800a0663031375400700140b922259800980898181baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130360018acc004cdc4a4008606a0030068992cc004c0ec012264b300130180018acc004c0e0dd5003402601081ca2b300130170018992cc00400601313259800800c02a01500a8992cc004c0fc00e01900b40f06eb400601481f8c0f000503a181c1baa0068acc004c0780062b30013038375400d0098042072804206a40d481a8c0d8dd5002c01d038180a981a800a066803206e3754003005802c01600a81d0c0dc005035181b801400e007003801a070303500140cc60626ea800e0028172444b300130113030375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800800c01a00d0068992cc004c0ec00e01100740e06eb400600c81d8c0e00050361bae001303700240e0606a0028198c0c4dd5001c00502e4888c966002602400313259800800c00e264b3001001802401200913259800981c801c01a00a81b0dd6800c011039181b000a068303237540091598009808800c56600260646ea801200700240cd00240bc8178c0c0dd5001a44446644b300130143033375400f13259800800c082264b30010018992cc00400604513259800800c4c9660020030248992cc00400604b0258992cc004c0fc00e2b3001301b303a375400d13259800800c09e264b300100181440a226644b300100181544c96600200302b815c4cc896600200302d8992cc00400605d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc004006264b300100181ac4c966002003159800982780144cc0b0038896600200513302e00d225980080146600200f19800802c4c9660026060609e6ea8066264b300100181e44c96600200313259800800c0fa264b30010018acc004c16000a26644b300130360018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d029411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606a00313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a052823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b159800981a000c4c9660020030428992cc0040060870438992cc004c17400e26607400244b3001002803c4c96600200319800800c4c008c18000e08e814a08f047823c11d061182f00120b882220b43758003043821a0ba305a001416060ac6ea80162b300130330018992cc00400608513259800800c10e08713259800982e801c4cc0e800489660020050078992cc00400633001001898011830001c11d02a411e08f047823a0c2305e002417104441686eb0006087043417460b400282c0c158dd5002c566002606400313259800800c10a264b3001001821c10e264b3001305d00389981d000912cc00400a00f13259800800c66002003130023060003823a054823c11e08f047418460bc00482e208882d0dd6000c10e08682e8c168005058182b1baa0058acc004c0c4006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b15980099b8748038006264b300100182144c966002003043821c4c96600260ba00713303a0012259800801401e264b30010018cc0040062600460c000704740a5047823c11e08e8308c17800905c411105a1bac001821c10d05d182d000a0b03056375400b041414c829905320a6414c829905320a613259800981a800c4c9660020030418992cc0040062b3001305b0028cc004006011042409d0424161042821410a08482e0c164005057182a9baa0028acc004c0d0006264b3001001820c4c966002003159800982d8014566002606e60ac6ea8006264b3001001821c4c96600200313259800800c116264b30010018acc004c17c00a330010038cc00400601904640b104640b10464171046823411a08c8300c17400505b182e801411208904482220bc305b001416460ae6ea800608482a208482c2085042821410905c182c800a0ae3055375400504041488290c14cdd500098299baa00381fa0aa81fc0fe07f03f416460ac00282a0c15800a07b03d81ec0f5057182a000a0a43050375403303b413426606002a44b30010028cc004c150c144dd5181998289baa024914c004c8cc00400400c896600200314a115980099baf30583055375460b060aa6ea8c0dcc154dd5182c00098169982b9ba90034bd704528c4cc008008c16400505220aca50a51414123055305630563056305630563056305630560019181898289baa305532330010010022259800800c52f5c303d87a80008101800044c8cc8966003300130363056375460b40074a14a282a22660b330014a14c103d87a8000a60103d87980004150660b26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c17000400e294626600400460ba00282b105a44cc166600294298103d87a8000a60103d87980004150660b26e9c0092f5c11330599800a51a60103d87a8000a60103d87980004150660b26e9ccc164dd400080125eb8105420a8375860b060b20026eb4c160008cc008008c16000505548c154c158c158c158c158006444b30010028a6103d87a80008acc004c0d00062605c660ac60ae00497ae08cc00400e60b0005302d001400c82890554888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a2003006415d133005005305e004415c6eb8c15c004dd6982c000982d000a0b03232330010010062259800800c00e2646644b30013372201200515980099b8f0090028800c01905844cc014014c17c0110581bae3058001375660b200260b600282c852f5bded8c029000488966002606860a66ea800e264b300100180144c966002003003801c00e264b3001305b003802c0110581bad001801a0b63058001415860a86ea800e002828a44646600200200644b30010018a5eb8226644b30013375e60b460ae6ea8c168c15cdd5181c982b9baa002302f33059375200a97ae089982c80119802002000c4cc010010005054182c000982c800a0ac9182a982b182b182b182b182b000c8c154c158c158c15800644b30010018a4001133700900119801001182b800a0a8911194c0040060090034004444b30010028acc00400629462941058456600200314a115980099802182d0011bad305a0018cc00400e60b6005305b001400d14a082a105820b09112cc004c0d0c14cdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800983000146600200f19800802c4c966002607a00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981e000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c19c00e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c1b000e02d01541a46eb800506c1834800a0ce375c00260d00048348c19800506440410641bac001807c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002608600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b3001306a0038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001306f00380cc06106c1bae00141bc60d80028350dd7000983580120d83069001419d013419c6eb000602501241a860ce0028328dd68009833001403d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130670038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001306c00380b40550691bae00141b060d20028338dd7000983400120d23066001419101041906eb000601f00f419c60c80028310dd6800983180140310641830800a0be305d3754009159800981d000c4c96600200300b8992cc00400601900c80644c96600260c800700e806a0c2375a00300c419060c200282f8c174dd50024566002607200313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f132598009833801c0460208320dd6800c03d0671832000a0c4375a00260c600500c419060c200282f8c174dd50024566002607000313259800800c02e264b30010018064032019132598009832001c03a01a8308dd6800c0310641830800a0be305d375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001306400380740350611bad00180620c83061001417c60ba6ea801201482d105a20b4416882d105a20b4416860b66ea800e0128172012818a01282e8c17800505c182f001401e00f007803a0be305c001416860b8005005802c01600a82e8c168005058182d001400e007003801a0b63058001415860a86ea800e002828a44b30010018a4001133700900119801001182b800a0a89b89480026e21200048888888888888888a600260c26ea8046444b300130110028994c004006009003a40008008888966002007159800801440062a660ce92112657870656374205b5d203d206c6973745f62001641a9159800801454cc19d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc00401260da007306d00299912cc004c01c00a266e0000cdd6982698359baa0028a99834a4811a6578706563742076616c69646174696f6e287265717565737429001641a060d80066eb4c1b000900420d441a9153306349012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164189300c00c980300348c03c00660060069111111919912cc004c12002633001375860dc60d66ea806a60dc60d66ea80fa609a60d66ea80fd222598009980e1bac3071306e37540a66eb8c1c4c1b8dd5180d98371baa001899912cc004c140c1bcdd5000c4c8cc896600260260051598009809800c566002b300130530018a518980900120e08992cc004c04c0062b300198009980d9bac3077307437540b26eb8c15cc1d0dd51810983a1baa0079bac30563074375401133076305630743754604260e86ea801ccc1d93001054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c168c1e4dd5000c4cc896600260c460f66ea8006264b30010018cc0040062b30013375e60c060fa6ea800cc20004c1f4dd5003456600266ebcc17cc1f4dd5000984000983e9baa0038acc004cdc49bad305f307d37540073001375660be60fa6ea8c17cc1f4dd50034dd7184000803cdd7182f803a04c8992cc004c16cc1f4dd5000c4cdc39bad308101307e37540026eb4c180c1f8dd5002452820f63060307d375400307541e907441e907341e9072407d07283941ca0e4841008c1fcc1f0dd5000c1b1079183e983d1baa001305d307a375460b860f46ea800e0dc83b8cc04403800501a41a907441a507422b300198009bac3057307437540b3375860ee60e86ea8022660ec60ac60e86ea8c084c1d0dd50039983b260106457355534472004bd702444b30013370e6020004602401919800806400a4464b3001305a307937540031325980099baf307e307b375400260fc60f66ea8c1f8c1ecdd5002456600266ebcc178c1ecdd5000982e983d9baa307e307b375400913370f3001375660ba60f66ea80066eb8c1f80166eb8c1740150242cc004c16c02626eb4c174c1ecdd500244cdc199b82375a60ba60f66ea8010024029078452820f08a5041e060fa60f46ea80060e883b8cc04401400501a41c10742264b30013055307437540031325980099b87375a60f200266e000140222b30013370e6eb4c1e4c1e8004cdc0002001c56600266e1e60026eacc084c1d8dd502dcdd7182c183b1baa302330763754013488105735553447200407c0071305698009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d2201045553447200407d1533074491246578706563742073757364725f6d696e746564203d3d2073757364725f746f5f6d696e74001641cd15330744914a6578706563742063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202b2073757364725f746f5f6d696e74001641cd153307449140657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202b20746f74616c5f757364725f7374616b6564001641cd3001375860b060ea6ea816a6eb8c068c1d4dd51811183a9baa0089bae305730753754604460ea6ea80226eb4c1e0c1d4dd5000a01683220e4301a307437540111533072491dc6578706563740a2020202076616c69646174655f7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641c51533072491a26578706563740a2020202076616c69646174655f7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020207374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202029001641c51533072491186578706563742073757364725f746f5f6d696e74203e2030001641c4b300130530018802c4cdc199b8200500100241c115330714913d6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c207661756c745f757364725f6265666f7265203e2030001641c11533071491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641c115330714911d657870656374207661756c745f757364725f6265666f7265203e3d2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4b3001300e375a60a260de6ea80062609e6eb4c050c1bcdd5000c52820d8402c603260dc6ea800a0b683591598009823804c660026eb0c1b8c1acdd500d4c1b8c1acdd501f4c134c1acdd501fa444b30013301c375860e260dc6ea814cdd7183898371baa301b306e37540031332259800982818379baa00189919912cc004c04800a2b3001301200189919912cc004c05400a2b300198009980e9bac3079307637540b66eb8c164c1d8dd51811983b1baa0099bac30583076375401533078305830763754604660ec6ea8024cc1e130106457355534472004bd702444b30013370e6028006602801d159800980980146600200700291192cc004c170c1ecdd5000c4cc896600260c860fa6ea8006264b30010018cc0040062b30013375e60c460fe6ea800cc20804c1fcdd5003456600266ebcc184c1fcdd5000984100983f9baa0038acc004cdc49bad3061307f37540073001375660c260fe6ea8c184c1fcdd50034dd7184100803cdd71830803a0508992cc004c170c1fcdd5000c4c96600266e1cdd69842008009bad3063308101375400b13370e6eb4c21004c21404004dd698131840809baa0058a5041f86100026ea8006294107d1831183f9baa00183ba0f883b20f883aa0f883a204283a41d20e907442100461020260fc6ea80060dc83d8c1fcc1f0dd5000982f983e1baa305e307c375400707041e46602602000280e20d883b20d683b115980099b8798009bab3021307637540b7375c60b060ec6ea8c08cc1d8dd5004d220105735553447200407c66e0520000088992cc004c15cc1d8dd5000c4c96600266e1cdd6983d80099b810070048acc004cdc39bad307b307c0013370200c015159800982c4c004dd59811983c1baa05d9bae305a30783754604a60f06ea802e9110455534472004085159800cc004dd6182d983c1baa05d9bac307b307837540193307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b30013370e6028004602c02119800808400a4464b3001305e307d37540031325980099baf308201307f375400261040260fe6ea8c20804c1fcdd5002456600266ebcc188c1fcdd50009830983f9baa308201307f375400913370f3001375660c260fe6ea80066eb8c208040166eb8c18401502819b813370666e08dd69830983f9baa00400e00d375a604860fe6ea8012294107c452820f8308101307e375400307841ec6602a00a00280f20e883c1198009bac305b307837540bb307b307c307c307c307c307c307c307c307c307c307c307837540173307a305a30783754604a60f06ea802ccc1e9301054455534472004bd702444b3001305b0068a51899b8900632330010010042259800800c52000899912cc004cdd7984100983f9baa002006899b8000198009bab3061307f3754005375c61040200b375c60c200a8142200283e0c20004004cc008008c2040400507e20f0454cc1d9241df6578706563740a2020202076616c69646174655f756e7374616b655f6f757470757473280a20202020202074782e6f7574707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e75736472292c0a2020202020207661756c745f757364725f6265666f72652c0a20202020202063697263756c6174696e675f73757364725f6265666f72652c0a2020202029001641d515330764911765787065637420757364725f6d696e746564203d3d2030001641d51533076491536578706563740a2020202063697263756c6174696e675f73757364725f6166746572203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641d515330764913e657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20757364725f746f5f72656c65617365001641d53001375860b460ee6ea81726eb8c070c1dcdd51812183b9baa00a9bae305930773754604860ee6ea802a6eb4c1e8c1dcdd5000a01a83320e8301c3076375401515330744912a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641cd1533074491a76578706563740a2020202076616c69646174655f756e7374616b655f696e70757473280a2020202020206f726465725f696e707574732c0a202020202020756e7374616b655f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a2020202020202873657474696e67732e72656769737472792e757364722c20636f6e7374616e74732e7375736472292c0a2020202029001641cd15330744911a65787065637420757364725f746f5f72656c65617365203e2030001641cc6eb4c1dc004dd6983b983c000994c0040060134bd709010000810100002002222598008014400633001003983d0014c8c96600260306eb4c074c1e0dd5001456600266e24dd6980e983c1baa00200189983d1ba8337006eb4c1ec00c004cc1e8dd419b80375a60f660f80066eb4c074c1e0dd500125eb822a660ec92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641d515330764911565787065637420722e666f7266656974203e3d2030001641d466e0ccdc11bad30593077375400200c00a60f20048019077454cc1c52401236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641c115330714911c657870656374207661756c745f757364725f6265666f7265203e2030001641c06eb4c1d0004dd6983a183a800cc004dd6183998381baa0559bae301530703754603a60e06ea800e6eb8c148c1c0dd5180e98381baa0039bad307330703754002803a0bc836a6002007375860e260dc6ea800a4601c6eb4c144c1bcdd5000a0163019306e375400505b41ac8a5041a083408888c966002609c60da6ea8006264b30013375e60e460de6ea8c1c8c1bcdd5182898379baa001304733071375200a97ae08acc004c13a60026eacc144c1bcdd5182898379baa001802d2210d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018998399ba898009bab30533071375460a660e26ea800e00d4890455534472004068660e660e860e26ea8004cc1cc00d2f5c10624065062831418a0c483b0c1ccc1c0dd5000c18106d182918379baa3051306f3754003153306d4901566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d4914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641ac6600a008002444464b3001304e306d37540031325980099baf3072306f375460e460de6ea8004c11ccc1c4dd4802a5eb822b3001304e98009bab3051306f3754003005a4410d7374616b696e675f7661756c7400406113259800982b18379baa0018992cc004006330010018acc004cdd7980b18389baa0034c103d87a80008998399ba898009bab305330713754007006a4410455534472004068660e660e860e26ea8004cc1cc00d2f5c1153306f490126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641b90624065062831418a0c483b0c1ccc1c0dd5000c54cc1b924012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d001641b460a460de6ea80062a660da92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d2031001641b1153306d49141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c7429001641b060e260dc6ea80062a660d892013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641ac6600a00800244b300133710002900045300103d87a8000899803001000a0ce2264b300100181ec0f6264b300100181f44c96600200303f81fc0fe07f1332259800800c106264b30010018acc004c16c00a264b300130383057375400513259800800c112264b30010018992cc00400608d13259800800c4c9660020030488992cc004006093049824c126264b300130630038acc004c0fcc178dd500344c96600200304b8992cc00400609904c826413226644b300100182744c96600200304f827c13e09f132598009834801c4c966002608c00313259800800c14a264b3001001829c14e0a70538992cc004c1b400e02505441a86eb800506d1835000a0d0306637540171598009822800c56600260cc6ea802e01f051419d051418c8318c190dd500541410661bae00141a460cc0028320dd7000983280120cc3063001418460be6ea801a09482e20948300dd7000a0c63060001417860c0005047823c11e08e8308c17800505c182f001411608b045822a0be305c001416860b06ea800a08682a84c01cc16c02208482c2085042821410905c182c800a0ae375c00260b000482c8c1580050541bac00181ec0f5057182a00120a481d203c81d203c8992cc00400607703b81dc4c8c00cc154010dd6800c0ed055182900120a08992cc00400607303981cc4c8c00cc14c010dd6800c0e50531828001209c81b209881b40da06d0364140609a0028258c13400a06903481a40d104e1825800a092375a0026094005031412c60900028230dd6800982380140b90481822800a0863758002608800502b815a08a304200141006eb0004c10400a0510284108607e00281e8c0ecdd50034099038409903c1bac001812c09503f181e000a074303c002811c08e04702340f4607400281c0c0e800a043021810c08503b181c000a06c3034375400f01f40c4444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c4c9660020030098992cc00400601500a80544c966002608600719800804c6600200900c805a01e805a022805a080375a00300a410c608000281f0c10000a0110088044021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b300130153034375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11800e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c12c00e02901341206eb800504b1824000a08c375c002608e0048240c1140050434039012403901440390431bac001806c0350461821800a0823043002805c02e01700b4110608200281f8dd680098200014021041181f000a078375a002607a00500540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c880cc06603301940cc664464b30013010302f375400313030323376060680026068606a0026eb0c0ccc0c0dd5000c54cc0b924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b4646600200200644b30010018a60103d87a80008992cc004cdd7981880099ba548010cc0d0c028cc0d0dd480225eb812f5c11300c33034374e66068606200266068606400297ae04bd7044cc00c00cc0d800902f181a000a06437566060606260626062606260626062606260626062605a6ea8048dd7181818169baa0019800912cc004006297ae089981818169818800998010011819000a05e9112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003205891111919800800802912cc004006200b13259800800c4cc010c0d800801a26600a606c0046600600600281a0c0d80050334dd6180718161baa01148888c8c8c8cc88c966002003159800980b181a9baa0018992cc00400604713259800800c09204902481244cc89660020030268992cc0040062b3001303f0028acc004c06cc0e8dd5000c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c96600200303b81dc4cc896600200303d8992cc0040062b300130560028cc00405a330010148cc00404a330010108cc00403a3300100c8cc00402a330010088acc004c0c8c144dd500344c96600200303f8992cc004006081040820410226644b300100182144c966002003043821c10e0871332259800800c116264b3001001823411a08d046899912cc00400609113259800800c126093049824c4c96600260c400713303f00f225980080146600201f102b826206c8992cc0040062b300130413060375400313259800800c13a264b3001001827c13e26644b3001001828c4c966002003052829414a26644b300100182a44c96600200305582ac156264b3001306e0038acc00401e0ad13259800800c15e0af05782bc4cc89660020030598992cc0040060b505a82d416a264b30013073003898081839808c16d0701bae00141cc60e00028370dd7000983780420e0306d00741ad05641ac6eb40060aa8370c1ac0050691bad001306a00282920d6306800141986eb0004c19c00a09f04f41a060ca0028318c184dd5000c13505e413609b04d826a0cc3063002418504a417c6eb8005062182f800a0ba375c00260bc00482f8c17000505a1bae001305b002417060b200282b8dd7000982c00120b23056001415060a46ea801a07c827a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c813a07c829a07d03e81f40f9057182a000a0a4375800260a600503b81da0a83051001413c60a200503981cc0e60728290c13c00504d182780140de06f03781ba0a0304d001412c609a00503581ac0d606a8270c12c005049182580140ce067033819a0983049001411c6092005031818c0c60628250c11c005045182380140be05f02f817a0903045001410c608a00502d816c0b605a8230c10c005041182180140ae05702b815a088304100140fc6082005029814c0a60528210c0fc00503d181d9baa001813a070813a078813c09e04f0274100607a00281d8dd7000981e001207a303a00140e0606c6ea8006044819a045022811408903b29981999b964912467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40c522010013259800980b181a9baa00189929981a99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980f181b9baa0018992cc0040062b300130193038375400313259800800c0d6264b300100181b40da06d036899912cc0040060711325980098210014401a07281f8c10000503e1bae001303f0024100607a00281d8c0e4dd5000c0d103640d206903481a207c303b30383754003153303649013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640d46034606e6ea8c064c0dcdd5000981c981b1baa0018a9981a24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640cc646600200200e44b30010018a60103d87a80008992cc004c8cc004004c014dd5980d981c9baa301b3039375400444b30010018a508acc004cdc79bae303d0010368a51899801001181f000a06e40ed130123303a0014bd7044cc00c00cc0f0009035181d000a070300100130070072223259800801c4c8c8cc88cc024008cdc5244101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c20765980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81a90351bac3038002375a606c0026466ec0dd4181b0009ba73037001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6076003337149101023a200098008054c0f000600a805100a181f00144ca6002015303b00199b8a489023a200098008054c0f0006600e66008008004805100a181f0012078303e00140ec66e29220102207d0000340e06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920703758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e40e866e2ccdc0000acc004cdc4000a4029148182290372074004401866e0c00520203370c002901019b8e00400240dc6eb800d03b1b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340c88190c00c00c444b3001300d302c375400713259800800c00a264b30010018992cc00400600913259800800c566002606a00519800801c4c966002602400313259800800c01e264b30010018acc004c0e000a264b300130150018992cc00400601513259800800c566002607600519800800c032016807201681c201700b805c02d03c181c800a06e30353754005159800980a000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c9660026084007013809207e375a0030114108607e00281e8dd6800981f001403903f181e000a074375a002607600500b40f0607200281b8c0d4dd5001402503220643033375400300840d5008804402201081c8c0d800503418191baa0028acc004c0440062b3001303237540050078032066803205e40bc60606ea800600a804200a819200b005802c0150361819800a0623033002801c00e00700340d060620028178c0b4dd5001c00502a111194c004006009003400444464b300130110018992cc00400600d13259800800c01e00f007803c4c9660026070007005804206a375c00281c0c0d400503318189baa0038acc004c040006264b300100180344c966002003007803c4c96600260700071330150012259800801401e264b30010018cc00402a00313002303b003402900b805c02e01681e0c0e400903740210351bac001803c01d038181a800a06630313754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0e000e26602a00244b3001002803c4c966002003198008054006260046076006805201700b805c02d03c181c801206e804206a3758003007803a070303500140cc60626ea800e2b3001300f0018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981d801c4cc060004896600200500a8992cc0040063300100d800c4c008c0f800d00d403a01d00e807207e303c00240e900b40e06eb000601500a40ec607000281b0dd6800981b801401d038181a800a066303137540071598009807000c4c9660020030068992cc00400600f007803c4c9660026070007005804206a375a00300740e0606a0028198c0c4dd5001c566002601a00313259800800c01a264b3001001803c01e00f13259800981c001c01601081a8dd6800c01d038181a800a066303137540071598009806000c4c9660020030068992cc00400600f007803c01e264b30013038003802c0210351bae00140e0606a0028198c0c4dd5001c01502e205c40b8817102e205c40b8605e6ea8008888c966002601a00313259800800c00e264b300100180240120090048992cc004c0d000e00d00540c46eb80050341818800a05e302d37540091598009806000c4c9660020030038992cc0040060090048024012264b3001303400380340150311bae00140d060620028178c0b4dd5002400902a2054302b37540068b2032180d800980b1baa01c8a4d15330144911856616c696461746f722072657475726e65642066616c73650013656404c1" + : + "591d0b010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400930090024888966002600460126ea800e33001300d300a37540072300e300f300f001918071807800c88c8cc00400400c88cc00c004c00800a6e1d20009b874800a6e1d20069b87480226e1d200a9b87480326e9520009ba5480092222222222229800911192cc004c03000626464b3001302000280245901d1bae301e001301a37540071598009805800c4c966002603e00313300e3758603c00244b3001002802c6600200f3020002898009810801200e407916407060346ea800e2b300130120018992cc004c07c00626601c6eb0c07800489660020050058cc00401e6040005130013021002401c80f22c80e0c068dd5001c56600260140031323322598009810800c4cc040dd61810000912cc00400a00f19800804cc08800a260026046004804902045901e1bad301e001301f001301a37540071598009804800c4c8c96600260400050048b203a375a603c00260346ea800e2b30013008001899192cc004c08000a0091640746eb4c078004c068dd5001c566002600e0031323259800981000140122c80e8dd7180f000980d1baa0038b2030406080c10182030406080c0c060dd5001488c96600260160031323259800980f80140122c80e0dd7180e800980c9baa0038acc004c02800626464b3001301f00280245901c1bae301d0013019375400716405c80b8c05cdd5001489660026014602e6ea800a2646464b3001301f002899192cc004c03c0062b3001301d37540050068b203c8acc004c03800626464b300130230028044590201bad3021001301d3754005159800980a800c566002603a6ea800a00d16407916406c80d901b180d9baa001301e0038b20383259800980d800c56600266e252004301a0018b44c030c06800501945901c1baa301d001301d0013018375400516405922598009805180b9baa0028991919912cc004c08000e00b1640746eb4c074004dd7180e801180e800980c1baa0028b202c91192cc004c02c00626464b3001301f00280245901c1bad301d001301937540071598009805000c56600260326ea800e00516406916405c80b8c05cdd500124444466446645300133223259800980a18109baa001898111919bb03026001302630270013758604a60446ea80062c8100c8cc00400400c896600200314c103d87a80008992cc004cdd7981180099ba548010cc098c03ccc098dd480225eb812f5c11301033026374e6604c60460026604c604800297ae04bd7044cc00c00cc0a00090221813000a04837566044604660466046604660466046604660466046603e6ea8058dd71811180f9baa002912cc004c04cc080dd500144c8c8c8ca60026eb4c0a00066eb4c0a000e60500049112cc004c0b0012266014605600e26601e0020111640a43028001302700130260013021375400516407d2259800980998101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc0440044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80f922259800980a18109baa003899191919912cc004c0ac00e264b3001301a30273754003132323232323298009818800cdd61818802cdd698188024dd69818801cc0c40092222259800981b80344cc098dd6181b005912cc00400a26605000c44b300100289980e80289980e8048992cc004c0a8c0dcdd500944c8c8c966002607e005132332259800981800144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038acc004c0bc00a264b300130430018998191bac304200122598008014012266040608800426002608a00482122c8200c0f8dd5001c566002606c005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b3001302e0028992cc004c10c0062660646eb0c1080048966002005004899810182200109800982280120848b2080303e3754007159800981680144c96600260860031330323758608400244b300100280244cc084c1100084c004c114009042459040181f1baa0038acc004c0b000a264b300130430018998191bac304200122598008014012266042608800426002608a00482122c8200c0f8dd5001c5660026056005132598009821800c4cc0c8dd61821000912cc00400a00913302030440021300130450024109164100607c6ea800e2b30013370e900700144c96600260860031330323758608400244b300100280244cc080c1100084c004c114009042459040181f1baa0038b207840f081e103c207840f081e103c181d9baa001132598009817800c4c966002608400313302530410010078b207e303d37540071598009817000c4c9660026084003132598009818981f1baa00189919192cc004c11800a266054608a00626605400201716410c60880026088002607e6ea80062c81e8c1040062c81f8c0f4dd5001c5903b2076303b3754004607c0071640f0607a002607a00260706ea804a2c81b04cc0a8048896600200519800981e181c9baa302d303937540352298009919800800801912cc00400629422b30013375e6080607a6ea8c100c0f4dd51818981e9baa304000130283303f375200697ae08a518998010011820800a07640f94a14a281ca4607a607c607c607c607c607c607c607c607c0032302b30393754607a646600200200444b30010018a5eb8503d87a80008101800044c8cc896600330013030303e375460840074a14a281ea26608330014a14c103d87a8000a60103d879800040f4660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f904244cc106600294298103d87a8000a60103d879800040f4660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f4660826e9ccc104dd400080125eb8103d207a3758608060820026eb4c100008cc008008c10000503d48c0f4c0f8c0f8c0f8c0f8006444b30010028a6103d87a80008acc004c0b8006260506607c607e00497ae08cc00400e6080005337000029000a00640e881ea4446466446600400400244b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803208089980280298230022080375c607e0026eb4c100004c108005040191919800800803112cc00400600713233225980099b910090028acc004cdc78048014400600c820a26600a00a608e0088208dd718200009bab304100130430014104297adef6c6014800244b3001302d303a375400513232598009820801400e2c81f0dd6981f800981d9baa0028b2072911919800800801912cc004006297ae0899912cc004cdd79821181f9baa3042303f37546066607e6ea8008c0a8cc104dd4802a5eb822660820046600800800313300400400140f46080002608200281f24607a607c607c607c607c607c0032303d303e303e303e001912cc0040062900044cdc02400466004004607e00281e2444653001001802400d0011112cc00400a2b30010018a518a504101159800800c52845660026600860840046eb4c1080063300100398218014c10c0050034528207a4100820244b3001302d303a375400513232323298009821000cc10800e60840049112cc004c11801226604e608a00e266048004264b3001303500189919912cc004c128006264646644b3001304e00380845904b1bae304b001375c609600460960026eb0c1240062c8238dd69823800982400098219baa0028acc004c0d00062646644b3001304a0018991919912cc004c13800e02116412c6eb8c12c004dd7182580118258009bac30490018b208e375a608e002609000260866ea800a2b3001303b001899194c004dd69824000cc1240066eb4c12000922259800982600144c8c8cc896600260a00070128b209a375c609a0026eb8c134008c134004dd618258014590490c120004c10cdd5001456600260660031323322598009825000c4c8c8cc8966002609c0070108b2096375c60960026eb8c12c008c12c004dd61824800c590471bad30470013048001304337540051598009819000c4c8c966002609200500b8b208c375a608e00260866ea800a2b300130310018991919912cc004c12c00e01b1641206eb4c120004dd69824001182400098219baa0028acc004c0c000626464b30013049002805c590461bad30470013043375400515980099b874803800626464b30013049002805c590461bad304700130433754005164104820904120824104820904120823041375400316410c304200130410013040001303b37540051640e52259800800c52000899b8048008cc008008c0fc00503c4dc4a40013710900024444444444444444530013049375402322259800980880144ca6002003004801d200040044444b30010038acc00400a2003164149198008024c15400e60aa005332259800980380144cdc00019bad30473053375400516414460a80066eb4c15000900420a48b209698060064c01801a4601e00330030034888888c8cc89660026084013198009bac30563053375403530563053375406930473053375406c9112cc004cc070dd6182c982b1baa04d375c60b260ac6ea8c06cc158dd5000c4cc8966002609460ae6ea80062646644b300130130028acc004c04c0062b3001598009826800c528c4c04800905944c9660026026003159800cc004cc06cdd6182f982e1baa053375c60a260b86ea8c084c170dd5003cdd61828182e1baa0089982f1828182e1baa3021305c375400e660bc9801054455534472004bd702444b30013370e60240066024019159800980880146600200700291192cc004c150c184dd5000c4cc896600260b860c66ea80062646603e0022b30013375e60b460ca6ea800cc1a0c194dd5003456600266ebcc164c194dd5000983418329baa0038acc004cdc49bad3059306537540073001375660b260ca6ea8c164c194dd50034dd71834003cdd7182c803a04c8992cc004c154c194dd5000c4cdc39bad3069306637540026eb4c168c198dd5002452820c8305a3065375400316418d16418d16418c60ce60c86ea80062c8310c194c188dd5000982b98311baa3056306237540071641806602201c00280d22c82ea2c82e9159800cc004dd61828982e1baa0539bac305f305c37540113305e3050305c3754604260b86ea801ccc17930106457355534472004bd702444b30013370e6020004602401919800806400a4464b30013054306137540031325980099baf30663063375400260cc60c66ea8c198c18cdd5002456600266ebcc160c18cdd5000982b98319baa30663063375400913370f3001375660ae60c66ea80066eb8c1980166eb8c15c0150242cc004c15402626eb4c15cc18cdd500244cdc199b82375a60ae60c66ea8010024029061452820c28a50418460ca60c46ea80062c8300cc04401400501a45905d2264b3001304f305c37540031325980099b87375a60c200266e000140222b30013370e6eb4c184c188004cdc0002001c56600266e1e60026eacc084c178dd502acdd71829182f1baa3023305e3754013488105735553447200407c0071305098009bab3021305e37540ab375c60a460bc6ea8c08cc178dd5004d2201045553447200407d1641711641711641713001375860a460ba6ea81526eb8c068c174dd51811182e9baa0089bae3051305d3754604460ba6ea80226eb4c180c174dd5000a0168b20b6301a305c3754011164169164169164168b3001304d0018802c4cdc199b8200500100241651641651641651641646eb4c170004dd6982e182e800cc004dd6182d982c1baa04f9bae301530583754603a60b06ea800e6eb8c130c160dd5180e982c1baa0039bad305b30583754002803a2c82b26002007375860b260ac6ea800a4b3001300e375a609660ae6ea8006260926eb4c050c15cdd5000c52820aa402c603260ac6ea800a2c82a11598009820804c660026eb0c158c14cdd500d4c158c14cdd501a4c11cc14cdd501b2444b30013301c375860b260ac6ea8134dd7182c982b1baa301b3056375400313322598009825182b9baa00189919912cc004c04800a2b30013012001899192cc004c0500062b300198009980e1bac3060305d37540a86eb8c148c174dd51811182e9baa0089bac3051305d37540133305f3051305d3754604460ba6ea8020cc17d300106457355534472004bd702444b30013370e6026006602601b159800980900146600200700291192cc004c154c188dd5000c4cc896600260ba60c86ea8006264660400022b30013375e60b660cc6ea800cc1a4c198dd5003456600266ebcc168c198dd5000983498331baa0038acc004cdc49bad305a306637540073001375660b460cc6ea8c168c198dd50034dd71834803cdd7182d003a04e8992cc004c154c198dd5000c4c96600266e1cdd698358009bad305c3068375400b13370e6eb4c1acc1b0004dd6981298341baa0058a50419860ce6ea80062941065182d98331baa0018b20c88b20c88b20c830683065375400316418c60cc60c66ea8004c160c18cdd5182b98319baa0038b20c23301200f001406d1641791641788acc004cdc3cc004dd59810182e9baa0549bae3051305d3754604460ba6ea8022910105735553447200407866e0520000078992cc004c140c174dd5000c4c96600266e1cdd6983100099b810060038acc004cdc39bad306230630013370200a0131598009828cc004dd59811182f9baa0569bae3053305f3754604860be6ea802a9110455534472004081159800cc004dd6182a182f9baa0569bac3062305f3754017330613053305f3754604860be6ea8028cc185301054455534472004bd702444b30013370e6026004602a01f19800807c00a4464b30013057306437540031325980099baf30693066375400260d260cc6ea8c1a4c198dd5002456600266ebcc16cc198dd5000982d18331baa30693066375400913370f3001375660b460cc6ea80066eb8c1a40166eb8c16801502719b813370666e08dd6982d18331baa00400d00c375a604660cc6ea80122941064452820c830683065375400316418c6602800a00280ea2c8301198009bac3054305f37540ad30623063306330633063306330633063306330633063305f3754015330613053305f3754604860be6ea8028cc185301054455534472004bd704dd69831183180224444b300130550018a51899b8900132330010010052259800800c52000899912cc004cdd7983518339baa002007899b8000198009bab305b30673754005375c60d400d375c60b600c814220028328c1a0004cc008008c1a400506620c245905d45905d45905d45905d4c004dd61829982f1baa0559bae301b305e3754604660bc6ea80266eb8c148c178dd51811982f1baa0099bad3061305e375400280622c82e0c06cc174dd5004c5905b45905b45905b1bad305f001329800800c02697ae1101000081010000200222259800801440063300100398310014c8c96600260306eb4c074c180dd5001456600266e24dd6980e98301baa0020018998311ba8337006eb4c18c00c004cc188dd419b80375a60c660c80066eb4c074c180dd500125eb822c82f22c82f0cdc199b82375a60a660be6ea8004018014c18400900320be8b20b28b20b2375a60b80026eb4c170c17400660026eb0c16cc160dd5027cdd7180a982c1baa301d30583754007375c609860b06ea8c074c160dd5001cdd6982d982c1baa001401d16415930010039bac3059305637540052300e375a609660ae6ea800500b180c982b1baa0028b20a8452820a24144444464b30013048305537540031325980099baf305a3057375460b460ae6ea8c12cc15cdd500098211982c9ba90054bd704566002609130013756609660ae6ea8c12cc15cdd5000c01691010d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c80089982d9ba898009bab304d30593754609a60b26ea800e00d48810455534472004068660b660b860b26ea8004cc16c00d2f5c060b660b06ea80062c82b0c130c15cdd51825982b9baa0018b20aa8b20aa3059305637540031641506600a008002444464b30013048305537540031325980099baf305a3057375460b460ae6ea8004c108cc164dd4802a5eb822b3001304898009bab304b30573754003005a450d7374616b696e675f7661756c74004061132598009828182b9baa0018991980c8008acc004cdd7980b182c9baa0034c0103d87a800089982d9ba898009bab304d30593754007006a4410455534472004068660b660b860b26ea8004cc16c00d2f5c116415c60b660b06ea80062c82b0c130c15cdd5000c59055459055182c982b1baa0018b20a833005004001225980099b8800148002298103d87a8000899803001000a0a022646644b30013040001899912cc004c0c0c0f4dd500144c8c8c8cc8966002608e00713259800981b18219baa0018991919912cc004c13000e264b3001303b001899192cc004c13c00a01d1641306eb8c134004c124dd5003c566002607400315980098249baa00780645904a459047208e3047375400d1641246eb8c124004dd71824801182480098221baa0018b208430460058b2088375c6088002608800460880026086002607c6ea800a2c81e0c0fc0044c010c1000162c81e8dd7181e800981f0009bac303c00240e91323002303c003375a607400481c2264600460740066eb4c0e00090364590340c0c4004c0c0004c0bc004c0b8004c0b4004c0a0dd5000c590261815002c590281bac302800130280023028001302700130223754007164080323232598009809180f9baa00189919912cc004c09c006264b30013016302337540031323232323232323232323298009819000cc0c802a606401330320089819003cc0c801a606400b30320049819001cdd6181900124444444444b3001303d00b89980f181e00a89980f00489980f00409980f00389980f00309980f00289980f00209980f0018acc004c0acc0e0dd500144c8c8c8ca60026eb8c1000066eb8c1000126eb8c10000e6eb8c1000092222598009822802c4cc0d0024896600200513302701410248992cc004c0d8c10cdd5000c4c8c8c8cc8966002609a007132323322598009828801c4c02cc1440322c8270dd718270009bae304e002304e0013758609800b1641286eb4c128004dd698250011825000982480098221baa0018b2084304600241111641083040001303f001303e001303937540051640dd1640e8303200130310013030001302f001302e001302d001302c001302b001302a001302900130243754003164088604c0031640906eb8c090004c094004c080dd5000c5901e192cc004c048c07cdd5000c4c966002603260406ea8006264b3001301430213754003132323322598009815001c40162c8138c09c004dd71813801181380098111baa0018b204030243021375400316407c602a60406ea8c050c080dd5181198101baa0018b203c32330010013758602860406ea805c896600200314c0103d87a80008992cc004c8cc004004c014dd5980b98119baa30173023375400444b30010018a508acc004cdc79bae30270010218a518998010011814000a04440951300e330240014bd7044cc00c00cc0980090201812000a04430010012259800800c52f5c1133021301e3022001330020023023001408044b30013011301e3754005132323259800981300144cc018c09400c4c966002602a00315980098119baa002802c590244566002602800313232598009814801401e2c8130dd7181380098119baa0028acc004c06c00626464b30013029002803c59026181380098119baa0028b204240848108c084dd5000c5902318120009812000980f9baa0028b203a300500522598009807980e1baa00289919192cc004c09000a2660126046006264b300130130018992cc004c09800626464b300130160018992cc004c0a400626601c605000201316409860486ea800a2b3001301500189919194c004dd69815000cdd69815001cdd698150012444b3001302e00480745902b0c0a8004c0a4004c090dd5001459022204430223754002604a00316408c60426ea800a2b300130120018acc004c084dd500140162c81122c80f901f180f9baa0018b204230220013022001301d375400516406c4590080c024004c010dd5004c52689b2b20041", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProxyNftProxyNftMint { + public Script: Script + constructor( + utxoRef: OutputReference, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" + : + "5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + ]), + [ + utxoRef, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1ProxyNftProxyNftElse { + public Script: Script + constructor( + utxoRef: OutputReference, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" + : + "5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + ]), + [ + utxoRef, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyMint { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : + "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1RealfiMintingPolicyRealfiMintingPolicyElse { + public Script: Script + constructor( + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : + "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", + Type.Tuple([ + PolicyId, + ]), + [ + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1StakingVaultStakingVaultMint { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601" + : + "5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1StakingVaultStakingVaultSpend { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601" + : + "5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1StakingVaultStakingVaultElse { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601" + : + "5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1TreasuryTreasuryMint { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : + "5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1TreasuryTreasurySpend { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : + "5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} +export class V1_0Rc1TreasuryTreasuryElse { + public Script: Script + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? + "5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : + "5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object({ + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, { ctor: 0n }), + PolicyId, + ]), + [ + utxoRef, + proxyPolicyId, + ], + ), + "PlutusV3" + ); + } +} \ No newline at end of file diff --git a/modules/realfi-partner-sdk/src/generated-types/v1_1_rc1/index.ts b/modules/realfi-partner-sdk/src/generated-types/v1_1_rc1/index.ts new file mode 100644 index 0000000000..ad733059ee --- /dev/null +++ b/modules/realfi-partner-sdk/src/generated-types/v1_1_rc1/index.ts @@ -0,0 +1,1559 @@ +/* eslint-disable */ +// @ts-nocheck +import { applyParamsToScript, cborToScript } from "@blaze-cardano/uplc"; +import { type Script } from "@blaze-cardano/core"; +import { Type, Exact, TPlutusData } from "@blaze-cardano/data"; +type Data = Exact; +type Int = bigint; +type ByteArray = string; +const PolicyId = Type.String(); +const ScriptHash = Type.String(); +type OutputReference = { output_index: bigint; transaction_id: string }; + +const Contracts = Type.Module({ + Bool: Type.Boolean(), + Tuple_VerificationKey_COSESign1: Type.Tuple([ + Type.String(), + Type.Ref("COSESign1"), + ]), + GovernanceConfig: Type.Object( + { + logic_change: Type.Ref("MultisigScript"), + permission_change: Type.Ref("MultisigScript"), + config_change: Type.Ref("MultisigScript"), + shutdown: Type.Ref("MultisigScript"), + restore: Type.Ref("MultisigScript"), + migrate: Type.Ref("MultisigScript"), + }, + { ctor: 0n }, + ), + SettingsAuthPayload: Type.Object( + { + change: Type.Ref("SettingsRedeemer"), + destination: Type.String(), + datum: Type.Ref("ProxyDatum"), + nonce: Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + }, + { ctor: 0n }, + ), + SettingsRedeemer: Type.Union([ + Type.Literal("ChangeLogic", { ctor: 0n }), + Type.Literal("ChangePermissions", { ctor: 1n }), + Type.Literal("ChangeConfig", { ctor: 2n }), + Type.Literal("Shutdown", { ctor: 3n }), + Type.Literal("Restore", { ctor: 4n }), + Type.Literal("Migrate", { ctor: 5n }), + ]), + SettingsSignedRedeemer: Type.Object( + { + change: Type.Ref("SettingsRedeemer"), + signatures: Type.Array(Type.Ref("Tuple_VerificationKey_COSESign1")), + }, + { ctor: 0n }, + ), + COSESign1: Type.Object( + { + headers: Type.Ref("Headers"), + payload: Type.Optional(Type.String()), + signature: Type.String(), + }, + { ctor: 0n }, + ), + HeaderMap: Type.String(), + Headers: Type.Object( + { + protected: Type.Ref("HeaderMap"), + unprotected: Type.Ref("HeaderMap"), + }, + { ctor: 0n }, + ), + MultisigScript: Type.Union([ + Type.Object({ + Signature: Type.Object( + { + key_hash: Type.String(), + }, + { ctor: 0n }, + ), + }), + Type.Object({ + AllOf: Type.Object( + { + scripts: Type.Array(Type.Ref("MultisigScript")), + }, + { ctor: 1n }, + ), + }), + Type.Object({ + AnyOf: Type.Object( + { + scripts: Type.Array(Type.Ref("MultisigScript")), + }, + { ctor: 2n }, + ), + }), + Type.Object({ + AtLeast: Type.Object( + { + required: Type.BigInt(), + scripts: Type.Array(Type.Ref("MultisigScript")), + }, + { ctor: 3n }, + ), + }), + Type.Object({ + Before: Type.Object( + { + time: Type.BigInt(), + }, + { ctor: 4n }, + ), + }), + Type.Object({ + After: Type.Object( + { + time: Type.BigInt(), + }, + { ctor: 5n }, + ), + }), + Type.Object({ + Script: Type.Object( + { + script_hash: Type.String(), + }, + { ctor: 6n }, + ), + }), + ]), + ProxyDatum: Type.Object( + { + logic: Type.String(), + settings: TPlutusData, + }, + { ctor: 0n }, + ), + Denominator: Type.BigInt(), + DistributionOracleDatum: Type.Object( + { + message: Type.Ref("SignedDistributionOracleMessage"), + staked_usdr: Type.BigInt(), + staking_yield: Type.BigInt(), + }, + { ctor: 0n }, + ), + DistributionOracleMessage: Type.Object( + { + input: Type.Ref("YieldDistributionInput"), + hurdle: Type.Ref("Ratio"), + floor: Type.Ref("Ratio"), + timestamp: Type.Ref("Slot"), + base: Type.BigInt(), + r_max: Type.BigInt(), + }, + { ctor: 0n }, + ), + Numerator: Type.BigInt(), + ProtocolOrchestratorRedeemerV1: Type.Union([ + Type.Object({ + ExecuteOrders: Type.Tuple( + [Type.Ref("SignedRedeemer_v1_1_ExtraProtocolRedeemerV1")], + { ctor: 0n }, + ), + }), + Type.Object({ + PublishYieldOracle: Type.Tuple( + [Type.Ref("SignedDistributionOracleMessage")], + { ctor: 1n }, + ), + }), + ]), + Ratio: Type.Tuple([Type.Ref("Numerator"), Type.Ref("Denominator")]), + SignedDistributionOracleMessage: Type.Object( + { + payload: Type.Ref( + "SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage", + ), + signatures: Type.Array(Type.Ref("Tuple_VerificationKey_COSESign1")), + }, + { ctor: 0n }, + ), + Slot: Type.BigInt(), + YieldDistributionInput: Type.Object( + { + net_distributable_income: Type.BigInt(), + staked_usdr: Type.BigInt(), + }, + { ctor: 0n }, + ), + Asset: Type.Tuple([Type.String(), Type.String()]), + Destination: Type.Object( + { + address: Type.Object( + { + payment_credential: Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }), + }), + Type.Object({ + Script: Type.Tuple([Type.String()], { ctor: 1n }), + }), + ]), + stake_credential: Type.Optional( + Type.Union([ + Type.Object({ + Inline: Type.Tuple( + [ + Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { + ctor: 0n, + }), + }), + Type.Object({ + Script: Type.Tuple([Type.String()], { ctor: 1n }), + }), + ]), + ], + { ctor: 0n }, + ), + }), + Type.Object({ + Pointer: Type.Object( + { + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt(), + }, + { ctor: 1n }, + ), + }), + ]), + ), + }, + { ctor: 0n }, + ), + datum: Type.Union([ + Type.Literal("NoDatum", { ctor: 0n }), + Type.Object({ + DatumHash: Type.Tuple([Type.String()], { ctor: 1n }), + }), + Type.Object({ + InlineDatum: Type.Tuple([TPlutusData], { ctor: 2n }), + }), + ]), + }, + { ctor: 0n }, + ), + DirectRequestV1: Type.Object( + { + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + origin: Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + }, + { ctor: 0n }, + ), + ExchangeRequestV1: Type.Object( + { + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + min_received: Type.BigInt(), + origin: Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 0n }, + ), + ExtraProtocolRedeemerV1: Type.Object( + { + request_to_outputs: Type.Array(Type.BigInt()), + input_to_requests: Type.Array(Type.BigInt()), + treasury_input_idx: Type.BigInt(), + treasury_output_idx: Type.BigInt(), + vault_input_idx: Type.Optional(Type.BigInt()), + vault_output_idx: Type.Optional(Type.BigInt()), + }, + { ctor: 0n }, + ), + Nonce: Type.Union([ + Type.Object({ + UTxO: Type.Tuple( + [ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + ], + { ctor: 0n }, + ), + }), + Type.Object({ + Validity: Type.Tuple( + [ + Type.Object( + { + lower_bound: Type.Object( + { + bound_type: Type.Union([ + Type.Literal("NegativeInfinity", { ctor: 0n }), + Type.Object({ + Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }), + }), + Type.Literal("PositiveInfinity", { ctor: 2n }), + ]), + is_inclusive: Type.Ref("Bool"), + }, + { ctor: 0n }, + ), + upper_bound: Type.Object( + { + bound_type: Type.Union([ + Type.Literal("NegativeInfinity", { ctor: 0n }), + Type.Object({ + Finite: Type.Tuple([Type.BigInt()], { ctor: 1n }), + }), + Type.Literal("PositiveInfinity", { ctor: 2n }), + ]), + is_inclusive: Type.Ref("Bool"), + }, + { ctor: 0n }, + ), + }, + { ctor: 0n }, + ), + ], + { ctor: 1n }, + ), + }), + ]), + OrderActionV1: Type.Union([ + Type.Object({ + OMint: Type.Object( + { + amount: Type.BigInt(), + min_received: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 0n }, + ), + }), + Type.Object({ + ORedeem: Type.Object( + { + amount: Type.BigInt(), + min_received: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 1n }, + ), + }), + Type.Object({ + ODeposit: Type.Object( + { + principal: Type.BigInt(), + yield: Type.BigInt(), + diffusion_end: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 2n }, + ), + }), + Type.Object({ + OWithdraw: Type.Object( + { + amount: Type.BigInt(), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 3n }, + ), + }), + Type.Object({ + OStake: Type.Object( + { + amount: Type.BigInt(), + min_received: Type.BigInt(), + }, + { ctor: 4n }, + ), + }), + Type.Object({ + OUnstake: Type.Object( + { + amount: Type.BigInt(), + min_received: Type.BigInt(), + forfeit: Type.BigInt(), + }, + { ctor: 5n }, + ), + }), + Type.Object({ + ODirectMint: Type.Object( + { + amount: Type.BigInt(), + }, + { ctor: 6n }, + ), + }), + Type.Object({ + ODirectBurn: Type.Object( + { + amount: Type.BigInt(), + }, + { ctor: 7n }, + ), + }), + ]), + OrderDatumV1: Type.Object( + { + owner: Type.Ref("MultisigScript"), + destination: Type.Ref("Destination"), + action: Type.Ref("OrderActionV1"), + data: TPlutusData, + }, + { ctor: 0n }, + ), + OrderRedeemerV1: Type.Union([ + Type.Literal("Execute", { ctor: 0n }), + Type.Literal("Cancel", { ctor: 1n }), + Type.Literal("Invalidated", { ctor: 2n }), + ]), + Permissions: Type.Object( + { + mint: Type.Ref("MultisigScript"), + burn: Type.Ref("MultisigScript"), + withdraw: Type.Ref("MultisigScript"), + deposit: Type.Ref("MultisigScript"), + stake: Type.Ref("MultisigScript"), + unstake: Type.Ref("MultisigScript"), + direct_mint: Type.Ref("MultisigScript"), + direct_burn: Type.Ref("MultisigScript"), + yield_oracle: Type.Ref("MultisigScript"), + migrate: Type.Ref("MultisigScript"), + }, + { ctor: 0n }, + ), + ProtocolConfig: Type.Object( + { + reserve_assets: Type.Array(Type.Ref("ReserveAsset")), + unstaked_yield_pot: Type.Object( + { + payment_credential: Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { ctor: 0n }), + }), + Type.Object({ + Script: Type.Tuple([Type.String()], { ctor: 1n }), + }), + ]), + stake_credential: Type.Optional( + Type.Union([ + Type.Object({ + Inline: Type.Tuple( + [ + Type.Union([ + Type.Object({ + VerificationKey: Type.Tuple([Type.String()], { + ctor: 0n, + }), + }), + Type.Object({ + Script: Type.Tuple([Type.String()], { ctor: 1n }), + }), + ]), + ], + { ctor: 0n }, + ), + }), + Type.Object({ + Pointer: Type.Object( + { + slot_number: Type.BigInt(), + transaction_index: Type.BigInt(), + certificate_index: Type.BigInt(), + }, + { ctor: 1n }, + ), + }), + ]), + ), + }, + { ctor: 0n }, + ), + }, + { ctor: 0n }, + ), + ProtocolRedeemerV1: Type.Union([ + Type.Object({ + Mint: Type.Object( + { + requests: Type.Array(Type.Ref("ExchangeRequestV1")), + }, + { ctor: 0n }, + ), + }), + Type.Object({ + Burn: Type.Object( + { + requests: Type.Array(Type.Ref("ExchangeRequestV1")), + }, + { ctor: 1n }, + ), + }), + Type.Object({ + Withdraw: Type.Object( + { + requests: Type.Array(Type.Ref("TreasuryRequestV1")), + }, + { ctor: 2n }, + ), + }), + Type.Object({ + Deposit: Type.Object( + { + requests: Type.Array(Type.Ref("TreasuryRequestV1")), + alpha: Type.Ref("YieldSplitAlpha"), + }, + { ctor: 3n }, + ), + }), + Type.Object({ + Stake: Type.Object( + { + requests: Type.Array(Type.Ref("StakeRequestV1")), + }, + { ctor: 4n }, + ), + }), + Type.Object({ + Unstake: Type.Object( + { + requests: Type.Array(Type.Ref("StakeRequestV1")), + }, + { ctor: 5n }, + ), + }), + Type.Object({ + DirectMint: Type.Object( + { + requests: Type.Array(Type.Ref("DirectRequestV1")), + }, + { ctor: 6n }, + ), + }), + Type.Object({ + DirectBurn: Type.Object( + { + requests: Type.Array(Type.Ref("DirectRequestV1")), + }, + { ctor: 7n }, + ), + }), + Type.Literal("MigrateState", { ctor: 8n }), + ]), + ProxyDatumV1: Type.Object( + { + logic: Type.String(), + settings: Type.Ref("SettingsV1"), + }, + { ctor: 0n }, + ), + RegistryV1: Type.Object( + { + treasury: Type.String(), + usdr: Type.String(), + order: Type.String(), + staking_vault: Type.String(), + yield_oracle: Type.String(), + migration: Type.Optional(Type.String()), + }, + { ctor: 0n }, + ), + ReserveAsset: Type.Object( + { + asset: Type.Ref("Asset"), + numerator: Type.BigInt(), + denominator: Type.BigInt(), + }, + { ctor: 0n }, + ), + SettingsV1: Type.Object( + { + permissions: Type.Ref("Permissions"), + registry: Type.Ref("RegistryV1"), + config: Type.Ref("ProtocolConfig"), + }, + { ctor: 0n }, + ), + SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage: Type.Object( + { + action: Type.Ref("DistributionOracleMessage"), + nonce: Type.Ref("Nonce"), + }, + { ctor: 0n }, + ), + SignedPayload_v1_1_ProtocolRedeemerV1: Type.Object( + { + action: Type.Ref("ProtocolRedeemerV1"), + nonce: Type.Ref("Nonce"), + }, + { ctor: 0n }, + ), + SignedRedeemer_v1_1_ExtraProtocolRedeemerV1: Type.Object( + { + extra: Type.Ref("ExtraProtocolRedeemerV1"), + payload: Type.Ref("SignedPayload_v1_1_ProtocolRedeemerV1"), + signatures: Type.Array(Type.Ref("Tuple_VerificationKey_COSESign1")), + }, + { ctor: 0n }, + ), + StakeRequestV1: Type.Object( + { + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + min_received: Type.BigInt(), + origin: Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + forfeit: Type.BigInt(), + }, + { ctor: 0n }, + ), + StakingVaultRedeemerV1: Type.Undefined(), + TreasuryDatumV1: Type.Object( + { + circulating_supply: Type.BigInt(), + }, + { ctor: 0n }, + ), + TreasuryRequestV1: Type.Object( + { + destination: Type.Ref("Destination"), + amount: Type.BigInt(), + yield: Type.BigInt(), + diffusion_end: Type.BigInt(), + origin: Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + reserve_asset: Type.Ref("Asset"), + }, + { ctor: 0n }, + ), + VaultDatumV1: Type.Object( + { + circulating_susdr: Type.BigInt(), + pending_yield: Type.BigInt(), + diffusion_start: Type.BigInt(), + diffusion_end: Type.BigInt(), + }, + { ctor: 0n }, + ), + YieldSplitAlpha: Type.Object( + { + numerator: Type.BigInt(), + denominator: Type.BigInt(), + }, + { ctor: 0n }, + ), +}); + +export const Bool = Contracts.Import("Bool"); +export type Bool = Exact; +export const Tuple_VerificationKey_COSESign1 = Contracts.Import( + "Tuple_VerificationKey_COSESign1", +); +export type Tuple_VerificationKey_COSESign1 = Exact< + typeof Tuple_VerificationKey_COSESign1 +>; +export const GovernanceConfig = Contracts.Import("GovernanceConfig"); +export type GovernanceConfig = Exact; +export const SettingsAuthPayload = Contracts.Import("SettingsAuthPayload"); +export type SettingsAuthPayload = Exact; +export const SettingsRedeemer = Contracts.Import("SettingsRedeemer"); +export type SettingsRedeemer = Exact; +export const SettingsSignedRedeemer = Contracts.Import( + "SettingsSignedRedeemer", +); +export type SettingsSignedRedeemer = Exact; +export const COSESign1 = Contracts.Import("COSESign1"); +export type COSESign1 = Exact; +export const HeaderMap = Contracts.Import("HeaderMap"); +export type HeaderMap = Exact; +export const Headers = Contracts.Import("Headers"); +export type Headers = Exact; +export const MultisigScript = Contracts.Import("MultisigScript"); +export type MultisigScript = Exact; +export const ProxyDatum = Contracts.Import("ProxyDatum"); +export type ProxyDatum = Exact; +export const Denominator = Contracts.Import("Denominator"); +export type Denominator = Exact; +export const DistributionOracleDatum = Contracts.Import( + "DistributionOracleDatum", +); +export type DistributionOracleDatum = Exact; +export const DistributionOracleMessage = Contracts.Import( + "DistributionOracleMessage", +); +export type DistributionOracleMessage = Exact; +export const Numerator = Contracts.Import("Numerator"); +export type Numerator = Exact; +export const ProtocolOrchestratorRedeemerV1 = Contracts.Import( + "ProtocolOrchestratorRedeemerV1", +); +export type ProtocolOrchestratorRedeemerV1 = Exact< + typeof ProtocolOrchestratorRedeemerV1 +>; +export const Ratio = Contracts.Import("Ratio"); +export type Ratio = Exact; +export const SignedDistributionOracleMessage = Contracts.Import( + "SignedDistributionOracleMessage", +); +export type SignedDistributionOracleMessage = Exact< + typeof SignedDistributionOracleMessage +>; +export const Slot = Contracts.Import("Slot"); +export type Slot = Exact; +export const YieldDistributionInput = Contracts.Import( + "YieldDistributionInput", +); +export type YieldDistributionInput = Exact; +export const Asset = Contracts.Import("Asset"); +export type Asset = Exact; +export const Destination = Contracts.Import("Destination"); +export type Destination = Exact; +export const DirectRequestV1 = Contracts.Import("DirectRequestV1"); +export type DirectRequestV1 = Exact; +export const ExchangeRequestV1 = Contracts.Import("ExchangeRequestV1"); +export type ExchangeRequestV1 = Exact; +export const ExtraProtocolRedeemerV1 = Contracts.Import( + "ExtraProtocolRedeemerV1", +); +export type ExtraProtocolRedeemerV1 = Exact; +export const Nonce = Contracts.Import("Nonce"); +export type Nonce = Exact; +export const OrderActionV1 = Contracts.Import("OrderActionV1"); +export type OrderActionV1 = Exact; +export const OrderDatumV1 = Contracts.Import("OrderDatumV1"); +export type OrderDatumV1 = Exact; +export const OrderRedeemerV1 = Contracts.Import("OrderRedeemerV1"); +export type OrderRedeemerV1 = Exact; +export const Permissions = Contracts.Import("Permissions"); +export type Permissions = Exact; +export const ProtocolConfig = Contracts.Import("ProtocolConfig"); +export type ProtocolConfig = Exact; +export const ProtocolRedeemerV1 = Contracts.Import("ProtocolRedeemerV1"); +export type ProtocolRedeemerV1 = Exact; +export const ProxyDatumV1 = Contracts.Import("ProxyDatumV1"); +export type ProxyDatumV1 = Exact; +export const RegistryV1 = Contracts.Import("RegistryV1"); +export type RegistryV1 = Exact; +export const ReserveAsset = Contracts.Import("ReserveAsset"); +export type ReserveAsset = Exact; +export const SettingsV1 = Contracts.Import("SettingsV1"); +export type SettingsV1 = Exact; +export const SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage = + Contracts.Import( + "SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage", + ); +export type SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage = + Exact< + typeof SignedPayload_v1_1_distribution_oracle_DistributionOracleMessage + >; +export const SignedPayload_v1_1_ProtocolRedeemerV1 = Contracts.Import( + "SignedPayload_v1_1_ProtocolRedeemerV1", +); +export type SignedPayload_v1_1_ProtocolRedeemerV1 = Exact< + typeof SignedPayload_v1_1_ProtocolRedeemerV1 +>; +export const SignedRedeemer_v1_1_ExtraProtocolRedeemerV1 = Contracts.Import( + "SignedRedeemer_v1_1_ExtraProtocolRedeemerV1", +); +export type SignedRedeemer_v1_1_ExtraProtocolRedeemerV1 = Exact< + typeof SignedRedeemer_v1_1_ExtraProtocolRedeemerV1 +>; +export const StakeRequestV1 = Contracts.Import("StakeRequestV1"); +export type StakeRequestV1 = Exact; +export const StakingVaultRedeemerV1 = Contracts.Import( + "StakingVaultRedeemerV1", +); +export type StakingVaultRedeemerV1 = Exact; +export const TreasuryDatumV1 = Contracts.Import("TreasuryDatumV1"); +export type TreasuryDatumV1 = Exact; +export const TreasuryRequestV1 = Contracts.Import("TreasuryRequestV1"); +export type TreasuryRequestV1 = Exact; +export const VaultDatumV1 = Contracts.Import("VaultDatumV1"); +export type VaultDatumV1 = Exact; +export const YieldSplitAlpha = Contracts.Import("YieldSplitAlpha"); +export type YieldSplitAlpha = Exact; + +export class SettingsProtocolSettingsProtocolSettingsSpend { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + gov: GovernanceConfig, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241" + : "590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021", + Type.Tuple([PolicyId, GovernanceConfig]), + [proxyPolicyId, gov], + ), + "PlutusV3", + ); + } +} +export class SettingsProtocolSettingsProtocolSettingsWithdraw { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + gov: GovernanceConfig, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241" + : "590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021", + Type.Tuple([PolicyId, GovernanceConfig]), + [proxyPolicyId, gov], + ), + "PlutusV3", + ); + } +} +export class SettingsProtocolSettingsProtocolSettingsPublish { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + gov: GovernanceConfig, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241" + : "590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021", + Type.Tuple([PolicyId, GovernanceConfig]), + [proxyPolicyId, gov], + ), + "PlutusV3", + ); + } +} +export class SettingsProtocolSettingsProtocolSettingsElse { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + gov: GovernanceConfig, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "591be80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0034888888888a60022a6600692161657870656374205b70726f78795f6f75745d203d0a202020206c6973742e66696c7465722874782e6f7574707574732c20666e286f29207b20686f6c64735f70726f7879286f2e76616c75652c2070726f78795f706f6c6963795f696429207d2900168a99801a497c657870656374205b70726f78795f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e286929207b20686f6c64735f70726f787928692e6f75747075742e76616c75652c2070726f78795f706f6c6963795f696429207d2c0a202020202900168a99801a492565787065637420646174756d5f696e3a2050726f7879446174756d203d20696e5f6461746100168a99801a492765787065637420646174756d5f6f75743a2050726f7879446174756d203d206f75745f6461746100168a99801a492e65787065637420496e6c696e65446174756d286f75745f6461746129203d2070726f78795f6f75742e646174756d00168a99801a493e65787065637420536372697074286473745f6861736829203d2070726f78795f6f75742e616464726573732e7061796d656e745f63726564656e7469616c00168a99801a492072656465656d65723a2053657474696e67735369676e656452656465656d6572001648888889660033001300c37540252225980099b8900248002200319800801ccdc2001240293371666e00cdc2801240289030000a0064031370e900048888c8cc004004014896600200310058992cc004006266008602c00400d1330053016002330030030014050602c002809a6e012001911919800800801912cc00400629422b30013375e006601e602600314a313300200230140014034808a6e95200291808180898089808980898089808800c8c040c0440066e9520009b8748009222222222223322332232329800911929980f19b964910d63726564656e7469616c3a3a200037326600800291010013300f002001300d33021375200497ae09810008cc08001a60386ea80112222598009805800c4c8c8cc8966002602e60486ea800a264b3001301030253754003133009375c6052604c6ea8004dd5980998131baa0088a9981224814565787065637420536372697074286f776e5f6861736829203d206f776e5f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408c6050604a6ea8c0a0c094dd5180898129baa30283025375400515330234913765787065637420536f6d65286f776e5f696e70757429203d2066696e645f696e7075742874782e696e707574732c206f776e5f726566290016408864660020026eb0c09cc090dd5003112cc0040062980103d87a80008992cc004cdd7981498131baa0010048980899814000a5eb8226600600660540048118c0a000502618131813801181280098109baa008899912cc004c00400e264b30010058acc004c058c08cdd5002c4c96600200301a8992cc004006264b300100180e44c96600200301d80ec4c966002605a007132332259800980f000c56600260586ea801e00502140b5159800980b000c56600260586ea801e00502140b51598009805000c56600260586ea801e00502140b51598009805800c56600260586ea801e00502140b51598009801800c56600260586ea801e00502140b515980099b87480280062b3001302c375400f002810a05a810a05240a48149029205240a4264660020020064464b30010028cc004896600200314bd7044cc0c4c0b8c0c8004cc008008c0cc00503048896600200514c0103d87a80008acc004c0880062603666064606600497ae08cc00400e60680053020001400c8169031488c8cc00400400c896600200314bd7044cc8966002600a00513303500233004004001899802002000a0603034001303500140c93700900148c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a410008004816102c1b8d0019180e19818000a5eb82444b30013022302f375400713259800800c00a264b3001001801c00e007003899912cc00400600b13259800981c801401e00c81b0c0dc0050351bae001303600240dc60680028190c0c0dd5001c00502d48c0c4c0c8c0c8006460626064606460640033722911009b8f48810048888888888a60026016017300a00a912cc0040062900044c028cc008008c0f800503b48c8cc88cc008008004896600200300389919912cc004c02400a2b300130080028800c01903c44cc014014c10c01103c1bae303c001375a607a002607e00281e8c8c8cc004004010896600200300389919912cc004c02800a2b300130090028800c01903d44cc014014c11001103d1bae303d0013756607c002608000281f052f5bded8c02900048c8cc004004008896600200314bd6f7b63044ca60026eb8c0ec0066eacc0f000660800049112cc004c02400e2b300130080038800c401503c44cc104cdd81ba9003374c0046600c00c00281e0607c00281e1222223322332232329800982318219baa3046304337540033009009994c004c11cc120006606060886ea8c11c006608e60886ea80952225980099baf374c60166eacc0ccc11cdd50019ba6300b37566066608e6ea800a2b30013371260186eacc0ccc11cdd500118061bab30333047375400715980099baf301230473754006980103d87a80008992cc004c0c8c11cdd5000c4cc8966002606860926ea80062646644b3001302b304c375400313259800800c6600200313259800981698271baa0018992cc00400633001001899912cc004c1100062b300159800803c66002607c60a46ea8016607c60a46ea800e97ae101010000810101008101020020268a50413d13055305237540b316413d159800981e000c566002b30010078acc00400a33001303e3052375400b303e305237540074bd708101000020268a50413d14a0827a2607c60a46ea81662c827a2b300130300018acc0056600200f15980080145660033001303e3052375400b303e305237540074bd70901020020268992cc004c114c148dd5000c4c966002608c60a66ea800633001598009bac30573054375400314a314a082aa942945051454cc1492413665787065637420536f6d652872657365727665735f6461746129203d206c6973742e617428636f6e6669675f6669656c64732c203029001641446602c6eb0c14cc8cdd81ba83053001374e60a80026ea8c158c14cdd5000a400115330514912d65787065637420536f6d6528636f6e6669675f6461746129203d206c6973742e6174286669656c64732c203229001641406602a6eb0c148c8cdd81ba83052001374e60a60026ea8c0f8c148dd5001a400914a0827a294104f4528209e8980f18291baa0598b209e8acc004c0c40062b300159800803c56600200513375e607c60a46ea800cc080c0f8c148dd5002c528209e8a50413d1301d305237540b316413d1598009814800c566002b30010078acc00400a266ebcc0f8c148dd50029810181f18291baa0038a50413d14a0827a260aa60ac60ac60ac60ac60a46ea81662c827a2b300159800cc00401e94294504f456600200515980099baf303e30523754006607c60a46ea801626606a0106eacc0fcc148dd501a4528209e8a50413d14a0827a260aa60ac60ac60ac60ac60ac60a46ea81662c827904f209e413c827904f19b8f375c60a660a06ea8004dd7182998281baa003304f37540150484075048824412209082a8c148c13cdd5000c11904c180d18271baa00a823a036823c11e08f047414c60a0609a6ea80062a6609692012c65787065637420496e6c696e65446174756d28696e5f6461746129203d2070726f78795f696e2e646174756d0016412866e3c00c004c05cc12cdd50031bae304d304a3754003040411c6eb8c12cc120dd5000982598241baa304b3048375400915330464913d65787065637420536372697074287372635f6861736829203d2070726f78795f696e2e616464726573732e7061796d656e745f63726564656e7469616c001641146094608e6ea8c128c11cdd5001454cc1152401296578706563742070726f78795f6f75742e7265666572656e63655f736372697074203d3d204e6f6e65001641111533045491546578706563740a202020206173736574732e6c6f76656c6163655f6f662870726f78795f6f75742e76616c756529203e3d206173736574732e6c6f76656c6163655f6f662870726f78795f696e2e76616c7565290016411115330454916b6578706563740a202020206173736574732e776974686f75745f6c6f76656c6163652870726f78795f6f75742e76616c756529203d3d206173736574732e776974686f75745f6c6f76656c616365280a20202020202070726f78795f696e2e76616c75652c0a2020202029001641103300303f025982300124444b30013031304637540091332259800981398241baa0018992cc004006330010018994c004c8cc004004dd6181c18261baa02d2259800800c52f5c113304f374e6464660a260a4004660a26036609e6ea8004cc144dd49929982719b964901165369675374727563747572652e636f6e746578743a200037326606860a660a06ea8005220100153304e3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266068607860a06ea8005220100153304e3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266068603860a06ea8005220100153304e3372c9201165369675374727563747572652e7061796c6f61643a2000373266068603660a06ea800522010013253304f3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a200037326606a6ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002413c8278dc68009bae30533050375400266e28c07cdd7181e18281baa00133714603e6eb8c070c140dd5000980f9bae301b305037540026074660a298010b4a5369676e61747572653100330513052304f375460a4609e6ea8004cc14530101400033051375200a97ae04bd70182898290009bac305000133002002305100141393756607060966ea80b6609c609e609e609e609e609e609e609e60966ea80b5222323300100100a2232598009821800c4c94cc140cdcb24921436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326606c6ea400522010013259800982298291baa001899194c004dd7182c000cdd7182c182c800cdd7182c0012444a660ac9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e0015330563372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660786ea400522010015330563372c9201187665726966795f65643235353139207061796c6f61643a20003732660786ea400922010015330563372c92011a7665726966795f65643235353139207369676e61747572653a20003732660786ea400d2201001325330573372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a200037326607b3001001a60103d87a8000a60103d8798000415891010010019800800c00a006b950c160004dd6182b18299baa0018a9982899b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326606e6ea400922010014a08280c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c60b00020091304033057374e00297ae0899801801982c80120a4375860ae00282a8dd7182a18289baa0028acc004c0ec006264a660a066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416c6c4f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c528c5660026600c00c60ae00313300200230580018a50414482a8dd6182a18289baa0028acc004c0bc006264a660a066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326606c6ea0c0380052201001325330513372c92010e416e794f6620726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100132330010010022259800800c52845660026600c00c60ae00314a31330020023058001414482a8dd6182a18289baa0028acc004c0c00062646644a660a466e5924112436865636b696e672041744c656173743a20003732660706ea00092201001325330533372c92011941744c656173742073617469736669656420636f756e743a20003732660726ea00052201001325330543372c92011041744c6561737420726573756c743a20003732660753001001a60103d87a8000a60103d8798000414c910100100133712006002646600200200444b30010018a400113322598009980500500144c0a0006200282a8c164004cc008008c1680050571bad3055001375860aa60ac00260a26ea800a2b3001302800189929982819b9649111436865636b696e67204265666f72653a200037326606c6ea00052201001325330513372c92010f4265666f726520726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc49bad3057305437540020071337106eb4c15cc150dd5000801a0a28a50414460ac00260a46ea8c0f8c148dd50029bad30543051375400515980099b8748028006264a660a066e5924110436865636b696e672041667465723a200037326606c6ea00052201001325330513372c92010e416674657220726573756c743a200037326606f3001001a60103d87a8000a60103d879800041409101001001323259800981f18299baa0018acc004c0f8c14cdd5182b982c00144cdc48019bad3057305437540031337100066eb4c15cc150dd5000a0a28a50414460ac00260a46ea8c154c148dd50029bad3054305137540051325330503372c920111436865636b696e67205363726970743a200037326606c6ea40052201001325330513372c92010f53637269707420726573756c743a200037326606f3001001a60103d87a8000a60103d87980004140910100100133041006304033054375200297ae0375c60a860a26ea800904e209c4138827104e209c304f375400237286eccc0d4cc130c134c128dd5015998261ba90033304c0013304c304d304a375400897ae0821202e821410a085042413c609860926ea80060808230dd7182518239baa00430133047375400b03d4110304530460013300103d023222332259800acc004c0d8dd6982180144c0d8dd69821800c528208289919baf3030329800800d20009bac30460044004444b30010018a5eb82266094b300132330010010082259800800c528456600266e1cdd698268008024528c4cc008008c13800504720968992cc004c0ecc120dd5000c4c130c124dd5000c54cc11d24013165787065637420536f6d65287265706c6163656d656e7429203d206c6973742e6174286f75745f6669656c64732c20692900164118660160080051304b00141153001003980c0014c13000500320920053758608800314a08208c8cdd81ba83042001374e60860026ea800cc8cdd81ba83042001374e60860026ea800888c96600200303c8992cc004c11c00a264b300100181fc4c9660026092005133047003330470014bd7041010461823800a08a330143758601e60866ea800c8cc018dd5981818221baa00100581ea0883045001410c660246eb0c110c104dd50009198021bab302e30423754605c60846ea800400c896600266e2000520008a6103d87a8000899803001000a07822323300100130080032259800800c528456600266e3cdd71822000801c528c4cc008008c11400503e20842264b3001001811c08e264b300100181244c966002003025812c09604b1332259800800c09e264b30010018acc004c0dc00a264b300130263033375400513259800800c0aa264b30010018992cc00400605913259800800c4c96600200302e8992cc00400605f02f817c0be264b3001303f0038acc004c0b4c0e8dd500344c9660020030318992cc00400606503281940ca26644b300100181a44c96600200303581ac0d606b132598009822801c4c966002606800313259800800c0e2264b300100181cc0e60730398992cc004c12400e02503a41186eb80050491823000a088304237540171598009816000c56600260846ea802e01f037410d03740fc81f8c100dd500540d90421bae001411460840028200dd700098208012084303f00140f460766ea801a06081c206081e0dd7000a07e303c00140e8607800502d816c0b605a81e8c0e8005038181d00140ae05702b815a076303800140d860686ea800a05281884c01cc0dc02205081a205102881440a1038181a800a066375c002606800481a8c0c80050301bac001811c08d0331818001205c30020023029375400a6e1d200880f2054375800301d80ea05a302a00140a0605400501b80dc06e0368158c0a000502618121baa00580ca04280cc06603301940a4604c60466ea802a2b30013002003899192cc004c05cc090dd5181418148014528c5282044375a604e00260466ea802a2c81010201b8748018dc3a400880f0600200244464b30010038991919911980480119b8a48901280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101420485980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f101e1bac3021002375a603e0026466ec0dd4180f8009ba73020001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6048003337149101023a200098008054c09400600a805100a181380144ca6002015302400199b8a489023a200098008054c094006600e66008008004805100a1813801204a3027001409066e29220102207d0000340846eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901120423758007133005375a0060051323371491102682700329800800cc044dc68014cdc52450127000044004444b30013371000490004400626466453001006980b002ccdc599b800025980099b88002480522903045206e408c66e2ccdc0000acc004cdc4000a4029148182290372046004401866e0c00520203370c002901019b8e00400240806eb800d0241b8a4881022c2000301c301d00222323300100100322598009807800c4cdc524410130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406880d0c06c02cc028029149a2a660149211856616c696461746f722072657475726e65642066616c7365001365640241" + : "590dc80101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae003488888889660033001300437540132232330010010032259800800c528456600266ebc00cc01cc02c0062946266004004601800280310094dd2a400523008300930093009300930093009001918041804800cdd2a4001370e90014dc3a40009111111119194c004c034dd5000c88cc02c004c028cc048dd480125eb826022015301100248889660026010009132323322598009805980a9baa0028992cc004c034c058dd5000c4cc020dd7180d180b9baa00137566020602e6ea801e2c80a8c064c058dd5180c980b1baa300e301637546032602c6ea800a2c80a0c8cc004004dd6180c180a9baa0052259800800c530103d87a80008992cc004cdd7980d180b9baa001004898071980c800a5eb82266006006603600480a8c064005017180b980c001180b00098091baa005899912cc004c00401a264b3001300a30143754009132323259800980e00144cc88cc89660026022003159800980e1baa00380145901d45660026024003159800980e1baa00380145901d45660026012003159800980e1baa00380145901d45660026014003159800980e1baa00380145901d45660026008003159800980e1baa00380145901d456600266e1d200a0018acc004c070dd5001c00a2c80ea2c80d101a2034406880d101a0991980080080211192cc00400a330012259800800c52f5c1133021301e30220013300200230230014081222598008014530103d87a80008acc004c0540062602e66044604600497ae08cc00400e6048005337000029000a0064078810a44646600200200644b30010018a5eb8226644b3001300500289981280119802002000c4cc01001000502118120009812800a0449192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000901d203a371a00323018330200014bd70489660026028603c6ea800a264646644b30013027003802c5902418120009bae30240023024001301f3754005164075230213022302200191810981118111811000cdc8a441009b8f4881004888888888a600260140153009009919199119801001000912cc0040060071323322598009804801456600260100051001803205889980280298190022058375c60560026eb4c0b0004c0b800502c191919800800802112cc0040060071323322598009805001456600260120051001803205a8998028029819802205a375c60580026eacc0b4004c0bc00502d0a5eb7bdb1805200091919800800801112cc004006297adef6c608994c004dd71815000cdd59815800cc0bc009222598009804801c566002601000710018802a05889981819bb037520066e98008cc01801800502c0c0b400502b244446644664464653001303430313754606860626ea800665300130353036001981518191baa3035001981a98191baa02148896600266ebcdd318059bab302d303537540066e98c02cdd59816981a9baa0028acc004cdc498061bab302d3035375400460186eacc0b4c0d4dd5001c56600266ebcc044c0d4dd5001a60103d87a80008992cc004c0b0c0d4dd5000c4c966002605a606c6ea80062646644b300130273039375400313233019001132598009814981d9baa0018991980d800899912cc004c0d00062b300159800803c66002606e607e6ea8016606e607e6ea800e97ae101010000810101008101020020248a5040f513042303f375408b1640f5159800981a800c566002b30010078acc00400a330013037303f375400b3037303f37540074bd708101000020248a5040f514a081ea2606e607e6ea81162c81ea2b3001302c0018acc0056600200f159800801456600330013037303f375400b3037303f37540074bd70901020020248992cc004c0d4c0fcdd5000c4c966002606c60806ea800633001598009bac30443041375400314a314a0821294294503f45903f1980a9bac304032337606ea0c100004dd398208009baa304330403754002900045903e1980a1bac303f32337606ea0c0fc004dd398200009baa3037303f375400690024528207a8a5040f514a081ea26038607e6ea81162c81ea2b3001302d0018acc0056600200f15980080144cdd7981b981f9baa003301e3037303f375400b14a081ea294103d44c06cc0fcdd5022c5903d4566002604e003159800acc00401e2b3001002899baf3037303f375400a603c606e607e6ea800e294103d4528207a898211821982198219821981f9baa0458b207a8acc005660033001007a50a5140f5159800801456600266ebcc0dcc0fcdd5001981b981f9baa0058998180041bab3038303f375405f14a081ea294103d4528207a8982118219821982198219821981f9baa0458b207a40f481e903d207a40f466e3cdd71820181e9baa001375c6080607a6ea800cc0f0dd5004981f981e1baa0018b20743018303b3754012607a60746ea80062c81c0cdc79bae303b30383754006002602a60706ea8014dd7181d181b9baa0018b206a3039303637546072606c6ea80122c81a0c0e0c0d4dd5181c181a9baa0028b20668b20668b206619801817010cc0d000922259800981518199baa003899912cc004c08cc0d4dd5000c4c8cc0540044ca600264660020026eb0c0c4c0e4dd5014112cc004006297ae089981e1ba732323303e303f0023303e3019303c37540026607c6ea4c8cdc52441018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400240f481e8dc68009bae3040303d375400266e28c074dd7181a981e9baa00133714603a6eb8c068c0f4dd5000980e9bae3019303d375400260666607c98010b4a5369676e617475726531003303e303f303c3754607e60786ea8004cc0f93010140003303e375200a97ae04bd70181f181f8009bac303d00133002002303e00140ed3756606260706ea80a26076607860786078607860786078607860706ea80a1222323300100100a2232598009819800c4c8c966002606a607e6ea8006264653001375c608a005375c608a608c003375c608a002b9518228009bac30433040375400314a081f0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c608a0020091303933044374e00297ae089980180198230012080375860880028210dd71820981f1baa0028acc004c0d0006264660020026eb0c108c0fcdd5001912cc00400629462b30013300500530430018998010011822000c528207c41051598009815800c4c8cc004004dd61821181f9baa0032259800800c52845660026600a00a608600314a3133002002304400140f8820a2b3001302c00189919b89375a608400264660020026eb0c10cc110008896600200314800226644b300133008008002899b800014800a20028208c110004cc008008c114005042181f1baa0028acc004c0980062646644b3001303730403754005159800981b98201baa30443045003899b89375a608860826ea8008006266e20dd6982218209baa00200140fd14a081f8c108004dd69821181f9baa003303e3754606c607c6ea80122b30013370e9005000c4c8cc8966002606e60806ea800a2b30013037304037546088608a0071337120026eb4c110c104dd500144cdc40009bad30443041375400481fa294103f18210009bad3042303f3754006607c6ea8c104c0f8dd500244cc0e4014c0e0cc100c104c0f8dd500125eb8103c207840f081e103c2078303c375400237286eccc0b8cc0e4c0e8c0dcdd50131981c9ba90033303900133039303a3037375400897ae03039303637540031640d06eb8c0dcc0d0dd50019808981a1baa0048b20641819981a0009980081600f91119912cc00566002604e6eb4c0c400a2604e6eb4c0c4006294103044c8cdd79815194c00400690004dd6181a002200222259800800c52f5c1133038598009919800800804112cc00400629422b30013370e6eb4c0ec0040122946266004004607800281b103944c9660026058606c6ea800626074606e6ea80062c81a8cc02c01000a2607200281a260020073370000490014c0e8005003206e0053758606400314a08180c8cdd81ba83030001374e60620026ea800cc8cdd81ba83030001374e60620026ea800888c966002606800313259800981a800c4cc0ccc0d0008cc0ccc0d00052f5c11640c8660226eb0c034c0c0dd50011198029bab3029303137540020091640c4660206eb0c0c8c0bcdd50009198021bab302830303754605060606ea800400c896600266e2000520008a6103d87a8000899802801000a05622323300100130070032259800800c528456600266e3cdd71819000801c528c4cc008008c0cc00502d206022646644b30013024001899912cc004c05cc084dd500144c8c8c8cc8966002605600713259800980e98139baa0018991919912cc004c0c000e264b30013022001899192cc004c0cc00a01d1640c06eb8c0c4004c0b4dd5003c566002604600315980098169baa00780645902e45902b2056302b375400d1640b46eb8c0b4004dd71816801181680098141baa0018b204c302a0058b2050375c605000260500046050002604e00260446ea800a2c8100c08c0044c010c0900162c8108dd7181080098110009bac30200024078600400460326ea8004dc3a401060360071640646eb0c068004c068004c054dd5002459013180b980a1baa0078acc004c00801a26464b3001300b301537546032603400514a314a080a0dd6980c000980a1baa0078b202440486e1d2006370e90022020180818088009808004229344d9590021", + Type.Tuple([PolicyId, GovernanceConfig]), + [proxyPolicyId, gov], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1DistributionOracleDistributionOracleWithdraw { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + oracleNftPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5927e80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a660089213265787065637420646174756d3a20446973747269627574696f6e4f7261636c65446174756d203d20646174756d5f6461746100168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022491b657870656374205b5f5d203d206f7261636c655f6f75747075747300168a998022495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488896600264653001300f00198079808000cdc3a4009300f00248889660026004601e6ea800e3300130133010375400723014301530150019ba54800246028602a003370e90002444446464b30010018cc004dc3a4005222598009803180c9baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026048007008803a042375a0030064090604200280f8dd700098100012042301e001407060346ea800e00280ba446466002002006446600600260040053016375400291114c004889660026014603a6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c08c0062b30013371290021811000c01a264b300130280048992cc004c0440062b30013025375400d009804204c8acc004c038006264b3001001804c4c96600200300a805402a264b3001302c003806402d0291bad00180520583029001409c604a6ea801a2b300130170018acc004c094dd500340260108132010811102220443023375400b007409460186044002810200c8120dd5000c01600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a0369112cc004c028c074dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0a400e2b300130113024375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002605e00713259800980c000c4c9660020030108992cc004006023011808c046264b30013033003809c0490301bae00140cc60600028170c0b0dd5005c566002602a00315980098161baa00b808403d02d403d0292052302a375401500e40b06eb800502f1816000a054375c00260560048160c0a400502718129baa0068042044804204c375c0028148c0980050241813001401600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a036911192cc004c02c006264b3001001801c4c9660020030048024012009132598009813001c01a00a8118dd7000a04c30230014084603e6ea80122b300130080018992cc00400600713259800800c01200900480244c966002604c007006802a046375c0028130c08c005021180f9baa00480120384070603a6ea800e44464b3001300b0018992cc00400600713259800800c0120090048992cc004c09800e00d005408c6eb40060088130c08c005021180f9baa0048acc004c0200062b3001301f3754009003801204080120384070603a6ea800d2222332298009112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c4c966002605a007159800980a98141baa0048992cc00400600f13259800800c4c9660020030098992cc0040062b300130310028acc004c064c0b0dd5001c4c96600200300b8992cc004006264b3001001806c4c96600200300e80744cc89660020030108992cc004006023011899912cc00400602713259800800c052029014899912cc00400602d13259800800c05e02f017899912cc00400603313259800800c06a03501a8992cc004c10800e2b3001302a303d375402113259800800c072264b300100180ec07603b1332259800800c07e264b30010018104082041132598009824001c5660020270218992cc00400604502281144cc89660020030248992cc00400604b025812c4c966002609a00715980080ac09a264b3001001813c09e04f1332259800800c0a6264b300100181540aa055132598009829001c66002045133035026225980080140ba264b300100181740ba264b3001001817c4c96600200303081840c20611332259800800c0ca264b30010018acc004c16800a3300100189803982d00440cd03a40cd05740ce067033819a0b6305800141586eb8004c15c009058182a800a0a6375800302e81720ac3053002414502b40bd02b413c6eb40060548290c13c00504d1bad001304e016813a09e304c015412902641286eb400604a8268c1280050481bad001304901481120943047013411502141146eb40060408240c1140050431bad001304400280ea08a30420014100607c6ea804203681da03681f8dd6800c069042181f800a07a375a002607c00501740fc607800281d0dd6800981d801405103c181c800a06e37580026070005011808a072303600140d06eb0004c0d400a01d00e40d860660028188c0cc00a01900c80640310341818800a05e302d375400700a40a900a40b900a805402a0148190c0bc00502d181780140220110088042060302d00140ac60526ea801200c813200c8150dd6000c01600a8168c0a80050281815001400e007003801a0563028001409860486ea800e002810a444b300130103023375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002605e00519800803466002003009804202680420168042058804402201100840c0605a0028158dd68009816001401502d1815000a050302a002801c00e00700340ac60500028130c090dd5001c005021488966002602060466ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c0d400e3300100c8cc00401201f00e406500e404500e40c86eb400601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a0429112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200300b805c02e26644b3001001806c4c96600200313259800800c03e264b30010018084042264b300130380038cc00403e330010048acc00400602313259800800c04a02501280944cc89660020030148992cc00400602b01580ac056264b3001303d00380bc05903a1bae00140f4607400281c0dd7000981c8012074303700140d50114071011405101140d46eb000602101040e0606a0028198c0d400a01d00e80740390361819800a062375a002606400500b40cc60600028170dd6800981780140210301816800a056375a002605800500540b460540028140c0a800a007003801c00d02b1814000a04c30243754007001408522259800980818119baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002606a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026074007014809a06e375c00281d0c0dc0050351bae001303600240dc6068002819201c80ca01c808a01c8190dd6000c03601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a042488888c966002602601b13259800800c07e264b30010018acc004c0b400a2b300130153028375400313259800800c086264b30010018992cc00400604713259800800c4c9660020030258992cc00400604d0268992cc004c0d000e2b3001301c302f375400d13259800800c0a2264b3001001814c0a626644b3001001815c4c96600200302c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944cc89660020030348992cc004006264b300100181b44c966002003159800982200144cc09c038896600200513302900d225980080146600200f19800802c566002606060866ea8062264b300100181e44c96600200313259800800c0fa264b30010018acc004c13000a26644b300130360018992cc00400608513259800800c10e087132598009828801c4cc0d000489660020050078992cc0040063300100189801182a001c11d02b411e08f047823a0aa3052002414104441386eb00060870434144609c0028260c128dd5002c566002606600313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a056823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260a20071330340012259800801401e264b30010018cc0040062600460a800704740b1047823c11e08e82a8c148009050411104e1bac001821c10d0511827000a098304a375400b15980099b8748018006264b300100182144c966002003043821c4cc89660020030458992cc0040062b3001305300289981b001912cc00400a2b3001303d3050375400713259800800c126264b3001001825412a0951332259800800c132264b3001001826c13609b13259800982d801c03e09c82c0dd6800c13505b182c000a0ac375a00260ae00504a416060aa0028298c144dd5001c12104e44c96600200319800800c4c008c15800e0928172093049824c125057182a00120a482320a0823411a08d046415060a20028278dd60009828001410e0868288c13800504c18251baa0058acc004cdc3a401000313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401400313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401800313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401c00313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a402000315980098251baa005801410504b4105047208e411c8239047208e411c82390470cc00400626605e03244b300100281244c96600200304282144c9660020030438992cc004006089044822411226644b300100182344c966002003159800982a001466002003130073054008823a068823a0a2823c11e08f047415460a40028280dd7000982880120a4304f00141346eb00060850424140609a004825a07e8148c11cdd5001c0fd04940fe07f03f81fa09a304a0014120609400503d81ec0f607a8258c12000504618221baa01881da08281da04c81da04c8992cc00400607903c81e44c8c00cc128010dd6800c0f104a1823801208a8992cc00400607503a81d44c8c00cc120010dd6800c0e90481822801208681ba08281bc0de06f037411460840028200c10800a06b03581ac0d50431820000a07c375a002607e0050324100607a00281d8dd6800981e00140bd03d181d000a0703758002607200502c8162074303700140d46eb0004c0d800a05302940dc60680028190c0c0dd5003409d02d409d0311bac00181340990341818800a05e3031002812409204902440c8605e0028168c0bc00a04502281140890301816800a05630293754003020409902040a902081040820408170c0ac00502918139baa0118acc004c040036264b300100180fc4c966002003159800981680146600200300381020108102054810408204102040b860560028148c09cdd5008c0790242048159800980798129baa010899912cc004c050c09cdd5000c4c8cc896600330013233001001323300100137566006605a6ea8078896600200314bd7044c8cc88cc88cc008008004896600200310038991981b1ba733036375200a6606c60660026606c606800297ae0330030033038002303600140d06eacc0c400cdd718170009980180198198011818800a05e2259800800c528456600266e3cdd718181bac30300010288a518998010011818800a05440b94a14a28142264b30013371064b3001301f302c375400313259800800c5660026034605a6ea8006264b3001001814c4c96600200313259800800c0ae264b300100181640b20591332259800800c0ba264b3001001817c0be05f13259800981d001c6600200f1375a6016606c6ea8c0e4c0d8dd5181c981b1baa303930363754013030405503040dc6eb400605e81d0c0dc0050351bad0013036002816206e303400140c8606800502a81540aa05481a8c0c800503018171baa001814205681440a205102840cc6060605a6ea8006290002054301b302c3754603260586ea8010dd6980098161baa302f302c3754605e60586ea801a2b3001323259800980b800c4cdc41bad3031302e37540046eb4c00cc0b8dd5181898171baa3031302e3754011159800980d000c528c528205640ac60586ea8004c0bcc0b0dd5181798161baa302f3030303030303030303030303030302c375403b1323259800800c09a2b300130320018a51813205e40bc64660020026eb0c074c0b8dd500f912cc004006297ae0899912cc0056600266ebcc0d0c0c4dd5001004456600266ebcdd319198008009bab301f3032375400644b30010018a5eb7bdb1822653001375c606600337566068003303800248896600266e452201000038acc004cdc7a441000038800c401503444cc0e4cdd81ba9003374c0046600c00c00281a0606c00281a0dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606c66ec0dd48179ba60034bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8019801c4cc0e8cdd81ba9033374c00e00b15980099b8f03300389981d19bb037520666e9801c00626607466ec0dd48019ba60023300600600140d481a8606e00281a8c8cc0040052f5bded8c044b300100189981a99bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0cc0066eb4c0d000660700049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981c99bb037520066ea0008cc0180180050342068181b000a06840b913375e604060626ea8008cdd2a40086606600a97ae08a5040b914a081722660660046600800800313300400400140b86064002606600281826002444b3001301b001880146600200700199b86002001400c81624466e0ccdc1001000a410112f5223371266e08dd698188011bad30313032001337046eb4c0c4004dd69818981900148cdc4240006eb4c0c0c0c40066e092080897a981798161baa302f302c375400c91111119199118119981b8079981b9811181a9baa3038303537540086606e6ea0cc896600260100051598009804000c56600266012004003130030018980180120688a9981aa492b6578706563742069735f76616c69645f726174696f28706f73745f726574656e74696f6e5f7969656c6429001640d115330354911c6578706563742069735f76616c69645f726174696f28666c6f6f7229001640d06eb0c090c0d4dd50024c004dc4a400137586044606a6ea80126eb4c02cc0d4dd50024dd6981c181c981c981c981c981c981a9baa00448888c96600260160091598009805800c5660026601800200910018991919911805998201ba83370066e08dd6982080400119b82375a6082006002660806ea0cdc100080125eb80dd6981f98200009bad303f304000630083303d375066e08dd6981f00099b814820225e8c966002600e00b15980099b890050048acc004cdc48022410112f513370000a6601e66e0401001566002600e00315980099b8900148202d2244e26464646464646466e04cdc019b813370066e04cdc019b810073370600c900219b8300548030cdc18022406066e0c00d20f0013370600490500599b830014838138cdc19980b000803a4101ec086602a00200c6602800200a6602600200866024002006660220020046602000200266e0c00520288a9981d2491b6578706563742073203c3d206d61785f737570706f727465645f73001640e5153303a4910d6578706563742073203e3d2030001640e5153303a4911565787065637420725f6d6178203c3d207363616c65001640e5153303a4911465787065637420725f6d6178203e3d2062617365001640e5153303a491106578706563742062617365203e3d2030001640e464b30013371090405a4489800c52080b489138800a0723370666e08c02cdd6981f000a4190026eb4c0f8c0fc004cc0f4dd418059bad303e303f0014bd70199118049981f1ba83370266e08dd6981f80180099b82375a607e00c0046607c6ea0cdc1001000a5eb80dd6981e981f0009bad303d303e00440dd1533038491206578706563742069735f76616c69645f726174696f287261775f7969656c6429001640dd15330384911d6578706563742069735f76616c69645f726174696f28687572646c6529001640dc646644b300130070028acc004cdc42400000313303e37500046607c6ea00052f5c1153303a490116657870656374207374616b65645f75736472203e2030001640e5153303a49124657870656374206e65745f64697374726962757461626c655f696e636f6d65203e3d2030001640e46eb4c0f4c0e8dd50009bad3027303a3754002607860726ea802097ae02332232598009811800c52f5c210100008101010044cc0e4dd419b8300300133039375066e0c0080052f5c081a0c96600266e200052000899b8148000006200281a0cc010008004dd6981b8009bad3037303800123370660086eb4c0dc004dd6981b981c000980300322a660549217a6578706563740a20202020202076616c69646974795f72616e67655f7374617274735f6265666f7265280a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d702c0a20202020202029001640a5153302a491696578706563740a20202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d70203e2070726576696f75735f6f7261636c655f74696d657374616d70280a20202020202020206f7261636c655f696e7075742c0a20202020202029001640a44605e60606060606000315330294913f657870656374206e6f5f6f7261636c655f746f6b656e735f6d696e7465642873656c662e6d696e742c206f7261636c655f6e66745f706f6c6963795f696429001640a0605860526ea8c058c0a4dd5000918169817181718171817000981598141baa0018a9981324815665787065637420536f6d65286f7261636c655f696e70757429203d0a20202020202066696e645f6f7261636c655f696e7075742873656c662e696e707574732c206f7261636c655f6e66745f706f6c6963795f696429001640946052604c6ea8040cc044dd6181498131baa01723010323322330020020012259800800c00e2646644b30013372291113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902a44cc014014c0c401102a1bae302a001375a6056002605a0028158c8c8cc004004dd5980b98151baa3017302a375400844b3001001801c4c8cc896600266e440a400a2b30013371e0520051001803205689980280298190022056375c60560026eacc0b0004c0b800502c0a5eb7bdb180520008a9981224813b657870656374205075626c6973685969656c644f7261636c652872656465656d657229203d206f7263686573747261746f725f72656465656d65720016408c22232598009807800c4c9660020030038992cc0040062b300130290028cc00400600b0044035004409900480240120088150c09c00502518119baa0048acc004c030006264b3001001801c4c96600200315980098148014566002602260486ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0b400a330010038cc0040060130084039008403900840a900880440220108170c0ac0050291815801401a00d00680320583029001409c604a6ea800600881120088132009004802401102a1813800a04a3023375400900240808100c084dd50019112cc004c038c084dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981500144c9660026026604c6ea8012264b3001001803c4c96600200313259800800c026264b30010018acc004c0bc00a330010038992cc004c060006264b300100180644c966002003159800981900144c966002603600313259800800c03e264b30010018acc004c0d400a33001001805c04101440410324042021010808206c303300140c4605e6ea800a2b300130180018992cc00400601f13259800800c042021010899912cc00400602513259800800c04e027013899912cc00400602b13259800800c05a02d0168992cc004c0f000e02501740e46eb400602c81e0c0e40050371bad0013038002809a072303600140d06eb4004c0d400a02081b0c0cc00503118179baa002807205840b0605a6ea800601a817a01b00d806c0350331818000a05c302c3754005159800980a800c56600260586ea800a00d00b40b500b40a48148c0a8dd5000c02900e402902c402a01500a8052060302d00140ac605a00500880440220108170c0ac00502918139baa0048032048132598009809800c566002604e6ea800a00f00640a11598009808000c4c9660020030078992cc0040060110088044022264b3001302e003805402502b1bae00140b860560028148c09cdd50014566002603200313259800800c01e264b3001302d002804c02102a1815800a052302737540050064090812102418129baa001802a04e802c01600b00540ac60500028130c0a000a007003801c00d0291813000a04830223754007001407c403a01d00e8072038332232598009802980c1baa0018980c9919bb0301d001301d301e0013758603860326ea80062a6602e9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164058646600200200644b30010018a60103d87a80008992cc004cdd7980d00099ba548010cc074cdd2a40046603a6ea40112f5c097ae0898049980e9ba73301d301a0013301d301b0014bd7025eb82266006006603e00480c0c07400501b1bab3019301a301a301a301a301a301a301a301a301a3016375400e6eb8c064c058dd54c004896600200314bd7044cc068c05cc06c004cc008008c07000501948896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901648888c8cc004004014896600200310058992cc004006266008604000400d1330053020002330030030014078604000280ea6eb0c00cc058dd5003a44446464646644a6603a66e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea406d220100132598009806180f9baa00189929980f99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980a18109baa0018992cc0040062b3001300f3022375400313259800800c076264b300100180f407a03d01e899912cc0040060411325980098160014401a0428148c0a80050281bae001302900240a8604e0028128c08cdd5000c071020407203901c80e2050302530223754003153302049013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016407c602060426ea8c038c084dd5000981198101baa0018a9980f24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640746601400c4646600200260066eacc038c084dd5180718109baa0022259800800c528456600266e3cdd7181280080f4528c4cc008008c09800501f2046300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c204a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f901f1bac3022002375a60400026466ec0dd418100009ba73021001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a604a003337149101023a200098008054c09800600a805100a181400144ca6002015302500199b8a489023a200098008054c098006600e66008008004805100a1814001204c3028001409466e29220102207d0000340886eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920443758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720483371666e000056600266e2000520148a40c11481b9024002200c33706002901019b8600148080cdc70020012042375c0068128dc5245022c200022323300100100322598009805800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407080e0c00c00c44646600200200644b30010018a6103d87a80008992cc004c010006260106603800297ae0899801801980f001202e301c00140688b201a180780098051baa0108a4d153300849011856616c696461746f722072657475726e65642066616c73650013656401c1" + : "5914ad0101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae00248888888896600264653001300a00198051805800cdc3a4009300a0024888966002600460146ea800e33001300e300b37540072300f301030100019ba5480024601e6020003370e90004dc3a4005223233001001003223300300130020024888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260146603200297ae0899801801980d801202a3019001405d2259800980298099baa00289919192cc004c06c00a26464b3001300a0018acc004c064dd5001401a2c80d22b30013009001899192cc004c07c00a0111640706eb4c074004c064dd500145660026020003159800980c9baa00280345901a459017202e405c602e6ea8004c06800e2c80c0c966002602e00315980099b8948010c0580062d13007301600140551640606ea8c064004c064004c050dd500145901248966002600a60266ea800a264646644b3001301c003802c590191bad3019001375c6032004603200260286ea800a2c809244b30013005301337540051323232332259800980e801c4c966002601660326ea8006264646644b300130220038992cc004c04000626464b300130250028074590221bae3023001301f375400f1598009807800c566002603e6ea801e01916408116407480e8c074dd500345901f1bae301f001375c603e004603e00260346ea80062c80c0c0700162c80d0dd7180d000980d001180d000980c800980a1baa0028b202491192cc004c01800626464b3001301b0028024590181bae3019001301537540071598009802800c4c8c96600260360050048b2030375c6032002602a6ea800e2c809901318099baa00291192cc004c01800626464b3001301b0028024590181bad3019001301537540071598009802800c566002602a6ea800e00516405916404c8098c04cdd500124444453001332232598009806180d1baa0018980d9919bb0301f001301f30200013758603c60366ea80062c80c8c8cc00400400c896600200314c103d87a80008992cc004cdd7980e00099ba548010cc07ccdd2a40046603e6ea40112f5c097ae0898081980f9ba73301f301c0013301f301d0014bd7025eb82266006006604200480d8c07c00501d1bab301b301c301c301c301c301c301c301c301c301c3018375401c6eb8c06cc060dd51919192cc004c030c068dd5000c4c966002602660366ea8006264b3001300e301c3754003132323322598009812801c40162c8110c088004dd718110011811000980e9baa0018b2036301f301c3754003164068601e60366ea8c034c06cdd5180f180d9baa0018b2032330083758601860346ea80408c8cc004004c00cdd59807180e1baa300e301c375400444b30010018a508acc004cdc79bae302000101a8a518998010011810800a0364078600200244b30010018a5eb822660386032603a00266004004603c00280da4464b3001300c0018992cc004c080006266010603e00200716407460366ea800e2b3001300b0018992cc004c080006264b3001300e301c3754003132323259800981200144cc034c08c00c4cc03400401e2c8108c088004c088004c074dd5000c5901b180f800c5901d180d9baa0038b2032406460326ea800a44b3001300b30193754005132323259800981080144cc89660026020603c6ea800a2646464b3001302600289980618128018992cc004c050006264b30013028001899192cc004c05c006264b3001302b0018998089815000804c5902818131baa0028acc004c05800626464653001375a6058003375a6058007375a60580049112cc004c0c001201d1640b4302c001302b001302637540051640908120c090dd50009813800c5902518119baa0028acc004c04c0062b3001302337540050058b20488b2042408460426ea80062c8118c090004c090004c07cdd500145901d18100018992cc004c03c0062b3001301e37540050058b203e8acc004c03800626464b30013024002803c590211bae3022001301e3754005159800980a800c4c8c96600260480050078b20423022001301e375400516407080e101c180e1baa0018b203c301f001301f001301a37540051640609114c0048966002601c60386ea800a2646464b300130240028992cc004c048c080dd5000c4c8c966002604e00313259800980a98119baa00189919191919194c004dd69816800cdd61816802cdd618168024dd69816801cdd69816801244444b300130330068992cc004c084c0bcdd5000c4c8c8cc89660026070007132332259800981d801c4c8cc8966002607c007133021303d01813302901b225980080140822646644b300130430018998151821000898021821802c590401bae304000130410013758607e00481ea2c81d8dd6981d8009bad303b00c303b00b8b2070375a60700026eb4c0e0028c0e00262c81a8dd6981a8009bad30350023035001303037540031640b860640171640c0302d001302c001302b001302a001302900130243754003164088604c005164090604c00260426ea80062c80f8c08c00e2c8108dd618110009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8cc8966002604c007133008302500513300e0020068b20463023001375a604600460460026044002603a6ea800a2c80da44b3001300e301c37540051323232323298009bad30250019bad30250049bad3025003981280124444b3001302a00589980618148048998090008054590270c094004c090004c08c004c088004c074dd500145901b48966002601c60386ea800a264646464646530013758604c003375a604c00b375a604c009375a604c007302600248888966002605800d13300e302b00b1330140011323322598009817801c03e2c8160dd718160009bae302c006302c0058b205218130009812800981200098118009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8c8ca60026eb0c0940066eb4c0940126eb4c09400e604a00491112cc004c0a801626601860520122660240022646644b3001302d003806c5902a1bae302a001375c605400a605400916409c3025001302400130230013022001301d375400516406d301a3754006911111192cc004c04c00a264b300130270018992cc004c054c08cdd5000c4c8c8c8cc8966002605a00713259800980d98149baa00189919191919194c004c0cc0066eb0c0cc0166eb4c0cc0126eb4c0cc00e6066004911112cc004c0e401a2660486eb0c0e002c8966002005133026006225980080144cc0880144cc088024566002605460706ea80462646464b3001304000289919912cc004c0c000a264b300130440018998179bac304300122598008014012266046608a00426002608c004821a2c8208c0fcdd5001c566002605e005132598009822000c4cc0bcdd61821800912cc00400a0091330233045002130013046002410d164104607e6ea800e2b300130360028992cc004c11000626605e6eb0c10c0048966002005004899812182280109800982300120868b2082303f375400715980099b874801800a2646464b300130460028998189bac304500322598008014566002606a60866ea800e264646644b3001304c0038054590491bad3049001375a6092004609200260886ea800e2c821226604c608e004260026090004822a2c8218c110004c110004c0fcdd5001c56600266e1d20080028992cc004c11000626605e6eb0c10c0048966002005004899812982280109800982300120868b2082303f375400715980099b874802800a264b300130440018998179bac30430012259800801401226604a608a00426002608c004821a2c8208c0fcdd5001c56600266e1d200c0028992cc004c11000626605e6eb0c10c0048966002005004899813182280109800982300120868b2082303f375400715980099b874803800a264b300130440018998179bac30430012259800801401226604c608a00426002608c004821a2c8208c0fcdd5001c56600266e1d20100028acc004c0fcdd5001c0062c82022c81e903d207a40f481e903d207a40f481e8c0f0dd500089981200109981600b112cc00400a03d1323322598009823000c4cc0b4c1140044c010c1180162c8218dd7182180098220009bac30420024100607e0071640f4607c002607c00260726ea80462c81ba2646004607c0066eb4c0f000903a44c8c008c0f000cdd6981d00120708b206c1819800981900098188009818000981780098151baa0018b2050302c0058b20543758605400260540046054002605200260486ea80062c8110c0980062c8120c088dd500545660026024005132598009813800c4cc020c09800400a2c8120c088dd50054590202040159800980898101baa009899912cc004c050c088dd5000c4c8cc89660033001323300100132330010013756600660506ea8078896600200314bd7044c8cc88cc88cc00800800489660020031003899198189ba733031375200a66062605c00266062605e00297ae0330030033033002303100140bc6eacc0b000cdd718148009980180198170011816000a0542259800800c528456600266e3cdd718159bac302b0010248a518998010011816000a04c40a54a14a28122264b30013371064b3001301f3027375400313259800980d18141baa001899191919912cc004c0c800e266026606200a26eb4c020c0b8dd5181898171baa3031302e37546062605c6ea801a2c8178dd698178009bad302f002302f001302e0013029375400316409c605660506ea800629000204c301b302737546032604e6ea8010dd6980098139baa302a302737546054604e6ea801a2b3001323259800980c800c4cdc41bad302c302937540046eb4c00cc0a4dd5181618149baa302c30293754011159800980d000c528c528204e409c604e6ea8004c0a8c09cdd5181518139baa302a302b302b302b302b302b302b302b3027375403b13259800981619198008009bac301d3029375403e44b30010018a5eb8226644b30015980099baf302f302c375400401115980099baf374c64660020026eacc07cc0b4dd5001912cc004006297adef6c608994c004dd71817000cdd59817800cc0cc0092225980099b91489000038acc004cdc7a441000038800c401503044cc0d0cdd81ba9003374c0046600c00c002818060620028178dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606266ec0dd48159ba60034bd6f7b63044ca60026eb8c0bc0066eacc0c000660680049112cc004cdc8017801c4cc0d4cdd81ba902f374c00e00b15980099b8f02f00389981a99bb0375205e6e9801c00626606a66ec0dd48019ba60023300600600140c4818860640028180c8cc0040052f5bded8c044b300100189981819bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0b80066eb4c0bc00660660049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981a19bb037520066ea0008cc01801800503020601818800a05e40a913375e604060586ea8008cdd2a40086605c00a97ae08a5040a914a0815226605c0046600800800313300400400140a8605a002605c002815a29462c814a6002444b3001301b001880146600200700199b86002001400c81424466e0ccdc1001000a410112f5223371266e08dd698160011bad302c302d001337046eb4c0b0004dd69816181680148cdc4240006eb4c0acc0b00066e092080897a981518139baa302a3027375400c91111119199118119981900799819181118181baa303330303754008660646ea0cc896600260100051598009804000c56600266012004003130030018980180120608b20608b20603758604860606ea801260026e2520009bac302230303754009375a601660606ea80126eb4c0ccc0d0c0d0c0d0c0d0c0d0c0c0dd50022444464b3001300b0048acc004c02c0062b30013300c0010048800c4c8c8cc88c02ccc0ecdd419b80337046eb4c0f0020008cdc11bad303c0030013303b375066e080040092f5c06eb4c0e8c0ec004dd6981d181d80318041981c1ba8337046eb4c0e4004cdc0a410112f464b300130070058acc004cdc4802802456600266e240112080897a899b800053300f3370200800ab300130070018acc004cdc4800a41016912271323232323232323370266e00cdc099b803370266e00cdc080399b8300648010cdc1802a401866e0c01120303370600690780099b83002482802ccdc1800a41c09c66e0ccc05800401d2080f604330150010063301400100533013001004330120010033301100100233010001001337060029014459035459035459035459035459035192cc004cdc424101691226003148202d2244e200281a8cdc199b82300b375a60720029064009bad3039303a00133038375060166eb4c0e4c0e80052f5c066446012660726ea0cdc099b82375a607400600266e08dd6981d0030011981c9ba83370400400297ae0375a607060720026eb4c0e0c0e40110334590334590331919912cc004c01c00a2b3001337109000000c4cc0e4dd40011981c9ba80014bd704590354590351bad3038303537540026eb4c09cc0d4dd5000981b981a1baa00825eb808cc88c966002604600314bd70810100008101010044cc0d0dd419b8300300133034375066e0c0080052f5c08180c96600266e200052000899b814800000620028180cc010008004dd698190009bad3032303300123370660086eb4c0c8004dd698191819800980300322c812a2c81288c0a8c0acc0acc0ac0062c8120c09cc090dd5180b18121baa001230283029302930293029001302630233754003164084604860426ea8024cc03cdd6181218109baa01723012323322330020020012259800800c00e2646644b300133722910113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902644cc014014c0b00110261bae3025001375a604c00260500028130c8c8cc004004dd5980b98129baa30173025375400844b3001001801c4c8cc896600266e4409400a2b30013371e04a0051001803204e8998028029816802204e375c604c0026eacc09c004c0a40050270a5eb7bdb180520008b203e08b2012180500098029baa00a8a4d13656400c1", + Type.Tuple([PolicyId, PolicyId]), + [proxyPolicyId, oracleNftPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1DistributionOracleDistributionOracleElse { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + oracleNftPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5927e80101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a660089213265787065637420646174756d3a20446973747269627574696f6e4f7261636c65446174756d203d20646174756d5f6461746100168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022491b657870656374205b5f5d203d206f7261636c655f6f75747075747300168a998022495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488896600264653001300f00198079808000cdc3a4009300f00248889660026004601e6ea800e3300130133010375400723014301530150019ba54800246028602a003370e90002444446464b30010018cc004dc3a4005222598009803180c9baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c9660026048007008803a042375a0030064090604200280f8dd700098100012042301e001407060346ea800e00280ba446466002002006446600600260040053016375400291114c004889660026014603a6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c08c0062b30013371290021811000c01a264b300130280048992cc004c0440062b30013025375400d009804204c8acc004c038006264b3001001804c4c96600200300a805402a264b3001302c003806402d0291bad00180520583029001409c604a6ea801a2b300130170018acc004c094dd500340260108132010811102220443023375400b007409460186044002810200c8120dd5000c01600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a0369112cc004c028c074dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0a400e2b300130113024375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002605e00713259800980c000c4c9660020030108992cc004006023011808c046264b30013033003809c0490301bae00140cc60600028170c0b0dd5005c566002602a00315980098161baa00b808403d02d403d0292052302a375401500e40b06eb800502f1816000a054375c00260560048160c0a400502718129baa0068042044804204c375c0028148c0980050241813001401600b005802a04e302400140886048005003801c00e0068128c088005020180f1baa003800a036911192cc004c02c006264b3001001801c4c9660020030048024012009132598009813001c01a00a8118dd7000a04c30230014084603e6ea80122b300130080018992cc00400600713259800800c01200900480244c966002604c007006802a046375c0028130c08c005021180f9baa00480120384070603a6ea800e44464b3001300b0018992cc00400600713259800800c0120090048992cc004c09800e00d005408c6eb40060088130c08c005021180f9baa0048acc004c0200062b3001301f3754009003801204080120384070603a6ea800d2222332298009112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c4c966002605a007159800980a98141baa0048992cc00400600f13259800800c4c9660020030098992cc0040062b300130310028acc004c064c0b0dd5001c4c96600200300b8992cc004006264b3001001806c4c96600200300e80744cc89660020030108992cc004006023011899912cc00400602713259800800c052029014899912cc00400602d13259800800c05e02f017899912cc00400603313259800800c06a03501a8992cc004c10800e2b3001302a303d375402113259800800c072264b300100180ec07603b1332259800800c07e264b30010018104082041132598009824001c5660020270218992cc00400604502281144cc89660020030248992cc00400604b025812c4c966002609a00715980080ac09a264b3001001813c09e04f1332259800800c0a6264b300100181540aa055132598009829001c66002045133035026225980080140ba264b300100181740ba264b3001001817c4c96600200303081840c20611332259800800c0ca264b30010018acc004c16800a3300100189803982d00440cd03a40cd05740ce067033819a0b6305800141586eb8004c15c009058182a800a0a6375800302e81720ac3053002414502b40bd02b413c6eb40060548290c13c00504d1bad001304e016813a09e304c015412902641286eb400604a8268c1280050481bad001304901481120943047013411502141146eb40060408240c1140050431bad001304400280ea08a30420014100607c6ea804203681da03681f8dd6800c069042181f800a07a375a002607c00501740fc607800281d0dd6800981d801405103c181c800a06e37580026070005011808a072303600140d06eb0004c0d400a01d00e40d860660028188c0cc00a01900c80640310341818800a05e302d375400700a40a900a40b900a805402a0148190c0bc00502d181780140220110088042060302d00140ac60526ea801200c813200c8150dd6000c01600a8168c0a80050281815001400e007003801a0563028001409860486ea800e002810a444b300130103023375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c566002605e00519800803466002003009804202680420168042058804402201100840c0605a0028158dd68009816001401502d1815000a050302a002801c00e00700340ac60500028130c090dd5001c005021488966002602060466ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b00d8992cc004c0d400e3300100c8cc00401201f00e406500e404500e40c86eb400601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a0429112cc004c040c08cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200300b805c02e26644b3001001806c4c96600200313259800800c03e264b30010018084042264b300130380038cc00403e330010048acc00400602313259800800c04a02501280944cc89660020030148992cc00400602b01580ac056264b3001303d00380bc05903a1bae00140f4607400281c0dd7000981c8012074303700140d50114071011405101140d46eb000602101040e0606a0028198c0d400a01d00e80740390361819800a062375a002606400500b40cc60600028170dd6800981780140210301816800a056375a002605800500540b460540028140c0a800a007003801c00d02b1814000a04c30243754007001408522259800980818119baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c4c966002606a00719800806466002009159800800c03a264b3001001807c03e01f00f899912cc00400602313259800800c04a02501280944c9660026074007014809a06e375c00281d0c0dc0050351bae001303600240dc6068002819201c80ca01c808a01c8190dd6000c03601a81a8c0c80050301819001402e01700b805a066303000140b86eb4004c0bc00a0108180c0b400502b1bad001302c002802a05a302a00140a06054005003801c00e0068158c0a000502618121baa003800a042488888c966002602601b13259800800c07e264b30010018acc004c0b400a2b300130153028375400313259800800c086264b30010018992cc00400604713259800800c4c9660020030258992cc00400604d0268992cc004c0d000e2b3001301c302f375400d13259800800c0a2264b3001001814c0a626644b3001001815c4c96600200302c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944cc89660020030348992cc004006264b300100181b44c966002003159800982200144cc09c038896600200513302900d225980080146600200f19800802c566002606060866ea8062264b300100181e44c96600200313259800800c0fa264b30010018acc004c13000a26644b300130360018992cc00400608513259800800c10e087132598009828801c4cc0d000489660020050078992cc0040063300100189801182a001c11d02b411e08f047823a0aa3052002414104441386eb00060870434144609c0028260c128dd5002c566002606600313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a056823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004c0f0006264b300100182144c966002003043821c4c96600260a20071330340012259800801401e264b30010018cc0040062600460a800704740b1047823c11e08e82a8c148009050411104e1bac001821c10d0511827000a098304a375400b15980099b8748018006264b300100182144c966002003043821c4cc89660020030458992cc0040062b3001305300289981b001912cc00400a2b3001303d3050375400713259800800c126264b3001001825412a0951332259800800c132264b3001001826c13609b13259800982d801c03e09c82c0dd6800c13505b182c000a0ac375a00260ae00504a416060aa0028298c144dd5001c12104e44c96600200319800800c4c008c15800e0928172093049824c125057182a00120a482320a0823411a08d046415060a20028278dd60009828001410e0868288c13800504c18251baa0058acc004cdc3a401000313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401400313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05a823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401800313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a401c00313259800800c10a264b3001001821c10e264b3001305100389981a000912cc00400a00f13259800800c66002003130023054003823a05c823c11e08f047415460a400482820888270dd6000c10e0868288c13800504c18251baa0058acc004cdc3a402000315980098251baa005801410504b4105047208e411c8239047208e411c82390470cc00400626605e03244b300100281244c96600200304282144c9660020030438992cc004006089044822411226644b300100182344c966002003159800982a001466002003130073054008823a068823a0a2823c11e08f047415460a40028280dd7000982880120a4304f00141346eb00060850424140609a004825a07e8148c11cdd5001c0fd04940fe07f03f81fa09a304a0014120609400503d81ec0f607a8258c12000504618221baa01881da08281da04c81da04c8992cc00400607903c81e44c8c00cc128010dd6800c0f104a1823801208a8992cc00400607503a81d44c8c00cc120010dd6800c0e90481822801208681ba08281bc0de06f037411460840028200c10800a06b03581ac0d50431820000a07c375a002607e0050324100607a00281d8dd6800981e00140bd03d181d000a0703758002607200502c8162074303700140d46eb0004c0d800a05302940dc60680028190c0c0dd5003409d02d409d0311bac00181340990341818800a05e3031002812409204902440c8605e0028168c0bc00a04502281140890301816800a05630293754003020409902040a902081040820408170c0ac00502918139baa0118acc004c040036264b300100180fc4c966002003159800981680146600200300381020108102054810408204102040b860560028148c09cdd5008c0790242048159800980798129baa010899912cc004c050c09cdd5000c4c8cc896600330013233001001323300100137566006605a6ea8078896600200314bd7044c8cc88cc88cc008008004896600200310038991981b1ba733036375200a6606c60660026606c606800297ae0330030033038002303600140d06eacc0c400cdd718170009980180198198011818800a05e2259800800c528456600266e3cdd718181bac30300010288a518998010011818800a05440b94a14a28142264b30013371064b3001301f302c375400313259800800c5660026034605a6ea8006264b3001001814c4c96600200313259800800c0ae264b300100181640b20591332259800800c0ba264b3001001817c0be05f13259800981d001c6600200f1375a6016606c6ea8c0e4c0d8dd5181c981b1baa303930363754013030405503040dc6eb400605e81d0c0dc0050351bad0013036002816206e303400140c8606800502a81540aa05481a8c0c800503018171baa001814205681440a205102840cc6060605a6ea8006290002054301b302c3754603260586ea8010dd6980098161baa302f302c3754605e60586ea801a2b3001323259800980b800c4cdc41bad3031302e37540046eb4c00cc0b8dd5181898171baa3031302e3754011159800980d000c528c528205640ac60586ea8004c0bcc0b0dd5181798161baa302f3030303030303030303030303030302c375403b1323259800800c09a2b300130320018a51813205e40bc64660020026eb0c074c0b8dd500f912cc004006297ae0899912cc0056600266ebcc0d0c0c4dd5001004456600266ebcdd319198008009bab301f3032375400644b30010018a5eb7bdb1822653001375c606600337566068003303800248896600266e452201000038acc004cdc7a441000038800c401503444cc0e4cdd81ba9003374c0046600c00c00281a0606c00281a0dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606c66ec0dd48179ba60034bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8019801c4cc0e8cdd81ba9033374c00e00b15980099b8f03300389981d19bb037520666e9801c00626607466ec0dd48019ba60023300600600140d481a8606e00281a8c8cc0040052f5bded8c044b300100189981a99bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0cc0066eb4c0d000660700049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981c99bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981c99bb037520066ea0008cc0180180050342068181b000a06840b913375e604060626ea8008cdd2a40086606600a97ae08a5040b914a081722660660046600800800313300400400140b86064002606600281826002444b3001301b001880146600200700199b86002001400c81624466e0ccdc1001000a410112f5223371266e08dd698188011bad30313032001337046eb4c0c4004dd69818981900148cdc4240006eb4c0c0c0c40066e092080897a981798161baa302f302c375400c91111119199118119981b8079981b9811181a9baa3038303537540086606e6ea0cc896600260100051598009804000c56600266012004003130030018980180120688a9981aa492b6578706563742069735f76616c69645f726174696f28706f73745f726574656e74696f6e5f7969656c6429001640d115330354911c6578706563742069735f76616c69645f726174696f28666c6f6f7229001640d06eb0c090c0d4dd50024c004dc4a400137586044606a6ea80126eb4c02cc0d4dd50024dd6981c181c981c981c981c981c981a9baa00448888c96600260160091598009805800c5660026601800200910018991919911805998201ba83370066e08dd6982080400119b82375a6082006002660806ea0cdc100080125eb80dd6981f98200009bad303f304000630083303d375066e08dd6981f00099b814820225e8c966002600e00b15980099b890050048acc004cdc48022410112f513370000a6601e66e0401001566002600e00315980099b8900148202d2244e26464646464646466e04cdc019b813370066e04cdc019b810073370600c900219b8300548030cdc18022406066e0c00d20f0013370600490500599b830014838138cdc19980b000803a4101ec086602a00200c6602800200a6602600200866024002006660220020046602000200266e0c00520288a9981d2491b6578706563742073203c3d206d61785f737570706f727465645f73001640e5153303a4910d6578706563742073203e3d2030001640e5153303a4911565787065637420725f6d6178203c3d207363616c65001640e5153303a4911465787065637420725f6d6178203e3d2062617365001640e5153303a491106578706563742062617365203e3d2030001640e464b30013371090405a4489800c52080b489138800a0723370666e08c02cdd6981f000a4190026eb4c0f8c0fc004cc0f4dd418059bad303e303f0014bd70199118049981f1ba83370266e08dd6981f80180099b82375a607e00c0046607c6ea0cdc1001000a5eb80dd6981e981f0009bad303d303e00440dd1533038491206578706563742069735f76616c69645f726174696f287261775f7969656c6429001640dd15330384911d6578706563742069735f76616c69645f726174696f28687572646c6529001640dc646644b300130070028acc004cdc42400000313303e37500046607c6ea00052f5c1153303a490116657870656374207374616b65645f75736472203e2030001640e5153303a49124657870656374206e65745f64697374726962757461626c655f696e636f6d65203e3d2030001640e46eb4c0f4c0e8dd50009bad3027303a3754002607860726ea802097ae02332232598009811800c52f5c210100008101010044cc0e4dd419b8300300133039375066e0c0080052f5c081a0c96600266e200052000899b8148000006200281a0cc010008004dd6981b8009bad3037303800123370660086eb4c0dc004dd6981b981c000980300322a660549217a6578706563740a20202020202076616c69646974795f72616e67655f7374617274735f6265666f7265280a202020202020202073656c662e76616c69646974795f72616e67652c0a202020202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d702c0a20202020202029001640a5153302a491696578706563740a20202020202072656465656d65722e7061796c6f61642e616374696f6e2e74696d657374616d70203e2070726576696f75735f6f7261636c655f74696d657374616d70280a20202020202020206f7261636c655f696e7075742c0a20202020202029001640a44605e60606060606000315330294913f657870656374206e6f5f6f7261636c655f746f6b656e735f6d696e7465642873656c662e6d696e742c206f7261636c655f6e66745f706f6c6963795f696429001640a0605860526ea8c058c0a4dd5000918169817181718171817000981598141baa0018a9981324815665787065637420536f6d65286f7261636c655f696e70757429203d0a20202020202066696e645f6f7261636c655f696e7075742873656c662e696e707574732c206f7261636c655f6e66745f706f6c6963795f696429001640946052604c6ea8040cc044dd6181498131baa01723010323322330020020012259800800c00e2646644b30013372291113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902a44cc014014c0c401102a1bae302a001375a6056002605a0028158c8c8cc004004dd5980b98151baa3017302a375400844b3001001801c4c8cc896600266e440a400a2b30013371e0520051001803205689980280298190022056375c60560026eacc0b0004c0b800502c0a5eb7bdb180520008a9981224813b657870656374205075626c6973685969656c644f7261636c652872656465656d657229203d206f7263686573747261746f725f72656465656d65720016408c22232598009807800c4c9660020030038992cc0040062b300130290028cc00400600b0044035004409900480240120088150c09c00502518119baa0048acc004c030006264b3001001801c4c96600200315980098148014566002602260486ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0b400a330010038cc0040060130084039008403900840a900880440220108170c0ac0050291815801401a00d00680320583029001409c604a6ea800600881120088132009004802401102a1813800a04a3023375400900240808100c084dd50019112cc004c038c084dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981500144c9660026026604c6ea8012264b3001001803c4c96600200313259800800c026264b30010018acc004c0bc00a330010038992cc004c060006264b300100180644c966002003159800981900144c966002603600313259800800c03e264b30010018acc004c0d400a33001001805c04101440410324042021010808206c303300140c4605e6ea800a2b300130180018992cc00400601f13259800800c042021010899912cc00400602513259800800c04e027013899912cc00400602b13259800800c05a02d0168992cc004c0f000e02501740e46eb400602c81e0c0e40050371bad0013038002809a072303600140d06eb4004c0d400a02081b0c0cc00503118179baa002807205840b0605a6ea800601a817a01b00d806c0350331818000a05c302c3754005159800980a800c56600260586ea800a00d00b40b500b40a48148c0a8dd5000c02900e402902c402a01500a8052060302d00140ac605a00500880440220108170c0ac00502918139baa0048032048132598009809800c566002604e6ea800a00f00640a11598009808000c4c9660020030078992cc0040060110088044022264b3001302e003805402502b1bae00140b860560028148c09cdd50014566002603200313259800800c01e264b3001302d002804c02102a1815800a052302737540050064090812102418129baa001802a04e802c01600b00540ac60500028130c0a000a007003801c00d0291813000a04830223754007001407c403a01d00e8072038332232598009802980c1baa0018980c9919bb0301d001301d301e0013758603860326ea80062a6602e9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164058646600200200644b30010018a60103d87a80008992cc004cdd7980d00099ba548010cc074cdd2a40046603a6ea40112f5c097ae0898049980e9ba73301d301a0013301d301b0014bd7025eb82266006006603e00480c0c07400501b1bab3019301a301a301a301a301a301a301a301a301a3016375400e6eb8c064c058dd54c004896600200314bd7044cc068c05cc06c004cc008008c07000501948896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901648888c8cc004004014896600200310058992cc004006266008604000400d1330053020002330030030014078604000280ea6eb0c00cc058dd5003a44446464646644a6603a66e5924012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea406d220100132598009806180f9baa00189929980f99b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980a18109baa0018992cc0040062b3001300f3022375400313259800800c076264b300100180f407a03d01e899912cc0040060411325980098160014401a0428148c0a80050281bae001302900240a8604e0028128c08cdd5000c071020407203901c80e2050302530223754003153302049013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d0016407c602060426ea8c038c084dd5000981198101baa0018a9980f24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640746601400c4646600200260066eacc038c084dd5180718109baa0022259800800c528456600266e3cdd7181280080f4528c4cc008008c09800501f2046300100130070072223259800801c4c8c8cc88cc024008cdc524501280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100c204a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80f901f1bac3022002375a60400026466ec0dd418100009ba73021001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a604a003337149101023a200098008054c09800600a805100a181400144ca6002015302500199b8a489023a200098008054c098006600e66008008004805100a1814001204c3028001409466e29220102207d0000340886eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900920443758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720483371666e000056600266e2000520148a40c11481b9024002200c33706002901019b8600148080cdc70020012042375c0068128dc5245022c200022323300100100322598009805800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003407080e0c00c00c44646600200200644b30010018a6103d87a80008992cc004c010006260106603800297ae0899801801980f001202e301c00140688b201a180780098051baa0108a4d153300849011856616c696461746f722072657475726e65642066616c73650013656401c1" + : "5914ad0101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae00248888888896600264653001300a00198051805800cdc3a4009300a0024888966002600460146ea800e33001300e300b37540072300f301030100019ba5480024601e6020003370e90004dc3a4005223233001001003223300300130020024888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260146603200297ae0899801801980d801202a3019001405d2259800980298099baa00289919192cc004c06c00a26464b3001300a0018acc004c064dd5001401a2c80d22b30013009001899192cc004c07c00a0111640706eb4c074004c064dd500145660026020003159800980c9baa00280345901a459017202e405c602e6ea8004c06800e2c80c0c966002602e00315980099b8948010c0580062d13007301600140551640606ea8c064004c064004c050dd500145901248966002600a60266ea800a264646644b3001301c003802c590191bad3019001375c6032004603200260286ea800a2c809244b30013005301337540051323232332259800980e801c4c966002601660326ea8006264646644b300130220038992cc004c04000626464b300130250028074590221bae3023001301f375400f1598009807800c566002603e6ea801e01916408116407480e8c074dd500345901f1bae301f001375c603e004603e00260346ea80062c80c0c0700162c80d0dd7180d000980d001180d000980c800980a1baa0028b202491192cc004c01800626464b3001301b0028024590181bae3019001301537540071598009802800c4c8c96600260360050048b2030375c6032002602a6ea800e2c809901318099baa00291192cc004c01800626464b3001301b0028024590181bad3019001301537540071598009802800c566002602a6ea800e00516405916404c8098c04cdd500124444453001332232598009806180d1baa0018980d9919bb0301f001301f30200013758603c60366ea80062c80c8c8cc00400400c896600200314c103d87a80008992cc004cdd7980e00099ba548010cc07ccdd2a40046603e6ea40112f5c097ae0898081980f9ba73301f301c0013301f301d0014bd7025eb82266006006604200480d8c07c00501d1bab301b301c301c301c301c301c301c301c301c301c3018375401c6eb8c06cc060dd51919192cc004c030c068dd5000c4c966002602660366ea8006264b3001300e301c3754003132323322598009812801c40162c8110c088004dd718110011811000980e9baa0018b2036301f301c3754003164068601e60366ea8c034c06cdd5180f180d9baa0018b2032330083758601860346ea80408c8cc004004c00cdd59807180e1baa300e301c375400444b30010018a508acc004cdc79bae302000101a8a518998010011810800a0364078600200244b30010018a5eb822660386032603a00266004004603c00280da4464b3001300c0018992cc004c080006266010603e00200716407460366ea800e2b3001300b0018992cc004c080006264b3001300e301c3754003132323259800981200144cc034c08c00c4cc03400401e2c8108c088004c088004c074dd5000c5901b180f800c5901d180d9baa0038b2032406460326ea800a44b3001300b30193754005132323259800981080144cc89660026020603c6ea800a2646464b3001302600289980618128018992cc004c050006264b30013028001899192cc004c05c006264b3001302b0018998089815000804c5902818131baa0028acc004c05800626464653001375a6058003375a6058007375a60580049112cc004c0c001201d1640b4302c001302b001302637540051640908120c090dd50009813800c5902518119baa0028acc004c04c0062b3001302337540050058b20488b2042408460426ea80062c8118c090004c090004c07cdd500145901d18100018992cc004c03c0062b3001301e37540050058b203e8acc004c03800626464b30013024002803c590211bae3022001301e3754005159800980a800c4c8c96600260480050078b20423022001301e375400516407080e101c180e1baa0018b203c301f001301f001301a37540051640609114c0048966002601c60386ea800a2646464b300130240028992cc004c048c080dd5000c4c8c966002604e00313259800980a98119baa00189919191919194c004dd69816800cdd61816802cdd618168024dd69816801cdd69816801244444b300130330068992cc004c084c0bcdd5000c4c8c8cc89660026070007132332259800981d801c4c8cc8966002607c007133021303d01813302901b225980080140822646644b300130430018998151821000898021821802c590401bae304000130410013758607e00481ea2c81d8dd6981d8009bad303b00c303b00b8b2070375a60700026eb4c0e0028c0e00262c81a8dd6981a8009bad30350023035001303037540031640b860640171640c0302d001302c001302b001302a001302900130243754003164088604c005164090604c00260426ea80062c80f8c08c00e2c8108dd618110009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8cc8966002604c007133008302500513300e0020068b20463023001375a604600460460026044002603a6ea800a2c80da44b3001300e301c37540051323232323298009bad30250019bad30250049bad3025003981280124444b3001302a00589980618148048998090008054590270c094004c090004c08c004c088004c074dd500145901b48966002601c60386ea800a264646464646530013758604c003375a604c00b375a604c009375a604c007302600248888966002605800d13300e302b00b1330140011323322598009817801c03e2c8160dd718160009bae302c006302c0058b205218130009812800981200098118009811000980e9baa0028b2036912cc004c038c070dd500144c8c8c8c8ca60026eb0c0940066eb4c0940126eb4c09400e604a00491112cc004c0a801626601860520122660240022646644b3001302d003806c5902a1bae302a001375c605400a605400916409c3025001302400130230013022001301d375400516406d301a3754006911111192cc004c04c00a264b300130270018992cc004c054c08cdd5000c4c8c8c8cc8966002605a00713259800980d98149baa00189919191919194c004c0cc0066eb0c0cc0166eb4c0cc0126eb4c0cc00e6066004911112cc004c0e401a2660486eb0c0e002c8966002005133026006225980080144cc0880144cc088024566002605460706ea80462646464b3001304000289919912cc004c0c000a264b300130440018998179bac304300122598008014012266046608a00426002608c004821a2c8208c0fcdd5001c566002605e005132598009822000c4cc0bcdd61821800912cc00400a0091330233045002130013046002410d164104607e6ea800e2b300130360028992cc004c11000626605e6eb0c10c0048966002005004899812182280109800982300120868b2082303f375400715980099b874801800a2646464b300130460028998189bac304500322598008014566002606a60866ea800e264646644b3001304c0038054590491bad3049001375a6092004609200260886ea800e2c821226604c608e004260026090004822a2c8218c110004c110004c0fcdd5001c56600266e1d20080028992cc004c11000626605e6eb0c10c0048966002005004899812982280109800982300120868b2082303f375400715980099b874802800a264b300130440018998179bac30430012259800801401226604a608a00426002608c004821a2c8208c0fcdd5001c56600266e1d200c0028992cc004c11000626605e6eb0c10c0048966002005004899813182280109800982300120868b2082303f375400715980099b874803800a264b300130440018998179bac30430012259800801401226604c608a00426002608c004821a2c8208c0fcdd5001c56600266e1d20100028acc004c0fcdd5001c0062c82022c81e903d207a40f481e903d207a40f481e8c0f0dd500089981200109981600b112cc00400a03d1323322598009823000c4cc0b4c1140044c010c1180162c8218dd7182180098220009bac30420024100607e0071640f4607c002607c00260726ea80462c81ba2646004607c0066eb4c0f000903a44c8c008c0f000cdd6981d00120708b206c1819800981900098188009818000981780098151baa0018b2050302c0058b20543758605400260540046054002605200260486ea80062c8110c0980062c8120c088dd500545660026024005132598009813800c4cc020c09800400a2c8120c088dd50054590202040159800980898101baa009899912cc004c050c088dd5000c4c8cc89660033001323300100132330010013756600660506ea8078896600200314bd7044c8cc88cc88cc00800800489660020031003899198189ba733031375200a66062605c00266062605e00297ae0330030033033002303100140bc6eacc0b000cdd718148009980180198170011816000a0542259800800c528456600266e3cdd718159bac302b0010248a518998010011816000a04c40a54a14a28122264b30013371064b3001301f3027375400313259800980d18141baa001899191919912cc004c0c800e266026606200a26eb4c020c0b8dd5181898171baa3031302e37546062605c6ea801a2c8178dd698178009bad302f002302f001302e0013029375400316409c605660506ea800629000204c301b302737546032604e6ea8010dd6980098139baa302a302737546054604e6ea801a2b3001323259800980c800c4cdc41bad302c302937540046eb4c00cc0a4dd5181618149baa302c30293754011159800980d000c528c528204e409c604e6ea8004c0a8c09cdd5181518139baa302a302b302b302b302b302b302b302b3027375403b13259800981619198008009bac301d3029375403e44b30010018a5eb8226644b30015980099baf302f302c375400401115980099baf374c64660020026eacc07cc0b4dd5001912cc004006297adef6c608994c004dd71817000cdd59817800cc0cc0092225980099b91489000038acc004cdc7a441000038800c401503044cc0d0cdd81ba9003374c0046600c00c002818060620028178dd32cc00528452f5bded8c113232330010014bd6f7b630112cc00400626606266ec0dd48159ba60034bd6f7b63044ca60026eb8c0bc0066eacc0c000660680049112cc004cdc8017801c4cc0d4cdd81ba902f374c00e00b15980099b8f02f00389981a99bb0375205e6e9801c00626606a66ec0dd48019ba60023300600600140c4818860640028180c8cc0040052f5bded8c044b300100189981819bb04c11453646973747269627574696f6e5f6f7261636c65004c010101004bd6f7b63044ca60026eb8c0b80066eb4c0bc00660660049112cc004cdc8244113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c010101000058acc004cdc7a44113646973747269627574696f6e5f6f7261636c650000389981a19bb04c011453646973747269627574696f6e5f6f7261636c65004c0101010000189981a19bb037520066ea0008cc01801800503020601818800a05e40a913375e604060586ea8008cdd2a40086605c00a97ae08a5040a914a0815226605c0046600800800313300400400140a8605a002605c002815a29462c814a6002444b3001301b001880146600200700199b86002001400c81424466e0ccdc1001000a410112f5223371266e08dd698160011bad302c302d001337046eb4c0b0004dd69816181680148cdc4240006eb4c0acc0b00066e092080897a981518139baa302a3027375400c91111119199118119981900799819181118181baa303330303754008660646ea0cc896600260100051598009804000c56600266012004003130030018980180120608b20608b20603758604860606ea801260026e2520009bac302230303754009375a601660606ea80126eb4c0ccc0d0c0d0c0d0c0d0c0d0c0c0dd50022444464b3001300b0048acc004c02c0062b30013300c0010048800c4c8c8cc88c02ccc0ecdd419b80337046eb4c0f0020008cdc11bad303c0030013303b375066e080040092f5c06eb4c0e8c0ec004dd6981d181d80318041981c1ba8337046eb4c0e4004cdc0a410112f464b300130070058acc004cdc4802802456600266e240112080897a899b800053300f3370200800ab300130070018acc004cdc4800a41016912271323232323232323370266e00cdc099b803370266e00cdc080399b8300648010cdc1802a401866e0c01120303370600690780099b83002482802ccdc1800a41c09c66e0ccc05800401d2080f604330150010063301400100533013001004330120010033301100100233010001001337060029014459035459035459035459035459035192cc004cdc424101691226003148202d2244e200281a8cdc199b82300b375a60720029064009bad3039303a00133038375060166eb4c0e4c0e80052f5c066446012660726ea0cdc099b82375a607400600266e08dd6981d0030011981c9ba83370400400297ae0375a607060720026eb4c0e0c0e40110334590334590331919912cc004c01c00a2b3001337109000000c4cc0e4dd40011981c9ba80014bd704590354590351bad3038303537540026eb4c09cc0d4dd5000981b981a1baa00825eb808cc88c966002604600314bd70810100008101010044cc0d0dd419b8300300133034375066e0c0080052f5c08180c96600266e200052000899b814800000620028180cc010008004dd698190009bad3032303300123370660086eb4c0c8004dd698191819800980300322c812a2c81288c0a8c0acc0acc0ac0062c8120c09cc090dd5180b18121baa001230283029302930293029001302630233754003164084604860426ea8024cc03cdd6181218109baa01723012323322330020020012259800800c00e2646644b300133722910113646973747269627574696f6e5f6f7261636c65000028acc004cdc7a44113646973747269627574696f6e5f6f7261636c65000028800c01902644cc014014c0b00110261bae3025001375a604c00260500028130c8c8cc004004dd5980b98129baa30173025375400844b3001001801c4c8cc896600266e4409400a2b30013371e04a0051001803204e8998028029816802204e375c604c0026eacc09c004c0a40050270a5eb7bdb180520008b203e08b2012180500098029baa00a8a4d13656400c1", + Type.Tuple([PolicyId, PolicyId]), + [proxyPolicyId, oracleNftPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1OrderOrderSpend { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + protocolScripthash: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5919070101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00168a998022494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d657256310016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b30010078999119912cc004c00c0062b3001301b375401700280720388acc004c0240062b3001301b375401700280720388acc004c0100062b3001301b375401700280720388072030406080c0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800e446466002002006446600600260040052301d301e301e0019112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003203291111919800800802912cc004006200b13259800800c4cc010c08c00801a26600a6046004660060060028108c08c0050204dc0240032259800800c52f5c113301d301a301e00133002002301f00140712301d301e001911919800800801912cc00400629422b30013371e6eb8c08000400e2946266004004604200280d101e4c060dd5004c8c074c078c078c078c078c078c07800644646600200200644b30010018a508acc004cdd7801980e1810000c528c4cc008008c08400501a203c4888888888888a600244646600200200644b30010018a6103d87a80008992cc004c010006260246605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002602a00313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d3754007159800980d800c4c9660020030068992cc00400600f0078992cc004c0d000e26602a00244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130160018992cc00400600d13259800800c01e00f13259800981a001c4cc05400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981b801c4cc060004896600200500a8992cc0040063300100d800c4c008c0e800d00d403a01d00e8072076303800240d900b40d06eb000601500a40dc60680028190dd68009819801401d0341818800a05e302d375400715980099b8748020006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260680070058042062375a00300740d060620028178c0b4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014c024026600c00c91114c00488cc0180088cdd7981818169baa0010029112cc004c054c0b0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018acc004c0dc00a2b3001301b3032375400b13259800800c022264b30010018992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c566002609600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c6600200313259800981818239baa0188992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f027899912cc00400605313259800800c0aa05502a81544cc896600200302c8992cc0040062b3001305d0028992cc004c108006264b3001001817c4c96600200303081840c2061132598009830801c05a06282f0dd7000a0c2305e001417060b46ea800a2b300130480018acc004c168dd5001404e05c82da05c82b9057182c1baa001816a0b4816c0b605b02d417860b600282c8dd7000982d00120b6305800141586eb8004c15c009058182a800a0a6375c00260a800482a8c1480050501bae00130510024148609e0028268dd70009827001209e304c001412860906ea80620388228566002605e608c6ea8056264b300100180e44c96600200301d80ec4cc896600200301f8992cc0040062b30013050002899818801912cc00400a2b30013036304d375400713259800800c08e264b30010018992cc00400604b13259800800c56600260ac00519800801c4c966002607600313259800800c0a2264b30010018acc004c16400a264b3001303e0018992cc00400605713259800800c56600260b800519800800c0b605881f205882ca05902c81640b105d182d000a0b0305637540051598009822000c4c96600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944c96600260c6007034819a0c0375a003032418c60c000282f0dd6800982f80140bd060182e800a0b6375a00260b800502c417460b400282c0c158dd500140a905320a6305437540030294159029814c0a605282d0c15c00505518299baa0028acc004c1040062b300130533754005028813a0a8813a0a0414060a26ea800604c81c204c829a04d0268134099057182a000a0a430540028124092049024415460a40028280c138dd5001c08904b44c966002003159800981b98271baa0018992cc00400604913259800800c09604b1332259800800c09e264b300100181440a20511332259800800c0aa264b3001001815c0ae05713259800982e001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c2061132598009830801c4c040c18404606282f0dd7000a0c2305e00141706eb8004c17402105e182d803a0b281620b2375a00302b417060b200282b8dd6800982c00140a1059182b000a0a8375800260aa005025812a0ac30530014144609e6ea80060468262047023811c08d0541828801209e810209a81040820410204144609c0028260dd60009826801407603a8270c12c00504918239baa01580da08880da04080da04080da04080da04080da04080da04080da04080da04080da04080da04080da09080dc06e03701b413060920028238c12400a03301980cc06504a1823800a08a304700280bc05e02f0174120608a0028218c11400a02b01580ac0550461821800a0823043002809c04e0270134110608200281f8c10400a023011808c045042181f800a07a303f002807c03e01f00f4100607a00281d8c0f400a01b00d806c03503e181d800a072303b002805c02e01700b40f0607200281b8c0e400a013009804c02503a181b800a06a3033375400b00740c100740d1007803c01e00e81c0c0d4005033181a801401600b005802a06c303300140c46066005003801c00e00681a0c0c400502f18169baa003800a054911919800800801912cc004c058006266e2922010130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340ac815a446600c00446601660086eacc030c0b4dd5180618169baa00100248888c8c966002603001b1332259800980d18189baa0018992cc004c084c0c8dd5000c56600266e3cdd7181b18199baa001375c602e60666ea8c048c0ccdd5180918199baa0038999129981999b9649010d63726564656e7469616c3a3a200037326600c0029101001330100020013756601e60666ea8080cdd2a40046606a6ea40b92f5c1153303149013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640c102940c0606a60646ea8c0d4c0c8dd5180898191baa30353032375400302740bc64b30010018acc004c064c0c0dd5000c4c96600200302c8992cc00400605b02d816c0b626644b3001001817c4c966002003159800981d00146600200310068182016818206e81840c206103040ec607000281b0dd7000981b8012070303500140cc60626ea8006056817205702b815c0ad036192cc004c064c0c0dd5000c4c966002603660626ea80062606a60646ea80060548178c054c0c4dd5180818189baa30343031375400302840b8660066eb0c03cc0c0dd500e816198031bac30333030375403a037159800980f006c5660026030605e6ea806a33001303330303754606660606ea806a6eb0c0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecc0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecdd5980618181baa01d48888c8cc00400401488c966002603e003133015006375c6074606e6ea800a2b30013025001899198008009bac303b3038375400644b30010018a518acc004cc014014c0f0006266004004607a00314a081b103a45660026040003132330010013758607660706ea800c896600200314a115980099802802981e000c528c4cc008008c0f400503620748acc004cdc3a400c003132337126eb4c0ec004c8cc004004dd6181e181e801112cc0040062900044cc896600266010010005133700002900144005039181e80099801001181f000a0763037375400515980099b87480200062646644b30013028303937540051598009814181c9baa303d303e003899b89375a607a60746ea8008006266e20dd6981e981d1baa00200140dd14a081b8c0ec004dd6981d981c1baa00330373754602c606e6ea80162b30013370e9005000c4c8cc8966002605060726ea800a2b3001302830393754607a607c0071337120026eb4c0f4c0e8dd500144cdc40009bad303d303a375400481ba2941037181d8009bad303b30383754006606e6ea8c0e8c0dcdd5002c4cc048010cdd2a4004660726074606e6ea80092f5c081a1034206840d081a1034181a9baa001409102d45660026030605e6ea806a330013033303037540353253302f3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40b522010013259800980d18189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980e98199baa0018992cc0040062b3001301d3034375400313259800800c0be264b300100181840c2061030899912cc00400606513259800981f0014401a06681d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0b903240ba05d02e817207430373034375400302c40c4602e60666ea8c048c0ccdd5000981a98191baa001814a05e3300400102d3758601e60606ea80766600c6eb0c0ccc0c0dd500e80da444b3001301b3032375400313232598009811981a1baa0018acc004c96600330013371e6eb8c0e4c0d8dd5002818d28528a0668a51899912cc004006330010018cc004cdc79bae301c30383754602e60706ea800400e942945035400900d400a005002801207a14a2602a606c6ea80150331bae30383035375400313259800980f181a9baa0018992cc004c07cc0d8dd5000c4c9660026040606e6ea8006264b30013375e607860726ea8004c080cc0ecc080cc0ecc0f0c0e4dd500225eb80cc0ed300103d87a80004bd704660026eacc060c0e4dd5000cc060c0e4dd5180c181c9baa0069119b89337020026eb4c0f8c0fcc0fcc0fcc0ecdd50140012444b30010028a508994c004c966002604c607a6ea800626eb4c0f8c104dd59820981f1baa0018a400081d8c1000066ebcc100c1040066eac00d22259800800c566002600400d13300500348002294103d44c96600266ebcc1000053010140008acc004cc018010dd6982098221bab3041001898019ba630450028a5040f91598009980300224001130030078a5040f881f0c10c0050410ca60020030049119820801198209ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0fc0066eacc10000660880069112cc004cdc8a441000038acc004cdc7a441000038998029815198229ba60024bd70000c4cc015300103d87a8000006410119800803c006446600e0046608e66ec0dd48029ba6004001401c82006084004820229422942294104122941036181d981c1baa0018a9981b2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640d465300130010019bad303b303837540053758603860706ea80952225980099b8800248002298103d87a800089980180080120701112cc00400a298103d87a80008acc004c0880062604266078607a00497ae08cc00400e607c005301b001400c81b903b454cc0d524014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640d06530010019bac303a30373754049480010011112cc00400a298103d87a80008acc004cdd7981e00100344c080cc0ecdd4000a5eb8233001003981e8014cdc0000a4004801903620748a9981a248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640cc6070606a6ea80162a6606692019d6578706563740a2020202020202020202076315f315f7263315f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c902b40c8606e60686ea8c0dcc0d0dd51809981a1baa00130363033375400302840c0812205a40b48168c004004888c9660020071323233223300a00233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051018206e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81890311bac3034002375a60640026466ec0dd418190009ba73033001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606e003337149101023a200098008054c0e000600a805100a181d00144ca6002015303700199b8a489023a200098008054c0e0006600e66008008004805100a181d0012070303a00140dc66e29220102207d0000340d06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901520683758007133006375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40d866e2ccdc0000acc004cdc4000a402914818229037206c004401866e0c00520203370c002901019b8e00400240cc6eb800d0371b8a4881022c2000060306ea8024dc3a40086e1d2000805402a01500a407060300026030603200260286ea800e2c80886026002601c6ea8052293454cc0312411856616c696461746f722072657475726e65642066616c73650013656402c1" + : "5915d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e9520009180a980b180b000c896600200314bd7044cc054c048c058004cc008008c05c00501448c054c05800644646600200200644b30010018a508acc004cdc79bae30180010038a51899801001180c800a02640592232330010010032233003001300200298081baa00a9180a980b180b180b180b180b180b000c88c8cc00400400c896600200314a115980099baf003301430180018a51899801001180c800a0264059370e90034dc3a4011370e9005244444444444466446644b3001301400a8992cc004c054c084dd5000c4c966002603460446ea80062b30013371e6eb8c098c08cdd50009bae301130233754601e60466ea8c03cc08cdd519914c004c00800a2003223259800980d800c4c8c966002605c0050048b2056375c605800260506ea800e2b3001301f001899192cc004c0b800a0091640ac6eb8c0b0004c0a0dd5001c59026204c302637540049112cc004c06cc09cdd500244c8cc8966002605e00313259800980f98159baa001899191919912cc004c0d400e264b30013025303137540031323232323232323232329800981f800cc0fc026607e011303f007981f8034c0fc016607e009303f003981f8012444444444b3001304900a89981018240098998100040998100038998100030998100028998100020998100018998100010998100008998100048992cc004c0e4c114dd500b44c8c8c8c8ca60026eb8c138006609e003375c609c00b375c609c009375c609c007375c609c0049111112cc004c15401626464b30013046001899192cc004c16400a0211641586eb8c15c004c14cdd50014566002609400315980098299baa00280745905445905120a23051375400260a800b164148304e001304d001304c001304b0013046375402d1641102b300130383044375402d132323259800982600144cc0c8dd61825801912cc00400a2b3001303d30493754007132323259800982880144cc098c14000c4c9660026082003132598009829800c4c8c966002608800313259800982b000c4cc0acc1540040b22c8298c144dd500145660026090003132323298009bad30570019bad30570039bad305700248896600260b60090318b20b0182b800982b00098289baa0028b209e413c609e6ea8004c1480062c8280c138dd50014566002608a00315980098271baa00281445904f45904c2098304c3754003164138609e002609e00260946ea800e2c8242264b3001303e304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590491825000982500098229baa0168b20868b208c181f800981f000981e800981e000981d800981d000981c800981c000981b80098191baa0018b206030340058b20643032001303200230320013031001302c37540031640a8605c0031640b06eb8c0b0004c0b4004c0a0dd50024590260888c96600260340031323259800981680140122c8150dd7181580098139baa0038acc004c078006264b3001302c0018998091bac302b0012259800801401633001007981680144c004c0b800900720568b205230273754007159800980d800c4c96600260580031330123758605600244b3001002802c6600200f302d002898009817001200e40ad1640a4604e6ea800e2b3001300d00189919912cc004c0b80062660286eb0c0b400489660020050078cc004026605e0051300130300024024816a2c8158dd69815800981600098139baa0038acc004c03000626464b3001302d00280245902a1bad302b001302737540071598009805800c4c8c966002605a0050048b2054375a6056002604e6ea800e2b30013370e9006000c4c8c966002605a0050048b2054375c6056002604e6ea800e2c8129025204a40948129025204a3025375400464b300130173023375400313259800980c98121baa0018981418129baa0018b2046301230243754602060486ea8c09cc090dd5000c59022198019bac300f3023375403204113300a3756601660466ea8064cdd2a40046604a6ea407d2f5c1164085164084604a60446ea8c094c088dd5180718111baa302530223754003164080660046eb0c090c084dd500b80945660026030015159800980a18101baa0118cc004c090c084dd5181218109baa0119bac3024302530253025302530253025302530253021375402f302430253025302530253025302530253021375402f3756601260426ea805d22223233001001005223259800980d800c4cc04c018dd7181598141baa0028acc004c07c006264660020026eb0c0b0c0a4dd5001912cc00400629462b300133005005302d0018998010011817000c528205040ad159800980e000c4c8cc004004dd6181618149baa0032259800800c52845660026600a00a605a00314a3133002002302e00140a0815a2b3001300e00189919b89375a605800264660020026eb0c0b4c0b8008896600200314800226644b300133008008002899b800014800a20028158c0b8004cc008008c0bc00502c18141baa0028acc004c0340062646644b30013022302a3754005159800981118151baa302e302f003899b89375a605c60566ea8008006266e20dd6981718159baa00200140a514a08148c0b0004dd6981618149baa00330283754602860506ea80162b3001300c00189919912cc004c088c0a8dd50014566002604460546ea8c0b8c0bc00e266e24004dd6981718159baa002899b88001375a605c60566ea800902945282052302c001375a605860526ea800cc0a0dd5181598141baa00589980780219ba548008cc0a8c0acc0a0dd500125eb81026204c40988131026204c302637540028b203e8acc004c050c080dd5008c4c966002602a60426ea800626464b3001301b30233754003159800cc004888c966002603600313259800800c00e264b300100180240120090048992cc004c0bc00e00d00540b06eb800502f1816000a05430283754009159800980f800c4c9660020030038992cc0040060090048024012264b3001302f003803401502c1bae00140bc60580028150c0a0dd50024009026204c30263754007222329800800c0120068008888c966002603c00313259800800c01a264b3001001803c01e00f0078992cc004c0c800e00b00840bc6eb80050321817800a05a302b37540071598009811000c4c9660020030068992cc00400600f0078992cc004c0c800e26603000244b3001002803c4c96600200319800805400626004606a006805201700b805c02d03618198012062804205e3758003007803a064302f00140b460566ea800e2b3001301f0018992cc00400600d13259800800c01e00f132598009819001c4cc06000489660020050078992cc0040063300100a800c4c008c0d400d00a402e01700b805a06c303300240c500840bc6eb000600f00740c8605e0028168c0acdd5001c566002602200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303500389980d800912cc00400a01513259800800c6600201b00189801181c001a01a807403a01d00e40e4606c00481a20168190dd6000c02a01481a8c0c80050301bad0013031002803a064302f00140b460566ea800e2b300130100018992cc00400600d13259800800c01e00f0078992cc004c0c800e00b00840bc6eb400600e8190c0bc00502d18159baa0038acc004c03c006264b300100180344c966002003007803c01e264b30013032003802c02102f1bad001803a064302f00140b460566ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013032003802c02102f1bae00140c8605e0028168c0acdd5001c015029205240a48149029205240a460526ea800a64b300130183024375400313259800980d18129baa0018992cc004c068c098dd5000c4c8c8cc8966002605e00710058b2058302c001375c60580046058002604e6ea80062c8128c0a4c098dd5000c59024180998129baa3011302537546050604a6ea80062c8118cc010dd6180818121baa01a0219bae30273024375400291112cc006600266e3cdd7181598141baa002024a50a51409914a31332259800800c4c966002603c60546ea800a264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800800c566002606a005159800981218181baa0058992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c4c96600200301c8992cc0040062b300130490028cc00404e330010118cc00403e3300100d8cc00402e330010098cc00401e330010058cc00400e330010018992cc004c0e4c114dd500c44c96600200301f8992cc004006041020810408226644b300100181144c966002003023811c08e0471332259800800c096264b3001001813409a04d026899912cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81640b226644b300100181744c966002003159800982d80144c966002609600313259800800c0c6264b300100181940ca0650328992cc004c17c00e02d03341706eb800505f182e000a0b4305837540051598009827800c56600260b06ea800a0270304165030415882b0c158dd5000c0bd05840be05f02f817a0b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270dd7000982780120a0304d001412c6eb8004c13000904d1825000a0903046375403101e41102b300130383044375402b13259800800c07a264b300100180fc07e26644b3001001810c4c966002003159800982700144cc0d000c8966002005159800981f98259baa0038992cc00400604b13259800800c4c9660020030278992cc0040062b300130540028cc00400e264b300130440018992cc00400605513259800800c56600260ae005132598009823800c4c96600200302d8992cc0040062b3001305a0028cc00400605902e40c902e415d02e81740ba05c82d8c160005056182a1baa0028acc004c12c006264b3001001816c4c96600200302e81740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d2264b30013061003819c0d505e1bad00181a20c2305e00141706eb4004c17400a06282f0c16c0050591bad001305a00281720b63058001415860a86ea800a058829105218291baa001815a0a8815c0ae05702b416060aa0028298c144dd50014566002609000315980098289baa002813c0a505240a504f209e304f375400302840b1028414502881440a205082a8c1480050501829001409a04d02681320a63050001413860986ea800e0488252264b30010018acc004c100c130dd5000c4c9660020030268992cc00400604f027899912cc00400605313259800800c0aa05502a899912cc00400605913259800800c0b605b02d8992cc004c16800e2b300100781744c96600200302f817c0be05f1332259800800c0c6264b300100181940ca0650328992cc004c17c00e2602060be02303341706eb800505f182e000a0b4375c00260b601082e0c16401d05740b90571bad001816a0b4305700141546eb4004c15800a05482b8c1500050521bac0013053002813c09d0541828800a09e304d3754003025412d025812c09604a8290c13c00904d408904b408a045022811209e304c00141286eb0004c12c00a03f01f413060920028238c114dd500ac07504340750204075020407502040750204075020407502040750204075020407502040750204075046407603b01d80ea09430470014114608e00501b80dc06e0368240c1140050431822801406603301980ca08c30430014104608600501780bc05e02e8220c10400503f1820801405602b01580aa084303f00140f4607e005013809c04e0268200c0f400503b181e8014046023011808a07c303b00140e4607600500f807c03e01e81e0c0e4005037181c801403601b00d806a074303700140d4606e00500b805c02e01681c0c0d400503318189baa005804a05e804a064804c02601300940d860660028188c0cc00a00f007803c01d0341818800a05e3031002802c01600b00540c8605e0028168c0acdd5001400d0290cc004cdc79bae3018302a3754602c60546ea800400e942945028400a005002801205e14a2602860506ea80090262264b300130183024375400313259800980c98129baa0018992cc004c068c098dd5000c4c96600266ebcc0acc0a0dd5000980b99815180b99815181598141baa0044bd701981526103d87a80004bd704660026eacc050c0a0dd5000cc050c0a0dd5180a18141baa0069119b89337020026eb4c0b4c0b8c0b8c0b8c0a8dd50100012444b30010028a508994c004c966002604060586ea800626eb4c0b4c0c0dd5981818169baa0018a40008158c0bc0066ebcc0bcc0c00066eac00d22259800800c566002600400d13300500348002294102d44c96600266ebcc0bc0053010140008acc004cc018010dd6981818199bab3030001898019ba630340028a5040b91598009980300224001130030078a5040b88170c0c80050300ca60020030049119818001198181ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0b80066eacc0bc00660660069112cc004cdc8a441000038acc004cdc7a4410000389980298109981a1ba60024bd70000c4cc015300103d87a800000640c119800803c006446600e0046606c66ec0dd48029ba6004001401c81806062004817a29422942294103022941026181518139baa0018b204a3298009800800cdd6981518139baa0029bac30153027375403a9112cc004cdc40012400114c103d87a800089980180080120501112cc00400a298103d87a80008acc004c0700062603066056605800497ae08cc00400e605a005337000029000a006409c81522c8120ca600200337586052604c6ea807290002002222598008014530103d87a80008acc004cdd7981580100344c05ccc0a8dd4000a5eb823300100398160014cdc0000a4004801902620528b2046302730243754604e60486ea80522c81122c8110c098c08cdd5181318119baa300f30233754002604a60446ea80062c8100cc008dd6181218109baa0170128b203e407c80f888cc0100088cdd7981298111baa001002223300400223300d30043756601c60446ea8c038c088dd5000801111919800800801912cc0040062980103d87a80008992cc004c010006260226604800297ae0899801801981300120403024001408860140143012004301230130044590090c028004c014dd5005c52689b2b20061", + Type.Tuple([PolicyId, ScriptHash]), + [proxyPolicyId, protocolScripthash], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1OrderOrderElse { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + protocolScripthash: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5919070101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bae00248888888888a60022a66008921696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99802249266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a998022493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00168a998022494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900168a9980224932657870656374205363726970742873656c665f7363726970745f6861736829203d2073656c665f7363726970745f6372656400168a998022493665787065637420536f6d652873656c665f696e70757429203d2066696e645f696e7075742873656c662e696e707574732c206f75742900168a998022492065787065637420536f6d65286f726465725f646174756d29203d20646174756d00168a998022491972656465656d65723a204f7264657252656465656d657256310016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b30010078999119912cc004c00c0062b3001301b375401700280720388acc004c0240062b3001301b375401700280720388acc004c0100062b3001301b375401700280720388072030406080c0660026e952000911192cc004c014006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b3001300b0018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800e446466002002006446600600260040052301d301e301e0019112cc004cdc48012400110018cc00400e66e10009201499b8b3370066e14009201448180005003203291111919800800802912cc004006200b13259800800c4cc010c08c00801a26600a6046004660060060028108c08c0050204dc0240032259800800c52f5c113301d301a301e00133002002301f00140712301d301e001911919800800801912cc00400629422b30013371e6eb8c08000400e2946266004004604200280d101e4c060dd5004c8c074c078c078c078c078c078c07800644646600200200644b30010018a508acc004cdd7801980e1810000c528c4cc008008c08400501a203c4888888888888a600244646600200200644b30010018a6103d87a80008992cc004c010006260246605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002602a00313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d3754007159800980d800c4c9660020030068992cc00400600f0078992cc004c0d000e26602a00244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130160018992cc00400600d13259800800c01e00f13259800981a001c4cc05400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c56600266e1d20060018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a01513259800981b801c4cc060004896600200500a8992cc0040063300100d800c4c008c0e800d00d403a01d00e8072076303800240d900b40d06eb000601500a40dc60680028190dd68009819801401d0341818800a05e302d375400715980099b8748020006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260680070058042062375a00300740d060620028178c0b4dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014c024026600c00c91114c00488cc0180088cdd7981818169baa0010029112cc004c054c0b0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018acc004c0dc00a2b3001301b3032375400b13259800800c022264b30010018992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c566002609600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c6600200313259800981818239baa0188992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004006043021810c08626644b3001001811c4c96600200302481240920491332259800800c09a264b3001001813c09e04f027899912cc00400605313259800800c0aa05502a81544cc896600200302c8992cc0040062b3001305d0028992cc004c108006264b3001001817c4c96600200303081840c2061132598009830801c05a06282f0dd7000a0c2305e001417060b46ea800a2b300130480018acc004c168dd5001404e05c82da05c82b9057182c1baa001816a0b4816c0b605b02d417860b600282c8dd7000982d00120b6305800141586eb8004c15c009058182a800a0a6375c00260a800482a8c1480050501bae00130510024148609e0028268dd70009827001209e304c001412860906ea80620388228566002605e608c6ea8056264b300100180e44c96600200301d80ec4cc896600200301f8992cc0040062b30013050002899818801912cc00400a2b30013036304d375400713259800800c08e264b30010018992cc00400604b13259800800c56600260ac00519800801c4c966002607600313259800800c0a2264b30010018acc004c16400a264b3001303e0018992cc00400605713259800800c56600260b800519800800c0b605881f205882ca05902c81640b105d182d000a0b0305637540051598009822000c4c96600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c4cc89660020030318992cc00400606503281944c96600260c6007034819a0c0375a003032418c60c000282f0dd6800982f80140bd060182e800a0b6375a00260b800502c417460b400282c0c158dd500140a905320a6305437540030294159029814c0a605282d0c15c00505518299baa0028acc004c1040062b300130533754005028813a0a8813a0a0414060a26ea800604c81c204c829a04d0268134099057182a000a0a430540028124092049024415460a40028280c138dd5001c08904b44c966002003159800981b98271baa0018992cc00400604913259800800c09604b1332259800800c09e264b300100181440a20511332259800800c0aa264b3001001815c0ae05713259800982e001c56600200f02c8992cc00400605b02d816c0b626644b3001001817c4c96600200303081840c2061132598009830801c4c040c18404606282f0dd7000a0c2305e00141706eb8004c17402105e182d803a0b281620b2375a00302b417060b200282b8dd6800982c00140a1059182b000a0a8375800260aa005025812a0ac30530014144609e6ea80060468262047023811c08d0541828801209e810209a81040820410204144609c0028260dd60009826801407603a8270c12c00504918239baa01580da08880da04080da04080da04080da04080da04080da04080da04080da04080da04080da04080da09080dc06e03701b413060920028238c12400a03301980cc06504a1823800a08a304700280bc05e02f0174120608a0028218c11400a02b01580ac0550461821800a0823043002809c04e0270134110608200281f8c10400a023011808c045042181f800a07a303f002807c03e01f00f4100607a00281d8c0f400a01b00d806c03503e181d800a072303b002805c02e01700b40f0607200281b8c0e400a013009804c02503a181b800a06a3033375400b00740c100740d1007803c01e00e81c0c0d4005033181a801401600b005802a06c303300140c46066005003801c00e00681a0c0c400502f18169baa003800a054911919800800801912cc004c058006266e2922010130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc018cdc2000a402866e2ccdc019b8500148051206000340ac815a446600c00446601660086eacc030c0b4dd5180618169baa00100248888c8c966002603001b1332259800980d18189baa0018992cc004c084c0c8dd5000c56600266e3cdd7181b18199baa001375c602e60666ea8c048c0ccdd5180918199baa0038999129981999b9649010d63726564656e7469616c3a3a200037326600c0029101001330100020013756601e60666ea8080cdd2a40046606a6ea40b92f5c1153303149013e6578706563742073656c665f7363726970745f68617368203d3d2070726f78795f646174756d2e73657474696e67732e72656769737472792e6f72646572001640c102940c0606a60646ea8c0d4c0c8dd5180898191baa30353032375400302740bc64b30010018acc004c064c0c0dd5000c4c96600200302c8992cc00400605b02d816c0b626644b3001001817c4c966002003159800981d00146600200310068182016818206e81840c206103040ec607000281b0dd7000981b8012070303500140cc60626ea8006056817205702b815c0ad036192cc004c064c0c0dd5000c4c966002603660626ea80062606a60646ea80060548178c054c0c4dd5180818189baa30343031375400302840b8660066eb0c03cc0c0dd500e816198031bac30333030375403a037159800980f006c5660026030605e6ea806a33001303330303754606660606ea806a6eb0c0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecc0ccc0d0c0d0c0d0c0d0c0d0c0d0c0d0c0c0dd500ecdd5980618181baa01d48888c8cc00400401488c966002603e003133015006375c6074606e6ea800a2b30013025001899198008009bac303b3038375400644b30010018a518acc004cc014014c0f0006266004004607a00314a081b103a45660026040003132330010013758607660706ea800c896600200314a115980099802802981e000c528c4cc008008c0f400503620748acc004cdc3a400c003132337126eb4c0ec004c8cc004004dd6181e181e801112cc0040062900044cc896600266010010005133700002900144005039181e80099801001181f000a0763037375400515980099b87480200062646644b30013028303937540051598009814181c9baa303d303e003899b89375a607a60746ea8008006266e20dd6981e981d1baa00200140dd14a081b8c0ec004dd6981d981c1baa00330373754602c606e6ea80162b30013370e9005000c4c8cc8966002605060726ea800a2b3001302830393754607a607c0071337120026eb4c0f4c0e8dd500144cdc40009bad303d303a375400481ba2941037181d8009bad303b30383754006606e6ea8c0e8c0dcdd5002c4cc048010cdd2a4004660726074606e6ea80092f5c081a1034206840d081a1034181a9baa001409102d45660026030605e6ea806a330013033303037540353253302f3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea40b522010013259800980d18189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600800291010013259800980e98199baa0018992cc0040062b3001301d3034375400313259800800c0be264b300100181840c2061030899912cc00400606513259800981f0014401a06681d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0b903240ba05d02e817207430373034375400302c40c4602e60666ea8c048c0ccdd5000981a98191baa001814a05e3300400102d3758601e60606ea80766600c6eb0c0ccc0c0dd500e80da444b3001301b3032375400313232598009811981a1baa0018acc004c96600330013371e6eb8c0e4c0d8dd5002818d28528a0668a51899912cc004006330010018cc004cdc79bae301c30383754602e60706ea800400e942945035400900d400a005002801207a14a2602a606c6ea80150331bae30383035375400313259800980f181a9baa0018992cc004c07cc0d8dd5000c4c9660026040606e6ea8006264b30013375e607860726ea8004c080cc0ecc080cc0ecc0f0c0e4dd500225eb80cc0ed300103d87a80004bd704660026eacc060c0e4dd5000cc060c0e4dd5180c181c9baa0069119b89337020026eb4c0f8c0fcc0fcc0fcc0ecdd50140012444b30010028a508994c004c966002604c607a6ea800626eb4c0f8c104dd59820981f1baa0018a400081d8c1000066ebcc100c1040066eac00d22259800800c566002600400d13300500348002294103d44c96600266ebcc1000053010140008acc004cc018010dd6982098221bab3041001898019ba630450028a5040f91598009980300224001130030078a5040f881f0c10c0050410ca60020030049119820801198209ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0fc0066eacc10000660880069112cc004cdc8a441000038acc004cdc7a441000038998029815198229ba60024bd70000c4cc015300103d87a8000006410119800803c006446600e0046608e66ec0dd48029ba6004001401c82006084004820229422942294104122941036181d981c1baa0018a9981b2493865787065637420536f6d65286f757470757429203d206c6973742e61742873656c662e6f7574707574732c20696e7075745f696e64657829001640d465300130010019bad303b303837540053758603860706ea80952225980099b8800248002298103d87a800089980180080120701112cc00400a298103d87a80008acc004c0880062604266078607a00497ae08cc00400e607c005301b001400c81b903b454cc0d524014165787065637420536f6d6528696e7075745f696e64657829203d206c6973742e696e6465785f6f662873656c662e696e707574732c2073656c665f696e70757429001640d06530010019bac303a30373754049480010011112cc00400a298103d87a80008acc004cdd7981e00100344c080cc0ecdd4000a5eb8233001003981e8014cdc0000a4004801903620748a9981a248131657870656374205369676e6174757265207b206b65795f68617368207d203d206f726465725f646174756d2e6f776e6572001640cc6070606a6ea80162a6606692019d6578706563740a2020202020202020202076315f315f7263315f7574696c69746965732e69735f70726f746f636f6c5f7570677261646564280a20202020202020202020202070726f78795f646174756d2c0a20202020202020202020202073656c665f7363726970745f686173682c0a20202020202020202020202070726f746f636f6c5f736372697074686173682c0a2020202020202020202029001640c902b40c8606e60686ea8c0dcc0d0dd51809981a1baa00130363033375400302840c0812205a40b48168c004004888c9660020071323233223300a00233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a0028051018206e5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c81890311bac3034002375a60640026466ec0dd418190009ba73033001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606e003337149101023a200098008054c0e000600a805100a181d00144ca6002015303700199b8a489023a200098008054c0e0006600e66008008004805100a181d0012070303a00140dc66e29220102207d0000340d06eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803901520683758007133006375a0060051323371491102682700329800800cc054dc68014cdc52450127000044004444b30013371000490004400626466453001006980d002ccdc599b800025980099b88002480522903045206e40d866e2ccdc0000acc004cdc4000a402914818229037206c004401866e0c00520203370c002901019b8e00400240cc6eb800d0371b8a4881022c2000060306ea8024dc3a40086e1d2000805402a01500a407060300026030603200260286ea800e2c80886026002601c6ea8052293454cc0312411856616c696461746f722072657475726e65642066616c73650013656402c1" + : "5915d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bae0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e33001300b3754007370e90024dc3a4001300a375400891111991192cc004c0140122b3001301237540170018b20268acc004c0240122b3001301237540170018b20268acc004c0180122b3001301237540170018b20268b202040408080660026e9520009180a980b180b000c896600200314bd7044cc054c048c058004cc008008c05c00501448c054c05800644646600200200644b30010018a508acc004cdc79bae30180010038a51899801001180c800a02640592232330010010032233003001300200298081baa00a9180a980b180b180b180b180b180b000c88c8cc00400400c896600200314a115980099baf003301430180018a51899801001180c800a0264059370e90034dc3a4011370e9005244444444444466446644b3001301400a8992cc004c054c084dd5000c4c966002603460446ea80062b30013371e6eb8c098c08cdd50009bae301130233754601e60466ea8c03cc08cdd519914c004c00800a2003223259800980d800c4c8c966002605c0050048b2056375c605800260506ea800e2b3001301f001899192cc004c0b800a0091640ac6eb8c0b0004c0a0dd5001c59026204c302637540049112cc004c06cc09cdd500244c8cc8966002605e00313259800980f98159baa001899191919912cc004c0d400e264b30013025303137540031323232323232323232329800981f800cc0fc026607e011303f007981f8034c0fc016607e009303f003981f8012444444444b3001304900a89981018240098998100040998100038998100030998100028998100020998100018998100010998100008998100048992cc004c0e4c114dd500b44c8c8c8c8ca60026eb8c138006609e003375c609c00b375c609c009375c609c007375c609c0049111112cc004c15401626464b30013046001899192cc004c16400a0211641586eb8c15c004c14cdd50014566002609400315980098299baa00280745905445905120a23051375400260a800b164148304e001304d001304c001304b0013046375402d1641102b300130383044375402d132323259800982600144cc0c8dd61825801912cc00400a2b3001303d30493754007132323259800982880144cc098c14000c4c9660026082003132598009829800c4c8c966002608800313259800982b000c4cc0acc1540040b22c8298c144dd500145660026090003132323298009bad30570019bad30570039bad305700248896600260b60090318b20b0182b800982b00098289baa0028b209e413c609e6ea8004c1480062c8280c138dd50014566002608a00315980098271baa00281445904f45904c2098304c3754003164138609e002609e00260946ea800e2c8242264b3001303e304a37540031323232332259800982a001c4c8c8cc896600260b00071300b305800c8b20aa375c60aa0026eb8c154008c154004dd61829802c590511bad3051001375a60a200460a200260a000260966ea80062c8248c13400904b4590491825000982500098229baa0168b20868b208c181f800981f000981e800981e000981d800981d000981c800981c000981b80098191baa0018b206030340058b20643032001303200230320013031001302c37540031640a8605c0031640b06eb8c0b0004c0b4004c0a0dd50024590260888c96600260340031323259800981680140122c8150dd7181580098139baa0038acc004c078006264b3001302c0018998091bac302b0012259800801401633001007981680144c004c0b800900720568b205230273754007159800980d800c4c96600260580031330123758605600244b3001002802c6600200f302d002898009817001200e40ad1640a4604e6ea800e2b3001300d00189919912cc004c0b80062660286eb0c0b400489660020050078cc004026605e0051300130300024024816a2c8158dd69815800981600098139baa0038acc004c03000626464b3001302d00280245902a1bad302b001302737540071598009805800c4c8c966002605a0050048b2054375a6056002604e6ea800e2b30013370e9006000c4c8c966002605a0050048b2054375c6056002604e6ea800e2c8129025204a40948129025204a3025375400464b300130173023375400313259800980c98121baa0018981418129baa0018b2046301230243754602060486ea8c09cc090dd5000c59022198019bac300f3023375403204113300a3756601660466ea8064cdd2a40046604a6ea407d2f5c1164085164084604a60446ea8c094c088dd5180718111baa302530223754003164080660046eb0c090c084dd500b80945660026030015159800980a18101baa0118cc004c090c084dd5181218109baa0119bac3024302530253025302530253025302530253021375402f302430253025302530253025302530253021375402f3756601260426ea805d22223233001001005223259800980d800c4cc04c018dd7181598141baa0028acc004c07c006264660020026eb0c0b0c0a4dd5001912cc00400629462b300133005005302d0018998010011817000c528205040ad159800980e000c4c8cc004004dd6181618149baa0032259800800c52845660026600a00a605a00314a3133002002302e00140a0815a2b3001300e00189919b89375a605800264660020026eb0c0b4c0b8008896600200314800226644b300133008008002899b800014800a20028158c0b8004cc008008c0bc00502c18141baa0028acc004c0340062646644b30013022302a3754005159800981118151baa302e302f003899b89375a605c60566ea8008006266e20dd6981718159baa00200140a514a08148c0b0004dd6981618149baa00330283754602860506ea80162b3001300c00189919912cc004c088c0a8dd50014566002604460546ea8c0b8c0bc00e266e24004dd6981718159baa002899b88001375a605c60566ea800902945282052302c001375a605860526ea800cc0a0dd5181598141baa00589980780219ba548008cc0a8c0acc0a0dd500125eb81026204c40988131026204c302637540028b203e8acc004c050c080dd5008c4c966002602a60426ea800626464b3001301b30233754003159800cc004888c966002603600313259800800c00e264b300100180240120090048992cc004c0bc00e00d00540b06eb800502f1816000a05430283754009159800980f800c4c9660020030038992cc0040060090048024012264b3001302f003803401502c1bae00140bc60580028150c0a0dd50024009026204c30263754007222329800800c0120068008888c966002603c00313259800800c01a264b3001001803c01e00f0078992cc004c0c800e00b00840bc6eb80050321817800a05a302b37540071598009811000c4c9660020030068992cc00400600f0078992cc004c0c800e26603000244b3001002803c4c96600200319800805400626004606a006805201700b805c02d03618198012062804205e3758003007803a064302f00140b460566ea800e2b3001301f0018992cc00400600d13259800800c01e00f132598009819001c4cc06000489660020050078992cc0040063300100a800c4c008c0d400d00a402e01700b805a06c303300240c500840bc6eb000600f00740c8605e0028168c0acdd5001c566002602200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303500389980d800912cc00400a01513259800800c6600201b00189801181c001a01a807403a01d00e40e4606c00481a20168190dd6000c02a01481a8c0c80050301bad0013031002803a064302f00140b460566ea800e2b300130100018992cc00400600d13259800800c01e00f0078992cc004c0c800e00b00840bc6eb400600e8190c0bc00502d18159baa0038acc004c03c006264b300100180344c966002003007803c01e264b30013032003802c02102f1bad001803a064302f00140b460566ea800e2b30013370e9006000c4c9660020030068992cc00400600f007803c01e264b30013032003802c02102f1bae00140c8605e0028168c0acdd5001c015029205240a48149029205240a460526ea800a64b300130183024375400313259800980d18129baa0018992cc004c068c098dd5000c4c8c8cc8966002605e00710058b2058302c001375c60580046058002604e6ea80062c8128c0a4c098dd5000c59024180998129baa3011302537546050604a6ea80062c8118cc010dd6180818121baa01a0219bae30273024375400291112cc006600266e3cdd7181598141baa002024a50a51409914a31332259800800c4c966002603c60546ea800a264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800800c566002606a005159800981218181baa0058992cc00400601513259800800c4c96600200300c8992cc004006264b300100180744c96600200313259800800c042264b30010018992cc00400602513259800800c4c9660020030148992cc004006264b300100180b44c96600200313259800800c062264b30010018992cc00400603513259800800c4c96600200301c8992cc0040062b300130490028cc00404e330010118cc00403e3300100d8cc00402e330010098cc00401e330010058cc00400e330010018992cc004c0e4c114dd500c44c96600200301f8992cc004006041020810408226644b300100181144c966002003023811c08e0471332259800800c096264b3001001813409a04d026899912cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81640b226644b300100181744c966002003159800982d80144c966002609600313259800800c0c6264b300100181940ca0650328992cc004c17c00e02d03341706eb800505f182e000a0b4305837540051598009827800c56600260b06ea800a0270304165030415882b0c158dd5000c0bd05840be05f02f817a0b83059001415c6eb8004c160009059182b000a0a8375c00260aa00482b0c14c0050511bae0013052002414c60a00028270dd7000982780120a0304d001412c6eb8004c13000904d1825000a0903046375403101e41102b300130383044375402b13259800800c07a264b300100180fc07e26644b3001001810c4c966002003159800982700144cc0d000c8966002005159800981f98259baa0038992cc00400604b13259800800c4c9660020030278992cc0040062b300130540028cc00400e264b300130440018992cc00400605513259800800c56600260ae005132598009823800c4c96600200302d8992cc0040062b3001305a0028cc00400605902e40c902e415d02e81740ba05c82d8c160005056182a1baa0028acc004c12c006264b3001001816c4c96600200302e81740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d2264b30013061003819c0d505e1bad00181a20c2305e00141706eb4004c17400a06282f0c16c0050591bad001305a00281720b63058001415860a86ea800a058829105218291baa001815a0a8815c0ae05702b416060aa0028298c144dd50014566002609000315980098289baa002813c0a505240a504f209e304f375400302840b1028414502881440a205082a8c1480050501829001409a04d02681320a63050001413860986ea800e0488252264b30010018acc004c100c130dd5000c4c9660020030268992cc00400604f027899912cc00400605313259800800c0aa05502a899912cc00400605913259800800c0b605b02d8992cc004c16800e2b300100781744c96600200302f817c0be05f1332259800800c0c6264b300100181940ca0650328992cc004c17c00e2602060be02303341706eb800505f182e000a0b4375c00260b601082e0c16401d05740b90571bad001816a0b4305700141546eb4004c15800a05482b8c1500050521bac0013053002813c09d0541828800a09e304d3754003025412d025812c09604a8290c13c00904d408904b408a045022811209e304c00141286eb0004c12c00a03f01f413060920028238c114dd500ac07504340750204075020407502040750204075020407502040750204075020407502040750204075046407603b01d80ea09430470014114608e00501b80dc06e0368240c1140050431822801406603301980ca08c30430014104608600501780bc05e02e8220c10400503f1820801405602b01580aa084303f00140f4607e005013809c04e0268200c0f400503b181e8014046023011808a07c303b00140e4607600500f807c03e01e81e0c0e4005037181c801403601b00d806a074303700140d4606e00500b805c02e01681c0c0d400503318189baa005804a05e804a064804c02601300940d860660028188c0cc00a00f007803c01d0341818800a05e3031002802c01600b00540c8605e0028168c0acdd5001400d0290cc004cdc79bae3018302a3754602c60546ea800400e942945028400a005002801205e14a2602860506ea80090262264b300130183024375400313259800980c98129baa0018992cc004c068c098dd5000c4c96600266ebcc0acc0a0dd5000980b99815180b99815181598141baa0044bd701981526103d87a80004bd704660026eacc050c0a0dd5000cc050c0a0dd5180a18141baa0069119b89337020026eb4c0b4c0b8c0b8c0b8c0a8dd50100012444b30010028a508994c004c966002604060586ea800626eb4c0b4c0c0dd5981818169baa0018a40008158c0bc0066ebcc0bcc0c00066eac00d22259800800c566002600400d13300500348002294102d44c96600266ebcc0bc0053010140008acc004cc018010dd6981818199bab3030001898019ba630340028a5040b91598009980300224001130030078a5040b88170c0c80050300ca60020030049119818001198181ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0b80066eacc0bc00660660069112cc004cdc8a441000038acc004cdc7a4410000389980298109981a1ba60024bd70000c4cc015300103d87a800000640c119800803c006446600e0046606c66ec0dd48029ba6004001401c81806062004817a29422942294103022941026181518139baa0018b204a3298009800800cdd6981518139baa0029bac30153027375403a9112cc004cdc40012400114c103d87a800089980180080120501112cc00400a298103d87a80008acc004c0700062603066056605800497ae08cc00400e605a005337000029000a006409c81522c8120ca600200337586052604c6ea807290002002222598008014530103d87a80008acc004cdd7981580100344c05ccc0a8dd4000a5eb823300100398160014cdc0000a4004801902620528b2046302730243754604e60486ea80522c81122c8110c098c08cdd5181318119baa300f30233754002604a60446ea80062c8100cc008dd6181218109baa0170128b203e407c80f888cc0100088cdd7981298111baa001002223300400223300d30043756601c60446ea8c038c088dd5000801111919800800801912cc0040062980103d87a80008992cc004c010006260226604800297ae0899801801981300120403024001408860140143012004301230130044590090c028004c014dd5005c52689b2b20061", + Type.Tuple([PolicyId, ScriptHash]), + [proxyPolicyId, protocolScripthash], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolManagementProtocolManagementWithdraw { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401" + : "592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolManagementProtocolManagementPublish { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401" + : "592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolManagementProtocolManagementElse { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594ebd010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a4912657870656374205b5d203d206c6973745f6200168a99801a491d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a4926657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a49d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f64617461001648888888888888966003300130133754033370e90034dc3a4001370e9002244446465300130183754003301c006980e0012444b300130060038cc004c07cc070dd50024dd2a4001230203021001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c080c084c0840066e9520024888888888a600244646600200200644b30010018a6103d87a80008992cc004c0100062601c6605a00297ae089980180198178012050302d00140ad222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0d000e00b00840c46eb80050341818800a05e302d37540071598009806800c4c9660020030068992cc00400600f0078992cc004c0d000e26602200244b3001002803c4c96600200319800805400626004606e006805201700b805c02d038181a801206680420623758003007803a068303100140bc605a6ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981a001c4cc04400489660020050078992cc0040063300100a800c4c008c0dc00d00a402e01700b805a070303500240cd00840c46eb000600f00740d060620028178c0b4dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303700389980a000912cc00400a01513259800800c6600201b00189801181d001a01a807403a01d00e40ec607000481b201681a0dd6000c02a01481b8c0d00050321bad0013033002803a068303100140bc605a6ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0d000e00b00840c46eb400600e81a0c0c400502f18169baa0038acc004c02c006264b300100180344c966002003007803c01e264b30013034003802c0210311bad001803a068303100140bc605a6ea800e2b3001300a0018992cc00400600d13259800800c01e00f007803c4c96600260680070058042062375c00281a0c0c400502f18169baa003802a05440a8815102a205440a88150c0acdd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c56600260546ea801200700240ad002409c8138c0a0dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0c400e00d00540b86eb80050311817000a058302a37540091598009805000c4c9660020030038992cc0040060090048024012264b30013031003803401502e1bae00140c4605c0028160c0a8dd50024009027204e3028375400691111919192cc0040063300122259800980d98179baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130380028cc00400e264b300130200018acc004c0d4dd5001401e00c81b22b300130150018992cc00400600f13259800800c02201100880444c966002607800700a804a072375c00281e0c0e4005037181a9baa0028acc004c07c006264b3001001803c4c96600260760050098042070303900140dc606a6ea800a00c8191032206430333754003005402900540d5005802c01600a81c8c0d8005034181b001400e007003801a06e303400140c860606ea800e002816a444b3001301b302f375400713259800800c00a264b30010018992cc00400600913259800800c4c966002606a00315980099b8948010c0d000600d13259800981d00244c9660026044003159800981b9baa006804c0210384566002602e00313259800800c026264b3001001805402a01513259800981f001c03201681d8dd6800c02903e181d800a0723037375400d1598009810800c566002606e6ea801a01300840e100840d081a1034181a9baa005803a06e3015303400140c900640d86ea800600b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4889660026036605e6ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981d001c02200e81b8dd6800c01903a181b800a06a375c002606c00481b8c0d000503218181baa003800a05a911192cc004c070006264b3001001801c4c9660020030048024012264b3001303800380340150351bad0018022070303500140cc60626ea80122b300130110018acc004c0c4dd5002400e0048192004817102e18179baa0039112cc004c06cc0bcdd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c0ec00e2b300130223036375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608200719800805403e01c80aa01c81f0dd7000a082303e00140f06eb8004c0f400903e181d800a0723037375400d00840d100840e06eb800503b181c000a06c3038002802c01600b00540e4606c00281a0c0d800a007003801c00d037181a000a0643030375400700140b5302c37540029111114c004889660026042606a6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c10400a330010068cc0040060130084039008404100840f900880440220108210c0fc00503d1bad001303e002802a07e303c00140e86078005003801c00e00681e8c0e8005038181b1baa003800a0669112cc004c084c0d4dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009823801c6600201919800802403e01c80a201c80b201c8220dd6800c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd222598009810981a9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609400719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002609e00701780b2098375c0028278c13000504a1bae001304b00241306092002823a02280ba02280ca0228238dd6000c0420208250c11c0050451823801403a01d00e80720903045001410c6eb4004c11000a0168228c1080050401bad00130410028042084303f00140f46eb4004c0f800a00a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c11c00e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c13000e02901341246eb800504c1824800a08e375c00260900048248c1180050444039014403901640390441bac001806c0350471822000a0843044002805c02e01700b411460840028200dd680098208014021042181f800a07a375a002607c00500540fc607800281d0c0f000a007003801c00d03d181d000a0703036375400700140cd22232598009811000c4c9660020030038992cc0040062b3001303d0028cc00400600b004402900440e9004802401200881f0c0ec005039181b9baa0048acc004c05c006264b3001001801c4c966002003159800981e8014566002604860706ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c10400a330010038cc004006013008403d008403d00840f900880440220108210c0fc00503d181f801401a00d0068032080303d00140ec60726ea800600881b200881d2009004802401103e181d800a0723037375400900240d081a0c0d4dd5001c566002603c60646ea801e3300130363033375400f2225980080145300103d87a80008acc004c0840062603266070607200497ae08cc00400e6074005337000029000a00640cc81ba4602860666ea8c0dcc8cc004004008896600200314bd708103d87a80008101800044c8cc8966003300130193038375460780074a14a281b226607730014a14c103d87a8000a60103d879800040d8660766e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0f800400e2946266004004607e00281c103c44cc0ee600294298103d87a8000a60103d879800040d8660766e9c0092f5c113303b9800a51a60103d87a8000a60103d879800040d8660766e9ccc0ecdd400080125eb81036206c3758607460760026eb4c0e8008cc008008c0e8005037488c8cc00400400c896600200314bd7044cc896600266ebcc0f0c0e4dd5181e181c9baa301b303937540046028660766ea40152f5c113303b00233004004001899802002000a06c303a001303b00140e1230373038303830383038001912cc0040062900044cdc02400466004004607200281b24464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032070899802802981f8022070375c60700026eacc0e4004c0ec0050390a5eb7bdb182444b300130213035375400713259800800c00a264b3001001801c00e00713259800981e801c01600881d0dd6800c00d03d181d000a0703036375400700140cd230373038303830380019b814800244646600200200644b30010018a5eb822660726e9cc00cc0e8004cc008008c0ec0050384888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd7181e800cdd6981f000ccc00c00cc1080090091820000a07c375660760066eb8c0e0004cc00c00cc0f4008c0ec005039488c8cc00400400c896600200314a115980099baf303a001374e00714a3133002002303b00140d081c2444b300130213035375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc004006264b300100180444c966002608400519800803c6600200b132598009815000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc0040060250128992cc004c13000e2b3001001809c4c96600200301480a40520291332259800800c05a264b300100180bc05e02f0178992cc004c14400e03301841386eb80050511827000a098375c002609a0048270c12c005049404d0491bac001809404904c1824800a08e375a002609000500f4124608c0028220dd6800982280140310461821800a082303f37540091598009814800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944cc89660020030148992cc00400602b0158992cc004c13c00e2b300100180b44c96600200301780bc05e02f1332259800800c066264b300100180d406a03501a8992cc004c15000e03901b41446eb80050541828800a09e375c00260a00048288c13800504c405904c1bac00180ac05504f1826000a094375a0026096005012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002605600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e264b300130490038acc00400602113259800800c046023011808c4cc89660020030138992cc00400602901480a4052264b3001304e00380b405504b1bae001413860960028248dd7000982500120963048001411901041186eb000601f00f4124608c0028220dd6800982280140310461821800a082303f3754009159800980f000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4c9660026092007011808208c375a00300f4124608c0028220dd6800982280140310461821800a082303f3754009159800980e800c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f807c4cc89660020030118992cc00400602501280944c9660026098007014809a092375a003012413060920028238dd68009824001403d0491823000a088375a002608a00500c411860860028208c0fcdd50024566002603800313259800800c02e264b30010018064032019132598009823001c03a01a8218dd6800c0310461821800a082303f375400915980099b8748038006264b3001001805c4c96600200300c8064032264b3001304600380740350431bad001806208c30430014104607e6ea801201481e103c207840f081e103c207840f0607a6ea800e012808a01280ba01281f8c10000503e1820001401e00f007803a082303e00140f0607c005005802c01600a81f8c0f000503a181e001400e007003801a07a303a00140e0606c6ea800e002819a4606e60706070607060706070003222329800800c01200680088896600200510018cc00400e607a00533004303c002001400c81d26e21200048888888888888888a6002608e60886ea8046608e60886ea8c098c110dd5008cc040042444b300130120028994c004006009003a400080088889660020071598008014400608a82622b3001002822466002009304f00398278014cc8966002600e0051337000066eb4c0bcc134dd5001454cc12d2411a6578706563742076616c69646174696f6e28726571756573742900164128609c0066eb4c13800900420984131153304549012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900164111300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c825226600a00a60a20088250dd718250009bad304b001304d001412c6601e0080062900024444446530012232330010010022259800800c52f5c11330513259800981d98279baa0018982998281baa0018a998272493965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641346600a0086eb4c148004cc008008c14c00505048888c9660026076609e6ea8006264b30013375e60a860a26ea8c150c144dd5181998289baa001302c33053375200a97ae08acc004c0c660026eacc0ccc144dd5181998289baa001802d22108747265617375727900402113259800981e18289baa0018992cc004006330010018992cc004c0fcc14cdd5000c4c96600266ebcc160c154dd5182c182a9baa001303033057375201297ae08acc004c0d660026eacc0dcc154dd5000c0269101087472656173757279004031132598009820182a9baa0018992cc004006330010018acc004cdd7980e182b9baa0034c103d87a800089982c8029982c8009982c9ba6329800800cdd5981d182c1baa00499198008009bab303b30593754607660b26ea8024896600200314bd6f7b63044c8cc174cdd8182d0009ba63233001001375660b800444b30010018a5eb7bdb182264660c066ec0c174004dd418111bad305e001330030033062002306000141786600600660be00460ba00282d90011112cc00400a2003132332298008034c184016646600200200a44b300100189983099bb037520086e9800d2f5bded8c113298009bae305f0019bab306000198320012444b300133720010007133065337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820ca880144cc198cdd81ba9009374c0020048308ca6002003008801a0022225980080144006264664530010069836802cc8cc004004014896600200313306d337606ea4010dd4001a5eb7bdb1822653001375c60d6003375a60d8003307000248896600266e4002000e2660e266ec0dd48041ba80070058acc004cdc7804001c4c96600260b6003100289983919bb037520126ea000400906d19b8000700289983899bb037520066ea0008cc01801800506c20d81837000a0d840186eb8c198004dd69833800983480120ce89983299bb037520066e98008cc01801800506020c01831000a0c040186eb8c168004dd5982d800982e80120b64bd704135054413101d413209904c82620b8305930563754003153305449012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016414c606260aa6ea80062a660a6920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164149153305349143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016414860ae60a86ea80062a660a492013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164144660126eb0c0bcc14cdd5004002c11d019411e08f047823a0b0305530523754003153305049013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016413c605a60a26ea8c0ccc144dd5000c54cc13d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164139153304f4914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016413860a660a06ea80062a6609c92013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641346600a6eb0c148c13cdd50020014c128dd50032444b3001303a0018cc004c138dd5004c8c148c14cc14cc14cc14cc14cc14cc14c006444b3001303c3050375400713259800800c00a264b3001001801c00e0071332259800800c016264b3001001803401a00d1332259800800c022264b3001001804c0260131332259800800c02e264b30010018064032019132598009830801c03a01a82f0dd6800c031061182f000a0b8375a00260ba005009417860b600282c8dd6800982d001401905b182c000a0ac375a00260ae005003416060aa0028298c144dd5001c00504e488c8ca60026eb4c1540066eb4c154c1580066eb4c15400922259800acc004cdc4800a400114a313371200400c829229000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034148829060aa00260a860a06ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003050415d159800801413e33001004982d001cc16800a646644b300130433058375400513259800800c6600200315980099baf3023305a375400460ba60b46ea80122b30013375e607860b46ea8004c174c168dd500144c966002608a60b46ea80062646464b30013370e6eb4c18400cdd69820182f1baa0068acc004cdc39bad3061002375a607460bc6ea801a2b30013370e6eb4c184004dd69811982f1baa0068acc004cdd798309831000980e982f1baa006899b8000998009bab3040305e3754608060bc6ea80226eb8c18403a6eb8c184c188039015454cc17124012d65787065637420726573657276655f6173736574203d3d20726571756573742e726573657276655f61737365740016416d153305c4912d65787065637420646966667573696f6e5f656e64203d3d20726571756573742e646966667573696f6e5f656e640016416d153305c4911d657870656374207969656c64203d3d20726571756573742e7969656c640016416d153305c49122657870656374207072696e636970616c203d3d20726571756573742e616d6f756e740016416c60c200260c000260b66ea80062a660b29201184578706563746564204f4465706f73697420616374696f6e00164160606c60b46ea80062a660b092012f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e0016415d15330584912f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e63650016415d0524069052829414a0a482f8c170c164dd500141410561819982b9baa30393057375400260b400660b2006802105720ae91111119192cc004cdc380080244c8c8c96600266e1ccdc09bad305c3059375460b80046eb4c170c164dd5182e00180244c9660033001002a5191112cc0040062b30013371e008911008a5189980f802998301ba900433060375200697ae0416d14a082d901c44cdc4803cc004dd6182e982d1baa3036305a375401948002446464b300198009824800d28528a0b68acc004c06c006266e0000ccdc199b82001375a608060bc6ea8010dd6981d182f1baa0048a9982e249176578706563742061637475616c5f64656c7461203e20300016416d1003416d30010059bae30600019bae3060306100140506eb0c17cc170dd5001203082620ae3301c375860b860b26ea8c0d4c164dd500591bac305d305a375400304c41586eacc16cc170004c16c006600200f375c60b260ac6ea8c0e0c158dd5004401a00a80522a660a892123657870656374206d696e745f616d6f756e74203d3d2065787065637465645f6d696e740016414cb30013040300d0018a4001159800800c116264b3001305a0028992cc004cdc79bae305600248810455534472008800c1210541bad305600182320ae305800141588290cc06cdd5980e982a1baa005375c606c60a86ea8c0d8c150dd50034c0c0c138dd5011cdc4a40009111111119194c0066002003375860b660b06ea8052460086eb4c0ecc164dd5000a022cc0040069000488cdc00009bad3036305a375400480b2464b300130453059375400313322598009823982d9baa0018acc004cdc499b81375a60be60b86ea80040092080bab7038801454cc169240129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e00164165153305a4912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641646eb4c174c168dd5000992cc004c0ecc168dd5000c4c0f8cc174c178c16cdd5000a5eb822980103d87a8000416060ba60b46ea8c0f0c168dd51805982d1baa0028a9982c2492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415c64b3001303a305937540031303d3305c305d305a375400297ae08a6103d87a8000415c60b860b26ea8c170c164dd51805182c9baa001982d982e00524444b300159800980c8024528c66002608e0074a14a282c905944c966002609060b86ea8006330013298009980a0009bad3061305e3754005375c608060bc6ea8c100c178dd50054dd71811982f1baa3040305e37540149112cc004c130c180dd5001c4c96600266ebcc194c188dd5183298311baa304430623754002607a660c86ea40092f5c115980098214c004dd5982218311baa304430623754003002a4410d7374616b696e675f7661756c7400406513259800982698311baa0018992cc004006330010018998331ba898009bab304630643754608c60c86ea800e00b489045553447200406c660cc002660cc00697ae082fa02882fc17e0bf05f41a460cc60c66ea80060b48300c0f8c188dd5182218311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea800e2a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f6964782900164178375860c060ba6ea810f30010439bae3060305d3754607e60ba6ea80266eb4c0e4c174dd500ccdd69811182e9baa019404559800980d1bad303f305d375400515980098041bad3060305d375400515980099b89375a60c060ba6ea8008dd6981f982e9baa002899198301ba800133060375066e040140052f5c066e10cdc10021bad3060305d37540046eb4c0fcc174dd5001454cc16d24012b65787065637420616c7068612e6e756d657261746f72203c3d20616c7068612e64656e6f6d696e61746f7200164169153305b4911b65787065637420616c7068612e6e756d657261746f72203e3d203000164169153305b4911c65787065637420616c7068612e64656e6f6d696e61746f72203e203000164169301c305d375403291114c004c190c1940126eb4c19000a6eb4c190c19400922259800982798319baa00489919912cc004cdc399b81002375a60d401400b15980099b87375a60d460ce6ea8004dd6983518339baa0068acc004c966002602601f132325980099b87375a609860d46ea8010dd69836801456600266e1cdd6982318351baa004375a60da00313370e6eb4c0bcc1a8dd50021bad306d306e0018a50419d14a08338c1b400566002b3001337126eb4c128c1a0dd5003a40011337120029000452820ca8a5eb841010000810100008101000044c96600266e2000400a2660d66ea0cdc01980c004000803998359ba80013306b375000497ae08a5eb85010000810100008101000020cc300e04e419515980099b87375a609460d06ea8008dd6982518341baa0078acc004cdc39bad3044306837540046eb4c110c1a0dd5003c56600266e1cdd6981698341baa002375a605a60d06ea801e2b30013025375a609460d06ea801e2602666e0400ccc05c01cc03813a2945065454cc199240138657870656374207661756c745f6f75742e646966667573696f6e5f656e64203d3d207661756c745f696e2e646966667573696f6e5f656e640016419515330664913c657870656374207661756c745f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f696e2e646966667573696f6e5f737461727400164195153306649138657870656374207661756c745f6f75742e70656e64696e675f7969656c64203d3d207661756c745f696e2e70656e64696e675f7969656c6400164194832a60020214800244b3001337100026eb4c0b8c1a4dd500144dd6981718349baa0028800a0cc409515980098090074566003300133031375860d460ce6ea8134dd7182198339baa30493067375402701099834982498339baa304930673754026660d2981054455534472004bd7052000405515980099b8900432330010013758608860d06ea8138896600200314800226644b30013375e60dc60d66ea8008c134c1acdd5182398359baa017899b8000198009bab304d306b3754005375c609a60d66ea8c134c1acdd500bd22010455534472004089100141a060d80026600400460da002835233001013826cdd6982198339baa0239bad302c3067375404700e807a0288a99832a4812b65787065637420706f745f7265636569766564203e3d20756e7374616b65645f7969656c645f7368617265001641911533065491536578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473286f726465725f696e707574732c206465706f7369745f72657175657374732c20757364725f61737365742c20302900164191159800cc004cc0c4dd6183518339baa04d375c608660ce6ea8c124c19cdd5009c042660d2609260ce6ea8c124c19cdd500999834a601054455534472004bd704c0ac01101546600202704d9bad304330673754047375a605860ce6ea808e01d00f40511533065491906578706563740a20202020202076616c69646174655f6465706f7369745f696e70757473280a20202020202020206f726465725f696e707574732c0a20202020202020206465706f7369745f72657175657374732c0a2020202020202020757364725f61737365742c0a20202020202020202d756e7374616b65645f7969656c645f73686172652c0a202020202020290016419083222a660ca921b76578706563740a2020202076616c69646174655f6465706f7369745f646966667573696f6e280a2020202020207661756c745f646174756d5f696e2c0a2020202020207661756c745f646174756d5f6f75742c0a2020202020207661756c745f757364725f61667465722c0a2020202020207374616b65645f7969656c645f73686172652c0a202020202020746f74616c5f7969656c642c0a2020202020206d61785f656e642c0a20202020202074782c0a202020202900164191153306549144657870656374207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f72650016419115330654913a657870656374207661756c745f757364725f6166746572202d207661756c745f75736472203d3d207374616b65645f7969656c645f7368617265001641906eb4c1a0004c1a0c1a4004ca6002660360026eb4c1a0c194dd5002cdd7182398329baa304730653754023375c605460ca6ea8c11cc194dd5008a444b30013053306737540071325980099baf306c3069375460d860d26ea8004c110cc1acdd480125eb822b3001304998009bab304b30693754003002a4410d7374616b696e675f7661756c7400408113259800982a18349baa0018992cc004006330010018acc004cdd7981818359baa0034c103d87a80008998369ba898009bab304d306b3754007005a4410455534472004088660da002660da00697ae0830a0d08332036833419a0cd06641c060da60d46ea80062a660d092012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d0016419c608a60d26ea80062a660ce92014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d203100164199153306749141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016419860d660d06ea800e2a660cc92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641943758608060c86ea812a2a660c492013565787065637420536f6d65287661756c745f6f75745f69647829203d20696e64696365732e7661756c745f6f75747075745f69647800164184454cc16d24013365787065637420536f6d65287661756c745f696e5f69647829203d20696e64696365732e7661756c745f696e7075745f69647800164168604a60b86ea80622a660b492012e65787065637420746f74616c5f7072696e636970616c203e2030207c7c20746f74616c5f7969656c6420213d2030001641643300c0013758607260ae6ea804cdd6182c80422b300130380018cc0048966002003148002266e0120023300200230540014145222329800800c012006800888966002005159800800c528c52820aa8acc00400629422b3001330043057002375a60ae00319800801cc16000a60b0002801a294105120aa4155223370666e08008dd6981618281baa001375a606460a06ea8006660066eb0c144c138dd50049bac3030304e37540153030304e375404691111192cc004cc8a6002646600200200644b30010018a508acc004cdd7982d982c1baa305b30583754607460b06ea8c16c004c0cccc168dd4801a5eb82294626600400460b800282a9059528528a0a6375860ae60a86ea80e8dd7180c982a1baa30363054375400515980099912cc004cdc398018011801802c56600260420031980080140064464b300130443058375400313232598009823982d1baa0018992cc004cdc39bad305f001375a607c60b86ea800e266ebcc17cc180004c06cc170dd5001c52820b2305b375400314a082c0c0d8c168dd5192cc004c114c168dd5000c4c96600200319800800c56600266ebcc094c170dd5001982f982e1baa0068acc004cdd7981f182e1baa001305f305c375400710018a9982d24813865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164165153305a49138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164165054407105482a41520a88308c178c16cdd5000c149058181b182d1baa303c305a375400860b860b26ea80062a660ae92013e65787065637420536f6d65286d61746368696e675f7265717565737429203d206c6973742e61742872657175657374732c20726571756573745f69647829001641586601c00e002803a2a660a89201376578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e6728696e7075745f746f5f7265717565737473290016414d153305449139657870656374206c6973742e6c656e677468286f726465725f696e7075747329203d3d206c6973742e6c656e677468287265717565737473290016414c6603c6eb0c15cc150dd501d1bae303030543754606c60a86ea8008dd6181b182a1baa0108acc00660026eb0c0c0c150dd501d4dd6182b982a1baa0109bac305730543754606060a86ea80092229800803400a4464b300130453059375400319800982e982d1baa0019bac3019305a3754007323303500523375e60be60b86ea8004dd38011bac3019305a37540069112cc004c120c170dd5000c56600266ebcc180c174dd50019830182e9baa3060305d375400d15980099baf3039305d3754006607e60ba6ea8c180c174dd500344cdc3cc004dd5981f982e9baa0039bae30600029bae3060306100240506601a64b300133710002900044c088006200282d8dd6981f982e9baa0063060305d375400314a082d2294105a454cc16d24015365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f617373657429001641688a9982c2493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f696478290016415c6601e00a00280411303f9800cc00400e6eb0c15cc150dd5008496600260246eb4c0dcc154dd5000c4c100dd69818982a9baa0018a504148806a660366eacc074c150dd501d1bae303630543754606c60a86ea800b300103a9bae305730543754606c60a86ea800a6eb4c0c0c150dd50084dd6980c982a1baa010402133017375860ae60a86ea8c0c0c150dd500111bac3058305537540029111194c004c1700066eacc170c17400660b800759800982218088024520008acc00401209313259800982f002c4c96600266e3cdd7182d0012450455534472008800c1310581bad305a00182520b6305c004416882b1222259800cc00400e9464444b30010018acc004cdc78022441008a51899811005198319ba900433063375200697ae0417914a082f101f456600266e1ccdc09bad3060305d37540086eb4c180c174dd5001000c4c96600266e1e60026eb0c184c178dd5181d182f1baa00ca400122332259800cc004c13400694294505f44c96600266e24cc04c0040166002013375c60cc007375c60cc60ce00680d2266e000100062a660c29212d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c74610016418066e08004016200682f8dd6183198301baa00232980080852000912cc004cdd7981118319baa002374e0071337000026eb4c114c18cdd500144005060203e375860c660c06ea800901c19b8100200a8801454cc1712413265787065637420746f74616c5f76616c6964617465645f75736472203d3d2065787065637465645f757364725f64656c74610016416cb3001301a0098a400314800905a414105a413d05a0c17000915330524901a96578706563740a2020202076616c69646174655f726571756573745f6f7574707574735f7065725f72657365727665280a20202020202074782e6f7574707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e726571756573745f746f5f6f7574707574732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641451533052491786578706563740a2020202076616c69646174655f77697468647261775f696e70757473280a2020202020206f726465725f696e707574732c0a20202020202077697468647261775f72657175657374732c0a202020202020696e64696365732e696e7075745f746f5f72657175657374732c0a202020202900164145153305249142657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900164144600a00a8a50412c825844b300133710002900045300103d87a8000899803001000a09222a6606292013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640c09111112cc004c09001e264b300100181444c966002003159800981f8014566002604c60746ea8006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c0be05f132598009823001c566002605a60826ea801a264b3001001818c4c96600200303281944cc89660020030348992cc00400606b035899912cc00400606f13259800800c0e2071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c4c96600200303f8992cc0040062b30013056002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c104c154dd500c44c9660020030458992cc004006264b3001001823c4c966002003159800982f00144cc8966002608e00313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205882841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0f0006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040b105082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b1598009823000c4c96600200304b8992cc00400609904c8992cc004c18c00e26608000244b3001002803c4c96600200319800800c4c008c19800e0a0816a0a10508284141067183200120c4826a0c0375800304c82620c63060001417860b86ea80162b300130480018992cc00400609713259800800c1320991332259800800c13a264b30010018acc004c19400a26608400644b30010028acc004c138c188dd5001c4c9660020030528992cc0040060a7053829c4cc89660020030558992cc0040060ad05682b44c96600260da00700f82ba0d4375a00305641b460d40028340dd68009834801414d06a1833800a0ca30633754007051418113259800800c66002003130023068003829205e829414a0a505241a460cc004832209e831209f04f827c13d0661831800a0c2375800260c400504c82620c63060001417860b86ea80162b3001303b0018992cc00400609713259800800c132099132598009831801c4cc10000489660020050078992cc00400633001001898011833001c14102e41420a105082820ce3064002418904d41806eb000609904c418c60c000282f0c170dd5002c566002607400313259800800c12e264b30010018264132264b30013063003899820000912cc00400a00f13259800800c66002003130023066003828205c82841420a1050419c60c8004831209a8300dd6000c1320988318c18000505e182e1baa0058acc004c0e4006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b8748038006264b3001001825c4c96600200304c82644c96600260c60071330400012259800801401e264b30010018cc0040062600460cc00705040bd05082841420a08338c19000906241350601bac00182641310631830000a0bc305c375400b15980099b87480400062b3001305c375400b00282520ba82520b2416482c905920b2416482c905920b219800800c4cc0ec06489660020050248992cc00400609704b8992cc00400609913259800800c13609b04d826c4cc896600200304f8992cc0040062b300130660028cc0040062600e60cc01105040c5050418d05082841420a08338c1900050621bae0013063002419060c200282f8dd6000c12e0968310c17c00905d4121023182c9baa00382420b68244122091048417c60b800282d0c17000a08d046823411905d182d000a0b030563754031044414d0444099044409913259800800c11608b0458991801982e0021bad001822a0b83059002415d13259800800c10e0870438991801982d0021bad001821a0b430570024155040414d040820410208082b8c150005052182a00140fa07d03e81f20aa305200141406eb4004c14400a0768290c13c00504d1bad001304e00281c209e304c00141286eb0004c12c00a06b035413060920028238dd6000982400140ca0648248c11800504418211baa006818207e8182086375800302f817a08c30430014104608600502d816c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b159800980c803c4c9660020030288992cc0040062b3001303f0028acc004c098c0e8dd5000c4c96600200302a8992cc004006264b300100181644c96600200302d816c4c96600260880071598009815981f9baa0048992cc00400605f13259800800c4c9660020030318992cc0040062b300130480028acc004c0bcc10cdd5001c4c9660020030338992cc004006264b300100181ac4c96600200303681b44cc89660020030388992cc004006073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c0fe07f03f899912cc00400608313259800800c10a0850428992cc004c16400e2b300130403054375402113259800800c112264b3001001822c11608b1332259800800c11e264b3001001824412209113259800982f801c5660020270498992cc00400609504a82544cc896600200304c8992cc00400609b04d826c4c96600260c800715980080ac13a264b3001001827c13e09f1332259800800c146264b3001001829414a0a5132598009834801c66002045133046026225980080140be264b300100182b415a264b300100182bc4c96600200305882c41620b11332259800800c16a264b30010018acc004c1c400a33001001898039838804416d03c416d06e416e0b705b82da0e4306f00141b46eb8004c1b800906f1836000a0d4375800305682b20da306a00241a105340b905341986eb40060a48348c1980050641bad0013065016827a0cc3063015418504e41846eb400609a8320c18400505f1bad001306001482520c2305e013417104941706eb400609082f8c17000505a1bad001305b002822a0b83059001415c60aa6ea8042086829208682b0dd6800c109059182b000a0a8375a00260aa00503f415860a60028288dd6800982900140f10531828000a09c3758002609e00503981ca0a0304d001412c6eb0004c13000a06d036413460940028240c12800a06903481a40d104b1824000a08c304437540070324105032411503281940ca0648248c118005044182300140c2061030818208e3044001410860806ea801205c81ea05c8208dd6000c0b605a8220c10400503f182080140ae05702b815a084303f00140f460766ea800605281c205281e2053029814c0a5040181e800a0763039375401b02740d881b080dc06e03701b40c8664464b3001301a302e37540031302f32337606066002606660680026eb0c0c8c0bcdd5000c54cc0b524018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640b0646600200200644b30010018a60103d87a80008992cc004cdd7981800099ba548010cc0ccc030cc0ccdd480225eb812f5c11301433033374e66066606000266066606200297ae04bd7044cc00c00cc0d400902e1819800a0623756605e60606060606060606060606060606060606060586ea8048dd7181798161baa00132323259800800c5660026032605a6ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0dc00a2b3001301e3032375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b3001303d0028acc004c090c0e0dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982880146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060986ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c18800a330010018acc004c124c174dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260ce0051330440032259800801466002007103882a20768992cc0040062b300130513065375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130730038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307800389808183c008c18d0751bae00141e060ea0028398dd7000983a00420ea307200741c105e41c06eb40060ba8398c1c000506e1bad001306f00282d20e0306d00141ac6eb0004c1b000a0af05741b460d40028340c198dd5000c15506341560ab05582aa0d6306800241990524191052829414a0a48340c1940050631bac0013064002827c13d0651831000a0c0305e375404d04d416d04d40d904d417d04d826c13609a8318c18000505e1bae001305f002418060ba00282d8dd7000982e00120ba305a00141606eb8004c16400905a182b800a0aa375c00260ac00482b8c1500050521bae0013053002415060a20028278c134dd500bc0f104a40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f104e40f207903c81e20a4304f0014134609e00503a81d40ea0748280c13400504b182680140e207103881c209c304b0014124609600503681b40da06c8260c124005047182480140d206903481a209430470014114608e00503281940ca0648240c114005043182280140c2061030818208c30430014104608600502e81740ba05c8220c10400503f182080140b205902c8162084303f00140f4607e00502a81540aa0548200c0f400503b181c9baa005814206c814207481440a205102840f8607600281c8c0ec00a04d026813409903c181c800a06e3039002812409204902440e8606e00281a8c0ccdd5000c0890304089034408a0450228112070303500140cc6eb8004c0d00090351819000a060302e375400301d40ad01d80ec07603a8198c9660026032605a6ea8006264b30013019302e375400313032302f3754003153302d49013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640b06014605c6ea8c040c0b8dd5181898171baa0018a998162494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640ac6600e6eb0c03cc0b4dd50099191980080098019bab3011302f37546022605e6ea8008896600200314a115980099b8f375c606600205914a3133002002303400140b48188c004004896600200314bd7044cc0bcc0b0c0c0004cc008008c0c400502e1112cc004c060c0b0dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981a80146600200713259800980e800c4c9660020030078992cc0040062b300130380028992cc004c080006264b300100180544c966002003159800981d80146600200300c805a01c805a070805c02e01700b40f0607200281b8c0d4dd50014566002602a00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009821001c04e02481f8dd6800c045042181f800a07a375a002607c00500e40fc607800281d0dd6800981d801402d03c181c800a06e3035375400500940c88190c0ccdd5000c02103540220110088042072303600140d060646ea800a2b300130120018acc004c0c8dd5001401e00c819a00c817902f18181baa001802a010802a064802c01600b00540d860660028188c0cc00a007003801c00d0341818800a05e302d375400700140a84566002601000713232598009804980e9baa302130220028a518a50406c6eb4c080004c070dd50024590192032180d980e000980d8022293454cc04524011856616c696461746f722072657475726e65642066616c7365001365640401" + : "592896010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd50024dd2a4001230113012001911919800800801911980180098010014dc3a4005370e90044dc3a4015370e900648c044c048c0480066e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012232330010010032259800800c530103d87a80008992cc004c0100062601e6603e00297ae089980180198108012036301f00140752223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa002488888a6002600a00b2259800980d180f9baa00289919192cc004c09c00a266010604c006264b3001301e0018992cc004c0a400626464b300130210018992cc004c0b000626601a60560020131640a4604e6ea800a2b3001301600189919194c004dd69816800cdd69816801cdd698168012444b3001303100480745902e0c0b4004c0b0004c09cdd5001459025204a30253754002605000316409860486ea800a2b300130130018acc004c090dd500140162c812a2c811102218111baa0018b20483025001302500130203754005164079223259800980d800c4c966002604c00313300b30250010038b2046302137540071598009808000c4c966002604c00313259800980e98111baa00189919192cc004c0a800a266014605200626601400200f16409c6050002605000260466ea80062c8108c0940062c8118c084dd5001c5901f203e301f37540052259800980d180f9baa0028991919192cc004c0a000a264b3001301f30243754003132323322598009816801c4cc03cc0b002002a2c8150dd718150009bae302a002302a0013025375400316408c604e0091640946eb8c098004c098004c094004c080dd500145901e244446645300133223259800981098131baa001898139919bb0302b001302b302c00137586054604e6ea80062c8128c8cc00400400c896600200314c0103d87a80008992cc004cdd7981400099ba548010cc0acc04ccc0acdd480225eb812f5c11301b3302b374e66056605000266056605200297ae04bd7044cc00c00cc0b40090271815800a0523756604e60506050605060506050605060506050605060486ea8064dd7181398121baa002912cc004c080c094dd500144c8c8c8cc8966002605e007133008302e0051330140020068b2058302c001375a605800460580026056002604c6ea800a2c812244b30013020302537540051323232323298009bad302e0019bad302e0049bad302e003981700124444b30013033005899806181900489980c0008054590300c0b8004c0b4004c0b0004c0ac004c098dd5001459024489660026040604a6ea800a264646464646530013758605e003375a605e00b375a605e009375a605e007302f00248888966002606a00d13300e303400b13301a001132332259800981c001c03e2c81a8dd7181a8009bae303500630350058b20641817800981700098168009816000981580098131baa0028b2048912cc004c080c094dd500144c8c8c8c8ca60026eb0c0b80066eb4c0b80126eb4c0b800e605c00491112cc004c0cc01626601860640122660300022646644b30013036003806c590331bae3033001375c606600a60660091640c0302e001302d001302c001302b001302637540051640909111119912cc004c094006264b300130300018992cc004c09cc0b0dd5000c4c8c8c8cc8966002606c00713259800981698191baa00189919191919194c004c0f00066eb0c0f00166eb4c0f00126eb4c0f000e6078004911112cc004c10801a26605c6eb0c10402c8966002005133030006225980080144cc0940144cc094024566002607860826ea80462646464b3001304900289919912cc004c10800a264b3001304d00189981c9bac304c00122598008014012266046609c00426002609e00482622c8250c120dd5001c566002606e005132598009826800c4cc0e4dd61826000912cc00400a009133023304e00213001304f002413116412860906ea800e2b300130410028992cc004c1340062660726eb0c1300048966002005004899812182700109800982780120988b209430483754007159800982180144c8c8c966002609e00513303b3758609c00644b30010028acc004c11cc130dd5001c4c8c8cc896600260aa00700a8b20a4375a60a40026eb4c148008c148004c134dd5001c5904b44cc098c1400084c004c14400904e45904c1826800982680098241baa0038acc004c0d800a264b3001304d00189981c9bac304c0012259800801401226604a609c00426002609e00482622c8250c120dd5001c566002606a005132598009826800c4cc0e4dd61826000912cc00400a009133025304e00213001304f002413116412860906ea800e2b300130340028992cc004c1340062660726eb0c1300048966002005004899813182700109800982780120988b20943048375400715980099b874803800a264b3001304d00189981c9bac304c0012259800801401226604c609c00426002609e00482622c8250c120dd5001c56600266e1d20100028acc004c120dd5001c0062c824a2c8231046208c41188231046208c41188230c114dd500089981300109981b00b112cc00400a03f1323322598009827800c4cc0a8c1380044c010c13c0162c8260dd7182600098268009bac304b00241246090007164118608e002608e00260846ea80462c82022646004608e0066eb4c11400904344c8c008c11400cdd6982180120828b207e181e000981d800981d000981c800981c00098199baa0018b206230350058b206637586066002606600460660026064002605a6ea80062c8158c0bc0062c8168c0acdd5003c5660026034003132598009818000c4c966002604e60586ea80062646464b300130340028992cc004c0acc0c0dd5000c4c8c966002606e00313259800981718199baa00189919191919194c004dd6981e800cdd6181e802cdd6181e8024dd6981e801cdd6981e801244444b300130430068992cc004c0e8c0fcdd5000c4c8c8cc896600260900071323322598009825801c4c8cc8966002609c00713302a304d01813303a01b2259800801408e2646644b300130530018998171829000898021829802c590501bae305000130510013758609e004826a2c8258dd698258009bad304b00c304b00b8b2090375a60900026eb4c120028c1200262c8228dd698228009bad30450023045001304037540031640f86084017164100303d001303c001303b001303a0013039001303437540031640c8606c0051640d0606c00260626ea80062c8178c0cc00e2c8188dd61819000981900098169baa0018b2056302f0018b205a302b375400f1640a48148566002604660506ea801633001302c3029375400b222598008014530103d87a80008acc004c0980062603c6605c605e00497ae08cc00400e6060005337000029000a00640a8816a4603260526ea8c0b4c8cc004004008896600200314bd708103d87a80008101800044c8cc89660033001301e302e375460640074a14a2816a26606330014a14c103d87a8000a60103d879800040b4660626e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d000400e2946266004004606a002817903244cc0c6600294298103d87a8000a60103d879800040b4660626e9c0092f5c11330319800a51a60103d87a8000a60103d879800040b4660626e9ccc0c4dd400080125eb8102d205a3758606060620026eb4c0c0008cc008008c0c000502d488c8cc00400400c896600200314bd7044cc896600266ebcc0c8c0bcdd5181918179baa3020302f37540046032660626ea40152f5c113303100233004004001899802002000a05a3030001303100140b92302d302e302e302e302e001912cc0040062900044cdc02400466004004605e00281624464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e0051001803205e899802802981a802205e375c605c0026eacc0bc004c0c400502f0a5eb7bdb18244b30013025302a375400513232598009818801400e2c8170dd6981780098159baa0028b205291816981718171817000cdc0a40012232330010010032259800800c52f5c113302f374e600660600026600400460620028172444646600200200844b3001001880244c8cc88cc88cc008008004896600200310038994c0040166eb8c0cc0066eb4c0d00066600600660700048048c0d80050341bab3031003375c605c0026600600660660046062002817a44646600200200644b30010018a508acc004cdd798180009ba70038a518998010011818800a05640b92259800981298151baa0028991919194c004c0c800660640073032002488966002606c009133014303500713300f002132598009816800c4c8ca60026eb4c0e00066072003375a60700049112cc004c0f000a264646644b3001304000380945903d1bae303d001375c607a004607a0026eb0c0ec00a2c81c8607000260666ea800a2b30013022001899194c004dd6981c000cc0e40066eb4c0e000922259800981e00144c8c8cc896600260800070128b207a375c607a0026eb8c0f4008c0f4004dd6181d8014590390c0e0004c0ccdd500145660026058003132323298009bad3039001981d000cdd6981c801cdd6981c80124444b3001303e0038991919912cc004c10800e0291640fc6eb8c0fc004dd7181f801181f8009bac303d0038b2076181c800981c00098199baa0028acc004c0b80062646644b3001303a0018991919912cc004c0f800e0211640ec6eb8c0ec004dd7181d801181d8009bac30390018b206e375a606e002607000260666ea800a2b300130210018991919912cc004c0ec00e01b1640e06eb4c0e0004dd6981c001181c00098199baa0028acc004c08000626464653001375a6072003375a6072007375a60720049112cc004c0f401201f1640e83039001303800130333754005159800980f800c4c8c966002607200500b8b206c375a606e00260666ea800a2b30013370e9007000c4c8c966002607200500b8b206c375a606e00260666ea800a2c8189031206240c48189031206240c460626ea80062c819860640026062002606000260566ea800a2c814a4605a605c605c605c605c605c003222329800800c01200680088896600200510018cc00400e6066005330043032002001400c81826e21200048888888888888888a6002607a60746ea8046607a60746ea8c0acc0e8dd5008cc040042444b300130120028994c004006009003a40008008888966002007159800801440062c8212330010049822801cc11400a6644b30013007002899b80003375a606860866ea800a2c8208c11000cdd69822001200841091640ed300c00c91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c820a26600a00a608e0088208dd718200009bad3041001304300141046601e0080062900024444446530012232330010010022259800800c52f5c11330473259800982018229baa0018982498231baa0018b208833005004375a60900026600400460920028232444464b30013040304537540031325980099baf304a304737546094608e6ea8c0e0c11cdd50009818998249ba90054bd704566002606d300137566070608e6ea8c0e0c11cdd5000c01691108747265617375727900402113259800982098239baa0018991980c8008992cc004c110c124dd5000c4c96600266ebcc138c12cdd5182718259baa00130353304d375201297ae08acc004c0ea60026eacc0f0c12cdd5000c02691108747265617375727900403113259800982298259baa0018991980e8008acc004cdd7980e18269baa0034c0103d87a800089982780299827800998279ba6329800800cdd5981f98271baa00499198008009bab3040304f37546080609e6ea8024896600200314bd6f7b63044c8cc14ccdd818280009ba63233001001375660a400444b30010018a5eb7bdb182264660ac66ec0c14c004dd418111bad3054001330030033058002305600141506600600660aa00460a600282890011112cc00400a2003132332298008034c15c016646600200200a44b300100189982b99bb037520086e9800d2f5bded8c113298009bae30550019bab3056001982d0012444b30013372001000713305b337606ea4020dd3003802c56600266e3c02000e264b300159800800c528c52820b6880144cc170cdd81ba9009374c00200482c0ca6002003008801a0022225980080144006264664530010069831802cc8cc0040040148966002003133063337606ea4010dd4001a5eb7bdb1822653001375c60c2003375a60c4003306600248896600266e4002000e2660ce66ec0dd48041ba80070058acc004cdc7804001c4c96600260c0003100289983419bb037520126ea000400906419b8000700289983399bb037520066ea0008cc01801800506320c61832000a0c440186eb8c170004dd6982e800982f80120ba89982d99bb037520066e98008cc01801800505720ae182c000a0ac40186eb8c140004dd59828800982980120a24bd7045904b182798261baa0018b20943036304b3754003164125164124609a60946ea80062c8240cc024dd6181a18249baa008005304b304837540031641186064608e6ea8c0e0c11cdd5000c59045459045182498231baa0018b20883300537586090608a6ea801000a60806ea801922259800981f800c6600260886ea80264609060926092609260926092609260920032259800982018229baa0028991919194c004dd69826800cdd698268024dd69826801cdd6982680124444b30013052005804c5904f0c134004c130004c12c004c118dd5001459044488c8ca60026eb4c12c0066eb4c12cc1300066eb4c12c00922259800acc004cdc4800a400114a313371200400c824a29000456600266e2401800e20031323370666e00cdc019b820023370200600e002900080099b810020034124824860960026094608c6ea800a444466e24004ca60020030058025200040044444b30010038acc00400a2003164135198008024c14000e60a000532332259800982418271baa0028991980d0008acc004cdd7981198281baa00230533050375400915980099baf30413050375400260a660a06ea800a264b3001304a3050375400313232325980099b87375a60ae0066eb4c114c150dd5003456600266e1cdd6982b8011bad303f3054375400d15980099b87375a60ae0026eb4c08cc150dd5003456600266ebcc15cc160004c074c150dd500344cdc0004cc004dd59822982a1baa304530543754011375c60ae01d375c60ae60b001c80aa2c82922c82922c82922c8290c15c004c158004c144dd5000c5904f181d98281baa0018b209c8b209c3052304f37540051641346070609a6ea8c0f8c134dd500098280019827801a008413522222232325980099b8700100489919192cc004cdc399b81375a60a4609e6ea8c148008dd6982918279baa30520030048992cc00660020054a3222259800800c56600266e3c0112201008a5189980f8029982b1ba900433056375200697ae0414914a0829101c44cdc4803cc004dd6182998281baa303b3050375401948002446464b300198009827000d28528a0a48acc004c06c006266e0000ccdc199b82001375a608a60a86ea8010dd6981f982a1baa0048b20a48801a0a49800802cdd7182b000cdd7182b182b800a028375860aa60a46ea800901845904e1980e1bac3052304f37546074609e6ea802c8dd6182998281baa0018b209a375660a260a400260a200330010079bae304f304c3754607a60986ea802200d0054029164128b30013045300d0018a40011598009827800c4c96600266e3cdd71825800a4504555344720089bad304c0018b2094304e0018b20984124660366eacc074c128dd50029bae303b304a3754607660946ea801a606a60886ea808a6e252000488888888c8ca600330010019bac3051304e375402923004375a6080609e6ea800501166002003480024466e00004dd6981d98281baa002405923259800982518279baa001899912cc004c130c144dd5000c56600266e24cdc09bad30553052375400200490405d5b81c400a2c82822c8280dd6982998281baa0013259800982018281baa0018982199829982a18289baa0014bd7045300103d87a8000413c60a660a06ea8c104c140dd5180598281baa0028b209c3259800981f98279baa0018982119829182998281baa0014bd7045300103d87a8000413860a4609e6ea8c148c13cdd5180518279baa0019828982900524444b300159800980c8024528c6600260980074a14a2828105044c966002609a60a46ea8006330013298009980a0009bad305730543754005375c608a60a86ea8c114c150dd50054dd71811982a1baa3045305437540149112cc004c144c158dd5001c4c96600266ebcc16cc160dd5182d982c1baa3049305837540026084660b46ea40092f5c11598009823cc004dd59824982c1baa304930583754003002a4410d7374616b696e675f7661756c74004065132598009829182c1baa0018991980a00089982e1ba898009bab304b305a3754609660b46ea800e00b4881045553447200406c660b8002660b800697ae0305c3059375400316415c608660b06ea8c124c160dd5000c59056459056182d182b9baa0038b20aa1bac30563053375409198008244dd7182b18299baa304430533754013375a607c60a66ea80666eb4c088c14cdd500ca022acc004c068dd6982218299baa0028acc004c020dd6982b18299baa0028acc004cdc49bad3056305337540046eb4c110c14cdd500144c8cc158dd40009982b1ba83370200a00297ae03370866e08010dd6982b18299baa002375a608860a66ea800a2c828a2c828a2c828a603860a66ea806522229800982d182d8024dd6982d0014dd6982d182d8012444b300130543059375400913233225980099b87337020046eb4c1800280162b30013370e6eb4c180c174dd50009bad3060305d375400d159800992cc004c04c03e26464b30013370e6eb4c144c180dd50021bad30630028acc004cdc39bad304b306037540086eb4c18c006266e1cdd6981798301baa004375a60c660c800314a082f2294105e1831800acc0056600266e24dd69827982f1baa00748002266e2400520008a50417114bd7081010000810100008101000044c96600266e2000400a2660c26ea0cdc01980c004000803998309ba800133061375000497ae08a5eb85010000810100008101000020ba300e053417115980099b87375a609e60bc6ea8008dd69827982f1baa0078acc004cdc39bad3049305e37540046eb4c124c178dd5003c56600266e1cdd69816982f1baa002375a605a60bc6ea801e2b30013025375a609e60bc6ea801e2602666e0400ccc05c01cc03814e294505c45905c45905c45905c20b8980080852000912cc004cdc40009bad302e305f37540051375a605c60be6ea800a200282e90254566002602401d159800cc004cc0c4dd61830182e9baa052375c609060ba6ea8c138c174dd5009c042660be609c60ba6ea8c138c174dd50099982fa61054455534472004bd7052000405515980099b8900432330010013758609260bc6ea814c896600200314800226644b30013375e60c860c26ea8008c148c184dd5182618309baa017899b8000198009bab305230613754005375c60a460c26ea8c148c184dd500bd220104555344720040891001417c60c40026600400460c60028302330010138294dd69824182e9baa0239bad302c305d375404700e807a0288b20b68b20b68acc0066002660626eb0c180c174dd50291bae3048305d3754609c60ba6ea804e0213305f304e305d3754609c60ba6ea804ccc17d3001054455534472004bd704c0ac0110154660020270529bad3048305d3754047375a605860ba6ea808e01d00f405116416c82da2c82da2c82da2c82d8dd6982f000982f182f800994c004cc06c004dd6982f182d9baa0059bae304c305b3754609860b66ea80466eb8c0a8c16cdd51826182d9baa01148896600260b060ba6ea800e264b30013375e60c460be6ea8c188c17cdd50009824998309ba90024bd704566002609d3001375660a060be6ea800600548810d7374616b696e675f7661756c7400408113259800982c982f9baa0018991980d8008acc004cdd7981818309baa0034c0103d87a80008998319ba898009bab305230613754007005a4410455534472004088660c6002660c600697ae08b20be306330603754003164178609460be6ea80062c82ea2c82e8c184c178dd5001c5905c0dd61822982d1baa04f8b20b022c8288c094c148dd500c4590500cc030004dd6181f18269baa0133758609e0108acc004c0f4006330012259800800c52000899b8048008cc008008c1280050474888ca6002003004801a00222259800801456600200314a314a0825a2b30010018a508acc004cc010c134008dd69826800c66002007304e0029827000a0068a504120825904b488cdc199b82002375a6062608c6ea8004dd6981b98231baa001998019bac3047304437540126eb0c0d4c110dd50054c0d4c110dd501124444464b3001332298009919800800801912cc00400629422b30013375e60a2609c6ea8c144c138dd5181f98271baa3051001303833050375200697ae08a518998010011829000a098413d4a14a28250dd6182698251baa03f375c603260946ea8c0ecc128dd500145660026644b30013370e6006004600600b1598009810800c6600200500191192cc004c124c138dd5000c4c8c966002609860a06ea8006264b30013370e6eb4c154004dd6982198291baa003899baf30553056001301b3052375400714a08280c144dd5000c528209e303b3050375464b3001304a305037540031323301c00115980099baf30253052375400660aa60a46ea801a2b30013375e608660a46ea8004c154c148dd5001c40062c82822c8280c150c144dd5000c5904f181d98281baa30413050375400860a4609e6ea80062c8268cc03801c00500745904a45904a1980f1bac304d304a375407e6eb8c0d4c128dd5181d98251baa0023758607660946ea80422b300198009bac3035304a375407f3758609a60946ea80426eb0c134c128dd5181a98251baa002488a600200d00291192cc004c128c13cdd5000c6600260a660a06ea80066eb0c064c140dd5001cc8cc0e40148cdd7982a98291baa001374e0046eb0c064c140dd5001a444b3001304d3052375400315980099baf30563053375400660ac60a66ea8c158c14cdd5003456600266ebcc0f8c14cdd5001982218299baa30563053375400d13370f30013756608860a66ea800e6eb8c15800a6eb8c158c15c00901419806992cc004cdc4000a4001130220018800a0a4375a608860a66ea8018c158c14cdd5000c52820a28a5041451641448b209c3300f0050014020898224c00660020073758609a60946ea80424b30013012375a607860966ea80062608a6eb4c0d8c12cdd5000c528209240353301b3756603a60946ea80fcdd7181d98251baa303b304a3754005980081fcdd7182698251baa303b304a3754005375a606a60946ea80426eb4c064c128dd500820109980b9bac304d304a3754606a60946ea80088dd6182718259baa00148888c8cc89660033001002a5191112cc0040062b30013371e008911008a518998100041982b9ba900433057375200697ae0414d14a0829901d456600266e1ccdc09bad30543051375460a80066eb4c150c144dd5182a002800c4c96600266e1e60026eb0c154c148dd5181e98291baa00aa400122332259800cc004c14000694294505444c96600266e24cc0440040166002011375c60b4007375c60b460b600680c2266e000100062c82a8cdc1000802c400d0541bac30573054375400465300100ea4001225980099baf3020305737540046e9c00e266e00004dd69824182b9baa0028800a0aa40746eb0c15cc150dd500120343370200401110028b20a059800980c003c520018a4004827a2c827a2c8278dd598291829800acc004c124c04401229000456600260a60091325980099b8f375c609e00291104555344720089bad30500018b209c30520048b20a0413460a40048b20908b20908b20903005005452820844108225980099b88001480022980103d87a8000899803001000a08022c8138c0a0dd50028c8c8c966002603e60486ea80062646644b3001302c0018992cc004c08cc0a0dd5000c4c8c8c8cc8966002606400713259800981498171baa0018991919191919191919194c004c0f00066078013303c008981e003cc0f001a607800b303c004981e001cc0f000922222222259800982300544cc090c11404c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607860826ea8056264646464653001375c6094003304b0019bae304a0059bae304a0049bae304a0039bae304a00248888896600260a200b1330333050005159800982398261baa02189919192cc004c15000a2660806eb0c14c00c8966002005133033003102e8992cc004c134c148dd5000c4c8c8c8cc896600260b8007132323322598009830001c4c02cc1800322c82e8dd7182e8009bae305d002305d001375860b600b1641646eb4c164004dd6982c801182c800982c00098299baa0018b20a23055002414d16414460a400260a4002609a6ea80862c825a2c8270609400260920026090002608e00260846ea80562c82022c821860780026076002607400260720026070002606e002606c002606a0026068002605e6ea80062c8168c0c40162c8178c0bc004c0bc008c0bc004c0b8004c0a4dd5000c590271815800c590291bae3029001302a0013025375400316408c64b3001301f3024375400313259800980f98129baa0018981498131baa0018b2048301030253754602c604a6ea8c0a0c094dd5000c59023198061bac3015302437540324646600200260066eacc05cc098dd5180b98131baa0022259800800c528456600266e3cdd718150008124528c4cc008008c0ac005025205030010012259800800c52f5c113302630233027001330020023028001409444b3001301e30233754005132323259800981580144cc020c0a800c4c966002604400315980098141baa002802c590294566002602e00313232598009817001401e2c8158dd7181600098141baa0028acc004c08400626464b3001302e002803c5902b181600098141baa0028b204c40988130c098dd5000c590281814800981480098121baa0028b204411598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201" + : "591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Publish { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201" + : "591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Else { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5927e2010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692012f657870656374206f75747075745f646174756d3a205661756c74446174756d5631203d206f75747075745f6461746100168a99801a4953657870656374205b7661756c745f6f75747075745d203d0a2020202066696e645f7363726970745f6f7574707574732874782e6f7574707574732c2072656769737472792e7374616b696e675f7661756c742900168a99801a492f65787065637420696e7075745f646174756d3a205661756c74446174756d56315f30203d20696e7075745f6461746100168a99801a49df657870656374205b7661756c745f696e7075745d203d0a202020206c6973742e66696c746572280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a20202020202020207768656e20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c206973207b0a20202020202020202020536372697074285f29202d3e20547275650a20202020202020202020566572696669636174696f6e4b6579285f29202d3e2046616c73650a20202020202020207d0a2020202020207d2c0a202020202900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888889660033001300b3754023370e90034dc3a4001370e90022444464653001301037540033014006980a0012444b300130060038cc004c05cc050dd500248c060c064c064006460306032003370e9001488c8cc00400400c88cc00c004c00800922222323322323259800800c66002444b300130143020375400713259800800c00a264b30010018992cc00400600913259800800c566002605200519800801c4c966002603200315980098131baa002803c0190274566002601e00313259800800c01e264b300100180440220110088992cc004c0b400e01500940a86eb800502d1815000a05030263754005159800980c000c4c9660020030078992cc004c0b000a01300840a460540028140c098dd500140190232046408c60486ea800600a805a00a813200b005802c01502a1813800a04a3027002801c00e00700340a0604a0028118c084dd5001c00501e488966002602860406ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0980062b30013371290021812800c01a264b3001302b0048992cc004c06c0062b30013028375400d00980420528acc004c044006264b3001001804c4c96600200300a805402a264b3001302f003806402d02c1bad001805205e302c00140a860506ea801a2b3001301a0018acc004c0a0dd50034026010814a0108129025204a3026375400b00740a0601e604a002811a00c8138dd5000c01600b005802a05430270014094604e005003801c00e0068140c09400502318109baa003800a03c9112cc004c050c080dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b3001302b003804401d0281bad0018032056302800140986eb8004c09c0090281812800a0463021375400700140792223259800980a800c4c9660020030038992cc00400600900480244c9660026052007006802a04c375a00300440a4604c0028120c088dd50024566002601600315980098111baa004801c009023400901f203e3020375400722259800980a18101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300100180344c966002003007803c01e00f132598009816001c5660026036604e6ea801a264b3001001804c4c96600200300a805402a0151332259800800c032264b3001001806c03601b00d8992cc004c0c800e3300100a807c039013403902f1bae00140c8605e0028168dd70009817001205e302c00140a860506ea801a010812a0108148dd7000a0583029001409c6052005005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f22b30013011301d375400315980099b8748040c074dd51810980f1baa3008301e37546042603c6ea800626530013300137586044603e6ea80349660026012603e6ea8c08cc080dd5181198101baa300a3020375400314a314a080ea6012603e6ea8c024c07cdd5001c8c08cc090c090c09000522259800801c06a264b300130270048acc004cdd7981318119baa302630233754601a60466ea8004cdd2a40046604a600460466ea800d2f5c115980099baf302630273027302730273023375402298101a0008acc004c03260026eacc034c08cdd5180698119baa0019bae3002302337540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902944cc014014c0c00110291bae3029001375660540026058002815052f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902844cc014014c0bc0110281bae3028001375a60520026056002814913259800980b18119baa0018992cc0040062b300130183024375400313259800800c07e264b30010018104082041132598009816001c4c9660020030238992cc004c0b800a2b30013375e605a60546ea8004c0b4c0a8dd5180a18151baa0088acc004cdd7980a18151baa0013014302a3754602860546ea80222b30013375e601260546ea8005300103d87a80008992cc004c074c0a8dd5000c4c966002003159800980f98159baa0018992cc00400605113259800800c0a6053029899912cc00400605713259800800c0b205902c899912cc00400605d13259800800c0be05f02f899912cc00400606313259800800c0ca0650328992cc004c0f000e2b30013370e6eb4c0ecc0e0dd50069bad303b3038375402915980098159bad30223038375401b15980098159bad30233038375401b1302b375a602e60706ea803629410354528206a8a5040d503340e46eb400606481e0c0e40050371bad0013038002817a072303600140d06eb4004c0d400a05881b0c0cc0050311bad0013032002814a066303000140b860586ea800604e814a04f027813c09d031181718159baa0018a99814a493465787065637420496e6c696e65446174756d286f75747075745f6461746129203d207661756c745f6f75747075742e646174756d001640a0602a60546ea80062a6605092012c657870656374207661756c745f6f75747075742e7265666572656e63655f736372697074203d3d204e6f6e650016409d153302849135657870656374207661756c745f6f75747075742e76616c7565203d3d207661756c745f696e7075742e6f75747075742e76616c75650016409d153302849139657870656374207661756c745f6f75747075742e61646472657373203d3d207661756c745f696e7075742e6f75747075742e616464726573730016409d02440ac60580028150cc88cc0300088c966002602a60566ea8006266e3c00cdd7181798161baa0018a5040a4605c60566ea8c0b8c0acdd50009bac30133028375402c6eb8c01cc0a0dd500440850291bad00181020583029001409c604a6ea800603c811203d01e80f407902a181398121baa0018a998112493965787065637420496e6c696e65446174756d28696e7075745f6461746129203d207661756c745f696e7075742e6f75747075742e646174756d00164084601c60466ea8c034c08cdd5000c54cc08524017e6578706563740a202020206173736574732e7175616e746974795f6f66280a2020202020207661756c745f696e7075742e6f75747075742e76616c75652c0a20202020202072656769737472792e7374616b696e675f7661756c742c0a202020202020227374616b696e675f7661756c74222c0a2020202029203d3d20310016408115330214911d6578706563742074782e6d696e74203d3d206173736574732e7a65726f001640811533021491676578706563740a202020207661756c745f696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074280a20202020202072656769737472792e7374616b696e675f7661756c742c0a20202020290016408101b4090604a006811844646600200200644b30010018a5eb8226644b3001300500289981300119802002000c4cc01001000502118128009813000a0468a50406d153301c49013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d65720016406d301d375400291111114c004889660026036604e6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c0cc00a330010068cc004006013008403d008404500840c1008804402201081a0c0c400502f1bad0013030002802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a9112cc004c06cc09cdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b13259800981c801c6600201919800802403e01c80aa01c80ba01c81b0dd6800c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a05430283754007001409522259800980d98139baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002607800719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c966002608200701780b207c375c0028208c0f800503c1bae001303d00240f8607600281ca02280c202280d202281c8dd6000c04202081e0c0e4005037181c801403a01d00e8072074303700140d46eb4004c0d800a01681b8c0d00050321bad00130330028042068303100140bc6eb4004c0c000a00a8188c0b800502c1817001400e007003801a05e302c00140a860506ea800e002812a444b3001301b3027375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c0e400e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c0f800e02901340ec6eb800503e181d800a072375c002607400481d8c0e00050364039015403901740390361bac001806c035039181b000a0683036002805c02e01700b40dc60680028190dd6800981980140210341818800a05e375a002606000500540c4605c0028160c0b800a007003801c00d02f1816000a0543028375400700140952223259800980e000c4c9660020030038992cc0040062b3001302f0028cc00400600b004402d00440b100480240120088180c0b400502b18149baa0048acc004c048006264b3001001801c4c96600200315980098178014566002603c60546ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c0cc00a330010038cc0040060130084041008404100840c1008804402201081a0c0c400502f1818801401a00d0068032064302f00140b460566ea80060088142008816200900480240110301816800a0563029375400900240988130c09cdd5001a44444b3001301d0068992cc00400604313259800800c5660026060005159800980f98159baa0018992cc00400604713259800800c4c9660020030258992cc004006264b3001001813c4c96600200302881444c966002606e007159800981318191baa0068992cc00400605513259800800c0ae0571332259800800c0b6264b300100181740ba26644b300100181844c966002003031818c0c626644b3001001819c4c96600200303481a40d226644b300100181b44c96600200313259800800c0e2264b30010018acc004c11c00a26605601c44b3001002899816806912cc00400a330010078cc0040162b3001303a3046375403113259800800c0fa264b30010018992cc00400608113259800800c566002609e00513322598009820000c4c9660020030448992cc00400608b0458992cc004c15000e26607000244b3001002803c4c96600200319800800c4c008c15c00e092815a093049824c125058182a80120a682320a23758003045822a0a83051001413c609a6ea80162b300130360018992cc00400608913259800800c11608b13259800982a001c4cc0e000489660020050078992cc0040063300100189801182b801c12502b4126093049824a0b03055002414d04641446eb000608b045415060a20028278c134dd5002c566002607e00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a058824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004c104006264b300100182244c966002003045822c4cc89660020030478992cc0040062b3001305600289981d001912cc00400a2b300130473053375400713259800800c12e264b300100182641320991332259800800c13a264b3001001827c13e09f13259800982f001c03e0a082d8dd6800c13d05e182d800a0b2375a00260b400504c416c60b000282b0c150dd5001c12905144c96600200319800800c4c008c16400e096817209704b825c12d05a182b80120aa82420a68244122091048415c60a80028290dd60009829801411608a82a0c14400504f18269baa0058acc004cdc3a401000313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401400313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05a824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401800313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a401c00313259800800c112264b3001001822c116264b3001305400389981c000912cc00400a00f13259800800c66002003130023057003824a05c824c126093049416060aa004829a08c8288dd6000c11608a82a0c14400504f18269baa0058acc004cdc3a402000315980098269baa005801410d04e410d04a20944128825104a20944128825104a0cc00400626606603244b300100281544c96600200304482244c9660020030458992cc00400608d046823411a26644b300100182444c966002003159800982b801466002003130073057008824a062824a0a8824c126093049416060aa0028298dd7000982a00120aa305200141406eb0006089044414c60a000482720828110c128dd5001c10504c4106083041820a0a0304d001412c609a00503f81fc0fe07e8270c12c00504918239baa01881ea08881ea04c81ea04c8992cc00400607d03e81f44c8c00cc134010dd6800c0f904d182500120908992cc00400607903c81e44c8c00cc12c010dd6800c0f104b1824001208c81ca08881cc0e60730394120608a0028218c11400a06f03781bc0dd0461821800a082375a0026084005034410c608000281f0dd6800981f80140c5040181e800a0763758002607800502e817207a303a00140e06eb0004c0e400a05702b40e8606e00281a8c0ccdd500340a503040a50341bac00181440a1037181a000a0643034002813409a04d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d8acc004c04c01a264b3001001810c4c96600200315980098180014566002603e60566ea8006264b3001001811c4c96600200313259800800c096264b3001001813409a264b300130350038acc004c090c0c0dd500244c9660020030288992cc004006264b300100181544c966002003159800981c8014566002605060686ea800e264b300100181644c96600200313259800800c0ba264b3001001817c0be26644b3001001818c4c96600200303281944cc89660020030348992cc00400606b03581ac4cc89660020030378992cc00400607103881c44cc896600200303a8992cc00400607703b81dc4c9660026094007159800981c98229baa0108992cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c14000e2b300101382144c966002003043821c10e26644b3001001822c4c966002003046823411a264b300130550038acc00405608f13259800800c122091048899912cc00400609513259800800c12e09704b8992cc004c16800e3300102289981f013112cc00400a06b13259800800c13e09f13259800800c142264b3001001828c1460a3051899912cc0040060a713259800800c56600260c400519800800c4c01cc1880220a881e20a882fa0a905482a41510631830000a0bc375c00260be0048300c17400505b1bac001827c13d05e182d80120b2826205a82620ae375a00304b416860ae00282a8dd6800982b00b4121057182a00aa0a4823a0a4375a003046415460a40028280dd6800982880a410d0521827809a09a821209a375a0030414140609a0028258dd6800982600140f904d1825000a0903046375402103c410d03c411c6eb40060768250c11c0050451bad001304600281c208e304400141086eb4004c10c00a06a8220c10400503f1bac001304000281940c9041181f000a0783758002607a00502f817a07c303b00140e4607600502d816c0b605a81e0c0e4005037181a9baa003815a064815a06c815c0ae05702b40e8606e00281a8c0dc00a053029814c0a5038181a800a0663031375400902740b902740c86eb000604d02640d460640028180c0c800a04902481240910331818000a05c302c375400302240a502240b5022811408a0448188c0b800502c18151baa00d810204e409c405202901480a2046332232598009809980f9baa001898101919bb03024001302430250013758604660406ea80062a6603c9218b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a202020202900164074646600200200644b30010018a60103d87a80008992cc004cdd7981080099ba548010cc090cdd2a4004660486ea40112f5c097ae0899ba548000cc090dd3998121810800998121811000a5eb812f5c11330030033026002407c60480028110dd59810181098109810981098109810981098109810980e9baa00b375c6040603a6ea8004c8c8cc89660020051598009809980f9baa0028992cc00400603113259800800c06603301980cc4cc896600200301b8992cc0040062b300130290028acc004c060c090dd5000c4c96600200301d8992cc004006264b300100180fc4c96600200313259800800c086264b30010018acc004c0bc00a2b3001301e302a375400b13259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc004006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c4c96600200302f8992cc004006264b3001001818c4c96600200313259800800c0ce264b30010018992cc00400606b13259800800c566002608600519800809c6600202319800807c6600201b19800805c6600201319800803c6600200b19800801c660020031598009819181f1baa0178992cc00400606f13259800800c0e207103881c44cc896600200303a8992cc00400607703b81dc0ee26644b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc0040062b300130540028cc0040062b30013043304f375404d13259800800c122264b3001001824c12626644b3001001825c4c966002003159800982c80144cc0f400c896600200519800801c40e609c81ea264b30010018acc004c12cc15cdd5000c4c9660020030508992cc0040060a3051899912cc0040060a713259800800c1520a9054899912cc0040060ad13259800800c15e0af0578992cc004c19400e2b300100782c44c96600200305982cc1660b31332259800800c16e264b300100182e41720b905c8992cc004c1a800e2602060d402305d419c6eb800506a1833800a0ca375c00260cc0108338c19001d06241610621bad00182ba0ca306200141806eb4004c18400a0a88310c17c00505d1bac001305e002828c14505f182e000a0b43058375400304f415504f827c13e09e82e8c1680090584131056413209904c82620b4305700141546eb0004c15800a093049415c60a80028290c140dd5013411d04d411d035411d051411e08f047823a0aa305200141406eb8004c1440090521827800a09a375c002609c0048278c13000504a1bae001304b002413060920028238dd700098240012092304600141106eb8004c1140090461821800a082303f375402f03640f10364081036408103640810364081036408103640810364081036408103640810364081036410103681b40da06c8220c10400503f182080140d206903481a2084303f00140f4607e00503281940ca0648200c0f400503b181e80140c2061030818207c303b00140e4607600502e81740ba05c81e0c0e4005037181c80140b205902c8162074303700140d4606e00502a81540aa05481c0c0d4005033181a80140a2051028814206c303300140c46066005026813409a04c81a0c0c400502f181880140920490248122064302f00140b460566ea80160448142044816204502281140890301816800a056302d002810408204102040b860560028148c0ac00a03d01e80f407902c1814800a04e3025375400301c408901c409901c80e40720388150c09c0050251bae0013026002409c60480028110c080dd5001405d01d405e02f01780ba04a32598009809180f1baa0018992cc004c048c07cdd5000c4c08cc080dd5000c54cc0792413365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640746014603e6ea8c024c07cdd51811180f9baa0018a9980ea494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016407064660020026eb0c024c07cdd5006912cc0040062980103d87a80008992cc004c8cc004004c014dd5980618111baa300c3022375400444b30010018a508acc004cdc79bae302600101f8a518998010011813800a040409113374a900019811800a5eb82266006006604a00480f0c08c005021111194c004006009003400444464b300130180018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa0038acc004c038006264b300100180344c966002003007803c4c96600260580071330100012259800801401e264b30010018cc00402a00313002302f003402900b805c02e0168180c0b400902b40210291bac001803c01d02c1814800a04e30253754007159800980b800c4c9660020030068992cc00400600f0078992cc004c0b000e26602000244b3001002803c4c96600200319800805400626004605e006805201700b805c02d0301816801205680420523758003007803a0583029001409c604a6ea800e2b300130190018992cc00400600d13259800800c01e00f007899912cc00400601313259800800c02a015132598009817801c4cc04c004896600200500a8992cc0040063300100d800c4c008c0c800d00d403a01d00e8072066303000240b900b40b06eb000601500a40bc60580028150dd68009815801401d02c1814800a04e3025375400715980099b8748020006264b300100180344c966002003007803c01e264b3001302c003802c0210291bad001803a0583029001409c604a6ea800e2b30013370e9005000c4c9660020030068992cc00400600f007803c4c96600260580070058042052375a00300740b060520028138c094dd5001c56600266e1d200c0018992cc00400600d13259800800c01e00f007803c4c96600260580070058042052375c0028160c0a400502718129baa003802a04440888111022204440888110c08cdd50011800800912cc004006297ae0899810180e9810800998010011811000a03e222598009808180e1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b300130250028cc00400e264b300130150018992cc00400600f13259800800c566002605000513259800980c000c4c96600200300a8992cc0040062b3001302b0028cc00400601900b403900b40a100b805c02e0168160c0a400502718129baa0028acc004c038006264b300100180544c96600200300b805c02e26644b3001001806c4c96600200300e807403a26644b300100180844c966002003011808c046264b30013032003809c04902f1bad001808a064302f00140b46eb4004c0b800a01c8178c0b000502a1bad001302b002805a0583029001409c604a6ea800a012811102218119baa001804204a804402201100840a4604c0028120c088dd50014566002601600315980098111baa002803c019023401901f203e3020375400300540210054089005802c01600a8130c08c0050211811801400e007003801a0483021001407c603a6ea800e00280d0888c966002602200313259800800c00e264b300100180240120090048992cc004c09400e00d00540886eb80050251811000a040301e37540091598009803800c566002603c6ea8012007002407d002406c80d8c070dd5001911192cc004c040006264b3001001801c4c9660020030048024012009132598009812001c01a00a8108dd7000a0483021001407c603a6ea80122b300130060018992cc00400600713259800800c01200900480244c9660026048007006802a042375c0028120c08400501f180e9baa0048012034406860366ea800d1598009804001c4c8c9660026012602a6ea8c064c06800a294629410131bad30180013014375400916404480886026602800260260088a4d15330094911856616c696461746f722072657475726e65642066616c7365001365640201" + : "591316010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003370e9001488c8cc00400400c88cc00c004c00800a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111114c00488c96600260200031323259800980e00140122c80c8dd7180d000980b1baa0038acc004c0180062b3001301637540070028b202e8b2028405060286ea800a4464b30013010001899192cc004c07000a0091640646eb8c068004c058dd5001c566002600c0031323259800980e00140122c80c8dd7180d000980b1baa0038b2028405060286ea800a44b3001300f30143754005132323259800980e00144c8c9660026028003159800980d1baa00280345901b456600260140031323259800981000140222c80e8dd6980f000980d1baa0028acc004c04c0062b3001301a37540050068b20368b2030406080c0c060dd5000980d801c59019192cc004c0600062b3001337129002180b800c5a26010602e00280b22c80c8dd5180d000980d000980a9baa0028b202691192cc004c04000626464b3001301c0028024590191bad301a001301637540071598009803000c566002602c6ea800e00516405d16405080a0c050dd500124444646645300133223259800980b980e1baa0018980e9919bb030210013021302200137586040603a6ea80062c80d8c8cc00400400c896600200314c0103d87a80008992cc004cdd7980f00099ba548010cc084cdd2a4004660426ea40112f5c097ae0899ba548000cc084dd399810980f00099810980f800a5eb812f5c113300300330230024074604200280f8dd5980e980f180f180f180f180f180f180f180f180f180d1baa00f375c603a60346ea800a44b30013016301b375400513232323322598009812801c4cc020c0900144cc03c00801a2c8110c088004dd6981100118110009810800980e1baa0028b2034912cc004c058c06cdd500144c8c8c8c8ca60026eb4c0900066eb4c0900126eb4c09000e604800491112cc004c0a401626601860500122660260020151640983024001302300130220013021001301c37540051640692259800980b180d9baa00289919191919194c004dd61812800cdd69812802cdd698128024dd69812801cc0940092222259800981580344cc038c0a802c4cc0540044c8cc8966002605c00700f8b2056375c60560026eb8c0ac018c0ac0162c8140604a002604800260460026044002604200260386ea800a2c80d244b30013016301b37540051323232323298009bac30240019bad30240049bad3024003981200124444b30013029005899806181400489980980089919912cc004c0b000e01b1640a46eb8c0a4004dd7181480298148024590260c090004c08c004c088004c084004c070dd500145901a2444453001159800980c980f1baa0058acc004cdc3a4020603c6ea8c088c07cdd51808180f9baa3022301f375400b1329800998009bac30233020375402a4b3001301130203754604860426ea8c090c084dd5180918109baa0018a518a50407d301130203754602260406ea802246048604a604a604a0029112cc004c09c00e264b30013375e604e60486ea8c09cc090dd5180a98121baa0013374a900119813180118121baa0034bd70456600266ebcc09cc0a0c0a0c0a0c0a0c090dd500ca60101a0008acc004c05260026eacc054c090dd5180a98121baa0019bae3002302437540071480012223322330010010023232330010010052259800800c00e2646644b30013372201000515980099b8f0080028800c01902b44cc014014c0c401102b1bae302a00137566056002605a002815852f5bded8c044b3001001801c4c8cc896600266e452210d7374616b696e675f7661756c74000028acc004cdc7a4410d7374616b696e675f7661756c74000028800c01902a44cc014014c0c001102a1bae3029001375a60540026058002815113259800980f18121baa0018992cc004c080c094dd5000c4c8c9660026058005132598009816800c4c96600266ebcc0b4c0a8dd5000981698151baa301b302a375400f15980099baf301b302a3754002603660546ea8c06cc0a8dd5003c56600266ebcc020c0a8dd5000a6103d87a80008992cc004c090c0a8dd5000c4c966002604c60566ea80062646464653001375a6066003375a6066009375a6066007375a606600491112cc004c0e00162b30013370e6eb4c0dcc0d0dd50049bad30373034375401f15980098171bad30253034375401315980098171bad3026303437540131302e375a602460686ea80262941032452820648a5040c91640d4303300130320013031001302c37540031640a8605c60566ea80062c8148c070c0a8dd5000c590284590284590281816000c5902a1991198058011192cc004c070c0acdd5000c4cdc78019bae302f302c375400314a08150c0b8c0acdd5181718159baa0013758603460506ea8074dd7180318141baa0078b2052375a6054002604c6ea80062c8120c0a0c094dd5000c59023180b18121baa301530243754003164089164089164088604c0071640902232330010010032259800800c52f5c11332259800980280144cc09c008cc0100100062660080080028118c098004c09c0050244528203a8b203a980f1baa005912cc004c06cc080dd500144c8c8c8c966002605200513259800981018129baa0018991919912cc004c0b800e26602e605a0100151640ac6eb8c0ac004dd71815801181580098131baa0018b204830280048b204c375c604e002604e002604c00260426ea800a2c80fa4464b3001301c0018992cc004c09c006266022604c00200716409060446ea800e2b300130120018992cc004c09c006264b3001301e30233754003132323259800981580144cc048c0a800c4cc04800401e2c8140c0a4004c0a4004c090dd5000c590221813000c5902418111baa0038b2040408060406ea8009222259800980e801c4c966002605000313259800980f98121baa001899191919912cc004c0b800e264b30013025302a375400313232323232329800981a000cdd6181a002cdd6981a0024dd6981a001cc0d00092222259800981d00344cc094dd6181c805912cc00400a26604e00c44b30010028998120028998120048acc004c0d0c0e4dd5008c4c8c8c9660026082005132332259800981d00144c966002608a0031330303758608800244b300100280244cc094c1180084c004c11c00904445904218201baa0038acc004c0c000a264b300130450018998181bac30440012259800801401226604a608c00426002608e00482222c8210c100dd5001c5660026072005132598009822800c4cc0c0dd61822000912cc00400a0091330263046002130013047002411116410860806ea800e2b3001303b00289919192cc004c11c00a2660646eb0c11800c8966002005159800981f98221baa0038991919912cc004c13400e0151641286eb4c128004dd69825001182500098229baa0038b20868998141824001098009824801208c8b2088304500130450013040375400715980099b874802000a264b300130450018998181bac30440012259800801401226604e608c00426002608e00482222c8210c100dd5001c56600266e1d200a0028992cc004c1140062660606eb0c1100048966002005004899813982300109800982380120888b20843040375400715980099b874803000a264b300130450018998181bac304400122598008014012266050608c00426002608e00482222c8210c100dd5001c56600266e1d200e0028992cc004c1140062660606eb0c1100048966002005004899814182300109800982380120888b20843040375400715980099b874804000a2b3001304037540070018b20828b207c40f881f103e207c40f881f103e207c303d375400226603800426605a02c44b3001002810c4c8cc8966002608e00313302230460011300430470058b2088375c6088002608a0026eb0c10c0090411820001c5903e181f800981f800981d1baa0118b20708991801181f8019bad303d00240ed1323002303d003375a607600481ca2c81b86068002606600260640026062002606000260566ea80062c8148c0b40162c8158dd6181580098158011815800981500098129baa0018b204630270018b204a302337540131598009809801c4c966002605000313259800980f98121baa00189919192cc004c0b000a264b300130233028375400313232598009817800c4c966002604c60566ea800626464646464653001375a606a0033758606a00b3758606a009375a606a007375a606a004911112cc004c0ec01a264b3001303230373754003132323322598009820001c4c8cc896600260860071323322598009823001c4cc080c1140604cc0c406c896600200502589919912cc004c12c00626604c609400226008609600b1641206eb8c120004c124004dd61823801208a8b2086375a60860026eb4c10c030c10c02e2c8200dd698200009bad304000a30400098b207a375a607a0026eb4c0f4008c0f4004c0e0dd5000c59036181d005c590380c0d4004c0d0004c0cc004c0c8004c0c4004c0b0dd5000c5902a181700145902c181700098149baa0018b204e302b0038b2052375860540026054002604a6ea80062c8118c09c0062c8128c08cdd5004c5902120420cc88c8cc8966002602e60386ea800a2646644b300130240018992cc004c06cc080dd5000c4c8c8c8cc8966002605400713259800981098131baa0018991919191919191919194c004c0d000660680133034008981a003cc0d001a606800b3034004981a001cc0d000922222222259800981f00544cc078c0f404c4cc0780204cc07801c4cc0780184cc0780144cc0780104cc07800c4cc0780084cc0780044cc078024566002606860726ea8056264646464653001375c608400330430019bae30420059bae30420049bae30420039bae3042002488888966002609200b1330323048005159800981f98221baa02189919192cc004c13000a26606e6eb0c12c00c8966002005133033003102f8992cc004c114c128dd5000c4c8c8c8cc896600260a800713232332259800982c001c4c02cc1600322c82a8dd7182a8009bae30550023055001375860a600b1641446eb4c144004dd698288011828800982800098259baa0018b2092304d002412d16412460940026094002608a6ea80862c821a2c8230608400260820026080002607e00260746ea80562c81c22c81d860680026066002606400260620026060002605e002605c002605a0026058002604e6ea80062c8128c0a40162c8138c09c004c09c008c09c004c098004c084dd5000c5901f1811800c590211bae30210013022001301d375400516406c64b30013016301b375400313259800980b180e1baa00189810180e9baa0018b2036300e301c3754601a60386ea8c07cc070dd5000c5901a19198008009bac300d301c375402244b30010018a60103d87a80008992cc004c8cc004004c014dd59808180f9baa3010301f375400444b30010018a508acc004cdc79bae302300101d8a518998010011812000a03c408513374a900019810000a5eb82266006006604400480e0c08000501e18010011801001112cc004006297ae089980e180c980e80099801001180f000a0362223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300c0018992cc004c0840062660186eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc030dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998071bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b30013370e9004000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9005000c4c8c96600260440050048b203e375a604000260386ea800e2b30013370e9006000c4c8c96600260440050048b203e375c604000260386ea800e2c80d101a2034406880d101a2034301a375400444b3001301430193754005132323259800981080144cc018c08000c4c9660026030003159800980f1baa002802c5901f4566002601c00313232598009812001401e2c8108dd71811000980f1baa0028acc004c05c00626464b30013024002803c590211811000980f1baa0028b2038407080e0c070dd5000c5901e180f800980f800980d1baa0028b203022598009809980c1baa00289919192cc004c08000a266010603e006264b300130170018992cc004c08800626464b3001301a0018992cc004c09400626601a604800201316408860406ea800a2b3001301000189919194c004dd69813000cdd69813001cdd698130012444b3001302a0048074590270c098004c094004c080dd500145901e203c301e3754002604200316407c603a6ea800a2b3001300d0018acc004c074dd500140162c80f22c80d901b180d9baa0018b203a301e001301e0013019375400516405c456600260100071323259800980498071baa301230130028a518a5040346eb4c044004c034dd500245900b2016180618068009806002229344d9590021", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolMintProtocolMintWithdraw { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541" + : "592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolMintProtocolMintPublish { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541" + : "592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolMintProtocolMintElse { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594c34010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a660069201d46578706563740a202020206173736574732e726564756365280a20202020202076616c75655f64656c74612c0a202020202020547275652c0a202020202020666e28706f6c6963792c206e616d652c205f7174792c2061636329207b0a202020202020202061636320262620280a20202020202020202020706f6c696379203d3d206164615f706f6c6963795f6964207c7c206c6973742e68617328616c6c6f7765645f6173736574732c2028706f6c6963792c206e616d6529290a2020202020202020290a2020202020207d2c0a202020202900168a99801a495365787065637420536f6d6528726129203d0a202020202020202066696e645f726573657276655f617373657428726573657276655f6173736574732c20726571756573742e726573657276655f61737365742900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206d696e745f616d6f756e7400168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a492e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e64696365732900168a99801a4932657870656374206f75747075745f646174756d3a205472656173757279446174756d5631203d206f75747075745f6461746100168a99801a493065787065637420696e7075745f646174756d3a205472656173757279446174756d5631203d20696e7075745f6461746100168a99801a491d657870656374206e616d65203d3d20636f6e7374616e74732e7573647200168a99801a4928657870656374205b50616972286e616d652c20616d6f756e74295d203d206d696e745f706169727300168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491a6578706563742076616c69646174696f6e28726571756573742900168a99801a4942657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e7374616b696e675f7661756c742900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f646174610016488888888888888888896600330013018375403d370e90034dc3a4001370e90022444464653001301d3754003302100698108012444b300130060038cc004c090c084dd500248c094c098c0980064604a604c003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520024888888888a600244646600200200644b30010018a60103d87a80008992cc004c010006260186606400297ae0899801801981a001205a303200140c1222329800800c0120068008888c966002603000313259800800c01a264b3001001803c01e00f0078992cc004c0e400e00b00840d86eb8005039181b000a068303237540071598009806000c4c9660020030068992cc00400600f0078992cc004c0e400e26602000244b3001002803c4c966002003198008054006260046078006805201700b805c02d03d181d0012070804206c3758003007803a072303600140d060646ea800e2b300130170018992cc00400600d13259800800c01e00f13259800981c801c4cc04000489660020050078992cc0040063300100a800c4c008c0f000d00a402e01700b805a07a303a00240e100840d86eb000600f00740e4606c00281a0c0c8dd5001c566002603200313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b3001303c003899809800912cc00400a01513259800800c6600201b00189801181f801a01a807403a01d00e4100607a00481da01681c8dd6000c02a01481e0c0e40050371bad0013038002803a072303600140d060646ea800e2b3001300b0018992cc00400600d13259800800c01e00f0078992cc004c0e400e00b00840d86eb400600e81c8c0d800503418191baa0038acc004c028006264b300100180344c966002003007803c01e264b30013039003802c0210361bad001803a072303600140d060646ea800e2b300130090018992cc00400600d13259800800c01e00f007803c4c9660026072007005804206c375c00281c8c0d800503418191baa003802a05e40bc817902f205e40bc8178c0c0dd50014888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c566002605e6ea801200700240c100240b08160c0b4dd5001c888c966002602a00313259800800c00e264b300100180240120090048992cc004c0d800e00d00540cc6eb80050361819800a062302f37540091598009804800c4c9660020030038992cc0040060090048024012264b3001303600380340150331bae00140d860660028188c0bcdd5002400902c2058302d375400691111919192cc0040063300122259800980d981a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b300130200018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c07c006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005402900540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e00281926e1d200e9112cc004c06cc0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800981d000c56600266e252004303900180344c966002607e009132598009811000c56600260786ea801a01300840f5159800980b000c4c9660020030098992cc00400601500a80544c966002608600700c805a080375a00300a410c608000281f0c0f0dd500345660026042003159800981e1baa006804c02103d4021039207240e460746ea801600e81e0c050c0e4005037401903b1baa001802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c922259800980d981a1baa0038992cc00400600513259800800c00e007003801c4cc89660020030058992cc00400600d00680344c966002607e007008803a078375a00300640fc607800281d0dd7000981d8012078303900140dc606a6ea800e002819244464b3001301c0018992cc00400600713259800800c0120090048992cc004c0f400e00d00540e86eb400600881e8c0e8005038181b1baa0048acc004c0400062b300130363754009003801206e801206640cc60686ea800e444b3001301b3034375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130400038acc004c088c0ecdd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b132598009823001c6600201500f807202a8072086375c0028230c10c0050411bae0013042002410c608000281f0c0f0dd50034021039402103d1bae0014100607a00281d8c0f400a00b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c0050324c0c4dd5000a44444453001222598009811181d9baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc0040062b300130470028cc00401a33001001804c02100e40210114021044402201100880420903045001410c6eb4004c11000a00a8228c1080050401821001400e007003801a086304000140f860786ea800e00281ca444b30013022303b375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d806c4c966002609a0071980080646600200900f8072028807202e8072094375a00300d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c005039488966002604460766ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b3001001805c02e0171332259800800c036264b30010018992cc00400601f13259800800c042021132598009828001c6600201f1980080245660020030118992cc004006025012809404a26644b300100180a44c96600200301580ac05602b13259800982a801c05e02c8290dd7000a0aa305200141406eb8004c1440090521827800a09a808a02e808a034808a09a375800301080820a0304d001412c609a00500e807403a01c8270c12c0050491bad001304a002805a096304800141186eb4004c11c00a0108240c1140050431bad0013044002802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729112cc004c088c0ecdd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c036264b3001304d0038cc004032330010048acc00400601d13259800800c03e01f00f807c4cc89660020030118992cc004006025012809404a264b3001305200380a404d04f1bae0014148609e0028268dd70009827001209e304c001412900e405100e405d00e41286eb000601b00d413460940028240c12800a01700b805c02d04b1824000a08c375a002608e0050084120608a0028218dd6800982200140150451821000a0803042002801c00e007003410c608000281f0c0f0dd5001c0050394888c966002604600313259800800c00e264b30010018acc004c10c00a33001001802c01100a401104040120090048022088304100140fc607a6ea80122b300130170018992cc00400600713259800800c56600260860051598009812981f1baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130470028cc00400e33001001804c02100f402100f4021044402201100880420903045001410c608a005006803401a00c8230c10c005041181f9baa0018022078802208080240120090044110608200281f8c0f4dd5002400903a2074303b3754007159800980f981c1baa0088cc004c0f0c0e4dd500448896600200514c103d87a80008acc004c088006260306607c607e00497ae08cc00400e6080005337000029000a00640e481ea45300132330010010032259800800c528456600266ebcc100c0f4dd51820181e9baa301a303d3754608000260266607e6ea400d2f5c114a3133002002304100140e881f2942945038488c8cc00400400c896600200314bd7044cc896600266ebcc108c0fcdd51821181f9baa301c303f3754004602a660826ea40152f5c113304100233004004001899802002000a0783040001304100140f92301430393754607a646600200200444b30010018a5eb84103d87a80008101800044c8cc896600330013019303e375460840074a14a281e226608330014a14c103d87a8000a60103d879800040f0660826e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c11000400e2946266004004608a00281f104244cc106600294298103d87a8000a60103d879800040f0660826e9c0092f5c11330419800a51a60103d87a8000a60103d879800040f0660826e9ccc104dd400080125eb8103c20783758608060820026eb4c100008cc008008c10000503d48888ca6002003005802400d00111112cc00400e2b30010028800c54cc0fd24112657870656374205b5d203d206c6973745f6200164109159800801454cc0fd2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc004012608a0073045002cc004c11000e6eb4c11000a002802900420844109222329800800c012006800888966002005159800800c528c52820808acc00400629422b300133004304200230420018cc00400e60860053043001400d14a081e1040208091111919800800802912cc00400626608266ec0dd48029ba80044bd6f7b63044ca60026eb8c0fc0066eb4c10000660880049112cc004cdc8004801c4cc114cdd81ba9009375001000b15980099b8f0090038cc00402601100291982319bb037520146ea000400a2002803a26608a66ec0dd48019ba80023300600600141008200608400282024444646600200200a44b300100189982099bb0375200a6e980112f5bded8c113298009bae303f0019bab304000198220012444b300133720012007133045337606ea4024dd3004002c56600266e3c02400e33001009804400a46608c66ec0dd48051ba60010028800a00e89982299bb037520066e98008cc01801800504020801821000a08091191919800800802112cc00400600713233225980099b910070028acc004cdc78038014400600c81f226600a00a608a00881f0dd7181f0009bab303f001304100140fc297adef6c6092cc0040062946294103b4488888c966002604a00300289801800a07833700008007222598009811181d9baa0038992cc00400600513259800800c00e0070038992cc004c10c00e00b00441006eb40060068218c10000503e181e1baa003800a0729181e981f181f181f000cdc0a40012259800800c52000899b8048008cc008008c0fc00503c488966002604460766ea800e264b300100180144c96600200313259800800c012264b30010018992cc00400600d13259800800c4c9660020030088992cc004c12000a330010078cc004016264b3001302b0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301f0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025132598009829001c5660020030138992cc00400602901480a405226644b300100180b44c96600200301780bc05e02f13259800982b801c06603082a0dd7000a0ae305400141486eb8004c14c0090541828800a09e809a09e375800301280920a4304f00141346eb4004c13800a01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001302a0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a025012899912cc00400602913259800800c05602b13259800982a801c5660020030168992cc00400602f01780bc05e26644b300100180cc4c96600200301a80d406a03513259800982d001c07203682b8dd7000a0b4305700141546eb8004c158009057182a000a0a480b20a4375800301580aa0aa305200141406eb4004c14400a0248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c0b0006264b3001001805c4c96600200300c806403226644b300100180744c96600200300f807c4c966002609e007159800800c042264b3001001808c046023011899912cc00400602713259800800c05202901480a44c96600260a800701680aa0a2375c00282a0c14400504f1bae00130500024144609c00282620208260dd6000c03e01e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301e0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f8992cc004c13c00e02301041306eb400601e8278c13000504a1bad001304b00280620983049001411c608a6ea80122b3001301d0018992cc00400601713259800800c03201900c899912cc00400601d13259800800c03e01f00f899912cc00400602313259800800c04a0250128992cc004c14800e029013413c6eb40060248290c13c00504d1bad001304e002807a09e304c00141286eb4004c12c00a0188260c12400504718229baa0048acc004c070006264b3001001805c4c96600200300c8064032264b3001304c00380740350491bad00180620983049001411c608a6ea80122b300130120018992cc00400601713259800800c03201900c8992cc004c13000e01d00d41246eb40060188260c12400504718229baa00480520844108821104220844108821104218219baa003804a024804a030804a08a30460014110608c005007803c01e00e8238c1100050421822001401600b005802a08a304200141006084005003801c00e0068218c10000503e181e1baa003800a0729119808001119baf303f303c37540026e9c00a4466e0ccdc10011bad3019303b37540026eb4c060c0ecdd5000c8966002003149a264b30010018a4d1325980099b90375c607860800066eb8c0f00062660080086607e0026082005153303b4901326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640e8607e00281e8c0fc00503c4888c8cc004004010896600200310048991991199119801001000912cc00400620071329800802cdd71821800cdd69822000ccc00c00cc1200090091823000a088375660820066eb8c0f8004cc00c00cc10c008c10400503f488c8cc00400400c896600200314bd7044cc0fcdd398019820000998010011820800a07c911919800800801912cc00400629422b30013375e60800026e9c00e2946266004004608200281d103e4888ca6002003004801a00222259800801440063300100398218014cc010c10800800500320809181e981f181f181f181f000cdc424001371e9101045553447200488888888888888888888888888a600260ae60a86ea806e60ae60a86ea8c0c4c150dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a606e60b46ea800e08c82b901941310544888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064169133005005306100441686eb8c168004dd6982d800982e800a0b63301600400314800244653001001801c0090011112cc00400a200313298008024c17800f30010029bae30590019bab305a00191111192cc004c0740060051300300141746465300100180340150011112cc00400a200313298008024c1a000f30010029bae30630019bad3064001802a048401060cc0048321406d0192008305c0024169232330010010022259800800c52f5bded8c11323305a3376060ae0026e98c8cc004004dd5982c801112cc004006297adef6c608991982e99bb0305a001375060286eb4c16c004cc00c00cc17c008c17400505b19801801982e001182d000a0b09806006488c966002607860ac6ea8006264b30010018cc0040062b30013375e602460b06ea800cc16cc160dd5002456600266ebcc0d4c160dd5000982d982c1baa0038800c54cc15924013865787065637420646174756d2e64657374696e6174696f6e203d3d206d61746368696e675f726571756573742e64657374696e6174696f6e00164155153305649138657870656374206d61746368696e675f726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500164155046403d046823411a08c82e8c168c15cdd5000c111054181a182b1baa303330563754005300800848888888888ca600244646600200200444b30010018a5eb822660ca64b3001304a30633754003130673064375400315330624913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641846600a0086eb4c198004cc008008c19c00506448888c966002609460c66ea8006264b30013375e60d060ca6ea8c1a0c194dd5182118329baa001303b33067375200a97ae08acc004c0fe60026eacc108c194dd5182118329baa001802d22108747265617375727900403513259800982598329baa0018992cc004006330010018992cc004c138c19cdd5000c4c96600266ebcc1b0c1a4dd5183618349baa001303f3306b375201297ae08acc004c10e60026eacc118c1a4dd5000c026910108747265617375727900404513259800982798349baa0018992cc004006330010018acc004cdd7981298359baa0034c103d87a800089983680299836800998369ba6330123756609060d66ea800cc044dd5982418359baa3048306b375400e97ae08a99834a48126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e65001641a105f409905f82fc17e0be8380c1b4c1a8dd5000c54cc1a124012e65787065637420496e6c696e65446174756d286f75747075745f6461746129203d206f75747075742e646174756d0016419c608e60d26ea80062a660ce920149657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d203100164199153306749143657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016419860d660d06ea80062a660cc92013e65787065637420536f6d65286f757470757429203d206c6973742e61742874782e6f7574707574732c2074726561737572795f6f75747075745f6964782900164194660126eb0c114c19cdd5004002c169022416a0b505a82d20d8306930663754003153306449013365787065637420496e6c696e65446174756d28696e7075745f6461746129203d20696e7075742e6f75747075742e646174756d0016418c608660ca6ea8c108c194dd5000c54cc18d2401536578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2074726561737572795f7363726970742c202274726561737572792229203d3d20310016418915330634914965787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d205363726970742874726561737572795f736372697074290016418860ce60c86ea80062a660c492013b65787065637420536f6d6528696e70757429203d206c6973742e61742874782e696e707574732c2074726561737572795f696e7075745f69647829001641846600a6eb0c198c18cdd50020014888888896600266ebcc1a8c19cdd5003983518339baa0068acc004cdd7982298339baa00730443067375400d13259800cc0040069464444b3001001899b894800000a294106920368992cc004cdc4802000c56600266e2400400e20031533067491216578706563742064656c697665726564203c3d206d61785f64656c697665726564001641991533067491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016419930010019bae306b0049bae306b306c00440411533066490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641946601c6eacc110c19cdd50039806cc004dd71835002cdd718351835802cc080011222598009828000c402e3300100b801cc8c8008c038004cc1b0cdd81ba9002375000297adef6c6091111192cc004c0b40060051300300141b4653001004804401e444453001005801c0120050014018818140ad02920ce454cc19524128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016419115330654912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e6164647265737300164191305e375401491112cc004c1240063300122323370666e00cdc019b82003375a608860cc6ea80080052001001375a608460ca6ea8006660086eb0c198c18cdd50071bac30403063375401f375860cc60c66ea803e6eb4c104c18cdd5007cdd6980e98319baa00f982018319baa0334888889660026605c6eb0c1b0c1a4dd50251bae302330693754608c60d26ea800626644b300132980080140224464b30013055306e37540031323232980099814003800cdd6181098391baa0059bad30750039bad3075002488896600260b860ea6ea80122b300133712660266eb4c14cc1d8dd5004983c983b1baa00498009bab30533076375460a660ec6ea802a6eb8c1e400e6eb8c1e4c1e800d01e456600266e1c008dd69829983b1baa0098acc004cdc38009bad30543076375401313375e6e9c014c094c1d8dd5004c52820e68a5041cd14a0839a2a660e892014365787065637420536f6d6528726129203d2066696e645f726573657276655f617373657428726573657276655f6173736574732c20726573657276655f617373657429001641cc375860e860ea00260e800260de6ea8006294106c182618371baa3301200200140b46eb0c1b8c1acdd5182498359baa003899192cc004cdc3800cc004dd6182598369baa04e99837982518369baa304a306d375400a660de981054455534472004bd704dd6183818369baa304b306d375400a911194c00400600f00d8062002222259800801c52000899912cc0040120dd1332259800802c1c626644b300130603079375400313322598009831183d9baa001899b8098009bab3059307c375460b260f86ea8022005307f307c375400d3758605660f86ea801a660326eb4c164c1f0dd5003183f983e1baa0018074dd6982d183e1baa0069bad3059307c375400c80da6002019007802c01100c41d9079183e983d1baa0013303000b3758605260f46ea80120e083b8c1f0014cc06802cdd6983d802a0f23079004307a00441dc60ee00660f000683a91323298009839000cdd598391839800ccc084dd6183918379baa304d306f375400e46eb0c1ccc1c0dd5000cc1c8009222259800cc00400e9464444b30010018acc004cdc78022441008a518998140031983c9ba900433079375200697ae041d114a083a1026456600266e1ccdc09bad3076307337540086eb4c1d8c1ccdd5000803c4c96600266e2402000626044003153307249012a657870656374206d696e745f616d6f756e74203c3d20746f74616c5f76616c6964617465645f75736472001641c53001375860ec60e66ea8c144c1ccdd5005d20009119912cc006600260ba0034a14a283a22b3001337126605800200930010079bae307a0029bae307a307b002407d133700006003153307549012d6578706563742061637475616c5f64656c7461203e3d2065787065637465645f726573657276655f64656c7461001641d1100341d06eb0c1e0c1d4dd5001194c00404a90004896600266ebcc09cc1e0dd50011ba7003899b80001375a60aa60f06ea800a200283a90261bac307830753754004811a0d483820dc838060e4003300104e9bae3070306d3754609460da6ea801600f0064035153306b490125657870656374206d696e745f616d6f756e74203d3d20746f74616c5f64656c697665726564001641a8b3001305230110018a4001159800800c176264b300130710028992cc004c06cdd71836801440060c08358dd69836800c17906e1837800a0da41a4660526eacc068c1acdd50261bae3048306b3754609060d66ea800e2a660d29201756578706563740a2020202076616c69646174655f6d696e745f696e70757473280a2020202020206f726465725f696e707574732c0a2020202020206d696e745f72657175657374732c0a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a2020202029001641a13001005802496600260306eb4c11cc1a8dd5000c4c060dd6982418351baa0018a50419c8090cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd5000c151066226644b3001303f0038cc004cc018dd6183418329baa0103758608460ca6ea80466eb0c1a0c194dd5008cdd6982198329baa0119bad301f3065375402330423065375406a911112cc004cc0bcdd6183698351baa04b375c604860d46ea8c11cc1a8dd5000c660033001005802496600266e20dd6982418359baa00148002260326eb4c124c1acdd5000c52820d0404d3302e375860da60d46ea812cdd7182418351baa3047306a37540033306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd702444b3001980080140224464b3001304a306f375400313233225980099b8900198009bab30503073375460a060e66ea801a6eb8c1d801e6eb8c1d8c1dc01d01b456600266e1c004c0b0dd6982818399baa0058acc004cdc39bad3076002375a60a260e66ea8016266ebcc1d8c1dc008c088c1ccdd5002c52820e08a5041c114a08380c1d4004dd6983a00098381baa0018a5041b4609a60de6ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600200906d899912cc0040160e11332259800982f983c1baa001899912cc004c184c1e8dd5000c4cc88cc88cc008008004896600200313308101374e66102026e9c010cc20404dd4001a5eb812f5c113298009bac3083010019bad3083013084010019842008012444b30013375e6e9c00cdd380444cc21404dd399842809ba70033308501375066e0000801d2f5c000313308501374e6610a026e9c00ccc21404dd400125eb80cc018018005080010dd6184100800a100029800807402600f00640386eb0c0a8c1ecdd50034c004dd5982c183d9baa3058307b3754011002983f183d9baa006807cc05cdd6982c183d9baa0069bac302a307b375400d375a60b260f66ea801a66060602e6eb4c160c1ecdd5003183f183d9baa001406907541e060f860f26ea8004cc0bc02cdd61814183c9baa004837a0ec307b0053301900a375a60f400a83c0c1e0010c1e4011076183b001983b801a0e83758609660da6ea8138dd6183818369baa304b306d37540093302b3756603860da6ea8138dd7182518369baa304a306d375400998008274dd7183818369baa304a306d3754009006802a01a9980f9bac3070306d3754609660da6ea80108dd6183898371baa00148888ca600260ea003375660ea60ec0033075003acc004c160c05c0122900045660020090638992cc004c1dc016264b30013021375c60e6005100183320e2375a60e600306441d060ea008839906f24444b30019800801d28c88896600200315980099b8f004489008a518998158051983e1ba90043307c375200697ae041dd14a083b9029456600266e1ccdc09bad3079307637540086eb4c1e4c1d8dd5001000c56600266e1c0066002023480024466e00004dd6982a983c1baa0024099159800998099bac30793076375460a860ec6ea80348c8cdc3cc0040166eb8c1ec0066eb8c1ecc1f00050201818991919800800806912cc0040062900044c96600266ebcc1fc004dd380244dd6983f984000800c4cc00c00cc200040090791bac307e00141f06eb0c1ecc1e0dd50011bac307a3077375400314a31533074491ff6578706563740a202020206c6973742e616c6c280a20202020202073657474696e67732e636f6e6669672e726573657276655f6173736574732c0a202020202020666e28726129207b0a20202020202020206c65742028706f6c6963792c206e616d6529203d2072612e61737365740a20202020202020206c65742061637475616c5f64656c7461203d206173736574732e7175616e746974795f6f662876616c75655f64656c74612c20706f6c6963792c206e616d65290a20202020202020206c657420757365725f7265636569707473203d206c6f6f6b75705f61737365745f73756d287065725f726573657276655f61637475616c732c2072612e613b73736574290a202020202020202061637475616c5f64656c7461203d3d202d757365725f72656365697074730a2020202020207d2c0a2020202029001641cd153307449123657870656374206d696e745f616d6f756e74203d3d2073756d6d65645f616d6f756e74001641cd06d41cd07141cc3075002454cc1ad241466578706563742076616c69646174655f72656465656d5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f617373657429001641a882aa0ce4566002607800719800998031bac3068306537540206eb0c108c194dd5008cdd6183418329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d52222259800998179bac306d306a37540966eb8c090c1a8dd5182398351baa0018acc00660026605c6eb0c1b4c1a8dd50259bae3048306a3754608e60d46ea800600b223259800982918361baa0018992cc004006330010018acc004cdd7982618371baa0033071306e375400915980099baf304b306e375400260e260dc6ea800e264b30013046306e375400313370e6eb4c1c8c1bcdd50009bad304c306f375400914a08360c130c1b8dd5000c17906b417506b417102541720b905c82e20e63070306d375400305a41a8609460d86ea8c124c1b0dd500120568acc004cc88ca6002003008803a00222259800801456600200314a314a083822b30010018a508acc004cc896600260ae60e06ea8006264b30013375e60ea60e46ea8004c1d4c1c8dd5183a98391baa0038acc004cdd7982818391baa001304f3072375460ea60e46ea800e266e1e60026eacc13cc1c8dd5000cdd7183a803cdd71827803a034300e375a609e60e46ea800e294106f452820de30743071375400306741b860e40046602200a6eb4c1c80063300100398398014c1cc005003452820d841c08380dd6182418351baa04b3306c3047306a3754608e60d46ea8004cc1b1301054455534472004bd7044c8ca60026eacc1bcc1c0006660546eacc06cc1b0dd50269bae3049306c3754609260d86ea800eb3001302f0068cc00401e00d48002444b3001301d375a609860de6ea800e266e00004dd6982618379baa00382da0d840b906141a49112cc004cdc3acc004c154c05000a2900045660020050608992cc004c1d000e264b3001301e375c60e00051001831a0dc375a60e000306141c460e4004838106c000c56600266e1ccdc09bad3072306f375460e40086eb4c1c8c1bcdd51839002800c4cc030dd6183918379baa304d306f375400c46460af30010059bae30740019bae3074307500140646eb0c1ccc1c0dd5000c19906c454cc1b524012165787065637420757364725f6d696e746564203d3d206d696e745f616d6f756e74001641b0306f0019800825cdd7183698351baa3047306a375400300380120148a998342481806578706563740a2020202076616c69646174655f6469726563745f726571756573745f6f757470757473280a20202020202074782e6f7574707574732c0a2020202020206d696e745f72657175657374732c0a2020202020206f75747075745f696e64696365732c0a202020202020757364725f61737365742c0a20202020290016419d15330684913f6578706563742076616c69646174655f6469726563745f6d696e745f696e70757473286f726465725f696e707574732c206d696e745f7265717565737473290016419d055419c8acc004c0c800e3300133006375860d060ca6ea8040dd6182118329baa0119bad304330653754023375a603e60ca6ea8046608460ca6ea80d5222259800998171bac306c306937540946eb8c08cc1a4dd5182318349baa0018acc004cc8a600200500691192cc004c14cc1b4dd5000c4c96600200319800800c56600266ebcc134c1bcdd5001983918379baa0048acc004cdd7982618379baa0013072306f375400713259800981e98379baa0018992cc004cdc4800cc004dd5982718389baa304e3071375400d375c60e800f375c60e860ea00e80ca266e1c004c0a8dd6982718389baa0058a5041b86eb4c1ccc1c0dd5000c52820da304d306f375400305f41b105e41b105d409905d82ec1760ba83a0c1c4c1b8dd5000c16d06b182598369baa304a306d37540048160cc0b4dd6183618349baa04a375c608e60d26ea8c118c1a4dd500099835982318349baa304630693754002660d6981054455534472004bd7044c8ca60026eacc1b8c1bc006660526eacc068c1acdd50261bae3048306b3754609060d66ea800f3001006a4001225980099b88375a609460da6ea80092000899b80001375a609460da6ea800a0b2835101b2444b30013370eb3001305430130028a4001159800801417e264b300130730038992cc004c074dd71837801440060c48368dd69837800c181070183880120de41ac00315980099b87337026eb4c1c4c1b8dd518388021bad3071306e375460e200a00313300b375860e260dc6ea8c130c1b8dd5003119182b4c0040166eb8c1cc0066eb8c1ccc1d00050181bac3072306f3754003153306c4915a6578706563740a202020206f75747075745f646174756d2e63697263756c6174696e675f737570706c79202d20696e7075745f646174756d2e63697263756c6174696e675f737570706c79203d3d206275726e5f616d6f756e74001641ad153306c4912165787065637420757364725f6d696e746564203d3d206275726e5f616d6f756e74001641ac306e00198008254dd7183618349baa30463069375400300380120128a99833a4814b6578706563742076616c69646174655f6469726563745f6275726e5f696e70757473286f726465725f696e707574732c206275726e5f72657175657374732c20757364725f6173736574290016419905441988a5041888311062111919800800801912cc00400629462b30013003306a0018998010011835800c52820c841a04b300133710002900044c074006200283090600896600266e2000520008a60103d87a8000899805001000a0ba22a6606e92013665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d89111112cc004c09401e264b3001001814c4c96600200315980098228014566002604e60806ea8006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c0c2061132598009826001c566002605c608e6ea801a264b300100181944c966002003033819c4cc89660020030358992cc00400606d036899912cc00400607113259800800c0e6073039899912cc00400607713259800800c0f207903c899912cc00400607d13259800800c4c9660020030408992cc0040062b3001305c002899819807112cc00400a26606a01a44b30010028cc00401e330010058acc004c108c16cdd500c44c9660020030468992cc004006264b300100182444c966002003159800983200144cc8966002609000313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a058828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0f0006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140b1051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009823800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2816a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b300130490018992cc00400609913259800800c13609b1332259800800c13e264b30010018acc004c1ac00a26608400644b30010028acc004c13cc1a0dd5001c4c9660020030538992cc0040060a905482a44cc89660020030568992cc0040060af05782bc4c96600260e600700f82c20e0375a00305741cc60e00028370dd6800983780141510701836800a0d630693754007052419913259800800c6600200313002306e003829a05e829c14e0a705341bc60d800483520a083420a1050828414106c1834800a0ce375800260d000504d826a0d23066001419060c46ea80162b3001303b0018992cc00400609913259800800c13609b132598009834801c4cc10000489660020050078992cc00400633001001898011836001c14502e41460a3051828a0da306a00241a104e41986eb000609b04d41a460cc0028320c188dd5002c566002607400313259800800c132264b3001001826c136264b30013069003899820000912cc00400a00f13259800800c6600200313002306c003828a05c828c1460a305141b460d4004834209c8330dd6000c13609a8348c19800506418311baa0058acc004c0e4006264b300100182644c96600200304d826c4c96600260d20071330400012259800801401e264b30010018cc0040062600460d800705140bd051828c1460a28368c1a800906841390661bac001826c1350691833000a0c83062375400b1598009817800c4c96600200304c8992cc00400609b04d8992cc004c1a400e26608000244b3001002803c4c96600200319800800c4c008c1b000e0a2817a0a3051828c14506d183500120d082720cc375800304d826a0d23066001419060c46ea80162b30013370e9008000c56600260c46ea801600504b418d04b417c82f905f20be417c82f905f20be417c3300100189981d80c912cc00400a04913259800800c13209913259800800c136264b3001001827413a09d04e899912cc0040060a113259800800c56600260d800519800800c4c01cc1b00220a2818a0a2834a0a3051828c14506d1835000a0d0375c00260d20048350c19c0050651bac0018264131068183280120c6824a046305f37540070494185049824c1260928328c1880050601831001411e08f047823a0c63060001417860b86ea806208a82ca08a813208a8132264b3001001823411a08d13230033062004375a003046418860be00482ea264b3001001822411208913230033060004375a003044418060ba00482da08282ca083041820c10505d182d000a0b0305a00281fc0fe07f03f416c60b000282b0dd6800982b80140f1058182a800a0a6375a00260a8005039415460a40028280dd6000982880140da06c8290c13c00504d1bac001304e002819c0cd04f1826000a0943048375400d031411503141246eb0006061030413060920028238c12400a05d02e81740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a2b300130190078992cc00400605313259800800c566002608a005159800981398201baa0018992cc00400605713259800800c4c96600200302d8992cc00400605d02e8992cc004c12800e2b3001302c3045375400913259800800c0c2264b30010018992cc00400606513259800800c566002609c005159800981818249baa0038992cc00400606913259800800c4c9660020030368992cc00400606f037899912cc00400607313259800800c0ea0751332259800800c0f2264b300100181ec0f607b1332259800800c0fe264b300100182041020811332259800800c10a264b3001001821c10e08713259800982f801c566002608260b46ea8042264b3001001822c4c966002003046823411a26644b300100182444c966002003049824c126264b300130650038acc00404e09513259800800c12e09704b899912cc00400609b13259800800c13a09d04e8992cc004c1a800e2b3001015827c4c966002003050828414226644b300100182944c966002003053829c14e264b3001306f0038cc00408a26608c04c44b3001002817c4c96600200305782bc4c9660020030588992cc0040060b305982cc16626644b300100182dc4c966002003159800983b80146600200313007307700882e207882e20e882e41720b905c41e060ea0028398dd7000983a00120ea307200141c06eb00060af05741cc60e000483720a881720a88360dd6800c14d06f1836000a0d4375a00260d602d05041b060d202a833a09e8338dd6800c13906a1833800a0ca375a00260cc02904b419c60c802683120948310dd6800c1250651831000a0c0375a00260c2005046418860be00282e8c16cdd50084111058411105c1bad001821a0be305c00141686eb4004c16c00a08082e0c1640050571bad001305800281ea0b2305600141506eb0004c15400a07503a415860a60028288dd6000982900140de06e8298c14000504e182800140d606b03581aa0a2304e001413060946ea800e066823a066825a067033819c0cd04f1826000a094304c002818c0c6063031413460940028240c118dd500240bd04340bd0471bac00181740b904a1823800a08a304700281640b205902c4120608a0028218c104dd5000c0a903e40a904240aa05502a815208c30430014104607e6ea803a05081e103c101b80dc06e03681b8cc88c966002603460666ea8006260686466ec0c0e0004c0e0c0e4004dd6181b981a1baa0018a9981924818b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c030cc0e0dd480225eb812f5c11301233038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8048dd7181a18189baa00132323259800800c566002603260646ea8006264b300100180f44c96600200301f80fc07e03f1332259800800c086264b30010018acc004c0f000a2b3001301e3037375400313259800800c08e264b30010018992cc00400604b13259800800c4c9660020030278992cc0040062b300130420028acc004c090c0f4dd5002c4c9660020030298992cc004006264b3001001815c4c96600200313259800800c0b6264b30010018992cc00400605f13259800800c4c9660020030318992cc004006264b3001001819c4c96600200313259800800c0d6264b30010018992cc00400606f13259800800c4c9660020030398992cc004006264b300100181dc4c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607060a26ea805e264b300100181ec4c96600200303e81f40fa07d1332259800800c102264b3001001820c106083041899912cc00400608713259800800c11208904482244cc89660020030468992cc00400608f047823c11e26644b3001001824c4c96600200304a825412a0951332259800800c132264b30010018acc004c19c00a330010018acc004c124c188dd501344c96600200304e8992cc00400609f04f899912cc0040060a313259800800c56600260d80051330430032259800801466002007103882a20768992cc0040062b30013051306a375400313259800800c15a264b300100182bc15e26644b300100182cc4c96600200305a82d416a26644b300100182e44c96600200305d82ec176264b300130780038acc00401e0bd13259800800c17e0bf05f82fc4cc89660020030618992cc0040060c5062831418a264b3001307d00389808183e808c18d07a1bae00141f460f400283c0dd7000983c80420f4307700741d505e41d46eb40060ba83c0c1d40050731bad001307400282d20ea307200141c06eb0004c1c400a0af05741c860de0028368c1acdd5000c15506841560ab05582aa0e0306d00241ad05241a5052829414a0a48368c1a80050681bac0013069002827c13d06a1833800a0ca3063375404d04d418104d40d904d419104d826c13609a8340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0f104f40f102640f102640f102640f102640f102640f102640f102640f102640f102640f102640f105340f207903c81e20ae3054001414860a800503a81d40ea07482a8c148005050182900140e207103881c20a63050001413860a000503681b40da06c8288c13800504c182700140d206903481a209e304c0014128609800503281940ca0648268c128005048182500140c2061030818209630480014118609000502e81740ba05c8248c118005044182300140b205902c816208e30440014108608800502a81540aa0548228c108005040181f1baa0058142076814207e81440a2051028410c608000281f0c10000a04d0268134099041181f000a078303e002812409204902440fc607800281d0c0e0dd5000c0890354089039408a045022811207a303a00140e06eb8004c0e400903a181b800a06a3033375400301d40c101d80ec07603a81c0c966002603260646ea8006264b30013019303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602260666ea8c040c0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c06600e6eb0c03cc0c8dd50099191980080098019bab301130343754602260686ea8008896600200314a115980099b8f375c607000206314a3133002002303900140c881b0c004004896600200314bd7044cc0d0c0c4c0d4004cc008008c0d80050331112cc004c060c0c4dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981d00146600200713259800980e800c4c9660020030078992cc0040062b3001303d0028992cc004c080006264b300100180544c966002003159800982000146600200300c805a01c805a07a805c02e01700b4104607c00281e0c0e8dd50014566002602800313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c046023132598009823801c04e0248220dd6800c0450471822000a084375a002608600500e4110608200281f8dd68009820001402d041181f000a078303a375400500940dc81b8c0e0dd5000c02103a4022011008804207c303b00140e4606e6ea800a2b300130110018acc004c0dcdd5001401e00c81c200c81a1034181a9baa001802a010802a06e802c01600b00540ec607000281b0c0e000a007003801c00d039181b000a0683032375400700140bc456600260100071323259800980498111baa302630270028a518a5040806eb4c094004c084dd500245901e203c1810181080098100022293454cc05924011856616c696461746f722072657475726e65642066616c7365001365640541" + : "592a0a010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003374a9000488c8cc00400400c88cc00c004c00800a6e1d20029b87480226e1d200a9b87480326e9520029b874803a44b30013009300e375400513232332259800980b801c0162c80a0dd6980a0009bae30140023014001300f37540051640349111111111114c00488c8cc00400400c896600200314c0103d87a80008992cc004c0100062601c6604000297ae089980180198110012038302000140792223259800980b800c4c8c96600260460050048b2040375c6042002603a6ea800e2b3001300b0018992cc004c08800626601a6eb0c08400489660020050058cc00401e6046005130013024002401c810a2c80f8c074dd5001c566002602c003132598009811000c4cc034dd61810800912cc00400a00b19800803cc08c00a260026048004803902145901f180e9baa0038acc004c0600062646644b300130240018998079bac30230012259800801401e33001009981280144c004c09800900920468b2042375a60420026044002603a6ea800e2b3001300a001899192cc004c08c00a0091640806eb4c084004c074dd5001c56600260120031323259800981180140122c8100dd69810800980e9baa0038acc004c02000626464b300130230028024590201bae3021001301d375400716406c80d901b2036406c80d901b180d9baa00291192cc004c05800626464b3001302200280245901f1bae3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd5001488c966002602c0031323259800981100140122c80f8dd71810000980e1baa0038acc004c02800626464b3001302200280245901f1bae3020001301c375400716406880d0c068dd500148966002602a60346ea800a2646464b30013022002899192cc004c0680062b3001302037540050068b20428acc004c03800626464b300130260028044590231bad302400130203754005159800980c800c56600260406ea800a00d16408516407880f101e180f1baa00130210038b203e3259800980f000c56600266e252004301d0018b44c030c07400501c45901f1baa30200013020001301b3754005164065223259800980b000c4c8c96600260440050048b203e375a604000260386ea800e2b3001300a0018acc004c070dd5001c00a2c80ea2c80d101a180d1baa002488888a6002600a00b2259800980d98101baa00289919192cc004c0a000a266010604e006264b3001301f0018992cc004c0a800626464b300130220018992cc004c0b400626601a60580020131640a860506ea800a2b3001301600189919194c004dd69817000cdd69817001cdd698170012444b3001303200480745902f0c0b8004c0b4004c0a0dd5001459026204c30263754002605200316409c604a6ea800a2b300130130018acc004c094dd500140162c81322c811902318119baa0018b204a302600130260013021375400516407d223259800980e000c4c966002604e00313300b30260010038b2048302237540071598009808000c4c966002604e00313259800980f18119baa00189919192cc004c0ac00a266014605400626601400200f1640a06052002605200260486ea80062c8110c0980062c8120c088dd5001c590202040302037540052259800980d98101baa0028991919192cc004c0a400a264b3001302030253754003132323322598009817001c4cc03cc0b402002a2c8158dd718158009bae302b002302b0013026375400316409060500091640986eb8c09c004c09c004c098004c084dd500145901f244446645300133223259800981118139baa001898141919bb0302c001302c302d0013758605660506ea80062c8130c8cc00400400c896600200314c0103d87a80008992cc004cdd7981480099ba548010cc0b0c050cc0b0dd480225eb812f5c11301a3302c374e66058605200266058605400297ae04bd7044cc00c00cc0b80090281816000a05437566050605260526052605260526052605260526052604a6ea8068dd7181418129baa002912cc004c084c098dd500144c8c8c8cc89660026060007133008302f0051330140020068b205a302d001375a605a004605a0026058002604e6ea800a2c812a44b30013021302637540051323232323298009bad302f0019bad302f0049bad302f003981780124444b30013034005899806181980489980c0008054590310c0bc004c0b8004c0b4004c0b0004c09cdd5001459025489660026042604c6ea800a2646464646465300137586060003375a606000b375a6060009375a6060007303000248888966002606c00d13300e303500b13301a001132332259800981c801c03e2c81b0dd7181b0009bae303600630360058b20661818000981780098170009816800981600098139baa0028b204a912cc004c084c098dd500144c8c8c8c8ca60026eb0c0bc0066eb4c0bc0126eb4c0bc00e605e00491112cc004c0d001626601860660122660300022646644b30013037003806c590341bae3034001375c606800a60680091640c4302f001302e001302d001302c001302737540051640949111119912cc004c098006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c8cc8966002606e00713259800981718199baa00189919191919194c004c0f40066eb0c0f40166eb4c0f40126eb4c0f400e607a004911112cc004c10c01a26605c6eb0c10802c8966002005133030006225980080144cc0940144cc094024566002607a60846ea80462646464b3001304a00289919912cc004c10c00a264b3001304e00189981c9bac304d00122598008014012266046609e0042600260a0004826a2c8258c124dd5001c566002606e005132598009827000c4cc0e4dd61826800912cc00400a009133023304f002130013050002413516412c60926ea800e2b300130420028992cc004c1380062660726eb0c13400489660020050048998121827801098009828001209a8b209630493754007159800982200144c8c8c96600260a000513303b3758609e00644b30010028acc004c120c134dd5001c4c8c8cc896600260ac00700a8b20a6375a60a60026eb4c14c008c14c004c138dd5001c5904c44cc098c1440084c004c14800904f45904d1827000982700098249baa0038acc004c0d800a264b3001304e00189981c9bac304d0012259800801401226604a609e0042600260a0004826a2c8258c124dd5001c566002606a005132598009827000c4cc0e4dd61826800912cc00400a009133025304f002130013050002413516412c60926ea800e2b300130340028992cc004c1380062660726eb0c13400489660020050048998131827801098009828001209a8b209630493754007159800981900144c966002609c0031330393758609a00244b300100280244cc098c13c0084c004c14000904d45904b18249baa0038acc004cdc3a402000515980098249baa003800c5904a459047208e411c8239047208e411c823904718231baa0011330260021330360162259800801407e2646644b300130500018998151827800898021828002c5904d1bae304d001304e001375860980048250c12400e2c8238c120004c120004c10cdd5008c5904144c8c008c12000cdd698230012088899180118230019bad30440024109164100303d001303c001303b001303a0013039001303437540031640c8606c00b1640d06eb0c0d0004c0d0008c0d0004c0cc004c0b8dd5000c5902c1818000c5902e18161baa0078acc004c068006264b300130310018992cc004c0a0c0b4dd5000c4c8c8c966002606a00513259800981618189baa001899192cc004c0e0006264b3001302f30343754003132323232323298009bad303e0019bac303e0059bac303e0049bad303e0039bad303e00248888966002608800d13259800981d98201baa0018991919912cc004c12400e2646644b3001304c00389919912cc004c13c00e266054609c03026607403644b3001002811c4c8cc896600260a800313302e30530011300430540058b20a2375c60a200260a40026eb0c14000904e45904c1bad304c001375a609801860980171641246eb4c124004dd698248051824804c590461bad3046001375a608c004608c00260826ea80062c81f8c10c02e2c8208607c002607a002607800260760026074002606a6ea80062c8198c0dc00a2c81a8c0dc004c0c8dd5000c59030181a001c590321bac30330013033001302e37540031640b060600031640b860586ea801e2c815102a0acc004c090c0a4dd5002c66002605a60546ea8016444b30010028a6103d87a80008acc004c09c0062603a6605e606000497ae08cc00400e6062005337000029000a00640ac817245300132330010010032259800800c528456600266ebcc0c4c0b8dd5181898171baa301f302e375460620026030660606ea400d2f5c114a3133002002303200140b0817a94294502a488c8cc00400400c896600200314bd7044cc896600266ebcc0ccc0c0dd5181998181baa3021303037540046034660646ea40152f5c113303200233004004001899802002000a05c3031001303200140bd23019302a3754605c646600200200444b30010018a5eb84103d87a80008101800044c8cc89660033001301e302f375460660074a14a2817226606530014a14c103d87a8000a60103d879800040b8660646e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0d400400e2946266004004606c002818103344cc0ca600294298103d87a8000a60103d879800040b8660646e9c0092f5c11330329800a51a60103d87a8000a60103d879800040b8660646e9ccc0c8dd400080125eb8102e205c3758606260640026eb4c0c4008cc008008c0c400502e48888ca6002003005802400d00111112cc00400e2b30010028800c590334660020093036003981b00166002606a007375a606a005001401480210334888ca6002003004801a00222259800801456600200314a314a0818a2b30010018a508acc004cc010c0cc008c0cc00633001003981a0014c0d00050034528205c40c4818a4444646600200200a44b300100189981919bb0375200a6ea00112f5bded8c113298009bae30300019bad3031001981a8012444b300133720012007133036337606ea4024dd4004002c56600266e3c02400e33001009804400a46606e66ec0dd48051ba80010028800a00e89981b19bb037520066ea0008cc01801800503220641819800a06291111919800800802912cc00400626606466ec0dd48029ba60044bd6f7b63044ca60026eb8c0c00066eacc0c4006606a0049112cc004cdc8004801c4cc0d8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981b99bb037520146e9800400a2002803a26606c66ec0dd48019ba60023300600600140c881906066002818a4464646600200200844b3001001801c4c8cc896600266e4401c00a2b30013371e00e00510018032060899802802981b0022060375c605e0026eacc0c0004c0c80050300a5eb7bdb1824b30010018a518a5040b112222232598009815000c00a260060028170cdc0002001c8966002604c60566ea800a26464b30013032002801c5902f1bad3030001302c37540051640a92302e302f302f302f0019b814800244b30010018a40011337009001198010011818000a05a912cc004c098c0acdd500144c8c8c8ca60026066003303300398198012444b3001303700489980a181b0038998078010992cc004c0b8006264653001375a6072003303a0019bad3039002488966002607a005132323322598009820801c04a2c81f0dd7181f0009bae303e002303e001375860780051640e83039001303437540051598009811000c4c8ca60026eb4c0e40066074003375a60720049112cc004c0f400a264646644b3001304100380945903e1bae303e001375c607c004607c0026eb0c0f000a2c81d0607200260686ea800a2b3001302d00189919194c004dd6981d000cc0ec0066eb4c0e800e6eb4c0e8009222259800981f801c4c8c8cc896600260860070148b2080375c60800026eb8c100008c100004dd6181f001c5903c0c0e8004c0e4004c0d0dd50014566002605e003132332259800981d800c4c8c8cc8966002607e0070108b2078375c60780026eb8c0f0008c0f0004dd6181d000c590381bad30380013039001303437540051598009810800c4c8c8cc8966002607800700d8b2072375a60720026eb4c0e4008c0e4004c0d0dd500145660026040003132323298009bad303a0019bad303a0039bad303a002488966002607c00900f8b2076181d000981c800981a1baa0028acc004c07c00626464b3001303a002805c590371bad303800130343754005159800980e800c4c8c966002607400500b8b206e375a607000260686ea800a2c8191032206440c88191032206440c860646ea80062c81a060660026064002606200260586ea800a2c81524466026004466ebcc0c0c0b4dd50009ba70029119b83337040046eb4c078c0b0dd50009bad301d302c37540032259800800c5268992cc00400629344c96600266e40dd7181698188019bae302d00189980200219818000981900145902c1818000a05c303000140b522232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6068003375a606a0033300300330390024024606e00281a8dd598190019bae302f001330030033034002303200140c12232330010010032259800800c52f5c1133030374e60066062002660040046064002817a44646600200200644b30010018a508acc004cdd798188009ba70038a518998010011819000a05840bd222329800800c01200680088896600200510018cc00400e6068005330043033002001400c818a4605c605e605e605e605e003371090004dc7a45045553447200488888888888888888888888888a60026090608a6ea806e6090608a6ea8c0d8c114dd500dcc06806a444b3001301a0028cc00400e00548002444b30013004003899b80001375a607860966ea800e2c82490194590464888c8cc88cc008008004896600200300389919912cc004cdc8803801456600266e3c01c00a20030064131133005005305200441306eb8c12c004dd698260009827000a0983301600400314800244653001001801c0090011112cc00400a200313298008024c13c00f30010029bae304a0019bab304b00191111192cc004c07400600513003001413c6465300100180340150011112cc00400a200313298008024c16400f30010029bae30540019bad3055001802a048401060ae00482a9406d0192008304d002412d232330010010022259800800c52f5bded8c11323304b3376060900026e98c8cc004004dd59825001112cc004006297adef6c608991982719bb0304b001375060286eb4c130004cc00c00cc140008c13800504c1980180198268011825800a0929806006488c9660026082608e6ea80062646601e0022b30013375e602460926ea800cc130c124dd5002456600266ebcc0e8c124dd5000982618249baa0038800c59047459047182598241baa0018b208c3039304737546070608e6ea800a60100109111111111194c00488c8cc004004008896600200314bd7044cc158c966002609e60a86ea8006260b060aa6ea80062c8298cc014010dd6982b80099801001182c000a0aa9111192cc004c13cc150dd5000c4c96600266ebcc164c158dd5182c982b1baa3047305637540026080660b06ea40152f5c115980098224c004dd59823982b1baa304730563754003005a45087472656173757279004035132598009828182b1baa001899198110008992cc004c14cc160dd5000c4c96600266ebcc174c168dd5182e982d1baa00130443305c375201297ae08acc004c12260026eacc12cc168dd5000c02691108747265617375727900404513259800982a182d1baa001899198130008acc004cdd79812982e1baa0034c0103d87a800089982f0029982f0009982f1ba6330123756609a60b86ea800cc044dd59826982e1baa304d305c375400e97ae08b20b4305e305b3754003164164609860b46ea80062c82c22c82c0c170c164dd5000c59057198049bac304a3058375401000a60b460ae6ea80062c82a8c120c158dd51823982b1baa0018b20a88b20a830583055375400316414c6600a6eb0c15cc150dd50020014888888896600266ebcc16cc160dd5003982d982c1baa0068acc004cdd79825182c1baa00730493058375400d13259800cc0040069464444b3001001899b894800000a294105b20368992cc004cdc4802000c56600266e2400400e200316416116416130010019bae305c0049bae305c305d004404116415c6601c6eacc124c160dd50039806cc004dd7182d802cdd7182d982e002cc08001122259800982a800c402e3300100b801cc8c8008c038004cc174cdd81ba9002375000297adef6c6091111192cc004c0b400600513003001417c653001004804401e444453001005801c0120050014018818140ad02920b24590564590564c13cdd500524444b3001304e0018cc00488c8cdc199b803370066e0800cdd69824982b9baa00200148004004dd69823982b1baa001998021bac30573054375401c6eb0c114c150dd5007cdd6182b982a1baa00f9bad30463054375401f375a603a60a86ea803e608a60a86ea80c522222259800998171bac305d305a375409e6eb8c08cc168dd51825982d1baa001899912cc004ca600200500891192cc004c168c17cdd5000c4c8c8ca60026605000e0033758604260c66ea80166eb4c19800e6eb4c198009222259800983098331baa0048acc004cdc4998099bad30583067375401260d460ce6ea801260026eacc160c19cdd5182c18339baa00a9bae306a0039bae306a306b003407915980099b87002375a60b060ce6ea80262b30013370e0026eb4c164c19cdd5004c4cdd79ba700530253067375401314a0832a2941065452820ca8b20ca1bac3065306600130650013060375400314a082f0c144c17cdd519809001000a05a375860be60b86ea8c138c170dd5001c4c8c96600266e1c00660026eb0c140c178dd5029ccc180c13cc178dd51827982f1baa005330604c01054455534472004bd704dd61830982f1baa3050305e375400a911194c00400600f00d8062002222259800801c52000899912cc004c184c198dd5000c4c96600260c460ce6ea8006266e0260026eacc164c1a0dd5182c98341baa306b006983598341baa002983598341baa0039bac30263068375400733014375a60b260d06ea800cc1acc1a0dd5000c0266eb4c168c1a0dd5001cdd6982c98341baa0034059300100798360034c1b001660d8008803a2c8330cc0b001cdd6181298339baa0028b20ca306800233016007375a60d0002833113232332259800cc00400a9464444b30010018acc004cdc7802245008a51899813002998341ba900433068375200697ae0419114a08321024456600266e1ccdc09bad30653062375460ca0066eb4c194c188dd51832802002c4c96600266e24018006260400031641853001375860ca60c46ea8c150c188dd5004d20009119912cc006600260c00034a14a283222b3001337126605400200930010069bae30690029bae3069306a0024075133700006003164191100341906eb0c19cc190dd5001194c00404290004896600266ebcc094c19cdd50011ba7003899b80001375a60b060ce6ea800a200283290241bac306730643754004810a2c83022c8300dd598319832000998109bac30633060375460a460c06ea801c8dd6183218309baa00130630019800829cdd71830982f1baa304f305e375400b007803201a8b20b859800982b9808800c520008acc004c184006264b3001301a375c60ba0031375a60bc00316417060c000316417882d8cc0a4dd5980d182e1baa051375c609a60b86ea8c134c170dd5001c5905a4c004016009259800980c1bad304c305b375400313018375a609a60b66ea8006294105920243302d375860ba60b46ea813cdd71826182d1baa304b305a3754003164160899912cc004c11000e3300133006375860b260ac6ea8040dd61823982b1baa0119bac305930563754023375a609060ac6ea80466eb4c07cc158dd5008cc11cc158dd5019a44444b30013302f375860bc60b66ea8140dd71812182d9baa304c305b375400319800cc00401600925980099b88375a609a60b86ea800520008980c9bad304e305c375400314a082d10134cc0b8dd6182f182d9baa050375c609a60b66ea8c130c16cdd5000ccc174c130c16cdd51826182d9baa0013305d4c1054455534472004bd702444b3001980080140224464b3001304f3060375400313233225980099b8900198009bab30553064375460aa60c86ea801a6eb8c19c01e6eb8c19cc1a001d01b456600266e1c004c0b0dd6982a98321baa0058acc004cdc39bad3067002375a60ac60c86ea8016266ebcc19cc1a0008c088c190dd5002c52820c48a50418914a08310c198004dd6983280098309baa0018a50417c60a460c06ea8cc04c00800502e4660026644653001001802c02e014800888896600200714bd7044cc896600260c060ca6ea8006264b3001306130663754003133223322330020020012259800800c4cc1b4dd3998369ba70043306d375000697ae04bd7044ca60026eb0c1bc0066eb4c1bcc1c000660e00049112cc004cdd79ba7003374e011133071374e660e26e9c00ccc1c4dd419b800020074bd70000c4cc1c4dd3998389ba700333071375000497ae03300600600141b4375860dc00283626002013306d0089836803cc1b40190091bac3025306737540073001375660b060ce6ea8c160c19cdd518350034c1a8c19cdd50014c1a8c19cdd5001c02a60246eb4c160c19cdd5001cdd6181298339baa0039bad3059306737540073302b3012375a60b060ce6ea800cc1a8c19cdd5000a02a8b20ca3302b0073758604860cc6ea800a2c8320c19c008cc054018dd69833800a0ca375860a060bc6ea814cdd61830982f1baa3050305e37540093302b3756603860bc6ea814cdd71827982f1baa304f305e37540099800829cdd71830982f1baa304f305e3754009006802a01a9980f9bac3061305e375460a060bc6ea80108dd61831182f9baa00148888c8cc89660033001002a5191112cc0040062b30013371e0089101008a51899814804198359ba90043306b375200697ae0419d14a08339027456600266e1ccdc09bad30683065375460d00066eb4c1a0c194dd51834002800c56600266e1c006600201f480024466e00004dd6982c18339baa0024091159800998089bac30683065375460ae60ca6ea802c8c8cdc3cc0040126eb8c1a80066eb8c1a8c1ac00501e1817991919800800805912cc0040062900044c96600266ebcc1b8004dd380244dd698371837800c4cc00c00cc1bc0090691bac306d00141ac6eb0c1a8c19cdd50011bac30693066375400314a316418d16418d16418d16418c6eacc198c19c0056600260ba602e0091480022b300130670048992cc004c080dd71831800c4dd69832000c59062183300245906420c2306600245905c22c82c91598009820801c660026600c6eb0c164c158dd50081bac304730563754023375860b260ac6ea80466eb4c120c158dd5008cdd6980f982b1baa0119823982b1baa033488889660026605e6eb0c178c16cdd50281bae3024305b3754609860b66ea80062b30019800998171bac305e305b37540a06eb8c134c16cdd51826182d9baa001802c88c96600260ae60ba6ea80062646604a0022b30013375e60a260be6ea800cc188c17cdd5002456600266ebcc140c17cdd50009831182f9baa0038992cc004c12cc17cdd5000c4cdc39bad3063306037540026eb4c144c180dd5002452820bc3051305f375400316417516417460c260bc6ea80062c82e0c13cc174dd51827182e9baa00240ad1598009991194c0040060110074004444b30010028acc00400629462941061456600200314a115980099912cc004c170c184dd5000c4c96600266ebcc198c18cdd5000983318319baa30663063375400715980099baf30553063375400260a860c66ea8c198c18cdd5001c4cdc3cc004dd5982a18319baa0019bae30660079bae30540074068601c6eb4c150c18cdd5001c52820c28a50418460ca60c46ea80062c8300c18c008cc044014dd69831800c6600200730640029832000a0068a50417883090611bac304d305b37540a0660ba609860b66ea8c130c16cdd50009982ea601054455534472004bd7044c8ca60026eacc180c184006660546eacc06cc174dd50291bae304e305d3754609c60ba6ea800eb3001302f0068cc00401e00d48002444b3001301d375a60a260c06ea800e266e00004dd6982898301baa0038b20bc40b916416c9112cc004cdc3acc004c168c05000a29000456600260c800513259800980e9bae306000189bad30610018b20be30630028b20c2417800315980099b87337026eb4c18cc180dd518318021bad30633060375460c600a00313300c375860c660c06ea8c148c180dd5003119182e4c0040166eb8c1940066eb8c194c1980050191bac306430613754003164179164178306000198008284dd7182f182d9baa304c305b375400300380120148b20b28b20b28b20b24566002607e00719800998031bac3059305637540206eb0c11cc158dd5008cdd69824182b1baa0119bad301f3056375402330473056375406691112cc004cc0b8dd6182e982d1baa04f375c604660b46ea8c12cc168dd5000c56600266453001002803488c96600260b060bc6ea80062646604c0022b30013375e60a460c06ea800cc18cc180dd5002456600266ebcc144c180dd5000983198301baa0038992cc004c128c180dd5000c4c96600266e2400660026eacc14cc188dd5182998311baa0069bae30650079bae30653066007406513370e00260546eb4c14cc188dd5002c52820c0375a60c860c26ea8006294105f182918301baa0018b20bc8b20bc3062305f375400316417460a060bc6ea8c13cc178dd500120583302d375860ba60b46ea813cdd71826182d1baa304b305a3754002660b8609660b46ea8c12cc168dd50009982e261054455534472004bd7044c8ca60026eacc17cc180006660526eacc068c170dd50289bae304d305c3754609a60b86ea800f3001006a4001225980099b88375a609e60bc6ea80092000899b80001375a609e60bc6ea800a2c82e101b2444b30013370eb3001305930130028a4001159800983180144c96600260386eb8c17c00626eb4c1800062c82f0c18800a2c830105d000c56600266e1ccdc09bad3062305f375460c40086eb4c188c17cdd51831002800c4cc02cdd61831182f9baa3051305f375400c46460b730010059bae30640019bae3064306500140606eb0c18cc180dd5000c5905d45905d0c17c006600209f375c60ba60b46ea8c12cc168dd5000c00e004804a2c82c22c82c114a082a105420a82232330010010032259800800c528c566002600660b6003133002002305c0018a50415882c896600266e2000520008980e800c400505320a4112cc004cdc4000a400114c0103d87a8000899805001000a09e22c8140c0a4dd50028c8c8c9660026040604a6ea80062646644b3001302d0018992cc004c090c0a4dd5000c4c8c8c8cc8966002606600713259800981518179baa0018991919191919191919194c004c0f4006607a013303d008981e803cc0f401a607a00b303d004981e801cc0f400922222222259800982380544cc090c11804c4cc0900204cc09001c4cc0900184cc0900144cc0900104cc09000c4cc0900084cc0900044cc090024566002607a60846ea8056264646464653001375c6096003304c0019bae304b0059bae304b0049bae304b0039bae304b00248888896600260a400b1330333051005159800982418269baa02189919192cc004c15400a2660806eb0c15000c8966002005133033003102e8992cc004c138c14cdd5000c4c8c8c8cc896600260ba007132323322598009830801c4c02cc1840322c82f0dd7182f0009bae305e002305e001375860b800b1641686eb4c168004dd6982d001182d000982c800982a1baa0018b20a43056002415116414860a600260a6002609c6ea80862c82622c8278609600260940026092002609000260866ea80562c820a2c8220607a00260780026076002607400260720026070002606e002606c002606a00260606ea80062c8170c0c80162c8180c0c0004c0c0008c0c0004c0bc004c0a8dd5000c590281816000c5902a1bae302a001302b0013026375400316409064b300130203025375400313259800981018131baa0018981518139baa0018b204a301830263754602e604c6ea8c0a4c098dd5000c59024198061bac3016302537540344646600200260066eacc060c09cdd5180c18139baa0022259800800c528456600266e3cdd71815800812c528c4cc008008c0b0005026205230010012259800800c52f5c113302730243028001330020023029001409844b3001301f30243754005132323259800981600144cc020c0ac00c4c966002604600315980098149baa002802c5902a4566002602e00313232598009817801401e2c8160dd7181680098149baa0028acc004c08800626464b3001302f002803c5902c181680098149baa0028b204e409c8138c09cdd5000c590291815000981500098129baa0028b204611598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d1365640081", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + mintValidator: ScriptHash, + stakeValidator: ScriptHash, + managementValidator: ScriptHash, + yieldOracleValidator: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281" + : "5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301", + Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash, ScriptHash]), + [ + proxyPolicyId, + mintValidator, + stakeValidator, + managementValidator, + yieldOracleValidator, + ], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorPublish { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + mintValidator: ScriptHash, + stakeValidator: ScriptHash, + managementValidator: ScriptHash, + yieldOracleValidator: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281" + : "5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301", + Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash, ScriptHash]), + [ + proxyPolicyId, + mintValidator, + stakeValidator, + managementValidator, + yieldOracleValidator, + ], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolOrchestratorProtocolOrchestratorElse { + public Script: Script; + constructor( + proxyPolicyId: PolicyId, + mintValidator: ScriptHash, + stakeValidator: ScriptHash, + managementValidator: ScriptHash, + yieldOracleValidator: ScriptHash, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "59339c0101002222229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0069bae0059bae0049bae0039bae00248888888888888a60022a6600e92012f657870656374207665726966795f6e6f6e6365287369676e65645f7061796c6f61642e6e6f6e63652c2073656c662900168a99803a49266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00168a99803a492c6578706563742073657474696e67733a2053657474696e67735631203d2070726f78792e73657474696e677300168a99803a492872656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631001648889660033001300d3754027370e90034dc3a4001370e90022444464653001301237540033016006980b0012444b300130060038992cc00400a33001370e9001488c8cc00400400c88cc00c004c00800a6e1d20089b874802a6e1d200c9112cc004c02cc064dd5001c4c9660020030028992cc004006007003801c00e26644b3001001802c4c966002003006803401a264b30013024003804401d0211bad00180320483021001407c6eb8004c080009021180f000a038301a3754007001405d3016375400491111114c004888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c56600260446ea8012007002408d002407c80f8c080dd5001c888c966002602600313259800800c00e264b300100180240120090048992cc004c0a400e00d00540986eb80050291813000a048302237540091598009805800c4c9660020030038992cc0040060090048024012264b3001302900380340150261bae00140a4604c0028120c088dd5002400901f203e3020375400722259800980918101baa0038992cc00400600513259800800c4c9660020030048992cc004006264b300130260018acc004cdc4a4008604a0030068992cc004c0ac012264b300130190018acc004c0a0dd50034026010814a2b300130110018992cc00400601313259800800c02a01500a8992cc004c0bc00e01900b40b06eb40060148178c0b000502a18141baa0068acc004c0600062b30013028375400d0098042052804204a40948128c098dd5002c01d02818079812800a046803204e3754003005802c01600a8150c09c0050251813801400e007003801a0503025001408c60426ea800e00280f244464b300130130018992cc00400600713259800800c0120090048992cc004c0a400e00d00540986eb40060088148c09800502418111baa0048acc004c02c0062b3001302237540090038012046801203e407c60406ea800d2222323298009112cc004c060c098dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003159800981900146600200d19800800c0260108092010805a010817a01100880440210331818000a05c375a002605e00500540c0605a0028158c0b400a007003801c00d02e1815800a05230273754007001409122259800980c18131baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc004006264b300100180644c96600200300d806c036264b300130380038cc00403233001004807c039018403901140390351bad001806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c02e01700b899912cc00400601b13259800800c4c96600200300f8992cc0040060210108992cc004c0ec00e3300100f8cc0040122b3001001808c4c966002003012809404a0251332259800800c052264b300100180ac05602b0158992cc004c10000e02f01640f46eb8005040181e800a076375c002607800481e8c0e8005038404501b404501440450381bac001808404103b181c000a06c3038002807403a01d00e40e4606c00281a0dd6800981a801402d0361819800a062375a002606400500840cc60600028170dd6800981780140150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244889660026030604c6ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b300100180440220111332259800800c02a264b30010018992cc00400601913259800800c03601b13259800981c001c6600201919800802456600200300e8992cc00400601f00f807c03e26644b3001001808c4c966002003012809404a02513259800981e801c05202681d0dd7000a07a303a00140e06eb8004c0e400903a181b800a06a80720308072022807206a375800300d806a070303500140cc606a00500b805c02e01681b0c0cc0050311bad00130320028042066303000140b86eb4004c0bc00a00a8180c0b400502b1816801400e007003801a05c302b00140a4604e6ea800e0028122444b300130183026375400713259800800c00a264b30010018992cc00400600913259800800c4c9660020030068992cc00400600f007803c01e264b300130320038acc004c07cc0b4dd500344c9660020030098992cc00400601500a805402a26644b300100180644c96600200300d806c03601b13259800981c001c6600201500f807202c807206a375c00281c0c0d40050331bae001303400240d460640028180c0b8dd5003402102b402102f1bae00140c8605e0028168c0bc00a00b005802c0150301816800a056302d002801c00e00700340b860560028148c09cdd5001c0050244888c966002603200313259800800c00e264b30010018acc004c0b800a33001001802c01100e401102b4012009004802205e302c00140a860506ea80122b300130110018992cc00400600713259800800c566002605c005159800980d98149baa0018992cc00400600b13259800800c4c9660020030078992cc0040062b300130320028cc00400e33001001804c02100e402100e402102f40220110088042066303000140b86060005006803401a00c8188c0b800502c18151baa001802204e8022056802401200900440bc60580028150c0a0dd50024009025204a30263754007198009181418149814800c8896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902448888c8cc004004014896600200310058992cc004006266008605c00400d133005302e0023300300300140b0605c002815a6e012001918141814800cdd2a400091111119191919192cc004006264b30013021302f375400513259800800c09a264b30010018992cc00400605113259800800c4c96600200302a8992cc0040062b3001303a0028acc004c09cc0d4dd5002c4c96600200302c8992cc004006264b300100181744c96600200313259800800c0c2264b30010018992cc00400606513259800800c4c9660020030348992cc004006264b300100181b44c96600200313259800800c0e2264b30010018992cc00400607513259800800c4c96600200303c8992cc004006264b300100181f44c966002003159800982700146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002607660926ea805e264b300100182044c966002003041820c1060831332259800800c10e264b30010018224112089044899912cc00400608d13259800800c11e08f047823c4cc89660020030498992cc00400609504a825412a26644b300100182644c96600200304d826c13609b1332259800800c13e264b30010018acc004c17c00a330010018acc004c130c168dd501344c9660020030518992cc0040060a5052899912cc0040060a913259800800c56600260c8005133048003225980080146600200719800911919800800801912cc004006297ae08998341ba73003375860d20026600400460d4002833a446076660cc9810b4a5369676e6174757265310033066306730643754004660cc98101400033066375200297ae091833183398339833800c8c96600266e24005202e899b8b33700904000800801456600266e2400520fe03899b8b482c004cdc580080144cdc5a41640266e2ccdc1800a41000866e2ccdc3000a41000800483090611b8d0019111919912cc004c16400a2b300130593067375400314c103d87a80008a6103d87980004195159800982c001456600260b060ce6ea80062980103d87a80008a6103d87b800041951332259800982d800c530103d87b80008acc004c14c006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a800041a08340dd6983698351baa0038a6103d8798000419c8338dd6983598341baa00330673754002832906518329baa001300200330010039b804800a460cc60ce60ce60ce60ce60ce60ce60ce0032232330010010032259800800c5284566002600660d200314a3133002002306a001418c833a6e952002918331833983398339833800c8c198c19cc19cc19cc19cc19cc19c005222222222229800929983619b96491165369675374727563747572652e636f6e746578743a200037326608260e260dc6ea8005220100153306c3372c92011d5369675374727563747572652e626f64795f70726f7465637465643a2000373266082608c60dc6ea8005220100153306c3372c92011b5369675374727563747572652e65787465726e616c5f6161643a2000373266082609460dc6ea8005220100153306c3372c9201165369675374727563747572652e7061796c6f61643a2000373266082601460dc6ea800522010013253306d3372c92012073657269616c6973655f7369675f73747275637475726520726573756c743a20003732660846ea4005220100100133714911018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e1800520800400241b48368dc68009bae3071306e375400266e28c024dd7182318371baa0013371460126eb8c128c1b8dd500098049bae300a306e3754003232323233225980098320014528456600260c60051980099baf30763073375400298103d87b8000a50a5141c113233225980098338014528c56600260be00513322598009830983b9baa30503078375400d13371000400313371200400283a8dd6983c983b1baa00359800982f983a9baa304e3076375400f100189807800a0e68a5041cc8398c1ccdd50009bad30773074375400860ec60e66ea800507020e03070375400260e860ea00660e660e06ea8004c1c8004c1b8dd5000c8966002003148002260106600400460e6002838244646600200200644b30010018a508acc004cdd79838183a0009803998399ba90034bd704528c4cc008008c1d400506e20e448888c8cc896600260ca60e66ea817e26464646644b3001330063051307937540080cb1598009831183c1baa307c3233001001375860a460f46ea8c1f4c1e8dd5003112cc004006297ae1103d87a80008101800044c8cc896600330013067307d37546102020074a14a283da2661000330014a14c103d87a8000a60103d879800041ec66100026e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c20c0400400e294626600400461080200283e90810144cc20006600294298103d87a8000a60103d879800041ec66100026e9c0092f5c1133080019800a51a60103d87a8000a60103d879800041ec66100026e9ccc20004dd400080125eb8107b20f6375860fe6100020026eb4c1fc008cc008008c1fc00507c4566003300133010375860f860f26ea81948cdd7983e983d1baa307d307a375460a460f46ea8004c040cc1f0dd483925eb8294294507644c9660033001307d307e001801cc048c1e8dd50334dd59807183d1baa066402113300a3756601c60f46ea8198dd7183e800c54cc1e1241896578706563740a202020207361746973666965645f7061796c6f616473280a2020202020207065726d697373696f6e2c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641dc64b3001306b00189983e1ba90753307c307d307a375460fa60f46ea81312f5c11598009831800c4cc1f0dd483a9983e1829183d1baa307d307a375409897ae08acc004c17c0062660f86ea41d4cc1f0c038c1e8dd5183e983d1baa04c4bd70456600266e1d200e00189983e1ba90753307c3012307a375460fa60f46ea81312f5c11598009830800c4cc1f0dd483a1983e1807983d1baa307d307a375409897ae08acc004c1800062660f86ea41d0cc1f0c008c1e8dd5183e983d1baa04c4bd70456600260d800313307c37520e6660f8602c60f46ea8c1f4c1e8dd502625eb822b3001306a00189983e1ba90733307c3056307a375460fa60f46ea81312f5c1132598009836183d1baa0018acc004cdd79808183d9baa0674c101a00089983e983f183d9baa0013307d307e307f307f307f307f307f307f307f307f307f307b375460fc60f66ea81352f5c115330794911f6578706563742073656c662e6d696e74203d3d206173736574732e7a65726f001641e115330794913e65787065637420536f6d65286d6967726174696f6e5f76616c696461746f7229203d2073657474696e67732e72656769737472792e6d6967726174696f6e001641e0600460f46ea8c148c1e8dd502620ee41dc83b907720ee41dc83b9077183c1baa307c30793754009153307749013b657870656374206e6f5f7363726970745f696e7075742873656c662e696e707574732c207969656c645f6f7261636c655f76616c696461746f7229001641d91533077491466578706563742076616c69646174655f756e697175655f696e7075745f6d617070696e672872656465656d65722e65787472612e696e7075745f746f5f726571756573747329001641d907041d86602a6eb0c14cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f8002460f660f860f860f860f860f80026e50dd98009826983a9baa0013077307437540bf13232323259800998029828183c1baa0030648acc006600260f660f860f860f860f860f860f860f860f860f06ea8c1ecc1e0dd50254006602060f06ea81926eacc030c1e0dd5032200c8998041bab300c307837540c86eb8c034c1e0dd51828183c1baa04a8a9983b2481a06578706563740a202020207361746973666965645f7061796c6f616473280a20202020202073657474696e67732e7065726d697373696f6e732e7969656c645f6f7261636c652c0a2020202020207369676e6174757265735f776974685f7061796c6f6164732c0a20202020202073656c662e76616c69646974795f72616e67652c0a20202020202073656c662e7769746864726177616c732c0a2020202029001641d506f41d46602a6eb0c13cc1dcdd50019191983d983e0011983d982a983c9baa0013307b375260186602c60f860f26ea800400d2f5c060f660f80026e50dd9800983c183a9baa0013077307437540be83888888c8cc00400401488c96600260d40031325330783372c920121436865636b696e67205369676e617475726520666f72206b65795f686173683a200037326609a6ea4005220100132598009836183d1baa001899194c004dd7184000800cdd7184000984080800cdd71840008012444a660fc9211d466f756e64207369676e61747572652c20766572696679696e672e2e2e00153307e3372c92011b7665726966795f65643235353139207075626c69635f6b65793a20003732660a66ea4005220100153307e3372c9201187665726966795f65643235353139207061796c6f61643a20003732660a66ea4009220100153307e3372c92011a7665726966795f65643235353139207369676e61747572653a20003732660a66ea400d22010013253307f3372c92011f5369676e617475726520766572696669636174696f6e20726573756c743a20003732660a93001001a60103d87a8000a60103d879800041f891010010019800800c00a006b950c20004004dd6183f183d9baa0018a9983c99b96491214e6f207369676e617475726520666f756e6420666f72206b65795f686173683a200037326609c6ea400922010014a083c0c8cc004004020896600200314c0103d87a80008992cc004cdc79bc8375c610002002009130543307f374e00297ae089980180198408080120f4375860fe00283e8dd7183e183c9baa0028acc004c188006264a660f066e59240122436865636b696e6720416c6c4f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416c6c4f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100132330010010022259800800c528c5660026600c00c60fe0031330020023080010018a5041e483e8dd6183e183c9baa0028acc004c1a4006264a660f066e5924122436865636b696e6720416e794f6620776974682073637269707420636f756e743a200037326609a6ea0c0240052201001325330793372c92010e416e794f6620726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e0910100100133011001233005005001375860f860f26ea800a2b3001306b001899199129983d19b96490112436865636b696e672041744c656173743a200037326609e6ea000922010013253307b3372c92011941744c656173742073617469736669656420636f756e743a20003732660a06ea000522010013253307c3372c92011041744c6561737420726573756c743a20003732660a33001001a60103d87a8000a60103d879800041ec910100100133712006002646600200200444b30010018a400113322598009980500500144c064006200283e8c20404004cc008008c2080400507f1bad307d001375860fa60fc00260f26ea800a2b3001306000189929983c19b9649111436865636b696e67204265666f72653a200037326609a6ea00052201001325330793372c92010f4265666f726520726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc49bad307f307c37540020071337106eb4c1fcc1f0dd5000801a0f28a5041e460fc00260f46ea8c148c1e8dd50031bad307c30793754005159800982f800c4c94cc1e0cdcb24910436865636b696e672041667465723a200037326609a6ea00052201001325330793372c92010e416674657220726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232598009832983d9baa0018acc004c194c1ecdd5183f98400080144cdc48019bad307f307c37540031337100066eb4c1fcc1f0dd5000a0f28a5041e460fc00260f46ea8c1f4c1e8dd50031bad307c307937540051325330783372c920111436865636b696e67205363726970743a200037326609a6ea40052201001325330793372c92010f53637269707420726573756c743a200037326609d3001001a60103d87a8000a60103d879800041e091010010013232330010010072259800800c528456600266ebc00cc1f0c20004006294626600400461020200283d107e18081983e1ba90014bd701bae307c3079375400483b107620ec41d883b1076183b9baa0012259800983298399baa002899198061bac307830753754004466ebcc1e4c1d8dd5000801183b983a1baa002899912cc004c02000629462b300130080028a508acc006600266ebe600260f260ec6ea800a60f260ec6ea800646464b300130623078375460f860fa00510018992cc004c18c00626020660f86ea0c04cdd6983e983d1baa0024bd70456600260d60031002880120ee41dc60f06ea8005076183d800983b9baa001404098103d87b8000a50a5141cd1980099baf98009827183b1baa0029827183b1baa001919192cc004c188c1e0dd5183e183e80144006264b30013063001898081983e1ba83053375a60fa60f46ea80092f5c11598009835800c400a200483b9077183c1baa00141d860f600260ee6ea8005010260103d8798000a50a5141cd14a0839907320e6307730743754004601860e86ea800507118010011057410113259800800c56600260a860c46ea8006264b300100182cc4c96600200305a82d44cc896600200305c8992cc0040060bb05d82ec4cc896600200305f8992cc0040060c106083044c96600260e0007159800803c186264b3001001831418a0c5062899912cc0040060c913259800800c1960cb065832c4c96600260ea00713010307501183320e4375c00283a8c1c80050701bae001307100841c860de00e836a0c28368dd6800c1810701836800a0d6375a00260d800505d41b460d40028340dd60009834801416a0b48350c19c00506518319baa00182c20c082c41620b105841a060ca004831a0aa830a0ab05582ac1550651831000a0c0375800260c200505282920c4305f001417460b66ea809a0a082c20a081ea0a082e20a10508284141060182e800a0b6375c00260b800482e8c1680050581bae0013059002416860ae00282a8dd7000982b00120ae305400141486eb8004c14c0090541828800a09e375c00260a00048288c13800504c18251baa01781fa08e81fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa03681fa09681fc0fe07f03f413c60980028250c13000a07b03d81ec0f504d1825000a090304a00281dc0ee07703b412c60900028230c12000a07303981cc0e50491823000a088304600281bc0de06f037411c60880028210c11000a06b03581ac0d50451821000a0803042002819c0ce067033410c608000281f0c10000a063031818c0c5041181f000a078303e002817c0be05f02f40fc607800281d0c0f000a05b02d816c0b503d181d000a0703036375400b02b40cd02b40dd02b815c0ae05681d8c0e0005036181c00140a6053029814a072303600140d0606c005027813c09e04e81b8c0d000503218181baa002812a05a222329800800c0120068008888c966002604e00313259800800c01a264b3001001803c01e00f0078992cc004c0f400e00b00840e86eb800503d181d000a07030363754007159800980f800c4c9660020030068992cc00400600f0078992cc004c0f400e26604200244b3001002803c4c966002003198008054006260046080006805201700b805c02d041181f001207880420743758003007803a07a303a00140e0606c6ea800e2b300130260018992cc00400600d13259800800c01e00f13259800981e801c4cc08400489660020050078992cc0040063300100a800c4c008c10000d00a402e01700b805a082303e00240f100840e86eb000600f00740f4607400281c0c0d8dd5001c566002605000313259800800c01a264b3001001803c01e00f1332259800800c026264b3001001805402a264b30013040003899812000912cc00400a01513259800800c6600201b001898011821801a01a807403a01d00e4110608200481fa01681e8dd6000c02a0148200c0f400503b1bad001303c002803a07a303a00140e0606c6ea800e2b3001301d0018992cc00400600d13259800800c01e00f0078992cc004c0f400e00b00840e86eb400600e81e8c0e8005038181b1baa0038acc004c070006264b300100180344c966002003007803c01e264b3001303d003802c02103a1bad001803a07a303a00140e0606c6ea800e2b3001301b0018992cc00400600d13259800800c01e00f007803c4c966002607a0070058042074375c00281e8c0e8005038181b1baa003802a06640cc8199033206640cc8198c0d0dd5001409204902481220683006302e3754646644a6605e66e592412467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660086ea40b522010013259800981198189baa00189929981899b9649113666f756e642070726f7879207574786f3a3a200037326600c00291010013259800981218199baa0018992cc0040062b300130263034375400313259800800c0b2264b3001001816c0b605b02d899912cc00400605f13259800981f0014401a06081d8c0f000503a1bae001303b00240f0607200281b8c0d4dd5000c0ad03240ae05702b815a074303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4601e60666ea8c02cc0ccdd5000981a98191baa0018a9981824814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640bc646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806981a9baa300d3035375400444b30010018a508acc004cdc79bae30390010328a51899801001181d000a06640dd1300b330360014bd7044cc00c00cc0e0009031181b000a06830010013758600e605e6ea806c896600200314bd7044cc0c8c0bcc0cc004cc008008c0d00050311800800911192cc00400e2646466446601200466e29220101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100e206a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c817902f1bac3032002375a60600026466ec0dd418180009ba73031001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a606a003337149101023a200098008054c0d800600a805100a181c00144ca6002015303500199b8a489023a200098008054c0d8006600e66008008004805100a181c001206c303800140d466e29220102207d0000340c86eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900b20643758007133005375a0060051323371491102682700329800800cc02cdc68014cdc52450127000044004444b300133710004900044006264664530010069808002ccdc599b800025980099b88002480522903045206e40d066e2ccdc0000acc004cdc4000a4029148182290372068004401866e0c00520203370c002901019b8e00400240c46eb800d0351b8a4881022c200022323300100100322598009810000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b8500148051206000340b08160c01401491111112cc004c07003a264b300100181044c96600200315980098188014566002603c60586ea8006264b300100181144c96600200313259800800c092264b30010018992cc00400604d13259800800c09e04f13259800981c001c566002604a60666ea801a264b3001001814c4c96600200302a81544cc896600200302c8992cc00400605b02d899912cc00400605f13259800800c0c2061030899912cc00400606513259800800c0ce067033899912cc00400606b13259800800c4c9660020030378992cc0040062b30013048002899816007112cc00400a26605c01a44b30010028cc00401e330010058acc004c0e4c11cdd500c44c96600200303d8992cc004006264b300100181fc4c966002003159800982800144cc8966002607e00313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205a8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0dc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840b5048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b159800981f000c4c9660020030438992cc0040060890448992cc004c15400e26607200244b3001002803c4c96600200319800800c4c008c16000e09081720910488244121059182b00120a8822a0a4375800304482220aa30520014140609c6ea80162b300130400018992cc00400608713259800800c1120891332259800800c11a264b30010018acc004c15c00a26607600644b30010028acc004c118c150dd5001c4c96600200304a8992cc00400609704b825c4cc896600200304d8992cc00400609d04e82744c96600260be00700f827a0b8375a00304e417c60b800282d0dd6800982d801412d05c182c800a0ae30553754007049414913259800800c6600200313002305a0038252060825412a09504a416c60b000482b208e82a208f047823c11d058182a800a0a6375800260a800504482220aa30520014140609c6ea80162b300130350018992cc00400608713259800800c11208913259800982a801c4cc0e400489660020050078992cc0040063300100189801182c001c12102f412209104882420b23056002415104541486eb0006089044415460a40028280c138dd5002c566002606800313259800800c10e264b30010018224112264b3001305500389981c800912cc00400a00f13259800800c66002003130023058003824205e8244122091048416460ac00482a208a8290dd6000c11208882a8c14800505018271baa0058acc004c0cc006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b8748038006264b3001001821c4c96600200304482244c96600260aa0071330390012259800801401e264b30010018cc0040062600460b000704840c1048824412209082c8c15800905441150521bac00182241110551829000a0a0304e375400b15980099b87480400062b3001304e375400b002821209e8212096412c825904b2096412c825904b209619800800c4cc0d006489660020050248992cc0040060870438992cc00400608913259800800c11608b045822c4cc89660020030478992cc0040062b300130580028cc0040062600e60b001104840b10484155048824412209082c8c1580050541bae0013055002415860a60028288dd6000c10e08682a0c14400904f410102318259baa003820209a82041020810404144609c0028260c13800a07d03e81f40f904f1826000a0943048375403103c411503c409d03c409d13259800800c0f607b03d899180198270021bad00181ea09c304b002412513259800800c0ee07703b899180198260021bad00181da0983049002411d038411503881c40e20708248c118005044182300140da06d03681b208e304400141086eb4004c10c00a0668220c10400503f1bad00130400028182082303e00140f06eb0004c0f400a05b02d40f8607600281c8dd6000981d00140aa05481d8c0e0005036181a1baa0068142062814206a3758003027813a070303500140cc606a005025812c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d159800980a00744c9660020030208992cc0040062b300130310028acc004c078c0b0dd5000c4c9660020030228992cc004006264b300100181244c966002003025812c4c966002606c007159800981198189baa0048992cc00400604f13259800800c4c9660020030298992cc0040062b3001303a0028acc004c09cc0d4dd5001c4c96600200302b8992cc004006264b3001001816c4c96600200302e81744cc89660020030308992cc004006063031899912cc00400606713259800800c0d2069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a8992cc004c12c00e2b300130383046375402113259800800c0f2264b300100181ec0f607b1332259800800c0fe264b30010018204102081132598009828801c5660020270418992cc00400608504282144cc89660020030448992cc00400608b045822c4c96600260ac00715980080ac11a264b3001001823c11e08f1332259800800c126264b3001001825412a09513259800982d801c6600204513303f026225980080140be264b3001001827413a264b3001001827c4c96600200305082841420a11332259800800c14a264b30010018acc004c18c00a33001001898039831804414d037414d060414e0a7053829a0c83061001417c6eb8004c180009061182f000a0b8375800304e82720be305c002416904b40b904b41606eb400609482d8c1600050561bad0013057016823a0b03055015414d046414c6eb400608a82b0c14c0050511bad001305201482120a63050013413904141386eb40060808288c13800504c1bad001304d00281ea09c304b0014124608e6ea804207682220768240dd6800c0e904b1824000a08c375a002608e0050374120608a0028218dd6800982200140d10451821000a08037580026082005031818a084303f00140f46eb0004c0f800a05d02e40fc607800281d0c0f000a05902c81640b103d181d000a0703036375400702a40cd02a40dd02a81540aa05481d8c0e0005036181c00140a20510288142072303600140d060646ea801204c817a04c8198dd6000c09604a81b0c0cc0050311819801408e047023811a068303100140bc605a6ea800604281520428172043021810c0850321817800a05a302b375402d01f40a08140444b300130173025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c4c966002603800315980098159baa002803c01902c4566002602800313259800800c01e264b300100180440220110088992cc004c0c800e01500940bc6eb80050321817800a05a302b3754005159800980d800c4c9660020030078992cc004c0c400a01300840b8605e0028168c0acdd50014019028205040a060526ea800600a804200a815a00b005802c01502f1816000a054302c002801c00e00700340b460540028140c098dd5001c0050231112cc004c058c090dd5001c4c9660020030028992cc004006264b300100180244c966002003159800981680146600200713259800980d800c4c9660020030078992cc0040062b300130300028992cc004c078006264b300100180544c966002003159800981980146600200300c805a020805a060805c02e01700b40d060620028178c0b4dd50014566002602c00313259800800c02a264b3001001805c02e0171332259800800c036264b3001001807403a01d1332259800800c042264b3001001808c04602313259800981d001c04e02481b8dd6800c04503a181b800a06a375a002606c00500e40dc60680028190dd68009819801402d0341818800a05e302d375400500940a88150c0acdd5000c02102d40220110088042062302e00140b060546ea800a2b300130130018acc004c0a8dd5001401e00c815a00c813902718141baa001802a014802a054802c01600b00540b860560028148c0ac00a007003801c00d02c1814800a04e302537540070014088402e01700b805a0383019301637540091598009804001c4c8c9660026012602e6ea8c06cc07000a294629410151bad301a0013016375400916404c8098602a602c002602a0088a4d153300b49011856616c696461746f722072657475726e65642066616c7365001365640281" + : "5919cb0101002222229800aba2aba1aba0aab9faab9eaab9dab9a9bae0069bae0059bae0049bae0039bae00248888888888896600330013008375401b370e90034dc3a4001370e90022444464653001300d3754003301100698088012444b300130060038cc004c050c044dd50024dc3a4005223233001001003223300300130020029b87480226e1d200a9b874803244b300130093012375400513232332259800980d801c0162c80c0dd6980c0009bae301800230180013013375400516404530103754002911111114c00488c96600260240031323259800981100140122c80f8dd71810000980e1baa0038acc004c0280062b3001301c37540070028b203a8b2034406860346ea800a4464b30013012001899192cc004c08800a00916407c6eb8c080004c070dd5001c56600260140031323259800981100140122c80f8dd71810000980e1baa0038b2034406860346ea800a44b30013011301a3754005132323259800981100144c8c966002602c00315980098101baa0028034590214566002601c0031323259800981300140222c8118dd6981200098101baa0028acc004c0540062b3001302037540050068b20428b203c407880f0c078dd50009810801c5901f192cc004c0780062b3001337129002180e800c5a26018603a00280e22c80f8dd518100009810000980d9baa0028b203291192cc004c04800626464b3001302200280245901f1bad3020001301c37540071598009805000c56600260386ea800e00516407516406880d0c068dd500124444646530012259800980b98101baa002899191919912cc004c0a800e266010605200a26601e00400d16409c604e0026eb4c09c008c09c004c098004c084dd500145901f48966002602e60406ea800a264646464653001375a6052003375a6052009375a605200730290024888966002605c00b13300c302d00913301300100a8b2056181480098140009813800981300098109baa0028b203e912cc004c05cc080dd500144c8c8c8c8c8ca60026eb0c0a80066eb4c0a80166eb4c0a80126eb4c0a800e6054004911112cc004c0c001a26601c605e01626602a0022646644b30013033003807c590301bae3030001375c606000c606000b1640b4302a00130290013028001302700130260013021375400516407d2259800980b98101baa002899191919194c004dd61814800cdd698148024dd69814801cc0a40092222598009817002c4cc030c0b40244cc04c0044c8cc8966002606200700d8b205c375c605c0026eb8c0b8014c0b80122c815860520026050002604e002604c00260426ea800a2c80fa44b300130173020375400513232323259800981480144c9660026038604a6ea8006264646644b3001302e003899808981680400545902b1bae302b001375c60560046056002604c6ea80062c8120c0a00122c8130dd718138009813800981300098109baa0028b203e91192cc004c060006264b300130270018998061813000801c5902418111baa0038acc004c040006264b300130270018992cc004c068c08cdd5000c4c8c8c966002605600513300c302a00313300c0010078b20503029001302900130243754003164088604c00316409060446ea800e2c810102018101baa0028cc0048c08cc090c090006460466048003374a90004888c96600260320031323259800981480140122c8130dd7181380098119baa0038acc004c044006264b300130280018998089bac30270012259800801401633001007981480144c004c0a8009007204e8b204a30233754007159800980c000c4c96600260500031330113758604e00244b3001002802c6600200f3029002898009815001200e409d16409460466ea800e2b3001301a00189919912cc004c0a80062660266eb0c0a400489660020050078cc004026605600513001302c0024024814a2c8138dd69813800981400098119baa0038acc004c03c00626464b300130290028024590261bad3027001302337540071598009807000c4c8c96600260520050048b204c375a604e00260466ea800e2b3001300d001899192cc004c0a400a0091640986eb8c09c004c08cdd5001c590212042408481090212042408460426ea80092222332259800980d98121baa002899191919912cc004c0b800e264b30013021302a37540031323232323232323232329800981c000cc0e002660700113038007981c0034c0e001660700093038003981c0012444444444b3001304200a89980d182080989980d00409980d00389980d00309980d00289980d00209980d00189980d00109980d00089980d0048acc004c0d0c0f4dd500ac4c8c8c8c8ca60026eb8c118006608e003375c608c00b375c608c009375c608c007375c608c0049111112cc004c134016266060609800a2b3001303f30483754043132323259800982800144cc0e4dd61827801912cc00400a266062006330012232330010010032259800800c52f5c1133054374e60066eb0c154004cc008008c158005053488c0bccc14930010b4a5369676e6174757265310033052305330503754004660a498101400033052375200297ae09192cc004cdc4800a405d13371666e012080010010028acc004cdc4800a41fc0713371690580099b8b001002899b8b482c804cdc599b830014820010cdc599b86001482001000904e209c371a003230523053305330530019111919912cc004c12800a2b3001304a3053375400314c103d87a80008a6103d8798000414915980098248014566002609260a66ea80062980103d87a80008a6103d87b8000414913322598009826000c530103d87b80008acc004c110006264b30013371000600314c0103d87980008acc004cdc4000801c530103d87b80008a6103d87a8000415482a8dd6982c982b1baa0038a6103d8798000415082a0dd6982b982a1baa00330533754002829105218289baa001300200330010039b804800a460a460a660a660a660a660a660a660a60032232330010010032259800800c5284566002600660aa00314a313300200230560014140829a6e952002918291829982998299829800c8c148c14cc14cc14cc14cc14cc14c005222222222229800919b8a489018400337146464b300133712002901744cdc599b80483000400400a2b300133712002907f01c4cdc5a41e00266e2c00400a266e2d20f2013371666e0c0052080043371666e18005208004002416882d0dc68009bae305d305a375400266e28c028dd7181d182d1baa0013371460146eb8c0ecc168dd500098051bae3009305a37540032323232332259800982a8014528456600260a80051980099baf3062305f375400298103d87b8000a50a514175132332259800982c0014528c56600260a00051332259800982918319baa30443064375400d1337100040031337120040028310dd6983298311baa00359800982818309baa30423062375400f100189807800a0c08a5041808300c17cdd50009bad30633060375400860c460be6ea800505d20ba305c375400260c060c200660be60b86ea8004c178004c168dd5000c8888c8cc00400401488c96600260ac0031323259800982c18309baa001899194c004dd718338014dd718339834000cdd71833800ae5460ce0026eb0c194c188dd5000c52820c032330010010082259800800c5300103d87a80008992cc004cdc79bc8375c60ce0020091304333066374e00297ae0899801801983400120c4375860cc0028320dd7183198301baa0028acc004c138006264660020026eb0c190c184dd5001912cc00400629462b30013300500530650018998010011833000c52820c0418d159800982a800c4cc02cdd6183198301baa0022330040040018acc004c15c00626466e24dd6983200099198008009bac306530660022259800800c52000899912cc004cc02002000a260240031001418c60cc0026600400460ce0028320c180dd500145660026098003132332259800982898311baa0028acc004c144c188dd518331833801c4cdc49bad3066306337540040031337106eb4c198c18cdd5001000a0c28a50418460c80026eb4c190c184dd500198301baa30403060375400b1598009825800c4c8cc896600260a260c46ea800a2b300130513062375460cc60ce0071337120026eb4c198c18cdd500144cdc40009bad306630633754004830a294106118320009bad30643061375400660c06ea8c18cc180dd5002c4c8c8cc004004018896600200314a115980099baf003306230660018a518998010011833800a0c241906014660c460c660c06ea80092f5c082f105e20bc417882f105e182f1baa001911919800800801912cc00400629422b30013375e60b860c0002600e660be6ea400d2f5c114a31330020023061001416c82f122223259800982a182e9baa04e8991919912cc004cc014c108c188dd5001829c56600260a060c26ea8c194c8cc004004dd6182198319baa30663063375400a44b30010018a5eb84103d87a80008101800044c8cc8966003300130553066375460d40074a14a2832a2660d330014a14c103d87a8000a60103d87980004194660d26e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c1b000400e294626600400460da002833906a44cc1a6600294298103d87a8000a60103d87980004194660d26e9c0092f5c11330699800a51a60103d87a8000a60103d87980004194660d26e9ccc1a4dd400080125eb8106520ca375860d060d20026eb4c1a0008cc008008c1a0005065456600330013300d375860ca60c46ea814c8cdd7983318319baa306630633754608660c66ea8004c034cc194dd482e25eb8294294506044c9660033001306630670019980a9bac30443063375400a464660ce60d0004660ce608c60ca6ea8004cc19cdd498061980b183418329baa0010054bd7018339834000cc03cc18cdd502a4dd5980598319baa05440211330073756601660c66ea8150dd71833000c59061192cc004c1640062660ca6ea417ccc194c198c18cdd5183318319baa0404bd70456600260a200313306537520be660ca608660c66ea8c198c18cdd502025eb822b3001304d0018998329ba905f33065300b3063375460cc60c66ea81012f5c115980099b87480380062660ca6ea417ccc194c03cc18cdd5183318319baa0404bd704566002609e00313306537520bc660ca601860c66ea8c198c18cdd502025eb822b3001304e0018998329ba905e3306530023063375460cc60c66ea81012f5c1159800982d000c4cc194dd482e99832980918319baa30663063375408097ae08acc004c1600062660ca6ea4174cc194c110c18cdd5183318319baa0404bd7044c96600260b460c66ea80062b30013375e601a60c86ea8155300101a000899833183398321baa0013306630673068306830683068306830683068306830683064375460ce60c86ea81052f5c1164189164188600460c66ea8c10cc18cdd502020c24184830906120c24184830906118309baa3065306237540071641811641811641806e50dd98009183218329832983298329832800981f982f9baa0013061305e375409d13232325980099802182098309baa0020528acc006600260c860ca60ca60ca60ca60ca60ca60ca60ca60c26ea8c190c184dd501f4cc04cdd6182098309baa00323233065306600233065304430633754002660ca6ea4c028cc050c198c18cdd5000801a5eb80c194c198006601a60c26ea814a6eacc024c184dd5029200c8998029bab3009306137540a46eb8c028c184dd5182098309baa03e8b20be8b20be37286ecc004c188c17cdd50009830982f1baa04e417044b30013055305e37540051323300b375860c660c06ea80088cdd7983218309baa0010023062305f375400513322598009803800c528c566002600e00514a1159800cc004cdd7cc004c190c184dd50014c190c184dd5000c8c8c96600260a460c66ea8c19cc1a000a2003132598009829800c4c03ccc19cdd418091bad30683065375400497ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d87b8000a50a51417d1980099baf9800982098309baa002982098309baa001919192cc004c148c18cdd51833983400144006264b3001305300189807998339ba8337006eb4c1a0c194dd50012400297ae08acc004c16c00620051002418c8318c18cdd5000a0c43066001306237540028079300103d8798000a50a51417d14a082f905f20be3062305f3754004601660be6ea800505d113259800982298271baa001899191919912cc004c16000e264646644b3001305c00389805982e0064590591bae3059001375c60b200460b20026eb0c15c0162c82a8dd6982a8009bad305500230550013054001304f375400316413460a2004827a2c8268c138004c138004c124dd5010c5904745904a0c118004c114004c110004c10c004c0f8dd500ac5903c45903f0c0e0004c0dc004c0d8004c0d4004c0d0004c0cc004c0c8004c0c4004c0c0004c0acdd5000c590291816802c5902b181580098158011815800981500098129baa0028b2046300330233754646464b3001301c3025375400313259800980e18131baa0018992cc004c078c09cdd5000c4c8c8cc8966002606000710058b205a302d001375c605a004605a00260506ea80062c8130c0a8c09cdd5000c59025180398131baa3006302637546052604c6ea80062c8120c8cc004004dd6180318131baa0172259800800c5300103d87a80008992cc004c8cc004004c014dd5980498149baa30093029375400444b30010018a508acc004cdc79bae302d0010278a518998010011817000a05040ad130073302a0014bd7044cc00c00cc0b00090261815000a05030010012259800800c52f5c113302730243028001330020023029001409860020024888888966002603801d132598009815800c4c966002603c604e6ea800626464646644b300130310038992cc004c090c0b4dd5000c4c8c8c8c8c8ca6002606e0033758606e00b375a606e009375a606e007303700248888966002607a00d1330263758607801644b3001002899814003112cc00400a26604200a2660420122b30013033303c3754023132323259800982200144c8cc89660026072005132598009824000c4cc0c4dd61823800912cc00400a009133024304900213001304a002411d16411460866ea800e2b300130310028992cc004c1200062660626eb0c11c00489660020050048998121824801098009825001208e8b208a30433754007159800981c00144c96600260900031330313758608e00244b300100280244cc094c1240084c004c12800904745904518219baa0038acc004c0e800a2646464b3001304a0028998199bac304900322598008014566002607c608e6ea800e264646644b3001305000380545904d1bad304d001375a609a004609a00260906ea800e2c823226604e6096004260026098004824a2c8238c120004c120004c10cdd5001c566002605e005132598009824000c4cc0c4dd61823800912cc00400a009133026304900213001304a002411d16411460866ea800e2b3001302e0028992cc004c1200062660626eb0c11c00489660020050048998131824801098009825001208e8b208a30433754007159800981680144c96600260900031330313758608e00244b300100280244cc09cc1240084c004c12800904745904518219baa0038acc004cdc3a401c005132598009824000c4cc0c4dd61823800912cc00400a009133027304900213001304a002411d16411460866ea800e2b30013370e9008001456600260866ea800e00316411116410482090412082410482090412082410460806ea80044cc0740084cc0b8058896600200501e89919912cc004c128006266046609200226008609400b16411c6eb8c11c004c120004dd61823001208830430038b208230420013042001303d37540231640ed13230023042003375a608000481f2264600460800066eb4c0f800903c45903a0c0dc004c0d8004c0d4004c0d0004c0cc004c0b8dd5000c5902c1818002c5902e1bac302e001302e002302e001302d0013028375400316409860540031640a0604c6ea805a2b3001301400e8992cc004c0ac006264b3001301e30273754003132323259800981780144c966002604460566ea800626464b300130320018992cc004c094c0b8dd5000c4c8c8c8c8c8ca60026eb4c0e00066eb0c0e00166eb0c0e00126eb4c0e000e6eb4c0e00092222259800981f00344c966002606260746ea8006264646644b3001304300389919912cc004c11800e2646644b30013049003899810982400c09981900d912cc00400a0451323322598009827000c4cc09cc1340044c010c1380162c8258dd7182580098260009bac304a00241211641186eb4c118004dd698230061823005c590431bad3043001375a608601460860131641006eb4c100004dd698200011820000981d9baa0018b2072303d00b8b2076181c000981b800981b000981a800981a00098179baa0018b205a30310028b205e3031001302c37540031640a8605c0071640b06eb0c0b4004c0b4004c0a0dd5000c590261815000c5902818131baa0168b204840902259800980b180f9baa00289919192cc004c09c00a26600c604c006264b3001301a0018acc004c090dd500140162c812a2b30013012001899192cc004c0a800a00f16409c6eb8c0a0004c090dd50014566002603200313232598009815001401e2c8138c0a0004c090dd50014590222044408860446ea80062c8120c094004c094004c080dd500145901e112cc004c054c078dd500144c8c8c966002604c005133008302500313259800980c800c4c96600260500031323259800980e000c4c966002605600313300d302a0010098b205030263754005159800980a000c4c8c8ca60026eb4c0b00066eb4c0b000e6eb4c0b0009222598009818002403a2c816860580026056002604c6ea800a2c812102418121baa00130270018b204a302337540051598009808800c56600260466ea800a00b1640911640848108c084dd5000c5902318120009812000980f9baa0028b203a22b30013008003899192cc004c024c048dd5180b180b8014528c5282022375a602a00260226ea80122c807900f0c040c044004c040011149a26cac80301", + Type.Tuple([PolicyId, ScriptHash, ScriptHash, ScriptHash, ScriptHash]), + [ + proxyPolicyId, + mintValidator, + stakeValidator, + managementValidator, + yieldOracleValidator, + ], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolStakeProtocolStakeWithdraw { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581" + : "5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolStakeProtocolStakePublish { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581" + : "5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProtocolStakeProtocolStakeElse { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "594a1d010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0024888888888a60022a6600692013765787065637420726571756573742e64657374696e6174696f6e2e6164647265737320213d207969656c645f706f745f6164647265737300168a99801a493265787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c206f75747075745f6964782900168a99801a4934657870656374205b6f75747075745f6964782c202e2e726573745f696e64696365735d203d206f75747075745f696e646963657300168a99801a492c657870656374205b726571756573742c202e2e726573745f72657175657374735d203d20726571756573747300168a99801a495d6578706563740a20202020202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c2061737365742e3173742c2061737365742e326e6429203e3d20726571756573742e616d6f756e7400168a99801a492f65787065637420646174756d2e64657374696e6174696f6e203d3d20726571756573742e64657374696e6174696f6e00168a99801a492f65787065637420726571756573742e6f726967696e203d3d20696e7075742e6f75747075745f7265666572656e636500168a99801a492765787065637420646174756d3a204f72646572446174756d5631203d20646174756d5f6461746100168a99801a492d657870656374207661756c745f646174756d3a205661756c74446174756d5631203d20646174756d5f6461746100168a99801a493365787065637420496e6c696e65446174756d28646174756d5f6461746129203d20696e7075742e6f75747075742e646174756d00168a99801a491765787065637420757364725f6d696e746564203d3d203000168a99801a490f65787065637420666565203e3d203000168a99801a4944657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f656e64203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f656e6400168a99801a4948657870656374207661756c745f646174756d5f6f75742e646966667573696f6e5f7374617274203d3d207661756c745f646174756d5f696e2e646966667573696f6e5f737461727400168a99801a4944657870656374207661756c745f646174756d5f6f75742e70656e64696e675f7969656c64203d3d207661756c745f646174756d5f696e2e70656e64696e675f7969656c6400168a99801a49756578706563740a2020202076616c69646174655f7661756c745f6e6f5f74726173685f746f6b656e73280a2020202020207661756c745f696e7075742c0a2020202020207661756c745f6f75747075742c0a20202020202073657474696e67732e72656769737472792e757364722c0a202020202900168a99801a49b06578706563740a20202020216c6973742e616e79280a20202020202074782e696e707574732c0a202020202020666e28696e70757429207b0a2020202020202020696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d2073657474696e67732e636f6e6669672e756e7374616b65645f7969656c645f706f742e7061796d656e745f63726564656e7469616c0a2020202020207d2c0a202020202900168a99801a493d657870656374206e6f5f7363726970745f696e7075742874782e696e707574732c2073657474696e67732e72656769737472792e74726561737572792900168a99801a49696578706563742070726f78795f646174756d3a2050726f7879446174756d5631203d0a20202020626173655f7574696c69746965732e6765745f70726f78795f696e6c696e655f646174756d287265666572656e63655f696e707574732c20706f6c6963795f69642900168a99801a495f657870656374206f7263686573747261746f725f72656465656d65723a2050726f746f636f6c4f7263686573747261746f7252656465656d65725631203d0a2020202020206f7263686573747261746f725f72656465656d65725f6461746100164888888888888888888896600330013019375403f370e90034dc3a4001370e90022444464653001301e3754003302200698110012444b300130060038cc004c094c088dd500248c098c09cc09c0064604c604e003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e95200248888888888ca6002444b30013015302f375400713259800800c00a264b30010018992cc00400600913259800800c566002607000519800801c4c966002603400313259800800c01e264b30010018acc004c0ec00a264b3001301d0018992cc00400601513259800800c566002607c00519800800c032016807201681da01700b805c02d03f181e000a074303837540051598009809000c4c96600200300a8992cc00400601700b805c4cc896600200300d8992cc00400601d00e80744cc89660020030108992cc004006023011808c4c966002608a0070138092084375a003011411460840028200dd680098208014039042181f800a07a375a002607c00500b40fc607800281d0c0e0dd50014025035206a3036375400300840e1008804402201081e0c0e4005037181a9baa0028acc004c03c0062b300130353754005007803206c803206440c860666ea800600a804200a81aa00b005802c015039181b000a0683036002801c00e00700340dc60680028190c0c0dd5001c00502d4888c966002602c00313259800800c00e264b300100180240120090048992cc004c0e000e00d00540d46eb8005038181a800a066303137540091598009805800c56600260626ea801200700240c900240b88170c0bcdd5001c888ca6002003004801a0022223259800980c800c4c9660020030068992cc00400600f007803c01e264b3001303b003802c0210381bae00140ec607000281b0c0d0dd5001c566002601c00313259800800c01a264b3001001803c01e264b3001303b003899809000912cc00400a00f13259800800c6600201500189801181f001a014805c02e01700b40fc607800481d201081c0dd6000c01e00e81d8c0e0005036181a1baa0038acc004c060006264b300100180344c966002003007803c4c96600260760071330120012259800801401e264b30010018cc00402a00313002303e003402900b805c02e01681f8c0f000903a40210381bac001803c01d03b181c000a06c30343754007159800980d000c4c9660020030068992cc00400600f007803c4cc89660020030098992cc00400601500a8992cc004c0f800e26602a00244b300100280544c96600200319800806c006260046082006806a01d00e8074039042181f801207a805a076375800300a805207c303b00140e46eb4004c0e800a00e81d8c0e0005036181a1baa0038acc004c034006264b300100180344c966002003007803c01e264b3001303b003802c0210381bad001803a076303800140d860686ea800e2b3001300c0018992cc00400600d13259800800c01e00f0078992cc004c0ec00e00b00840e06eb400600e81d8c0e0005036181a1baa0038acc004c02c006264b300100180344c966002003007803c01e00f13259800981d801c01601081c0dd7000a076303800140d860686ea800e00a8189031206240c4818903120623032375400491119192cc0040063300122259800980d181a1baa0038992cc00400600513259800800c4c9660020030048992cc0040062b3001303d0028cc00400e264b3001301f0018acc004c0e8dd5001401e00c81da2b300130140018992cc00400600f13259800800c02201100880444c966002608200700a804a07c375c0028208c0f800503c181d1baa0028acc004c078006264b3001001803c4c9660026080005009804207a303e00140f060746ea800a00c81b9037206e30383754003005403100540e9005802c01600a81f0c0ec005039181d801400e007003801a078303900140dc606a6ea800e0028192444b3001301a3034375400713259800800c00a264b30010018992cc00400600913259800800c4c966002607400315980099b8948010c0e400600d13259800981f80244c9660026042003159800981e1baa006804c02103d4566002602c00313259800800c026264b3001001805402a015132598009821801c0320168200dd6800c0290431820000a07c303c375400d1598009810000c56600260786ea801a01300840f500840e481c9039181d1baa005803a0783014303900140dd00640ec6ea800600b005802c01503e181d800a072303b002801c00e00700340f0607200281b8c0d4dd5001c005032488966002603460686ea800e264b300100180144c966002003003801c00e0071332259800800c016264b3001001803401a00d13259800981f801c02200e81e0dd6800c01903f181e000a074375c002607600481e0c0e4005037181a9baa003800a064911192cc004c06c006264b3001001801c4c9660020030048024012264b3001303d003803401503a1bad001802207a303a00140e0606c6ea80122b300130100018acc004c0d8dd5002400e00481ba0048199033181a1baa0039112cc004c068c0d0dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b3001001803c01e00f0078992cc004c10000e2b30013021303b375400d13259800800c026264b3001001805402a01500a899912cc00400601913259800800c03601b00d806c4c966002608c00719800805403e01c80a201c8218dd7000a08c304300141046eb8004c1080090431820000a07c303c375400d00840e500840f46eb8005040181e800a076303d002802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c9303137540029111114c00488966002604060746ea800e264b300100180144c96600200313259800800c012264b3001001802c01600b1332259800800c01e264b30010018acc004c11800a330010068cc00400601300840390084041008410d00880440220108238c1100050421bad0013043002802a088304100140fc6082005003801c00e0068210c0fc00503d181d9baa003800a0709112cc004c080c0e8dd5001c4c9660020030028992cc004006264b300100180244c966002003005802c01626644b3001001803c4c966002003008804402226644b300100180544c96600200313259800800c032264b3001001806c03601b132598009826001c6600201919800802403e01c80a201c80b201c8248dd6800c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e1222598009810181d1baa0038992cc00400600513259800800c4c9660020030048992cc00400600b005802c4cc89660020030078992cc00400601100880444cc896600200300a8992cc00400601700b805c4cc896600200300d8992cc004006264b3001001807c4c96600200301080844c966002609e00719800807c66002009159800800c046264b3001001809404a025012899912cc00400602913259800800c05602b01580ac4c96600260a800701780b20a2375c00282a0c14400504f1bae00130500024144609c002826202280ba02280ca0228260dd6000c0420208278c13000504a1826001403a01d00e807209a304a00141206eb4004c12400a0168250c11c0050451bad0013046002804208e304400141086eb4004c10c00a00a8220c10400503f1820801400e007003801a084303f00140f460766ea800e00281c2444b30013020303a375400713259800800c00a264b30010018992cc00400600913259800800c01600b005899912cc00400600f13259800800c022011008899912cc00400601513259800800c4c96600200300c8992cc00400601b00d8992cc004c13000e3300100c8cc0040122b300100180744c96600200300f807c03e01f1332259800800c046264b3001001809404a0250128992cc004c14400e02901341386eb80050511827000a098375c002609a0048270c12c0050494039014403901640390491bac001806c03504c1824800a08e3049002805c02e01700b4128608e0028228dd6800982300140210471822000a084375a00260860050054110608200281f8c10400a007003801c00d042181f800a07a303b375400700140e122232598009810800c4c9660020030038992cc0040062b300130420028cc00400600b004402900440fd00480240120088218c10000503e181e1baa0048acc004c058006264b3001001801c4c966002003159800982100145660026046607a6ea8006264b3001001802c4c96600200313259800800c01e264b30010018acc004c11800a330010038cc004006013008403d008403d008410d00880440220108238c1100050421822001401a00d006803208a30420014100607c6ea800600881da00881fa00900480240110431820000a07c303c375400900240e481c8c0e8dd5001c566002603a606e6ea801e264664464b30013021303b375400313322598009811981e9baa0018cc004dd69820981f1baa0019820981f1baa301a303e375400d2225980080145300103d87a80008acc004c0980062602e66086608800497ae08cc00400e608a005337000029000a00640f8821244646600200200644b30010018a508acc004c00cc1140062946266004004608c00281f9043488966002603660806ea8c110c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130203045375460920074a14a2821a26609130014a14c103d87a8000a60103d8798000410c660906e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c12c00400e29462660040046098002822904944cc122600294298103d87a8000a60103d8798000410c660906e9c0092f5c11330489800a51a60103d87a8000a60103d8798000410c660906e9ccc120dd400080125eb8104320863758608e60900026eb4c11c008cc008008c11c00504444ca6002003004801d200040044444b30010038acc00400a2003153304349112657870656374205b5d203d206c6973745f6200164119159800801454cc10d2411d657870656374205b622c202e2e726573745f625d203d206c6973745f6200168cc0040126092007304900299912cc004c01c00a266e0000cdd6981198239baa0028a99822a4811a6578706563742076616c69646174696f6e2872657175657374290016411060900066eb4c120009004208c4119153303f49012e6578706563742076616c69646174655f756e697175655f6f757470757473286f75747075745f696e646963657329001640f9222323322330020020012259800800c00e2646644b30013372200e00515980099b8f0070028800c01904444cc014014c12c0110441bae3044001375a608a002608e0028228c8c8cc004004018896600200300389919912cc004cdc8804801456600266e3c02400a20030064115133005005304c00441146eb8c114004dd598230009824000a08c14bd6f7b6300a400122259800981318201baa0038992cc00400600513259800800c00e007003899912cc00400600b13259800800c01a00d006899912cc00400601113259800800c026013009899912cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c1bad001304d002804a09c304b00141246eb4004c12800a00c8258c1200050461bad0013047002801a0903045001410c60826ea800e00281f24608460866086608660866086608660860032232330010010032259800800c52f5c1133225980099baf304730443754608e60886ea8c080c110dd5001180c998231ba90054bd7044cc118008cc0100100062660080080028208c114004c11800504348c108c10cc10cc10c0064444646600200200a44b300100189982319bb0375200a6ea00112f5bded8c113298009bae30440019bad304500198248012444b30013372001200713304a337606ea4024dd4004002c56600266e3c02400e33001009804400a46609666ec0dd48051ba80010028800a00e89982519bb037520066ea0008cc018018005045208a1823800a08a91111919800800802912cc00400626608c66ec0dd48029ba60044bd6f7b63044ca60026eb8c1100066eacc11400660920049112cc004cdc8004801c4cc128cdd81ba9009374c01000b15980099b8f0090038cc00402601100291982599bb037520146e9800400a2002803a26609466ec0dd48019ba60023300600600141148228608e002822a4b30010018a518a50410112222232598009814800c00a260060028208cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6090003375a609200333003003304d002402460960028248dd598230019bae304300133003003304800230460014111222329800800c012006800888966002005159800800c528c528208a8acc00400629422b300133004304700230470018cc00400e60900053048001400d14a08209045208a9112cc004c098c100dd5001c4c9660020030028992cc004006264b300100180244c96600200313259800800c01a264b30010018992cc00400601113259800982680146600200f19800802c4c966002605e00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604800313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a264b300130570038acc00400602713259800800c05202901480a44cc89660020030168992cc00400602f01780bc05e264b3001305c00380cc0610591bae001417060b200282b8dd7000982c00120b23056001415101341506eb0006025012415c60a80028290dd68009829801403d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002605c00313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a0251332259800800c052264b300100180ac056264b3001305a0038acc00400602d13259800800c05e02f01780bc4cc89660020030198992cc00400603501a80d406a264b3001305f00380e406d05c1bae001417c60b800282d0dd7000982d80120b83059001415d016415c6eb000602b015416860ae00282a8dd6800982b0014049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009818000c4c96600200300b8992cc00400601900c80644cc896600200300e8992cc00400601f00f8992cc004c15000e2b300100180844c966002003011808c0460231332259800800c04e264b300100180a40520290148992cc004c16400e02d01541586eb8005059182b000a0a8375c00260aa00482b0c14c00505140410511bac001807c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604600313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f13259800982a001c0460208288dd6800c03d0541828800a09e375a00260a000500c4144609c0028260c128dd50024566002604400313259800800c02e264b300100180640320191332259800800c03a264b3001001807c03e01f1332259800800c046264b3001001809404a02513259800982b801c05202682a0dd6800c049057182a000a0a4375a00260a600500f415060a20028278dd6800982800140310511827000a098304a37540091598009810800c4c96600200300b8992cc00400601900c80644c96600260a200700e806a09c375a00300c4144609c0028260c128dd5002456600266e1d200e0018992cc00400601713259800800c03201900c8992cc004c14400e01d00d41386eb40060188288c13800504c18251baa004805208e411c8239047208e411c823904718241baa003804a02e804a034804a094304b00141246096005007803c01e00e8260c1240050471824801401600b005802a09430470014114608e005003801c00e0068240c11400504318209baa003800a07c912cc00400629344c966002003149a264b3001337206eb8c104c11400cdd71820800c4cc010010cc110004c11800a2a660809201326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f72646572001640fc60880028210c1100050414dc4a40013710900024444444444444444444453001305237540293013013914c004cc0500088cdd7982c982b1baa305930563754606460ac6ea8004c0accc160dd480125eb8294294505248896600266e24dd69819182b1baa00248002200713370200664653001375a60b6003375a60b660b80033259800981f182c1baa001899912cc004c100c168dd5000c56600266e24cdc09bad305e305b375400200490405d5b81c400a2a660b2920129657870656374206869202d206c6f203c3d206d61785f646966667573696f6e5f726174655f7370616e0016416115330594912865787065637420536f6d6528686929203d206765745f74785f75707065725f626f756e6428747829001641606eb4c170c164dd5000992cc004c0d0c164dd5000c4c0c0cc170c174c168dd5000a5eb822980103d87a8000415c60b860b26ea8c0d4c164dd5180a182c9baa0048a9982ba492865787065637420536f6d65286c6f29203d206765745f74785f6c6f7765725f626f756e64287478290016415864b30013033305837540031302f3305b305c3059375400297ae08a6103d87a8000415860b660b06ea8c16cc160dd51809982c1baa0039bad305b0024888966002b30013371200290004528c4cdc480180120b28a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01105920b2182d800982d182b1baa002414d22329800800c00e00480088896600200510018994c00401260ba00798008014dd7182c000cdd5982c800c88888c966002602a00300289801800a0b832329800800c01a00a80088896600200510018994c00401260ce00798008014dd71831000cdd69831800c01501b20083065002418ca0268081004182d80120b291919800800801112cc004006297adef6c608991982c99bb03056001374c64660020026eacc160008896600200314bd6f7b63044c8cc170cdd8182c8009ba8300e375a60b40026600600660bc00460b800282d0cc00c00cc16c008c1640050574888966002607800314a3133712002646600200200a44b30010018a4001133225980099baf305e305b375400400f13370000330013756606e60b66ea800a6eb8c17801a6eb8c0dc01901844005058182e00099801001182e800a0b441513003003488888888ca600244646600200200444b30010018a5eb822660c464b30013046306037540031306430613754003153305f4913965787065637420536f6d65287265717565737429203d206c6973742e617428616c6c5f72657175657374732c20726571756573745f69647829001641786600a0086eb4c18c004cc008008c19000506148888c966002608c60c06ea8006264b30013375e60ca60c46ea8c194c188dd5181f18311baa001303733064375200a97ae08acc004c0f260026eacc0f8c188dd5181f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018998331ba898009bab304030643754608060c86ea800e00d4890455534472004084660cc002660cc00697ae082ba04082bc15e0af05741a460cc60c66ea80060aa8300c0fcc188dd5181f18311baa0018a998302481566578706563740a202020206173736574732e7175616e746974795f6f6628696e7075742e6f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d15330604914765787065637420696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013565787065637420536f6d6528696e70757429203d206c6973742e617428696e707574732c207661756c745f696e7075745f69647829001641786600a00800322223259800982318301baa0018992cc004cdd7983298311baa306530623754002606e660c86ea40152f5c1159800981e4c004dd5981f18311baa001802d2210d7374616b696e675f7661756c7400407d13259800982398311baa0018992cc004006330010018acc004cdd7980e98321baa0034c103d87a80008998331ba898009bab304030643754007006a4410455534472004084660cc002660cc00697ae08a99831248126657870656374206f75747075742e7265666572656e63655f736372697074203d3d204e6f6e6500164185057408105782bc15e0ae8348c198c18cdd5000c54cc18524012d65787065637420496e6c696e65446174756d28646174756d5f6461746129203d206f75747075742e646174756d00164180607e60c46ea80062a660c092014c657870656374206173736574732e7175616e746974795f6f66286f75747075742e76616c75652c207374616b696e675f7661756c742c20227374616b696e675f7661756c742229203d3d20310016417d153306049141657870656374206f75747075742e616464726573732e7061796d656e745f63726564656e7469616c203d3d20536372697074287374616b696e675f7661756c74290016417c60c860c26ea80062a660be92013865787065637420536f6d65286f757470757429203d206c6973742e6174286f7574707574732c207661756c745f6f75747075745f69647829001641786600a008003222222225980099baf30673064375400e60ce60c86ea801a2b30013375e608260c86ea801cc100c190dd500344c9660033001001a5191112cc0040062603000514a0833101844c96600266e240100062b30013371200200710018a998322481216578706563742064656c697665726564203c3d206d61785f64656c6976657265640016418d1533064491216578706563742064656c697665726564203e3d206d696e5f64656c6976657265640016418d30010019bae30680049bae3068306900440891533063490149657870656374206173736574732e726564756365286e65742c20547275652c20666e285f702c205f6e2c207174792c2061636329207b2061636320262620717479203e3d2030207d29001641886601a6eacc100c190dd500398064c004dd71833802cdd718339834002cc060011222598009826000c402e3300100b801cc8c8008c038004cc1a4cdd81ba9002375000297adef6c6091111192cc004c08c0060051300300141a8653001004804401e444453001005801c01200500140188129408501e20c8454cc18924128657870656374206f75747075742e646174756d203d3d2064657374696e6174696f6e2e646174756d0016418515330624912c657870656374206f75747075742e61646472657373203d3d2064657374696e6174696f6e2e61646472657373001641852229800998041bab303b305f3754004600e6eacc0ecc17cdd5181d982f9baa003a5191112cc0040062b30013371e008911008a518acc004cdc7802002c4cdc7801a4410455534472008a50418083022941060202448888966002607401d19800998029bac3064306137540446eb0c0f4c184dd50144dd6183218309baa028981e98309baa0314889660026601e6eb0c19cc190dd50221bae306730643754608060c86ea80062b30019800998119bac306730643754088466ebcc1a0c194dd5183418329baa30413065375400260d060ca6ea8c104c194dd5182118329baa002a50a514185132598009809800c4c8c8cc88cc89660026034005159800acc004c14000a294626032002834226644b3001980080140324464b30013054306f375400313259800800c6600200315980099baf302a3071375400660e860e26ea80122b30013375e609a60e26ea8004c1d0c1c4dd5001c56600266e24dd6982698389baa00398009bab304d30713754609a60e26ea80126eb8c1d00166eb8c13401502e44c966002609660e26ea8006264b30013370e6eb4c1d8004dd6982798399baa005899b87375a60ec60ee0026eb4c140c1ccdd5002c52820e03072375400314a08378c138c1c4dd5000c1a106e419d06e419906e419502241960cb065832a0ec30733070375400306241b4609860de6ea8c12cc1bcdd5001203e899194c004c1c800730013758609860de6ea813e660e2609660de6ea8c12cc1bcdd500619838a60106457355534472004bd704c12cc1bcdd5182618379baa00c4888ca6002003008809404500111112cc00400e2900044cc8966002009070899912cc0040160e713322598009830983d9baa0018992cc006600266ebcc20004c1f4dd5184000983e9baa00500ca50a5141e91337013001375660b260fa6ea8c164c1f4dd5003c00661000260fa6ea8016023375a60b260fa6ea801601b375a60b460fa6ea8016b3001306201489bad3059307d375400b13370666e08dd6982c983e9baa00501401341e880f26002017006802400d00b41e107a183f983e1baa00183b20f2307e0053301f00b375a60fa00a83d8c1ec010c1f0011079183c801983d001a0ee4dd698390012444b30019800983a983b0064c1d4c1d80126eb8c138c1c8dd5182718391baa00f404915980099b87375a609c60e46ea800cdd6982718391baa00b8acc004cdc39bad304f307237540066eb4c13cc1c8dd5005c56600266e1cdd6981598391baa003375a605660e46ea802e2646644b300130240018acc004cdc39bad30783075375400c66e000300162b30013370f30013756607660ea6ea81566eb8c144c1d4dd51828983a9baa012a4410573555344720040c800b159800982d4c004dd5981d983a9baa0559bae30513075375460a260ea6ea804a91104555344720040c9198009bac3052307537540ab30513075375460a460ea6ea804a660ee60a260ea6ea8c144c1d4dd50091983ba61054455534472004bd70400501c4199072454cc1cd2412c6578706563742073757364725f6d696e746564203d3d20746f74616c5f73757364725f64656c697665726564001641c91533073491606578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202b20746f74616c5f73757364725f64656c697665726564001641c906541c8b3001302100a8acc004cdc499b8200300933704002015149a2a660e29215f6578706563740a2020202020207661756c745f757364725f696e202a2063697263756c6174696e675f73757364725f6265666f7265203e3d20746f74616c5f73757364725f64656c697665726564202a20736574746c65645f6265666f7265001641c115980099b890030018a4d153307149012d657870656374207661756c745f757364725f696e203e3d20746f74616c5f73757364725f64656c697665726564001641c08380cdc080780099b8100100a830a0de83020de82fa0de82f20de1839000cc004dd6182518369baa04d9bae3026306d3754609260da6ea802a6eb8c124c1b4dd5182498369baa00a817a01e8a99835a481466578706563742076616c69646174655f7374616b655f696e70757473286f726465725f696e707574732c207374616b655f72657175657374732c20757364725f617373657429001641a86604a6eb0c1b8c1acdd50259bae3048306b3754608e60d66ea8020cc1b4c11cc1acdd5182398359baa0083306d4c01054455534472004bd70454cc1a52413a6578706563742063697263756c6174696e675f73757364725f6265666f7265203d3d2030207c7c20736574746c65645f6265666f7265203e2030001641a11533069491246578706563742063697263756c6174696e675f73757364725f6265666f7265203e3d2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411c65787065637420746f74616c5f757364725f7374616b6564203e2030001641893001003801496600260266eb4c104c194dd5000c56600260266eb4c108c194dd5000c4c128dd6981598329baa0018a50418914a08311022413d061413906122b3001303900e8cc004cc014dd6183218309baa0223758607a60c26ea80a26eb0c190c184dd50144c0f4c184dd5018a444b30013300f375860ce60c86ea8110dd7183398321baa304030643754003159800cc004cc08cdd6183398321baa04423375e60d060ca6ea8c1a0c194dd5182098329baa001306830653754608260ca6ea8c108c194dd5001528528a0c28992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd69837800cdd698379838000ccc1b8c120c1b0dd5182418361baa0093306e4c106457355534472004bd704cc098dd6183798361baa04c375c609260d86ea8c120c1b0dd5004a4444b30019800800c03e4464b300130573072375400313259800800c6600200315980099baf302d3074375400660ee60e86ea80122b30013375e60a060e86ea8004c1dcc1d0dd5001c56600266e24dd69828183a1baa00398009bab30503074375460a060e86ea80126eb8c1dc01a6eb8c14001903144c966002609a60e86ea800626464b30013370e6eb4c1e8008dd69829983b9baa0068acc004cdc39bad307a001375a60a860ee6ea801a266e1cdd6983d183d8009bad303d3077375400d14a083a22941074183d000983a9baa0018a5041c860a260e86ea80060d6838a0d4838a0d2838a0d0812a0d106883441a1079183b18399baa001832a0e0304f30723754609c60e46ea8009022456600266e1e60026eacc0d8c1c0dd50284dd7182618381baa304c3070375401b48810573555344720040b46048019132329800983a800e60026eb0c13cc1c8dd50294cc1d0c138c1c8dd5182718391baa00f330744c1054455534472004bd704c138c1c8dd5182798391baa00f4888ca600200300780ac05100111112cc00400e2900044cc8966002009073899912cc0040160ed13322598009832183f1baa0018992cc006600266ebcc20c04c20004dd51841809840009baa00500ca50a5141f51337013001375660b86100026ea8c170c20004dd5003c0066106026100026ea8016025375a60b86100026ea801601b375a60ba6100026ea801666e04cdc199b82375a60b86100026ea801405805cdd698231840009baa0054085300100b8034012006805a0f683e8c20804c1fcdd5000c1e507c184080802998110059bad30800100541f860fc00860fe00883e0c1f000cc1f400d07a26eb4c1d400922259800cc004c1e0c1e403e60f060f2009375c60a260ea6ea8c144c1d4dd5009202a8acc004cdc39bad3051307537540066eb4c144c1d4dd5007456600266e1cdd69829183a9baa003375a60a460ea6ea803a2b30013370e6eb4c0b8c1d4dd50019bad302e3075375401d132598009812800c56600266e1c008cdc0807004c56600266e1cdd6983c983b1baa0043370201a025159800982dcc004dd5981e183b1baa0569bae30523076375460a460ec6ea804e91104555344720040cd198009bac3053307637540ad30523076375460a660ec6ea804e660f060a460ec6ea8c148c1d8dd50099983c261054455534472004bd704cdc0005000a03a833a0e68a9983a24815d6578706563740a202020207661756c745f646174756d5f6f75742e63697263756c6174696e675f7375736472203d3d2063697263756c6174696e675f73757364725f6265666f7265202d20746f74616c5f73757364725f6275726e6564001641cd153307449143657870656374207661756c745f757364725f6166746572203d3d207661756c745f757364725f6265666f7265202d20746f74616c5f65786368616e67655f76616c7565001641cd06641cc66e04cdc0804001004c191072418d072418907241850720c1d400660026eb0c134c1c0dd50284dd7181498381baa304c3070375401b375c609860e06ea8c130c1c0dd5006c0c9012454cc1b92412a6578706563742073757364725f6275726e6564203d3d202d746f74616c5f73757364725f6275726e6564001641b5153306e4914b6578706563742076616c69646174655f756e7374616b655f696e70757473286f726465725f696e707574732c20756e7374616b655f72657175657374732c2073757364725f617373657429001641b4329800800c02e97ae10101000081010000200222259800801440063300100398390014c8c966002603e6eb4c0d8c1c0dd5001456600266e24dd6981b18381baa0020018998391ba8337006eb4c1cc00cdd6981b18381baa00233072375066e00dd69839983a001800a5eb822a660dc92012065787065637420722e666f7266656974203c3d20726571756573745f75736472001641b5153306e4911565787065637420722e666f7266656974203e3d2030001641b466e0ccdc11bad304b306f375400200a00c60e2004801906f454cc1a524011965787065637420736574746c65645f6265666f7265203e2030001641a11533069491236578706563742063697263756c6174696e675f73757364725f6265666f7265203e2030001641a115330694911c657870656374207661756c745f757364725f6265666f7265203e2030001641a06eb4c1b0c1a4dd50014c004006005049404c60d40026eb4c1a8008c1a800660026eb0c1a0c194dd5022cdd7180f18329baa304130653754005375c608260ca6ea8c104c194dd500140a5008454cc18d2411d65787065637420746f74616c5f73757364725f6275726e6564203e2030001641893001003801496600260266eb4c104c194dd5000c4c04cdd6982118329baa0018a504188811209e830a09c830914a082f105e0896600266e2000520008a6103d87a8000899804801000a0b422a6607892013665787065637420536f6d65287661756c745f6f75747075745f69647829203d2065787472612e7661756c745f6f75747075745f696478001640ec6eb4c0fcc0f0dd5000981f98201820182018201820181e1baa0038a9981d24813465787065637420536f6d65287661756c745f696e7075745f69647829203d2065787472612e7661756c745f696e7075745f696478001640e4600260766ea8008c0f0c0e4dd50009181e981f181f181f181f000981d981c1baa0078a9981b2493665787065637420457865637574654f72646572732872656465656d657229203d206f7263686573747261746f725f72656465656d6572001640d49111112cc004c08c01e264b3001001813c4c96600200315980098220014566002604a607e6ea8006264b3001001814c4c96600200313259800800c0ae264b30010018992cc00400605b13259800800c0ba05d132598009825801c5660026058608c6ea801a264b300100181844c966002003031818c4cc89660020030338992cc004006069034899912cc00400606d13259800800c0de06f037899912cc00400607313259800800c0ea07503a899912cc00400607913259800800c4c96600200303e8992cc0040062b3001305b002899819007112cc00400a26606801a44b30010028cc00401e330010058acc004c100c168dd500c44c9660020030448992cc004006264b300100182344c966002003159800983180144cc8966002608c00313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a058827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0ec006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40b104f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b1598009822800c4c96600200304a8992cc00400609704b8992cc004c1a000e26607e00244b3001002803c4c96600200319800800c4c008c1ac00e09e816a09f04f827c13d06c183480120ce82620ca375800304b825a0d03065001418c60c26ea80162b300130470018992cc00400609513259800800c12e0971332259800800c136264b30010018acc004c1a800a26608200644b30010028acc004c134c19cdd5001c4c9660020030518992cc0040060a505282944cc89660020030548992cc0040060ab05582ac4c96600260e400700f82b20de375a00305541c860de0028368dd68009837001414906f1836000a0d430683754007050419513259800800c6600200313002306d003828a05e828c1460a305141b860d6004834a09c833a09d04e827413906b1834000a0cc375800260ce00504b825a0d03065001418c60c26ea80162b3001303a0018992cc00400609513259800800c12e097132598009834001c4cc0fc00489660020050078992cc00400633001001898011835801c13d02e413e09f04f827a0d83069002419d04c41946eb000609704b41a060ca0028318c184dd5002c566002607200313259800800c12a264b3001001825c12e264b3001306800389981f800912cc00400a00f13259800800c6600200313002306b003827a05c827c13e09f04f41b060d2004833a0988328dd6000c12e0968340c19400506318309baa0058acc004c0e0006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b8748038006264b300100182544c96600200304b825c4c96600260d000713303f0012259800801401e264b30010018cc0040062600460d600704f40bd04f827c13e09e8360c1a400906741310651bac001825c12d0681832800a0c63061375400b15980099b87480400062b30013061375400b002824a0c4824a0bc417882f105e20bc417882f105e20bc19800800c4cc0e806489660020050248992cc00400609504a8992cc00400609713259800800c13209904c82644cc896600200304e8992cc0040062b3001306b0028cc0040062600e60d601104f40c504f41a104f827c13e09e8360c1a40050671bae001306800241a460cc0028320dd6000c12a0948338c190009062411d023182f1baa003823a0c0823c11e08f047419060c200282f8c18400a08b045822c115062182f800a0ba305b375403104341610434099043409913259800800c112089044899180198308021bad00182220c2305e002417113259800800c10a0850428991801982f8021bad00182120be305c002416903f416103f81fc0fe07e82e0c164005057182c80140f607b03d81ea0b4305700141546eb4004c15800a07482b8c1500050521bad001305300281ba0a83051001413c6eb0004c14000a0690344144609c0028260dd6000982680140c60628270c12c00504918239baa006817a088817a090375800302e817209630480014118609000502c81640b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b159800980c003c4c9660020030278992cc0040062b300130440028acc004c094c0fcdd5000c4c9660020030298992cc004006264b3001001815c4c96600200302c81644c9660026092007159800981518221baa0048992cc00400605d13259800800c4c9660020030308992cc0040062b3001304d0028acc004c0b8c120dd5001c4c9660020030328992cc004006264b300100181a44c96600200303581ac4cc89660020030378992cc004006071038899912cc00400607513259800800c0ee07703b899912cc00400607b13259800800c0fa07d03e899912cc00400608113259800800c1060830418992cc004c17800e2b3001303f3059375402113259800800c10e264b300100182241120891332259800800c11a264b3001001823c11e08f132598009832001c5660020270488992cc004006093049824c4cc896600200304b8992cc00400609904c82644c96600260d200715980080ac136264b3001001827413a09d1332259800800c142264b3001001828c1460a3132598009837001c66002045133045026225980080140be264b300100182ac156264b300100182b44c96600200305782bc15e0af1332259800800c166264b30010018acc004c1d800a3300100189803983b004416903c4169073416a0b505a82d20ee307400141c86eb8004c1cc0090741838800a0de375800305582aa0e4306f00241b505240b905241ac6eb40060a28370c1ac0050691bad001306a01682720d63068015419904d41986eb40060988348c1980050641bad0013065014824a0cc3063013418504841846eb400608e8320c18400505f1bad001306000282220c2305e001417060b46ea804208482ba08482d8dd6800c10505e182d800a0b2375a00260b400503e416c60b000282b0dd6800982b80140ed058182a800a0a6375800260a800503881c20aa305200141406eb0004c14400a06b0354148609e0028268c13c00a067033819c0cd0501826800a0963049375400703141190314129031818c0c60628270c12c005049182580140be05f02f817a0983049001411c608a6ea801205a821205a8230dd6000c0b20588248c118005044182300140aa05502a815208e3044001410860806ea800605081ea050820a05102881440a10451821000a080303e375401b02640ec81d880d406a03501a40dc664464b30013019303337540031303432337606070002607060720026eb0c0dcc0d0dd5000c54cc0c924018b65787065637420536f6d652850616972285f2c2072656465656d65722929203d0a202020206c6973742e66696e64280a20202020202072656465656d6572732c0a202020202020666e287061697229207b20706169722e317374203d3d205769746864726177507572706f736528536372697074287363726970745f686173682929207d2c0a2020202029001640c4646600200200644b30010018a60103d87a80008992cc004cdd7981a80099ba548010cc0e0c02ccc0e0dd480225eb812f5c11300c33038374e66070606a00266070606c00297ae04bd7044cc00c00cc0e8009033181c000a06c37566068606a606a606a606a606a606a606a606a606a60626ea8044dd7181a18189baa00132323259800800c566002603060646ea8006264b300100180ec4c96600200301e80f407a03d1332259800800c082264b30010018acc004c0f000a2b3001301d3037375400313259800800c08a264b30010018992cc00400604913259800800c4c9660020030268992cc0040062b300130420028acc004c08cc0f4dd5002c4c9660020030288992cc004006264b300100181544c96600200313259800800c0b2264b30010018992cc00400605d13259800800c4c9660020030308992cc004006264b300100181944c96600200313259800800c0d2264b30010018992cc00400606d13259800800c4c9660020030388992cc004006264b300100181d44c966002003159800982b00146600202719800808c6600201f19800806c6600201719800804c6600200f19800802c6600200719800800c566002606e60a26ea805e264b300100181e44c96600200303d81ec0f607b1332259800800c0fe264b30010018204102081040899912cc00400608513259800800c10e087043821c4cc89660020030458992cc00400608d046823411a26644b300100182444c966002003049824c1260931332259800800c12e264b30010018acc004c19c00a330010018acc004c120c188dd501344c96600200304d8992cc00400609d04e899912cc0040060a113259800800c56600260d800513304300322598008014660020071038829a07a8992cc0040062b30013050306a375400313259800800c156264b300100182b415a26644b300100182c44c96600200305982cc16626644b300100182dc4c96600200305c82e4172264b300130780038acc00401e0bb13259800800c17a0bd05e82f44cc89660020030608992cc0040060c3061830c186264b3001307d00389808183e808c18907a1bae00141f460f400283c0dd7000983c80420f4307700741d505d41d46eb40060b883c0c1d40050731bad001307400282ca0ea307200141c06eb0004c1c400a0ad05641c860de0028368c1acdd5000c15106841520a905482a20e0306d00241ad05141a5051828c1460a28368c1a80050681bac0013069002827413906a1833800a0ca3063375404d04c418104c40d504c419104c82641320988340c1940050631bae0013064002419460c40028300dd7000983080120c4305f00141746eb8004c17800905f182e000a0b4375c00260b600482e0c1640050571bae0013058002416460ac00282a0c148dd500bc0ed04f40ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed02340ed05340ee07703b81da0ae3054001414860a800503981cc0e607282a8c148005050182900140de06f03781ba0a63050001413860a000503581ac0d606a8288c13800504c182700140ce067033819a09e304c00141286098005031818c0c60628268c128005048182500140be05f02f817a09630480014118609000502d816c0b605a8248c118005044182300140ae05702b815a08e304400141086088005029814c0a60528228c108005040181f1baa005813a076813a07e813c09e04f027410c608000281f0c10000a04b025812c095041181f000a078303e002811c08e04702340fc607800281d0c0e0dd5000c08503540850394086043021810a07a303a00140e06eb8004c0e400903a181b800a06a3033375400301c40c101c80e407203881c0c966002603060646ea8006264b30013018303337540031303730343754003153303249013365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d001640c4602060666ea8c03cc0ccdd5181b18199baa0018a99818a494a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f696429001640c064660020026eb0c03cc0ccdd5009912cc0040062980103d87a80008992cc004c8cc004004c014dd59809181b1baa30123036375400444b30010018a508acc004cdc79bae303a0010338a51899801001181d800a06840e11300b330370014bd7044cc00c00cc0e4009032181b800a06a30010012259800800c52f5c11330343031303500133002002303600140cc2223259800980a800c4c9660020030038992cc0040060090048024012264b3001303700380340150341bae00140dc60680028190c0c0dd50024566002601400313259800800c00e264b300100180240120090048992cc004c0dc00e00d00540d06eb8005037181a000a0643030375400900240b48168c0b8dd5001a2b30013008003899192cc004c024c08cdd5181398140014528c5282042375a604c00260446ea80122c80f901f0c084c088004c084011149a2a6602e9211856616c696461746f722072657475726e65642066616c7365001365640581" + : "5927b4010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966003300130043754013370e90034dc3a4001370e9002244446465300130093754003300d00698068012444b300130060038cc004c040c034dd500248c044c048c048006460226024003223233001001003223300300130020029b874800a6e1d20089b874802a6e1d200c9ba5480026e952002912cc004c024c038dd500144c8c8cc8966002602e0070058b2028375a60280026eb8c050008c050004c03cdd500145900d24444444444530012223259800980b000c4c8c96600260440050048b203e375c604000260386ea800e2b3001300b0018992cc004c08400626601a6eb0c08000489660020050058cc00401e6044005130013023002401c81022c80f0c070dd5001c566002602a003132598009810800c4cc034dd61810000912cc00400a00b19800803cc08800a260026046004803902045901e180e1baa0038acc004c05c0062646644b300130230018998079bac30220012259800801401e33001009981200144c004c09400900920448b2040375a6040002604200260386ea800e2b3001300a001899192cc004c08800a00916407c6eb4c080004c070dd5001c56600260120031323259800981100140122c80f8dd69810000980e1baa0038acc004c02000626464b3001302200280245901f1bae3020001301c375400716406880d101a2034406880d101a180d1baa00291192cc004c05400626464b3001302100280245901e1bae301f001301b37540071598009805000c56600260366ea800e00516407116406480c8c064dd5001488c966002602a0031323259800981080140122c80f0dd7180f800980d9baa0038acc004c02800626464b3001302100280245901e1bae301f001301b375400716406480c8c064dd500148966002602860326ea800a2646464b30013021002899192cc004c0640062b3001301f37540050068b20408acc004c03800626464b300130250028044590221bad3023001301f3754005159800980c000c566002603e6ea800a00d16408116407480e901d180e9baa00130200038b203c3259800980e800c56600266e252004301c0018b44c030c07000501b45901e1baa301f001301f001301a3754005164061223259800980a800c4c8c96600260420050048b203c375a603e00260366ea800e2b3001300a0018acc004c06cdd5001c00a2c80e22c80c9019180c9baa00248888a6002600a00b2259800980c980f1baa00289919192cc004c09800a266010604a006264b3001301d0018992cc004c0a000626464b300130200018992cc004c0ac00626601a60540020131640a0604c6ea800a2b3001301500189919194c004dd69816000cdd69816001cdd698160012444b3001303000480745902d0c0b0004c0ac004c098dd5001459024204830243754002604e00316409460466ea800a2b300130120018acc004c08cdd500140162c81222c810902118109baa0018b204630240013024001301f3754005164075223259800980d000c4c966002604a00313300a30240010038b2044302037540071598009807800c4c966002604a00313259800980e18109baa00189919192cc004c0a400a266014605000626601400200f164098604e002604e00260446ea80062c8100c0900062c8110c080dd5001c5901e203c301e37540052259800980c980f1baa0028991919192cc004c09c00a264b3001301e30233754003132323322598009816001c4cc03cc0ac02002a2c8148dd718148009bae3029002302900130243754003164088604c0091640906eb8c094004c094004c090004c07cdd500145901d244446645300133223259800981018129baa001898131919bb0302a001302a302b00137586052604c6ea80062c8120c8cc00400400c896600200314c0103d87a80008992cc004cdd7981380099ba548010cc0a8c048cc0a8dd480225eb812f5c1130133302a374e66054604e00266054605000297ae04bd7044cc00c00cc0b00090261815000a0503756604c604e604e604e604e604e604e604e604e604e60466ea8060dd7181318119baa002912cc004c07cc090dd500144c8c8c8cc8966002605c007133008302d0051330130020068b2056302b001375a605600460560026054002604a6ea800a2c811a44b3001301f302437540051323232323298009bad302d0019bad302d0049bad302d003981680124444b30013032005899806181880489980b80080545902f0c0b4004c0b0004c0ac004c0a8004c094dd500145902348966002603e60486ea800a264646464646530013758605c003375a605c00b375a605c009375a605c007302e00248888966002606800d13300e303300b133019001132332259800981b801c03e2c81a0dd7181a0009bae303400630340058b20621817000981680098160009815800981500098129baa0028b2046912cc004c07cc090dd500144c8c8c8c8ca60026eb0c0b40066eb4c0b40126eb4c0b400e605a00491112cc004c0c8016266018606201226602e0022646644b30013035003806c590321bae3032001375c606400a60640091640bc302d001302c001302b001302a0013025375400516408c9111119912cc004c090006264b3001302f0018992cc004c098c0acdd5000c4c8c8c8cc8966002606a00713259800981618189baa00189919191919194c004c0ec0066eb0c0ec0166eb4c0ec0126eb4c0ec00e6076004911112cc004c10401a26605a6eb0c10002c896600200513302f006225980080144cc0940144cc094024566002607660806ea80462646464b3001304800289919912cc004c10400a264b3001304c00189981c1bac304b00122598008014012266046609a00426002609c004825a2c8248c11cdd5001c566002606c005132598009826000c4cc0e0dd61825800912cc00400a009133023304d00213001304e002412d164124608e6ea800e2b300130400028992cc004c1300062660706eb0c12c0048966002005004899812182680109800982700120968b209230473754007159800982100144c8c8c966002609c00513303a3758609a00644b30010028acc004c118c12cdd5001c4c8c8cc896600260a800700a8b20a2375a60a20026eb4c144008c144004c130dd5001c5904a44cc098c13c0084c004c14000904d45904b1826000982600098239baa0038acc004c0d400a264b3001304c00189981c1bac304b0012259800801401226604a609a00426002609c004825a2c8248c11cdd5001c5660026068005132598009826000c4cc0e0dd61825800912cc00400a009133025304d00213001304e002412d164124608e6ea800e2b300130330028992cc004c1300062660706eb0c12c0048966002005004899813182680109800982700120968b20923047375400715980099b874803800a264b3001304c00189981c1bac304b0012259800801401226604c609a00426002609c004825a2c8248c11cdd5001c56600266e1d20100028acc004c11cdd5001c0062c82422c8229045208a41148229045208a41148228c110dd500089981300109981a80b112cc00400a03f1323322598009827000c4cc0a8c1340044c010c1380162c8258dd7182580098260009bac304a0024120608e007164114608c002608c00260826ea80462c81fa2646004608c0066eb4c11000904244c8c008c11000cdd6982100120808b207c181d800981d000981c800981c000981b80098191baa0018b206030340058b20643758606400260640046064002606200260586ea80062c8150c0b80062c8160c0a8dd5003c5660026032003132598009817800c4c966002604c60566ea80062646464b300130330028992cc004c0a8c0bcdd5000c4c8c966002606c00313259800981698191baa00189919191919194c004dd6981e000cdd6181e002cdd6181e0024dd6981e001cdd6981e001244444b300130420068992cc004c0e4c0f8dd5000c4c8c8cc8966002608e0071323322598009825001c4c8cc8966002609a00713302a304c01813303901b2259800801408e2646644b300130520018998171828800898021829002c5904f1bae304f00130500013758609c00482622c8250dd698250009bad304a00c304a00b8b208e375a608e0026eb4c11c028c11c0262c8220dd698220009bad30440023044001303f37540031640f460820171640fc303c001303b001303a00130390013038001303337540031640c4606a0051640cc606a00260606ea80062c8170c0c800e2c8180dd61818800981880098161baa0018b2054302e0018b2058302a375400f1640a081405660026044604e6ea8016264664464b30013026302b37540031332259800981418169baa0018cc004dd6981898171baa001981898171baa301f302e375400d2225980080145300103d87a80008acc004c0ac0062603866066606800497ae08cc00400e606a005337000029000a00640bc819244646600200200644b30010018a508acc004c00cc0d40062946266004004606c0028181033488966002604060606ea8c0d0c8cc00400400c896600200314bd708103d87a80008101800044c8cc8966003300130253035375460720074a14a281a226607130014a14c103d87a8000a60103d879800040d0660706e9c0092f5c11598009919800800801912cc00400629422b30013370e6eb4c0ec00400e2946266004004607800281b103944cc0e2600294298103d87a8000a60103d879800040d0660706e9c0092f5c11330389800a51a60103d87a8000a60103d879800040d0660706e9ccc0e0dd400080125eb8103420683758606e60700026eb4c0dc008cc008008c0dc00503444ca6002003004801d200040044444b30010038acc00400a20031640d9198008024c0e400e6072005332259800980380144cdc00019bad3028303737540051640d460700066eb4c0e0009004206c8b205e91119199119801001000912cc00400600713233225980099b910070028acc004cdc78038014400600c81aa26600a00a607600881a8dd7181a0009bad3035001303700140d464646600200200c44b3001001801c4c8cc896600266e4402400a2b30013371e0120051001803206c899802802981e002206c375c606a0026eacc0d8004c0e00050360a5eb7bdb18052000912cc004c0a8c0bcdd500144c8c8c8ca60026eb4c0dc0066eb4c0dc0126eb4c0dc00e6eb4c0dc009222259800981e002c0262c81c8606e002606c002606a00260606ea800a2c81724606460666066606660666066606660660032232330010010032259800800c52f5c1133225980099baf303730343754606e60686ea8c094c0d0dd5001180f1981b1ba90054bd7044cc0d8008cc0100100062660080080028190c0d4004c0d800503348c0c8c0ccc0ccc0cc0064444646600200200a44b300100189981b19bb0375200a6ea00112f5bded8c113298009bae30340019bad3035001981c8012444b30013372001200713303a337606ea4024dd4004002c56600266e3c02400e33001009804400a46607666ec0dd48051ba80010028800a00e89981d19bb037520066ea0008cc018018005036206c181b800a06a91111919800800802912cc00400626606c66ec0dd48029ba60044bd6f7b63044ca60026eb8c0d00066eacc0d400660720049112cc004cdc8004801c4cc0e8cdd81ba9009374c01000b15980099b8f0090038cc00402601100291981d99bb037520146e9800400a2002803a26607466ec0dd48019ba60023300600600140d881b0606e00281aa4b30010018a518a5040c112222232598009817000c00a260060028190cdc0002001cdc0a400122232330010010042259800800c4012264664466446600400400244b30010018801c4ca600200b375c6070003375a607200333003003303d0024024607600281c8dd5981b0019bae3033001330030033038002303600140d1222329800800c012006800888966002005159800800c528c528206a8acc00400629422b300133004303700230370018cc00400e60700053038001400d14a08191035206a912cc004c0a8c0bcdd500144c8c8c8ca6002606e0033037003981b8012444b3001303b00489980d181d00389980a8010992cc004c0c8006264653001375a607a003303e0019bad303d0024889660026082005132323322598009822801c04a2c8210dd718210009bae30420023042001375860800051640f8303d001303837540051598009813800c4c8ca60026eb4c0f4006607c003375a607a0049112cc004c10400a264646644b300130450038094590421bae3042001375c608400460840026eb0c10000a2c81f0607a00260706ea800a2b3001303100189919194c004dd6981f000cc0fc0066eb4c0f800e6eb4c0f80092222598009821801c4c8c8cc8966002608e0070148b2088375c60880026eb8c110008c110004dd61821001c590400c0f8004c0f4004c0e0dd500145660026066003132332259800981f800c4c8c8cc896600260860070108b2080375c60800026eb8c100008c100004dd6181f000c5903c1bad303c001303d001303837540051598009813000c4c8c8cc8966002608000700d8b207a375a607a0026eb4c0f4008c0f4004c0e0dd50014566002604a003132323298009bad303e0019bad303e0039bad303e002488966002608400900f8b207e181f000981e800981c1baa0028acc004c09000626464b3001303e002805c5903b1bad303c0013038375400515980099b874803800626464b3001303e002805c5903b1bad303c001303837540051640d881b1036206c40d881b1036206c303637540031640e0303700130360013035001303037540051640b92259800800c5268992cc00400629344c96600266e40dd71818981a8019bae30310018998020021981a000981b001459030181a000a064303400140c5371290004dc4240009111111111111111111114c004c108dd500a4c04c04e4530013301400223375e6092608c6ea8c124c118dd5181b98231baa001303033048375200497ae0a50a51410d2225980099b89375a606e608c6ea800920008801c4cdc080199194c004dd69825800cdd698259826000cc966002608660906ea800626644b30013045304a375400315980099b89337026eb4c138c12cdd500080124101756e0710028b20928b2092375a609860926ea8004c966002607260926ea80062606a66098609a60946ea80052f5c114c103d87a80004120609860926ea8c0e8c124dd5180a18249baa0048b208e3259800981c18241baa0018981a19825982618249baa0014bd7045300103d87a8000411c609660906ea8c12cc120dd5180998241baa0039bad304b0024888966002b30013371200290004528c4cdc480180120948a400115980099b890020048800c4c8cdc199b803370066e08008cdc0802001800a400200266e0400c01104a20941825800982518231baa002411122329800800c00e00480088896600200510018994c004012609a00798008014dd71824000cdd59824800c88888c966002602a00300289801800a09a32329800800c01a00a80088896600200510018994c00401260ae00798008014dd71829000cdd69829800c01501b20083055002414ca02680810041825801209291919800800801112cc004006297adef6c608991982499bb03046001374c64660020026eacc120008896600200314bd6f7b63044c8cc130cdd818248009ba8300e375a609400266006006609c00460980028250cc00c00cc12c008c1240050474888966002608200314a3133712002646600200200a44b30010018a4001133225980099baf304e304b375400400f13370000330013756607860966ea800a6eb8c13801a6eb8c0f0019018440050491826000998010011826800a09441153003003488888888ca600244646600200200444b30010018a5eb822660a464b3001304b30503754003130543051375400316413c6600a0086eb4c14c004cc008008c15000505148888c966002609660a06ea8006264b30013375e60aa60a46ea8c154c148dd5182198291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5182198291baa001802d2210d7374616b696e675f7661756c7400407d13259800982618291baa0018991981000089982b1ba898009bab304530543754608a60a86ea800e00d48810455534472004084660ac002660ac00697ae0305630533754003164144608860a46ea8c10cc148dd5000c59050459050182a18289baa0018b209e330050040019111192cc004c12cc140dd5000c4c96600266ebcc154c148dd5182a98291baa001303c33054375200a97ae08acc004c10660026eacc10cc148dd5000c01691010d7374616b696e675f7661756c7400407d13259800982618291baa001899198100008acc004cdd7980e982a1baa0034c0103d87a800089982b1ba898009bab304530543754007006a4410455534472004084660ac002660ac00697ae08b20a4305630533754003164144608860a46ea80062c82822c8280c150c144dd5000c5904f19802802000c888888896600266ebcc15cc150dd5003982b982a1baa0068acc004cdd79823182a1baa00730453054375400d13259800cc0040069464444b30010018980c001452820ae40611325980099b890040018acc004cdc4800801c40062c82a22c82a26002003375c60b0009375c60b060b200881122c8298cc034dd59822982a1baa007300c98009bae30570059bae30573058005980c0022444b300130510018805c66002017003991900118070009982c99bb037520046ea00052f5bded8c12222232598009811800c00a2600600282d8ca6002009008803c8888a600200b003802400a00280310252810a03c41548b20a48b20a49114c004cc020dd5982018279baa002300737566080609e6ea8c100c13cdd5001d28c88896600200315980099b8f0044881008a518acc004cdc7802002c4cdc7801a4410455534472008a504144828a2941051202448888966002607e01d19800998029bac3054305137540446eb0c108c144dd50144dd6182a18289baa028982118289baa0304889660026601e6eb0c15cc150dd50249bae305730543754608a60a86ea80062b30019800998119bac305730543754092466ebcc160c154dd5182c182a9baa30463055375400260b060aa6ea8c118c154dd51823982a9baa002a50a514149132598009809800c4c8c8cc88cc89660026034005159800acc004c15400a29462603200282ca26644b3001980080140324464b30013059305f37540031323302200115980099baf302a3061375400660c860c26ea80122b30013375e60a460c26ea8004c190c184dd5001c56600266e24dd6982918309baa00398009bab30523061375460a460c26ea80126eb8c1900166eb8c14801502e44c96600260a060c26ea8006264b30013370e6eb4c198004dd6982a18319baa005899b87375a60cc60ce0026eb4c154c18cdd5002c52820c23062375400314a08300c14cc184dd5000c5905f45905f45905f183198301baa0018b20bc3051305f375460a060be6ea800901f44c8c8cc896600330013064306500b98321832801cdd7182918309baa30523061375401c808a2b30013370e6eb4c148c184dd50011bad30523061375401515980099b87375a60a660c26ea8008dd6982998309baa00a8acc004cdc39bad302a306137540046eb4c0a8c184dd500544c8cc8966002604600315980099b87375a60ce60c86ea8014cdc0005802456600266e1e60026eacc0e8c190dd502ccdd7182a98321baa30553064375402348810573555344720040c4009159800982f4c004dd5981d18321baa0599bae30553064375460aa60c86ea804691104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd70400501b4590624590624590624590622cc004c0800262b30013371266e08008020cdc1000804c5268b20c08acc004cdc4801000c5268b20c0418066e04038004cdc09bad30640040098b20be8b20be8b20be8b20be306200198009bac3051305f37540a9330613050305f375460a060be6ea8030cc185300106457355534472004bd704c140c17cdd51828982f9baa00c4888ca6002003008809404500111112cc00400e2900044cc896600260c460ce6ea80062b3001980099baf306b3068375460d660d06ea800801e94294506644cdc04c004dd5982c98341baa30593068375460d600b306b30683754003306b3068375400500c9bad3059306837540050089bad305a30683754005598009831007c4dd6982c98341baa002899b83337046eb4c164c1a0dd500100780720cc406530010069836002cc1b001260d800680322c83322c8330c1a4008cc06c01cdd69834800a0ce1831000cc004dd61827982e9baa0529bae3026305d3754609c60ba6ea802a6eb8c138c174dd51827182e9baa00a817a01e8b20b633025375860bc60b66ea8140dd71826982d9baa304c305b3754010660ba609860b66ea8c130c16cdd50041982ea601054455534472004bd704590594590591bad305c3059375400530010018014139013182d0009bad305a002305a00198009bac305830553754095375c603c60aa6ea8c118c154dd50014dd71823182a9baa304630553754005029402116414d3001003801496600260266eb4c118c154dd5000c56600260266eb4c11cc154dd5000c4c13cdd69815982a9baa0018a50414d14a0829902245905245905222b3001303e00e8cc004cc014dd6182a18289baa0223758608460a26ea80a26eb0c150c144dd50144c108c144dd50182444b30013300f375860ae60a86ea8124dd7182b982a1baa304530543754003159800cc004cc08cdd6182b982a1baa04923375e60b060aa6ea8c160c154dd51823182a9baa001305830553754608c60aa6ea8c11cc154dd5001528528a0a48992cc004c04c0062646466446644b300130190038acc004c06400a2b300130190018994c004dd6982f800cdd6982f9830000ccc178c134c170dd51826982e1baa0093305e4c0106457355534472004bd704cc098dd6182f982e1baa051375c609c60b86ea8c134c170dd5004a4444b30019800800c03e4464b3001305c306237540031323302500115980099baf302d3064375400660ce60c86ea80122b30013375e60aa60c86ea8004c19cc190dd5001c56600266e24dd6982a98321baa00398009bab30553064375460aa60c86ea80126eb8c19c01a6eb8c15401903144c96600260a460c86ea800626464b30013370e6eb4c1a8008dd6982c18339baa0068acc004cdc39bad306a001375a60b260ce6ea801a266e1cdd6983518358009bad303d3067375400d14a0832a2941065183500098329baa0018a50418c60ac60c86ea80062c83122c83122c8310c198c18cdd5000c59061182a18311baa30533062375400481122b30013370f30013756606c60c06ea81566eb8c144c180dd5182898301baa00da450573555344720040b46048019132323259800cc004c198c19c03660cc60ce005375c60a860c66ea8c150c18cdd500820268acc004cdc39bad3054306337540026eb4c150c18cdd5006456600266e1cdd6982a98319baa001375a60aa60c66ea80322b30013370e6eb4c0b0c18cdd50009bad302c30633754019132598009811800c56600266e1cdd6983380219b8100c0078acc004cdc39bad30673064375400466e0402c0422b3001305e98009bab303a306437540b3375c60aa60c86ea8c154c190dd5008d220104555344720040c5198009bac3056306437540b330553064375460ac60c86ea8046660cc60aa60c86ea8c154c190dd500899833261054455534472004bd704cdc0004000a0368b20c48b20c48b20c48b20c43370266e0401a60026eb0c154c18cdd502c4cc194c150c18cdd5182a18319baa010330654c01054455534472004bd704c150c18cdd5182a98319baa0104888ca600200300880b405500111112cc00400e2900044cc896600260cc60d66ea80062b3001980099baf306f306c375460de60d86ea800801e94294506a44cdc04c004dd5982e98361baa305d306c375460de00b306f306c3754003306f306c375400500e9bad305d306c37540050089bad305e306c37540053370266e0ccdc11bad305d306c37540040240266eb4c108c1b0dd5001203a98008034c1c001660e0009307000340191641a91641a860da0046603e00e6eb4c1b400506b001e2c830a2c830a2c830a2c8308c194004c19400660026eb0c148c180dd502acdd7181498301baa30513060375401b375c60a260c06ea8c144c180dd5006c0c901245905e45905e0ca600200300ba5eb84101000081010000200222259800801440063300100398310014c8c966002603e6eb4c0d8c180dd5001456600266e24dd6981b18301baa0020018998311ba8337006eb4c18c00cdd6981b18301baa00233062375066e00dd698319832001800a5eb822c82f22c82f0cdc199b82375a60a060be6ea8004014018c18400900320be8b20b28b20b28b20b2375a60b860b26ea800a60020030028272026305a001375a60b400460b40033001375860b060aa6ea812a6eb8c078c154dd51823182a9baa0029bae304630553754608c60aa6ea800a05280422c829a600200700292cc004c04cdd69823182a9baa001898099bad30473055375400314a082990224590524590522294104f209e112cc004cdc4000a400114c0103d87a8000899804801000a09622c8160dd6981798161baa001302f30303030303030303030302c37540071640a8600260566ea8008c0b0c0a4dd5000918169817181718171817000981598141baa0058b204c3027375400a32323259800980f18119baa00189919912cc004c0ac006264b300130223027375400313232323322598009818801c4c9660026050605a6ea80062646464646464646464653001303b001981d804cc0ec022607600f303b006981d802cc0ec0126076007303b002488888888966002608a0151330243044013133024008133024007133024006133024005133024004133024003133024002133024001133024009159800981d98201baa015899191919194c004dd71824800cc1280066eb8c1240166eb8c1240126eb8c12400e6eb8c124009222222598009828002c4cc0ccc13c014566002608c60966ea80862646464b3001305300289981f9bac3052003225980080144cc0cc00c40ba264b3001304c305137540031323232332259800982d801c4c8c8cc896600260be0071300b305f00c8b20b8375c60b80026eb8c170008c170004dd6182d002c590581bad3058001375a60b000460b000260ae00260a46ea80062c8280c1500090524590501828800982880098261baa0218b20948b209a182480098240009823800982300098209baa0158b207e8b2084181d800981d000981c800981c000981b800981b000981a800981a000981980098171baa0018b205830300058b205c302e001302e002302e001302d0013028375400316409860540031640a06eb8c0a0004c0a4004c090dd5000c59022192cc004c078c08cdd5000c4c966002603c60486ea800626050604a6ea80062c8118c058c090dd5180a98121baa30273024375400316408864660020026eb0c054c090dd500c912cc0040062980103d87a80008992cc004c8cc004004c014dd5980c18139baa30183027375400444b30010018a508acc004cdc79bae302b0010258a518998010011816000a04c40a513011330280014bd7044cc00c00cc0a80090241814000a04c30010012259800800c52f5c113302530223026001330020023027001409044b3001301d30223754005132323259800981500144cc020c0a400c4c966002604200315980098139baa002802c590284566002602c00313232598009816801401e2c8150dd7181580098139baa0028acc004c08000626464b3001302d002803c5902a181580098139baa0028b204a40948128c094dd5000c590271814000981400098119baa0028b204211598009804001c4c8c9660026012601c6ea8c048c04c00a2946294100d1bad3011001300d375400916402c80586018601a00260180088a4d13656400801", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProxyNftProxyNftMint { + public Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" + : "5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + ]), + [utxoRef], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1ProxyNftProxyNftElse { + public Script: Script; + constructor(utxoRef: OutputReference, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "590377010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a4888888888c96600264653001300a00198051805800cdc3a4001300a0024888966002600460146ea800e264b30010058acc004c00cc02cdd5002c56600260186ea80162b30013003300b375464660020026eb0c040c034dd5001912cc004006298103d87a80008992cc004cdd7980918079baa001016899ba548000cc0440052f5c1133003003301300240306022002807a2b3001329800800d2f5c210140004c8cc004004dd59808980918091809180918071baa0042259800800c52f5c113233223322330020020012259800800c400e2646602e6e9ccc05cdd48029980b980a0009980b980a800a5eb80cc00c00cc064008c05c0050151bab3012003375c601e002660060066028004602400280810011112cc00400a2b30010018a518a99806a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164041159800800c54cc035241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180a801803c56600266e3c004dd7180a80144cdc39bad301530160024800a294100f4528201e3014001375c60260066eb0c0480063300100398098014c04c005003452820184040808229462a660149201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164025153300a4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640250084035008402500880440220108088dd7180718059baa0038b2010180500098029baa00b8a4d153300349011856616c696461746f722072657475726e65642066616c7365001365640082a660049201085f723a20566f6964001601" + : "5901b8010100229800aba2aba1aba0aab9faab9eaab9dab9a488888896600264653001300800198041804800cdc3a400130080024888966002600460106ea800e26644b30013004300a375464660020026eb0c03cc030dd5002112cc004006298103d87a80008992cc004cdd7980898071baa001014899ba548000cc0400052f5c113300300330120024030602000280722b3001329800800d2f5c210140004c8cc004004dd59808180898089808980898069baa0052259800800c52f5c113233223322330020020012259800800c400e2646602c6e9ccc058dd48029980b18098009980b180a000a5eb80cc00c00cc060008c0580050141bab3011003375c601c002660060066026004602200280790011112cc00400a2b30010018a518b201e8acc0040062d1598009919912cc004cdc79bae30140030088acc004cdc78009bae3014002899b87375a6028602a00490014528201e8a50403c60260026eb8c04800cdd61808800c6600200730120029809000a0068a504030807900f4528c590094590091bae300c30093754006b300130023008375400915980098049baa0048a4d16402916401d16401c300800130033754011149a26cac8009", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + ]), + [utxoRef], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyMint { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1RealfiMintingPolicyRealfiMintingPolicyElse { + public Script: Script; + constructor(proxyPolicyId: PolicyId, trace?: boolean = false) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "590605010100229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c96600264653001300b00198059806000cdc3a4001300b0024888966002600460166ea800e33001375c601e60186ea800e44b30010018a5eb82266020601a6022002660040046024002807a444b3001337120049000440063300100399b840024805266e2ccdc019b85002480512060001400c80624444646600200200a44b30010018802c4c9660020031330043016002006899802980b00119801801800a0283016001404d2301030110019bab300f301030103010301030103010300c37540029111111919191991191929980b99b964910d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc068c0780062946266004004603e00280c101c19ba548008cc068dd4800a5eb80dd7180d180b9baa325330163372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4051220100132598009807980c1baa00189929980c19b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c068dd5000c4c9660020031598009809180d9baa0018992cc00400603113259800800c06603301980cc4cc896600200301b8992cc004c09400a200d01c408860460028108dd7000981100120463020001407860386ea800602e80ca02f01780bc05d021180f180d9baa0018a9980ca493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164060603a603c603c60346ea8c028c068dd5000980e180c9baa0018a9980ba4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164058646600200200444b30010018a60103d87a80008992cc004c8cc004004c018dd59806180e1baa300c301c375400444b30010018a508acc004cdc79bae30200010198a518998010011810800a034407913374a90001980e800a5eb82266006006603e00480c0c07400501b1bac3007301737540186002002601001044464b30010038991919911980480119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d203a5980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80b90171bac301a002375a60300026466ec0dd4180c0009ba73019001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a603a003337149101023a200098008054c07800600a805100a181000144ca6002015301d00199b8a489023a200098008054c078006600e66008008004805100a1810001203c3020001407466e29220102207d0000340686eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a20343758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720383371666e000056600266e2000520148a40c11481b901c002200c33706002901019b8600148080cdc70020012032375c00680e8dc5245022c200022323300100100322598009806800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003405080a0c010011164024300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5901b3010100229800aba2aba1aba0aab9faab9eaab9dab9a9bae0024888888896600264653001300900198049805000cdc3a400130090024888966002600460126ea800e2646644646644660040046eacc04cc050c050c050c050c050c050c040dd5003912cc00400629422b30013375e006601e602600314a3133002002301400140388088dd7180898071baa0073374a900119807980818069baa3259800980318069baa0018992cc004cdc3a4008601c6ea8006264b30013008300f375400313232332259800980c001c40162c80a8c054004dd7180a801180a80098081baa0018b201c3012300f3754003164034602260246024601c6ea8c008c038dd5180898071baa0018b2018323300100137586004601c6ea8014896600200314c0103d87a80008992cc004c8cc004004c018dd5980298089baa30053011375400444b30010018a508acc004cdc79bae301500100f8a51899801001180b000a020404d13374a900019809000a5eb8226600600660280048070c04800501025eb80c0040048c03cc040004896600200314bd7044cc038c02cc03c004cc008008c04000500d4590080c024004c010dd5004c52689b2b200401", + Type.Tuple([PolicyId]), + [proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1StakingVaultStakingVaultMint { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601" + : "5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1StakingVaultStakingVaultSpend { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601" + : "5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1StakingVaultStakingVaultElse { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "59091e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888cc8966002646465300130093754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330110014bd7044cc00c00cc04c00900c1808800a01e9806801cc03400922222598009802002c4c966002600a601e6ea8cc010dd6180998081baa00323375e602860226ea80040662b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd5980a980b180b180b180b18091baa0052259800800c52f5c113233223322330020020012259800800c400e264660366e9ccc06cdd48029980d980c0009980d980c800a5eb80cc00c00cc074008c06c0050191bab3016003375c6026002660060066030004602c00280a10011112cc00400a2b30010018a518a99808a481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300164051159800800c54cc045241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c801803c56600266e3c004dd7180c80144cdc39bad3019301a0024800a2941013452820263018001375c602e0066eb0c05800633001003980b8014c05c00500345282020405080a229462a6601c9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164035153300e4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640346eb8c048c03cdd5003456600266e1d200200589919912cc0040122b300130073011375400915980098091baa0048cc004896600200314bd7044cc058c04cc05c004cc008008c06000501548896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801901248888c8cc004004014896600200310058992cc004006266008603800400d133005301c002330030030014068603800280ca4602c602e0033756602a602c602c602c602c602c602c60246ea8015222223232323322323253301c3372c92010d63726564656e7469616c3a3a2000373266008002910100132330010010092259800800c528456600266ebc00cc07cc08c0062946266004004604800280e902119ba548008cc07cdd4800a5eb80dd7180f980e1baa3253301b3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660066ea4065220100132598009809980e9baa00189929980e99b9649113666f756e642070726f7879207574786f3a3a200037326600a0029101001325980099b8748010c07cdd5000c4c966002003159800980b18101baa0018992cc00400603b13259800800c07a03d01e80f44cc89660020030208992cc004c0a800a200d021409c60500028130dd7000981380120503025001408c60426ea800603880f203901c80e4071026181198101baa0018a9980f2493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164074604460466046603e6ea8c028c07cdd50009810980f1baa0018a9980e24814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f6964290016406c660220024646600200260086eacc028c07cdd51805180f9baa0022259800800c528456600266e3cdd7181180080e4528c4cc008008c09000501d20423758600e60386ea803cc004004c020020888c9660020071323233223300900233714910101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100d20445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900a203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009808800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c8c01001100c404d00c403d00c806403201880b8c04c004c04cc050004c03cdd500345900c201818061806800980600098039baa00d8a4d153300549011856616c696461746f722072657475726e65642066616c7365001365640102a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d00161533003491215f72656465656d65723a205374616b696e675661756c7452656465656d65725631001601" + : "5903160101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c210e4d7374616b696e675f7661756c74004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162646644b30013007300e375400915980098079baa00489919911919198008009bab30173018301830183018301830183014375401444b30010018a508acc004cdd7801980a180c000c528c4cc008008c064005013202c3374a90011980a180a98091baa3259800980598091baa0018992cc004cdc3a400860266ea8006264b3001300d3014375400313232332259800980e801c40162c80d0c068004dd7180d001180d000980a9baa0018b2026301730143754003164048602c602e602e60266ea8c008c04cdd5180b18099baa0018b2022330093758600260246ea80208c8cc004004c010dd59801980a1baa30033014375400444b30010018a508acc004cdc79bae30180010128a51899801001180c800a026405897ae030010012301430150012259800800c52f5c113301330103014001330020023015001404916404116403460200026020602200260186ea801a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1TreasuryTreasuryMint { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1TreasuryTreasurySpend { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1TreasuryTreasuryElse { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5908c70101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c2109487472656173757279004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5902f90101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c2109487472656173757279004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1YieldOracleYieldOracleMint { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1YieldOracleYieldOracleSpend { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} +export class V1_1Rc1YieldOracleYieldOracleElse { + public Script: Script; + constructor( + utxoRef: OutputReference, + proxyPolicyId: PolicyId, + trace?: boolean = false, + ) { + this.Script = cborToScript( + applyParamsToScript( + trace + ? "5908d20101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae00248888888888c966002646465300130083754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e952000330100014bd7044cc00c00cc04800900b1808000a01c9806001cc03000922222598009802002c4c966002600a601c6ea8cc010dd6180918079baa00323375e602660206ea80040622b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd5980a180a980a980a980a98089baa0052259800800c52f5c113233223322330020020012259800800c400e264660346e9ccc068dd48029980d180b8009980d180c000a5eb80cc00c00cc070008c0680050181bab3015003375c602400266006006602e004602a00280990011112cc00400a2b30010018a518a998082481206d7573745f7a6970206f6e20756e657175616c206c656e677468206c697374730016404d159800800c54cc041241206d7573745f7a6970206f6e20756e657175616c206c656e677468206c6973747300168acc004c8cc896600266e3cdd7180c001803c56600266e3c004dd7180c00144cdc39bad301830190024800a2941012452820243017001375c602c0066eb0c05400633001003980b0014c0580050034528201e404c809a29462a6601a9201c76578706563740a202020206d7573745f7a69705f6576657279280a2020202020206173736574732c0a2020202020206d696e7465642c0a202020202020666e2865787065637465642c202861637475616c5f706f6c6963792c2061637475616c5f6e616d652c20616d742929207b0a202020202020202061637475616c5f706f6c696379203d3d20706f6c6963795f6964202626206578706563746564203d3d2061637475616c5f6e616d6520262620616d74203d3d20310a2020202020207d2c0a202020202900164031153300d4915865787065637420536f6d65285f29203d0a202020206c6973742e66696e6428696e707574732c20666e28696e70757429207b20696e7075742e6f75747075745f7265666572656e6365203d3d207574786f5f726566207d29001640306eb8c044c038dd5003456600266e1d20020058cc004c038dd50034896600200314bd7044cc048c03cc04c004cc008008c05000501148896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801900e48888c8cc004004014896600200310058992cc004006266008603000400d1330053018002330030030014058603000280aa46024602600337566022602460246024602460246024601c6ea80092222229800980b8034c05cc06001a600a00b300400448888c8c8c8c8c94cc06ccdcb2490d63726564656e7469616c3a3a20003732660060029101001323300100100b2259800800c528456600266ebc00cc078c0880062946266004004604600280e102019ba548008cc078dd4800a5eb80dd7180f180d9baa3253301a3372c92012467657474696e672070726f787920646174756d20666f7220706f6c6963792069643a3a20003732660046ea4061220100132598009809980e1baa00189929980e19b9649113666f756e642070726f7879207574786f3a3a20003732660080029101001325980099b8748010c078dd5000c4c966002003159800980b180f9baa0018992cc00400603913259800800c07603b01d80ec4cc896600200301f8992cc004c0a400a200d0204098604e0028128dd70009813001204e3024001408860406ea800603680ea03701b80dc06d0251811180f9baa0018a9980ea493365787065637420496e6c696e65446174756d28646174756d29203d2070726f78795f7574786f2e6f75747075742e646174756d00164070604260446044603c6ea8c030c078dd50009810180e9baa0018a9980da4814a65787065637420536f6d652870726f78795f7574786f29203d207265666572656e63655f696e70757473207c3e20696e7075745f776974685f706f6c69637928706f6c6963795f69642900164068660220024646600200260106eacc030c078dd51806180f1baa0022259800800c528456600266e3cdd7181100080dc528c4cc008008c08c00501c20403758601260366ea803cc004004888c966002007132323322330090023371491101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805101020445980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c80e101c1bac301f002375a603a0026466ec0dd4180e8009ba7301e001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6044003337149101023a200098008054c08c00600a805100a181280144ca6002015302200199b8a489023a200098008054c08c006600e66008008004805100a181280120463025001408866e29220102207d00003407c6eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a002803900d203e3758007133005375a0060051323371491102682700329800800ccdc01b8d0024800666e292210127000044004444b3001337100049000440062646645300100699b800054800666e2ccdc00012cc004cdc4001240291481822903720423371666e000056600266e2000520148a40c11481b9021002200c33706002901019b8600148080cdc7002001203c375c0068110dc5245022c200022323300100100322598009809000c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003406480c88b2016402c300b300c001300b00130063754019149a2a6600892011856616c696461746f722072657475726e65642066616c73650013656400c2a660069201266578706563742070726f78795f646174756d3a2050726f7879446174756d203d20646174756d001601" + : "5903040101002229800aba2aba1aba0aab9faab9eaab9dab9a9bae00248888888966002646465300130063754003370e9000488c8cc00400400c896600200314c103d87a80008992cc004c010006266e9520003300e0014bd7044cc00c00cc04000900a1807000a0189805001cc02800922222598009802002c4c966002600a60186ea8cc010dd6180818069baa00323375e6022601c6ea80040562b3001329800800d2f5c211453646973747269627574696f6e5f6f7261636c65004c8cc004004dd59809180998099809980998079baa0052259800800c52f5c113233223322330020020012259800800c400e264660306e9ccc060dd48029980c180a8009980c180b000a5eb80cc00c00cc068008c0600050161bab3013003375c602000266006006602a004602600280890011112cc00400a2b30010018a518b20228acc0040062d1598009919912cc004cdc79bae30160030078acc004cdc78009bae3016002899b87375a602c602e0049001452820228a504044602a0026eb8c05000cdd61809800c660020073014002980a000a0068a50403880890114528c5900b45900b1bae300f300c375400d15980099b87480080162664466446530012259800800c528456600266ebc00cc048c0580062946266004004602e00280890144c050c054016602800a911198018019bab3017301830183018301830183018301437540143374a900119809180998081baa3259800980498081baa0018992cc004cdc3a400860226ea8006264b3001300b3012375400313232332259800980d801c40162c80c0c060004dd7180c001180c00098099baa0018b20223015301237540031640406028602a602a60226ea8c008c044dd5180a18089baa0018b201e330073758600260206ea80188c8cc004004c010dd5980198091baa30033012375400444b30010018a508acc004cdc79bae30160010108a51899801001180b800a022405097ae03001001230123013001300c375400c44b30010018a5eb82266020601a6022002660040046024002807a2c805100a0c024c028004c024004c010dd5004c52689b2b20041", + Type.Tuple([ + Type.Object( + { + transaction_id: Type.String(), + output_index: Type.BigInt(), + }, + { ctor: 0n }, + ), + PolicyId, + ]), + [utxoRef, proxyPolicyId], + ), + "PlutusV3", + ); + } +} diff --git a/modules/realfi-partner-sdk/src/index.ts b/modules/realfi-partner-sdk/src/index.ts new file mode 100644 index 0000000000..b6487ab90a --- /dev/null +++ b/modules/realfi-partner-sdk/src/index.ts @@ -0,0 +1,136 @@ +// Partner-facing entry point. First-party consumers use "./internal". + +import { RealfiApi as RealfiApiInternal } from "./api/index.js"; +import type { IApiEndpoints, IRealfiApiSDK, TApiNetwork } from "./api/index.js"; +import { SDK_VERSION } from "./sdk/shared/client-id.js"; +import { RealfiSDK as RealfiSDKFull } from "./sdk/index.js"; +import { createPartnerCardanoSDK } from "./sdk/partner-dispatcher.js"; +import type { IRealfiCardanoFactory } from "./sdk/partner.js"; +import * as SundaeSwapSDK from "./sundae/index.js"; + +const PARTNER_CLIENT_ID = `partner-sdk/${SDK_VERSION}`; + +// On-chain Cardano part — the facade narrowed to the partner surface (order +// builders + read helpers). Deploy/operator methods and concrete version +// classes are reachable only via "./internal". +// +// `create` returns a version dispatcher: by default it re-resolves the live +// protocol version before each order build (one provider lookup) and swaps to +// the matching version instance; read helpers never re-detect. All built +// orders are tagged with source="partner-sdk", surviving version switches. +// The `detectParams` method is forwarded unchanged. +/* eslint-disable @typescript-eslint/no-explicit-any */ +const cardano: IRealfiCardanoFactory = { + create: (blaze: any, params: any, options?: any) => + createPartnerCardanoSDK(blaze, params, "partner-sdk", options) as any, + detectParams: RealfiSDKFull.detectParams.bind(RealfiSDKFull), +}; +/* eslint-enable @typescript-eslint/no-explicit-any */ + +// Off-chain API — wrap factory methods to inject the partner client-id so +// every request body carries extensions.clientId = "partner-sdk/". +const PartnerRealfiApi = { + forNetwork(network: TApiNetwork): IRealfiApiSDK { + return RealfiApiInternal.forNetwork(network, PARTNER_CLIENT_ID); + }, + create(endpoints: IApiEndpoints): IRealfiApiSDK { + return RealfiApiInternal.create(endpoints, PARTNER_CLIENT_ID); + }, +}; + +// Partner SDK, namespaced by part. +export const RealfiSDK = { + cardano, + api: PartnerRealfiApi, + sundae: SundaeSwapSDK, +}; + +// Partner-facing Cardano SDK instance types + create options +export type { + IRealfiCardanoCreateOptions, + IBuildStakeContinuationParams, + IStakeContinuation, + IStakeContinuationSwap, + IRealfiCardanoSDKV0_4, + IRealfiCardanoSDKV1_0, + IRealfiCardanoSDKV1_0Rc1, + IRealfiCardanoSDKV1_1Rc1, + TDetectedVersion, + TRealfiCardanoSDK, + TVersionDetectionMode, +} from "./sdk/partner.js"; + +// Params + detection result +export type { + TDetectedSDKParams, + IRealfiSDKParamsV0_4, + IRealfiSDKParamsV1_0, + IRealfiSDKParamsV1_0Rc1, + IRealfiSDKParamsV1_1Rc1, +} from "./sdk/index.js"; + +// Protocol-version detection +export { + detectSDKParams, + NETWORK_REGISTRY, + UnknownProtocolVersionError, + YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER, +} from "./sdk/shared/detect-params.js"; +export type { + IDetectInput, + TNetworkPreset, +} from "./sdk/shared/detect-params.js"; + +// Partner-facing shared types +export type { + TProtocolVersion, + IProxyBootstrap, + IBaseSDKParams, + IRawProxyDatumResult, + IProxyDatumResult, + ITreasuryDatumResult, + IVaultDatumResult, + IProxySettings, + IReserveAsset, + TMultisigScript, + IOutputReference, + TPermissionKey, +} from "./sdk/shared/types.js"; + +// Current-line generated type namespaces +export { + V0_4Types, + V1_0Types, + V1_0Rc1Types, + V1_1Rc1Types, +} from "./generated-types/index.js"; + +// Curated helpers + transaction builder +export { + calculateSusdrExchangeRate, + SUSDR_EXCHANGE_RATE_PRECISION, + type ISusdrExchangeRateInputs, +} from "./sdk/v1_1_rc1/diffusion.js"; +export * as Utils from "./sdk/shared/public.js"; +export * as TxBuilder from "./tx-builder/index.js"; +export * as SundaeSwap from "./sundae/index.js"; + +// Off-chain API part. `RealfiApi` here is the partner-tagged factory, not the +// raw class — direct imports get the same partner client-id as RealfiSDK.api. +export { PartnerRealfiApi as RealfiApi }; +export type { + IRealfiApiSDK, + IApiEndpoints, + TApiNetwork, + IOrderInfo, + IPartnerConfig, + IPartnerLimits, + IApiOrderUtxo, + IStakeTimes, + IOrderFees, + IYieldBreakdown, + IPointsBalance, + IReferrerCode, + TOrderStatus, + TOrderAction, +} from "./api/index.js"; diff --git a/modules/realfi-partner-sdk/src/sdk/index.ts b/modules/realfi-partner-sdk/src/sdk/index.ts new file mode 100644 index 0000000000..5acc17c687 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/index.ts @@ -0,0 +1,242 @@ +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, type Wallet } from "@blaze-cardano/sdk"; + +import type { + IDetectInput, + TDetectedSDKParams, + TNetworkPreset, +} from "./shared/detect-params.js"; +export type { TDetectedSDKParams } from "./shared/detect-params.js"; +export type { TNetworkPreset } from "./shared/detect-params.js"; + +import type { IRealfiSDKParamsV0, RealfiSDKV0 } from "./v0/index.js"; +import type { IRealfiSDKParamsV0_1, RealfiSDKV0_1 } from "./v0_1/index.js"; +import type { IRealfiSDKParamsV0_2, RealfiSDKV0_2 } from "./v0_2/index.js"; +import type { IRealfiSDKParamsV0_3, RealfiSDKV0_3 } from "./v0_3/index.js"; +import type { IRealfiSDKParamsV0_4, RealfiSDKV0_4 } from "./v0_4/index.js"; +import type { IRealfiSDKParamsV1_0, RealfiSDKV1_0 } from "./v1_0/index.js"; +import type { + IRealfiSDKParamsV1_0Rc1, + RealfiSDKV1_0Rc1, +} from "./v1_0_rc1/index.js"; +import type { + IRealfiSDKParamsV1_1Rc1, + RealfiSDKV1_1Rc1, +} from "./v1_1_rc1/index.js"; + +// Re-export param types for convenience +export type { IRealfiSDKParamsV0 } from "./v0/index.js"; +export type { IRealfiSDKParamsV0_1 } from "./v0_1/index.js"; +export type { IRealfiSDKParamsV0_2 } from "./v0_2/index.js"; +export type { IRealfiSDKParamsV0_3 } from "./v0_3/index.js"; +export type { IRealfiSDKParamsV0_4 } from "./v0_4/index.js"; +export type { IRealfiSDKParamsV1_0 } from "./v1_0/index.js"; +export type { IRealfiSDKParamsV1_0Rc1 } from "./v1_0_rc1/index.js"; +export type { IRealfiSDKParamsV1_1Rc1 } from "./v1_1_rc1/index.js"; + +// Re-export shared types and utilities +export * from "./shared/index.js"; + +// Re-export version classes. These are tree-shaken out of consumer bundles +// that never reference them by name, thanks to `"sideEffects": false` in +// package.json. The facade below dispatches via dynamic `import()`, so the +// app's entry chunk only includes the version it actually selects at runtime. +export { RealfiSDKV0 } from "./v0/index.js"; +export { RealfiSDKV0_1 } from "./v0_1/index.js"; +export { RealfiSDKV0_2 } from "./v0_2/index.js"; +export { RealfiSDKV0_3 } from "./v0_3/index.js"; +export { RealfiSDKV0_4 } from "./v0_4/index.js"; +export { RealfiSDKV1_0 } from "./v1_0/index.js"; +export { RealfiSDKV1_0Rc1 } from "./v1_0_rc1/index.js"; +export { RealfiSDKV1_1Rc1 } from "./v1_1_rc1/index.js"; + +/** + * Union type of all SDK parameter types + */ +export type TRealfiSDKParams = + | IRealfiSDKParamsV0 + | IRealfiSDKParamsV0_1 + | IRealfiSDKParamsV0_2 + | IRealfiSDKParamsV0_3 + | IRealfiSDKParamsV0_4 + | IRealfiSDKParamsV1_0 + | IRealfiSDKParamsV1_0Rc1 + | IRealfiSDKParamsV1_1Rc1; + +/** + * Union type of all SDK versions + */ +export type TRealfiSDK

= + | RealfiSDKV0 + | RealfiSDKV0_1 + | RealfiSDKV0_2 + | RealfiSDKV0_3 + | RealfiSDKV0_4 + | RealfiSDKV1_0 + | RealfiSDKV1_0Rc1 + | RealfiSDKV1_1Rc1; + +// Function overloads for create. Returns are promises because the +// implementation lazy-loads the per-version module on demand. +function createRealfiSDK

( + blaze: Blaze, + params: IRealfiSDKParamsV0, +): Promise>; +function createRealfiSDK

( + blaze: Blaze, + params: IRealfiSDKParamsV0_1, +): Promise>; +function createRealfiSDK

( + blaze: Blaze, + params: IRealfiSDKParamsV0_2, +): Promise>; +function createRealfiSDK

( + blaze: Blaze, + params: IRealfiSDKParamsV0_3, +): Promise>; +function createRealfiSDK

( + blaze: Blaze, + params: IRealfiSDKParamsV0_4, +): Promise>; +function createRealfiSDK

( + blaze: Blaze, + params: IRealfiSDKParamsV1_0, +): Promise>; +function createRealfiSDK

( + blaze: Blaze, + params: IRealfiSDKParamsV1_0Rc1, +): Promise>; +function createRealfiSDK

( + blaze: Blaze, + params: IRealfiSDKParamsV1_1Rc1, +): Promise>; +function createRealfiSDK

( + blaze: Blaze, + params: TDetectedSDKParams, +): Promise< + | RealfiSDKV0_4 + | RealfiSDKV1_0 + | RealfiSDKV1_0Rc1 + | RealfiSDKV1_1Rc1 +>; +function createRealfiSDK

( + blaze: Blaze, + params: TRealfiSDKParams, +): Promise>; +async function createRealfiSDK

( + blaze: Blaze, + params: TRealfiSDKParams, +): Promise> { + switch (params.version) { + case "V0": { + const { RealfiSDKV0 } = await import("./v0/index.js"); + return RealfiSDKV0.create(blaze, params); + } + case "V0_1": { + const { RealfiSDKV0_1 } = await import("./v0_1/index.js"); + return RealfiSDKV0_1.create(blaze, params); + } + case "V0_2": { + const { RealfiSDKV0_2 } = await import("./v0_2/index.js"); + return RealfiSDKV0_2.create(blaze, params); + } + case "V0_3": { + const { RealfiSDKV0_3 } = await import("./v0_3/index.js"); + return RealfiSDKV0_3.create(blaze, params); + } + case "V0_4": { + const { RealfiSDKV0_4 } = await import("./v0_4/index.js"); + return RealfiSDKV0_4.create(blaze, params); + } + case "V1_0": { + const { RealfiSDKV1_0 } = await import("./v1_0/index.js"); + return RealfiSDKV1_0.create(blaze, params); + } + case "V1_0_Rc1": { + const { RealfiSDKV1_0Rc1 } = await import("./v1_0_rc1/index.js"); + return RealfiSDKV1_0Rc1.create(blaze, params); + } + case "V1_1_Rc1": { + const { RealfiSDKV1_1Rc1 } = await import("./v1_1_rc1/index.js"); + return RealfiSDKV1_1Rc1.create(blaze, params); + } + default: + throw new Error( + `Unknown SDK version: ${(params as TRealfiSDKParams).version}`, + ); + } +} + +/** Call signature for {@link RealfiSDK.detectParams}, kept as an interface so it can carry overloads. */ +interface IDetectParams { + (provider: Provider, config: IDetectInput): Promise; + (provider: Provider, network: TNetworkPreset): Promise; +} + +/** + * RealfiSDK namespace for creating SDK instances. + * + * The SDK is the single entry point for all protocol operations. + * Each version class (RealfiSDKV0, RealfiSDKV0_1, RealfiSDKV0_2, etc.) provides + * version-specific functionality with correct types. + * + * The facade lazy-loads each version module via dynamic `import()` so consumer + * bundles only ship the version they actually select at runtime. + * + * @example V0 - Simple minting + * ```typescript + * const sdk = await RealfiSDK.create(blaze, { + * version: "V0", + * proxyBootstrap: { txHash, outputIndex }, + * assetNameHex: "55534472", + * }); + * const mintTx = await sdk.buildMintTx(AssetAmount.fromValue(1000n, decimals)); + * ``` + * + * @example V1_0 - Full protocol with DirectMint/DirectBurn + * ```typescript + * const sdk = await RealfiSDK.create(blaze, { + * version: "V1_0", + * proxyBootstrap: { txHash, outputIndex }, + * treasuryBootstrap: { txHash: treasuryTxHash, outputIndex: treasuryOutputIndex }, + * stakingVaultBootstrap: { txHash: vaultTxHash, outputIndex: vaultOutputIndex }, + * assetNameHex: "55534472", + * sUSDrAssetNameHex: "7355534472", + * }); + * const directMintTx = await sdk.buildDirectMintOrderTx({ amount, destination }); + * ``` + */ +export const RealfiSDK = { + /** + * Create a new RealfiSDK instance. + * + * Returns the appropriate version-specific SDK based on the params. + * The returned SDK has full type information for that version. + */ + create: createRealfiSDK, + + /** + * Detect the active protocol version from the on-chain proxy datum. + * + * Reads the proxy UTxO, extracts the `logic` script hash, and compares it + * against expected hashes for each known SDK version. Returns fully-typed + * SDK params (including V1_0 backward-compatibility flags) that can be + * passed directly to `RealfiSDK.create`. + * + * `config` also accepts a network preset name (`"mainnet"`, `"preprod"`, + * `"preview"`) in place of an explicit config, resolved via the built-in + * network registry. Custom deployments still pass an explicit config. + * + * @throws {UnknownProtocolVersionError} if the on-chain hash matches no known version. + */ + detectParams: (async ( + provider: Provider, + config: IDetectInput | TNetworkPreset, + ): Promise => { + const { detectSDKParams } = await import("./shared/detect-params.js"); + // Both arms call the same function; the ternary narrows the string|object union so it matches an overload — required to satisfy TS2769, not a no-op. + return typeof config === "string" + ? detectSDKParams(provider, config) + : detectSDKParams(provider, config); + }) as IDetectParams, +}; diff --git a/modules/realfi-partner-sdk/src/sdk/partner-dispatcher.ts b/modules/realfi-partner-sdk/src/sdk/partner-dispatcher.ts new file mode 100644 index 0000000000..c41a7d7767 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/partner-dispatcher.ts @@ -0,0 +1,241 @@ +// Per-build protocol-version dispatch for the partner facade ("." entry). +// First-party consumers ("./internal") keep frozen version instances. + +import type { Provider } from "@blaze-cardano/query"; +import type { Blaze, Core, Wallet } from "@blaze-cardano/sdk"; + +import { RealfiSDK } from "./index.js"; +import type { + IRealfiCardanoCreateOptions, + TDetectedVersion, + TRealfiCardanoSDK, +} from "./partner.js"; +import type { TClientSource } from "./shared/client-id.js"; +import { + fetchProxyLogicSnapshot, + type IDetectInput, + matchProtocolVersion, + type TDetectedSDKParams, + UnknownProtocolVersionError, +} from "./shared/detect-params.js"; + +// Identity fields the dispatcher reads off a live version instance; every +// other member is reached by property delegation. +interface IVersionInstance { + readonly version: TDetectedVersion; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; +} + +interface IDispatchState { + instance: IVersionInstance; + lastLogicHash: string; + inflightRefresh?: Promise; +} + +// Caller-supplied build options carried into a recreated instance. Cached +// referenceInputs stay behind — they belong to the previous version's scripts. +type TCarriedParamExtras = { + scriptDeploymentAddress?: unknown; + defaultSlippageToleranceBps?: unknown; +}; + +const isOrderBuilder = (prop: PropertyKey): prop is string => + typeof prop === "string" && prop.startsWith("build"); + +const requiresFreshVersion = (prop: string): boolean => + prop === "buildStakeContinuation"; + +/** + * Create a partner SDK that re-resolves the live protocol version before each + * order build and dispatches to the matching version instance. + * + * Detection identity: the one-shot NFT policy (deterministic from + * `proxyBootstrap`). The proxy UTxO ref changes on every settings update, but + * the NFT lookup follows it, so each refresh is exactly one provider call. + * The fetched `logic` hash is compared against the current instance's + * `protocolScriptHash` — equal in every detectable version — and only on a + * mismatch does the (local, provider-free) version matcher run and the + * underlying instance get recreated, preserving `clientSource` so partner + * order metadata survives the switch. Read helpers never trigger a refresh. + * + * No result caching beyond the last observed hash: freshness only shrinks the + * stale window — correctness is enforced on-chain, and a stale-version build + * is recovered via order invalidation. + * + * Refresh failure policy: an {@link UnknownProtocolVersionError} rejects the + * build — the chain moved to a version this SDK cannot target. Any other + * refresh error (e.g. a transient provider failure) logs a warning and the + * build proceeds on the last known version, which is exactly what an + * `"at-init"` instance would have produced. Stake continuations are stricter + * under this `"per-build"` dispatcher: their address, schema, and + * exchange-rate quote must all match the current deployment, so + * `buildStakeContinuation` fails closed on every refresh error here. An + * `"at-init"` instance, or a raw version-pinned SDK used outside this + * dispatcher, never refreshes at all and carries no such guarantee. + * + * Method identity is unstable across accesses (`sdk.buildX !== sdk.buildX`): + * each access returns a fresh wrapper over the live instance, by design. + */ +export async function createPartnerCardanoSDK< + P extends Provider, + W extends Wallet, +>( + blaze: Blaze, + params: TDetectedSDKParams, + clientSource: TClientSource, + options?: IRealfiCardanoCreateOptions, +): Promise> { + const createInstance = (p: TDetectedSDKParams): Promise => + ( + RealfiSDK as { + create: ( + blaze: Blaze, + params: TDetectedSDKParams & { clientSource?: TClientSource }, + ) => Promise; + } + ).create(blaze, { ...p, clientSource }) as Promise; + + const initial = await createInstance(params); + + if ((options?.versionDetection ?? "per-build") === "at-init") { + // Frozen instance — never re-detects. + return initial as unknown as TRealfiCardanoSDK; + } + + const detectInput: IDetectInput = { + proxyBootstrap: params.proxyBootstrap, + treasuryBootstrap: params.treasuryBootstrap, + stakingVaultBootstrap: params.stakingVaultBootstrap, + yieldOracleBootstrap: + "yieldOracleBootstrap" in params + ? params.yieldOracleBootstrap + : undefined, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace: params.enableTrace, + }; + const carriedExtras = params as TCarriedParamExtras; + + const state: IDispatchState = { + instance: initial, + // Every detectable version's proxy datum `logic` hash is that version + // class's protocolScriptHash. + lastLogicHash: initial.protocolScriptHash, + }; + + const doRefresh = async (): Promise => { + const oneShotPolicyId = state.instance + .oneShotPolicyId as unknown as Core.Hash28ByteBase16; + const snapshot = await fetchProxyLogicSnapshot( + blaze.provider, + oneShotPolicyId, + ); + if (snapshot.logicHash === state.lastLogicHash) return; + + const detected = await matchProtocolVersion( + snapshot, + oneShotPolicyId, + detectInput, + ); + const previous = state.instance.version; + const next = await createInstance({ + ...detected, + scriptDeploymentAddress: carriedExtras.scriptDeploymentAddress, + defaultSlippageToleranceBps: carriedExtras.defaultSlippageToleranceBps, + } as TDetectedSDKParams); + state.instance = next; + state.lastLogicHash = snapshot.logicHash; + if (next.version !== previous) { + console.warn( + `[realfi-sdk] Protocol version changed: ${previous} -> ${next.version}. Order builders now target ${next.version}.`, + { previous, next: next.version }, + ); + // A throwing partner callback must not break the build. + try { + options?.onVersionChange?.(previous, next.version); + } catch (callbackError) { + console.warn("[realfi-sdk] onVersionChange threw", callbackError); + } + } + }; + + // Concurrent builds share one in-flight refresh. + const refresh = (): Promise => { + if (!state.inflightRefresh) { + state.inflightRefresh = doRefresh().finally(() => { + state.inflightRefresh = undefined; + }); + } + return state.inflightRefresh; + }; + + // Delegating proxy: members always resolve against the live instance, so a + // version switch also switches the available surface (e.g. V1-line-only + // builders). Order builds refresh first; everything else passes through. + return new Proxy(Object.create(null) as object, { + get(_target, prop) { + const live = state.instance as unknown as Record; + const value = live[prop]; + if (typeof value !== "function") return value; + if (isOrderBuilder(prop)) { + return async (...args: unknown[]): Promise => { + try { + await refresh(); + } catch (refreshError) { + // Unknown on-chain version: this SDK cannot build a valid order. + if ( + refreshError instanceof UnknownProtocolVersionError || + requiresFreshVersion(prop) + ) { + throw refreshError; + } + // Transient failure (e.g. provider blip): build on the last known + // version — no worse than an "at-init" instance. + console.warn( + `[realfi-sdk] Protocol-version refresh failed; ${prop} builds against last known version ${state.instance.version}.`, + refreshError, + ); + } + const current = state.instance as unknown as Record< + PropertyKey, + unknown + >; + const builder = current[prop]; + if (typeof builder !== "function") { + throw new Error( + `[realfi-sdk] ${prop} is not available on protocol version ${state.instance.version}; the live protocol version changed since this SDK was created.`, + ); + } + return (builder as (...a: unknown[]) => unknown).apply( + state.instance, + args, + ); + }; + } + return (value as (...a: unknown[]) => unknown).bind(state.instance); + }, + has(_target, prop) { + return prop in (state.instance as object); + }, + set(_target, prop, value) { + (state.instance as unknown as Record)[prop] = value; + return true; + }, + getPrototypeOf() { + return Object.getPrototypeOf(state.instance); + }, + ownKeys() { + return Reflect.ownKeys(state.instance as object); + }, + getOwnPropertyDescriptor(_target, prop) { + const descriptor = Reflect.getOwnPropertyDescriptor( + state.instance as object, + prop, + ); + // The proxy target is an empty object; reported descriptors must be + // configurable to satisfy proxy invariants. + return descriptor ? { ...descriptor, configurable: true } : undefined; + }, + }) as TRealfiCardanoSDK; +} diff --git a/modules/realfi-partner-sdk/src/sdk/partner.ts b/modules/realfi-partner-sdk/src/sdk/partner.ts new file mode 100644 index 0000000000..b8df0ef7b7 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/partner.ts @@ -0,0 +1,196 @@ +import type { Provider } from "@blaze-cardano/query"; +import type { Blaze, Wallet } from "@blaze-cardano/sdk"; + +import type { + IDetectInput, + TDetectedSDKParams, + TNetworkPreset, +} from "./shared/detect-params.js"; +import type { IRealfiSDKParamsV0_4, RealfiSDKV0_4 } from "./v0_4/index.js"; +import type { IRealfiSDKParamsV1_0, RealfiSDKV1_0 } from "./v1_0/index.js"; +import type { + IRealfiSDKParamsV1_0Rc1, + RealfiSDKV1_0Rc1, +} from "./v1_0_rc1/index.js"; +import type { + IRealfiSDKParamsV1_1Rc1, + RealfiSDKV1_1Rc1, +} from "./v1_1_rc1/index.js"; +export type { + IBuildStakeContinuationParams, + IStakeContinuation, + IStakeContinuationSwap, +} from "./v1/family.js"; + +// Version discriminant: a readonly literal on every current-line SDK class, +// so TRealfiCardanoSDK narrows as a tagged union. +type TCardanoVersionProp = "version"; + +// Read helpers available on every current-line SDK. +type TCardanoReadMethods = + | "getRawProxyDatum" + | "getParsedProxyDatum" + | "getSettings" + | "getTreasuryDatum" + | "getVaultDatum" + | "getUsdrAssetId" + | "getSusdrAssetId"; + +// Order builders common to V0_4 and the V1 line. +type TCardanoOrderMethods = + | "buildMintOrderTx" + | "buildRedeemOrderTx" + | "buildStakeOrderTx" + | "buildUnstakeOrderTx" + | "buildDepositOrderTx" + | "buildWithdrawOrderTx" + | "buildCancelOrdersTx" + | "buildClaimTimelockTx"; + +// V1-line order builder on the partner surface; direct mint/burn stay internal-only. +type TCardanoOrderMethodsV1 = + | "buildInvalidatedOrdersTx" + | "buildStakeContinuation"; + +/** Partner-facing surface of the V0_4 SDK: order builders + read helpers only. */ +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiCardanoSDKV0_4< + P extends Provider, + W extends Wallet, +> extends Pick< + RealfiSDKV0_4, + TCardanoVersionProp | TCardanoReadMethods | TCardanoOrderMethods +> {} + +/** Partner-facing surface of the V1_0 SDK. */ +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiCardanoSDKV1_0< + P extends Provider, + W extends Wallet, +> extends Pick< + RealfiSDKV1_0, + | TCardanoVersionProp + | TCardanoReadMethods + | TCardanoOrderMethods + | TCardanoOrderMethodsV1 +> {} + +/** Partner-facing surface of the V1_0_Rc1 SDK. */ +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiCardanoSDKV1_0Rc1< + P extends Provider, + W extends Wallet, +> extends Pick< + RealfiSDKV1_0Rc1, + | TCardanoVersionProp + | TCardanoReadMethods + | TCardanoOrderMethods + | TCardanoOrderMethodsV1 +> {} + +/** Partner-facing surface of the V1_1_Rc1 SDK. */ +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiCardanoSDKV1_1Rc1< + P extends Provider, + W extends Wallet, +> extends Pick< + RealfiSDKV1_1Rc1, + | TCardanoVersionProp + | TCardanoReadMethods + | TCardanoOrderMethods + | TCardanoOrderMethodsV1 +> {} + +/** Any partner-facing SDK the facade can return after version detection. */ +export type TRealfiCardanoSDK

= + | IRealfiCardanoSDKV0_4 + | IRealfiCardanoSDKV1_0 + | IRealfiCardanoSDKV1_0Rc1 + | IRealfiCardanoSDKV1_1Rc1; + +/** Protocol version as reported by on-chain detection. */ +export type TDetectedVersion = TDetectedSDKParams["version"]; + +/** Version-detection behavior of SDK instances returned by `create`. */ +export type TVersionDetectionMode = "per-build" | "at-init"; + +/** Options for the partner facade's `create`. */ +export interface IRealfiCardanoCreateOptions { + /** + * `"per-build"` (default): before every order build (`build*`), re-resolve + * the live protocol version — one provider lookup — and dispatch to the + * matching version instance, so an on-chain protocol upgrade needs no + * re-init. Read helpers (`get*`) never re-detect; they use the version as of + * the last check. `"at-init"`: the instance is frozen at the version it was + * created with and never re-detects. + * + * This binding happens at property access, not at call time — a cached + * reference (`const f = sdk.getUsdrAssetId`) keeps targeting the instance + * live when it was read, even if a later `build*Tx` call switches versions. + * Call `sdk.getX()` directly to always read the live version. + * + * Refresh failures under `"per-build"`: an `UnknownProtocolVersionError` + * rejects the build (the chain runs a version this SDK does not know); any + * other error — e.g. a transient provider failure — logs a warning and the + * build proceeds on the last known version. `buildStakeContinuation` fails + * closed on every refresh error under `"per-build"`, because its address, + * schema, and quote must all come from the currently deployed version. + * `"at-init"` instances, and raw version-pinned SDKs used outside this + * factory, never refresh and so carry no such guarantee. + */ + versionDetection?: TVersionDetectionMode; + /** + * Called once per observed protocol-version change, after builders have + * switched to the new version. Exceptions are logged and swallowed. + */ + onVersionChange?: ( + previous: TDetectedVersion, + next: TDetectedVersion, + ) => void; +} + +/** + * Partner-facing view of the RealfiSDK facade. `create` returns the narrowed + * `IRealfiCardanoSDK` surface (order builders + read helpers); deploy/operator + * methods are reachable only through the internal entry point. + * + * The static return type reflects the version at creation time. Under + * `"per-build"` detection the runtime instance may later dispatch to a newer + * protocol version — the partner surface is call-compatible across versions, + * so existing call sites keep working; `version` reports the live value. + */ +export interface IRealfiCardanoFactory { + create

( + blaze: Blaze, + params: IRealfiSDKParamsV0_4, + options?: IRealfiCardanoCreateOptions, + ): Promise>; + create

( + blaze: Blaze, + params: IRealfiSDKParamsV1_0, + options?: IRealfiCardanoCreateOptions, + ): Promise>; + create

( + blaze: Blaze, + params: IRealfiSDKParamsV1_0Rc1, + options?: IRealfiCardanoCreateOptions, + ): Promise>; + create

( + blaze: Blaze, + params: IRealfiSDKParamsV1_1Rc1, + options?: IRealfiCardanoCreateOptions, + ): Promise>; + create

( + blaze: Blaze, + params: TDetectedSDKParams, + options?: IRealfiCardanoCreateOptions, + ): Promise>; + detectParams( + provider: Provider, + config: IDetectInput, + ): Promise; + detectParams( + provider: Provider, + network: TNetworkPreset, + ): Promise; +} diff --git a/modules/realfi-partner-sdk/src/sdk/shared/base.ts b/modules/realfi-partner-sdk/src/sdk/shared/base.ts new file mode 100644 index 0000000000..ed8ed53201 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/base.ts @@ -0,0 +1,551 @@ +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, TxBuilder, type Wallet } from "@blaze-cardano/sdk"; + +import { + DEFAULT_CLIENT_SOURCE, + SDK_VERSION, + type TClientSource, +} from "./client-id.js"; +import { + buildOrderOriginMetadatum, + ORDER_ORIGIN_METADATA_LABEL, + resolveTimelockNativeScript, +} from "./timelock.js"; +import type { + IBaseSDKParams, + ICachedReferenceInputs, + IOutputReference, + IProxyDatumResult, + IProxySettings, + IRawProxyDatumResult, + ITreasuryDatumResult, + TProtocolVersion, +} from "./types.js"; +import { + addDirectOutput, + credentialFromScript, + deployScript, + getReferenceInputs, + readSingletonDatum, + rewardAccountFromScript, +} from "./utils.js"; + +/** + * Base interface for SDK version implementations. + * Each version implements this with version-specific logic. + */ +export interface IRealfiSDK { + /** Protocol version */ + readonly version: TProtocolVersion; + + /** Stablecoin policy ID (mint proxy) */ + readonly stablecoinPolicyId: Core.PolicyId; + + /** One-shot NFT policy ID */ + readonly oneShotPolicyId: Core.PolicyId; + + /** Protocol script hash */ + readonly protocolScriptHash: Core.Hash28ByteBase16; + + /** Get the raw proxy UTxO + inline datum from the one-shot token UTXO */ + getRawProxyDatum(): Promise; + + /** Get and parse the proxy datum using this SDK version's schema */ + getParsedProxyDatum(): Promise>; + + /** @deprecated Use getParsedProxyDatum() or getRawProxyDatum() */ + getProxyDatum(): Promise>; + + /** Deploy the protocol script */ + deployProtocol(): Promise; + + /** Deploy the mint proxy script */ + deployMintProxy(): Promise; + + /** Register the protocol stake credential */ + registerProtocolStake(): TxBuilder; + + /** Get the protocol reward account */ + getProtocolRewardAccount(): Core.RewardAccount; + + /** Mint the one-shot NFT with initial datum */ + mintOneShot( + receiverAddress: Core.Address, + datum: unknown, + ): Promise<{ + tx: TxBuilder; + policyId: Core.PolicyId; + }>; + + /** Update the one-shot datum */ + updateOneShotDatum( + receiverAddress: Core.Address, + newDatum: unknown, + ): Promise; + + /** Get version-agnostic proxy settings (common fields only) */ + getSettings(): Promise; +} + +/** + * Extended interface for SDK versions with treasury support (V0_1+) + */ +type TNestedProxySettings = { + permissions: { + mint: IProxySettings["mint_permission"]; + burn: IProxySettings["burn_permission"]; + withdraw: IProxySettings["withdraw_permission"]; + deposit: IProxySettings["deposit_permission"]; + stake: IProxySettings["stake_permission"]; + unstake: IProxySettings["unstake_permission"]; + }; + config: { reserve_assets: IProxySettings["reserve_assets"] }; +}; + +const isRecord = (value: unknown): value is Record => + typeof value === "object" && value !== null; + +const isFlatProxySettings = (value: unknown): value is IProxySettings => + isRecord(value) && + "mint_permission" in value && + "burn_permission" in value && + "withdraw_permission" in value && + "deposit_permission" in value && + "stake_permission" in value && + "unstake_permission" in value && + Array.isArray(value.reserve_assets); + +const isNestedProxySettings = (value: unknown): value is TNestedProxySettings => + isRecord(value) && + isRecord(value.permissions) && + "mint" in value.permissions && + "burn" in value.permissions && + "withdraw" in value.permissions && + "deposit" in value.permissions && + "stake" in value.permissions && + "unstake" in value.permissions && + isRecord(value.config) && + Array.isArray(value.config.reserve_assets); + +export interface IRealfiSDKWithTreasury extends IRealfiSDK { + /** Treasury NFT asset ID */ + readonly treasuryNFTAssetId: Core.AssetId; + + /** Treasury script hash */ + readonly treasuryScriptHash: Core.Hash28ByteBase16; + + /** Mint the treasury NFT */ + mintTreasuryNFT( + utxo?: Core.TransactionUnspentOutput, + ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }>; + + /** Deploy the treasury script (requires original UTXO for script instantiation) */ + deployTreasury(utxo: Core.TransactionUnspentOutput): Promise; + + /** Get the treasury datum */ + getTreasuryDatum(): Promise>; +} + +/** + * Abstract base class for SDK versions. + * Provides common implementation and utilities. + */ +export abstract class RealfiSDKBase< + P extends Provider, + W extends Wallet, +> implements IRealfiSDK { + /** Blaze instance for blockchain interactions */ + protected readonly blaze: Blaze; + + /** Bootstrap parameters */ + protected readonly proxyBootstrap: IBaseSDKParams["proxyBootstrap"]; + + /** Asset name hex for the stablecoin */ + protected readonly assetNameHex: string; + + /** Cached reference inputs for performance (populated on first fetch) */ + protected cachedReferenceInputs: ICachedReferenceInputs; + + /** + * Address used to deploy reference scripts and to resolve them from. + * When undefined, Blaze's burn address is used for both. + */ + protected readonly scriptDeploymentAddress?: Core.Address; + + /** Cached raw proxy datum result (populated on first fetch) */ + protected cachedRawProxyDatumResult?: IRawProxyDatumResult; + + /** Cached parsed proxy datum result (populated on first fetch) */ + protected cachedProxyDatumResult?: IProxyDatumResult; + + /** One-shot output reference (derived from bootstrap) */ + protected readonly oneShotTxoRef: IOutputReference; + + /** Enable trace output in Plutus scripts */ + readonly enableTrace: boolean; + + /** Origin attached to all built order transactions. */ + readonly clientSource: TClientSource; + + /** SDK version attached to all built order transactions. */ + readonly sdkVersion: string; + + // Abstract properties - each version must provide these + abstract readonly version: TProtocolVersion; + abstract readonly stablecoinPolicyId: Core.PolicyId; + abstract readonly oneShotPolicyId: Core.PolicyId; + abstract readonly protocolScriptHash: Core.Hash28ByteBase16; + + // Scripts - each version stores its own instantiated scripts + protected abstract readonly oneShotScript: Core.Script; + protected abstract readonly protocolScript: Core.Script; + protected abstract readonly mintProxyScript: Core.Script; + + protected constructor( + blaze: Blaze, + params: IBaseSDKParams & { clientSource?: TClientSource }, + cachedReferenceInputs?: ICachedReferenceInputs, + ) { + this.blaze = blaze; + this.proxyBootstrap = params.proxyBootstrap; + this.assetNameHex = params.assetNameHex; + this.enableTrace = params.enableTrace ?? false; + this.cachedReferenceInputs = cachedReferenceInputs ?? {}; + this.scriptDeploymentAddress = params.scriptDeploymentAddress; + this.clientSource = params.clientSource ?? DEFAULT_CLIENT_SOURCE; + this.sdkVersion = SDK_VERSION; + this.oneShotTxoRef = { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex, + }; + } + + /** Get the network from blaze */ + protected get network(): Core.NetworkId { + return this.blaze.provider.network; + } + + /** + * Start a transaction with a single setMetadata call. Origin label (55534473) is always + * present and not overridable; extra labels are merged in before the origin is set. + */ + protected newOrderTransaction( + extraLabels?: Map, + ): TxBuilder { + const map = new Map(extraLabels ?? []); + map.set( + ORDER_ORIGIN_METADATA_LABEL, + buildOrderOriginMetadatum(this.clientSource, this.sdkVersion), + ); + return this.blaze.newTransaction().setMetadata(new Core.Metadata(map)); + } + + /** + * Helper to get reference inputs for scripts. + * Fetched values are cached for subsequent calls. + */ + async getScriptReferenceInputs( + scriptHashes: Record, + ): Promise> { + const cached: Partial> = {}; + + if (this.cachedReferenceInputs.protocolRefInput) { + cached.protocol = this.cachedReferenceInputs.protocolRefInput; + } + if (this.cachedReferenceInputs.proxyRefInput) { + cached.proxy = this.cachedReferenceInputs.proxyRefInput; + } + if (this.cachedReferenceInputs.treasuryRefInput) { + cached.treasury = this.cachedReferenceInputs.treasuryRefInput; + } + if (this.cachedReferenceInputs.orderRefInput) { + cached.order = this.cachedReferenceInputs.orderRefInput; + } + if (this.cachedReferenceInputs.stakingVaultRefInput) { + cached.stakingVault = this.cachedReferenceInputs.stakingVaultRefInput; + } + // V1.0 additional protocol scripts + if (this.cachedReferenceInputs.protocolMintRefInput) { + cached.protocolMint = this.cachedReferenceInputs.protocolMintRefInput; + } + if (this.cachedReferenceInputs.protocolStakeRefInput) { + cached.protocolStake = this.cachedReferenceInputs.protocolStakeRefInput; + } + if (this.cachedReferenceInputs.protocolManagementRefInput) { + cached.protocolManagement = + this.cachedReferenceInputs.protocolManagementRefInput; + } + const result = await getReferenceInputs( + this.blaze, + scriptHashes, + cached, + this.scriptDeploymentAddress, + ); + // Cache fetched values for subsequent calls + if (result.protocol && !this.cachedReferenceInputs.protocolRefInput) { + this.cachedReferenceInputs.protocolRefInput = result.protocol; + } + if (result.proxy && !this.cachedReferenceInputs.proxyRefInput) { + this.cachedReferenceInputs.proxyRefInput = result.proxy; + } + if (result.treasury && !this.cachedReferenceInputs.treasuryRefInput) { + this.cachedReferenceInputs.treasuryRefInput = result.treasury; + } + if (result.order && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = result.order; + } + if ( + result.stakingVault && + !this.cachedReferenceInputs.stakingVaultRefInput + ) { + this.cachedReferenceInputs.stakingVaultRefInput = result.stakingVault; + } + // V1.0 additional protocol scripts caching + if ( + result.protocolMint && + !this.cachedReferenceInputs.protocolMintRefInput + ) { + this.cachedReferenceInputs.protocolMintRefInput = result.protocolMint; + } + if ( + result.protocolStake && + !this.cachedReferenceInputs.protocolStakeRefInput + ) { + this.cachedReferenceInputs.protocolStakeRefInput = result.protocolStake; + } + if ( + result.protocolManagement && + !this.cachedReferenceInputs.protocolManagementRefInput + ) { + this.cachedReferenceInputs.protocolManagementRefInput = + result.protocolManagement; + } + return result; + } + + /** + * Resolve the bootstrap UTXO from the provider. + * This will fail if the UTXO has already been consumed (i.e., the one-shot token was minted). + */ + protected async resolveBootstrapUtxo(): Promise { + const utxos = await this.blaze.provider.resolveUnspentOutputs([ + new Core.TransactionInput( + this.oneShotTxoRef.transaction_id, + this.oneShotTxoRef.output_index, + ), + ]); + const utxo = utxos[0]; + if (!utxo) { + throw new Error( + "Bootstrap UTXO not found. It may have already been consumed (one-shot token already minted).", + ); + } + return utxo; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Common Protocol Operations (shared across all versions) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Deploy the protocol script as a reference script. + */ + async deployProtocol(): Promise { + return deployScript( + this.blaze, + this.protocolScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Deploy the mint proxy script as a reference script. + */ + async deployMintProxy(): Promise { + return deployScript( + this.blaze, + this.mintProxyScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Register the protocol stake credential. + */ + registerProtocolStake(): TxBuilder { + const stakeCredential = credentialFromScript(this.protocolScript); + const registerTx = this.blaze + .newTransaction() + .addRegisterStake(stakeCredential); + return registerTx; + } + + /** + * Get the protocol reward account. + */ + getProtocolRewardAccount(): Core.RewardAccount { + return rewardAccountFromScript(this.protocolScript, this.network); + } + + /** + * Get version-agnostic proxy settings. + * Extracts only the common fields shared across V0_2+ protocol versions. + */ + async getSettings(): Promise { + const { parsedProxyDatum } = await this.getParsedProxyDatum(); + const settings = (parsedProxyDatum as { settings?: unknown }).settings; + + if (isFlatProxySettings(settings)) { + return { + mint_permission: settings.mint_permission, + burn_permission: settings.burn_permission, + withdraw_permission: settings.withdraw_permission, + deposit_permission: settings.deposit_permission, + stake_permission: settings.stake_permission, + unstake_permission: settings.unstake_permission, + reserve_assets: settings.reserve_assets, + }; + } + + if (isNestedProxySettings(settings)) { + return { + mint_permission: settings.permissions.mint, + burn_permission: settings.permissions.burn, + withdraw_permission: settings.permissions.withdraw, + deposit_permission: settings.permissions.deposit, + stake_permission: settings.permissions.stake, + unstake_permission: settings.permissions.unstake, + reserve_assets: settings.config.reserve_assets, + }; + } + + throw new Error( + `getSettings() is not supported for protocol version ${this.version}`, + ); + } + + /** The USDr asset ID (stablecoin policy + USDr asset name). */ + getUsdrAssetId(): Core.AssetId { + return Core.AssetId(this.stablecoinPolicyId + this.assetNameHex); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Timelock Operations (shared across versions with staking support) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction that claims USDr locked in a timelock address after + * the unstake cooldown has expired. + * + * Reconstructs the timelock native script for the owner's key hash and the + * original unlock slot, then spends the UTxO. `owner` is the timelock owner + * (defaults to the connected wallet) and is set as the required signer, so a + * custodian holding the user's key can claim. The released USDr goes to + * `destination`, or to `owner` when only an owner is given; with neither it + * returns to the connected wallet. + * + * A single owner key has two timelock shapes in the protocol, differing only + * in element order: `buildUnstakeOrderTx` locks to + * `AllOf { Signature, After }` and the treasury/multisig unstake path to + * `AllOf { After, Signature }`. They hash differently, so which one applies + * is read off the UTxO's own locking address rather than assumed. + */ + async buildClaimTimelockTx(params: { + resultUtxo: { txHash: string; index: number }; + unlockSlot: bigint; + owner?: Core.Address; + destination?: Core.Address; + }): Promise { + const ownerAddress = + params.owner ?? (await this.blaze.wallet.getChangeAddress()); + const ownerKeyHash = ownerAddress.getProps().paymentPart?.hash; + if (!ownerKeyHash) { + throw new Error("Timelock owner address has no payment key credential"); + } + + const input = new Core.TransactionInput( + Core.TransactionId(params.resultUtxo.txHash), + BigInt(params.resultUtxo.index), + ); + const [utxo] = await this.blaze.provider.resolveUnspentOutputs([input]); + if (!utxo) { + throw new Error( + `Could not resolve UTxO ${params.resultUtxo.txHash}#${params.resultUtxo.index}`, + ); + } + + const nativeScript = resolveTimelockNativeScript( + utxo.output().address(), + ownerKeyHash, + params.unlockSlot, + ); + const scriptWrapped = Core.Script.newNativeScript(nativeScript); + + const tx = this.newOrderTransaction() + .setValidFrom(Core.Slot(Number(params.unlockSlot))) + .provideScript(scriptWrapped) + .addRequiredSigner(Core.Ed25519KeyHashHex(ownerKeyHash)) + .addInput(utxo); + + // Route funds to `destination`, else to an explicit `owner` (so a custodial + // claim reaches the user); with neither, value returns to the connected + // wallet as change. + const recipient = params.destination ?? params.owner; + if (recipient) { + addDirectOutput(tx, recipient, utxo.output().amount()); + } + + return tx; + } + + /** + * Fetch the live proxy UTxO and inline datum without attempting a + * version-specific parse. Cached after first fetch. + * + * `readSingletonDatum` both retries the lookup (a not-found answer is the + * provider's index lagging the UTxO's latest move, not a missing proxy — + * Blockfrost returns HTTP 404 in that window, Sentry TREASURY-ADMIN-API-G) + * and repairs a datum the provider reports as a hash. + */ + async getRawProxyDatum(): Promise { + if (this.cachedRawProxyDatumResult) { + return this.cachedRawProxyDatumResult; + } + if (this.cachedProxyDatumResult) { + const { proxyUtxo, proxyDatum } = this.cachedProxyDatumResult; + this.cachedRawProxyDatumResult = { proxyUtxo, proxyDatum }; + return this.cachedRawProxyDatumResult; + } + + const { utxo: proxyUtxo, datum: proxyDatum } = await readSingletonDatum( + this.blaze.provider, + Core.AssetId(this.oneShotPolicyId), + ); + + const result = { proxyUtxo, proxyDatum }; + this.cachedRawProxyDatumResult = result; + return result; + } + + /** + * @deprecated Use getParsedProxyDatum() or getRawProxyDatum() depending on + * whether the caller needs a version-specific schema parse. + */ + async getProxyDatum(): Promise> { + return this.getParsedProxyDatum(); + } + + // Abstract methods - each version must implement these + abstract getParsedProxyDatum(): Promise>; + abstract mintOneShot( + receiverAddress: Core.Address, + datum: unknown, + ): Promise<{ + tx: TxBuilder; + policyId: Core.PolicyId; + }>; + abstract updateOneShotDatum( + receiverAddress: Core.Address, + newDatum: unknown, + ): Promise; +} diff --git a/modules/realfi-partner-sdk/src/sdk/shared/cancel.ts b/modules/realfi-partner-sdk/src/sdk/shared/cancel.ts new file mode 100644 index 0000000000..022f90636a --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/cancel.ts @@ -0,0 +1,75 @@ +import { parse } from "@blaze-cardano/data"; +import type { Core } from "@blaze-cardano/sdk"; + +import type { TMultisigScript, TProtocolVersion } from "./types.js"; +import { + getInlineDatumFromUtxo, + parseOrderOwnerGenericFromDatum, +} from "./utils.js"; + +const parseOwnerField = ( + schema: Parameters[0], + datum: Core.PlutusData, +): TMultisigScript => { + return (parse(schema, datum) as { owner: TMultisigScript }).owner; +}; + +/** + * Parse an order owner for cancel flows. + * + * Behavior: + * - no version hint: use strict generic owner parsing immediately + * - with version hint: try the hinted schema first + * - hinted parse failure: fall back to strict generic owner parsing + */ +export async function parseCancelOwner( + utxo: Core.TransactionUnspentOutput, + versionHint?: TProtocolVersion, +): Promise { + const datum = getInlineDatumFromUtxo(utxo); + + if (!versionHint) { + return parseOrderOwnerGenericFromDatum(datum); + } + + try { + switch (versionHint) { + case "V1_0": { + const { OrderDatumV1 } = + await import("../../generated-types/v1_0/index.js"); + return parseOwnerField(OrderDatumV1, datum); + } + + case "V1_0_Rc1": { + const { OrderDatumV1 } = + await import("../../generated-types/v1_0_rc1/index.js"); + return parseOwnerField(OrderDatumV1, datum); + } + + case "V1_1_Rc1": { + const { OrderDatumV1 } = + await import("../../generated-types/v1_1_rc1/index.js"); + return parseOwnerField(OrderDatumV1, datum); + } + + case "V0_4": { + const { OrderDatum } = + await import("../../generated-types/v0_4/index.js"); + return parseOwnerField(OrderDatum, datum); + } + + case "V0_3": { + const { OrderDatum } = + await import("../../generated-types/v0_3/index.js"); + return parseOwnerField(OrderDatum, datum); + } + + default: + return parseOrderOwnerGenericFromDatum(datum); + } + } catch { + return parseOrderOwnerGenericFromDatum(datum); + } +} + +export const parseOrderOwnerWithHint = parseCancelOwner; diff --git a/modules/realfi-partner-sdk/src/sdk/shared/client-id.ts b/modules/realfi-partner-sdk/src/sdk/shared/client-id.ts new file mode 100644 index 0000000000..a4f7a2ccfe --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/client-id.ts @@ -0,0 +1,9 @@ +// Builder/API origin: "partner-sdk" for the curated "." entry, "internal-sdk" for all other uses. +export type TClientSource = "partner-sdk" | "internal-sdk"; + +// Placeholder version; the publish pipeline injects the released version into +// the built output. Unreleased source (monorepo, first-party) reports the +// placeholder as-is. +export const SDK_VERSION = "0.0.0-dev"; + +export const DEFAULT_CLIENT_SOURCE: TClientSource = "internal-sdk"; diff --git a/modules/realfi-partner-sdk/src/sdk/shared/detect-params.ts b/modules/realfi-partner-sdk/src/sdk/shared/detect-params.ts new file mode 100644 index 0000000000..13196e6e46 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/detect-params.ts @@ -0,0 +1,677 @@ +import { toHex } from "@blaze-cardano/core"; +import { parse } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { Core } from "@blaze-cardano/sdk"; + +import { BaseTypes } from "../../generated-types/index.js"; +import { readSingletonDatum } from "./utils.js"; +import { NETWORK_REGISTRY, type TNetworkPreset } from "./network-registry.js"; +import type { IRealfiSDKParamsV0_4 } from "../v0_4/index.js"; +import type { IRealfiSDKParamsV1_0 } from "../v1_0/index.js"; +import type { IRealfiSDKParamsV1_0Rc1 } from "../v1_0_rc1/index.js"; +import type { IRealfiSDKParamsV1_1Rc1 } from "../v1_1_rc1/index.js"; + +export type { TNetworkPreset } from "./network-registry.js"; +export { NETWORK_REGISTRY } from "./network-registry.js"; + +export type TDetectedSDKParams = + | IRealfiSDKParamsV0_4 + | IRealfiSDKParamsV1_0 + | IRealfiSDKParamsV1_0Rc1 + | IRealfiSDKParamsV1_1Rc1; + +/** + * Default yield_oracle NFT one-shot seed for a deployment that DEFERS the oracle. + * + * The seed only feeds the orchestrator hash at compile time; on-chain it is + * consumed solely when minting the oracle NFT, which a deferred deployment never + * does. An all-zeros tx hash is a valid but permanently un-consumable + * OutputReference, so a deferred deployment can omit the seed entirely and every + * consumer still reconstructs the same orchestrator hash. Supplying a real seed + * overrides this (for a deployment that intends to run the oracle). + */ +// Frozen: this is shared by reference across all omitted-seed detection/SDK +// construction in the process — a consumer mutating txHash/outputIndex would +// otherwise poison every later placeholder-seed reconstruction. +export const YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER = Object.freeze({ + txHash: Core.TransactionId("0".repeat(64)), + outputIndex: 0n, +}); + +export interface IDetectInput { + proxyBootstrap: { txHash: Core.TransactionId; outputIndex: bigint }; + treasuryBootstrap: { txHash: Core.TransactionId; outputIndex: bigint }; + stakingVaultBootstrap: { txHash: Core.TransactionId; outputIndex: bigint }; + /** + * Dedicated yield_oracle NFT one-shot seed. Only V1_1_Rc1 deployments use + * one. When omitted, detection uses the deferred-oracle placeholder; a + * deployment with a live oracle must supply its real seed. + */ + yieldOracleBootstrap?: { txHash: Core.TransactionId; outputIndex: bigint }; + assetNameHex: string; + sUSDrAssetNameHex: string; + enableTrace?: boolean; + /** + * Deployed validator hashes, keyed exactly as in + * `backend/config/env/.protocol.yaml` (e.g. + * `"v1_0/protocol_orchestrator.protocol_orchestrator.withdraw"`). + * + * Detection otherwise derives each version's hash from the Plutus artifacts + * this package bundles, which only identifies a deployment while those + * artifacts stay byte-identical to the ones actually on chain. Supplying the + * blueprint identifies the deployment by what it *is* rather than by what + * this build happens to ship, so regenerating an artifact cannot strand a + * live deployment. + * + * Omitted, derivation is used unchanged. + */ + protocolValidators?: TBlueprintValidators; +} + +/** + * Deployed validator hashes, keyed as in + * `backend/config/env/.protocol.yaml`. + * + * An array carries more than one *generation* of the same deployment — the + * hashes before and after a script cutover. Detection picks the generation + * whose orchestrator matches the chain and applies that one whole, so a + * consumer holding both spans the flip instead of failing closed between the + * on-chain update and its own config reaching it. + * + * Listing both in a single map cannot work and is actively unsafe: the + * override reads exact keys, so one generation's hashes would be applied + * regardless of which one matched, and the SDK would build against addresses + * the chain is not using. + */ +export type TBlueprintValidators = + | Readonly> + | ReadonlyArray>>; + +/** + * The generation whose protocol orchestrator equals the deployed `logic` hash. + * + * A single map is returned when it matches, so existing callers are unchanged. + * Nothing is returned when no generation matches — detection then fails closed + * rather than guessing, which is what stops a mismatched build from locking + * orders at an address nothing watches. + */ +export function selectBlueprintGeneration( + logicHash: Core.ScriptHash, + validators: TBlueprintValidators | undefined, +): Readonly> | undefined { + if (!validators) return undefined; + const generations = Array.isArray(validators) ? validators : [validators]; + return generations.find( + (generation) => + resolveBlueprintVersion(logicHash, generation) !== undefined, + ); +} + +/** + * Version-discriminating view of the live proxy datum, resolved via the + * one-shot NFT (the proxy's stable identity — the UTxO ref changes on every + * settings update, the NFT does not). + */ +export interface IProxyLogicSnapshot { + /** The `logic` script hash — first field of every ProxyDatum variant. */ + logicHash: Core.ScriptHash; + /** All datum constructor fields; index 1 holds the version-specific settings. */ + datumFields: Core.PlutusList; +} + +/** + * Version slot each blueprint validator key belongs to. Keys are the ones used + * in `backend/config/env/.protocol.yaml`, so this map is the single place + * that translates blueprint naming into SDK version naming. + */ +const BLUEPRINT_ORCHESTRATOR_VERSIONS: ReadonlyArray< + readonly [prefix: string, version: TDetectedSDKParams["version"]] +> = [ + ["v1_1_rc1/", "V1_1_Rc1"], + ["v1_0_rc1/", "V1_0_Rc1"], + ["v1_0/", "V1_0"], +]; + +/** + * Which version a deployed `logic` hash belongs to according to the blueprint, + * or undefined when no blueprint was supplied or none of its orchestrators + * matches. + * + * Only orchestrator entries are consulted: the proxy datum's first field is the + * protocol orchestrator hash, so any other validator matching would mean the + * blueprint disagrees with the chain about what a proxy points at. + */ +export function resolveBlueprintVersion( + logicHash: Core.ScriptHash, + validators: Readonly> | undefined, +): TDetectedSDKParams["version"] | undefined { + if (!validators) return undefined; + + for (const [key, hash] of Object.entries(validators)) { + if (hash !== logicHash) continue; + if (!key.includes("protocol_orchestrator")) continue; + + const match = BLUEPRINT_ORCHESTRATOR_VERSIONS.find(([prefix]) => + key.startsWith(prefix), + ); + if (match) return match[1]; + } + return undefined; +} + +/** + * Compute the one-shot policy id from the proxy bootstrap reference. + * Deterministic and local — no provider access. + */ +export function computeOneShotPolicyId( + proxyBootstrap: IDetectInput["proxyBootstrap"], + enableTrace: boolean, +): Core.Hash28ByteBase16 { + return new BaseTypes.BaseOneshotOneshotMint( + { + transaction_id: proxyBootstrap.txHash, + output_index: proxyBootstrap.outputIndex, + }, + enableTrace, + ).Script.hash(); +} + +/** + * Fetch the live proxy datum and extract the `logic` script hash. + * Costs exactly one provider lookup. + */ +export async function fetchProxyLogicSnapshot( + provider: Provider, + oneShotPolicyId: Core.Hash28ByteBase16, +): Promise { + const { datum: rawDatum } = await readSingletonDatum( + provider, + Core.AssetId(oneShotPolicyId), + ); + + // All ProxyDatum variants encode as Constr(0, [ByteArray(28 bytes), ]). + // The first field is always the `logic` ScriptHash, regardless of version. + const constr = rawDatum.asConstrPlutusData(); + if (!constr) { + throw new Error("Proxy datum is not a constructor PlutusData"); + } + const fields = constr.getData(); + const logicBytes = fields.get(0).asBoundedBytes(); + if (!logicBytes) { + throw new Error( + "First constructor field is not bytes (expected ScriptHash)", + ); + } + return { + logicHash: toHex(logicBytes) as Core.ScriptHash, + datumFields: fields, + }; +} + +/** + * Detect the active SDK version by reading the proxy datum on-chain. + * + * Phase 1: Extract the `logic` script hash from the proxy datum using raw CBOR + * access, avoiding the chicken-and-egg problem where the datum schema differs + * per version. + * + * Phase 2: Compare the extracted hash against expected protocol hashes computed + * deterministically from `proxyBootstrap`. Each version's generated-types + * module is dynamic-imported only when its turn comes — so on a V1_0_Rc1 + * deployment the V1_0 types chunk (~52 KB gzip / ~214 KB raw) is never + * fetched. Vite's chunk splitter creates one chunk per `await import()` site, + * so the chunk topology mirrors the version branches without needing + * a separate matcher file per version. + * + * Priority order: V1_0_Rc1 → V1_0 → V0_4. Latest-deployed-version-first so + * that on the current production environments (which are on V1_0_Rc1), the + * very first matcher succeeds and no additional version chunks are fetched + * to fail a mismatch check first. Rc1 stays ahead of V1_0 so that during the + * transitional period where both SDK slots resolve to byte-identical scripts + * (Rc1 is a module-path-only duplicate of V1_0), we prefer the Rc1 path — + * once V1_0 evolves on-chain, the two hashes diverge and each branch catches + * its own deployment automatically. V0_4 stays as the legacy fallback. + * + * **Re-evaluate this order if V0_4 ever becomes a primary production + * deployment again** — every session on a V0_4-only environment would pay + * two failed-hash-check fetches (V1_0_Rc1 + V1_0) before reaching V0_4. + * + * Throws `UnknownProtocolVersionError` if the `logic` hash does not match any + * known version. + * + * `config` also accepts a network preset name (`"mainnet"`, `"preprod"`, + * `"preview"`) in place of an explicit {@link IDetectInput} — resolved via + * {@link NETWORK_REGISTRY}. Custom deployments still pass an explicit config. + */ +export async function detectSDKParams( + provider: Provider, + config: IDetectInput, +): Promise; +export async function detectSDKParams( + provider: Provider, + network: TNetworkPreset, +): Promise; +export async function detectSDKParams( + provider: Provider, + config: IDetectInput | TNetworkPreset, +): Promise { + if (typeof config === "string" && !Object.hasOwn(NETWORK_REGISTRY, config)) { + throw new Error( + `Unknown network preset "${config}" — expected one of: ${Object.keys( + NETWORK_REGISTRY, + ).join(", ")}`, + ); + } + const resolved = + typeof config === "string" + ? NETWORK_REGISTRY[config as TNetworkPreset] + : config; + const enableTrace = resolved.enableTrace ?? false; + + // ── Phase 1: Compute oneshot policy and fetch proxy datum ───────────────── + + const oneShotPolicyId = computeOneShotPolicyId( + resolved.proxyBootstrap, + enableTrace, + ); + const snapshot = await fetchProxyLogicSnapshot(provider, oneShotPolicyId); + + return matchProtocolVersion(snapshot, oneShotPolicyId, resolved); +} + +/** + * Phase 2 of detection: match an already-fetched `logic` hash against each + * known version's expected hash. Local-only — dynamic imports and hash + * computation, no provider access — so a caller holding a fresh + * `IProxyLogicSnapshot` can re-resolve the version without another lookup. + */ +export async function matchProtocolVersion( + snapshot: IProxyLogicSnapshot, + oneShotPolicyId: Core.Hash28ByteBase16, + config: IDetectInput, +): Promise { + const enableTrace = config.enableTrace ?? false; + const { logicHash, datumFields: fields } = snapshot; + + // Which version the supplied blueprint says this `logic` hash belongs to, if + // any. Matching on the deployed hash rather than a derived one is what keeps + // a regenerated artifact from stranding a live deployment: the blueprint + // records what the chain runs, this build only records what it ships. + // + // Deliberately exact-match and fail-closed — a blueprint authorises the one + // deployment it names, never anything that merely looks the same shape. + // Pick the generation the chain is actually on before reading anything from + // it, so version and script hashes always come from the same generation. A + // cutover otherwise has a window where the datum names new scripts and the + // config still names old ones (or the reverse), and every consumer in it + // fails closed until its config catches up. + const deployedGeneration = selectBlueprintGeneration( + logicHash, + config.protocolValidators, + ); + const blueprintVersion = resolveBlueprintVersion( + logicHash, + deployedGeneration, + ); + // A non-empty supplied generation makes the blueprint authoritative. A miss + // does not consult derivation: blueprintVersion stays undefined, every + // matchesV1Version check fails, and detection throws + // UnknownProtocolVersionError. + const suppliedGenerations = Array.isArray(config.protocolValidators) + ? config.protocolValidators + : config.protocolValidators + ? [config.protocolValidators] + : []; + const hasAuthoritativeBlueprint = suppliedGenerations.some( + (generation) => Object.keys(generation).length > 0, + ); + const matchesV1Version = ( + derivedHash: Core.ScriptHash, + version: "V1_0" | "V1_0_Rc1" | "V1_1_Rc1", + ): boolean => + hasAuthoritativeBlueprint + ? blueprintVersion === version + : logicHash === derivedHash; + + // ── Try each version's hash candidate ───────────────────────────────────── + // + // Each version dynamic-imports its types from its own subpath module, and + // **destructures named exports at the await site** so Vite can statically + // see which specific classes are used and tree-shake the rest of the + // generated-types module (each version's index.ts has ~70 top-level + // exports; each branch needs only 1-5). + + // V1_1_Rc1 — orchestrator hash + backward-compat flag detection. + // Checked first: latest-deployed-version-first, so environments on + // V1_1_Rc1 match on the first attempt with no failed-mismatch chunk fetches. + { + const { + V1_1Rc1ProtocolMintProtocolMintWithdraw, + V1_1Rc1ProtocolStakeProtocolStakeWithdraw, + V1_1Rc1ProtocolManagementProtocolManagementWithdraw, + V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw, + V1_1Rc1YieldOracleYieldOracleMint, + SettingsV1: SettingsV1_1Rc1Schema, + } = await import("../../generated-types/v1_1_rc1/index.js"); + // eslint-disable-next-line @typescript-eslint/naming-convention + type TSettingsV1_1Rc1 = typeof SettingsV1_1Rc1Schema extends { + static: infer T; + } + ? T + : never; + + const protocolMintHashV1_1Rc1 = new V1_1Rc1ProtocolMintProtocolMintWithdraw( + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const protocolStakeHashV1_1Rc1 = + new V1_1Rc1ProtocolStakeProtocolStakeWithdraw( + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const protocolManagementHashV1_1Rc1 = + new V1_1Rc1ProtocolManagementProtocolManagementWithdraw( + oneShotPolicyId, + enableTrace, + ).Script.hash(); + // A deferred oracle omits the seed; default to the placeholder so a + // V1_1_Rc1 deployment is still recognized without any seed config. A real + // seed (for a deployment that runs the oracle) overrides it. Either way the + // block below always runs — the exact hash comparison alone decides whether + // this is actually a V1_1_Rc1 proxy, so a V1_0/older proxy simply won't + // match and falls through. + const yieldOracleBootstrap = + config.yieldOracleBootstrap ?? YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER; + { + // The orchestrator's 5th param is the `yield_oracle` *validator* hash — the + // mint+spend validator that holds the oracle UTxO (guarded by ExecuteOrders' + // `no_script_input`), NOT the distribution_oracle logic validator. Because + // yield_oracle is a mint+spend validator, that hash equals the oracle-NFT + // policy id. Derive it the same way RealfiSDKV1_1Rc1.create does so the + // recomputed orchestrator hash matches the deployed logic hash. + const oracleNftPolicyIdV1_1Rc1 = new V1_1Rc1YieldOracleYieldOracleMint( + { + transaction_id: yieldOracleBootstrap.txHash, + output_index: yieldOracleBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const orchestratorHashV1_1Rc1 = + new V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw( + oneShotPolicyId, + protocolMintHashV1_1Rc1, + protocolStakeHashV1_1Rc1, + protocolManagementHashV1_1Rc1, + oracleNftPolicyIdV1_1Rc1, + enableTrace, + ).Script.hash(); + + if (matchesV1Version(orchestratorHashV1_1Rc1, "V1_1_Rc1")) { + const settingsData = fields.get(1); + const settings = parse( + SettingsV1_1Rc1Schema, + settingsData, + ) as TSettingsV1_1Rc1; + const registry = settings.registry; + + const { V0_1TreasuryTreasurySpend } = + await import("../../generated-types/v0_1/index.js"); + const { V0_4StakingVaultStakingVaultSpend } = + await import("../../generated-types/v0_4/index.js"); + + const v01TreasuryHash = new V0_1TreasuryTreasurySpend( + { + transaction_id: config.treasuryBootstrap.txHash, + output_index: config.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const useV0_1Treasury = registry.treasury === v01TreasuryHash; + + const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend( + { + transaction_id: config.stakingVaultBootstrap.txHash, + output_index: config.stakingVaultBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const useV0_4StakingVault = + registry.staking_vault === v04StakingVaultHash; + + return { + version: "V1_1_Rc1", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + yieldOracleBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace, + useV0_1Treasury: useV0_1Treasury || undefined, + useV0_4StakingVault: useV0_4StakingVault || undefined, + // Identity, not just version: script hashes and the order address are + // otherwise derived from this package's artifacts, which is wrong for a + // chain running different bytes. + deployedValidators: deployedGeneration, + }; + } + } + } + + // V1_0_Rc1 — orchestrator hash + backward-compat flag detection. + // Checked before V1_0 because it's the current production deployment; + // matching early avoids failed-mismatch chunk fetches. + { + const { + V1_0Rc1ProtocolMintProtocolMintWithdraw, + V1_0Rc1ProtocolStakeProtocolStakeWithdraw, + V1_0Rc1ProtocolManagementProtocolManagementWithdraw, + V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw, + SettingsV1: SettingsV1Rc1Schema, + } = await import("../../generated-types/v1_0_rc1/index.js"); + type TSettingsV1Rc1 = typeof SettingsV1Rc1Schema extends { + static: infer T; + } + ? T + : never; + + const protocolMintHashRc1 = new V1_0Rc1ProtocolMintProtocolMintWithdraw( + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const protocolStakeHashRc1 = new V1_0Rc1ProtocolStakeProtocolStakeWithdraw( + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const protocolManagementHashRc1 = + new V1_0Rc1ProtocolManagementProtocolManagementWithdraw( + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const orchestratorHashRc1 = + new V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw( + oneShotPolicyId, + protocolMintHashRc1, + protocolStakeHashRc1, + protocolManagementHashRc1, + enableTrace, + ).Script.hash(); + + if (matchesV1Version(orchestratorHashRc1, "V1_0_Rc1")) { + const settingsData = fields.get(1); + const settings = parse( + SettingsV1Rc1Schema, + settingsData, + ) as TSettingsV1Rc1; + const registry = settings.registry; + + // Backward-compat checks: load V0_1 + V0_4 types only after the + // orchestrator hash matches. Same named-export destructuring pattern. + const { V0_1TreasuryTreasurySpend } = + await import("../../generated-types/v0_1/index.js"); + const { V0_4StakingVaultStakingVaultSpend } = + await import("../../generated-types/v0_4/index.js"); + + const v01TreasuryHash = new V0_1TreasuryTreasurySpend( + { + transaction_id: config.treasuryBootstrap.txHash, + output_index: config.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const useV0_1Treasury = registry.treasury === v01TreasuryHash; + + const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend( + { + transaction_id: config.stakingVaultBootstrap.txHash, + output_index: config.stakingVaultBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const useV0_4StakingVault = + registry.staking_vault === v04StakingVaultHash; + + return { + version: "V1_0_Rc1", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace, + useV0_1Treasury: useV0_1Treasury || undefined, + useV0_4StakingVault: useV0_4StakingVault || undefined, + // Identity, not just version: script hashes and the order address are + // otherwise derived from this package's artifacts, which is wrong for a + // chain running different bytes. + deployedValidators: deployedGeneration, + }; + } + } + + // V1_0 — orchestrator hash + backward-compat flag detection + { + const { + V1_0ProtocolMintProtocolMintWithdraw, + V1_0ProtocolStakeProtocolStakeWithdraw, + V1_0ProtocolManagementProtocolManagementWithdraw, + V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw, + SettingsV1: SettingsV1Schema, + } = await import("../../generated-types/v1_0/index.js"); + type TSettingsV1 = typeof SettingsV1Schema extends { static: infer T } + ? T + : never; + + const protocolMintHash = new V1_0ProtocolMintProtocolMintWithdraw( + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const protocolStakeHash = new V1_0ProtocolStakeProtocolStakeWithdraw( + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const protocolManagementHash = + new V1_0ProtocolManagementProtocolManagementWithdraw( + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const orchestratorHash = + new V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw( + oneShotPolicyId, + protocolMintHash, + protocolStakeHash, + protocolManagementHash, + enableTrace, + ).Script.hash(); + + if (matchesV1Version(orchestratorHash, "V1_0")) { + const settingsData = fields.get(1); + const settings = parse(SettingsV1Schema, settingsData) as TSettingsV1; + const registry = settings.registry; + + const { V0_1TreasuryTreasurySpend } = + await import("../../generated-types/v0_1/index.js"); + const { V0_4StakingVaultStakingVaultSpend } = + await import("../../generated-types/v0_4/index.js"); + + const v01TreasuryHash = new V0_1TreasuryTreasurySpend( + { + transaction_id: config.treasuryBootstrap.txHash, + output_index: config.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const useV0_1Treasury = registry.treasury === v01TreasuryHash; + + const v04StakingVaultHash = new V0_4StakingVaultStakingVaultSpend( + { + transaction_id: config.stakingVaultBootstrap.txHash, + output_index: config.stakingVaultBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script.hash(); + const useV0_4StakingVault = + registry.staking_vault === v04StakingVaultHash; + + return { + version: "V1_0", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace, + useV0_1Treasury: useV0_1Treasury || undefined, + useV0_4StakingVault: useV0_4StakingVault || undefined, + // Identity, not just version: script hashes and the order address are + // otherwise derived from this package's artifacts, which is wrong for a + // chain running different bytes. + deployedValidators: deployedGeneration, + }; + } + } + + // V0_4 — protocol withdraw hash only. Legacy fallback; checked last so + // that current-generation deployments don't pay a failed-hash-check load + // of V0_4 types every session. + { + const { V0_4ProtocolProtocolWithdraw } = + await import("../../generated-types/v0_4/index.js"); + const v04ProtocolHash = new V0_4ProtocolProtocolWithdraw( + oneShotPolicyId, + enableTrace, + ).Script.hash(); + + if (logicHash === v04ProtocolHash) { + return { + version: "V0_4", + proxyBootstrap: config.proxyBootstrap, + treasuryBootstrap: config.treasuryBootstrap, + stakingVaultBootstrap: config.stakingVaultBootstrap, + assetNameHex: config.assetNameHex, + sUSDrAssetNameHex: config.sUSDrAssetNameHex, + enableTrace: config.enableTrace, + }; + } + } + + throw new UnknownProtocolVersionError(logicHash); +} + +export class UnknownProtocolVersionError extends Error { + constructor(public readonly logicHash: string) { + super( + `Unrecognized protocol logic hash "${logicHash}". ` + + `The on-chain proxy datum references a script that does not match any known SDK version. ` + + `Update the SDK or check that you are connected to the correct network.`, + ); + this.name = "UnknownProtocolVersionError"; + } +} diff --git a/modules/realfi-partner-sdk/src/sdk/shared/errors.ts b/modules/realfi-partner-sdk/src/sdk/shared/errors.ts new file mode 100644 index 0000000000..16cfa55af0 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/errors.ts @@ -0,0 +1,42 @@ +import type { Core } from "@blaze-cardano/sdk"; + +/** + * Thrown by `deployScript` when a reference script with the same hash + * already exists on-chain. The thrown instance carries the existing + * reference UTxO so callers that want to reuse the deployment don't + * need to re-query the provider. + * + * Catch this class specifically when a deployment step should be + * idempotent across reruns (e.g. resuming a partially-failed + * bootstrap or upgrade flow): + * + * ```ts + * try { + * const tx = await sdk.deployProtocol(); + * // ...submit... + * } catch (e) { + * if (e instanceof ScriptAlreadyDeployedError) { + * // Use e.refInput, or just skip this step. + * return; + * } + * throw e; + * } + * ``` + */ +export class ScriptAlreadyDeployedError extends Error { + override readonly name = "ScriptAlreadyDeployedError"; + readonly scriptHash: Core.ScriptHash; + readonly refInput: Core.TransactionUnspentOutput; + + constructor( + scriptHash: Core.ScriptHash, + refInput: Core.TransactionUnspentOutput, + ) { + super( + `Script ${scriptHash} is already deployed as a reference script at ` + + `${refInput.input().transactionId()}#${refInput.input().index()}`, + ); + this.scriptHash = scriptHash; + this.refInput = refInput; + } +} diff --git a/modules/realfi-partner-sdk/src/sdk/shared/index.ts b/modules/realfi-partner-sdk/src/sdk/shared/index.ts new file mode 100644 index 0000000000..3654ba4394 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/index.ts @@ -0,0 +1,10 @@ +export * from "./types.js"; +export * from "./utils.js"; +export * from "./base.js"; +export * from "./client-id.js"; +export * from "./detect-params.js"; +export * from "./timelock.js"; +export * from "./reserve-assets.js"; +export * from "./slots.js"; +export * from "./cancel.js"; +export * from "./errors.js"; diff --git a/modules/realfi-partner-sdk/src/sdk/shared/network-registry.ts b/modules/realfi-partner-sdk/src/sdk/shared/network-registry.ts new file mode 100644 index 0000000000..2b5b41c7f7 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/network-registry.ts @@ -0,0 +1,102 @@ +// Per-network on-chain bootstrap references for protocol detection. + +import { Core } from "@blaze-cardano/sdk"; + +import type { IDetectInput } from "./detect-params.js"; + +export type TNetworkPreset = "mainnet" | "preprod" | "preview"; + +// Source of truth: frontend/app/config/{mainnet,preprod,preview}.json +// (proxyBootstrap/treasuryBootstrap/stakingVaultBootstrap, stablecoinAssetName, +// sUSDrAssetName). Update an entry only when that network's protocol is +// redeployed with new bootstrap UTxOs. +// +// Frozen (entry + bootstrap objects): NETWORK_REGISTRY is shared by reference +// into detectSDKParams — a consumer mutating proxyBootstrap.txHash would +// otherwise poison every later detectParams(provider, "mainnet") call. +const freezeBootstrap = < + T extends { txHash: Core.TransactionId; outputIndex: bigint }, +>( + b: T, +): Readonly => Object.freeze(b); + +const freezeDetectInput = (entry: IDetectInput): Readonly => + Object.freeze({ + ...entry, + proxyBootstrap: freezeBootstrap(entry.proxyBootstrap), + treasuryBootstrap: freezeBootstrap(entry.treasuryBootstrap), + stakingVaultBootstrap: freezeBootstrap(entry.stakingVaultBootstrap), + ...(entry.yieldOracleBootstrap + ? { yieldOracleBootstrap: freezeBootstrap(entry.yieldOracleBootstrap) } + : {}), + }); + +export const NETWORK_REGISTRY: Readonly> = + Object.freeze({ + mainnet: freezeDetectInput({ + proxyBootstrap: { + txHash: Core.TransactionId( + "d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac", + ), + outputIndex: 0n, + }, + treasuryBootstrap: { + txHash: Core.TransactionId( + "d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac", + ), + outputIndex: 1n, + }, + stakingVaultBootstrap: { + txHash: Core.TransactionId( + "d09c01e21d4ee92b9e58686ca0284288c9c889d8e1a9ab7ab799211a171863ac", + ), + outputIndex: 2n, + }, + assetNameHex: "55534472", + sUSDrAssetNameHex: "7355534472", + }), + preprod: freezeDetectInput({ + proxyBootstrap: { + txHash: Core.TransactionId( + "d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7", + ), + outputIndex: 0n, + }, + treasuryBootstrap: { + txHash: Core.TransactionId( + "d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7", + ), + outputIndex: 1n, + }, + stakingVaultBootstrap: { + txHash: Core.TransactionId( + "d9654f43caff2b471bc4db912d8ec6d1932cb48093c3fa2fc3f564519ac855f7", + ), + outputIndex: 2n, + }, + assetNameHex: "55534472", + sUSDrAssetNameHex: "7355534472", + }), + preview: freezeDetectInput({ + proxyBootstrap: { + txHash: Core.TransactionId( + "a32795a0be2dfef61583ab0d7b2c959bbbeab159530dc5a3ef0fa61d94595c99", + ), + outputIndex: 1n, + }, + treasuryBootstrap: { + txHash: Core.TransactionId( + "cf7450305eeaca76ee15a2a863b7d2d272dce7493feae489ec18395cc22b4646", + ), + outputIndex: 2n, + }, + stakingVaultBootstrap: { + txHash: Core.TransactionId( + "17ad2403529298bc8b6a3150069cb0edf55a17e3c334d8b9e0f98ca0e3922bbb", + ), + outputIndex: 0n, + }, + assetNameHex: "55534472", + sUSDrAssetNameHex: "7355534472", + }), + }); diff --git a/modules/realfi-partner-sdk/src/sdk/shared/public.ts b/modules/realfi-partner-sdk/src/sdk/shared/public.ts new file mode 100644 index 0000000000..f2934cce4b --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/public.ts @@ -0,0 +1,16 @@ +// Partner-facing helper subset, exposed as the public `Utils` namespace. +export { + addressToDestination, + destinationToAddress, + getSignatureKeyHashesFromMultisigScript, + getScriptKeyHashesFromMultisigScript, + getAllKeyHashesFromMultisigScript, + normalizeProtocolVersion, + normalizeOrderVersion, +} from "./utils.js"; +export { + findReserveAsset, + usdrToReserve, + usdrToReserveCeil, +} from "./reserve-assets.js"; +export { buildTimelockAddress } from "./timelock.js"; diff --git a/modules/realfi-partner-sdk/src/sdk/shared/reserve-assets.ts b/modules/realfi-partner-sdk/src/sdk/shared/reserve-assets.ts new file mode 100644 index 0000000000..4fc505d0dc --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/reserve-assets.ts @@ -0,0 +1,86 @@ +import type { IReserveAsset } from "./types.js"; + +type TSettingsWithReserveAssets = { + reserve_assets: IReserveAsset[]; +}; + +type TOrderInfoWithReserveAsset = { + reserveAsset?: [string, string]; + amount: bigint; +}; + +/** + * Find a reserve asset config by policy+name from settings. + */ +export function findReserveAsset( + settings: TSettingsWithReserveAssets, + asset: [string, string], +): IReserveAsset { + const found = settings.reserve_assets.find( + (ra) => ra.asset[0] === asset[0] && ra.asset[1] === asset[1], + ); + if (!found) { + throw new Error( + `Reserve asset not found in settings: ${asset[0]}${asset[1]}`, + ); + } + if (found.numerator === 0n) { + throw new Error("Reserve asset numerator must be non-zero"); + } + if (found.denominator === 0n) { + throw new Error("Reserve asset denominator must be non-zero"); + } + return found; +} + +/** + * Convert USDr amount to reserve amount (floor division, protocol-protective for burns). + * Matches on-chain: usdr_to_reserve(amount, ra) = amount * denominator / numerator + */ +export function usdrToReserve(usdrAmount: bigint, ra: IReserveAsset): bigint { + return (usdrAmount * ra.denominator) / ra.numerator; +} + +/** + * Convert USDr amount to reserve amount (ceiling division, protocol-protective for mints). + * Matches on-chain: usdr_to_reserve_ceil(amount, ra) = (amount * denominator + numerator - 1) / numerator + */ +export function usdrToReserveCeil( + usdrAmount: bigint, + ra: IReserveAsset, +): bigint { + return (usdrAmount * ra.denominator + ra.numerator - 1n) / ra.numerator; +} + +/** + * Compute per-reserve-asset deltas from order infos. + * Groups orders by reserve asset and converts USDr amounts to reserve amounts. + * @param negate If true, negate the delta (used for withdraw where amounts are positive but treasury outflow is negative) + */ +export function computeReserveDeltas( + orderInfos: TOrderInfoWithReserveAsset[], + settings: TSettingsWithReserveAssets, + negate: boolean = false, +): Map { + const deltas = new Map(); + const amountsByAsset = new Map(); + + for (const orderInfo of orderInfos) { + const assetKey = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1]; + amountsByAsset.set( + assetKey, + (amountsByAsset.get(assetKey) ?? 0n) + orderInfo.amount, + ); + } + + for (const [assetKey, totalUsdr] of amountsByAsset.entries()) { + const orderWithAsset = orderInfos.find( + (o) => o.reserveAsset![0] + o.reserveAsset![1] === assetKey, + )!; + const ra = findReserveAsset(settings, orderWithAsset.reserveAsset!); + const reserveAmount = usdrToReserve(negate ? -totalUsdr : totalUsdr, ra); + deltas.set(assetKey, reserveAmount); + } + + return deltas; +} diff --git a/modules/realfi-partner-sdk/src/sdk/shared/slots.ts b/modules/realfi-partner-sdk/src/sdk/shared/slots.ts new file mode 100644 index 0000000000..790d70909a --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/slots.ts @@ -0,0 +1,73 @@ +import type { Provider } from "@blaze-cardano/query"; +import { Core } from "@blaze-cardano/sdk"; + +/** + * The slot/time conversions a slot-alignment needs. Structural (rather than the + * `Provider` class) so callers can pass any provider — Blockfrost, Kupmios, + * `EmulatorProvider` — and tests can pass a plain object with a known slot + * config. Note that `Emulator` (the clock, not its provider) also satisfies this + * shape while rounding the other way; {@link slotFloor} handles both. + */ +export type TSlotClock = Pick; + +/** + * The integer slot that contains `timeMs`: the latest slot that has already + * started at `timeMs`. + * + * `provider.unixToSlot` does **not** floor — it returns + * `(ms - zeroTime) / slotLength + zeroSlot`, so for any wall-clock time that is + * not exactly on a slot boundary it yields a **fractional** slot. Two things + * then go wrong if that value is used as-is: + * + * 1. A tx body stores `invalid_before` / `invalid_hereafter` as **integer** + * slots, and the CBOR writer silently truncates the fraction. The value the + * validator reads is therefore not the value the SDK computed with. + * 2. The round-trip `slotToUnix(unixToSlot(t))` — the natural way to express + * "snap `t` to its slot" — is the *identity* on `t`, not an alignment. + * + * That combination cost us a crashed windowed deposit on preview: the vault + * output's `diffusion_start` kept the sub-slot remainder while the tx's validity + * lower bound was floored, so `validate_deposit_diffusion`'s + * `diffusion_start == now` check failed by that remainder (REALFI-653). The + * emulator hid it because the clock injected in tests is already slot-aligned — + * not because of any provider difference: `EmulatorProvider` extends the same + * `Provider` base and returns the same fractional slots. + * + * Flooring alone would not be enough for a clock that ROUNDS UP: `Emulator` + * itself (as opposed to the `EmulatorProvider` Blaze hands the SDK) implements + * `unixToSlot` with `Math.ceil`, and being structural, `TSlotClock` accepts it. + * Flooring a ceiled slot is a no-op, which would hand back a slot that has not + * started yet. So the candidate is checked against its own start time and walked + * back when it overshoots — a branch no real provider ever takes, and the reason + * the contract above holds for *any* clock rather than only the fractional ones. + * + * **Audit invariant:** `unixToSlot` must not be called anywhere else in the SDK. + * `rg 'unixToSlot' src/` matching only this file *is* the audit — keep it that + * way so a future time→slot conversion cannot reintroduce the bug. + */ +export function slotFloor( + clock: TSlotClock, + timeMs: bigint | number, +): Core.Slot { + const candidate = Math.floor(Number(clock.unixToSlot(timeMs))); + const overshoots = + Number(clock.slotToUnix(Core.Slot(candidate))) > Number(timeMs); + return Core.Slot(overshoots ? candidate - 1 : candidate); +} + +/** + * `timeMs` snapped back to the start of its slot, as POSIX ms — exactly the + * "now" a validator reads from a tx whose validity bound is + * `slotFloor(clock, timeMs)`. Use this for any timestamp that has to equal a + * validity bound on-chain (a diffusion window's `diffusion_start`, a rate quote + * time), so the datum and the tx body cannot disagree. + * + * Idempotent — aligning an already-aligned time is a no-op — so a time derived + * from an aligned one (a backoff, a forward window) can be aligned again safely. + */ +export function slotAlignedTimeMs( + clock: TSlotClock, + timeMs: bigint | number, +): bigint { + return BigInt(clock.slotToUnix(slotFloor(clock, timeMs))); +} diff --git a/modules/realfi-partner-sdk/src/sdk/shared/timelock.ts b/modules/realfi-partner-sdk/src/sdk/shared/timelock.ts new file mode 100644 index 0000000000..74a09fea66 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/timelock.ts @@ -0,0 +1,376 @@ +import { addressFromCredentials } from "@blaze-cardano/core"; +import { Core } from "@blaze-cardano/sdk"; +import type { TClientSource } from "./client-id.js"; +import type { TMultisigScript } from "./types.js"; + +type TDestinationCredentialLike = + | { VerificationKey: [string] } + | { Script: [string] }; + +type TTimelockDestinationLike = { + address: { + payment_credential: TDestinationCredentialLike; + stake_credential?: + | { Inline: [TDestinationCredentialLike] } + | { Pointer: unknown }; + }; +}; + +function bigintToSlot(value: bigint, label: string): Core.Slot { + if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) { + throw new Error(`${label} must be a non-negative safe integer`); + } + return Core.Slot(Number(value)); +} + +function bigintToNativeScriptCount(value: bigint, label: string): number { + if (value < 0n || value > BigInt(Number.MAX_SAFE_INTEGER)) { + throw new Error(`${label} must be a non-negative safe integer`); + } + return Number(value); +} + +function timelockStartNativeScript(unlockSlot: bigint): Core.NativeScript { + return Core.NativeScript.newTimelockStart( + new Core.TimelockStart(bigintToSlot(unlockSlot, "unlockSlot")), + ); +} + +/** + * Convert the protocol MultisigScript shape to a Cardano native script. + * + * The protocol's `Script` variant references an arbitrary script hash, which + * native scripts cannot require directly, so this helper rejects it. + */ +export function multisigScriptToNativeScript( + multisig: TMultisigScript, +): Core.NativeScript { + if ("Signature" in multisig) { + const hash = Core.Ed25519KeyHashHex(multisig.Signature.key_hash); + return Core.NativeScript.newScriptPubkey(new Core.ScriptPubkey(hash)); + } + if ("AllOf" in multisig) { + return Core.NativeScript.newScriptAll( + new Core.ScriptAll( + multisig.AllOf.scripts.map(multisigScriptToNativeScript), + ), + ); + } + if ("AnyOf" in multisig) { + return Core.NativeScript.newScriptAny( + new Core.ScriptAny( + multisig.AnyOf.scripts.map(multisigScriptToNativeScript), + ), + ); + } + if ("AtLeast" in multisig) { + return Core.NativeScript.newScriptNOfK( + new Core.ScriptNOfK( + multisig.AtLeast.scripts.map(multisigScriptToNativeScript), + bigintToNativeScriptCount( + multisig.AtLeast.required, + "AtLeast.required", + ), + ), + ); + } + if ("Before" in multisig) { + return Core.NativeScript.newTimelockExpiry( + new Core.TimelockExpiry( + bigintToSlot(multisig.Before.time, "Before.time"), + ), + ); + } + if ("After" in multisig) { + return timelockStartNativeScript(multisig.After.time); + } + if ("Script" in multisig) { + throw new Error( + "MultisigScript Script variant cannot be converted to a native script", + ); + } + + throw new Error("Unrecognized MultisigScript variant"); +} + +/** + * Build the native script used for timelock destinations after unstaking. + * + * The script enforces: AllOf { Signature(userKeyHash), After(unlockTime) } + * meaning the user can only spend the locked USDr after the unlock time. + * + * Use this to reconstruct the script when spending from a timelock address. + */ +export function buildTimelockNativeScript( + userKeyHash: string, + unlockTime: bigint, +): Core.NativeScript { + const pubkeyScript = Core.NativeScript.newScriptPubkey( + new Core.ScriptPubkey(Core.Ed25519KeyHashHex(userKeyHash)), + ); + const afterScript = timelockStartNativeScript(unlockTime); + return Core.NativeScript.newScriptAll( + new Core.ScriptAll([pubkeyScript, afterScript]), + ); +} + +/** + * Build the native script used for treasury-managed unstake destinations. + * + * The script enforces: AllOf { After(unlockSlot), ownerMultisigScript }. + */ +export function buildMultisigTimelockNativeScript( + owner: TMultisigScript, + unlockSlot: bigint, +): Core.NativeScript { + return Core.NativeScript.newScriptAll( + new Core.ScriptAll([ + timelockStartNativeScript(unlockSlot), + multisigScriptToNativeScript(owner), + ]), + ); +} + +/** + * Pick the timelock native script that a UTxO is actually locked at. + * + * One owner key and one unlock slot yield two different scripts depending on + * which flow created the timelock: the retail unstake path builds + * `AllOf { Signature, After }` and the treasury/multisig path + * `AllOf { After, Signature }`. Same requirements, different element order, + * different hash. The locking address names the script, so it is the authority + * on which one to provide — guessing produces a witness the ledger cannot + * resolve (Sentry DAPP-58). + * + * Timelocks requiring keys beyond `ownerKeyHash` match neither candidate and + * are rejected here, where the reason can be stated, rather than deep inside + * transaction building. + */ +export function resolveTimelockNativeScript( + lockingAddress: Core.Address, + ownerKeyHash: string, + unlockSlot: bigint, +): Core.NativeScript { + const paymentPart = lockingAddress.getProps().paymentPart; + if (!paymentPart || paymentPart.type !== Core.CredentialType.ScriptHash) { + throw new Error( + `${lockingAddress.toBech32()} is not a script address, so it is not a timelock this wallet can claim`, + ); + } + + const candidates = [ + buildTimelockNativeScript(ownerKeyHash, unlockSlot), + buildMultisigTimelockNativeScript( + { Signature: { key_hash: ownerKeyHash } }, + unlockSlot, + ), + ]; + const match = candidates.find( + (candidate) => candidate.hash() === paymentPart.hash, + ); + if (!match) { + throw new Error( + `Script hash ${paymentPart.hash} is not a timelock this wallet can claim: ` + + `neither timelock shape for owner ${ownerKeyHash} at unlock slot ${unlockSlot} produces it. ` + + `A timelock requiring further keys must be claimed through the flow that created it.`, + ); + } + return match; +} + +/** + * Reconstruct the timelock address for a given user key hash, optional stake + * credential, and unlock slot. Useful for querying the live UTxO set to + * determine whether a claim has already been made. + */ +export function buildTimelockAddress( + networkId: Core.NetworkId, + userKeyHash: string, + unlockSlot: bigint, + stakeCredential?: Core.Credential, +): Core.Address { + const nativeScript = buildTimelockNativeScript(userKeyHash, unlockSlot); + return addressFromCredentials( + networkId, + Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash: nativeScript.hash(), + }), + stakeCredential, + ); +} + +/** + * Build a destination that routes funds to a timelock native script while + * preserving the original stake credential. + */ +export function buildTimelockDestination( + userDestination: T, + unlockTime: bigint, +): { + address: { + payment_credential: { Script: [string] }; + stake_credential: T["address"]["stake_credential"]; + }; + datum: "NoDatum"; +} { + const paymentCred = userDestination.address.payment_credential; + let userKeyHash: string; + + if ("VerificationKey" in paymentCred) { + userKeyHash = paymentCred.VerificationKey[0]; + } else { + throw new Error( + "Unstake destination must use a verification key payment credential", + ); + } + + const nativeScript = buildTimelockNativeScript(userKeyHash, unlockTime); + const scriptHash = nativeScript.hash(); + + return { + address: { + payment_credential: { Script: [scriptHash] }, + stake_credential: userDestination.address.stake_credential, + }, + datum: "NoDatum", + }; +} + +function credentialToMetadatum( + cred: TDestinationCredentialLike, +): Core.Metadatum { + const map = new Core.MetadatumMap(); + if ("VerificationKey" in cred) { + map.insert( + Core.Metadatum.newText("VerificationKey"), + Core.Metadatum.newText(cred.VerificationKey[0]), + ); + } else { + map.insert( + Core.Metadatum.newText("Script"), + Core.Metadatum.newText(cred.Script[0]), + ); + } + return Core.Metadatum.newMap(map); +} + +export function destinationToUnstakeMetadatum( + destination: TTimelockDestinationLike, +): Core.Metadatum { + const addressMap = new Core.MetadatumMap(); + addressMap.insert( + Core.Metadatum.newText("payment_credential"), + credentialToMetadatum(destination.address.payment_credential), + ); + + const stakeCredential = destination.address.stake_credential; + if (stakeCredential && "Inline" in stakeCredential) { + const inlineMap = new Core.MetadatumMap(); + inlineMap.insert( + Core.Metadatum.newText("Inline"), + credentialToMetadatum(stakeCredential.Inline[0]), + ); + addressMap.insert( + Core.Metadatum.newText("stake_credential"), + Core.Metadatum.newMap(inlineMap), + ); + } + + return Core.Metadatum.newMap(addressMap); +} + +/** Label 55534472: unstake destination + unlock_time on every unstake order. */ +export const UNSTAKE_METADATA_LABEL = 55534472n; + +/** Build the metadatum for label 55534472 from a destination and unlock slot. */ +export function buildUnstakeMetadatum( + destination: TTimelockDestinationLike, + unlockSlot: bigint, +): Core.Metadatum { + const unstakeMetaMap = new Core.MetadatumMap(); + unstakeMetaMap.insert( + Core.Metadatum.newText("unlock_time"), + Core.Metadatum.newInteger(unlockSlot), + ); + unstakeMetaMap.insert( + Core.Metadatum.newText("destination"), + destinationToUnstakeMetadatum(destination), + ); + return Core.Metadatum.newMap(unstakeMetaMap); +} + +/** Label 55534473: SDK builder origin + version on every order transaction. */ +export const ORDER_ORIGIN_METADATA_LABEL = 55534473n; + +/** Build the metadatum for label 55534473 from a source + version pair. */ +export function buildOrderOriginMetadatum( + source: TClientSource, + sdkVersion: string, +): Core.Metadatum { + const map = new Core.MetadatumMap(); + map.insert(Core.Metadatum.newText("source"), Core.Metadatum.newText(source)); + map.insert( + Core.Metadatum.newText("version"), + Core.Metadatum.newText(sdkVersion), + ); + return Core.Metadatum.newMap(map); +} + +/** Build a Metadata object containing only the origin label (55534473). */ +export function buildOrderOriginMetadata( + source: TClientSource, + sdkVersion: string, +): Core.Metadata { + const metadataMap = new Map(); + metadataMap.set( + ORDER_ORIGIN_METADATA_LABEL, + buildOrderOriginMetadatum(source, sdkVersion), + ); + return new Core.Metadata(metadataMap); +} + +export function buildUnstakeOrderMetadata( + destination: TTimelockDestinationLike, + unlockSlot: bigint, + source: TClientSource, + sdkVersion: string, +): Core.Metadata { + const metadataMap = new Map(); + metadataMap.set( + UNSTAKE_METADATA_LABEL, + buildUnstakeMetadatum(destination, unlockSlot), + ); + metadataMap.set( + ORDER_ORIGIN_METADATA_LABEL, + buildOrderOriginMetadatum(source, sdkVersion), + ); + return new Core.Metadata(metadataMap); +} + +/** + * Build a destination that routes funds to a treasury multisig timelock native + * script while preserving the original stake credential. + */ +export function buildMultisigTimelockDestination< + T extends TTimelockDestinationLike, +>( + destination: T, + owner: TMultisigScript, + unlockSlot: bigint, +): { + address: { + payment_credential: { Script: [string] }; + stake_credential: T["address"]["stake_credential"]; + }; + datum: "NoDatum"; +} { + const nativeScript = buildMultisigTimelockNativeScript(owner, unlockSlot); + return { + address: { + payment_credential: { Script: [nativeScript.hash()] }, + stake_credential: destination.address.stake_credential, + }, + datum: "NoDatum", + }; +} diff --git a/modules/realfi-partner-sdk/src/sdk/shared/types.ts b/modules/realfi-partner-sdk/src/sdk/shared/types.ts new file mode 100644 index 0000000000..902c3568bb --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/types.ts @@ -0,0 +1,142 @@ +import type { Core } from "@blaze-cardano/sdk"; + +/** + * Protocol version identifier + */ +export type TProtocolVersion = + | "V0" + | "V0_1" + | "V0_2" + | "V0_3" + | "V0_4" + | "V1_0" + | "V1_0_Rc1" + | "V1_1_Rc1"; + +/** + * Bootstrap parameters for initializing the SDK + */ +export interface IProxyBootstrap { + txHash: Core.TransactionId; + outputIndex: bigint; +} + +/** + * Base parameters common to all SDK versions + */ +export interface IBaseSDKParams { + version: TProtocolVersion; + proxyBootstrap: IProxyBootstrap; + assetNameHex: string; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When set, + * deployment locks reference UTxOs at this address and resolution queries it + * first (a small, fast UTxO set). When omitted, Blaze's burn address is used. + */ + scriptDeploymentAddress?: Core.Address; +} + +/** + * Reference inputs that can be cached for performance + */ +export interface ICachedReferenceInputs { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + stakingVaultRefInput?: Core.TransactionUnspentOutput; + // V1.0 additional protocol scripts + protocolMintRefInput?: Core.TransactionUnspentOutput; + protocolStakeRefInput?: Core.TransactionUnspentOutput; + protocolManagementRefInput?: Core.TransactionUnspentOutput; +} + +/** + * Result type for raw proxy-datum fetches. + */ +export interface IRawProxyDatumResult { + proxyUtxo: Core.TransactionUnspentOutput; + proxyDatum: Core.PlutusData; +} + +/** + * Result type for parsed proxy-datum fetches. + */ +export interface IProxyDatumResult extends IRawProxyDatumResult { + parsedProxyDatum: T; +} + +/** + * Result type for getTreasuryDatum operations + */ +export interface ITreasuryDatumResult { + treasuryUtxo: Core.TransactionUnspentOutput; + treasuryDatum: Core.PlutusData; + parsedTreasuryDatum: T; +} + +/** + * Result type for getVaultDatum operations + */ +export interface IVaultDatumResult { + vaultUtxo: Core.TransactionUnspentOutput; + vaultDatum: Core.PlutusData; + parsedVaultDatum: T; +} + +/** + * Output reference type used in scripts + */ +export interface IOutputReference { + transaction_id: Core.TransactionId; + output_index: bigint; +} + +/** + * Version-agnostic MultisigScript. Structurally identical across all + * protocol versions (same Plutus CBOR encoding). + */ +export type TMultisigScript = + | { Signature: { key_hash: string } } + | { AllOf: { scripts: TMultisigScript[] } } + | { AnyOf: { scripts: TMultisigScript[] } } + | { AtLeast: { required: bigint; scripts: TMultisigScript[] } } + | { Before: { time: bigint } } + | { After: { time: bigint } } + | { Script: { script_hash: string } }; + +/** + * Version-agnostic reserve asset. + */ +export interface IReserveAsset { + asset: [string, string]; + numerator: bigint; + denominator: bigint; +} + +/** + * Version-agnostic proxy settings — common fields only. + * Hides version-specific fields (direct_mint/burn_permission, registry shape). + */ +export interface IProxySettings { + mint_permission: TMultisigScript; + burn_permission: TMultisigScript; + withdraw_permission: TMultisigScript; + deposit_permission: TMultisigScript; + stake_permission: TMultisigScript; + unstake_permission: TMultisigScript; + reserve_assets: IReserveAsset[]; +} + +/** + * Permission key — for safely indexing into IProxySettings. + */ +export type TPermissionKey = + | "mint_permission" + | "burn_permission" + | "withdraw_permission" + | "deposit_permission" + | "stake_permission" + | "unstake_permission"; diff --git a/modules/realfi-partner-sdk/src/sdk/shared/utils.ts b/modules/realfi-partner-sdk/src/sdk/shared/utils.ts new file mode 100644 index 0000000000..00270ff506 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/shared/utils.ts @@ -0,0 +1,1319 @@ +import { addressFromCredentials } from "@blaze-cardano/core"; +import { parse, type TSchema } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { + Core, + TxBuilder, + type Blaze, + type CIP30DataSignature, + type Wallet, +} from "@blaze-cardano/sdk"; + +import * as Data from "@blaze-cardano/data"; +import { + SignatureList, + type Destination, +} from "src/generated-types/v0_3/index.js"; +import { ScriptAlreadyDeployedError } from "./errors.js"; +import { V0_3Types } from "../../generated-types/index.js"; +import type { TMultisigScript, TProtocolVersion } from "./types.js"; + +type TDestinationCredentialLike = + | { VerificationKey: [string] } + | { Script: [string] }; + +type TDestinationLike = { + address: { + payment_credential: TDestinationCredentialLike; + stake_credential?: { Inline: [TDestinationCredentialLike] } | unknown; + }; + datum: + | "NoDatum" + | { DatumHash: [string] } + | { InlineDatum: [Core.PlutusData | unknown] }; +}; + +/** + * Create a reward account from a script + */ +export function rewardAccountFromScript( + script: Core.Script, + network: Core.NetworkId, +): Core.RewardAccount { + const credential = credentialFromScript(script); + return Core.RewardAccount.fromCredential(credential.toCore(), network); +} + +/** + * Create a credential from a script + */ +export function credentialFromScript(script: Core.Script): Core.Credential { + return credentialFromScriptHash(script.hash()); +} + +/** + * Create a credential from a script hash + */ +export function credentialFromScriptHash( + scriptHash: Core.Hash28ByteBase16, +): Core.Credential { + return Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash: scriptHash, + }); +} + +/** + * Send a value (with an attached datum) to either a key-credentialled or + * script-credentialled address. This helper emits an explicit output for + * the destination address so callers (mintOneShot / updateOneShotDatum / + * etc.) work transparently in both single-signer and multisig deployments. + * + * Mutates `tx` (matching Blaze's builder pattern) and returns it for chaining. + */ +export function lockOrPayAssets( + tx: TxBuilder, + address: Core.Address, + value: Core.Value, + datum: Core.PlutusData, +): TxBuilder { + return addDirectOutput(tx, address, value, datum); +} + +/** + * Add an explicit transaction output for the target address and value. + * + * Mutates `tx` and returns it for call sites that want to keep builder-style + * chaining. + */ +export function addDirectOutput( + tx: TxBuilder, + address: Core.Address, + value: Core.Value, + datum?: Core.PlutusData, +): TxBuilder { + const output = new Core.TransactionOutput(address, value); + if (datum) { + output.setDatum(Core.Datum.newInlineData(datum)); + } + tx.addOutput(output); + return tx; +} + +/** + * Blockfrost responds to `getUnspentOutputs` on an unused address with HTTP + * 404 ("requested component has not been found"), which the provider surfaces + * as a generic Error. Treat only that exact failure as "not found at this + * address" so outages and malformed responses still propagate. + * + * The query path is matched with an optional leading slash: @blaze-cardano/query + * builds `/addresses/...`, while a caller paging the same endpoint itself builds + * `addresses/...` (Blockfrost's base url already ends in `/`). The cron carries + * a matcher for the same message + * (`cli/src/scripts/lib/order-utxo-fetch.ts`); keep the two in step. + */ +const BLOCKFROST_ADDRESS_NOT_FOUND = + /^getUnspentOutputs: Blockfrost threw "The requested component has not been found\." for query: \/?addresses\//; + +function isBlockfrostAddressNotFoundError(error: unknown): boolean { + return ( + error instanceof Error && BLOCKFROST_ADDRESS_NOT_FOUND.test(error.message) + ); +} + +/** + * Fully resolve the address's current unspent outputs. + * + * Blockfrost can expose a reference script through the transaction-output + * endpoint before (or without) hydrating `reference_script_hash` on the address + * UTxO endpoint. Re-resolving the inputs returned by the address query + * preserves the unspent-only constraint while recovering the full output + * metadata from the exact transactions. + */ +async function hydrateUnspentOutputs

( + blaze: Blaze, + address: Core.Address, +): Promise { + const unspent = await blaze.provider.getUnspentOutputs(address); + if (unspent.length === 0) return []; + return blaze.provider.resolveUnspentOutputs( + unspent.map((utxo) => utxo.input()), + ); +} + +/** + * A `hydrateUnspentOutputs` call shared by every hash resolved against the same + * address in one pass. Hydration costs one provider request per UTxO at the + * address, so a caller resolving eight script hashes against a provider that + * omits script metadata would otherwise pay the whole sweep eight times, and + * the dapp runs this against a rate-limited Blockfrost proxy. Scoped to a + * single call rather than cached on the SDK so a later pass still sees a script + * deployed in the meantime. + */ +type THydrateAddress = () => Promise; + +function shareHydration

( + blaze: Blaze, + address: Core.Address, +): THydrateAddress { + let pending: Promise | undefined; + return () => (pending ??= hydrateUnspentOutputs(blaze, address)); +} + +/** + * Resolve a script reference at a specific address, tolerating Blockfrost's + * throw for an address with no history instead of an empty result, and its + * missing script metadata on the address UTxO endpoint. + */ +async function resolveScriptRefAtAddress

( + blaze: Blaze, + hash: Core.Hash28ByteBase16, + address: Core.Address, + hydrate: THydrateAddress = () => hydrateUnspentOutputs(blaze, address), +): Promise { + try { + const resolved = await blaze.provider.resolveScriptRef(hash, address); + if (resolved) return resolved; + } catch (error) { + if (!isBlockfrostAddressNotFoundError(error)) throw error; + return undefined; + } + + const hydrated = await hydrate(); + return hydrated.find((utxo) => utxo.output().scriptRef()?.hash() === hash); +} + +/** + * Deploy a script as a reference script. + * + * When `address` is provided, the reference UTxO is locked at that address + * (instead of Blaze's default burn address), which lets resolution query a + * small, dedicated UTxO set rather than the shared burn address. + * + * Throws `ScriptAlreadyDeployedError` (carrying the existing reference + * UTxO) if the script is already deployed *at the target location* — the + * specified `address` when given, otherwise the burn-address default. The + * guard is intentionally scoped to the deploy target only: a copy that + * exists elsewhere (e.g. a legacy copy at the burn address) does NOT block + * deploying to a newly specified address, which is exactly what a migration + * needs. Callers that want idempotent reruns should catch that specific class. + */ +export async function deployScript

( + blaze: Blaze, + script: Core.Script, + address?: Core.Address, +): Promise { + const refInput = address + ? await resolveScriptRefAtAddress(blaze, script.hash(), address) + : await blaze.provider.resolveScriptRef(script.hash()); + if (refInput) { + throw new ScriptAlreadyDeployedError(script.hash(), refInput); + } + // `address === undefined` -> Blaze locks the script at the burn address. + const deployTx = blaze.newTransaction().deployScript(script, address); + return deployTx; +} + +const NFT_LOOKUP_ATTEMPTS = 3; +const NFT_LOOKUP_BACKOFF_MS = 250; + +const sleep = (ms: number): Promise => + new Promise((resolve) => setTimeout(resolve, ms)); + +/** + * Look up an NFT UTxO, retrying indexer lag after the output moves. + * Treats both a thrown 404 and an empty result as lag. Re-throws the last + * provider error when the budget is exhausted. + */ +export async function getUnspentOutputByNftWithRetry( + provider: Provider, + assetId: Core.AssetId, +): Promise { + let lastError: unknown; + for (let attempt = 1; attempt <= NFT_LOOKUP_ATTEMPTS; attempt++) { + try { + const utxo = await provider.getUnspentOutputByNFT(assetId); + if (utxo) return utxo; + lastError = undefined; + } catch (error) { + lastError = error; + } + if (attempt < NFT_LOOKUP_ATTEMPTS) { + await sleep(NFT_LOOKUP_BACKOFF_MS * attempt); + } + } + if (lastError) throw lastError; + return undefined; +} + +/** + * Rebuild `utxo` with `datum` attached inline, preserving its input ref, + * address, value and reference script. + */ +function withInlineDatum( + utxo: Core.TransactionUnspentOutput, + datum: Core.PlutusData, +): Core.TransactionUnspentOutput { + const output = utxo.output(); + const promoted = new Core.TransactionOutput( + output.address(), + output.amount(), + ); + promoted.setDatum(Core.Datum.newInlineData(datum)); + const scriptRef = output.scriptRef(); + if (scriptRef) { + promoted.setScriptRef(scriptRef); + } + return new Core.TransactionUnspentOutput(utxo.input(), promoted); +} + +/** + * Read an NFT singleton (proxy, treasury, vault) and its datum. + * + * Protocol singletons are locked inline. A hash-form read is a provider + * artifact (Blockfrost omitting `inline_datum`). Validators require + * `InlineDatum` on the singleton input; passing the preimage as `addInput`'s + * 3rd arg is a supplemental witness datum that local eval and phase-1 reject. + * Resolve the hash, verify the preimage, and reattach it inline. + * + * The lookup is retried: a singleton always exists, so a not-found answer is + * the provider's index lagging the UTxO's latest move, not a missing singleton. + */ +export async function readSingletonDatum( + provider: Provider, + nftAssetId: Core.AssetId, +): Promise<{ + utxo: Core.TransactionUnspentOutput; + datum: Core.PlutusData; +}> { + const read = await getUnspentOutputByNftWithRetry(provider, nftAssetId); + if (!read) { + throw new Error(`No UTXO found with NFT: ${nftAssetId}`); + } + + const inline = read.output().datum()?.asInlineData(); + if (inline) { + return { utxo: read, datum: inline }; + } + + const datumHash = read.output().datum()?.asDataHash(); + if (!datumHash) { + throw new Error(`No datum found in UTXO with NFT: ${nftAssetId}`); + } + + const resolved = await provider.resolveDatum(datumHash); + const preimageHash = Core.blake2b_256(resolved.toCbor()); + if (preimageHash !== datumHash) { + throw new Error( + `Datum resolved for UTXO with NFT ${nftAssetId} does not match its datum hash: ` + + `resolved preimage hashes to ${preimageHash}, UTXO reports ${datumHash}`, + ); + } + + const input = read.input(); + console.warn( + `[realfi-sdk] singleton ${nftAssetId} read at ${input.transactionId()}#${input.index()} ` + + `reported datum hash ${datumHash} instead of its inline datum; reattaching the resolved preimage inline`, + ); + return { utxo: withInlineDatum(read, resolved), datum: resolved }; +} + +/** + * Get datum from a UTxO containing a specific NFT, optionally parsed under + * `datumSchema`. Datum-hash reads are repaired by {@link readSingletonDatum}. + */ +export async function getDatumFromNFT< + P extends Provider, + W extends Wallet, + T = unknown, +>( + blaze: Blaze, + nftAssetId: Core.AssetId, + datumSchema?: TSchema, +): Promise<{ + utxo: Core.TransactionUnspentOutput; + datum: Core.PlutusData; + parsedDatum: T; +}> { + const { utxo, datum } = await readSingletonDatum(blaze.provider, nftAssetId); + + if (datumSchema) { + const parsedDatum = parse(datumSchema, datum) as T; + return { utxo, datum, parsedDatum }; + } + + return { utxo, datum, parsedDatum: undefined as T }; +} + +/** + * Get script reference inputs, using cached values when available. + * + * When `address` is provided, each script is resolved at that address first + * (a fast, dedicated query) and only falls back to Blaze's burn-address + * default if it isn't found there. This keeps previously burn-address-deployed + * scripts resolvable while migrating to a specified deployment address. + */ +export async function getReferenceInputs

( + blaze: Blaze, + scriptHashes: Record, + cachedInputs?: Partial>, + address?: Core.Address, +): Promise> { + const referenceInputs: Record = {}; + const hydrate = address ? shareHydration(blaze, address) : undefined; + + for (const [name, hash] of Object.entries(scriptHashes)) { + if (cachedInputs?.[name]) { + referenceInputs[name] = cachedInputs[name]; + continue; + } + + const refInput = + (address && + (await resolveScriptRefAtAddress(blaze, hash, address, hydrate))) || + (await blaze.provider.resolveScriptRef(hash)); + if (!refInput) { + throw new Error( + `No reference input found for ${name} script (${hash}). Make sure it is deployed.`, + ); + } + referenceInputs[name] = refInput; + } + + return referenceInputs; +} + +/** + * Extract signature key hashes from a multisig script + */ +export const getSignatureKeyHashesFromMultisigScript = ( + multisig: TMultisigScript, +): string[] => { + const result: string[] = []; + + if ("Signature" in multisig) { + result.push(multisig.Signature.key_hash); + } else if ("AtLeast" in multisig) { + multisig.AtLeast.scripts + .map((s) => getSignatureKeyHashesFromMultisigScript(s)) + .flat() + .forEach((s) => { + result.push(s); + }); + } else if ("AllOf" in multisig) { + multisig.AllOf.scripts + .map((s) => getSignatureKeyHashesFromMultisigScript(s)) + .flat() + .forEach((s) => { + result.push(s); + }); + } else if ("AnyOf" in multisig) { + multisig.AnyOf.scripts + .map((s) => getSignatureKeyHashesFromMultisigScript(s)) + .flat() + .forEach((s) => { + result.push(s); + }); + } + + return [...new Set(result).values()]; +}; + +/** + * Extract script key hashes from a multisig script + */ +export const getScriptKeyHashesFromMultisigScript = ( + multisig: TMultisigScript, +): string[] => { + const result: string[] = []; + + if ("Script" in multisig) { + result.push(multisig.Script.script_hash); + } else if ("AtLeast" in multisig) { + multisig.AtLeast.scripts + .map((s) => getScriptKeyHashesFromMultisigScript(s)) + .flat() + .forEach((s) => { + result.push(s); + }); + } else if ("AllOf" in multisig) { + multisig.AllOf.scripts + .map((s) => getScriptKeyHashesFromMultisigScript(s)) + .flat() + .forEach((s) => { + result.push(s); + }); + } else if ("AnyOf" in multisig) { + multisig.AnyOf.scripts + .map((s) => getScriptKeyHashesFromMultisigScript(s)) + .flat() + .forEach((s) => { + result.push(s); + }); + } + + return [...new Set(result).values()]; +}; + +/** + * Extract all key hashes (signature + script) from a multisig script + */ +export const getAllKeyHashesFromMultisigScript = ( + multisig: TMultisigScript, +): string[] => { + const keyHashes = getSignatureKeyHashesFromMultisigScript(multisig); + const scriptHashes = getScriptKeyHashesFromMultisigScript(multisig); + return [...new Set([...keyHashes, ...scriptHashes]).values()]; +}; + +// ───────────────────────────────────────────────────────────────────────────── +// Order Input Helpers +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Sort order inputs by txHash and outputIndex for deterministic ordering. + * This ensures consistent payload generation across all signers. + */ +export const sortOrderInputs = ( + orderInputs: Core.TransactionInput[], +): Core.TransactionInput[] => { + return [...orderInputs].sort((a, b) => { + const txHashA = a.transactionId().toString(); + const txHashB = b.transactionId().toString(); + if (txHashA < txHashB) return -1; + if (txHashA > txHashB) return 1; + const indexA = a.index(); + const indexB = b.index(); + return indexA < indexB ? -1 : indexA > indexB ? 1 : 0; + }); +}; + +/** + * Build a nonce from the first order UTxO. + */ +export const buildNonceFromUtxo = ( + utxo: Core.TransactionInput, +): V0_3Types.Nonce => ({ + UTxO: [ + { + transaction_id: utxo.transactionId().toString(), + output_index: utxo.index(), + }, + ], +}); + +/** + * Build the origin ByteArray (CBOR-serialized OutputReference) from a UTxO. + * Used by v0_4 SDK and shared helpers. + */ +export const buildOriginFromUtxo = ( + utxo: Core.TransactionUnspentOutput, +): string => { + const input = utxo.input(); + const txId = input.transactionId().toString(); + const outputIndex = input.index(); + const fieldsList = new Core.PlutusList(); + fieldsList.add(Core.PlutusData.newBytes(Buffer.from(txId, "hex"))); + fieldsList.add(Core.PlutusData.newInteger(outputIndex)); + const outputRefData = Core.PlutusData.newConstrPlutusData( + new Core.ConstrPlutusData(0n, fieldsList), + ); + return outputRefData.toCbor(); +}; + +/** + * KeySignature type matching the contract's KeySignature tuple. + * A tuple of [VerificationKey, COSESign1] where: + * - VerificationKey: 32-byte Ed25519 public key (hex string) + * - COSESign1: COSE signature with headers (raw CBOR bytes) and detached payload + */ +export type TKeySignature = [ + string, // VerificationKey (32-byte public key hex) + { + headers: { + protected: string; // Raw CBOR hex bytes (HeaderMap = ByteArray in contract) + unprotected: string; // Raw CBOR hex bytes (empty = "") + }; + payload?: string; // Detached - undefined, actual payload stored separately + signature: string; + }, +]; + +export const destructureCip30Signature = async ( + cip30Signature: CIP30DataSignature, +): Promise<{ + publicKey: string; + coseSign1: { + headers: { + protected: string; + unprotected: string; + }; + signature: string; + }; +}> => { + // Read the COSE_Sign1 with CBOR primitives from the dependency tree. + // Async for callers that await it. + const { protected: protectedCbor, signature } = readCoseSign1Parts( + cip30Signature.signature.toString(), + ); + // Extract public key from COSE_Key (at label -2) + const publicKey = extractPublicKeyFromCoseKey(cip30Signature.key.toString()); + return { + publicKey, + coseSign1: { + headers: { + protected: protectedCbor, + unprotected: "", // Empty ByteArray + }, + signature, + }, + }; +}; + +/** + * Produce a COSE (CIP-8) signature tuple over `payloadHash` using the connected + * wallet's key. The reusable building block for signer callbacks — e.g. the + * settings-governance `signAuthPayload` or an orchestrator signed redeemer — + * that wraps `signData` + `destructureCip30Signature` into the on-chain tuple. + */ +export const signPayloadHashWithWallet = async < + P extends Provider, + W extends Wallet, +>( + blaze: Blaze, + payloadHash: string, +): Promise => { + const address = await blaze.wallet.getChangeAddress(); + const cip30Signature = await blaze.wallet.signData(address, payloadHash); + const { publicKey, coseSign1 } = + await destructureCip30Signature(cip30Signature); + return [publicKey, coseSign1]; +}; + +/** + * Create a SignedRedeemer_ExtraProtocolRedeemer structure for on-chain verification. + * + * @param extra - The extra protocol redeemer data (e.g., request_to_outputs mapping) + * @param payload - The SignedPayload_ProtocolRedeemer CBOR hex string (action + nonce) + * @param signatures - Array of KeySignature tuples from each signer + * @returns A SignedRedeemer_ExtraProtocolRedeemer ready for use in transaction + */ +export const createSignedRedeemer = ( + extra: V0_3Types.ExtraProtocolRedeemer, + payload: string, + signatures: SignatureList, +): V0_3Types.SignedRedeemer_ExtraProtocolRedeemer => { + if (signatures.length === 0) { + throw new Error("At least one signature is required"); + } + + return { + extra, + payload, + signatures: signatures as SignatureList, + }; +}; + +// ───────────────────────────────────────────────────────────────────────────── +// CBOR Helpers +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Extract the 32-byte Ed25519 public key from a COSE_Key structure. + * COSE_Key for Ed25519 has the key at label -2. + * The COSE_Key CBOR structure looks like: a4 01 01 03 27 20 06 21 5820 <32 bytes> + * Where 21 5820 indicates label -2 followed by a 32-byte bytestring. + */ +const extractPublicKeyFromCoseKey = (coseKeyHex: string): string => { + // Parse the COSE_Key CBOR manually to find the public key + // The key at label -2 (encoded as 0x21 in CBOR) contains the 32-byte public key + // Look for 0x21 0x58 0x20 which indicates: label -2, bytestring, 32 bytes + const keyBytes = Buffer.from(coseKeyHex, "hex"); + + // Find the pattern: 21 58 20 (label -2, bytes, length 32) + let pubKeyStart = -1; + for (let i = 0; i < keyBytes.length - 34; i++) { + if ( + keyBytes[i] === 0x21 && + keyBytes[i + 1] === 0x58 && + keyBytes[i + 2] === 0x20 + ) { + pubKeyStart = i + 3; // Skip the 21 58 20 prefix + break; + } + } + + if (pubKeyStart === -1) { + throw new Error("Could not find public key in COSE_Key structure"); + } + + const pubKey = keyBytes.slice(pubKeyStart, pubKeyStart + 32); + if (pubKey.length !== 32) { + throw new Error(`Invalid public key length: ${pubKey.length}`); + } + + return pubKey.toString("hex"); +}; + +// ───────────────────────────────────────────────────────────────────────────── +// COSE_Sign1 (CIP-8) reader +// ───────────────────────────────────────────────────────────────────────────── + +// CBOR major types used here. +const CBOR_MAJOR_BYTES = 2; +const CBOR_MAJOR_TEXT = 3; +const CBOR_MAJOR_ARRAY = 4; +const CBOR_MAJOR_MAP = 5; +const CBOR_MAJOR_TAG = 6; +const CBOR_MAJOR_SIMPLE = 7; // simple values (false/true/null) and floats + +const CBOR_ADDITIONAL_INDEFINITE = 31; +const CBOR_BREAK = 0xff; // terminates an indefinite-length string/array/map +const CBOR_TAG_COSE_SIGN1 = 18; // COSE_Sign1's registered tag (encodes as d2) +const CBOR_SIMPLE_NULL = 22; // `f6` + +/** + * Read a CBOR header at `offset`, returning the major type, the argument + * (length / value), whether the item is indefinite-length, and the offset of + * the item's content. Supports the definite forms (0-23 inline and the + * 1/2/4/8-byte arguments) plus indefinite-length strings, arrays, and maps. + */ +const readCborHeader = ( + bytes: Uint8Array, + offset: number, +): { + major: number; + argument: number; + indefinite: boolean; + contentOffset: number; +} => { + const initial = bytes[offset]; + if (initial === undefined) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + const major = initial >> 5; + const additional = initial & 0x1f; + + if (additional < 24) { + return { + major, + argument: additional, + indefinite: false, + contentOffset: offset + 1, + }; + } + + if (additional === CBOR_ADDITIONAL_INDEFINITE) { + // Only strings, arrays, and maps have an indefinite-length form. A break + // byte (0xff) parses as major 7 here, so a stray break is rejected too. + if (major < CBOR_MAJOR_BYTES || major > CBOR_MAJOR_MAP) { + throw new Error( + `Unsupported indefinite-length CBOR major type: ${major}`, + ); + } + return { major, argument: 0, indefinite: true, contentOffset: offset + 1 }; + } + + // 24/25/26/27 -> 1/2/4/8 following length bytes. 28-30 are reserved. + if (additional > 27) { + throw new Error(`Unsupported CBOR additional info: ${additional}`); + } + const lengthBytes = 1 << (additional - 24); + let argument = 0; + for (let i = 0; i < lengthBytes; i++) { + const b = bytes[offset + 1 + i]; + if (b === undefined) { + throw new Error("COSE_Sign1 CBOR length ended unexpectedly"); + } + argument = argument * 256 + b; + } + return { + major, + argument, + indefinite: false, + contentOffset: offset + 1 + lengthBytes, + }; +}; + +/** + * Read the definite-length chunks of an indefinite-length CBOR string whose + * first chunk header is at `offset`, returning the concatenated content and + * the offset just past the closing break byte. + */ +const readIndefiniteStringChunks = ( + bytes: Uint8Array, + major: number, + offset: number, +): { content: Uint8Array; nextOffset: number } => { + const chunks: Uint8Array[] = []; + let next = offset; + while (bytes[next] !== CBOR_BREAK) { + const chunk = readCborHeader(bytes, next); + if (chunk.major !== major || chunk.indefinite) { + throw new Error("Invalid chunk in an indefinite-length CBOR string"); + } + const end = chunk.contentOffset + chunk.argument; + if (end > bytes.length) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + chunks.push(bytes.slice(chunk.contentOffset, end)); + next = end; + } + return { content: Buffer.concat(chunks), nextOffset: next + 1 }; +}; + +/** + * Skip over one complete CBOR data item starting at `offset`, returning the + * offset immediately after it. Handles the item shapes that occur inside a + * COSE_Sign1 (byte/text strings, integers, arrays, maps, tags — definite or + * indefinite length) recursively. + */ +const skipCborItem = (bytes: Uint8Array, offset: number): number => { + const { major, argument, indefinite, contentOffset } = readCborHeader( + bytes, + offset, + ); + if (indefinite) { + if (major === CBOR_MAJOR_BYTES || major === CBOR_MAJOR_TEXT) { + return readIndefiniteStringChunks(bytes, major, contentOffset).nextOffset; + } + // Indefinite array or map: items until the break byte. + let next = contentOffset; + while (bytes[next] !== CBOR_BREAK) { + if (bytes[next] === undefined) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + next = skipCborItem(bytes, next); // array item / map key + if (major === CBOR_MAJOR_MAP) { + next = skipCborItem(bytes, next); // map value + } + } + return next + 1; + } + switch (major) { + case 0: // unsigned int + case 1: // negative int + case CBOR_MAJOR_SIMPLE: // simple value (false/true/null) or float + // readCborHeader already consumed the value/float bytes into `argument`. + return contentOffset; + case CBOR_MAJOR_BYTES: + case CBOR_MAJOR_TEXT: { + const end = contentOffset + argument; + if (end > bytes.length) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + return end; + } + case CBOR_MAJOR_ARRAY: { + let next = contentOffset; + for (let i = 0; i < argument; i++) { + next = skipCborItem(bytes, next); + } + return next; + } + case CBOR_MAJOR_MAP: { + let next = contentOffset; + for (let i = 0; i < argument; i++) { + next = skipCborItem(bytes, next); // key + next = skipCborItem(bytes, next); // value + } + return next; + } + case CBOR_MAJOR_TAG: + return skipCborItem(bytes, contentOffset); // tagged content + default: + throw new Error(`Unsupported CBOR major type in COSE_Sign1: ${major}`); + } +}; + +/** + * Read the byte-string content at `offset`, returning its hex and the offset + * after it. + */ +const readCborByteString = ( + bytes: Uint8Array, + offset: number, +): { hex: string; nextOffset: number } => { + const { major, argument, indefinite, contentOffset } = readCborHeader( + bytes, + offset, + ); + if (major !== CBOR_MAJOR_BYTES) { + throw new Error( + `Expected a CBOR byte string in COSE_Sign1, got major type ${major}`, + ); + } + if (indefinite) { + const { content, nextOffset } = readIndefiniteStringChunks( + bytes, + major, + contentOffset, + ); + return { hex: Buffer.from(content).toString("hex"), nextOffset }; + } + const end = contentOffset + argument; + if (end > bytes.length) { + throw new Error("COSE_Sign1 CBOR ended unexpectedly"); + } + return { + hex: Buffer.from(bytes.slice(contentOffset, end)).toString("hex"), + nextOffset: end, + }; +}; + +/** + * Parse a CIP-8 COSE_Sign1 and extract the pieces the on-chain KeySignature + * tuple needs: the protected header map bytes (byte-string content, wrapper + * removed) and the raw Ed25519 signature bytes. + * + * COSE_Sign1 = [ protected: bstr, unprotected: map, payload: bstr / nil, + * signature: bstr ], optionally wrapped in CBOR tag 18. The protected element + * is itself a byte string whose content is the serialized header map; reading + * the byte-string content yields the raw header-map bytes the tuple stores. + * Indefinite-length encodings of the array, the maps, and the byte strings + * are accepted alongside the definite forms. + */ +export const readCoseSign1Parts = ( + coseSign1Hex: string, +): { protected: string; signature: string } => { + const bytes = Buffer.from(coseSign1Hex, "hex"); + + let offset = 0; + // Optional CBOR tag: only tag 18 (COSE_Sign1's registered tag, the `d2` + // prefix) is accepted — tagged input is accepted by design, since the + // Ledger signing path emits d2-tagged COSE_Sign1s, but any other tag means + // this isn't a COSE_Sign1 and must be rejected rather than silently unwrapped. + const first = readCborHeader(bytes, offset); + if (first.major === CBOR_MAJOR_TAG) { + if (first.argument !== CBOR_TAG_COSE_SIGN1) { + throw new Error( + `COSE_Sign1 has unexpected CBOR tag ${first.argument} (expected 18)`, + ); + } + offset = first.contentOffset; + } + + const array = readCborHeader(bytes, offset); + if (array.major !== CBOR_MAJOR_ARRAY) { + throw new Error("COSE_Sign1 is not a CBOR array"); + } + if (!array.indefinite && array.argument !== 4) { + throw new Error("COSE_Sign1 is not a 4-element CBOR array"); + } + + // Element 0: protected header byte string (content = serialized header map). + const protectedRead = readCborByteString(bytes, array.contentOffset); + + // Element 1: unprotected header map — must be a CBOR map (major 5), + // definite or indefinite. Peek the header before skipCborItem consumes it + // so we assert on the same read the skip performs, not a second one. + const unprotectedHeader = readCborHeader(bytes, protectedRead.nextOffset); + if (unprotectedHeader.major !== CBOR_MAJOR_MAP) { + throw new Error( + `COSE_Sign1 unprotected header is not a CBOR map (got major type ${unprotectedHeader.major})`, + ); + } + const afterUnprotected = skipCborItem(bytes, protectedRead.nextOffset); + + // Element 2: payload — must be a byte string (major 2) or null (`f6`). + const payloadHeader = readCborHeader(bytes, afterUnprotected); + const isNullPayload = + payloadHeader.major === CBOR_MAJOR_SIMPLE && + !payloadHeader.indefinite && + payloadHeader.argument === CBOR_SIMPLE_NULL; + if (payloadHeader.major !== CBOR_MAJOR_BYTES && !isNullPayload) { + throw new Error( + `COSE_Sign1 payload is not a byte string or null (got major type ${payloadHeader.major})`, + ); + } + const afterPayload = skipCborItem(bytes, afterUnprotected); + + // Element 3: signature byte string. + const signatureRead = readCborByteString(bytes, afterPayload); + + // An indefinite-length COSE_Sign1 array must close right after element 3. + if (array.indefinite && bytes[signatureRead.nextOffset] !== CBOR_BREAK) { + throw new Error("COSE_Sign1 is not a 4-element CBOR array"); + } + + return { protected: protectedRead.hex, signature: signatureRead.hex }; +}; + +// ───────────────────────────────────────────────────────────────────────────── +// Treasury Operation Payload Helpers (Withdraw/Deposit) +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Build the SignedPayload_ProtocolRedeemer for a withdraw operation. + * Uses the treasury UTxO as the nonce source. + * + * @param requests - Array of withdraw requests with destinations and amounts + * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce) + * @returns SignedPayload_ProtocolRedeemer CBOR hex string + */ +export const getSignedPayloadForWithdraw = ( + amount: bigint, + treasuryUtxo: Core.TransactionUnspentOutput, +): string => { + if (amount <= 0n) { + throw new Error("Withdraw amount must be positive"); + } + + // Reuse existing nonce builder + const nonce = buildNonceFromUtxo(treasuryUtxo.input()); + + const action: V0_3Types.ProtocolRedeemer = { + Withdraw: { withdraw_amount: amount }, + }; + + const signedPayload: V0_3Types.SignedPayload_ProtocolRedeemer = { + action, + nonce, + }; + return Data.serialize(V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload) + .toCbor() + .toString(); +}; + +/** + * Build the SignedPayload_ProtocolRedeemer for a deposit operation. + * Uses the treasury UTxO as the nonce source. + * + * @param amount - The amount of reserve tokens to deposit + * @param treasuryUtxo - The treasury UTxO (consumed in tx, used as nonce) + * @returns SignedPayload_ProtocolRedeemer CBOR hex string + */ +export const getSignedPayloadForDeposit = ( + amount: bigint, + treasuryUtxo: Core.TransactionUnspentOutput, +): string => { + if (amount <= 0n) { + throw new Error("Deposit amount must be positive"); + } + + const nonce = buildNonceFromUtxo(treasuryUtxo.input()); + + const action: V0_3Types.ProtocolRedeemer = { + Deposit: { deposit_amount: amount }, + }; + + const signedPayload: V0_3Types.SignedPayload_ProtocolRedeemer = { + action, + nonce, + }; + return Data.serialize(V0_3Types.SignedPayload_ProtocolRedeemer, signedPayload) + .toCbor() + .toString(); +}; + +// ───────────────────────────────────────────────────────────────────────────── +// Address Conversion Helpers +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Convert a Cardano address to a Destination type for order transactions. + * Extracts payment and stake credentials from the address. + * + * @param address - The Cardano address to convert + * @param datum - Optional datum for the destination (defaults to "NoDatum") + * @returns A Destination object suitable for order transactions + */ +export function addressToDestination( + address: Core.Address, + datum: Destination["datum"] = "NoDatum", +): Destination { + const props = address.getProps(); + const paymentPart = props.paymentPart; + + if (!paymentPart) { + throw new Error("Address must have a payment part"); + } + + const paymentCredential = + paymentPart.type === Core.CredentialType.KeyHash + ? { VerificationKey: [paymentPart.hash] as [string] } + : { Script: [paymentPart.hash] as [string] }; + + let stakeCredential: Destination["address"]["stake_credential"] = undefined; + if (props.delegationPart) { + const stakeCred = + props.delegationPart.type === Core.CredentialType.KeyHash + ? { VerificationKey: [props.delegationPart.hash] as [string] } + : { Script: [props.delegationPart.hash] as [string] }; + stakeCredential = { Inline: [stakeCred] }; + } + + return { + address: { + payment_credential: paymentCredential, + stake_credential: stakeCredential, + }, + datum, + }; +} + +/** + * Convert a Destination-like value into a Cardano address. + * Supports enterprise and base addresses. Pointer credentials are ignored. + */ +export function destinationToAddress( + network: Core.NetworkId, + destination: TDestinationLike, +): Core.Address { + const paymentCred = destination.address.payment_credential; + const stakingCred = destination.address.stake_credential; + let paymentCredCore: Core.Credential; + let stakingCredCore: Core.Credential | undefined; + + if ( + stakingCred && + typeof stakingCred === "object" && + "Inline" in stakingCred + ) { + const inlineCredential = ( + stakingCred as { Inline: [TDestinationCredentialLike] } + ).Inline[0]; + if ("VerificationKey" in inlineCredential) { + stakingCredCore = Core.Credential.fromCore({ + type: Core.CredentialType.KeyHash, + hash: inlineCredential.VerificationKey[0], + }); + } else if ("Script" in inlineCredential) { + stakingCredCore = Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash: inlineCredential.Script[0], + }); + } + } + + if ("VerificationKey" in paymentCred) { + paymentCredCore = Core.Credential.fromCore({ + type: Core.CredentialType.KeyHash, + hash: paymentCred.VerificationKey[0], + }); + } else { + paymentCredCore = Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash: paymentCred.Script[0], + }); + } + + return addressFromCredentials(network, paymentCredCore, stakingCredCore); +} + +/** + * Add an output for a Destination, including script-payment addresses and + * any datum metadata attached to the destination. + * + * Attaches the datum directly to a fresh TransactionOutput rather than + * routing through Core.TransactionOutput.fromCore, because generated + * TPlutusData values from @blaze-cardano/data are already Blaze + * PlutusData instances and PlutusData.fromCore does not know how to + * decode them (throws NotImplementedError). + */ +export function addDestinationOutput( + tx: TxBuilder, + network: Core.NetworkId, + destination: TDestinationLike, + value: Core.Value, +): void { + const output = new Core.TransactionOutput( + destinationToAddress(network, destination), + value, + ); + const { datum } = destination; + if (datum !== "NoDatum") { + if ("DatumHash" in datum) { + output.setDatum(Core.Datum.newDataHash(datum.DatumHash[0])); + } else { + output.setDatum( + Core.Datum.newInlineData(datum.InlineDatum[0] as Core.PlutusData), + ); + } + } + tx.addOutput(output); +} + +// ───────────────────────────────────────────────────────────────────────────── +// Cross-Version Cancel Helpers +// ───────────────────────────────────────────────────────────────────────────── + +const NORMALIZED_PROTOCOL_VERSION_MAP: Record = { + v0: "V0", + v0_1: "V0_1", + v0_2: "V0_2", + v0_3: "V0_3", + v0_4: "V0_4", + v1_0: "V1_0", + v1_0_rc1: "V1_0_Rc1", + v1_1_rc1: "V1_1_Rc1", +}; + +/** + * Normalize externally-sourced protocol/order version strings into the SDK's + * canonical `TProtocolVersion` values. + */ +export const normalizeProtocolVersion = ( + version: string | null | undefined, +): TProtocolVersion | undefined => { + if (!version) { + return undefined; + } + + return NORMALIZED_PROTOCOL_VERSION_MAP[version.trim().toLowerCase()]; +}; + +/** + * Alias for frontend order-version sources (GraphQL/backend strings). + */ +export const normalizeOrderVersion = normalizeProtocolVersion; + +/** + * Extract the inline datum from a UTxO. + */ +export const getInlineDatumFromUtxo = ( + utxo: Core.TransactionUnspentOutput, + label = "Order UTXO", +): Core.PlutusData => { + const datum = utxo.output().datum()?.asInlineData(); + if (!datum) { + throw new Error(`${label} has no inline datum`); + } + return datum; +}; + +/** + * Extract the payment script hash from an order UTxO's output address. + */ +export const getScriptHashFromOrderUtxo = ( + utxo: Core.TransactionUnspentOutput, +): Core.Hash28ByteBase16 => { + const paymentPart = utxo.output().address().getProps().paymentPart; + + if (!paymentPart) { + throw new Error("Order UTXO address has no payment credential"); + } + + if (paymentPart.type !== Core.CredentialType.ScriptHash) { + throw new Error("Order UTXO payment credential is not a script hash"); + } + + return paymentPart.hash; +}; + +/** + * Resolve one reference input per unique script hash. + */ +export async function resolveReferenceInputsByScriptHash< + P extends Provider, + W extends Wallet, +>( + blaze: Blaze, + scriptHashes: Iterable, + cachedInputs?: + | ReadonlyMap + | Partial>, + address?: Core.Address, +): Promise> { + const referenceInputs = new Map< + Core.Hash28ByteBase16, + Core.TransactionUnspentOutput + >(); + + for (const hash of new Set(scriptHashes)) { + const cachedInput = + cachedInputs instanceof Map + ? cachedInputs.get(hash) + : ( + cachedInputs as + | Partial> + | undefined + )?.[hash as string]; + + if (cachedInput) { + referenceInputs.set(hash, cachedInput); + continue; + } + + const refInput = + (address && (await resolveScriptRefAtAddress(blaze, hash, address))) || + (await blaze.provider.resolveScriptRef(hash)); + + if (!refInput) { + throw new Error( + `Missing order reference script input for hash ${hash}. Make sure the order script is deployed.`, + ); + } + + referenceInputs.set(hash, refInput); + } + + return referenceInputs; +} + +/** + * Resolve the order reference inputs needed to spend a batch of order UTxOs. + */ +export async function resolveOrderReferenceInputs< + P extends Provider, + W extends Wallet, +>( + blaze: Blaze, + orderUtxos: Iterable, + cachedInputs?: + | ReadonlyMap + | Partial>, + address?: Core.Address, +): Promise> { + const scriptHashes: Core.Hash28ByteBase16[] = []; + + for (const utxo of orderUtxos) { + scriptHashes.push(getScriptHashFromOrderUtxo(utxo)); + } + + return resolveReferenceInputsByScriptHash( + blaze, + scriptHashes, + cachedInputs, + address, + ); +} + +/** + * Strict owner-only parser for order datums used by cross-version cancel. + * + * All currently-supported order datum variants encode as: + * Constr(0, [owner, destination, action, data]). + */ +export const parseOrderOwnerGenericFromDatum = ( + datum: Core.PlutusData, +): TMultisigScript => { + const constr = datum.asConstrPlutusData(); + if (!constr) { + throw new Error("Order datum is not a constructor PlutusData"); + } + + if (constr.getAlternative() !== 0n) { + throw new Error( + `Order datum has unexpected constructor index ${constr.getAlternative().toString()} (expected 0)`, + ); + } + + const fields = constr.getData(); + if (fields.getLength() < 4) { + throw new Error( + `Order datum has ${fields.getLength().toString()} fields (expected at least 4)`, + ); + } + + return parse(V0_3Types.MultisigScript, fields.get(0)) as TMultisigScript; +}; + +/** + * Strict owner-only parser for cancel flows. + */ +export const parseOrderOwnerGeneric = ( + utxo: Core.TransactionUnspentOutput, +): TMultisigScript => { + return parseOrderOwnerGenericFromDatum(getInlineDatumFromUtxo(utxo)); +}; diff --git a/modules/realfi-partner-sdk/src/sdk/v0/index.ts b/modules/realfi-partner-sdk/src/sdk/v0/index.ts new file mode 100644 index 0000000000..51fd9fabb4 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v0/index.ts @@ -0,0 +1,269 @@ +import * as Data from "@blaze-cardano/data"; +import { parse, Void } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { + type Blaze, + Core, + makeValue, + TxBuilder, + type Wallet, +} from "@blaze-cardano/sdk"; +import { AssetAmount } from "@sundaeswap/asset"; + +import { BaseTypes, V0Types } from "../../generated-types/index.js"; +import { + type IBaseSDKParams, + type ICachedReferenceInputs, + type IProxyDatumResult, + lockOrPayAssets, + RealfiSDKBase, +} from "../shared/index.js"; + +/** + * V0 datum type - simple datum with logic hash and no settings + */ +export const AdminDatum = Data.Type.Object( + { + logic: Data.Type.String(), + settings: Data.Type.Void(), + }, + { ctor: 0n }, +); + +export type TAdminDatumType = { + logic: string; + settings: void; +}; + +export interface IRealfiSDKParamsV0 { + version: "V0"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + assetNameHex: string; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + }; +} + +/** + * V0 SDK implementation. + * + * Simple minting without treasury management. + * All operations (oneshot, protocol, mint proxy) are consolidated here. + */ +export class RealfiSDKV0< + P extends Provider, + W extends Wallet, +> extends RealfiSDKBase { + readonly version = "V0" as const; + + // Script hashes and policy IDs + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + + // Scripts + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + + private constructor( + blaze: Blaze, + params: IBaseSDKParams, + scripts: { + oneShotScript: Core.Script; + protocolScript: Core.Script; + mintProxyScript: Core.Script; + }, + cachedReferenceInputs?: ICachedReferenceInputs, + ) { + super(blaze, params, cachedReferenceInputs); + + this.oneShotScript = scripts.oneShotScript; + this.protocolScript = scripts.protocolScript; + this.mintProxyScript = scripts.mintProxyScript; + + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + } + + /** + * Create a V0 SDK instance. + */ + static create

( + blaze: Blaze, + params: IRealfiSDKParamsV0, + ): RealfiSDKV0 { + const enableTrace = params.enableTrace ?? false; + + // Instantiate one-shot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint( + { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex, + }, + enableTrace, + ).Script; + + // Instantiate protocol script (V0 uses no parameters) + const protocolScript = new V0Types.V0ProtocolProtocolWithdraw(enableTrace) + .Script; + + // Instantiate mint proxy script (parameterized by one-shot policy ID) + const oneShotPolicyId = oneShotScript.hash(); + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint( + oneShotPolicyId, + enableTrace, + ).Script; + + return new RealfiSDKV0( + blaze, + { + version: "V0", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + }, + { + oneShotScript, + protocolScript, + mintProxyScript, + }, + { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + }, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the one-shot NFT with the initial datum. + * This consumes the bootstrap UTXO and can only be done once. + */ + async mintOneShot( + receiverAddress: Core.Address, + datum: TAdminDatumType, + ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(AdminDatum, { + logic: datum.logic, + settings: datum.settings, + }); + + const baseTx = this.blaze + .newTransaction() + .addInput(utxo) + .addMint( + this.oneShotPolicyId, + new Map([[Core.AssetName(""), 1n]]), + Data.Void(), + ); + const tx = lockOrPayAssets( + baseTx, + receiverAddress, + makeValue(1000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ).provideScript(this.oneShotScript); + + return { tx, policyId: this.oneShotPolicyId }; + } + + /** + * Update the one-shot datum. + * This spends the one-shot UTXO and sends it back to the receiver with new datum. + */ + async updateOneShotDatum( + receiverAddress: Core.Address, + newDatum: TAdminDatumType, + ): Promise { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT( + Core.AssetId(this.oneShotPolicyId), + ); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + + const serializedDatum = Data.serialize(AdminDatum, { + logic: newDatum.logic, + settings: newDatum.settings, + }); + + return lockOrPayAssets( + this.blaze.newTransaction().addInput(oneshotUtxo), + receiverAddress, + makeValue(1000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ); + } + + /** + * Get the proxy datum from the one-shot token UTXO. + * Result is cached after first fetch. + */ + async getParsedProxyDatum(): Promise> { + if (this.cachedProxyDatumResult) { + return this.cachedProxyDatumResult as IProxyDatumResult; + } + + const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(AdminDatum, proxyDatum); + const result = { proxyUtxo, proxyDatum, parsedProxyDatum }; + + this.cachedProxyDatumResult = result; + return result; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0 minting is simple - no treasury involvement. + */ + async buildMintTx(amount: AssetAmount): Promise { + const rewardAccount = this.getProtocolRewardAccount(); + + const utxo = await this.blaze.provider.getUnspentOutputByNFT( + Core.AssetId(this.oneShotPolicyId), + ); + if (!utxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + }); + + const tx = this.blaze + .newTransaction() + .addReferenceInput(utxo) + .addWithdrawal(rewardAccount, 0n, Void()) + .addReferenceInput(refInputs.protocol!) + .addReferenceInput(refInputs.proxy!) + .addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), amount.amount]]), + Void(), + ); + + return tx; + } +} diff --git a/modules/realfi-partner-sdk/src/sdk/v0_1/index.ts b/modules/realfi-partner-sdk/src/sdk/v0_1/index.ts new file mode 100644 index 0000000000..55d35ae65d --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v0_1/index.ts @@ -0,0 +1,451 @@ +import { + addressFromCredential, + addressFromValidator, + Hash28ByteBase16, + toHex, +} from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse, Void } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { + type Blaze, + Core, + makeValue, + TxBuilder, + Value, + type Wallet, +} from "@blaze-cardano/sdk"; + +import { AssetAmount } from "@sundaeswap/asset"; +import { BaseTypes, V0_1Types } from "../../generated-types/index.js"; +import type { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import { + addDirectOutput, + credentialFromScriptHash, + deployScript, + getDatumFromNFT, + getSignatureKeyHashesFromMultisigScript, + type IBaseSDKParams, + type ICachedReferenceInputs, + type IProxyDatumResult, + type IRealfiSDKWithTreasury, + type ITreasuryDatumResult, + lockOrPayAssets, + RealfiSDKBase, +} from "../shared/index.js"; + +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiSDKParamsV0_1 { + version: "V0_1"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + assetNameHex: string; + /** + * The bootstrap UTXO reference for treasury script parameterization. + * Treasury script and NFT are derived from this. + */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + }; +} + +/** + * V0_1 SDK implementation. + * + * Includes treasury management, reserve backing, and circulating supply tracking. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +export class RealfiSDKV0_1

+ extends RealfiSDKBase + implements IRealfiSDKWithTreasury +{ + readonly version = "V0_1" as const; + + // Script hashes and policy IDs + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + readonly treasuryScriptHash: Core.Hash28ByteBase16; + readonly treasuryNFTAssetId: Core.AssetId; + + // Scripts + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + protected readonly treasuryScript: Core.Script; + + private constructor( + blaze: Blaze, + params: IBaseSDKParams, + scripts: { + oneShotScript: Core.Script; + protocolScript: Core.Script; + mintProxyScript: Core.Script; + treasuryScript: Core.Script; + }, + treasuryNFTAssetId: Core.AssetId, + cachedReferenceInputs?: ICachedReferenceInputs, + ) { + super(blaze, params, cachedReferenceInputs); + + this.oneShotScript = scripts.oneShotScript; + this.protocolScript = scripts.protocolScript; + this.mintProxyScript = scripts.mintProxyScript; + this.treasuryScript = scripts.treasuryScript; + + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + this.treasuryScriptHash = this.treasuryScript.hash(); + this.treasuryNFTAssetId = treasuryNFTAssetId; + } + + /** + * Create a V0_1 SDK instance. + */ + static create

( + blaze: Blaze, + params: IRealfiSDKParamsV0_1, + ): RealfiSDKV0_1 { + const enableTrace = params.enableTrace ?? false; + + // Instantiate one-shot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint( + { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex, + }, + enableTrace, + ).Script; + const oneShotPolicyId = oneShotScript.hash(); + + // Instantiate protocol script (V0_1 parameterized by one-shot policy ID) + const protocolScript = new V0_1Types.V0_1ProtocolProtocolWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + // Instantiate mint proxy script (parameterized by one-shot policy ID) + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint( + oneShotPolicyId, + enableTrace, + ).Script; + + // Instantiate treasury script (parameterized by UTXO ref and one-shot policy ID) + const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend( + { + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + // Derive treasury NFT asset ID from treasury script hash + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + const treasuryNFTAssetId = Core.AssetId( + treasuryScript.hash() + treasuryAssetName.toString(), + ); + + return new RealfiSDKV0_1( + blaze, + { + version: "V0_1", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + }, + { + oneShotScript, + protocolScript, + mintProxyScript, + treasuryScript, + }, + treasuryNFTAssetId, + { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + }, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * Uses the treasury bootstrap UTXO that was provided when creating the SDK. + */ + async mintTreasuryNFT( + treasuryBootstrapUtxo: Core.TransactionUnspentOutput, + initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n }, + ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> { + const treasuryPolicyId = Core.PolicyId(this.treasuryScript.hash()); + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + const treasuryAddress = addressFromValidator( + this.network, + this.treasuryScript, + ); + + const datum = Data.serialize(V0_1Types.TreasuryDatum, initialDatum); + const tx = this.blaze + .newTransaction() + .addInput(treasuryBootstrapUtxo) + .addMint( + treasuryPolicyId, + new Map([[treasuryAssetName, 1n]]), + Data.Void(), + ) + .lockAssets( + treasuryAddress, + makeValue(1000000n, [this.treasuryNFTAssetId, 1n]), + datum, + ) + .provideScript(this.treasuryScript); + + return { tx, nftAssetId: this.treasuryNFTAssetId }; + } + + /** + * Deploy the treasury script as a reference script. + */ + async deployTreasury(): Promise { + return deployScript( + this.blaze, + this.treasuryScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Get the treasury datum. + */ + async getTreasuryDatum(): Promise> { + const { + utxo: treasuryUtxo, + datum: treasuryDatum, + parsedDatum: parsedTreasuryDatum, + } = await getDatumFromNFT( + this.blaze, + this.treasuryNFTAssetId, + V0_1Types.TreasuryDatum, + ); + + if (!treasuryUtxo) { + throw new Error("No UTXO found with the treasury NFT"); + } + if (!treasuryDatum) { + throw new Error("No treasury datum found"); + } + + return { + treasuryUtxo, + treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum, + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the one-shot NFT with the initial datum. + * This consumes the bootstrap UTXO and can only be done once. + */ + async mintOneShot( + receiverAddress: Core.Address, + datum: V0_1Types.ProxyDatum, + ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(V0_1Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings, + }); + + const baseTx = this.blaze + .newTransaction() + .addInput(utxo) + .addMint( + this.oneShotPolicyId, + new Map([[Core.AssetName(""), 1n]]), + Data.Void(), + ); + const tx = lockOrPayAssets( + baseTx, + receiverAddress, + makeValue(1000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ).provideScript(this.oneShotScript); + + return { tx, policyId: this.oneShotPolicyId }; + } + + /** + * Update the one-shot datum. + * This spends the one-shot UTXO and sends it back to the receiver with new datum. + */ + async updateOneShotDatum( + receiverAddress: Core.Address, + newDatum: V0_1Types.ProxyDatum, + ): Promise { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT( + Core.AssetId(this.oneShotPolicyId), + ); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + + const serializedDatum = Data.serialize(V0_1Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings, + }); + + const tx = lockOrPayAssets( + this.blaze.newTransaction().addInput(oneshotUtxo), + receiverAddress, + makeValue(1000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ); + + return tx; + } + + /** + * Get the proxy datum from the one-shot token UTXO. + * Result is cached after first fetch. + */ + async getParsedProxyDatum(): Promise< + IProxyDatumResult + > { + if (this.cachedProxyDatumResult) { + return this + .cachedProxyDatumResult as IProxyDatumResult; + } + + const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(V0_1Types.ProxyDatum, proxyDatum); + const result = { proxyUtxo, proxyDatum, parsedProxyDatum }; + + this.cachedProxyDatumResult = result; + return result; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0_1 minting includes treasury update for circulating supply tracking. + */ + async buildMintTx(assetAmount: AssetAmount): Promise { + const isBurn = assetAmount.amount < 0n; + const rewardAccount = this.getProtocolRewardAccount(); + + const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum(); + + const treasuryScriptHash = Hash28ByteBase16( + parsedProxyDatum.settings.registry.treasury, + ); + + // Get all reference inputs in one call (cached after first fetch) + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: treasuryScriptHash, + }); + + const { utxo: treasuryUtxo, parsedDatum: parsedTreasuryDatum } = + await getDatumFromNFT( + this.blaze, + this.treasuryNFTAssetId, + V0_1Types.TreasuryDatum, + ); + + const circulatingSupply = (parsedTreasuryDatum as V0_1TreasuryDatum) + .circulating_supply; + const newCirculatingSupply = circulatingSupply + assetAmount.amount; + + const newTreasuryDatum = Data.serialize(V0_1Types.TreasuryDatum, { + circulating_supply: newCirculatingSupply, + }); + + const reserveToken = parsedProxyDatum.settings.reserve_token.join(""); + const treasuryAddress = addressFromCredential( + this.network, + credentialFromScriptHash(treasuryScriptHash), + ); + + const redeemer = isBurn + ? Data.serialize(V0_1Types.ProtocolRedeemer, "Burn") + : Data.serialize(V0_1Types.ProtocolRedeemer, "Mint"); + + const assetName = Core.AssetName(this.assetNameHex); + + const initialTreasuryValue = treasuryUtxo!.output().amount(); + const valueToAdd = makeValue(0n, [reserveToken, assetAmount.amount]); + const updatedTreasuryValue = Value.merge(initialTreasuryValue, valueToAdd); + + const tx = this.blaze + .newTransaction() + .addReferenceInput(proxyUtxo!) + .addWithdrawal(rewardAccount, 0n, redeemer) + .addReferenceInput(refInputs.protocol!) + .addReferenceInput(refInputs.proxy!) + .addReferenceInput(refInputs.treasury!) + .addInput(treasuryUtxo!, Void()) + .addMint( + this.stablecoinPolicyId, + new Map([[assetName, assetAmount.amount]]), + Void(), + ) + .lockAssets(treasuryAddress, updatedTreasuryValue, newTreasuryDatum); + + if (isBurn) { + const requiredSigners = getSignatureKeyHashesFromMultisigScript( + parsedProxyDatum.settings.burn_permission, + ).map((key) => Core.Ed25519KeyHashHex(key)); + + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + + const receiverAddress = await this.blaze.wallet.getChangeAddress(); + addDirectOutput( + tx, + receiverAddress, + makeValue(0n, [reserveToken, -assetAmount.amount]), + ); + } else { + const requiredSigners = getSignatureKeyHashesFromMultisigScript( + parsedProxyDatum.settings.mint_permission, + ).map((key) => Core.Ed25519KeyHashHex(key)); + + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + } + + return tx; + } +} diff --git a/modules/realfi-partner-sdk/src/sdk/v0_2/index.ts b/modules/realfi-partner-sdk/src/sdk/v0_2/index.ts new file mode 100644 index 0000000000..fb35cca586 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v0_2/index.ts @@ -0,0 +1,581 @@ +import { + addressFromCredential, + addressFromValidator, + AssetId, + Hash28ByteBase16, + toHex, +} from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse, Void } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { + type Blaze, + Core, + makeValue, + TxBuilder, + Value, + type Wallet, +} from "@blaze-cardano/sdk"; + +import { AssetAmount } from "@sundaeswap/asset"; +import { + BaseTypes, + V0_1Types, + V0_2Types, +} from "../../generated-types/index.js"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import { + addDirectOutput, + credentialFromScriptHash, + deployScript, + getDatumFromNFT, + getSignatureKeyHashesFromMultisigScript, + type IBaseSDKParams, + type ICachedReferenceInputs, + type IProxyDatumResult, + type IRealfiSDKWithTreasury, + type ITreasuryDatumResult, + lockOrPayAssets, + RealfiSDKBase, +} from "../shared/index.js"; +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiSDKParamsV0_2 { + version: "V0_2"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + assetNameHex: string; + /** + * The treasury bootstrap UTxO reference. The treasury script and NFT asset ID + * are derived from this reference and the stablecoin policy ID. + */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + }; +} + +/** + * V0_2 SDK implementation. + * + * Extends V0_1 with deposit and withdraw operations for treasury management. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +export class RealfiSDKV0_2

+ extends RealfiSDKBase + implements IRealfiSDKWithTreasury +{ + readonly version = "V0_2" as const; + + // Script hashes and policy IDs + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + readonly treasuryScriptHash: Core.Hash28ByteBase16; + readonly treasuryNFTAssetId: Core.AssetId; + readonly treasuryAddress: Core.Address; + + // Scripts + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + protected readonly treasuryScript: Core.Script; + + private constructor( + blaze: Blaze, + params: IBaseSDKParams, + scripts: { + oneShotScript: Core.Script; + protocolScript: Core.Script; + mintProxyScript: Core.Script; + treasuryScript: Core.Script; + }, + cachedReferenceInputs?: ICachedReferenceInputs, + ) { + super(blaze, params, cachedReferenceInputs); + + this.oneShotScript = scripts.oneShotScript; + this.protocolScript = scripts.protocolScript; + this.mintProxyScript = scripts.mintProxyScript; + this.treasuryScript = scripts.treasuryScript; + + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + this.treasuryScriptHash = this.treasuryScript.hash(); + + // Derive treasury NFT asset ID from treasury script hash + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + this.treasuryNFTAssetId = Core.AssetId( + this.treasuryScriptHash + treasuryAssetName.toString(), + ); + this.treasuryAddress = addressFromValidator( + this.network, + this.treasuryScript, + ); + } + + /** + * Create a V0_2 SDK instance. + */ + static create

( + blaze: Blaze, + params: IRealfiSDKParamsV0_2, + ): RealfiSDKV0_2 { + const enableTrace = params.enableTrace ?? false; + + // Instantiate one-shot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint( + { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex, + }, + enableTrace, + ).Script; + const oneShotPolicyId = oneShotScript.hash(); + // Instantiate protocol script (V0_2 uses V0_2ProtocolProtocolWithdraw) + const protocolScript = new V0_2Types.V0_2ProtocolProtocolWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + // Instantiate mint proxy script (parameterized by one-shot policy ID) + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint( + oneShotPolicyId, + enableTrace, + ).Script; + // Instantiate treasury script from treasury bootstrap + const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend( + { + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + return new RealfiSDKV0_2( + blaze, + { + version: "V0_2", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + }, + { + oneShotScript, + protocolScript, + mintProxyScript, + treasuryScript, + }, + { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + }, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * The treasury bootstrap UTxO must be provided to consume it. + */ + async mintTreasuryNFT( + treasuryBootstrapUtxo: Core.TransactionUnspentOutput, + initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n }, + ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> { + const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash); + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + const treasuryAddress = addressFromValidator( + this.network, + this.treasuryScript, + ); + + const datum = Data.serialize(V0_1TreasuryDatum, initialDatum); + const tx = await this.blaze + .newTransaction() + .addInput(treasuryBootstrapUtxo) + .addMint( + treasuryPolicyId, + new Map([[treasuryAssetName, 1n]]), + Data.Void(), + ) + .lockAssets( + treasuryAddress, + makeValue(10000000n, [this.treasuryNFTAssetId, 1n]), + datum, + ) + .provideScript(this.treasuryScript); + + return { tx, nftAssetId: this.treasuryNFTAssetId }; + } + + /** + * Deploy the treasury script as a reference script. + */ + async deployTreasury(): Promise { + return deployScript( + this.blaze, + this.treasuryScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Get the treasury datum. + */ + async getTreasuryDatum(): Promise> { + const { + utxo: treasuryUtxo, + datum: treasuryDatum, + parsedDatum: parsedTreasuryDatum, + } = await getDatumFromNFT( + this.blaze, + this.treasuryNFTAssetId, + V0_1TreasuryDatum, + ); + + if (!treasuryUtxo) { + throw new Error("No UTXO found with the treasury NFT"); + } + if (!treasuryDatum) { + throw new Error("No treasury datum found"); + } + + return { + treasuryUtxo, + treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum, + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the one-shot NFT with the initial datum. + * V0_2 uses V0_2Types.ProxyDatum which includes withdraw/deposit permissions. + */ + async mintOneShot( + receiverAddress: Core.Address, + datum: V0_2Types.ProxyDatum, + ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(V0_2Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings, + }); + + const baseTx = this.blaze + .newTransaction() + .addInput(utxo) + .addMint( + this.oneShotPolicyId, + new Map([[Core.AssetName(""), 1n]]), + Data.Void(), + ); + const tx = lockOrPayAssets( + baseTx, + receiverAddress, + makeValue(10000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ).provideScript(this.oneShotScript); + return { tx, policyId: this.oneShotPolicyId }; + } + + /** + * Update the one-shot datum. + */ + async updateOneShotDatum( + receiverAddress: Core.Address, + newDatum: V0_2Types.ProxyDatum, + ): Promise { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT( + Core.AssetId(this.oneShotPolicyId), + ); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + + const serializedDatum = Data.serialize(V0_2Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings, + }); + + return lockOrPayAssets( + this.blaze.newTransaction().addInput(oneshotUtxo), + receiverAddress, + makeValue(10000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ); + } + + /** + * Get the proxy datum from the one-shot token UTXO. + * V0_2 returns V0_2Types.ProxyDatum which includes withdraw/deposit permissions. + * Result is cached after first fetch. + */ + async getParsedProxyDatum(): Promise< + IProxyDatumResult + > { + if (this.cachedProxyDatumResult) { + return this + .cachedProxyDatumResult as IProxyDatumResult; + } + + const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(V0_2Types.ProxyDatum, proxyDatum); + const result = { proxyUtxo, proxyDatum, parsedProxyDatum }; + + this.cachedProxyDatumResult = result; + return result; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a mint (positive amount) or burn (negative amount) transaction. + * V0_2 minting uses V0_2Types.ProtocolRedeemer. + */ + async buildMintTx(assetAmount: AssetAmount): Promise { + const isBurn = assetAmount.amount < 0n; + const rewardAccount = this.getProtocolRewardAccount(); + const conversionRatio = 1; // V0_2 uses 1:1 conversion ratio (no decimals taken into account, etc.) + + const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum(); + + const treasuryScriptHash = Hash28ByteBase16( + parsedProxyDatum.settings.registry.treasury, + ); + + // Get all reference inputs in one call (cached after first fetch) + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: treasuryScriptHash, + }); + + const { utxo: treasuryUtxo, parsedDatum: parsedTreasuryDatum } = + await getDatumFromNFT( + this.blaze, + this.treasuryNFTAssetId, + V0_1Types.TreasuryDatum, + ); + + const circulatingSupply = (parsedTreasuryDatum as V0_1TreasuryDatum) + .circulating_supply; + const newCirculatingSupply = circulatingSupply + assetAmount.amount; + + const newTreasuryDatum = Data.serialize(V0_1Types.TreasuryDatum, { + circulating_supply: newCirculatingSupply, + }); + + const reserveToken = parsedProxyDatum.settings.reserve_token.join(""); + const reserveTokenAmount = BigInt(conversionRatio) * assetAmount.amount; + const treasuryAddress = addressFromCredential( + this.network, + credentialFromScriptHash(treasuryScriptHash), + ); + + const redeemer = isBurn + ? Data.serialize(V0_2Types.ProtocolRedeemer, "Burn") + : Data.serialize(V0_2Types.ProtocolRedeemer, "Mint"); + + const assetName = Core.AssetName(this.assetNameHex); + const initialTreasuryValue = treasuryUtxo!.output().amount(); + const valueToAdd = makeValue(0n, [reserveToken, reserveTokenAmount]); + const updatedTreasuryValue = Value.merge(initialTreasuryValue, valueToAdd); + + const tx = this.blaze + .newTransaction() + .addReferenceInput(proxyUtxo!) + .addWithdrawal(rewardAccount, 0n, redeemer) + .addReferenceInput(refInputs.protocol!) + .addReferenceInput(refInputs.proxy!) + .addReferenceInput(refInputs.treasury!) + .addInput(treasuryUtxo!, Void()) + .addMint( + this.stablecoinPolicyId, + new Map([[assetName, assetAmount.amount]]), + Void(), + ) + .lockAssets(treasuryAddress, updatedTreasuryValue, newTreasuryDatum); + + if (isBurn) { + const requiredSigners = getSignatureKeyHashesFromMultisigScript( + parsedProxyDatum.settings.burn_permission, + ).map((key) => Core.Ed25519KeyHashHex(key)); + + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + + const receiverAddress = await this.blaze.wallet.getChangeAddress(); + addDirectOutput( + tx, + receiverAddress, + makeValue(0n, [reserveToken, -assetAmount.amount]), + ); + } else { + const requiredSigners = getSignatureKeyHashesFromMultisigScript( + parsedProxyDatum.settings.mint_permission, + ).map((key) => Core.Ed25519KeyHashHex(key)); + + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + } + + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // V0_2-specific Operations: Deposit and Withdraw + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a deposit transaction to add reserve to the treasury. + */ + async buildDepositTx(assetAmount: AssetAmount): Promise { + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash, + }); + + const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum(); + const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum(); + + const redeemer = Data.serialize(V0_2Types.ProtocolRedeemer, { + Deposit: { + deposit_amount: assetAmount.amount, + }, + }); + + const rewardAccount = this.getProtocolRewardAccount(); + const requiredSigners = getSignatureKeyHashesFromMultisigScript( + parsedProxyDatum.settings.deposit_permission, + ).map((key) => Core.Ed25519KeyHashHex(key)); + + const reserveToken = AssetId( + assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(""), + ); + const treasuryAddress = addressFromCredential( + this.network, + credentialFromScriptHash( + Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury), + ), + ); + + const inititalTreasuryValue = treasuryUtxo.output().amount(); + const depositValue = makeValue(0n, [reserveToken, assetAmount.amount]); + const newTreasuryValue = Value.merge(inititalTreasuryValue, depositValue); + + const tx = this.blaze + .newTransaction() + .addWithdrawal(rewardAccount, 0n, redeemer) + .addReferenceInput(proxyUtxo) + .addReferenceInput(refInputs.protocol!) + .addReferenceInput(refInputs.proxy!) + .addReferenceInput(refInputs.treasury!) + .addInput(treasuryUtxo!, Data.Void()) + .lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + + return tx; + } + + /** + * Build a withdraw transaction to remove reserve from the treasury. + * @param amount Amount to withdraw from treasury + * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address + */ + async buildWithdrawTx( + assetAmount: AssetAmount, + receiverAddress?: string, + ): Promise { + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash, + }); + + const receiver = receiverAddress + ? Core.Address.fromBech32(receiverAddress) + : await this.blaze.wallet.getChangeAddress(); + + const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum(); + const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum(); + + const redeemer = Data.serialize(V0_2Types.ProtocolRedeemer, { + Withdraw: { + withdraw_amount: assetAmount.amount, + }, + }); + + const rewardAccount = this.getProtocolRewardAccount(); + const requiredSigners = getSignatureKeyHashesFromMultisigScript( + parsedProxyDatum.settings.withdraw_permission, + ).map((key) => Core.Ed25519KeyHashHex(key)); + + const reserveToken = AssetId( + assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(""), + ); + const treasuryAddress = addressFromCredential( + this.network, + credentialFromScriptHash( + Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury), + ), + ); + + const inititalTreasuryValue = treasuryUtxo.output().amount(); + const withdrawValue = makeValue(0n, [reserveToken, -assetAmount.amount]); + const newTreasuryValue = Value.merge(inititalTreasuryValue, withdrawValue); + + const tx = this.blaze + .newTransaction() + .addWithdrawal(rewardAccount, 0n, redeemer) + .addReferenceInput(proxyUtxo) + .addReferenceInput(refInputs.protocol!) + .addReferenceInput(refInputs.proxy!) + .addReferenceInput(refInputs.treasury!) + .addInput(treasuryUtxo!, Data.Void()); + addDirectOutput( + tx, + receiver, + makeValue(0n, [reserveToken, assetAmount.amount]), + ); + tx.lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + + return tx; + } +} diff --git a/modules/realfi-partner-sdk/src/sdk/v0_3/index.ts b/modules/realfi-partner-sdk/src/sdk/v0_3/index.ts new file mode 100644 index 0000000000..a808ef690f --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v0_3/index.ts @@ -0,0 +1,1150 @@ +import { + addressFromCredential, + addressFromValidator, + AssetId, + Ed25519KeyHashHex, + Hash28ByteBase16, + PlutusData, + toHex, +} from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { + type Blaze, + Core, + makeValue, + TxBuilder, + Value, + type Wallet, +} from "@blaze-cardano/sdk"; + +import type { AssetAmount } from "@sundaeswap/asset"; +import { + BaseTypes, + V0_1Types, + V0_3Types, +} from "../../generated-types/index.js"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import type { + Destination, + MultisigScript, + OrderDatum, + ProxyDatum, + SignatureList, +} from "../../generated-types/v0_3/index.js"; +import { + addDirectOutput, + buildNonceFromUtxo, + credentialFromScriptHash, + deployScript, + destinationToAddress, + getDatumFromNFT, + getSignatureKeyHashesFromMultisigScript, + getSignedPayloadForDeposit, + getSignedPayloadForWithdraw, + parseCancelOwner, + resolveOrderReferenceInputs, + type IBaseSDKParams, + type ICachedReferenceInputs, + type IProxyDatumResult, + type IRealfiSDKWithTreasury, + type ITreasuryDatumResult, + type TProtocolVersion, + lockOrPayAssets, + RealfiSDKBase, + sortOrderInputs, +} from "../shared/index.js"; +import type { Request } from "../../generated-types/v0_3/index.js"; + +/** + * Parsed order information extracted from a UTXO. + */ +interface IOrderInfo { + utxo: Core.TransactionUnspentOutput; + datum: OrderDatum; + action: "mint" | "burn"; + amount: bigint; +} + +/** + * Treasury state for order execution. + */ +interface ITreasuryState { + treasuryUtxo: Core.TransactionUnspentOutput; + treasuryValue: Core.Value; + parsedTreasuryDatum: V0_1TreasuryDatum; + currentReserve: bigint; + newReserve: bigint; +} + +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiSDKParamsV0_3 { + version: "V0_3"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + assetNameHex: string; + /** + * The treasury bootstrap UTxO reference. The treasury script and NFT asset ID + * are derived from this reference and the stablecoin policy ID. + */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + }; +} + +/** + * V0_3 SDK implementation. + * + * Extends V0_1 with deposit and withdraw operations for treasury management. + * All operations (oneshot, protocol, mint proxy, treasury) are consolidated here. + */ +export class RealfiSDKV0_3

+ extends RealfiSDKBase + implements IRealfiSDKWithTreasury +{ + readonly version = "V0_3" as const; + + // Script hashes and policy IDs + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + readonly treasuryScriptHash: Core.Hash28ByteBase16; + readonly treasuryNFTAssetId: Core.AssetId; + readonly orderScriptHash: Core.Hash28ByteBase16; + readonly orderScriptAddress: Core.Address; + readonly treasuryAddress: Core.Address; + + // Scripts + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + protected readonly treasuryScript: Core.Script; + protected readonly orderScript: Core.Script; + + private constructor( + blaze: Blaze, + params: IBaseSDKParams, + scripts: { + oneShotScript: Core.Script; + protocolScript: Core.Script; + mintProxyScript: Core.Script; + treasuryScript: Core.Script; + orderScript: Core.Script; + }, + cachedReferenceInputs?: ICachedReferenceInputs, + ) { + super(blaze, params, cachedReferenceInputs); + + this.oneShotScript = scripts.oneShotScript; + this.protocolScript = scripts.protocolScript; + this.mintProxyScript = scripts.mintProxyScript; + this.treasuryScript = scripts.treasuryScript; + this.orderScript = scripts.orderScript; + this.treasuryAddress = addressFromValidator( + this.network, + this.treasuryScript, + ); + + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + this.treasuryScriptHash = this.treasuryScript.hash(); + this.orderScriptHash = this.orderScript.hash(); + this.orderScriptAddress = addressFromValidator( + this.network, + this.orderScript, + ); + + // Derive treasury NFT asset ID from treasury script hash + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + this.treasuryNFTAssetId = Core.AssetId( + this.treasuryScriptHash + treasuryAssetName.toString(), + ); + } + + /** + * Create a V0_3 SDK instance. + */ + static create

( + blaze: Blaze, + params: IRealfiSDKParamsV0_3, + ): RealfiSDKV0_3 { + const enableTrace = params.enableTrace ?? false; + + // Instantiate one-shot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint( + { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex, + }, + enableTrace, + ).Script; + const oneShotPolicyId = oneShotScript.hash(); + // Instantiate protocol script (V0_3 uses V0_3ProtocolProtocolWithdraw) + const protocolScript = new V0_3Types.V0_3ProtocolProtocolWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + // Instantiate mint proxy script (parameterized by one-shot policy ID) + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint( + oneShotPolicyId, + enableTrace, + ).Script; + // Instantiate treasury script from treasury bootstrap + const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend( + { + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + const orderScript = new V0_3Types.V0_3OrderOrderSpend( + oneShotPolicyId, + enableTrace, + ).Script; + + return new RealfiSDKV0_3( + blaze, + { + version: "V0_3", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + }, + { + oneShotScript, + protocolScript, + mintProxyScript, + treasuryScript, + orderScript, + }, + { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + orderRefInput: params.referenceInputs?.orderRefInput, + }, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + * This creates a new treasury with an initial datum. + * The treasury bootstrap UTxO must be provided to consume it. + */ + async mintTreasuryNFT( + treasuryBootstrapUtxo: Core.TransactionUnspentOutput, + initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n }, + ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> { + const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash); + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + const treasuryAddress = addressFromValidator( + this.network, + this.treasuryScript, + ); + + const datum = Data.serialize(V0_1TreasuryDatum, initialDatum); + const tx = await this.blaze + .newTransaction() + .addInput(treasuryBootstrapUtxo) + .addMint( + treasuryPolicyId, + new Map([[treasuryAssetName, 1n]]), + Data.Void(), + ) + .lockAssets( + treasuryAddress, + makeValue(10000000n, [this.treasuryNFTAssetId, 1n]), + datum, + ) + .provideScript(this.treasuryScript); + + return { tx, nftAssetId: this.treasuryNFTAssetId }; + } + + /** + * Deploy the treasury script as a reference script. + */ + async deployTreasury(): Promise { + return deployScript( + this.blaze, + this.treasuryScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Deploy the Orders script as a reference script. + */ + async deployOrderContract(): Promise { + return deployScript( + this.blaze, + this.orderScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Get the treasury datum. + */ + async getTreasuryDatum(): Promise> { + const { + utxo: treasuryUtxo, + datum: treasuryDatum, + parsedDatum: parsedTreasuryDatum, + } = await getDatumFromNFT( + this.blaze, + this.treasuryNFTAssetId, + V0_1TreasuryDatum, + ); + + if (!treasuryUtxo) { + throw new Error("No UTXO found with the treasury NFT"); + } + if (!treasuryDatum) { + throw new Error("No treasury datum found"); + } + + return { + treasuryUtxo, + treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum, + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the one-shot NFT with the initial datum. + * V0_3 uses ProxyDatum which includes withdraw/deposit permissions. + */ + async mintOneShot( + receiverAddress: Core.Address, + datum: ProxyDatum, + ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(V0_3Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings, + }); + + const baseTx = this.blaze + .newTransaction() + .addInput(utxo) + .addMint( + this.oneShotPolicyId, + new Map([[Core.AssetName(""), 1n]]), + Data.Void(), + ); + const tx = lockOrPayAssets( + baseTx, + receiverAddress, + makeValue(10000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ).provideScript(this.oneShotScript); + return { tx, policyId: this.oneShotPolicyId }; + } + + /** + * Update the one-shot datum. + */ + async updateOneShotDatum( + receiverAddress: Core.Address, + newDatum: ProxyDatum, + ): Promise { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT( + Core.AssetId(this.oneShotPolicyId), + ); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + + const serializedDatum = Data.serialize(V0_3Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings, + }); + + return lockOrPayAssets( + this.blaze.newTransaction().addInput(oneshotUtxo), + receiverAddress, + makeValue(10000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ); + } + + /** + * Get the proxy datum from the one-shot token UTXO. + * V0_3 returns ProxyDatum which includes withdraw/deposit permissions. + * Result is cached after first fetch. + */ + async getParsedProxyDatum(): Promise> { + if (this.cachedProxyDatumResult) { + return this.cachedProxyDatumResult as IProxyDatumResult; + } + + const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(V0_3Types.ProxyDatum, proxyDatum); + const result = { proxyUtxo, proxyDatum, parsedProxyDatum }; + + this.cachedProxyDatumResult = result; + return result; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Order Execution Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Parse order UTXOs into IOrderInfo objects and validate they're all the same type. + * @returns The parsed order infos and the action type (mint or burn) + */ + private parseOrderInfos(orderUtxos: Core.TransactionUnspentOutput[]): { + orderInfos: IOrderInfo[]; + actionType: "mint" | "burn"; + } { + const orderInfos: IOrderInfo[] = []; + let actionType: "mint" | "burn" | null = null; + + for (const utxo of orderUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(V0_3Types.OrderDatum, datumData) as OrderDatum; + + let action: "mint" | "burn"; + let amount: bigint; + + if ("OMint" in datum.action) { + action = "mint"; + amount = datum.action.OMint.amount; + } else if ("ORedeem" in datum.action) { + action = "burn"; + amount = datum.action.ORedeem.amount; + } else { + throw new Error("Unknown order action type"); + } + + // Verify all orders are the same type + if (actionType === null) { + actionType = action; + } else if (actionType !== action) { + throw new Error( + "Mixed order types in inputs. All orders must be of the same type.", + ); + } + + orderInfos.push({ utxo, datum, action, amount }); + } + + if (!actionType) { + throw new Error("No orders to execute"); + } + + return { orderInfos, actionType }; + } + + /** + * Calculate treasury state for order execution. + * Validates that treasury has sufficient reserve tokens for burn operations. + */ + private async calculateTreasuryState( + totalAmount: bigint, + actionType: "mint" | "burn", + reserveTokenAssetId: Core.AssetId, + ): Promise { + const { treasuryUtxo, parsedTreasuryDatum } = await this.getTreasuryDatum(); + const treasuryValue = treasuryUtxo.output().amount(); + const treasuryAssets = treasuryValue.multiasset(); + const currentReserve = treasuryAssets?.get(reserveTokenAssetId) ?? 0n; + const newReserve = currentReserve + totalAmount; + + // For burn operations, validate treasury has enough reserve tokens + if (actionType === "burn") { + if (currentReserve === 0n) { + throw new Error( + "Treasury has no reserve tokens. Cannot execute burn orders.", + ); + } + // totalAmount is negative for burns, so newReserve < 0 means insufficient funds + if (newReserve < 0n) { + throw new Error( + `Insufficient reserve tokens in treasury. Treasury has ${currentReserve} but burn requires ${-totalAmount}.`, + ); + } + } + + return { + treasuryUtxo, + treasuryValue, + parsedTreasuryDatum, + currentReserve, + newReserve, + }; + } + + /** + * Add destination outputs for executed orders. + * For mints: sends stablecoins to destinations. + * For burns: sends reserve tokens to destinations. + */ + private addDestinationOutputs( + tx: TxBuilder, + orderInfos: IOrderInfo[], + actionType: "mint" | "burn", + stablecoinAssetId: Core.AssetId, + reserveTokenAssetId: Core.AssetId, + ): void { + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress( + this.network, + orderInfo.datum.destination, + ); + + if (actionType === "mint") { + const outputValue = makeValue(2000000n, [ + stablecoinAssetId, + orderInfo.amount, + ]); + addDirectOutput(tx, destAddress, outputValue); + } else { + // For burns, amount is negative in the datum, so negate it for output + const outputValue = makeValue(2000000n, [ + reserveTokenAssetId, + -orderInfo.amount, + ]); + console.log(destAddress.toBech32(), orderInfo.amount); + addDirectOutput(tx, destAddress, outputValue); + } + } + } + + /** + * Update treasury with new reserve balance and circulating supply. + */ + private updateTreasury( + tx: TxBuilder, + treasuryState: ITreasuryState, + totalAmount: bigint, + reserveTokenAssetId: Core.AssetId, + ): void { + const newTreasuryDatum: V0_1TreasuryDatum = { + circulating_supply: + treasuryState.parsedTreasuryDatum.circulating_supply + totalAmount, + }; + const serializedTreasuryDatum = Data.serialize( + V0_1TreasuryDatum, + newTreasuryDatum, + ); + + tx.addInput(treasuryState.treasuryUtxo, Data.Void()); + const newTreasuryValue = Value.merge( + makeValue(treasuryState.treasuryValue.coin(), [ + this.treasuryNFTAssetId, + 1n, + ]), + makeValue(0n, [reserveTokenAssetId, treasuryState.newReserve]), + ); + tx.lockAssets( + this.treasuryAddress, + newTreasuryValue, + serializedTreasuryDatum, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Minting Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * + * @param action "mint" | "burn" + * @param amount amount of stablecoin to mint or burn + * @param owner Optional owner multisig script. Defaults to the wallet's change address. + * @param destination When minting, where to send the minted stablecoins. When burning, where to send the redeemed assets. A datum can be attached. + * @param data Optional datum data. Defaults to Data.Void() + * @returns TxBuilder + */ + async buildOrderTx({ + action, + amount, + owner, + destination, + data = Data.Void(), + }: { + action: "mint" | "burn"; + amount: bigint; + owner?: MultisigScript; + destination: Destination; + data?: PlutusData; + }): Promise { + const CONVERTION_RATIO = 1n; // Define conversion ratio between stablecoin and reserve token. Should come from datum/settings + const stableCoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const orderContractAddress = addressFromValidator( + this.network, + this.orderScript, + ); + + if (!owner) { + owner = { + Signature: { + key_hash: (await this.blaze.wallet.getChangeAddress()) + .getProps() + .paymentPart!.hash!.toString(), + }, + }; + } else { + const scriptTypes = Object.keys(owner); + if (scriptTypes.length !== 1 || scriptTypes[0] !== "Signature") { + //TODO: support other multisig types once the backend supports them + throw new Error( + "Only Signature multisig script is currently supported for owner", + ); + } + } + const orderAction = + action === "mint" + ? { OMint: { amount } } + : { ORedeem: { amount: -amount } }; + const orderDatum: OrderDatum = { + action: orderAction, + owner, + destination, + data, + }; + const serializedDatum = Data.serialize(V0_3Types.OrderDatum, orderDatum); + const proxyDatum = await this.getParsedProxyDatum(); + const reserveTokenAssetId = Core.AssetId( + proxyDatum.parsedProxyDatum.settings.reserve_token.join(""), + ); + + const tx = this.blaze.newTransaction(); + + let valueToLock: Core.Value; + //TODO: include fees and min ada for when the order is executed? + if (action === "mint") { + // minting stablecoin, lock reserve token + const reserveTokenAmount = amount * CONVERTION_RATIO; + + valueToLock = makeValue(1000000n, [ + reserveTokenAssetId, + reserveTokenAmount, + ]); + } else { + // burning stablecoin, lock stablecoin + valueToLock = makeValue(1000000n, [stableCoinAssetId, amount]); + } + tx.lockAssets(orderContractAddress, valueToLock, serializedDatum); + + return tx; + } + /** + * Build the SignedPayload_ProtocolRedeemer from order inputs. + * Returns CBOR hex string to be signed and included in SignedMessage. + */ + async getSignedPayloadFromOrderInputs( + orderUtxos: Core.TransactionInput[], + ): Promise { + if (orderUtxos.length === 0) { + throw new Error("At least one order UTxO is required"); + } + + // Sort inputs for deterministic ordering + const sortedInputs = sortOrderInputs(orderUtxos); + + // Build nonce from first UTxO + const nonce = buildNonceFromUtxo(sortedInputs[0]!); + + // Resolve UTxOs and build request list + const resolvedUtxos = + await this.blaze.provider.resolveUnspentOutputs(sortedInputs); + const requestList: Request[] = []; + let actionType: "OMint" | "ORedeem" | null = null; + + for (const utxo of resolvedUtxos) { + const parsed = this.parseOrderActionForPayload(utxo); + + // Validate all orders are the same type + if (actionType === null) { + actionType = parsed.actionType; + } else if (actionType !== parsed.actionType) { + throw new Error( + "Mixed order types in inputs. All orders must be of the same type.", + ); + } + + requestList.push( + this.buildRequestFromUtxo(utxo, parsed.amount, parsed.destination), + ); + } + + // Build the action (ProtocolRedeemer) + const action: V0_3Types.ProtocolRedeemer = + actionType === "OMint" + ? { Mint: { requests: requestList } } + : { Burn: { requests: requestList } }; + + // Build and serialize SignedPayload_ProtocolRedeemer + const signedPayload: V0_3Types.SignedPayload_ProtocolRedeemer = { + action, + nonce, + }; + const serialized = Data.serialize( + V0_3Types.SignedPayload_ProtocolRedeemer, + signedPayload, + ); + return serialized.toCbor().toString(); + } + + /** + * Parse an order UTxO and extract action type, amount, and destination. + */ + private parseOrderActionForPayload(utxo: Core.TransactionUnspentOutput): { + actionType: "OMint" | "ORedeem"; + amount: bigint; + destination: V0_3Types.Destination; + } { + const datum = utxo.output().datum()?.asInlineData(); + if (!datum) { + throw new Error("Order UTXO has no inline datum"); + } + + const parsedDatum = parse(V0_3Types.OrderDatum, datum); + + if ("OMint" in parsedDatum.action) { + return { + actionType: "OMint", + amount: parsedDatum.action.OMint.amount, + destination: parsedDatum.destination, + }; + } else if ("ORedeem" in parsedDatum.action) { + return { + actionType: "ORedeem", + amount: parsedDatum.action.ORedeem.amount, + destination: parsedDatum.destination, + }; + } + + throw new Error("Unknown order action type"); + } + + /** + * Build a Request from an order UTxO. + * Serializes the origin (OutputReference) as CBOR to match Aiken's format. + */ + private buildRequestFromUtxo( + utxo: Core.TransactionUnspentOutput, + amount: bigint, + destination: V0_3Types.Destination, + ): Request { + const input = utxo.input(); + const txId = input.transactionId().toString(); + const outputIndex = input.index(); + + // Serialize origin as PlutusData (matching Aiken's cbor.serialise format) + // OutputReference struct: { transaction_id: ByteArray, output_index: Int } + const fieldsList = new Core.PlutusList(); + fieldsList.add(Core.PlutusData.newBytes(Buffer.from(txId, "hex"))); + fieldsList.add(Core.PlutusData.newInteger(outputIndex)); + const outputRefData = Core.PlutusData.newConstrPlutusData( + new Core.ConstrPlutusData(0n, fieldsList), + ); + + return { + origin: outputRefData.toCbor(), + amount, + destination, + }; + } + + /** + * Build a transaction to execute orders. + * This consumes order UTXOs, validates the signed redeemer, mints/burns stablecoins, + * and sends the results to the destinations specified in the orders. + * + * @param params.orderInputs - The order transaction inputs to execute + * @param params.signedPayload - The signed payload hex string from getSignedPayloadFromOrderInputs + * @param params.signatures - Array of signatures from each signer + * @returns TxBuilder ready to be completed and signed + */ + async buildExecuteOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + signedPayload: string; + signatures: SignatureList; + }): Promise { + const { orderInputs, signedPayload, signatures } = params; + + // Sort and resolve order UTXOs + const sortedOrderInputs = sortOrderInputs(orderInputs); + const orderUtxos = + await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + + // Parse orders and validate they're all the same type + const { orderInfos, actionType } = this.parseOrderInfos(orderUtxos); + + // Get protocol datum for permissions and registry + const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum(); + + // Get script reference inputs (uses caching from base class) + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + order: this.orderScriptHash, + treasury: this.treasuryScriptHash, + }); + const protocolRefInput = refInputs.protocol; + const orderRefInput = refInputs.order; + const treasuryRefInput = refInputs.treasury; + + if (!protocolRefInput || !orderRefInput || !treasuryRefInput) { + throw new Error( + "Missing reference script inputs. Make sure all scripts are deployed.", + ); + } + + // Calculate total amount and get asset IDs + const totalAmount = orderInfos.reduce((sum, info) => sum + info.amount, 0n); + const reserveTokenAssetId = Core.AssetId( + parsedProxyDatum.settings.reserve_token.join(""), + ); + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + + // Calculate treasury state and validate for burns + const treasuryState = await this.calculateTreasuryState( + totalAmount, + actionType, + reserveTokenAssetId, + ); + + // Build request_to_outputs mapping (1:1 since outputs are in same order as inputs) + const requestToOutputs: Record = {}; + for (let i = 0; i < orderInfos.length; i++) { + requestToOutputs[i] = BigInt(i); + } + + // Serialize redeemers + const serializedSignedRedeemer = Data.serialize( + V0_3Types.SignedRedeemer_ExtraProtocolRedeemer, + { + extra: { request_to_outputs: requestToOutputs }, + payload: signedPayload, + signatures: signatures, + }, + ); + const executeRedeemer = Data.serialize(V0_3Types.OrderRedeemer, "Execute"); + + // Build the transaction + + const tx = this.blaze.newTransaction(); + + // Add order inputs with Execute redeemer + for (const orderInfo of orderInfos) { + tx.addInput(orderInfo.utxo, executeRedeemer); + } + + // Add reference inputs + tx.addReferenceInput(protocolRefInput); + tx.addReferenceInput(orderRefInput); + tx.addReferenceInput(proxyUtxo); + tx.addReferenceInput(treasuryRefInput); + + // Add protocol withdrawal with signed redeemer + const protocolRewardAccount = Core.RewardAccount.fromCredential( + { + type: Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash, + }, + this.network, + ); + tx.addWithdrawal(protocolRewardAccount, 0n, serializedSignedRedeemer); + + // Mint/burn stablecoins + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), + Data.Void(), + ); + + // Add destination outputs + this.addDestinationOutputs( + tx, + orderInfos, + actionType, + stablecoinAssetId, + reserveTokenAssetId, + ); + + // Update treasury + this.updateTreasury(tx, treasuryState, totalAmount, reserveTokenAssetId); + + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + + return tx; + } + + /** + * Build a transaction to cancel orders. + * This returns the locked assets to the specified destination address. + * The transaction must be signed by the owner(s) specified in each order's datum. + * + * @param params.orderInputs - The order transaction inputs to cancel + * @param params.destination - Optional destination address. Defaults to the wallet's change address. + * @returns TxBuilder ready to be completed and signed + */ + async buildCancelOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + destination?: Core.Address; + versionHint?: TProtocolVersion; // version of the orders to cancel. Optional, only to ensure correct datum parsing. + }): Promise { + const { orderInputs, destination, versionHint } = params; + + // Resolve order UTXOs + const orderUtxos = + await this.blaze.provider.resolveUnspentOutputs(orderInputs); + + if (orderUtxos.length === 0) { + throw new Error("No orders to cancel"); + } + + const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput + ? new Map([ + [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput], + ]) + : undefined; + + const orderRefInputs = await resolveOrderReferenceInputs( + this.blaze, + orderUtxos, + cachedOrderRefs, + this.scriptDeploymentAddress, + ); + + // Build the cancel redeemer + const cancelRedeemer = Data.serialize(V0_3Types.OrderRedeemer, "Cancel"); + + // Determine destination address + const destAddress = + destination ?? (await this.blaze.wallet.getChangeAddress()); + + // Build the transaction + + const tx = this.blaze.newTransaction(); + + for (const orderRefInput of orderRefInputs.values()) { + tx.addReferenceInput(orderRefInput); + } + + // cache current version of order script reference input + const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash); + if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = currentOrderRefInput; + } + + // Collect all required signers from order owners + const requiredSigners = new Set(); + + // Process each order + for (const utxo of orderUtxos) { + const owner = await parseCancelOwner(utxo, versionHint); + + // Extract required signers from the owner's MultisigScript + for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) { + requiredSigners.add(keyHash); + } + + // Add order input with Cancel redeemer + tx.addInput(utxo, cancelRedeemer); + + // Return the locked assets to destination + const outputValue = utxo.output().amount(); + addDirectOutput(tx, destAddress, outputValue); + } + + // Add all required signers to the transaction + for (const keyHash of requiredSigners) { + tx.addRequiredSigner(Ed25519KeyHashHex(keyHash)); + } + + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations: Withdraw and Deposit + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to withdraw reserve tokens from the treasury. + * The transaction must be signed by the authorized withdraw permission signers. + * + * @param params.requests - Array of withdraw requests with destinations and amounts + * @param params.signedPayload - The signed payload hex string from getSignedPayloadForWithdraw + * @param params.signatures - Array of KeySignature tuples from authorized signers + * @returns TxBuilder ready to be completed and signed + */ + /** + * Build a withdraw transaction to remove reserve from the treasury. + * @param amount Amount to withdraw from treasury + * @param receiverAddress Address to send withdrawn assets to; defaults to wallet address + */ + async buildWithdrawTx( + assetAmount: AssetAmount, + receiverAddress?: string, + ): Promise { + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash, + }); + + const receiver = receiverAddress + ? Core.Address.fromBech32(receiverAddress) + : await this.blaze.wallet.getChangeAddress(); + + const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum(); + const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum(); + + const serializedPayload = getSignedPayloadForWithdraw( + assetAmount.amount, + treasuryUtxo!, + ); + // Build SignedRedeemer_ExtraProtocolRedeemer + const serializedSignedRedeemer = Data.serialize( + V0_3Types.SignedRedeemer_ExtraProtocolRedeemer, + { + extra: { request_to_outputs: { 0: 0n } }, + payload: serializedPayload, + signatures: [], + }, + ); + + const rewardAccount = this.getProtocolRewardAccount(); + const requiredSigners = getSignatureKeyHashesFromMultisigScript( + parsedProxyDatum.settings.withdraw_permission, + ).map((key) => Core.Ed25519KeyHashHex(key)); + + const reserveToken = AssetId( + assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(""), + ); + const treasuryAddress = addressFromCredential( + this.network, + credentialFromScriptHash( + Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury), + ), + ); + + const inititalTreasuryValue = treasuryUtxo.output().amount(); + const withdrawValue = makeValue(0n, [reserveToken, -assetAmount.amount]); + const newTreasuryValue = Value.merge(inititalTreasuryValue, withdrawValue); + + const tx = this.blaze + .newTransaction() + .addWithdrawal(rewardAccount, 0n, serializedSignedRedeemer) + .addReferenceInput(proxyUtxo) + .addReferenceInput(refInputs.protocol!) + .addReferenceInput(refInputs.proxy!) + .addReferenceInput(refInputs.treasury!) + .addInput(treasuryUtxo!, Data.Void()); + addDirectOutput( + tx, + receiver, + makeValue(0n, [reserveToken, assetAmount.amount]), + ); + tx.lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + + return tx; + } + + async buildDepositTx(assetAmount: AssetAmount): Promise { + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + proxy: this.mintProxyScript.hash(), + treasury: this.treasuryScriptHash, + }); + + const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum(); + const { treasuryUtxo, treasuryDatum } = await this.getTreasuryDatum(); + + const serializedPayload = getSignedPayloadForDeposit( + assetAmount.amount, + treasuryUtxo!, + ); + // Build SignedRedeemer_ExtraProtocolRedeemer + const serializedSignedRedeemer = Data.serialize( + V0_3Types.SignedRedeemer_ExtraProtocolRedeemer, + { + extra: { request_to_outputs: { 0: 0n } }, + payload: serializedPayload, + signatures: [], + }, + ); + + const rewardAccount = this.getProtocolRewardAccount(); + const requiredSigners = getSignatureKeyHashesFromMultisigScript( + parsedProxyDatum.settings.deposit_permission, + ).map((key) => Core.Ed25519KeyHashHex(key)); + + const reserveToken = AssetId( + assetAmount.id ?? parsedProxyDatum.settings.reserve_token.join(""), + ); + const treasuryAddress = addressFromCredential( + this.network, + credentialFromScriptHash( + Hash28ByteBase16(parsedProxyDatum.settings.registry.treasury), + ), + ); + + const inititalTreasuryValue = treasuryUtxo.output().amount(); + const depositValue = makeValue(0n, [reserveToken, assetAmount.amount]); + const newTreasuryValue = Value.merge(inititalTreasuryValue, depositValue); + + const tx = this.blaze + .newTransaction() + .addWithdrawal(rewardAccount, 0n, serializedSignedRedeemer) + .addReferenceInput(proxyUtxo) + .addReferenceInput(refInputs.protocol!) + .addReferenceInput(refInputs.proxy!) + .addReferenceInput(refInputs.treasury!) + .addInput(treasuryUtxo!, Data.Void()) + .lockAssets(treasuryAddress, newTreasuryValue, treasuryDatum); + + for (const signer of requiredSigners) { + tx.addRequiredSigner(signer); + } + + return tx; + } +} diff --git a/modules/realfi-partner-sdk/src/sdk/v0_4/index.ts b/modules/realfi-partner-sdk/src/sdk/v0_4/index.ts new file mode 100644 index 0000000000..1a37055e17 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v0_4/index.ts @@ -0,0 +1,2127 @@ +import { + addressFromValidator, + blake2b_256, + Ed25519KeyHashHex, + HexBlob, + PlutusData, + toHex, +} from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { + type Blaze, + Core, + makeValue, + TxBuilder, + Value, + type Wallet, +} from "@blaze-cardano/sdk"; + +import { + BaseTypes, + V0_1Types, + V0_4Types, +} from "../../generated-types/index.js"; +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import type { + Destination, + MultisigScript, + OrderDatum, + ProxyDatum, + Settings, + VaultDatum, +} from "../../generated-types/v0_4/index.js"; +import { + addDirectOutput, + addDestinationOutput, + buildNonceFromUtxo, + buildTimelockAddress, + buildTimelockDestination, + buildTimelockNativeScript, + buildUnstakeMetadatum, + UNSTAKE_METADATA_LABEL, + deployScript, + destinationToAddress, + findReserveAsset, + getDatumFromNFT, + getSignatureKeyHashesFromMultisigScript, + usdrToReserve, + usdrToReserveCeil, + computeReserveDeltas, + parseCancelOwner, + resolveOrderReferenceInputs, + type ICachedReferenceInputs, + type IProxyDatumResult, + type IRealfiSDKWithTreasury, + type ITreasuryDatumResult, + type IVaultDatumResult, + type TClientSource, + type TProtocolVersion, + lockOrPayAssets, + RealfiSDKBase, + sortOrderInputs, +} from "../shared/index.js"; + +// ───────────────────────────────────────────────────────────────────────────── +// Types +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Parsed order information extracted from a UTXO. + */ +interface IOrderInfo { + utxo: Core.TransactionUnspentOutput; + datum: OrderDatum; + actionType: TOrderActionType; + amount: bigint; + /** Yield amount for deposit actions */ + yield?: bigint; + /** Reserve asset for treasury actions, undefined for stake/unstake */ + reserveAsset?: [string, string]; +} + +type TOrderActionType = + | "mint" + | "burn" + | "deposit" + | "withdraw" + | "stake" + | "unstake"; + +interface ITxBuilderWithInternals { + body: Core.TransactionBody; + redeemers: Core.Redeemers; +} + +const MIN_LOVELACE = 2000000n; + +/** + * Floor division for BigInt (rounds toward negative infinity). + * JavaScript BigInt `/` truncates toward zero, but Aiken (Plutus) + * uses floor division. These differ for negative dividends. + */ +/** + * Extract the requests list from a signed payload action, regardless of action type. + * Both TreasuryRequest and Request have `origin: { transaction_id, output_index }`. + */ +function getRequestsFromAction( + action: V0_4Types.ProtocolRedeemer, +): Array<{ origin: { transaction_id: string; output_index: bigint } }> { + if ("Mint" in action) return action.Mint.requests; + if ("Burn" in action) return action.Burn.requests; + if ("Withdraw" in action) return action.Withdraw.requests; + if ("Deposit" in action) return action.Deposit.requests; + if ("Stake" in action) return action.Stake.requests; + if ("Unstake" in action) return action.Unstake.requests; + throw new Error("Unknown action type in signed payload"); +} + +function floorDiv(a: bigint, b: bigint): bigint { + const q = a / b; + // Adjust if signs differ and there's a remainder + if ((a ^ b) < 0n && q * b !== a) { + return q - 1n; + } + return q; +} + +/** + * Calculate yield split between staked and unstaked portions. + * Matches on-chain deposit.ak logic: staked_yield_share = total_yield * vault_usdr / treasury_circulating + */ +function calculateYieldShares( + totalYield: bigint, + vaultUSDr: bigint, + treasuryCirculating: bigint, +): { stakedYieldShare: bigint; unstakedYieldShare: bigint } { + const stakedYieldShare = + treasuryCirculating > 0n + ? floorDiv(totalYield * vaultUSDr, treasuryCirculating) + : 0n; + const unstakedYieldShare = totalYield - stakedYieldShare; + return { stakedYieldShare, unstakedYieldShare }; +} + +function toSpendOrderingKey(input: Core.TransactionInput): string { + return `${input.transactionId().toString()}${input.index().toString()}`; +} + +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiSDKParamsV0_4 { + version: "V0_4"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** USDr asset name hex */ + assetNameHex: string; + /** sUSDr asset name hex */ + sUSDrAssetNameHex: string; + /** The treasury bootstrap UTxO reference */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** The staking vault bootstrap UTxO reference */ + stakingVaultBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + stakingVaultRefInput?: Core.TransactionUnspentOutput; + }; + clientSource?: TClientSource; +} + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * V0_4 SDK implementation. + * + * Extends the protocol with staking (USDr->sUSDr), unstaking (sUSDr->USDr), + * multi-reserve assets, deposit with interest splitting, and index-based optimization. + * All order types (mint, burn, deposit, withdraw, stake, unstake) are request-based. + */ +export class RealfiSDKV0_4

+ extends RealfiSDKBase + implements IRealfiSDKWithTreasury +{ + readonly version = "V0_4" as const; + + // Script hashes and policy IDs + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + readonly treasuryScriptHash: Core.Hash28ByteBase16; + readonly treasuryNFTAssetId: Core.AssetId; + readonly orderScriptHash: Core.Hash28ByteBase16; + readonly orderScriptAddress: Core.Address; + readonly treasuryAddress: Core.Address; + readonly stakingVaultScriptHash: Core.Hash28ByteBase16; + readonly stakingVaultAddress: Core.Address; + readonly stakingVaultNFTAssetId: Core.AssetId; + readonly sUSDrAssetNameHex: string; + + // Scripts + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + protected readonly treasuryScript: Core.Script; + protected readonly orderScript: Core.Script; + protected readonly stakingVaultScript: Core.Script; + + private constructor( + blaze: Blaze, + params: { + version: "V0_4"; + proxyBootstrap: { txHash: Core.TransactionId; outputIndex: bigint }; + assetNameHex: string; + sUSDrAssetNameHex: string; + enableTrace?: boolean; + scriptDeploymentAddress?: Core.Address; + clientSource?: TClientSource; + }, + scripts: { + oneShotScript: Core.Script; + protocolScript: Core.Script; + mintProxyScript: Core.Script; + treasuryScript: Core.Script; + orderScript: Core.Script; + stakingVaultScript: Core.Script; + }, + cachedReferenceInputs?: ICachedReferenceInputs, + ) { + super( + blaze, + { + version: "V0_4", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace: params.enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource, + }, + cachedReferenceInputs, + ); + + this.sUSDrAssetNameHex = params.sUSDrAssetNameHex; + + this.oneShotScript = scripts.oneShotScript; + this.protocolScript = scripts.protocolScript; + this.mintProxyScript = scripts.mintProxyScript; + this.treasuryScript = scripts.treasuryScript; + this.orderScript = scripts.orderScript; + this.stakingVaultScript = scripts.stakingVaultScript; + + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + this.treasuryScriptHash = this.treasuryScript.hash(); + this.orderScriptHash = this.orderScript.hash(); + this.stakingVaultScriptHash = this.stakingVaultScript.hash(); + + this.treasuryAddress = addressFromValidator( + this.network, + this.treasuryScript, + ); + this.orderScriptAddress = addressFromValidator( + this.network, + this.orderScript, + ); + this.stakingVaultAddress = addressFromValidator( + this.network, + this.stakingVaultScript, + ); + + // Treasury NFT: policy = treasury script hash, name = "treasury" + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + this.treasuryNFTAssetId = Core.AssetId( + this.treasuryScriptHash + treasuryAssetName.toString(), + ); + + // Staking vault NFT: policy = staking vault script hash, name = "staking_vault" + const vaultAssetName = Core.AssetName(toHex(Buffer.from("staking_vault"))); + this.stakingVaultNFTAssetId = Core.AssetId( + this.stakingVaultScriptHash + vaultAssetName.toString(), + ); + } + + /** + * Create a V0_4 SDK instance. + */ + static create

( + blaze: Blaze, + params: IRealfiSDKParamsV0_4, + ): RealfiSDKV0_4 { + const enableTrace = params.enableTrace ?? false; + + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint( + { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex, + }, + enableTrace, + ).Script; + const oneShotPolicyId = oneShotScript.hash(); + + const protocolScript = new V0_4Types.V0_4ProtocolProtocolWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint( + oneShotPolicyId, + enableTrace, + ).Script; + + const treasuryScript = new V0_1Types.V0_1TreasuryTreasurySpend( + { + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + const orderScript = new V0_4Types.V0_4OrderOrderSpend( + oneShotPolicyId, + enableTrace, + ).Script; + + const stakingVaultScript = new V0_4Types.V0_4StakingVaultStakingVaultSpend( + { + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + return new RealfiSDKV0_4( + blaze, + { + version: "V0_4", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource, + }, + { + oneShotScript, + protocolScript, + mintProxyScript, + treasuryScript, + orderScript, + stakingVaultScript, + }, + { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + orderRefInput: params.referenceInputs?.orderRefInput, + stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput, + }, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + */ + async mintTreasuryNFT( + treasuryBootstrapUtxo: Core.TransactionUnspentOutput, + initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n }, + ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> { + const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash); + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + + const datum = Data.serialize(V0_1TreasuryDatum, initialDatum); + const tx = await this.blaze + .newTransaction() + .addInput(treasuryBootstrapUtxo) + .addMint( + treasuryPolicyId, + new Map([[treasuryAssetName, 1n]]), + Data.Void(), + ) + .lockAssets( + this.treasuryAddress, + makeValue(10000000n, [this.treasuryNFTAssetId, 1n]), + datum, + ) + .provideScript(this.treasuryScript); + + return { tx, nftAssetId: this.treasuryNFTAssetId }; + } + + async deployTreasury(): Promise { + return deployScript( + this.blaze, + this.treasuryScript, + this.scriptDeploymentAddress, + ); + } + + async deployOrderContract(): Promise { + return deployScript( + this.blaze, + this.orderScript, + this.scriptDeploymentAddress, + ); + } + + async getTreasuryDatum(): Promise> { + const { + utxo: treasuryUtxo, + datum: treasuryDatum, + parsedDatum: parsedTreasuryDatum, + } = await getDatumFromNFT( + this.blaze, + this.treasuryNFTAssetId, + V0_1TreasuryDatum, + ); + + if (!treasuryUtxo) { + throw new Error("No UTXO found with the treasury NFT"); + } + if (!treasuryDatum) { + throw new Error("No treasury datum found"); + } + + return { + treasuryUtxo, + treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum, + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Staking Vault Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the staking vault NFT and create initial vault UTxO. + */ + async mintStakingVaultNFT( + stakingVaultBootstrapUtxo: Core.TransactionUnspentOutput, + initialDatum: VaultDatum = { circulating_susdr: 0n }, + ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> { + const vaultPolicyId = Core.PolicyId(this.stakingVaultScriptHash); + const vaultAssetName = Core.AssetName(toHex(Buffer.from("staking_vault"))); + + const datum = Data.serialize(V0_4Types.VaultDatum, initialDatum); + const tx = await this.blaze + .newTransaction() + .addInput(stakingVaultBootstrapUtxo) + .addMint(vaultPolicyId, new Map([[vaultAssetName, 1n]]), Data.Void()) + .lockAssets( + this.stakingVaultAddress, + makeValue(10000000n, [this.stakingVaultNFTAssetId, 1n]), + datum, + ) + .provideScript(this.stakingVaultScript); + + return { tx, nftAssetId: this.stakingVaultNFTAssetId }; + } + + async deployStakingVault(): Promise { + return deployScript( + this.blaze, + this.stakingVaultScript, + this.scriptDeploymentAddress, + ); + } + + /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */ + getSusdrAssetId(): Core.AssetId { + return Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + } + + async getVaultDatum(): Promise> { + const { + utxo: vaultUtxo, + datum: vaultDatum, + parsedDatum: parsedVaultDatum, + } = await getDatumFromNFT( + this.blaze, + this.stakingVaultNFTAssetId, + V0_4Types.VaultDatum, + ); + + if (!vaultUtxo) { + throw new Error("No UTXO found with the staking vault NFT"); + } + if (!vaultDatum) { + throw new Error("No vault datum found"); + } + + return { + vaultUtxo, + vaultDatum, + parsedVaultDatum: parsedVaultDatum as VaultDatum, + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + async mintOneShot( + receiverAddress: Core.Address, + datum: ProxyDatum, + ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(V0_4Types.ProxyDatum, { + logic: datum.logic, + settings: datum.settings, + }); + + const baseTx = this.blaze + .newTransaction() + .addInput(utxo) + .addMint( + this.oneShotPolicyId, + new Map([[Core.AssetName(""), 1n]]), + Data.Void(), + ); + const tx = lockOrPayAssets( + baseTx, + receiverAddress, + makeValue(10000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ).provideScript(this.oneShotScript); + return { tx, policyId: this.oneShotPolicyId }; + } + + async updateOneShotDatum( + receiverAddress: Core.Address, + newDatum: ProxyDatum, + ): Promise { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT( + Core.AssetId(this.oneShotPolicyId), + ); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + + const serializedDatum = Data.serialize(V0_4Types.ProxyDatum, { + logic: newDatum.logic, + settings: newDatum.settings, + }); + + return lockOrPayAssets( + this.blaze.newTransaction().addInput(oneshotUtxo), + receiverAddress, + makeValue(10000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ); + } + + async getParsedProxyDatum(): Promise> { + if (this.cachedProxyDatumResult) { + return this.cachedProxyDatumResult as IProxyDatumResult; + } + + const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(V0_4Types.ProxyDatum, proxyDatum); + const result = { proxyUtxo, proxyDatum, parsedProxyDatum }; + + this.cachedProxyDatumResult = result; + return result; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Order Builder Methods (6 separate methods, shared _buildOrderTx helper) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Internal helper to build an order transaction. + */ + private async _buildOrderTx(params: { + action: V0_4Types.OrderAction; + valueToLock: Core.Value; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + extraLabels?: Map; + }): Promise { + const orderContractAddress = addressFromValidator( + this.network, + this.orderScript, + ); + + let owner = params.owner; + if (!owner) { + const addressProps = ( + await this.blaze.wallet.getChangeAddress() + ).getProps(); + const keyHash = + addressProps.delegationPart?.hash ?? addressProps.paymentPart?.hash; + if (!keyHash) { + throw new Error("Could not derive owner key hash from wallet address"); + } + owner = { + Signature: { key_hash: keyHash.toString() }, + }; + } + + const orderDatum: OrderDatum = { + action: params.action, + owner, + destination: params.destination, + data: params.data ?? Data.Void(), + }; + const serializedDatum = Data.serialize(V0_4Types.OrderDatum, orderDatum); + + const tx = this.newOrderTransaction(params.extraLabels); + tx.lockAssets(orderContractAddress, params.valueToLock, serializedDatum); + return tx; + } + + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + async buildMintOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Mint amount must be positive"); + } + const reserveAssetId = Core.AssetId( + params.reserveAsset[0] + params.reserveAsset[1], + ); + // Convert USDr amount to reserve amount using ceiling division + // to ensure enough reserve is locked for on-chain validation + const settings = await this.getVersionSettings(); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAmount = usdrToReserveCeil(params.amount, ra); + return this._buildOrderTx({ + action: { + OMint: { amount: params.amount, reserve_asset: params.reserveAsset }, + }, + valueToLock: makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + async buildRedeemOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Redeem amount must be positive"); + } + const settings = await this.getVersionSettings(); + findReserveAsset(settings, params.reserveAsset); + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + return this._buildOrderTx({ + action: { + ORedeem: { + amount: params.amount, + reserve_asset: params.reserveAsset, + }, + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a deposit order: lock reserve tokens, request treasury deposit. + */ + async buildDepositOrderTx(params: { + principal: bigint; + yield: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.principal < 0n) { + throw new Error("Deposit principal must be non-negative"); + } + if (params.principal === 0n && params.yield === 0n) { + throw new Error("Deposit must have non-zero principal or yield"); + } + const settings = await this.getVersionSettings(); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAssetId = Core.AssetId( + params.reserveAsset[0] + params.reserveAsset[1], + ); + + let valueToLock: Core.Value; + + if (params.yield >= 0n) { + // POSITIVE YIELD: need reserve backing for BOTH principal AND yield. + // Contract validates: reserve_to_usdr(treasury_delta) >= principal + yield + // So we must lock: usdrToReserveCeil(principal + yield) reserve tokens + const totalUSDrBacking = params.principal + params.yield; + if (totalUSDrBacking > 0n) { + const reserveAmount = usdrToReserveCeil(totalUSDrBacking, ra); + valueToLock = makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]); + } else { + valueToLock = makeValue(MIN_LOVELACE); + } + } else { + // NEGATIVE YIELD: lock principal (in reserve) + unstaked yield share (in USDr). + // The staked share comes from the vault (validated on-chain via vault USDr change). + const principalReserve = + params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n; + + valueToLock = + principalReserve > 0n + ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve]) + : makeValue(MIN_LOVELACE); + + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + + // Fetch current state to calculate yield split + const { parsedTreasuryDatum } = await this.getTreasuryDatum(); + const vaultUtxo = (await this.getVaultDatum()).vaultUtxo; + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + + const { unstakedYieldShare } = calculateYieldShares( + params.yield, + vaultUSDr, + treasuryCirculating, + ); + + // Lock only the unstaked portion (negated since unstakedYieldShare is negative) + if (unstakedYieldShare < 0n) { + valueToLock = Value.merge( + valueToLock, + makeValue(0n, [stablecoinAssetId, -unstakedYieldShare]), + ); + } + } + return this._buildOrderTx({ + action: { + ODeposit: { + principal: params.principal, + yield: params.yield, + reserve_asset: params.reserveAsset, + }, + }, + valueToLock, + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a withdraw order: lock min ADA, request reserve token withdrawal. + */ + async buildWithdrawOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Withdraw amount must be positive"); + } + const settings = await this.getVersionSettings(); + findReserveAsset(settings, params.reserveAsset); + return this._buildOrderTx({ + action: { + OWithdraw: { + amount: params.amount, + reserve_asset: params.reserveAsset, + }, + }, + valueToLock: makeValue(MIN_LOVELACE), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + async buildStakeOrderTx(params: { + amount: bigint; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Stake amount must be positive"); + } + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + return this._buildOrderTx({ + action: { OStake: { amount: params.amount } }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockTime) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockTime - Slot number after which the user can spend the released USDr + */ + async buildUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + unlockSlot: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Unstake amount must be positive"); + } + const sUSDrAssetId = Core.AssetId( + this.stablecoinPolicyId + this.sUSDrAssetNameHex, + ); + + // Build the timelock native script destination from the user's key hash + const timelockDestination = buildTimelockDestination( + params.destination, + params.unlockSlot, + ); + const extraLabels = new Map([ + [ + UNSTAKE_METADATA_LABEL, + buildUnstakeMetadatum(params.destination, params.unlockSlot), + ], + ]); + + return this._buildOrderTx({ + action: { OUnstake: { amount: params.amount } }, + valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]), + owner: params.owner, + destination: timelockDestination, + data: params.data, + extraLabels, + }); + } + + /** + * Build a timelock Destination from a user's destination and unlock time. + * + * Creates a native script: AllOf { Signature(userKeyHash), After(unlockTime) } + * and returns a Destination pointing to that script's address. + */ + + static buildTimelockNativeScript = buildTimelockNativeScript; + static buildTimelockAddress = buildTimelockAddress; + + // ───────────────────────────────────────────────────────────────────────────── + // Signed Payload and Signing + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build the V0_4 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + * + * V0.4 contract requires signing the blake2b_256 hash of the payload, + * not the raw CBOR like V0.3. + */ + async getSignedPayloadFromOrderInputs( + orderInputs: Core.TransactionInput[], + ): Promise<{ signedPayload: string; payloadHash: string }> { + if (orderInputs.length === 0) { + throw new Error("At least one order input is required"); + } + + const sortedInputs = sortOrderInputs(orderInputs); + const nonce = buildNonceFromUtxo(sortedInputs[0]!) as V0_4Types.Nonce; + + const resolvedUtxos = + await this.blaze.provider.resolveUnspentOutputs(sortedInputs); + + let actionType: TOrderActionType | null = null; + const treasuryRequests: V0_4Types.TreasuryRequest[] = []; + const requests: V0_4Types.Request[] = []; + + for (const utxo of resolvedUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(V0_4Types.OrderDatum, datumData) as OrderDatum; + const origin = { + transaction_id: utxo.input().transactionId().toString(), + output_index: utxo.input().index(), + }; + + const parsed = this.classifyOrderAction(datum); + + if (actionType === null) { + actionType = parsed.actionType; + } else if (actionType !== parsed.actionType) { + throw new Error( + "Mixed order types in inputs. All orders must be of the same type.", + ); + } + + if (parsed.isTreasuryAction) { + treasuryRequests.push({ + destination: datum.destination, + amount: parsed.amount, + yield: parsed.yield ?? 0n, + origin, + reserve_asset: parsed.reserveAsset!, + }); + } else { + requests.push({ + destination: datum.destination, + amount: parsed.amount, + origin, + }); + } + } + + let action: V0_4Types.ProtocolRedeemer; + switch (actionType) { + case "mint": + action = { Mint: { requests: treasuryRequests } }; + break; + case "burn": + action = { Burn: { requests: treasuryRequests } }; + break; + case "withdraw": + action = { Withdraw: { requests: treasuryRequests } }; + break; + case "deposit": + action = { Deposit: { requests: treasuryRequests } }; + break; + case "stake": + action = { Stake: { requests } }; + break; + case "unstake": + action = { Unstake: { requests } }; + break; + default: + throw new Error("No orders to process"); + } + + const payload: V0_4Types.SignedPayload_ProtocolRedeemer = { + action, + nonce, + }; + const serialized = Data.serialize( + V0_4Types.SignedPayload_ProtocolRedeemer, + payload, + ); + const signedPayload = serialized.toCbor().toString(); + const payloadHash = blake2b_256(HexBlob(signedPayload)); + + return { signedPayload, payloadHash }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Execute Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to execute orders. + * + * Handles all 6 action types: mint, burn, deposit, withdraw, stake, unstake. + * The signedPayload is a CBOR hex string (matching V0.3 style). + * + * NOTE: All wallet fee inputs are pre-added to the transaction so that + * input indices for the ExtraProtocolRedeemer are stable. Coin selection + * during complete() should be a no-op since all wallet UTxOs are already + * included, but it cannot be disabled because Blaze also uses that phase + * to prepare collateral. + */ + async buildExecuteOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + signedPayload: string; + signatures: V0_4Types.Tuple_VerificationKey_COSESign1[]; + }): Promise { + const { + orderInputs, + signedPayload: signedPayloadCbor, + signatures, + } = params; + + // Deserialize CBOR hex to object for internal use + const signedPayload = parse( + V0_4Types.SignedPayload_ProtocolRedeemer, + PlutusData.fromCbor(HexBlob(signedPayloadCbor)), + ) as V0_4Types.SignedPayload_ProtocolRedeemer; + + // 1. Sort and resolve order UTxOs + const sortedOrderInputs = sortOrderInputs(orderInputs); + const orderUtxos = + await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + + // 2. Parse orders and validate same type + const orderInfos = this.parseOrderInfos(orderUtxos); + const actionType = orderInfos[0]!.actionType; + + // 3. Get protocol settings + const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum(); + const settings = parsedProxyDatum.settings as Settings; + + // 4. Determine what we need + const needsTreasury = ["mint", "burn", "withdraw", "deposit"].includes( + actionType, + ); + const needsVault = ["stake", "unstake", "deposit"].includes(actionType); + + // 5. Get script reference inputs + const scriptHashesNeeded: Record = { + protocol: this.protocolScriptHash, + order: this.orderScriptHash, + }; + if (needsTreasury) { + scriptHashesNeeded.treasury = this.treasuryScriptHash; + } + if (needsVault) { + scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash; + } + const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded); + + // 6. Fetch treasury and vault if needed + let treasuryUtxo: Core.TransactionUnspentOutput | undefined; + let parsedTreasuryDatum: V0_1TreasuryDatum | undefined; + if (needsTreasury) { + const treasuryResult = await this.getTreasuryDatum(); + treasuryUtxo = treasuryResult.treasuryUtxo; + parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum; + } + + let vaultUtxo: Core.TransactionUnspentOutput | undefined; + let parsedVaultDatum: VaultDatum | undefined; + if (needsVault) { + const vaultResult = await this.getVaultDatum(); + vaultUtxo = vaultResult.vaultUtxo; + parsedVaultDatum = vaultResult.parsedVaultDatum; + } + + // 7. Gather wallet UTxOs so we can include them in index calculations. + // Blaze's complete() adds wallet inputs for fees, which shifts the + // ledger-sorted input indices. By fetching wallet UTxOs upfront and + // adding them explicitly, we know the full input set before computing + // indices for the ExtraProtocolRedeemer. + const walletUtxos = await this.blaze.wallet.getUnspentOutputs(); + const excludedInputIds = new Set(); + const utxoKey = (inp: Core.TransactionInput) => + `${inp.transactionId().toString()}#${inp.index().toString()}`; + // Exclude script inputs (order, treasury, vault) + for (const orderInfo of orderInfos) { + excludedInputIds.add(utxoKey(orderInfo.utxo.input())); + } + if (treasuryUtxo) { + excludedInputIds.add(utxoKey(treasuryUtxo.input())); + } + if (vaultUtxo) { + excludedInputIds.add(utxoKey(vaultUtxo.input())); + } + // Exclude reference inputs (must be disjoint from regular inputs) + excludedInputIds.add(utxoKey(proxyUtxo.input())); + for (const refUtxo of Object.values(refInputs)) { + if (refUtxo) { + excludedInputIds.add(utxoKey(refUtxo.input())); + } + } + const feeUtxos = walletUtxos.filter( + (utxo) => !excludedInputIds.has(utxoKey(utxo.input())), + ); + + // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex). + // Include ALL inputs: order, treasury, vault, AND wallet fee inputs. + const allInputRefs: Core.TransactionInput[] = orderInfos.map((o) => + o.utxo.input(), + ); + if (treasuryUtxo) { + allInputRefs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + allInputRefs.push(vaultUtxo.input()); + } + for (const feeUtxo of feeUtxos) { + allInputRefs.push(feeUtxo.input()); + } + + const sortedAllInputRefs = [...allInputRefs].sort((a, b) => { + const txA = a.transactionId().toString(); + const txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + + const findInputIdx = (input: Core.TransactionInput): bigint => { + const idx = sortedAllInputRefs.findIndex( + (r) => + r.transactionId().toString() === input.transactionId().toString() && + r.index() === input.index(), + ); + return BigInt(idx); + }; + + const treasuryInputIdx = treasuryUtxo + ? findInputIdx(treasuryUtxo.input()) + : 0n; + const vaultInputIdx = vaultUtxo + ? findInputIdx(vaultUtxo.input()) + : undefined; + + // 8a. Correlate order inputs to signed request indices via origin fields. + // When all orders are present this produces the same identity mapping as before. + // When a subset is passed (partial execution), it maps each input to the + // correct request index in the signed payload. + const signedRequests = getRequestsFromAction(signedPayload.action); + const originToRequestIdx = new Map(); + for (let i = 0; i < signedRequests.length; i++) { + const o = signedRequests[i]!.origin; + originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i); + } + + const inputToRequests: bigint[] = []; + const requestToOutputs: bigint[] = []; + for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) { + const input = orderInfos[outputIdx]!.utxo.input(); + const key = `${input.transactionId()}#${input.index()}`; + const requestIdx = originToRequestIdx.get(key); + if (requestIdx === undefined) { + throw new Error(`Order input ${key} not found in signed payload`); + } + inputToRequests.push(BigInt(requestIdx)); + requestToOutputs.push(BigInt(outputIdx)); + } + + // 9. Build outputs and compute output indices + // Output layout: + // [destination outputs] [extra outputs*] [treasury output if needed] [vault output if needed] + // *extra outputs: yield pot output for deposit with non-zero positive yield + const numDestOutputs = orderInfos.length; + + // For deposit with positive yield, the yield pot output is inserted after destinations + let numExtraOutputs = 0; + if (actionType === "deposit") { + const totalYield = orderInfos.reduce( + (sum, o) => sum + (o.yield ?? 0n), + 0n, + ); + if (totalYield > 0n) { + // Check if unstaked yield share is > 0 + const vaultValue = vaultUtxo!.output().amount(); + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum!.circulating_supply; + const { unstakedYieldShare } = calculateYieldShares( + totalYield, + vaultUSDr, + treasuryCirculating, + ); + if (unstakedYieldShare > 0n) { + numExtraOutputs = 1; + } + } + } + + const treasuryOutputIdx = needsTreasury + ? BigInt(numDestOutputs + numExtraOutputs) + : 0n; + const vaultOutputIdx = needsVault + ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0)) + : undefined; + + // 10. Build ExtraProtocolRedeemer + const extra: V0_4Types.ExtraProtocolRedeemer = { + request_to_outputs: requestToOutputs, + input_to_requests: inputToRequests, + treasury_input_idx: treasuryInputIdx, + treasury_output_idx: treasuryOutputIdx, + vault_input_idx: vaultInputIdx, + vault_output_idx: vaultOutputIdx, + }; + + // 11. Build SignedRedeemer (payload is deserialized object in v0_4) + const serializedSignedRedeemer = Data.serialize( + V0_4Types.SignedRedeemer_ExtraProtocolRedeemer, + { + extra, + payload: signedPayload, + signatures, + }, + ); + + const executeRedeemer = Data.serialize(V0_4Types.OrderRedeemer, "Execute"); + + const feeUtxoByKey = new Map( + feeUtxos.map((utxo) => [utxoKey(utxo.input()), utxo]), + ); + const orderInfoByKey = new Map( + orderInfos.map((orderInfo) => [ + utxoKey(orderInfo.utxo.input()), + orderInfo, + ]), + ); + const treasuryInputKey = treasuryUtxo + ? utxoKey(treasuryUtxo.input()) + : null; + const vaultInputKey = vaultUtxo ? utxoKey(vaultUtxo.input()) : null; + const spendRedeemerInputs = [ + ...orderInfos.map((orderInfo) => orderInfo.utxo.input()), + ]; + if (treasuryUtxo) { + spendRedeemerInputs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + spendRedeemerInputs.push(vaultUtxo.input()); + } + + // 12. Build the transaction + const tx = this.newOrderTransaction(); + + // Add all spend inputs in ledger order so the generated spend redeemer + // pointers line up with the final transaction input indices. + for (const inputRef of sortedAllInputRefs) { + const inputKey = utxoKey(inputRef); + const orderInfo = orderInfoByKey.get(inputKey); + if (orderInfo) { + tx.addInput(orderInfo.utxo, executeRedeemer); + continue; + } + + if (treasuryInputKey && inputKey === treasuryInputKey) { + tx.addInput(treasuryUtxo!, Data.Void()); + continue; + } + + if (vaultInputKey && inputKey === vaultInputKey) { + tx.addInput(vaultUtxo!, Data.Void()); + continue; + } + + const feeUtxo = feeUtxoByKey.get(inputKey); + if (feeUtxo) { + tx.addInput(feeUtxo); + continue; + } + + throw new Error( + `buildExecuteOrdersTx: missing input metadata for ${inputKey}`, + ); + } + + // Add reference inputs + tx.addReferenceInput(refInputs.protocol!); + tx.addReferenceInput(refInputs.order!); + tx.addReferenceInput(proxyUtxo); + if (refInputs.treasury) { + tx.addReferenceInput(refInputs.treasury); + } + if (refInputs.stakingVault) { + tx.addReferenceInput(refInputs.stakingVault); + } + + // Add protocol withdrawal with signed redeemer + const protocolRewardAccount = Core.RewardAccount.fromCredential( + { + type: Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash, + }, + this.network, + ); + tx.addWithdrawal(protocolRewardAccount, 0n, serializedSignedRedeemer); + + // Build per-action-type outputs, minting, and state updates + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const sUSDrAssetId = Core.AssetId( + this.stablecoinPolicyId + this.sUSDrAssetNameHex, + ); + + switch (actionType) { + case "mint": + this.buildMintExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + settings, + ); + break; + case "burn": + this.buildBurnExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + settings, + ); + break; + case "withdraw": + this.buildWithdrawExecute( + tx, + orderInfos, + treasuryUtxo!, + parsedTreasuryDatum!, + settings, + ); + break; + case "deposit": + this.buildDepositExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + vaultUtxo!, + parsedVaultDatum!, + settings, + ); + break; + case "stake": + this.buildStakeExecute( + tx, + orderInfos, + stablecoinAssetId, + sUSDrAssetId, + vaultUtxo!, + parsedVaultDatum!, + ); + break; + case "unstake": + this.buildUnstakeExecute( + tx, + orderInfos, + stablecoinAssetId, + sUSDrAssetId, + vaultUtxo!, + parsedVaultDatum!, + ); + break; + } + + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + this.realignSpendRedeemerIndices(tx, spendRedeemerInputs); + + return tx; + } + + private realignSpendRedeemerIndices( + tx: TxBuilder, + spendRedeemerInputs: Core.TransactionInput[], + ): void { + const txInternals = tx as unknown as ITxBuilderWithInternals; + const bodyInputs = txInternals.body.inputs().values(); + const redeemers = [...txInternals.redeemers.values()]; + const spendRedeemers = redeemers + .filter((redeemer) => redeemer.tag() === Core.RedeemerTag.Spend) + .sort((a, b) => Number(a.index() - b.index())); + + if (spendRedeemers.length !== spendRedeemerInputs.length) { + throw new Error( + `buildExecuteOrdersTx: spend redeemer count mismatch. inputs=${spendRedeemerInputs.length} redeemers=${spendRedeemers.length}`, + ); + } + + const expectedOrdering = [...spendRedeemerInputs].sort((a, b) => + toSpendOrderingKey(a).localeCompare(toSpendOrderingKey(b)), + ); + + for (let i = 0; i < spendRedeemers.length; i++) { + const input = expectedOrdering[i]!; + const actualIndex = bodyInputs.findIndex( + (bodyInput) => + bodyInput.transactionId().toString() === + input.transactionId().toString() && + bodyInput.index() === input.index(), + ); + + if (actualIndex < 0) { + throw new Error( + `buildExecuteOrdersTx: could not find spend input ${input.transactionId().toString()}#${input.index().toString()} in tx body`, + ); + } + + spendRedeemers[i]!.setIndex(BigInt(actualIndex)); + } + + txInternals.redeemers.setValues(redeemers); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Per-Action Execute Builders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + */ + private buildMintExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + settings: Settings, + ): void { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send USDr to each destination + for (const orderInfo of orderInfos) { + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount]), + ); + } + + // Mint USDr + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), + Data.Void(), + ); + + // Compute per-reserve-asset deltas + const reserveDeltas = computeReserveDeltas(orderInfos, settings); + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + totalAmount, + ); + } + + /** + * Burn: USDr burned, reserve sent to destinations. + */ + private buildBurnExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + settings: Settings, + ): void { + // Amount is negative in datum for burns + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send reserve tokens to each destination + // Convert USDr amount to reserve amount using floor division (protocol-protective) + for (const orderInfo of orderInfos) { + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const reserveAssetId = Core.AssetId( + orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1], + ); + const reserveAmount = usdrToReserve(-orderInfo.amount, ra); + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]), + ); + } + + // Burn USDr (totalAmount is negative) + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), + Data.Void(), + ); + + // Compute per-reserve-asset deltas + const reserveDeltas = computeReserveDeltas(orderInfos, settings); + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + totalAmount, + ); + } + + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + private buildWithdrawExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + settings: Settings, + ): void { + // Destination outputs: send reserve tokens to each destination + // Convert USDr amount to reserve amount using floor division + for (const orderInfo of orderInfos) { + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const reserveAssetId = Core.AssetId( + orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1], + ); + const reserveAmount = usdrToReserve(orderInfo.amount, ra); + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]), + ); + } + + // Update treasury: reserve decreases, no circulating_supply change + // On-chain: amount_sign = -1 for withdraw, expected_delta = usdr_to_reserve(-amount, ra) + const reserveDeltas = computeReserveDeltas(orderInfos, settings, true); + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + 0n, + ); + } + + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + private buildDepositExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: VaultDatum, + settings: Settings, + ): void { + const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n); + + // Destination outputs: min ADA to each destination (contract validates via request_to_outputs) + for (const orderInfo of orderInfos) { + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + makeValue(MIN_LOVELACE), + ); + } + + // Calculate yield split matching on-chain deposit.ak logic + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + + const { stakedYieldShare, unstakedYieldShare } = calculateYieldShares( + totalYield, + vaultUSDr, + treasuryCirculating, + ); + + if (totalYield > 0n) { + // Positive yield: mint USDr for the yield amount + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalYield]]), + Data.Void(), + ); + + // Send unstaked yield share to the yield pot address + if (unstakedYieldShare > 0n) { + addDestinationOutput( + tx, + this.network, + { + address: settings.unstaked_yield_pot, + datum: "NoDatum", + }, + makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare]), + ); + } + } else if (totalYield < 0n) { + // Negative yield: burn USDr (sourced from order inputs already consumed) + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalYield]]), + Data.Void(), + ); + } + // totalYield === 0n: no mint/burn needed + + // Update treasury: reserve increases, circulating_supply changes by yield. + // For positive yield, treasury receives reserve backing for BOTH principal AND yield. + // For negative yield, treasury only receives reserve backing for principal. + const reserveDeltas = new Map(); + for (const orderInfo of orderInfos) { + const assetId = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1]; + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const yieldValue = orderInfo.yield ?? 0n; + + // Calculate USDr backing needed based on yield sign + const usdrBacking = + yieldValue >= 0n + ? orderInfo.amount + yieldValue // principal + yield for positive yield + : orderInfo.amount; // just principal for negative yield + + // Convert USDr backing to reserve amount + const reserveAmount = usdrToReserve(usdrBacking, ra); + + reserveDeltas.set( + assetId, + (reserveDeltas.get(assetId) ?? 0n) + reserveAmount, + ); + } + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + totalYield, + ); + + // Update vault: sUSDr unchanged, USDr changes by staked yield share + this.updateVaultOutput( + tx, + vaultUtxo, + parsedVaultDatum, + 0n, + stakedYieldShare, + ); + } + + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + */ + private buildStakeExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + sUSDrAssetId: Core.AssetId, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: VaultDatum, + ): void { + const totalUSDrStaked = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Calculate vault USDr balance + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + + // Calculate total sUSDr to mint using batch formula (matches on-chain stake.ak) + // On-chain: susdr_to_mint = total_usdr_staked * circulating_susdr_before / vault_usdr_before + let totalSUSDrMinted: bigint; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + totalSUSDrMinted = totalUSDrStaked; + } else { + totalSUSDrMinted = (totalUSDrStaked * circulatingSUSDr) / vaultUSDr; + } + + // Calculate per-order sUSDr for destination outputs (matches validate_stake_outputs). + // Note: sum(per-order floors) may be less than totalSUSDrMinted by at most (n-1) units + // due to floor(sum) >= sum(floor). The difference ("dust") is minted but not assigned + // to any destination output — it ends up in the executor's change output. This is an + // inherent consequence of the on-chain contract requiring both aggregate mint equality + // and per-request floor equality on outputs. + for (const orderInfo of orderInfos) { + let sUSDrAmount: bigint; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + sUSDrAmount = orderInfo.amount; + } else { + sUSDrAmount = (orderInfo.amount * circulatingSUSDr) / vaultUSDr; + } + + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + makeValue(MIN_LOVELACE, [sUSDrAssetId, sUSDrAmount]), + ); + } + + // Mint sUSDr + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]), + Data.Void(), + ); + + // Update vault: USDr increases by staked amount, circulating_susdr increases + this.updateVaultOutput( + tx, + vaultUtxo, + parsedVaultDatum, + totalSUSDrMinted, + totalUSDrStaked, + ); + } + + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + */ + private buildUnstakeExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + sUSDrAssetId: Core.AssetId, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: VaultDatum, + ): void { + const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Calculate vault USDr balance + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + + if (circulatingSUSDr === 0n) { + throw new Error("Cannot unstake: no sUSDr in circulation"); + } + + // Calculate USDr to release for each order + let totalUSDrReleased = 0n; + for (const orderInfo of orderInfos) { + const uSDrAmount = (orderInfo.amount * vaultUSDr) / circulatingSUSDr; + totalUSDrReleased += uSDrAmount; + + // Send USDr to the destination (native script timelock address). + // Use an explicit output because lockAssets requires a datum, but the + // contract expects NoDatum. + const destAddress = destinationToAddress( + this.network, + orderInfo.datum.destination, + ); + const output = new Core.TransactionOutput( + destAddress, + makeValue(MIN_LOVELACE, [stablecoinAssetId, uSDrAmount]), + ); + tx.addOutput(output); + } + + // Burn sUSDr + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]), + Data.Void(), + ); + + // Update vault: USDr decreases, circulating_susdr decreases + this.updateVaultOutput( + tx, + vaultUtxo, + parsedVaultDatum, + -totalSUSDrBurned, + -totalUSDrReleased, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Cancel Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to cancel orders. + */ + async buildCancelOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + destination?: Core.Address; + /** + * Optional set of key hashes that the caller can sign with. + * When provided, only these keys are added as required signers — + * essential for AnyOf/AtLeast multisig owners where not all keys + * need to sign. When omitted, all extracted key hashes are added + * (correct for Signature and AllOf owners, but over-constrains + * AnyOf/AtLeast). + */ + availableSigners?: Set; + versionHint?: TProtocolVersion; // version of the orders to cancel. Optional, only to ensure correct datum parsing. + }): Promise { + const { orderInputs, destination, availableSigners, versionHint } = params; + + const orderUtxos = + await this.blaze.provider.resolveUnspentOutputs(orderInputs); + + if (orderUtxos.length === 0) { + throw new Error("No orders to cancel"); + } + + const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput + ? new Map([ + [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput], + ]) + : undefined; + + const orderRefInputs = await resolveOrderReferenceInputs( + this.blaze, + orderUtxos, + cachedOrderRefs, + this.scriptDeploymentAddress, + ); + + const cancelRedeemer = Data.serialize(V0_4Types.OrderRedeemer, "Cancel"); + const destAddress = + destination ?? (await this.blaze.wallet.getChangeAddress()); + + const tx = this.newOrderTransaction(); + + for (const orderRefInput of orderRefInputs.values()) { + tx.addReferenceInput(orderRefInput); + } + + // cache current version of order script reference input + const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash); + if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = currentOrderRefInput; + } + + const requiredSigners = new Set(); + + for (const utxo of orderUtxos) { + const owner = await parseCancelOwner(utxo, versionHint); + for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) { + requiredSigners.add(keyHash); + } + + tx.addInput(utxo, cancelRedeemer); + const outputValue = utxo.output().amount(); + addDirectOutput(tx, destAddress, outputValue); + } + + const effectiveSigners = availableSigners + ? new Set([...requiredSigners].filter((k) => availableSigners.has(k))) + : requiredSigners; + + for (const keyHash of effectiveSigners) { + tx.addRequiredSigner(Ed25519KeyHashHex(keyHash)); + } + + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Private Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Parse order UTxOs into IOrderInfo objects and validate they are all the same type. + */ + private parseOrderInfos( + orderUtxos: Core.TransactionUnspentOutput[], + ): IOrderInfo[] { + const orderInfos: IOrderInfo[] = []; + let expectedActionType: TOrderActionType | null = null; + + for (const utxo of orderUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(V0_4Types.OrderDatum, datumData) as OrderDatum; + const classified = this.classifyOrderAction(datum); + + if (expectedActionType === null) { + expectedActionType = classified.actionType; + } else if (expectedActionType !== classified.actionType) { + throw new Error( + "Mixed order types in inputs. All orders must be of the same type.", + ); + } + + orderInfos.push({ + utxo, + datum, + actionType: classified.actionType, + amount: classified.amount, + yield: classified.yield, + reserveAsset: classified.reserveAsset, + }); + } + + if (orderInfos.length === 0) { + throw new Error("No orders to execute"); + } + + return orderInfos; + } + + /** + * Classify an order action from its datum. + */ + private classifyOrderAction(datum: OrderDatum): { + actionType: TOrderActionType; + amount: bigint; + yield?: bigint; + reserveAsset?: [string, string]; + isTreasuryAction: boolean; + } { + const action = datum.action; + if ("OMint" in action) { + return { + actionType: "mint", + amount: action.OMint.amount, + reserveAsset: action.OMint.reserve_asset, + isTreasuryAction: true, + }; + } else if ("ORedeem" in action) { + return { + actionType: "burn", + // ORedeem.amount is positive (absolute value locked in order UTxO). + // Negate it so the request.amount is negative for burn (USDr leaving circulation), + // matching the contract's expectation: ORedeem.amount == -request.amount. + amount: -action.ORedeem.amount, + reserveAsset: action.ORedeem.reserve_asset, + isTreasuryAction: true, + }; + } else if ("ODeposit" in action) { + return { + actionType: "deposit", + amount: action.ODeposit.principal, + yield: action.ODeposit.yield, + reserveAsset: action.ODeposit.reserve_asset, + isTreasuryAction: true, + }; + } else if ("OWithdraw" in action) { + return { + actionType: "withdraw", + amount: action.OWithdraw.amount, + reserveAsset: action.OWithdraw.reserve_asset, + isTreasuryAction: true, + }; + } else if ("OStake" in action) { + return { + actionType: "stake", + amount: action.OStake.amount, + isTreasuryAction: false, + }; + } else if ("OUnstake" in action) { + return { + actionType: "unstake", + amount: action.OUnstake.amount, + isTreasuryAction: false, + }; + } + throw new Error("Unknown order action type"); + } + + /** + * Update treasury output with new reserve and circulating supply. + */ + private updateTreasuryOutput( + tx: TxBuilder, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + reserveDeltas: Map, + circulatingSupplyDelta: bigint, + ): void { + const newTreasuryDatum: V0_1TreasuryDatum = { + circulating_supply: + parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta, + }; + const serializedTreasuryDatum = Data.serialize( + V0_1TreasuryDatum, + newTreasuryDatum, + ); + + const treasuryValue = treasuryUtxo.output().amount(); + + // Start with ADA + treasury NFT + let newTreasuryValue = makeValue(treasuryValue.coin(), [ + this.treasuryNFTAssetId, + 1n, + ]); + + // Apply all reserve asset deltas + const modifiedAssetIds = new Set([ + this.treasuryNFTAssetId.toString(), + ]); + for (const [reserveAssetId, delta] of reserveDeltas.entries()) { + const currentReserve = + treasuryValue.multiasset()?.get(Core.AssetId(reserveAssetId)) ?? 0n; + const newReserve = currentReserve + delta; + newTreasuryValue = Value.merge( + newTreasuryValue, + makeValue(0n, [Core.AssetId(reserveAssetId), newReserve]), + ); + modifiedAssetIds.add(reserveAssetId); + } + + // Preserve any other assets not modified + const existingMultiasset = treasuryValue.multiasset(); + if (existingMultiasset) { + for (const [assetId, amount] of existingMultiasset.entries()) { + if (!modifiedAssetIds.has(assetId)) { + newTreasuryValue = Value.merge( + newTreasuryValue, + makeValue(0n, [Core.AssetId(assetId), amount]), + ); + } + } + } + tx.lockAssets( + this.treasuryAddress, + newTreasuryValue, + serializedTreasuryDatum, + ); + } + + /** + * Update vault output with new circulating_susdr and USDr balance. + */ + private updateVaultOutput( + tx: TxBuilder, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: VaultDatum, + sUSDrDelta: bigint, + uSDrDelta: bigint = 0n, + ): void { + const newVaultDatum: VaultDatum = { + circulating_susdr: parsedVaultDatum.circulating_susdr + sUSDrDelta, + }; + const serializedVaultDatum = Data.serialize( + V0_4Types.VaultDatum, + newVaultDatum, + ); + + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + + // Start with existing vault value, then adjust USDr + let newVaultValue = vaultUtxo.output().amount(); + if (uSDrDelta !== 0n) { + const currentUSDr = + newVaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const newUSDr = currentUSDr + uSDrDelta; + newVaultValue = makeValue(newVaultValue.coin(), [ + this.stakingVaultNFTAssetId, + 1n, + ]); + if (newUSDr > 0n) { + newVaultValue = Value.merge( + newVaultValue, + makeValue(0n, [stablecoinAssetId, newUSDr]), + ); + } + // Preserve any other assets from the original vault + const existingMultiasset = vaultUtxo.output().amount().multiasset(); + if (existingMultiasset) { + for (const [assetId, amount] of existingMultiasset.entries()) { + if ( + assetId !== this.stakingVaultNFTAssetId.toString() && + assetId !== stablecoinAssetId.toString() + ) { + newVaultValue = Value.merge( + newVaultValue, + makeValue(0n, [Core.AssetId(assetId), amount]), + ); + } + } + } + } + + tx.lockAssets( + this.stakingVaultAddress, + newVaultValue, + serializedVaultDatum, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Reserve Asset Conversion Utilities + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Get protocol settings from proxy datum (cached). + */ + private async getVersionSettings(): Promise { + const { parsedProxyDatum } = await this.getParsedProxyDatum(); + return parsedProxyDatum.settings as Settings; + } +} diff --git a/modules/realfi-partner-sdk/src/sdk/v1/family.ts b/modules/realfi-partner-sdk/src/sdk/v1/family.ts new file mode 100644 index 0000000000..578f0fa8cc --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v1/family.ts @@ -0,0 +1,3763 @@ +import { + addressFromCredentials, + addressFromValidator, + blake2b_256, + Ed25519KeyHashHex, + HexBlob, + PlutusData, + toHex, +} from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { + type Blaze, + calculateMinAda, + Core, + makeValue, + TxBuilder, + Value, + type Wallet, +} from "@blaze-cardano/sdk"; + +import { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import type { + Asset, + Destination, + DirectRequestV1, + ExchangeRequestV1, + ExtraProtocolRedeemerV1, + MultisigScript, + Nonce, + OrderActionV1, + OrderDatumV1, + ProtocolRedeemerV1, + SignedPayload_ProtocolRedeemerV1, + StakeRequestV1, + TreasuryRequestV1, + Tuple_VerificationKey_COSESign1, +} from "../../generated-types/v1_0/index.js"; + +import { + addDirectOutput, + addDestinationOutput, + buildNonceFromUtxo, + buildMultisigTimelockNativeScript, + buildTimelockAddress, + buildTimelockDestination, + buildTimelockNativeScript, + buildUnstakeMetadatum, + UNSTAKE_METADATA_LABEL, + credentialFromScript, + deployScript, + findReserveAsset, + getDatumFromNFT, + getSignatureKeyHashesFromMultisigScript, + usdrToReserve, + usdrToReserveCeil, + computeReserveDeltas, + lockOrPayAssets, + sortOrderInputs, + type ICachedReferenceInputs, + type IProxyDatumResult, + type IRealfiSDKWithTreasury, + type ITreasuryDatumResult, + type IVaultDatumResult, + RealfiSDKBase, + type TProtocolVersion, + resolveOrderReferenceInputs, + parseCancelOwner, +} from "../shared/index.js"; +import { + screenOrderAction, + screenDepositBatch, + screenOrderUtxoFacts, + type IOrderUtxoFacts, + type TOrderSanityResult, +} from "./order-sanity.js"; +import type { + IProxyDatum, + IV1FamilySchemas, + IV1FamilyScripts, + IV1SigningSchemas, + IVaultDatumLike, + IYieldSplitAlpha, + TV1Registry, + TV1SettingsConfig, +} from "./types.js"; + +// ───────────────────────────────────────────────────────────────────────────── +// Constants +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Sentinel `reserve_asset` used in V1_0 TreasuryRequestV1 redeemers for + * DirectMint and DirectBurn actions, which have no real reserve asset in + * their order datum. The on-chain validators `direct_mint_logic` and + * `direct_burn_logic` do not inspect this field; this sentinel makes the + * intent explicit both in code and when inspecting on-chain redeemers. + * + * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a + * sentinel and extremely unlikely to occur as a real script hash) + * - `asset_name`: "unused" (ASCII) + * + * Keep in sync with backend `contract.DirectActionPaddingAsset`. + */ +export const DIRECT_ACTION_PADDING_ASSET: Asset = [ + "00".repeat(28), + toHex(new TextEncoder().encode("unused")), +]; + +// ───────────────────────────────────────────────────────────────────────────── +// Types +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Parsed order information extracted from a UTXO. + */ +export interface IOrderInfo { + utxo: Core.TransactionUnspentOutput; + datum: OrderDatumV1; + actionType: TOrderActionType; + amount: bigint; + /** Yield amount for deposit actions */ + yield?: bigint; + /** Forfeit amount for unstake actions */ + forfeit?: bigint; + /** Reserve asset for treasury actions, undefined for stake/unstake */ + reserveAsset?: [string, string]; + /** + * Absolute fee retained by the protocol, in this action's output unit + * (USDr for Mint, reserve for Burn). Always 0 for Stake/Unstake — the + * protocol does not retain a fee on those actions. Locked at indexing + * time by the Go backend; the SDK never recomputes. Zero (the default) + * means "no fee", e.g. when the dispatcher passes no fees map or the + * map has no entry for this order. + */ + fee: bigint; + /** + * User-enforced output floor copied from the v1.0 datum (in output unit). + * Used as a defensive sanity check by buildXxxExecute to throw early if + * the fee somehow pushes the user output below what was signed. + */ + minReceived?: bigint; +} + +/** Minimal completed-swap shape accepted by the stake continuation builder. */ +export interface IStakeContinuationSwap { + minReceived: { + amount: bigint; + metadata: { + assetId: string; + }; + }; +} + +/** Parameters for building a RealFi stake order as another order's destination. */ +export interface IBuildStakeContinuationParams { + swap: IStakeContinuationSwap; + destination: Destination; + slippageToleranceBps?: bigint; + owner?: MultisigScript; + data?: PlutusData; +} + +/** Address and inline datum a preceding protocol should pay its result to. */ +export interface IStakeContinuation { + address: Core.Address; + datum: PlutusData; +} + +export type TOrderActionType = + | "mint" + | "burn" + | "deposit" + | "withdraw" + | "stake" + | "unstake" + | "direct_mint" + | "direct_burn"; + +/** Result of {@link RealfiSDKV1Family.classifyOrderAction}. */ +export interface IClassifiedOrderAction { + actionType: TOrderActionType; + amount: bigint; + yield?: bigint; + forfeit?: bigint; + minReceived?: bigint; + reserveAsset?: [string, string]; + isTreasuryAction: boolean; +} + +/** Result of {@link RealfiSDKV1Family.classifyOrderUtxo}. */ +export interface IClassifiedOrderUtxo { + /** The order datum decoded with this version's `OrderDatumV1` schema. */ + datum: OrderDatumV1; + /** The action classified from {@link datum}. */ + action: IClassifiedOrderAction; +} + +/** The `origin` field shared by every request kind — the consumed order UTxO. */ +export interface IRequestOrigin { + transaction_id: string; + output_index: bigint; +} + +export interface ITreasuryUnstakeOrderTxResult { + /** Transaction builder for the treasury unstake order. */ + tx: TxBuilder; + /** + * Native script used as the unstake output destination: + * AllOf { After(unlockSlot), owner }. + */ + nativeScript: Core.NativeScript; +} + +/** + * Context handed to {@link RealfiSDKV1Family.applyExecutionValidityBounds} + * at the end of `buildExecuteOrdersTx`. The vault fields are set only when + * the executed action consumed the staking vault (stake/unstake/deposit). + */ +export interface IExecutionValidityContext { + actionType: TOrderActionType; + vaultUtxo?: Core.TransactionUnspentOutput; + parsedVaultDatum?: TVaultDatum; +} + +/** + * Version-agnostic constructor parameters for the V1 family. Each version's + * `static create` assembles this from its own public params interface. + */ +export interface IV1FamilyConstructorParams { + version: TProtocolVersion; + proxyBootstrap: { txHash: Core.TransactionId; outputIndex: bigint }; + /** USDr asset name hex */ + assetNameHex: string; + /** sUSDr asset name hex */ + sUSDrAssetNameHex: string; + enableTrace?: boolean; + defaultSlippageToleranceBps?: bigint; + scriptDeploymentAddress?: Core.Address; + clientSource?: import("../shared/client-id.js").TClientSource; + /** + * Hashes of the validators this deployment actually runs, keyed as in + * `backend/config/env/.protocol.yaml`. + * + * Every identity below is otherwise derived from the Plutus artifacts this + * package bundles, which is correct only while those bytes match the ones on + * chain. Where they do not, the derived order address is an address nothing + * watches — and because an order is `lockAssets` with no on-chain validation, + * funds go there silently. Supplying the deployment's own hashes overrides + * the derivation; the scripts themselves still come from on-chain reference + * inputs, so identity is all that is needed. + * + * Partial maps are normal — validators the deployment does not name keep + * their derived identity. + */ + deployedValidators?: Readonly>; +} + +/** Blueprint validator key (within a version slot) -> SDK identity field. */ +const DEPLOYED_VALIDATOR_FIELDS = [ + [ + "protocol_orchestrator.protocol_orchestrator.withdraw", + "protocolScriptHash", + ], + ["protocol_mint.protocol_mint.withdraw", "protocolMintScriptHash"], + ["protocol_stake.protocol_stake.withdraw", "protocolStakeScriptHash"], + [ + "protocol_management.protocol_management.withdraw", + "protocolManagementScriptHash", + ], + ["order.order.spend", "orderScriptHash"], + ["treasury.treasury.spend", "treasuryScriptHash"], + ["staking_vault.staking_vault.spend", "stakingVaultScriptHash"], +] as const; + +const DEPLOYED_VALIDATOR_PREFIXES = { + V1_0: "v1_0/", + V1_0_Rc1: "v1_0_rc1/", + V1_1_Rc1: "v1_1_rc1/", +} as const; + +type TV1ProtocolVersion = keyof typeof DEPLOYED_VALIDATOR_PREFIXES; + +const COMPATIBLE_STATE_VALIDATOR_FIELDS = new Set([ + "treasuryScriptHash", + "stakingVaultScriptHash", +]); + +/** Hash fields whose address must move with them. */ +const DEPLOYED_ADDRESS_FIELDS = { + orderScriptHash: "orderScriptAddress", + treasuryScriptHash: "treasuryAddress", + stakingVaultScriptHash: "stakingVaultAddress", +} as const; + +export const MIN_LOVELACE = 2000000n; + +/** + * Calculate yield split between staked and unstaked portions. + * Matches on-chain deposit.ak logic: staked_yield_share = total_yield * vault_usdr / treasury_circulating + * + * IMPORTANT: Uses truncation toward zero (BigInt default `/` operator) to match + * Aiken's builtin.quotient_integer. Do NOT use floor division here, as it + * rounds toward negative infinity which gives different results for negative yields. + * Example: floor(-165/90) = -2, but trunc(-165/90) = -1. + */ +/** + * Extract the requests list from a signed payload action, regardless of action type. + * Both TreasuryRequestV1 and RequestV1 have `origin: { transaction_id, output_index }`. + */ +function getRequestsFromAction( + action: ProtocolRedeemerV1, +): Array<{ origin: { transaction_id: string; output_index: bigint } }> { + if ("Mint" in action) return action.Mint.requests; + if ("Burn" in action) return action.Burn.requests; + if ("Withdraw" in action) return action.Withdraw.requests; + if ("Deposit" in action) return action.Deposit.requests; + if ("Stake" in action) return action.Stake.requests; + if ("Unstake" in action) return action.Unstake.requests; + if ("DirectMint" in action) return action.DirectMint.requests; + if ("DirectBurn" in action) return action.DirectBurn.requests; + throw new Error("Unknown action type in signed payload"); +} + +export function calculateYieldShares( + totalYield: bigint, + vaultUSDr: bigint, + treasuryCirculating: bigint, +): { stakedYieldShare: bigint; unstakedYieldShare: bigint } { + // Note: BigInt / truncates toward zero, matching Aiken's quotient_integer + const stakedYieldShare = + treasuryCirculating > 0n + ? (totalYield * vaultUSDr) / treasuryCirculating + : 0n; + const unstakedYieldShare = totalYield - stakedYieldShare; + return { stakedYieldShare, unstakedYieldShare }; +} + +/** + * Refuse to create an order whose `min_received` floor is not strictly + * positive (WTB-1764). + * + * Every v1-family validator predicate that reads `min_received` requires it to + * be > 0, and those predicates run inside a `zip_fold` that `expect`s each + * request in turn — so one order with a zero floor crashes the ENTIRE execution + * transaction, killing every valid order batched alongside it. Such an order can + * never execute; creating it only plants a landmine at the order script address. + * + * This guards both an explicit caller-supplied floor and a computed one that + * rounds or nets down to zero (a dust stake at a high exchange rate, or a + * full-forfeit unstake). + */ +function assertPositiveMinReceived(label: string, minReceived: bigint): void { + if (minReceived <= 0n) { + throw new Error( + `${label} minReceived must be positive (got ${minReceived}); an order with a ` + + "non-positive min_received can never execute and crashes every batch it joins", + ); + } +} + +function buildOrderDestinationValue( + orderInfo: IOrderInfo, + consumedAssets: Array<[Core.AssetId, bigint]>, + deliveredAssets: Array<[Core.AssetId, bigint]> = [], +): Core.Value { + let value = orderInfo.utxo.output().amount(); + for (const [assetId, amount] of consumedAssets) { + if (amount !== 0n) { + value = Value.merge(value, makeValue(0n, [assetId, -amount])); + } + } + for (const [assetId, amount] of deliveredAssets) { + if (amount !== 0n) { + value = Value.merge(value, makeValue(0n, [assetId, amount])); + } + } + return value; +} + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Family Base Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Shared implementation for the V1 protocol family (v1_0, v1_0_rc1, v1_1+). + * + * The family is generic over the two datum shapes that differ across + * versions — `TSettings` (the proxy settings static) and `TVaultDatum` (the + * staking-vault datum static) — and receives all generated artifacts from the + * subclass: schema VALUES via {@link IV1FamilySchemas} (plus, optionally, + * {@link IV1SigningSchemas}) and instantiated scripts via + * {@link IV1FamilyScripts}. Method bodies never touch a version's generated + * module directly, so this chunk adds no runtime import edge to any + * `generated-types/v1_x` module and per-version code-splitting is preserved. + * + * Method defaults implement v1_0 semantics (fees, min_received, the v1_0 + * protocol-redeemer schema). Versions that diverge override the affected + * members: + * - vault datum construction is NEVER done inline — it goes through the + * abstract `buildInitialVaultDatum` / `buildUpdatedVaultDatum` seam so + * versions with additional vault fields cannot be silently truncated; + * - settings access goes through the abstract `settingsConfig` / + * `settingsRegistry` adapters; + * - `applyExecutionValidityBounds` lets a version constrain the validity + * interval of execution transactions (no-op by default). + */ +export abstract class RealfiSDKV1Family< + P extends Provider, + W extends Wallet, + TSettings, + TVaultDatum extends IVaultDatumLike, +> + extends RealfiSDKBase + implements IRealfiSDKWithTreasury +{ + // Script hashes and policy IDs + readonly stablecoinPolicyId: Core.PolicyId; + readonly oneShotPolicyId: Core.PolicyId; + readonly protocolScriptHash: Core.Hash28ByteBase16; + readonly protocolMintScriptHash: Core.Hash28ByteBase16; + readonly protocolStakeScriptHash: Core.Hash28ByteBase16; + readonly protocolManagementScriptHash: Core.Hash28ByteBase16; + readonly treasuryScriptHash: Core.Hash28ByteBase16; + readonly treasuryNFTAssetId: Core.AssetId; + readonly orderScriptHash: Core.Hash28ByteBase16; + readonly orderScriptAddress: Core.Address; + readonly treasuryAddress: Core.Address; + readonly stakingVaultScriptHash: Core.Hash28ByteBase16; + readonly stakingVaultAddress: Core.Address; + readonly stakingVaultNFTAssetId: Core.AssetId; + readonly sUSDrAssetNameHex: string; + + // Scripts + protected readonly oneShotScript: Core.Script; + protected readonly protocolScript: Core.Script; // Alias for orchestrator (base class compatibility) + protected readonly protocolOrchestratorScript: Core.Script; + protected readonly protocolMintScript: Core.Script; + protected readonly protocolStakeScript: Core.Script; + protected readonly protocolManagementScript: Core.Script; + protected readonly mintProxyScript: Core.Script; + protected readonly treasuryScript: Core.Script; + protected readonly orderScript: Core.Script; + protected readonly stakingVaultScript: Core.Script; + + protected readonly defaultSlippageToleranceBps?: bigint; + + /** Schema values used by every shared serialize/parse site. */ + protected readonly schemas: IV1FamilySchemas; + private readonly signingSchemas?: IV1SigningSchemas; + + protected constructor( + blaze: Blaze, + params: IV1FamilyConstructorParams, + schemas: IV1FamilySchemas, + scripts: IV1FamilyScripts, + cachedReferenceInputs?: ICachedReferenceInputs, + signingSchemas?: IV1SigningSchemas, + ) { + super( + blaze, + { + version: params.version, + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + enableTrace: params.enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource, + }, + cachedReferenceInputs, + ); + + this.schemas = schemas; + this.signingSchemas = signingSchemas; + + this.sUSDrAssetNameHex = params.sUSDrAssetNameHex; + this.defaultSlippageToleranceBps = params.defaultSlippageToleranceBps; + + this.oneShotScript = scripts.oneShotScript; + this.protocolOrchestratorScript = scripts.protocolOrchestratorScript; + this.protocolScript = scripts.protocolOrchestratorScript; // Alias for base class + this.protocolMintScript = scripts.protocolMintScript; + this.protocolStakeScript = scripts.protocolStakeScript; + this.protocolManagementScript = scripts.protocolManagementScript; + this.mintProxyScript = scripts.mintProxyScript; + this.treasuryScript = scripts.treasuryScript; + this.orderScript = scripts.orderScript; + this.stakingVaultScript = scripts.stakingVaultScript; + + this.oneShotPolicyId = Core.PolicyId(this.oneShotScript.hash()); + this.protocolScriptHash = this.protocolOrchestratorScript.hash(); + this.protocolMintScriptHash = this.protocolMintScript.hash(); + this.protocolStakeScriptHash = this.protocolStakeScript.hash(); + this.protocolManagementScriptHash = this.protocolManagementScript.hash(); + this.stablecoinPolicyId = Core.PolicyId(this.mintProxyScript.hash()); + this.treasuryScriptHash = this.treasuryScript.hash(); + this.orderScriptHash = this.orderScript.hash(); + this.stakingVaultScriptHash = this.stakingVaultScript.hash(); + + this.treasuryAddress = addressFromValidator( + this.network, + this.treasuryScript, + ); + this.orderScriptAddress = addressFromValidator( + this.network, + this.orderScript, + ); + this.stakingVaultAddress = addressFromValidator( + this.network, + this.stakingVaultScript, + ); + + // Every identity above is derived from this package's own artifacts, which + // only describes a deployment running those exact bytes. Where the caller + // knows what the chain actually runs, that wins — otherwise the derived + // order address is one nothing watches, and an order (lockAssets, no + // on-chain validation) would submit successfully into it. + this.applyDeployedValidators(params.deployedValidators, params.version); + + // Treasury NFT: policy = treasury script hash, name = "treasury" + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + this.treasuryNFTAssetId = Core.AssetId( + this.treasuryScriptHash + treasuryAssetName.toString(), + ); + + // Staking vault NFT: policy = staking vault script hash, name = "staking_vault" + const vaultAssetName = Core.AssetName(toHex(Buffer.from("staking_vault"))); + this.stakingVaultNFTAssetId = Core.AssetId( + this.stakingVaultScriptHash + vaultAssetName.toString(), + ); + } + + /** + * Replace derived script identity with the deployment's own hashes. + * + * Version-owned validators are selected only from this SDK's exact version + * slot. Treasury and staking-vault validators can deliberately survive a + * protocol-only upgrade, so their unversioned entries are used as the + * authoritative active-state fallback. + * + * Unrecognised keys are ignored: a blueprint legitimately carries validators + * outside this family (oneshot, mint_proxy) and future ones this build has + * never heard of. + */ + private applyDeployedValidators( + deployed: Readonly> | undefined, + version: TProtocolVersion, + ): void { + if (!deployed) return; + + if (!(version in DEPLOYED_VALIDATOR_PREFIXES)) return; + const prefix = DEPLOYED_VALIDATOR_PREFIXES[version as TV1ProtocolVersion]; + + const mutable = this as unknown as Record; + for (const [suffix, field] of DEPLOYED_VALIDATOR_FIELDS) { + const versionedHash = deployed[`${prefix}${suffix}`]; + const activeStateHash = COMPATIBLE_STATE_VALIDATOR_FIELDS.has(field) + ? deployed[suffix] + : undefined; + const deployedHash = activeStateHash ?? versionedHash; + if (!deployedHash) continue; + + const hash = Core.Hash28ByteBase16(deployedHash.toLowerCase()); + mutable[field] = hash; + + const addressField = + DEPLOYED_ADDRESS_FIELDS[field as keyof typeof DEPLOYED_ADDRESS_FIELDS]; + if (addressField) { + mutable[addressField] = addressFromCredentials( + this.network, + Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash, + }), + ); + } + } + } + + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Schemas for the v1_0-semantics signing/execute defaults. Throws for + * versions that neither supplied {@link IV1SigningSchemas} nor overrode + * the two consumers (`getSignedPayloadFromOrderInputs`, + * `buildExecuteOrdersTx`). + */ + protected get signing(): IV1SigningSchemas { + if (!this.signingSchemas) { + throw new Error( + `${this.version}: no signing schemas supplied — pass signingSchemas to the family constructor or override getSignedPayloadFromOrderInputs and buildExecuteOrdersTx`, + ); + } + return this.signingSchemas; + } + + /** + * Project the version's settings onto the fields the shared tx-builders + * read. v1_0/v1_0_rc1: the settings object itself; v1_1+: `settings.config`. + */ + protected abstract settingsConfig(settings: TSettings): TV1SettingsConfig; + + /** + * Extract the validator registry (the fields the family reads) from the + * version's settings. + */ + protected abstract settingsRegistry(settings: TSettings): TV1Registry; + + /** + * Build the vault datum used when bootstrapping the staking vault. + * This is the ONLY place (together with `buildUpdatedVaultDatum`) that + * knows the version's full vault-datum shape. + */ + protected abstract buildInitialVaultDatum(): TVaultDatum; + + /** + * Build the vault datum that replaces `previous` after an execution that + * changes circulating sUSDr by `sUSDrDelta`. Versions with additional + * vault fields decide here how each field carries over. + */ + protected abstract buildUpdatedVaultDatum( + previous: TVaultDatum, + sUSDrDelta: bigint, + ): TVaultDatum; + + /** + * Version hook: the USDr backing the stake/unstake exchange rate is + * computed against. Defaults to the vault's full USDr balance (v1_0 / + * v1_0_rc1 semantics). Versions with time-diffused yield (v1_1_rc1+) + * override this to exclude the not-yet-diffused pending yield + * (`settled_backing` in utilities.ak). + */ + protected settledVaultBacking( + _parsedVaultDatum: TVaultDatum, + vaultUSDr: bigint, + ): bigint { + return vaultUSDr; + } + + /** + * Version hook: constrain the transaction validity interval on order + * executions. Called once at the end of `buildExecuteOrdersTx`, right + * before the builder is returned. + * + * No-op by default: v1_0 / v1_0_rc1 executions carry no validity + * constraints. Versions with time-diffused yield (v1_1_rc1+) override this + * to attach validFrom/validTo bounds on vault-touching executions. + */ + protected async applyExecutionValidityBounds( + _tx: TxBuilder, + _context: IExecutionValidityContext, + ): Promise { + // no-op by default + } + + /** + * Version hook: build the `Deposit` protocol action that goes into the + * COSE-signed payload. v1_0 / v1_0_rc1 have no yield split — the validator + * recomputes it from live state — so they take no `alpha` and reject one. + * Versions that carry a signed `alpha` (v1_1_rc1+) override this and require + * it: it is the batch's parameter, never something a signer derives. + */ + protected async buildDepositAction( + requests: TreasuryRequestV1[], + alpha?: IYieldSplitAlpha, + ): Promise { + if (alpha) { + throw new Error( + `${this.version}: a deposit batch takes no yield-split alpha (the validator recomputes the split from live state)`, + ); + } + return { Deposit: { requests } }; + } + + /** + * Version hook: split a deposit's total yield between the staked vault and + * the unstaked pot at EXECUTION time. + * + * v1_0 / v1_0_rc1 (default): the on-chain validator recomputes the split from + * live vault/treasury state, so recomputing it here from the same state + * matches. v1_1_rc1+ carry a COSE-signed `alpha` in the Deposit action and + * the validator splits against THAT — so those versions override this to echo + * the signed alpha, never a second live read (which would diverge if state + * moved between signing and execution). `action` is the signed action being + * executed; the default ignores it. + */ + protected resolveDepositYieldShares( + totalYield: bigint, + vaultUSDr: bigint, + treasuryCirculating: bigint, + _action: ProtocolRedeemerV1, + ): { stakedYieldShare: bigint; unstakedYieldShare: bigint } { + return calculateYieldShares(totalYield, vaultUSDr, treasuryCirculating); + } + + /** + * Version hook: serialize the redeemer attached to the orchestrator + * withdrawal. Defaults to the bare `SignedRedeemer` + * (v1_0 / v1_0_rc1). Versions whose orchestrator wraps execution in a + * top-level dispatch enum (v1_1_rc1+: `ExecuteOrders(...)`/`PublishYieldOracle`) + * override this to nest the signed redeemer inside that wrapper. + */ + protected serializeOrchestratorWithdrawalRedeemer(redeemer: { + extra: ExtraProtocolRedeemerV1; + payload: SignedPayload_ProtocolRedeemerV1; + signatures: Tuple_VerificationKey_COSESign1[]; + }): PlutusData { + return Data.serialize( + this.signing.SignedRedeemer_ExtraProtocolRedeemerV1, + redeemer, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Treasury Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the treasury NFT. + */ + async mintTreasuryNFT( + treasuryBootstrapUtxo: Core.TransactionUnspentOutput, + initialDatum: V0_1TreasuryDatum = { circulating_supply: 0n }, + ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> { + const treasuryPolicyId = Core.PolicyId(this.treasuryScriptHash); + const treasuryAssetName = Core.AssetName(toHex(Buffer.from("treasury"))); + + const datum = Data.serialize(V0_1TreasuryDatum, initialDatum); + const tx = await this.blaze + .newTransaction() + .addInput(treasuryBootstrapUtxo) + .addMint( + treasuryPolicyId, + new Map([[treasuryAssetName, 1n]]), + Data.Void(), + ) + .lockAssets( + this.treasuryAddress, + makeValue(10000000n, [this.treasuryNFTAssetId, 1n]), + datum, + ) + .provideScript(this.treasuryScript); + + return { tx, nftAssetId: this.treasuryNFTAssetId }; + } + + async deployTreasury(): Promise { + return deployScript( + this.blaze, + this.treasuryScript, + this.scriptDeploymentAddress, + ); + } + + async deployOrderContract(): Promise { + return deployScript( + this.blaze, + this.orderScript, + this.scriptDeploymentAddress, + ); + } + + async getTreasuryDatum(): Promise> { + const { + utxo: treasuryUtxo, + datum: treasuryDatum, + parsedDatum: parsedTreasuryDatum, + } = await getDatumFromNFT( + this.blaze, + this.treasuryNFTAssetId, + V0_1TreasuryDatum, + ); + + if (!treasuryUtxo) { + throw new Error("No UTXO found with the treasury NFT"); + } + if (!treasuryDatum) { + throw new Error("No treasury datum found"); + } + + return { + treasuryUtxo, + treasuryDatum, + parsedTreasuryDatum: parsedTreasuryDatum as V0_1TreasuryDatum, + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Staking Vault Operations + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint the staking vault NFT and create initial vault UTxO. + */ + async mintStakingVaultNFT( + stakingVaultBootstrapUtxo: Core.TransactionUnspentOutput, + initialDatum?: TVaultDatum, + ): Promise<{ tx: TxBuilder; nftAssetId: Core.AssetId }> { + const vaultPolicyId = Core.PolicyId(this.stakingVaultScriptHash); + const vaultAssetName = Core.AssetName(toHex(Buffer.from("staking_vault"))); + + const datum = Data.serialize( + this.schemas.VaultDatumV1, + initialDatum ?? this.buildInitialVaultDatum(), + ); + const tx = await this.blaze + .newTransaction() + .addInput(stakingVaultBootstrapUtxo) + .addMint(vaultPolicyId, new Map([[vaultAssetName, 1n]]), Data.Void()) + .lockAssets( + this.stakingVaultAddress, + makeValue(10000000n, [this.stakingVaultNFTAssetId, 1n]), + datum, + ) + .provideScript(this.stakingVaultScript); + + return { tx, nftAssetId: this.stakingVaultNFTAssetId }; + } + + async deployStakingVault(): Promise { + return deployScript( + this.blaze, + this.stakingVaultScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Deploy the protocol mint script as a reference script (V1.0 only). + */ + async deployProtocolMint(): Promise { + return deployScript( + this.blaze, + this.protocolMintScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Deploy the protocol stake script as a reference script (V1.0 only). + */ + async deployProtocolStake(): Promise { + return deployScript( + this.blaze, + this.protocolStakeScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Deploy the protocol management script as a reference script (V1.0 only). + */ + async deployProtocolManagement(): Promise { + return deployScript( + this.blaze, + this.protocolManagementScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Register the protocol mint stake credential (V1.0 sub-validator). + */ + registerProtocolMintStake(): TxBuilder { + const stakeCredential = credentialFromScript(this.protocolMintScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + /** + * Register the protocol stake stake credential (V1.0 sub-validator). + */ + registerProtocolStakeStake(): TxBuilder { + const stakeCredential = credentialFromScript(this.protocolStakeScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + /** + * Register the protocol management stake credential (V1.0 sub-validator). + */ + registerProtocolManagementStake(): TxBuilder { + const stakeCredential = credentialFromScript(this.protocolManagementScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + /** + * Register the staking vault stake credential (for stake/unstake operations). + */ + registerStakingVaultStake(): TxBuilder { + const stakeCredential = credentialFromScript(this.stakingVaultScript); + return this.blaze.newTransaction().addRegisterStake(stakeCredential); + } + + // ─────────────────────────────────────────────────────────────────────────── + // Batched bootstrap helpers (fast fresh-deploy path) + // + // The NFT mints CANNOT be batched: each one-shot mint validator runs + // `mint_oneshots_strict`, which flattens the transaction's ENTIRE mint field + // and fails unless it equals exactly that validator's single token. So a tx + // minting more than one NFT fails phase-2 for all of them — the mints stay + // one-tx-each. Deploys and stake registrations have no such constraint and + // batch freely. + // ─────────────────────────────────────────────────────────────────────────── + + /** + * Register all five protocol stake credentials (orchestrator + mint / stake / + * management sub-validators + staking vault) in a SINGLE transaction. + * Certificates are tiny, so there is no size constraint. Replaces five + * `register*Stake` calls (and, for a cold wallet, five sign/submit cycles). + */ + registerAllStakes(): TxBuilder { + return this.blaze + .newTransaction() + .addRegisterStake(credentialFromScript(this.protocolScript)) + .addRegisterStake(credentialFromScript(this.protocolMintScript)) + .addRegisterStake(credentialFromScript(this.protocolStakeScript)) + .addRegisterStake(credentialFromScript(this.protocolManagementScript)) + .addRegisterStake(credentialFromScript(this.stakingVaultScript)); + } + + /** + * Pack the eight protocol reference-script deployments into as few + * transactions as fit under `budgetBytes` of script payload each, returning + * one TxBuilder per batch in deploy order. + * + * Batches by measured script size (`script.toCbor()` bytes) rather than a + * fixed count, because the validators are wildly uneven (~0.5–11 KB) and two + * of the ~10 KB sub-validators cannot share a transaction. The default budget + * (13 000) leaves headroom under the 16 384-byte tx limit for tx overhead and + * future script growth; callers can lower it if a validator grows. + * + * Fresh-deploy only: it does NOT skip already-deployed scripts. To resume a + * partial deploy, use the granular `deploy*` methods (which throw + * `ScriptAlreadyDeployedError` for idempotent reruns). + */ + deployScriptsBatched(budgetBytes = 13_000): TxBuilder[] { + const scripts: Core.Script[] = [ + this.treasuryScript, + this.protocolScript, + this.protocolMintScript, + this.protocolStakeScript, + this.protocolManagementScript, + this.mintProxyScript, + this.orderScript, + this.stakingVaultScript, + ]; + + const batches: Core.Script[][] = []; + let current: Core.Script[] = []; + let currentBytes = 0; + for (const script of scripts) { + const size = script.toCbor().length / 2; + if (current.length > 0 && currentBytes + size > budgetBytes) { + batches.push(current); + current = []; + currentBytes = 0; + } + current.push(script); + currentBytes += size; + } + if (current.length > 0) batches.push(current); + + return batches.map((batch) => { + let tx = this.blaze.newTransaction(); + for (const script of batch) { + tx = tx.deployScript(script, this.scriptDeploymentAddress); + } + return tx; + }); + } + + /** The sUSDr asset ID (stablecoin policy + staked-USDr asset name). */ + getSusdrAssetId(): Core.AssetId { + return Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex); + } + + async getVaultDatum(): Promise> { + const { + utxo: vaultUtxo, + datum: vaultDatum, + parsedDatum: parsedVaultDatum, + } = await getDatumFromNFT( + this.blaze, + this.stakingVaultNFTAssetId, + this.schemas.VaultDatumV1, + ); + + if (!vaultUtxo) { + throw new Error("No UTXO found with the staking vault NFT"); + } + if (!vaultDatum) { + throw new Error("No vault datum found"); + } + + return { + vaultUtxo, + vaultDatum, + parsedVaultDatum: parsedVaultDatum as TVaultDatum, + }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // One-Shot Operations + // ───────────────────────────────────────────────────────────────────────────── + + async mintOneShot( + receiverAddress: Core.Address, + datum: IProxyDatum, + ): Promise<{ tx: TxBuilder; policyId: Core.PolicyId }> { + const utxo = await this.resolveBootstrapUtxo(); + const serializedDatum = Data.serialize(this.schemas.ProxyDatumV1, { + logic: datum.logic, + settings: datum.settings, + }); + + const baseTx = this.blaze + .newTransaction() + .addInput(utxo) + .addMint( + this.oneShotPolicyId, + new Map([[Core.AssetName(""), 1n]]), + Data.Void(), + ); + const tx = lockOrPayAssets( + baseTx, + receiverAddress, + makeValue(10000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ).provideScript(this.oneShotScript); + return { tx, policyId: this.oneShotPolicyId }; + } + + async updateOneShotDatum( + receiverAddress: Core.Address, + newDatum: IProxyDatum, + ): Promise { + const oneshotUtxo = await this.blaze.provider.getUnspentOutputByNFT( + Core.AssetId(this.oneShotPolicyId), + ); + if (!oneshotUtxo) { + throw new Error("No UTXO found with the one-shot NFT"); + } + + const serializedDatum = Data.serialize(this.schemas.ProxyDatumV1, { + logic: newDatum.logic, + settings: newDatum.settings, + }); + + return lockOrPayAssets( + this.blaze.newTransaction().addInput(oneshotUtxo), + receiverAddress, + makeValue(10000000n, [this.oneShotPolicyId, 1n]), + serializedDatum, + ); + } + + async getParsedProxyDatum(): Promise< + IProxyDatumResult> + > { + if (this.cachedProxyDatumResult) { + return this.cachedProxyDatumResult as IProxyDatumResult< + IProxyDatum + >; + } + + const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum(); + const parsedProxyDatum = parse(this.schemas.ProxyDatumV1, proxyDatum); + const result = { proxyUtxo, proxyDatum, parsedProxyDatum }; + + this.cachedProxyDatumResult = result; + return result; + } + + /** + * Check if the protocol has been upgraded past this SDK version. + * + * Returns true if either: + * - The order script hash no longer matches registry.order (order validator upgraded) + * - The protocol logic no longer matches this SDK's protocol script hash (protocol upgraded) + * + * When this returns true, orders created with this SDK version can use the + * `Invalidated` redeemer to recover funds via `buildInvalidatedOrdersTx`. + */ + async isProtocolUpgraded(): Promise { + const { parsedProxyDatum } = await this.getParsedProxyDatum(); + const registry = this.settingsRegistry(parsedProxyDatum.settings); + const orderUpgraded = registry.order !== this.orderScriptHash; + const protocolUpgraded = parsedProxyDatum.logic !== this.protocolScriptHash; + return orderUpgraded || protocolUpgraded; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Public Order-Scan / Settings Accessors + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Read the version-agnostic settings config (`reserve_assets`, + * `unstaked_yield_pot`) off the live proxy datum. Public accessor over the + * `settingsConfig` / `getVersionSettings` seam so consumers read the shared + * fields without casting a version-specific settings shape: v1_0 / v1_0_rc1 + * project the flat settings, v1_1+ project `settings.config`. + */ + async getSettingsConfig(): Promise { + return this.settingsConfig(await this.getVersionSettings()); + } + + /** + * Whether the batch covering these orders needs a yield-split alpha, i.e. it is + * a deposit on a version that splits yield. Callers that both create and sign a + * batch use it to decide whether to pick one (computeDepositAlpha); a co-signer + * has no use for it — it reads the batch's stored alpha either way. + */ + async batchNeedsAlpha( + orderInputs: Core.TransactionInput[], + ): Promise { + if (orderInputs.length === 0) { + return false; + } + const [utxo] = await this.blaze.provider.resolveUnspentOutputs([ + orderInputs[0]!, + ]); + return ( + this.classifyOrderUtxo(utxo!).action.actionType === "deposit" && + this.splitsYield + ); + } + + /** + * Whether this version's Deposit action carries a signed yield split. False for + * v1_0 / v1_0_rc1, whose validator recomputes the split from live state; + * v1_1_rc1+ override it. + */ + protected get splitsYield(): boolean { + return false; + } + + /** + * Decode and classify a single open order UTxO with this version's schema. + * + * Parses the UTxO's inline datum via `this.schemas.OrderDatumV1` — exactly + * the way {@link parseOrderInfos} does — then classifies the action. Unlike + * {@link parseOrders}, this imposes NO same-action-type constraint, so it is + * the per-UTxO primitive for scanning a MIXED batch of open orders at the + * order script address and handling each by its action type. + * + * @throws if the UTxO carries no inline datum, or the datum fails to decode + * under this version's order schema (e.g. a V1.1 order read by a V1.0 SDK). + */ + classifyOrderUtxo(utxo: Core.TransactionUnspentOutput): IClassifiedOrderUtxo { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1; + return { datum, action: this.classifyOrderAction(datum) }; + } + + /** + * Decode a batch of order UTxOs into {@link IOrderInfo} objects, validating + * they are ALL the same action type (throws on a mixed batch). Public + * wrapper over {@link parseOrderInfos}; use it to prepare inputs for the + * same-type execute builders. To scan a mixed batch, classify each UTxO + * individually with {@link classifyOrderUtxo} instead. + * + * The optional `fees` map (keyed by `${txHash}#${outputIndex}`) stamps each + * order with its locked fee in the action's output unit; missing entries + * default to 0 (no fee retained). + */ + parseOrders( + orderUtxos: Core.TransactionUnspentOutput[], + fees?: Map, + ): IOrderInfo[] { + return this.parseOrderInfos(orderUtxos, fees); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Order Builder Methods (8 methods: 6 from V0_4 + DirectMint + DirectBurn) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Internal helper to build an order transaction. + */ + protected async _buildOrderTx(params: { + action: OrderActionV1; + valueToLock: Core.Value; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + extraLabels?: Map; + }): Promise { + const owner = await this.resolveOrderOwner(params.owner); + const serializedDatum = this.serializeOrderDatum( + params.action, + params.destination, + owner, + params.data, + ); + + const tx = this.newOrderTransaction(params.extraLabels); + tx.lockAssets(this.orderScriptAddress, params.valueToLock, serializedDatum); + return tx; + } + + /** Resolve the order owner exactly once for transaction and continuation builders. */ + protected async resolveOrderOwner( + owner?: MultisigScript, + ): Promise { + if (owner) return owner; + return { + Signature: { + key_hash: (await this.blaze.wallet.getChangeAddress()) + .getProps() + .paymentPart!.hash!.toString(), + }, + }; + } + + /** Serialize an order datum through the live version instance's schema seam. */ + protected serializeOrderDatum( + action: OrderActionV1, + destination: Destination, + owner: MultisigScript, + data?: PlutusData, + ): PlutusData { + const orderDatum: OrderDatumV1 = { + action, + owner, + destination, + data: data ?? Data.Void(), + }; + return Data.serialize(this.schemas.OrderDatumV1, orderDatum); + } + + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + async buildMintOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + minReceived?: bigint; + /** + * ADA to lock in the RealFi order UTxO and forward to the destination + * output when the order is executed. Defaults to MIN_LOVELACE. + */ + orderLovelace?: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Mint amount must be positive"); + } + const orderLovelace = params.orderLovelace ?? MIN_LOVELACE; + if (orderLovelace < MIN_LOVELACE) { + throw new Error("Mint order lovelace cannot be less than MIN_LOVELACE"); + } + const reserveAssetId = Core.AssetId( + params.reserveAsset[0] + params.reserveAsset[1], + ); + // Convert USDr amount to reserve amount using ceiling division + // to ensure enough reserve is locked for on-chain validation + const settings = this.settingsConfig(await this.getVersionSettings()); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAmount = usdrToReserveCeil(params.amount, ra); + // Mint is 1:1 reserve→USDR with no protocol fee in v1_0, so the user + // receives exactly `amount`. Default the floor to `amount`; callers can + // lower it if a future fee makes that too tight. + const minReceived = params.minReceived ?? params.amount; + assertPositiveMinReceived("Mint", minReceived); + return this._buildOrderTx({ + action: { + OMint: { + amount: params.amount, + min_received: minReceived, + reserve_asset: params.reserveAsset, + }, + }, + valueToLock: makeValue(orderLovelace, [reserveAssetId, reserveAmount]), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + async buildRedeemOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + minReceived?: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Redeem amount must be positive"); + } + const settings = this.settingsConfig(await this.getVersionSettings()); + const ra = findReserveAsset(settings, params.reserveAsset); + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + // burn.ak caps delivery at usdr_to_reserve(amount, ra), so the default + // floor must use the configured reserve multiplier rather than assume 1:1. + const minReceived = params.minReceived ?? usdrToReserve(params.amount, ra); + assertPositiveMinReceived("Redeem", minReceived); + return this._buildOrderTx({ + action: { + ORedeem: { + amount: params.amount, + min_received: minReceived, + reserve_asset: params.reserveAsset, + }, + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a deposit order: lock reserve tokens, request treasury deposit. + */ + async buildDepositOrderTx(params: { + principal: bigint; + yield: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.principal < 0n) { + throw new Error("Deposit principal must be non-negative"); + } + if (params.principal === 0n && params.yield === 0n) { + throw new Error("Deposit must have non-zero principal or yield"); + } + const settings = this.settingsConfig(await this.getVersionSettings()); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAssetId = Core.AssetId( + params.reserveAsset[0] + params.reserveAsset[1], + ); + + let valueToLock: Core.Value; + + if (params.yield >= 0n) { + // POSITIVE YIELD: need reserve backing for BOTH principal AND yield. + // Contract validates: reserve_to_usdr(treasury_delta) >= principal + yield + // So we must lock: usdrToReserveCeil(principal + yield) reserve tokens + const totalUSDrBacking = params.principal + params.yield; + if (totalUSDrBacking > 0n) { + const reserveAmount = usdrToReserveCeil(totalUSDrBacking, ra); + valueToLock = makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]); + } else { + valueToLock = makeValue(MIN_LOVELACE); + } + } else { + // NEGATIVE YIELD: lock principal (in reserve) + unstaked yield share (in USDr). + // The staked share comes from the vault (validated on-chain via vault USDr change). + const principalReserve = + params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n; + + valueToLock = + principalReserve > 0n + ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve]) + : makeValue(MIN_LOVELACE); + + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + + // Fetch current state to calculate yield split + const { parsedTreasuryDatum } = await this.getTreasuryDatum(); + const vaultUtxo = (await this.getVaultDatum()).vaultUtxo; + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + + const { unstakedYieldShare } = calculateYieldShares( + params.yield, + vaultUSDr, + treasuryCirculating, + ); + + // Lock only the unstaked portion (negated since unstakedYieldShare is negative) + if (unstakedYieldShare < 0n) { + valueToLock = Value.merge( + valueToLock, + makeValue(0n, [stablecoinAssetId, -unstakedYieldShare]), + ); + } + } + return this._buildOrderTx({ + action: { + ODeposit: { + principal: params.principal, + yield: params.yield, + reserve_asset: params.reserveAsset, + }, + }, + valueToLock, + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a withdraw order: lock min ADA, request reserve token withdrawal. + */ + async buildWithdrawOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Withdraw amount must be positive"); + } + const settings = this.settingsConfig(await this.getVersionSettings()); + findReserveAsset(settings, params.reserveAsset); + return this._buildOrderTx({ + action: { + OWithdraw: { + amount: params.amount, + reserve_asset: params.reserveAsset, + }, + }, + valueToLock: makeValue(MIN_LOVELACE), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + async buildStakeOrderTx(params: { + amount: bigint; + destination: Destination; + minReceived?: bigint; + slippageToleranceBps?: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Stake amount must be positive"); + } + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const minReceived = + params.minReceived ?? + (await this.computeStakeMinReceived( + params.amount, + params.slippageToleranceBps, + )); + assertPositiveMinReceived("Stake", minReceived); + return this._buildOrderTx({ + action: { + OStake: { + amount: params.amount, + min_received: minReceived, + }, + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a stake-order continuation from a completed swap's guaranteed USDr + * output. The swap quote remains observable to the caller, while the SDK + * owns the RealFi amount, exchange-rate quote, schema, and request address. + */ + async buildStakeContinuation( + params: IBuildStakeContinuationParams, + ): Promise { + const amount = params.swap.minReceived.amount; + if (amount <= 0n) { + throw new Error("Swap minReceived amount must be positive"); + } + + const expectedSundaeAssetId = `${this.stablecoinPolicyId}.${this.assetNameHex}`; + if (params.swap.minReceived.metadata.assetId !== expectedSundaeAssetId) { + throw new Error( + `Swap minReceived must be USDr (${expectedSundaeAssetId}), got ${params.swap.minReceived.metadata.assetId}`, + ); + } + + const minReceived = await this.computeStakeMinReceived( + amount, + params.slippageToleranceBps, + ); + assertPositiveMinReceived("Stake", minReceived); + const owner = await this.resolveOrderOwner(params.owner); + + return { + address: this.orderScriptAddress, + datum: this.serializeOrderDatum( + { + OStake: { + amount, + min_received: minReceived, + }, + }, + params.destination, + owner, + params.data, + ), + }; + } + + protected async _buildUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + forfeit?: bigint; + minReceived?: bigint; + slippageToleranceBps?: bigint; + owner?: MultisigScript; + data?: PlutusData; + extraLabels?: Map; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Unstake amount must be positive"); + } + const forfeit = params.forfeit ?? 0n; + if (forfeit < 0n) { + throw new Error("Forfeit amount cannot be negative"); + } + + const sUSDrAssetId = Core.AssetId( + this.stablecoinPolicyId + this.sUSDrAssetNameHex, + ); + const minReceived = + params.minReceived ?? + (await this.computeUnstakeMinReceived( + params.amount, + forfeit, + params.slippageToleranceBps, + )); + // Also catches a full forfeit, where computeUnstakeMinReceived nets to 0: + // unstake.ak's own comment defers that case to `min_received > 0`, i.e. the + // batch-wide crash. Refuse to create the order instead. + assertPositiveMinReceived("Unstake", minReceived); + + return this._buildOrderTx({ + action: { + OUnstake: { + amount: params.amount, + min_received: minReceived, + forfeit, + }, + }, + valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + extraLabels: params.extraLabels, + }); + } + + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockSlot - Slot number after which the user can spend the released USDr + * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0) + * @param params.slippageToleranceBps - Optional min-received tolerance override in basis points + */ + async buildUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + unlockSlot: bigint; + forfeit?: bigint; + minReceived?: bigint; + slippageToleranceBps?: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + const timelockDestination = buildTimelockDestination( + params.destination, + params.unlockSlot, + ); + const extraLabels = new Map([ + [ + UNSTAKE_METADATA_LABEL, + buildUnstakeMetadatum(params.destination, params.unlockSlot), + ], + ]); + + return this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + minReceived: params.minReceived, + slippageToleranceBps: params.slippageToleranceBps, + owner: params.owner, + data: params.data, + extraLabels, + }); + } + + /** + * Build a treasury-managed unstake order that wraps the destination in a + * native timelock script controlled by the order owner. + * + * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps + * treasury multisig ownership on the released USDr while enforcing the same + * unlock slot used by the retail unstake helper. The owner must be convertible + * to a Cardano native script. + */ + async buildTreasuryUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + unlockSlot: bigint; + forfeit?: bigint; + minReceived?: bigint; + slippageToleranceBps?: bigint; + owner: MultisigScript; + data?: PlutusData; + }): Promise { + const nativeScript = buildMultisigTimelockNativeScript( + params.owner, + params.unlockSlot, + ); + const timelockDestination: Destination = { + address: { + payment_credential: { Script: [nativeScript.hash()] }, + stake_credential: params.destination.address.stake_credential, + }, + datum: "NoDatum", + }; + + // Attach the unstake metadata (label 55534472) exactly like the retail + // path (buildUnstakeOrderTx). track-chain requires this label to index the + // order; without it the confirmed unstake output is silently dropped + // (WTB-1466). Mirror retail precisely: the metadatum is built from the + // user-supplied destination (params.destination), not the derived timelock + // destination, and carries the same unlock_time. + const extraLabels = new Map([ + [ + UNSTAKE_METADATA_LABEL, + buildUnstakeMetadatum(params.destination, params.unlockSlot), + ], + ]); + + const tx = await this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + minReceived: params.minReceived, + slippageToleranceBps: params.slippageToleranceBps, + owner: params.owner, + data: params.data, + extraLabels, + }); + + return { tx, nativeScript }; + } + + /** + * Compute the default `min_received` (output sUSDR floor) for a stake order + * by reading the current staking-vault exchange rate and applying a + * slippage tolerance buffer. + * + * Tolerance resolution: per-call > SDK-level (defaultSlippageToleranceBps) + * > built-in 50bps (0.5%). + * + * Yield accrual moves `vault_usdr` up over time, so shares-per-USDR shrinks + * between order placement and execution. The buffer protects the user from + * receiving fewer shares than they expected at sign time. + * + * Bootstrap edge case: when the vault is empty (no USDR locked or no sUSDR + * circulating), the rate is treated as 1:1 and the buffer is skipped. + */ + protected async computeStakeMinReceived( + amount: bigint, + perCallToleranceBps?: bigint, + ): Promise { + const toleranceBps = + this.resolveStakeSlippageToleranceBps(perCallToleranceBps); + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const { vaultUtxo, parsedVaultDatum } = await this.getVaultDatum(); + const vaultUsdr = this.settledVaultBacking( + parsedVaultDatum, + vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n, + ); + const circulatingSusdr = parsedVaultDatum.circulating_susdr; + if (vaultUsdr === 0n || circulatingSusdr === 0n) { + return amount; + } + const expected = (amount * circulatingSusdr) / vaultUsdr; + return (expected * (10000n - toleranceBps)) / 10000n; + } + + protected resolveStakeSlippageToleranceBps( + perCallToleranceBps?: bigint, + ): bigint { + const toleranceBps = + perCallToleranceBps ?? this.defaultSlippageToleranceBps ?? 50n; + if (toleranceBps < 0n || toleranceBps > 10_000n) { + throw new Error("Slippage tolerance must be between 0 and 10000 bps"); + } + return toleranceBps; + } + + /** + * Compute the default `min_received` (output USDR floor) for an unstake + * order by reading the current staking-vault exchange rate. + * + * `forfeit` is subtracted from the gross expected USDR, then a slippage + * tolerance protects the order from quote/provider drift. Tolerance + * resolution is per-call > SDK-level > built-in 50bps (0.5%). + * + * Bootstrap edge case: when the vault is empty, the rate is treated as 1:1. + */ + protected async computeUnstakeMinReceived( + amount: bigint, + forfeit: bigint, + perCallToleranceBps?: bigint, + ): Promise { + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const { vaultUtxo, parsedVaultDatum } = await this.getVaultDatum(); + const vaultUsdr = this.settledVaultBacking( + parsedVaultDatum, + vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n, + ); + const circulatingSusdr = parsedVaultDatum.circulating_susdr; + const expectedGross = + vaultUsdr === 0n || circulatingSusdr === 0n + ? amount + : (amount * vaultUsdr) / circulatingSusdr; + const expectedNet = expectedGross > forfeit ? expectedGross - forfeit : 0n; + const toleranceBps = + this.resolveStakeSlippageToleranceBps(perCallToleranceBps); + return (expectedNet * (10000n - toleranceBps)) / 10000n; + } + + /** + * Build a direct mint order: mint USDr without reserve asset backing. + * Used for fiat wire scenarios where reserve arrives off-chain. + */ + async buildDirectMintOrderTx(params: { + amount: bigint; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Direct mint amount must be positive"); + } + // DirectMint orders only need min ADA - no reserve tokens + return this._buildOrderTx({ + action: { ODirectMint: { amount: params.amount } }, + valueToLock: makeValue(MIN_LOVELACE), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a direct burn order: burn USDr without reserve asset redemption. + * Used for fiat wire scenarios where reserve is sent off-chain. + */ + async buildDirectBurnOrderTx(params: { + amount: bigint; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Direct burn amount must be positive"); + } + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + // DirectBurn orders must lock the USDr being burned + return this._buildOrderTx({ + action: { ODirectBurn: { amount: params.amount } }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + static buildTimelockNativeScript = buildTimelockNativeScript; + static buildTimelockAddress = buildTimelockAddress; + static buildMultisigTimelockNativeScript = buildMultisigTimelockNativeScript; + + // ───────────────────────────────────────────────────────────────────────────── + // Signed Payload and Signing + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build the V1_0 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + * + * `alpha` is the batch's yield split, required by versions whose Deposit + * action carries one (v1_1_rc1+) and rejected everywhere else. It is a + * parameter of the batch, chosen once by whoever created it and read back from + * the backend by every co-signer: on-chain, all signatures of a batch are + * checked against ONE payload hash, so a signer that derived its own value + * would produce bytes nobody else can co-sign. + */ + async getSignedPayloadFromOrderInputs( + orderInputs: Core.TransactionInput[], + alpha?: IYieldSplitAlpha, + ): Promise<{ signedPayload: string; payloadHash: string }> { + if (orderInputs.length === 0) { + throw new Error("At least one order input is required"); + } + + const sortedInputs = sortOrderInputs(orderInputs); + const nonce = buildNonceFromUtxo(sortedInputs[0]!) as Nonce; + + const resolvedUtxos = + await this.blaze.provider.resolveUnspentOutputs(sortedInputs); + + let actionType: TOrderActionType | null = null; + const exchangeRequests: ExchangeRequestV1[] = []; + const treasuryRequests: TreasuryRequestV1[] = []; + const stakeRequests: StakeRequestV1[] = []; + const directRequests: DirectRequestV1[] = []; + + for (const utxo of resolvedUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1; + const origin = { + transaction_id: utxo.input().transactionId().toString(), + output_index: utxo.input().index(), + }; + + const parsed = this.classifyOrderAction(datum); + + // WTB-1764: the validators check each request inside one zip_fold via + // `expect validation(request)`, so a request that fails its predicate + // crashes the WHOLE execution transaction — every valid order batched + // alongside it dies too, with only an opaque "the validator crashed" + // to go on. Refuse to package it, and say which order it was. + const screened = await this.screenOrderForExecution(utxo, parsed); + if (!screened.ok) { + throw new Error( + `Order ${origin.transaction_id}#${origin.output_index} cannot be executed: ` + + `${screened.reason}. Every order batched with it would crash on-chain.`, + ); + } + + if (actionType === null) { + actionType = parsed.actionType; + } else if (actionType !== parsed.actionType) { + throw new Error( + "Mixed order types in inputs. All orders must be of the same type.", + ); + } + + if (parsed.actionType === "mint" || parsed.actionType === "burn") { + exchangeRequests.push({ + destination: datum.destination, + amount: parsed.amount, + min_received: parsed.minReceived ?? 0n, + origin, + reserve_asset: parsed.reserveAsset!, + }); + } else if ( + parsed.actionType === "deposit" || + parsed.actionType === "withdraw" + ) { + treasuryRequests.push(this.buildTreasuryRequest(datum, parsed, origin)); + } else if ( + parsed.actionType === "stake" || + parsed.actionType === "unstake" + ) { + stakeRequests.push({ + destination: datum.destination, + amount: parsed.amount, + min_received: parsed.minReceived ?? 0n, + origin, + forfeit: parsed.forfeit ?? 0n, + }); + } else { + directRequests.push({ + destination: datum.destination, + amount: parsed.amount, + origin, + }); + } + } + + // Only a deposit splits yield. Silently dropping an alpha here would let a + // caller believe it had parameterised a batch that ignores the value. + if (alpha && actionType !== "deposit") { + throw new Error( + `a ${actionType} batch takes no yield-split alpha (only a deposit splits yield)`, + ); + } + if (actionType === "deposit") { + const batchVerdict = screenDepositBatch( + treasuryRequests.map((request) => ({ + actionType: "deposit", + amount: request.amount, + yield: request.yield, + })), + ); + if (!batchVerdict.ok) { + throw new Error( + `${batchVerdict.reason}. Every order batched with it would crash on-chain.`, + ); + } + } + + let action: ProtocolRedeemerV1; + switch (actionType) { + case "mint": + action = { Mint: { requests: exchangeRequests } }; + break; + case "burn": + action = { Burn: { requests: exchangeRequests } }; + break; + case "withdraw": + action = { Withdraw: { requests: treasuryRequests } }; + break; + case "deposit": + action = await this.buildDepositAction(treasuryRequests, alpha); + break; + case "stake": + action = { Stake: { requests: stakeRequests } }; + break; + case "unstake": + action = { Unstake: { requests: stakeRequests } }; + break; + case "direct_mint": + action = { DirectMint: { requests: directRequests } }; + break; + case "direct_burn": + action = { DirectBurn: { requests: directRequests } }; + break; + default: + throw new Error("No orders to process"); + } + + const payload: SignedPayload_ProtocolRedeemerV1 = { + action, + nonce, + }; + const serialized = Data.serialize( + this.signing.SignedPayload_ProtocolRedeemerV1, + payload, + ); + const signedPayload = serialized.toCbor().toString(); + const payloadHash = blake2b_256(HexBlob(signedPayload)); + + return { signedPayload, payloadHash }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Execute Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to execute orders. + * + * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake, + * direct_mint, direct_burn. + */ + async buildExecuteOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + signedPayload: string; + signatures: Tuple_VerificationKey_COSESign1[]; + /** + * Per-order fees retained by the protocol, keyed by `${txHash}#${index}`, + * in the action's output unit (USDr for Mint, reserve for Burn, sUSDr for + * Stake, USDr for Unstake). Computed and locked by the Go backend at the + * order's index time. Missing entries default to 0 (no fee retained). + * The SDK never recomputes a fee — it just subtracts this absolute value + * from each user's destination output. + */ + fees?: Map; + }): Promise { + const { + orderInputs, + signedPayload: signedPayloadCbor, + signatures, + fees, + } = params; + + // Deserialize CBOR hex to object for internal use + const signedPayload = parse( + this.signing.SignedPayload_ProtocolRedeemerV1, + PlutusData.fromCbor(HexBlob(signedPayloadCbor)), + ) as SignedPayload_ProtocolRedeemerV1; + + // 1. Sort and resolve order UTxOs + const sortedOrderInputs = sortOrderInputs(orderInputs); + const orderUtxos = + await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + + // 2. Parse orders and validate same type. The fees map (if any) stamps + // each IOrderInfo with the locked fee that buildXxxExecute will subtract. + const orderInfos = this.parseOrderInfos(orderUtxos, fees); + const actionType = orderInfos[0]!.actionType; + + // 3. Get protocol settings + const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum(); + const settings = this.settingsConfig(parsedProxyDatum.settings); + + // 4. Determine what we need + const needsTreasury = [ + "mint", + "burn", + "withdraw", + "deposit", + "direct_mint", + "direct_burn", + ].includes(actionType); + const needsVault = ["stake", "unstake", "deposit"].includes(actionType); + + // 5. Get script reference inputs + // V1.0 requires the orchestrator and the relevant sub-validator script + const isMintAction = [ + "mint", + "burn", + "direct_mint", + "direct_burn", + ].includes(actionType); + const isStakeAction = ["stake", "unstake"].includes(actionType); + + const scriptHashesNeeded: Record = { + protocol: this.protocolScriptHash, + order: this.orderScriptHash, + }; + if (isMintAction) { + scriptHashesNeeded.protocolMint = this.protocolMintScriptHash; + } else if (isStakeAction) { + scriptHashesNeeded.protocolStake = this.protocolStakeScriptHash; + } else { + scriptHashesNeeded.protocolManagement = this.protocolManagementScriptHash; + } + if (needsTreasury) { + scriptHashesNeeded.treasury = this.treasuryScriptHash; + } + if (needsVault) { + scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash; + } + const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded); + + // 6. Fetch treasury and vault if needed + let treasuryUtxo: Core.TransactionUnspentOutput | undefined; + let parsedTreasuryDatum: V0_1TreasuryDatum | undefined; + if (needsTreasury) { + const treasuryResult = await this.getTreasuryDatum(); + treasuryUtxo = treasuryResult.treasuryUtxo; + parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum; + } + + let vaultUtxo: Core.TransactionUnspentOutput | undefined; + let parsedVaultDatum: TVaultDatum | undefined; + if (needsVault) { + const vaultResult = await this.getVaultDatum(); + vaultUtxo = vaultResult.vaultUtxo; + parsedVaultDatum = vaultResult.parsedVaultDatum; + } + + // 7. Gather wallet UTxOs so we can include them in index calculations. + const walletUtxos = await this.blaze.wallet.getUnspentOutputs(); + const excludedInputIds = new Set(); + const utxoKey = (inp: Core.TransactionInput) => + `${inp.transactionId().toString()}#${inp.index().toString()}`; + // Exclude script inputs (order, treasury, vault) + for (const orderInfo of orderInfos) { + excludedInputIds.add(utxoKey(orderInfo.utxo.input())); + } + if (treasuryUtxo) { + excludedInputIds.add(utxoKey(treasuryUtxo.input())); + } + if (vaultUtxo) { + excludedInputIds.add(utxoKey(vaultUtxo.input())); + } + // Exclude reference inputs (must be disjoint from regular inputs) + excludedInputIds.add(utxoKey(proxyUtxo.input())); + for (const refUtxo of Object.values(refInputs)) { + if (refUtxo) { + excludedInputIds.add(utxoKey(refUtxo.input())); + } + } + const feeUtxos = walletUtxos.filter( + (utxo) => !excludedInputIds.has(utxoKey(utxo.input())), + ); + + // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex). + const allInputRefs: Core.TransactionInput[] = orderInfos.map((o) => + o.utxo.input(), + ); + if (treasuryUtxo) { + allInputRefs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + allInputRefs.push(vaultUtxo.input()); + } + for (const feeUtxo of feeUtxos) { + allInputRefs.push(feeUtxo.input()); + } + + const sortedAllInputRefs = [...allInputRefs].sort((a, b) => { + const txA = a.transactionId().toString(); + const txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + + const findInputIdx = (input: Core.TransactionInput): bigint => { + const idx = sortedAllInputRefs.findIndex( + (r) => + r.transactionId().toString() === input.transactionId().toString() && + r.index() === input.index(), + ); + return BigInt(idx); + }; + + const treasuryInputIdx = treasuryUtxo + ? findInputIdx(treasuryUtxo.input()) + : 0n; + const vaultInputIdx = vaultUtxo + ? findInputIdx(vaultUtxo.input()) + : undefined; + + // 8a. Correlate order inputs to signed request indices via origin fields. + // When all orders are present this produces the same identity mapping as before. + // When a subset is passed (partial execution), it maps each input to the + // correct request index in the signed payload. + const signedRequests = getRequestsFromAction(signedPayload.action); + const originToRequestIdx = new Map(); + for (let i = 0; i < signedRequests.length; i++) { + const o = signedRequests[i]!.origin; + originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i); + } + + const inputToRequests: bigint[] = []; + const requestToOutputs: bigint[] = []; + for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) { + const input = orderInfos[outputIdx]!.utxo.input(); + const key = `${input.transactionId()}#${input.index()}`; + const requestIdx = originToRequestIdx.get(key); + if (requestIdx === undefined) { + throw new Error(`Order input ${key} not found in signed payload`); + } + inputToRequests.push(BigInt(requestIdx)); + requestToOutputs.push(BigInt(outputIdx)); + } + + // 9. Build outputs and compute output indices + const numDestOutputs = orderInfos.length; + + // For deposit with positive yield, the yield pot output is inserted after destinations + let numExtraOutputs = 0; + if (actionType === "deposit") { + const totalYield = orderInfos.reduce( + (sum, o) => sum + (o.yield ?? 0n), + 0n, + ); + if (totalYield > 0n) { + const vaultValue = vaultUtxo!.output().amount(); + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum!.circulating_supply; + // Use the signed split (rc1 echoes alpha; v1_0 recomputes) so pot-output + // existence/indexing agrees with buildDepositExecute and the validator. + const { unstakedYieldShare } = this.resolveDepositYieldShares( + totalYield, + vaultUSDr, + treasuryCirculating, + signedPayload.action, + ); + if (unstakedYieldShare > 0n) { + numExtraOutputs = 1; + } + } + } + + // For unstake, add yield pot output if forfeit is non-zero. + if (actionType === "unstake") { + const totalForfeit = orderInfos.reduce( + (sum, o) => sum + (o.forfeit ?? 0n), + 0n, + ); + if (totalForfeit > 0n) { + numExtraOutputs = 1; + } + } + + const treasuryOutputIdx = needsTreasury + ? BigInt(numDestOutputs + numExtraOutputs) + : 0n; + const vaultOutputIdx = needsVault + ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0)) + : undefined; + + // 10. Build ExtraProtocolRedeemer + const extra: ExtraProtocolRedeemerV1 = { + request_to_outputs: requestToOutputs, + input_to_requests: inputToRequests, + treasury_input_idx: treasuryInputIdx, + treasury_output_idx: treasuryOutputIdx, + vault_input_idx: vaultInputIdx, + vault_output_idx: vaultOutputIdx, + }; + + // 11. Build SignedRedeemer (versions may wrap it in a dispatch enum) + const serializedSignedRedeemer = + this.serializeOrchestratorWithdrawalRedeemer({ + extra, + payload: signedPayload, + signatures, + }); + + const executeRedeemer = Data.serialize( + this.schemas.OrderRedeemerV1, + "Execute", + ); + + // 12. Build the transaction + const tx = this.newOrderTransaction(); + + // Add order inputs with Execute redeemer + for (const orderInfo of orderInfos) { + tx.addInput(orderInfo.utxo, executeRedeemer); + } + + // Add wallet fee inputs explicitly + for (const feeUtxo of feeUtxos) { + tx.addInput(feeUtxo); + } + + // Add reference inputs + tx.addReferenceInput(refInputs.protocol!); + tx.addReferenceInput(refInputs.order!); + tx.addReferenceInput(proxyUtxo); + // V1.0 sub-validator reference inputs + if (refInputs.protocolMint) { + tx.addReferenceInput(refInputs.protocolMint); + } + if (refInputs.protocolStake) { + tx.addReferenceInput(refInputs.protocolStake); + } + if (refInputs.protocolManagement) { + tx.addReferenceInput(refInputs.protocolManagement); + } + if (refInputs.treasury) { + tx.addReferenceInput(refInputs.treasury); + } + if (refInputs.stakingVault) { + tx.addReferenceInput(refInputs.stakingVault); + } + + // Add orchestrator withdrawal with signed redeemer + const orchestratorRewardAccount = Core.RewardAccount.fromCredential( + { + type: Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash, + }, + this.network, + ); + tx.addWithdrawal(orchestratorRewardAccount, 0n, serializedSignedRedeemer); + + // Determine which sub-validator to use based on action type + const subValidatorHash = + actionType === "mint" || + actionType === "burn" || + actionType === "direct_mint" || + actionType === "direct_burn" + ? this.protocolMintScriptHash + : actionType === "stake" || actionType === "unstake" + ? this.protocolStakeScriptHash + : this.protocolManagementScriptHash; // deposit, withdraw + + // Add sub-validator withdrawal with void redeemer + const subValidatorRewardAccount = Core.RewardAccount.fromCredential( + { + type: Core.CredentialType.ScriptHash, + hash: subValidatorHash, + }, + this.network, + ); + const voidRedeemer = Data.Void(); + tx.addWithdrawal(subValidatorRewardAccount, 0n, voidRedeemer); + + // Build per-action-type outputs, minting, and state updates + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const sUSDrAssetId = Core.AssetId( + this.stablecoinPolicyId + this.sUSDrAssetNameHex, + ); + + switch (actionType) { + case "mint": + this.buildMintExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + settings, + ); + break; + case "burn": + this.buildBurnExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + settings, + ); + break; + case "withdraw": + this.buildWithdrawExecute( + tx, + orderInfos, + treasuryUtxo!, + parsedTreasuryDatum!, + settings, + ); + break; + case "deposit": + this.buildDepositExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + vaultUtxo!, + parsedVaultDatum!, + settings, + signedPayload.action, + ); + break; + case "stake": + this.buildStakeExecute( + tx, + orderInfos, + stablecoinAssetId, + sUSDrAssetId, + vaultUtxo!, + parsedVaultDatum!, + ); + break; + case "unstake": + this.buildUnstakeExecute( + tx, + orderInfos, + stablecoinAssetId, + sUSDrAssetId, + vaultUtxo!, + parsedVaultDatum!, + settings, + ); + break; + case "direct_mint": + this.buildDirectMintExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + ); + break; + case "direct_burn": + this.buildDirectBurnExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + ); + break; + } + + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + + await this.applyExecutionValidityBounds(tx, { + actionType, + vaultUtxo, + parsedVaultDatum, + }); + + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Per-Action Execute Builders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + * + * The per-order fee (in USDr, locked at index time) is retained by the + * treasury: the user receives `amount − fee` USDr while `amount` is still + * minted, so the protocol pockets the difference via the treasury balance. + */ + protected buildMintExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + settings: TV1SettingsConfig, + ): void { + // The audited mint contract enforces `mint_amount == total_delivered` + // and `circulating_supply` increases by `total_delivered` (cf. + // utilities.ak::maintain_treasury_mint). So we mint and credit the + // treasury for what users actually receive — `amount − fee` per order — + // while the reserve consumed per request stays based on the full + // signed `amount` (the user paid in reserve for the whole `amount`, + // even though they receive less; the protocol keeps the spread in + // reserve worth — this is the locked fee). + const totalDelivered = orderInfos.reduce( + (sum, o) => sum + (o.amount - o.fee), + 0n, + ); + + // Destination outputs: send `amount − fee` USDr to each destination. + for (const orderInfo of orderInfos) { + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const reserveAssetId = Core.AssetId( + orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1], + ); + const reserveAmount = usdrToReserveCeil(orderInfo.amount, ra); + const userAmount = orderInfo.amount - orderInfo.fee; + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + buildOrderDestinationValue( + orderInfo, + [[reserveAssetId, reserveAmount]], + [[stablecoinAssetId, userAmount]], + ), + ); + } + + // Mint USDr — exactly what was delivered (contract invariant). + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalDelivered]]), + Data.Void(), + ); + + // Reserve deltas: based on the full signed amounts (unchanged by fees). + const reserveDeltas = computeReserveDeltas(orderInfos, settings); + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + totalDelivered, + ); + } + + /** + * Burn: USDr burned, reserve sent to destinations. + * + * The audited contract decreases circulating_supply by the FULL signed + * `amount` (the user burns the whole `amount` of USDr) and the reserve + * outflow per asset equals what the user actually receives. The locked + * fee (in reserve units) stays in the treasury — by paying out + * `usdr_to_reserve(amount, ra) − fee` instead of the full natural + * amount, the protocol pockets the difference. + */ + protected buildBurnExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + settings: TV1SettingsConfig, + ): void { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send `usdr_to_reserve(amount, ra) − fee` reserve + // to each destination. Track the actually-delivered amount per reserve + // asset so we can subtract the fee from the treasury reserve outflow. + const deliveredByAsset = new Map(); + for (const orderInfo of orderInfos) { + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const reserveAssetId = Core.AssetId( + orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1], + ); + const naturalReserve = usdrToReserve(-orderInfo.amount, ra); + const reserveAmount = naturalReserve - orderInfo.fee; + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + buildOrderDestinationValue( + orderInfo, + [[stablecoinAssetId, -orderInfo.amount]], + [[reserveAssetId, reserveAmount]], + ), + ); + const assetKey = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1]; + deliveredByAsset.set( + assetKey, + (deliveredByAsset.get(assetKey) ?? 0n) + reserveAmount, + ); + } + + // Burn USDr — full signed amount per request (totalAmount is negative). + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), + Data.Void(), + ); + + // Reserve deltas: out by what we actually delivered (negated). The + // protocol keeps the per-order fee inside the treasury balance. + const reserveDeltas = new Map(); + for (const [assetKey, delivered] of deliveredByAsset.entries()) { + reserveDeltas.set(assetKey, -delivered); + } + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + totalAmount, + ); + } + + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + protected buildWithdrawExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + settings: TV1SettingsConfig, + ): void { + // Destination outputs: send reserve tokens to each destination + for (const orderInfo of orderInfos) { + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const reserveAssetId = Core.AssetId( + orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1], + ); + const reserveAmount = usdrToReserve(orderInfo.amount, ra); + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + buildOrderDestinationValue( + orderInfo, + [], + [[reserveAssetId, reserveAmount]], + ), + ); + } + + // Update treasury: reserve decreases, no circulating_supply change + const reserveDeltas = computeReserveDeltas(orderInfos, settings, true); + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + 0n, + ); + } + + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + protected buildDepositExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: TVaultDatum, + settings: TV1SettingsConfig, + action: ProtocolRedeemerV1, + ): void { + const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n); + + // Calculate yield split. rc1 echoes the COSE-signed alpha; v1_0 recomputes + // from live state. Must NOT re-derive independently from vault/treasury — + // the validator checks the split against the signed action. + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + + const { stakedYieldShare, unstakedYieldShare } = + this.resolveDepositYieldShares( + totalYield, + vaultUSDr, + treasuryCirculating, + action, + ); + + let remainingOrderUSDrToBurn = + unstakedYieldShare < 0n ? -unstakedYieldShare : 0n; + + // Destination outputs: return any order surplus after protocol consumption. + for (const orderInfo of orderInfos) { + const reserveAssetId = Core.AssetId( + orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1], + ); + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const yieldValue = orderInfo.yield ?? 0n; + const usdrBacking = + yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount; + const reserveAmount = usdrToReserve(usdrBacking, ra); + const consumedAssets: Array<[Core.AssetId, bigint]> = [ + [reserveAssetId, reserveAmount], + ]; + + if (remainingOrderUSDrToBurn > 0n) { + const orderUSDr = + orderInfo.utxo + .output() + .amount() + .multiasset() + ?.get(stablecoinAssetId) ?? 0n; + const consumedUSDr = + orderUSDr < remainingOrderUSDrToBurn + ? orderUSDr + : remainingOrderUSDrToBurn; + if (consumedUSDr > 0n) { + consumedAssets.push([stablecoinAssetId, consumedUSDr]); + remainingOrderUSDrToBurn -= consumedUSDr; + } + } + + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + buildOrderDestinationValue(orderInfo, consumedAssets), + ); + } + + if (totalYield > 0n) { + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalYield]]), + Data.Void(), + ); + + if (unstakedYieldShare > 0n) { + // The yield pot is a script address in production (WTB-1172), so + // build the output directly with NoDatum. + addDestinationOutput( + tx, + this.network, + { address: settings.unstaked_yield_pot, datum: "NoDatum" }, + makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare]), + ); + } + } else if (totalYield < 0n) { + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalYield]]), + Data.Void(), + ); + } + + // Update treasury + const reserveDeltas = new Map(); + for (const orderInfo of orderInfos) { + const assetId = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1]; + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const yieldValue = orderInfo.yield ?? 0n; + + const usdrBacking = + yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount; + + const reserveAmount = usdrToReserve(usdrBacking, ra); + reserveDeltas.set( + assetId, + (reserveDeltas.get(assetId) ?? 0n) + reserveAmount, + ); + } + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + totalYield, + ); + + // Update vault. Datum construction is delegated so versions with a + // yield-diffusion window (v1_1_rc1) can set it from the batch's requests; + // the v1_0 default just moves the vault USDr by the staked share. + this.updateDepositVaultOutput(tx, vaultUtxo, parsedVaultDatum, { + stakedYieldShare, + totalYield, + orderInfos, + }); + } + + /** + * Version hook: lock the post-deposit vault output. v1_0 / v1_0_rc1 keep the + * one-field datum and simply add `stakedYieldShare` USDr to the vault. + * Versions with time-diffused yield override this to roll the staked share + * into the diffusion window (`validate_deposit_diffusion` in deposit.ak). + */ + protected updateDepositVaultOutput( + tx: TxBuilder, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: TVaultDatum, + ctx: { + stakedYieldShare: bigint; + totalYield: bigint; + orderInfos: IOrderInfo[]; + }, + ): void { + this.updateVaultOutput( + tx, + vaultUtxo, + parsedVaultDatum, + 0n, + ctx.stakedYieldShare, + ); + } + + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + * + * Stake is not fee-filtered (no protocol fee retained on stake), so the + * vault receives the full `amount` USDr and mints sUSDr at the natural + * rate. + */ + protected buildStakeExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + sUSDrAssetId: Core.AssetId, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: TVaultDatum, + ): void { + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + // Rate is quoted against settled backing (v1_0: full balance; v1_1_rc1: + // balance minus not-yet-diffused pending yield). + const settledBacking = this.settledVaultBacking( + parsedVaultDatum, + vaultUSDr, + ); + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + + let totalUSDrToVault = 0n; + let totalSUSDrMinted = 0n; + + for (const orderInfo of orderInfos) { + const usDrToVault = orderInfo.amount; + totalUSDrToVault += usDrToVault; + + let sUSDrAmount: bigint; + if (circulatingSUSDr === 0n || settledBacking === 0n) { + // Bootstrap rate is 1:1 (cf. stake.ak). + sUSDrAmount = usDrToVault; + } else { + sUSDrAmount = (usDrToVault * circulatingSUSDr) / settledBacking; + } + totalSUSDrMinted += sUSDrAmount; + + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + buildOrderDestinationValue( + orderInfo, + [[stablecoinAssetId, usDrToVault]], + [[sUSDrAssetId, sUSDrAmount]], + ), + ); + } + + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]), + Data.Void(), + ); + + this.updateVaultOutput( + tx, + vaultUtxo, + parsedVaultDatum, + totalSUSDrMinted, + totalUSDrToVault, + ); + } + + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + * V1_0: Supports forfeit parameter - forfeited USDr goes to yield pot. + */ + protected buildUnstakeExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + sUSDrAssetId: Core.AssetId, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: TVaultDatum, + settings: TV1SettingsConfig, + ): void { + const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + // Entitlement is quoted against settled backing (v1_0: full balance; + // v1_1_rc1: balance minus not-yet-diffused pending yield). + const settledBacking = this.settledVaultBacking( + parsedVaultDatum, + vaultUSDr, + ); + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + + if (circulatingSUSDr === 0n) { + throw new Error("Cannot unstake: no sUSDr in circulation"); + } + + // The user receives `entitled − forfeit` USDr. Forfeit goes to the + // unstaked yield pot; the vault decreases by the full natural entitlement + // for each order. (Unstake is not fee-filtered.) + let totalUSDrLeavingVault = 0n; + let totalForfeit = 0n; + + for (const orderInfo of orderInfos) { + const uSDrEntitled = + (orderInfo.amount * settledBacking) / circulatingSUSDr; + const forfeit = orderInfo.forfeit ?? 0n; + const uSDrAmount = uSDrEntitled - forfeit; + + totalUSDrLeavingVault += uSDrEntitled; + totalForfeit += forfeit; + + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + buildOrderDestinationValue( + orderInfo, + [[sUSDrAssetId, orderInfo.amount]], + [[stablecoinAssetId, uSDrAmount]], + ), + ); + } + + // Send forfeited USDr to yield pot if any + const totalYieldPot = totalForfeit; + if (totalYieldPot > 0n) { + // Script pot in production (WTB-1172) — see buildDepositExecute. + addDestinationOutput( + tx, + this.network, + { address: settings.unstaked_yield_pot, datum: "NoDatum" }, + makeValue(MIN_LOVELACE, [stablecoinAssetId, totalYieldPot]), + ); + } + + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]), + Data.Void(), + ); + + this.updateVaultOutput( + tx, + vaultUtxo, + parsedVaultDatum, + -totalSUSDrBurned, + -totalUSDrLeavingVault, + ); + } + + /** + * DirectMint: Mint USDr without reserve asset flow. + * USDr is minted to destinations, treasury circulating_supply increases. + * NO reserve asset changes. + */ + protected buildDirectMintExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + ): void { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send USDr to each destination + for (const orderInfo of orderInfos) { + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + buildOrderDestinationValue( + orderInfo, + [], + [[stablecoinAssetId, orderInfo.amount]], + ), + ); + } + + // Mint USDr + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), + Data.Void(), + ); + + // Update treasury: circulating_supply increases, NO reserve changes + this.updateTreasuryOutputNoReserve( + tx, + treasuryUtxo, + parsedTreasuryDatum, + totalAmount, + ); + } + + /** + * DirectBurn: Burn USDr without reserve asset flow. + * USDr is burned, treasury circulating_supply decreases. + * NO reserve asset changes, NO destination outputs (fiat sent off-chain). + */ + protected buildDirectBurnExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + ): void { + // totalAmount is negative for burns (from classifyOrderAction) + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Fiat is sent off-chain. On-chain, return the order value minus the + // burned USDr to the destination. + for (const orderInfo of orderInfos) { + addDestinationOutput( + tx, + this.network, + orderInfo.datum.destination, + buildOrderDestinationValue(orderInfo, [ + [stablecoinAssetId, -orderInfo.amount], + ]), + ); + } + + // Burn USDr (totalAmount is negative) + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), + Data.Void(), + ); + + // Update treasury: circulating_supply decreases, NO reserve changes + this.updateTreasuryOutputNoReserve( + tx, + treasuryUtxo, + parsedTreasuryDatum, + totalAmount, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Cancel Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to cancel orders. + */ + async buildCancelOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + destination?: Core.Address; + availableSigners?: Set; + versionHint?: TProtocolVersion; // version of the orders to cancel. Optional, only to ensure correct datum parsing. + }): Promise { + const { orderInputs, destination, availableSigners, versionHint } = params; + + const orderUtxos = + await this.blaze.provider.resolveUnspentOutputs(orderInputs); + + if (orderUtxos.length === 0) { + throw new Error("No orders to cancel"); + } + + const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput + ? new Map([ + [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput], + ]) + : undefined; + + const orderRefInputs = await resolveOrderReferenceInputs( + this.blaze, + orderUtxos, + cachedOrderRefs, + this.scriptDeploymentAddress, + ); + + const cancelRedeemer = Data.serialize( + this.schemas.OrderRedeemerV1, + "Cancel", + ); + const destAddress = + destination ?? (await this.blaze.wallet.getChangeAddress()); + + const tx = this.newOrderTransaction(); + + for (const orderRefInput of orderRefInputs.values()) { + tx.addReferenceInput(orderRefInput); + } + + // cache current version of order script reference input + const currentOrderRefInput = orderRefInputs.get(this.orderScriptHash); + if (currentOrderRefInput && !this.cachedReferenceInputs.orderRefInput) { + this.cachedReferenceInputs.orderRefInput = currentOrderRefInput; + } + + const requiredSigners = new Set(); + + for (const utxo of orderUtxos) { + const owner = await parseCancelOwner(utxo, versionHint); + for (const keyHash of getSignatureKeyHashesFromMultisigScript(owner)) { + requiredSigners.add(keyHash); + } + + tx.addInput(utxo, cancelRedeemer); + const outputValue = utxo.output().amount(); + addDirectOutput(tx, destAddress, outputValue); + } + + const effectiveSigners = availableSigners + ? new Set([...requiredSigners].filter((k) => availableSigners.has(k))) + : requiredSigners; + + for (const keyHash of effectiveSigners) { + tx.addRequiredSigner(Ed25519KeyHashHex(keyHash)); + } + + return tx; + } + + /** + * Build a transaction to recover funds from invalidated orders. + * Only works when the protocol has been upgraded and the order validator + * no longer matches the current protocol logic. + * + * IMPORTANT: Only works for orders with simple Signature owners. + * + * Output-at-same-index constraint: Each output must be at the same + * transaction index as its corresponding input. + */ + async buildInvalidatedOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + }): Promise { + const { orderInputs } = params; + + const orderUtxos = + await this.blaze.provider.resolveUnspentOutputs(orderInputs); + + if (orderUtxos.length === 0) { + throw new Error("No orders to invalidate"); + } + + // Resolve references from the validators that actually hold the supplied + // orders. A current SDK instance may be recovering same-schema orders left + // at a superseded validator, so its own orderScriptHash is not necessarily + // the script needed to spend these inputs. + const cachedOrderRefs = this.cachedReferenceInputs.orderRefInput + ? new Map([ + [this.orderScriptHash, this.cachedReferenceInputs.orderRefInput], + ]) + : undefined; + const orderRefInputs = await resolveOrderReferenceInputs( + this.blaze, + orderUtxos, + cachedOrderRefs, + this.scriptDeploymentAddress, + ); + + // The proxy UTxO is always required as a reference input. If the live + // proxy datum no longer matches this SDK's schema, skip the client-side + // upgrade check and rely on the validator's on-chain check instead. + const { proxyUtxo, proxyDatum } = await this.getRawProxyDatum(); + try { + const parsedProxyDatum = parse(this.schemas.ProxyDatumV1, proxyDatum); + const registry = this.settingsRegistry(parsedProxyDatum.settings); + const isProtocolUpgraded = + parsedProxyDatum.logic !== this.protocolScriptHash; + const hasActiveOrder = [...orderRefInputs.keys()].some( + (orderScriptHash) => orderScriptHash === registry.order, + ); + + if (hasActiveOrder && !isProtocolUpgraded) { + throw new Error( + "Cannot use Invalidated redeemer: protocol has not been upgraded", + ); + } + } catch (err) { + if ( + err instanceof Error && + err.message === + "Cannot use Invalidated redeemer: protocol has not been upgraded" + ) { + throw err; + } + } + + const invalidatedRedeemer = Data.serialize( + this.schemas.OrderRedeemerV1, + "Invalidated", + ); + + // The order validator's Invalidated branch enforces + // `outputs[index_of(self_input)] == owner_address`. The input index + // is computed against the *full* canonical input sort, including any + // wallet fee inputs. To make the alignment deterministic, pre-select + // a single wallet UTxO to act as the fee input, build the canonical + // sort across [orders + fee UTxO] up front, and lay outputs at + // matching positions: owner payouts at order indices, a wallet + // filler at the fee UTxO's index. Modeled on buildExecuteOrdersTx. + const walletUtxos = await this.blaze.wallet.getUnspentOutputs(); + const walletAddress = await this.blaze.wallet.getChangeAddress(); + const utxoKey = (inp: Core.TransactionInput) => + `${inp.transactionId().toString()}#${inp.index().toString()}`; + const excludedInputIds = new Set([ + utxoKey(proxyUtxo.input()), + ...[...orderRefInputs.values()].map((refInput) => + utxoKey(refInput.input()), + ), + ...orderUtxos.map((u) => utxoKey(u.input())), + ]); + // 5 ADA buffer comfortably covers tx fees for any realistic invalidate + // batch (1-20 inputs) plus min-UTxO for the change output Blaze appends. + // Prefer an ADA-only input, but safely support a token-bearing one when + // its explicit filler output still satisfies the ledger's min-ADA rule. + const FEE_BUFFER = 5_000_000n; + const feeCandidates = walletUtxos + .filter((u) => !excludedInputIds.has(utxoKey(u.input()))) + .sort((a, b) => { + const aHasAssets = (a.output().amount().multiasset()?.size ?? 0) > 0; + const bHasAssets = (b.output().amount().multiasset()?.size ?? 0) > 0; + return Number(aHasAssets) - Number(bHasAssets); + }); + const feeUtxo = feeCandidates.find((u) => { + const inputValue = u.output().amount(); + if (inputValue.coin() < FEE_BUFFER) return false; + + const fillerValue = new Core.Value( + inputValue.coin() - FEE_BUFFER, + inputValue.multiasset(), + ); + const fillerOutput = new Core.TransactionOutput( + walletAddress, + fillerValue, + ); + return ( + fillerValue.coin() >= + calculateMinAda(fillerOutput, this.blaze.params.coinsPerUtxoByte) + ); + }); + if (!feeUtxo) { + throw new Error( + "buildInvalidatedOrdersTx: no wallet UTxO can cover fees while retaining its minimum ADA", + ); + } + + type TSortedItem = + | { + kind: "order"; + utxo: Core.TransactionUnspentOutput; + ownerKeyHash: string; + } + | { kind: "fee"; utxo: Core.TransactionUnspentOutput }; + + const items: TSortedItem[] = orderUtxos.map((utxo) => { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1; + if (!("Signature" in datum.owner)) { + throw new Error( + "Invalidated redeemer only supports simple Signature owners", + ); + } + return { + kind: "order" as const, + utxo, + ownerKeyHash: datum.owner.Signature.key_hash, + }; + }); + items.push({ kind: "fee" as const, utxo: feeUtxo }); + items.sort((a, b) => { + const txA = a.utxo.input().transactionId().toString(); + const txB = b.utxo.input().transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.utxo.input().index()) - Number(b.utxo.input().index()); + }); + + const tx = this.newOrderTransaction(); + for (const orderRefInput of orderRefInputs.values()) { + tx.addReferenceInput(orderRefInput); + } + tx.addReferenceInput(proxyUtxo); + + for (const item of items) { + if (item.kind === "order") { + const ownerCredential = Core.Credential.fromCore({ + type: Core.CredentialType.KeyHash, + hash: Core.Hash28ByteBase16(item.ownerKeyHash), + }); + const ownerAddress = addressFromCredentials( + this.network, + ownerCredential, + ); + tx.addInput(item.utxo, invalidatedRedeemer); + // Owner gets back the order's full value at the matching output + // index. Per-input check `output_ada >= input_ada - tx.fee` holds + // trivially because output == input here; the tx fee is absorbed + // by the filler+change pair coming out of the wallet fee input. + addDirectOutput(tx, ownerAddress, item.utxo.output().amount()); + } else { + tx.addInput(item.utxo); + // Wallet filler at the fee UTxO's canonical index. Sends value + // back to the wallet minus FEE_BUFFER, which Blaze then splits + // into the tx fee and an automatic change output (appended after + // all explicit outputs, beyond any script-input index — so no + // validator ever reads it). + const inputValue = item.utxo.output().amount(); + const fillerValue = new Core.Value( + inputValue.coin() - FEE_BUFFER, + inputValue.multiasset(), + ); + addDirectOutput(tx, walletAddress, fillerValue); + } + } + + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Protected Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Parse order UTxOs into IOrderInfo objects and validate they are all the + * same type. The optional `fees` map (keyed by `${txHash}#${outputIndex}`) + * stamps each order with its locked fee in the action's output unit. + * Missing entries default to 0 (no fee retained). + */ + protected parseOrderInfos( + orderUtxos: Core.TransactionUnspentOutput[], + fees?: Map, + ): IOrderInfo[] { + const orderInfos: IOrderInfo[] = []; + let expectedActionType: TOrderActionType | null = null; + + for (const utxo of orderUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(this.schemas.OrderDatumV1, datumData) as OrderDatumV1; + const classified = this.classifyOrderAction(datum); + + if (expectedActionType === null) { + expectedActionType = classified.actionType; + } else if (expectedActionType !== classified.actionType) { + throw new Error( + "Mixed order types in inputs. All orders must be of the same type.", + ); + } + + const input = utxo.input(); + const key = `${input.transactionId().toString()}#${input.index().toString()}`; + const fee = fees?.get(key) ?? 0n; + + orderInfos.push({ + utxo, + datum, + actionType: classified.actionType, + amount: classified.amount, + yield: classified.yield, + forfeit: classified.forfeit, + minReceived: classified.minReceived, + reserveAsset: classified.reserveAsset, + fee, + }); + } + + if (orderInfos.length === 0) { + throw new Error("No orders to execute"); + } + + return orderInfos; + } + + /** + * Full executability screen for one open order (WTB-1764): the datum + * predicates plus the two value-dependent aborts (input funding, unsatisfiable + * `min_received`). Every consumer that decides whether an order may join a + * batch should call this rather than `screenOrderAction` alone — the datum-only + * screen cannot see an underfunded UTxO, which is the cheapest batch-killer. + * + * Reads settings for the reserve multiplier on mint/burn. `getParsedProxyDatum` + * memoises, so the per-order cost after the first call is local arithmetic — + * safe for the approvals cron's whole-address sweep. + */ + async screenOrderForExecution( + utxo: Core.TransactionUnspentOutput, + action: IClassifiedOrderAction, + ): Promise { + const datumVerdict = screenOrderAction(action); + if (!datumVerdict.ok) { + return datumVerdict; + } + const settings = await this.getValidatedScreeningSettings(); + return screenOrderUtxoFacts( + action, + await this.deriveOrderUtxoFacts(utxo, action, settings), + ); + } + + /** + * Derive the value-dependent facts {@link screenOrderUtxoFacts} needs. Mirrors + * the per-action consumed asset and ceiling the validators use; see that + * function's doc comment for the `.ak` line references. + */ + protected async deriveOrderUtxoFacts( + utxo: Core.TransactionUnspentOutput, + action: IClassifiedOrderAction, + settings: TV1SettingsConfig, + ): Promise { + const multiasset = utxo.output().amount().multiasset(); + const quantityOf = (assetId: Core.AssetId): bigint => + multiasset?.get(assetId) ?? 0n; + // These are deployment settings, not datum fields. Let invalid trusted + // configuration and provider failures propagate to the caller instead of + // hiding an operational outage as a poisoned order. + const usdrAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + + // Only deterministic datum-derived errors are a rejection: an unknown + // reserve asset or an invalid asset id carried by the order datum. + try { + return this.deriveOrderUtxoFactsUnsafe( + action, + settings, + quantityOf, + usdrAssetId, + ); + } catch (error) { + return { + consumedRequired: 0n, + consumedLocked: 0n, + unresolvable: error instanceof Error ? error.message : String(error), + }; + } + } + + private deriveOrderUtxoFactsUnsafe( + action: IClassifiedOrderAction, + settings: TV1SettingsConfig, + quantityOf: (assetId: Core.AssetId) => bigint, + usdrAssetId: Core.AssetId, + ): IOrderUtxoFacts { + switch (action.actionType) { + case "stake": + return { + consumedRequired: action.amount, + consumedLocked: quantityOf(usdrAssetId), + }; + case "unstake": + return { + consumedRequired: action.amount, + consumedLocked: quantityOf( + Core.AssetId(this.stablecoinPolicyId + this.sUSDrAssetNameHex), + ), + }; + case "mint": { + if (!action.reserveAsset) { + return { consumedRequired: 0n, consumedLocked: 0n }; + } + const ra = findReserveAsset(settings, action.reserveAsset); + return { + consumedRequired: usdrToReserveCeil(action.amount, ra), + consumedLocked: quantityOf( + Core.AssetId(action.reserveAsset[0] + action.reserveAsset[1]), + ), + // mint.ak:140 passes request.amount as max_delivered. + maxDelivered: action.amount, + }; + } + case "burn": { + // classifyOrderAction negates ORedeem.amount; the validator compares the + // raw datum amount against the locked USDr. + const rawAmount = -action.amount; + if (!action.reserveAsset) { + return { + consumedRequired: rawAmount, + consumedLocked: quantityOf(usdrAssetId), + }; + } + const ra = findReserveAsset(settings, action.reserveAsset); + return { + consumedRequired: rawAmount, + consumedLocked: quantityOf(usdrAssetId), + // burn.ak:136 passes usdr_to_reserve(|amount|, ra) as max_delivered. + maxDelivered: usdrToReserve(rawAmount, ra), + }; + } + case "direct_burn": + // direct_burn DOES have a per-order funding predicate + // (`v1_0/direct_burn.ak:50`), unlike direct_mint. Same sign flip as burn. + // Unreachable from the approvals cron, which routes direct actions + // out-of-scope, but getSignedPayloadFromOrderInputs builds direct-burn + // batches for the treasury-admin flow. + return { + consumedRequired: -action.amount, + consumedLocked: quantityOf(usdrAssetId), + }; + case "deposit": { + if (!action.reserveAsset) { + return { consumedRequired: 0n, consumedLocked: 0n }; + } + const ra = findReserveAsset(settings, action.reserveAsset); + const usdrBacking = + (action.yield ?? 0n) >= 0n + ? action.amount + (action.yield ?? 0n) + : action.amount; + return { + consumedRequired: usdrToReserve(usdrBacking, ra), + consumedLocked: quantityOf( + Core.AssetId(action.reserveAsset[0] + action.reserveAsset[1]), + ), + }; + } + case "withdraw": + if (action.reserveAsset) { + // Withdrawal consumes treasury funds, but the order's asset must be + // registered or buildWithdrawExecute will fail after signing. + findReserveAsset(settings, action.reserveAsset); + } + return { consumedRequired: 0n, consumedLocked: 0n }; + default: + // direct_mint has no per-order funding predicate. + return { consumedRequired: 0n, consumedLocked: 0n }; + } + } + + private async getValidatedScreeningSettings(): Promise { + const settings = this.settingsConfig(await this.getVersionSettings()); + for (const reserveAsset of settings.reserve_assets) { + if (reserveAsset.numerator === 0n) { + throw new Error("Reserve asset numerator must be non-zero"); + } + if (reserveAsset.denominator === 0n) { + throw new Error("Reserve asset denominator must be non-zero"); + } + Core.AssetId(reserveAsset.asset[0] + reserveAsset.asset[1]); + } + return settings; + } + + /** + * Classify an order action from its datum. + */ + protected classifyOrderAction(datum: OrderDatumV1): IClassifiedOrderAction { + const action = datum.action; + if ("OMint" in action) { + return { + actionType: "mint", + amount: action.OMint.amount, + minReceived: action.OMint.min_received, + reserveAsset: action.OMint.reserve_asset, + isTreasuryAction: true, + }; + } else if ("ORedeem" in action) { + return { + actionType: "burn", + amount: -action.ORedeem.amount, + minReceived: action.ORedeem.min_received, + reserveAsset: action.ORedeem.reserve_asset, + isTreasuryAction: true, + }; + } else if ("ODeposit" in action) { + return { + actionType: "deposit", + amount: action.ODeposit.principal, + yield: action.ODeposit.yield, + reserveAsset: action.ODeposit.reserve_asset, + isTreasuryAction: true, + }; + } else if ("OWithdraw" in action) { + return { + actionType: "withdraw", + amount: action.OWithdraw.amount, + reserveAsset: action.OWithdraw.reserve_asset, + isTreasuryAction: true, + }; + } else if ("OStake" in action) { + return { + actionType: "stake", + amount: action.OStake.amount, + minReceived: action.OStake.min_received, + isTreasuryAction: false, + }; + } else if ("OUnstake" in action) { + return { + actionType: "unstake", + amount: action.OUnstake.amount, + forfeit: action.OUnstake.forfeit, + minReceived: action.OUnstake.min_received, + isTreasuryAction: false, + }; + } else if ("ODirectMint" in action) { + return { + actionType: "direct_mint", + amount: action.ODirectMint.amount, + isTreasuryAction: true, + }; + } else if ("ODirectBurn" in action) { + return { + actionType: "direct_burn", + amount: -action.ODirectBurn.amount, + isTreasuryAction: true, + }; + } + throw new Error("Unknown order action type"); + } + + /** + * Build the signed-payload treasury request for a deposit/withdraw order. + * + * v1_0 / v1_0_rc1 emit the four-field request. Versions whose on-chain + * `TreasuryRequestV1` carries extra fields (v1_1_rc1's `diffusion_end`, which + * the validator requires the signed request to echo from the order datum) + * override this to add them; the return stays assignable to the v1_0 shape, + * and the extra fields are encoded by the version's own payload schema value. + */ + protected buildTreasuryRequest( + datum: OrderDatumV1, + parsed: IClassifiedOrderAction, + origin: IRequestOrigin, + ): TreasuryRequestV1 { + return { + destination: datum.destination, + amount: parsed.amount, + yield: parsed.yield ?? 0n, + origin, + reserve_asset: parsed.reserveAsset!, + }; + } + + /** + * Update treasury output with new reserve and circulating supply. + */ + protected updateTreasuryOutput( + tx: TxBuilder, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + reserveDeltas: Map, + circulatingSupplyDelta: bigint, + ): void { + const newTreasuryDatum: V0_1TreasuryDatum = { + circulating_supply: + parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta, + }; + const serializedTreasuryDatum = Data.serialize( + V0_1TreasuryDatum, + newTreasuryDatum, + ); + + tx.addInput(treasuryUtxo, Data.Void()); + + const treasuryValue = treasuryUtxo.output().amount(); + + let newTreasuryValue = makeValue(treasuryValue.coin(), [ + this.treasuryNFTAssetId, + 1n, + ]); + + const modifiedAssetIds = new Set([ + this.treasuryNFTAssetId.toString(), + ]); + for (const [reserveAssetId, delta] of reserveDeltas.entries()) { + const currentReserve = + treasuryValue.multiasset()?.get(Core.AssetId(reserveAssetId)) ?? 0n; + const newReserve = currentReserve + delta; + newTreasuryValue = Value.merge( + newTreasuryValue, + makeValue(0n, [Core.AssetId(reserveAssetId), newReserve]), + ); + modifiedAssetIds.add(reserveAssetId); + } + + const existingMultiasset = treasuryValue.multiasset(); + if (existingMultiasset) { + for (const [assetId, amount] of existingMultiasset.entries()) { + if (!modifiedAssetIds.has(assetId)) { + newTreasuryValue = Value.merge( + newTreasuryValue, + makeValue(0n, [Core.AssetId(assetId), amount]), + ); + } + } + } + tx.lockAssets( + this.treasuryAddress, + newTreasuryValue, + serializedTreasuryDatum, + ); + } + + /** + * Update treasury output without reserve changes (for DirectMint/DirectBurn). + */ + protected updateTreasuryOutputNoReserve( + tx: TxBuilder, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + circulatingSupplyDelta: bigint, + ): void { + const newTreasuryDatum: V0_1TreasuryDatum = { + circulating_supply: + parsedTreasuryDatum.circulating_supply + circulatingSupplyDelta, + }; + const serializedTreasuryDatum = Data.serialize( + V0_1TreasuryDatum, + newTreasuryDatum, + ); + + tx.addInput(treasuryUtxo, Data.Void()); + + // Preserve exact treasury value (no reserve changes) + const treasuryValue = treasuryUtxo.output().amount(); + tx.lockAssets(this.treasuryAddress, treasuryValue, serializedTreasuryDatum); + } + + /** + * Update vault output with new circulating_susdr and USDr balance. + * + * The datum construction is delegated to the version's + * `buildUpdatedVaultDatum` seam; the value rebuild below is + * datum-shape-agnostic and shared by all versions. + */ + protected updateVaultOutput( + tx: TxBuilder, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: TVaultDatum, + sUSDrDelta: bigint, + uSDrDelta: bigint = 0n, + ): void { + this.updateVaultOutputWithDatum( + tx, + vaultUtxo, + this.buildUpdatedVaultDatum(parsedVaultDatum, sUSDrDelta), + uSDrDelta, + ); + } + + /** + * Lock the vault output with an already-constructed datum, rebuilding its + * USDr balance by `uSDrDelta`. The value rebuild is datum-shape-agnostic; + * versions whose datum update needs more than `sUSDrDelta` (v1_1_rc1's + * deposit diffusion window) build the datum themselves and call this. + */ + protected updateVaultOutputWithDatum( + tx: TxBuilder, + vaultUtxo: Core.TransactionUnspentOutput, + newVaultDatum: TVaultDatum, + uSDrDelta: bigint = 0n, + ): void { + const serializedVaultDatum = Data.serialize( + this.schemas.VaultDatumV1, + newVaultDatum, + ); + + tx.addInput(vaultUtxo, Data.Void()); + + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + + let newVaultValue = vaultUtxo.output().amount(); + if (uSDrDelta !== 0n) { + const currentUSDr = + newVaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const newUSDr = currentUSDr + uSDrDelta; + newVaultValue = makeValue(newVaultValue.coin(), [ + this.stakingVaultNFTAssetId, + 1n, + ]); + if (newUSDr > 0n) { + newVaultValue = Value.merge( + newVaultValue, + makeValue(0n, [stablecoinAssetId, newUSDr]), + ); + } + const existingMultiasset = vaultUtxo.output().amount().multiasset(); + if (existingMultiasset) { + for (const [assetId, amount] of existingMultiasset.entries()) { + if ( + assetId !== this.stakingVaultNFTAssetId.toString() && + assetId !== stablecoinAssetId.toString() + ) { + newVaultValue = Value.merge( + newVaultValue, + makeValue(0n, [Core.AssetId(assetId), amount]), + ); + } + } + } + } + + tx.lockAssets( + this.stakingVaultAddress, + newVaultValue, + serializedVaultDatum, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Reserve Asset Conversion Utilities + // ───────────────────────────────────────────────────────────────────────────── + + protected async getVersionSettings(): Promise { + const { parsedProxyDatum } = await this.getParsedProxyDatum(); + return parsedProxyDatum.settings; + } +} diff --git a/modules/realfi-partner-sdk/src/sdk/v1/order-sanity.ts b/modules/realfi-partner-sdk/src/sdk/v1/order-sanity.ts new file mode 100644 index 0000000000..2789a02744 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v1/order-sanity.ts @@ -0,0 +1,313 @@ +/** + * Static, off-chain mirror of the per-request predicates the v1-family + * protocol validators apply to each request in an execution batch. + * + * Why this exists (WTB-1764): `process_exchange_requests`, + * `process_stake_requests` and `process_treasury_requests` + * (`contracts/lib/v1_0/utilities.ak`) validate every request in the batch + * inside one `zip_fold` via `expect validation(request)`. There is no + * per-request graceful exclusion — the first request that fails its predicate + * crashes the WHOLE execution transaction, taking down every valid order + * bundled alongside it. Order creation is permissionless and has no on-chain + * gate (sending funds + an inline datum to the order script address is a plain + * payment; no validator runs on receipt), so a single order carrying, say, + * `min_received = 0` is a cheap, repeatable denial-of-service against the whole + * execution pipeline. + * + * Every request that reaches a batch must therefore be screened off-chain + * first. This module is the one place that mirrors the on-chain predicates, so + * a validator change has a single off-chain counterpart to update. + * + * Two screens live here, because the validators abort the whole transaction from + * two kinds of check and only one of them is answerable from the datum alone: + * + * 1. {@link screenOrderAction} — the `process_*_requests` per-request predicates. + * Pure, datum-only. + * 2. {@link screenOrderUtxoFacts} — the checks that also need the order UTxO's + * value and (for mint/burn) the reserve multiplier: input funding and the + * statically-knowable deliverability ceiling. Callers derive the facts, since + * that is where the asset ids and settings live; `RealfiSDKV1Family` + * .screenOrderForExecution does both in one call. + * + * Still deliberately NOT covered, because it is not decidable from the order in + * isolation: predicates that move with live protocol state — unstake's + * `forfeit <= request_usdr`, and the stake/unstake deliverability ceilings, + * which follow the vault exchange rate between screening and execution. + * + * A caller with a narrower policy (the approvals cron accepts just the + * zero-principal, positive-yield deposit shape) also keeps that policy to + * itself; folding it in here would reject orders other first-party flows + * legitimately create and execute. + * + * | action | on-chain predicate | source | + * | -------- | ------------------------------------------------------- | ----------------------------- | + * | mint | `amount > 0 && min_received > 0` | `v1_0/mint.ak:86` | + * | burn | `amount < 0 && min_received > 0` | `v1_0/burn.ak:90` | + * | stake | `amount > 0 && min_received > 0 && forfeit == 0` | `v1_0/stake.ak:45-47` | + * | unstake | `amount > 0 && min_received > 0` (+ `forfeit >= 0`) | `v1_0/unstake.ak:77,101` | + * | deposit | `amount >= 0` | `v1_0/deposit.ak:67` | + * | withdraw | `amount > 0 && yield == 0` | `v1_0/withdraw.ak:73` | + * + * v1_1_rc1 carries the identical predicates. v1_0_rc1 does NOT — its datum has + * no `min_received` field at all and its predicates are amount-only + * (`v1_0_rc1/stake.ak:64`, `unstake.ak:64`), which is why an absent floor is + * treated as "no floor to check" below rather than as zero. + */ + +/** Machine-stable reason token for a rejected request. */ +export type TOrderRejectCode = + | "amount_not_positive" + | "min_received_not_positive" + | "forfeit_negative" + | "deposit_principal_negative" + | "deposit_batch_empty" + | "withdraw_yield_not_zero" + | "input_underfunded" + | "min_received_above_max_delivered" + | "order_facts_unresolvable"; + +/** + * The subset of `IClassifiedOrderAction` the screen reads. Structural, so a + * full classified action is assignable without this module depending on the + * SDK family module (and without a test needing to construct one). + * + * Sign convention follows `classifyOrderAction`, which matches the on-chain + * request shape: `amount` is already negated for burn. + */ +export interface IOrderActionSanityInput { + actionType: string; + amount: bigint; + minReceived?: bigint; + forfeit?: bigint; + yield?: bigint; +} + +export type TOrderSanityResult = + | { ok: true } + | { ok: false; code: TOrderRejectCode; reason: string }; + +const OK: TOrderSanityResult = { ok: true }; + +function reject(code: TOrderRejectCode, reason: string): TOrderSanityResult { + return { ok: false, code, reason }; +} + +/** + * Screen one classified order action against the predicates the validator will + * apply to it. + * + * Unknown actions pass through. Every known action is checked because + * `getSignedPayloadFromOrderInputs` packages both the approvals and + * treasury-admin flows. + */ +export function screenOrderAction( + action: IOrderActionSanityInput, +): TOrderSanityResult { + const { actionType } = action; + + // Mint, burn, stake and unstake carry a user-signed output floor that the + // validator requires to be strictly positive — in the versions that HAVE one. + // v1_0_rc1's datum has no min_received field and its validators have no + // min_received predicate, so `undefined` means "this version has no floor to + // check", not "the floor is zero". The v1_0 / v1_1_rc1 schemas make the field + // mandatory, so a genuinely poisoned order always arrives as 0. + const floor = action.minReceived; + + switch (actionType) { + case "mint": + case "stake": + case "unstake": + if (action.amount <= 0n) { + return reject( + "amount_not_positive", + `Invalid ${actionType} amount (<= 0)`, + ); + } + if (floor !== undefined && floor <= 0n) { + return reject( + "min_received_not_positive", + `Invalid ${actionType} min_received (<= 0)`, + ); + } + // Unstake's forfeit is user-supplied in the datum; a negative one crashes + // the batch on `expect r.forfeit >= 0` exactly like a zero min_received + // does. (Stake requests carry no datum forfeit — OStake has no such + // field, so the validator's `forfeit == 0` holds by construction.) + if (actionType === "unstake" && (action.forfeit ?? 0n) < 0n) { + return reject("forfeit_negative", "Invalid unstake forfeit (< 0)"); + } + return OK; + + case "burn": + // classifyOrderAction negates ORedeem.amount, so the on-chain + // `amount < 0` check is the raw datum amount being positive. + if (action.amount >= 0n) { + return reject("amount_not_positive", "Invalid burn amount (<= 0)"); + } + if (floor !== undefined && floor <= 0n) { + return reject( + "min_received_not_positive", + "Invalid burn min_received (<= 0)", + ); + } + return OK; + + case "withdraw": + if (action.amount <= 0n) { + return reject("amount_not_positive", "Invalid withdraw amount (<= 0)"); + } + if ((action.yield ?? 0n) !== 0n) { + return reject( + "withdraw_yield_not_zero", + "Invalid withdraw request (yield must be 0)", + ); + } + return OK; + + case "deposit": + if (action.amount < 0n) { + return reject( + "deposit_principal_negative", + "Invalid deposit principal (< 0)", + ); + } + return OK; + + case "direct_mint": + if (action.amount <= 0n) { + return reject( + "amount_not_positive", + "Invalid direct_mint amount (<= 0)", + ); + } + return OK; + + case "direct_burn": + // classifyOrderAction negates ODirectBurn.amount to match the signed + // request and direct_burn.ak's required negative amount. + if (action.amount >= 0n) { + return reject( + "amount_not_positive", + "Invalid direct_burn amount (<= 0)", + ); + } + return OK; + + default: + return OK; + } +} + +/** + * Screen deposit predicates that the validator applies to the complete batch, + * after it has summed every request. This must not run per order: offsetting + * yields can make a non-empty pair unexecutable, while a zero/zero order can + * validly accompany a principal-bearing one. + */ +export function screenDepositBatch( + actions: readonly IOrderActionSanityInput[], +): TOrderSanityResult { + const { principal, totalYield } = actions.reduce( + (totals, action) => ({ + principal: totals.principal + action.amount, + totalYield: totals.totalYield + (action.yield ?? 0n), + }), + { principal: 0n, totalYield: 0n }, + ); + if (principal === 0n && totalYield === 0n) { + return reject( + "deposit_batch_empty", + "Invalid deposit batch (principal and yield both total 0)", + ); + } + return OK; +} + +/** + * The value-dependent facts about an order UTxO that the validator checks but + * the datum alone cannot answer. The caller derives these because it owns the + * asset ids and the reserve multiplier from settings. + */ +export interface IOrderUtxoFacts { + /** + * Quantity of the consumed asset the validator will require this UTxO to + * hold. Per action: mint → `usdr_to_reserve_ceil(amount, ra)` of the reserve + * asset; burn → `|amount|` USDr; stake → `amount` USDr; unstake → `amount` + * sUSDr. Zero for actions with no such check (treasury, direct). + */ + consumedRequired: bigint; + /** Quantity of that same asset actually locked in the UTxO. */ + consumedLocked: bigint; + /** + * Ceiling on what may be delivered to the destination, when it is knowable + * without live vault state: mint → `amount`, burn → + * `usdr_to_reserve(|amount|, ra)`. `undefined` where the ceiling follows the + * vault exchange rate (stake, unstake) and so cannot be screened here. + */ + maxDelivered?: bigint; + /** + * Set when the facts could not be derived from the datum at all — the reserve + * asset it names is not in settings, or its policy id is malformed. Every + * field of the datum is attacker-chosen, so this must be a REJECTION, never a + * thrown error: a throw from a screen would abort the caller's whole sweep, + * which is a strictly worse denial of service than the batch-kill the screen + * exists to prevent. The validator reaches the same conclusion via + * `expect Some(ra) = find_reserve_asset(...)` (`v1_0/mint.ak:29`). + */ + unresolvable?: string; +} + +/** + * Screen the value-dependent aborts. Run alongside {@link screenOrderAction} — + * neither subsumes the other. + * + * Both conditions kill the whole transaction, not just the offending order: + * + * - **Underfunded input.** `validate_stake_inputs` / `validate_unstake_inputs` + * (`v1_0/utilities.ak:417`, `:443`) `expect` the locked quantity to cover + * `request.amount`; mint (`mint.ak:32`) and burn (`burn.ak:31`) fold the same + * comparison into an `and {}` whose `False` fails the enclosing `expect`. An + * order UTxO holding min-ADA and none of the consumed asset is therefore a + * complete batch-killer that costs the planter nothing but the min-ADA. + * - **Unsatisfiable floor.** `validate_destination_value` + * (`v1_0/utilities.ak:594-595`) `expect`s `min_delivered <= delivered <= + * max_delivered`. A `min_received` above the ceiling makes the pair + * unsatisfiable no matter what the operator builds. + */ +export function screenOrderUtxoFacts( + action: IOrderActionSanityInput, + facts: IOrderUtxoFacts, +): TOrderSanityResult { + if (facts.unresolvable !== undefined) { + return reject( + "order_facts_unresolvable", + `Order datum cannot be resolved against protocol settings: ${facts.unresolvable}`, + ); + } + + if ( + facts.consumedRequired > 0n && + facts.consumedLocked < facts.consumedRequired + ) { + return reject( + "input_underfunded", + `Order UTxO locks ${facts.consumedLocked} of the consumed asset but its ` + + `${action.actionType} datum requires ${facts.consumedRequired}`, + ); + } + + const floor = action.minReceived; + if ( + floor !== undefined && + facts.maxDelivered !== undefined && + floor > facts.maxDelivered + ) { + return reject( + "min_received_above_max_delivered", + `Invalid ${action.actionType} min_received (${floor}) — above the maximum ` + + `deliverable ${facts.maxDelivered}, so no execution can satisfy it`, + ); + } + + return OK; +} diff --git a/modules/realfi-partner-sdk/src/sdk/v1/types.ts b/modules/realfi-partner-sdk/src/sdk/v1/types.ts new file mode 100644 index 0000000000..1f3002fb4b --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v1/types.ts @@ -0,0 +1,135 @@ +import type { TSchema } from "@blaze-cardano/data"; +import type { Core } from "@blaze-cardano/sdk"; + +// Type-only imports of the canonical V1-family statics. These are erased at +// compile time (verbatimModuleSyntax), so this module adds NO runtime edge +// from the family chunk to the v1_0 generated-types chunk — each version's +// chunk still loads only its own generated module. +import type { + Nonce, + OrderRedeemerV1, + RegistryV1, + SettingsV1 as SettingsV1_0, +} from "../../generated-types/v1_0/index.js"; + +/** + * A TypeBox schema whose inferred static is exactly `T`, regardless of which + * generated module it came from. + * + * The generated modules export `TImport` schemas that carry the WHOLE + * module's `$defs` in their type, so `typeof V1_0Types.X` is not assignable + * to `typeof V1_1Rc1Types.X` even when the statics are structurally identical. + * `Data.serialize`/`parse` only infer through `T["static"]`, so this + * intersection keeps full type safety at every call site while accepting any + * version's schema value. Runtime ref resolution reads `$defs` off the schema + * VALUE, so cross-version dispatch is safe. + */ +export type TSchemaOf = TSchema & { static: T }; + +/** + * Version-agnostic proxy datum shape. `ProxyDatumV1.settings` is the only + * settings-transitive field in the schemas the family touches, so the family + * is generic over it instead of using a version's concrete `ProxyDatumV1`. + */ +export interface IProxyDatum { + logic: string; + settings: TSettings; +} + +/** + * The minimal vault-datum shape every V1-family version shares. Shared code + * may READ `circulating_susdr`; it must never construct a whole vault datum — + * datum construction goes through the version's `buildInitialVaultDatum` / + * `buildUpdatedVaultDatum` seam so versions with extra fields (v1_1_rc1's + * yield-diffusion fields) can't be silently truncated. + */ +export interface IVaultDatumLike { + circulating_susdr: bigint; +} + +/** + * The schema values the family base serializes/parses. Each per-version + * generated module namespace satisfies this structurally. + * + * `OrderDatumV1` is deliberately loose (`TSchema`): the order-datum statics + * differ across the family (v1_0 actions carry `min_received`, v1_0_rc1's do + * not), so the base's v1_0-semantics defaults cast parse results to the v1_0 + * static. Versions with a different static override every constructor and + * consumer of order datums. + */ +export interface IV1FamilySchemas { + ProxyDatumV1: TSchemaOf>; + SettingsV1: TSchemaOf; + OrderDatumV1: TSchema; + OrderRedeemerV1: TSchemaOf; + VaultDatumV1: TSchemaOf; + Nonce: TSchemaOf; +} + +/** + * Schemas used ONLY by the base's v1_0-semantics signing/execute defaults + * (`getSignedPayloadFromOrderInputs`, `buildExecuteOrdersTx`). Versions whose + * protocol redeemer is structurally different (v1_0_rc1) omit this bag and + * override both consumers; the family's guarded accessor throws if neither + * is done. + * + * Both fields are deliberately loose (`TSchema`), for the same reason + * `OrderDatumV1` above is: the protocol-redeemer static diverges across the + * family (v1_1_rc1's `Deposit` carries `alpha` and its action union adds + * `MigrateState`), so a `TSchemaOf` would reject the + * wider v1_1_rc1 schema value even though runtime ref-resolution reads `$defs` + * off the schema VALUE and is safe. Versions build their own action shape via + * the `buildDepositAction` / `serializeOrchestratorWithdrawalRedeemer` seams. + */ +export interface IV1SigningSchemas { + SignedPayload_ProtocolRedeemerV1: TSchema; + SignedRedeemer_ExtraProtocolRedeemerV1: TSchema; +} + +/** + * The fraction of a deposit's yield routed to the staked vault, the remainder + * going to the unstaked yield pot (v1_1_rc1+ `YieldSplitAlpha`). + * + * It is a parameter of the batch: its creator picks it, the backend stores it on + * the batch, and every co-signer signs THAT value. On-chain every signature of a + * batch is verified against a single payload hash, so a signer deriving its own + * value from live state could never be co-signed — which is why the signing path + * takes it as an input instead of reading the vault itself. + */ +export interface IYieldSplitAlpha { + numerator: bigint; + denominator: bigint; +} + +/** + * Version-agnostic view over the settings fields the shared tx-builders use. + * v1_0: the (flat) settings object itself. v1_1_rc1: `settings.config`. + */ +export type TV1SettingsConfig = Pick< + SettingsV1_0, + "reserve_assets" | "unstaked_yield_pot" +>; + +/** + * The registry fields the family base reads (protocol-upgrade checks). + * Registries differ across versions (v1_0 adds `yield_oracle`), so the + * seam exposes only the shared field. + */ +export type TV1Registry = Pick; + +/** + * Instantiated scripts each version's `create()` builds from its own + * generated script classes and hands to the family constructor. Method + * bodies only ever see `Core.Script` values. + */ +export interface IV1FamilyScripts { + oneShotScript: Core.Script; + protocolOrchestratorScript: Core.Script; + protocolMintScript: Core.Script; + protocolStakeScript: Core.Script; + protocolManagementScript: Core.Script; + mintProxyScript: Core.Script; + treasuryScript: Core.Script; + orderScript: Core.Script; + stakingVaultScript: Core.Script; +} diff --git a/modules/realfi-partner-sdk/src/sdk/v1_0/index.ts b/modules/realfi-partner-sdk/src/sdk/v1_0/index.ts new file mode 100644 index 0000000000..3886e0f156 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v1_0/index.ts @@ -0,0 +1,268 @@ +import type { Provider } from "@blaze-cardano/query"; +import { type Blaze, Core, type Wallet } from "@blaze-cardano/sdk"; + +import { + BaseTypes, + V0_1Types, + V0_4Types, + V1_0Types, +} from "../../generated-types/index.js"; +import type { + RegistryV1, + SettingsV1, + VaultDatumV1, +} from "../../generated-types/v1_0/index.js"; +import type { TV1SettingsConfig } from "../v1/types.js"; +import { RealfiSDKV1Family } from "../v1/family.js"; + +export { + DIRECT_ACTION_PADDING_ASSET, + type ITreasuryUnstakeOrderTxResult, +} from "../v1/family.js"; + +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiSDKParamsV1_0 { + version: "V1_0"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** USDr asset name hex */ + assetNameHex: string; + /** sUSDr asset name hex */ + sUSDrAssetNameHex: string; + /** The treasury bootstrap UTxO reference */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** The staking vault bootstrap UTxO reference */ + stakingVaultBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Fallback slippage tolerance (in basis points) used by buildStakeOrderTx / + * buildUnstakeOrderTx when the caller doesn't pass a per-call value and + * doesn't pass an explicit `minReceived`. 50n = 0.5%. Default: 50n. + */ + defaultSlippageToleranceBps?: bigint; + /** + * Use V0.1 treasury script instead of V1.0. + * This is needed for protocol-only upgrades where the treasury NFT + * remains at the V0.1 treasury address. Default: false + */ + useV0_1Treasury?: boolean; + /** + * Use V0.4 staking vault script instead of V1.0. + * This is needed for protocol-only upgrades where the vault NFT + * remains at the V0.4 vault address. Default: false + */ + useV0_4StakingVault?: boolean; + /** + * Hashes of the validators this deployment actually runs. See + * IV1FamilyConstructorParams.deployedValidators — without them, identity is + * derived from bundled artifacts and an order can be locked at an address + * nothing watches. + */ + deployedValidators?: Readonly>; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + stakingVaultRefInput?: Core.TransactionUnspentOutput; + }; + clientSource?: import("../shared/client-id.js").TClientSource; +} + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * V1_0 SDK implementation. + * + * Extends V0_4 with: + * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios) + * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded + * - Forfeit parameter: Support yield forfeiture during unstake operations + * - New Settings fields: direct_mint_permission, direct_burn_permission + * + * All transaction-building logic lives in {@link RealfiSDKV1Family}; this + * class instantiates the V1_0 scripts and implements the version seams + * (flat settings, 1-field vault datum). + */ +export class RealfiSDKV1_0< + P extends Provider, + W extends Wallet, +> extends RealfiSDKV1Family { + readonly version = "V1_0" as const; + + /** + * Create a V1_0 SDK instance. + */ + static create

( + blaze: Blaze, + params: IRealfiSDKParamsV1_0, + ): RealfiSDKV1_0 { + const enableTrace = params.enableTrace ?? false; + + // 1. Create oneshot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint( + { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex, + }, + enableTrace, + ).Script; + const oneShotPolicyId = oneShotScript.hash(); + + // 2. Create sub-validator scripts first (they only need proxy policy) + const protocolMintScript = + new V1_0Types.V1_0ProtocolMintProtocolMintWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + const protocolStakeScript = + new V1_0Types.V1_0ProtocolStakeProtocolStakeWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + const protocolManagementScript = + new V1_0Types.V1_0ProtocolManagementProtocolManagementWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + // 3. Create orchestrator with sub-validator hashes + const protocolOrchestratorScript = + new V1_0Types.V1_0ProtocolOrchestratorProtocolOrchestratorWithdraw( + oneShotPolicyId, + protocolMintScript.hash(), + protocolStakeScript.hash(), + protocolManagementScript.hash(), + enableTrace, + ).Script; + + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint( + oneShotPolicyId, + enableTrace, + ).Script; + + // Use V0.1 or V1.0 treasury script based on option + // V0.1 is needed for protocol-only upgrades where treasury stays at V0.1 address + const treasuryScript = params.useV0_1Treasury + ? new V0_1Types.V0_1TreasuryTreasurySpend( + { + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script + : new V1_0Types.V1_0TreasuryTreasurySpend( + { + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + // 4. Create order script with orchestrator hash (order needs to know the protocol) + const orderScript = new V1_0Types.V1_0OrderOrderSpend( + oneShotPolicyId, + protocolOrchestratorScript.hash(), + enableTrace, + ).Script; + + // Use V0.4 or V1.0 staking vault script based on option + // V0.4 is needed for protocol-only upgrades where vault stays at V0.4 address + const stakingVaultScript = params.useV0_4StakingVault + ? new V0_4Types.V0_4StakingVaultStakingVaultSpend( + { + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script + : new V1_0Types.V1_0StakingVaultStakingVaultSpend( + { + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + return new RealfiSDKV1_0( + blaze, + { + version: "V1_0", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace, + defaultSlippageToleranceBps: params.defaultSlippageToleranceBps, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource, + deployedValidators: params.deployedValidators, + }, + V1_0Types, + { + oneShotScript, + protocolOrchestratorScript, + protocolMintScript, + protocolStakeScript, + protocolManagementScript, + mintProxyScript, + treasuryScript, + orderScript, + stakingVaultScript, + }, + { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + orderRefInput: params.referenceInputs?.orderRefInput, + stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput, + }, + V1_0Types, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + protected settingsConfig(settings: SettingsV1): TV1SettingsConfig { + // V1_0 settings are flat: the settings object IS the config. + return settings; + } + + protected settingsRegistry(settings: SettingsV1): RegistryV1 { + return settings.registry; + } + + protected buildInitialVaultDatum(): VaultDatumV1 { + return { circulating_susdr: 0n }; + } + + protected buildUpdatedVaultDatum( + previous: VaultDatumV1, + sUSDrDelta: bigint, + ): VaultDatumV1 { + return { circulating_susdr: previous.circulating_susdr + sUSDrDelta }; + } +} diff --git a/modules/realfi-partner-sdk/src/sdk/v1_0_rc1/index.ts b/modules/realfi-partner-sdk/src/sdk/v1_0_rc1/index.ts new file mode 100644 index 0000000000..8e3d05c928 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v1_0_rc1/index.ts @@ -0,0 +1,1708 @@ +import { + addressFromValidator, + blake2b_256, + HexBlob, + PlutusData, + toHex, +} from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { + type Blaze, + Core, + makeValue, + TxBuilder, + type Wallet, +} from "@blaze-cardano/sdk"; + +import { + BaseTypes, + V0_1Types, + V0_4Types, + V1_0Rc1Types, +} from "../../generated-types/index.js"; +import type { TreasuryDatum as V0_1TreasuryDatum } from "../../generated-types/v0_1/index.js"; +import type { + Destination, + MultisigScript, + OrderDatumV1, + RegistryV1, + SettingsV1, + VaultDatumV1, +} from "../../generated-types/v1_0_rc1/index.js"; + +import { + addDirectOutput, + buildNonceFromUtxo, + buildMultisigTimelockNativeScript, + buildTimelockDestination, + buildUnstakeMetadatum, + UNSTAKE_METADATA_LABEL, + destinationToAddress, + findReserveAsset, + usdrToReserve, + usdrToReserveCeil, + computeReserveDeltas, + sortOrderInputs, +} from "../shared/index.js"; +import { + calculateYieldShares, + MIN_LOVELACE, + RealfiSDKV1Family, + type IBuildStakeContinuationParams, + type IStakeContinuation, + type IOrderInfo, + type TOrderActionType, +} from "../v1/family.js"; +import { screenDepositBatch } from "../v1/order-sanity.js"; +import type { TV1SettingsConfig } from "../v1/types.js"; + +// ───────────────────────────────────────────────────────────────────────────── +// Constants +// ───────────────────────────────────────────────────────────────────────────── + +/** + * Sentinel `reserve_asset` used in V1_0_Rc1 TreasuryRequestV1 redeemers for + * DirectMint and DirectBurn actions, which have no real reserve asset in + * their order datum. The on-chain validators `direct_mint_logic` and + * `direct_burn_logic` do not inspect this field; this sentinel makes the + * intent explicit both in code and when inspecting on-chain redeemers. + * + * - `policy_id`: 28 zero bytes (standard policy-ID length, chosen as a + * sentinel and extremely unlikely to occur as a real script hash) + * - `asset_name`: "unused" (ASCII) + * + * Keep in sync with backend `contract.DirectActionPaddingAsset`. + */ +export const DIRECT_ACTION_PADDING_ASSET: V1_0Rc1Types.Asset = [ + "00".repeat(28), + toHex(new TextEncoder().encode("unused")), +]; + +// ───────────────────────────────────────────────────────────────────────────── +// Types +// ───────────────────────────────────────────────────────────────────────────── + +export interface ITreasuryUnstakeOrderTxResultRc1 { + /** Transaction builder for the treasury unstake order. */ + tx: TxBuilder; + /** + * Native script used as the unstake output destination: + * AllOf { After(unlockSlot), owner }. + */ + nativeScript: Core.NativeScript; +} + +/** + * Extract the requests list from a signed payload action, regardless of action type. + * Both TreasuryRequestV1 and RequestV1 have `origin: { transaction_id, output_index }`. + */ +function getRequestsFromAction( + action: V1_0Rc1Types.ProtocolRedeemerV1, +): Array<{ origin: { transaction_id: string; output_index: bigint } }> { + if ("Mint" in action) return action.Mint.requests; + if ("Burn" in action) return action.Burn.requests; + if ("Withdraw" in action) return action.Withdraw.requests; + if ("Deposit" in action) return action.Deposit.requests; + if ("Stake" in action) return action.Stake.requests; + if ("Unstake" in action) return action.Unstake.requests; + if ("DirectMint" in action) return action.DirectMint.requests; + if ("DirectBurn" in action) return action.DirectBurn.requests; + throw new Error("Unknown action type in signed payload"); +} + +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiSDKParamsV1_0Rc1 { + version: "V1_0_Rc1"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** USDr asset name hex */ + assetNameHex: string; + /** sUSDr asset name hex */ + sUSDrAssetNameHex: string; + /** The treasury bootstrap UTxO reference */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** The staking vault bootstrap UTxO reference */ + stakingVaultBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Use V0.1 treasury script instead of V1.0. + * This is needed for protocol-only upgrades where the treasury NFT + * remains at the V0.1 treasury address. Default: false + */ + useV0_1Treasury?: boolean; + /** + * Use V0.4 staking vault script instead of V1.0. + * This is needed for protocol-only upgrades where the vault NFT + * remains at the V0.4 vault address. Default: false + */ + useV0_4StakingVault?: boolean; + /** + * Hashes of the validators this deployment actually runs. See + * IV1FamilyConstructorParams.deployedValidators. + */ + deployedValidators?: Readonly>; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + stakingVaultRefInput?: Core.TransactionUnspentOutput; + }; + clientSource?: import("../shared/client-id.js").TClientSource; +} + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * V1_0Rc1 SDK implementation. + * + * Extends V0_4 with: + * - DirectMint/DirectBurn: Mint/burn USDr without reserve asset flow (for fiat wire scenarios) + * - Invalidated redeemer: Allow order owners to recover funds when protocol is upgraded + * - Forfeit parameter: Support yield forfeiture during unstake operations + * - New Settings fields: direct_mint_permission, direct_burn_permission + * + * Scaffolding (scripts, deploy/register, treasury, vault, one-shot, cancel, + * invalidate) is inherited from {@link RealfiSDKV1Family}. The release + * candidate's protocol redeemer schema is structurally different from v1_0 + * (`TreasuryRequestV1[]` + `RequestV1[]`, no fees, no `min_received`), so the + * order builders, signed-payload construction, and execute builders override + * the family's v1_0-semantics defaults with the rc1 behavior verbatim. No + * signing schemas are passed to the family constructor — both consumers are + * overridden here. + */ +export class RealfiSDKV1_0Rc1< + P extends Provider, + W extends Wallet, +> extends RealfiSDKV1Family { + readonly version = "V1_0_Rc1" as const; + + /** + * Create a V1_0Rc1 SDK instance. + */ + static create

( + blaze: Blaze, + params: IRealfiSDKParamsV1_0Rc1, + ): RealfiSDKV1_0Rc1 { + const enableTrace = params.enableTrace ?? false; + + // 1. Create oneshot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint( + { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex, + }, + enableTrace, + ).Script; + const oneShotPolicyId = oneShotScript.hash(); + + // 2. Create sub-validator scripts first (they only need proxy policy) + const protocolMintScript = + new V1_0Rc1Types.V1_0Rc1ProtocolMintProtocolMintWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + const protocolStakeScript = + new V1_0Rc1Types.V1_0Rc1ProtocolStakeProtocolStakeWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + const protocolManagementScript = + new V1_0Rc1Types.V1_0Rc1ProtocolManagementProtocolManagementWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + // 3. Create orchestrator with sub-validator hashes + const protocolOrchestratorScript = + new V1_0Rc1Types.V1_0Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw( + oneShotPolicyId, + protocolMintScript.hash(), + protocolStakeScript.hash(), + protocolManagementScript.hash(), + enableTrace, + ).Script; + + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint( + oneShotPolicyId, + enableTrace, + ).Script; + + // Use V0.1 or V1.0 treasury script based on option + // V0.1 is needed for protocol-only upgrades where treasury stays at V0.1 address + const treasuryScript = params.useV0_1Treasury + ? new V0_1Types.V0_1TreasuryTreasurySpend( + { + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script + : new V1_0Rc1Types.V1_0Rc1TreasuryTreasurySpend( + { + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + // 4. Create order script with orchestrator hash (order needs to know the protocol) + const orderScript = new V1_0Rc1Types.V1_0Rc1OrderOrderSpend( + oneShotPolicyId, + protocolOrchestratorScript.hash(), + enableTrace, + ).Script; + + // Use V0.4 or V1.0 staking vault script based on option + // V0.4 is needed for protocol-only upgrades where vault stays at V0.4 address + const stakingVaultScript = params.useV0_4StakingVault + ? new V0_4Types.V0_4StakingVaultStakingVaultSpend( + { + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script + : new V1_0Rc1Types.V1_0Rc1StakingVaultStakingVaultSpend( + { + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + return new RealfiSDKV1_0Rc1( + blaze, + { + version: "V1_0_Rc1", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace, + scriptDeploymentAddress: params.scriptDeploymentAddress, + clientSource: params.clientSource, + deployedValidators: params.deployedValidators, + }, + V1_0Rc1Types, + { + oneShotScript, + protocolOrchestratorScript, + protocolMintScript, + protocolStakeScript, + protocolManagementScript, + mintProxyScript, + treasuryScript, + orderScript, + stakingVaultScript, + }, + { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + orderRefInput: params.referenceInputs?.orderRefInput, + stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput, + }, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + protected settingsConfig(settings: SettingsV1): TV1SettingsConfig { + // V1_0_Rc1 settings are flat: the settings object IS the config. + return settings; + } + + protected settingsRegistry(settings: SettingsV1): RegistryV1 { + return settings.registry; + } + + protected buildInitialVaultDatum(): VaultDatumV1 { + return { circulating_susdr: 0n }; + } + + protected buildUpdatedVaultDatum( + previous: VaultDatumV1, + sUSDrDelta: bigint, + ): VaultDatumV1 { + return { circulating_susdr: previous.circulating_susdr + sUSDrDelta }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Order Builder Methods (rc1 order datums carry no min_received) + // ───────────────────────────────────────────────────────────────────────────── + + override async buildStakeContinuation( + _params: IBuildStakeContinuationParams, + ): Promise { + throw new Error( + "Stake continuations are not supported on V1_0_Rc1 because its order schema has no min_received", + ); + } + + /** + * Internal helper to build an order transaction. + */ + protected override async _buildOrderTx(params: { + action: V1_0Rc1Types.OrderActionV1; + valueToLock: Core.Value; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + extraLabels?: Map; + }): Promise { + const orderContractAddress = addressFromValidator( + this.network, + this.orderScript, + ); + + let owner = params.owner; + if (!owner) { + owner = { + Signature: { + key_hash: (await this.blaze.wallet.getChangeAddress()) + .getProps() + .paymentPart!.hash!.toString(), + }, + }; + } + + const orderDatum: OrderDatumV1 = { + action: params.action, + owner, + destination: params.destination, + data: params.data ?? Data.Void(), + }; + const serializedDatum = Data.serialize( + V1_0Rc1Types.OrderDatumV1, + orderDatum, + ); + + const tx = this.newOrderTransaction(params.extraLabels); + tx.lockAssets(orderContractAddress, params.valueToLock, serializedDatum); + return tx; + } + + /** + * Build a mint order: lock reserve tokens, request USDr minting. + */ + override async buildMintOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Mint amount must be positive"); + } + const reserveAssetId = Core.AssetId( + params.reserveAsset[0] + params.reserveAsset[1], + ); + // Convert USDr amount to reserve amount using ceiling division + // to ensure enough reserve is locked for on-chain validation + const settings = await this.getVersionSettings(); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAmount = usdrToReserveCeil(params.amount, ra); + return this._buildOrderTx({ + action: { + OMint: { amount: params.amount, reserve_asset: params.reserveAsset }, + }, + valueToLock: makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a redeem (burn) order: lock USDr, request reserve token redemption. + */ + override async buildRedeemOrderTx(params: { + amount: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Redeem amount must be positive"); + } + const settings = await this.getVersionSettings(); + findReserveAsset(settings, params.reserveAsset); + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + return this._buildOrderTx({ + action: { + ORedeem: { + amount: params.amount, + reserve_asset: params.reserveAsset, + }, + }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + /** + * Build a stake order: lock USDr, request sUSDr minting. + */ + override async buildStakeOrderTx(params: { + amount: bigint; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Stake amount must be positive"); + } + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + return this._buildOrderTx({ + action: { OStake: { amount: params.amount } }, + valueToLock: makeValue(MIN_LOVELACE, [stablecoinAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + protected override async _buildUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + forfeit?: bigint; + owner?: MultisigScript; + data?: PlutusData; + extraLabels?: Map; + }): Promise { + if (params.amount <= 0n) { + throw new Error("Unstake amount must be positive"); + } + const forfeit = params.forfeit ?? 0n; + if (forfeit < 0n) { + throw new Error("Forfeit amount cannot be negative"); + } + + const sUSDrAssetId = Core.AssetId( + this.stablecoinPolicyId + this.sUSDrAssetNameHex, + ); + + return this._buildOrderTx({ + action: { OUnstake: { amount: params.amount, forfeit } }, + valueToLock: makeValue(MIN_LOVELACE, [sUSDrAssetId, params.amount]), + owner: params.owner, + destination: params.destination, + data: params.data, + extraLabels: params.extraLabels, + }); + } + + /** + * Build an unstake order: lock sUSDr, request USDr release. + * + * The destination is automatically set to a native script address that + * enforces a timelock: AllOf { Signature(user), After(unlockSlot) }. + * This means the released USDr can only be spent by the user after the + * unlock time has passed. + * + * @param params.amount - Amount of sUSDr to unstake + * @param params.destination - The user's actual destination (used to extract payment key hash) + * @param params.unlockSlot - Slot number after which the user can spend the released USDr + * @param params.forfeit - Optional amount of USDr to forfeit to yield pot (default: 0) + */ + override async buildUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + unlockSlot: bigint; + forfeit?: bigint; + owner?: MultisigScript; + data?: PlutusData; + }): Promise { + const timelockDestination = buildTimelockDestination( + params.destination, + params.unlockSlot, + ); + const extraLabels = new Map([ + [ + UNSTAKE_METADATA_LABEL, + buildUnstakeMetadatum(params.destination, params.unlockSlot), + ], + ]); + + return this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + owner: params.owner, + data: params.data, + extraLabels, + }); + } + + /** + * Build a treasury-managed unstake order that wraps the destination in a + * native timelock script controlled by the order owner. + * + * The destination is set to: AllOf { After(unlockSlot), owner }. This keeps + * treasury multisig ownership on the released USDr while enforcing the same + * unlock slot used by the retail unstake helper. The owner must be convertible + * to a Cardano native script. + */ + override async buildTreasuryUnstakeOrderTx(params: { + amount: bigint; + destination: Destination; + unlockSlot: bigint; + forfeit?: bigint; + owner: MultisigScript; + data?: PlutusData; + }): Promise { + const nativeScript = buildMultisigTimelockNativeScript( + params.owner, + params.unlockSlot, + ); + const timelockDestination: Destination = { + address: { + payment_credential: { Script: [nativeScript.hash()] }, + stake_credential: params.destination.address.stake_credential, + }, + datum: "NoDatum", + }; + + // Attach the unstake metadata (label 55534472) exactly like the retail + // path (buildUnstakeOrderTx). track-chain requires this label to index the + // order; without it the confirmed unstake output is silently dropped + // (WTB-1466). Mirror retail precisely: the metadatum is built from the + // user-supplied destination (params.destination), not the derived timelock + // destination, and carries the same unlock_time. + const extraLabels = new Map([ + [ + UNSTAKE_METADATA_LABEL, + buildUnstakeMetadatum(params.destination, params.unlockSlot), + ], + ]); + + const tx = await this._buildUnstakeOrderTx({ + amount: params.amount, + destination: timelockDestination, + forfeit: params.forfeit, + owner: params.owner, + data: params.data, + extraLabels, + }); + + return { tx, nativeScript }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Signed Payload and Signing + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build the V1_0Rc1 SignedPayload_ProtocolRedeemer from order inputs. + * Returns both the CBOR hex string (for buildExecuteOrdersTx) and + * the blake2b_256 hash (for CIP-30 signing). + */ + override async getSignedPayloadFromOrderInputs( + orderInputs: Core.TransactionInput[], + ): Promise<{ signedPayload: string; payloadHash: string }> { + if (orderInputs.length === 0) { + throw new Error("At least one order input is required"); + } + + const sortedInputs = sortOrderInputs(orderInputs); + const nonce = buildNonceFromUtxo(sortedInputs[0]!) as V1_0Rc1Types.Nonce; + + const resolvedUtxos = + await this.blaze.provider.resolveUnspentOutputs(sortedInputs); + + let actionType: TOrderActionType | null = null; + const treasuryRequests: V1_0Rc1Types.TreasuryRequestV1[] = []; + const requests: V1_0Rc1Types.RequestV1[] = []; + + for (const utxo of resolvedUtxos) { + const datumData = utxo.output().datum()?.asInlineData(); + if (!datumData) { + throw new Error("Order UTXO has no inline datum"); + } + const datum = parse(V1_0Rc1Types.OrderDatumV1, datumData) as OrderDatumV1; + const origin = { + transaction_id: utxo.input().transactionId().toString(), + output_index: utxo.input().index(), + }; + + const parsed = this.classifyOrderAction(datum); + + // WTB-1764: same screen the family applies. rc1 has no min_received, but + // its predicates still demand an amount sign (`v1_0_rc1/stake.ak:64`, + // `unstake.ak:64`) and every one of them is an `expect` inside a single + // fold, so a request that fails takes the whole transaction with it. + const screened = await this.screenOrderForExecution(utxo, parsed); + if (!screened.ok) { + throw new Error( + `Order ${origin.transaction_id}#${origin.output_index} cannot be executed: ` + + `${screened.reason}. Every order batched with it would crash on-chain.`, + ); + } + + if (actionType === null) { + actionType = parsed.actionType; + } else if (actionType !== parsed.actionType) { + throw new Error( + "Mixed order types in inputs. All orders must be of the same type.", + ); + } + + if (parsed.isTreasuryAction) { + // DirectMint/DirectBurn datums have no reserve_asset; the redeemer + // struct requires one but the on-chain validator ignores it for + // direct actions, so we pad with DIRECT_ACTION_PADDING_ASSET. + const reserveAsset = parsed.reserveAsset ?? DIRECT_ACTION_PADDING_ASSET; + treasuryRequests.push({ + destination: datum.destination, + amount: parsed.amount, + yield: parsed.yield ?? 0n, + origin, + reserve_asset: reserveAsset, + }); + } else { + requests.push({ + destination: datum.destination, + amount: parsed.amount, + origin, + forfeit: parsed.forfeit ?? 0n, + }); + } + } + + if (actionType === "deposit") { + const batchVerdict = screenDepositBatch( + treasuryRequests.map((request) => ({ + actionType: "deposit", + amount: request.amount, + yield: request.yield, + })), + ); + if (!batchVerdict.ok) { + throw new Error( + `${batchVerdict.reason}. Every order batched with it would crash on-chain.`, + ); + } + } + + let action: V1_0Rc1Types.ProtocolRedeemerV1; + switch (actionType) { + case "mint": + action = { Mint: { requests: treasuryRequests } }; + break; + case "burn": + action = { Burn: { requests: treasuryRequests } }; + break; + case "withdraw": + action = { Withdraw: { requests: treasuryRequests } }; + break; + case "deposit": + action = { Deposit: { requests: treasuryRequests } }; + break; + case "stake": + action = { Stake: { requests } }; + break; + case "unstake": + action = { Unstake: { requests } }; + break; + case "direct_mint": + action = { DirectMint: { requests: treasuryRequests } }; + break; + case "direct_burn": + action = { DirectBurn: { requests: treasuryRequests } }; + break; + default: + throw new Error("No orders to process"); + } + + const payload: V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1 = { + action, + nonce, + }; + const serialized = Data.serialize( + V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1, + payload, + ); + const signedPayload = serialized.toCbor().toString(); + const payloadHash = blake2b_256(HexBlob(signedPayload)); + + return { signedPayload, payloadHash }; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Execute Orders + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a transaction to execute orders. + * + * Handles all 8 action types: mint, burn, deposit, withdraw, stake, unstake, + * direct_mint, direct_burn. + */ + override async buildExecuteOrdersTx(params: { + orderInputs: Core.TransactionInput[]; + signedPayload: string; + signatures: V1_0Rc1Types.Tuple_VerificationKey_COSESign1[]; + }): Promise { + const { + orderInputs, + signedPayload: signedPayloadCbor, + signatures, + } = params; + + // Deserialize CBOR hex to object for internal use + const signedPayload = parse( + V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1, + PlutusData.fromCbor(HexBlob(signedPayloadCbor)), + ) as V1_0Rc1Types.SignedPayload_v1_0_ProtocolRedeemerV1; + + // 1. Sort and resolve order UTxOs + const sortedOrderInputs = sortOrderInputs(orderInputs); + const orderUtxos = + await this.blaze.provider.resolveUnspentOutputs(sortedOrderInputs); + + // 2. Parse orders and validate same type + const orderInfos = this.parseOrderInfos(orderUtxos); + const actionType = orderInfos[0]!.actionType; + + // 3. Get protocol settings + const { proxyUtxo, parsedProxyDatum } = await this.getParsedProxyDatum(); + const settings = parsedProxyDatum.settings as SettingsV1; + + // 4. Determine what we need + const needsTreasury = [ + "mint", + "burn", + "withdraw", + "deposit", + "direct_mint", + "direct_burn", + ].includes(actionType); + const needsVault = ["stake", "unstake", "deposit"].includes(actionType); + + // 5. Get script reference inputs + // V1.0 requires the orchestrator and the relevant sub-validator script + const isMintAction = [ + "mint", + "burn", + "direct_mint", + "direct_burn", + ].includes(actionType); + const isStakeAction = ["stake", "unstake"].includes(actionType); + + const scriptHashesNeeded: Record = { + protocol: this.protocolScriptHash, + order: this.orderScriptHash, + }; + if (isMintAction) { + scriptHashesNeeded.protocolMint = this.protocolMintScriptHash; + } else if (isStakeAction) { + scriptHashesNeeded.protocolStake = this.protocolStakeScriptHash; + } else { + scriptHashesNeeded.protocolManagement = this.protocolManagementScriptHash; + } + if (needsTreasury) { + scriptHashesNeeded.treasury = this.treasuryScriptHash; + } + if (needsVault) { + scriptHashesNeeded.stakingVault = this.stakingVaultScriptHash; + } + const refInputs = await this.getScriptReferenceInputs(scriptHashesNeeded); + + // 6. Fetch treasury and vault if needed + let treasuryUtxo: Core.TransactionUnspentOutput | undefined; + let parsedTreasuryDatum: V0_1TreasuryDatum | undefined; + if (needsTreasury) { + const treasuryResult = await this.getTreasuryDatum(); + treasuryUtxo = treasuryResult.treasuryUtxo; + parsedTreasuryDatum = treasuryResult.parsedTreasuryDatum; + } + + let vaultUtxo: Core.TransactionUnspentOutput | undefined; + let parsedVaultDatum: VaultDatumV1 | undefined; + if (needsVault) { + const vaultResult = await this.getVaultDatum(); + vaultUtxo = vaultResult.vaultUtxo; + parsedVaultDatum = vaultResult.parsedVaultDatum; + } + + // 7. Gather wallet UTxOs so we can include them in index calculations. + const walletUtxos = await this.blaze.wallet.getUnspentOutputs(); + const excludedInputIds = new Set(); + const utxoKey = (inp: Core.TransactionInput) => + `${inp.transactionId().toString()}#${inp.index().toString()}`; + // Exclude script inputs (order, treasury, vault) + for (const orderInfo of orderInfos) { + excludedInputIds.add(utxoKey(orderInfo.utxo.input())); + } + if (treasuryUtxo) { + excludedInputIds.add(utxoKey(treasuryUtxo.input())); + } + if (vaultUtxo) { + excludedInputIds.add(utxoKey(vaultUtxo.input())); + } + // Exclude reference inputs (must be disjoint from regular inputs) + excludedInputIds.add(utxoKey(proxyUtxo.input())); + for (const refUtxo of Object.values(refInputs)) { + if (refUtxo) { + excludedInputIds.add(utxoKey(refUtxo.input())); + } + } + const feeUtxos = walletUtxos.filter( + (utxo) => !excludedInputIds.has(utxoKey(utxo.input())), + ); + + // 8. Compute input indices (ledger sorts inputs by txHash + outputIndex). + const allInputRefs: Core.TransactionInput[] = orderInfos.map((o) => + o.utxo.input(), + ); + if (treasuryUtxo) { + allInputRefs.push(treasuryUtxo.input()); + } + if (vaultUtxo) { + allInputRefs.push(vaultUtxo.input()); + } + for (const feeUtxo of feeUtxos) { + allInputRefs.push(feeUtxo.input()); + } + + const sortedAllInputRefs = [...allInputRefs].sort((a, b) => { + const txA = a.transactionId().toString(); + const txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + + const findInputIdx = (input: Core.TransactionInput): bigint => { + const idx = sortedAllInputRefs.findIndex( + (r) => + r.transactionId().toString() === input.transactionId().toString() && + r.index() === input.index(), + ); + return BigInt(idx); + }; + + const treasuryInputIdx = treasuryUtxo + ? findInputIdx(treasuryUtxo.input()) + : 0n; + const vaultInputIdx = vaultUtxo + ? findInputIdx(vaultUtxo.input()) + : undefined; + + // 8a. Correlate order inputs to signed request indices via origin fields. + // When all orders are present this produces the same identity mapping as before. + // When a subset is passed (partial execution), it maps each input to the + // correct request index in the signed payload. + const signedRequests = getRequestsFromAction(signedPayload.action); + const originToRequestIdx = new Map(); + for (let i = 0; i < signedRequests.length; i++) { + const o = signedRequests[i]!.origin; + originToRequestIdx.set(`${o.transaction_id}#${o.output_index}`, i); + } + + const inputToRequests: bigint[] = []; + const requestToOutputs: bigint[] = []; + for (let outputIdx = 0; outputIdx < orderInfos.length; outputIdx++) { + const input = orderInfos[outputIdx]!.utxo.input(); + const key = `${input.transactionId()}#${input.index()}`; + const requestIdx = originToRequestIdx.get(key); + if (requestIdx === undefined) { + throw new Error(`Order input ${key} not found in signed payload`); + } + inputToRequests.push(BigInt(requestIdx)); + requestToOutputs.push(BigInt(outputIdx)); + } + + // 9. Build outputs and compute output indices + const numDestOutputs = orderInfos.length; + + // For deposit with positive yield, the yield pot output is inserted after destinations + let numExtraOutputs = 0; + if (actionType === "deposit") { + const totalYield = orderInfos.reduce( + (sum, o) => sum + (o.yield ?? 0n), + 0n, + ); + if (totalYield > 0n) { + const vaultValue = vaultUtxo!.output().amount(); + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum!.circulating_supply; + const { unstakedYieldShare } = calculateYieldShares( + totalYield, + vaultUSDr, + treasuryCirculating, + ); + if (unstakedYieldShare > 0n) { + numExtraOutputs = 1; + } + } + } + + // For unstake with forfeit, add yield pot output + if (actionType === "unstake") { + const totalForfeit = orderInfos.reduce( + (sum, o) => sum + (o.forfeit ?? 0n), + 0n, + ); + if (totalForfeit > 0n) { + numExtraOutputs = 1; + } + } + + const treasuryOutputIdx = needsTreasury + ? BigInt(numDestOutputs + numExtraOutputs) + : 0n; + const vaultOutputIdx = needsVault + ? BigInt(numDestOutputs + numExtraOutputs + (needsTreasury ? 1 : 0)) + : undefined; + + // 10. Build ExtraProtocolRedeemer + const extra: V1_0Rc1Types.ExtraProtocolRedeemerV1 = { + request_to_outputs: requestToOutputs, + input_to_requests: inputToRequests, + treasury_input_idx: treasuryInputIdx, + treasury_output_idx: treasuryOutputIdx, + vault_input_idx: vaultInputIdx, + vault_output_idx: vaultOutputIdx, + }; + + // 11. Build SignedRedeemer + const serializedSignedRedeemer = Data.serialize( + V1_0Rc1Types.SignedRedeemer_v1_0_ExtraProtocolRedeemerV1, + { + extra, + payload: signedPayload, + signatures, + }, + ); + + const executeRedeemer = Data.serialize( + V1_0Rc1Types.OrderRedeemerV1, + "Execute", + ); + + // 12. Build the transaction + const tx = this.newOrderTransaction(); + + // Add order inputs with Execute redeemer + for (const orderInfo of orderInfos) { + tx.addInput(orderInfo.utxo, executeRedeemer); + } + + // Add wallet fee inputs explicitly + for (const feeUtxo of feeUtxos) { + tx.addInput(feeUtxo); + } + + // Add reference inputs + tx.addReferenceInput(refInputs.protocol!); + tx.addReferenceInput(refInputs.order!); + tx.addReferenceInput(proxyUtxo); + // V1.0 sub-validator reference inputs + if (refInputs.protocolMint) { + tx.addReferenceInput(refInputs.protocolMint); + } + if (refInputs.protocolStake) { + tx.addReferenceInput(refInputs.protocolStake); + } + if (refInputs.protocolManagement) { + tx.addReferenceInput(refInputs.protocolManagement); + } + if (refInputs.treasury) { + tx.addReferenceInput(refInputs.treasury); + } + if (refInputs.stakingVault) { + tx.addReferenceInput(refInputs.stakingVault); + } + + // Add orchestrator withdrawal with signed redeemer + const orchestratorRewardAccount = Core.RewardAccount.fromCredential( + { + type: Core.CredentialType.ScriptHash, + hash: this.protocolScriptHash, + }, + this.network, + ); + tx.addWithdrawal(orchestratorRewardAccount, 0n, serializedSignedRedeemer); + + // Determine which sub-validator to use based on action type + const subValidatorHash = + actionType === "mint" || + actionType === "burn" || + actionType === "direct_mint" || + actionType === "direct_burn" + ? this.protocolMintScriptHash + : actionType === "stake" || actionType === "unstake" + ? this.protocolStakeScriptHash + : this.protocolManagementScriptHash; // deposit, withdraw + + // Add sub-validator withdrawal with void redeemer + const subValidatorRewardAccount = Core.RewardAccount.fromCredential( + { + type: Core.CredentialType.ScriptHash, + hash: subValidatorHash, + }, + this.network, + ); + const voidRedeemer = Data.Void(); + tx.addWithdrawal(subValidatorRewardAccount, 0n, voidRedeemer); + + // Build per-action-type outputs, minting, and state updates + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const sUSDrAssetId = Core.AssetId( + this.stablecoinPolicyId + this.sUSDrAssetNameHex, + ); + + switch (actionType) { + case "mint": + this.buildMintExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + settings, + ); + break; + case "burn": + this.buildBurnExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + settings, + ); + break; + case "withdraw": + this.buildWithdrawExecute( + tx, + orderInfos, + treasuryUtxo!, + parsedTreasuryDatum!, + settings, + ); + break; + case "deposit": + this.buildDepositExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + vaultUtxo!, + parsedVaultDatum!, + settings, + ); + break; + case "stake": + this.buildStakeExecute( + tx, + orderInfos, + stablecoinAssetId, + sUSDrAssetId, + vaultUtxo!, + parsedVaultDatum!, + ); + break; + case "unstake": + this.buildUnstakeExecute( + tx, + orderInfos, + stablecoinAssetId, + sUSDrAssetId, + vaultUtxo!, + parsedVaultDatum!, + settings, + ); + break; + case "direct_mint": + this.buildDirectMintExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + ); + break; + case "direct_burn": + this.buildDirectBurnExecute( + tx, + orderInfos, + stablecoinAssetId, + treasuryUtxo!, + parsedTreasuryDatum!, + ); + break; + } + + // Provide the mint proxy script for minting + tx.provideScript(this.mintProxyScript); + + return tx; + } + + // ───────────────────────────────────────────────────────────────────────────── + // Per-Action Execute Builders (rc1: no fees, plain min-ADA destination outputs) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Mint: reserve goes to treasury, USDr minted to destinations. + */ + protected override buildMintExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + settings: SettingsV1, + ): void { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send USDr to each destination + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress( + this.network, + orderInfo.datum.destination, + ); + addDirectOutput( + tx, + destAddress, + makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount]), + ); + } + + // Mint USDr + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), + Data.Void(), + ); + + // Compute per-reserve-asset deltas + const reserveDeltas = computeReserveDeltas(orderInfos, settings); + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + totalAmount, + ); + } + + /** + * Burn: USDr burned, reserve sent to destinations. + */ + protected override buildBurnExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + settings: SettingsV1, + ): void { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send reserve tokens to each destination + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress( + this.network, + orderInfo.datum.destination, + ); + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const reserveAssetId = Core.AssetId( + orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1], + ); + const reserveAmount = usdrToReserve(-orderInfo.amount, ra); + addDirectOutput( + tx, + destAddress, + makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]), + ); + } + + // Burn USDr (totalAmount is negative) + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), + Data.Void(), + ); + + // Compute per-reserve-asset deltas + const reserveDeltas = computeReserveDeltas(orderInfos, settings); + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + totalAmount, + ); + } + + /** + * Withdraw: reserve sent to destinations, no mint/burn. + */ + protected override buildWithdrawExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + settings: SettingsV1, + ): void { + // Destination outputs: send reserve tokens to each destination + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress( + this.network, + orderInfo.datum.destination, + ); + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const reserveAssetId = Core.AssetId( + orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1], + ); + const reserveAmount = usdrToReserve(orderInfo.amount, ra); + addDirectOutput( + tx, + destAddress, + makeValue(MIN_LOVELACE, [reserveAssetId, reserveAmount]), + ); + } + + // Update treasury: reserve decreases, no circulating_supply change + const reserveDeltas = computeReserveDeltas(orderInfos, settings, true); + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + 0n, + ); + } + + /** + * Deposit: reserve deposited, interest USDr minted and split between vault and yield pot. + */ + protected override buildDepositExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: VaultDatumV1, + settings: SettingsV1, + ): void { + const totalYield = orderInfos.reduce((sum, o) => sum + (o.yield ?? 0n), 0n); + + // Destination outputs: min ADA to each destination + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress( + this.network, + orderInfo.datum.destination, + ); + addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE)); + } + + // Calculate yield split + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + + const { stakedYieldShare, unstakedYieldShare } = calculateYieldShares( + totalYield, + vaultUSDr, + treasuryCirculating, + ); + + if (totalYield > 0n) { + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalYield]]), + Data.Void(), + ); + + if (unstakedYieldShare > 0n) { + const yieldPotAddress = destinationToAddress(this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum", + }); + addDirectOutput( + tx, + yieldPotAddress, + makeValue(MIN_LOVELACE, [stablecoinAssetId, unstakedYieldShare]), + ); + } + } else if (totalYield < 0n) { + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalYield]]), + Data.Void(), + ); + } + + // Update treasury + const reserveDeltas = new Map(); + for (const orderInfo of orderInfos) { + const assetId = orderInfo.reserveAsset![0] + orderInfo.reserveAsset![1]; + const ra = findReserveAsset(settings, orderInfo.reserveAsset!); + const yieldValue = orderInfo.yield ?? 0n; + + const usdrBacking = + yieldValue >= 0n ? orderInfo.amount + yieldValue : orderInfo.amount; + + const reserveAmount = usdrToReserve(usdrBacking, ra); + reserveDeltas.set( + assetId, + (reserveDeltas.get(assetId) ?? 0n) + reserveAmount, + ); + } + this.updateTreasuryOutput( + tx, + treasuryUtxo, + parsedTreasuryDatum, + reserveDeltas, + totalYield, + ); + + // Update vault + this.updateVaultOutput( + tx, + vaultUtxo, + parsedVaultDatum, + 0n, + stakedYieldShare, + ); + } + + /** + * Stake: USDr locked in vault, sUSDr minted to destinations. + */ + protected override buildStakeExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + sUSDrAssetId: Core.AssetId, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: VaultDatumV1, + ): void { + const totalUSDrStaked = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + + let totalSUSDrMinted: bigint; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + totalSUSDrMinted = totalUSDrStaked; + } else { + totalSUSDrMinted = (totalUSDrStaked * circulatingSUSDr) / vaultUSDr; + } + + for (const orderInfo of orderInfos) { + let sUSDrAmount: bigint; + if (circulatingSUSDr === 0n || vaultUSDr === 0n) { + sUSDrAmount = orderInfo.amount; + } else { + sUSDrAmount = (orderInfo.amount * circulatingSUSDr) / vaultUSDr; + } + + const destAddress = destinationToAddress( + this.network, + orderInfo.datum.destination, + ); + addDirectOutput( + tx, + destAddress, + makeValue(MIN_LOVELACE, [sUSDrAssetId, sUSDrAmount]), + ); + } + + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.sUSDrAssetNameHex), totalSUSDrMinted]]), + Data.Void(), + ); + + this.updateVaultOutput( + tx, + vaultUtxo, + parsedVaultDatum, + totalSUSDrMinted, + totalUSDrStaked, + ); + } + + /** + * Unstake: sUSDr burned, USDr sent to user's destination address. + * V1_0Rc1: Supports forfeit parameter - forfeited USDr goes to yield pot. + */ + protected override buildUnstakeExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + sUSDrAssetId: Core.AssetId, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: VaultDatumV1, + settings: SettingsV1, + ): void { + const totalSUSDrBurned = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + const vaultValue = vaultUtxo.output().amount(); + const vaultUSDr = vaultValue.multiasset()?.get(stablecoinAssetId) ?? 0n; + const circulatingSUSDr = parsedVaultDatum.circulating_susdr; + + if (circulatingSUSDr === 0n) { + throw new Error("Cannot unstake: no sUSDr in circulation"); + } + + let totalUSDrReleased = 0n; + let totalForfeit = 0n; + + for (const orderInfo of orderInfos) { + const uSDrEntitled = (orderInfo.amount * vaultUSDr) / circulatingSUSDr; + const forfeit = orderInfo.forfeit ?? 0n; + const uSDrAmount = uSDrEntitled - forfeit; + + totalUSDrReleased += uSDrEntitled; + totalForfeit += forfeit; + + const destAddress = destinationToAddress( + this.network, + orderInfo.datum.destination, + ); + const output = new Core.TransactionOutput( + destAddress, + makeValue(MIN_LOVELACE, [stablecoinAssetId, uSDrAmount]), + ); + tx.addOutput(output); + } + + // Send forfeited USDr to yield pot if any + if (totalForfeit > 0n) { + const yieldPotAddress = destinationToAddress(this.network, { + address: settings.unstaked_yield_pot, + datum: "NoDatum", + }); + addDirectOutput( + tx, + yieldPotAddress, + makeValue(MIN_LOVELACE, [stablecoinAssetId, totalForfeit]), + ); + } + + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.sUSDrAssetNameHex), -totalSUSDrBurned]]), + Data.Void(), + ); + + this.updateVaultOutput( + tx, + vaultUtxo, + parsedVaultDatum, + -totalSUSDrBurned, + -totalUSDrReleased, + ); + } + + /** + * DirectMint: Mint USDr without reserve asset flow. + * USDr is minted to destinations, treasury circulating_supply increases. + * NO reserve asset changes. + */ + protected override buildDirectMintExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + ): void { + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // Destination outputs: send USDr to each destination + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress( + this.network, + orderInfo.datum.destination, + ); + addDirectOutput( + tx, + destAddress, + makeValue(MIN_LOVELACE, [stablecoinAssetId, orderInfo.amount]), + ); + } + + // Mint USDr + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), + Data.Void(), + ); + + // Update treasury: circulating_supply increases, NO reserve changes + this.updateTreasuryOutputNoReserve( + tx, + treasuryUtxo, + parsedTreasuryDatum, + totalAmount, + ); + } + + /** + * DirectBurn: Burn USDr without reserve asset flow. + * USDr is burned, treasury circulating_supply decreases. + * NO reserve asset changes, NO destination outputs (fiat sent off-chain). + * + * The `_stablecoinAssetId` parameter exists only to keep the override + * signature compatible with the family's; rc1's direct-burn output is + * min-ADA only and does not touch the stablecoin asset. + */ + protected override buildDirectBurnExecute( + tx: TxBuilder, + orderInfos: IOrderInfo[], + _stablecoinAssetId: Core.AssetId, + treasuryUtxo: Core.TransactionUnspentOutput, + parsedTreasuryDatum: V0_1TreasuryDatum, + ): void { + // totalAmount is negative for burns (from classifyOrderAction) + const totalAmount = orderInfos.reduce((sum, o) => sum + o.amount, 0n); + + // CRITICAL: No destination outputs for DirectBurn + // USDr is burned, fiat is sent off-chain. Nothing goes to user on-chain. + // We just need to return min ADA to the destination (contract may require this) + for (const orderInfo of orderInfos) { + const destAddress = destinationToAddress( + this.network, + orderInfo.datum.destination, + ); + addDirectOutput(tx, destAddress, makeValue(MIN_LOVELACE)); + } + + // Burn USDr (totalAmount is negative) + tx.addMint( + this.stablecoinPolicyId, + new Map([[Core.AssetName(this.assetNameHex), totalAmount]]), + Data.Void(), + ); + + // Update treasury: circulating_supply decreases, NO reserve changes + this.updateTreasuryOutputNoReserve( + tx, + treasuryUtxo, + parsedTreasuryDatum, + totalAmount, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Protected Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Classify an order action from its datum (rc1 actions carry no min_received). + */ + protected override classifyOrderAction(datum: OrderDatumV1): { + actionType: TOrderActionType; + amount: bigint; + yield?: bigint; + forfeit?: bigint; + reserveAsset?: [string, string]; + isTreasuryAction: boolean; + } { + const action = datum.action; + if ("OMint" in action) { + return { + actionType: "mint", + amount: action.OMint.amount, + reserveAsset: action.OMint.reserve_asset, + isTreasuryAction: true, + }; + } else if ("ORedeem" in action) { + return { + actionType: "burn", + amount: -action.ORedeem.amount, + reserveAsset: action.ORedeem.reserve_asset, + isTreasuryAction: true, + }; + } else if ("ODeposit" in action) { + return { + actionType: "deposit", + amount: action.ODeposit.principal, + yield: action.ODeposit.yield, + reserveAsset: action.ODeposit.reserve_asset, + isTreasuryAction: true, + }; + } else if ("OWithdraw" in action) { + return { + actionType: "withdraw", + amount: action.OWithdraw.amount, + reserveAsset: action.OWithdraw.reserve_asset, + isTreasuryAction: true, + }; + } else if ("OStake" in action) { + return { + actionType: "stake", + amount: action.OStake.amount, + isTreasuryAction: false, + }; + } else if ("OUnstake" in action) { + return { + actionType: "unstake", + amount: action.OUnstake.amount, + forfeit: action.OUnstake.forfeit, + isTreasuryAction: false, + }; + } else if ("ODirectMint" in action) { + return { + actionType: "direct_mint", + amount: action.ODirectMint.amount, + isTreasuryAction: true, + }; + } else if ("ODirectBurn" in action) { + return { + actionType: "direct_burn", + amount: -action.ODirectBurn.amount, + isTreasuryAction: true, + }; + } + throw new Error("Unknown order action type"); + } +} diff --git a/modules/realfi-partner-sdk/src/sdk/v1_1_rc1/diffusion.ts b/modules/realfi-partner-sdk/src/sdk/v1_1_rc1/diffusion.ts new file mode 100644 index 0000000000..bcd2bb53d5 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v1_1_rc1/diffusion.ts @@ -0,0 +1,144 @@ +import type { VaultDatumV1 } from "../../generated-types/v1_1_rc1/index.js"; + +export interface ISusdrExchangeRateInputs { + circulatingSusdr: bigint; + vaultUsdr: bigint; + pendingYield: bigint; + diffusionStartUnixMilli: bigint; + diffusionEndUnixMilli: bigint; +} + +export const SUSDR_EXCHANGE_RATE_PRECISION = 1_000_000n; + +/** + * Time-diffused yield — a verbatim TypeScript port of the on-chain helpers in + * `contracts/lib/v1_1_rc1/utilities.ak`. Deposited staked yield does not hit + * the exchange rate instantly; it releases linearly over a window so a large + * deposit cannot be sniped by staking right before it and unstaking right + * after. The SDK must reproduce this math exactly to build vault datums and + * rate quotes the validators accept. + * + * All timestamps are absolute POSIX milliseconds, matching the on-chain datum + * and the Plutus validity range (the ledger presents tx validity bounds to the + * script in POSIX ms, not slots). + */ + +/** + * Maximum tx validity-range span (ms) tolerated while a diffusion window is + * active. Mirrors `max_diffusion_rate_span` (utilities.ak). The validator + * rejects a wider range so an interpolated rate can't be read from a stale, + * far-future lower bound. + */ +export const MAX_DIFFUSION_RATE_SPAN_MS = 3_600_000n; + +/** + * USDr not yet diffused into the exchange rate at `atTimeMs`. Releases linearly + * from `diffusion_start` (full `pending_yield`) to `diffusion_end` (zero), + * rounded UP so settled backing is never overstated (conservative on unstake). + * + * Port of `pending_remaining` (utilities.ak:1082). + */ +export function pendingRemaining( + vault: VaultDatumV1, + atTimeMs: bigint, +): bigint { + const { pending_yield, diffusion_start, diffusion_end } = vault; + if (pending_yield <= 0n || atTimeMs >= diffusion_end) { + return 0n; + } + if (atTimeMs <= diffusion_start) { + return pending_yield; + } + const span = diffusion_end - diffusion_start; + // Round up: (a + span - 1) / span with BigInt truncating division. + return (pending_yield * (diffusion_end - atTimeMs) + span - 1n) / span; +} + +/** + * Settled backing — the USDr currently backing sUSDr — given the full vault + * USDr balance and diffusion state at `atTimeMs`. Port of `settled_backing` + * (utilities.ak:1099). When no window is active the whole balance is settled + * and `atTimeMs` is irrelevant (matches the validator, which then requires no + * validity bound). + */ +export function settledBacking( + usdrBalance: bigint, + vault: VaultDatumV1, + atTimeMs: bigint, +): bigint { + if (vault.pending_yield <= 0n) { + return usdrBalance; + } + return usdrBalance - pendingRemaining(vault, atTimeMs); +} + +/** + * Diffusion-aware USDr-per-sUSDr exchange rate, scaled by `precision`. + * Returns 1:1 when no sUSDr is circulating, matching the on-chain convention. + */ +export function calculateSusdrExchangeRate( + inputs: ISusdrExchangeRateInputs, + atTimeMs: bigint, + precision: bigint = SUSDR_EXCHANGE_RATE_PRECISION, +): bigint { + if (inputs.circulatingSusdr <= 0n) { + return precision; + } + + const vault: VaultDatumV1 = { + circulating_susdr: inputs.circulatingSusdr, + pending_yield: inputs.pendingYield, + diffusion_start: inputs.diffusionStartUnixMilli, + diffusion_end: inputs.diffusionEndUnixMilli, + }; + + return ( + (settledBacking(inputs.vaultUsdr, vault, atTimeMs) * precision) / + inputs.circulatingSusdr + ); +} + +/** + * The diffusion fields (`pending_yield`, `diffusion_start`, `diffusion_end`) + * the vault output must carry after a deposit. Port of the field expectations + * inside `validate_deposit_diffusion` (utilities.ak:1117). + * + * - Positive yield: the staked share rolls into `pending` on top of whatever + * hasn't diffused yet, and the window becomes `[nowMs, windowEndMs]`. If no + * window is requested (`windowEndMs <= 0`) and none is active, or the + * requested window has already elapsed by execution (`windowEndMs <= nowMs`), + * it collapses to instant `(0, 0, 0)`. + * - Loss (negative yield): the window is frozen (carried over unchanged); the + * loss is recognised immediately rather than diffused. + * + * `windowEndMs` is the max `diffusion_end` across the batch's deposit requests + * (`max_end` in deposit.ak); `nowMs` is the execution time (the tx validity + * lower bound). + */ +export function nextDepositDiffusion( + vaultIn: VaultDatumV1, + stakedYieldShare: bigint, + totalYield: bigint, + windowEndMs: bigint, + nowMs: bigint, +): { pending_yield: bigint; diffusion_start: bigint; diffusion_end: bigint } { + if (totalYield >= 0n) { + if (vaultIn.pending_yield <= 0n && windowEndMs <= 0n) { + return { pending_yield: 0n, diffusion_start: 0n, diffusion_end: 0n }; + } + if (windowEndMs > nowMs) { + return { + pending_yield: pendingRemaining(vaultIn, nowMs) + stakedYieldShare, + diffusion_start: nowMs, + diffusion_end: windowEndMs, + }; + } + return { pending_yield: 0n, diffusion_start: 0n, diffusion_end: 0n }; + } + // Loss: freeze the existing window. + return { + pending_yield: vaultIn.pending_yield, + diffusion_start: vaultIn.diffusion_start, + diffusion_end: vaultIn.diffusion_end, + }; +} diff --git a/modules/realfi-partner-sdk/src/sdk/v1_1_rc1/index.ts b/modules/realfi-partner-sdk/src/sdk/v1_1_rc1/index.ts new file mode 100644 index 0000000000..cec70d0db5 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sdk/v1_1_rc1/index.ts @@ -0,0 +1,1281 @@ +import { blake2b_256, HexBlob, PlutusData } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { parse, type Exact } from "@blaze-cardano/data"; +import type { Provider } from "@blaze-cardano/query"; +import { + type Blaze, + Core, + makeValue, + type TxBuilder, + Value, + type Wallet, +} from "@blaze-cardano/sdk"; + +import { + BaseTypes, + V0_1Types, + V0_4Types, + V1_0Types, + V1_1Rc1Types, +} from "../../generated-types/index.js"; +import type { + Destination, + MultisigScript, + OrderActionV1, + SettingsV1, + TreasuryRequestV1, + Tuple_VerificationKey_COSESign1, + VaultDatumV1, +} from "../../generated-types/v1_1_rc1/index.js"; + +import { + buildNonceFromUtxo, + credentialFromScript, + deployScript, + findReserveAsset, + getDatumFromNFT, + slotAlignedTimeMs, + slotFloor, + usdrToReserveCeil, + YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER, + type ICachedReferenceInputs, +} from "../shared/index.js"; +import { + calculateYieldShares, + MIN_LOVELACE, + RealfiSDKV1Family, + type IClassifiedOrderAction, + type IExecutionValidityContext, + type IOrderInfo, + type IRequestOrigin, + type IV1FamilyConstructorParams, +} from "../v1/family.js"; +import type { + IV1FamilySchemas, + IV1FamilyScripts, + IV1SigningSchemas, + IYieldSplitAlpha, + TV1Registry, + TV1SettingsConfig, +} from "../v1/types.js"; + +/** V1_1-specific knobs threaded from the public params to the constructor. */ +// eslint-disable-next-line @typescript-eslint/naming-convention +interface IV1_1Rc1Options { + now?: () => bigint; + defaultDiffusionDurationMs?: bigint; + executionValidityWindowMs?: bigint; + diffusionShortfallThresholdMs?: bigint; + throwOnDiffusionWindowShortfall?: boolean; + distributionOracleScriptHash: Core.Hash28ByteBase16; + /** + * The `protocol_migration_v1_0_to_v1_1` withdraw validator script. Used to + * deploy/register it and to attach its withdrawal + hash when running the + * in-place vault-datum migration (`MigrateState`). + */ + migrationScript: Core.Script; +} + +import { + MAX_DIFFUSION_RATE_SPAN_MS, + nextDepositDiffusion, + pendingRemaining, + settledBacking, +} from "./diffusion.js"; + +// eslint-disable-next-line @typescript-eslint/naming-convention +export interface IRealfiSDKParamsV1_1Rc1 { + version: "V1_1_Rc1"; + proxyBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** USDr asset name hex */ + assetNameHex: string; + /** sUSDr asset name hex */ + sUSDrAssetNameHex: string; + /** The treasury bootstrap UTxO reference */ + treasuryBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** The staking vault bootstrap UTxO reference */ + stakingVaultBootstrap: { + txHash: Core.TransactionId; + outputIndex: bigint; + }; + /** + * Dedicated bootstrap UTxO for the yield_oracle NFT one-shot, baked into the + * orchestrator's logic hash (via the yield_oracle validator param). + * + * OPTIONAL: a deployment that DEFERS the oracle can omit it, in which case the + * SDK uses {@link YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER} — a permanently + * un-consumable all-zeros reference. A deployment that intends to actually run + * the oracle must supply a real, still-unspent UTxO here (distinct from the + * proxy/treasury/stakingVault seeds, each of which its own NFT mint consumes), + * so the oracle policy stays mintable when the publish flow bootstraps the + * oracle NFT. + */ + yieldOracleBootstrap?: { + readonly txHash: Core.TransactionId; + readonly outputIndex: bigint; + }; + /** Enable trace output in Plutus scripts for debugging. Default: false */ + enableTrace?: boolean; + /** + * Fallback slippage tolerance (bps) for stake/unstake `minReceived`. 50n = + * 0.5%. Default: 50n. Same semantics as V1_0. + */ + defaultSlippageToleranceBps?: bigint; + /** + * Use V0.1 treasury script instead of V1.1. Needed for protocol-only + * upgrades where the treasury NFT stays at the V0.1 address. Default: false + */ + useV0_1Treasury?: boolean; + /** + * Use V0.4 staking vault script instead of V1.1. Needed for protocol-only + * upgrades where the vault NFT stays at the V0.4 address. Default: false + */ + useV0_4StakingVault?: boolean; + /** + * Hashes of the validators this deployment actually runs. See + * IV1FamilyConstructorParams.deployedValidators. + */ + deployedValidators?: Readonly>; + /** + * Address to deploy reference scripts to (and resolve them from). When + * omitted, Blaze's burn address is used for both deploy and resolve. + */ + scriptDeploymentAddress?: Core.Address; + referenceInputs?: { + protocolRefInput?: Core.TransactionUnspentOutput; + proxyRefInput?: Core.TransactionUnspentOutput; + treasuryRefInput?: Core.TransactionUnspentOutput; + orderRefInput?: Core.TransactionUnspentOutput; + stakingVaultRefInput?: Core.TransactionUnspentOutput; + }; + /** + * Default diffusion window length (ms) applied to `buildDepositOrderTx` when + * the caller passes neither `diffusionEnd` nor `diffusionDurationMs`. Measured + * from ORDER-CREATION time (not execution). When unset, deposits default to + * instant (no diffusion window). Choose to match the yield-deposit cadence + * (~24h for daily deposits, ~5d per epoch). + */ + defaultDiffusionDurationMs?: bigint; + /** + * Forward validity window (ms) attached to vault-touching executions while a + * diffusion window is active. The window plus any default-clock backoff must + * not exceed 1h (`MAX_DIFFUSION_RATE_SPAN_MS`). Default: 30 minutes. + */ + executionValidityWindowMs?: bigint; + /** + * Remaining diffusion window (ms) at or below which a deposit execution + * reports a shortfall (see {@link throwOnDiffusionWindowShortfall} for how). + * Default: 0n — only a window that has FULLY lapsed by execution time, which + * is the point the validator collapses it to an instant deposit. Raise it + * (e.g. 300_000n) to also flag a window that will survive execution but has + * nearly nothing left to diffuse over. + */ + diffusionShortfallThresholdMs?: bigint; + /** + * Refuse (throw) rather than `console.warn` when a deposit execution hits a + * diffusion-window shortfall. Default: false — a lapsed window is still a + * valid, executable deposit on-chain (it just settles instantly), so the + * default never blocks an execution. Set true in automation that must not + * silently under-deliver a diffused deposit. + */ + throwOnDiffusionWindowShortfall?: boolean; + /** + * Injectable clock (POSIX ms) for the diffusion rate time and deposit + * `diffusion_end` defaulting. Defaults to wall-clock `Date.now()`. Tests + * pass a deterministic function tied to the emulator clock. + */ + now?: () => bigint; +} + +const DEFAULT_EXECUTION_VALIDITY_WINDOW_MS = 1_800_000n; // 30 minutes + +/** + * How far in the past to open a vault-touching execution's validity interval + * when using the default wall clock. + * + * The validator requires the vault's `diffusion_start` to equal the validity + * lower bound. Backing off both values absorbs submitter clock skew without + * shortening duration-based order windows or the forward execution window. + * Injected clocks are used verbatim for deterministic emulator tests. + */ +const DEFAULT_CLOCK_BACKOFF_MS = 120_000n; // 2 minutes + +// ───────────────────────────────────────────────────────────────────────────── +// SDK Class +// ───────────────────────────────────────────────────────────────────────────── + +/** + * V1_1_Rc1 SDK implementation. + * + * The release candidate keeps V1_0's order/redeemer taxonomy (fees, + * `min_received`, `ExchangeRequestV1`/`TreasuryRequestV1`/`StakeRequestV1`) and + * adds **time-diffused yield**: the staking vault datum grows to four fields + * (`circulating_susdr`, `pending_yield`, `diffusion_start`, `diffusion_end`) + * and deposited staked yield releases into the exchange rate linearly over a + * window rather than instantly. + * + * Because the redeemer shape is V1_0 plus an additive `diffusion_end`, this + * class reuses {@link RealfiSDKV1Family}'s V1_0-semantics tx-builders wholesale + * and overrides only the diffusion seams: + * - the four-field vault datum ({@link buildInitialVaultDatum} / + * {@link buildUpdatedVaultDatum}) and nested settings adapters; + * - {@link settledVaultBacking}: quote stake/unstake rates against settled + * backing (balance minus not-yet-diffused pending yield); + * - {@link buildTreasuryRequest}: echo the order datum's `diffusion_end` into + * the signed payload; + * - {@link updateDepositVaultOutput}: roll the staked share into the diffusion + * window on deposit; + * - {@link buildDepositOrderTx}: expose the `diffusion_end` order parameter; + * - {@link applyExecutionValidityBounds}: attach the validity range the + * diffusion rate time is read from. + */ +export class RealfiSDKV1_1Rc1< + P extends Provider, + W extends Wallet, +> extends RealfiSDKV1Family { + readonly version = "V1_1_Rc1" as const; + + private readonly nowFn: () => bigint; + private readonly defaultDiffusionDurationMs?: bigint; + private readonly executionValidityWindowMs: bigint; + private readonly executionClockBackoffMs: bigint; + private readonly diffusionShortfallThresholdMs: bigint; + private readonly throwOnDiffusionWindowShortfall: boolean; + /** + * The `distribution_oracle` (publish-logic) validator hash. Exposed so + * settings datums can point `registry.yield_oracle` at it — that is the + * withdrawal the orchestrator's PublishYieldOracle path requires. NOTE: this + * is NOT the orchestrator's 5th compile-time parameter; that parameter is the + * `yield_oracle` validator hash (the mint+spend validator that holds the + * oracle UTxO), which is a different validator with a different hash. + */ + readonly distributionOracleScriptHash: Core.Hash28ByteBase16; + + /** + * The `protocol_migration_v1_0_to_v1_1` withdraw validator and its hash. + * The validator is registry-gated (whitelisted via `registry.migration`), NOT + * an orchestrator compile-time parameter, so it lives version-locally on this + * class. Deploy it (`deployMigration`) + register its stake + * (`registerMigrationStake`), then run `buildMigrateStateTx` to migrate a + * v1_0 one-field vault datum to the four-field v1_1 shape in place. + */ + readonly migrationScript: Core.Script; + readonly migrationScriptHash: Core.Hash28ByteBase16; + + /** + * Slot-aligned execution bounds for the in-flight `buildExecuteOrdersTx`. + * `executionNowMs` is the backed-off lower bound used by the diffusion datum + * and rate quote; `executionValidUntilMs` is based on the unshifted wall time. + * Both are undefined outside an execution build. + */ + private executionNowMs?: bigint; + private executionValidUntilMs?: bigint; + + static create

( + blaze: Blaze, + params: IRealfiSDKParamsV1_1Rc1, + ): RealfiSDKV1_1Rc1 { + const enableTrace = params.enableTrace ?? false; + + // 1. Create oneshot script + const oneShotScript = new BaseTypes.BaseOneshotOneshotMint( + { + transaction_id: params.proxyBootstrap.txHash, + output_index: params.proxyBootstrap.outputIndex, + }, + enableTrace, + ).Script; + const oneShotPolicyId = oneShotScript.hash(); + + // 2. Create sub-validator scripts first (they only need proxy policy) + const protocolMintScript = + new V1_1Rc1Types.V1_1Rc1ProtocolMintProtocolMintWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + const protocolStakeScript = + new V1_1Rc1Types.V1_1Rc1ProtocolStakeProtocolStakeWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + const protocolManagementScript = + new V1_1Rc1Types.V1_1Rc1ProtocolManagementProtocolManagementWithdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + // 3. Derive the two oracle validators. They are DISTINCT scripts with + // distinct roles and hashes (the shared "yield_oracle" naming is a contract + // quirk): + // - `yield_oracle` is a mint+spend validator: its single hash is both the + // oracle-NFT policy id AND the address holding the long-lived oracle + // UTxO. This is the orchestrator's `yield_oracle_validator` compile-time + // param — ExecuteOrders' `no_script_input` guard protects that UTxO from + // being drained by a normal execution. + // - `distribution_oracle` is the withdraw-only publish-logic validator. + // Its hash is what `registry.yield_oracle` must hold (PublishYieldOracle + // requires THIS validator's withdrawal). + // Seeded by its OWN dedicated bootstrap UTxO (NOT proxyBootstrap, which the + // proxy NFT mint consumes) so the oracle one-shot stays satisfiable when the + // publish flow later bootstraps the oracle NFT. Only the hashes are needed + // here (the publish path / NFT mint is a follow-up). + // A deferred oracle omits the seed → default to the placeholder (a + // permanently un-consumable reference). A deployment that runs the oracle + // supplies a real seed. Either way the orchestrator hash is deterministic. + const yieldOracleBootstrap = + params.yieldOracleBootstrap ?? YIELD_ORACLE_BOOTSTRAP_PLACEHOLDER; + const yieldOracleScript = + new V1_1Rc1Types.V1_1Rc1YieldOracleYieldOracleMint( + { + transaction_id: yieldOracleBootstrap.txHash, + output_index: yieldOracleBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + const yieldOracleValidatorHash = yieldOracleScript.hash(); + // The oracle NFT is minted under the yield_oracle validator's own policy, so + // the NFT policy id equals that validator's hash. + const oracleNftPolicyId = yieldOracleValidatorHash; + const distributionOracleScript = + new V1_1Rc1Types.V1_1Rc1DistributionOracleDistributionOracleWithdraw( + oneShotPolicyId, + oracleNftPolicyId, + enableTrace, + ).Script; + const distributionOracleScriptHash = distributionOracleScript.hash(); + + // The v1_0→v1_1 migration validator. Withdraw-only and registry-gated (not + // an orchestrator compile param): whitelisted at runtime via + // `registry.migration`. Only the proxy policy id parametrizes it. + const migrationScript = + new V1_1Rc1Types.V1_1Rc1ProtocolMigrationV1_0ToV1_1ProtocolMigrationV1_0ToV1_1Withdraw( + oneShotPolicyId, + enableTrace, + ).Script; + + // 4. Create orchestrator with sub-validator hashes + the yield_oracle + // validator hash (the validator that HOLDS the oracle UTxO — NOT + // distribution_oracle). + const protocolOrchestratorScript = + new V1_1Rc1Types.V1_1Rc1ProtocolOrchestratorProtocolOrchestratorWithdraw( + oneShotPolicyId, + protocolMintScript.hash(), + protocolStakeScript.hash(), + protocolManagementScript.hash(), + yieldOracleValidatorHash, + enableTrace, + ).Script; + + const mintProxyScript = new BaseTypes.BaseMintProxyMintProxyMint( + oneShotPolicyId, + enableTrace, + ).Script; + + // Use V0.1 or V1.1 treasury script based on option + const treasuryScript = params.useV0_1Treasury + ? new V0_1Types.V0_1TreasuryTreasurySpend( + { + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script + : new V1_1Rc1Types.V1_1Rc1TreasuryTreasurySpend( + { + transaction_id: params.treasuryBootstrap.txHash, + output_index: params.treasuryBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + // 4. Create order script with orchestrator hash + const orderScript = new V1_1Rc1Types.V1_1Rc1OrderOrderSpend( + oneShotPolicyId, + protocolOrchestratorScript.hash(), + enableTrace, + ).Script; + + // Use V0.4 or V1.1 staking vault script based on option + const stakingVaultScript = params.useV0_4StakingVault + ? new V0_4Types.V0_4StakingVaultStakingVaultSpend( + { + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script + : new V1_1Rc1Types.V1_1Rc1StakingVaultStakingVaultSpend( + { + transaction_id: params.stakingVaultBootstrap.txHash, + output_index: params.stakingVaultBootstrap.outputIndex, + }, + oneShotPolicyId, + enableTrace, + ).Script; + + return new RealfiSDKV1_1Rc1( + blaze, + { + version: "V1_1_Rc1", + proxyBootstrap: params.proxyBootstrap, + assetNameHex: params.assetNameHex, + sUSDrAssetNameHex: params.sUSDrAssetNameHex, + enableTrace, + defaultSlippageToleranceBps: params.defaultSlippageToleranceBps, + scriptDeploymentAddress: params.scriptDeploymentAddress, + deployedValidators: params.deployedValidators, + }, + V1_1Rc1Types, + { + oneShotScript, + protocolOrchestratorScript, + protocolMintScript, + protocolStakeScript, + protocolManagementScript, + mintProxyScript, + treasuryScript, + orderScript, + stakingVaultScript, + }, + { + protocolRefInput: params.referenceInputs?.protocolRefInput, + proxyRefInput: params.referenceInputs?.proxyRefInput, + treasuryRefInput: params.referenceInputs?.treasuryRefInput, + orderRefInput: params.referenceInputs?.orderRefInput, + stakingVaultRefInput: params.referenceInputs?.stakingVaultRefInput, + }, + // The v1_1 signed-payload / signed-redeemer schemas are the V1_0-shaped + // payload plus TreasuryRequestV1.diffusion_end (additive), so they map + // onto the family's stable signing-schema keys. blaze mangles the + // orchestrator generics with a `_v1_1_` infix (see the codegen note in + // project_v1_1_rc1_vs_audited_v1_1_divergence); remap them here. + { + SignedPayload_ProtocolRedeemerV1: + V1_1Rc1Types.SignedPayload_v1_1_ProtocolRedeemerV1, + SignedRedeemer_ExtraProtocolRedeemerV1: + V1_1Rc1Types.SignedRedeemer_v1_1_ExtraProtocolRedeemerV1, + }, + { + now: params.now, + defaultDiffusionDurationMs: params.defaultDiffusionDurationMs, + executionValidityWindowMs: params.executionValidityWindowMs, + diffusionShortfallThresholdMs: params.diffusionShortfallThresholdMs, + throwOnDiffusionWindowShortfall: params.throwOnDiffusionWindowShortfall, + distributionOracleScriptHash, + migrationScript, + }, + ); + } + + protected constructor( + blaze: Blaze, + params: IV1FamilyConstructorParams, + schemas: IV1FamilySchemas, + scripts: IV1FamilyScripts, + cachedReferenceInputs: ICachedReferenceInputs | undefined, + signingSchemas: IV1SigningSchemas, + options: IV1_1Rc1Options, + ) { + super( + blaze, + params, + schemas, + scripts, + cachedReferenceInputs, + signingSchemas, + ); + this.nowFn = options.now ?? (() => BigInt(Date.now())); + this.executionClockBackoffMs = + options.now === undefined ? DEFAULT_CLOCK_BACKOFF_MS : 0n; + this.defaultDiffusionDurationMs = options.defaultDiffusionDurationMs; + this.diffusionShortfallThresholdMs = + options.diffusionShortfallThresholdMs ?? 0n; + // A negative threshold would silently suppress detection of a window that + // HAS lapsed (remaining is negative by then), defeating the whole guard — + // and, with throwOnDiffusionWindowShortfall set, defeating it silently. + if (this.diffusionShortfallThresholdMs < 0n) { + throw new RangeError( + `diffusionShortfallThresholdMs must be non-negative, got ${this.diffusionShortfallThresholdMs} ms.`, + ); + } + this.throwOnDiffusionWindowShortfall = + options.throwOnDiffusionWindowShortfall ?? false; + this.executionValidityWindowMs = + options.executionValidityWindowMs ?? DEFAULT_EXECUTION_VALIDITY_WINDOW_MS; + const validitySpanMs = + this.executionClockBackoffMs + this.executionValidityWindowMs; + if ( + this.executionValidityWindowMs < 0n || + validitySpanMs > MAX_DIFFUSION_RATE_SPAN_MS + ) { + throw new RangeError( + `Execution validity span must be at most 1 hour (${MAX_DIFFUSION_RATE_SPAN_MS} ms), got ${validitySpanMs} ms.`, + ); + } + this.distributionOracleScriptHash = options.distributionOracleScriptHash; + this.migrationScript = options.migrationScript; + this.migrationScriptHash = options.migrationScript.hash(); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Version Seams + // ───────────────────────────────────────────────────────────────────────────── + + protected settingsConfig(settings: SettingsV1): TV1SettingsConfig { + // V1_1 settings are nested: the reserve/pot config lives under `config`. + return settings.config; + } + + protected settingsRegistry(settings: SettingsV1): TV1Registry { + return settings.registry; + } + + protected buildInitialVaultDatum(): VaultDatumV1 { + return { + circulating_susdr: 0n, + pending_yield: 0n, + diffusion_start: 0n, + diffusion_end: 0n, + }; + } + + protected buildUpdatedVaultDatum( + previous: VaultDatumV1, + sUSDrDelta: bigint, + ): VaultDatumV1 { + // Stake / unstake move only circulating_susdr; the diffusion window passes + // through untouched (stake.ak / unstake.ak enforce this). Deposit builds + // its datum via updateDepositVaultOutput, not this seam. + return { + circulating_susdr: previous.circulating_susdr + sUSDrDelta, + pending_yield: previous.pending_yield, + diffusion_start: previous.diffusion_start, + diffusion_end: previous.diffusion_end, + }; + } + + protected override settledVaultBacking( + parsedVaultDatum: VaultDatumV1, + vaultUSDr: bigint, + ): bigint { + return settledBacking(vaultUSDr, parsedVaultDatum, this.rateTimeMs()); + } + + protected override buildTreasuryRequest( + datum: Parameters< + RealfiSDKV1Family["buildTreasuryRequest"] + >[0], + parsed: IClassifiedOrderAction, + origin: IRequestOrigin, + ): TreasuryRequestV1 { + // The signed request must echo the order datum's diffusion_end + // (utilities.ak enforces request.diffusion_end == order.diffusion_end). + const action = datum.action as OrderActionV1; + const diffusionEnd = + "ODeposit" in action ? action.ODeposit.diffusion_end : 0n; + return { + destination: datum.destination, + amount: parsed.amount, + yield: parsed.yield ?? 0n, + diffusion_end: diffusionEnd, + origin, + reserve_asset: parsed.reserveAsset!, + }; + } + + protected override get splitsYield(): boolean { + return true; + } + + /** + * The yield split a deposit batch's creator should pick: + * vault_usdr / treasury_circulating, i.e. the share of the circulating supply + * that is staked. Pinning it to that ratio makes the SIGNED split reproduce + * exactly the integer staked share the executor writes to the vault — + * deposit.ak recomputes staked_yield_share = total_yield * numerator / + * denominator with the same truncation-toward-zero, and the same two values + * feed the execute path's calculateYieldShares. + * + * Only the creator of a batch calls this. A co-signer must NOT: it reads live + * state, and two signers reading it at different chain states would produce + * different payload bytes, which cannot be co-signed (the orchestrator checks + * every signature against one payload hash). Co-signers read the batch's alpha + * back from the backend and pass it to getSignedPayloadFromOrderInputs. + */ + async computeDepositAlpha(): Promise { + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const { vaultUtxo } = await this.getVaultDatum(); + const vaultUSDr = + vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n; + const { parsedTreasuryDatum } = await this.getTreasuryDatum(); + const treasuryCirculating = parsedTreasuryDatum.circulating_supply; + return treasuryCirculating > 0n + ? { numerator: vaultUSDr, denominator: treasuryCirculating } + : { numerator: 0n, denominator: 1n }; + } + + protected override async buildDepositAction( + requests: TreasuryRequestV1[], + alpha?: IYieldSplitAlpha, + ): Promise< + Awaited< + ReturnType< + RealfiSDKV1Family["buildDepositAction"] + > + > + > { + // No fallback to live state: that is what made two signings of one batch + // disagree. The batch's alpha has to be handed in — its creator computes it + // once (computeDepositAlpha), everyone else reads it back from the backend. + if (!alpha) { + throw new Error( + "v1_1_rc1: a deposit batch needs its yield-split alpha — pass the batch's stored alpha (created with computeDepositAlpha)", + ); + } + if (alpha.denominator <= 0n) { + throw new Error( + `v1_1_rc1: yield-split alpha denominator must be positive, got ${alpha.denominator}`, + ); + } + if (alpha.numerator < 0n || alpha.numerator > alpha.denominator) { + throw new Error( + `v1_1_rc1: yield-split alpha must be within [0, 1], got ${alpha.numerator}/${alpha.denominator}`, + ); + } + // The family action type is v1_0-shaped (Deposit has no `alpha`); the rc1 + // signing schema serializes `alpha` via its $defs (see IV1SigningSchemas). + return { Deposit: { requests, alpha } } as unknown as Awaited< + ReturnType< + RealfiSDKV1Family["buildDepositAction"] + > + >; + } + + /** + * rc1's Deposit carries a COSE-signed `alpha`; `deposit.ak` splits total_yield + * against that signed ratio (quotient_integer), NOT live vault/treasury state. + * Echo the signed alpha here so the executor's vault/pot outputs (and the + * pot-output indexing) match what the validator checks — re-reading state + * would diverge if the vault or treasury moved between signing and execution. + */ + protected override resolveDepositYieldShares( + totalYield: bigint, + vaultUSDr: bigint, + treasuryCirculating: bigint, + action: Parameters< + RealfiSDKV1Family< + P, + W, + SettingsV1, + VaultDatumV1 + >["resolveDepositYieldShares"] + >[3], + ): { stakedYieldShare: bigint; unstakedYieldShare: bigint } { + const deposit = ( + action as unknown as { + Deposit?: { alpha: { numerator: bigint; denominator: bigint } }; + } + ).Deposit; + if (!deposit) { + // Defensive: a non-Deposit action routed here → live-state split. + return super.resolveDepositYieldShares( + totalYield, + vaultUSDr, + treasuryCirculating, + action, + ); + } + const { numerator, denominator } = deposit.alpha; + // BigInt division truncates toward zero, matching Aiken quotient_integer. + const stakedYieldShare = + denominator > 0n ? (totalYield * numerator) / denominator : 0n; + return { + stakedYieldShare, + unstakedYieldShare: totalYield - stakedYieldShare, + }; + } + + protected override serializeOrchestratorWithdrawalRedeemer( + redeemer: Parameters< + RealfiSDKV1Family< + P, + W, + SettingsV1, + VaultDatumV1 + >["serializeOrchestratorWithdrawalRedeemer"] + >[0], + ): PlutusData { + // v1_1_rc1's orchestrator dispatch wraps order execution in + // ExecuteOrders(...) (the sibling PublishYieldOracle path is a follow-up + // PR). Nest the family's signed redeemer inside the wrapper. The redeemer is + // v1_0-typed at the family layer (Deposit carries `alpha` only at runtime, + // injected by buildDepositAction); cast to the wrapper's static. + return Data.serialize(V1_1Rc1Types.ProtocolOrchestratorRedeemerV1, { + ExecuteOrders: [redeemer], + } as unknown as Exact); + } + + protected override updateDepositVaultOutput( + tx: TxBuilder, + vaultUtxo: Core.TransactionUnspentOutput, + parsedVaultDatum: VaultDatumV1, + ctx: { + stakedYieldShare: bigint; + totalYield: bigint; + orderInfos: IOrderInfo[]; + }, + ): void { + // Vault window end = max diffusion_end across the batch's deposit orders + // (max_end in deposit.ak). Read from each order datum's ODeposit action. + let windowEndMs = 0n; + for (const orderInfo of ctx.orderInfos) { + const action = orderInfo.datum.action as OrderActionV1; + if ("ODeposit" in action && action.ODeposit.diffusion_end > windowEndMs) { + windowEndMs = action.ODeposit.diffusion_end; + } + } + + // One timestamp for both the shortfall check and the datum, so the warning + // can never describe a different execution time than the one written. + const nowMs = this.rateTimeMs(); + this.checkDiffusionWindow(parsedVaultDatum, ctx, windowEndMs, nowMs); + + const window = nextDepositDiffusion( + parsedVaultDatum, + ctx.stakedYieldShare, + ctx.totalYield, + windowEndMs, + nowMs, + ); + + this.updateVaultOutputWithDatum( + tx, + vaultUtxo, + { + circulating_susdr: parsedVaultDatum.circulating_susdr, + ...window, + }, + ctx.stakedYieldShare, + ); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Deposit order builder (adds the diffusion_end datum field) + // ───────────────────────────────────────────────────────────────────────────── + + /** + * Build a deposit order. Identical to the family default except the ODeposit + * datum carries `diffusion_end` — the absolute POSIX-ms timestamp the staked + * yield diffuses until, set at ORDER CREATION and echoed by the executed + * request. Resolution: explicit `diffusionEnd` > `diffusionDurationMs` added to + * the order-creation time > the SDK's `defaultDiffusionDurationMs` added to the + * order-creation time > `0n` (instant). + * + * NB: because the window is absolute and fixed here, any delay before the + * execute lands (batching, cold/multisig signature collection) shortens the + * effective window; a window that fully elapses before execution collapses the + * deposit to instant on-chain. + */ + override async buildDepositOrderTx(params: { + principal: bigint; + yield: bigint; + reserveAsset: [string, string]; + destination: Destination; + owner?: MultisigScript; + data?: PlutusData; + /** Absolute POSIX-ms timestamp the staked yield diffuses until. */ + diffusionEnd?: bigint; + /** Diffusion window length (ms) from order-creation time. */ + diffusionDurationMs?: bigint; + }): Promise { + if (params.principal < 0n) { + throw new Error("Deposit principal must be non-negative"); + } + if (params.principal === 0n && params.yield === 0n) { + throw new Error("Deposit must have non-zero principal or yield"); + } + const settings = this.settingsConfig(await this.getVersionSettings()); + const ra = findReserveAsset(settings, params.reserveAsset); + const reserveAssetId = Core.AssetId( + params.reserveAsset[0] + params.reserveAsset[1], + ); + + let valueToLock: Core.Value; + if (params.yield >= 0n) { + // Positive yield: lock reserve backing for BOTH principal AND yield. + const totalUSDrBacking = params.principal + params.yield; + valueToLock = + totalUSDrBacking > 0n + ? makeValue(MIN_LOVELACE, [ + reserveAssetId, + usdrToReserveCeil(totalUSDrBacking, ra), + ]) + : makeValue(MIN_LOVELACE); + } else { + // Negative yield: lock principal (reserve) + unstaked yield share (USDr). + const principalReserve = + params.principal > 0n ? usdrToReserveCeil(params.principal, ra) : 0n; + valueToLock = + principalReserve > 0n + ? makeValue(MIN_LOVELACE, [reserveAssetId, principalReserve]) + : makeValue(MIN_LOVELACE); + + const stablecoinAssetId = Core.AssetId( + this.stablecoinPolicyId + this.assetNameHex, + ); + const { parsedTreasuryDatum } = await this.getTreasuryDatum(); + const vaultUtxo = (await this.getVaultDatum()).vaultUtxo; + const vaultUSDr = + vaultUtxo.output().amount().multiasset()?.get(stablecoinAssetId) ?? 0n; + const { unstakedYieldShare } = calculateYieldShares( + params.yield, + vaultUSDr, + parsedTreasuryDatum.circulating_supply, + ); + if (unstakedYieldShare < 0n) { + valueToLock = Value.merge( + valueToLock, + makeValue(0n, [stablecoinAssetId, -unstakedYieldShare]), + ); + } + } + + // Typed as the v1_1 action (carries diffusion_end); assignable to the + // family's v1_0 action param since the extra field is additive. + const action: OrderActionV1 = { + ODeposit: { + principal: params.principal, + yield: params.yield, + diffusion_end: this.resolveDiffusionEnd(params), + reserve_asset: params.reserveAsset, + }, + }; + + return this._buildOrderTx({ + action, + valueToLock, + owner: params.owner, + destination: params.destination, + data: params.data, + }); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Execution validity / diffusion rate time + // ───────────────────────────────────────────────────────────────────────────── + + override async buildExecuteOrdersTx( + params: Parameters< + RealfiSDKV1Family["buildExecuteOrdersTx"] + >[0], + ): Promise { + // Pin both execution bounds once and align them to integer slots. The + // backed-off lower bound drives diffusion_start and rate math; the upper + // bound stays relative to unshifted wall time so skew protection does not + // shorten the configured forward window. + const provider = this.blaze.provider; + const wallNowMs = slotAlignedTimeMs(provider, this.nowFn()); + this.executionNowMs = slotAlignedTimeMs( + provider, + wallNowMs - this.executionClockBackoffMs, + ); + this.executionValidUntilMs = slotAlignedTimeMs( + provider, + wallNowMs + this.executionValidityWindowMs, + ); + try { + return await super.buildExecuteOrdersTx(params); + } finally { + this.executionNowMs = undefined; + this.executionValidUntilMs = undefined; + } + } + + protected override async applyExecutionValidityBounds( + tx: TxBuilder, + context: IExecutionValidityContext, + ): Promise { + const nowMs = this.executionNowMs; + const validUntilMs = this.executionValidUntilMs; + if (nowMs === undefined || validUntilMs === undefined) { + return; + } + const { actionType, parsedVaultDatum } = context; + + // Deposit always reads the diffusion rate time once a window is requested + // or already active; setting bounds unconditionally on deposit is safe + // (the validator only caps the span when it reads it). Stake/unstake need + // bounds only when a diffusion window is active. + const needsBounds = + actionType === "deposit" || + ((actionType === "stake" || actionType === "unstake") && + (parsedVaultDatum?.pending_yield ?? 0n) > 0n); + if (!needsBounds) { + return; + } + + // Both bounds are already slot-aligned times, but go through `slotFloor` + // anyway: it is the only conversion allowed to reach the tx builder, and it + // guarantees an integer slot (the CBOR writer would silently truncate a + // fractional one, putting a different value on-chain than the datum's). + tx.setValidFrom(slotFloor(this.blaze.provider, nowMs)); + tx.setValidUntil(slotFloor(this.blaze.provider, validUntilMs)); + } + + // ───────────────────────────────────────────────────────────────────────────── + // Helpers + // ───────────────────────────────────────────────────────────────────────────── + + /** + * The diffusion rate timestamp (POSIX ms): the pinned execution time during + * an execution build, else the current wall-clock time (used by order-build + * min-received estimation, where an exact rate time is not yet knowable). + */ + private rateTimeMs(): bigint { + return this.executionNowMs ?? this.nowFn(); + } + + private resolveDiffusionEnd(params: { + diffusionEnd?: bigint; + diffusionDurationMs?: bigint; + }): bigint { + if (params.diffusionEnd !== undefined) { + return params.diffusionEnd; + } + const duration = + params.diffusionDurationMs ?? this.defaultDiffusionDurationMs; + return duration !== undefined ? this.nowFn() + duration : 0n; + } + + /** + * Surface a diffusion-window shortfall on a deposit execution. + * + * `diffusion_end` is absolute and fixed at ORDER CREATION, so waiting to + * execute (batching, cold/multisig signing) eats the window. Once it is gone, + * `validate_deposit_diffusion` (utilities.ak:1117) zeroes the window and the + * deposit settles instantly — a VALID on-chain outcome, so the tx succeeds and + * nothing else in the stack complains. This is the only place that sees it: + * the operator would otherwise have to read the resulting vault datum. + * + * Advisory by default; {@link IRealfiSDKParamsV1_1Rc1.throwOnDiffusionWindowShortfall} + * turns it into a refusal. + */ + private checkDiffusionWindow( + vaultIn: VaultDatumV1, + ctx: { stakedYieldShare: bigint; totalYield: bigint }, + windowEndMs: bigint, + nowMs: bigint, + ): void { + // A loss freezes the window rather than collapsing it (utilities.ak:1143). + if (ctx.totalYield < 0n) { + return; + } + // What the vault still owes the exchange rate — NOT `pending_yield`, which + // keeps its original value in the datum until a tx rewrites it and so stays + // positive long after the window has run its course. Only an unfinished + // window has anything left to lose. + const pendingLeftUsdr = pendingRemaining(vaultIn, nowMs); + // No window requested and nothing left owed: the validator zeroes the datum + // as its benign no-op case (utilities.ak:1128) — either a plain instant + // deposit, or bookkeeping cleanup after a window ran to completion. + if (windowEndMs <= 0n && pendingLeftUsdr <= 0n) { + return; + } + // Nothing to diffuse: no staked share arriving and nothing still owed. + if (ctx.stakedYieldShare <= 0n && pendingLeftUsdr <= 0n) { + return; + } + + const remainingMs = windowEndMs - nowMs; + let message: string; + if (windowEndMs > 0n) { + if (remainingMs > this.diffusionShortfallThresholdMs) { + return; + } + // Distinct outcomes: a lapsed window collapses to instant, while a + // near-lapsed one still opens and diffuses over what is left. + if (remainingMs <= 0n) { + message = + `deposit diffusion window lapsed ${-remainingMs}ms before execution ` + + `(diffusion_end=${windowEndMs}, execution time=${nowMs}); the staked ` + + `yield settles INSTANTLY instead of diffusing. Re-create the order ` + + `with a longer window to diffuse it.`; + } else { + message = + `deposit diffusion window has only ${remainingMs}ms left at ` + + `execution (diffusion_end=${windowEndMs}); the staked yield diffuses ` + + `over that remainder.`; + } + } else { + // No window requested while one is unfinished: the validator clears the + // active window instead of carrying it (utilities.ak:1128-1136). + message = + `deposit requests no diffusion window while ${pendingLeftUsdr} USDr has ` + + `not yet diffused (of ${vaultIn.pending_yield} pending, at execution ` + + `time ${nowMs}); the active window is CLEARED and that remainder ` + + `settles instantly.`; + } + + const text = `[realfi-sdk] ${message}`; + if (this.throwOnDiffusionWindowShortfall) { + throw new Error(text); + } + console.warn(text); + } + + // ─────────────────────────────────────────────────────────────────────────── + // In-place v1_0 → v1_1_rc1 upgrade: vault-datum migration (MigrateState) + // ─────────────────────────────────────────────────────────────────────────── + + /** + * Deploy the migration validator as a reference script. Required before its + * withdrawal can be attached in {@link buildMigrateStateTx}. + */ + async deployMigration(): Promise { + return deployScript( + this.blaze, + this.migrationScript, + this.scriptDeploymentAddress, + ); + } + + /** + * Register the migration validator's stake credential. Its withdrawal cannot + * be exercised until the stake credential is registered. + */ + registerMigrationStake(): TxBuilder { + return this.blaze + .newTransaction() + .addRegisterStake(credentialFromScript(this.migrationScript)); + } + + /** + * Read the staking-vault UTxO holding a legacy v1_0 (one-field) datum. The + * inherited {@link getVaultDatum} parses the four-field v1_1 schema and THROWS + * on a pre-migration vault, so the migration path reads the input with the + * v1_0 single-field schema (`circulating_susdr` only). + */ + private async readLegacyVaultDatum(): Promise<{ + vaultUtxo: Core.TransactionUnspentOutput; + circulatingSusdr: bigint; + }> { + const { utxo, parsedDatum } = await getDatumFromNFT( + this.blaze, + this.stakingVaultNFTAssetId, + V1_0Types.VaultDatumV1, + ); + const legacy = parsedDatum as V1_0Types.VaultDatumV1; + return { vaultUtxo: utxo, circulatingSusdr: legacy.circulating_susdr }; + } + + /** + * Build the COSE payload for a `MigrateState` action. Unlike the order path + * (whose nonce derives from the sorted order inputs), migration spends the + * vault UTxO, so the nonce is anchored to the vault input. Returns the CBOR + * payload (for {@link buildMigrateStateTx}) and its blake2b-256 hash (for + * CIP-30 signing by the `permissions.migrate` signer(s)). + */ + async getMigrateStatePayload(): Promise<{ + signedPayload: string; + payloadHash: string; + }> { + const { vaultUtxo } = await this.readLegacyVaultDatum(); + const nonce = buildNonceFromUtxo(vaultUtxo.input()); + // The family signing-schema key is v1_0-typed at compile time (its action + // union predates MigrateState), but the runtime schema is the v1_1 one whose + // ProtocolRedeemerV1 includes the MigrateState literal (ctor 8). Cast the + // payload to the family payload type the serializer expects. + const payload = { action: "MigrateState", nonce } as unknown as Parameters< + RealfiSDKV1Family< + P, + W, + SettingsV1, + VaultDatumV1 + >["serializeOrchestratorWithdrawalRedeemer"] + >[0]["payload"]; + const serialized = Data.serialize( + this.signing.SignedPayload_ProtocolRedeemerV1, + payload, + ); + const signedPayload = serialized.toCbor().toString(); + const payloadHash = blake2b_256(HexBlob(signedPayload)); + return { signedPayload, payloadHash }; + } + + /** + * Build the in-place vault-datum migration transaction (`MigrateState`). Spends + * the staking-vault UTxO (still holding the v1_0 one-field datum) and re-locks + * it at the SAME address and value with the four-field v1_1 datum + * (`circulating_susdr` preserved, diffusion window zeroed). Operator-only — not + * on the partner surface, like {@link buildExecuteOrdersTx}. + * + * Requires (per `protocol_migration_v1_0_to_v1_1.ak` + the orchestrator's + * MigrateState branch): the migration validator deployed + stake-registered, + * `registry.migration = Some(migrationScriptHash)` in the live settings, and + * `signatures` = the `permissions.migrate` COSE signatures over the payload + * hash from {@link getMigrateStatePayload}. + */ + async buildMigrateStateTx(params: { + signedPayload: string; + signatures: Tuple_VerificationKey_COSESign1[]; + }): Promise { + const signedPayload = parse( + this.signing.SignedPayload_ProtocolRedeemerV1, + PlutusData.fromCbor(HexBlob(params.signedPayload)), + ) as Parameters< + RealfiSDKV1Family< + P, + W, + SettingsV1, + VaultDatumV1 + >["serializeOrchestratorWithdrawalRedeemer"] + >[0]["payload"]; + + const { vaultUtxo, circulatingSusdr } = await this.readLegacyVaultDatum(); + + // Reference inputs: orchestrator + staking-vault + migration scripts, plus + // the proxy datum (read as a reference input, never spent). + const refInputs = await this.getScriptReferenceInputs({ + protocol: this.protocolScriptHash, + stakingVault: this.stakingVaultScriptHash, + migration: this.migrationScriptHash, + }); + const { proxyUtxo } = await this.getParsedProxyDatum(); + + // Fee inputs: wallet UTxOs minus the vault (a script input), the proxy, and + // every reference input (regular and reference inputs must be disjoint). + const walletUtxos = await this.blaze.wallet.getUnspentOutputs(); + const utxoKey = (inp: Core.TransactionInput) => + `${inp.transactionId().toString()}#${inp.index().toString()}`; + const excluded = new Set([ + utxoKey(vaultUtxo.input()), + utxoKey(proxyUtxo.input()), + ]); + for (const ref of Object.values(refInputs)) { + if (ref) { + excluded.add(utxoKey(ref.input())); + } + } + const feeUtxos = walletUtxos.filter( + (u) => !excluded.has(utxoKey(u.input())), + ); + + // Vault input index in the ledger-sorted input set (txHash, then index). + const sortedInputRefs = [ + vaultUtxo.input(), + ...feeUtxos.map((u) => u.input()), + ].sort((a, b) => { + const txA = a.transactionId().toString(); + const txB = b.transactionId().toString(); + if (txA < txB) return -1; + if (txA > txB) return 1; + return Number(a.index()) - Number(b.index()); + }); + const vaultInputIdx = BigInt( + sortedInputRefs.findIndex( + (r) => + r.transactionId().toString() === + vaultUtxo.input().transactionId().toString() && + r.index() === vaultUtxo.input().index(), + ), + ); + + // Migrated datum: preserve circulating_susdr, zero the diffusion window (no + // pending yield at migration time). The vault output is the first output the + // builder adds, so its index is 0 (change outputs are appended after). + const migratedDatum: VaultDatumV1 = { + circulating_susdr: circulatingSusdr, + pending_yield: 0n, + diffusion_start: 0n, + diffusion_end: 0n, + }; + + // No order requests travel in a migration; the request/treasury indices are + // dummies (the migration branch reads only the vault indices). + const extra: Parameters< + RealfiSDKV1Family< + P, + W, + SettingsV1, + VaultDatumV1 + >["serializeOrchestratorWithdrawalRedeemer"] + >[0]["extra"] = { + request_to_outputs: [], + input_to_requests: [], + treasury_input_idx: 0n, + treasury_output_idx: 0n, + vault_input_idx: vaultInputIdx, + vault_output_idx: 0n, + }; + + const orchestratorRedeemer = this.serializeOrchestratorWithdrawalRedeemer({ + extra, + payload: signedPayload, + signatures: params.signatures, + }); + + const tx = this.newOrderTransaction(); + + // Spend the vault with DeferToProtocol (Void); the vault script resolves + // from the staking-vault reference input. + tx.addInput(vaultUtxo, Data.Void()); + for (const feeUtxo of feeUtxos) { + tx.addInput(feeUtxo); + } + + tx.addReferenceInput(refInputs.protocol!); + tx.addReferenceInput(refInputs.stakingVault!); + tx.addReferenceInput(refInputs.migration!); + tx.addReferenceInput(proxyUtxo); + + // Re-lock exactly one vault output at the SAME address (payment + stake) and + // the SAME value, no reference script, carrying the four-field datum. + tx.lockAssets( + vaultUtxo.output().address(), + vaultUtxo.output().amount(), + Data.serialize(this.schemas.VaultDatumV1, migratedDatum), + ); + + // Orchestrator withdrawal carries the ExecuteOrders(MigrateState) redeemer + // plus the permissions.migrate COSE signatures. + tx.addWithdrawal( + Core.RewardAccount.fromCredential( + { type: Core.CredentialType.ScriptHash, hash: this.protocolScriptHash }, + this.network, + ), + 0n, + orchestratorRedeemer, + ); + // Migration validator withdrawal (Void); enforces the migration tx shape. + tx.addWithdrawal( + Core.RewardAccount.fromCredential( + { + type: Core.CredentialType.ScriptHash, + hash: this.migrationScriptHash, + }, + this.network, + ), + 0n, + Data.Void(), + ); + + return tx; + } +} + +/** Re-exported for parity with the sibling version modules. */ +export { MAX_DIFFUSION_RATE_SPAN_MS }; diff --git a/modules/realfi-partner-sdk/src/sundae/discovery.ts b/modules/realfi-partner-sdk/src/sundae/discovery.ts new file mode 100644 index 0000000000..0b3bc9522e --- /dev/null +++ b/modules/realfi-partner-sdk/src/sundae/discovery.ts @@ -0,0 +1,195 @@ +import { + QueryProviderSundaeSwap, + SundaeUtils, + type IPoolData, + type TSupportedNetworks, +} from "@sundaeswap/core"; + +import { RealfiApi } from "../api/realfi-api.js"; +import { API_REGISTRY } from "../api/registry.js"; +import { isSwappableSundaeSwapVersion } from "./support.js"; +import { withV4CurveData } from "./v4-curve.js"; + +/** + * Which pools discovery returns, narrowing left to right: + * `curated ⊆ buildable ⊆ all`. + * + * - `all` — every pool the Sundae API returns for the asset, any version. + * - `buildable` — those the SDK can build an order *for*. Note "for", not + * "against": a V4 pool is included because the SDK places a pool-less intent + * for it, even though no order names the pool. + * - `curated` — the buildable pools whose pair RealFi has approved. + */ +export type TSundaePoolDiscoveryScope = "curated" | "buildable" | "all"; + +export interface ISundaePoolDiscoveryParams { + /** Defaults to the RealFi-approved `curated` scope. */ + scope?: TSundaePoolDiscoveryScope; +} + +export interface ISundaePoolDiscoveryOptions { + /** Overrides Sundae's endpoint while retaining the network for fee math. */ + endpoint?: string; + /** Overrides RealFi's runtime partner configuration for custom deployments. */ + partnerConfigUrl?: string; +} + +export interface ISundaePoolDiscoverySDK { + findPoolsByAsset( + assetId: string, + params?: ISundaePoolDiscoveryParams, + ): Promise; +} + +/** Internal seam for RealFi's authoritative runtime pair configuration. */ +export interface ISundaeCuratedPoolAssets { + baseAssetId: string; + counterpartAssetIds: readonly string[]; +} + +export type TSundaeCuratedPoolAssetsLoader = ( + network: TSupportedNetworks, +) => Promise; + +const SUNDAE_POOL_QUERY_RESULT_LIMIT = 50; +const SUNDAE_POOL_DISCOVERY_SCOPES: readonly TSundaePoolDiscoveryScope[] = [ + "curated", + "buildable", + "all", +]; + +function isPoolAsset(assetId: string, candidate: string): boolean { + return SundaeUtils.isAssetIdsEqual(assetId, candidate); +} + +function poolContainsAsset(pool: IPoolData, assetId: string): boolean { + return ( + isPoolAsset(pool.assetA.assetId, assetId) || + isPoolAsset(pool.assetB.assetId, assetId) + ); +} + +function deterministicUniquePools(pools: readonly IPoolData[]): IPoolData[] { + const unique = new Map(); + for (const pool of pools) { + const key = `${pool.version}\u0000${pool.ident}`; + if (!unique.has(key)) { + unique.set(key, pool); + } + } + + return [...unique.values()].sort((left, right) => { + if (left.ident !== right.ident) { + return left.ident < right.ident ? -1 : 1; + } + if (left.version === right.version) { + return 0; + } + return left.version < right.version ? -1 : 1; + }); +} + +function isCuratedPool( + pool: IPoolData, + { baseAssetId, counterpartAssetIds }: ISundaeCuratedPoolAssets, +): boolean { + const aIsBase = isPoolAsset(pool.assetA.assetId, baseAssetId); + const bIsBase = isPoolAsset(pool.assetB.assetId, baseAssetId); + const counterpartId = aIsBase + ? pool.assetB.assetId + : bIsBase + ? pool.assetA.assetId + : undefined; + + return ( + counterpartId !== undefined && + counterpartAssetIds.some((assetId) => isPoolAsset(counterpartId, assetId)) + ); +} + +/** + * Internal constructor. The loader remains behind the package export boundary + * so RealFi, not partners, owns curated pair selection. + */ +export function createPoolDiscovery( + network: TSupportedNetworks, + options: ISundaePoolDiscoveryOptions = {}, + loadCuratedPoolAssets?: TSundaeCuratedPoolAssetsLoader, +): ISundaePoolDiscoverySDK { + const queryProvider = new QueryProviderSundaeSwap(network); + if (options.endpoint !== undefined) { + queryProvider.baseUrl = options.endpoint; + } + + return { + async findPoolsByAsset( + assetId, + { scope = "curated" }: ISundaePoolDiscoveryParams = {}, + ) { + if (assetId.trim().length === 0) { + throw new Error("Sundae pool discovery requires a non-empty asset id"); + } + if (!SUNDAE_POOL_DISCOVERY_SCOPES.includes(scope)) { + throw new Error(`Unsupported Sundae pool discovery scope: ${scope}`); + } + if (scope === "curated" && !loadCuratedPoolAssets) { + throw new Error( + "Curated Sundae pool discovery requires authoritative RealFi asset configuration", + ); + } + + const curatedAssets = + scope === "curated" ? await loadCuratedPoolAssets!(network) : undefined; + const rawPools = await queryProvider.findPoolDataByAssetId(assetId); + // Sundae's byAsset query has no pagination arguments. Treat the gateway's + // 50-result boundary as incomplete rather than silently hiding pools. + if (rawPools.length >= SUNDAE_POOL_QUERY_RESULT_LIMIT) { + throw new Error( + `Sundae pool discovery returned ${rawPools.length} pools for ${assetId}; results may be truncated`, + ); + } + + // Before any scope filter, so `all` carries the curve data too. Retires + // itself once Sundae's own query selects these fields — see v4-curve.ts. + const all = await withV4CurveData( + deterministicUniquePools(rawPools), + assetId, + queryProvider.baseUrl, + ); + if (scope === "all") { + return all; + } + + // `swap`, not `buildAgainstPool` — see TSundaePoolDiscoveryScope. The + // narrower capability would hide V4 from `curated` too, since that is + // derived from this. + const buildable = all.filter( + (pool) => + isSwappableSundaeSwapVersion(pool.version) && + poolContainsAsset(pool, assetId), + ); + if (scope === "buildable") { + return buildable; + } + + return buildable.filter((pool) => isCuratedPool(pool, curatedAssets!)); + }, + }; +} + +/** RealFi-owned runtime curation used by the public network factory. */ +export function createRuntimeCuratedPoolAssetsLoader( + partnerConfigUrl?: string, +): TSundaeCuratedPoolAssetsLoader { + return async (network) => { + const api = RealfiApi.create({ + ...API_REGISTRY[network], + ...(partnerConfigUrl === undefined ? {} : { partnerConfigUrl }), + }); + const config = await api.getPartnerConfig(); + return { + baseAssetId: config.stablecoinAssetId, + counterpartAssetIds: config.swapCounterpartAssets, + }; + }; +} diff --git a/modules/realfi-partner-sdk/src/sundae/index.ts b/modules/realfi-partner-sdk/src/sundae/index.ts new file mode 100644 index 0000000000..e70c2ce521 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sundae/index.ts @@ -0,0 +1,808 @@ +import { + Core, + type Blaze, + type Provider, + type TxBuilder as BlazeTxBuilder, + type Wallet, +} from "@blaze-cardano/sdk"; +import { AssetAmount, type IAssetAmountMetadata } from "@sundaeswap/asset"; +import { + BlazeHelper, + EContractVersion, + EDatumType, + EPoolCurve, + ESwapType, + SundaeSDK, + SundaeUtils, + type IComposedTx, + type IPoolData, + type ISwapConfigArgs, + type TDestinationAddress, + type TOrderAddressesArgs, + type TSupportedNetworks, + type TSwapType, +} from "@sundaeswap/core"; + +// Keep the partner construction surface self-contained. Consumers can build +// swap inputs through `SundaeSwap` without importing our implementation +// dependencies directly. +export { AssetAmount, EContractVersion, EDatumType, EPoolCurve, ESwapType }; +export type { + IAssetAmountMetadata, + IPoolData, + ISwapConfigArgs, + TDestinationAddress, + TSwapType, +}; + +import type { IBuildStakeContinuationParams } from "../sdk/v1/family.js"; +import { + addressToRealFiDestination, + plutusDataFromCbor, + realfiOwnerFromSundaeV3OwnerAddress, + sundaeV3DestinationAddressFromStepResult, +} from "../tx-builder/destination.js"; +import type { RealFiDestinationDatum } from "../tx-builder/destination.js"; +import type { StakeContinuationBuilder } from "../tx-builder/registry.js"; +import { + createPoolDiscovery, + createRuntimeCuratedPoolAssetsLoader, + type ISundaePoolDiscoveryOptions, + type ISundaePoolDiscoverySDK, +} from "./discovery.js"; +import { + assertSupportedSundaeSwapPool, + assertSwappableSundaeSwapPool, +} from "./support.js"; + +export type { + ISundaePoolDiscoveryOptions, + ISundaePoolDiscoveryParams, + ISundaePoolDiscoverySDK, + TSundaePoolDiscoveryScope, +} from "./discovery.js"; +export { + assertSupportedSundaeSwapPool, + assertSwappableSundaeSwapPool, + isSupportedSundaeSwapVersion, + isSwappableSundaeSwapVersion, + SUPPORTED_SUNDAE_SWAP_VERSIONS, + SWAPPABLE_SUNDAE_SWAP_VERSIONS, + type TSundaeSwapVersion, + type TSwappableSundaeSwapVersion, +} from "./support.js"; + +export interface ISundaeSwapQuoteParams { + pool: IPoolData; + suppliedAsset: AssetAmount; + /** Decimal fraction: `0.01` is 1%. No application default is applied. */ + slippage: number; +} + +export interface ISundaeSwapQuote { + estimatedReceived: AssetAmount; + minReceived: AssetAmount; + /** Decimal fraction: `0.01` is 1%. */ + priceImpact: number; +} + +export interface ISundaeSwapInputQuoteParams { + pool: IPoolData; + /** The amount the owner wants to receive. */ + desiredOutput: AssetAmount; +} + +export interface ISundaeSwapInputQuote { + /** The smallest supply that still yields `desiredOutput`. */ + requiredInput: AssetAmount; +} + +export type TSundaeSwapOrder = IComposedTx; + +export type TSundaeOwnedSwapConfigArgs = Omit< + ISwapConfigArgs, + "ownerAddress" | "orderAddresses" +> & { + ownerAddress: string; + /** Final recipient and optional cancellation address; not a Sundae order route. */ + orderAddresses: Omit; +}; + +export interface ISundaeSwapToStakeParams { + sdk: StakeContinuationBuilder; + swap: TSundaeOwnedSwapConfigArgs; + stake?: Omit; +} + +/** + * A V4 swap intent: an offer and a floor, naming no pool. + * + * `referralFee` is deliberately not surfaced — no RealFi path takes one. + */ +export interface ISundaeSwapIntentParams { + /** Bech32 owner: the cancel authority and the default payout destination. */ + ownerAddress: string; + /** What the owner pays into the swap. */ + offered: AssetAmount; + /** + * The floor the fill must clear, and the owner's only guarantee: the surplus + * above it is unbound on-chain, so the scooper keeps whatever the fill clears + * it by. Take it from {@link quoteSwap}; never slacken it to help an order + * fill. + */ + minReceived: AssetAmount; + /** Final recipient. Defaults to a fixed destination at `ownerAddress`. */ + destination?: TDestinationAddress | "Self"; + /** Lifetime service-fee allocation, in lovelace. */ + budget?: bigint; + /** + * Per-scoop fee cap, in lovelace — also the scooper's routing fan-out budget + * (`maxPerExecution / costPerPool` pools). Too small and the order cannot be + * routed at all; a fill spanning more of the pair's pools needs more of it. + */ + maxPerExecution?: bigint; + /** + * The OrderConfig settings entry this order fulfills. Resolved from the + * protocol query when omitted — but that query returns nothing on a + * deployment whose API does not serve settings yet, so it stays passable. + */ + configToken?: string; +} + +export interface ISundaeSwapSDK { + quoteSwap(params: ISundaeSwapQuoteParams): ISundaeSwapQuote; + quoteSwapInput(params: ISundaeSwapInputQuoteParams): ISundaeSwapInputQuote; + buildSwapOrderTx(params: ISwapConfigArgs): Promise; + /** V4 only: a pool-less intent. See {@link buildSwapIntentTx}. */ + buildSwapIntentTx(params: ISundaeSwapIntentParams): Promise; + buildSwapToStakeOrderTx( + params: ISundaeSwapToStakeParams, + ): Promise; +} + +/** Creates a network-scoped, Blaze-free Sundae pool discovery adapter. */ +export function forNetwork( + network: TSupportedNetworks, + options: ISundaePoolDiscoveryOptions = {}, +): ISundaePoolDiscoverySDK { + return createPoolDiscovery( + network, + options, + createRuntimeCuratedPoolAssetsLoader(options.partnerConfigUrl), + ); +} + +function canonicalizePoolAsset( + pool: IPoolData, + asset: AssetAmount, +): AssetAmount { + const metadata = [pool.assetA, pool.assetB].find((poolAsset) => + SundaeUtils.isAssetIdsEqual(poolAsset.assetId, asset.metadata.assetId), + ); + + if (!metadata) { + throw new Error( + `Asset is not part of the Sundae swap pool: ${asset.metadata.assetId}`, + ); + } + + return new AssetAmount(asset.amount, metadata); +} + +function oppositePoolAsset( + pool: IPoolData, + suppliedAsset: AssetAmount, +): IAssetAmountMetadata { + return suppliedAsset.metadata.assetId === pool.assetA.assetId + ? pool.assetB + : pool.assetA; +} + +function canonicalizeSwapType( + pool: IPoolData, + suppliedAsset: AssetAmount, + swapType: TSwapType, +): TSwapType { + if (swapType.type === ESwapType.MARKET) { + return swapType; + } + + const minReceivable = canonicalizePoolAsset(pool, swapType.minReceivable); + const expectedAsset = oppositePoolAsset(pool, suppliedAsset); + if (minReceivable.metadata.assetId !== expectedAsset.assetId) { + throw new Error( + `Sundae LIMIT minimum must use the pool asset opposite the supplied asset: ${expectedAsset.assetId}`, + ); + } + + return { ...swapType, minReceivable }; +} + +function assertValidSlippage(slippage: number): void { + if (!Number.isFinite(slippage) || slippage < 0 || slippage > 1) { + throw new Error( + "Sundae swap slippage must be a finite number between 0 and 1 inclusive", + ); + } +} + +function decimalFraction(value: number): { + numerator: bigint; + denominator: bigint; +} { + const [coefficient = "0", exponentText] = value + .toString() + .toLowerCase() + .split("e"); + const exponent = Number(exponentText ?? 0); + const [whole, fraction = ""] = coefficient.split("."); + const digits = BigInt(`${whole}${fraction}`); + const scale = fraction.length - exponent; + + return scale > 0 + ? { numerator: digits, denominator: 10n ** BigInt(scale) } + : { numerator: digits * 10n ** BigInt(-scale), denominator: 1n }; +} + +function ceilDiv(numerator: bigint, denominator: bigint): bigint { + return numerator === 0n ? 0n : (numerator + denominator - 1n) / denominator; +} + +/** + * Applies the caller's decimal slippage to an integer quote without coercing + * the quote to a JavaScript number. Sundae's helper performs that coercion, + * which can weaken large minimums after `Number.MAX_SAFE_INTEGER`. + */ +function minReceivableFromSlippage( + output: bigint, + receivedAsset: IAssetAmountMetadata, + slippage: number, +): AssetAmount { + const { numerator, denominator } = decimalFraction(slippage); + const remaining = denominator - numerator; + const amount = ceilDiv(output * remaining, denominator); + + return new AssetAmount(amount, receivedAsset); +} + +/** + * Why this fee cannot quote a constant-sum swap, or undefined if it can. + * + * At a fee of 1 the forward quote settles to nothing and the inverse divides by + * zero; above 1 the forward quote goes negative. The bound matches + * `ConstantSumPool.getSwapInput`'s own `[0, 1)` — the forward direction + * tolerates exactly 1, but a pool taking the whole trade is not one we should be + * quoting either way. + */ +function feeRefusal(currentFee: number): string | undefined { + if (!Number.isFinite(currentFee) || currentFee < 0 || currentFee >= 1) { + return `Sundae constant-sum swap requires a fee in [0, 1); got ${currentFee}`; + } + return undefined; +} + +/** + * The positive-amount rule matches what V3 and Stableswaps already enforce + * through Sundae's "Input and reserves must be positive"; V4 was the only + * version that quietly returned zero instead. + */ +function assertQuotableConstantSum(amount: bigint, currentFee: number): void { + if (amount <= 0n) { + throw new Error("Sundae constant-sum swap requires a positive amount"); + } + const refusal = feeRefusal(currentFee); + if (refusal) { + throw new Error(refusal); + } +} + +/** + * Settles a V4 (constant-sum) swap the way Sundae's own engine does: + * + * output = offered − floor(offered × fee) + * + * That is `ConstantSumPool.getSwapOutput` from `@sundaeswap/math` specialised to + * equal per-asset prices, not an approximation of it. We cannot call + * `SundaeUtils.getSwapOutput` for V4 because it dispatches on `pool.curve`, and + * the Sundae API populates neither `curve` nor `prices` — it would fall through + * to `Unsupported v4 pool curve: undefined`. + * + * The rate comes from `currentFee`'s exact decimal expansion rather than a float + * product: past `Number.MAX_SAFE_INTEGER` a float drops the low digits and + * shifts the result, the same hazard {@link minReceivableFromSlippage} avoids. + * + * `priceWeight` is the pool's per-asset constant-sum price, which both assets of + * a supported pool share. It cannot be divided out: the fee is floored at the + * *scaled* value and the quotient is floored again, so the two roundings only + * collapse into one at a weight of `1`. At a weight of `2`, offering `1999` at a + * fee of `0.001` settles to `1997`, where dividing out would say `1998` — and + * since this figure also becomes `minReceived`, the higher answer would leave a + * floor the fill can never clear. + * + * Deliberately does NOT cap the output at the pool's reserve. `ConstantSumPool` + * caps, because it prices one specific pool; a V4 order names no pool, so + * capping here would silently lower `minReceived` — the owner's only guarantee — + * whenever a large order is quoted against a shallow pool. + */ +function constantSumSwapOutput( + offered: bigint, + currentFee: number, + priceWeight: bigint, +): bigint { + assertQuotableConstantSum(offered, currentFee); + + const { numerator, denominator } = decimalFraction(currentFee); + const offeredValue = offered * priceWeight; + const feeValue = (offeredValue * numerator) / denominator; + + return (offeredValue - feeValue) / priceWeight; +} + +/** + * Quotes a V4 swap. `slippage` is validated by {@link quoteSwap} and then + * ignored: a constant-sum pool has no price movement to buffer against, and — + * decisively — the surplus above `min_received` is unbound on-chain, so slack in + * the floor is not a safety margin, it is directly skimmable by the scooper. + * `estimatedReceived` and `minReceived` are therefore the same figure. + * + * Assumes the pool weights its two assets equally. That precondition is + * unverifiable from the API, which never serves `prices`; the matching-decimals + * half of it is checked here, and the pools RealFi trades satisfy both. + */ +/** + * Why this pool cannot be priced as an equal-weight constant-sum pool, or + * undefined if it can. {@link constantSumPriceWeight} throws it and + * {@link selectV4QuotePool} filters on it, so the two cannot drift apart. + */ +function constantSumRefusal(pool: IPoolData): string | undefined { + // A V4 pool's swap math follows its invariant module, not its contract + // version, so "V4" alone does not mean constant-sum. Nor does an absent + // `curve`: that means whoever fetched the pool did not ask for it, which is + // not evidence of anything. Pool discovery asks; Sundae's own query provider + // does not. + if (pool.curve !== EPoolCurve.ConstantSum) { + return ( + `Sundae V4 pool ${pool.ident} is not known to be ${EPoolCurve.ConstantSum} ` + + `(curve: ${pool.curve ?? "unknown"}). Resolve pools through pool ` + + `discovery, which supplies the curve.` + ); + } + // Same story for `prices`: absent means unasked, not 1:1. Unequal weights need + // the two-price form of the constant-sum formula and a reserve orientation + // this quote does not model; equal weights of any magnitude are handled, and + // carried into the arithmetic rather than divided out. + if (pool.prices === undefined) { + return ( + `Sundae V4 pool ${pool.ident} declares no price weights. Resolve pools ` + + `through pool discovery, which supplies them.` + ); + } + const [priceIn, priceOut] = pool.prices; + if (priceIn !== priceOut) { + return ( + `Sundae V4 pool ${pool.ident} weights its assets ` + + `${priceIn}:${priceOut}; only equal weights are priced here` + ); + } + if (priceIn <= 0n) { + return `Sundae V4 pool ${pool.ident} declares a non-positive price weight`; + } + // Decimals stand in for the price weights we usually cannot see: a 1:1 + // constant-sum pair settles raw amounts one-for-one only at equal scale. + if (pool.assetA.decimals !== pool.assetB.decimals) { + return ( + `Sundae V4 pool ${pool.ident} pairs assets of differing decimals ` + + `(${pool.assetA.decimals} and ${pool.assetB.decimals}); the 1:1 ` + + `constant-sum assumption does not hold` + ); + } + return undefined; +} + +function constantSumPriceWeight(pool: IPoolData): bigint { + const refusal = constantSumRefusal(pool); + if (refusal) { + throw new Error(refusal); + } + return pool.prices![0]; +} + +/** + * Stricter than the quote, deliberately: a swap form trades both ways against + * the one pool it selected, so both reserves must be usable, where a single + * quote only checks the side it pays out. + */ +function isSelectableV4Pool(pool: IPoolData): boolean { + return ( + constantSumRefusal(pool) === undefined && + feeRefusal(pool.currentFee) === undefined && + pool.liquidity.aReserve > 0n && + pool.liquidity.bReserve > 0n + ); +} + +/** + * Picks the V4 pool whose fee should quote a swap, ignoring any non-V4 pool in + * `pools` and any V4 pool {@link quoteSwap} would refuse. Undefined when none + * qualifies, which means the caller should fall back to another version. + * + * A V4 order names no pool, so this routes nothing — it only decides whose fee + * sets `min_received`. Cheapest is both the best rate and the safer pick: the + * floor is the owner's only guarantee, and a pool overstating its fee would drag + * it down into territory a scooper can fill cheaply and pocket the difference. + * A hostile pool can therefore only win by genuinely being the cheapest. + * + * Selection lives here rather than in the caller so that the eligibility rules + * have one home. `SundaeUtils.getBestPoolBySwapOutcome` is the equivalent for + * the other versions and cannot be used: it calls `getSwapOutput`, which throws + * on a V4 pool. + */ +export function selectV4QuotePool(pools: IPoolData[]): IPoolData | undefined { + return pools + .filter( + (pool) => + pool.version === EContractVersion.V4 && isSelectableV4Pool(pool), + ) + .reduce< + IPoolData | undefined + >((best, pool) => (best === undefined || pool.currentFee < best.currentFee ? pool : best), undefined); +} + +function quoteConstantSumSwap( + pool: IPoolData, + suppliedAsset: AssetAmount, + receivedAsset: IAssetAmountMetadata, + outputReserve: bigint, +): ISundaeSwapQuote { + const priceIn = constantSumPriceWeight(pool); + if (outputReserve <= 0n) { + throw new Error( + `Sundae V4 pool ${pool.ident} holds no ${receivedAsset.assetId} to swap into`, + ); + } + + const output = constantSumSwapOutput( + suppliedAsset.amount, + pool.currentFee, + priceIn, + ); + + return { + estimatedReceived: new AssetAmount(output, receivedAsset), + minReceived: new AssetAmount(output, receivedAsset), + priceImpact: 0, + }; +} + +/** + * Quotes a market swap for any swappable pool version. Callers do not branch on + * `pool.version`; this does. + * + * V3 / Stableswaps use Sundae's own pool math with the caller's slippage applied + * at bigint precision. V4 is constant-sum — see {@link quoteConstantSumSwap} for + * why its quote is exact, why `priceImpact` is `0`, and why `slippage` is + * ignored there. + */ +export function quoteSwap({ + pool, + suppliedAsset, + slippage, +}: ISundaeSwapQuoteParams): ISundaeSwapQuote { + assertSwappableSundaeSwapPool(pool); + assertValidSlippage(slippage); + + const canonicalSuppliedAsset = canonicalizePoolAsset(pool, suppliedAsset); + const receivesAssetA = SundaeUtils.isAssetIdsEqual( + pool.assetB.assetId, + canonicalSuppliedAsset.metadata.assetId, + ); + const receivedAsset = receivesAssetA ? pool.assetA : pool.assetB; + + if (pool.version === EContractVersion.V4) { + return quoteConstantSumSwap( + pool, + canonicalSuppliedAsset, + receivedAsset, + receivesAssetA ? pool.liquidity.aReserve : pool.liquidity.bReserve, + ); + } + + const outcome = SundaeUtils.getSwapOutput(pool, canonicalSuppliedAsset); + + return { + estimatedReceived: new AssetAmount(outcome.output, receivedAsset), + minReceived: minReceivableFromSlippage( + outcome.output, + receivedAsset, + slippage, + ), + priceImpact: outcome.priceImpact.toNumber(), + }; +} + +/** + * The smallest constant-sum supply that still yields `output`. + * + * Mirrors `ConstantSumPool.getSwapInput`. Not a plain gross-up: the forward + * settlement is `ceil(input·price·(feeDen−feeNum)/feeDen)`, and that clears + * `output·price` exactly when the numerator reaches `feeDen·(target−1)+1`, so + * the `−1n` is what keeps the answer minimal rather than a unit high. + */ +function constantSumSwapInput( + output: bigint, + currentFee: number, + priceWeight: bigint, +): bigint { + // Reasserted here even though `quoteSwapInput` checks the amount: this is + // where a fee of 1 would divide by zero, and the raw error would name the + // division rather than the fee that caused it. + assertQuotableConstantSum(output, currentFee); + + const { numerator: feeNum, denominator: feeDen } = + decimalFraction(currentFee); + const targetValue = output * priceWeight; + const numerator = feeDen * (targetValue - 1n) + 1n; + const denominator = (feeDen - feeNum) * priceWeight; + + return (numerator + denominator - 1n) / denominator; +} + +/** + * Quotes the supply needed to receive `desiredOutput`, for any swappable pool + * version. The inverse of {@link quoteSwap}, and the direction a swap form needs + * when the user edits the receive field rather than the pay field. + */ +export function quoteSwapInput({ + pool, + desiredOutput, +}: ISundaeSwapInputQuoteParams): ISundaeSwapInputQuote { + assertSwappableSundaeSwapPool(pool); + + const canonicalDesiredOutput = canonicalizePoolAsset(pool, desiredOutput); + const suppliedAsset = oppositePoolAsset(pool, canonicalDesiredOutput); + + if (pool.version === EContractVersion.V4) { + if (canonicalDesiredOutput.amount <= 0n) { + throw new Error("Sundae V4 swap requires a positive desired output"); + } + + return { + requiredInput: new AssetAmount( + constantSumSwapInput( + canonicalDesiredOutput.amount, + pool.currentFee, + constantSumPriceWeight(pool), + ), + suppliedAsset, + ), + }; + } + + return { + requiredInput: new AssetAmount( + SundaeUtils.getSwapInput(pool, canonicalDesiredOutput).input, + suppliedAsset, + ), + }; +} + +/** + * Builds a standalone Sundae swap order against a specific pool. + * + * V4 is quotable but not buildable here: its order carries no pool reference at + * all, so it cannot share this pool-taking argument shape. Use + * {@link buildSwapIntentTx}. + */ +export async function buildSwapOrderTx( + blaze: Blaze, + params: ISwapConfigArgs, +): Promise { + if (params.pool.version === EContractVersion.V4) { + throw new Error( + "Sundae V4 swaps are placed as pool-less intents; use buildSwapIntentTx", + ); + } + assertSupportedSundaeSwapPool(params.pool); + if (params.swapType.type === ESwapType.MARKET) { + assertValidSlippage(params.swapType.slippage); + } + + const suppliedAsset = canonicalizePoolAsset( + params.pool, + params.suppliedAsset, + ); + const swapType = canonicalizeSwapType( + params.pool, + suppliedAsset, + params.swapType, + ); + const builderSwapType: TSwapType = + swapType.type === ESwapType.MARKET + ? { + type: ESwapType.LIMIT, + minReceivable: minReceivableFromSlippage( + SundaeUtils.getSwapOutput(params.pool, suppliedAsset).output, + oppositePoolAsset(params.pool, suppliedAsset), + swapType.slippage, + ), + } + : swapType; + const canonicalParams: ISwapConfigArgs = { + ...params, + suppliedAsset, + // Convert MARKET inputs to the equivalent LIMIT input ourselves so the + // Sundae builder cannot repeat its bigint-unsafe slippage calculation. + swapType: builderSwapType, + }; + + const builder = SundaeSDK.new({ blazeInstance: blaze }).builder( + params.pool.version, + ); + return builder.swap(canonicalParams); +} + +/** + * Places a Sundae V4 swap. + * + * A V4 order is an intent: an offer and a floor, naming no pool. The scooper + * decides how to fill it — one pool, a split across the pair's pools, or a + * multi-hop chain — and `minReceived` is what bounds the result. + * + * Goes through `swapIntent` rather than `swap`: `TxBuilderV4.swap` throws by + * design, because a swap order carries the route constraint, which is outside + * the launch's audited surface. + */ +export async function buildSwapIntentTx( + blaze: Blaze, + params: ISundaeSwapIntentParams, +): Promise { + if (!params.ownerAddress) { + throw new Error( + "Sundae V4 swap requires ownerAddress so the order remains cancellable", + ); + } + if (params.offered.amount <= 0n) { + throw new Error("Sundae V4 swap requires a positive offered amount"); + } + if (params.minReceived.amount <= 0n) { + throw new Error("Sundae V4 swap requires a positive minReceived amount"); + } + if ( + SundaeUtils.isAssetIdsEqual( + params.offered.metadata.assetId, + params.minReceived.metadata.assetId, + ) + ) { + throw new Error( + "Sundae V4 swap requires the offered and received assets to differ", + ); + } + + const builder = SundaeSDK.new({ blazeInstance: blaze }).builder( + EContractVersion.V4, + ); + + // Each optional is forwarded only when supplied, so Sundae's own defaults + // apply otherwise. + return builder.swapIntent({ + ownerAddress: params.ownerAddress, + offered: params.offered, + minReceived: params.minReceived, + ...(params.destination === undefined + ? {} + : { destination: params.destination }), + ...(params.budget === undefined ? {} : { budget: params.budget }), + ...(params.maxPerExecution === undefined + ? {} + : { maxPerExecution: params.maxPerExecution }), + ...(params.configToken === undefined + ? {} + : { configToken: params.configToken }), + }); +} + +/** + * Builds a Sundae V3 or Stableswaps order whose proceeds continue into a + * version-aware RealFi stake order. The caller's original Sundae destination + * becomes the RealFi destination, so both sUSDr and any USDr above Sundae's + * guaranteed minimum continue to the intended recipient. + */ +export async function buildSwapToStakeOrderTx( + blaze: Blaze, + { sdk, swap, stake }: ISundaeSwapToStakeParams, +): Promise { + assertSupportedSundaeSwapPool(swap.pool); + if (!swap.ownerAddress) { + throw new Error( + "Sundae swap-to-stake requires ownerAddress so the swap remains cancellable", + ); + } + + // The Sundae builder validates the continuation address that replaces this + // destination. Validate the caller's original final destination first so a + // cross-network address or a script address without a datum cannot be hidden + // by composition and later receive the sUSDr/excess output incorrectly. + BlazeHelper.validateAddressAndDatumAreValid({ + ...swap.orderAddresses.DestinationAddress, + network: SundaeUtils.getNetworkFromProvider(blaze.provider.networkName), + }); + + const suppliedAsset = canonicalizePoolAsset(swap.pool, swap.suppliedAsset); + const swapType = canonicalizeSwapType( + swap.pool, + suppliedAsset, + swap.swapType, + ); + const minReceived = + swapType.type === ESwapType.LIMIT + ? swapType.minReceivable + : quoteSwap({ + pool: swap.pool, + suppliedAsset, + slippage: swapType.slippage, + }).minReceived; + + const continuation = await sdk.buildStakeContinuation({ + ...stake, + owner: + stake?.owner ?? + realfiOwnerFromSundaeV3OwnerAddress( + Core.Address.fromBech32(swap.ownerAddress).getNetworkId() === + Core.NetworkId.Mainnet + ? "mainnet" + : "preview", + swap.ownerAddress, + ), + swap: { minReceived }, + destination: realfiDestinationFromSundaeDestination( + swap.orderAddresses.DestinationAddress, + ), + }); + + return buildSwapOrderTx(blaze, { + ...swap, + orderAddresses: { + DestinationAddress: + sundaeV3DestinationAddressFromStepResult(continuation), + ...(swap.orderAddresses.AlternateAddress + ? { AlternateAddress: swap.orderAddresses.AlternateAddress } + : {}), + }, + }); +} + +/** Creates a Blaze-scoped partner swap adapter. */ +export function create(blaze: Blaze): ISundaeSwapSDK { + return { + quoteSwap, + quoteSwapInput, + buildSwapOrderTx: (params) => buildSwapOrderTx(blaze, params), + buildSwapIntentTx: (params) => buildSwapIntentTx(blaze, params), + buildSwapToStakeOrderTx: (params) => buildSwapToStakeOrderTx(blaze, params), + }; +} + +function realfiDestinationFromSundaeDestination({ + address, + datum, +}: TDestinationAddress) { + const realfiDatum: RealFiDestinationDatum = (() => { + switch (datum.type) { + case EDatumType.NONE: + return "NoDatum"; + case EDatumType.HASH: + return { DatumHash: [datum.value] }; + case EDatumType.INLINE: + return { InlineDatum: [plutusDataFromCbor(datum.value)] }; + default: { + const unreachable: never = datum; + return unreachable; + } + } + })(); + + return addressToRealFiDestination( + Core.Address.fromBech32(address), + realfiDatum, + ); +} diff --git a/modules/realfi-partner-sdk/src/sundae/support.ts b/modules/realfi-partner-sdk/src/sundae/support.ts new file mode 100644 index 0000000000..119385a952 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sundae/support.ts @@ -0,0 +1,101 @@ +import { EContractVersion, type IPoolData } from "@sundaeswap/core"; + +interface IPoolSupport { + /** We can quote this pool and place a swap for it. */ + swap: boolean; + /** + * The order names the pool, so the pool-taking `buildSwapOrderTx` accepts it. + * A V4 order is an intent that names no pool — the scooper chooses — so a V4 + * pool is swappable without this. + */ + buildAgainstPool: boolean; +} + +/** + * What the SDK can do with a pool, by Sundae contract version. + * + * Deliberately a `Record` over every version: a new Sundae version will not + * compile until someone answers both questions for it, rather than silently + * defaulting to unsupported because nobody remembered a second list. + */ +const POOL_SUPPORT = { + [EContractVersion.V1]: { swap: false, buildAgainstPool: false }, + [EContractVersion.V3]: { swap: true, buildAgainstPool: true }, + [EContractVersion.NftCheck]: { swap: false, buildAgainstPool: false }, + [EContractVersion.Condition]: { swap: false, buildAgainstPool: false }, + [EContractVersion.Stableswaps]: { swap: true, buildAgainstPool: true }, + [EContractVersion.V4]: { swap: true, buildAgainstPool: false }, +} as const satisfies Record; + +type TVersionsWhere = { + [V in EContractVersion]: (typeof POOL_SUPPORT)[V][K] extends true ? V : never; +}[EContractVersion]; + +function versionsWhere( + capability: K, +): readonly TVersionsWhere[] { + return (Object.keys(POOL_SUPPORT) as EContractVersion[]).filter( + (version): version is TVersionsWhere => + POOL_SUPPORT[version][capability], + ); +} + +/** + * `pool.version` comes off the Sundae API, so a version absent from the table + * reads as unsupported rather than throwing. Fail closed. + */ +function supports( + version: EContractVersion, + capability: keyof IPoolSupport, +): boolean { + return POOL_SUPPORT[version]?.[capability] === true; +} + +/** Versions whose order names the pool. See {@link isSupportedSundaeSwapVersion}. */ +export const SUPPORTED_SUNDAE_SWAP_VERSIONS = versionsWhere("buildAgainstPool"); + +export type TSundaeSwapVersion = TVersionsWhere<"buildAgainstPool">; + +/** + * Whether the pool-taking `buildSwapOrderTx` accepts this version. Narrower than + * {@link isSwappableSundaeSwapVersion} — a V4 pool is swappable but its order + * names no pool, so it is not buildable *against a pool*. + */ +export function isSupportedSundaeSwapVersion( + version: EContractVersion, +): version is TSundaeSwapVersion { + return supports(version, "buildAgainstPool"); +} + +export function assertSupportedSundaeSwapPool( + pool: IPoolData, +): asserts pool is IPoolData & { version: TSundaeSwapVersion } { + if (!isSupportedSundaeSwapVersion(pool.version)) { + throw new Error(`Unsupported Sundae swap pool version: ${pool.version}`); + } +} + +/** Versions the SDK can quote and place a swap for. */ +export const SWAPPABLE_SUNDAE_SWAP_VERSIONS = versionsWhere("swap"); + +export type TSwappableSundaeSwapVersion = TVersionsWhere<"swap">; + +/** Whether the SDK can quote this version and place a swap for it. */ +export function isSwappableSundaeSwapVersion( + version: EContractVersion, +): version is TSwappableSundaeSwapVersion { + return supports(version, "swap"); +} + +/** + * Throws the same message as {@link assertSupportedSundaeSwapPool} on purpose: + * callers and tests treat "Unsupported Sundae swap pool version: X" as the one + * version-rejection string. + */ +export function assertSwappableSundaeSwapPool( + pool: IPoolData, +): asserts pool is IPoolData & { version: TSwappableSundaeSwapVersion } { + if (!isSwappableSundaeSwapVersion(pool.version)) { + throw new Error(`Unsupported Sundae swap pool version: ${pool.version}`); + } +} diff --git a/modules/realfi-partner-sdk/src/sundae/v4-curve.ts b/modules/realfi-partner-sdk/src/sundae/v4-curve.ts new file mode 100644 index 0000000000..448b570516 --- /dev/null +++ b/modules/realfi-partner-sdk/src/sundae/v4-curve.ts @@ -0,0 +1,125 @@ +import { EContractVersion, EPoolCurve, type IPoolData } from "@sundaeswap/core"; + +/** + * Fills in the two v4 fields Sundae's own pool query does not select. + * + * `QueryProviderSundaeSwap.findPoolDataByAssetId` builds its query inside + * `@sundaeswap/core`, and that query asks for neither `modules` nor `prices`. + * So every v4 pool it returns arrives with `curve` and `prices` undefined, and + * anything downstream has to assume the curve rather than check it. + * + * This is a stopgap for that gap, deliberately shaped to retire itself: it only + * queries for pools that are *missing* the fields. The day Sundae selects them + * upstream, the candidate list is empty, the extra request never fires, and + * deleting this module is pure cleanup rather than a behaviour change. + */ + +interface IPoolCurveRow { + id: string; + modules?: { identifier: string }[] | null; + prices?: (string | number)[] | null; +} + +const POOL_CURVE_QUERY = `query poolCurves($asset: ID!) { + pools { byAsset(asset: $asset) { id modules { identifier } prices } } +}`; + +const CURVES: readonly EPoolCurve[] = [ + EPoolCurve.ConstantProduct, + EPoolCurve.ConstantSum, + EPoolCurve.ConcentratedLiquidity, +]; + +/** + * The invariant module identifiers are exactly the `EPoolCurve` values, so match + * on those rather than on the `kind` discriminator — one less shape to depend on. + */ +function curveOf(row: IPoolCurveRow): EPoolCurve | undefined { + return CURVES.find((curve) => + (row.modules ?? []).some((module) => module.identifier === curve), + ); +} + +/** + * `IPoolData.prices` is a two-tuple aligned to `[assetA, assetB]`, but a v4 pool + * can hold up to 16 assets and the API returns a weight for each. Two cases are + * safe to map: + * + * - every weight is equal, so whichever two `assetA`/`assetB` project to are + * equal as well — this is what RealFi's stablecoin pools look like, including + * the three-asset ones; + * - exactly two weights, which align with the pair directly. + * + * Anything else is left undefined rather than guessed at. A consumer that needs + * the weights then refuses the pool, which is the right answer for a pool we + * cannot describe. + */ +function pricesOf(row: IPoolCurveRow): [bigint, bigint] | undefined { + const raw = row.prices ?? []; + if (raw.length === 0) return undefined; + + const weights = raw.map((price) => BigInt(price)); + if (new Set(weights).size === 1) { + return [weights[0]!, weights[0]!]; + } + return weights.length === 2 ? [weights[0]!, weights[1]!] : undefined; +} + +function needsCurveData(pool: IPoolData): boolean { + return ( + pool.version === EContractVersion.V4 && + (pool.curve === undefined || pool.prices === undefined) + ); +} + +/** + * Returns `pools` with `curve`/`prices` filled in for the v4 pools that lacked + * them. A pool the query cannot describe is returned untouched; a failed request + * leaves every pool untouched, so discovery degrades to today's behaviour rather + * than failing outright. + */ +export async function withV4CurveData( + pools: readonly IPoolData[], + assetId: string, + endpoint: string, +): Promise { + if (!pools.some(needsCurveData)) { + return [...pools]; + } + + let rows: IPoolCurveRow[]; + try { + const response = await fetch(endpoint, { + body: JSON.stringify({ + query: POOL_CURVE_QUERY, + variables: { asset: assetId }, + }), + headers: { "Content-Type": "application/json" }, + method: "POST", + }); + const payload = (await response.json()) as { + data?: { pools?: { byAsset?: IPoolCurveRow[] } }; + }; + rows = payload.data?.pools?.byAsset ?? []; + } catch { + return [...pools]; + } + + const byIdent = new Map(rows.map((row) => [row.id, row])); + + return pools.map((pool) => { + if (!needsCurveData(pool)) return pool; + + const row = byIdent.get(pool.ident); + if (!row) return pool; + + const curve = pool.curve ?? curveOf(row); + const prices = pool.prices ?? pricesOf(row); + + return { + ...pool, + ...(curve === undefined ? {} : { curve }), + ...(prices === undefined ? {} : { prices }), + }; + }); +} diff --git a/modules/realfi-partner-sdk/src/tx-builder/README.md b/modules/realfi-partner-sdk/src/tx-builder/README.md new file mode 100644 index 0000000000..1bcba6d0b1 --- /dev/null +++ b/modules/realfi-partner-sdk/src/tx-builder/README.md @@ -0,0 +1,164 @@ +# RealFi Transaction Flow Builder + +This module builds transaction flow outputs for multi-step RealFi routes. A +flow starts with a final destination, then works backward through each requested +step so every step receives the correct continuation address and datum for the +step that follows it. + +The result is a single `TxBuilderFlowResult` containing: + +- `address`: where the outermost order output should be locked +- `datum`: the inline datum for that output, when one is needed +- `value`: the assets locked at that output + +The entire sequence of steps is folded into the output datum. +Callers of the tx flow builder can then use a Cardano transaction building library (eg. blaze) to create a valid cardano transaction that produces this output. + +## Importing + +The tx-builder API is exported from the main SDK and from a subpath: + +```ts +import { TxBuilder } from "@sundaeswap/realfi-sdk"; +``` + +```ts +import { + buildTxFlow, + createTxFlowBuilder, + txBuilderFlowResultToCoreOutput, + type TxFlowStep, +} from "@sundaeswap/realfi-sdk/tx-builder"; +``` + +## Flow Steps + +The following protocols are supported: + +- `RealFiTxFlowStep`: legacy V1.0-only flow step. +- `SundaeV3TxFlowStep`: builds a Sundae V3 swap, deposit, or withdraw order + datum and points its destination at the next step. +- `RealfiSDK.sundae.buildSwapToStakeOrderTx`: builds a version-neutral + swap-to-stake order for Sundae V3 or Stableswaps pools. The pool's + `version` selects Sundae's real transaction and datum builder. + +For swap-to-stake, the version-neutral helper asks the version-aware RealFi SDK +to build the stake continuation. It supports the current V1.0 and V1.1 schemas, +uses the live RealFi request address and exchange rate, and computes RealFi's +`min_received` without a caller-supplied vault ratio. The deprecated +`sundaeV3SwapToStake` helper remains available for compatibility with callers +that already supply a fully formed V3 datum input. + +## Network Registry + +The package includes a `TX_BUILDER_REGISTRY` keyed by network: + +- `preview` +- `preprod` +- `mainnet` + +Each entry contains request script addresses for legacy flow steps. Sundae V3 +request addresses are included. The version-neutral swap-to-stake helper does +not use these Sundae addresses: Sundae's selected V3 or Stableswaps builder +resolves its version-specific validator from current protocol parameters. The +legacy RealFi V1.0 address is included for `preprod`; `preview` runs V1.1, so +the stale V1.0 address is deliberately unset. Both swap-to-stake helpers get +the RealFi address from the live SDK instead of this registry. Trying to build +a legacy RealFi step without an address throws an error. + +For most SDK usage, create a network-scoped builder once and let it populate +step addresses from the registry: + +```ts +const txFlow = createTxFlowBuilder({ network: "preview" }); +``` + +You can also pass a custom registry: + +```ts +const txFlow = createTxFlowBuilder({ + network: "preview", + registry: { + preview: { + realfi: { requestAddress: "addr_test..." }, + sundaeV3: { requestAddress: "addr_test..." }, + }, + preprod: { + realfi: { requestAddress: "addr_test..." }, + sundaeV3: { requestAddress: "addr_test..." }, + }, + mainnet: { + realfi: { requestAddress: "addr..." }, + sundaeV3: { requestAddress: "addr..." }, + }, + }, +}); +``` + +## Example + +```ts +import { AssetAmount } from "@sundaeswap/asset"; +import { EDatumType, ESwapType } from "@sundaeswap/core"; +import { RealfiSDK } from "@sundaeswap/realfi-sdk"; + +const ownerAddress = await blaze.wallet.getChangeAddress(); +const suppliedAsset = new AssetAmount(100_000_000n, pool.assetA); +const sundae = RealfiSDK.sundae.create(blaze); + +// The caller still chooses swap slippage. The SDK uses Sundae's quote logic. +const quote = sundae.quoteSwap({ pool, suppliedAsset, slippage: 0.03 }); + +const order = await sundae.buildSwapToStakeOrderTx({ + sdk: realfiSdk, + swap: { + pool, + suppliedAsset, + swapType: { + type: ESwapType.LIMIT, + minReceivable: quote.minReceived, + }, + // This address retains cancellation authority over the Sundae and RealFi + // orders unless `stake.owner` is deliberately overridden. + ownerAddress: ownerAddress.toBech32(), + orderAddresses: { + // The final destination receives sUSDr and any USDr above the guaranteed + // swap minimum after RealFi executes the stake order. + DestinationAddress: { + address: ownerAddress.toBech32(), + datum: { type: EDatumType.NONE }, + }, + AlternateAddress: ownerAddress.toBech32(), + }, + }, + // Optional override for the RealFi leg; the SDK default is used when omitted. + stake: { slippageToleranceBps: 500n }, +}); +const { cbor } = await order.build(); +``` + +The helper supports Sundae V3 and Stableswaps without a caller-side branch. It +uses the executable Sundae `minReceived` as the RealFi stake amount, while the +RealFi SDK independently computes the stake leg's sUSDr `min_received`. It does +not accept a separate stake amount, `vaultRatio`, or RealFi `min_received`. + +`buildTxFlow` and `txBuilderFlowResultToCoreOutput` are available as +lower-level functions when callers want to provide fully formed steps directly. +The low-level `realfi` and `realfiStake` steps are retained for V1.0 callers. +They serialize the V1.0 schema and require a V1.0 request address; +`realfiStake` also requires the caller to supply a vault ratio. Do not use them +for Preview's V1.1 deployment. + +## Destination Helpers + +The module also exposes helpers for encoding continuation destinations: + +- `realfiDestinationFromStepResult` +- `addressToRealFiDestination` +- `realfiDestinationToAddress` +- `sundaeV3DestinationFromStepResult` +- `inlineDatumFromStepResult` +- `plutusDataFromCbor` + +These helpers are useful when integrating new step builders or testing datum +round-trips. diff --git a/modules/realfi-partner-sdk/src/tx-builder/destination.ts b/modules/realfi-partner-sdk/src/tx-builder/destination.ts new file mode 100644 index 0000000000..84be8cbea8 --- /dev/null +++ b/modules/realfi-partner-sdk/src/tx-builder/destination.ts @@ -0,0 +1,214 @@ +/* eslint-disable @typescript-eslint/naming-convention */ + +import { Hash28ByteBase16, HexBlob, PlutusData } from "@blaze-cardano/core"; +import { Core } from "@blaze-cardano/sdk"; +import { + DatumBuilderV3, + EDatumType, + type TDatum, + type TDatumResult, + type TDestinationAddress, + type TSupportedNetworks, +} from "@sundaeswap/core"; + +import type { + Destination, + MultisigScript, +} from "../generated-types/v1_0/index.js"; + +/** + * Intermediate output produced by one flow step and consumed by the previous + * flow step as its continuation destination. + */ +export interface TxBuilderStepResult { + address: Core.Address; + datum?: PlutusData; +} + +export type RealFiDestinationDatum = Destination["datum"]; +export type SundaeV3DestinationResult = TDatumResult< + ReturnType["schema"] +>; + +/** + * Converts a step result's optional inline datum into the RealFi destination + * datum shape. + */ +export function realfiDestinationDatumFromStepResult( + stepResult: TxBuilderStepResult, +): RealFiDestinationDatum { + return stepResult.datum ? { InlineDatum: [stepResult.datum] } : "NoDatum"; +} + +/** + * Builds a RealFi destination that points to a step result's address and datum. + */ +export function realfiDestinationFromStepResult( + stepResult: TxBuilderStepResult, +): Destination { + return addressToRealFiDestination( + stepResult.address, + realfiDestinationDatumFromStepResult(stepResult), + ); +} + +/** + * Converts a Cardano address plus optional datum into the generated RealFi + * destination type. + */ +export function addressToRealFiDestination( + address: Core.Address, + datum: RealFiDestinationDatum = "NoDatum", +): Destination { + const props = address.getProps(); + const paymentPart = props.paymentPart; + + if (!paymentPart) { + throw new Error("Address must have a payment part"); + } + + const paymentCredential = + paymentPart.type === Core.CredentialType.KeyHash + ? { VerificationKey: [paymentPart.hash] as [string] } + : { Script: [paymentPart.hash] as [string] }; + + let stakeCredential: Destination["address"]["stake_credential"] = undefined; + if (props.delegationPart) { + const stakeCred = + props.delegationPart.type === Core.CredentialType.KeyHash + ? { VerificationKey: [props.delegationPart.hash] as [string] } + : { Script: [props.delegationPart.hash] as [string] }; + stakeCredential = { Inline: [stakeCred] }; + } + + return { + address: { + payment_credential: paymentCredential, + stake_credential: stakeCredential, + }, + datum, + }; +} + +/** + * Derives a RealFi owner from the exact cancellation authority Sundae V3 + * assigns to an owner address. Sundae prefers a base address's staking hash + * over its payment hash, while deciding Signature vs Script from the address's + * payment credential, so this must use Sundae's builder rather than reimplement + * those semantics from the Blaze address parts. + */ +export function realfiOwnerFromSundaeV3OwnerAddress( + network: TSupportedNetworks, + ownerAddress: string, +): MultisigScript { + const sundaeOwner = new DatumBuilderV3(network).buildOwnerDatum( + ownerAddress, + ).schema; + + if ("Signature" in sundaeOwner) { + return { Signature: { key_hash: sundaeOwner.Signature.keyHash } }; + } + if ("Script" in sundaeOwner) { + return { Script: { script_hash: sundaeOwner.Script.scriptHash } }; + } + + throw new Error("Unsupported Sundae V3 owner datum derived from address"); +} + +/** + * Reconstructs a Cardano address from a generated RealFi destination address. + */ +export function realfiDestinationToAddress( + network: Core.NetworkId, + destination: Destination, +): Core.Address { + const paymentCred = destination.address.payment_credential; + const stakingCred = destination.address.stake_credential; + + const paymentCredCore = + "VerificationKey" in paymentCred + ? keyCredential(paymentCred.VerificationKey[0]) + : scriptCredential(paymentCred.Script[0]); + + let stakingCredCore: Core.Credential | undefined = undefined; + if (stakingCred && "Inline" in stakingCred) { + const inlineCredential = stakingCred.Inline[0]; + stakingCredCore = + "VerificationKey" in inlineCredential + ? keyCredential(inlineCredential.VerificationKey[0]) + : scriptCredential(inlineCredential.Script[0]); + } + + return Core.addressFromCredentials(network, paymentCredCore, stakingCredCore); +} + +/** + * Converts a step result's optional inline datum into the Sundae V3 destination + * datum shape. + */ +export function sundaeV3DestinationDatumFromStepResult( + stepResult: TxBuilderStepResult, +): TDatum { + return stepResult.datum + ? { + type: EDatumType.INLINE, + value: stepResult.datum.toCbor().toString(), + } + : { type: EDatumType.NONE }; +} + +/** + * Builds the Sundae V3 destination address payload for a step result. + */ +export function sundaeV3DestinationAddressFromStepResult( + stepResult: TxBuilderStepResult, +): TDestinationAddress { + return { + address: stepResult.address.toBech32(), + datum: sundaeV3DestinationDatumFromStepResult(stepResult), + }; +} + +/** + * Serializes the Sundae V3 destination used by classic, stableswap, and + * linearswap orders to route proceeds to the next step. + */ +export function sundaeV3DestinationFromStepResult( + network: TSupportedNetworks, + stepResult: TxBuilderStepResult, +): SundaeV3DestinationResult { + return new DatumBuilderV3(network).buildDestinationAddresses( + sundaeV3DestinationAddressFromStepResult(stepResult), + ); +} + +/** + * Returns the step result's inline datum for protocols that store continuation + * data directly as an optional Plutus datum. + */ +export function inlineDatumFromStepResult( + stepResult: TxBuilderStepResult, +): PlutusData | undefined { + return stepResult.datum; +} + +/** + * Parses Plutus data from a CBOR hex string. + */ +export function plutusDataFromCbor(cborHex: string): PlutusData { + return PlutusData.fromCbor(HexBlob(cborHex)); +} + +function keyCredential(hash: string): Core.Credential { + return Core.Credential.fromCore({ + type: Core.CredentialType.KeyHash, + hash: Hash28ByteBase16(hash), + }); +} + +function scriptCredential(hash: string): Core.Credential { + return Core.Credential.fromCore({ + type: Core.CredentialType.ScriptHash, + hash: Hash28ByteBase16(hash), + }); +} diff --git a/modules/realfi-partner-sdk/src/tx-builder/flow.ts b/modules/realfi-partner-sdk/src/tx-builder/flow.ts new file mode 100644 index 0000000000..fe384a4c84 --- /dev/null +++ b/modules/realfi-partner-sdk/src/tx-builder/flow.ts @@ -0,0 +1,284 @@ +/* eslint-disable @typescript-eslint/naming-convention */ + +import type { PlutusData } from "@blaze-cardano/core"; +import * as Data from "@blaze-cardano/data"; +import { Core } from "@blaze-cardano/sdk"; +import { + DatumBuilderV3, + type IDatumBuilderDepositV3Args, + type IDatumBuilderSwapV3Args, + type IDatumBuilderWithdrawV3Args, + type TSupportedNetworks, +} from "@sundaeswap/core"; + +import { V1_0Types } from "../generated-types/index.js"; +import type { + MultisigScript, + OrderActionV1, + OrderDatumV1, +} from "../generated-types/v1_0/index.js"; +import { + type TxBuilderStepResult, + plutusDataFromCbor, + realfiDestinationFromStepResult, + sundaeV3DestinationAddressFromStepResult, +} from "./destination.js"; + +/** + * Output produced by one flow step. The previous step consumes only this + * result's address and datum as its continuation destination. The value is the + * Cardano assets locked at this step's output; after the right fold, only the + * outermost folded result is converted into the transaction output. + */ +export interface TxBuilderFlowResult extends TxBuilderStepResult { + value: Core.Value; +} + +export interface TxBuilderFinalStep extends TxBuilderFlowResult {} + +export const STAKE_VAULT_RATIO_SCALE = 1_000_000n; +export const DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS = 50n; + +const BPS_DENOMINATOR = 10_000n; + +/** + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ +export interface RealFiStakeActionInput { + amount: bigint; + /** + * Current USDr-per-sUSDr vault ratio scaled by 1e6. + * + * This is the shape returned by the RealFi API's latestVaultRatio query. + */ + vaultRatio: bigint; + slippageToleranceBps?: bigint; +} + +/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */ +export interface RealFiTxFlowStep { + kind: "realfi"; + address: Core.Address; + value: Core.Value; + owner: MultisigScript; + action: OrderActionV1; + data?: PlutusData; +} + +export interface SundaeV3BaseTxFlowStep { + kind: "sundae-v3"; + network: TSupportedNetworks; + address: Core.Address; + value: Core.Value; +} + +export interface SundaeV3SwapTxFlowStep + extends + SundaeV3BaseTxFlowStep, + Omit { + orderKind: "swap"; +} + +export interface SundaeV3DepositTxFlowStep + extends + SundaeV3BaseTxFlowStep, + Omit { + orderKind: "deposit"; +} + +export interface SundaeV3WithdrawTxFlowStep + extends + SundaeV3BaseTxFlowStep, + Omit { + orderKind: "withdraw"; +} + +export type SundaeV3TxFlowStep = + | SundaeV3SwapTxFlowStep + | SundaeV3DepositTxFlowStep + | SundaeV3WithdrawTxFlowStep; + +export type SundaeTxFlowStep = SundaeV3TxFlowStep; + +export type TxFlowStep = RealFiTxFlowStep | SundaeTxFlowStep; + +/** + * Computes stake order `min_received` from the current vault exchange rate. + * + * `vaultRatio` is USDr per sUSDr scaled by 1e6, so the natural sUSDr output is + * `amount * 1e6 / vaultRatio`. The tolerance is applied to that output floor. + * + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ +export function computeStakeMinReceivedFromVaultRatio( + amount: bigint, + vaultRatio: bigint, + slippageToleranceBps: bigint = DEFAULT_STAKE_SLIPPAGE_TOLERANCE_BPS, +): bigint { + if (amount <= 0n) { + throw new Error("Stake amount must be positive"); + } + if (vaultRatio <= 0n) { + throw new Error("Vault ratio must be positive"); + } + if (slippageToleranceBps < 0n || slippageToleranceBps > BPS_DENOMINATOR) { + throw new Error("Slippage tolerance must be between 0 and 10000 bps"); + } + + const expected = (amount * STAKE_VAULT_RATIO_SCALE) / vaultRatio; + const minReceived = + (expected * (BPS_DENOMINATOR - slippageToleranceBps)) / BPS_DENOMINATOR; + // WTB-1764: stake.ak requires min_received > 0 and crashes the entire + // execution transaction (not just this request) when it is not, so a floor + // that rounds or tolerances down to zero must not become an order. + if (minReceived <= 0n) { + throw new Error( + `Quoted min_received must be positive (got ${minReceived}); the stake amount ` + + "is too small for this vault ratio and tolerance to quote a non-zero floor", + ); + } + return minReceived; +} + +/** @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. */ +export function buildRealFiStakeAction({ + amount, + vaultRatio, + slippageToleranceBps, +}: RealFiStakeActionInput): OrderActionV1 { + return { + OStake: { + amount, + min_received: computeStakeMinReceivedFromVaultRatio( + amount, + vaultRatio, + slippageToleranceBps, + ), + }, + }; +} + +/** + * Builds the final flow result by folding from the final step backward through + * each requested flow step. + */ +export function buildTxFlow( + steps: readonly TxFlowStep[], + finalStep: TxBuilderFinalStep, +): TxBuilderFlowResult { + return steps.reduceRight( + (nextStep, step) => buildTxFlowStep(step, nextStep), + finalStep, + ); +} + +/** + * Builds one flow step using the already-built next step as its continuation. + */ +export function buildTxFlowStep( + step: TxFlowStep, + nextStep: TxBuilderFlowResult, +): TxBuilderFlowResult { + switch (step.kind) { + case "realfi": + return buildRealFiTxFlowStep(step, nextStep); + case "sundae-v3": + return buildSundaeV3TxFlowStep(step, nextStep); + default: { + const unreachable: never = step; + return unreachable; + } + } +} + +/** + * Builds a RealFi order flow result whose destination points to the next step. + * + * @deprecated V1_0 only. Prefer the SDK-backed stake continuation helper. + */ +export function buildRealFiTxFlowStep( + step: RealFiTxFlowStep, + nextStep: TxBuilderStepResult, +): TxBuilderFlowResult { + const orderDatum: OrderDatumV1 = { + owner: step.owner, + destination: realfiDestinationFromStepResult(nextStep), + action: step.action, + data: step.data ?? Data.Void(), + }; + + return { + address: step.address, + datum: Data.serialize(V1_0Types.OrderDatumV1, orderDatum), + value: step.value, + }; +} + +/** + * Builds a Sundae V3 flow result by injecting the next step as the order + * destination and serializing the selected order datum. + */ +export function buildSundaeV3TxFlowStep( + step: SundaeV3TxFlowStep, + nextStep: TxBuilderStepResult, +): TxBuilderFlowResult { + const builder = new DatumBuilderV3(step.network); + const destinationAddress = sundaeV3DestinationAddressFromStepResult(nextStep); + let inlineDatum: string; + + switch (step.orderKind) { + case "swap": + inlineDatum = builder.buildSwapDatum({ + destinationAddress, + ident: step.ident, + order: step.order, + ownerAddress: step.ownerAddress, + scooperFee: step.scooperFee, + }).inline; + break; + case "deposit": + inlineDatum = builder.buildDepositDatum({ + destinationAddress, + ident: step.ident, + order: step.order, + ownerAddress: step.ownerAddress, + scooperFee: step.scooperFee, + }).inline; + break; + case "withdraw": + inlineDatum = builder.buildWithdrawDatum({ + destinationAddress, + ident: step.ident, + order: step.order, + ownerAddress: step.ownerAddress, + scooperFee: step.scooperFee, + }).inline; + break; + default: { + const unreachable: never = step; + return unreachable; + } + } + + return { + address: step.address, + datum: plutusDataFromCbor(inlineDatum), + value: step.value, + }; +} + +/** + * Converts the folded flow result into a transaction output with an inline + * datum when the result includes one. + */ +export function txBuilderFlowResultToCoreOutput( + result: TxBuilderFlowResult, +): Core.TransactionOutput { + const output = new Core.TransactionOutput(result.address, result.value); + + if (result.datum) { + output.setDatum(Core.Datum.newInlineData(result.datum)); + } + + return output; +} diff --git a/modules/realfi-partner-sdk/src/tx-builder/index.ts b/modules/realfi-partner-sdk/src/tx-builder/index.ts new file mode 100644 index 0000000000..f772034c13 --- /dev/null +++ b/modules/realfi-partner-sdk/src/tx-builder/index.ts @@ -0,0 +1,3 @@ +export * from "./destination.js"; +export * from "./flow.js"; +export * from "./registry.js"; diff --git a/modules/realfi-partner-sdk/src/tx-builder/registry.ts b/modules/realfi-partner-sdk/src/tx-builder/registry.ts new file mode 100644 index 0000000000..708c761cf3 --- /dev/null +++ b/modules/realfi-partner-sdk/src/tx-builder/registry.ts @@ -0,0 +1,259 @@ +/* eslint-disable @typescript-eslint/naming-convention */ + +import { Core } from "@blaze-cardano/sdk"; +import type { TSupportedNetworks } from "@sundaeswap/core"; + +import type { + IBuildStakeContinuationParams, + IStakeContinuation, +} from "../sdk/v1/family.js"; +import { + buildRealFiStakeAction, + buildSundaeV3TxFlowStep, + buildTxFlow, + txBuilderFlowResultToCoreOutput, + type RealFiTxFlowStep, + type RealFiStakeActionInput, + type SundaeV3TxFlowStep, + type TxBuilderFinalStep, + type TxBuilderFlowResult, + type TxFlowStep, +} from "./flow.js"; +import { + realfiOwnerFromSundaeV3OwnerAddress, + realfiDestinationFromStepResult, +} from "./destination.js"; + +type TxFlowStepInput = TStep extends unknown + ? Omit + : never; + +export type TxBuilderNetwork = TSupportedNetworks; + +export interface TxBuilderProtocolRegistry { + requestAddress?: string; +} + +export interface TxBuilderNetworkRegistry { + realfi: TxBuilderProtocolRegistry; + sundaeV3: TxBuilderProtocolRegistry; +} + +export type TxBuilderRegistry = Record< + TxBuilderNetwork, + TxBuilderNetworkRegistry +>; + +/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */ +export type RealFiTxFlowStepInput = TxFlowStepInput; + +/** @deprecated V1_0 only. Prefer `SundaeV3SwapToStakeInput`. */ +export type RealFiStakeTxFlowStepInput = Omit & + RealFiStakeActionInput; + +export type SundaeV3TxFlowStepInput = TxFlowStepInput; + +export type SundaeV3SwapTxFlowStepInput = Extract< + SundaeV3TxFlowStepInput, + { orderKind: "swap" } +>; + +/** A swap leg with explicit cancellation authority for the routed order. */ +export type SundaeV3OwnedSwapTxFlowStepInput = Omit< + SundaeV3SwapTxFlowStepInput, + "ownerAddress" +> & { + ownerAddress: string; +}; + +/** + * Any SDK instance exposing `buildStakeContinuation` — the partner facade's + * per-build dispatcher, an `"at-init"` instance, or a raw version-pinned SDK. + * Only the per-build dispatcher fails closed on a stale protocol version; + * the others carry no such guarantee. + */ +export interface StakeContinuationBuilder { + buildStakeContinuation( + params: IBuildStakeContinuationParams, + ): Promise; +} + +/** + * @deprecated Prefer `RealfiSDK.sundae.create(blaze).buildSwapToStakeOrderTx`. + * This input belongs to the lower-level, V3-only flow composer. + */ +export interface SundaeV3SwapToStakeInput { + sdk: StakeContinuationBuilder; + swap: SundaeV3OwnedSwapTxFlowStepInput; + finalStep: TxBuilderFinalStep; + stake?: Omit; +} + +export interface CreateTxFlowBuilderOptions { + network: TxBuilderNetwork; + registry?: TxBuilderRegistry; +} + +export interface TxFlowBuilder { + network: TxBuilderNetwork; + /** @deprecated V1_0 only. Prefer `sundaeV3SwapToStake`. */ + realfi: (step: RealFiTxFlowStepInput) => RealFiTxFlowStep; + /** @deprecated V1_0 only. Prefer `sundaeV3SwapToStake`. */ + realfiStake: (step: RealFiStakeTxFlowStepInput) => RealFiTxFlowStep; + sundaeV3: (step: SundaeV3TxFlowStepInput) => SundaeV3TxFlowStep; + /** + * @deprecated Prefer `RealfiSDK.sundae.create(blaze).buildSwapToStakeOrderTx`, + * which builds the complete V3 or Stableswaps order transaction. + */ + sundaeV3SwapToStake: ( + input: SundaeV3SwapToStakeInput, + ) => Promise; + build: ( + steps: readonly TxFlowStep[], + finalStep: TxBuilderFinalStep, + ) => TxBuilderFlowResult; + toOutput: (result: TxBuilderFlowResult) => Core.TransactionOutput; +} + +/** + * Default request address registry. Sundae V3 entries are enterprise order + * script addresses. The RealFi entry is a legacy V1_0-only path; preview runs + * V1_1, so its old V1_0 address is deliberately unset. New stake continuations + * derive the live address from the version-aware SDK instead. + */ +export const TX_BUILDER_REGISTRY = { + preview: { + realfi: {}, + sundaeV3: { + requestAddress: + "addr_test1wr866xg5kkvarzll69xjh0tfvqvu9zvuhht2qve9ehmgp0qfgf3wc", + }, + }, + preprod: { + realfi: { + requestAddress: + "addr_test1wrkgqyfrz7qhlhu737nf4v5dllypylasaqruphlul5jhpeczfzjzl", + }, + sundaeV3: { + requestAddress: + "addr_test1wz5cn230um3cve5gvvgk9kxveqcd888r3vl3rtxn3qxpvhcv0tzpr", + }, + }, + mainnet: { + realfi: {}, + sundaeV3: { + requestAddress: + "addr1w8ax5k9mutg07p2ngscu3chsauktmstq92z9de938j8nqacprc9mw", + }, + }, +} satisfies TxBuilderRegistry; + +/** + * Returns the registry entry for the selected network. + */ +export function getTxBuilderNetworkRegistry( + network: TxBuilderNetwork, + registry: TxBuilderRegistry = TX_BUILDER_REGISTRY, +): TxBuilderNetworkRegistry { + return registry[network]; +} + +/** + * Returns the RealFi request script address for the selected network. + * + * @deprecated V1_0 only. Prefer the version-aware SDK continuation builder. + */ +export function getRealFiRequestAddress( + network: TxBuilderNetwork, + registry: TxBuilderRegistry = TX_BUILDER_REGISTRY, +): Core.Address { + return requestAddressFromRegistry( + getTxBuilderNetworkRegistry(network, registry).realfi.requestAddress, + network, + "RealFi", + ); +} + +/** + * Returns the Sundae V3 request script address for the selected network. + */ +export function getSundaeV3RequestAddress( + network: TxBuilderNetwork, + registry: TxBuilderRegistry = TX_BUILDER_REGISTRY, +): Core.Address { + return requestAddressFromRegistry( + getTxBuilderNetworkRegistry(network, registry).sundaeV3.requestAddress, + network, + "Sundae V3", + ); +} + +/** + * Creates a network-scoped flow builder that fills request script addresses from + * the registry before building the right-folded transaction flow. + */ +export function createTxFlowBuilder({ + network, + registry = TX_BUILDER_REGISTRY, +}: CreateTxFlowBuilderOptions): TxFlowBuilder { + const sundaeV3 = (step: SundaeV3TxFlowStepInput): SundaeV3TxFlowStep => + ({ + ...step, + kind: "sundae-v3", + network, + address: getSundaeV3RequestAddress(network, registry), + }) as SundaeV3TxFlowStep; + + return { + network, + realfi: (step) => ({ + ...step, + kind: "realfi", + address: getRealFiRequestAddress(network, registry), + }), + realfiStake: ({ amount, vaultRatio, slippageToleranceBps, ...step }) => ({ + ...step, + kind: "realfi", + address: getRealFiRequestAddress(network, registry), + action: buildRealFiStakeAction({ + amount, + vaultRatio, + slippageToleranceBps, + }), + }), + sundaeV3, + sundaeV3SwapToStake: async ({ sdk, swap, finalStep, stake }) => { + if (!swap.ownerAddress) { + throw new Error( + "Sundae V3 swap-to-stake requires ownerAddress so the swap remains cancellable", + ); + } + // Default the inner RealFi order's owner to the Sundae leg's owner, so + // one address retains cancellation authority over both legs unless the + // caller deliberately splits it via `stake.owner`. + const continuation = await sdk.buildStakeContinuation({ + owner: realfiOwnerFromSundaeV3OwnerAddress(network, swap.ownerAddress), + ...stake, + swap: swap.order, + destination: realfiDestinationFromStepResult(finalStep), + }); + return buildSundaeV3TxFlowStep(sundaeV3(swap), continuation); + }, + build: buildTxFlow, + toOutput: txBuilderFlowResultToCoreOutput, + }; +} + +function requestAddressFromRegistry( + requestAddress: string | undefined, + network: TxBuilderNetwork, + protocol: string, +): Core.Address { + if (!requestAddress) { + throw new Error( + `No ${protocol} request address configured for ${network}. Add it to the tx-builder registry before building this step.`, + ); + } + + return Core.Address.fromBech32(requestAddress); +} diff --git a/yarn.lock b/yarn.lock index cd9d910a34..ef62388fff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -996,6 +996,17 @@ "@cosmjs/stargate" "^0.33.1" "@cosmjs/tendermint-rpc" "^0.33.1" +"@biglup/is-cid@^1.0.3": + version "1.0.3" + resolved "https://registry.npmjs.org/@biglup/is-cid/-/is-cid-1.0.3.tgz#6f97610814f882e0c6e9a08b978d202b6d345b3c" + integrity sha512-R0XPZ/IQhU2TtetSFI9vI+7kJOJYNiCncn5ixEBW+/LNaZCo2HK37Mq3pRNzrM4FryuAkyeqY7Ujmj3I3e3t9g== + dependencies: + "@multiformats/mafmt" "^12.1.6" + "@multiformats/multiaddr" "^12.1.14" + iso-url "^1.1.3" + multiformats "^13.0.1" + uint8arrays "^5.0.1" + "@bitcoin-js/tiny-secp256k1-asmjs@2.2.3": version "2.2.3" resolved "https://registry.npmjs.org/@bitcoin-js/tiny-secp256k1-asmjs/-/tiny-secp256k1-asmjs-2.2.3.tgz" @@ -1057,6 +1068,162 @@ resolved "https://registry.npmjs.org/@bitgo/wasm-utxo/-/wasm-utxo-4.27.0.tgz#35e613b7022787e357dab43b71a662d05155ae4e" integrity sha512-If9zQ3bLO9Xn61h5zWgto3sR9CR+OGD7KoBYJQ8Vp9jBMNKeIe7ZYCc+6xJARwAx90woVl/ivkjPoaYJtmsiYw== +"@blaze-cardano/blueprint@0.8.2": + version "0.8.2" + resolved "https://registry.npmjs.org/@blaze-cardano/blueprint/-/blueprint-0.8.2.tgz#0c54bafefdb3b0ec9c1cd37594d33361fc0e43bd" + integrity sha512-Vqoyz/Pl67KdLPalobctnQ/JbrPmm7ooMBgko074f3CC+H2ZqO7ipk67E7G3ZWa+hEcxcNi5REf/J5dY8B4SoA== + +"@blaze-cardano/core@0.8.0": + version "0.8.0" + resolved "https://registry.npmjs.org/@blaze-cardano/core/-/core-0.8.0.tgz#eb7a60dba8694aa477be068f81237ef2add6909a" + integrity sha512-l7boNfxrl4epfRPzXbD8rIb4Lfq/f2sz1sI9DEX7Y2JPNj6SZUAflEWyPy4BhFDRba8QbLXS1dQ2PV4wEV18WQ== + dependencies: + "@cardano-sdk/core" "0.46" + "@cardano-sdk/crypto" "^0.4" + "@cardano-sdk/util" "^0.17" + "@noble/curves" "^1.8.1" + "@noble/ed25519" "^2.2.3" + "@noble/hashes" "^1.7.1" + "@scure/bip39" "^1.5.4" + blakejs "^1.2.1" + +"@blaze-cardano/core@^0.9.0": + version "0.9.1" + resolved "https://registry.npmjs.org/@blaze-cardano/core/-/core-0.9.1.tgz#101647fcd552cb04e2b70e5dbdc9f5b989e30e73" + integrity sha512-T3hxHuzEwo9pIbOWGAMXpN9q7w3WxOMywx5I7XNVRAYnlQl4kUJVEEHy6qZb3H4PdF+SfG5LQdm9jFErS/AfZQ== + dependencies: + "@cardano-sdk/core" "^0.46.15" + "@cardano-sdk/crypto" "^0.4.7" + "@cardano-sdk/util" "^0.17.2" + "@noble/curves" "^1.8.1" + "@noble/ed25519" "^2.2.3" + "@noble/hashes" "^1.7.1" + "@scure/bip39" "^1.5.4" + blakejs "^1.2.1" + +"@blaze-cardano/data@0.6.6": + version "0.6.6" + resolved "https://registry.npmjs.org/@blaze-cardano/data/-/data-0.6.6.tgz#8c7f06d8a25119b4a96bda3969f376fbb81eb694" + integrity sha512-wmk1LZRlSSkOHlASkTC4YMXhPU3WXdFo0lDl9maono9tJnD7PjhH1NI15j8NoZRgZHBFf2vJosLvp3L9lpME/w== + dependencies: + "@blaze-cardano/core" "0.8.0" + "@sinclair/typebox" "^0.34.28" + +"@blaze-cardano/data@^0.6.1": + version "0.6.8" + resolved "https://registry.npmjs.org/@blaze-cardano/data/-/data-0.6.8.tgz#f6b6e7009ad602acc08f743eb8298a77ed0bfbbd" + integrity sha512-qrQ1ebGb99/xFf5w14FVcX/+PkhWvdrmNKgq2RIkG/1e1j8J1WsUW1orbPmtICsvb2ThPVNqNtVqDNrfFEU3/w== + dependencies: + "@blaze-cardano/core" "^0.9.0" + "@sinclair/typebox" "^0.34.28" + +"@blaze-cardano/emulator@^0.4.4": + version "0.4.5" + resolved "https://registry.npmjs.org/@blaze-cardano/emulator/-/emulator-0.4.5.tgz#1a1755a4df23915c335d02336ac5332e1b0d969c" + integrity sha512-Em7bjBAAoEEblYUih3T7bOMUxWY7XEOJKe1OE3AtPaWsOuuqqe9UHXuDztG91+QGm92k73W0aOGR0L8dgXyJkQ== + dependencies: + "@blaze-cardano/core" "0.8.0" + "@blaze-cardano/query" "0.5.6" + "@blaze-cardano/tx" "0.14.1" + "@blaze-cardano/vm" "0.2.3" + "@blaze-cardano/wallet" "0.5.3" + +"@blaze-cardano/jest-config@0.0.1": + version "0.0.1" + resolved "https://registry.npmjs.org/@blaze-cardano/jest-config/-/jest-config-0.0.1.tgz#009a61a3ff99ac6f5b226f51a27ca79ca6362bd6" + integrity sha512-q/0BzXoN+PP4kcwmqthJEYrQ1ee3pZ1Y2dV7X7levyccX8yVMxgMUvJjXhZKl0Bb9g8JidoxanVaBW0d0Y0mSw== + +"@blaze-cardano/ogmios@0.0.7": + version "0.0.7" + resolved "https://registry.npmjs.org/@blaze-cardano/ogmios/-/ogmios-0.0.7.tgz#3e159a78e1cb3c90000bc66102fe33f56376549e" + integrity sha512-6T5Iz9Qpenp8tj3eogfvjGIxScm01oSrXrnT8oUFxOT4xYGz7PmX69Y80e+1AFAGIzZpHvYZdIQpGBr0Qlyswg== + dependencies: + "@cardano-ogmios/schema" "^6.6.1" + isomorphic-ws "^5.0.0" + +"@blaze-cardano/query@0.5.6": + version "0.5.6" + resolved "https://registry.npmjs.org/@blaze-cardano/query/-/query-0.5.6.tgz#3b1e1c666992077a02bdb33e7c353e249cd16fc7" + integrity sha512-OrdJW2MjUJ7gT0YJlxGnDGuLvImXMdQln8OH+nIDEBbaxBP7/hrqLVeEtGpLqlQzXf+zqXlPkImIPvU6Gh+ezg== + dependencies: + "@blaze-cardano/core" "0.8.0" + "@blaze-cardano/jest-config" "0.0.1" + "@blaze-cardano/ogmios" "0.0.7" + "@cardano-ogmios/schema" "^6.6.1" + "@cardanosolutions/json-bigint" "^1.0.2" + ws "^8.17.1" + +"@blaze-cardano/sdk@0.2.47": + version "0.2.47" + resolved "https://registry.npmjs.org/@blaze-cardano/sdk/-/sdk-0.2.47.tgz#a25b6e3cf02f8a9738ae8c93d9885fbc5166b882" + integrity sha512-60cyOXKNqPXmO6LnlUic7KL3wErAUBql8x5CLv0Ixigq7UgjdeeY5uq5fY3MGVNmbg1FFLB8FreKl6c6VOv+2w== + dependencies: + "@blaze-cardano/core" "0.8.0" + "@blaze-cardano/query" "0.5.6" + "@blaze-cardano/tx" "0.14.1" + "@blaze-cardano/uplc" "0.4.3" + "@blaze-cardano/wallet" "0.5.2" + +"@blaze-cardano/sdk@^0.2.31": + version "0.2.48" + resolved "https://registry.npmjs.org/@blaze-cardano/sdk/-/sdk-0.2.48.tgz#cbaf820098ca906f91b04597646071191463292e" + integrity sha512-2gmqilbwEiIOuOpUFTLsBoGFKIYgQ4O0NA8RWlH82XEOKbOhnaU9LDkZAF2/+5U4HpggUsrn1HnBlB+oiwdvbw== + dependencies: + "@blaze-cardano/core" "0.8.0" + "@blaze-cardano/query" "0.5.6" + "@blaze-cardano/tx" "0.14.1" + "@blaze-cardano/uplc" "0.4.3" + "@blaze-cardano/wallet" "0.5.3" + +"@blaze-cardano/tx@0.14.1": + version "0.14.1" + resolved "https://registry.npmjs.org/@blaze-cardano/tx/-/tx-0.14.1.tgz#6144c88fc5f52dbd673e3bfca970d63d3220c0f2" + integrity sha512-8FiiWxbYsEj3Kq6/xw9NMxXG2FFZ5nLcs+vYQfxGFY2AA0duNI2onwAw9ZoY30n6mMoDQ7bHFXSP4GuQo86/BQ== + dependencies: + "@blaze-cardano/core" "0.8.0" + "@blaze-cardano/vm" "0.2.3" + +"@blaze-cardano/uplc@0.4.3": + version "0.4.3" + resolved "https://registry.npmjs.org/@blaze-cardano/uplc/-/uplc-0.4.3.tgz#74bdeccf0a4f518d6ee1b3204dd7f7fbcfc58456" + integrity sha512-S3eJq6hpU7YaUk72EUVph7er8faFOG35WkzFeLbdo9KnFndjYV65q0OJY2Zzk+mHZCvyx3AJvJO6TloN4q1nfQ== + dependencies: + "@blaze-cardano/core" "0.8.0" + "@blaze-cardano/data" "0.6.6" + hex-encoding "^2.0.2" + +"@blaze-cardano/vm@0.2.3": + version "0.2.3" + resolved "https://registry.npmjs.org/@blaze-cardano/vm/-/vm-0.2.3.tgz#223866415487c90837ca339b50c734d85bc4853d" + integrity sha512-TFOx6ARCLIqt+IbjvvWyrwLG8uh/voNYWhfpdQ8cHxxZox+lUHjJvxqzA/2HaSbmfW17Ljcca8T98TG1A6OFEw== + dependencies: + "@blaze-cardano/core" "0.8.0" + "@blaze-cardano/uplc" "0.4.3" + +"@blaze-cardano/wallet@0.5.2": + version "0.5.2" + resolved "https://registry.npmjs.org/@blaze-cardano/wallet/-/wallet-0.5.2.tgz#55a8d1495fd1f1471caa5dc96351b1509e52e178" + integrity sha512-HM9QSYmrbSZ4Q+NZGhp6nbvPzoqf6QVEVDnkqOstXALTKmcXMGWl26RtX5gga2FN+ocuqalDAYraYE8k96+eIg== + dependencies: + "@blaze-cardano/core" "0.8.0" + "@blaze-cardano/jest-config" "0.0.1" + "@blaze-cardano/query" "0.5.6" + "@blaze-cardano/tx" "0.14.1" + "@emurgo/cardano-message-signing-browser" "^1.1.0" + "@emurgo/cardano-message-signing-nodejs" "^1.1.0" + +"@blaze-cardano/wallet@0.5.3", "@blaze-cardano/wallet@^0.5.2": + version "0.5.3" + resolved "https://registry.npmjs.org/@blaze-cardano/wallet/-/wallet-0.5.3.tgz#b91228441249e1a811ab7d33ca0b9c737711951c" + integrity sha512-6UxqbGi56m5qu5gwi+04OFm+2FOgNid5HgsIoDZuXSiUdjP7R98WqaPe6lwCvLvLVcAZP+9Ht+99JvZzdHibUQ== + dependencies: + "@blaze-cardano/core" "0.8.0" + "@blaze-cardano/jest-config" "0.0.1" + "@blaze-cardano/query" "0.5.6" + "@blaze-cardano/tx" "0.14.1" + "@emurgo/cardano-message-signing-browser" "^1.1.0" + "@emurgo/cardano-message-signing-nodejs" "^1.1.0" + "@brandonblack/musig@^0.0.1-alpha.0": version "0.0.1-alpha.1" resolved "https://registry.npmjs.org/@brandonblack/musig/-/musig-0.0.1-alpha.1.tgz" @@ -1067,6 +1234,58 @@ resolved "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-2.7.0.tgz" integrity sha512-qn6tAIZEw5i/wiESBF4nQxZkl86aY4KoO0IkUa2Lh+rya64oTOdJQFlZuMwI1Qz9VBJQrQC4QlSA2DNek5gCOA== +"@cardano-ogmios/schema@^6.6.1": + version "6.14.0" + resolved "https://registry.npmjs.org/@cardano-ogmios/schema/-/schema-6.14.0.tgz#2d769e2a143e4fce2008708fdd7f4fc6c3607c68" + integrity sha512-s4mn/+5XxSli53tvaciP7KU9DNOXwRa/isPezFU7Sk33tz5Khqfs+7sDtDKlSHiVaFFAe/lb2sxjg0uM+tg9oQ== + +"@cardano-sdk/core@0.46", "@cardano-sdk/core@0.46.15", "@cardano-sdk/core@^0.46.15": + version "0.46.15" + resolved "https://registry.npmjs.org/@cardano-sdk/core/-/core-0.46.15.tgz#a6fc8baef907b4ffeaa1fd4a8c05bf967a17d0be" + integrity sha512-ubfUpDaSSEGxfmdCvV8xN7niXy1cR3HX4dCA/zJH91GpuV5XGGttI5pFbxpqDZubYHU2lw+QQ2kWJJGHQmjbog== + dependencies: + "@biglup/is-cid" "^1.0.3" + "@cardano-sdk/crypto" "~0.4.7" + "@cardano-sdk/util" "~0.17.2" + "@foxglove/crc" "^0.0.3" + "@scure/base" "^1.1.1" + fraction.js "4.0.1" + ip-address "^10.2.0" + lodash "^4.17.21" + ts-custom-error "^3.2.0" + ts-log "^2.2.4" + web-encoding "^1.1.5" + +"@cardano-sdk/crypto@^0.4", "@cardano-sdk/crypto@^0.4.7", "@cardano-sdk/crypto@~0.4.7": + version "0.4.7" + resolved "https://registry.npmjs.org/@cardano-sdk/crypto/-/crypto-0.4.7.tgz#d40736dad5fc287defc846244ffea8bfd3c46eaa" + integrity sha512-4aCsLOkqaIS/gSGw4SBqNGcCIp6hZ8alQWJx58U/OiOxC43t7i2JpKagdyWfCNekPM14hO7BWER7y31wf4BFxw== + dependencies: + "@cardano-sdk/util" "~0.17.2" + blake2b "^2.1.4" + i "^0.3.7" + libsodium-wrappers-sumo "0.8.4" + lodash "^4.17.21" + pbkdf2 "^3.1.3" + ts-custom-error "^3.2.0" + ts-log "^2.2.4" + +"@cardano-sdk/util@^0.17", "@cardano-sdk/util@^0.17.2", "@cardano-sdk/util@~0.17.2": + version "0.17.2" + resolved "https://registry.npmjs.org/@cardano-sdk/util/-/util-0.17.2.tgz#789ab12c08436b0bd3d78a10b203e35a49851288" + integrity sha512-LdY33OQG5H4p0rppHtjnM+akc1poKhz+02T9zsXsbShfTbeU9HXlA0nJ8xj9FNZMs+ozDR0HWrUjDc7fkNZI7w== + dependencies: + bech32 "^2.0.0" + lodash "^4.17.21" + serialize-error "^8" + ts-custom-error "^3.2.0" + ts-log "^2.2.4" + +"@cardanosolutions/json-bigint@^1.0.2": + version "1.1.0" + resolved "https://registry.npmjs.org/@cardanosolutions/json-bigint/-/json-bigint-1.1.0.tgz#dddfa10825de8c1856d8ec945db8f4e366f8cef3" + integrity sha512-Pdgz18cSwLKKgheOqW/dqbzNI+CliNT4AdaKaKY/P++J9qLxIB8MITCurlzbaFWV3W4nmK0CRQwI1yvuArmjFg== + "@cbor-extract/cbor-extract-darwin-arm64@2.2.0": version "2.2.0" resolved "https://registry.npmjs.org/@cbor-extract/cbor-extract-darwin-arm64/-/cbor-extract-darwin-arm64-2.2.0.tgz" @@ -1097,6 +1316,18 @@ resolved "https://registry.npmjs.org/@cbor-extract/cbor-extract-win32-x64/-/cbor-extract-win32-x64-2.2.0.tgz#4b3f07af047f984c082de34b116e765cb9af975f" integrity sha512-l2M+Z8DO2vbvADOBNLbbh9y5ST1RY5sqkWOg/58GkUPBYou/cuNZ68SGQ644f1CvZ8kcOxyZtw06+dxWHIoN/w== +"@chainsafe/is-ip@^2.0.1": + version "2.1.0" + resolved "https://registry.npmjs.org/@chainsafe/is-ip/-/is-ip-2.1.0.tgz#ba9ac32acd9027698e0b56b91c7af069d28d7931" + integrity sha512-KIjt+6IfysQ4GCv66xihEitBjvhU/bixbbbFxdJ1sqCp4uJ0wuZiYBPhksZoy4lfaF0k9cwNzY5upEW/VWdw3w== + +"@chainsafe/netmask@^2.0.0": + version "2.0.0" + resolved "https://registry.npmjs.org/@chainsafe/netmask/-/netmask-2.0.0.tgz#0d4a75f47919f65011da4327a3845c9661f1038a" + integrity sha512-I3Z+6SWUoaljh3TBzCnCxjlUyN8tA+NAk5L6m9IxvCf1BENQTePzPMis97CoN/iMW1St3WN+AWCCRp+TTBRiDg== + dependencies: + "@chainsafe/is-ip" "^2.0.1" + "@clack/core@^0.3.3": version "0.3.5" resolved "https://registry.npmjs.org/@clack/core/-/core-0.3.5.tgz" @@ -1741,6 +1972,14 @@ resolved "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz" integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== +"@dnsquery/dns-packet@^6.1.1": + version "6.1.1" + resolved "https://registry.npmjs.org/@dnsquery/dns-packet/-/dns-packet-6.1.1.tgz#3abf2c7ebb6dece40a75f429e24f9de23671058a" + integrity sha512-WXTuFvL3G+74SchFAtz3FgIYVOe196ycvGsMgvSH/8Goptb1qpIQtIuM4SOK9G9lhMWYpHxnXyy544ZhluFOew== + dependencies: + "@leichtgewicht/ip-codec" "^2.0.4" + utf8-codec "^1.0.0" + "@emnapi/core@1.4.5": version "1.4.5" resolved "https://registry.npmjs.org/@emnapi/core/-/core-1.4.5.tgz#bfbb0cbbbb9f96ec4e2c4fd917b7bbe5495ceccb" @@ -1807,6 +2046,16 @@ resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz" integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== +"@emurgo/cardano-message-signing-browser@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@emurgo/cardano-message-signing-browser/-/cardano-message-signing-browser-1.1.0.tgz#7376839a5b7e2dbdb3cf07881a1aa895545cc31a" + integrity sha512-LyeiGIqCyZu9DZnKsi4wlBjZA1MN+uy3Cqpb5J6RZWvFXDJnCoxrYB/EixUiGRD/la4WsldBgtPsrIHyGsVkpg== + +"@emurgo/cardano-message-signing-nodejs@^1.1.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@emurgo/cardano-message-signing-nodejs/-/cardano-message-signing-nodejs-1.1.0.tgz#04d45a48deed32e8ead16cf1e534162562e16835" + integrity sha512-PQRc8K8wZshEdmQenNUzVtiI8oJNF/1uAnBhidee5C4o1l2mDLOW+ur46HWHIFKQ6x8mSJTllcjMscHgzju0gQ== + "@emurgo/cardano-serialization-lib-browser@^12.0.1": version "12.1.1" resolved "https://registry.npmjs.org/@emurgo/cardano-serialization-lib-browser/-/cardano-serialization-lib-browser-12.1.1.tgz" @@ -2835,6 +3084,11 @@ "@scure/base" "1.1.5" micro-eth-signer "0.7.2" +"@foxglove/crc@^0.0.3": + version "0.0.3" + resolved "https://registry.npmjs.org/@foxglove/crc/-/crc-0.0.3.tgz#04cd8816454e14f1ec48de17c949199b4b3ec9c2" + integrity sha512-DjIZsnL3CyP/yQ/vUYA9cjrD0a/8YXejI5ZmsaOiT16cLfZcTwaCxIN01/ys4jsy+dZCQ/9DnWFn7AEFbiMDaA== + "@gar/promise-retry@^1.0.0", "@gar/promise-retry@^1.0.2": version "1.0.3" resolved "https://registry.npmjs.org/@gar/promise-retry/-/promise-retry-1.0.3.tgz#65e726428e794bc4453948e0a41e6de4215ce8b0" @@ -3376,7 +3630,7 @@ resolved "https://registry.npmjs.org/@ledgerhq/logs/-/logs-5.50.0.tgz" integrity sha512-swKHYCOZUGyVt4ge0u8a7AwNcA//h4nx5wIi0sruGye1IJ5Cva0GyK9L2/WdX+kWVTKp92ZiEo1df31lrWGPgA== -"@leichtgewicht/ip-codec@^2.0.1": +"@leichtgewicht/ip-codec@^2.0.1", "@leichtgewicht/ip-codec@^2.0.4": version "2.0.5" resolved "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz" integrity sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw== @@ -3454,6 +3708,18 @@ yargs "17.7.2" yargs-parser "21.1.1" +"@libp2p/interface@^3.1.0": + version "3.2.5" + resolved "https://registry.npmjs.org/@libp2p/interface/-/interface-3.2.5.tgz#fe951a4f864f9012e5b9ae9495ebebdf20c0e4b7" + integrity sha512-RdTchTdakBBc4ShKKsvoME/bJYsrCoVDpdYQVdd4TQ30TCb8QwWKGClqAtw7gfLNuaUKm41xz06kASW6AZpbDA== + dependencies: + "@multiformats/dns" "^1.0.6" + "@multiformats/multiaddr" "^13.0.3" + main-event "^1.0.1" + multiformats "^14.0.0" + progress-events "^1.1.0" + uint8arraylist "^3.0.2" + "@ljharb/resumer@~0.0.1": version "0.0.1" resolved "https://registry.npmjs.org/@ljharb/resumer/-/resumer-0.0.1.tgz" @@ -3480,6 +3746,48 @@ tweetnacl "^1.0.3" tweetnacl-util "^0.15.1" +"@multiformats/dns@^1.0.3", "@multiformats/dns@^1.0.6": + version "1.0.15" + resolved "https://registry.npmjs.org/@multiformats/dns/-/dns-1.0.15.tgz#d0a1bbb2250d31ac53455d882e2007bf2a99a5e3" + integrity sha512-W0zAMABtAn+3chgFcPGvllKND7M6GblMAAFcJQTy+iMmGiyFErZYPzAh2b50Y3SFf340iFV7+ckVgZkGfUyxzA== + dependencies: + "@dnsquery/dns-packet" "^6.1.1" + "@libp2p/interface" "^3.1.0" + hashlru "^2.3.0" + p-queue "^9.0.0" + progress-events "^1.0.0" + uint8arrays "^6.1.1" + +"@multiformats/mafmt@^12.1.6": + version "12.1.6" + resolved "https://registry.npmjs.org/@multiformats/mafmt/-/mafmt-12.1.6.tgz#e7c1831c1e94c94932621826049afc89f3ad43b7" + integrity sha512-tlJRfL21X+AKn9b5i5VnaTD6bNttpSpcqwKVmDmSHLwxoz97fAHaepqFOk/l1fIu94nImIXneNbhsJx/RQNIww== + dependencies: + "@multiformats/multiaddr" "^12.0.0" + +"@multiformats/multiaddr@^12.0.0", "@multiformats/multiaddr@^12.1.14": + version "12.5.1" + resolved "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.5.1.tgz#45d64456eddbf8cbe179366d7cb7b72efabe049f" + integrity sha512-+DDlr9LIRUS8KncI1TX/FfUn8F2dl6BIxJgshS/yFQCNB5IAF0OGzcwB39g5NLE22s4qqDePv0Qof6HdpJ/4aQ== + dependencies: + "@chainsafe/is-ip" "^2.0.1" + "@chainsafe/netmask" "^2.0.0" + "@multiformats/dns" "^1.0.3" + abort-error "^1.0.1" + multiformats "^13.0.0" + uint8-varint "^2.0.1" + uint8arrays "^5.0.0" + +"@multiformats/multiaddr@^13.0.3": + version "13.0.3" + resolved "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-13.0.3.tgz#f33a69879bd817fb67bab8ceb976c5d7dec38e7b" + integrity sha512-mEqqJ4r3a/uuFMTpRkU316wGNIDQNhuVWpm+ebKTQeYsfv9jXbPONWM6VVnj3KGUrwfsX7GZOyp4TFqEA2SPCw== + dependencies: + "@chainsafe/is-ip" "^2.0.1" + multiformats "^14.0.0" + uint8-varint "^3.0.0" + uint8arrays "^6.1.1" + "@mysten/bcs@^0.7.0": version "0.7.4" resolved "https://registry.npmjs.org/@mysten/bcs/-/bcs-0.7.4.tgz" @@ -3771,6 +4079,11 @@ dependencies: "@noble/hashes" "1.8.0" +"@noble/ed25519@^2.2.3": + version "2.3.0" + resolved "https://registry.npmjs.org/@noble/ed25519/-/ed25519-2.3.0.tgz#df0dbe424cfd7da4968b956b819c15db5fbe7f21" + integrity sha512-M7dvXL2B92/M7dw9+gzuydL8qn/jiqNHaoR3Q+cb1q1GHV7uwE17WCyFMG+Y+TZb5izcaXk5TdJRrDUxHXL78A== + "@noble/hashes@1.2.0", "@noble/hashes@~1.2.0": version "1.2.0" resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz" @@ -3796,7 +4109,7 @@ resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.1.tgz" integrity sha512-B8XBPsn4vT/KJAGqDzbwztd+6Yte3P4V7iafm24bxgDe/mlRuK6xmWPuCNrKt2vDafZ8MfJLlchDG/vYafQEjQ== -"@noble/hashes@1.8.0", "@noble/hashes@^1", "@noble/hashes@^1.0.0", "@noble/hashes@^1.1.5", "@noble/hashes@^1.2.0", "@noble/hashes@^1.3.1", "@noble/hashes@^1.3.3", "@noble/hashes@^1.4.0", "@noble/hashes@^1.5.0", "@noble/hashes@^1.8.0", "@noble/hashes@~1.8.0": +"@noble/hashes@1.8.0", "@noble/hashes@^1", "@noble/hashes@^1.0.0", "@noble/hashes@^1.1.5", "@noble/hashes@^1.2.0", "@noble/hashes@^1.3.1", "@noble/hashes@^1.3.3", "@noble/hashes@^1.4.0", "@noble/hashes@^1.5.0", "@noble/hashes@^1.7.1", "@noble/hashes@^1.8.0", "@noble/hashes@~1.8.0": version "1.8.0" resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz" integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== @@ -5067,7 +5380,7 @@ "@noble/hashes" "~1.4.0" "@scure/base" "~1.1.6" -"@scure/bip39@1.6.0", "@scure/bip39@^1.2.1", "@scure/bip39@^1.3.0", "@scure/bip39@^1.5.1", "@scure/bip39@^1.6.0": +"@scure/bip39@1.6.0", "@scure/bip39@^1.2.1", "@scure/bip39@^1.3.0", "@scure/bip39@^1.5.1", "@scure/bip39@^1.5.4", "@scure/bip39@^1.6.0": version "1.6.0" resolved "https://registry.npmjs.org/@scure/bip39/-/bip39-1.6.0.tgz" integrity sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A== @@ -5166,6 +5479,11 @@ resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.41.tgz" integrity sha512-6gS8pZzSXdyRHTIqoqSVknxolr1kzfy4/CeDnrzsVz8TTIWUbOBr6gnzOmTYJ3eXQNh4IYHIGi5aIL7sOZ2G/g== +"@sinclair/typebox@^0.34.28": + version "0.34.52" + resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.52.tgz#62f8a686e4ab28a8944902e2ad2d648312ef11cb" + integrity sha512-XiMQh7qqVlxZzcVD+kkGMNGMzcTrDMLWI7S4x7z1MkCkbDPrekpZXEUK0eZqZFMuHQg2a2DZOcDIh9o5v3Gonw== + "@sindresorhus/is@^4.0.0": version "4.6.0" resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz" @@ -5677,6 +5995,40 @@ resolved "https://registry.npmjs.org/@suchipi/femver/-/femver-1.0.0.tgz" integrity sha512-bprE8+K5V+DPX7q2e2K57ImqNBdfGHDIWaGI5xHxZoxbKOuQZn4wzPiUxOAHnsUr3w3xHrWXwN7gnG/iIuEMIg== +"@sundaeswap/asset@1.0.11", "@sundaeswap/asset@^1.0.11": + version "1.0.11" + resolved "https://registry.npmjs.org/@sundaeswap/asset/-/asset-1.0.11.tgz#0bf26bf362068f008120a9e5aefa57cb362b29cd" + integrity sha512-xbubSh7cm/0yb/8sHCw6ad03fS6L8/1tMiT9q7LeM9y8mn+xQ64ylJkCWWob1tVQDf6BaaWsKquhXlKhsn+70Q== + dependencies: + "@sundaeswap/fraction" "1.0.8" + +"@sundaeswap/bigint-math@^0.6.3": + version "0.6.3" + resolved "https://registry.npmjs.org/@sundaeswap/bigint-math/-/bigint-math-0.6.3.tgz#1cd63baab1838a4d14e8dc6df0ece774c386390e" + integrity sha512-FTXBd8F9LAvZsTZII7SBbZTEnjJc4JOSHp0XM+byAMsIDXglrYKotZT8z4QnYBxq1EcuhONsKdutibTfst4sgg== + +"@sundaeswap/core@^2.13.1": + version "2.13.1" + resolved "https://registry.npmjs.org/@sundaeswap/core/-/core-2.13.1.tgz#182be94ee5924c091ccc637b2d1952323de438ea" + integrity sha512-38f5xyBjS26LIVyDmvJHFwF0q8wM4Hdv77EdsS/TGjrH+x1eLSJQOoQvxF8Nqotj8jRutx+vy8HU2ejsJa9dfA== + dependencies: + "@blaze-cardano/data" "^0.6.1" + "@blaze-cardano/sdk" "^0.2.31" + "@sundaeswap/asset" "^1.0.11" + "@sundaeswap/bigint-math" "^0.6.3" + "@sundaeswap/fraction" "^1.0.5" + "@sundaeswap/math" "0.3.0" + +"@sundaeswap/fraction@1.0.8", "@sundaeswap/fraction@^1.0.5": + version "1.0.8" + resolved "https://registry.npmjs.org/@sundaeswap/fraction/-/fraction-1.0.8.tgz#66c05425bc68922e9f31efe2fb0c192acafccf15" + integrity sha512-vTDao3tzT/cbWt+uTy5dPWUwe7FVkNoPWG6x+pXP4go7kSCy2tzLaNaFP79pOfJENPMYoLd7OXiClQ98pCeY6Q== + +"@sundaeswap/math@0.3.0": + version "0.3.0" + resolved "https://registry.npmjs.org/@sundaeswap/math/-/math-0.3.0.tgz#4854f5cec3c856c6996f33cb42d0f816656ad99e" + integrity sha512-M+2/TexbRFOo13CuylChvAIVHCU8yF0RUw4+J1m9R8zh1ro9st1lEZoAuyE7H9CIXJgkWPyiaQNyLgnG7VXXdA== + "@swc/core-darwin-arm64@1.5.7": version "1.5.7" resolved "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.5.7.tgz" @@ -6972,6 +7324,11 @@ dependencies: argparse "^2.0.1" +"@zxing/text-encoding@0.9.0": + version "0.9.0" + resolved "https://registry.npmjs.org/@zxing/text-encoding/-/text-encoding-0.9.0.tgz#fb50ffabc6c7c66a0c96b4c03e3d9be74864b70b" + integrity sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA== + JSONStream@^1.0.3, JSONStream@^1.3.5: version "1.3.5" resolved "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz" @@ -6995,6 +7352,11 @@ abitype@1.1.0, abitype@^1.0.6, abitype@^1.0.9: resolved "https://registry.npmjs.org/abitype/-/abitype-1.1.0.tgz" integrity sha512-6Vh4HcRxNMLA0puzPjM5GBgT4aAcFGKZzSgAXvuZ27shJP6NEpielTuqbBmZILR5/xd0PizkBGy5hReKz9jl5A== +abort-error@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/abort-error/-/abort-error-1.0.2.tgz#9fd4b364b3659dadd9ad8af54ec9a1678b51c778" + integrity sha512-lVgvB2NyPLqbXXhVmXcYFTC1x5K7CiVdPgdY7LGgFQWC8506oN01sPN3i9cl9ynuwF4iJ0TS9exnR7cZ9FuX4w== + accepts@~1.3.4, accepts@~1.3.8: version "1.3.8" resolved "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz" @@ -7612,6 +7974,11 @@ axios@0.25.0, axios@0.27.2, axios@1.16.0, axios@1.18.0, axios@1.7.4, axios@^0.21 https-proxy-agent "^5.0.1" proxy-from-env "^2.1.0" +b4a@^1.0.1: + version "1.8.1" + resolved "https://registry.npmjs.org/b4a/-/b4a-1.8.1.tgz#7f16334ca80127aeb26064a28841acbf174840a4" + integrity sha512-aiqre1Nr0B/6DgE2N5vwTc+2/oQZ4Wh1t4NznYY4E00y8LCt6NqdRv81so00oo27D8MVKTpUa/MwUUtBLXCoDw== + b4a@^1.6.4: version "1.7.3" resolved "https://registry.npmjs.org/b4a/-/b4a-1.7.3.tgz" @@ -8020,6 +8387,22 @@ bl@4.1.0, bl@^4.0.3: inherits "^2.0.4" readable-stream "^3.4.0" +blake2b-wasm@^2.4.0: + version "2.4.0" + resolved "https://registry.npmjs.org/blake2b-wasm/-/blake2b-wasm-2.4.0.tgz#9115649111edbbd87eb24ce7c04b427e4e2be5be" + integrity sha512-S1kwmW2ZhZFFFOghcx73+ZajEfKBqhP82JMssxtLVMxlaPea1p9uoLiUZ5WYyHn0KddwbLc+0vh4wR0KBNoT5w== + dependencies: + b4a "^1.0.1" + nanoassert "^2.0.0" + +blake2b@^2.1.4: + version "2.1.4" + resolved "https://registry.npmjs.org/blake2b/-/blake2b-2.1.4.tgz#817d278526ddb4cd673bfb1af16d1ad61e393ba3" + integrity sha512-AyBuuJNI64gIvwx13qiICz6H6hpmjvYS5DGkG6jbXMOT8Z3WUJ3V1X0FlhIoT1b/5JtHE3ki+xjtMvu1nn+t9A== + dependencies: + blake2b-wasm "^2.4.0" + nanoassert "^2.0.0" + blakejs@^1.1.0, blakejs@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz" @@ -8671,7 +9054,7 @@ cbor-x@^1.6.0: optionalDependencies: cbor-extract "^2.2.0" -cbor@^10.0.3: +cbor@10.0.11, cbor@^10.0.3: version "10.0.11" resolved "https://registry.npmjs.org/cbor/-/cbor-10.0.11.tgz" integrity sha512-vIwORDd/WyB8Nc23o2zNN5RrtFGlR6Fca61TtjkUXueI3Jf2DOZDl1zsshvBntZ3wZHBM9ztjnkXSmzQDaq3WA== @@ -11290,6 +11673,11 @@ eventemitter3@^4.0.0, eventemitter3@^4.0.4: resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== +eventemitter3@^5.0.4: + version "5.0.4" + resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz#a86d66170433712dde814707ac52b5271ceb1feb" + integrity sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw== + events-universal@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/events-universal/-/events-universal-1.0.1.tgz" @@ -11917,6 +12305,11 @@ fp-ts@^2.0.0, fp-ts@^2.12.2, fp-ts@^2.16.2: resolved "https://registry.npmjs.org/fp-ts/-/fp-ts-2.16.11.tgz" integrity sha512-LaI+KaX2NFkfn1ZGHoKCmcfv7yrZsC3b8NtWsTVQeHkq4F27vI5igUuO53sxqDEa2gNQMHFPmpojDw/1zmUK7w== +fraction.js@4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/fraction.js/-/fraction.js-4.0.1.tgz#c6b5218b230b082188e6c53e76b0965c052da24c" + integrity sha512-NQYzZw8MUsxSZFQo6E8tKOlmSd/BlDTNOR4puXFSHSwFwNaIlmbortQy5PDN/KnVQ4xWG2NtN0J0hjPw7eE06A== + fraction.js@^4.3.7: version "4.3.7" resolved "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz" @@ -12501,6 +12894,16 @@ hash-base@^3.0.0: readable-stream "^3.6.0" safe-buffer "^5.2.0" +hash-base@^3.1.2: + version "3.1.2" + resolved "https://registry.npmjs.org/hash-base/-/hash-base-3.1.2.tgz#79d72def7611c3f6e3c3b5730652638001b10a74" + integrity sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg== + dependencies: + inherits "^2.0.4" + readable-stream "^2.3.8" + safe-buffer "^5.2.1" + to-buffer "^1.2.1" + hash-base@~3.0, hash-base@~3.0.4: version "3.0.5" resolved "https://registry.npmjs.org/hash-base/-/hash-base-3.0.5.tgz" @@ -12525,6 +12928,11 @@ hasha@^5.0.0: is-stream "^2.0.0" type-fest "^0.8.0" +hashlru@^2.3.0: + version "2.3.0" + resolved "https://registry.npmjs.org/hashlru/-/hashlru-2.3.0.tgz#5dc15928b3f6961a2056416bb3a4910216fdfb51" + integrity sha512-0cMsjjIC8I+D3M44pOQdsy0OHXGLVz6Z0beRuufhKa0KfaD2wGwAev6jILzXsd3/vpnNQJmWyZtIILqM1N+n5A== + hasown@2.0.4: version "2.0.4" resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz#8c62d8cb90beb2aad5d0a5b67581ad9854c3f003" @@ -12558,6 +12966,14 @@ help-me@^5.0.0: resolved "https://registry.npmjs.org/help-me/-/help-me-5.0.0.tgz" integrity sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg== +hex-encoding@^2.0.2: + version "2.0.3" + resolved "https://registry.npmjs.org/hex-encoding/-/hex-encoding-2.0.3.tgz#59ecfa5c07170f29405db7c2a7633b1ad380df47" + integrity sha512-sSmMo4ij2Vejht+5UkzuzNGiYgIWTSUw0GQqxHIQXsuuXB1ozYnjCZJZ/nwWNYRoU8+92Dp736wqxmiAN6/fcw== + dependencies: + node-buffer-encoding "^1.0.3" + uint8-encoding "^2.0.1" + hi-base32@^0.5.1: version "0.5.1" resolved "https://registry.npmjs.org/hi-base32/-/hi-base32-0.5.1.tgz" @@ -12889,6 +13305,11 @@ hyperdyperid@^1.2.0: resolved "https://registry.npmjs.org/hyperdyperid/-/hyperdyperid-1.2.0.tgz" integrity sha512-Y93lCzHYgGWdrJ66yIktxiaGULYc6oGiABxhcO5AufBeOyoIdZF7bIfLaOrbM0iGIOXQQgxxRrFEnb+Y6w1n4A== +i@^0.3.7: + version "0.3.7" + resolved "https://registry.npmjs.org/i/-/i-0.3.7.tgz#2a7437a923d59c14b17243dc63a549af24d85799" + integrity sha512-FYz4wlXgkQwIPqhzC5TdNMLSE5+GS1IIDJZY/1ZiEPCT2S3COUVZeT5OW4BmW4r5LHLQuOosSwsvnroG9GR59Q== + ic0@^0.3.2: version "0.3.2" resolved "https://registry.npmjs.org/ic0/-/ic0-0.3.2.tgz" @@ -13157,7 +13578,7 @@ iobuffer@^5.3.2: resolved "https://registry.npmjs.org/iobuffer/-/iobuffer-5.4.0.tgz" integrity sha512-DRebOWuqDvxunfkNJAlc3IzWIPD5xVxwUNbHr7xKB8E6aLJxIPfNX3CoMJghcFjpv6RWQsrcJbghtEwSPoJqMA== -ip-address@10.4.0, ip-address@^10.1.1: +ip-address@10.4.0, ip-address@^10.1.1, ip-address@^10.2.0: version "10.4.0" resolved "https://registry.npmjs.org/ip-address/-/ip-address-10.4.0.tgz#c5910bc541b6eae287765d1e4846be0308a05d93" integrity sha512-oSK96Grm3aP6OrS263xVxbNDGVL7rzBtYdpGqlDG8iQdoenDoTs/nkki+DflYbAEE8Xl6o5YxhxlrKvI3nqKXQ== @@ -13646,6 +14067,11 @@ isexe@^4.0.0: resolved "https://registry.npmjs.org/isexe/-/isexe-4.0.0.tgz#48f6576af8e87a18feb796b7ed5e2e5903b43dca" integrity sha512-FFUtZMpoZ8RqHS3XeXEmHWLA4thH+ZxCv2lOiPIn1Xc7CxrqhWzNSDzD+/chS/zbYezmiwWLdQC09JdQKmthOw== +iso-url@^1.1.3: + version "1.2.1" + resolved "https://registry.npmjs.org/iso-url/-/iso-url-1.2.1.tgz#db96a49d8d9a64a1c889fc07cc525d093afb1811" + integrity sha512-9JPDgCN4B7QPkLtYAAOrEuAWvP9rWvR5offAr0/SeF046wIkglqH3VXgYYP6NcsKslH80UIVgmPqNe3j7tG2ng== + iso-url@~0.4.7: version "0.4.7" resolved "https://registry.npmjs.org/iso-url/-/iso-url-0.4.7.tgz" @@ -14364,6 +14790,18 @@ libsodium-sumo@^0.7.15: resolved "https://registry.npmjs.org/libsodium-sumo/-/libsodium-sumo-0.7.15.tgz" integrity sha512-5tPmqPmq8T8Nikpm1Nqj0hBHvsLFCXvdhBFV7SGOitQPZAA6jso8XoL0r4L7vmfKXr486fiQInvErHtEvizFMw== +libsodium-sumo@^0.8.0: + version "0.8.4" + resolved "https://registry.npmjs.org/libsodium-sumo/-/libsodium-sumo-0.8.4.tgz#6d4687781fa0ad398af14a7df872d5c27cf8cd31" + integrity sha512-TMtHShQfVVsaxDygyapvUC3o7YsPgXa/hRWeIgzyFz6w5k/1hirGptCxp1U7XwW3rCskaTTYKgV10v86UiGgNw== + +libsodium-wrappers-sumo@0.8.4: + version "0.8.4" + resolved "https://registry.npmjs.org/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.8.4.tgz#6656a3e7e0551ecce08ddee4bfb501a092eac6fa" + integrity sha512-ql7hcgulKZ3ekfa2DGAogcCKsWU0diA/0nArz1CFzh93WQdb46/Kj18ka/Hifq6uA3Ush34Pc6vU/6HXeRwUkg== + dependencies: + libsodium-sumo "^0.8.0" + libsodium-wrappers-sumo@^0.7.11, libsodium-wrappers-sumo@^0.7.9: version "0.7.15" resolved "https://registry.npmjs.org/libsodium-wrappers-sumo/-/libsodium-wrappers-sumo-0.7.15.tgz" @@ -14777,6 +15215,11 @@ magic-string@^0.30.18: dependencies: "@jridgewell/sourcemap-codec" "^1.5.5" +main-event@^1.0.1: + version "1.0.5" + resolved "https://registry.npmjs.org/main-event/-/main-event-1.0.5.tgz#956db3cd0d730cc96df9440e4da78a2519702ce9" + integrity sha512-4l9z8r7Q446mhhVTwdHmfPksOYBwN2xa7ewEW2yxPVNQapIaAf57ORFLMB91SpMEMa4wXowect7fq3uMLjDnGA== + make-dir@4.0.0, make-dir@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz" @@ -15497,6 +15940,16 @@ multicast-dns@^7.2.5: dns-packet "^5.2.2" thunky "^1.0.2" +multiformats@^13.0.0, multiformats@^13.0.1: + version "13.4.2" + resolved "https://registry.npmjs.org/multiformats/-/multiformats-13.4.2.tgz#309ee17d3946db9a6954cf6832aeb2b4b10dd0f3" + integrity sha512-eh6eHCrRi1+POZ3dA+Dq1C6jhP1GNtr9CRINMb67OKzqW9I5DUuZM/3jLPlzhgpGeiNUlEGEbkCYChXMCc/8DQ== + +multiformats@^14.0.0: + version "14.0.5" + resolved "https://registry.npmjs.org/multiformats/-/multiformats-14.0.5.tgz#3d9819edefb885d9029cedcae565fd0a8f3052df" + integrity sha512-vbIm83F2yZ1pWJGS0yl0ysracIvv56LtbrIyiIQHoLdYDJOMoLfVFsXhh9DUH4SFdkdkFhucyWniihsNzVEjkQ== + multimatch@5.0.0, multimatch@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz" @@ -15672,6 +16125,11 @@ node-addon-api@^7.0.0: resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz" integrity sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ== +node-buffer-encoding@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/node-buffer-encoding/-/node-buffer-encoding-1.0.3.tgz#94bab4c82e8ace9e69c17771f9fe8269f9469ddd" + integrity sha512-9hJZNChhQoCN1rCFScJiEwtzvWEJw2wSnu2nhDLD/YOYl1Ce8GbtnorsnjwwjpSk4sWE7zSp2etX6j7+bO7fVA== + node-domexception@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz" @@ -16538,6 +16996,14 @@ p-queue@6.6.2: eventemitter3 "^4.0.4" p-timeout "^3.2.0" +p-queue@^9.0.0: + version "9.3.3" + resolved "https://registry.npmjs.org/p-queue/-/p-queue-9.3.3.tgz#c5e528c7eb361b7ba8eb5a9406902f7f2e75fc8f" + integrity sha512-NXAOdnEe5FsZJfT4oK84lE1Y5cFFdWlRuOo5tww8DyNMxyRXwn39fIkUtNLKppcPC+UYU/bXujNCUGDv01y7CA== + dependencies: + eventemitter3 "^5.0.4" + p-timeout "^7.0.0" + p-reduce@2.1.0, p-reduce@^2.0.0, p-reduce@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz" @@ -16559,6 +17025,11 @@ p-timeout@^3.2.0: dependencies: p-finally "^1.0.0" +p-timeout@^7.0.0: + version "7.0.1" + resolved "https://registry.npmjs.org/p-timeout/-/p-timeout-7.0.1.tgz#95680a6aa693c530f14ac337b8bd32d4ec6ae4f0" + integrity sha512-AxTM2wDGORHGEkPCt8yqxOTMgpfbEHqF51f/5fJCmwFC3C/zNcGT63SymH2ttOAaiIws2zVg4+izQCjrakcwHg== + p-try@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz" @@ -16914,6 +17385,18 @@ pbkdf2@^3.0.17, pbkdf2@^3.0.3, pbkdf2@^3.0.9, pbkdf2@^3.1.2: sha.js "^2.4.11" to-buffer "^1.2.0" +pbkdf2@^3.1.3: + version "3.1.6" + resolved "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.6.tgz#935cb1d99e491880cb48cb070bb539a6901e57d6" + integrity sha512-BT6eelPB1EyGHo8pC0o9Bl6k6SYVhKO1jEbd3lcTrtr7XHdjP8BW1YpfCV3G9Kwkxgattk+S5q2/RvuttCsS1g== + dependencies: + create-hash "^1.2.0" + create-hmac "^1.1.7" + ripemd160 "^2.0.3" + safe-buffer "^5.2.1" + sha.js "^2.4.12" + to-buffer "^1.2.2" + pdfjs-dist@^4.0.0: version "4.10.38" resolved "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-4.10.38.tgz#3ee698003790dc266cc8b55c0e662ccb9ae18f53" @@ -17475,6 +17958,11 @@ proggy@^3.0.0: resolved "https://registry.npmjs.org/proggy/-/proggy-3.0.0.tgz" integrity sha512-QE8RApCM3IaRRxVzxrjbgNMpQEX6Wu0p0KBeoSiSEw5/bsGwZHsshF4LCxH2jp/r6BU+bqA3LrMDEYNfJnpD8Q== +progress-events@^1.0.0, progress-events@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/progress-events/-/progress-events-1.1.0.tgz#32c5c3cbce3d6465a31ca088e088aef8a44841df" + integrity sha512-82DVc5tI36neVB3IjdXR11ztwGuoBc98em9ijzubeZKxI47OlV2Znq6mlPqE5xPDzO2Uw98GHiQSjj2favBCRQ== + progress@^2.0.0, progress@^2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" @@ -18345,6 +18833,14 @@ ripemd160@^2.0.0, ripemd160@^2.0.1, ripemd160@^2.0.2: hash-base "^3.0.0" inherits "^2.0.1" +ripemd160@^2.0.3: + version "2.0.3" + resolved "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.3.tgz#9be54e4ba5e3559c8eee06a25cd7648bbccdf5a8" + integrity sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA== + dependencies: + hash-base "^3.1.2" + inherits "^2.0.4" + ripple-address-codec@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/ripple-address-codec/-/ripple-address-codec-5.0.0.tgz" @@ -18656,6 +19152,13 @@ send@0.19.0: range-parser "~1.2.1" statuses "2.0.1" +serialize-error@^8: + version "8.1.0" + resolved "https://registry.npmjs.org/serialize-error/-/serialize-error-8.1.0.tgz#3a069970c712f78634942ddd50fbbc0eaebe2f67" + integrity sha512-3NnuWfM6vBYoy5gZFvHiYsVbafvI9vZv/+jlIigFn4oP4zjNPK3LhcY0xSCgeb1a5L8jO71Mit9LlNoi2UfDDQ== + dependencies: + type-fest "^0.20.2" + serialize-javascript@7.0.5, serialize-javascript@^6.0.0, serialize-javascript@^6.0.2: version "7.0.5" resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-7.0.5.tgz#c798cc0552ffbb08981914a42a8756e339d0d5b1" @@ -18740,7 +19243,7 @@ setprototypeof@1.2.0: resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== -sha.js@>=2.4.12, sha.js@^2.3.6, sha.js@^2.4.0, sha.js@^2.4.11, sha.js@^2.4.8, sha.js@~2.4.4: +sha.js@>=2.4.12, sha.js@^2.3.6, sha.js@^2.4.0, sha.js@^2.4.11, sha.js@^2.4.12, sha.js@^2.4.8, sha.js@~2.4.4: version "2.4.12" resolved "https://registry.npmjs.org/sha.js/-/sha.js-2.4.12.tgz#eb8b568bf383dfd1867a32c3f2b74eb52bdbf23f" integrity sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w== @@ -20107,6 +20610,15 @@ to-buffer@^1.2.0: safe-buffer "^5.2.1" typed-array-buffer "^1.0.3" +to-buffer@^1.2.1, to-buffer@^1.2.2: + version "1.2.2" + resolved "https://registry.npmjs.org/to-buffer/-/to-buffer-1.2.2.tgz#ffe59ef7522ada0a2d1cb5dfe03bb8abc3cdc133" + integrity sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw== + dependencies: + isarray "^2.0.5" + safe-buffer "^5.2.1" + typed-array-buffer "^1.0.3" + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" @@ -20197,6 +20709,11 @@ tronweb@5.1.0: semver "^5.6.0" validator "^13.7.0" +ts-custom-error@^3.2.0: + version "3.3.1" + resolved "https://registry.npmjs.org/ts-custom-error/-/ts-custom-error-3.3.1.tgz#8bd3c8fc6b8dc8e1cb329267c45200f1e17a65d1" + integrity sha512-5OX1tzOjxWEgsr/YEUWSuPrQ00deKLh6D7OTWcvNHm12/7QPyRh8SYpyWvA4IZv8H/+GQWQEh/kwo95Q9OVW1A== + ts-loader@^9.1.2: version "9.5.4" resolved "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.4.tgz" @@ -20208,6 +20725,11 @@ ts-loader@^9.1.2: semver "^7.3.4" source-map "^0.7.4" +ts-log@^2.2.4: + version "2.2.7" + resolved "https://registry.npmjs.org/ts-log/-/ts-log-2.2.7.tgz#4f4512144898b77c9984e91587076fcb8518688e" + integrity sha512-320x5Ggei84AxzlXp91QkIGSw5wgaLT6GeAH0KsqDmRZdVWW2OiSeVvElVoatk3f7nicwXlElXsoFkARiGE2yg== + ts-results@^3.2.1: version "3.3.0" resolved "https://registry.npmjs.org/ts-results/-/ts-results-3.3.0.tgz" @@ -20497,11 +21019,60 @@ uglify-js@^3.1.4: resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz" integrity sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ== +uint8-encoding@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/uint8-encoding/-/uint8-encoding-2.0.1.tgz#f8011194c8e576f9629dfd751b2c36d468dcaf59" + integrity sha512-xZAjZ+3OvrDtjFLLgojrLmG6T0YwZEo0OTyqCBxFjlFimIKnLtFqyYk6z/jDOUlJFJE52Srtrv4W4x7t4Cn/dA== + +uint8-varint@^2.0.1: + version "2.0.5" + resolved "https://registry.npmjs.org/uint8-varint/-/uint8-varint-2.0.5.tgz#b7e5af1bc5ff3bc52f913193373f33018c845fda" + integrity sha512-jeFLbL/x30wBRnWjKE1qVBXeumG46r7XmYkpis955lTQ+blccGKFrOsSMHlxePwYB1pI7L8YPHz1t4jLxEs3nA== + dependencies: + uint8arraylist "^2.0.0" + uint8arrays "^5.0.0" + +uint8-varint@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/uint8-varint/-/uint8-varint-3.0.0.tgz#073d9a1eb24fcb52fae6763511722b7c60b4a951" + integrity sha512-S4DdpXBaLwKcFo7f0bWzWfHjbZ/i3QhM842qn+ZvHjxqFCfUcEB9SQNcmI69S+zMlcmIcKxsk9Iyw77S2Kxv6Q== + dependencies: + uint8arraylist "^3.0.1" + uint8arrays "^6.1.0" + uint8array-tools@0.0.7: version "0.0.7" resolved "https://registry.npmjs.org/uint8array-tools/-/uint8array-tools-0.0.7.tgz" integrity sha512-vrrNZJiusLWoFWBqz5Y5KMCgP9W9hnjZHzZiZRT8oNAkq3d5Z5Oe76jAvVVSRh4U8GGR90N2X1dWtrhvx6L8UQ== +uint8arraylist@^2.0.0: + version "2.4.9" + resolved "https://registry.npmjs.org/uint8arraylist/-/uint8arraylist-2.4.9.tgz#32aaa90d00ac9b4c3985e889f34d0211a06bb9bb" + integrity sha512-KxWjyEFzchzik3aoQlK66oaoxIReoMo5bQRm1fcjBUZvE8xv/tyR3CTKhjh6K/faV8VaF6hd5pjr45CzbwuwkA== + dependencies: + uint8arrays "^5.0.1" + +uint8arraylist@^3.0.1, uint8arraylist@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/uint8arraylist/-/uint8arraylist-3.0.2.tgz#ca67cba700d0aafec34f8f547f40adc3ee769a57" + integrity sha512-LDVoq9BQaGJzGDUovEnoX6rpKCvnY/Jbtws4ikwnBzjRbq5qBAFpBZevUEbSmMM87aO0Sp+wOZy2ZXf5yODmXQ== + dependencies: + uint8arrays "^6.0.0" + +uint8arrays@^5.0.0, uint8arrays@^5.0.1: + version "5.1.1" + resolved "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.1.1.tgz#85b2811d0be22b1b1530f96c6abeb64a718f3f12" + integrity sha512-9muQwa4wZG4dKi9gMAIBtnk2Pw87SRpvWTH6lOGm19V2Uqxr4uomUf2PGqPnWc+qs06sN8owUU4jfcoWOcfwVQ== + dependencies: + multiformats "^13.0.0" + +uint8arrays@^6.0.0, uint8arrays@^6.1.0, uint8arrays@^6.1.1: + version "6.1.1" + resolved "https://registry.npmjs.org/uint8arrays/-/uint8arrays-6.1.1.tgz#c2b59dddacc69ac4813ea29ac4b8d727189de522" + integrity sha512-iz7JN0XCSZYA111lhFG2Ui9EhFvTNekqSRHw3lvMHq+dzwWy1OQftxFQREEh4rffU0oSoXdQHsk2TiHKVm4fsA== + dependencies: + multiformats "^14.0.0" + umd@^3.0.0: version "3.0.3" resolved "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz" @@ -20711,6 +21282,11 @@ utf-8-validate@^5.0.2: dependencies: node-gyp-build "^4.3.0" +utf8-codec@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/utf8-codec/-/utf8-codec-1.0.0.tgz#b30252507271cd612dbf5b58f04620a5e1e7bb89" + integrity sha512-S/QSLezp3qvG4ld5PUfXiH7mCFxLKjSVZRFkB3DOjgwHuJPFDkInAXc/anf7BAbHt/D38ozDzL+QMZ6/7gsI6w== + utf8@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz" @@ -20736,7 +21312,7 @@ util@^0.10.4, util@~0.10.1: dependencies: inherits "2.0.3" -util@^0.12.0, util@^0.12.1, util@^0.12.4, util@^0.12.5: +util@^0.12.0, util@^0.12.1, util@^0.12.3, util@^0.12.4, util@^0.12.5: version "0.12.5" resolved "https://registry.npmjs.org/util/-/util-0.12.5.tgz" integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA== @@ -20905,6 +21481,15 @@ wcwidth@1.0.1, wcwidth@^1.0.0, wcwidth@^1.0.1: dependencies: defaults "^1.0.3" +web-encoding@^1.1.5: + version "1.1.5" + resolved "https://registry.npmjs.org/web-encoding/-/web-encoding-1.1.5.tgz#fc810cf7667364a6335c939913f5051d3e0c4864" + integrity sha512-HYLeVCdJ0+lBYV2FvNZmv3HJ2Nt0QYXqZojk3d9FJOLkwnuhzM9tmamh8d7HPM8QqjKH8DeHkFTx+CFlWpZZDA== + dependencies: + util "^0.12.3" + optionalDependencies: + "@zxing/text-encoding" "0.9.0" + web-streams-polyfill@^3.0.3: version "3.3.3" resolved "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz" @@ -21367,6 +21952,11 @@ ws@7.5.10, ws@8.17.1, ws@8.18.0, ws@^7, ws@^7.0.0, ws@^7.3.1, ws@^7.5.10: resolved "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz" integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== +ws@^8.17.1: + version "8.21.3" + resolved "https://registry.npmjs.org/ws/-/ws-8.21.3.tgz#660b4faddb6a3e575c86e078126919961f4de4fc" + integrity sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw== + ws@~8.17.1: version "8.17.1" resolved "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz"